nsc-ol

2.0.0 • Public • Published
<Map />

地物

highlight

在 select 和 hover 的情况都需要高亮,可能不同交互级别有不同的高亮样式。 edit 时 feature 的样式也会有改变,Modify 有自己的高亮 style 属性。

高亮方式有几种:

  1. 通过动态改变 feature style (example: https://openlayers.org/en/latest/examples/select-hover-features.html?q=modify)
  2. 添加一个高亮 layer,把需要高亮的 feature 丢进去。(这种方式高亮时无法保持原有的的 z-index 关系)

select

不管是点选、框选还是其他选择(比如通过外部地物树选择),select 的本质都是通过给定一组 feature 的 id, 来对这些 feature 进行一种样式的改变,比如高亮。

hover

需要高亮情况的一种,就是改变某个 id 的 feature 的样式。

edit/modify

考虑 redo/undo edit 操作有:调整、平移、合并、(线)打断、(线)续画

new Modify({ source });

工具栏

有些是主动工具:即用户主动去选择使用,比如:框选 有些是被动工具:即根据用户选中地物状态被动激活使用,比如:合并

通用工具:分类,工具名,工具图标,自定义工具 render,工具浮框,事件,enable condition

选择:点选、框选、已选中(单个可看名称、多个可看列表)、更多 编辑:自由调整、平移、合并、打断、裁切、续画、直径、复制、粘贴、删除、回退、重做 绘制:点、线、面 测量:长度、角度、面积 查询:搜索 转角 查看属性 空间分析 导入、导出 文件夹管理

const ToolContext = {
  map, features, selected, activatedTools, ...
}
const toolManager = new ToolManager({ map })
toolManager.add(new XXTool())
toolManager.activate('xx-tool')
toolManager.disable('xx-tool')

toolManager.refresh()

basemap

Readme

Keywords

none

Package Sidebar

Install

npm i nsc-ol

Weekly Downloads

0

Version

2.0.0

License

MIT

Unpacked Size

896 kB

Total Files

6

Last publish

Collaborators

  • ygjack