Sichtfeld (Spatial Analyst)
Zusammenfassung
Hiermit werden die Positionen auf der Raster-Oberfläche bestimmt, die verschiedene Beobachter-Features sehen können.
Verwendung
-
Das Bestimmen von Beobachterpunkten ist ein verarbeitungsintensiver Prozess. Die Verarbeitungsdauer hängt von der Auflösung ab. Im Rahmen vorbereitender Untersuchungen können Sie eine gröbere Zellengröße wählen, um die Anzahl der Zellen in der Eingabe zu reduzieren. Verwenden Sie das Raster in voller Auflösung, wenn die endgültigen Ergebnisse erstellt werden sollen.
Wenn das Eingabe-Raster aufgrund von Fehlern bei der Referenzpunkterfassung nicht erwünschte Informationen enthält, können Sie das Raster mit einem Tiefpass-Filter wie der Mittelwertoption der Funktion Focal Statistics glätten, bevor Sie dieses Werkzeug ausführen.
-
Die Sichtbarkeit aller Zellzentren wird bestimmt, indem der Höhenwinkel zum Zellzentrum mit dem Höhenwinkel zum lokalen Horizont verglichen wird. Der lokale Horizont wird durch Untersuchen des Zwischenterrains zwischen dem Beobachterpunkt und dem aktuellen Zellzentrum berechnet. Wenn der Punkt über dem lokalen Horizont liegt, gilt er als sichtbar.
Syntax
Parameter | Erläuterung | Datentyp |
in_raster |
Das Eingabe-Oberflächen-Raster. | Raster Layer |
in_observer_features |
Die Feature-Class, die die Beobachterpositionen identifiziert. Bei der Eingabe kann es sich um Punkt- oder Polylinien-Features handeln. | Feature Layer |
z_factor (optional) | Anzahl der XY-Geländeeinheiten in einer Z-Oberflächeneinheit. Durch den Z-Faktor werden die Maßeinheiten der Z-Einheiten angepasst, falls sie sich von den XY-Einheiten der Eingabe-Oberfläche unterscheiden. Die Z-Werte der Eingabe-Oberfläche werden bei der Berechnung der endgültigen Ausgabe-Oberfläche mit dem Z-Faktor multipliziert. Falls die XY-Einheiten und die Z-Einheiten in denselben Maßeinheiten ausgedrückt sind, lautet der Z-Faktor 1. Hierbei handelt es sich um die Standardeinstellung. Wenn die XY- und Z-Einheiten unterschiedliche Maßeinheiten aufweisen, muss der Z-Faktor entsprechend festgelegt werden, da andernfalls falsche Ergebnisse erzielt werden. Beispiel: Wenn die Z-Einheiten in Fuß und die XY-Einheiten in Metern angegeben sind, müssen Sie den Z-Faktor "0,3048" wählen, um die Z-Einheiten von Fuß in Meter umzurechnen (1 Fuß = 0,3048 Meter). | Double |
curvature_correction (optional) |
Ermöglicht eine Korrektur der Erdkrümmung.
| Boolean |
refractivity_coefficient (optional) |
Koeffizient der Brechung sichtbaren Lichts in der Atmosphäre. Der Standardwert ist 0,13. | Double |
Rückgabewert
Name | Erläuterung | Datentyp |
out_raster | Das Ausgabe-Raster. Die Ausgabe zeichnet nur auf, wie oft jede Zellenposition im Eingabe-Oberflächen-Raster von den Eingabe-Beobachterpunkten (bzw. Stützpunkten für Polylinien) gesehen werden kann. Dieser Wert wird in der Attributtabelle des Ausgabe-Rasters im Feld "VALUE" aufgezeichnet. | Raster |
Codebeispiel
In diesem Beispiel werden die Oberflächenpositionen bestimmt, die verschiedene in einem Shapefile definierte Beobachter sehen können.
import arcpy from arcpy import env from arcpy.sa import * env.workspace = "C:/sapyexamples/data" outViewshed = Viewshed("elevation","observers.shp",2,"CURVED_EARTH",0.15) outViewshed.save("C:/sapyexamples/output/outvwshd01")
In diesem Beispiel werden die Oberflächenpositionen bestimmt, die verschiedene in einem Shapefile definierte Beobachter sehen können.
# Name: Viewshed_Ex_02.py # Description: Determines the raster surface locations visible to a set of # observer features. # 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 inRaster = "elevation" inObserverFeatures = "observers.shp" zFactor = 2 useEarthCurvature = "CURVED_EARTH" refractivityCoefficient = 0.15 # Check out the ArcGIS Spatial Analyst extension license arcpy.checkOutExtension("Spatial") # Execute Viewshed outViewshed = Viewshed(inRaster, inObserverFeatures, zFactor, useEarthCurvature, refractivityCoefficient) # Save the output outViewshed.save("C:/sapyexamples/output/outvwshd02")