首页 / OpenLayers / 使用示例
`r`n 绘制规则图形
用 geometryFunction 把拖动半径转成正方形或正三角形,一次手势画出规则图形。
`r`n
源码与运行效果
说明
绘制类型仍是 Circle,但 geometryFunction 在每次指针移动时
接收已知坐标并返回自定义几何。示例取圆心到指针的距离作半径,
用 ol.geom.Polygon.fromCircle(circle, sides) 生成指定边数的正多边形。
圆形、正方形、三角形共用同一套交互,只是 sides 不同,
松手后图形定稿并写入源。
| 操作 | 结果 |
|---|---|
| 选「正方形」后拖拽 | 画出以拖拽点为边界的正方形 |
| 选「三角形」后拖拽 | 画出正三角形,方向随拖拽位置旋转 |
| 选「圆形」后拖拽 | 回到默认的圆形绘制 |
Polygon.fromCircle 的第三个参数是起始角度;需要固定朝向时传入常量,否则图形会跟随拖拽方向转动。