要素绘制插件
要素绘制插件和几何绘制插件的功能特点类似,主要区别在于要素绘制所绘制的是2D的图形,几何绘制插件则是3D的图形。
1. 功能说明
要素绘制插件的功能同几何绘制插件。
2. 构造
在SDK中实例化要素绘制插件,代码示例如下:
const featureDrawingPlugin = new ubm.FeatureDrawingPlugin({hasZ:true})
可在实例化插件的时候,初始化一些插件功能,可传入的插件参数如下:
| 参数名称 | 类型 | 可选 | 说明 |
|---|---|---|---|
| hasZ | boolean | -- | 控制绘制的要素是否有高程 |
| spatialReference | boolean | -- | 要素的坐标系,共有两种: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()