Mit der Spatial Analyst-Lizenz verfügbar.
Mit der 3D Analyst-Lizenz verfügbar.
Zusammenfassung
Hiermit werden die Positionen auf der Raster-Oberfläche bestimmt, die verschiedene Beobachter-Features sehen können.
Abbildung
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 und Sie über die ArcGIS Spatial Analyst-Erweiterung verfügen, können Sie das Raster mit einem Tiefpassfilter wie der Option "Mittelwert" 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.
Das Werkzeug stellt ein optionales Ausgabe-Raster der Ebene über Bodenoberfläche (AGL, Above Ground Level) bereit. Jede Zelle des AGL-Ausgabe-Rasters erfasst die Mindesthöhe, die dieser Zelle hinzugefügt werden muss, um sie zumindest durch einen Beobachter sichtbar zu machen.
Wenn die Eingabe-Beobachter-Features mehrere Beobachter enthalten, ist der Ausgabewert das Minimum der AGL-Werte der einzelnen Beobachter.
Wenn das Eingabe-Raster neu berechnet werden muss, wird die bilineare Technik verwendet. Ein Eingabe-Raster muss beispielsweise dann neu berechnet werden, wenn das Ausgabe-Koordinatensystem, die Ausdehnung oder die Zellengröße sich von dem entsprechenden Wert der Eingabe unterscheidet.
Syntax
arcpy.ddd.Viewshed(in_raster, in_observer_features, out_raster, {z_factor}, {curvature_correction}, {refractivity_coefficient}, {out_agl_raster})
Parameter | Erklärung | 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 |
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. Die Beobachtungshäufigkeit wird im Element VALUE in der Attributtabelle des Ausgabe-Rasters erfasst. | Raster Dataset |
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. Dies ist 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 |
out_agl_raster (optional) | Das Ausgabe-Raster der Ebene über Bodenoberfläche (AGL). Das AGL-Ergebnis ist ein Raster, bei dem jeder Zellenwert der Mindesthöhe entspricht, die einer ansonsten nicht sichtbaren Zelle hinzugefügt werden muss, um sie zumindest durch einen Beobachter sichtbar zu machen. Zellen, die bereits sichtbar waren, haben in diesem Ausgabe-Raster den Wert 0. | Raster Dataset |
Codebeispiel
Viewshed – Beispiel 1 (Python-Fenster)
In diesem Beispiel werden die Oberflächenpositionen bestimmt, die verschiedene in einem Shapefile definierte Beobachter sehen können.
import arcpy
from arcpy import env
env.workspace = "C:/data"
arcpy.Viewshed_3d("elevation", "observers.shp", "C:/output/outvwshd01", 2,
"CURVED_EARTH", 0.15)
Viewshed – Beispiel 2 (eigenständiges Skript)
In diesem Beispiel werden die Oberflächenpositionen bestimmt, die verschiedene in einem Shapefile definierte Beobachter sehen können.
# Name: Viewshed_3d_Ex_02.py
# Description: Determines the raster surface locations visible to a set of
# observer features.
# Requirements: 3D Analyst Extension
# Import system modules
import arcpy
from arcpy import env
# Set environment settings
env.workspace = "C:/data"
# Set local variables
inRaster = "elevation"
inObserverFeatures = "observers.shp"
outViewshed = "C:/output/outvwshd02"
zFactor = 2
useEarthCurvature = "CURVED_EARTH"
refractivityCoefficient = 0.15
# Check out the ArcGIS 3D Analyst extension license
arcpy.CheckOutExtension("3D")
# Execute Viewshed
arcpy.Viewshed_3d(inRaster, inObserverFeatures, outViewshed, zFactor,
useEarthCurvature, refractivityCoefficient)
Umgebungen
Lizenzinformationen
- Basic: Erfordert 3D Analyst oder Spatial Analyst
- Standard: Erfordert 3D Analyst oder Spatial Analyst
- Advanced: Erfordert 3D Analyst oder Spatial Analyst