Google地图KML图层是否包含地图中心点

时间:2013-05-14 18:06:15

标签: javascript google-maps google-maps-api-3 kml

我正在努力确保我的地图中心点位于kml图层的边界内,我无法找到很多相关内容,但我修改了here中的一些代码,看起来像它可以工作,但当然不会。

从谷歌地图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");
    }    
});

1 个答案:

答案 0 :(得分:3)

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

  

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

返回的LatLngBounds有一个contains方法。

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