Instrução

Listar camadas selecionadas de um mapa do ArcGIS Pro usando o ArcPy

Last Published: June 20, 2024

Resumo

Um mapa do ArcGIS Pro consiste em múltiplas camadas, cada uma representando diferentes conjuntos de dados. Priorizar as camadas ajuda no gerenciamento e na organização dos dados, garantindo que as camadas pertinentes sejam usadas, atualizadas ou compartilhadas.

Este artigo descreve o fluxo de trabalho para listar as camadas selecionadas de um mapa do ArcGIS Pro usando o ArcPy.

Procedimento

Note:
This workflow requires a full script to run in the ArcGIS Pro Python window. The indents must be retained as portrayed in the code block.
  1. No ArcGIS Pro, abra o mapa contendo as camadas.
  2. Abra a janela Python. Consulte ArcGIS Pro: Janela Python para obter mais informações.
Note: 
Select the features interactively before running the Python code. Refer to ArcGIS Pro: Select features for instructions.
  1. Execute o script a seguir.
    1. Recupere o mapa ativo atual.
import arcpy

def get_selected_layers():
    active_map = arcpy.mp.ArcGISProject("CURRENT").activeMap
    1. Recupere a lista de camadas no mapa.
    layers = active_map.listLayers()
    1. Crie uma lista vazia para armazenar as camadas selecionadas.
    selected_layers = []
    1. Passe por cada camada para verificar se ela está selecionada.
    for layer in layers:
        selection_set = layer.getSelectionSet()
        if selection_set:
            selected_layers.append(layer.name)

    return selected_layers
    1. Imprima a lista de camadas selecionadas.
if __name__ == "__main__":
    selected_layers = get_selected_layers()
    print("Selected Layers:")
    for layer_name in selected_layers:
        print(layer_name)

O código abaixo demonstra o script completo de funcionamento.

import arcpy

def get_selected_layers():
    active_map = arcpy.mp.ArcGISProject("CURRENT").activeMap

    layers = active_map.listLayers()

    selected_layers = []

  for layer in layers:
        selection_set = layer.getSelectionSet()
        if selection_set:
            selected_layers.append(layer.name)

    return selected_layers

if __name__ == "__main__":
    selected_layers = get_selected_layers()
    print("Selected Layers:")
    for layer_name in selected_layers:
        print(layer_name)

A imagem abaixo mostra a lista de camadas selecionadas impressas na janela de Python.

A lista de camadas selecionadas é impressa na janela de Python

ID do Artigo: 000032814

Obtenha suporte com IA

Resolva seu problema rapidamente com o chatbot de IA de suporte da Esri.

Comece a conversar agora

Informações Relacionadas

Descubra mais sobre este tema

Obtenha ajuda de especialistas do ArcGIS

Entre em contato com Suporte Técnico

Comece a conversar agora

Ir para as opções de download