Resumen
Actualiza las coordenadas Z de los vértices de entidad 3D usando una superficie.
Uso
Solo se actualizarán los vértices de las entidades que se superpongan totalmente con la superficie de entrada. Las entidades que no se superponen con la superficie se omitirán.
Nota:
Si el valor z obtenido para un vértice dado está fuera del dominio z de la referencia espacial de una entidad de una geodatabase, el valor z del vértice no se actualizará. Cree una copia de las entidades de entrada y especifique un dominio z apropiado para procesar las entidades afectadas.
Sintaxis
arcpy.3d.UpdateFeatureZ(in_features, in_surface, {method}, {status_field})
Parámetro | Explicación | Tipo de datos |
in_features | Las entidades 3D cuyos valores z de vértices se modificarán. | Feature Layer |
in_surface | La superficie que se utilizará para determinar el nuevo valor z para los vértices de entidades 3D. | LAS Dataset Layer; Mosaic Layer; Raster Layer; TIN Layer |
method (Opcional) | Método de interpolación que se utilizará para determinar la información acerca de la superficie. Las opciones disponibles dependen del tipo de datos de la superficie de entrada:
| String |
status_field (Opcional) | Campo numérico existente que se rellenará con valores para reflejar si los vértices de la entidad se han actualizado correctamente. Se especificará un valor 1 para las entidades actualizadas y 0 para las entidades que no se han actualizado. Las entidades que se superponen parcialmente con la superficie no se actualizarán. | Field |
Salida derivada
Nombre | Explicación | Tipo de datos |
out_feature_class | Las entidades 3D actualizadas cuyos valores z de vértices se han modificado. | Capa de entidades |
Muestra de código
En el siguiente ejemplo se muestra cómo usar esta herramienta en la ventana de Python.
arcpy.env.workspace = 'C:/data'
arcpy.UpdateFeatureZ_3d('lines_3d.shp', 'dsm.tif', status_field='Updated')
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''****************************************************************************
Name: Update Antenna Positions
Description: Updates antenna positions based on elevations from a surface.
****************************************************************************'''
# Import system modules
import arcpy
in_fc = arcpy.GetParameterAsText(1) # pt features representing antenna locations
surface = arcpy.GetParameterAsText(2) # surface used to modify feature Z values
try:
if arcpy.Describe(surface).dataType in ('Raster', 'RasterLayer'):
method = 'BILINEAR'
else:
method = 'CONFLATE_ZMAX'
arcpy.ddd.UpdateFeatureZ(in_fc, surface, method)
except arcpy.ExecuteError:
print(arcpy.GetMessages())
Entornos
Información de licenciamiento
- Basic: Requiere 3D Analyst
- Standard: Requiere 3D Analyst
- Advanced: Requiere 3D Analyst