]> Creatis software - creaMaracasVisu.git/blobdiff - lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/FillFilter.h
#3331 creaMaracasVisu Bug New Normal - Select contour with 2 points, HelpViewerNV
[creaMaracasVisu.git] / lib / maracasVisuLib / src / interface / wxWindows / widgets / manualPaint / FillFilter.h
index a0d7af85bb833e92894ec112c0ae2731b5d8b6b3..415e682a3bed4b8ce787875a05b399e63118c287 100644 (file)
-#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 ManualPaintModel  {
+
+class FillFilter : public baseFilterManualPaint {
 public:
-       ManualPaintModel();
-       virtual ~ManualPaintModel();
+       FillFilter();
+       virtual ~FillFilter();
 
-    void SetImage(vtkImageData *image);
-    void PaintImage(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                       Run();
+       void                    FillToolLoop(int px, int py, int pz,long int iviA) ;
 
-    void FillTool(int px,int py, int pz);
-    void FillToolRecursive(int px,int py, int pz);
+/*
+    void                       Run2();
+    void                       FillToolRecursive(int px,int py, int pz, long int ivi);
+    void               SetAuxImageFill(int px,int py, int pz,long int ivi);
+*/
 
-    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;
 
+    double          _distbasefill;
+    double          _tmpiglfill;
+    double          _tmpiglfill2;
+    vtkImageData    *_auxImageFill;
+
+    bool            _auxGrayLevelValidationFill;
+
+
+       int                     _maxXback;
+       int                     _maxYback;
+       int                     _maxZback;
+
+/*
+//EED01
     int             _pxfill;
     int             _pyfill;
     int             _pzfill;
-    double          _distbasefill;
-    double          _tmpDistfill;
-    double          _tmpiglfill;
     long int        _countRecursiveFill;
     long int        _countRecursiveFillProblem;
-    vtkImageData    *_auxImageFill;
-    bool             _usingAuxImageFill;
-    bool             _auxGrayLevelValidationFill;
+       unsigned char   *_ptrAuxImageFill;
     long int        _countProgressingFill;
     long int        _limitRecursionFill;
+    bool            _usingAuxImageFill;
+    double          _tmpDistfill;
+       int                     difX;
+       int                     difY;
+       int                     difZ;
+*/
 
 
-    void    SetAuxImageFill(int px,int py, int pz);
-
 protected:
 
+
+//DEF_POINTER_IMAGE_VTK_CREA_definition( v_image , ss_image , p_image , st_image )             
+       double  v_image                 ;
+       int     ss_image                ;
+       char    *p_image                ;
+       int             st_image                ;
+
+//macro not working ???    
+//   DEF_POINTER_IMAGE_VTK_CREA_definition(v_image2,ss_image2,p_image2,st_image2)              
+       double  v_image2                ;
+       int     ss_image2               ;
+       char    *p_image2               ;
+       int             st_image2               ;
+
 };
 
 
-#endif // _MANUAL_PAINT_MODEL_H_
+#endif // _FILL_FILTER_H_