百度地图

分享几个点:

1. 画常规覆盖物

// 画点
var myIcon = new BMap.Icon("../images/area.png", {
offset: new BMap.Size(10, 25)
});
var marker = new BMap.Marker(point, {
icon: myIcon
});
map.addOverlay(marker);

// 画圆
// var circle = new BMap.Circle(point, 1000, styleOptions);
// map.addOverlay(circle);

// 画多边形
// var polygon = new BMap.Polygon([
// new BMap.Point(114.033735,22.551995),
// new BMap.Point(114.050264,22.549725),
// new BMap.Point(114.037113,22.539845)
// ], styleOptions);

// 画矩形
// var pStart = new BMap.Point(114.0162,22.552863);
// var pEnd = new BMap.Point(114.037041,22.542248);
// var polygon = new BMap.Polygon([
// new BMap.Point(pStart.lng,pStart.lat),
// new BMap.Point(pEnd.lng,pStart.lat),
// new BMap.Point(pEnd.lng,pEnd.lat),
// new BMap.Point(pStart.lng,pEnd.lat)
// ], styleOptions);
// map.addOverlay(polygon);

2. 根据城市名称定位地图

map.centerAndZoom(city, 18); 

3.地图加载完成后 / 每次渲染完成触发事件 (慎用:避免多次重绘)

map.addEventListener("tilesloaded", function () {
drawingManager.setDrawingMode(BMAP_DRAWING_CIRCLE);
});

 4.鼠标绘图完成计算面积

drawingManager.addEventListener('overlaycomplete', overlaycomplete);
var overlaycomplete = function (e) { console.log(e.calculate) }

 5.清除覆盖物

map.removeOverlay(overlays);
6.1 点击工具   : 非当前绘制模式的其他绘制模式则清除覆盖物
6.2 绘制时,清除已有覆盖物(可能包括非鼠标绘制的图形及鼠标绘制的图形覆盖物)
6.3 核心点:修改 DrawingManager 类  -  触发绘制前 清除覆盖物 

附参考价值网址:

官方文档

官方文档-应用场景

CityList 应用     省 市 区 联动

官方例子 - 定位

DrawingManager 应用   鼠标绘图

官方文档 - 核心类

百度地图画出区域并获取区域坐标范围

百度地图API 显示区域边界及地名定位

 

posted @ 2018-10-11 16:33  justSmile2  阅读(226)  评论(0编辑  收藏  举报