我正在为一个使用谷歌地图API的快餐客户服务的应用程序。客户服务人员应该能够在地图上添加一个标记(包含呼叫者地址),并且地图应该自动向他显示哪个分支距离呼叫者最近(新标记是工作人员刚刚添加的)。
我可以将分支显示为数组中的标记,也可以将新标记添加到地图中,但是无法找到计算旧标记和新添加标记之间距离的地方。
除了我发现this是从当前位置计算的,而不是从添加的标记计算的,这仍然离我需要的还很远。
有没有人能给我一些具体的代码,告诉我怎么做?
发布于 2014-03-05 15:59:02
您可能有map
'click'
事件,并且您在该事件中添加了新的标记。你有一个在in this link之前分享的解决方案。您需要的是在添加标记之后调用find_closest_marker()
,并使用新添加的标记的position
属性调用函数:
marker.setMap(map);
find_closest_marker(marker.position);
在此之后,您只需将find_closest_marker()
函数中的event
更改为
var lat = event.lat();
。
https://stackoverflow.com/questions/22191612
复制相似问题