1 #ifndef __cpExtensions__QT__MPR3DWidget__h__
2 #define __cpExtensions__QT__MPR3DWidget__h__
4 #include <cpExtensions/QT/RendererWidget.h>
6 #ifdef cpExtensions_QT4
8 // -------------------------------------------------------------------------
11 // -------------------------------------------------------------------------
12 namespace cpExtensions
14 namespace Visualization
16 class ImageOutlineActor;
17 class WindowLevelImageActor;
24 class cpExtensions_EXPORT MPR3DWidget
25 : public cpExtensions::QT::RendererWidget
30 typedef MPR3DWidget Self;
31 typedef cpExtensions::QT::RendererWidget Superclass;
33 typedef cpExtensions::Visualization::ImageOutlineActor TOLActor;
34 typedef cpExtensions::Visualization::WindowLevelImageActor TWLActor;
37 explicit MPR3DWidget( QWidget* parent = NULL, Qt::WindowFlags f = 0 );
38 virtual ~MPR3DWidget( );
41 void SetImage( vtkImageData* image, const std::string& name );
43 TWLActor* GetImageActor( int o );
44 const TWLActor* GetImageActor( int o ) const;
46 void SetSliceNumber( int orientation, int slice );
47 void SetSlicesNumbers( int x, int y, int z );
50 void SetImage( vtkImageData* image, const std::string& name );
51 void Add( vtkDataSet* data, const std::string& name );
54 void SetScalarRange( double r[ 2 ] );
55 void SetWindowLevel( double wl[ 2 ] );
56 void SetImageOpacity( double o );
57 void SetImageInterpolation( unsigned char i );
61 std::string m_ImageName;
63 vtkSmartPointer< TWLActor > m_WLActors[ 3 ];
64 vtkSmartPointer< TOLActor > m_OLActors[ 3 ];
67 vtkSmartPointer< cpExtensions::Visualization::MPR3DActors > m_Actors;
68 std::string m_ImageName;
76 #endif // cpExtensions_QT4
78 #endif // __cpExtensions__QT__MPR3DWidget__h__