【问题标题】:GoogleMaps or OpenStreetMap get graph谷歌地图或 OpenStreetMap 获取图表
【发布时间】:2015-06-08 05:49:55
【问题描述】:

是否有机会从 Google Maps 或 OpenStreetMap 获取所有十字路口的图表?不是整个世界,而是某个部分 :) 对于每个十字路口,我需要知道坐标、所有邻居的列表(最近的十字路口)以及到这些十字路口的距离。 我正在尝试实现一种搜索算法,因此我需要这些数据来提供最短道路的搜索。 谢谢!

【问题讨论】:

  • 十字架,你的意思是与耶稣的十字架?我不认为他们在谷歌地图中列出。即使是里约热内卢的大号也没有十字图标。教堂有一个特殊的图标。
  • 有趣 :) 谢谢,已更正
  • 恐怕我不知道从哪里开始。

标签: google-maps openstreetmap


【解决方案1】:

使用 GraphHopper 很容易做到这一点(披露:我是作者)。只需下载 Java 源代码并实现您的自定义搜索算法。所有所谓的塔节点都是您需要的路口,您可以轻松获取它们的坐标(伪代码):

g = hopper.getGraph()
loop from i=0 to g.getNodes()
 print g.getLatitude(i) // or getLongitude

【讨论】:

    【解决方案2】:

    Google 地图 API 不提供您要查找的内容。但是,您可以使用一些间接方法。

    Google 地图道路 API 将接受一组随机点并将它们捕捉到合适的道路。您仍然需要弄清楚如何定位交叉点以及它们之间的距离。

    google.maps.DistanceMatrix 将为您提供原始和目的地矩阵之间的距离和时间。您必须弄清楚我们要查询的始发地和目的地。

    如果您在原始、目的地和可选的航点中输入,google.maps.DirectionsService 会建议您一条路线。

    您似乎需要使用上述两个来检测交叉点。

    另一种方法是使用 Tiger 地理编码器安装 postGis。但是这将是一整天

    1. 列表项

    【讨论】:

      猜你喜欢
      • 2011-10-11
      • 1970-01-01
      • 1970-01-01
      • 2012-12-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2012-01-17
      相关资源
      最近更新 更多