3D-Linien überschneiden (3D Analyst)

Zusammenfassung

Berechnet sich schneidende und überlappende Segmente von Linien im 3D-Raum.

Verwendung

  • Das Werkzeug funktioniert paarweise. Wenn sich mehr als zwei Linien schneiden, entspricht die Anzahl der Ausgabepunkte der mathematischen Kombination der sich schneidenden Linien. Beispielsweise ergeben sich bei drei sich schneidenden Linien drei Ausgabepunkte: jeweils ein Punkt für den Schnittpunkt der ersten mit der zweiten Linie, einen für den Schnittpunkt der ersten mit der dritten Linie und einen für den Schnittpunkt der zweiten mit der dritten Linie. Wenn sich vier Eingabelinien schneiden, ergeben sich nach diesem Prinzip sechs Ausgabepunkte: jeweils ein Punkt für den Schnittpunkt der ersten mit der zweiten, der ersten mit der dritten, der ersten mit der vierten, der zweiten mit der dritten, der zweiten mit der vierten und der dritten mit der vierten Linie.

  • Eingabe-Features müssen einen räumlichen Index haben. Verwenden Sie das Werkzeug Räumlichen Index hinzufügen, um einen neuen Index zu erstellen (insbesondere für Shapefiles) oder einen vorhandenen Index neu zu erstellen, falls Zweifel hinsichtlich seiner Korrektheit bestehen.

  • Wenn 2D-Linien als Eingabe bereitgestellt werden, wird bei allen Stützpunkten davon ausgegangen, dass sie sich auf Nullniveau befinden.

  • Wenn sich zwei Linien mit unterschiedlichen Z-Werten aufgrund der zulässigen vertikalen Toleranz für die Ermittlung von Schnittpunkten schneiden, wird im Ausgabepunkt der höher liegende Wert der zwei Höhenangaben verwendet. Wenn sich zwei Liniensegmente mit unterschiedlichen Z-Werten schneiden, basiert das Ausgabe-Linien-Feature entsprechend auf den Segmenten mit den höheren Z-Werten.

  • Einige Ausgabelinien können aus mehreren Teilen bestehen, wenn zwei Eingabelinien mit mehreren diskontinuierlichen überlappenden Abschnitten vorliegen oder Linien sich in Z-Richtung annähern bzw. auseinandergehen.

  • Wenn Attribute in die Ausgabe übertragen werden, stammen die Werte in der ersten Feldgruppe von der ersten Eingabelinie und die Werte in der zweiten Feldgruppe von der zweiten Eingabelinie. Bei Angabe von zwei Eingabe-Linien-Feature-Layern stammen die erste und zweite Eingabelinie entsprechend aus dem ersten und zweiten Eingabe-Linien-Feature-Layer. Wenn nur ein Eingabe-Linien-Feature-Layer angegeben wird, gilt dieselbe Regel, nur dass die Spalten sich zu wiederholen scheinen.

  • Die Ausgabe-Punkt-Features enthalten die folgenden Attributfelder:

    • I3L_TYPE: Der Wert 0 gibt an, dass der Punkt den Endpunkt des überlappenden Liniensegments darstellt. Der Wert 1 dagegen weist den Punkt als Schnittpunkt von zwei Linien aus.
    • I3L_GROUP: Ein Einzelwert, der alle Punkte mit derselben Position im horizontalen Raum identifiziert.
    • I3L_OID1: Die Feature-ID des ersten sich schneidenden Linien-Features.
    • I3L_OID2: Die Feature-ID des zweiten sich schneidenden Linien-Features.
    • I3L_LINE1Z: Der Z-Wert des Schnittpunkts auf der ersten Linie.
    • I3L_LINE2Z: Der Z-Wert des Schnittpunkts auf der zweiten Linie.
    • I3L_Z_DIFF: Die Differenz beim Z-Wert zwischen den zwei Eingabelinien an der XY-Position des Schnittpunkts.

Syntax

Intersect3DLines(in_lines, {max_z_diff}, {join_attributes}, {out_point_fc}, {out_line_fc})
ParameterErklärungDatentyp
in_lines
[in_lines,...]

Die Linien-Features, auf denen nach Schnittpunkten gesucht wird. Die Eingabe kann aus ein oder zwei Linien-Feature-Layern oder Line-Feature-Classes bestehen. Bei einer Eingabe wird jedes Feature mit allen anderen Features in der Feature-Class verglichen. Kein Feature wird mit sich selbst verglichen.

Feature Layer
max_z_diff
(optional)

Die maximale vertikale Entfernung zwischen Liniensegmenten, die sich schneiden.

Linear Unit
join_attributes
(optional)

Legt fest, welche Attribute der Eingabe-Features auf die Ausgabe-Feature-Class übertragen werden.

  • ALLAlle Attribute der Eingabe-Features werden in die Ausgabe-Feature-Class übertragen. Dies ist die Standardeinstellung.
  • NO_FIDAlle Attribute der Eingabe-Features mit Ausnahme der FID werden in die Ausgabe-Feature-Class übertragen.
  • ONLY_FIDNur das FID-Feld der Eingabe-Features wird auf die Ausgabe-Feature-Class übertragen.
String
out_point_fc
(optional)

Die Ausgabepunkte, die die Positionen der Schnittpunkte der Eingabelinien darstellen, einschließlich Positionen, an denen überlappende Liniensegmente beginnen und enden.

Feature Class
out_line_fc
(optional)

Die Ausgabelinien, die die überlappenden Abschnitte der Eingabelinien darstellen.

Feature Class

Abgeleitete Ausgabe

NameErklärungDatentyp
out_intersection_count

Die Anzahl der sich schneidenden Positionen in den Eingabelinien.

Long

Codebeispiel

Intersect3DLines – Beispiel (Python-Fenster)

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

import arcpy
arcpy.env.workspace = 'C:/data'
arcpy.ddd.Intersect3DLines(['floor_centerlines.shp', 'stairs.shp'], '2 Meters', 
                           'ONLY_FID', 'intersection_pts.shp')

Lizenzinformationen

  • Basic: Erfordert 3D Analyst oder ArcGIS Location Referencing
  • Standard: Erfordert 3D Analyst oder ArcGIS Location Referencing
  • Advanced: Erfordert 3D Analyst oder ArcGIS Location Referencing

Verwandte Themen