Skip to content

pickPolygon 多边形绘制 ​

pickPolygon 用于拾取三个以上顶点并创建闭合区域。绘制过程中会实时显示边界和填充预览,适合圈选范围、规划区域和空间查询输入。

组件案例 ​

左键依次添加顶点,双击闭合并结束绘制;至少需要三个点。

方法签名 ​

js
tools.pickPolygon(callback, data?)
参数类型说明
callback(coordinates) => void完成绘制或节点编辑后触发
dataArray<[number, number]>可选初始顶点数组

使用示例 ​

js
const tools = new PickTools(viewer, {
  color: '#69b9ff',
  lineWidth: 3,
  pointSize: 10,
  isReserve: true,
  mouseHints: {
    show: true,
    text: '左键添加顶点,双击结束',
  },
})

tools.pickPolygon((coordinates) => {
  console.log('多边形顶点:', coordinates)
})

数据衔接 ​

回调返回的是顶点数组,可以直接转换为 GeoJSON Polygon;构造 GeoJSON 时需要将首个坐标再次追加到末尾形成闭合环。

js
const ring = [...coordinates, coordinates[0]]
const polygon = {
  type: 'Feature',
  properties: {},
  geometry: { type: 'Polygon', coordinates: [ring] },
}

页面卸载时调用 tools.destroy(),并按业务需要清理由工具保留的 Entity。

基于 Apache-2.0 许可发布