灰度图像显示,只显示为灰度图,图像的灰度值范围为0-255之间
图像和以随鼠标左键按下拖动
图像可以随鼠标滚轮进行缩小放大
这是一个通用的范本。放在这里 后期方便自己使用
1,先重写一组鼠标交互,满足鼠标交互的需求
class MyStyle : public vtkInteractorStyleImage { public: static MyStyle* New(); vtkTypeMacro(MyStyle, vtkInteractorStyleImage); // 左键:只做平移,不调父类,彻底关掉 Window/Level void OnLeftButtonDown() override { FindPokedRenderer(Interactor->GetEventPosition()[0], Interactor->GetEventPosition()[1]); if (!CurrentRenderer) return; // GrabFocus 可选;如仍报错就用强转或删掉 // GrabFocus(static_cast<vtkCommand*>(EventCallbackCommand)); StartPan(); } // 鼠标移动:只在 VTKIS_PAN 状态下做平移 void OnMouseMove() override { if (this->State == VTKIS_PAN) { this->Pan