Crear TIN (3D Analyst)

Resumen

Crea un dataset de red irregular de triángulos (TIN).

Ilustración

Ilustración de la herramienta Crear 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 x,y 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 con valores z que se utilizan en la triangulación de la superficie.
    • Las entidades de línea pueden especificarse como puntos de masa y líneas de corte, que representan ubicaciones a lo largo de una superficie con discontinuidades lineales en la pendiente, como líneas de cresta, líneas de costa, bordes de pavimento, huellas de edificios, etc.
    • Las entidades de polígono también pueden especificarse como puntos de masa y líneas de corte, junto con entidades de recorte que definen el área de datos, entidades de reemplazo que definen regiones con valores z constantes (por ejemplo, masas de agua) y entidades de borrado que indican áreas interiores donde no existen datos.
  • La herramienta puede crear un TIN compuesto por muchos millones de puntos si dispone de memoria suficiente. Sin embargo, limitar el número de nodos TIN a menos de 6 millones garantizará el rendimiento de visualización y la usabilidad general. Si se necesita una superficie TIN más grande, considere la posibilidad de utilizar un dataste de terreno. El dataset de terreno ofrece una superficie TIN multirresolución que puede admitir colecciones mucho más grandes de mediciones de origen.

  • Configure el entorno de Versión predeterminada de almacenamiento de TIN a 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.

  • Una vez que se crea un dataset de TIN, puede modificarlo con la herramienta Editar TIN para incorporar a la superficie TIN mediciones adicionales basadas en entidades. También puede utilizar la herramienta Delinear área de datos TIN para definir qué triángulos de la TIN constituyen la zona de interpolación basándose en la longitud máxima de una arista de triángulo. La superficie TIN también se puede modificar mediante la edición interactiva.

Parámetros

EtiquetaExplicaciónTipo de datos
TIN de salida

El dataset de TIN que se va a generar.

TIN
Sistema de coordenadas
(Opcional)

La referencia espacial de la TIN de salida. Defina la referencia espacial en un sistema de coordenadas proyectadas. Los sistemas de coordenadas geográficas no se recomiendan, porque la triangulación de Delaunay no puede garantizarse cuando las coordenadas x,y se expresan en unidades angulares, lo que podría afectar negativamente a la precisión de los cálculos basados en distancia, como pendiente, volumen y línea de visión.

Coordinate System
Clase de entidad de entrada
(Opcional)

Entidades de entrada y sus propiedades relacionadas que definen cómo se agregarán al TIN.

  • Entidades de entrada: entidades que se agregarán al TIN.
  • Campo de altura: la fuente de la elevación de las entidades de entrada. Se puede utilizar cualquier campo numérico de la tabla de atributos de la entidad de entrada, junto con Shape.Z para los valores z de las entidades 3D y Shape.M para los valores m almacenados en la geometría. Si se elige la palabra clave <None> la elevación de la entidad se interpolará desde la superficie circundante.
  • Tipo: rol de la entidad de entrada para definir la superficie TIN. Las opciones disponibles dependen de la geometría de las entidades de entrada. En el caso de los tipos de entidades de superficie basados en líneas y polígonos, las designaciones "rígido" y "flexible" del tipo de entidad de superficie influyen en la forma en que se maneja el límite de la línea o el polígono al interpolar una superficie ráster a partir del dataset TIN cuando se utiliza la interpolación de vecinos naturales. Un tipo de entidad de superficie dura representa un borde con una discontinuidad pronunciada en la elevación, como el borde de un acantilado, un muro o un bordillo al lado de la carretera. Un tipo de entidad de superficie suave representa un borde donde la elevación está definida de forma más suave.
    • Las entidades de punto y multipunto se pueden definir como Mass_Points, que aportan valores de elevación que se almacenan en los nodos de datos del TIN.
    • Las entidades de línea se pueden incorporar al TIN de la siguiente manera:
      • Puntos de masa en los que los vértices de la línea se convierten en nodos en el TIN.
      • Entidades de línea de corte de Línea dura o Línea suave que definen las discontinuidades en el TIN.
    • Entidades de polígono se pueden incorporar al TIN como puntos de masa, líneas de corte y los siguientes tipos de entidades de superficie:
      • Entidades Recorte duro o Recorte suave que definen el área de datos de la superficie TIN.
      • Entidades de Borrado estricto o Borrado flexible que representan de internos en los datos.
      • Entidades de Reemplazo estricto o Reemplazo flexible que definen áreas de altura constante.
      • Entidades de Relleno de valor estricto o Relleno de valor flexible que asignan atributos enteros a nodos y caras de los triángulos.
  • Campo de etiqueta: se asignará un atributo numérico a los elementos de datos del TIN utilizando los valores obtenidos de un campo de tipo entero de la tabla de atributos de la entidad de entrada.
Value Table
Restringida de Delaunay
(Opcional)

Especifica la técnica de triangulación que se va a utilizar a lo largo de las líneas de corte de TIN.

  • Desactivada: TIN utilizará la triangulación conforme de Delaunay, que puede densificar cada segmento de las líneas de corte para producir varios bordes de triángulo. Esta es la opción predeterminada.
  • Activada: TIN hará uso de la triangulación de Delaunay con límites, la cual va a agregar cada segmento como un único borde. Las normas de la triangulación de Delaunay se respetan en todas partes excepto en las líneas de corte, que no se densificarán.
Boolean

arcpy.ddd.CreateTin(out_tin, {spatial_reference}, {in_features}, {constrained_delaunay})
NombreExplicaciónTipo de datos
out_tin

El dataset de TIN que se va a generar.

TIN
spatial_reference
(Opcional)

La referencia espacial de la TIN de salida. Defina la referencia espacial en un sistema de coordenadas proyectadas. Los sistemas de coordenadas geográficas no se recomiendan, porque la triangulación de Delaunay no puede garantizarse cuando las coordenadas x,y se expresan en unidades angulares, lo que podría afectar negativamente a la precisión de los cálculos basados en distancia, como pendiente, volumen y línea de visión.

Coordinate System
in_features
[[in_features, height_field, SF_type, tag_value],...]
(Opcional)

Entidades de entrada y sus propiedades relacionadas que definen cómo se agregarán al TIN.

  • in_features: entidades que se agregarán al TIN.
  • height_field: el origen de la elevación de las entidades de entrada. Se puede especificar cualquier campo numérico de la tabla de atributos de la entidad de entrada, junto con Shape.Z para los valores z de las entidades 3D y Shape.M para los valores m almacenados con la geometría. Si se elige la palabra clave <None> la elevación de la entidad se interpolará desde la superficie circundante.
  • sf_type: el rol de la entidad de entrada para definir la superficie del TIN. Las opciones disponibles dependen de la geometría de las entidades de entrada. En el caso de los tipos de entidades de superficie basados en líneas y polígonos, las designaciones "rígido" y "flexible" del tipo de entidad de superficie influyen en la forma en que se maneja el límite de la línea o el polígono al interpolar una superficie ráster a partir del dataset TIN cuando se utiliza la interpolación de vecinos naturales. Un tipo de entidad de superficie dura representa un borde con una discontinuidad pronunciada en la elevación, como el borde de un acantilado, un muro o un bordillo al lado de la carretera. Un tipo de entidad de superficie suave representa un borde donde la elevación está definida de forma más suave.
    • Las entidades de punto y multipunto se pueden definir como Mass_Points, que aportan valores de elevación que se almacenan en los nodos de datos del TIN.
    • Las entidades de línea se pueden incorporar al TIN de la siguiente manera:
      • Mass_Points en los que los vértices de la línea se convierten en nodos en el TIN.
      • Entidades de línea de corte de Hard_Line o Soft_Line que definen las discontinuidades en el TIN.
    • Entidades de polígono se pueden incorporar al TIN como puntos de masa, líneas de corte y los siguientes tipos de entidades de superficie:
      • Entidades Hard_Clip o Soft_Clip que definen el área de datos de la superficie TIN.
      • Entidades de Hard_Erase o Soft_Erase que representan vacíos internos en los datos.
      • Entidades Hard_Replace o Soft_Replace que definen áreas de altura constante.
      • Entidades Hardvalue_Fill o Softvalue_Fill que asignan atributos enteros a nodos y caras de los triángulos.
  • tag_field: se derivá un atributo numérico de un campo entero de la tabla de atributos de la entidad de entrada cuyos valores se pueden utilizar para asignar una forma de atribución básica a los elementos de datos del TIN. Si se especifica <None>, no se asignará ningún valor de etiqueta.
Value Table
constrained_delaunay
(Opcional)

Especifica la técnica de triangulación que se va a utilizar a lo largo de las líneas de corte de TIN.

  • DELAUNAYTIN utilizará la triangulación conforme de Delaunay, que puede densificar cada segmento de las líneas de corte para producir varios bordes de triángulo. Esta es la opción predeterminada.
  • CONSTRAINED_DELAUNAYTIN hará uso de la triangulación de Delaunay con límites, la cual va a agregar cada segmento como un único borde. Las normas de la triangulación de Delaunay se respetan en todas partes excepto en las líneas de corte, que no se densificarán.
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.

arcpy.env.workspace = "C:/data"
arcpy.ddd.CreateTin("NewTIN", "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 una secuencia de comandos 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

# 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:
    # Execute LASToMultipoint
    lasMP = arcpy.CreateUniqueName('lasMultipoint', 'in_memory')
    arcpy.ddd.LASToMultipoint(inLas, LasMP, ptSpacing, class_code, 
                             "ANY_RETURNS", "", sr, inFormat, zfactor)
    # Execute CreateTin
    arcpy.ddd.CreateTin(outTin, sr, "{0} Shape.Z masspoints"\
                       .format(lasMP), "Delaunay")
    # Execute CopyTin
    arcpy.ddd.CopyTin(outTin, "{0}_copy".format(outTin))
    # Execute DelineateTinDataArea
    maxEdge = ptSpacing * 4
    arcpy.ddd.DelineateTinDataArea(outTin, maxEdge, "PERIMETER_ONLY")
    # Execute TinDomain
    arcpy.ddd.TinDomain(outTin, outBoundary, "POLYGON")
        
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