2014-02-15 59 views
0

我必须开发一个开放的街道地图为我的第二年项目(项目的一部分)的路由系统。我无法使用任何外部API进行路由。我了解.osm文件,我可以使用osm2po将它们转换为postgresql格式,并创建一个数据库,但在此之后,我很无能。我研究了很多,但在这个主题上找不到任何适当的帮助。任何建议都会很棒。路由与开放的街道地图

+0

可能是,请尝试在[程序员交流](http://programmers.stackexchange.com/)上发布此问题。或[计算机科学](http://cs.stackexchange.com/)网站。这里超出了范围。 –

+0

在这个网站上发布了很多osm问题,所以我想我应该在这里问1。 – Sneh

回答

1

如果你只是专注于开发一种新算法,你可能会看看Trafficmining framework,它为你做了所有的解析工作,你只需要为你的自定义行为编写一些可用的java组件。

+0

谢谢兄弟,我会再看一遍。 :) – Sneh

+0

没问题。请记住,使用OSM有点棘手,因为数据不是100%同质的。如果你需要更多的想法看看 * http://wiki.openstreetmap.org/wiki/Research * https://wiki.openstreetmap.org/wiki/Conferences(Talks) – MaM

+0

是的,我可以弄清楚。作为我们自己制作路由引擎的第二年,兄弟太多了。 – Sneh

1

你没有真正告诉我们你卡在哪里。但我建议开始阅读关于routingtags for routing的OSM维基。查看OSM的许多online routersoffline routers之一也会给你一些想法。

+0

我已经得到了像x1 y1 x2 y2这样的列的sql表,但我真的不知道它们代表什么,我怎样才能在Hjikstra或A *算法中使用它们来找到两点之间的最短路径。 – Sneh

+0

我想你首先必须从数据库中的所有元素中构建一个图形,同时考虑[路由标记](https://wiki.openstreetmap.org/wiki/OSM_tags_for_routing)。 – scai

+1

谢谢我现在可以使用数据库在街道上绘制地图上的点。我现在将集中我的项目的其他方面,然后开始在数据库上实现Dikstra算法。 – Sneh

相关问题