Kostenpfad als Polylinie (Spatial Analyst)

Mit der Spatial Analyst-Lizenz verfügbar.

Zusammenfassung

Berechnet den kostengünstigsten Pfad von einer Quelle zu einem Ziel als Linien-Feature.

Tipp:

Das Werkzeug Optimaler Pfad als Linie bietet eine erweiterte Funktionalität und Performance.

Weitere Informationen zur Erstellung der kostengünstigsten Route

Verwendung

  • Das Werkzeug Kostenpfad als Polylinie erzeugt ein Ausgabe-Polylinien-Feature, das die kostengünstigste(n) Route(n) von einer Quelle zum jeweils nächsten Ziel aufzeichnet, das 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 als Polylinie ausgeführt werden, um das Eingabe-Kostenentfernungs- und -Rückverknüpfungs-Raster zu erstellen. Dies sind erforderliche Eingabe-Raster für Kostenpfad als Polylinie.

  • 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 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, insbesondere wenn diese grob relativ zu dem in der Eingabe vorhandenen Detail ist. Es wird ein interner Rasterungsprozess mit dem Werkzeug Polygon in Raster angewendet, wobei für den Zellenzuweisungstyp die Standardeinstellung Zellenmittelpunkt verwendet wird. Das bedeutet, dass Daten, die sich nicht am Zellmittelpunkt befinden, nicht in die vorläufige, gerasterte Zielausgabe aufgenommen und 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 zahlreiche andere Polygone in der Analyse nicht enthalten sind.

    Um dies zu vermeiden, können Sie die Eingabe-Features in einem Zwischenschritt direkt mit dem Werkzeug Feature in Raster rastern und den Parameter Feld festlegen. Verwenden Sie anschließend die resultierende Ausgabe als Eingabe in das jeweilige Entfernungswerkzeug, das Sie verwenden möchten. Alternativ können Sie eine kleine Zellengröße auswählen, damit der jeweilige Detaillierungsgrad von den Eingabe-Features erfasst wird.

  • Das Ausgabe-Polylinien-Feature weist ein Feld mit der Bezeichnung DestID auf, das angibt, zu welchem Ziel jede einzelne Linie führt. Wenn die Ausgabe in eine File-Geodatabase geschrieben wird, ist ein Feld mit der Bezeichnung shape_length vorhanden, das die Gesamtlänge der kostengünstigsten Route enthält.

  • Kostenpfad als Polylinie 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 als Polylinie kann zur Ermittlung des Fließpfades basierend auf der D8-Fließrichtung verwendet werden. Um Kostenpfad als Polylinie auf diese Weise zu verwenden, verwenden Sie ein D8-Fließrichtungs-Raster als Eingabe für das Eingabe-Kosten-Rückverknüpfungs-Raster. Sie müssen auch ein Eingabe-Kostenentfernungs-Raster bereitstellen. Das Eingabe-Kostenentfernungs-Raster dient nicht zur Ermittlung des Pfades. Der Pfad bleibt gleich, unabhängig davon, ob Sie ein konstantes Raster oder ein digitales Höhenmodell (DEM) verwenden. Lediglich ein Attributwert im Pfad variiert. Weitere Informationen zu D8-Fließrichtungs-Rastern finden Sie im Abschnitt zum Werkzeug Fließrichtung.

  • Mit Kostenpfad als Polylinie kann, basierend auf dem von den euklidischen Werkzeugen generierten Ausgabe-Gegenrichtungs-Raster, ein Pfad um Barrieren ermittelt werden. Wenn Kostenpfad als Polylinie auf diese Weise verwendet werden soll, führen Sie zunächst ein beliebiges euklidisches Werkzeug mit definierten Eingabe-Raster- oder -Feature-Barriere-Daten aus, um das Ausgabe-Entfernungs-Raster und Ausgabe-Gegenrichtungs-Raster zu generieren. Verwenden Sie die von den euklidischen Werkzeugen generierten Ausgaben als Eingabe für Kostenpfad als Polylinie.

  • Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Raster oder Ziel-Feature-Daten

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, muss dieses aus Zellen mit gültigen Werten für die Ziele bestehen, und den restlichen Zellen muss "NoData" zugewiesen werden. 0 ist ein gültiger Wert.

Raster Layer; Feature Layer
Eingabe-Kostenentfernungs-Raster oder Raster für die euklidische Entfernung

Das Kostenentfernungs-Raster, das verwendet werden soll, um die kostengünstigste Route von den Quellen zu den Zielen 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
Eingabe-Kosten-Rückverknüpfungs-, Gegenrichtungs- oder Fließrichtungs-Raster

Das Kosten-Rückverknüpfungs-Raster, das verwendet wird, um den Pfad zur Rückkehr zu einer Quelle über die kostengünstigste oder kürzeste Route zu ermitteln.

Für jede Zelle in einem Rückverknüpfungs-, Gegenrichtungs- oder Fließrichtungs-Raster gibt der Wert den Nachbarn an, der sich in der nächsten Zelle auf dem Pfad von dieser Zelle zu einer Quellenzelle befindet.

Raster Layer
Ausgabe-Polylinien-Features

Die Ausgabe-Feature-Class, die die kostengünstigste Route enthält.

Feature Class
Pfadtyp
(optional)

Gibt ein Schlüsselwort an, das die Art und Weise definiert, in der die Werte und Zonen der Eingabezieldaten in den Kostenpfadberechnungen interpretiert werden:

  • Der BesteFür alle Zellen in den Eingabezieldaten wird die kostengünstigste Route aus der Zelle mit dem Minimum der kostengünstigsten Routen zu Quellenzellen abgeleitet.
  • Jede ZoneFür jede Zone in den Eingabezieldaten wird eine kostengünstigste Route ermittelt und im Ausgabe-Raster gespeichert. Bei dieser Option beginnt die kostengünstigste Route für jede Zone bei der Zelle mit der niedrigsten Kostenentfernungsgewichtung in der Zone.
  • Jede ZelleFür jede Zelle mit gültigen Werten in den Eingabezieldaten wird eine kostengünstigste Route ermittelt und im Ausgabe-Raster gespeichert. Mit dieser Option wird jede Zelle der Eingabezieldaten separat behandelt und eine kostengünstigste Route für jede Zelle ermittelt.
String
Zielfeld
(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
Fließrichtungs-Konvention für Rückverknüpfungs-Raster erzwingen
(optional)

Gibt an, ob das Eingabe-Rückverknüpfungs-Raster als Fließrichtungs-Raster behandelt wird. Fließrichtungs-Raster können ganzzahlige Werte zwischen 0 und 255 enthalten.

  • Deaktiviert: Der Wert für Eingabe-Kosten-Rückverknüpfungs-Raster wird abhängig vom Wertebereich und abhängig davon, ob ganzzahlige oder Gleitkommawerte vorliegen, unterschiedlich interpretiert. Für den Wertebereich von 0–8 wird der Wert für Eingabe-Kosten-Rückverknüpfungs-Raster als Rückverknüpfungs-Raster behandelt. Für den Wertebereich von 0–255 und ganze Zahlen wird der Wert für Eingabe-Kosten-Rückverknüpfungs-Raster als Fließrichtungs-Raster behandelt. Für den Wertebereich von 0–360 und Gleitkommawerte wird der Wert für Eingabe-Kosten-Rückverknüpfungs-Raster als Gegenrichtungs-Raster behandelt.
  • Aktiviert: Das im Parameter Eingabe-Kosten-Rückverknüpfungs-Raster angegebene Raster wird als Fließrichtungs-Raster behandelt. Dies ist erforderlich, wenn das Fließrichtungs-Raster einen Höchstwert von 8 oder einen geringeren Wert aufweist.
Boolean

CostPathAsPolyline(in_destination_data, in_cost_distance_raster, in_cost_backlink_raster, out_polyline_features, {path_type}, {destination_field}, {force_flow_direction_convention})
NameErläuterungDatentyp
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, muss dieses aus Zellen mit gültigen Werten für die Ziele bestehen, und den restlichen Zellen muss "NoData" zugewiesen werden. 0 ist ein gültiger Wert.

Raster Layer; Feature Layer
in_cost_distance_raster

Das Kostenentfernungs-Raster, das verwendet werden soll, um die kostengünstigste Route von den Quellen zu den Zielen 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

Das Kosten-Rückverknüpfungs-Raster, das verwendet wird, um den Pfad zur Rückkehr zu einer Quelle über die kostengünstigste oder kürzeste Route zu ermitteln.

Für jede Zelle in einem Rückverknüpfungs-, Gegenrichtungs- oder Fließrichtungs-Raster gibt der Wert den Nachbarn an, der sich in der nächsten Zelle auf dem Pfad von dieser Zelle zu einer Quellenzelle befindet.

Raster Layer
out_polyline_features

Die Ausgabe-Feature-Class, die die kostengünstigste Route enthält.

Feature Class
path_type
(optional)

Gibt ein Schlüsselwort an, das die Art und Weise definiert, in der die Werte und Zonen der Eingabezieldaten in den Kostenpfadberechnungen interpretiert werden:

  • BEST_SINGLEFür alle Zellen in den Eingabezieldaten wird die kostengünstigste Route aus der Zelle mit dem Minimum der kostengünstigsten Routen zu Quellenzellen abgeleitet.
  • EACH_ZONEFür jede Zone in den Eingabezieldaten wird eine kostengünstigste Route ermittelt und im Ausgabe-Raster gespeichert. Bei dieser Option beginnt die kostengünstigste Route für jede Zone bei der Zelle mit der niedrigsten Kostenentfernungsgewichtung in der Zone.
  • EACH_CELLFür jede Zelle mit gültigen Werten in den Eingabezieldaten wird eine kostengünstigste Route ermittelt und im Ausgabe-Raster gespeichert. Mit dieser Option wird jede Zelle der Eingabezieldaten separat behandelt und eine kostengünstigste Route für jede Zelle ermittelt.
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
force_flow_direction_convention
(optional)

Gibt an, ob das Eingabe-Rückverknüpfungs-Raster als Fließrichtungs-Raster behandelt wird. Fließrichtungs-Raster können ganzzahlige Werte zwischen 0 und 255 enthalten.

  • INPUT_RANGEDer Wert für in_cost_backlink_raster wird abhängig vom Wertebereich und abhängig davon, ob ganzzahlige oder Gleitkommawerte vorliegen, unterschiedlich interpretiert. Für den Wertebereich von 0–8 wird der Wert für in_cost_backlink_raster als Rückverknüpfungs-Raster behandelt. Für den Wertebereich von 0–255 und ganze Zahlen wird der Wert für in_cost_backlink_raster als Fließrichtungs-Raster behandelt. Für den Wertebereich von 0–360 und Gleitkommawerte wird der Wert für in_cost_backlink_raster als Gegenrichtungs-Raster behandelt.
  • FLOW_DIRECTIONDas im Parameter in_cost_backlink_raster angegebene Raster wird als Fließrichtungs-Raster behandelt. Dies ist erforderlich, wenn das Fließrichtungs-Raster einen Höchstwert von 8 oder einen geringeren Wert aufweist.
Boolean

Codebeispiel

CostPathAsPolyline – Beispiel 1 (Python-Fenster)

Das folgende Skript veranschaulicht, wie dieses Werkzeug im Python-Fenster verwendet wird.

import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
CostPathAsPolyline("observers", "costdistraster", "backlink2", "c:/sapyexamples/output/outcostpth01.shp")
CostPathAsPolyline – Beispiel 2 (eigenständiges Skript)

Berechnet den kostengünstigsten Pfad von einer Quelle zu einem Ziel.

# Name: CostPathAsPolyline_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"
inCostDistRaster = "costdistraster"
inBacklink = "backlink2"
outCostPathFeat = "c:/sapyexamples/output.gdb/outcostpathfeat02"
method = "EACH_CELL"
destField = "FID"

# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")

# Execute
CostPathAsPolyline(inDestination, inCostDistRaster, inBacklink, 
                   outCostPathFeat, method, destField)

Lizenzinformationen

  • Basic: Erfordert Spatial Analyst
  • Standard: Erfordert Spatial Analyst
  • Advanced: Erfordert Spatial Analyst

Verwandte Themen