Générer des entités de forme à partir de GTFS (Conversion)

Résumé

Génère une estimation des chemins parcourus par les véhicules dans un système de transport en commun. La sortie de cet outil peut être utilisée pour générer un nouveau fichier shapes.txt pour un jeu de données de transport en commun GTFS.

Le fichier shapes.txt GTFS en option contient une représentation des chemins géographiques pris par les véhicules de transport dans un système de transport. Un shapes.txt fichier approprié est important pour les applications de calcul d’itinéraire basées sur GTFS pour afficher correctement les itinéraires de transport sur la carte. Même si de nombreuses agences de transport génèrent leurs fichiers shapes.txt via des localisateurs GPS sur leurs véhicules, d’autres agences de transport non équipées de ce matériel peuvent rencontrer des problèmes pour créer ce fichier.

Cet outil, ainsi que l’outil Entités vers Formes GTFS, vous permet de créer un fichier shapes.txt basé sur les informations relatives aux arrêts, itinéraires et horaires à partir d’un jeu de données GTFS existant. Cet outil génère de bonnes estimations pour les chemins géographiques utilisés par les véhicules dans le système de transport et écrit la sortie dans une classe d’entités. Vous pouvez réviser et modifier ces entités linéaires avant d’exécuter l’outil Entités vers Formes GTFS, qui exporte les formes dans un nouveau fichier shapes.txt.

Cet outil a pour but d’être utilisé dans un workflow se distinguant par trois étapes principales :

  1. Exécutez cet outil pour produire une bonne estimation des chemins géographiques utilisés par les véhicules dans le système de transport.
  2. Utilisez la carte pour inspecter chaque forme estimée, et utilisez les outils de modification standard pour effectuer les corrections nécessaires.
  3. Exécutez l’outil Entités vers Formes GTFS pour créer un fichier shapes.txt pour votre jeu de données GTFS.

Remarque :

L’outil Formes GTFS vers Entités et l’outil Générer des entités de formes depuis GTFS sont utilisés pour différents objectifs. Utilisez Formes GTFS vers Entités si votre jeu de données GTFS comporte déjà un fichier shapes.txt et que vous voulez convertir ces formes en classe d’entités à afficher sur la carte. Utilisez Générer des entités de formes depuis GTFS si votre jeu de données GTFS ne comporte pas de fichier shapes.txt et que vous voulez estimer les formes en fonction des autres informations contenues dans le jeu de données GTFS et créer un fichier shapes.txt.

Utilisation

  • Cet outil estime les formes d’itinéraire de votre réseau de transport en commun à l’aide d’une des options suivantes pour chaque mode de transport dans vos données :

    • Lignes droites : les formes d’itinéraire de transport correspondent aux lignes droites connectant les arrêts de transport adjacents. Cela est approprié pour les métros, les ferries et les modes de transport autres que sur route.
    • Itinéraires de rues générés à l’aide d’un réseau routier : les formes linéaires de transport sont générées en corrigeant un itinéraire entre les arrêts adjacents pour modéliser les véhicules circulant sur les routes d’un réseau.
    Choisissez quelle option utiliser pour chaque mode de transport en commun inclus dans vos données. Par exemple, vous pouvez créer des formes pour les lignes de bus à l’aide du réseau et des lignes droites pour les métros. Cela est configuré dans le paramètre Transit Modes for Network (Modes de transport pour le réseau).

    Pour générer des formes d’itinéraire selon un réseau routier, deux solutions s’offrent à vous :

    • Utiliser un jeu de données du réseau local : cette option exige d’avoir Extension ArcGIS Network Analyst ainsi qu’un jeu de données de réseau.
    • Utiliser un service du portail : cette option exige un compte ArcGIS Online avec des privilèges d’itinéraire et suffisamment de crédits ou un portail sur lequel ArcGIS Enterprise routing services est configuré. Vous devez être connecté au portail avant d’exécuter l’outil.

  • Lors du calcul des formes d’itinéraire sur un réseau routier, Network Analyst risque de ne pas réussir à calculer un itinéraire reliant les arrêts pour certaines formes. Dans ces cas, puisque les formes de réseau n’ont pas pu être créées, l’outil crée des formes de ligne droite en lieu et place et renvoie un message d’avertissement indiquant quelles valeurs shape_id ont été impactées.

  • Dans le cadre de l’inspection et de la correction de la sortie de l’outil, vous avez la possibilité d’utiliser une requête de définition pour n’afficher qu’une seule forme et ses arrêts associés sur la carte. Utilisez le champ shape_id dans les deux sorties pour sélectionner la forme à afficher. Le champ sequence dans les arrêts en sortie indique l’ordre dans lequel les arrêts de transport en commun sont atteints.

  • Remarque :

    Les entités de forme en sortie créées par cet outil sont une estimation des chemins réels parcourus par les véhicules de transport en commun dans votre système. Inspectez manuellement chaque entité de forme en sortie individuellement pour veiller à ce que le chemin soit approprié.

    Avant d’exécuter l’outil Entités vers Formes GTFS, inspectez soigneusement la sortie des entités de forme à partir de cet outil et apportez les corrections nécessaires à la géométrie de la forme. Cela garantit la précision de votre fichier shapes.txt final en sortie et vous aide à éviter des erreurs dans le calcul du champ shape_dist_traveled pour le fichier stop_times.txt.

    En plus d’apporter des corrections de base aux formes afin de représenter précisément les chemins parcourus, modifiez vos formes pour éviter que les segments linéaires ne se superposent directement. Si un bus circule dans les deux sens dans une même rue et s’auto-superpose sur l’axe médian, cela peut permettre de décaler légèrement chaque direction de la ligne de forme d’un côté ou de l’autre de l’axe médian.

    Utilisez l’outil de modification Reshape (Remodeler) pour corriger la géométrie de forme. Si vous souhaitez entièrement remplacer la géométrie de forme en numérisant manuellement la forme sur la carte, utilisez l’outil de modification Replace Geometry (Remplacer la géométrie).

    Si vos arrêts ne sont pas au bon endroit, utilisez les outils Arrêts GTFS vers Entités et Entités vers Arrêts GTFS pour les corriger, et exécutez à nouveau cet outil.

  • Lors de l’examen et de la modification des sorties de l’outil, vous pouvez modifier la géométrie des entités et les attributs, mais vous ne pouvez pas supprimer les lignes. Les lignes supprimées peuvent provoquer des erreurs lorsque vous exécutez l’outil Entités vers Formes GTFS.

Syntaxe

arcpy.conversion.GenerateShapesFeaturesFromGTFS(in_gtfs_folder, out_shape_lines, out_shape_stops, out_gtfs_trips, {network_modes}, {network_data_source}, {travel_mode}, {drive_side}, {bearing_tolerance}, {max_bearing_angle})
ParamètreExplicationType de données
in_gtfs_folder

Un dossier contenant un jeu de données GTFS valide pour lequel vous souhaitez créer un fichier shapes.txt. Le dossier doit contenir les fichiers GTFS stops.txt, trips.txt, routes.txt et stop_times.txt.

Folder
out_shape_lines

Classe d’entité linéaire représentant les formes d’itinéraire estimé calculées par cet outil. Chaque ligne de la sortie représente une forme unique requise pour ce jeu de données GTFS. Vous pouvez modifier la géométrie linéaire et utiliser cette classe d’entités comme entrée à l’outil Entités vers Formes GTFS.

Feature Class
out_shape_stops

Classe d’entités ponctuelles des arrêts de transport GTFS avec un ID les associant à chaque ligne de forme à créer par l’outil. Si le même arrêt GTFS est atteint par plusieurs formes, cette classe d’entités contiendra plusieurs copies de cet arrêt, une pour chaque forme à laquelle il est associé. Cette classe d’entités est utile avec les requêtes de définition lors de la modification d’une ligne de forme à la fois. Utilisez cette classe d’entités comme entrée à l’outil Entités vers Formes GTFS.

Remarque :

Cette classe d’entités en sortie n’équivaut pas à la sortie de l’outil Arrêts GTFS vers Entités. Cet outil produit une classe d’entités de vos arrêts GTFS exactement comme ils sont dans le jeu de données d’origine, tandis que cet outil peut produire plusieurs copies de chaque arrêt pour les associer à différentes formes. Cette classe d’entités en sortie a pour but d’être utilisée uniquement conjointement avec les autres sorties de l’outil Générer des entités de forme à partir de GTFS pour créer un fichier shapes.txt.

Feature Class
out_gtfs_trips

Le fichier trips.txt GTFS en sortie. Ce fichier équivaut au fichier trips.txt dans le dossier GTFS en entrée, mais inclut le champ shape_id ajouté et complété avec les valeurs correspondant au champ shape_id dans la classe d’entités Output Transit Shape Lines (Lignes de forme de transport en sortie).

File
network_modes
[network_modes,...]
(Facultatif)

Précise les modes de transport pour lesquels des formes linéaires sont générées sur le réseau routier plutôt que des lignes droites. Des formes pour tous les modes non sélectionnés sont générées à l’aide de lignes droites.

Généralement vous devez sélectionner des modes de transport compatibles avec une circulation dans les rues, tels que des bus, puisque ces modes sont représentés le plus précisément par le réseau routier. Ne sélectionnez pas de modes qui ne sont pas modelés par votre réseau routier. Par exemple, sauf si votre réseau modèle explicitement les voies des ferries, n’utilisez pas le réseau pour représenter les chemins parcourus par les ferries.

Les modes sont précisés à l’aide des codes dans le tableau ci-dessous. Cela correspond aux valeurs GTFS routes.txt route_type valides depuis la documentation GTFS.

Les modes 3, 5 et 11 sont utilisés par défaut.

  • 0 Tramway, train léger Ce mode correspond au route_type 0 GTFS.
  • 1 Métro. Ce mode correspond au route_type 1 GTFS.
  • 2 Rail. Ce mode correspond au route_type 2 GTFS.
  • 3 Bus. Ce mode correspond au route_type 3 GTFS.
  • 4 Ferry. Ce mode correspond au route_type 4 GTFS.
  • 5 Tramway électrique. Ce mode correspond au route_type 5 GTFS.
  • 6 Télécabine, téléphérique. Ce mode correspond au route_type 6 GTFS.
  • 7 Funiculaire. Ce mode correspond au route_type 7 GTFS.
  • 11 Trolleybus. Ce mode correspond au route_type 11 GTFS.
  • 12 Monorail. Ce mode correspond au route_type 12 GTFS.
  • OTHERTout mode de transport en commun non inclus dans les autres options.
String
network_data_source
(Facultatif)

Jeu de données ou service de réseau qui sera utilisé pour calculer les formes d’itinéraire sur un réseau routier. Vous pouvez utiliser un chemin de catalogue vers un jeu de données de réseau, un objet de couche de jeu de données de réseau, le nom de la chaîne de la couche du jeu de données de réseau ou une URL du portail pour un service d’analyse de réseau. Le réseau doit avoir au minimum un mode de transport.

Pour utiliser une URL du portail, vous devez être connecté au portail avec un compte ayant des privilèges de calcul d’itinéraire.

L’exécution de l’outil consomme des crédits si vous utilisez ArcGIS Online comme source de données du réseau.

En savoir plus sur la manière d’estimer l’utilisation du crédit pour cet outil

Ce paramètre est requis lorsque n’importe quel mode de réseau est sélectionné.

Remarque :

Le jeu de données du réseau que vous choisissez doit être approprié pour modéliser les véhicules de transport en commun, comme les bus, circulant dans les rues. N’utilisez pas un jeu de données de réseau configuré pour utiliser les données de transport en commun avec l’Évaluateur Transport en commun, car ce type de réseau modélise les passagers qui fréquentent les transports en commun, et non les véhicules de transport en commun qui circulent dans les rues.

Network Data Source
travel_mode
(Facultatif)

Mode de déplacement sur la source des données du réseau à utiliser lors du calcul des formes d’itinéraire sur un réseau routier. Vous pouvez préciser le mode de déplacement comme nom de chaîne du mode de déplacement ou comme objet arcpy.nax.TravelMode.

Utilisez le mode de déplacement le plus approprié pour modéliser les véhicules dans votre système de transport en commun sur le réseau routier.

Ce paramètre est requis lorsque n’importe quel mode de réseau est sélectionné.

Remarque :

N’utilisez pas un mode de déplacement avec un attribut d’impédance qui utilise l’Évaluateur Transport en commun, car ce modèle de déplacement modélise les passagers qui circulent sur le transport en commun, et non les véhicules de transport en commun qui circulent dans les rues.

Network Travel Mode
drive_side
(Facultatif)

Précise le côté de la route sur lequel les véhicules circulent dans votre système de transport. Il est utilisé pour veiller à ce que les arrêts soient atteints du bon côté de la route.

  • LEFTLes véhicules circulent sur le côté gauche de la route.
  • RIGHTLes véhicules circulent sur le côté droit de la route. Il s’agit de l’option par défaut.
String
bearing_tolerance
(Facultatif)

Dans le cadre du calcul des formes d’itinéraire sur un réseau routier, les champs Relèvement et Tolérance de relèvement sont utilisés pour localiser plus précisément les arrêts de transport en commun sur le réseau routier. Le relèvement du véhicule de transport en commun est estimé à chaque arrêt selon les angles entre l’arrêt actuel et les arrêts précédent et suivant sur l’itinéraire de transport.

La valeur spécifiée dans ce paramètre indique l’angle maximal autorisé entre un sens de déplacement estimé d’un véhicule de transport en commun à un arrêt et l’angle du segment du réseau où l’arrêt pourrait se situer. Si les angles affichent un écart supérieur à cette valeur, Network Analyst suppose que ce n’est pas le segment de réseau approprié auquel localiser l’arrêt et continue de chercher d’autres segments de réseau à proximité pour un arrêt plus approprié.

Précisez la valeur en unités de degrés entre 0 et 180. La valeur par défaut est 30.

Double
max_bearing_angle
(Facultatif)

Le relèvement du véhicule de transport en commun est estimé à chaque arrêt selon les angles entre l’arrêt actuel et les arrêts précédent et suivant sur l’itinéraire de transport. Lorsque l’itinéraire de transport suit une route relativement droite, cet angle est une bonne représentation du relèvement. Cependant, si l’itinéraire évite un angle, fait un demi-tour, suit un itinéraire sinueux, ou dévie dans le dépôt d’un parking ou prend une route secondaire, l’angle moyen n’est pas une bonne estimation du relèvement réel et l’utilisation de cette estimation peut provoquer la localisation de l’arrêt sur le réseau loin de l’endroit où il devrait être et diminue la qualité de la sortie de l’outil.

L’outil ignorera l’estimation du relèvement si l’écart de l’angle de l’arrêt précédent au prochain arrêt et de l’arrêt actuel au prochain arrêt est supérieur à la valeur spécifiée dans ce paramètre. Dans ce cas, l’arrêt rétablira le comportement de localisation du réseau normal et effectuera une capture sur le segment le plus proche du réseau non limité.

Précisez la valeur en unités de degrés entre 0 et 180. La valeur par défaut est 65.

Double

Exemple de code

Exemple 1 Générer des entités de forme à partir de GTFS (fenêtre Python)

Le script ci-dessous illustre l’utilisation de la fonction GenerateShapesFeaturesFromGTFS dans la fenêtre Python à l’aide d’un jeu de données du réseau local :

arcpy.conversion.GenerateShapesFeaturesFromGTFS(
    r"C:\Data\GTFS",
    r"C:\Data\GTFSShapes\GTFSShapes.gdb\Shapes",
    r"C:\Data\GTFSShapes\GTFSShapes.gdb\Stops",
    r"C:\Data\GTFSShapes\trips_new.txt",
    ["3", "5", "11"],
    r"C:\Data\NetworkDatasets\Network.gdb\Routing\Routing_ND",
    "Bus Driving Time", "Right", 30, 65)
Exemple 2 Générer des entités de forme à partir de GTFS (fenêtre Python)

Le script ci-dessous montre comment utiliser la fonction GenerateShapesFeaturesFromGTFS dans la fenêtre Python à l’aide des services ArcGIS Online pour générer des formes pour certains modes de transport :

arcpy.conversion.GenerateShapesFeaturesFromGTFS(
    r"C:\Data\GTFS",
    r"C:\Data\GTFSShapes\GTFSShapes.gdb\Shapes",
    r"C:\Data\GTFSShapes\GTFSShapes.gdb\Stops",
    r"C:\Data\GTFSShapes\trips_new.txt",
    ["0", "3", "5", "11", "OTHER"],
    "https://www.arcgis.com/",
    "Driving Time", "Right", 30, 65)
Exemple 3 Générer des entités de forme à partir de GTFS (fenêtre Python)

Le script suivant démontre comment générer les formes de ligne droite pour tous les modes de transport à l’aide d’une liste vide pour le paramètre network_modes :

arcpy.conversion.GenerateShapesFeaturesFromGTFS(
    r"C:\Data\GTFS",
    r"C:\Data\GTFSShapes\GTFSShapes.gdb\Shapes",
    r"C:\Data\GTFSShapes\GTFSShapes.gdb\Stops",
    r"C:\Data\GTFSShapes\trips_new.txt",
    [])

Environnements

Cet outil n'utilise pas d’environnement de géotraitement.

Informations de licence

  • Basic: Oui
  • Standard: Oui
  • Advanced: Oui

Rubriques connexes