Google Map API如何自动缩放级别教程

最近花了两晚上的时间写了一个google地图的应用程序,采用了map api,weather api,localsearch api,我想的是有空写一些关于Google Map API的文章,今天就写一个关于自动缩放地图到合适级别的方法,这里说的自动缩放,指的是地图上已经加入了很多Gmarker点,而这些点任何地方都有, 我们为了要它们在地图上能够都显示出来,必须要个Google Map设置一个合适的缩放级别和中心点,这里用的方法是Google Map API的GLatLngBounds。

假设我们创建的Google Map对象为gmap = new GMap2(),我们添加所有GMarker都保存在一个名字为markers的数组里,它们的点遍布各地,我们要做的就是要这些点都在地图上显示出来, 也就是自动缩放地图(set auto zoom)。

首先我们bounds = new GLatLngBounds();,然后我们使用一个循环把所有的GMarker中的GLatLng对象传给bounds, 即:bounds.extend(markers[i].getLatLng()),做完循环之后我们就可以通过以下的代码set auto zoom了:
gmap.setCenter(bounds.getCenter(),gmap.getBoundsZoomLevel(bounds);
结合起来就是下面的setAutoZoom的函数:

function setAutoZoom(gmap,markers){
var i=markers.length,bounds = new GLatLngBounds();
while(i–){
bounds.extend(new GLatLng(markers[i].y,markers[i].x));
}
gmap.setCenter(bounds.getCenter(),gmap.getBoundsZoomLevel(bounds));
}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值