要素绘制插件

要素绘制插件和几何绘制插件的功能特点类似,主要区别在于要素绘制所绘制的是2D的图形,几何绘制插件则是3D的图形。

1. 功能说明

要素绘制插件的功能同几何绘制插件。

2. 构造

在SDK中实例化要素绘制插件,代码示例如下:

const featureDrawingPlugin = new ubm.FeatureDrawingPlugin({hasZ:true})

可在实例化插件的时候,初始化一些插件功能,可传入的插件参数如下:

参数名称类型可选说明
hasZboolean--控制绘制的要素是否有高程
spatialReferenceboolean--要素的坐标系,共有两种:3857(默认值)和4326

3. 属性

属性类型可选说明
pointStyle------点样式
polylineStyle------线样式
polygonStyle------面样式
graphicArr[]---全部要素信息

3.1 点样式

设置点样式,代码示例如下:

featureDrawingPlugin.model.pointStyle = {
  color: 'red',
  size: 10,
  type: 'square',// square circle
  outline: {
    color: 'blue',
    size: 1,
  }
}

点样式的属性参数可参考几何绘制中的点的2D点样式。

3.2 线样式

设置线样式,代码示例如下:

featureDrawingPlugin.model.polylineStyle = {
  color: 'rgba(0,0,255,1)',
  size: 6,
  pattern: 'solid',
  //线的特征标记
  // marker: undefined,
  marker: {
    placement: 'end',
    style: 'arrow',
    color: 'rgba(0,255,255,1)'
  }
}

线样式的属性参数可参考几何绘制中的线的2D线样式。

3.3 面样式

设置面样式,代码示例如下:

featureDrawingPlugin.model.polygonStyle = {
  color: '#0ff',
  outline: {
    size: 2,
    color: '#f00',
    pattern: 'solid',
  },
  pattern: 'solid'
}

面样式的属性参数可参考几何绘制中的面的2D面样式。

3.4 全部要素信息

获取当前绘制的全部要素信息,代码示例如下:

const res = featureDrawingPlugin.model.graphicArr

4. 方法

方法说明
start()开启绘制要素图形
closeMoveGraphic()关闭移动模型
openMoveGraphic()开启移动图形,默认是开启的
clearSelectGraphic()清除选中的图形
clearAllGraphic()清除绘制的全部图形

4.1 开启绘制

start(type: string): void

参数type:点'point' | 线'polyline' | 面'polygon' | 方'rectangle' | 圆'circle'。

开启绘制要素图形,代码示例如下:

featureDrawingPlugin.model.start('point')

4.2 关闭移动

closeMoveGraphic(): void

关闭绘制的要素图形可被选中并移动的功能,代码示例如下:

featureDrawingPlugin.model.closeMoveGraphic()

4.3 开启移动

openMoveGraphic(): void

开启绘制的要素图形可被选中并移动的功能,代码示例如下:

featureDrawingPlugin.model.openMoveGraphic()

4.4 清除选中

clearSelectGraphic(): void

可选中某个绘制的图形进行清除操作,代码示例如下:

featureDrawingPlugin.model.clearSelectGraphic()

4.5 清除全部

clearAllGraphic(): void

可一键清除全部绘制的要素图形,代码示例如下:

featureDrawingPlugin.model.clearAllGraphic()