Eliminar puntos de terreno (3D Analyst)
Resumen
Elimina puntos dentro de un área de interés especificada de una o más entidades que forman parte de un dataset de terreno.
Uso
-
Al eliminar puntos de una clase de entidad integrada, se invalida el terreno. Ejecuta la herramienta Construir terreno después de eliminar los puntos.
Si el terreno se encuentra en SDE, debe registrarse como versionado.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_terrain |
El dataset de terreno de entrada. | Terrain Layer |
data_source |
Una o más clases de entidad desde donde se quitarán los puntos. | String |
polygon_features_or_extent | Especifica el el área desde donde se quitarán los puntos. Se puede utilizar una clase de entidad de polígono o una extensión. Si se desean valores de extensión, use un objeto arcpy.Extent. | Feature Layer; Extent |
Ejemplo de código
El siguiente ejemplo muestra cómo usar de esta herramienta en la ventana Python:
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.DeleteTerrainPoints_3d("sample.gdb/featuredataset/terrain",
"mass_pts_embed", "1379938 235633 1382756 237681")
El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:
'''**********************************************************************
Name: Delete Terrain Outliers
Description: Uses Locate Outliers to identify outlier points in
a terrain dataset, and eliminates the outliers from the
terrain with Delete Terrain Points.
**********************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
from arcpy import env
try:
arcpy.CheckOutExtension('3D')
# Set Local Variables
env.workspace = 'C:/data'
terrain = 'test.gdb/featuredataset/sample_terrain'
terrainPt = 'elevation_pts' # name of terrain point data source
outliers = 'in_memory/outliers'
# Execute LocateOutliers
arcpy.ddd.LocateOutliers(terrain, outliers, 'APPLY_HARD_LIMIT', -10,
350, 'APPLY_COMPARISON_FILTER', 1.2, 120,
0.8, 8000)
# Execute Delete Terrain Points
arcpy.ddd.DeleteTerrainPoints(terrain, terrainPt, outliers)
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)