Mit der Spatial Analyst-Lizenz verfügbar.
Zusammenfassung
Berechnet den kostengünstigsten Pfad von einer Quelle zu einem Ziel.
Weitere Informationen zur Erstellung der kostengünstigsten Route
Verwendung
Das Werkzeug Kostenpfad erzeugt ein Ausgabe-Raster, das die kostengünstigste(n) Route(n) von ausgewählten Positionen zur nächsten Quellenzelle aufzeichnet, die innerhalb der akkumulativen Kosten-Oberfläche definiert wurde (hinsichtlich der Kostenentfernung).
Im Allgemeinen muss mindestens ein Werkzeug für gewichtete Kosten (Kostenentfernung, Kostenrückverknüpfung oder Kostenzuordnung) vor der Ausführung von Kostenpfad ausgeführt werden, um das Eingabe-Kostenentfernungs- und -Rückverknüpfungs-Raster zu erstellen. Dies sind erforderliche Eingabe-Raster für Kostenpfad.
Jeder kostengünstigsten Route wird ein Wert zugewiesen, wenn sie beim Scanvorgang gefunden wird. Die Endzelle im ursprünglichen Quell-Raster (aus dem Kostenentfernung und Rückverknüpfung abgeleitet wurden) eines Kostenpfades erhält den Wert 1, der erste Pfad den Wert 3, der zweite den Wert 4 usw. Der Wert 2 ist für den zusammengeführten Teil von Routen reserviert, die Teile eines allgemeinen Kostenpfades enthalten.
Wenn es sich bei den Eingabezieldaten um ein Raster handelt, besteht die Menge der Zielzellen aus allen Zellen in den Eingabe-Raster- bzw. Feature-Zieldaten, die über gültige Werte verfügen. Zellen mit NoData-Werten sind nicht in der Quellmenge enthalten. Der Wert 0 wird als ein rechtmäßiges Ziel betrachtet. Ein Ziel-Raster kann problemlos mit den Extraktionswerkzeugen erstellt werden.
Wenn die Quelleingabe ein Feature ist, wird standardmäßig das erste gültige verfügbare Feld verwendet. Sind keine gültigen Felder vorhanden, wird das ObjectID-Feld verwendet (z. B. OID oder FID, abhängig vom Typ der Feature-Eingabe).
Bei der Verwendung von Polygon-Feature-Daten für Eingabe-Feature-Ziele muss auf den Umgang mit der Größe der Ausgabezelle geachtet werden, wenn diese grob relativ zu dem in der Eingabe vorhandenen Detail ist. Im internen Rasterungsprozess, der auf das Werkzeug Polygon in Raster zugreift, lautet die Standardeinstellung für den Zellenzuweisungstyp CELL_CENTER. Das bedeutet, dass Daten, die sich nicht am Zellmittelpunkt befinden, nicht in die vorläufige, gerasterte Zielausgabe aufgenommen und folglich nicht in den Entfernungsberechnungen dargestellt werden. Wenn Ihre Ziele beispielsweise aus einer Serie kleiner Polygone bestehen, wie etwa Gebäudegrundrisse, die in Relation zur Ausgabe-Zellengröße klein sind, kann es sein, dass nur einige von ihnen an den Mittelpunkten der Ausgabe-Raster-Zellen liegen und scheinbar dazu führen, dass die meisten anderen Polygone in der Analyse nicht enthalten sind.
Um dies zu vermeiden können Sie die Eingabe-Features in einem Zwischenschritt direkt mit dem Werkzeug Polygon in Raster rastern, ein Prioritätsfeld festlegen und die sich ergebende Ausgabe als Eingabe für das Entfernungswerkzeug verwenden. Alternativ können Sie eine Zellengröße auswählen, die so klein ist, dass der jeweilige Detaillierungsgrad von den Eingabe-Features erfasst wird.
Wenn mehrere Pfade zusammenlaufen und für die verbleibende Entfernung zurück zu einer Quelle dieselbe Route verwenden, wird dem Segment, in dem die beiden Pfade zusammen verlaufen, der Wert 2 zugewiesen. Dem zusammengeführten Teil des Pfades kann nicht der Wert eines der Pfade zugewiesen werden, da der zusammengeführte Teil zu beiden Routen gehört.
Kostenpfad ignoriert die Umgebungseinstellung Maske. Die Analyseausdehnung sollte sich nicht von der Kostenentfernung und den Kosten-Rückverknüpfungs-Rastern unterscheiden.
Kostenpfad ignoriert die Umgebungseinstellung Zellengröße und verwendet die Zellengröße des Eingabe-Kosten-Rückverknüpfungs-Rasters für das Ausgabe-Raster. Das Muster des Rückverknüpfungs-Rasters würde erheblich geändert werden, wenn ein Resampling mit einer anderen Auflösung durchgeführt würde. Um Verwechslungen zu vermeiden, sollte bei Verwendung dieses Werkzeugs die Zellengröße nicht festgelegt werden.
Kostenpfad kann auch verwendet werden, um den Pfad des geringsten Widerstands entlang eines digitalen Höhenmodells (DEM) abzuleiten. Verwenden Sie in diesem Fall das DEM für das Eingabe-Kostenentfernungs-Raster und die Ausgabe aus dem Werkzeug Fließrichtung für das Eingabe-Kosten-Rückverknüpfungs-Raster. Gültige Fließrichtungs-Raster-Werte sind 1, 2, 4, 8, 16, 32, 64 und 128; gültige Werte im Rückverknüpfungs-Raster sind 1, 2, 3, 4, 5, 6, 7 und 8. Beide Raster sind akzeptabel.
Wenn es sich bei den Eingabezieldaten um ein Feature handelt, müssen sie mindestens ein gültiges Feld enthalten.
Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.
Syntax
CostPath (in_destination_data, in_cost_distance_raster, in_cost_backlink_raster, {path_type}, {destination_field})
Parameter | Erläuterung | Datentyp |
in_destination_data | Ein Raster- oder Feature-Dataset, das diejenigen Zellen identifiziert, von denen die kostengünstigste Route zur am wenigsten kostspieligen Quelle ermittelt wird. Wenn die Eingabe ein Raster ist, besteht die Eingabe aus Zellen mit gültigen Werten (0 ist ein gültiger Wert), und den restlichen Zellen muss "NoData" zugewiesen werden. | Raster Layer | Feature Layer |
in_cost_distance_raster | Der Name eines Kostenentfernungs-Rasters, das verwendet werden soll, um die kostengünstigste Route von den Zielpositionen zu einer Quelle zu ermitteln. Das Kostenentfernungs-Raster wird normalerweise mit den Werkzeugen Kostenentfernung, Kostenzuordnung oder Kostenrückverknüpfung erstellt. Das Kostenentfernungs-Raster speichert für jede Zelle die minimale akkumulative Kostenentfernung über eine Kostenoberfläche von jeder Zelle zu einer Menge von Quellenzellen. | Raster Layer |
in_cost_backlink_raster | Der Name eines Kosten-Rückverknüpfungs-Rasters, das verwendet wird, um die Route zur Rückkehr zu einer Quelle über die kostengünstigste Route zu ermitteln. Für jede Zelle im Rückverknüpfungs-Raster gibt ein Wert den Nachbarn an, also die nächste Zelle auf der Route mit den geringsten akkumulativen Kosten von der Zelle zu einer einzelnen Quellenzelle oder einer Menge von Quellenzellen. | Raster Layer |
path_type (optional) | Ein Schlüsselwort, das die Art und Weise definiert, in der die Werte und Zonen der Eingabezieldaten in den Kostenpfadberechnungen interpretiert werden.
| String |
destination_field (optional) | Das Feld, das verwendet wird, um Werte für die Zielpositionen zu erhalten. Eingabe-Feature-Daten müssen mindestens ein gültiges Feld enthalten. | Field |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster | Das Ausgabe-Kostenpfad-Raster. Das Ausgabe-Raster ist ganzzahlig. | Raster |
Codebeispiel
CostPath – Beispiel 1 (Python-Fenster)
Das folgende Skript im Python-Fenster veranschaulicht die Verwendung des Werkzeugs CostPath.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outCostPath = CostPath("observers", "costraster", "backlink2", "EACH_CELL")
outCostPath.save("c:/sapyexamples/output/costpath")
CostPath – Beispiel 2 (eigenständiges Skript)
Berechnet den kostengünstigsten Pfad von einer Quelle zu einem Ziel.
# Name: CostPath_Ex_02.py
# Description: Calculates the least-cost path from a source to
# a destination.
# 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
inDestination = "observers.shp"
costRaster = "costraster"
backLink = "backlink2"
method = "EACH_CELL"
destField = "FID"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute CostPath
outCostPath = CostPath(inDestination, costRaster, backLink, method,
destField)
# Save the output
outCostPath.save("c:/sapyexamples/output/costpath02")
Umgebung
Lizenzierungsinformationen
- ArcGIS for Desktop Basic: Erfordert Spatial Analyst
- ArcGIS for Desktop Standard: Erfordert Spatial Analyst
- ArcGIS for Desktop Advanced: Erfordert Spatial Analyst