【问题标题】:Find the closest marker from a new added marker on a map从地图上新添加的标记中查找最近的标记
【发布时间】:2014-03-09 21:25:13
【问题描述】:

我正在使用 Google 地图 API 为快餐客户服务开发一个应用程序。客服人员应该能够在地图上添加一个标记(包含呼叫者地址),并且地图会自动向他显示离呼叫者最近的分支(工人刚刚添加的新标记)。

我可以将分支显示为数组中的标记,并且可以将新标记添加到地图中,但是找不到任何可能计算旧标记和新添加标记之间的距离的地方。

除了我发现this 是从当前位置计算的,而不是从仍然远离我需要的添加标记。

任何人都可以给我具体的代码吗?

【问题讨论】:

    标签: javascript google-maps google-maps-api-3 google-maps-markers google-apps


    【解决方案1】:

    可能您有 map 'click' 事件,并且您在该事件中添加了新标记。你有一个在in this link 之前共享的解决方案。您需要在添加标记后调用 find_closest_marker() 并使用新添加的标记的 position 属性调用函数:

    marker.setMap(map);
    find_closest_marker(marker.position);
    

    之后,您只需将event 中的find_closest_marker() 函数更改为类似

    var lat = event.lat();.

    【讨论】:

    • 这看起来很有帮助,谢谢,会尝试一下,如果有人有任何其他想法,请随时分享。
    • 您能从使用新添加的标记位置调用函数开始更具体吗?或者举个例子怎么做?
    • @HashimAdel 为什么需要它?您已经说过我可以显示数组中的标记,这意味着您可以创建标记并将其添加到地图和数组中。此外,由于我不知道您的代码,因此很难引用您新添加的标记。在我的共享代码markermarker.setMao(map) 是您新添加的标记对象。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-05-02
    • 1970-01-01
    • 2023-03-27
    • 2014-09-22
    • 1970-01-01
    相关资源
    最近更新 更多