是否有机会从Google地图或OpenStreetMap获取所有十字路口的图表?不是整个世界,而是一些片段:)对于每个十字路口我都需要知道坐标,所有邻居(最近的十字路口)的列表以及到那些十字路口的距离。 我试图实现一种搜索算法,所以我需要这些数据来提供最短路径的搜索。 谢谢!
答案 0 :(得分:2)
使用GraphHopper很容易做到(披露:我是作者)。只需下载Java源代码并实现自定义搜索算法即可。所有所谓的塔节点都是您需要的交汇点,您可以轻松获取它们的坐标(伪代码):
g = hopper.getGraph()
loop from i=0 to g.getNodes()
print g.getLatitude(i) // or getLongitude
答案 1 :(得分:0)
Google maps API无法提供您所需的内容。但是,您可以使用一些间接方法。
Google地图道路API将接受一组随机点并将其捕捉到合适的道路。您仍然需要弄清楚如何定位它们之间的交叉点和距离。
google.maps.DistanceMatrix将为您提供原始和目的地之间的距离和时间。您必须确定要查询的原始和目的地。
如果您在原始路线,目的地和可选路标中进行传真,google.maps.DirectionsService会建议您路线。
看起来你应该使用前面提到的两个来检测交叉点。
另一种方法是使用老虎地理编码器安装postGis。不管是一整天