Resumen
Crea entidades 3D interpolando los valores z de una superficie.
Obtenga más información acerca de cómo funciona Interpolar forma
Ilustración
Uso
Cuando utilice la interpolación de vecinos naturales, considere la posibilidad de especificar una distancia de muestra que sea igual o superior a la mitad del espaciado de punto promedio de los puntos de datos de la superficie.
Cuando utilice la opción Interpolar solo vértices, las entidades con vértices que caen fuera del área de datos de la superficie no formarán parte de la salida, a no ser que la superficie de entrada sea un ráster y se utilice el método de interpolación del vecino más cercano.
Sintaxis
arcpy.ddd.InterpolateShape(in_surface, in_feature_class, out_feature_class, {sample_distance}, {z_factor}, {method}, {vertices_only}, {pyramid_level_resolution}, {preserve_features})
Parámetro | Explicación | Tipo de datos |
in_surface | La superficie que se va a utilizar para interpolar los valores Z. | LAS Dataset Layer; Mosaic Layer; Raster Layer; Terrain Layer; TIN Layer |
in_feature_class | Las entidades de entrada que se van a procesar. | Feature Layer |
out_feature_class | La clase de entidad que generará esta herramienta. | Feature Class |
sample_distance (Opcional) | El espaciado en el que se interpolarán los valores z. De manera predeterminada, es el tamaño de celda del dataset ráster o una densificación natural de una superficie de triángulos. | Double |
z_factor (Opcional) | El factor por el que se multiplicarán los valores z. Esto se utiliza generalmente para convertir las unidades lineales Z para que coincidan con las unidades lineales XY. El valor predeterminado es 1, que no altera los valores de elevación. Este parámetro está deshabilitado si la referencia espacial de la superficie de entrada tiene un datum Z con una unidad lineal especificada. | Double |
method (Opcional) | El método de interpolación usado para determinar los valores de elevación para las entidades de salida. Las opciones disponibles dependen del tipo de superficie que se utiliza.
| String |
vertices_only (Opcional) | Especifica si la interpolación ocurrirá solo a lo largo de los vértices de una entidad de entrada, ignorando así la opción de distancia de muestra.
| Boolean |
pyramid_level_resolution (Opcional) | La tolerancia Z o la resolución del tamaño de la ventana del nivel de pirámide de terreno que utilizará esta herramienta. El valor predeterminado es 0, o resolución completa. | Double |
preserve_features (Opcional) | Especifica si las entidades con uno o varios vértices que quedan fuera del área de datos del ráster se conservarán en la salida. Este parámetro solo está disponible cuando la superficie de entrada es un ráster y se usa el método de interpolación del vecino más cercano.
| Boolean |
Muestra de código
Ejemplo 1 de InterpolateShape (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.InterpolateShape_3d("my_tin", "roads.shp", "roads_interp.shp")
Ejemplo 2 de InterpolateShape (script independiente)
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''*********************************************************************
Name: InterpolateShape Example
Description: This script demonstrates how to use InterpolateShape
on all 2D features in a target workspace.
*********************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions, sys, traceback
# Set local variables
inWorkspace = arcpy.GetParameterAsText(0)
surface = arcpy.GetParameterAsText(1)
try:
arcpy.CheckOutExtension("3D")
# Set default workspace
env.workspace = inWorkspace
# Create list of feature classes in target workspace
fcList = arcpy.ListFeatureClasses()
if fcList:
for fc in fcList:
desc = arcpy.Describe(fc)
# Find 2D features
if not desc.hasZ:
# Set Local Variables
outFC = "{0}_3D.shp".format(desc.basename)
method = "BILINEAR"
# Execute InterpolateShape
arcpy.ddd.InterpolateShape(surface, fc, outFC,
10, 1, method, True)
else:
print "{0} is not a 2D feature.".format(fc)
else:
print "No feature classes were found in {0}.".format(env.workspace)
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)
Entornos
- Espacio de trabajo actual
- Espacio de trabajo temporal
- Extensión
- Sistema de coordenadas de salida
- Transformaciones geográficas
- Resolución XY
- Tolerancia XY
- Resolución Z
- Tolerancia Z
- Palabra clave CONFIG de salida
- Cuadrícula espacial de salida 1
- Cuadrícula espacial de salida 2
- Cuadrícula espacial de salida 3
- Auto ejecución
Información de licenciamiento
- Basic: Requiere 3D Analyst
- Standard: Requiere 3D Analyst
- Advanced: Requiere 3D Analyst