]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.h
#2844 creaMaracasVisu Feature New Normal - ManualPaint_model box
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / manualPaint / FillFilter.h
index 3d9084f3ebf001af50c1eef9b11d96c805cfdeca..dc118a8eab717ed996cdc219a01bd3fdbe86c00e 100644 (file)
@@ -1,43 +1,49 @@
-#ifndef _MANUAL_PAINT_MODEL_H_
-#define _MANUAL_PAINT_MODEL_H_
+/*# ---------------------------------------------------------------------
+#
+# Copyright (c) CREATIS (Centre de Recherche en Acquisition et Traitement de l'Image
+#                        pour la Sant�)
+# Authors : Eduardo Davila, Frederic Cervenansky, Claire Mouton
+# Previous Authors : Laurent Guigues, Jean-Pierre Roux
+# CreaTools website : www.creatis.insa-lyon.fr/site/fr/creatools_accueil
+#
+#  This software is governed by the CeCILL-B license under French law and
+#  abiding by the rules of distribution of free software. You can  use,
+#  modify and/ or redistribute the software under the terms of the CeCILL-B
+#  license as circulated by CEA, CNRS and INRIA at the following URL
+#  http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+#  or in the file LICENSE.txt.
+#
+#  As a counterpart to the access to the source code and  rights to copy,
+#  modify and redistribute granted by the license, users are provided only
+#  with a limited warranty  and the software's author,  the holder of the
+#  economic rights,  and the successive licensors  have only  limited
+#  liability.
+#
+#  The fact that you are presently reading this means that you have had
+#  knowledge of the CeCILL-B license and that you accept its terms.
+# ------------------------------------------------------------------------ */
 
-#include <vtkImageData.h>
+#ifndef _FILL_FILTER_H_
+#define _FILL_FILTER_H_
 
+#include "baseFilterManualPaint.h"
 
-class FillFilter  {
+class FillFilter : public baseFilterManualPaint {
 public:
        FillFilter();
        virtual ~FillFilter();
 
-    void SetImage(vtkImageData *image);
-    void Set2D3D( int dim2D3D );
-    void SetGrayLevel( double graylevel );
+    void                       Run();
+    void                       FillToolRecursive(int px,int py, int pz);
 
-    void FillTool(int px,int py, int pz);
-    void FillToolRecursive(int px,int py, int pz);
-
-    void BrushTool(int px,int py, int pz);
-    void SetToleranceFill(double tolerancefill);
-    void SetDistanceFill(int distancefill);
-    void SetDirection(int direction);
+    void                       SetToleranceFill(double tolerancefill);
+    void                       SetDistanceFill(int distancefill);
+    virtual void       SetImages(vtkImageData *image,vtkImageData *image2);
 
 private:
-    vtkImageData    *_image;
-    int             _minX;
-    int             _maxX;
-    int             _minY;
-    int             _maxY;
-    int             _minZ;
-    int             _maxZ;
-    int             _brushsize;
-    int             _brushform;
-    int             _brushtool;
-    bool            _2D3D;
-    double          _graylevel;
     double          _tolerancefill;
     int             _distancefill;
     double          _graylevelbasefill;
-    int             _direction;
 
     int             _pxfill;
     int             _pyfill;
@@ -45,20 +51,21 @@ private:
     double          _distbasefill;
     double          _tmpDistfill;
     double          _tmpiglfill;
+    double          _tmpiglfill2;
     long int        _countRecursiveFill;
     long int        _countRecursiveFillProblem;
     vtkImageData    *_auxImageFill;
-    bool             _usingAuxImageFill;
-    bool             _auxGrayLevelValidationFill;
+    bool            _usingAuxImageFill;
+    bool            _auxGrayLevelValidationFill;
     long int        _countProgressingFill;
     long int        _limitRecursionFill;
 
 
-    void    SetAuxImageFill(int px,int py, int pz);
+    void               SetAuxImageFill(int px,int py, int pz);
 
 protected:
 
 };
 
 
-#endif // _MANUAL_PAINT_MODEL_H_
+#endif // _FILL_FILTER_H_