Instrução

Alternar a visibilidade de uma subcamada específica de uma camada de grupo no ArcMap usando o script Python

Last Published: November 30, 2021

Resumo

Após desativar a visibilidade da camada de grupo usando Python, os usuários não conseguem visualizar a subcamada desejada em um conjunto de camadas de grupo.
A subcamada herda a visibilidade da camada de grupo, portanto, qualquer tentativa de alternar a visibilidade da subcamada não funciona se a camada de grupo estiver marcada como invisível.
O método Python isGroupLayer não permite convencionalmente que os usuários desliguem a visibilidade das camadas restantes no grupo sem desativar a visibilidade da subcamada selecionada.

Causa

A subcamada herda a visibilidade da camada de grupo, portanto, qualquer tentativa de alternar a visibilidade da subcamada não funciona se a camada de grupo estiver marcada como invisível.

O método Python isGroupLayer não permite convencionalmente que os usuários desliguem a visibilidade das camadas restantes no grupo sem desativar a visibilidade da subcamada selecionada.

Procedimento

A seção de código a seguir permite que o usuário alterne a visibilidade das camadas do grupo pai sem afetar a visibilidade da subcamada selecionada. Ao definir o parâmetro do método layer.longName como a subcamada desejada, os usuários podem manter a visibilidade da subcamada selecionada.

  1. No ArcMap, clique em Geoprocessamento > Python.
  2. Digite o seguinte bloco de código:
import arcpy mxd = arcpy.mapping.MapDocument("current") data_frame = arcpy.mapping.ListDataFrames(mxd, "Layers")[0] layers = arcpy.mapping.ListLayers(mxd) for layer in layers: if layer.isGroupLayer: layer.visible = True if layer.longName =="Group Name\SubLayer Name": layer.visible = True arcpy.RefreshTOC() arcpy.RefreshActiveView()
  1. Pressione Enter.

O mesmo bloco de código também pode ser salvo e executado por meio de um script autônomo (arquivo .py). No entanto, é aconselhável iniciar o ArcMap antes de executar o script, para poder analisar os resultados.

Para usar o bloco de código acima como um script independente, substitua:

mxd = arcpy.mapping.MapDocument("current")

with the Windows directory location of the MXD:

mxd = arcpy.mapping.MapDocument("C:\ C:\Users\UserName\Documents\TestFiles")

ID do Artigo: 000013577

Receba notificações e encontre soluções para problemas novos ou comuns

Obtenha respostas resumidas e soluções de vídeo do nosso novo chatbot de IA.

Baixe o Aplicativo de Suporte da Esri

Informações Relacionadas

Descubra mais sobre este tema

Obtenha ajuda de especialistas do ArcGIS

Entre em contato com Suporte Técnico

Baixe o Aplicativo de Suporte da Esri

Ir para as opções de download