Z-Informationen hinzufügen (3D Analyst)

Zusammenfassung

Dient zum Hinzufügen von Informationen zu Höheneigenschaften der Features in einer Z-aktivierten Feature-Class.

Jedes 3D-Shape wird untersucht und die ausgewählten Eigenschaften werden an die Attributtabelle der Eingabe-Feature-Class angefügt. Die Ausgabeoptionen ändern sich auf Grundlage der Geometrie des Features.

Verwendung

  • Die folgenden Z-Eigenschaften sind verfügbar:

    Feature-GeometrieZ-Eigenschaften

    Punkt

    Z-Wert des Punktes.

    Multipoint

    Punktanzahl und minimale, maximale und mittlere Z-Werte aller Punkte im Multipoint-Datensatz.

    Polylinie und Polygon

    Stützpunktanzahl und 3D-Entfernung der Linie oder des Polygonumfangs.

    Minimaler, maximaler und mittlerer Z-Wert sowie Neigung der Linie oder Polygonumfang.

    Multipatch

    Oberfläche und Volumen eines geschlossenen Multipatch.

    Minimaler, maximaler und mittlerer Z-Wert sowie Neigung entlang der Multipatch-Oberfläche.

  • Die Neigung wird als Prozentwert oder Gefälle zurückgegeben und wird für jeden Geometrietyp, der diese Eigenschaft unterstützt, anders berechnet.

    • Neigungswerte für Linien-Features und Polygonumfang werden entlang jedes Segments berechnet:
      • Die minimale Neigung wird aus dem Segment ermittelt, dessen Wert 0 am nächsten ist bzw. dem horizontalen Gefälle.
      • Die maximale Neigung wird von dem Segment abgerufen, das den höchsten berechneten Wert aufweist.
      • Die durchschnittliche Neigung wird abgerufen, indem die durchschnittliche Neigung aller Liniensegmente ermittelt wird, nachdem die einzelnen Segmente nach ihrer 3D-Länge gewichtet wurden. Dies führt zu längeren Segmenten, die einen größeren Einfluss auf kürzere Segmente haben.
    • Neigungswerte für Multipatch-Features werden für die einzelnen Dreiecksflächen berechnet.
      • Die Mindestneigung wird von der Fläche abgerufen, deren Wert 0 am nächsten ist bzw. dem horizontalen Gefälle.
      • Die Maximalneigung wird von der Fläche mit dem höchsten Wert abgerufen.
      • Die durchschnittliche Neigung wird abgerufen, indem die durchschnittliche Neigung aller Dreiecksflächen ermittelt wird, nachdem die einzelnen Segmente nach ihrer dreidimensionalen Fläche gewichtet wurden. Dies führt zu größeren Flächen, die im Gegensatz zu kleineren Flächen einen größeren Einfluss auf den sich ergebenden Wert haben.
    • Neigungswerte für Polygon-Features werden entlang den Kanten berechnet, wobei die gleiche Technik wie für Liniensegmente verwendet wird.
  • Das Volumen kann nur für geschlossene Multipatches berechnet werden. Bei einem geöffneten Multipatch-Feature wird der Wert 0,0 zurückgegeben. Auf der Solaris-Plattform wird aktuell aufgrund einer Entwurfseinschränkung verhindert, dass mit dem Werkzeug bestimmt werden kann, ob ein Multipatch geschlossen ist. Dies führt dazu, dass beim Berechnen des Volumens von Multipatches davon ausgegangen wird, dass sie geschlossen sind.

Syntax

arcpy.3d.AddZInformation(in_feature_class, out_property, {noise_filtering})
ParameterErklärungDatentyp
in_feature_class

Die zu verarbeitenden Eingabe-Features.

Feature Layer
out_property
[out_property,...]

Die Z-Eigenschaften, die der Attributtabelle der Eingabe-Feature-Class hinzugefügt werden. Die folgenden Optionen sind möglich:

  • ZDer erhöhte Punkt eines einzelnen Punkt-Features.
  • POINT_COUNTDie Anzahl der Punkte in den einzelnen Multipoint-Features.
  • Z_MINDer jeweils niedrigste Z-Wert in einem Multipoint-, Polylinien-, Polygon- oder Multipatch-Feature.
  • Z_MAXDer jeweils höchste Z-Wert in einem Multipoint-, Polylinien-, Polygon- oder Multipatch-Feature.
  • Z_MEANDer jeweilige durchschnittliche Z-Wert in einem Multipoint-, Polylinien-, Polygon- oder Multipatch-Feature.
  • LENGTH_3DDie dreidimensionale Länge der einzelnen Polylinien- oder Polygon-Features.
  • SURFACE_AREAGesamtoberfläche eines Multipatch-Features.
  • VERTEX_COUNTDie Gesamtzahl der Stützpunkte in den einzelnen Polylinien- oder Polygon-Features.
  • MIN_SLOPEDer niedrigste berechnete Neigungswert für die einzelnen Polylinien-, Polygon- oder Multipatch-Features.
  • MAX_SLOPEDer höchste berechnete Neigungswert für die einzelnen Polylinien-, Polygon- oder Multipatch-Features.
  • AVG_SLOPEDer durchschnittliche berechnete Neigungswert für die einzelnen Polylinien-, Polygon- oder Multipatch-Features.
  • VOLUMEDas von den einzelnen Multipacht-Features umschlossene Raumvolumen.
String
noise_filtering
(optional)

Ein optionaler numerischer Wert, der verwendet wird, um Teile von Features aus den resultierenden Berechnungen auszuschließen. Dies kann hilfreich sein, wenn die 3D-Eingabe relativ kleine Features mit extremen Neigungen enthält, die möglicherweise die statistischen Ergebnisse verfälschen. Wenn die linearen Einheiten der 3D-Eingabe Meter sind, führt die Angabe eines Wertes von 0,001 zu einer Ausschließung von Linien oder Polygon-Kanten, die kürzer sind als 0,001 Meter. Bei Multipatch-Features führt derselbe Wert zu einer Ausschließung der zugehörigen Unterteile, deren Bereich kleiner als 0,001 Quadratmeter ist. Dieser Parameter gilt nicht für Punkt- und Multipoint-Features.

String

Abgeleitete Ausgabe

NameErklärungDatentyp
output_feature_class

Die aktualisierte Z-aktivierte Feature-Class.

Feature-Layer

Codebeispiel

AddZInformation – Beispiel 1 (Python-Fenster)

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

arcpy.env.workspace = 'C:/data'
arcpy.AddZInformation_3d('lines_3D.shp', 'Z_MEAN; LENGTH_3D; AVG_SLOPE', 
                        'NO_FILTER')
AddZInformation – Beispiel 2 (eigenständiges Skript)

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

'''******************************************************************
Name: AddZInformation Example
Description: This script demonstrates AddZInformation on all 
             z-aware features in a target workspace.
******************************************************************'''
# Import system modules
import arcpy

# Set environment settings
arcpy.env.workspace = 'C:/data'
# Create list of feature classes
fcList = arcpy.ListFeatureClasses()
if fcList:
    for fc in fcList:
        desc = arcpy.Describe(fc)
        if desc.hasZ:
            # Set Local Variables
            noise = 'No_Filter'
            if desc.shapeType == 'Polygon':
                Prop = ['Z_MIN', 'Z_MAX', 'VERTEX_COUNT']
            elif desc.shapeType == 'Point':
                Prop = 'Z'
            elif desc.shapeType == 'Multipoint':
                Prop = ['Z_MIN', 'Z_MAX', 'Z_MEAN']
            elif desc.shapeType == 'Polyline':
                Prop = 'LENGTH_3D'
            print('Completed adding Z information.')
            # Execute AddZInformation
            arcpy.AddZInformation_3d(inFC, Prop, noise)

Lizenzinformationen

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

Verwandte Themen