Comment convertir des données OSM en PostgreSQL à des fins de routage?

10

Je crée une application de routage à l'aide d'OpenStreetMap. Actuellement, ma tâche consiste à convertir les données d'un fichier OSM en PostgreSQL.

J'ai lu sur osm2pgsql, mais le problème est qu'il y est dit que osm2pgsql n'est pas adapté au routage. J'ai lu aussi sur l'osmose, mais il y a quelque chose à propos du portage des rails, ce qui signifie que je dois apprendre Ruby in Rails. J'ai essayé d'étudier RoR dans le passé et j'ai trouvé trop difficile pour moi d'apprendre.

J'utilise PHP pour mon application. Comment puis-je extraire les données du fichier OSM et les exporter vers mon PostgreSQL. Je sais que je manque peut-être quelque chose ici, mais je suis un débutant en ce qui concerne l'application de cartographie. J'espère que quelqu'un pourra m'aider. Merci! :RÉ

jalbautista
la source

Réponses:

11

Le routage dans Postgres / PostGIS est géré par la bibliothèque pgRouting de http://pgrouting.org

Il semble qu'un script a déjà été écrit pour gérer directement osm dans pgRouting à http://www.pgrouting.org/docs/tools/osm2pgrouting.html

Vous devrez installer pgRouting dans Postgres avant d'exécuter le script osm2pgrouting.

Kelso
la source
Le lien est maintenant: pgrouting.org/docs/tools/osm2pgrouting.html
mattwigway
merci, j'ai modifié ma réponse d'origine pour refléter cette mise à jour. Je n'ai pas pu trouver l'exemple entièrement travaillé, j'ai donc supprimé ce lien.
Kelso
3

Faites également attention à osm2po ( http://osm2po.de ) - il pourrait générer des scripts sql compatibles avec pgRouting et dans certains cas, il est plus facile à utiliser que osm2pgrouting (par exemple sur la plate-forme MS Windows car osm2po est écrit en Java).

Andrew
la source