如何将OSM数据转换为PostgreSQL以进行路由?


10

我正在使用OpenStreetMap创建路由应用程序。当前,我的任务是将数据从OSM文件转换为PostgreSQL。

我读到有关osm2pgsql的信息,但是问题是它说osm2pgsql不适合路由。我也阅读了有关Osmosis的文章,但是关于Rails port有所了解,我认为这意味着我需要学习Rails中的Ruby。我过去曾尝试学习RoR,但发现我很难学习。

我正在为我的应用程序使用PHP。如何从OSM文件中提取数据并将其导出到我的PostgreSQL。我知道我可能在这里遗漏了一些东西,但是在映射应用程序时我是一个新手。我希望有一个人可以帮助我。谢谢!:D

Answers:


11

Postgres / PostGIS中的路由由http://pgrouting.org的pgRouting库处理

似乎已经在http://www.pgrouting.org/docs/tools/osm2pgrouting.html上编写了将osm直接处理为pgRouting的脚本

在运行osm2pgrouting脚本之前,您需要在Postgres中安装pgRouting。



谢谢,已经编辑了我的原始答案以反映此更新。我找不到完整的示例,因此删除了此链接。
凯尔索

3

还请注意osm2po(http://osm2po.de)-它可以生成与pgRouting兼容的sql脚本,并且在某些情况下比osm2pgrouting更易于使用(例如,在MS Windows平台上,因为osm2po用Java编写)。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.