Zusammenfassung
Berechnen Sie den Versatz zwischen zwei Oberflächen, um zu ermitteln, ob er sich über oder unter der anderen Oberfläche befindet oder mit ihr identisch ist.
Weitere Informationen zur Funktionsweise von "Oberflächenunterschied"
Verwendung
- Die Ausgabe stellt nur die überlappenden Teile der Eingabe-Oberflächen dar.
- Sie können ein Ausgabe-Raster oder TIN erstellen, wenn Sie den Z-Unterschied zwischen der Eingabe- und der Bezugsfläche auswerten möchten.
- Die horizontalen und vertikalen Koordinatensysteme der Eingabe-Oberflächen sollten übereinstimmen.
Die Ausgabe-Feature-Class verfügt über Polygon-Features, die Regionen der Eingabe-Oberfläche danach trennen, ob sie sich über oder unter der Bezugsebene befinden oder identisch mit ihr sind. Die Attributtabelle enthält die folgenden Attributfelder:
- Volumen – Das Raumvolumen zwischen der Eingabe- und der Bezugsoberfläche, die durch das Polygon begrenzt ist. Das Volumen beträgt für Flächen, bei denen die beiden Oberflächen identisch sind, immer 0.
- SArea – Die Oberfläche der Eingabeoberfläche, die durch das Polygon begrenzt ist.
- Code – Ein numerischer Wert, der den Raumbezug der Oberfläche zur Bezugsebene beschreibt. -1 gibt an, dass sich die Oberfläche unter der Bezugsebene befindet, 0 gibt an, dass die Oberfläche mit der Bezugsebene identisch ist, und 1 gibt an, dass sich die Oberfläche über der Bezugsebene befindet.
Syntax
SurfaceDifference_3d (in_surface, in_reference_surface, out_feature_class, {pyramid_level_resolution}, {reference_pyramid_level_resolution}, {out_raster}, {raster_cell_size}, {out_tin_folder}, {out_tin_basename})
Parameter | Erläuterung | Datentyp |
in_surface | Das Terrain oder die TIN-Oberfläche, deren relativer Versatz über die Bezugsfläche ausgewertet wird. | Terrain Layer; TIN Layer |
in_reference_surface | Das Terrain oder die TIN-Oberfläche, die als Basislinie zur Bestimmung des relativen Versatzes der Eingabeoberfläche verwendet wird. | Terrain Layer; TIN Layer |
out_feature_class | Die Ausgabe-Feature-Class mit kontinuierlichen Dreiecken und Dreieckteilen mit derselben Klassifizierung gruppiert in Polygonen. Das von jedem abweichenden Bereich umschlossene Volumen ist in der Attributtabelle aufgeführt. | Feature Class |
pyramid_level_resolution (optional) | Die Terrain-Pyramidenebene, die zum Erstellen der Eingabe-Oberfläche dient. Der Standardwert ist 0, also volle Auflösung. Dieser Parameter wird nur mit dem Terrain-Dataset verwendet. | Double |
reference_pyramid_level_resolution (optional) | Die Terrain-Pyramidenebene, die zum Erstellen der Bezugsfläche herangezogen wird. Der Standardwert ist 0, also volle Auflösung. Dieser Parameter wird nur mit dem Terrain-Dataset verwendet. | Double |
out_raster (optional) | Die Ausgabe-Raster-Oberfläche, deren Werte die Eingabe-Oberfläche darstellen, die im Vergleich zur Bezugsfläche normalisiert wurde. Positive Werte geben die Bereiche an, in denen die Eingabeoberfläche über der zweiten Bezugsfläche liegt, wohingegen negative Werte die Bereiche angeben, in denen die Eingabeoberfläche unter der Bezugsfläche liegt. Die Werte des Rasters werden mittels linearer Interpolation von einem TIN abgeleitet. | Raster Dataset |
raster_cell_size (optional) | Die Zellengröße des Ausgabe-Rasters. | Double |
out_tin_folder (optional) | Der Ordnerpfad zum Speichern einer oder mehrerer TIN-Oberflächen, deren Werte den Unterschied zwischen der Eingabe-Oberfläche und der Bezugsfläche darstellen. | Folder |
out_tin_basename (optional) | Der Basisname, der jeder Ausgabe-TIN-Oberfläche zugewiesen wird. Wenn ein TIN-Dataset nicht ausreicht, um die Daten darzustellen, werden mehrere TINs mit dem gleichen Basisnamen erstellt. | String |
Codebeispiel
SurfaceDifference - 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.SurfaceDifference_3d("sample.gdb/featuredataset/terrain", "sample.gdb/featuredataset/terrain2", "surface_diff.shp")
SurfaceDifference - Beispiel 2 (eigenständiges Skript)
Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.
'''****************************************************************************
Name: SurfaceDifference Example
Description: This script demonstrates how to use the
SurfaceDifference tool.
****************************************************************************'''
# 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"
# Set Local Variables
inSurface = "flood_tin"
inReference = "elev_tin"
# Ensure output name is unique
outPoly = arcpy.CreateUniqueName("difference.shp")
#Execute SurfaceDifference
arcpy.SurfaceDifference_3d(inSurface, inReference, outPoly)
del arcpy, inSurface, inReference, outPoly
Umgebungen
Lizenzinformationen
- ArcGIS Desktop Basic: Erfordert 3D Analyst
- ArcGIS Desktop Standard: Erfordert 3D Analyst
- ArcGIS Desktop Advanced: Erfordert 3D Analyst