Zusammenfassung
Interpoliert mithilfe von Z-Werten ein Raster aus einem Eingabe-TIN.
Weitere Informationen zur Funktionsweise von "TIN in Raster".
Abbildung
Verwendung
Da die Interpolation der Oberfläche des Eingabe-TINs in regelmäßigen Intervallen erfolgt, muss mit einem bestimmten Informationsverlust im Ausgabe-Raster gerechnet werden. Die Genauigkeit, mit der das Raster das TIN darstellt, hängt von der Auflösung des Rasters sowie dem Grad und Intervall der TIN-Oberflächenvariation ab. Im Allgemeinen gilt, dass je höher die Auflösung, desto treuer die Abbildung der TIN-Oberfläche durch das Ausgabe-Raster. Da es sich bei dem Raster um eine Zellenstruktur handelt, bleiben die möglicherweise vorhandenen weichen und harten Bruchkanten des TINs nicht erhalten.
-
Beim Exportieren eines umfangreichen Rasters sollten Sie in Erwägung ziehen, den Ausgabedatentyp als ganze Zahl anzugeben, um Festplattenspeicherplatz zu sparen, wenn die Z-Werte aufgrund niedriger Genauigkeitsanforderungen auch durch ganzzahlige Daten dargestellt werden können.
Syntax
arcpy.ddd.TinRaster(in_tin, out_raster, {data_type}, {method}, {sample_distance}, {z_factor})
Parameter | Erklärung | Datentyp |
in_tin | Das zu verarbeitende TIN-Dataset. | TIN 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 bereitgestellt werden, um das Format des Rasters zu definieren, wenn es in einem Ordner gespeichert wird, z. B. .tif zum Erstellen einer Datei im GeoTIFF- oder .img zum Erstellen einer Datei im ERDAS IMAGINE-Format. 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) | Gibt den Typ der im Ausgabe-Raster gespeicherten numerischen Werte an.
| String |
method (optional) | Die Interpolationsmethode, die zum Erstellen des Rasters verwendet wird.
| String |
sample_distance sampling_method distance (optional) | Die Stichprobenmethode und Entfernung, die zum Definieren der Zellengröße des Ausgabe-Rasters verwendet werden. | 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 |
Codebeispiel
TinRaster – 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.TinRaster_3d("tin", "raster.img", "INT", "LINEAR", "OBSERVATIONS 250", 1)
TinRaster – Beispiel 2 (eigenständiges Skript)
Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.
'''******************************************************************
Name: TinRaster Example
Description: This script demonstrates how to use the
TinRaster tool to create rasters 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 setting
env.workspace = "C:/data"
# Set Local Variables
dataType = "INT"
method = "NATURAL_NEIGHBORS"
sampling = "CELLSIZE 10"
zfactor = "1"
# Create list of TINs
TINList = arcpy.ListDatasets("*", "Tin")
# Verify the presence of TINs in the list
if TINList:
# Iterate through the list of TINs
for dataset in TINList:
# Define the name of the output file
outRaster = "{0}_natural.img".format(dataset)
# Execute TinRaster
arcpy.ddd.TinRaster(dataset, outRaster, dataType,
method, sampling, zfactor)
print "Finished."
else:
print "There are no TIN(s) in {0}.".format(env.workspace)
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)
Umgebungen
Lizenzinformationen
- Basic: Erfordert 3D Analyst
- Standard: Erfordert 3D Analyst
- Advanced: Erfordert 3D Analyst