如何在谷歌地图中获取标记和中心之间的距离

Posted

技术标签:

【中文标题】如何在谷歌地图中获取标记和中心之间的距离【英文标题】:How to get distance between a marker and the center in googlemaps 【发布时间】:2012-01-14 07:15:59 【问题描述】:

我想计算标记与地图中心之间的距离 - 谁能解释一下我是怎么做的?

【问题讨论】:

【参考方案1】:

标记通常使用坐标设置,如下所示: http://code.google.com/apis/maps/documentation/javascript/overlays.html#Markers

这是一个关于获取边界和确定地图居中位置的精彩主题: Google Map API v3 — set bounds and center

所以,既然您有两组坐标,请使用以下公式计算距离: http://www.movable-type.co.uk/scripts/latlong.html

【讨论】:

【参考方案2】:

您可以使用geometry 库来解决这个问题。您需要在加载 Maps JS 时指定它:

<script type="text/javascript" src="http://maps.googleapis.com/maps/api/js?libraries=geometry&sensor=false"></script>

然后,在您的应用程序代码中:

var center = map.getCenter();
var markerLatLng = marker.getPosition();
var distance = google.maps.geometry.spherical.computeDistanceBetween(center, markerLatLng);

这会返回以米为单位的距离。

【讨论】:

以上是关于如何在谷歌地图中获取标记和中心之间的距离的主要内容,如果未能解决你的问题,请参考以下文章

如何在谷歌地图的指定位置获取标记(或图钉)?

我们如何在谷歌地图中为多边形应用可编辑标记

如何使用LatLng在谷歌地图v2中以公里为单位获取两个地方之间的距离

如何根据沿线的距离在谷歌地图折线上添加标记?

如何使用javascript在谷歌地图中的多个标记之间绘制路线图

如何在谷歌地图上获取图像视图坐标(位置/纬度)