1

我正在尝试确保我的地图中心点位于 kml 图层的边界内,我无法找到太多关于此的信息,但我从这里修改了一些似乎可以工作的代码,但当然没有。

从 Google Maps API 我无法判断 .contains() 是否适用于 kml 图层,或者是否有类似的方法。有任何想法吗?

// bounds of the desired area
var kmlLayer = new google.maps.KmlLayer(kmlLayerURL, {map:map, suppressInfoWindows: true, preserveViewport:true});

google.maps.event.addListener(map, 'center_changed', function() {
    if (kmlLayer.contains(map.getCenter())) {
        alert("withnin kml layer bounds");
    }    
});
4

1 回答 1

3

KmlLayer一个 getDefaultViewport 方法,它将为您提供覆盖的默认视口(地图将居中以显示所有内容的边界。

getDefaultViewport() LatLngBounds 获取正在显示的图层的默认视口。

返回的 LatLngBounds 有一个 contains 方法。

您无法访问 KmlLayer 的任何内部内容。

于 2013-05-14T18:16:24.253 回答