Oberflächenneigung (ArcGIS 3D Analyst)
Zusammenfassung
Erstellt Polygon-Features aus den Dreiecksneigungswerten eines TIN- oder Terrain-Datasets.
Weitere Informationen zur Funktionsweise von "Oberflächenneigung"
Bild
Verwendung
-
Mit dem Parameter Tabelle für Klassengrenzen können Sie die Neigungsinformationen auf bestimmte Grenzintervalle der Ausgabe-Feature-Class beschränken.
Angepasste Neigungsklassifizierungen können über eine Tabelle für Klassengrenzen bereitgestellt werden, die aus maximal zwei Spalten besteht. Die erste Spalte gibt immer den Unterbrechungswert für die Klassifizierung an. Falls die zweite Spalte vorhanden ist, dient sie zur Definition des Codes, der der Neigungsklasse entspricht. Nachstehend ist ein Beispiel aufgeführt:
CLASS_BREAK
CODE
10.0
1
25.0
2
40.0
3
70.0
4
Die Tabelle kann jedes unterstützte Format haben (.dbf, .txt oder Geodatabase-Tabelle). Der Name der Felder ist unbedeutend, da jeweils das erste für Klassengrenzen und das zweite für Ausrichtungscodes verwendet wird.
-
Es werden nur die Einheiten in Betracht gezogen, die eine Tabelle für Klassengrenzen verwenden.
Syntax
Parameter | Erläuterung | Datentyp |
in_surface |
Das Eingabe-Terrain- oder TIN-Dataset. | Tin Layer; Terrain Layer |
out_feature_class |
Die Ausgabe-Feature-Class. | Feature Class |
units (optional) |
Die Maßeinheiten zum Berechnen der Neigung.
| String |
class_breaks_table (optional) |
Eine Tabelle mit den Klassengrenzen zum Klassifizieren der Ausgabe-Features. Die erste Spalte dieser Tabelle gibt den Unterbrechungspunkt an, die zweite enthält den Klassifizierungscode. | Table |
slope_field (optional) |
Das Feld mit den Neigungswerten. | 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 |
pyramid_level_resolution (optional) |
Der Z-Toleranzwert oder die Kachelungsauflösung der Terrain-Pyramidenebene, der bzw. die von diesem Werkzeug verwendet wird. Der Standardwert ist 0, also volle Auflösung. | Double |
Codebeispiel
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.SurfaceSlope_3d("sample.gdb/featuredataset/terrain", "s_slope.shp", "PERCENT")
Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht:
'''****************************************************************************
Name: SurfaceSlope Example
Description: This script demonstrates how to use the
SurfaceAspect and SurfaceSlope tools to generate a polygon
that contains the intersection of both
****************************************************************************'''
# Import system modules
import arcpy
from arcpy import env
# Obtain a license for the ArcGIS 3D Analyst extension
arcpy.CheckOutExtension("3D")
# Set environment settings
env.workspace = "C:/data"
try:
# List all TINs in workspace
listTINs = arcpy.ListDatasets("","TIN")
# Determine whether the list contains any TINs
if len(listTINs) > 0:
for dataset in listTINs:
print dataset
# Set Local Variables
aspect = arcpy.CreateUniqueName("Aspect.shp")
slope = arcpy.CreateUniqueName("Slope.shp")
outFC = dataset + "_Aspect_Slope.shp"
#Execute SurfaceAspect
arcpy.SurfaceAspect_3d(dataset, aspect)
#Execute SurfaceSlope
arcpy.SurfaceSlope_3d(dataset, slope)
#Execute SurfaceSlope
print "Starting Intersect"
arcpy.Intersect_analysis(aspect + " #;" + slope + " #", outFC, "ALL")
print "Completed intersect for " + dataset
del aspect, slope, outFC
else:
print "There are no TINs in the " + env.workspace + " directory."
except:
# Returns any other error messages
print arcpy.GetMessages(2)
del arcpy, listTINs