TIN-Dreieck (3D Analyst)

Zusammenfassung

Exportiert Dreiecksflächen aus einem TIN-Dataset in Polygon-Features und stellt Neigung, Ausrichtung und optionale Schummerungsattribute sowie Tag-Werte für jedes Dreieck bereit.

Abbildung

Abbildung "TIN-Dreieck"

Verwendung

  • Neigung und Ausrichtung werden anhand der Ebene des Dreiecks berechnet. Die Neigung kann nicht ordnungsgemäß berechnet werden, wenn die lineare Einheit des Koordinatensystems des TIN Winkelmaße, wie z. B. Dezimalgrad, verwendet.

  • Lineare XY- und Z-Einheiten sollten dieselbe Maßeinheit aufweisen, damit bei der Berechnung der Neigung und Schummerung präzise Ergebnisse erzielt werden. Wenn sich die Einheiten unterscheiden, aber für das TIN vertikale und horizontale Koordinatensysteme definiert sind, wird ein entsprechender Z-Faktor automatisch bestimmt. Andernfalls kann der Parameter Z-Faktor verwendet werden, um den auf die Höhenwerte anzuwendenden Konvertierungsfaktor explizit zu definieren.

  • Ausrichtungswerte werden in Grad ausgedrückt, wobei für Norden 0° angenommen wird. Die Werte nehmen im Uhrzeigersinn zu und werden im Feld Ausrichtung aufgezeichnet. Der Ausrichtungswert -1 wird jedem flachen Dreieck im TIN zugewiesen.

  • Die Neigung kann in Graden oder Prozent zurückgegeben werden, und der Name des Feldes, in dem die Werte aufgezeichnet werden, hängt von der im Parameter Neigungseinheiten getroffenen Auswahl ab:

    • PERCENT – Neigungswerte werden in einem Feld mit dem Namen Slope_Pct gespeichert.
    • DEGREE – Neigungswerte werden in einem Feld mit dem Namen Slope_Deg gespeichert.
  • Schummerungswerte spiegeln das begrenzte Relief wider, das von einer Lichtquelle erzeugt wird, die den im Parameter Schummerung angegebenen Azimut- und vertikalen Winkel annimmt. 0° wird für den Azimutwinkel als Norden angenommen, und der Helligkeitswert liegt im Bereich zwischen 0 bis 255, wobei der Schatten umso dunkler ist, je niedriger die Zahl ist.

  • Der Parameter Tag-Wertefeld ist nur aktiv, wenn das TIN Tag-Werte aufweist, die explizit definiert wurden.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-TIN

Das zu verarbeitende TIN-Dataset.

TIN Layer
Ausgabe-Feature-Class

Die Feature-Class, die erstellt wird.

Feature Class
Neigungseinheiten
(optional)

Die Maßeinheiten zum Berechnen der Neigung.

  • ProzentDie Neigung wird als Prozentwert angegeben. Dies ist die Standardeinstellung.
  • GradDie Neigung wird als Neigungswinkel von einer horizontalen Ebene ausgedrückt.
String
Z-Faktor
(optional)

Der Faktor, mit dem Z-Werte 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. Der Parameter ist deaktiviert, wenn der Raumbezug der Eingabe-Oberfläche über ein Z-Datum mit einer angegebenen linearen Einheit verfügt.

Double
Schummerung - Azimut und Höhe
(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-Wertefeld
(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

arcpy.ddd.TinTriangle(in_tin, out_feature_class, {units}, {z_factor}, {hillshade}, {tag_field})
NameErläuterungDatentyp
in_tin

Das zu verarbeitende TIN-Dataset.

TIN Layer
out_feature_class

Die Feature-Class, die erstellt wird.

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 Z-Werte 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. Der Parameter ist deaktiviert, wenn der Raumbezug der Eingabe-Oberfläche über ein Z-Datum mit einer angegebenen linearen Einheit verfügt.

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.

arcpy.env.workspace = "C:/data"
arcpy.TinTriangle_3d("tin", "tin_triangle.shp", units="DEGREE", 
                     z_factor=1, hillshade="HILLSHADE 310,45", tag_field="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

# Set environment settings
arcpy.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.")

Lizenzinformationen

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

Verwandte Themen