Datenmodell des öffentlichen Verkehrs mit Straßen verbinden (Public Transit)

Zusammenfassung

Verbindet Haltestellen des öffentlichen Verkehrs zur Verwendung in einem für öffentlichen Verkehr aktivierten Netzwerk-Dataset mit Straßen-Features. Mit diesem Werkzeug werden die im Network Analyst-Datenmodell des öffentlichen Verkehrs definierten Feature-Classes StopsOnStreets und StopConnectors erstellt. Es wurde für die Ausführung im Rahmen eines umfassenderen Workflow zum Erstellen eines Netzwerk-Datasets für den öffentlichen Verkehr vorgesehen, wie unter Erstellen und Verwenden eines Netzwerk-Datasets mit Daten zu öffentlichem Verkehr beschrieben.

Damit das Reisen im öffentlichen Verkehr realistisch in einem Netzwerk-Dataset modelliert werden kann, sollte es im Netzwerk für Fußgänger möglich sein, zu Fuß zu den Haltestellen des öffentlichen Verkehrs zu gelangen, öffentliche Verkehrsmittel zu benutzen und zu Fuß zum jeweiligen Ziel zu gehen. Das Netzwerk muss Daten zum öffentlichen Verkehr und zu Straßen enthalten. Darüber hinaus sollten die Haltestellen und Linien des öffentlichen Verkehrs geordnet miteinander verbunden sein. Fußgänger sollten die Linien des öffentlichen Verkehrs nur an Haltestellen betreten und verlassen können, wobei die Haltestellen mit den Straßen verbunden sein müssen. Bei diesem Werkzeug wird eine solche Verbindung sichergestellt.

Dieses Werkzeug erstellt eine Kopie der Stops-Feature-Class, die im Ziel-Feature-Dataset vorhanden sein muss, und fängt die kopierten Stops-Features an den Eingabe-Straßen-Features unter Berücksichtigung der angegebenen Suchentfernung und des Suchausdrucks. Mit dem Werkzeug werden dann StopConnectors-Features erstellt, indem eine gerade Linie zwischen jeder Haltestelle und der zugehörigen gefangenen Kopie generiert wird. Auf diese Weise entsteht eine Verbindung zwischen der Position der Haltestelle und der Position, an der diese an einem Straßen-Feature gefangen wurde. Den Eingabe-Straßen-Features werden an den Positionen der gefangenen Haltestellen Stützpunkte hinzugefügt. So wird die korrekte Konnektivität des Netzwerk-Datasets sichergestellt.

Haltestellen des öffentlichen Verkehrs können anhand einer gefangenen Version der Haltestellen, einer Konnektorlinie und einem Stützpunkt des Straßen-Features mit Straßen verbunden werden.
In dieser Abbildung wird veranschaulicht, wie Haltestellen des öffentlichen Verkehrs mit Straßen-Features im Netzwerk-Dataset verbunden werden können. In Teil 1 wird eine Haltestelle (orangefarbener Kreis) an einer Linie (blaue Linie) des öffentlichen Verkehrs dargestellt. In Teil 2 ist ein Stützpunkt (grünes Dreieck) zu sehen, der dem nächstgelegenen Punkt des nächstgelegenen Straßen-Features (schwarze Linie) hinzugefügt wurde. In Teil 3 wird eine Kopie der Haltestelle gezeigt, die am Straßen-Feature (violetter Kreis) gefangen wurde. In Teil 4 wird eine Konnektorlinie dargestellt, die generiert wurde, um die Haltestelle mit der Straße zu verbinden. Die Fußgängerwege zwischen den Straßen und der Linie des öffentlichen Verkehrs werden anhand dieser Verbindungen und der Konnektivitätsregel für das Netzwerk-Dataset modelliert.

Verwendung

  • Das in diesem Werkzeug verwendete Ziel-Feature-Dataset muss bereits vorhanden sein und eine Point-Feature-Class enthalten, die den Namen Stops trägt und dem Schema entspricht, das vom Network Analyst-Datenmodell für öffentlichen Verkehr beschrieben wird. Eine gültige Stops-Feature-Class kann mit dem Werkzeug GTFS in Datenmodell des öffentlichen Verkehrs erstellt werden.

  • Mit diesem Werkzeug werden Haltestellen des öffentlichen Verkehrs im Ziel-Feature-Dataset an den Straßen-Features gefangen. Wie bei jedem Bearbeitungsvorgang ist es auch hier am besten, wenn alle Features denselben Raumbezug aufweisen, um potenzielle Fehler zu vermeiden. Es empfiehlt sich deshalb, dafür zu sorgen, dass das Ziel-Feature-Dataset und die Eingabe-Straßen-Features über denselben Raumbezug verfügen.

  • Die Eingabe-Straßen-Features werden durch die Ausführung des Werkzeugs geändert. An den Positionen, an denen StopsOnStreets-Features die Straßen schneiden, werden Stützpunkte hinzugefügt. Wenn Sie nicht möchten, dass die Straßendaten geändert werden, sollten Sie eine Kopie erstellen, bevor Sie dieses Werkzeug ausführen.

  • Wenn die Stops-Eingabe-Feature-Class übergeordnete Bahnhöfe (Features mit dem Wert 1 für GStopType) enthält, werden die übergeordneten Bahnhöfe mit den Straßen und die untergeordneten Haltestellen mit dem übergeordneten Bahnhof verbunden. Haltestellen mit übergeordneten Bahnhöfen werden nicht direkt mit den Straßen verbunden.

    Eine Haltestelle mit einem übergeordneten Bahnhof
    Dies ist eine Haltestelle mit übergeordnetem Bahnhof. Die Haltestelle (orangefarbener Kreis) ist über eine Konnektorlinie (graue Linie) mit dem Wert 1 für ConnectorType mit dem übergeordneten Bahnhof (blaues Quadrat) verbunden. Der übergeordnete Bahnhof ist über eine Konnektorlinie mit dem Wert 0 für ConnectorType mit der Straße verbunden.

  • Wenn die Stops-Eingabe-Feature-Class Bahnhofseingänge (Features mit dem Wert 2 für GStopType) enthält, werden die Bahnhofseingänge an den Straßen gefangen und die übergeordneten Bahnhöfe mit den Bahnhofseingängen verbunden. In diesem Fall sind die Bahnhofseingänge lagegleich mit den Straßen. StopConnectors-Linien mit dem Wert 2 für ConnectorType verbinden den übergeordneten Bahnhof mit den zugehörigen Eingängen, und StopConnectors-Linien mit dem Wert 1 für ConnectorType verbinden die Haltestellen mit dem übergeordneten Bahnhof.

    Ein übergeordneter Bahnhof mit explizit definierten Bahnhofseingängen
    Dies ist ein übergeordneter Bahnhof mit explizit definierten Bahnhofseingängen. Die Haltestellen (orangefarbene Kreise) sind über Konnektorlinien (graue Linien) mit dem Wert 1 für ConnectorType mit dem übergeordneten Bahnhof (blaues Quadrat) verbunden. Der übergeordnete Bahnhof ist an den Positionen der Bahnhofseingänge (grüne Quadrate) über Konnektorlinien mit dem Wert 2 für ConnectorType mit den Straßen verbunden.

  • Die Stops-Feature-Class kann nach der Ausführung des Werkzeugs geändert worden sein. Möglicherweise werden Haltestellen-Features mit dem Wert 2 für GStopType, die Bahnhofseingänge darstellen, gelöscht. Stattdessen werden diese Haltestellen-Features in die StopsOnStreets-Ausgabe-Feature-Class aufgenommen, um die richtigen Verbindungen von den Straßen durch die Bahnhofseingänge und zu den Haltestellen zu modellieren. Auch übergeordnete Bahnhöfe, die räumlich mit Haltestellen lagegleich sind, werden möglicherweise gelöscht.

  • Bei der Ausführung dieses Werkzeugs in einem eigenständigen Python-Skript wird möglicherweise die Warnmeldung 001059 in die Konsole geschrieben, wenn die Stops-Eingabe-Feature-Class übergeordnete Bahnhöfe oder Bahnhofseingänge enthält. Diese Warnmeldung entspricht dem erwartungsgemäßen Verhalten und weist nicht auf ein Problem hin.

Parameter

BeschriftungErläuterungDatentyp
Ziel-Feature-Dataset

Das Feature-Dataset, in dem das für öffentlichen Verkehr aktivierte Netzwerk-Dataset erstellt wird. Dieses Feature-Dataset muss bereits vorhanden sein und eine Point-Feature-Class enthalten, die den Namen Stops trägt und dem Schema entspricht, das vom Network Analyst-Datenmodell für öffentlichen Verkehr beschrieben wird. Eine gültige Stops-Feature-Class kann mit dem Werkzeug GTFS in Netzwerk-Dataset-Quellen für öffentlichen Verkehr erstellt werden.

Hinweis:

Die Stops-Feature-Class kann nach der Ausführung des Werkzeugs geändert worden sein. Möglicherweise werden Haltestellen-Features mit dem Wert 2 für GStopType, die Bahnhofseingänge darstellen, gelöscht. Stattdessen werden diese Haltestellen-Features in die StopsOnStreets-Ausgabe-Feature-Class aufgenommen, um die richtigen Verbindungen von den Straßen durch die Bahnhofseingänge und zu den Haltestellen zu modellieren. Auch übergeordnete Bahnhöfe, die räumlich mit Haltestellen lagegleich sind, werden möglicherweise gelöscht.

Feature Dataset
Eingabe-Straßen-Features

Eine Polyline-Feature-Class der Straßen, mit denen Haltestellen und Linien des öffentlichen Verkehrs verbunden werden. Diese Street-Feature-Class sollte der Feature-Class entsprechen, die Sie in dem für öffentlichen Verkehr aktivierten Netzwerk-Dataset für die Modellierung von Fußgängerverkehr entlang der Straßen verwenden möchten. Die Feature-Class muss sich nicht im Ziel-Feature-Dataset befinden, damit dieses Werkzeug ausgeführt werden kann. Sie muss jedoch zum Zeitpunkt der Erstellung des Netzwerk-Datasets im Ziel-Feature-Dataset vorhanden sein.

Hinweis:

Die Eingabe-Straßen-Features werden durch die Ausführung des Werkzeugs geändert. An den Positionen, an denen StopsOnStreets-Features die Straßen schneiden, werden Stützpunkte hinzugefügt. Wenn Sie nicht möchten, dass die Straßendaten geändert werden, sollten Sie eine Kopie erstellen, bevor Sie dieses Werkzeug ausführen.

Feature Layer
Suchentfernung

Die Suchentfernung für das Fangen von Haltestellen des öffentlichen Verkehrs an den Eingabe-Straßen-Features. Haltestellen, die sich außerhalb der Suchentfernung befinden, werden nicht gefangen und mit den Straßen verbunden. Bei einer geringen Suchentfernung ist sichergestellt, dass Haltestellen nicht an Straßen gefangen werden, die weit entfernt sind. Gleichzeitig erhöht sich dadurch jedoch die Wahrscheinlichkeit, dass Haltestellen nicht am gewünschten Ort gefangen werden. Eine große Suchentfernung führt dazu, dass mehr Haltestellen an Straßen gefangen werden können. Sie können jedoch zu Fehlern führen, die durch die Bearbeitung der Straßendaten am besten behoben werden können. Wenn innerhalb der Suchentfernung einer bestimmten Haltestelle keine Straßen-Features gefunden werden, wird das StopsOnStreets-Ausgabe-Feature nicht an einer Straße gefangen und als lagegleich mit dem entsprechenden Feature in Stops eingeordnet. Dies kann eine schlechte Konnektivität im Netzwerk-Dataset an dieser Position bedeuten.

Die Standardeinstellung ist 100 Meter.

Linear Unit
Ausdruck

Ein SQL-Ausdruck, mit dem eine Teilmenge der Datensätze zu Eingabe-Straßen-Features ausgewählt wird. Haltestellen des öffentlichen Verkehrs werden nur an Straßen-Features gefangen, die mit diesem Ausdruck übereinstimmen. Beispielsweise kann mit diesem Ausdruck dafür gesorgt werden, dass Haltestellen nicht an Straßen gefangen werden, auf denen kein Fußgängerverkehr zulässig ist.

SQL Expression

Abgeleitete Ausgabe

BeschriftungErläuterungDatentyp
Aktualisiertes Ziel-Feature-Dataset

Das Feature-Dataset, dem die neuen Feature-Classes hinzugefügt und vorhandene ggf. aktualisiert wurden.

Feature Dataset
Aktualisierte Eingabe-Straßen-Features

Die Eingabe-Street-Feature-Class, die ggf. durch das Werkzeug geändert wurde.

Feature Class
Aktualisierte Eingabe-Stopps

Die Stops-Feature-Class im Ziel-Feature-Dataset, die ggf. durch das Werkzeug geändert wurde.

Feature Class
Ausgabe-Stopps an Straßen

Die StopsOnStreets-Feature-Class für das Network Analyst-Datenmodell für öffentlichen Verkehr, die durch das Fangen einer Kopie der Stops-Features an den Eingabe-Straßen-Features erstellt wurde.

Feature Class
Konnektoren von Ausgabe-Stopps

Die StopConnectors-Feature-Class für das Network Analyst-Datenmodell für öffentlichen Verkehr, die durch das Ziehen einer geraden Linie zwischen der ursprünglichen Haltestellenposition und der Position, an der diese an einem Straßen-Feature gefangen wurde, erstellt wird.

Feature Class

arcpy.transit.ConnectPublicTransitDataModelToStreets(target_feature_dataset, in_streets_features, search_distance, expression)
NameErläuterungDatentyp
target_feature_dataset

Das Feature-Dataset, in dem das für öffentlichen Verkehr aktivierte Netzwerk-Dataset erstellt wird. Dieses Feature-Dataset muss bereits vorhanden sein und eine Point-Feature-Class enthalten, die den Namen Stops trägt und dem Schema entspricht, das vom Network Analyst-Datenmodell für öffentlichen Verkehr beschrieben wird. Eine gültige Stops-Feature-Class kann mit dem Werkzeug GTFS in Netzwerk-Dataset-Quellen für öffentlichen Verkehr erstellt werden.

Hinweis:

Die Stops-Feature-Class kann nach der Ausführung des Werkzeugs geändert worden sein. Möglicherweise werden Haltestellen-Features mit dem Wert 2 für GStopType, die Bahnhofseingänge darstellen, gelöscht. Stattdessen werden diese Haltestellen-Features in die StopsOnStreets-Ausgabe-Feature-Class aufgenommen, um die richtigen Verbindungen von den Straßen durch die Bahnhofseingänge und zu den Haltestellen zu modellieren. Auch übergeordnete Bahnhöfe, die räumlich mit Haltestellen lagegleich sind, werden möglicherweise gelöscht.

Feature Dataset
in_streets_features

Eine Polyline-Feature-Class der Straßen, mit denen Haltestellen und Linien des öffentlichen Verkehrs verbunden werden. Diese Street-Feature-Class sollte der Feature-Class entsprechen, die Sie in dem für öffentlichen Verkehr aktivierten Netzwerk-Dataset für die Modellierung von Fußgängerverkehr entlang der Straßen verwenden möchten. Die Feature-Class muss sich nicht im Ziel-Feature-Dataset befinden, damit dieses Werkzeug ausgeführt werden kann. Sie muss jedoch zum Zeitpunkt der Erstellung des Netzwerk-Datasets im Ziel-Feature-Dataset vorhanden sein.

Hinweis:

Die Eingabe-Straßen-Features werden durch die Ausführung des Werkzeugs geändert. An den Positionen, an denen StopsOnStreets-Features die Straßen schneiden, werden Stützpunkte hinzugefügt. Wenn Sie nicht möchten, dass die Straßendaten geändert werden, sollten Sie eine Kopie erstellen, bevor Sie dieses Werkzeug ausführen.

Feature Layer
search_distance

Die Suchentfernung für das Fangen von Haltestellen des öffentlichen Verkehrs an den Eingabe-Straßen-Features. Haltestellen, die sich außerhalb der Suchentfernung befinden, werden nicht gefangen und mit den Straßen verbunden. Bei einer geringen Suchentfernung ist sichergestellt, dass Haltestellen nicht an Straßen gefangen werden, die weit entfernt sind. Gleichzeitig erhöht sich dadurch jedoch die Wahrscheinlichkeit, dass Haltestellen nicht am gewünschten Ort gefangen werden. Eine große Suchentfernung führt dazu, dass mehr Haltestellen an Straßen gefangen werden können. Sie können jedoch zu Fehlern führen, die durch die Bearbeitung der Straßendaten am besten behoben werden können. Wenn innerhalb der Suchentfernung einer bestimmten Haltestelle keine Straßen-Features gefunden werden, wird das StopsOnStreets-Ausgabe-Feature nicht an einer Straße gefangen und als lagegleich mit dem entsprechenden Feature in Stops eingeordnet. Dies kann eine schlechte Konnektivität im Netzwerk-Dataset an dieser Position bedeuten.

Die Standardeinstellung ist 100 Meter.

Linear Unit
expression

Ein SQL-Ausdruck, mit dem eine Teilmenge der Datensätze zu Eingabe-Straßen-Features ausgewählt wird. Haltestellen des öffentlichen Verkehrs werden nur an Straßen-Features gefangen, die mit diesem Ausdruck übereinstimmen. Beispielsweise kann mit diesem Ausdruck dafür gesorgt werden, dass Haltestellen nicht an Straßen gefangen werden, auf denen kein Fußgängerverkehr zulässig ist.

SQL Expression

Abgeleitete Ausgabe

NameErläuterungDatentyp
updated_target_feature_dataset

Das Feature-Dataset, dem die neuen Feature-Classes hinzugefügt und vorhandene ggf. aktualisiert wurden.

Feature Dataset
updated_in_streets_features

Die Eingabe-Street-Feature-Class, die ggf. durch das Werkzeug geändert wurde.

Feature Class
updated_in_stops

Die Stops-Feature-Class im Ziel-Feature-Dataset, die ggf. durch das Werkzeug geändert wurde.

Feature Class
output_stops_on_streets

Die StopsOnStreets-Feature-Class für das Network Analyst-Datenmodell für öffentlichen Verkehr, die durch das Fangen einer Kopie der Stops-Features an den Eingabe-Straßen-Features erstellt wurde.

Feature Class
output_stop_connectors

Die StopConnectors-Feature-Class für das Network Analyst-Datenmodell für öffentlichen Verkehr, die durch das Ziehen einer geraden Linie zwischen der ursprünglichen Haltestellenposition und der Position, an der diese an einem Straßen-Feature gefangen wurde, erstellt wird.

Feature Class

Codebeispiel

ConnectPublicTransitDataModelToStreets – Beispiel 1 (Python-Fenster)

Das folgende Skript veranschaulicht, wie die Funktion ConnectPublicTransitDataModelToStreets im Python-Fenster verwendet wird.

fd_path = r"E:\TransitAnalysis\TransitNetwork.gdb\TransitNetwork"
streets = os.path.join(fd_path, "Streets")
where = "PedestriansAllowed = 1"
arcpy.transit.ConnectPublicTransitDataModelToStreets(fd_path, streets, "100 meters", where)
ConnectPublicTransitDataModelToStreets – Beispiel 2 (eigenständiges Skript)

Im folgenden eigenständigen Python-Skript wird gezeigt, wie die Funktionen GTFSToPublicTransitDataModel und ConnectPublicTransitDataModelToStreets gemeinsam verwendet werden können, um ein für den öffentlichen Verkehr aktiviertes Netzwerk-Dataset zu erstellen.

import os
import arcpy
arcpy.CheckOutExtension("network")

gtfs_folders = [
    r"E:\GTFS\Agency1",
    r"E:\GTFS\Agency2"
]
streets_orig = r"E:\Data\StreetData.gdb\Streets"

working_folder = r"E:\TransitAnalysis"
nd_template = os.path.join(working_folder, "TransitNetworkTemplate.xml")
gdb_name = "TransitNetwork.gdb"
out_gdb = os.path.join(working_folder, gdb_name)
fd_name = "TransitNetwork"
fd_path = os.path.join(out_gdb, fd_name)
streets = os.path.join(fd_path, "Streets")
nd_name = "TransitNetwork_ND"
nd_path = os.path.join(fd_path, nd_name)

# Create a file geodatabase and feature dataset to store the network dataset
arcpy.management.CreateFileGDB(working_folder, gdb_name)
arcpy.management.CreateFeatureDataset(out_gdb, fd_name, arcpy.SpatialReference(4326))

# Copy the streets data into the feature dataset so it can be used by the network dataset
# If the original streets are not in the same spatial reference as the feature dataset, you might
# need to use the Project tool instead of Copy.
arcpy.management.Copy(streets_orig, streets)

# Convert the GTFS dataset into public transit data model tables and feature classes
arcpy.transit.GTFSToPublicTransitDataModel(gtfs_folders, fd_path)

# Connect the transit stops to the streets and create the rest of the data model feature classes
# Use an expression to connect transit stops only to streets where pedestrians are allowed.
where = "PedestriansAllowed = 1"
arcpy.transit.ConnectPublicTransitDataModelToStreets(fd_path, streets, "100 meters", where)

# Create the network dataset from a template
arcpy.na.CreateNetworkDatasetFromTemplate(nd_template, fd_path)

# Build the network dataset
arcpy.na.BuildNetwork(nd_path)

Umgebungen

Dieses Werkzeug verwendet keine Geoverarbeitungsumgebungen.

Lizenzinformationen

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

Verwandte Themen