Resumen
Crea un dataset de red irregular de triángulos (TIN).
Uso
-
Evite crear un TIN utilizando un sistema de coordenadas geométricas, dado que la regla de triangulación de Delaunay no se puede aplicar de forma efectiva cuando las unidades de XY se expresan en coordenadas esféricas.
-
El tipo de entidad de superficie define la manera en que las entidades de entrada influirán en la definición de la superficie triangulada.
- Las entidades de punto se pueden especificar como puntos de masa, que proporcionan nodos de datos cuyos valores Z se utilizan en la triangulación de la superficie.
- Las entidades de línea se pueden especificar como puntos de masa y líneas de corte, que representan ubicaciones a lo largo de una superficie con discontinuidades lineales en pendiente, tales como líneas de cresta, líneas de costa, bordes de pavimento, huellas de edificios, etc.
- Las entidades poligonales también se pueden especificar como puntos de masa y líneas de corte, junto con entidades de clip que definen el área de datos, reemplazan a entidades que definen regiones con valores z constantes (p. ej., masas de agua) y borran entidades que indican áreas interiores en las que los datos no existen.
-
La cantidad máxima de nodos admitidos por un TIN depende principalmente de los recursos de memoria contigua y libre que hay disponibles en el equipo. Plantéese limitar la cantidad total de nodos a una cifra inferior a los 6 millones a fin de mantener el rendimiento de visualización y la facilidad de uso general. Las superficies trianguladas más grandes se manejan mejor utilizando un dataset de terreno de varias resoluciones.
-
Configure el entorno de la versión de almacenamiento de TIN a la versión PRE_10.0 si el TIN que se va a crear se va a utilizar en versiones de ArcGIS Desktop anteriores a la 10.0.
Sintaxis
arcpy.ddd.CreateTin(out_tin, {spatial_reference}, {in_features}, {constrained_delaunay})
Parámetro | Explicación | Tipo de datos |
out_tin | EL dataset de TIN que se va a generar. | TIN |
spatial_reference (Opcional) | La referencia espacial del TIN de salida debe establecerse como un sistema de coordinadas proyectadas. Los sistemas de coordenadas geográficas no se recomiendan porque la triangulación de Delaunay no puede garantizarse cuando las coordenadas XY se expresan en unidades angulares, lo que podría afectar negativamente a la exactitud de los cálculos basados en distancias, como pendiente, volumen y línea de visión. | Coordinate System |
in_features [[in_features, height_field, SF_type, tag_value],...] (Opcional) | Las entidades de entrada y las propiedades relacionadas que van a influir en la definición del TIN.
| Value Table |
constrained_delaunay (Opcional) | Especifica la técnica de triangulación utilizada a lo largo de las líneas de corte de TIN.
| Boolean |
Muestra de código
Ejemplo 1 de CreateTin (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.CreateTin_3d("NewTIN", "Coordinate Systems/Projected Coordinate Systems/State Plane/NAD 1983 (Feet)/NAD 1983 StatePlane California II FIPS 0402 (Feet).prj", "points.shp Shape.Z masspoints", "constrained_delaunay")
Ejemplo 2 de CreateTin (script independiente)
En el siguiente ejemplo se muestra cómo usar esta herramienta en un script independiente de Python.
'''****************************************************************************
Name: Define Data Boundary of LAS File
Description: This script demonstrates how to delineate data boundaries of
LAS files with irregularly clustered points. It is intended for
use as a script tool with one input LAS file.
****************************************************************************'''
# Import system modules
import arcpy
import exceptions, sys, traceback
# Set local variables
inLas = arcpy.GetParameterAsText(0) #input LAS file
ptSpacing = arcpy.GetParameterAsText(1) # LAS point spacing
classCode = arcpy.GetParameterAsText(2) # List of integers
returnValue = arcpy.GetParameterAsText(3) # List of strings
outTin = arcpy.GetParameterAsText(4) # TIN created to delineate data area
outBoundary = arcpy.GetParameterAsText(5) # Polygon boundary file
try:
arcpy.CheckOutExtension("3D")
# Execute LASToMultipoint
arcpy.AddMessage("Creating multipoint features from LAS...")
lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory')
arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code,
"ANY_RETURNS", "", sr, inFormat, zfactor)
# Execute CreateTin
arcpy.AddMessage("Creating TIN dataset...")
arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\
.format(lasMP), "Delaunay")
# Execute CopyTin
arcpy.AddMessage("Copying TIN to delineate data boundary...")
arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin))
# Execute DelineateTinDataArea
arcpy.AddMessage("Delineating TIN boundary...")
maxEdge = ptSpacing * 4
arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY")
# Execute TinDomain
arcpy.AddMessage("Exporting data area to polygon boundary...")
arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON")
arcpy.AddMessage("Finished")
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
Información de licenciamiento
- Basic: Requiere 3D Analyst
- Standard: Requiere 3D Analyst
- Advanced: Requiere 3D Analyst
Temas relacionados
- Información general sobre el conjunto de herramientas Administración de datos
- Fundamentos de las superficies
- Formatos de superficie
- Conceptos de superficie basados en TIN
- ¿Qué es una superficie TIN?
- Principios de creación de superficies TIN
- Principios de la edición de superficies TIN
- Editar entidades de un TIN mediante las herramientas de geoprocesamiento
- Herramientas de geoprocesamiento para las superficies TIN