第12行: | 第12行: | ||
| new BMapGLLib.DrawingManager(map,opts) | | new BMapGLLib.DrawingManager(map,opts) | ||
| 实例化鼠标绘制工具 | | 实例化鼠标绘制工具 | ||
− | | [[ | + | | [[github.com/huiyan-fe/BMapGLLib|BMapGLLib文档]] |
|- | |- | ||
| DrawingManager | | DrawingManager | ||
| drawingManager.open() | | drawingManager.open() | ||
| 开启绘制 | | 开启绘制 | ||
− | | [[ | + | | [[github.com/huiyan-fe/BMapGLLib|BMapGLLib文档]] |
|- | |- | ||
| DrawingManager | | DrawingManager | ||
| drawingManager.close() | | drawingManager.close() | ||
| 关闭绘制 | | 关闭绘制 | ||
− | | [[ | + | | [[github.com/huiyan-fe/BMapGLLib|BMapGLLib文档]] |
|} | |} | ||
</div></div><div class="header"><div class="active">核心代码</div></div><div class="pre-wrap"> | </div></div><div class="header"><div class="active">核心代码</div></div><div class="pre-wrap"> |
2020年10月9日 (五) 14:58的版本
覆盖物绘制
功能场景
该示例应用到BMapGL的开源工具库BMapGLLib的绘制类DrawingManager进行基础图形的绘制。
DEMO
https://mapopen-website-wiki.cdn.bcebos.com/wiki/android-loc-sdk/sdkgetAK.mov
覆盖物绘制示例demo
核心接口
类 | 接口 | 描述 | 参考文档 |
DrawingManager | new BMapGLLib.DrawingManager(map,opts) | 实例化鼠标绘制工具 | BMapGLLib文档 |
DrawingManager | drawingManager.open() | 开启绘制 | BMapGLLib文档 |
DrawingManager | drawingManager.close() | 关闭绘制 | BMapGLLib文档 |
核心代码
var styleOptions = { strokeColor: '#5E87DB', // 边线颜色 fillColor: '#5E87DB', // 填充颜色。当参数为空时,圆形没有填充颜色 strokeWeight: 2, // 边线宽度,以像素为单位 strokeOpacity: 1, // 边线透明度,取值范围0-1 fillOpacity: 0.2 // 填充透明度,取值范围0-1 }; var labelOptions = { borderRadius: '2px', background: '#FFFBCC', border: '1px solid #E1E1E1', color: '#703A04', fontSize: '12px', letterSpacing: '0', padding: '5px' }; // 实例化鼠标绘制工具 var drawingManager = new BMapGLLib.DrawingManager(map, { // isOpen: true, // 是否开启绘制模式 enableCalculate: false, // 绘制是否进行测距测面 enableSorption: true, // 是否开启边界吸附功能 sorptiondistance: 20, // 边界吸附距离 circleOptions: styleOptions, // 圆的样式 polylineOptions: styleOptions, // 线的样式 polygonOptions: styleOptions, // 多边形的样式 rectangleOptions: styleOptions, // 矩形的样式 labelOptions: labelOptions, // label样式 }); function draw(e) { var arr = document.getElementsByClassName('bmap-btn'); for(var i = 0; i<arr.length; i++) { arr[i].style.backgroundPositionY = '0'; } e.style.backgroundPositionY = '-52px'; switch(e.id) { case 'marker': { var drawingType = BMAP_DRAWING_MARKER; break; } case 'polyline': { var drawingType = BMAP_DRAWING_POLYLINE; break; } case 'rectangle': { var drawingType = BMAP_DRAWING_RECTANGLE; break; } case 'polygon': { var drawingType = BMAP_DRAWING_POLYGON; break; } case 'circle': { var drawingType = BMAP_DRAWING_CIRCLE; break; } } // 进行绘制 if (drawingManager._isOpen && drawingManager.getDrawingMode() === drawingType) { drawingManager.close(); } else { drawingManager.setDrawingMode(drawingType); drawingManager.open(); } };
复制
深色
复制成功