43 #ifndef SVK_OVERLAY_VIEW_CONTROLLER_H
44 #define SVK_OVERLAY_VIEW_CONTROLLER_H
53 #include <vtkImageData.h>
54 #include <vtkRenderWindow.h>
55 #include <vtkRenderWindowInteractor.h>
56 #include <vtkActorCollection.h>
57 #include <vtkImageViewer2.h>
59 #include <vtkActor2D.h>
60 #include <vtkCallbackCommand.h>
61 #include <vtkRenderer.h>
62 #include <vtkCommand.h>
63 #include <vtkCamera.h>
64 #include <vtkCollectionIterator.h>
65 #include <vtkCoordinate.h>
66 #include <vtkInteractorStyleImage.h>
67 #include <vtkInteractorObserver.h>
68 #include <vtkImageMapToWindowLevelColors.h>
69 #include <vtkCornerAnnotation.h>
70 #include <vtkPolyDataMapper2D.h>
71 #include <vtkPolyData.h>
72 #include <vtkCubeSource.h>
73 #include <vtkObjectFactory.h>
74 #include <vtkProperty2D.h>
75 #include <vtkTextActor.h>
76 #include <vtkTextProperty.h>
77 #include <vtkAxesActor.h>
78 #include <vtkPointPicker.h>
124 virtual void SetInput(
svkImageData* data,
int index = 0 );
125 virtual void SetSlice(
int slice );
126 virtual void SetSlice(
int slice,
bool centerImage );
129 virtual void SetRWInteractor(vtkRenderWindowInteractor*);
130 virtual void TurnPropOn(
int propIndex );
131 virtual void TurnPropOff(
int propIndex );
132 virtual int* GetTlcBrc();
133 virtual void SetTlcBrc(
int* tlcBrc );
134 void SetOverlayOpacity(
double opacity);
135 void SetOverlayThreshold(
double threshold);
136 double GetOverlayThreshold();
137 double GetOverlayThresholdValue();
138 void SetLevel(
double level, WindowLevelTarget target = REFERENCE_IMAGE);
139 double GetLevel(WindowLevelTarget target = REFERENCE_IMAGE);
140 void SetWindow(
double window, WindowLevelTarget target = REFERENCE_IMAGE);
141 double GetWindow(WindowLevelTarget target = REFERENCE_IMAGE);
142 int GetCurrentStyle();
143 void SetCurrentStyle(
int style );
144 void UseWindowLevelStyle();
145 void UseColorOverlayStyle();
146 void UseSelectionStyle();
147 void UseRotationStyle();
148 void ResetWindowLevel();
149 void HighlightSelectionVoxels();
151 string GetDataCompatibility(
svkImageData* data,
int targetIndex );
152 void SetInterpolationType(
int interpolationType);
154 void TurnOrthogonalImagesOn();
155 void TurnOrthogonalImagesOff();
156 bool IsImageInsideSpectra();
197 double initialColorWindowLevel[2];
205 void InitDisplayText( );
206 void CreateDataVisualization();
209 static void UpdateCursorLocation( vtkObject* subject,
unsigned long eid,
void* thisObject,
void *calldata);
210 static void UpdateInteractor( vtkObject* subject,
unsigned long eid,
void* thisObject,
void *calldata);
211 static void UpdateSelection( vtkObject* subject,
unsigned long eid,
void* thisObject,
void *calldata);
212 static void ColorWindowLevel( vtkObject* subject,
unsigned long eid,
void* thisObject,
void *calldata);
219 #endif //SVK_OVERLAY_VIEW_CONTROLLER_H
Definition: svkOverlayViewController.h:114
vtkCallbackCommand * dragSelectionCB
callback that responds to left click to highlight voxels
Definition: svkOverlayViewController.h:178
vtkTextActor * mousePositionText
the actor that represents the mouse location
Definition: svkOverlayViewController.h:184
vtkInteractorObserver * windowLevelStyle
interactor style for window leveling
Definition: svkOverlayViewController.h:188
bool visualizationCreated
enum represents data indicies
Definition: svkOverlayViewController.h:172
WindowLevelTarget
Enum for window level targets.
Definition: svkOverlayViewController.h:117
vtkCallbackCommand * cursorLocationCB
callback that responds to mouse movements to update cursor location display
Definition: svkOverlayViewController.h:176
vtkRenderWindow * myRenderWindow
the views render window
Definition: svkOverlayViewController.h:174
svkLookupTableType
Definition: svkLookupTable.h:63
Definition: svkDataViewController.h:72
vtkActor * scanBoundryActor
actor that represents the scan boundry
Definition: svkOverlayViewController.h:196
vtkCallbackCommand * colorOverlayCB
callback that responds to left click to highlight voxels
Definition: svkOverlayViewController.h:180
int currentInteractorStyle
Definition: svkOverlayViewController.h:200
vtkRenderer * mouseLocRenderer
the renderer used to display the mouse location
Definition: svkOverlayViewController.h:186
svkOverlaySelector * dragSelectStyle
interactor style for selecting voxels
Definition: svkOverlayViewController.h:194
vtkInteractorObserver * colorOverlayStyle
interactor style for window leveling
Definition: svkOverlayViewController.h:190
Definition: svkOverlayViewController.h:101
Definition: svkOverlaySelector.h:70
Definition: svkImageData.h:107
double startOpacity
Definition: svkOverlayViewController.h:199
vtkCallbackCommand * interactorSwitchCB
Definition: svkOverlayViewController.h:181
InteractorStyle
Definition: svkOverlayViewController.h:114
vtkInteractorObserver * rotationStyle
interactor style for 3D rotation
Definition: svkOverlayViewController.h:192
DataInputs
enum represents data indicies
Definition: svkOverlayViewController.h:163