Terrain zu Raster (ArcGIS 3D Analyst)
Zusammenfassung
Hiermit wird ein Terrain-Dataset in ein Raster konvertiert.
Verwendung
-
Der Auflösungsparameter gibt an, welche Pyramidenebene des Terrains Sie für die Konvertierung verwenden sollen. Pyramidenebenen werden anhand der Pyramidentypen "Z-Toleranz" oder "Kachelung" definiert. Weitere Informationen zu Terrain-Pyramiden finden Sie unter Terrain-Pyramiden.
-
Definieren Sie die Ausdehnung mit der Umgebungseinstellung zur Verarbeitungsausdehnung, um eine Teilmenge des Terrains zu extrahieren.
-
Die verfügbaren Interpolationsmethoden sind LINEAR und NATURAL_NEIGHBORS. Dabei handelt es sich um TIN-basierte Methoden, die anhand der triangulierten Terrain-Oberfläche angewendet werden. Bei der linearen Option umgibt das Dreieck jede Zellenmitte und wendet einen gewichteten Durchschnitt der Knoten des Dreiecks für die Interpolation eines Wertes an. Die Option Natürliche Nachbarn verwendet flächenbasierte Gewichtungen für die Voronoi-Nachbarn.
-
Das Ausgabe-Raster kann dateibasiert oder als Raster-Dataset in einer Geodatabase erstellt werden. Ein dateibasiertes Raster-Format wird durch die Erweiterung des Rasters bestimmt. Wenn zum Beispiel die Erweiterungen ".img" und ".tif" verwendet werden, werden IMAGINE- oder TIFF-Dateien erstellt. Wenn das Raster keine Dateierweiterung aufweist, wird ein Esri GRID erstellt.
Syntax
Parameter | Erläuterung | Datentyp |
in_terrain |
Das Eingabe-Terrain-Dataset. | Terrain Layer |
out_raster |
Der Speicherort und Name des Ausgabe-Rasters. Bei der Speicherung eines Raster-Datasets in einer Geodatabase oder in einem Ordner wie z. B. einem Esri Grid darf dem Namen des Raster-Datasets keine Dateierweiterung hinzugefügt werden. Eine Dateierweiterung kann angegeben werden, um das Format des Rasters beim Speichern in einem Ordner zu definieren:
Beim Speichern des Rasters in einer TIFF-Datei oder einer Geodatabase können Raster-Komprimierungstyp und -qualität in den Einstellungen für die Geoverarbeitungsumgebung angegeben werden. | Raster Dataset |
data_type (optional) |
Der Datentyp des Ausgabe-Rasters kann durch die folgenden Schlüsselwörter definiert werden:
| String |
method (optional) |
Wählen Sie eine Interpolationsmethode. Standardmäßig werden Zellenwerte mit der Methode LINEAR berechnet.
| String |
sample_distance sampling_method distance (optional) |
Die Stichprobenmethode und Entfernung, die zum Definieren der Zellengröße des Ausgabe-Rasters verwendet werden.
| String |
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.TerrainToRaster_3d("sample.gdb/featuredataset/terrain", "terrain.img", "INT", "LINEAR", "CELLSIZE 10", 2.5)
Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht:
'''*********************************************************************
Name: TerrainToRaster Example
Description: This script demonstrates how to use the
TerrainToRaster tool.
**********************************************************************'''
# Import system modules
import arcpy
from arcpy import env
import exceptions, sys, traceback
try:
arcpy.CheckOutExtension("3D")
# Set environment setting
env.workspace = "C:/data"
# Set Local Variables
terrain = "sample.gdb/featuredataset/terrain"
bitType = "INT"
method = "LINEAR"
sampling = "CELLSIZE 10"
pyrLvl = 2.5
outRas = arcpy.CreateUniqueName("terrain_level.img")
#Execute TerrainToRaster
arcpy.ddd.TerrainToRaster(terrain, outRas, bitType,
method, sampling, pyrLvl)
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)