Interpolar forma (3D Analyst)

Disponible con una licencia de 3D Analyst.

Disponible con una licencia de Spatial Analyst.

Resumen

Crea entidades 3D interpolando los valores z de una superficie.

Más información sobre cómo funciona Interpolar forma

Ilustración

Ilustración de Interpolar forma

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.3d.InterpolateShape(in_surface, in_feature_class, out_feature_class, {sample_distance}, {z_factor}, {method}, {vertices_only}, {pyramid_level_resolution}, {preserve_features})
ParámetroExplicaciónTipo 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.

  • BILINEARDetermina el valor del punto de consulta mediante interpolación bilineal. Esta es la opción predeterminada si la entrada es una superficie de ráster.
  • NEARESTDetermina el valor del punto de consulta mediante interpolación del vecino más cercano. Cuando se utiliza este método, los valores de superficie solo se interpolan para los vértices de la entidad de entrada. Esta opción solo está disponible para una superficie de ráster.
  • LINEAR Método de interpolación predeterminado para datasets TIN, de terreno y LAS. Obtiene la elevación a partir del plano definido por el triángulo que contiene la ubicación XY del punto de consulta.
  • NATURAL_NEIGHBORS Obtiene la elevación al aplicar los pesos basadas en el área a los vecinos naturales del terreno de un punto de consulta.
  • CONFLATE_ZMIN Obtiene la elevación del valor z más bajo que se encuentra entre los vecinos naturales de un punto de consulta.
  • CONFLATE_ZMAX Obtiene la elevación del valor z más alto que se encuentra entre los vecinos naturales de un punto de consulta.
  • CONFLATE_NEAREST Obtiene la elevación del valor más cercano entre los vecinos naturales del terreno de un punto de consulta.
  • CONFLATE_CLOSEST_TO_MEAN Obtiene la elevación del valor z que está más cerca del promedio de todos los vecinos naturales de un punto de consulta.
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.

  • DENSIFYInterpola utilizando la distancia de muestra. Esta es la opción predeterminada.
  • VERTICES_ONLYInterpola a lo largo de los vértices.
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.

  • PRESERVEEl valor Z de cada vértice que quede fuera de la superficie de ráster se derivará de la tendencia de los valores Z calculados para los vértices que quedan dentro de la superficie de ráster.
  • EXCLUDESe omitirán de la salida las entidades que tengan al menos un vértice fuera de la superficie de ráster. Esta es la opción predeterminada.
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.

arcpy.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

# Set local variables
inWorkspace = arcpy.GetParameterAsText(0)
surface = arcpy.GetParameterAsText(1)

try:
    # Set default workspace
    arcpy.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))
    
except arcpy.ExecuteError:
    print(arcpy.GetMessages())
    
except Exception as err:
    print(err)

Información de licenciamiento

  • Basic: Requiere 3D Analyst
  • Standard: Requiere 3D Analyst
  • Advanced: Requiere 3D Analyst

Temas relacionados