1 #ifndef __CPPLUGINS__EXTENSIONS__VISUALIZATION__MPRACTORS__H__
2 #define __CPPLUGINS__EXTENSIONS__VISUALIZATION__MPRACTORS__H__
4 #include <cpPlugins/Extensions/cpPlugins_Extensions_Export.h>
5 #include <cpPlugins/Extensions/Visualization/ImageSliceActors.h>
8 #include <vtkImageMapToColors.h>
10 // -------------------------------------------------------------------------
11 class vtkAlgorithmOutput;
14 class vtkScalarsToColors;
15 class vtkWindowLevelLookupTable;
17 // -------------------------------------------------------------------------
22 namespace Visualization
26 class cpPlugins_Extensions_EXPORT MPRActors
27 : public vtkPropCollection
30 typedef MPRActors Self;
33 vtkTypeMacro( MPRActors, vtkPropCollection );
35 cpPlugins_ImageSliceActors( ImageOutline, vtkImageActor );
39 static MPRActors* New( );
41 ImageSliceActors* GetSliceActors( const int& i ) const;
42 void SetInputConnection( vtkAlgorithmOutput* aout );
43 void SetInputData( vtkImageData* image );
58 // Lookup table methods
59 vtkScalarsToColors* GetLookupTable( ) const;
60 void SetLookupTable( vtkScalarsToColors* lut );
62 // Grayscale window/level lookup
63 vtkWindowLevelLookupTable* GetLookupTableAsWindowLevel( ) const;
64 void SetLookupTableToWindowLevel( );
65 double GetMinWindow( ) const;
66 double GetMaxWindow( ) const;
67 double GetMinLevel( ) const;
68 double GetMaxLevel( ) const;
69 double GetWindow( ) const;
70 double GetLevel( ) const;
71 void SetWindow( const double& w );
72 void SetLevel( const double& l );
73 void SetWindowLevel( const double& w, const double& l );
74 void ResetWindowLevel( );
77 int GetSliceNumberMinValue( const int& axis ) const;
78 int GetSliceNumberMaxValue( const int& axis ) const;
79 int GetSlice( const int& axis ) const;
80 void SetSlice( const int& axis, const int& slice );
81 void SetSlice( const int& axis, const double& slice );
85 void GetImageBounds( double bounds[ 6 ] ) const;
89 virtual ~MPRActors( );
91 vtkImageData* _InputImage( ) const;
92 void _UpdateSlices( );
95 // Purposely not implemented
96 MPRActors( const Self& );
97 Self& operator=( const Self& );
100 vtkSmartPointer< vtkImageMapToColors > ImageMapToColors;
101 vtkSmartPointer< vtkActor > ImageOutlineActor;
104 cpPlugins::Extensions::Visualization::ImageSliceActors
106 vtkSmartPointer< _TSlice > Slices[ 3 ];
108 unsigned int ImageOutlineActorIndex;
117 #endif // __CPPLUGINS__EXTENSIONS__VISUALIZATION__MPRACTORS__H__