Interpolar polígono a multiparche (3D Analyst)
Resumen
Crea entidades multiparche que conforman superficies a partir de una clase de entidad poligonal utilizando una superficie de ráster, terreno o TIN.
Cada entidad poligonal tiene su límite perfilado a lo largo de la superficie. Las alturas se obtienen utilizando la interpolación lineal mediante muestreo en cada vértice de entrada y cuando la línea de límite interseca los bordes del triángulo de superficie y nodos. Esta densificación natural captura la definición completa de la superficie lineal utilizando una cantidad mínima de muestras. Es entonces cuando se extraen todos los nodos que caen dentro del polígono. Los nodos se vuelven a triangular en un nuevo TIN basado en la memoria, y el límite del polígono 3D se aplica como polígono de recorte. Los triángulos de este nuevo TIN después se extraen en una serie de tiras que se usan para definir una entidad basada en multiparche.
Uso
El multiparche resultante capturará la representación de la superficie 3D en su geometría. Los cálculos del área planimétrica y de superficie se incluirán en la salida junto con otros atributos del polígono de entrada.
-
Considere la conversión de polígonos a multiparches si tiene problemas de visualización con la representación tridimensional en pantalla de polígonos desplegados en una superficie.
-
El valor Tamaño máximo de tira de triángulo debe ser 3 o mayor. Este parámetro especifica la cantidad máxima de vértices permitidos en cualquier tira de triángulo utilizada en la construcción del multiparche. ArcGIS no tiene un límite de tamaño o preferencia en particular, pero algunas tarjetas gráficas 3D puede que sí, ya que las tiras de triángulos se cargan directamente a la interfaz de programación de aplicaciones (API) de gráficos 3D para la representación en pantalla. El rango recomendado es de 128 a 2048.
Sintaxis
Parámetro | Explicación | Tipo de datos |
in_surface |
La superficie de dataset de terreno o red irregular de triángulos (TIN) de entrada. | Terrain Layer; TIN Layer |
in_feature_class |
La clase de entidad poligonal de entrada. | Feature Layer |
out_feature_class |
La clase de entidad multiparche de salida. | Feature Class |
max_strip_size (Opcional) |
Controla la cantidad máxima de puntos que se utilizan para crear una tira de triángulo individual. Observe que, por lo general, cada multiparche consta de varias tiras. El valor predeterminado es 1,024. | Long |
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 |
area_field (Opcional) |
El nombre del campo de salida que contiene el área planimétrica, o 2D, de los multiparches resultantes. | String |
surface_area_field (Opcional) |
El nombre del campo de salida que contiene el área 3D de los multiparches resultantes. Esta área considera las ondulaciones de la superficie y siempre es más grande que el área planimétrica a menos que la superficie sea plana, en cuyo caso, las dos son iguales. | String |
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
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.InterpolatePolyToPatch_3d("sample.gdb/featuredataset/terrain", "polygon.shp", "out_multipatch.shp", 1024, 1, "Area", "SArea", 5)
El siguiente ejemplo muestra cómo usar esta herramienta en una secuencia de comandos independiente de Python:
'''****************************************************************************
Name: InterpolatePolyToPatch Example
Description: This script demonstrates how to use the
InterpolatePolyToPatch tool.
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
# Set Local Variables
inTerrain = "sample.gdb/featuredataset/terrain"
inPoly = "polygon.shp"
outMP = arcpy.CreateUniqueName("out_multipatch.shp")
#Execute InterpolatePolyToPatch
arcpy.InterpolatePolyToPatch_3d(inTerrain, inPoly, outMP, 1024, 1, "Area", "SArea", 5)