#ifndef _BRUSH_FILTER_H_ #define _BRUSH_FILTER_H_ #include class BrushFilter { public: BrushFilter(); virtual ~BrushFilter(); void SetImage(vtkImageData *image); void SetPoint(int px,int py, int pz); void SetBrushSize( int brushsize ); void SetBrushForm( int brushform ); void SetBrushTool( int brushtool ); void Set2D3D( int dim2D3D ); void SetGrayLevel( double graylevel ); void SetDirection(int direction); void FindMinMaxBrush(int &minxX,int &maxX,int &minY,int &maxY,int &minZ,int &maxZ,int &size); void ResetGeneralMinMax(); void SetGeneralMinMax(int minX,int maxX,int minY,int maxY,int minZ,int maxZ); void Run(); private: vtkImageData *_image; int _px; // start point of the brush int _py; int _pz; int _pMinX; // General min max of many brush actions int _pMinY; int _pMinZ; int _pMaxX; int _pMaxY; int _pMaxZ; int _minX; // min max of the image int _maxX; int _minY; int _maxY; int _minZ; int _maxZ; int _brushsize; int _brushform; int _brushtool; bool _2D3D; double _graylevel; // EED Borrame // double _tolerancefill; // int _distancefill; // double _graylevelbasefill; // int _direction; // int _pxfill; // int _pyfill; // int _pzfill; // double _distbasefill; // double _tmpDistfill; // double _tmpiglfill; // long int _countRecursiveFill; // long int _countRecursiveFillProblem; // vtkImageData *_auxImageFill; // bool _usingAuxImageFill; // bool _auxGrayLevelValidationFill; // long int _countProgressingFill; // long int _limitRecursionFill; // void SetAuxImageFill(int px,int py, int pz); protected: }; #endif // _BRUSH_FILTER_H_