Resumen
Crea las entidades 3D con los valores de altura derivados del atributo de las entidades de entrada.
Uso
Admite geometrías de punto, multipunto, de línea y poligonales.
La elevación de cada entidad se deriva del valor obtenido en el campo de altura especificado. Las entidades de línea pueden proporcionar opcionalmente un segundo campo de altura. Utilizar dos campos de altura dará como resultado que cada entidad de línea empiece en el valor Z obtenido en el primer campo de altura y finalice en el valor Z del segundo campo de altura. Las alturas de los vértices intermedios se interpolarán en base a la pendiente de la línea entre los dos extremos.
Sintaxis
arcpy.ddd.FeatureTo3DByAttribute(in_features, out_feature_class, height_field, {to_height_field})
Parámetro | Explicación | Tipo de datos |
in_features | Las entidades que se utilizarán para crear entidades 3D. | Feature Layer |
out_feature_class | La clase de entidad que generará esta herramienta. | Feature Class |
height_field | El campo cuyos valores definen la altura de las entidades 3D resultantes. | Field |
to_height_field (Opcional) | Se utiliza un segundo campo de altura opcional para las líneas. Al usar dos campos de altura, cada línea comenzará en la primera altura y terminará en la segunda (pendiente). | Field |
Muestra de código
Ejemplo 1 de FeatureTo3DByAttribute (ventana de Python)
En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.
import arcpy
from arcpy import env
arcpy.CheckOutExtension('3D')
env.workspace = 'C:/data'
arcpy.FeatureTo3DByAttribute_3d('Points2D.shp', 'Points3D.shp', 'Elevation')
Ejemplo 2 de FeatureTo3DByAttribute (secuencia de comandos independiente)
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''****************************************************************************
Name: FeatureTo3DByAttribute Example
Description: This script demonstrates how to use the
FeatureTo3DByAttribute tool.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env
try:
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension('3D')
# Set environment settings
env.workspace = 'C:/data'
# Set Local Variables
InFC = 'Points_2D.shp'
Height_Field = 'POPULATION'
# Ensure output has unique name
OutFC = arcpy.CreateUniqueName('Points_3D.shp')
# Execute ConstructSightLines
arcpy.FeatureTo3DByAttribute_3d(InFC, OutFC, Height_Field)
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)
Entornos
Información de licenciamiento
- Basic: Requiere 3D Analyst
- Standard: Requiere 3D Analyst
- Advanced: Requiere 3D Analyst