X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=inline;f=vv%2FvvToolBinarize.h;h=9e61e683cd284872456b3d5030fbdbef1987af90;hb=b762123ba32da90a7b8e787c666e83a1ccd310c4;hp=50ca44bdc46f8e336bd5d23a8c17cc35e35c5def;hpb=cf5d06f41440fd7f41748aea480b2b18deaa1bc6;p=clitk.git
diff --git a/vv/vvToolBinarize.h b/vv/vvToolBinarize.h
index 50ca44b..9e61e68 100644
--- a/vv/vvToolBinarize.h
+++ b/vv/vvToolBinarize.h
@@ -1,106 +1,72 @@
/*=========================================================================
+ Program: vv http://www.creatis.insa-lyon.fr/rio/vv
- Program: vv
- Module: $RCSfile: vvToolBinarize.h,v $
- Language: C++
- Date: $Date: 2010/02/07 08:49:42 $
- Version: $Revision: 1.4 $
- Author : David Sarrut (david.sarrut@creatis.insa-lyon.fr)
+ Authors belong to:
+ - University of LYON http://www.universite-lyon.fr/
+ - Léon Bérard cancer center http://www.centreleonberard.fr
+ - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr
- Copyright (C) 2010
- Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr
- CREATIS http://www.creatis.insa-lyon.fr
+ This software is distributed WITHOUT ANY WARRANTY; without even
+ the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
+ PURPOSE. See the copyright notices for more information.
- This program is free software: you can redistribute it and/or modify
- it under the terms of the GNU General Public License as published by
- the Free Software Foundation, version 3 of the License.
-
- This program is distributed in the hope that it will be useful,
- but WITHOUT ANY WARRANTY; without even the implied warranty of
- MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- GNU General Public License for more details.
-
- You should have received a copy of the GNU General Public License
- along with this program. If not, see .
-
- =========================================================================*/
+ It is distributed under dual licence
+ - BSD See included LICENSE.txt file
+ - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
+===========================================================================**/
#ifndef VVTOOLBINARIZE_H
#define VVTOOLBINARIZE_H
#include
-#include
#include "vvToolBase.h"
+#include "vvToolWidgetBase.h"
#include "vvImageContour.h"
#include "ui_vvToolBinarize.h"
-#include "clitkBinarizeImage_ggo.h"
-#include "vtkMarchingSquares.h"
-#include "vtkImageClip.h"
-#include "vtkMarchingCubes.h"
-#include "vtkPolyData.h"
-#include "vtkPolyDataMapper.h"
-#include "vtkActor.h"
-#include "vtkProperty.h"
-#include "vtkRenderer.h"
+#include "clitkBinarizeImage_ggo.h"
//------------------------------------------------------------------------------
class vvToolBinarize:
- public QDialog, public vvToolBase, private Ui::vvToolBinarize
+ public vvToolWidgetBase,
+ public vvToolBase,
+ private Ui::vvToolBinarize
{
Q_OBJECT
public:
- vvToolBinarize(QWidget * parent=0, Qt::WindowFlags f=0);
+ vvToolBinarize(vvMainWindowBase * parent=0, Qt::WindowFlags f=0);
~vvToolBinarize();
//-----------------------------------------------------
- typedef vvToolBinarize Self;
-
- //-----------------------------------------------------
- static void Initialize() {
- SetToolName("Binarize");
- SetToolMenuName("Binarize");
- SetToolIconFilename(":/new/prefix1/icons/binarize.png");
- SetToolTip("Image interactive binarization with thresholds.");
- }
-
- void InputIsSet(bool b);
+ static void Initialize();
void GetArgsInfoFromGUI();
+ virtual void InputIsSelected(vvSlicerManager * m);
//-----------------------------------------------------
- // public slots:
-// void InputUpdate();
-
public slots:
- void apply();
- // void InputChange(int index);
+ virtual void apply();
+ virtual bool close();
+ virtual void reject();
void valueChangedT1(double v);
void valueChangedT2(double v);
+ void UpdateOrientation(int slicer, int orientation);
void UpdateSlice(int slicer,int slices);
- void InputIsSelected();
void enableLowerThan(bool b);
void useFGBGtoggled(bool);
+ void InteractiveDisplayToggled(bool b);
+ // void LeftButtonReleaseEvent(int slicer);
protected:
+ void RemoveVTKObjects();
+ virtual void closeEvent(QCloseEvent *event);
Ui::vvToolBinarize ui;
- // std::vector mSlicerManagers;
-// std::vector mSlicerManagersCompatible;
-// vvImage::Pointer mCurrentImage;
-// vvSlicerManager * mCurrentSliceManager;
args_info_clitkBinarizeImage mArgsInfo;
-
- vtkImageClip* mClipper;
- vtkMarchingSquares* mSquares1;
- vtkPolyDataMapper* mSquaresMapper1;
- vtkActor* mSquaresActor1;
-
- vvImageContour * mImageContour;
-
- /* vtkImageClip* mClipper; */
- /* vtkMarchingSquares* mSquares1; */
- /* vtkPolyDataMapper* mSquaresMapper1; */
- /* vtkActor* mSquaresActor1; */
+ std::vector mImageContour;
+ std::vector mImageContourLower;
+ bool mInteractiveDisplayIsEnabled;
+
+ void Update(int slicer);
}; // end class vvToolBinarize
//------------------------------------------------------------------------------