]> Creatis software - creaMaracasVisu.git/blob - lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/baseFilterManualPaint.h
f2406be7de51df235d04df0325808df71c91a1bc
[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 "imageModificationManager.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,
20                         int maxZ);
21         void GetScalarRange(double * range);
22         ImageMManager* GetImageMManager(); //DFCH
23         void CleanImageMManager(); //DFCH
24         virtual void Run();
25
26 private:
27
28 protected:
29         ImageMManager *_IMManager; //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_