X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=lib%2FmaracasVisuLib%2Fsrc%2Finterface%2FwxWindows%2Fwidgets%2FmanualPaint%2FManualPaintModel.cpp;h=7c45bee86fc82ca40c259f929f36b3659bbc5bd0;hb=5380f9e66daf440f27f33bb060e5ae1a646612cd;hp=17a86cf96f2faa06c40ba10995fe66c25268542e;hpb=8efe1d6e29dc7ec7436779b9290b86552df7877f;p=creaMaracasVisu.git diff --git a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.cpp b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.cpp index 17a86cf..7c45bee 100644 --- a/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.cpp +++ b/lib/maracasVisuLib/src/interface/wxWindows/widgets/manualPaint/ManualPaintModel.cpp @@ -1,113 +1,114 @@ - #include "ManualPaintModel.h" - -ManualPaintModel::ManualPaintModel() -{ - _tool = 0; // 0 pencil , 1 fill - _brushfilter = new BrushFilter(); - _fillfilter = new FillFilter(); +ManualPaintModel::ManualPaintModel() { + _tool = 0; // 0 pencil , 1 fill + _brushfilter = new BrushFilter(); + _fillfilter = new FillFilter(); + _imageUndoRedo = new ImageUndoRedo(); } //--------------------------------------------------------------------------- -ManualPaintModel::~ManualPaintModel() -{ - delete _brushfilter; - delete _fillfilter; +ManualPaintModel::~ManualPaintModel() { + delete _brushfilter; + delete _fillfilter; } //--------------------------------------------------------------------------- -void ManualPaintModel::PaintImage(int px,int py, int pz) -{ - if (_tool==0) - { - _brushfilter->SetPoint(px,py,pz); - _brushfilter->Run(); - } - if (_tool==1) - { - _fillfilter->SetPoint(px,py,pz); - _fillfilter->Run(); - } +void ManualPaintModel::PaintImage(int px, int py, int pz) { + if (_tool == 0) { + _brushfilter->SetPoint(px, py, pz); + _brushfilter->Run(); + } + if (_tool == 1) { + _fillfilter->SetPoint(px, py, pz); + _fillfilter->Run(); + } } //--------------------------------------------------------------------------- -void ManualPaintModel::SetTool( int tool ) -{ - _tool = tool; +void ManualPaintModel::SetTool(int tool) { + _tool = tool; } //--------------------------------------------------------------------------- -void ManualPaintModel::Set2D3D( int dim2D3D ) -{ - _brushfilter->Set2D3D(dim2D3D); - _fillfilter->Set2D3D(dim2D3D); +void ManualPaintModel::Set2D3D(int dim2D3D) { + _brushfilter->Set2D3D(dim2D3D); + _fillfilter->Set2D3D(dim2D3D); } - //--------------------------------------------------------------------------- -void ManualPaintModel::SetImage(vtkImageData *image) -{ - _brushfilter->SetImage(image); - _fillfilter->SetImage(image); +void ManualPaintModel::SetImage(vtkImageData *image) { + _brushfilter->SetImage(image); + _fillfilter->SetImage(image); + _imageUndoRedo->SetImage(image); } //--------------------------------------------------------------------------- -void ManualPaintModel::SetGrayLevel( double graylevel ) -{ - _brushfilter->SetGrayLevel(graylevel); - _fillfilter->SetGrayLevel(graylevel); +void ManualPaintModel::SetGrayLevel(double graylevel) { + _brushfilter->SetGrayLevel(graylevel); + _fillfilter->SetGrayLevel(graylevel); } //--------------------------------------------------------------------------- -void ManualPaintModel::SetRangeMin( int min ) -{ +void ManualPaintModel::SetRangeMin(int min) { _brushfilter->SetRangeMin(min); _fillfilter->SetRangeMin(min); } //--------------------------------------------------------------------------- -void ManualPaintModel::SetRangeMax( int max ) -{ +void ManualPaintModel::SetRangeMax(int max) { _brushfilter->SetRangeMax(max); _fillfilter->SetRangeMax(max); } //--------------------------------------------------------------------------- -void ManualPaintModel::SetDirection(int direction) -{ - _brushfilter->SetDirection(direction); - _fillfilter->SetDirection(direction); +void ManualPaintModel::SetDirection(int direction) { + _brushfilter->SetDirection(direction); + _fillfilter->SetDirection(direction); } - //--------------------------------------------------------------------------- -void ManualPaintModel::SetBrushSize( int brushsize ) -{ - _brushfilter->SetBrushSize(brushsize); +void ManualPaintModel::SetBrushSize(int brushsize) { + _brushfilter->SetBrushSize(brushsize); } - //--------------------------------------------------------------------------- -void ManualPaintModel::SetBrushForm( int brushform ) -{ - _brushfilter->SetBrushForm(brushform); +void ManualPaintModel::SetBrushForm(int brushform) { + _brushfilter->SetBrushForm(brushform); } //--------------------------------------------------------------------------- -void ManualPaintModel::SetToleranceFill(double tolerancefill) -{ - _fillfilter->SetToleranceFill(tolerancefill); +void ManualPaintModel::SetToleranceFill(double tolerancefill) { + _fillfilter->SetToleranceFill(tolerancefill); } //--------------------------------------------------------------------------- -void ManualPaintModel::SetDistanceFill(int distancefill) -{ - _fillfilter->SetDistanceFill(distancefill); +void ManualPaintModel::SetDistanceFill(int distancefill) { + _fillfilter->SetDistanceFill(distancefill); } //--------------------------------------------------------------------------- -void ManualPaintModel::GetScalarRange( double * range ) -{ - _fillfilter->GetScalarRange( range ); +void ManualPaintModel::GetScalarRange(double * range) { + _fillfilter->GetScalarRange(range); } +//--------------------------------------------------------------------------- +void ManualPaintModel::SetUndoImage() { + ImageMManager* imMManager = NULL; + if (_tool == 0) { + imMManager = this->_brushfilter->GetImageMManager(); + } + if (_tool == 1) { + imMManager = this->_fillfilter->GetImageMManager(); + } + this->_imageUndoRedo->SetURImages(imMManager); + this->_brushfilter->CleanImageMManager(); + this->_fillfilter->CleanImageMManager(); +} +//--------------------------------------------------------------------------- +void ManualPaintModel::Undo() { + this->_imageUndoRedo->Undo(); +} + +void ManualPaintModel::Redo() { + this->_imageUndoRedo->Redo(); +}