Appearance
交互 Widget
在 v0.0.12 后,库中增加了一系列交互式 Widget,可以用于在视图中定义中心、长度、范围等信息,以及进行手动分割等操作。
当前包含以下 Widget:
- XPointWidget —— 定义标注点坐标
- XLineWidget —— 通过两点定义线段与中点
- XRectCenterWidget —— 通过矩形定义中心
- XCircleCenterWidget —— 通过圆定义中心
- XPolygonSegWidget —— 绘制多边形进行手动分割
- XCircleSegWidget —— 圆形笔刷进行手动分割
所有 Widget 均基于 vtk.js 的 WidgetManager 使用,基本流程为:
- 创建
vtkWidgetManager并绑定到视图的 renderer。 - 通过
XxxWidget.newInstance(...)创建 widget。 - 调用
widgetManager.addWidget(widget)注册到场景,返回 view widget。 - 通过 view widget 的
onStartInteractionEvent/onInteractionEvent/onEndInteractionEvent监听交互事件。 - 调用
widgetManager.grabFocus(widget)进入放置模式。