Краткая информация
Обеспечивает доступ к свойствам и методам закладки.
Обсуждение
Закладки в проекте ArcGIS Pro связаны и управляются картой, для которой они были созданы. Они ссылаются с помощью метода listBookmarks на объект Map (Карта). Если вы хотите найти все закладки в проекте, необходимо перебрать все карты. Закладки могут быть использованы для обновления отображения объекта MapFrame в компоновке страницы с использованием метода zoomToBookmark.
Несмотря на то, что закладка связанна с конкретной картой, закладка может быть использована во фреймах карты, отображающих различные карты. Закладки, созданные с помощью 2D-карты, можно использовать с 3D-картами и наоборот. Доступные свойства объекта Camera (Камера) устанавливаются, на основании типа карты, непосредственно в момент создания закладки. Если 2D-закладка используется для режима локального или глобального просмотра карты, то результатом будет планиметрический вид области интереса. Если 3D-закладка используется с типом фрейма 2D-карты, то свойства 3D-камеры аппроксимируются для получения планиметрического экстента.
Есть пара сценариев, в которых должно обновляться изображение образца закладки. Первый, закладки, импортированные из документов карты (.mxd), глобуса (.3dd) или сцены (.sxd), не получают автоматически обновленного изображения образца из-за недостаточной производительности – автоматизация этого процесса может занять много времени у приложения, потому что, перед тем как будет создано изображение образца, для каждой закладки должна быть сгенерирована область интереса и слои должны быть полностью отрисованы. Второй, данные в карте, например, базовая карта, могут изменится и вы можете пожелать, что бы изображения образца были обновлены соответствующим образом. Метод updateThumbnail предоставляет решение для этих двух сценариев. Свойство hasThumbnail позволяет вам определить, какие из закладок возможно были импортированы и на текущий момент не имеют изображения образца.
Свойства
Свойство | Описание | Тип данных |
hasThumbnail (только чтение) | Если True, то изображение образца связывается с закладкой. | Boolean |
map (только чтение) | Карта (Map), с которой связана закладка. | Map |
name (чтение и запись) | Имя закладки. | String |
Обзор метода
Метод | Описание |
updateThumbnail () | Обновляет изображение образца закладки. |
Методы
updateThumbnail ()
Обновляет изображение образца закладки. Для определения того, существует ли образец для закладки, проверьте свойство hasThumbnail.
Пример кода
Следующий скрипт будет обновлять область интереса фрейма карты путем масштабирования для каждой закладки, которая принадлежит карте с именем Yosemite National Park (Йосемитский национальный парк) и экспортирует результат в отдельный документ PDF.
import arcpy, os
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\YosemiteNP\Yosemite.aprx")
lyt = aprx.listLayouts("Main Attractions*")[0]
mf = lyt.listElements("MAPFRAME_ELEMENT", "Yosemite National Park*")[0]
bkmks = mf.map.listBookmarks()
for bkmk in bkmks:
mf.zoomToBookmark(bkmk)
lyt.exportToPDF(os.path.join(r"C:\Projects\YosemiteNP", f"{bkmk.name}.pdf"))
del aprx
Следующий скрипт будет перебирать все закладки в проекте и обновлять изображение образца, если он отсутствует.
import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\YosemiteNP\Yosemite.aprx")
for m in aprx.listMaps():
for bkmk in m.listBookmarks():
if bkmk.hasThumbnail == False:
bkmk.updateThumbnail()
aprx.save()
del aprx