【问题标题】:Finding particular cities along your Path沿您的路径查找特定城市
【发布时间】:2012-11-19 10:59:26
【问题描述】:

我需要你的建议。我正在创建一个 Web 应用程序,我需要在其中查找特定城市是否存在于我的路径中。我正在使用 google API 来获取路径方向,但它不会返回之间的城市。

例如,如果我从 A -> D 出发,我想知道 C ->D 是否存在于我的路径 A -> D 上。如果我知道 A -> D 之间的城市,我可以轻松做到这一点。但谷歌 API 并没有透露这一点。有没有人有任何其他更好的建议。谢谢

【问题讨论】:

    标签: google-maps google-maps-api-3


    【解决方案1】:

    城市名称不是很准确,您需要城市的 LatLng。

    基于 LatLng,几何库的 isLocationOnEdge() 方法允许您确定 LatLng(city) 是否位于(或靠近)为路线定义的折线:

    google.maps.geometry.poly
      .isLocationOnEdge(LatLngOfCity,
                        new google.maps.Polyline({path:google.maps.geometry.encoding.decodePath(response.routes[0].overview_polyline.points)}),
                        0000000001));
    

    response 必须是方向结果,最后一个参数是公差

    http://jsfiddle.net/doktormolle/DXCH8/

    【讨论】:

    • 嗨@Dr.Molle,您提供的解决方案可以实时工作,但就我而言,我有数千条路线或注册的人说从A到D旅行,我想迭代所有这些检查一下。还有其他方法吗??
    • 在这种情况下,您需要一个服务器端解决方案。听起来好像luktek.com/Blog/2011-02-03-google-maps-routeboxer-in-php 应该在 PHP 中工作(还没有测试过),应该可以在需要时将其翻译成另一种语言。
    猜你喜欢
    • 2020-04-06
    • 2017-07-12
    • 2020-10-27
    • 1970-01-01
    • 1970-01-01
    • 2011-12-11
    • 2012-05-01
    • 1970-01-01
    • 2017-10-27
    相关资源
    最近更新 更多