16 #ifndef __vtkSliceViewInteractorStyle_h 17 #define __vtkSliceViewInteractorStyle_h 20 #include "vtkInteractorStyleUser.h" 21 #include "vtkMatrix4x4.h" 24 #include "vtkMRMLDisplayableManagerExport.h" 43 void PrintSelf(ostream& os, vtkIndent indent) VTK_OVERRIDE;
52 virtual void OnMouseMove() VTK_OVERRIDE;
53 virtual
void OnLeftButtonDown() VTK_OVERRIDE;
54 virtual
void OnLeftButtonUp() VTK_OVERRIDE;
55 virtual
void OnMiddleButtonDown() VTK_OVERRIDE;
56 virtual
void OnMiddleButtonUp() VTK_OVERRIDE;
57 virtual
void OnRightButtonDown() VTK_OVERRIDE;
58 virtual
void OnRightButtonUp() VTK_OVERRIDE;
60 virtual
void OnMouseWheelForward() VTK_OVERRIDE;
61 virtual
void OnMouseWheelBackward() VTK_OVERRIDE;
64 virtual
void OnChar() VTK_OVERRIDE;
65 virtual
void OnKeyPress() VTK_OVERRIDE;
66 virtual
void OnKeyRelease() VTK_OVERRIDE;
69 virtual
void OnExpose() VTK_OVERRIDE;
70 virtual
void OnConfigure() VTK_OVERRIDE;
71 virtual
void OnEnter() VTK_OVERRIDE;
72 virtual
void OnLeave() VTK_OVERRIDE;
84 AdjustWindowLevelBackground = 16,
85 AdjustWindowLevelForeground = 32,
90 SetCursorPosition = 1024,
91 AllActionsMask = Translate | Zoom | Rotate | Blend | AdjustWindowLevelBackground | AdjustWindowLevelForeground
92 | BrowseSlice | ShowSlice | AdjustLightbox | SelectVolume | SetCursorPosition
94 vtkGetMacro(ActionState,
int);
95 vtkSetMacro(ActionState,
int);
101 void SetActionEnabled(
int actionsMask,
bool enable =
true);
104 bool GetActionEnabled(
int actionsMask);
111 double GetSliceSpacing();
113 void IncrementSlice();
114 void DecrementSlice();
115 void MoveSlice(
double delta);
118 void ScaleZoom(
double zoomScaleFactor);
122 void StartTranslate();
132 void StartAdjustWindowLevel();
133 void EndAdjustWindowLevel();
140 void GetEventXYZ(
double xyz[4]);
154 void CycleVolumeLayer(
int layer,
int direction);
157 void SetLabelOpacity(
double opacity);
158 double GetLabelOpacity();
165 int GetMouseInteractionMode();
169 bool IsMouseInsideVolume(
bool background);
173 bool VolumeWindowLevelEditable(
const char* volumeNodeID);
182 int StartActionEventPosition[2];
183 double StartActionFOV[3];
184 double VolumeScalarRange[2];
187 int LastEventPosition[2];
190 double LastVolumeWindowLevel[2];
vtkMRMLSegmentationDisplayNode * StartActionSegmentationDisplayNode
vtkMRMLSliceLogic * SliceLogic
double LastForegroundOpacity
bool ShiftKeyUsedForPreviousAction
Provides customizable interaction routines.
MRML node for representing segmentation display attributes.
Slicer logic class for slice manipulation.