X-Git-Url: https://git.creatis.insa-lyon.fr/pubgit/?a=blobdiff_plain;f=vv%2FvvToolRigidReg.h;h=f543ff5f4a0dcaa10db268e0269aed2bb05f24d8;hb=ae30683c11f6666246f2d9bcac250baacc28aa33;hp=5d3dc59151e18cc9948460c550a941a82a2d52ed;hpb=60f172d9e418e6e262b2c896ab482fd4b5a715c7;p=clitk.git diff --git a/vv/vvToolRigidReg.h b/vv/vvToolRigidReg.h index 5d3dc59..f543ff5 100644 --- a/vv/vvToolRigidReg.h +++ b/vv/vvToolRigidReg.h @@ -1,9 +1,10 @@ + /*========================================================================= Program: vv http://www.creatis.insa-lyon.fr/rio/vv 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,7 +15,7 @@ - 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 @@ -25,6 +26,8 @@ #include "vvMainWindowBase.h" #include "vvMainWindow.h" #include "ui_vvToolRigidReg.h" +#include "vtkMatrix4x4.h" +#include "clitkAffineRegistration_ggo.h" //------------------------------------------------------------------------------ class vvToolRigidReg: @@ -49,25 +52,50 @@ public slots: SetToolTip("Register Image."); SetToolExperimental(true); } + virtual void GetArgsInfoFromGUI(); + void SetOverlay(vvImage::Pointer Image); + void RemoveOverlay(); void SetXvalue(); void SetYvalue(); void SetZvalue(); - void UpdateXtranslider(); - void UpdateYtranslider(); - void UpdateZtranslider(); - void UpdateXrotslider(); - void UpdateYrotslider(); - void UpdateZrotslider(); - void SetOverlay(); -protected: + void Render(); + void UpdateTextEditor(vtkMatrix4x4 *matrix,QTextEdit *textEdit); + void UpdateTransform_sliders(); + void UpdateTransform_sb(); + void UpdateTransform(bool slider_enabled); + void AutoRegister(); + void SaveFile(); + void ReadFile(bool matrix_given); + void LoadFile(); + void ResetTransform(); + void SetRotationCenter(); + void SetSliderRanges(); + void InitializeSliders(double xtrans,double ytrans, double ztrans, double xrot, double yrot, double zrot,bool sliders); + void TransformSelect(); + void OptimizerSelect(); + void InterpolatorSelect(); + void MetricSelect(); + void OutputSelect(); + void SaveTextEdit(); + void CmdlineParser(int override, int initialize); + void Presets(); + void UpdateTextEditor2(); + void CheckRigidReg(); //Deformable or Rigid + void CheckDeformableReg(); + protected: Ui::vvToolRigidReg ui; vvSlicerManager * mInput1; vvSlicerManager * mInput2; vvMainWindow * mWindow; + std::string mConfigFile; bool mTwoInputs; - void SetTransform(double tX, double tY, double tZ, double aX, double aY, double aZ); + std::vector mImageSize; + args_info_clitkAffineRegistration mArgsInfo; + double mInitialMatrix[16]; + void SetTransform(double tX, double tY, double tZ, double aX, double aY, double aZ,bool update); + void SetTransform(vtkMatrix4x4 * matrix); }; // end class vvToolRigidReg //------------------------------------------------------------------------------ #endif - +