Desejo acessar as camadas de anotação usando o arcpy (o objetivo é verificar algumas seqüências de texto nas anotações de texto). Por anotação, quero dizer anotações de ferramentas de desenho , não rótulos dinâmicos. Essas camadas de anotação estão sob uma camada de grupos com o nome 'Padrão'.
A documentação da Esri fala da anotação de desenho como sendo camadas:
Existem essencialmente três categorias de camadas em um documento de mapa: camadas de recurso, camadas de grupo e camadas de varredura. As propriedades isFeatureLayer, isGroupLayer e isRasterLayer permitem identificar ou isolar a maioria dos tipos de camada, mas nem todos. Existem algumas camadas e conjuntos de dados especializados que não se enquadram em uma dessas três categorias: subclasses de anotação, recursos de dimensão, conjuntos de dados de rede, conjuntos de dados de terreno, conjuntos de dados de topologia e assim por diante. Nesses casos, pode ser necessário testar outras propriedades para isolar uma camada de interesse antes de fazer algo.
Uma coisa a ter em atenção é como o ArcGIS lida com anotações de desenho , duas configurações médias são possíveis:
O ArcGIS suporta totalmente dois tipos de anotação: banco de dados geográficos e documento de mapa
No meu caso, é um documento de mapa.
À luz de toda essa documentação, parece que as anotações de desenho são meras camadas; portanto, um código simples como este deve estar funcionando:
mxd = arcpy.mapping.MapDocument("some\mxdpath\here")
df = arcpy.mapping.ListDataFrames(mxd,"Layers")
lyr = arcpy.mapping.ListLayers(mxd,"current_annotation_layer",df)
Mas o problema é que as anotações não parecem obtidas via dataframe (o que é estranho, considerando que cada uma das minhas camadas de anotação está associada a uma camada de recurso).
Alguma classe arcpy específica para acessar anotações (uma comparável à IAnnotationFeature2 do ArcObject SDK)? Alguma solução alternativa?
Obrigado !