Beschriftung | Erläuterung | Datentyp |
Eingabe-Raster oder Feature-Regionen | Die Eingabe-Regionen, die durch optimale Korridore verbunden werden. Regionen können nach Raster oder Feature-Dataset definiert werden. Wenn die Region-Eingabe ein Raster ist, werden die Regionen nach Gruppen zusammenhängender (benachbarter) Zellen mit identischem Wert definiert. Jede Region muss eindeutig nummeriert sein. Die Zellen, die nicht Teil einer Region sind, müssen vom Typ "NoData" sein. Der Rastertyp muss ein Ganzzahlwert sein, und die Werte können positiv oder negativ sein. Wenn die Region-Eingabe ein Feature-Dataset ist, kann es sich um Polygone, Polylinien oder Punkte handeln. Polygon-Feature-Regionen dürfen nicht aus Multipart-Polygonen bestehen. | Raster Layer; Feature Layer |
Ausgabe der optimalen Korridorpolygone | Die Ausgabe-Polygon- oder Line-Feature-Class der optimalen Korridore, über die die einzelnen Eingaberegionen miteinander verbunden werden. Die Korridore (oder Linien) überlappen sich an Positionen, an denen Korridore über dieselbe Route verlaufen. Jeder Korridor (bzw. jede Linie) ist mit einer eindeutigen Nummer versehen, und konkrete Informationen über den Pfad sind in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
| Feature Class |
Eingabe-Raster oder Feature-Barrieren (optional) | Das Dataset, das die Barrieren definiert. Die Barrieren können durch ein Integer- oder Gleitkomma-Raster oder ein Punkt-, Linien- oder Polygon-Feature definiert sein. | Raster Layer; Feature Layer |
Eingabe-Kosten-Raster (optional) | Ein Raster, das die Impedanz oder die Kosten für eine planimetrische Bewegung durch jede Zelle definiert. Der Wert an jeder Zellenposition stellt die Kosten pro Einheitenentfernung für die Bewegung durch die Zelle dar. Jeder Zellenpositionswert wird mit der Zellenauflösung multipliziert, und gleichzeitig werden diagonale Bewegungen ausgeglichen, um die Gesamtkosten für die Bewegung durch die Zelle zu erhalten. Die Werte des Kosten-Rasters können Ganzzahl- oder Gleitkommawerte sein. Kosten-Raster-Werte, die negativ oder gleich Null sind, sind ungültig, werden jedoch als kleine positive Kostenwerte behandelt. | Raster Layer |
Ausgabe der optimalen Verbindungslinien (optional) | Die Ausgabe-Line-Feature-Class identifiziert die optimalen Linien, über die die einzelnen Eingaberegionen miteinander verbunden werden. Die Linien überlappen sich an Positionen, an denen Wege über dieselbe Route verlaufen. Jeder Pfad (oder jede Linie) ist eindeutig nummeriert und spezifische Informationen zu dem Pfad werden in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
| Feature Class |
Ausgabekorridore für benachbarte Polygone (optional) | Die Ausgabe-Polygon- oder Linien-Feature-Class, die die optimalen Korridore identifiziert, die jede Region mit dem nächstgelegenen oder kostengünstigsten Nachbarn identifiziert. Die Korridore (oder Linien) überlappen sich an Positionen, an denen Korridore über dieselbe Route verlaufen. Jeder Korridor ist mit einer eindeutigen Nummer versehen, und konkrete Informationen über den Pfad sind in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
| Feature Class |
Ausgabe benachbarter Verbindungen (optional) | Die Ausgabe-Line-Feature-Class, die die optimale Verbindung von jeder Region zu jedem ihrer nächstgelegenen oder kostengünstigsten Nachbarn identifiziert. Jeder Korridor (bzw. jedes Polygon) ist mit einer eindeutigen Nummer versehen, und konkrete Informationen über den Pfad sind in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
Da jeder Pfad durch eine eindeutige Linie dargestellt wird, weisen Positionen, an denen die dieselbe Route optimal verläuft, mehrere Linien auf. | Feature Class |
Korridormethode (optional) | Gibt an, wie der Korridor erstellt wird.
Hinweis:In diesem Release können lediglich Korridore mit fester Breite erstellt werden. Da es nur diese eine Standardoption gibt, ist der Parameter deaktiviert und wird im Dialogfeld des Werkzeugs nicht angezeigt. | String |
Korridorbreite (optional) | Lineare Entfernung zur Definition der Breite des resultierenden Korridors. Der Wert muss größer oder gleich Null sein. Die Standardeinstellung ist 0. | Double |
Entfernungsmethode (optional) | Gibt an, ob die Berechnung mit einer planaren Methode (flache Erde) oder einer geodätischen Methode (Ellipsoid) erfolgt.
| String |
Mit der Spatial Analyst-Lizenz verfügbar.
Zusammenfassung
Berechnet die optimalen Korridorverbindungen zwischen mindestens zwei Eingaberegionen.
Weitere Informationen zum Verbinden von Positionen mit Korridoren
Verwendung
Die Eingabe-Regionen können ein Raster oder Feature-Daten sein.
In einem Raster ist eine Region eine Gruppe von Zellen mit identischem Wert, die zusammenhängen (benachbart sind). Wenn die Eingabe-Regionen über ein Raster identifiziert werden, führen Sie, falls Zonen (Zellen mit demselben Wert) aus mehreren Regionen bestehen, zunächst das Werkzeug Gruppierung zu Regionen als Vorverarbeitungsschritt aus, um jeder Region eindeutige Werte zuzuweisen. Anschließend verwenden Sie das resultierende Raster als Eingaberegionen für dieses Werkzeug.
Wenn Eingabe-Regionen durch Polygon-, Linien- oder Punktdaten identifiziert sind, werden sie anhand der Feature-ID in ein Raster konvertiert, um sicherzustellen, dass die resultierenden Regionen Einzelwerte aufweisen. Multipart-Polygone dürfen nicht als Eingabe verwendet werden. Wenn Multipoint-Daten angegeben werden, wählt das Werkzeug einen der Punkte an der Position nach dem Zufallsprinzip als Regionswert aus.
Die Auflösung der gerasterten Eingabe-Feature-Regionen lässt sich mit der Umgebung Zellengröße steuern. Standardmäßig wird als Auflösung die Auflösung des Eingabe-Kosten-Rasters festgelegt, sofern angegeben.
Bei der Verwendung von Polygon-Feature-Daten als Eingabe-Region-Daten muss auf den Umgang mit der Größe der Ausgabezelle geachtet werden, wenn diese, relativ zu dem in der Eingabe vorhandenen Detail, grob ist. Der interne Rasterungsprozess verwendet dieselbe Standardmethode für den Zellenzuweisungstyp wie das Werkzeug Polygon in Raster, nämlich Zellenmittelpunkt. Dies bedeutet, dass Daten, die sich nicht am Zellenmittelpunkt befinden, nicht in die vorläufige, gerasterte Region aufgenommen und nicht in den Entfernungsberechnungen dargestellt werden. Wenn die Regionen beispielsweise aus einer Serie kleiner Polygone wie etwa Gebäudegrundrissen bestehen, 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 direkt mit dem Werkzeug Polygon in Raster rastern, einen Wert im Prioritätsfeld festlegen und die sich ergebende Ausgabe als Eingabe für dieses Werkzeug 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 es sich bei der Regionseingabe um ein Feature handelt, wird das Feld ObjectID als Regionsidentifikator verwendet.
Als Barrieren fungieren Positionen, die durch den Parameter Eingabe-Raster oder Feature-Barrieren ermittelt werden, Zellenpositionen, deren Parameter Eingabe-Kosten-Raster den Wert "NoData" enthält, oder Positionen, die sich außerhalb der Umgebungseinstellung "Maske" befinden.
Die Analyse-Umgebungseinstellung Maske kann auf ein Feature oder ein Raster-Dataset festgelegt werden. Wenn die Maske ein Feature ist, wird sie in ein Raster konvertiert. Die Zellen, die über einen Wert verfügen, definieren die Positionen, die im Maskenbereich liegen. NoData-Zellen definieren die Positionen, die sich außerhalb des Maskenbereichs befinden, und werden als Barriere behandelt.
Die standardmäßige Verarbeitungsausdehnung entspricht dem Wert des Parameters Eingabe-Kosten-Raster, sofern angegeben. Andernfalls wird die Ausdehnung der Eingaberegionen verwendet.
Kosten-Raster-Werte, die negativ oder gleich Null sind, sind ungültig, werden jedoch als kleine positive Werte behandelt. Der Algorithmus für akkumulative Kosten ist ein multiplikativer Prozess, mit dem die akkumulativen Kosten nicht korrekt berechnet werden können, wenn Kostenwerte negativ oder Null sind.
Wenn das Kosten-Raster diese Werte enthält und diese Positionen Gebiete darstellen, die aus der Analyse ausgeschlossen werden sollen, ändern Sie diese Zellen in NoData-Zellen, bevor Sie das Werkzeug ausführen. Verwenden Sie dazu das Werkzeug Auf NULL setzen.
Der NoData-Wert wird in dieser Analyse als Barriere behandelt, sodass Positionen, die in der Eingabe einen NoData-Wert aufweisen, im Ergebnis ebenfalls einen NoData-Wert aufweisen.
Wenn für den Parameter Eingabe-Kosten-Raster ein Wert angegeben ist, führt das Werkzeug die Berechnungen für diese Kostenoberfläche basierend auf dem Wert des Parameters Korridorbreite durch. Damit wird sichergestellt, dass für die angegebene Breite optimale Korridore erstellt werden, und es kann dazu führen, dass Regionen, die sich nahe der Oberflächenkante befinden, nicht mit den anderen Ergebnissen verbunden werden.
Die Angabe von Regionen, die sich nahe dem Parameterwert Eingabe-Raster oder Feature-Barrieren kann ebenfalls zu nicht verbundenen Korridoren führen.
Wenn für die Parameter Ausgabepolygone für benachbarte Korridore und Ausgabelinien für benachbarte Verbindungen keine Kostenoberfläche angegeben wird, werden die Nachbarn durch die Euklidische Entfernung bestimmt. In diesem Fall ist der nächstgelegene Nachbar einer Region derjenige mit der geringsten Entfernung. Wenn jedoch eine Kostenoberfläche angegeben wurde, werden die Nachbarn anhand der Kostenentfernung identifiziert. Der nächste Nachbar einer Region ist dann die Region, die auf die kostengünstigste Weise erreicht werden kann. Es wird ein Kostenzuordnungsvorgang durchgeführt, um zu ermitteln, welche Regionen benachbart sind.
Der Wert des Parameters Ausgabekorridore für benachbarte Polygone wird aus den Pfaden erstellt, die in der Ausgabe der optionalen benachbarten Verbindungen erstellt wurden. Die Pfade in der Ausgabe der optionalen benachbarten Verbindungen werden in Graphentheorie konvertiert. Die Regionen sind Stützpunkte, die Pfade sind die Kanten und die akkumulativen Entfernungen oder Kosten sind die Gewichtungen für die Kanten. Der minimale Spannbaum wird aus der Graphendarstellung der Pfade berechnet, um das Netzwerk der optimalen Verbindungslinien zu bestimmen, das für die Reise zwischen den Regionen erforderlich ist. Anschließend wird das Netzwerk der optimalen Korridorpolygone aus dem Netzwerk der optimalen Verbindungslinien erstellt.
Der Wert des Parameters Ausgabelinien für benachbarte Verbindungen ist eine Teilmenge des Pfads, der vom Parameter Ausgabe optionaler benachbarter Verbindungen erzeugt wird. Zur Berechnung dieser Teilmenge werden die benachbarten Verbindungen in Graphentheorie konvertiert. Die Regionen sind Stützpunkte, die Pfade sind die Kanten und die akkumulativen Entfernungen oder Kosten sind die Gewichtungen für die Kanten. Der minimale Spannbaum wird aus der Graphendarstellung der Pfade berechnet, um die Teilmenge der optimalen Verbindungslinien zu bestimmen, die für die Reise zwischen den Regionen erforderlich sind.
Jede optimale Verbindung erreicht die äußere Grenze des Polygons oder der Mehrzellenregion. Das Werkzeug setzt die Pfade vom Umfang der Region mit zusätzlichen Liniensegmenten fort, sodass Anfangs- und Endpunkte zwischen Regionen und Bewegungen zwischen diesen ermöglicht werden. Die Bewegung entlang dieser Liniensegmente verursacht keine zusätzlichen Entfernungen oder Kosten.
Je nach Konfiguration der Eingabe-Regionen und der zugeordneten Nachbarn kann ein Pfad durch eine zwischenliegende Region verlaufen, um zu einer benachbarten Region zu gelangen. Beim Durchqueren der zwischenliegenden Region entstehen Kosten.
Der Wert des Parameters Ausgabe benachbarter Verbindungen kann als alternatives Netzwerk zum Netzwerk des minimalen Spannbaums verwendet werden. Bei dieser Ausgabe wird jede Region mit ihren benachbarten Kostenregionen verbunden, sodass ein komplexeres Netzwerk mit vielen Pfaden entsteht. Die Feature-Class kann direkt verwendet werden oder als Grundlage für die Erstellung eines eigenen Netzwerks fungieren. Wählen Sie hierzu mithilfe der Schaltfläche Nach Attributen auswählen, der Gruppe Auswählen auf der Registerkarte Karte oder des Werkzeugs Layer nach Attributen auswählen die Pfade aus, die Sie im Netzwerk darstellen möchten. Als Grundlage für die Auswahl der Pfade können Kenntnisse der Region und die den Pfaden zugeordneten Statistiken in der ausgegebenen Attributtabelle herangezogen werden.
Dieses Werkzeug erstellt ausschließlich Korridore mit fester Breite. Der Parameter Korridorbreite ermittelt die feste Breite der Korridore als lineare Entfernung. Wenn der Wert des Parameters Korridorbreite 0 beträgt, sind die Ausgabekorridore die optimalen Verbindungslinien.
Weitere Informationen zur Geoverarbeitung von Umgebungen mit diesem Werkzeug finden Sie unter Analyseumgebungen und Spatial Analyst.
Parameter
OptimalCorridorConnections(in_regions, out_optimal_polygons, {in_barriers}, {in_cost_raster}, {out_optimal_lines}, {out_neighbor_polygons}, {out_neighbor_lines}, {corridor_method}, {corridor_width}, {distance_method})
Name | Erläuterung | Datentyp |
in_regions | Die Eingabe-Regionen, die durch optimale Korridore verbunden werden. Regionen können nach Raster oder Feature-Dataset definiert werden. Wenn die Region-Eingabe ein Raster ist, werden die Regionen nach Gruppen zusammenhängender (benachbarter) Zellen mit identischem Wert definiert. Jede Region muss eindeutig nummeriert sein. Die Zellen, die nicht Teil einer Region sind, müssen vom Typ "NoData" sein. Der Rastertyp muss ein Ganzzahlwert sein, und die Werte können positiv oder negativ sein. Wenn die Region-Eingabe ein Feature-Dataset ist, kann es sich um Polygone, Polylinien oder Punkte handeln. Polygon-Feature-Regionen dürfen nicht aus Multipart-Polygonen bestehen. | Raster Layer; Feature Layer |
out_optimal_polygons | Die Ausgabe-Polygon- oder Line-Feature-Class der optimalen Korridore, über die die einzelnen Eingaberegionen miteinander verbunden werden. Die Korridore (oder Linien) überlappen sich an Positionen, an denen Korridore über dieselbe Route verlaufen. Jeder Korridor (bzw. jede Linie) ist mit einer eindeutigen Nummer versehen, und konkrete Informationen über den Pfad sind in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
| Feature Class |
in_barriers (optional) | Das Dataset, das die Barrieren definiert. Die Barrieren können durch ein Integer- oder Gleitkomma-Raster oder ein Punkt-, Linien- oder Polygon-Feature definiert sein. | Raster Layer; Feature Layer |
in_cost_raster (optional) | Ein Raster, das die Impedanz oder die Kosten für eine planimetrische Bewegung durch jede Zelle definiert. Der Wert an jeder Zellenposition stellt die Kosten pro Einheitenentfernung für die Bewegung durch die Zelle dar. Jeder Zellenpositionswert wird mit der Zellenauflösung multipliziert, und gleichzeitig werden diagonale Bewegungen ausgeglichen, um die Gesamtkosten für die Bewegung durch die Zelle zu erhalten. Die Werte des Kosten-Rasters können Ganzzahl- oder Gleitkommawerte sein. Kosten-Raster-Werte, die negativ oder gleich Null sind, sind ungültig, werden jedoch als kleine positive Kostenwerte behandelt. | Raster Layer |
out_optimal_lines (optional) | Die Ausgabe-Line-Feature-Class identifiziert die optimalen Linien, über die die einzelnen Eingaberegionen miteinander verbunden werden. Die Linien überlappen sich an Positionen, an denen Wege über dieselbe Route verlaufen. Jeder Pfad (oder jede Linie) ist eindeutig nummeriert und spezifische Informationen zu dem Pfad werden in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
| Feature Class |
out_neighbor_polygons (optional) | Die Ausgabe-Polygon- oder Linien-Feature-Class, die die optimalen Korridore identifiziert, die jede Region mit dem nächstgelegenen oder kostengünstigsten Nachbarn identifiziert. Die Korridore (oder Linien) überlappen sich an Positionen, an denen Korridore über dieselbe Route verlaufen. Jeder Korridor ist mit einer eindeutigen Nummer versehen, und konkrete Informationen über den Pfad sind in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
| Feature Class |
out_neighbor_lines (optional) | Die Ausgabe-Line-Feature-Class, die die optimale Verbindung von jeder Region zu jedem ihrer nächstgelegenen oder kostengünstigsten Nachbarn identifiziert. Jeder Korridor (bzw. jedes Polygon) ist mit einer eindeutigen Nummer versehen, und konkrete Informationen über den Pfad sind in zusätzlichen Feldern in der Attributtabelle gespeichert. Dabei handelt es sich um folgende Felder:
Da jeder Pfad durch eine eindeutige Linie dargestellt wird, weisen Positionen, an denen die dieselbe Route optimal verläuft, mehrere Linien auf. | Feature Class |
corridor_method (optional) | Gibt an, wie der Korridor erstellt wird. Hinweis:In diesem Release können lediglich Korridore mit fester Breite erstellt werden. Da es nur diese eine Standardoption gibt, ist der Parameter deaktiviert und wird im Dialogfeld des Werkzeugs nicht angezeigt.
| String |
corridor_width (optional) | Lineare Entfernung zur Definition der Breite des resultierenden Korridors. Der Wert muss größer oder gleich Null sein. Die Standardeinstellung ist 0. | Double |
distance_method (optional) | Gibt an, ob die Berechnung mit einer planaren Methode (flache Erde) oder einer geodätischen Methode (Ellipsoid) erfolgt.
| String |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht, wie Sie die Funktion OptimalCorridorConnections verwenden.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/arcpyexamples/data"
out_OCC_raster = OptimalCorridorConnections("InRegions.tif",
"OutCorridors.shp", "InBarriers.tif", "InCostRaster.tif",
"OutOptimalPaths.shp", "OutNbrPoly.shp", "OutNbrLines.shp",
"FIXED_WIDTH_CORRIDOR", 5000, "PLANAR")
Mit diesem Werkzeug können Sie ein optimales Netzwerk aus Wildtierkorridoren zwischen bekannten besiedelten Gebieten berechnen.
# Name: OptimalCorridorConnections_standalone.py
# Description: Calculates corridor.
# Requirements: Spatial Analyst Extension
# Import system modules
import arcpy
from arcpy import env
from arcpy.sa import *
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Set environment settings
env.workspace = "C:/arcpyexamples/data"
# Set local variables
regions = "Lakes.tif"
outCorridors = "NewCorridors.shp"
roadBarriers = "Roads.shp"
costSurface = "CostSurface.tif"
optimalLines = "OutCorridorCenterLines.shp"
outAllCorridors = "OutAllCorridors.shp"
outAllLines = "OutAllCenterLines.shp"
corridorMethod = "FIXED_WIDTH_CORRIDOR"
corridorWidth = 5000
distanceMethod = "GEODESIC"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute OptimalCorridorConnections
OptimalCorridorConnections(regions, outCorridors, roadBarriers,
costSurface, optimalLines,
outAllCorridors, outAllLines,
corridorMethod, corridorWidth, distanceMethod)
Umgebungen
Lizenzinformationen
- Basic: Erfordert Spatial Analyst
- Standard: Erfordert Spatial Analyst
- Advanced: Erfordert Spatial Analyst