TIN-Dreieck (ArcGIS 3D Analyst)

Lizenzstufe:BasicStandardAdvanced

Zusammenfassung

Exportiert Dreiecksflächen aus einem TIN-Dataset (Triangulated Irregular Network, trianguliertes unregelmäßiges Netzwerk) in eine Polygon-Feature-Class und stellt Neigung, Ausrichtung und optionale Schummerungsattribute und einen Tag-Wert für jedes Dreieck bereit.

Bild

Abbildung "TIN-Dreieck"

Verwendung

Syntax

TinTriangle_3d (in_tin, out_feature_class, {units}, {z_factor}, {hillshade}, {tag_field})
ParameterErläuterungDatentyp
in_tin

Das Eingabe-TIN.

TIN Layer
out_feature_class

Die Ausgabe-Feature-Class.

Feature Class
units
(optional)

Die Maßeinheiten zum Berechnen der Neigung.

  • PERCENTDie Neigung wird als Prozentwert angegeben. Dies ist die Standardeinstellung.
  • DEGREEDie Neigung wird als Neigungswinkel von einer horizontalen Ebene ausgedrückt.
String
z_factor
(optional)

Der Faktor, mit dem die Höhenwerte multipliziert werden. Dieser wird in der Regel verwendet, um lineare Z-Einheiten zu konvertieren, sodass sie den linearen XY-Einheiten entsprechen. Der Standardwert ist 1, wodurch die Höhenwerte unverändert bleiben.

Double
hillshade
HILLSHADE <azimuth>, <angle>
(optional)

Gibt den Azimut und die Höhenwinkel der Lichtquelle beim Anwenden eines Schummerungseffekts für die Feature-Layer-Ausgabe an. Azimut kann von 0 bis 360 Grad reichen, während die Höhe zwischen 0 und 90 liegt. Ein Azimut von 45 Grad und eine Höhe von 30 Grad werden als " HILLSHADE 45, 30 eingegeben.

String
tag_field
(optional)

Der Name des Feldes im Ausgabe-Feature, das den Dreiecks-Tag-Wert speichert. Dieser Parameter ist standardmäßig leer, wodurch sich Tag-Werte ergeben, die nicht in die Ausgabe geschrieben werden.

String

Codebeispiel

TinTriangle – Beispiel 1 (Python-Fenster)

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

import arcpy
from arcpy import env

arcpy.CheckOutExtension("3D")
env.workspace = "C:/data"
arcpy.TinTriangle_3d("tin", "tin_triangle.shp", "DEGREE", 1,"HILLSHADE 310,45", "tag")
TinTriangle – Beispiel 2 (eigenständiges Skript)

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

'''****************************************************************************
Name: TinTriangle Example
Description: This script demonstrates how to use the 
             TinTriangle tool to extract triangles from each TIN in the 
             target workspace.
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions, sys, traceback

try:
    arcpy.CheckOutExtension("3D")
    # Set environment settings
    env.workspace = "C:/data" # the target workspace
    # Create list of TINs
    TINList = arcpy.ListDatasets("*", "Tin")
    # Verify the presence of TINs in the list
    if TINList:
        for dataset in TINList:
            # Set Local Variables
            TINList = arcpy.ListDatasets("*", "Tin")
            slopeUnits = "PERCENT"
            zfactor = 1
            hillshade = "HILLSHADE 300, 45" # defines hillshade azimuth & angle
            tagField = "Tag"
            Output = dataset + "_triangles.shp" # name of the output file
            #Execute TinTriangle
            arcpy.ddd.TinTriangle(dataset, Output, slopeUnits, zfactor,
                                  hillshade, tagField)
            print "Finished."
    else:
        print "There are no TIN(s) in the " + env.workspace + " directory."
    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)

Umgebung

Verwandte Themen

Lizenzierungsinformationen

ArcGIS for Desktop Basic: Erfordert 3D Analyst
ArcGIS for Desktop Standard: Erfordert 3D Analyst
ArcGIS for Desktop Advanced: Erfordert 3D Analyst
9/11/2013