0.3.7 • Published 11 months ago

@hansotech/front_mapbox_custom_draw v0.3.7

Weekly downloads
-
License
mit
Repository
-
Last release
11 months ago

基于 mapbox-gl-draw 完善绘制功能

npm.io

install

npm install @dijiang/front_mapbox_custom_draw

use

import MapboxDrawer from '@dijiang/front_mapbox_custom_draw'

const drawer = new MapboxDrawer(map)

switch tool

drawer.switchDrawTool(drawType, styleTemplate, option)

返回一个promise,值为绘制的图形,测量工具为null
参数如下:

drawType 绘制类型

namedrawType
标点draw_point
直线draw_line_string
自由绘线freeline
细箭头straightarrow
多边形draw_polygon
测距measure_line
测面measure_polygon
曲线curve
正圆circle
椭圆ellipse
矩形rectangle
扇形sector
曲线面closecurve
钳击箭头doublearrow
燕尾箭头tailsquadarrow
文字标注text

styleTemplate 样式模板

获取默认样式,根据用户界面进行修改:

const styleTemplate = drawer.getStyleTemplate(drawType)

/* styleTemplate:{_color: '#f00',_size: 10 ...} */

当UI触发修改后:

drawer.changeStyle(key, value);

地图交互选中已经绘制的图形抛出其样式:

 drawer.select(currentSelectStyle => toSetUi(currentSelectStyle));

option

测量工具信息,{unit: 'm' | 'km'}

methods

// 如上:
switchDrawTool()
select()
changeStyle()
getStyleTemplate()



// 返回上一步操作
trash():void

// 获取所有
getAll(): features

// 删除所有
deleteAll():void