1.与测量类相关的主要Widget
与测量类相关的主要Widget如下:
- vtkDistanceWidget:用于在二维平面上测量两点之间的距离。
- vtkAngleWidget:用于在平面的角度测量。
- vtkBiDimensionalWidget:用于测量二维平面上任意两个正交方向的轴长。
2.创建用于测量距离的Widget应用实例
先复习一下创建Widget的一般步骤:1.实例化Widget;实例代码如下:
2.指定渲染窗口交互器。Widget可以通过它来监听用户事件。
3.必要时使用观察者/命令模式创建回调函数。与widget交互时,它会调用一些通用的VTK事件(94个事件列表),如StartInteractionEvent、InteractionEvent、EndInteractionEvent。用户通过监听这些事件并作出响应,从而可以更新数据、可视化参数或者应用程序的用户图形界面。
4.创建合适几何表达实体。用SetRepresentation()函数把他与Widget关联起来,或者使用Widget默认的几何表达实体。
5.最后,必须激活Widget,使其在渲染场景中显示。默认情况下,按键<I>用于激活Widget,使其在场景中可见。
#include <vtkAutoInit.h> VTK_MODULE_INIT(vtkRenderingOpenGL) VTK_MODULE_INIT(vtkInteractionStyle) VTK_MODULE_INIT(vtkRenderingFreeType) #include <vtkCommand.h> #include <vtkSmartPointer.h> #include <vtkJPEGReader.h> #include <vtkImageActor.h> #include <vtkRenderer.h> #include <vtkRenderWindow.h> #include <vtkRenderWindowInteractor.h> #include <vtkInteractorStyleImage.h> #include <vtkDistanceWidget.h>