Google maps 捕捉到最近的标记

Google maps 捕捉到最近的标记,google-maps,google-maps-markers,Google Maps,Google Maps Markers,我使用谷歌地图,我有2个或更多的标记,它们可以拖动。 我想捕捉2个标记,如果它们靠近,并将它们合并为1个。 这可能吗 有人能给我指点一下吗。。如何实现这一点?您需要处理对象上的。诀窍在于,当你发现你离另一个标记足够近,可以将它们捕捉在一起时,你会怎么做。我对此非常满意,并认为隐藏当前拖动的标记可能是一个好方法 GEvent.addListener(marker, "drag", function(point) { // iterate over your points and for

我使用谷歌地图,我有2个或更多的标记,它们可以拖动。 我想捕捉2个标记,如果它们靠近,并将它们合并为1个。 这可能吗

有人能给我指点一下吗。。如何实现这一点?

您需要处理对象上的。诀窍在于,当你发现你离另一个标记足够近,可以将它们捕捉在一起时,你会怎么做。我对此非常满意,并认为隐藏当前拖动的标记可能是一个好方法

GEvent.addListener(marker, "drag", function(point) {

    // iterate over your points and for each otherPoint...
    if (near (point, otherPoint))
    {
        // hide this marker
        marker.hide ();

        // move nearby marker to indicate merge?

        // then delete the dragged marker on the dragend (if it was merged)
    }
}
这不是一个完全优雅的解决方案,但它可能适合您的目的

编辑:我想知道您是否正在寻找代码来检查附近的点,因此我更新了我的示例以执行此操作:

function near (point1, point2)
{
    sw = new GLatLng(point2.lat() - 0.005, point2.lng() - 0.005);
    ne = new GLatLng(point2.lat() + 0.005, point2.lng() + 0.005);
    var bounds = new GLatLngBounds(sw, ne);
    if (bounds.contains (point1))
        return true;

    return false;
}

你想问我的这个问题有什么特别的地方吗?是我说的吗?;)好。。是别人帮我做的。。但他用了你的密码。。所以:thx:)