]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/baseFilterManualPaint.h
ad3f662ea1861e0c3642bf5d7ba4d454fc13c8d1
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / manualPaint / baseFilterManualPaint.h
1 #ifndef _BASE_FILTER_MANUAL_PAINT_H_
2 #define _BASE_FILTER_MANUAL_PAINT_H_
3
4 #include <vtkImageData.h>
5 #include "regionStructUR.h"
6
7 class baseFilterManualPaint  {
8
9     public:
10         baseFilterManualPaint();
11         virtual ~baseFilterManualPaint();
12
13         virtual void SetImage(vtkImageData *image);
14         void SetPoint(int px,int py, int pz);
15         void Set2D3D( int dim2D3D );
16         void SetGrayLevel( double graylevel );
17         void SetDirection(int direction);
18         void ResetGeneralMinMax();
19         void SetGeneralMinMax(int minX,int maxX,int minY,int maxY,int minZ,int maxZ);
20         void GetScalarRange( double * range );
21         RegionStructUR* GetModifiedRegion();//DFCH
22         void CleanModifiedRegion();//DFCH
23         void CalculateMinMaxRegion( const int& i, const int& j, const int& k);//DFCH
24         virtual void Run();
25
26     private:
27
28     protected:
29         RegionStructUR  *_MRegion; //Saves the last modified region (MinX, MaxX, MinY, MaxY, MinZ, MaxZ).
30         vtkImageData    *_image;
31         int             _direction;
32         int             _px;    // start point of the brush
33         int             _py;
34         int             _pz;
35         int             _pMinX;  // General min max of many brush actions
36         int             _pMinY;
37         int             _pMinZ;
38         int             _pMaxX;
39         int             _pMaxY;
40         int             _pMaxZ;
41         int             _minX;   // min max of the image
42         int             _maxX;
43         int             _minY;
44         int             _maxY;
45         int             _minZ;
46         int             _maxZ;
47         bool            _2D3D;
48         double          _graylevel;
49 };
50
51 #endif // _BASE_FILTER_MANUAL_PAINT_H_