我正在努力确保我的地图中心点位于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");
}
});
答案 0 :(得分:3)
KmlLayer有一个方法getDefaultViewport,它将为您提供叠加层的默认视口(地图将居中的边界以显示所有内容。
getDefaultViewport()LatLngBounds获取正在显示的图层的默认视口。
返回的LatLngBounds有一个contains方法。
您无法访问KmlLayer的任何内部内容。