Resumen
Agrega nuevos campos de atributos a las entidades de entrada que representan las características espaciales o geométricas y la ubicación de cada entidad, como la longitud o el área y las coordenadas x, y, z y m.
Uso
- En función de las opciones especificadas en el parámetro Propiedades de geometría, se agregarán uno o más campos de atributos a las entidades de entrada. Si los campos ya existen en las entidades de entrada, se sobrescribirán los valores de esos campos. Utilice la tabla siguiente para determinar qué campos se agregarán para cada propiedad de geometría: - Propiedad de geometría - Campos agregados - AREA - POLY_AREA: el área del polígono. - AREA_GEODESIC - AREA_GEO: el área geodésica del polígono. - CENTROID - CENTROID_X: la coordenada x del punto centroide. - CENTROID_Y: la coordenada y del punto centroide. - CENTROID_Z: la coordenada z del punto centroide. Este campo solo se agrega si las entidades de entrada tienen el valor z habilitado. - CENTROID_M: la coordenada m del punto centroide. Este campo solo se agrega si las entidades de entrada tienen el valor m habilitado. - CENTROID_INSIDE - INSIDE_X: la coordenada x de un punto central dentro de la entidad de entrada o sobre ella. - INSIDE_Y: la coordenada y de un punto central dentro de la entidad de entrada o sobre ella. - INSIDE_Z: la coordenada z de un punto central dentro de la entidad de entrada o sobre ella. Este campo solo se agrega si las entidades de entrada tienen el valor z habilitado. - INSIDE_M: la coordenada m de un punto central dentro de la entidad de entrada o sobre ella. Este campo solo se agrega si las entidades de entrada tienen el valor m habilitado. - EXTENT - EXT_MIN_X: la coordenada x mínima de la entidad. - EXT_MIN_Y: la coordenada y mínima de la entidad. - EXT_MAX_X: la coordenada x máxima de la entidad. - EXT_MAX_Y: la coordenada y máxima de la entidad. - LENGTH - LENGTH: la longitud de la línea. - LENGTH_GEODESIC - LENGTH_GEO: la longitud geodésica de la línea. - LENGTH_3D - LENGTH_3D: la longitud 3D de la línea. - LINE_BEARING - BEARING: el rumbo de principio a fin de la línea. Los valores están entre 0 y 360, donde 0 apunta hacia el norte, 90 hacia el este, 180 hacia el sur, 270 hacia el oeste, etc. - LINE_START_MID_END - START_X: la coordenada x del primer punto de la línea o el borde del polígono. - START_Y: la coordenada y del primer punto de la línea o el borde del polígono. - START_Z: la coordenada z del primer punto de la línea o el borde del polígono. Este campo solo se agrega si las entidades de entrada tienen el valor z habilitado. - START_M: la coordenada m del primer punto de la línea o el borde del polígono. Este campo solo se agrega si las entidades de entrada tienen el valor m habilitado. - MID_X: la coordenada x del punto a medio camino de la longitud de la línea o el borde del polígono. - MID_Y: la coordenada y del punto a medio camino de la longitud de la línea o el borde del polígono. - MID_Z: la coordenada z del punto a medio camino de la longitud de la línea o el borde del polígono. Este campo solo se agrega si las entidades de entrada tienen el valor z habilitado. - MID_M: la coordenada m del punto a medio camino de la longitud de la línea o el borde del polígono. Este campo solo se agrega si las entidades de entrada tienen el valor m habilitado. - END_X: la coordenada x del último punto de la línea o el borde del polígono. - END_Y: la coordenada y del último punto de la línea o el borde del polígono. - END_Z: la coordenada z del último punto de la línea o el borde del polígono. Este campo solo se agrega si las entidades de entrada tienen el valor z habilitado. - END_M: la coordenada m del último punto de la línea o el borde del polígono. Este campo solo se agrega si las entidades de entrada tienen el valor m habilitado. - PART_COUNT - PART_COUNT: el número de partes que conforman la entidad. - PERIMETER_LENGTH - PERIMETER: la longitud del perímetro o borde del polígono. - PERIMETER_LENGTH_GEODESIC - PERIM_GEO: la longitud geodésica del perímetro o borde del polígono. - POINT_COUNT - PNT_COUNT: el número de puntos que conforman la entidad. - POINT_X_Y_Z_M - POINT_X: la coordenada x del punto. - POINT_Y: la coordenada y del punto. - POINT_Z: la coordenada z del punto. Este campo solo se agrega si las entidades de entrada tienen el valor z habilitado. - POINT_M: la coordenada m del punto. Este campo solo se agrega si las entidades de entrada tienen el valor m habilitado. 
- Si se ha especificado un sistema de coordenadas, los cálculos de longitud y área se expresarán en las unidades propias de ese sistema de coordenadas a menos que se seleccionen otras unidades en los parámetros Unidad de longitud y Unidad de área. 
- Los campos de atributo agregados por esta herramienta son como cualquier otro campo que pueda agregar a una capa de entidades. Los valores de campo se pueden sobrescribir, eliminar o renombrar. Los valores de esos campos no se calculan de nuevo automáticamente después de las ediciones. Si se editan las entidades, será necesario volver a ejecutar esta herramienta para actualizar los valores de los campos. 
- Si existe una selección en las entidades de entrada, solamente las entidades seleccionadas tendrán valores calculados en los campos agregados. Las demás tendrán valores nulos. 
- Esta herramienta funciona con clases de entidades de punto, multipunto, polilínea, polígono y anotación. La anotación se trata como una clase de entidad de polígono. 
Precaución:
Esta herramienta modifica los datos de entrada. Consulte Herramientas que no crean datasets de salida para obtener más información y estrategias para evitar cambios de datos no deseados.
Sintaxis
AddGeometryAttributes(Input_Features, Geometry_Properties, {Length_Unit}, {Area_Unit}, {Coordinate_System})| Parámetro | Explicación | Tipo de datos | 
| Input_Features | Se agregan nuevos campos de atributos a las entidades de entrada para almacenar propiedades como la longitud, el área o las coordenadas x, y, z y m. | Feature Layer | 
| Geometry_Properties [Geometry_Properties,...] | Determina las propiedades de la geometría o la forma que se calcularán en los nuevos campos de atributos. 
 | String | 
| Length_Unit (Opcional) | La unidad para calcular la longitud. 
 | String | 
| Area_Unit (Opcional) | La unidad para calcular el área. 
 | String | 
| Coordinate_System (Opcional) | Sistema de coordenadas en el cual se calcularán las coordenadas, la longitud y el área. De forma predeterminada se utiliza el sistema de coordenadas de las entidades de entrada. | Coordinate System | 
Salida derivada
| Nombre | Explicación | Tipo de datos | 
| Modified_Input_Features | Las entidades de entrada actualizadas. | Capa de entidades | 
Muestra de código
El siguiente script de la ventana de Python muestra cómo utilizar la herramienta AddGeometryAttributes.
import arcpy
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.AddGeometryAttributes_management("roads", "LENGTH;LINE_START_MID_END")Obtenga el rectángulo de extensión de cada entidad de línea y construya una cuadrícula de 10 x 10 dentro de dicha extensión.
# Name: GridCreation.py
# import system modules
import arcpy
# Set environment settings
arcpy.env.workspace = r"C:\data\City.gdb"
arcpy.env.outputCoordinateSystem = arcpy.Describe("roads").spatialReference
# Set local variables
in_features = "roads"
properties = "EXTENT"
length_unit = ""
area_unit = ""
coordinate_system = ""
# Generate the extent coordinates using Add Geometry Properties tool
arcpy.AddGeometryAttributes_management(in_features, properties, length_unit,
                                                              area_unit,
                                                              coordinate_system)
# Use Search Cursor to walk through each feature and generate grids
with arcpy.da.SearchCursor(in_features, ["OID@", "EXT_MIN_X", "EXT_MIN_Y",
                                           "EXT_MAX_X", "EXT_MAX_Y"]) as sCur:
    for row in sCur:
        minX, minY, maxX, maxY = row[1], row[2], row[3], row[4]
        arcpy.CreateFishnet_management("fishnet_{0}".format(row[0]),
                    number_rows = 10,
                    number_columns = 10,
                    template = "{0} {1} {2} {3}".format(minX, maxX, minY, maxY),
                    origin_coord = "{0} {1}".format(minX, minY),
                    y_axis_coord = "{0} {1}".format(minX, maxY),
                    corner_coord = "{0} {1}".format(maxX, maxY),
                    geometry_type = "POLYGON",
                    labels = "NO_LABELS")Información de licenciamiento
- Basic: Sí
- Standard: Sí
- Advanced: Sí