Interpolar forma (3D Analyst)

Resumen

Interpola valores z para una clase de entidad basada en una elevación derivada de un ráster, de red irregular de triángulos (TIN) o de dataset de terreno.

Obtenga más información acerca de cómo funciona Interpolar forma

Ilustración

Interpolate Shape illustration

Uso

Sintaxis

InterpolateShape_3d (in_surface, in_feature_class, out_feature_class, {sample_distance}, {z_factor}, {method}, {vertices_only}, {pyramid_level_resolution})
ParámetroExplicaciónTipo de datos
in_surface

El dataset LAS, ráster, TIN o superficie de terreno se utiliza para interpolar valores z.

LAS Dataset Layer, Raster Layer; Terrain Layer; TIN Layer
in_feature_class

Clase de entidad de entrada.

Feature Layer
out_feature_class

La clase de entidad de salida.

Feature Class
sample_distance
(Opcional)

El espaciado en el que se interpolarán los valores z. Por defecto, este es un tamaño de celda de un ráster o una densificación natural de un TIN.

Double
z_factor
(Opcional)

El factor por el que se multiplicarán los valores de elevación. Esto se suele usar para convertir unidades lineales Z que coinciden con las de las unidades lineales XY. El valor predeterminado es 1, que no altera los valores de elevación.

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. La interpolación BILINEAR está disponible para una superficie ráster, en donde un punto de consulta obtiene su elevación desde los valores encontrados en las cuatro celdas más cercanas. Los dataset de TIN y de terreno proporcionan las siguientes opciones:

  • LINEAR Método de interpolación predeterminado. 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 pequeño que se encuentra entre los vecinos naturales del terreno de un punto de consulta.
  • CONFLATE_ZMAX Obtiene la elevación del valor Z más grande entre los vecinos naturales del terreno 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 al 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

Ejemplo de código

Ejemplo 1 de InterpolateShape (ventana de Python)

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.InterpolateShape_3d("my_tin", "roads.shp", "roads_interp.shp")
Ejemplo 2 de InterpolateShape (secuencia de comandos independiente)

El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos 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

Temas relacionados

9/11/2013