r2gg : road2 graph generator#
Bibliothèque de scripts Python permettant la génération de graphs utilisables par l’application road2
Fonctions publiques#
Les fonctions publiques exposées par r2gg permettent de réaliser les trois processus des scripts de génération. Les fonctions utile à une génération complète peuvent être lancées via la commande suivante :
python3 r2gg.fonction config.json
Au passage, ces fonctions ont toutes besoin d’un fichier de configuration (décrit ici) pour pouvoir fonctionner. Des exemples sont disponibles dans le dossier docker/config.
Mais on peut décider de n’en lancer que certaines selon le résultat que l’on souhaite obtenir.
sql2pivot()
#
Cette fonction permet d’extraire des données SQL d’un format quelconque vers la base pivot dans le format pivot.
pivot2pgrouting()
#
Permet de convertir les données au fromat pgRouting (le type de ressource dans config.json doit être pgr
).
pivot2osm()
#
Permet de convertir les données au fromat osm. Le type de ressource dans config.json doit être osrm
ou valhalla
, sachant que le premier donnera des .osm
et le second des .osm.pbf
.
osm2osrm()
#
Permet de convertir des données OSM en données OSRM.
osm2valhalla()
#
Permet de convertir des données OSM (.osm
ou .osm.pbf
) en données Valhalla.
road2config()
#
Permet de générer la configuration utile à Road2 pour lire les données.
Fonctions privées#
Chacune des fonctions publiques est en fait l’enchaînement de deux fonctions privées :
_configure()
qui lit le fichier de configuration fourni en argument et initialise la connexion à la base de donnée pivot. Cette fonction est définie dans le fichier_configure.py
Une fonction permettant la conversion à proprement parler. Ces fonctions sont définies dans le fichier
_main.py
Liste des fichiers#
__init__.py
expose les fonctions publiques_configure.py
contient la fonction qui permet la configuration du script à l’aide du fichier de configuration_file_copier.py
permet de copier un fichier_lua_builder.py
permet de construire les LUA pour OSRM_main.py
contient les fonctions de conversion et de génération des données à partir de la configuration_osm_building.py
contient les fonctions permettant la construction de fichier osm_osm_to_pbf.py
permet de convertir un.osm
avec.osm.pbf
_output_costs_from_costs_config.py
contient la fonction permettant de calculer des coûts à partir d’un fichier de configuration des coûts_path_converter.py
permet de convertir un chemin de fichier pour un autre dossier_pivot_to_osm.py
permet la conversion des données au format pivot vers un fichier.osm
_pivot_to_pgr.py
permet la conversion des données au format pivot vers une base pgrouting_read_config.py
permet la lecture des fichiers de configuration au format JSON_sql_building.py
contient des fonctions pour construire des requêtes SQL_subprocess_execution.py
permet l’exécution de lignes de commandes par les scripts_valhalla_lua_builder.py
permet de construire le LUA pour valhalla