js百度地图-鼠标选点连线,最终生成多边形覆盖物

最近做项目,需要使用百度地图,自定义创建区域,期初使用的是鼠标绘制管理类BMapLib.DrawingManager.可以实现功能,但无法实现事件绑定,
有些坑。于是换了一个思路。先上截图功能演示:

这里写图片描述

这里写图片描述

这里写图片描述

主要使用到的类: 
1. BMap 基类(不多说,自己看文档) 
2. Polygon (多边形覆盖物) 
3. Marker(热点标注) 
4. Polyline (绘制折线)

简单说下思路: 
第一步: 
对 Map 添加click事件。 获取当前点击的 坐标并生成 热点。 将热点 存储数据中。

第二步: 
当点击第二个点时,创建 BMap.Polyline(options,{}) .第一个 options 就是 热点集合,再调用 bmp.addOverlay(polyline).加入到地图中。 注意:(如果后面要做折线删除,就需要调用enableMassClear()【官方解释:允许覆盖物在map.clearOverlays方法中被清除】)、

第三步: 
当满足3个以上的点。 就可以闭合,结束绘画区域了。 这里所谓的 闭合,其实是一个假象。 
做的操作其实是: 将polyline 里的 点的坐标, 读出来,再生成一个 polygon对象。 然后回来再删除 polyline 对象。

后面的思路,就简单很多了。附下载地址,欢迎沟通!

http://download.csdn.net/detail/u012423557/9822500

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值