我试图确保我的地图中心点位于kml图层的边界内,我无法找到很多有关此信息,但我修改了here中的某些代码,看来它可以工作,但是当然不是。
从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");
}
});
最佳答案
KmlLayer有一个getDefaultViewport方法,该方法将为您提供覆盖图的默认视口(地图的边界将居中显示所有内容。
getDefaultViewport()LatLngBounds获取所显示图层的默认视口。
返回的LatLngBounds具有contains方法。
您无法访问KmlLayer的任何内部内容。