X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FmanualPaint%2FManualPaintModel.h;h=8ec61e2491b010c91c0e9d6490d2e84f393d2ea1;hb=9d8709b5e9d72b9f0034224bb4c00281264fb28d;hp=75dd16e04ea7540717c9c71e0b4b7ac5acd0b862;hpb=23b33a3a7e3f42eacbaad218510fb77e27aa9c2f;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.h b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.h index 75dd16e..8ec61e2 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.h +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.h @@ -1,54 +1,73 @@ +/*# --------------------------------------------------------------------- +# +# 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. +# ------------------------------------------------------------------------ */ + #ifndef _MANUAL_PAINT_MODEL_H_ #define _MANUAL_PAINT_MODEL_H_ -#include +#include "BrushFilter.h" +#include "FillFilter.h" + +//#include "regionStructUR.h" +//#include "imageUndoRedo.h" + +#include "imageModificationManager.h" +#include "imageUndoRedo.h" -class ManualPaintModel { +class ManualPaintModel { public: ManualPaintModel(); virtual ~ManualPaintModel(); - 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 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 SetActive(bool active); + void SetTool(int tool); + void Set2D3D(int dim2D3D); + void SetImage(vtkImageData *image); + void SetGrayLevel(double graylevel); + void SetDirection(int direction); + void SetBrushSize(int brushsize); + void SetBrushForm(int brushform); + void SetToleranceFill(double tolerancefill); + void SetDistanceFill(int distancefill); + void PaintImage(int px, int py, int pz); + void SetRangeMin(int min); + void SetRangeMax(int max); + void GetScalarRange(double * range); + void SetUndoImage(); //DFCH + void Undo(); //DFCH + void Redo(); //DFCH 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 _pxfill; - int _pyfill; - int _pzfill; - double _distbasefill; + int _tool; + bool _active; + BrushFilter *_brushfilter; + FillFilter *_fillfilter; + ImageUndoRedo *_imageUndoRedo; protected: }; - #endif // _MANUAL_PAINT_MODEL_H_