GeometryEditor

几何图形编辑器。

编辑器交互操作说明:

  • 绘制:鼠标左键点击及移动即可绘制图形
  • 结束绘制:鼠标左键双击即可结束绘制折线、多边形、圆形,多边形会自动闭合
  • 单选:鼠标左键点击图形
  • 多选:按下ctrl键后点击多个图形
  • 删除:选中图形后按下delete键可删除图形
  • 拆分:选中单个多边形后可绘制拆分线,拆分线绘制完成后自动进行拆分
  • 中断:绘制或编辑过程中按下esc键可中断该过程

构造函数

语法:

new TMap.tools.GeometryEditor(options)

参数

参数名 类型 说明
options GeometryEditorOptions 几何编辑器配置参数

方法

方法 返回值 说明
setMap(map: Map) this 设置地图对象,若为null则移除编辑器
setActiveOverlay(id: String) this 设置指定图层处于编辑状态
setActionMode(mode: EDITOR_ACTION) this 设置编辑器的操作状态
getMap() Map 获取绑定的地图对象
getActiveOverlay() EditableOverlay 获取处于编辑状态的图层
getActionMode() EDITOR_ACTION 获取编辑器的操作状态
getSelectedList() Geometry[] 获取已选中的几何图形数组,Geometry可能是PointGeometry/PolylineGeometry/PolygonGeometry/CircleGeometry等
addOverlay(overlay: EditableOverlay) this 添加用于编辑的几何图层
removeOverlay(id: String) this 删除用于编辑的几何图层
getOverlayList() EditableOverlay[] 获取图层列表
setSnappable(snappable: Boolean) this 开启或关闭吸附功能,吸附功能开启时绘制或编辑图形会自动吸附到临近的点或线段上
setSelectable(selectable: Boolean) this 开启或关闭点选功能,点选功能开启时用户可点击图形进行单选和多选,选中图形后会自动将其所属图层设置为编辑状态
split() this 拆分已选中多边形,用户可绘制拆分线进行拆分,若无选中图形则无效
union() this 合并已选中多边形,若无选中图形则无效
delete() this 删除已选中图形
destroy() this 销毁编辑器

事件

事件名 参数 说明
active_changed 切换编辑图层,调用setActiveOverlay接口、选中其他图层元素或删除一个处于编辑状态的图层都会引发此事件
select 点选图形
draw_complete Geometry 绘制完成,返回几何图形
adjust_complete Geometry 修改完成,返回修改后的几何图形
delete_complete Geometry[] 删除完成,返回被删除的几何图形
split_complete PolygonGeometry[] 拆分完成,返回拆分后的多边形数组
union_complete PolygonGeometry 合并完成,返回合并后的多边形
split_fail Object 拆分失败,返回对象中的message属性说明了失败原因
union_fail Object 合并失败,返回对象中的message属性说明了失败原因

TMap.tools.constants.EDITOR_ACTION

编辑器操作模式。

常量 说明
EDITOR_ACTION.INTERACT 交互模式,该模式下用户可选中图形进行删除、修改
EDITOR_ACTION.DRAW 绘制模式,该模式下用户可绘制新图形