]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/kernel/include/marContourVO.h
371072debcd40b32884447808116ce37a4229d38
[creaMaracasVisu.git] / lib / maracasVisuLib / src / kernel / include / marContourVO.h
1 /*=========================================================================
2
3   Program:   wxMaracas
4   Module:    $RCSfile: marContourVO.h,v $
5   Language:  C++
6   Date:      $Date: 2009/05/14 13:55:07 $
7   Version:   $Revision: 1.1 $
8
9   Copyright: (c) 2002, 2003
10   License:
11   
12      This software is distributed WITHOUT ANY WARRANTY; without even 
13      the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR 
14      PURPOSE.  See the above copyright notice for more information.
15
16 =========================================================================*/
17 #ifndef __MAR__KERNEL__CONTOURVO__HXX__
18 #define __MAR__KERNEL__CONTOURVO__HXX__
19
20 #include "marContour.h"
21 #include <vtkPolyData.h>
22 #include <vtkProbeFilter.h>
23 #include <vtkContourFilter.h>
24 #include <vtkCleanPolyData.h>
25 #include <vtkPolyDataConnectivityFilter.h>
26 #include <vtkStripper.h>
27
28 class vtkPoints;
29 class vtkCellArray;
30
31
32 class MAR_KERNEL_EXPORT  marContourVO 
33 {
34
35    public:
36
37            
38            marContour* getContour( );
39            void setContour(marContour* cont);
40
41            vtkPoints* get3DContour( );
42            void set3DContour(vtkPoints* cont);
43
44            vtkPolyData* get2DContour( );
45            void set2DContour(vtkPolyData* cont);
46
47            vtkPoints* get2DDiameterMin( );
48            void set2DDiameterMin(vtkPoints* diam);
49
50            vtkPoints* get2DDiameterMax( );
51            void set2DDiameterMax(vtkPoints* diam);
52
53            double getSignal( );
54            void setSignal(double cont);
55
56            int getType( );
57            void setType(int cont);
58
59            vtkContourFilter* getIsocontour();
60            void setIsocontour(vtkContourFilter* iso);
61
62            vtkCleanPolyData* getIsocontourCpd();
63            void setIsocontourCpd(vtkCleanPolyData* isocpd);
64
65            vtkCleanPolyData* getIsocontourCpd2();
66            void setIsocontourCpd2(vtkCleanPolyData* isocpd);
67
68            vtkPolyDataConnectivityFilter* getIsocontourDcf();
69            void setIsocontourDcf(vtkPolyDataConnectivityFilter* isodcf);
70
71            vtkStripper* getIsocontourStripped();
72            void setIsocontourStripped(vtkStripper* isoStripped);
73
74            bool isReplaced();
75            void setReplaced(bool rep);
76
77            ~marContourVO();
78                 marContourVO();
79
80    private:
81
82             
83         marContour*             _contours;                                      //  DATA-MODEL-2D                       Axis Contours
84         vtkPoints*                      _3Dcontour;                                     //  VISUALISATION_VTK 3D        Axis perpendicular Contour
85         vtkPolyData*            _2Dcontours;                            //  VISUALISATION_VTK 2D        Axis perpendicular Contour
86         vtkPoints*                      _2DDiameterMin;                         //  VISUALISATION_VTK 2D        Line diameter Minimum
87         vtkPoints*                      _2DDiameterMax;                         //  VISUALISATION_VTK 2D        Line diameter Maximum
88         double                          _signal;                                        //  Axis intensity signal
89         int                                     _contType;                                      //  ContourType
90         vtkContourFilter*       _isocontour;
91         vtkCleanPolyData*       _isocontour_cpd;
92         vtkPolyDataConnectivityFilter*  _isocontour_dcf;
93         vtkCleanPolyData*       _isocontour_cpd2;
94         vtkStripper*            _isocontour_stripped;
95         bool                            _replaced;
96
97  
98 }; 
99 #endif // __MAR__KERNEL__CONTOUR_VO__HXX__
100