]> Creatis software - cpPlugins.git/blob - lib/cpExtensions/QT/MPR3DWidget.h
...
[cpPlugins.git] / lib / cpExtensions / QT / MPR3DWidget.h
1 #ifndef __cpExtensions__QT__MPR3DWidget__h__
2 #define __cpExtensions__QT__MPR3DWidget__h__
3
4 #include <cpExtensions/QT/RendererWidget.h>
5
6 #ifdef cpExtensions_QT4
7
8 // -------------------------------------------------------------------------
9 class vtkDataSet;
10
11 // -------------------------------------------------------------------------
12 namespace cpExtensions
13 {
14   namespace Visualization
15   {
16     class ImageOutlineActor;
17     class MeshActor;
18     class WindowLevelImageActor;
19   }
20
21   namespace QT
22   {
23     /**
24      */
25     class cpExtensions_EXPORT MPR3DWidget
26       : public cpExtensions::QT::RendererWidget
27     {
28       Q_OBJECT;
29
30     public:
31       typedef MPR3DWidget                      Self;
32       typedef cpExtensions::QT::RendererWidget Superclass;
33
34       typedef cpExtensions::Visualization::MeshActor             TActor;
35       typedef cpExtensions::Visualization::ImageOutlineActor     TOLActor;
36       typedef cpExtensions::Visualization::WindowLevelImageActor TWLActor;
37
38     public:
39       explicit MPR3DWidget( QWidget* parent = NULL, Qt::WindowFlags f = 0 );
40       virtual ~MPR3DWidget( );
41
42       void Clear( );
43       void SetImage( vtkImageData* image, const std::string& name );
44       void Add( vtkDataSet* data, const std::string& name );
45
46       TWLActor* GetImageActor( int o );
47       const TWLActor* GetImageActor( int o ) const;
48
49       void SetSliceNumber( int orientation, int slice );
50       void SetSlicesNumbers( int x, int y, int z );
51
52     protected:
53       std::string m_ImageName;
54
55       vtkSmartPointer< TWLActor > m_WLActors[ 3 ];
56       vtkSmartPointer< TOLActor > m_OLActors[ 3 ];
57       std::vector< TActor* > m_Actors;
58     };
59
60   } // ecapseman
61
62 } // ecapseman
63
64 #endif // cpExtensions_QT4
65
66 #endif // __cpExtensions__QT__MPR3DWidget__h__
67
68 // eof - $RCSfile$