Skip to content

plugin-drawing-topology

beta

拓扑路径绘制。

交互提示

鼠标左键单击连接一个点

鼠标右键单击或 delete | Backspace 键删除上一个点

鼠标左键双击或 return | Enter 键保存路径并结束绘制

esc 键清空路径并结束绘制

样例

安装

bash
npm install @soonspacejs/plugin-drawing-topology -S
# or
yarn add @soonspacejs/plugin-drawing-topology -S

使用方法

js
import SoonSpace from 'soonspacejs';
import DrawingTopologyPlugin from '@soonspacejs/plugin-drawing-topology';

const ssp = new SoonSpace({
  el: '#view',
  options: {},
  events: {},
});

const drawingTopologyPlugin = ssp.registerPlugin(DrawingTopologyPlugin, 'drawTopologyPlugin');
consolo.log(drawingTopologyPlugin);

属性

drawing

是否正在绘制

用法

js
drawingTopologyPlugin.drawing;

方法

start

开始绘制拓扑路径

定义

ts
export interface StartOptions extends TopologyInfo {
  onCancel?: () => void;
  onAdd?: (node: TopologyNodeInfo, intersectObject: Object3D) => void;
  onUndo?: (node: TopologyNodeInfo) => void;
  onDone?: (nodes: TopologyNodeInfo[], topology: Topology | null) => void;
}

function start(options: StartOptions): void;

用法

js
drawingTopologyPlugin.start({
  id: 'drawing_topology',
  onDone(nodes, topology) {
    console.log('drawEnd', nodes, topology);
  },
  onAdd(addNode, intersectObject) {
    console.log('add', addNode, intersectObject);
  },
  onUndo(undoNode) {
    console.log('undo', undoNode);
  },
  onCancel() {
    console.log('drawCancel');
  },
});

参数

options
  • 描述: 配置
  • 必填:
  • 类型: StartOptions
StartOptions
属性描述类型必填默认值
onDone绘制完成的回调函数function(nodes: TopologyNodeInfo[], topology: Topology | null){}
onAdd添加 node 回调函数function(node: TopologyNodeInfo, intersectObject: Object3D){}
onUndo撤销 node 回调函数function(node: TopologyNodeInfo[]){}
onCancel取消绘制的回调函数function(){}

其他配置参考这里

undo

撤销上一次 node,触发 onUndo

定义

ts
function undo(): void;

用法

js
drawingTopologyPlugin.undo();

done

完成本次绘制,触发 onDone

定义

ts
function done(): void;

用法

js
drawingTopologyPlugin.done();

cancel

取消绘制,触发 onCancel

定义

ts
function cancel(): void;

用法

js
drawingTopologyPlugin.cancel();

浙ICP备16043491号