Euklidische Entfernung (Spatial Analyst)
Zusammenfassung
Berechnet für jede Zelle die euklidische Entfernung zur nächstgelegenen Quelle.
Bild
Verwendung
-
Die Eingabequelldaten können eine Feature-Class oder ein Raster sein.
-
Wenn es sich bei den Eingabequelldaten um ein Raster handelt, besteht die Menge der Quellzellen aus allen Zellen im Quell-Raster, die über gültige Werte verfügen. Zellen mit NoData-Werten sind nicht in der Quellmenge enthalten. Der Wert 0 wird als legitime Quelle verwendet. Ein Quell-Raster kann problemlos mit den Extraktionswerkzeugen erstellt werden.
-
Wenn die Eingabequelldaten eine Feature-Class sind, werden die Quellenpositionen intern in ein Raster konvertiert, bevor die Analyse ausgeführt wird. Die Auflösung des Rasters kann mithilfe des Parameters Ausgabe-Zellengröße oder der Zellengröße-Umgebung gesteuert werden. Standardmäßig entspricht die Auflösung der Breite oder Höhe (der jeweils kleinere Wert) der Ausdehnung des Eingabe-Features im Eingabe-Raumbezug, dividiert durch 250.
Bei der Verwendung von Polygon-Feature-Daten als Eingabequelldaten 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 greift auf dieselbe Standardmethode für den Zellenzuweisungstyp zu wie das Werkzeug Polygon in Raster, nämlich CELL_CENTER. Das bedeutet, dass Daten, die sich nicht am Zellmittelpunkt befinden, nicht in die vorläufige, gerasterte Quellausgabe aufgenommen und folglich nicht in den Entfernungsberechnungen dargestellt werden. Wenn Ihre Quellen 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.
-
Die Maximale Entfernung wird in den gleichen Karteneinheiten wie die Eingabequelldaten angegeben.
-
Eine Zuordnung ist als Ausgabe nicht verfügbar, da die Quelldaten keine Gleitkommainformationen enthalten können. Wenn Sie eine Zuordnungsausgabe wünschen, verwenden Sie das Werkzeug Euklidische Zuordnung. Dieses generiert alle drei Ausgabetypen, d. h. Zuordnung, Entfernung und Richtung.
-
Wenn in der Umgebung eine Maske festgelegt wurde und die relevanten Zellen eine Quelle maskieren, werden die euklidischen Berechnungen nur für die verbleibenden Quellenzellen ausgeführt. Die maskierten Quellenzellen werden bei den Berechnungen nicht berücksichtigt. Diesen Zellenpositionen wird in den Ausgabe-Rastern der Wert "NoData" zugewiesen.
-
Die von den maskierten Zellen erzeugten NoData-Werte werden in den Berechnungen für andere als die Zellenpositionen der Quelle ignoriert. Die euklidische Entfernung für die den NoData-Werten zugrunde liegenden Zellen wird so berechnet, als wäre der NoData-Wert nicht vorhanden. Jede Zellenposition, der aufgrund der Maske auf der Eingabe-Oberfläche der Wert "NoData" zugewiesen ist, erhält auf allen Ausgabe-Rastern den Wert "NoData".
Syntax
Parameter | Erläuterung | Datentyp |
in_source_data |
Die Eingabequellenpositionen. Dies ist ein Raster oder ein Feature-Dataset, das die Zellen oder Positionen identifiziert, für die die euklidische Entfernung jeder Ausgabezellenposition berechnet wird. Bei Rastern kann der Eingabetyp ein Ganzzahl- oder Gleitkomma-Raster sein. | Raster Layer | Feature Layer |
maximum_distance (optional) | Definiert den Schwellenwert, den die akkumulativen Entfernungswerte nicht überschreiten dürfen. Wenn ein akkumulativer euklidischer Entfernungswert diesen Wert überschreitet, lautet der Ausgabewert für die Zellenposition "NoData". Die Standardentfernung ist bis zur Kante des Ausgabe-Rasters. | Double |
cell_size (optional) | Die Zellengröße im zu erstellenden Ausgabe-Raster. Dies ist der Wert in der Umgebungseinstellung, sofern die Zellengröße explizit festgelegt wurde. Wenn die Standardzellengröße in der Umgebung nicht festgelegt ist, hängt diese davon ab, ob es sich bei den Eingabequelldaten um ein Raster oder ein Feature handelt:
| Analysis Cell Size |
out_direction_raster (optional) | Das Ausgabe-Raster für die euklidische Richtung. Das Richtungs-Raster enthält die berechnete Richtung in Grad, in der sich jeder Zellenmittelpunkt von dem Mittelpunkt der nächsten Quellenzelle befindet. Der Wertebereich reicht von 0 Grad bis 360 Grad, wobei 0 Grad für die Quellenzellen reserviert ist. In östlicher Richtung (rechts) befindet sich der 90-Grad-Winkel, und die Werte nehmen im Uhrzeigersinn zu (180 Grad ist Süden, 270 Grad ist Westen und 360 Grad ist Norden). Das Ausgabe-Raster ist ganzzahlig. | Raster Dataset |
Rückgabewert
Name | Erläuterung | Datentyp |
out_distance_raster | Das Ausgabe-Raster für die euklidische Entfernung: Das Entfernungs-Raster gibt für jede Zelle die euklidische Entfernung zur nächsten Quellenzelle, zum nächsten Satz von Quellenzellen oder zur nächsten Quellenposition an. Das Ausgabe-Raster ist ein Gleitkomma-Raster. | Raster |
Codebeispiel
Das folgende Skript im Python-Fenster veranschaulicht die Verwendung des Werkzeugs EuclideanDistance.
import arcpy
from arcpy import env
from arcpy.sa import *
env.workspace = "C:/sapyexamples/data"
outEucDistance = EucDistance("rec_sites.shp", 5000, 5,
"c:/sapyexamples/output/EucDirOut")
outEucDistance.save("C:/sapyexamples/output/eucdist")
Berechnet für jede Zelle die geradlinige Entfernung zur nächstgelegenen Quelle.
# Name: EucDistance_Ex_02.py
# Description: Calculates for each cell the Euclidean distance to the nearest source.
# 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
inSourceData = "rec_sites.shp"
maxDistance = 4000
cellSize = 4
outDirectionRaster = "C:/sapyexamples/output/eucdirect"
# Check out the ArcGIS Spatial Analyst extension license
arcpy.CheckOutExtension("Spatial")
# Execute EucDistance
outEucDistance = EucDistance(inSourceData, maxDistance, cellSize, outDirectionRaster)
# Save the output
outEucDistance.save("C:/sapyexamples/output/eucdist")