Convertir etiquetas en anotación (Cartografía)

Resumen

Convierte las etiquetas de una sola capa o de todo el mapa en anotaciones. Tanto la anotación estándar como la vinculada a entidad se pueden crear de este modo.

Uso

  • Es posible convertir etiquetas en anotación para una sola capa o para todo el mapa. Si se selecciona la opción de una sola capa, es necesario especificar la capa, y debe estar en el mapa.

  • Se respetarán los rangos de escala de la clase de etiqueta. Cuando la herramienta genere una anotación para una escala de mapa específica, solo convertirá las clases de etiqueta que estén activadas y visibles en esa escala.

    Nota:

    Los rangos de escala de la clase de etiqueta se establecen en la pestaña Etiquetado en ArcGIS Pro.

  • Las clases de entidad de anotación no se sobrescribirán si se especifica un sufijo para indicar que ya existe. En este caso, se agregará un número al sufijo de la clase de entidad de anotación (por ejemplo, CitiesAnno, CitiesAnno_1, etc.). El formato completo para asignar nombre es el siguiente:

    <layer name> <duplicate feature class count> <anno suffix> <running number>

  • Si está produciendo anotaciones en varias escalas de referencia, diseñe el mapa para cada una de esas escalas y evite establecer una escala de referencia en el mapa. A continuación, puede convertir las etiquetas en anotación para cada escala y asignar un nombre de manera apropiada, por ejemplo, CitiesAnno_1000, CitiesAnno_100000.

  • Una de las salidas de esta herramienta es una capa de grupo. Si trabaja en el panel Catálogo, la ventana de Python o un script independiente de Python, puede utilizar la herramienta Guardar en archivo de capas para escribir la capa del grupo de salida en un archivo de capas. Si utiliza ArcGIS Pro, la herramienta agrega la capa de grupo a la visualización. El grupo de capas que se crea es temporal y, una vez finalizada la sesión, no permanece en el sistema a menos que se guarde el proyecto.

  • Un grupo de capas existente se sobrescribirá si especifica el mismo nombre de capa y si especifica explícitamente que está permitida la sobrescritura de la salida.

  • Si la opción Crear anotación vinculada a entidad no se activa, se puede utilizar la opción Convertir etiquetas de todas las capas a una sola clase de entidad de salida para crear una única clase de entidad de anotación para todo el mapa.

    Al crear una única clase de entidad de anotación para el mapa, es posible fusionar las clases de etiqueta con propiedades similares en una clase de anotación con la opción Fusionar clases de etiqueta similares.

  • La anotación vinculada a una entidad está asociada con una entidad específica en otra clase de entidad de la geodatabase. Si la opción Crear anotación vinculada a entidad está activada cuando crea la clase de entidad de anotación de salida, también se generará automáticamente una clase de relación.

  • Cuando se crean anotaciones vinculadas a una entidad, el espacio de trabajo de salida debe ser el mismo que el de las clases de entidad a las que están vinculadas.

  • Es posible que algunas etiquetas no se visualicen en el mapa debido a que no hay espacio. Para convertir estas etiquetas, marque la casilla Convertir etiquetas no situadas en anotaciones no localizadas. Esto guarda las etiquetas no colocadas en la clase de entidad de anotación, lo que le permite posicionarlas después en una sesión de edición de ArcGIS Pro.

  • Los espacios de trabajo in_memory y de memoria no admiten la anotación vinculada a entidad.

Sintaxis

arcpy.cartography.ConvertLabelsToAnnotation(input_map, conversion_scale, output_geodatabase, {anno_suffix}, {extent}, {generate_unplaced}, {require_symbol_id}, {feature_linked}, {auto_create}, {update_on_shape_change}, {output_group_layer}, {which_layers}, {single_layer}, {multiple_feature_classes}, {merge_label_classes})
ParámetroExplicaciónTipo de datos
input_map

El mapa de entrada.

Map
conversion_scale

La escala a la que se van a convertir las etiquetas. Si una escala de referencia está establecida en el mapa, se utilizará para el cambio de tamaño de los símbolos y la creación de las clases de entidad de anotación, pero la conversión se producirá a esta escala.

Double
output_geodatabase

El espacio de trabajo donde se guardan las clases de entidad de salida. El espacio de trabajo puede ser una geodatabase o un dataset de entidades existente. Si esta no es la misma base de datos utilizada por todas las capas del mapa, la opción vinculada a entidad estará deshabilitada.

Workspace; Feature Dataset
anno_suffix
(Opcional)

El sufijo que se agrega a cada clase de entidad de anotación nueva. Este sufijo se incorpora al nombre de la clase de entidad de origen para cada clase de entidad de anotación nueva.

String
extent
(Opcional)

Especifica la extensión que contiene las etiquetas que se convertirán en anotación.

  • MAXOF: se utilizará la extensión máxima de todas las entradas.
  • MINOF: se utilizará el área mínima en común de todas las entradas.
  • DISPLAY: la extensión es igual a la visualización actual.
  • Nombre de capa: se utilizará la extensión de la capa especificada.
  • Objeto de Extent: se utilizará la extensión del objeto especificado.
  • Cadena de coordenadas delimitada por espacios: se utilizará la extensión de la cadena especificada. Las coordenadas se expresan como x-min, y-min, x-max, y-max.
Extent
generate_unplaced
(Opcional)

Especifica si se creará una anotación no colocada a partir de etiquetas no colocadas.

  • ONLY_PLACEDLa anotación sólo se crea para las entidades que estén etiquetadas. Esta es la opción predeterminada.
  • GENERATE_UNPLACEDLas anotaciones no colocadas se almacenan en la clase de entidad de anotación. El campo de estado de esta anotación se establece como No colocada.
Boolean
require_symbol_id
(Opcional)

Especifica si se restringirán las propiedades del símbolo de texto que se pueden editar.

  • NO_REQUIRE_IDPermite editar cualquier propiedad de símbolo de texto. Esta es la opción predeterminada.
  • REQUIRE_IDSolo permitirá la edición de propiedades de símbolo que permiten a las entidades de anotación mantener la referencia a su símbolo de texto asociado en la colección.
Boolean
feature_linked
(Opcional)
Licencia:

Este parámetro solo está disponible con las licencias de ArcGIS Desktop Standard y ArcGIS Desktop Advanced.

Especifica si la clase de entidad de anotación de salida se vinculará a las entidades en otra clase de entidad.

  • STANDARDLa clase de entidad de anotación de salida no se vinculará a las entidades en otra clase de entidad. Esta es la opción predeterminada.
  • FEATURE_LINKEDLa clase de entidad de anotación de salida se vinculará a las entidades en otra clase de entidad.
Boolean
auto_create
(Opcional)

Especifica si se creará una anotación cuando se agreguen nuevas entidades a la clase de entidad vinculada si el parámetro feature_linked se define como FEATURE_LINKED.

  • AUTO_CREATELa anotación vinculada a entidad se creará cuando se agreguen nuevas entidades a la clase de entidad vinculada. Esta es la opción predeterminada.
  • NO_AUTO_CREATELa anotación vinculada a entidad no se creará cuando se agregan nuevas entidades a la clase de entidad vinculada.
Boolean
update_on_shape_change
(Opcional)

Especifica si se actualizará la posición de la anotación cuando la forma de la entidad vinculada se actualiza si el parámetro feature_linked se define como FEATURE_LINKED.

  • SHAPE_UPDATELa posición de la anotación se actualizará cuando se modifique la forma de la entidad vinculada. Esta es la opción predeterminada.
  • NO_SHAPE_UPDATELa posición de la anotación no se actualizará cuando se modifique la forma de la entidad vinculada.
Boolean
output_group_layer
(Opcional)

El grupo de capas que contiene la anotación generada. Puede usar la herramienta Guardar en archivo de capa para escribir el grupo de capas de salida en un archivo de capa.

Group Layer
which_layers
(Opcional)

Especifica si la anotación se convertirá para todas las capas del mapa o solo para una. Es necesario especificar la capa única.

  • ALL_LAYERSLas etiquetas se convertirán en anotación para todas las capas del mapa. Esta es la opción predeterminada.
  • SINGLE_LAYERLas etiquetas se convertirán en anotación en una sola capa. Es necesario especificar la capa.
String
single_layer
(Opcional)

La capa con la anotación que hay que convertir cuando el parámetro which_layers se define como SINGLE_LAYER. Esta capa debe estar presente en el mapa.

Feature Layer
multiple_feature_classes
(Opcional)

Especifica si las etiquetas se convertirán a clases de entidad de anotación individuales o a una sola clase de entidad de anotación. Si se convierte a una sola clase de entidad de anotación, la anotación no se puede vincular a una entidad.

  • SINGLE_FEATURE_CLASSLas etiquetas de todas las capas se convertirán a una sola clase de entidad de anotación.
  • FEATURE_CLASS_PER_FEATURE_LAYERLas etiquetas se convertirán a clases de entidad de anotación individuales que se corresponden con sus capas. Esta es la opción predeterminada.
Boolean
merge_label_classes
(Opcional)

Especifica si las clases de etiqueta similares se fusionarán cuando el parámetro multiple_feature_classes se defina como SINGLE_FEATURE_CLASS.

  • MERGE_LABEL_CLASSLas clases de etiqueta con propiedades similares se fusionarán cuando el parámetro multiple_feature_classes se defina como SINGLE_FEATURE_CLASS.
  • NO_MERGE_LABEL_CLASSLas clases de etiqueta no se fusionarán cuando el parámetro multiple_feature_classes se defina como SINGLE_FEATURE_CLASS. Esta es la opción predeterminada.
Boolean

Salida derivada

NombreExplicaciónTipo de datos
updated_geodatabase

El espacio de trabajo donde se guardan las clases de entidad de salida.

Espacio de trabajo

Muestra de código

Ejemplo de ConvertLabelsToAnnotation (ventana de Python)

Muestra de Python para ConvertLabelsToAnnotation que convierte etiquetas en anotación para una sola capa del mapa.

import arcpy
arcpy.cartography.ConvertLabelsToAnnotation(
    'Map1', 10000, 'D:/data/Cobourg.gdb', 'Anno', 'MAXOF', 'ONLY_PLACED', 
    'REQUIRE_ID', 'STANDARD', '', '', 'AnnoLayer', 'SINGLE_LAYER', 'Schools', '', '')
Ejemplo 2 de ConvertLabelsToAnnotation (script independiente)

Script independiente que convierte etiquetas en anotación para el mapa mediante la función ConvertLabelsToAnnotation. La anotación se convertirá en una sola clase de entidad de anotación y las clases de etiqueta similares se fusionarán.

# Name: ConvertLabelsToAnnotation.py
# Description: Find all the maps in the project and
#              convert labels to annotation for each map
# import system modules
import arcpy
# Loop through the project, find all the maps, and
#   convert labels to annotation for each map,
#   using the name of the map as part of the annotation suffix 
project = arcpy.mp.ArcGISProject("D:\\data\\myproject.aprx")
for mp in project.listMaps():
    print("Converting labels to annotation for: " + mp.name)
    arcpy.cartography.ConvertLabelsToAnnotation(
            mp, 10000, 'D:/data/Cobourg.gdb', 'Anno_' + mp.name, 'MAXOF', 
            'ONLY_PLACED', 'REQUIRE_ID', 'STANDARD', '', '', 
            'AnnoLayers_' + mp.name, 'ALL_LAYERS', '', 'SINGLE_FEATURE_CLASS', 
            'MERGE_LABEL_CLASS')

Información de licenciamiento

  • Basic: Sí
  • Standard: Sí
  • Advanced: Sí

Temas relacionados