Agregar información Z (3D Analyst)
Resumen
Agrega información relacionada con las propiedades de elevación de las entidades en una clase de entidad habilitada en Z.
Se analiza cada forma 3D y se incorporan las propiedades seleccionadas en la tabla de atributos de la clase de entidad de entrada. Las opciones de salida varían según el tipo de geometría de la entidad.
Uso
-
La siguiente lista resume las opciones de propiedad Z por geometría:
- Puntos: Z
- Multipuntos: Z mínimo, Z máximo, Z medio, conteo de puntos
- Polilíneas: Z mínimo, Z máximo, Z medio, longitud 3D, pendiente mínima, pendiente máxima, pendiente promedio, conteo de vértices
- Polígonos: Z mínimo, Z máximo, Z medio, longitud 3D, pendiente mínima, pendiente máxima, pendiente promedio, conteo de vértices
- Multiparches: Z mínimo, Z máximo, área de superficie, volumen, pendiente mínima, pendiente máxima, pendiente promedio
-
La pendiente se devuelve como un valor porcentual o grado, y se calcula de manera diferente para cada tipo de geometría que admite esta propiedad.
- Los valores de pendiente de las entidades de línea se calculan para cada segmento de línea:
- La pendiente mínima se obtiene del segmento cuyo valor es más cercano a 0, o grado horizontal.
- La pendiente máxima se obtiene del segmento con el valor calculado más grande.
- La pendiente promedio se obtiene promediando la pendiente de todos los segmentos de línea después de ponderar cada segmento por su longitud 3D. Esto resulta en segmentos más largos con mayor influencia en el valor resultante sobre segmentos más cortos.
- Los valores de pendiente para entidades multiparche se calculan para cada cara del triángulo.
- La pendiente mínima se obtiene de la cara cuyo valor es más cercano a 0, o grado horizontal.
- La pendiente máxima se obtiene de la cara con el valor más grande.
- La pendiente promedio se obtiene al promediar la pendiente de todas las caras del triángulo después de ponderar cada segmento por su área tridimensional. Esto resulta en áreas más grandes con mayor influencia en el valor resultante sobre las más pequeñas.
- Los valores de pendiente de las entidades poligonales solo se calculan para el borde de la entidad utilizando la misma técnica aplicada para los segmentos de línea.
- Los valores de pendiente de las entidades de línea se calculan para cada segmento de línea:
El volumen solo se puede calcular para los multiparches cerrados. Una entidad de multiparche abierta devolverá un valor de 0.0. En la plataforma Solaris, una limitación de diseño actualmente evita que la herramienta determine si un multiparche está cerrado, lo que resulta en que las medidas de volumen se calculen para todos los multiparches bajo la suposición de que están cerrados.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_feature_class |
The input feature class. | Feature Layer |
out_property [out_property,...] | Las propiedades de z de salida que se agregan a la tabla de atributos de la clase de entidad de entrada. Las siguientes opciones están disponibles:
| String |
noise_filtering (Opcional) |
Proporciona la opción de excluir pequeñas porciones de entidades de los cálculos estadísticos. Esta opción es útil para obtener buenos cálculos de pendiente máxima, ya que las partes pequeñas con frecuencia muestran pendientes extremas, lo que puede influir en los resultados estadísticos. Los valores dados en las opciones Área o Longitud se utilizarán para excluir estas porciones de entidades. Este parámetro no se aplica a las entidades de punto y multipunto.
| String |
Ejemplo de código
The following sample demonstrates the use of this tool in the Python window:
import arcpy from arcpy import env arcpy.CheckOutExtension('3D') env.workspace = 'C:/data' arcpy.AddZInformation_3d('lines_3D.shp', 'Z_MEAN; LENGTH_3D; AVG_SLOPE', 'NO_FILTER')
The following sample demonstrates the use of this tool in a stand-alone Python script:
'''****************************************************************** Name: AddZInformation Example Description: This script demonstrates AddZInformation on all z-aware features in a target workspace. ******************************************************************''' # Import system modules import arcpy import exceptions, sys, traceback from arcpy import env try: arcpy.CheckOutExtension('3D') # Set environment settings env.workspace = 'C:/data' # Create list of feature classes fcList = arcpy.ListFeatureClasses() if fcList: for fc in fcList: desc = arcpy.Describe(fc) if desc.hasZ: # Set Local Variables noise = 'No_Filter' if desc.shapeType == 'Polygon': Prop = ['Z_MIN', 'Z_MAX', 'VERTEX_COUNT'] elif desc.shapeType == 'Point': Prop = 'Z' elif desc.shapeType == 'Multipoint': Prop = ['Z_MIN', 'Z_MAX', 'Z_MEAN'] elif desc.shapeType == 'Polyline': Prop = 'LENGTH_3D' print 'Completed adding Z information.' # Execute AddZInformation arcpy.AddZInformation_3d(inFC, Prop, noise) arcpy.CheckInExtension('3D') except arcpy.ExecuteError: print arcpy.GetMessages() except: # Get the traceback object tb = sys.exc_info()[2] tbinfo = traceback.format_tb(tb)[0] # Concatenate error information into message string pymsg = 'PYTHON ERRORS:\nTraceback info:\n{0}\nError Info:\n{1}'\ .format(tbinfo, str(sys.exc_info()[1])) msgs = 'ArcPy ERRORS:\n {0}\n'.format(arcpy.GetMessages(2)) # Return python error messages for script tool or Python Window arcpy.AddError(pymsg) arcpy.AddError(msgs)