X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolRigidReg.h;h=02d679b41ac033baa89b962c621e92791fc9128b;hb=b3d88d60218accc8ba078bc2d7fcc1e5e5befe59;hp=5d3dc59151e18cc9948460c550a941a82a2d52ed;hpb=60f172d9e418e6e262b2c896ab482fd4b5a715c7;p=clitk.git diff --git a/vv/vvToolRigidReg.h b/vv/vvToolRigidReg.h index 5d3dc59..02d679b 100644 --- a/vv/vvToolRigidReg.h +++ b/vv/vvToolRigidReg.h @@ -3,7 +3,7 @@ Authors belong to: - University of LYON http://www.universite-lyon.fr/ - - Léon Bérard cancer center http://oncora1.lyon.fnclcc.fr + - Léon Bérard cancer center http://www.centreleonberard.fr - CREATIS CNRS laboratory http://www.creatis.insa-lyon.fr This software is distributed WITHOUT ANY WARRANTY; without even @@ -14,17 +14,15 @@ - BSD See included LICENSE.txt file - CeCILL-B http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html -======================================================================-====*/ +===========================================================================**/ #ifndef VVTOOLRIGIDREG_H #define VVTOOLRIGIDREG_H -#include -#include #include "vvToolBase.h" #include "vvToolWidgetBase.h" -#include "vvMainWindowBase.h" #include "vvMainWindow.h" #include "ui_vvToolRigidReg.h" +#include "vtkMatrix4x4.h" //------------------------------------------------------------------------------ class vvToolRigidReg: @@ -36,38 +34,34 @@ class vvToolRigidReg: public: vvToolRigidReg(vvMainWindowBase * parent=0, Qt::WindowFlags f=0); ~vvToolRigidReg(); - virtual void InputIsSelected(std::vector & m); + static void Initialize(); + virtual void InputIsSelected(vvSlicerManager *input); + public slots: virtual void apply(); virtual bool close(); virtual void reject(); - //----------------------------------------------------- - static void Initialize() { - SetToolName("Register"); - SetToolMenuName("Register"); - SetToolIconFilename(":/common/icons/register.png"); - SetToolTip("Register Image."); - SetToolExperimental(true); - } - void SetXvalue(); - void SetYvalue(); - void SetZvalue(); - void UpdateXtranslider(); - void UpdateYtranslider(); - void UpdateZtranslider(); - void UpdateXrotslider(); - void UpdateYrotslider(); - void UpdateZrotslider(); - void SetOverlay(); + void SetTranslationStep(double v); + void SetRotationStep(double v); + void SliderChange(int newVal); + void SpinBoxChange(double newVal); + void ToggleSpinBoxAnglesUnit(); + void SaveFile(); + void LoadFile(); + void ChangeOfRotationCenter(); + void ResetTransform(); + protected: Ui::vvToolRigidReg ui; - vvSlicerManager * mInput1; - vvSlicerManager * mInput2; - vvMainWindow * mWindow; - bool mTwoInputs; - void SetTransform(double tX, double tY, double tZ, double aX, double aY, double aZ); + vvSlicerManager * mInput; + vtkSmartPointer mInitialMatrix; + void ExtentMax(const double [8][4], double [2][3]); + void SetTransform(vtkMatrix4x4 * matrix); + void GetSlidersAndSpinBoxes(std::vector&transSliders, std::vector&rotSliders, + std::vector&transSBs, std::vector&rotSBs); + void Render(); }; // end class vvToolRigidReg //------------------------------------------------------------------------------ #endif - +