1 #ifndef __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__
2 #define __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__
4 #include <cpExtensions/cpExtensions_Export.h>
5 #include <cpExtensions/Visualization/MPRActors.h>
6 #include <cpExtensions/Visualization/ImageInteractorStyle.h>
9 #include <vtkRenderer.h>
10 #include <vtkRenderWindow.h>
12 namespace cpExtensions
14 namespace Visualization
18 class cpExtensions_EXPORT MPRObjects
22 typedef MPRObjects Self;
23 typedef cpExtensions::Visualization::MPRActors TMPRActors;
24 typedef cpExtensions::Visualization::ImageInteractorStyle TStyle;
27 vtkTypeMacro( MPRObjects, vtkObject );
31 static MPRObjects* New( );
33 void SetRenderWindows(
34 vtkRenderWindow* wx, vtkRenderWindow* wy,
35 vtkRenderWindow* wz, vtkRenderWindow* w3D
37 void SetImage( vtkImageData* image );
38 void AddAuxiliaryImage( vtkImageData* image );
39 void ActivateInteractors( );
41 void ResetCamera( const int& id );
43 void Render( const int& id );
45 vtkRenderer* GetXRenderer( );
46 vtkRenderer* GetYRenderer( );
47 vtkRenderer* GetZRenderer( );
48 vtkRenderer* Get3DRenderer( );
49 const vtkRenderer* GetXRenderer( ) const;
50 const vtkRenderer* GetYRenderer( ) const;
51 const vtkRenderer* GetZRenderer( ) const;
52 const vtkRenderer* Get3DRenderer( ) const;
56 virtual ~MPRObjects( );
59 // Purposely not implemented
60 MPRObjects( const Self& );
61 Self& operator=( const Self& );
65 vtkSmartPointer< vtkRenderWindow > m_Windows[ 4 ];
68 vtkSmartPointer< TMPRActors > m_MPRActors;
69 vtkSmartPointer< vtkRenderer > m_Renderers[ 4 ];
70 vtkSmartPointer< TStyle > m_Styles[ 3 ];
77 #endif // __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__