Mit der Spatial Analyst-Lizenz verfügbar.
Mit der 3D Analyst-Lizenz verfügbar.
Zusammenfassung
Interpoliert eine hydrologisch korrekte Raster-Oberfläche anhand von Punkt-, Linien- und Polygondaten.
Weitere Informationen zur Funktionsweise von "Topo zu Raster"
Verwendung
Die besten Ergebnisse werden erzielt, wenn alle Eingabedaten im selben planaren Koordinatensystem gespeichert sind und über dieselben Z-Einheiten verfügen. Nicht projizierte Daten (Längengrad-Breitengrad) können verwendet werden; allerdings sind die Ergebnisse eventuell weniger genau, insbesondere bei hohen Breitengraden.
Wenn mehrere Eingabepunkte in einer Ausgabe-Zelle liegen, verwendet Topo zu Raster den durchschnittlichen Wert für die Interpolation (nur die ersten 100 Punkte in einer Zelle werden berücksichtigt, der Rest wird ignoriert). Wenn vom Algorithmus zu viele Punkte gefunden werden, kann die Fehlermeldung angezeigt werden, dass das Punkt-Dataset zu viele Punkte enthält. Die maximale Anzahl von verwendbaren Punkten ist NRows * NCols, wobei NRows die Anzahl der Zeilen im Ausgabe-Raster und NCols die Anzahl der Spalten ist.
Wenn als Eingabe-Feature-Datentyp Contour verwendet wird, erzeugt der Algorithmus zuerst eine generalisierte Morphologie der Oberfläche basierend auf der Krümmung der Konturlinien. Anschließend implementiert der Algorithmus die Konturlinien als Quelle für Höheninformationen. Konturlinien sind am besten für Daten im großen Maßstab geeignet, bei denen die Konturlinien und Ecken zuverlässige Indikatoren für Wasserläufe und Bergrücken sind. Bei kleineren Maßstäben kann es ebenso wirkungsvoll und weniger aufwändig sein, die Eckpunkte der Konturlinien zu digitalisieren und diese als Eingabe-Point-Feature-Class zu verwenden.
Die Ausgabezellengröße kann über einen numerischen Wert definiert oder aus einem vorhandenen Raster-Dataset abgerufen werden. Wird die Zellengröße nicht explizit über den Parameterwert angegeben, wird sie aus der Umgebung "Zellengröße" abgeleitet, falls diese angegeben wurde. Wenn der Parameter und die Umgebung für die Zellengröße nicht angegeben wurden, aber die Umgebung Fang-Raster festgelegt wurde, wird die Zellengröße des Fang-Rasters verwendet. Wenn kein Wert angegeben wird, wird die Zellengröße aus der Breite oder Höhe der Ausdehnung (je nachdem was kürzer ist) berechnet, indem der Wert durch 250 dividiert wird. Dabei wird die Ausdehnung in der Umgebung in Ausgabekoordinatensystem angegeben.
Wenn die Zellengröße mit einem numerischen Wert angegeben wird, wird dieser vom Werkzeug direkt für das Ausgabe-Raster verwendet.
Wenn die Zellengröße mit einem Raster-Dataset angegeben wird, zeigt der Parameter anstelle des Zellengrößenwerts den Pfad des Raster-Datasets an. Die Zellengröße dieses Raster-Datasets wird direkt in der Analyse verwendet, vorausgesetzt der Raumbezug stimmt mit dem Ausgabe-Raumbezug überein. Wenn der Raumbezug des Datasets nicht mit dem Ausgabe-Raumbezug übereinstimmt, wird er basierend auf der ausgewählten Projektionsmethode für Zellengröße projiziert.
Das Abbilden von aufgefächerten Flussläufen oder das Verwenden von Kreisbögen zum Abbilden von zwei Seiten eines Wasserlaufes liefert ggf. keine zuverlässigen Ergebnisse. Wasserlaufdaten haben stets Priorität vor Punkt- oder Konturliniendaten. Daher werden alle Höhendatenpunkte ignoriert, die nicht dem Gefälle der Gewässer entsprechen. Wasserlaufdaten bieten eine gute Möglichkeit, der Interpolation topographische Informationen hinzuzufügen, wodurch die Qualität des Ausgabe-DEM zusätzlich sichergestellt wird.
Einige typische Werte für die Einstellungen Toleranz 1 und Toleranz 2 sind beispielsweise:
- 5,0 und 200,0 für Punktdaten bei einem Maßstab von 1:100.000.
- 10,0 und 400,0 für weniger dichte Punktdaten bei einem Maßstab von bis zu 1:500.000.
- 5,0 und 100,0 für Konturliniendaten mit einem Konturlinienabstand von 10.
Toleranz 2 sollte mindestens sechsmal größer als Toleranz 1 sein.
Um das Experimentieren mit den Eingaben und Parametern zu erleichtern, erstellen Sie im Dialogfeld Topo zu Raster eine Ausgabe-Parameterdatei, die in einem Texteditor bearbeitet und als Eingabe für das Werkzeug Topo zu Raster aus Datei verwendet werden kann.
Dieses Werkzeug ist eine speicherintensive Anwendung. Daher können keine großen Ausgabe-Raster erstellt werden. Wenn eine große Ausgabe erforderlich ist, verwenden Sie den Parameter Rand, um kleinere Ausgaben zu produzieren. Weitere Informationen hierzu finden Sie im Abschnitt Erstellung und Mosaikdarstellung angrenzender Raster in der Hilfe zur Funktionsweise des Werkzeugs "Topo zu Raster".
Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.
Syntax
TopoToRaster(in_topo_features, {cell_size}, {extent}, {Margin}, {minimum_z_value}, {maximum_z_value}, {enforce}, {data_type}, {maximum_iterations}, {roughness_penalty}, {discrete_error_factor}, {vertical_standard_error}, {tolerance_1}, {tolerance_2}, {out_stream_features}, {out_sink_features}, {out_diagnostic_file}, {out_parameter_file}, {profile_penalty}, {out_residual_feature}, {out_stream_cliff_error_feature}, {out_contour_error_feature})
Parameter | Erklärung | Datentyp |
in_topo_features topo_input |
Die Topo-Klasse gibt die Eingabe-Features mit den Z-Werten an, die in ein Oberflächen-Raster interpoliert werden. Neun verschiedene Datentypen sind als Eingabe für die Topo-Klasse zulässig: TopoPointElevation, TopoContour, TopoStream, TopoSink, TopoBoundary, TopoLake, TopoCliff, TopoExclusion und TopoCoast.
Für die Feature-Eingabe-Typen PointElevation, Contour und Sink kann ein Feld angegeben werden, das die Z-Werte enthält. Für die Eingabetypen Boundary, Lake, Cliff, Coast, Exclusion oder Stream ist keine Feldoption vorhanden. | TopoInput |
cell_size (optional) | Die Zellengröße des Ausgabe-Rasters, das erstellt wird. Dieser Parameter kann über einen numerischen Wert definiert oder aus einem vorhandenen Raster-Dataset abgerufen werden. Wenn die Zellengröße nicht explizit als Parameterwert angegeben wurde, wird der Zellengrößenwert der Umgebung verwendet, sofern dieser angegeben wurde. Andernfalls werden zusätzliche Regeln verwendet, um ihn aus anderen Eingaben zu berechnen. Weitere Informationen finden Sie im Abschnitt zur Verwendung. | Analysis Cell Size |
extent (optional) | Die Klasse Extent gibt die Ausdehnung des Ausgabe-Raster-Datasets an. Die Interpolation des Ausgabe-Rasters erstreckt sich bis zu den XY-Grenzen. Zellen außerhalb dieser Ausdehnung sind "NoData". Für optimale Interpolationsergebnisse entlang der Ränder des Ausgabe-Rasters müssen die XY-Grenzwerte um mindestens 10 Zellen auf jeder Seite kleiner sein als die Ausdehnung der Eingabedaten. Die Extent-Klasse weist folgendes Format auf:
Die Standardausdehnung ist die größte aller Ausdehnungen der Eingabe-Feature-Daten. | Extent |
Margin margin (optional) | Entfernung in Zellen für die Interpolation über die angegebene Ausgabeausdehnung und -grenze hinaus. Der Wert muss größer oder gleich 0 (null) sein. Der Standardwert ist 20. Wenn die Feature-Datasets Extent und TopoBoundary der Grenze der Eingabedaten entsprechen (Standardeinstellung), stimmen Werte, die entlang des Randes des DEM interpoliert werden, nicht gut mit angrenzenden DEM-Daten überein. Der Grund hierfür ist, dass sie mit der Hälfte der Daten interpoliert wurden wie die Punkte innerhalb des Rasters, die an allen Seiten von Eingabedaten umgeben sind. Die Option Margin ermöglicht, dass Daten außerhalb dieser Grenzen für die Interpolation verwendet werden können. | Long |
minimum_z_value (optional) | Der minimale, für die Interpolation verwendete Z-Wert. Der Standardwert ist 20 % niedriger als der kleinste aller Eingabewerte. | Double |
maximum_z_value (optional) | Der maximale, für die Interpolation verwendete Z-Wert. Der Standardwert ist 20 % größer als der größte aller Eingabewerte. | Double |
enforce (optional) | Der Typ der umzusetzenden Drainage-Durchführung. Die Drainage-Durchführung kann so festgelegt werden, dass versucht wird, alle Senken bzw. Mulden zu entfernen, damit ein hydrologisch korrektes DEM erstellt werden kann. Wenn Senkenpunkte in den Eingabe-Feature-Daten explizit identifiziert wurden, werden diese Senken nicht aufgefüllt.
| String |
data_type (optional) | Der vorherrschende Höhendatentyp in den Eingabe-Feature-Daten.
Das Angeben der relevanten Option optimiert die Suchmethode, die während der Erstellung von Wasserläufen und Bergrücken verwendet wird. | String |
maximum_iterations (optional) | Die maximale Anzahl von Interpolationsiterationen. Die Anzahl an Iterationen muss größer 0 sein. Der Standardwert 20 ist normalerweise für Konturlinien- und Liniendaten ausreichend. Bei Wahl des Wertes 30 werden weniger Senken entfernt. Gelegentlich können höhere Werte (45 bis 50) nützlich sein, um mehr Senken zu entfernen oder mehr Bergrücken und Wasserläufe zu bestimmen. Die Iteration endet für jede Raster-Auflösung, wenn die maximale Anzahl an Iterationen erreicht wurde. | Long |
roughness_penalty (optional) | Die integrierte quadrierte zweite Ableitung als Maß der Rauigkeit. Der Rauigkeitsbeiwert muss größer gleich 0 sein. Wenn für den primären Eingabedatentyp Konturlinie angegeben wurde, wird der Standardwert 0 verwendet. Wenn für den primären Datentyp Spot angegeben wurde, wird der Standardwert 0,5 verwendet. Höhere Werte werden in der Regel nicht empfohlen. | Double |
discrete_error_factor (optional) | Dieser Faktor dient dem Anpassen des Glättungsumfangs, wenn die Eingabedaten in ein Raster konvertiert werden. Der Wert muss größer 0 sein. Der normale Anpassungsbereich liegt zwischen 0,25 und 4. Der Standardwert ist 1. Bei einem kleineren Wert ist die Datenglättung geringer, bei höheren Werten ist sie größer. | Double |
vertical_standard_error (optional) | Die Menge an Zufallsfehlern in den Z-Werten der Eingabedaten. Der Wert muss größer gleich 0 sein. Die Standardeinstellung ist 0. Der vertikale Standardfehler kann auf einen kleinen positiven Wert festgelegt werden, wenn die Daten signifikante (nicht systematische) vertikale Zufallsfehler mit einheitlicher Varianz aufweisen. Legen Sie in diesem Fall den vertikalen Standardfehler auf die Standardabweichung dieser Fehler fest. Bei den meisten Höhen-Datasets wird für diesen Parameter der Wert 0 verwendet. Sie können jedoch auch einen kleinen positiven Wert angeben, um beim Rastern von Punktdaten mit Wasserlaufdaten die Konvergenz zu stabilisieren. | Double |
tolerance_1 (optional) | Diese Toleranz gibt die Genauigkeit und Dichte der Höhenpunkte in Bezug zur Oberflächendrainage an. Legen Sie für Punkt-Datasets die Toleranz auf den Standardfehler der Höhendaten fest. Wählen Sie für Konturlinien-Datasets die Hälfte des durchschnittlichen Konturlinienintervalls. Der Wert muss größer gleich 0 sein. Beim Datentyp Konturlinie ist der Standardwert 2,5, beim Datentyp Spot ist der Standardwert 0. | Double |
tolerance_2 (optional) | Diese Toleranz verhindert die Drainage-Durchführung aufgrund unrealistisch hoher Barrieren. Der Wert muss größer 0 sein. Beim Datentyp Konturlinie ist der Standardwert 100, beim Datentyp Spot ist der Standardwert 200. | Double |
out_stream_features (optional) | Die Ausgabe-Line-Feature-Class der Wasserlauf-Polylinien-Features und Bergrücken-Linien-Features. Die Linien-Features werden zu Beginn des Interpolationsprozesses erstellt. Diese Feature-Class stellt die allgemeine Morphologie der Oberfläche für die Interpolation bereit. Durch Vergleiche mit bekannten Wasserlauf- und Bergrückendaten kann der Benutzer mit ihrer Hilfe prüfen, ob Drainage und Morphologie korrekt sind. Die Polylinien-Features werden wie folgt codiert: 1. Eingabe-Wasserlauf nicht über Klippe. 2. Eingabe-Wasserlauf über Klippe (Wasserfall). 3. Drainage-Durchführung entfernt eine unkorrekte Senke. 4. Aus Kontureckpunkt bestimmter Wasserlauf. 5. Aus Kontureckpunkt bestimmter Bergkamm. 6. Code nicht verwendet. 7. Nebenbedingungen für Wasserlaufdaten. 8. Code nicht verwendet. 9. Linie mit großem Höhendatenabstand. | Feature Class |
out_sink_features (optional) | Die Ausgabe-Point-Feature-Class der verbleibenden Punkt-Features für Senken. Dies sind die Senken, die nicht in den Eingabe-Feature-Daten der Senke angegeben und die nicht während der Drainage-Durchführung entfernt wurden. Durch Anpassen der Werte für tolerance_1 und tolerance_2 kann die Anzahl der verbleibenden Senken reduziert werden. Verbleibende Senken sind häufig ein Hinweis auf Fehler in den Eingabedaten, die der Drainage-Durchführungsalgorithmus nicht beheben konnte. Dies ist ggf. eine effiziente Möglichkeit zum Entdecken feiner Höhenfehler. | Feature Class |
out_diagnostic_file (optional) | Die Ausgabe-Diagnosedatei mit allen verwendeten Eingaben und Parametern sowie der Anzahl der Senken, die bei jeder Auflösung und Iteration entfernt wurden. | File |
out_parameter_file (optional) | Die Ausgabe-Parameterdatei mit allen verwendeten Eingaben und Parametern, die zusammen mit Topo zu Raster aus Datei für eine weitere Interpolation verwendet werden kann. | File |
profile_penalty (optional) | Der Rauigkeitsbeiwert der Vertikalkrümmung ist ein lokaler adaptiver Beiwert, der zum teilweisen Ersetzen der Gesamtkrümmung verwendet werden kann. Er kann bei Konturliniendaten in hoher Qualität gute Ergebnisse erbringen, bei schlechten Daten aber zu Instabilität bei der Konvergenz führen. Legen Sie den Wert auf 0,0 für keine Vertikalkrümmung (Standardwert), auf 0,5 für mäßige Vertikalkrümmung und auf 0,8 für maximale Vertikalkrümmung fest. Von der Verwendung von Werten über 0,8 wird abgeraten. | Double |
out_residual_feature (optional) | Die Ausgabe-Punkt-Feature-Class aller großen Höhenresiduen, wie sie vom lokalen Diskretisierungsfehler skaliert werden. Alle skalierten Residuen größer 10 sollten auf mögliche Fehler in den Eingabehöhendaten und Wasserlaufdaten untersucht werden. Große skalierte Residuen deuten auf Konflikte zwischen den Eingabehöhendaten und den Wasserlaufdaten hin. Das Problem kann auch mit schlechten automatischen Drainage-Durchführungen zusammenhängen. Diese Konflikte können behoben werden, indem Sie zusätzliche Wasserlauf- bzw. Punkthöhendaten angeben, nachdem Sie Fehler in den vorhandenen Eingabedaten geprüft und behoben haben. Große nichtskalierte Residuen weisen in der Regel auf Eingabehöhenfehler hin. | Feature Class |
out_stream_cliff_error_feature (optional) | Die Ausgabe-Point-Feature-Class von Positionen, an denen Gewässer- und Klippenfehler auftreten können. Die Positionen, an denen die Gewässer geschlossene Schleifen, Verzweigungen und Wasserläufe über Klippen aufweisen, können aus der Point-Feature-Class identifiziert werden. Klippen mit benachbarten Zellen, die mit der hohen und niedrigen Seite der Klippe inkonsistent sind, werden ebenfalls angezeigt. Dies kann ein guter Hinweis auf Klippen mit falscher Richtung sein. Punkte werden wie folgt codiert: 1. Echter Kreislauf in Daten-Wasserlaufnetz. 2. Kreislauf in Wasserlaufnetz, wie im Ausgabe-Raster codiert. 3. Kreislauf in Wasserlaufnetz über verbindende Seen. 4. Verzweigungspunkt. 5. Wasserlauf über Klippe (Wasserfall). 6. Punkte, die mehrere Wasserlaufabflüsse aus Seen anzeigen. 7. Code nicht verwendet. 8. Punkte neben Klippen mit Höhenwerten, die mit der Klippenrichtung inkonsistent sind. 9. Code nicht verwendet. 10. Kreisförmiger Nebenarm entfernt. 11. Nebenarm ohne hereinfließenden Wasserlauf. 12. Gerasterter Nebenarm in Ausgabezelle unterschiedlich zu der Stelle, an der der Daten-Wasserlaufnebenarm auftritt. 13. Fehler beim Verarbeiten von Nebenbedingungen – ein Hinweis auf sehr komplexe Wasserlaufdaten. | Feature Class |
out_contour_error_feature (optional) | Die Ausgabe-Punkt-Feature-Class möglicher Fehler, die zu den Eingabe-Konturliniendaten gehören. Konturlinien mit Höhenabweichungen, die die fünffache Standardabweichung der im Ausgabe-Raster dargestellten Konturlinienwerte überschreiten, werden in dieser Feature-Class gemeldet. Konturlinien, die andere Konturlinien mit einer anderen Höhe verbinden, werden in dieser Feature-Class mit dem Code 1 gekennzeichnet. Dies ist ein sicheres Anzeichen für einen Konturlinienbeschriftungsfehler. | Feature Class |
Rückgabewert
Name | Erklärung | Datentyp |
out_surface_raster | Das Ausgabe-Raster für die interpolierte Oberfläche. Es handelt sich stets um ein Gleitkomma-Raster. | Raster |
Codebeispiel
In diesem Beispiel wird ein hydrologisch korrektes TIFF-Oberflächen-Raster anhand von Punkt-, Linien- und Polygondaten erstellt.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outTTR = TopoToRaster([TopoPointElevation([['spots', 'spot_meter']]),
TopoContour([['contours', 'spot_meter']]),
TopoCliff(['cliff'])], 60,
"#", "#", "#", "#", "NO_ENFORCE")
outTTR.save("C:/sapyexamples/output/ttrout.tif")
In diesem Beispiel wird ein hydrologisch korrektes Grid-Oberflächen-Raster anhand von Punkt-, Linien- und Polygondaten erstellt.
# Name: TopoToRaster_Ex_02.py
# Description: Interpolates a hydrologically correct surface
# from point, line, and polygon data.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Set environment settings
env.workspace = "C:/sapyexamples/data"
# Set local variables
inPointElevations = TopoPointElevation([['spots.shp', 'spot_meter'],
['spots2.shp', 'elev']])
inBoundary = TopoBoundary(['boundary.shp'])
inContours = TopoContour([['contours.shp', 'spot_meter']])
inLake = TopoLake(['lakes.shp'])
inSinks = TopoSink([['sink1.shp', 'elevation'], ['sink2.shp', 'none']])
inStream = TopoStream(['streams.shp'])
inFeatures = ([inPointElevations, inContours, inLake, inBoundary, inSinks])
# Execute TopoToRaster
outTTR = TopoToRaster(inFeatures)
# Save the output
outTTR.save("C:/sapyexamples/output/ttrout03")
Umgebungen
Lizenzinformationen
- Basic: Erfordert Spatial Analyst oder 3D Analyst
- Standard: Erfordert Spatial Analyst oder 3D Analyst
- Advanced: Erfordert Spatial Analyst oder 3D Analyst