X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;ds=inline;f=vv%2FvvToolBinarize.h;h=2332bd4b07b291966fd18a58d0a67ce6b82379c4;hb=6149d78df3e94ca789aaba50133d5277afe6ab5e;hp=af85929842123a042f6b13f3cdcfce20849ceba5;hpb=c1370c27d5fc65b499d6be1c5dc49a96da0bb8cc;p=clitk.git
diff --git a/vv/vvToolBinarize.h b/vv/vvToolBinarize.h
index af85929..2332bd4 100644
--- a/vv/vvToolBinarize.h
+++ b/vv/vvToolBinarize.h
@@ -1,97 +1,65 @@
/*=========================================================================
+ Program: vv http://www.creatis.insa-lyon.fr/rio/vv
- Program: vv
- Module: $RCSfile: vvToolBinarize.h,v $
- Language: C++
- Date: $Date: 2010/02/05 09:06:46 $
- Version: $Revision: 1.2 $
- 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://oncora1.lyon.fnclcc.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"
-
//------------------------------------------------------------------------------
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 UpdateSlice(int slicer,int slices);
- void InputIsSelected();
void enableLowerThan(bool b);
+ void useFGBGtoggled(bool);
+ void InteractiveDisplayToggled(bool b);
protected:
+ void RemoveVTKObjects();
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;
+ std::vector mImageContour;
+ std::vector mImageContourLower;
+ bool mInteractiveDisplayIsEnabled;
}; // end class vvToolBinarize
//------------------------------------------------------------------------------