1 #ifndef __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__
2 #define __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__
4 #include <cpExtensions/cpExtensions_Export.h>
5 #include <cpExtensions/Visualization/MPRActors.h>
8 #include <vtkRenderer.h>
9 #include <vtkRenderWindow.h>
11 namespace cpExtensions
13 namespace Visualization
17 class cpExtensions_EXPORT MPRObjects
21 typedef MPRObjects Self;
23 typedef MPRActors::TBaseStyle TBaseStyle;
24 typedef MPRActors::TStyle TStyle;
25 typedef MPRActors::TSlicesCommand TSlicesCommand;
26 typedef MPRActors::TWindowLevelCommand TWindowLevelCommand;
27 typedef MPRActors::TMouseCommand TMouseCommand;
28 typedef MPRActors::TMouseWheelCommand TMouseWheelCommand;
29 typedef MPRActors::TKeyCommand TKeyCommand;
30 typedef MPRActors::TVoidCommand TVoidCommand;
33 vtkTypeMacro( MPRObjects, vtkObject );
37 static MPRObjects* New( );
39 void SetRenderWindows(
40 vtkRenderWindow* wx, vtkRenderWindow* wy,
41 vtkRenderWindow* wz, vtkRenderWindow* w3D
43 void AddImage( vtkImageData* image );
46 void ResetCamera( const int& id );
48 void Render( const int& id );
50 vtkRenderer* GetXRenderer( );
51 vtkRenderer* GetYRenderer( );
52 vtkRenderer* GetZRenderer( );
53 vtkRenderer* Get3DRenderer( );
54 const vtkRenderer* GetXRenderer( ) const;
55 const vtkRenderer* GetYRenderer( ) const;
56 const vtkRenderer* GetZRenderer( ) const;
57 const vtkRenderer* Get3DRenderer( ) const;
59 MPRActors* GetMPRActors( );
60 const MPRActors* GetMPRActors( ) const;
62 double GetWindow( ) const;
63 double GetLevel( ) const;
67 virtual ~MPRObjects( );
70 // Purposely not implemented
71 MPRObjects( const Self& );
72 Self& operator=( const Self& );
76 vtkSmartPointer< vtkRenderWindow > m_Windows[ 4 ];
79 vtkSmartPointer< MPRActors > m_MPRActors;
80 vtkSmartPointer< vtkRenderer > m_Renderers[ 4 ];
87 #endif // __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__