MapsurroundElement (arcpy.mapping)

Резюме

Предоставляет доступ к свойствам, которые позволяют изменять компоновку страницы, а также задавать родительский фрейм данных.

Обсуждение

Объект MapsurroundElement – это элемент страницы, который имеет связь с одним фреймом данных. Например, существует отношение один-к-одному между стрелкой севера и фреймом данных. Элементы Mapsurround также включают текст масштаба и шкалы масштабов. Свойство parentDataFrameName позволяет находить элементы, которые имеют связи с отдельными фреймами данных. Элемент легенды – также пример mapsurround, но из-за обладания дополнительными параметрами он причисляется к отдельному типу элементов. Функция ListLayoutElements возвращает список Python с объектами элементов компоновки страницы. Затем необходимо пройти по всем элементами списка в цикле или указать номер индекса для ссылки на определенный объект элемента страницы. Чтобы только получить список MapsurroundElements, используйте константу MAPSURROUND_ELEMENT с параметром element_type. Подстановочные знаки также могут использоваться для поиска по имени элемента.

Рекомендуется присваивать каждому элементу страницы компоновки уникальное имя, чтобы их можно было легко изолировать с помощью скриптов arcpy. Положения X и Y элемента основаны на положении якоря элемента, который также задается на закладке Размер и положение (Size and Position) диалогового окна Свойств элемента (Elements Properties) в ArcMap.

Свойства

СвойствоОбъяснениеТип данных
elementHeight
(чтение и запись)

Высота элемента в единицах страницы. Единицы измерения задаются или считываются в единицах страницы.

Double
elementPositionX
(чтение и запись)

Положение x якоря элемента во фрейме данных. Единицы измерения задаются или считываются в единицах страницы.

Double
elementPositionY
(чтение и запись)

Положение y якоря элемента во фрейме данных. Единицы измерения задаются или считываются в единицах страницы.

Double
elementWidth
(чтение и запись)

Ширина элемента в единицах страницы. Единицы измерения задаются или считываются в единицах страницы.

Double
name
(чтение и запись)

Имя элемента.

String
parentDataFrameName
(только чтение)

Строка, представляющая имя DataFrame для ассоциированного элемента.

String
type
(только чтение)

Возвращает тип любого элемента на странице компоновки.

  • DATAFRAME_ELEMENTЭлемент Dataframe
  • GRAPHIC_ELEMENTГрафический элемент
  • LEGEND_ELEMENTЛегенда
  • MAPSURROUND_ELEMENTЭлемент Mapsurround
  • PICTURE_ELEMENTРисунок
  • TEXT_ELEMENTЭлемент Текст
String

Пример кода

Пример MapsurroundElement

Следующий скрипт находит элемент mapsurround с именем ScaleBar и меняет его позицию.

import arcpy
mxd = arcpy.mapping.MapDocument(r"C:\Project\Project.mxd")
scaleBar = arcpy.mapping.ListLayoutElements(mxd, "MAPSURROUND_ELEMENT", "ScaleBar")[0]
df = arcpy.mapping.ListDataFrames(mxd, scaleBar.parentDataFrameName)[0]
scaleBar.elementPositionX = df.elementPositionX + (df.elementWidth / 2)
mxd.save()
del mxd
9/11/2013