使用Google Maps MapCanvasProjection“伪造”缩放级别

我正在使用google.maps.MapCanvasProjection在即将平移和放大到新位置之前计算有关地图的一些内容(使用fromLatLngToContainerPixel )。 以下是我如何获得投影:

var overlay = new google.maps.OverlayView();
overlay.draw = function(){};
overlay.setMap(map);
var proj = overlay.getProjection();

但是,使用此叠加层所需的计算需要基于缩放后地图的位置和缩放级别,因为它使用的像素宽度在缩放级别更改后不会准确。 我写了一个函数getZoomLevel() ,它返回我将需要的未来缩放级别,但我无法弄清楚如何用这个新的缩放级别创建“虚拟地图”。 我想在实际的,可见的地图以任何方式移动或缩放之前进行这些计算。

创建一个从未添加到DOM的全新地图的fromLatLngToContainerPixel是,有没有一种方法可以使从fromLatLngToContainerPixel获得与当前可见地图的缩放fromLatLngToContainerPixel不同的缩放级别?

工作,但hackish的例子:http://hamclock.net/maps/

链接地址: http://www.djcxy.com/p/81573.html

上一篇: "Fake" a zoom level with Google Maps MapCanvasProjection

下一篇: detecting visible google map markers after setZoom