0

我想在拖动另一个标记时实现对标记的捕捉功能。

我有一个函数可以检查两个标记是否“关闭”:(从这里获取)

function arePointsNear(point1, point2) {
    var sw = new google.maps.LatLng(point2.lat() - 0.005, point2.lng() - 0.005);
    var ne = new google.maps.LatLng(point2.lat() + 0.005, point2.lng() + 0.005);
    var bounds = new google.maps.LatLngBounds(sw, ne);
    return bounds.contains(point1);
};

现在,在标记的拖动事件中,我这样做:

for (var index in allMarkers) {
    if(allMarkers[index] == marker) {
        continue;
    }

    var point1 = allMarkers[index].position;
    var point2 = marker.position;

    // This always returns true
    var isClose = arePointsNear(point1, point2);
}

难道我做错了什么?

4

1 回答 1

0

该算法正在运行..问题出在我的代码中。我正在检查同一个标记的位置,而不是两个标记的位置。

于 2013-01-19T22:08:16.780 回答