我正在寻找一种使用Google Maps V3 API计算给定边界的缩放级别的方法,类似于getBoundsZoomLevel()V2 API.
这是我想要做的:
// These are exact bounds previously captured from the map object
var sw = new google.maps.LatLng(42.763479, -84.338918);
var ne = new google.maps.LatLng(42.679488, -84.524313);
var bounds = new google.maps.LatLngBounds(sw, ne);
var zoom = // do some magic to calculate the zoom level
// Set the map to these exact bounds
map.setCenter(bounds.getCenter());
map.setZoom(zoom);
// NOTE: fitBounds() will not work
Run Code Online (Sandbox Code Playgroud)
不幸的是,我无法将该fitBounds()方法用于我的特定用例.它适用于在地图上拟合标记,但它不适用于设置精确边界.这是我不能使用该fitBounds()方法的一个例子.
map.fitBounds(map.getBounds()); // not what you expect
Run Code Online (Sandbox Code Playgroud) 我试图找到一种方法来确定地图的缩放级别,然后我调用map.fitBounds(),我似乎无法找到方法.
在API v2中有一个方法GMap.getBoundsZoomLevel(bounds:GLatLngBounds),但我在API v3文档中找不到相应的方法.
是否有非谷歌的算法可以预先确定缩放级别?