在高德地图中自适应显示多个覆盖物可使用setFitView(overlayList:Array) 。根据地图上添加的覆盖物分布情况,自动缩放地图到合适的视野级别,参数overlayList默认为当前地图上添加的所有覆盖物图层。
而在Google地图中没有提供 自适应显示多个覆盖物 方法的实现。如果想要达到该效果,那么就需要手动去实现。
var overlays = getOverlay();// 获取地图上的所有覆盖物对象(前提是,覆盖物都已经在地图上定义完成)
var bounds = new google.maps.LatLngBounds();
for(var i=0;i<overlays.length;i++){
bounds.extend(overlays[i].getPosition());
}
map.fitBounds(bounds);
在 google.maps.LatLngBounds 类中,
extend(point:LatLng | LatLngLiteral) :Extends this bounds to contain the given point.
在 google.maps.Map 类中:
fitBounds(bounds:LatLngBounds | LatLngBoundsLiteral):Sets the viewport to contain the given bounds.