TIN-Domäne (3D Analyst)

Zusammenfassung

Erstellt eine Line- oder Polygon-Feature-Class, die die Interpolationszone eines TIN-Datasets (Triangulated Irregular Network, unregelmäßiges Dreiecksnetz) darstellt.

Abbildung

Abbildung "TIN-Domäne"
TIN-Domäne

Verwendung

  • Mit diesem Werkzeug können Sie eine konvexe Hülle (das kleinste umfassende Polygon) um eine Gruppe von Punkten erstellen. Wenn keine Clip- oder Erase-Polygone zum Definieren des TINs verwendet werden, entspricht die Domäne der konvexen Hülle.

  • Die Ausgabegeometrie wird in einem Feature-Datensatz abgelegt und kann je nach Art der Interpolationszone eine Singlepart- oder eine Multipart-Geometrie sein. Wenn die Interpolationszone beispielsweise Inseln aufweist oder Löcher enthält, ergibt sich eine Multipart-Geometrie.

    Hinweis:

    3D-Polygone enthalten Höhenwerte nur entlang des Umfangs von Features, da die inneren Teile des Polygons keine Stützpunkte enthalten. Wenn die Grenzstützpunkte in 3D mit einer Flächenfüllung gezeichnet sind, werden sie willkürlich zu Dreiecken für das Rendern verbunden. Sofern es sich nicht um ein planares Polygon handelt, das entweder geneigt oder horizontal ist, ist es unwahrscheinlich, dass die Füllung die Innenfläche genau darstellt. Aus diesem Grund wird empfohlen, nicht planare 3D-Polygone ohne Füllsymbole zu zeichnen.

Syntax

TinDomain(in_tin, out_feature_class, out_geometry_type)
ParameterErklärungDatentyp
in_tin

Das zu verarbeitende TIN-Dataset.

TIN Layer
out_feature_class

Die Feature-Class, die von diesem Werkzeug erstellt wird.

Feature Class
out_geometry_type

Die Geometrie der Ausgabe-Feature-Class.

  • LINEDie Ausgabe ist eine Z-aktivierte Line-Feature-Class.
  • POLYGONDie Ausgabe ist eine Z-aktivierte Polygon-Feature-Class.
String

Codebeispiel

TinDomain – Beispiel 1 (Python-Fenster)

Anhand des folgenden Beispiels wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.

arcpy.env.workspace = 'C:/data'
arcpy.TinDomain_3d('tin', 'tin_domain.shp', out_geometry_type='POLYGON')
TinDomain – Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.

'''****************************************************************************
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)

Lizenzinformationen

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

Verwandte Themen