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;
54 TMPRActors* GetMPRActors( );
55 const TMPRActors* GetMPRActors( ) const;
59 virtual ~MPRObjects( );
62 // Purposely not implemented
63 MPRObjects( const Self& );
64 Self& operator=( const Self& );
68 vtkSmartPointer< vtkRenderWindow > m_Windows[ 4 ];
71 vtkSmartPointer< TMPRActors > m_MPRActors;
72 vtkSmartPointer< vtkRenderer > m_Renderers[ 4 ];
73 vtkSmartPointer< TStyle > m_Styles[ 3 ];
80 #endif // __CPEXTENSIONS__VISUALIZATION__MPROBJECTS__H__