Instances OSRM : Différence entre versions
Ligne 5 : | Ligne 5 : | ||
Une fois les données filtrées, OSRM construit sa base de données pour être capable d'indiquer une route d'un point A à un point B. Il suffit ensuite de lui poser des questions et il répond la liste des points GPS permettant de faire le trajet indiqué. | Une fois les données filtrées, OSRM construit sa base de données pour être capable d'indiquer une route d'un point A à un point B. Il suffit ensuite de lui poser des questions et il répond la liste des points GPS permettant de faire le trajet indiqué. | ||
− | Le serveur OSRM utilisé par Raildar est publiquement accessible sur le port 5002 de la machine osrm.raildar.fr et est théoriquement en mesure de répondre à toute question concernant le réseau ferré mondial. Merci de ne pas en abuser ! | + | Le serveur OSRM utilisé par Raildar est publiquement accessible sur le port 5002 (et 5003 pour l'ile de france) de la machine osrm.raildar.fr et est théoriquement en mesure de répondre à toute question concernant le réseau ferré mondial. Merci de ne pas en abuser ! |
= Méthodes disponibles = | = Méthodes disponibles = | ||
− | Les mêmes méthodes sont applicables | + | Les mêmes méthodes sont applicables à /osrm-engine-idf/ qui concerne l'ile de france et inclus les rails du métro. |
== nearest == | == nearest == | ||
Elle sert à connaitre le point le plus proche situé sur l'infrastructure ferroviaire. Elle s'emploi simplement : | Elle sert à connaitre le point le plus proche situé sur l'infrastructure ferroviaire. Elle s'emploi simplement : | ||
− | http://osrm.raildar.fr | + | http://osrm.raildar.fr/osrm-engine/nearest?loc=latitude,longitude |
== viaroute == | == viaroute == | ||
Elle permet de connaitre le parcours entre (au moins) deux points situés sur le réseau : | Elle permet de connaitre le parcours entre (au moins) deux points situés sur le réseau : | ||
− | http://osrm.raildar.fr | + | http://osrm.raildar.fr/osrm-engine/viaroute?loc=lat,lon&loc=lat,lon&loc=lat,lon |
Elle retourne une information sous forme de polyline encodée. La doc sur le décodage de cette information peut être trouvée [https://developers.google.com/maps/documentation/utilities/polylinealgorithm?csw=1 ici]. La précision des coordonnées dans la polyline est sur 6 digits au lieu de 5 dans la version google. | Elle retourne une information sous forme de polyline encodée. La doc sur le décodage de cette information peut être trouvée [https://developers.google.com/maps/documentation/utilities/polylinealgorithm?csw=1 ici]. La précision des coordonnées dans la polyline est sur 6 digits au lieu de 5 dans la version google. |
Version actuelle en date du 4 septembre 2014 à 14:15
OSRM est un routing-engine qui se base sur les données sorties d'OSM. Pour les besoins de Raildar, nous devions être capables de positionner un train sur ses rails et donc d'avoir une vue fidèle et surtout exploitable du réseau ferroviaire.
Nous nous sommes donc basés sur l'ensemble des données d'OSM (40Go compressés, au bas mot) pour en extraire les positions des rails. L'extraction est directement possible via OSRM mais prend beaucoup de temps (ça se compte en heure). Heureusement, de petits outils conçus par nos amis d'OSM font le job bien plus vite, il s'agit d'osmconvert et osmfilter.
Une fois les données filtrées, OSRM construit sa base de données pour être capable d'indiquer une route d'un point A à un point B. Il suffit ensuite de lui poser des questions et il répond la liste des points GPS permettant de faire le trajet indiqué.
Le serveur OSRM utilisé par Raildar est publiquement accessible sur le port 5002 (et 5003 pour l'ile de france) de la machine osrm.raildar.fr et est théoriquement en mesure de répondre à toute question concernant le réseau ferré mondial. Merci de ne pas en abuser !
Méthodes disponibles
Les mêmes méthodes sont applicables à /osrm-engine-idf/ qui concerne l'ile de france et inclus les rails du métro.
nearest
Elle sert à connaitre le point le plus proche situé sur l'infrastructure ferroviaire. Elle s'emploi simplement :
http://osrm.raildar.fr/osrm-engine/nearest?loc=latitude,longitude
viaroute
Elle permet de connaitre le parcours entre (au moins) deux points situés sur le réseau :
http://osrm.raildar.fr/osrm-engine/viaroute?loc=lat,lon&loc=lat,lon&loc=lat,lon
Elle retourne une information sous forme de polyline encodée. La doc sur le décodage de cette information peut être trouvée ici. La précision des coordonnées dans la polyline est sur 6 digits au lieu de 5 dans la version google.
Projets connexes
L'ami @pbeyssac a pondu une version web de la chose pour permettre de créer / visualiser / débuguer des trajets, par ici. Cet outil embarque la totalité des réseaux ferrés mondiaux et permet :
- Le déplacement en live des marqueurs
- L'ajout de marqueurs intermédiaires pour forcer un trajet précis
- La mise en évidence des emplacements à problèmes qui ne permettent théoriquement pas à un train normal d'emprunter le trajet sélectionné
- La possibilité d'inverser le trajet
Évolutions prévues
L'engine actuel est unique pour l'ensemble du réseau ce qui mène à certains problèmes du genre un TER qui prends une LGV ou un TGV qui traverse Paris par les rails et tunnels du RER. Il sera donc décliné à minima en 3 versions :
- une version TER/Intercité
- une version Trains à grandes vitesses (TGV, Thalys, Eurostar, ICE, idTGV, ect)