百度地图自定义边界放大占资源的问题

作者:vkvi 来源:ITPOW(原创) 日期:2011-2-18

百度地图接口同样提供了 overlay 功能,所以我们可以在上面做标注,可以加边界这样的覆盖物。

百度地图的边界是到省一级,所以要细化的话,自定义边界是必要的。

如上就添加了一个自定义边界,边界为虚线、蓝色、1px、透明度 0.8,填充色为红色、透明度 0.5。

这个 point 是个数组,数组中的每一项都是 BMap.Point 对象,BMap.Point 对象包括一个点的经度和纬度,经度和纬度的数据可从地理信息系统(GIS)中导出并处理。

现在问题是,再放大地图的话,若边界很多,速度就会很慢,特指 IE 6,速度超慢。

实用的解决方法是,放大到一定程度上,就不显示该边界了,实际上也是合理的,因为放得太大了,边界都是在地图不可见的地方了,可以隐藏。这样会极大提升速度。

另外,还要为地图增加事件,当放大时隐藏边界,放缩小时又将边界显示出来。

另外,若要彻底让边界从地图上消失,使用 map.removeOverlay(overlays[i]);。

百度地图 API:http://openapi.baidu.com/map/index.html

相关文章