【发布时间】:2012-01-14 07:15:59
【问题描述】:
我想计算标记与地图中心之间的距离 - 谁能解释一下我是怎么做的?
【问题讨论】:
标签: javascript google-maps-api-3
我想计算标记与地图中心之间的距离 - 谁能解释一下我是怎么做的?
【问题讨论】:
标签: javascript google-maps-api-3
标记通常使用坐标设置,如下所示: 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
【讨论】:
您可以使用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);
这会返回以米为单位的距离。
【讨论】: