0

我正在将 javascript 中的一段谷歌地图代码从 v2 迁移到 v3

以下 v2 片段显示了中心放大的地图,因此您可以看到街道名称和具体细节

var mapG = new GMap(document.getElementById("gmmap"));
var point = new GLatLng(52.6461049, 6.5583690);
mapG.centerAndZoom(point, 3);

我已经尝试将其迁移到以下

var point = new google.maps.LatLng(52.6461049, 6.5583690);

var mapOptions = { 
   center: point, 
   zoom: 3, 
   mapTypeId: google.maps.MapTypeId.ROADMAP
};

var map = new google.maps.Map(document.getElementById("gmmap"), mapOptions);

地图以完全相同的位置为中心,但缩放距离很远。v2 和 v3 中的缩放值有区别吗?还是我以错误的方式迁移它?

如果我将 3 更改为 15,则缩放大约相等。但由于我正在迁移客户端环境,我希望它看起来完全一样

4

1 回答 1

0

V2 文档: https ://developers.google.com/maps/documentation/javascript/v2/introduction#LoadingMap 每个地图还包含一个缩放级别,它定义了当前视图的分辨率。在法线地图视图中,缩放级别可能在 0(最低缩放级别,其中可以在一张地图上看到整个世界)到 19(最高缩放级别,下至各个建筑物)之间。缩放级别取决于您所查看的世界位置,因为全球某些地区的数据比其他地区的数据更明确。在卫星视图中,缩放级别最高可达 20。

V3 文档: https ://developers.google.com/maps/documentation/javascript/tutorial#MapOptions 显示地图的初始分辨率由 zoom 属性设置,其中 zoom 0 对应于完全缩放的地球地图出,更高的缩放级别以更高的分辨率放大。

还有https://developers.google.com/maps/documentation/javascript/maxzoom?hl=en 例如,大多数路线图图像的缩放级别为 0 到 18。

所以它们应该差不多。您的代码是否有其他问题,例如您是否在任何地方执行 fitBounds() 或其他可以调整缩放级别的方法?

于 2013-05-13T08:18:53.987 回答