Skyline (3D Analyst)

Zusammenfassung

Generiert eine Line- oder Multipatch-Feature-Class, die die Ergebnisse einer Skyline- oder Silhouettenanalyse enthält.

Weitere Informationen zur Funktionsweise von "Skyline"

Abbildung

Abbildung: Werkzeug "Skyline"

Verwendung

  • Mit dem Werkzeug Skyline können Feature-Silhouetten erstellt werden, die mit dem Werkzeug Skyline-Barriere in Schattenvolumen extrudiert werden können.

  • Dem Parameterwert für die Ausgabe-Feature-Class mit den Skylines werden die folgenden Felder hinzugefügt:

    • OBSV_PT_ID: Die FID des Beobachterpunktes, der zum Erstellen dieser Skyline verwendet wird
    • ORIGFTR_ID– Die FID des Features, z. B. ein Gebäude.
  • Dem Parameterwert für die Ausgabe-Feature-Class mit den Silhouetten werden die folgenden Felder hinzugefügt:

    • OBSV_PT_ID: Die FID des Beobachterpunktes, der zum Erstellen dieser Silhouette verwendet wird
    • ORIGFTR_ID: Die FID des ursprünglichen Features, z. B. ein Gebäude, das durch diese Silhouette dargestellt wird
    • DIR_VECT_X: Die X-Komponente des Einheitenvektors, der die Richtung der Lichtstrahlen von der Position des Beobachters darstellt
    • DIR_VECT_Y: Die Y-Komponente des Einheitenvektors, der die Richtung der Lichtstrahlen von der Position des Beobachters darstellt
    • DIR_VECT_Z: Die Z-Komponente des Einheitenvektors, der die Richtung der Lichtstrahlen von der Position des Beobachters darstellt
    • FEAT_CTR_X: Die X-Komponente des Mittelpunktes des Envelope des ursprünglichen Features (z. B. eines Gebäudes)
    • FEAT_CTR_Y: Die Y-Komponente des Mittelpunktes des Feature-Envelope
    • FEAT_CTR_Z: Die Z-Komponente des Mittelpunktes des Feature-Envelope
    • BHND_CTR_X: Die X-Komponente des Mittelpunktes des Feature-Envelope – hinter das Feature verschoben
    • BHND_CTR_Y: Die Y-Komponente des Mittelpunktes des Feature-Envelope – hinter das Feature verschoben
    • BHND_CTR_Z: Die Z-Komponente des Mittelpunktes des Feature-Envelope – hinter das Feature verschoben
    • USED_PARLL: Ob die Silhouette mit parallelen Lichtstrahlen erstellt wurde (1 für ja und 0 für nein)
    • MADE_VERT: Ob die Silhouette vertikal und nicht senkrecht zu den Lichtstrahlen erstellt wurde (1 für ja und 0 für nein)
    • MOVED_BHND: Ob die Silhouette hinter das Feature verschoben wurde, anstatt am Mittelpunkt zu bleiben (1 für ja und 0 für nein)
  • Die Korrektur der atmosphärischen Lichtbrechung und die Korrektur der Erdkrümmung werden nur angewendet, wenn der Parameterwert für die Eingabeoberfläche ein Raster-Dataset ist. Wenn Ihre Oberfläche durch ein TIN- , Terrain- oder LAS-Dataset definiert wird, verwenden Sie eines der folgenden Werkzeuge, um Ihre Daten in ein Raster zu exportieren:

Parameter

BeschriftungErläuterungDatentyp
Eingabe-Beobachterpunkt-Features

Die 3D-Punkte, die Beobachter darstellen. Jedes Feature verfügt über eine eigene Ausgabe.

Feature Layer
Ausgabe-Feature-Class

Die 3D-Features, die entweder Linien sind, die die Skyline darstellen, oder die Multipatches sind, die Silhouetten darstellen.

Feature Class
Eingabe-Oberfläche
(optional)

Die topografische Oberfläche, die zum Definieren des Horizonts verwendet wird. Wenn keine Oberfläche bereitgestellt wird, wird eine virtuelle Oberfläche verwendet, die durch die Parameterwerte für Radius der virtuellen Oberfläche und Höhe der virtuellen Oberfläche definiert wird.

LAS Dataset Layer; Mosaic Layer; Raster Layer; TIN Layer; Terrain Layer
Radius der virtuellen Oberfläche
(optional)

Der Radius der virtuellen Oberfläche, die zum Definieren des Horizonts herangezogen wird, wenn keine topografische Oberfläche bereitgestellt wird. Die Standardeinstellung ist 1.000 Meter.

Linear Unit
Höhe der virtuellen Oberfläche
(optional)

Die Höhe der virtuellen Oberfläche, die zum Definieren des Horizonts statt einer tatsächlichen Oberfläche verwendet wird. Dieser Parameter wird ignoriert, wenn eine tatsächliche Oberfläche zur Verfügung steht. Die Standardeinstellung ist 0.

Linear Unit
Eingabe-Features
(optional)

Die zur Bestimmung der Skyline verwendeten Features. Wenn keine Features angegeben werden, besteht die Skyline lediglich aus der Horizontlinie, die von der topografischen oder virtuellen Oberfläche festgelegt wird.

Feature Layer
Feature-Detaillierungsebene
(optional)

Gibt die Detaillierungsebene an, mit der die einzelnen Features untersucht werden.

  • Alle DetailsJede Kante innerhalb des Features wird in der Skyline-Analyse berücksichtigt (nur Kanten von Dreiecken und äußeren Ringen werden berücksichtigt). Dieser zeitaufwändige Vorgang ist besonders präzise. Dies ist die Standardeinstellung.
  • Konvexer FootprintDie Skyline-Analyse verwendet den oberen Umfang der konvexen Hülle jedes Feature-Footprints, das auf die Höhe des höchsten Stützpunktes innerhalb des Features extrudiert ist.
  • EnvelopeDie Skyline-Analyse verwendet den Umfang des dreidimensionalen Feature-Envelopes. Dieses ist das schnellste Verfahren.
String
Von Azimut
(optional)

Der Azimut, in Grad, von dem die Skyline-Analyse startet.

Die Analyse beginnt am Beobachterpunkt und bewegt sich nach rechts, vom Parameterwert Von Azimut bis Bis Azimut. Der Wert muss größer als -360 und kleiner als 360 sein. Die Standardeinstellung ist 0.

Double; Field
Bis Azimut
(optional)

Die Richtung, in Grad, in der die Skyline-Analyse abgeschlossen wird.

Die Analyse beginnt am Beobachterpunkt und bewegt sich nach rechts, vom Parameterwert Von Azimut bis Bis Azimut. Der Wert darf maximal 360 Grad größer als der Parameterwert für Von Azimut sein. Die Standardeinstellung ist 360.

Double; Field
Azimut-Schrittgröße
(optional)

Das Winkelintervall, in Grad, in dem der Horizont ausgewertet wird, während die Skyline-Analyse zwischen dem Parameterwert Von Azimut und Bis Azimut durchgeführt wird. Der Wert darf nicht größer als der Parameterwert für Bis Azimut minus dem Parameterwert für Von Azimut sein. Die Standardeinstellung ist 1.

Double; Field
Maximaler Horizontradius
(optional)

Die maximale Entfernung von der Beobachterposition, in der nach einem Horizont gesucht werden soll. Der Wert Null gibt an, dass keine Begrenzung vorgenommen wird. Die Standardeinstellung ist 0.

Linear Unit
Skyline segmentieren
(optional)

Gibt an, ob die resultierende Skyline über ein Feature für jeden Beobachterpunkt verfügt oder jede Skyline des Beobachters durch die eindeutigen Elemente segmentiert wird, die zu der Skyline beitragen. Dieser Parameter ist nur aktiv, wenn ein Eingabe-Multipatch angegeben wurde.

Beim Erstellen von Silhouetten gibt dieser Parameter an, ob abweichende Strahlen verwendet werden sollen. Wenn Sonnenschatten verwendet werden sollen, deaktivieren Sie den Parameter.

  • Deaktiviert: Jedes Skyline-Feature stellt einen Beobachter dar. Dies ist die Standardeinstellung.
  • Aktiviert: Jede Skyline des Beobachters wird durch die eindeutigen Elemente segmentiert, die zu der Skyline beitragen.
Boolean
Auf Prozentsatz skalieren
(optional)

Der Prozentsatz des ursprünglichen vertikalen Winkels (Winkel über dem Horizont oder Höhenwinkel) oder der Höhe, bei dem jeder Skyline-Stützpunkt platziert werden soll. Wenn der Wert 0 oder 100 verwendet wird, findet keine Skalierung statt. Die Standardeinstellung ist 100.

Double
Skalieren nach
(optional)

Gibt an, wie die Skalierung festgelegt wird.

  • Vertikaler Winkel vom BeobachterDie Skalierung wird basierend auf dem vertikalen Winkel der einzelnen Stützpunkte im Verhältnis zum Beobachterpunkt durchgeführt. Dies ist die Standardeinstellung.
  • HöheDie Skalierung wird basierend auf der Höhe der einzelnen Stützpunkte im Verhältnis zum Beobachterpunkt durchgeführt.
String
Skalierungsmethode
(optional)

Gibt den Stützpunkt an, der für die Skalierungsberechnung verwendet wird.

  • Skyline-MaximumStützpunkte werden im Verhältnis zum vertikalen Winkel (oder zur Höhe) des Stützpunktes mit dem höchsten vertikalen Winkel (oder der größten Höhe) skaliert. Dies ist die Standardeinstellung.
  • Jeder StützpunktStützpunkte werden im Verhältnis zum ursprünglichen vertikalen Winkel (oder zur Höhe) jedes Stützpunktes skaliert.
String
Krümmung verwenden
(optional)

Gibt an, ob beim Erstellen der Kammlinie die Erdkrümmung verwendet wird. Diese Option ist nur verfügbar, wenn für den Parameter Eingabeoberfläche eine Raster-Oberfläche angegeben wird.

  • Deaktiviert: Die Erdkrümmung wird nicht verwendet. Dies ist die Standardeinstellung.
  • Aktiviert: Die Erdkrümmung wird verwendet.
Boolean
Brechung verwenden
(optional)

Gibt an, ob die atmosphärische Lichtbrechung angewendet werden soll, wenn eine Kammlinie aus einer Eingabe-Oberfläche generiert wird. Diese Option ist nur verfügbar, wenn für den Parameter Eingabeoberfläche eine Raster-Oberfläche angegeben wird.

  • Deaktiviert: Die atmosphärische Lichtbrechung wird nicht angewendet. Dies ist die Standardeinstellung.
  • Aktiviert: Die atmosphärische Lichtbrechung wird angewendet.
Boolean
Brechungsfaktor
(optional)

Der Brechungskoeffizient, der verwendet wird, wenn die atmosphärische Lichtbrechung angewendet wird. Die Standardeinstellung ist 0.13.

Double
Auflösung der Pyramidenebene
(optional)

Die verwendete Auflösung der Z-Toleranz oder der Kachelung der Terrain-Pyramidenebene. Der Standardwert ist 0, also volle Auflösung.

Double
Silhouetten erstellen
(optional)

Legt fest, ob die Ausgabe-Features Skylines oder Silhouetten darstellen.

  • Deaktiviert: Die Ausgabe wird als Polylinien-Features erstellt, die die Skyline darstellen. Dies ist die Standardeinstellung.
  • Aktiviert: Die Ausgabe wird als Multipatch-Features erstellt, die Silhouetten darstellen.
Boolean

arcpy.ddd.Skyline(in_observer_point_features, out_feature_class, {in_surface}, {virtual_surface_radius}, {virtual_surface_elevation}, {in_features}, {feature_lod}, {from_azimuth_value_or_field}, {to_azimuth_value_or_field}, {azimuth_increment_value_or_field}, {max_horizon_radius}, {segment_skyline}, {scale_to_percent}, {scale_according_to}, {scale_method}, {use_curvature}, {use_refraction}, {refraction_factor}, {pyramid_level_resolution}, {create_silhouettes})
NameErläuterungDatentyp
in_observer_point_features

Die 3D-Punkte, die Beobachter darstellen. Jedes Feature verfügt über eine eigene Ausgabe.

Feature Layer
out_feature_class

Die 3D-Features, die entweder Linien sind, die die Skyline darstellen, oder die Multipatches sind, die Silhouetten darstellen.

Feature Class
in_surface
(optional)

Die topografische Oberfläche, die zum Definieren des Horizonts verwendet wird. Wenn keine Oberfläche bereitgestellt wird, wird eine virtuelle Oberfläche verwendet, die durch die Parameterwerte für virtual_surface_radius und virtual_surface_elevation definiert wird.

LAS Dataset Layer; Mosaic Layer; Raster Layer; TIN Layer; Terrain Layer
virtual_surface_radius
(optional)

Der Radius der virtuellen Oberfläche, die zum Definieren des Horizonts herangezogen wird, wenn keine topografische Oberfläche bereitgestellt wird. Die Standardeinstellung ist 1.000 Meter.

Linear Unit
virtual_surface_elevation
(optional)

Die Höhe der virtuellen Oberfläche, die zum Definieren des Horizonts statt einer tatsächlichen Oberfläche verwendet wird. Dieser Parameter wird ignoriert, wenn eine tatsächliche Oberfläche zur Verfügung steht. Die Standardeinstellung ist 0.

Linear Unit
in_features
[in_features,...]
(optional)

Die zur Bestimmung der Skyline verwendeten Features. Wenn keine Features angegeben werden, besteht die Skyline lediglich aus der Horizontlinie, die von der topografischen oder virtuellen Oberfläche festgelegt wird.

Feature Layer
feature_lod
(optional)

Gibt die Detaillierungsebene an, mit der die einzelnen Features untersucht werden.

  • FULL_DETAILJede Kante innerhalb des Features wird in der Skyline-Analyse berücksichtigt (nur Kanten von Dreiecken und äußeren Ringen werden berücksichtigt). Dieser zeitaufwändige Vorgang ist besonders präzise. Dies ist die Standardeinstellung.
  • CONVEX_FOOTPRINTDie Skyline-Analyse verwendet den oberen Umfang der konvexen Hülle jedes Feature-Footprints, das auf die Höhe des höchsten Stützpunktes innerhalb des Features extrudiert ist.
  • ENVELOPEDie Skyline-Analyse verwendet den Umfang des dreidimensionalen Feature-Envelopes. Dieses ist das schnellste Verfahren.
String
from_azimuth_value_or_field
(optional)

Der Azimut, in Grad, von dem die Skyline-Analyse startet.

Die Analyse beginnt am Beobachterpunkt und bewegt sich nach rechts, vom Parameterwert from_azimuth_value_or_field bis to_azimuth_value_or_field. Der Wert muss größer als -360 und kleiner als 360 sein. Die Standardeinstellung ist 0.

Double; Field
to_azimuth_value_or_field
(optional)

Die Richtung, in Grad, in der die Skyline-Analyse abgeschlossen wird.

Die Analyse beginnt am Beobachterpunkt und bewegt sich nach rechts, vom Parameterwert from_azimuth_value_or_field bis to_azimuth_value_or_field. Der Wert darf maximal 360 Grad größer als der Parameterwert für from_azimuth_value_or_field sein. Die Standardeinstellung ist 360.

Double; Field
azimuth_increment_value_or_field
(optional)

Das Winkelintervall, in Grad, in dem der Horizont ausgewertet wird, während die Skyline-Analyse zwischen dem Parameterwert für from_azimuth_value_or_field und dem Parameterwert für to_azimuth_value_or_field durchgeführt wird. Der Wert darf nicht größer als der Parameterwert für to_azimuth_value_or_field minus dem Parameterwert für from_azimuth_value_or_field sein. Die Standardeinstellung ist 1.

Double; Field
max_horizon_radius
(optional)

Die maximale Entfernung von der Beobachterposition, in der nach einem Horizont gesucht werden soll. Der Wert Null gibt an, dass keine Begrenzung vorgenommen wird. Die Standardeinstellung ist 0.

Linear Unit
segment_skyline
(optional)

Gibt an, ob die resultierende Skyline über ein Feature für jeden Beobachterpunkt verfügt oder jede Skyline des Beobachters durch die eindeutigen Elemente segmentiert wird, die zu der Skyline beitragen. Dieser Parameter ist nur aktiviert, wenn ein Eingabe-Multipatch angegeben wurde.

Beim Erstellen von Silhouetten gibt dieser Parameter an, ob abweichende Strahlen verwendet werden sollen. Wenn Sonnenschatten verwendet werden sollen, legen Sie den Parameter auf NO_SEGMENT_SKYLINE fest.

  • NO_SEGMENT_SKYLINEJedes Skyline-Feature stellt einen Beobachter dar. Dies ist die Standardeinstellung.
  • SEGMENT_SKYLINEJede Skyline des Beobachters wird durch die eindeutigen Elemente segmentiert, die zu der Skyline beitragen.
Boolean
scale_to_percent
(optional)

Der Prozentsatz des ursprünglichen vertikalen Winkels (Winkel über dem Horizont oder Höhenwinkel) oder der Höhe, bei dem jeder Skyline-Stützpunkt platziert werden soll. Wenn der Wert 0 oder 100 verwendet wird, findet keine Skalierung statt. Die Standardeinstellung ist 100.

Double
scale_according_to
(optional)

Gibt an, wie die Skalierung festgelegt wird.

  • VERTICAL_ANGLEDie Skalierung wird basierend auf dem vertikalen Winkel der einzelnen Stützpunkte im Verhältnis zum Beobachterpunkt durchgeführt. Dies ist die Standardeinstellung.
  • ELEVATIONDie Skalierung wird basierend auf der Höhe der einzelnen Stützpunkte im Verhältnis zum Beobachterpunkt durchgeführt.
String
scale_method
(optional)

Gibt den Stützpunkt an, der für die Skalierungsberechnung verwendet wird.

  • SKYLINE_MAXIMUMStützpunkte werden im Verhältnis zum vertikalen Winkel (oder zur Höhe) des Stützpunktes mit dem höchsten vertikalen Winkel (oder der größten Höhe) skaliert. Dies ist die Standardeinstellung.
  • EACH_VERTEXStützpunkte werden im Verhältnis zum ursprünglichen vertikalen Winkel (oder zur Höhe) jedes Stützpunktes skaliert.
String
use_curvature
(optional)

Gibt an, ob beim Erstellen der Kammlinie aus einer funktionalen Oberfläche die Erdkrümmung verwendet wird. Diese Option ist nur verfügbar, wenn für den Parameter in_surface eine Raster-Oberfläche angegeben wird.

  • CURVATUREDie Erdkrümmung wird verwendet.
  • NO_CURVATUREDie Erdkrümmung wird nicht verwendet. Dies ist die Standardeinstellung.
Boolean
use_refraction
(optional)

Gibt an, ob die atmosphärische Lichtbrechung angewendet werden soll, wenn eine Kammlinie aus einer Oberflächenfunktion generiert wird. Diese Option ist nur verfügbar, wenn für den Parameter in_surface eine Raster-Oberfläche angegeben wird.

  • NO_REFRACTIONDie atmosphärische Lichtbrechung wird nicht angewendet. Dies ist die Standardeinstellung.
  • REFRACTIONDie atmosphärische Lichtbrechung wird angewendet.
Boolean
refraction_factor
(optional)

Der Brechungskoeffizient, der verwendet wird, wenn die atmosphärische Lichtbrechung angewendet wird. Die Standardeinstellung ist 0.13.

Double
pyramid_level_resolution
(optional)

Die verwendete Auflösung der Z-Toleranz oder der Kachelung der Terrain-Pyramidenebene. Der Standardwert ist 0, also volle Auflösung.

Double
create_silhouettes
(optional)

Legt fest, ob die Ausgabe-Features Skylines oder Silhouetten darstellen.

  • NO_CREATE_SILHOUETTESDie resultierenden Polylinien-Features stellen die Skyline dar. Dies ist die Standardeinstellung.
  • CREATE_SILHOUETTESDie resultierenden Multipatch-Features stellen Silhouetten dar.
Boolean

Codebeispiel

Skyline: Beispiel 1 (Python-Fenster)

Anhand des folgenden Beispiels wird die Verwendung dieses Werkzeugs im Python-Fenster veranschaulicht.

arcpy.env.workspace = "C:/data"
arcpy.Skyline_3d("observers.shp", "skyline_output.shp", "sample.gdb/featuredataset/terrain")
Skyline: Beispiel 2 (eigenständiges Skript)

Im folgenden Beispiel wird die Verwendung dieses Werkzeugs in einem eigenständigen Python-Skript veranschaulicht.

'''****************************************************************************
Name: Skyline Example
Description: This script demonstrates how to use the 
             Skyline tool.
****************************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'

# Set Local Variables
inPts = "observers.shp"

# Make sure output has a unique name
outFC = arcpy.CreateUniqueName("skyline_output.shp")
inSurface = "sample.gdb/featuredataset/terrain"
obstructionFCs = "buildings.shp; billboards.shp"
surfRad = "1000 meters"
surfElev = "100 meters"
LOD = "FULL_DETAIL"
fromAzim = 0
toAzim = 360
incAzim = 1
maxHorizRad = 0
segSky = "SEGMENT_SKYLINE"
scale = 100
scaleAcc = "ELEVATION"
scaleMethod = "SKYLINE_MAXIMUM"

# Execute Skyline
arcpy.Skyline_3d(inPts, outFC, inSurface, surfRad, surfElev, 
                 obstructionFCs, LOD, fromAzim, toAzim, incAzim, 
                 maxHorizRad, segSky, scale, scaleAcc, scaleMethod)

Lizenzinformationen

  • Basic: Erfordert 3D Analyst
  • Standard: Erfordert 3D Analyst
  • Advanced: Erfordert 3D Analyst

Verwandte Themen