百度地图化区域图(圆,拖动动态显示半径)

初始化地图:

var map = new BMap.Map("container");
var point = new BMap.Point(106.55373,29.556006);
map.centerAndZoom(point,20);
map.enableScrollWheelZoom(); //启用地图滚轮放大缩小

 通过事件进行圆区域的添加(根据中心点做默认半径为50米的圆),可根据点击点做中心点:

var polygon = new BMap.Circle(new BMap.Point(jd,wd), 50, {
						strokeColor: 'blue',
						strokeWeight: 2,
						strokeOpacity: 0.5
					});

//添加覆盖面到地图
map.addOverlay(polygon);
//设置覆盖面可编辑
polygon.enableEditing();

 添加拖动和点击覆盖物来改变显示圆的半径:

var label = new BMap.Label("<span id=maptip'><span>", opts1);
				// 自定义文本标注样式
				label.setStyle({
					color: 'blue',
					borderRadius: '5px',
					borderColor: '#ccc',
					padding: '10px',
					fontSize: '16px',
					height: '30px',
					lineHeight: '30px',
					fontFamily: '微软雅黑',
					border: '0px'
				});
				map.addOverlay(label);
                //鼠标点击或拖动显示半径
				var clickEvts = ['click','lineupdate'];
				for (let i = 0; i < clickEvts.length; i++)  {
					const event = clickEvts[i];
					polygon.addEventListener(event,function(e){
						switch (event) {
							case 'click':
								$("#maptip").html("径:"+polygon.xa.toFixed(2)+"米");
								break;
							case 'lineupdate':
								$("#maptip").html("半径:"+polygon.xa.toFixed(2)+"米");
								break;
						}
					})
				}

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值