]> Creatis software - clitk.git/blobdiff - vv/vvToolRigidReg.cxx
clean binarize up in order to use it as a template
[clitk.git] / vv / vvToolRigidReg.cxx
index b6525f72da5b4ad9d49d7dd8783e73ab2882bbaf..f83136c11949ce5c804646ebf270b688c5cb0de7 100644 (file)
   - BSD        See included LICENSE.txt file
   - CeCILL-B   http://www.cecill.info/licences/Licence_CeCILL-B_V1-en.html
 ======================================================================-====*/
+
+// vv
 #include "vvToolRigidReg.h"
-#include <QComboBox>
-#include <QCursor>
-#include <QApplication>
+#include "vvImageReader.h"
+#include "vvSlicer.h"
+
+// vtk
 #include <vtkImageData.h>
 #include <vtkSmartPointer.h>
 #include <vtkTransform.h>
-#include <vvImageReader.h>
-#include "vvImage.h"
-#include "vvSlicer.h"
-#include <QFile>
+
+// clitk
 #include "clitkTransformUtilities.h"
-#include <QString>
+
+// qt
 #include <QMessageBox>
-#include <vvMainWindow.h>
 #include <QFileDialog>
 #include <QTextStream>
+#include <QComboBox>
+#include <QCursor>
+
 //------------------------------------------------------------------------------
 // Create the tool and automagically (I like this word) insert it in
 // the main window menu.
@@ -46,10 +50,10 @@ vvToolRigidReg::vvToolRigidReg(vvMainWindowBase * parent, Qt::WindowFlags f):
 {
   // GUI Initialization
   Ui_vvToolRigidReg::setupUi(mToolWidget);
-   QSize qsize;
-   qsize.setHeight(470);
-   qsize.setWidth(850);
-   mToolWidget->setFixedSize(qsize);
+   // QSize qsize;
+//    qsize.setHeight(470);
+//    qsize.setWidth(850);
+//    mToolWidget->setFixedSize(qsize);
 
 
   // Set how many inputs are needed for this tool
@@ -223,7 +227,11 @@ void vvToolRigidReg::SetTransform(double tX, double tY, double tZ, double aX, do
 void vvToolRigidReg::SetTransform(vtkMatrix4x4 *matrix)
 {
     vtkSmartPointer<vtkTransform> transform =mCurrentSlicerManager->GetImage()->GetTransform();
-    transform->SetMatrix(matrix);
+    for(int i=0; i<4;i++)
+      for(int j=0;j<4;j++)
+       mCurrentSlicerManager->GetImage()->GetTransform()->GetMatrix()->SetElement(i,j,matrix->GetElement(i,j));
+
+    
     Render();
 }
 //------------------------------------------------------------------------------
@@ -384,13 +392,14 @@ void vvToolRigidReg::UpdateTransform(bool slider_enabled)
 }
 //------------------------------------------------------------------------------
 
+
 //------------------------------------------------------------------------------
 void vvToolRigidReg::SaveFile()
 {
   //Write the Transformation Matrix
     QString f1 = QFileDialog::getSaveFileName(this, tr("Save Transformation Matrix File"),
-                           "/home",
-                            tr("Text (*.mat *.txt *.doc *.rtf)"));
+                                              mMainWindow->GetInputPathName(),
+                                              tr("Text (*.mat *.txt *.doc *.rtf)"));
     QFile file1(f1);
     std::vector<QString> transparameters;
     QString line1;
@@ -429,7 +438,7 @@ void vvToolRigidReg::ReadFile()
    QString file1 = QFileDialog::getOpenFileName(
                     this,
                    "Choose the Transformation Parameters file",
-                    "/home",
+                    mMainWindow->GetInputPathName(),
                     "Text (*.mat *.txt *.rtf *.doc)");
     if (file1.isEmpty())
     return;
@@ -458,9 +467,9 @@ void vvToolRigidReg::ReadFile()
 
     //In the Order or Y X Z //
     //now  postmultiply for the rotations
-    SetTransform(0,0,0,0,0,-round(orientations[2]),false);
-    SetTransform(0,0,0,-round(orientations[0]),0,0,false);
-    SetTransform(0,0,0,0,-round(orientations[1]),0,false);
+    SetTransform(0,0,0,0,0,-rint(orientations[2]),false);
+    SetTransform(0,0,0,-rint(orientations[0]),0,0,false);
+    SetTransform(0,0,0,0,-rint(orientations[1]),0,false);
 
     transform->GetPosition(translations);
     transform->Identity();