addLayer
Краткая информация
Предоставляет доступ к слоям в файле слоя (.lyr или .lyrx) и другим основным методам управления слоями.
Обсуждение
Класс LayerFile предоставляет методы и свойства, обеспечивающие доступ к отдельным слоям и таблицам, содержащимся в файле слоя. Файлы слоев могут содержать один или несколько слоев, таблиц и составных слоев.
ArcGIS Pro может читать файлы слоев .lyr и .lyrx. Изменения можно сохранять только в файл .lyrx. Если вы вносите изменения в файл .lyr, нужно вызвать метод saveACopy.
Синтаксис
addLayer()
Свойства
| Имя | Объяснение | Тип данных |
|---|---|---|
|
filePath (Только для чтения) |
Возвращает строковое значение, содержащее полное имя и путь к файлу слоя. |
String |
|
metadata (Чтение / Запись) |
Получите или настройте информацию о классе Metadata. Обратите внимание, что настройка метаданных зависит от значения свойства |
Metadata |
|
version (Только для чтения) |
Возвращает строку для версии на основе того, когда проект был сохранен в последний раз. Используется семантический формат версии: Major.Minor.Patch. |
String |
Методы
addLayer(add_layer_or_layerfile, {add_position})
Обеспечивает возможность добавления Layer или LayerFile в файл слоя (.lyrx) с использованием базовых опций размещения.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
add_layer_or_layerfile |
Ссылка на объект Layer или LayerFile представляющий слой или слои, которые должны быть добавлены. |
Layer |
|
add_position (Дополнительный) |
Константа, определяющая размещение добавленного слоя или слоев в файл слоя.
(Значение по умолчанию — AUTO_ARRANGE) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
List |
Список Python объектов Layer. |
addLayerToGroup(target_group_layer, add_layer_or_layerfile, {add_position})
Обеспечивает возможность добавления Layer или содержания LayerFile к существующему составному слою в файле слоя (.lyrx) с использованием базовых опций размещения.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
target_group_layer |
Ссылка на существующий составной объект Layer (Слой). |
Layer |
|
add_layer_or_layerfile |
Ссылка на объект Layer или LayerFile представляющий слой или слои, которые должны быть добавлены. |
Layer |
|
add_position (Дополнительный) |
Константа, определяющая размещение добавленного слоя или слоев в
(Значение по умолчанию — AUTO_ARRANGE) |
String |
insertLayer(reference_layer, insert_layer_or_layerfile, {insert_position})
Обеспечивает возможность добавления Layer или LayerFile в файл слоя (.lyrx) с указанием местоположения.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
reference_layer |
Объект Layer, соответствующий существующему слою, который определяет положение, где будет вставлен новый слой. |
Layer |
|
insert_layer_or_layerfile |
Ссылка на объект Layer или LayerFile представляющий слой или слои, которые должны быть добавлены. |
Layer |
|
insert_position (Дополнительный) |
Константа, определяющая размещение добавляемого слоя или слоев по отношению к
(Значение по умолчанию — BEFORE) |
String |
listBrokenDataSources()
Возвращает список объектов Python Layer в файле слоя, которые имеют поврежденные подключения к оригинальным исходным данным внутри карты.
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
List |
Список Python объектов Layer. |
listLayers({wildcard})
Возвращает список Python Слоев в файле слоя.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
wildcard (Дополнительный) |
A wildcard is based on the layer name and is not case sensitive. A combination of asterisks (*) and characters can be used to help limit the resulting list. (Значение по умолчанию — None) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
List |
Список Python объектов Layer в файле слоя. |
listTables({wildcard})
Возвращает список Python объектов Table, которые существуют в LayerFile.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
wildcard (Дополнительный) |
A wildcard is based on the table name and is not case sensitive. A combination of asterisks (*) and characters can be used to limit the resulting list. (Значение по умолчанию — None) |
String |
Возвращаемое значение
| Тип данных | Объяснение |
|---|---|
|
List |
Список Python объектов Table, в LayerFile. |
moveLayer(reference_layer, move_layer, {insert_position})
Позволяет переместить слой или составной слой в файле слоя в заданное местоположение в блоке слоев.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
reference_layer |
Объект Layer, представляющий существующей слой, который определяет местоположение, в которое будет перемещен новый слой. |
Layer |
|
move_layer |
Ссылка на объект Layer, представляющий слой, выбираемый для перемещения. |
Layer |
|
insert_position (Дополнительный) |
Константа, которая определяет размещение перемещаемого слоя по отношению к базовому слою.
(Значение по умолчанию — BEFORE) |
String |
removeLayer(remove_layer)
Обеспечивает возможность удаления слоя из файла слоя.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
remove_layer |
Ссылка на объект Layer, который представляет удаляемый слой. |
Layer |
save()
Сохраняет ссылку на существующий файл слоя в файле .lyrx, даже если файл, на который дается ссылка, был файлом .lyr.
saveACopy(file_name)
Сохраняет LayerFile в новом месте или с другим именем.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
file_name |
Строка используется для сохранения |
String |
updateConnectionProperties(current_connection_info, new_connection_info, {auto_update_joins_and_relates}, {validate}, {ignore_case})
Метод updateConnectionProperties заменяет свойства подключения, используя словарь либо путь к рабочей области.
| Имя | Объяснение | Тип данных |
|---|---|---|
|
current_connection_info |
A string that represents the workspace path or a Python dictionary that contains connection properties to the source you want to update. If an empty string or |
String |
|
new_connection_info |
A string that represents the workspace path or a Python dictionary that contains connection properties with the new source information. |
String |
|
auto_update_joins_and_relates (Дополнительный) |
If set to (Значение по умолчанию — True) |
Boolean |
|
validate (Дополнительный) |
If set to (Значение по умолчанию — True) |
Boolean |
|
ignore_case (Дополнительный) |
Determines whether searches will be case sensitive. By default, queries are case sensitive. To perform queries that are not case sensitive, set (Значение по умолчанию — False) |
Boolean |
Пример кода
Следующий скрипт печатает имена отдельных слоев в файле слоя, источники данных которых повреждены.
import arcpy
lyrFile = arcpy.mp.LayerFile(r"C:\Projects\YosemiteNP\Yosemite.lyrx")
for lyr in lyrFile.listLayers():
if lyr.supports("datasource"):
if lyr.isBroken:
print(lyr.name)
Следующий скрипт удалит все слои с карты Yosemite National Park и добавит слои из файла слоя Yosemite.lyrx.
import arcpy
aprx = arcpy.mp.ArcGISProject(r"C:\Projects\YosemiteNP\Yosemite.aprx")
m = aprx.listMaps("Yosemite National Park")[0]
for lyr in m.listLayers():
m.removeLayer(lyr)
lf = arcpy.mp.LayerFile(r"C:\Projects\YosemiteNP\Yosemite.lyrx")
m.addLayer(lf)
aprx.save()
del aprx