Features entlang von Routen lokalisieren (Linear Referencing)

Zusammenfassung

Berechnet die Schnittpunkte von Eingabe-Features (Point, Line oder Polygon) und Routen-Features und schreibt die Routen- und Messwertinformationen in eine neue Ereignistabelle.

Verwendung

  • Die Ausgabetabelle kann eine dBASE-Datei oder eine Geodatabase-Tabelle sein.

  • Als Ereignistyp muss Punkt festgelegt sein, wenn die Eingabe-Features Punkte sind. Linie muss festgelegt sein, wenn die Eingabe-Features Linien oder Polygone sind.

  • Die besten Ergebnisse werden erzielt, wenn sich die Eingabe-Features und die Zielrouten eng überlagern.

    Vorsicht:

    Die Verwendung eines großen Suchradius oder einer großen Cluster-Toleranz, um Diskrepanzen zwischen den Eingabe-Features und Zielrouten zu vermeiden, kann zu unerwarteten Ergebnissen führen.

  • Um die Anzahl von Eingabe-Features zu reduzieren, die von diesem Werkzeug verarbeitet werden, können Sie Layer mit einer Auswahl eingeben.

  • Die Ausgabetabelle kann mit dem Werkzeug Routenereignis-Layer erstellen in einer Karte angezeigt werden.

Syntax

arcpy.lr.LocateFeaturesAlongRoutes(in_features, in_routes, route_id_field, radius_or_tolerance, out_table, out_event_properties, {route_locations}, {distance_field}, {zero_length_events}, {in_fields}, {m_direction_offsetting})
ParameterErklärungDatentyp
in_features

Die Features von Eingabepunkt, -linie oder -polygon.

Feature Layer
in_routes

Die Routen, mit denen die Eingabe-Features überschnitten werden.

Feature Layer
route_id_field

Mit den in diesem Feld gespeicherten Werten werden die einzelnen Routen eindeutig gekennzeichnet. Bei diesem Feld kann es sich um ein Zahlen- oder Zeichenfeld handeln.

Field
radius_or_tolerance

Wenn die Eingabe-Features Punkte sind, ist der Suchradius ein Zahlenwert. Er definiert, in welchem Radius um die Punkte eine Suche durchgeführt wird, um eine Zielroute zu ermitteln.

Wenn die Eingabe-Features Linien sind, ist die Suchtoleranz tatsächlich eine Cluster-Toleranz. Dies ist ein Zahlenwert, der für die maximal zulässige Entfernung zwischen den Eingabelinien und den Zielrouten steht.

Wenn die Eingabe-Features Polygone sind, wird dieser Parameter ignoriert und kein Suchradius verwendet.

Linear Unit
out_table

Die zu erstellende Tabelle.

Table
out_event_properties

Parameter, der sich aus den Routenpositionsfeldern und dem in die Ausgabeereignistabelle zu schreibenden Ereignistyp zusammensetzt.

  • Routenkennungsfeld – Mit den Werten in diesem Feld wird angegeben, entlang welcher Route sich die einzelnen Ereignisse befinden.
  • Ereignistyp – Die Art der Ereignisse in der Ausgabeereignistabelle (POINT oder LINE).
    • POINT – Punktereignisse bezeichnen eine exakte Position entlang einer Route. Es muss nur ein einziges Messwertfeld angegeben werden.
    • LINE – Linienereignisse definieren einen Abschnitt einer Route. Die Von- und Bis-Messwert-Felder müssen angegeben werden.
  • Von-Messwert-Feld – Enthält Messwerte. Dieses Feld ist erforderlich, wenn als Ereignistyp POINT oder LINE angegeben wird. Beachten Sie Folgendes: Wenn als Ereignistyp POINT festgelegt ist, ändert sich die Beschriftung für diesen Parameter in "Messwertfeld".
  • Bis-Messwert-Feld – Enthält Messwerte. Dieses Feld ist erforderlich, wenn als Ereignistyp LINE angegeben wird.
Route Measure Event Properties
route_locations
(optional)

Beim Positionieren von Punkten entlang von Routen besteht die Möglichkeit, dass mehrere Routen innerhalb des zu einem beliebigen Punkt festgelegten Suchradius liegen. Dieser Parameter wird ignoriert, wenn Linien oder Polygone entlang von Routen lokalisiert werden.

  • FIRSTNur die nächstgelegene Routenposition wird in die Ausgabe-Ereignistabelle geschrieben. Dies ist die Standardeinstellung.
  • ALLAlle Routenpositionen (innerhalb des Suchradius) werden in die Ausgabe-Ereignistabelle geschrieben.
Boolean
distance_field
(optional)

Gibt an, ob ein Feld namens DISTANCE in die Ausgabe-Ereignistabelle eingefügt wird. Die Werte in diesem Feld übernehmen die Einheiten des angegebenen Suchradius. Dieser Parameter wird ignoriert, wenn Linien oder Polygone entlang von Routen lokalisiert werden.

  • DISTANCEEin Feld, das die Entfernung von Punkt zu Route enthält, wird in die Ausgabe-Ereignistabelle eingefügt. Dies ist die Standardeinstellung.
  • NO_DISTANCEEin Feld, das die Entfernung von Punkt zu Route enthält, wird nicht in die Ausgabe-Ereignistabelle eingefügt.
Boolean
zero_length_events
(optional)

Bei der Positionierung von Polygonen entlang von Routen können Ereignisse erstellt werden, in denen der Von-Messwert dem Nach-Messwert entspricht. Dieser Parameter wird ignoriert, wenn Punkte oder Linien entlang von Routen lokalisiert werden.

  • ZEROLinienereignisse mit der Länge 0 werden in die Ausgabe-Ereignistabelle geschrieben. Dies ist die Standardeinstellung.
  • NO_ZEROLinienereignisse mit der Länge 0 werden nicht in die Ausgabe-Ereignistabelle geschrieben.
Boolean
in_fields
(optional)

Gibt an, ob die Ausgabe-Ereignistabelle die Routenpositionsfelder sowie alle Attribute aus den Eingabe-Features enthält.

  • FIELDSDie Ausgabe-Ereignistabelle enthält die Routenpositionsfelder sowie alle Attribute aus den Eingabe-Features. Dies ist die Standardeinstellung.
  • NO_FIELDSDie Ausgabe-Ereignistabelle enthält nur die Routenpositionsfelder sowie das ObjectID-Feld aus den Eingabe-Features.
Boolean
m_direction_offsetting
(optional)

Gibt an, ob der berechnete Versatzabstand auf der M-Richtung oder der Digitalisierrichtung basieren soll. Entfernungen sind in der Ausgabe-Ereignistabelle enthalten, wenn distance_field="DISTANCE".

  • M_DIRECTONDie Entfernungswerte in der Ausgabe-Ereignistabelle werden auf Grundlage der M-Richtung der Routen berechnet. Eingabe-Features links von der M-Richtung der Route wird ein positiver Versatz (+) zugewiesen. Features rechts von der M-Richtung wird ein negativer Versatzwert (-) zugewiesen. Dies ist die Standardeinstellung.
  • NO_M_DIRECTIONDie Entfernungswerte in der Ausgabe-Ereignistabelle werden auf Grundlage der Digitalisierrichtung der Routen berechnet. Eingabe-Features links von der Digitalisierrichtung der Route wird ein negativer Versatz (-) zugewiesen. Features rechts von der Digitalisierrichtung wird ein positiver Versatzwert (+) zugewiesen.
Boolean

Codebeispiel

LocateFeaturesAlongRoutes – Beispiel 1 (Python-Fenster)

Mit dem folgenden Python-Skript wird veranschaulicht, wie die Funktion LocateFeaturesAlongRoutes im Python-Fenster verwendet wird.

import arcpy
arcpy.env.workspace = "C:/Data"
arcpy.LocateFeaturesAlongRoutes_lr("rail_segments.shp", "rail_routes.shp", 
                                   "rkey", "0.5 Feet", "locate_lines", 
                                   "rkey LINE fmp tmp")
LocateFeaturesAlongRoutes – Beispiel 2 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie die Funktion LocateFeaturesAlongRoutes in einem eigenständigen Python-Skript verwendet wird.

# Name: LocateFeaturesAlongRoutes_Example2.py
# Description: Locate shapefile lines along shapefile routes.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data"
# Set local variables
feats = "rail_segments.shp"
rts = "rail_routes.shp"
rid = "rkey"
tol = "0.5 Feet"
tbl = "locate_lines"
props = "rkey LINE fmp tmp" 
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, tol, tbl, props)
LocateFeaturesAlongRoutes – Beispiel 3 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie die Funktion LocateFeaturesAlongRoutes in einem eigenständigen Python-Skript mit File-Geodatabase-Daten verwendet wird.

# Name: LocateFeaturesAlongRoutes_Example3.py
# Description: Locate personal geodatabase points along file geodatabase routes.
# Import system modules 
import arcpy
# Set workspace
arcpy.env.workspace = "C:/Data/Pitt.gdb"
# Set local variables
feats = "rail/crossings"  # crossings is in the rail feature dataset 
rts = "rail/routes"  # routes is in the rail feature dataset
rid = "rkey"
rad = "10 Feet"
tbl = "locate_points"
props = "rkey POINT mp" 
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, rad, tbl, props)
LocateFeaturesAlongRoutes – Beispiel 4 (eigenständiges Skript)

Das folgende Python-Skript veranschaulicht, wie die Funktion LocateFeaturesAlongRoutes in einem eigenständigen Python-Skript mit Enterprise-Geodatabase-Daten verwendet wird.

# Name: LocateFeaturesAlongRoutes_Example4.py
# Description:  Locate enterprise geodatabase polygons along enterprise geodatabase routes.
# Import system modules
import arcpy
# Set workspace
arcpy.env.workspace = "C:/MyProject/myConn.sde"
# Set local variables
feats = arcpy.ValidateTableName("counties", wkspc)  # standalone feature class
rts = arcpy.ValidateTableName("rail_routes", wkspc)  # standalone feature class
rid = "rkey"
tbl = "locate_polys"
props = "rkey LINE fmp tmp" 
# Execute LocateFeaturesAlongRoutes
arcpy.LocateFeaturesAlongRoutes_lr(feats, rts, rid, "#", tbl, props, "#", "#", 
                                   "NO_ZERO", "M_DIRECTON")

Lizenzinformationen

  • Basic: Ja
  • Standard: Ja
  • Advanced: Ja

Verwandte Themen