Widget for rigid registration. More...
#include <QmitkCenteredRigid2DTransformView.h>


Public Member Functions | |
| QmitkCenteredRigid2DTransformView (QWidget *parent=0, Qt::WindowFlags f=0) | |
| ~QmitkCenteredRigid2DTransformView () | |
| virtual itk::Object::Pointer | GetTransform () |
| virtual itk::Array< double > | GetTransformParameters () |
| virtual void | SetTransformParameters (itk::Array< double > transformValues) |
| virtual QString | GetName () |
| virtual void | SetupUI (QWidget *parent) |
| virtual itk::Array< double > | GetScales () |
| virtual vtkTransform * | Transform (vtkMatrix4x4 *vtkmatrix, vtkTransform *vtktransform, itk::Array< double > transformParams) |
| virtual int | GetNumberOfTransformParameters () |
Protected Attributes | |
| Ui::QmitkCenteredRigid2DTransformControls | m_Controls |
| itk::Object::Pointer | m_TransformObject |
| double | m_CenterX |
| double | m_CenterY |
| double | m_CenterZ |
Widget for rigid registration.
Displays options for rigid registration.
Definition at line 31 of file QmitkCenteredRigid2DTransformView.h.
| QmitkCenteredRigid2DTransformView::QmitkCenteredRigid2DTransformView | ( | QWidget * | parent = 0, |
| Qt::WindowFlags | f = 0 |
||
| ) |
Definition at line 24 of file QmitkCenteredRigid2DTransformView.cpp.
: QmitkRigidRegistrationTransformsGUIBase(parent, f), m_CenterX(0), m_CenterY(0), m_CenterZ(0) { }
| QmitkCenteredRigid2DTransformView::~QmitkCenteredRigid2DTransformView | ( | ) |
Definition at line 29 of file QmitkCenteredRigid2DTransformView.cpp.
{
}
| QString QmitkCenteredRigid2DTransformView::GetName | ( | ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 114 of file QmitkCenteredRigid2DTransformView.cpp.
{
return "CenteredRigid2D";
}
| int QmitkCenteredRigid2DTransformView::GetNumberOfTransformParameters | ( | ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 162 of file QmitkCenteredRigid2DTransformView.cpp.
References QmitkRigidRegistrationTransformsGUIBase::m_FixedImage.
{
if (m_FixedImage.IsNotNull())
{
if (m_FixedImage->GetDimension() == 2)
return 5;
else
return 0;
}
else
return 0;
}
| itk::Array< double > QmitkCenteredRigid2DTransformView::GetScales | ( | ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 131 of file QmitkCenteredRigid2DTransformView.cpp.
References Ui_QmitkCenteredRigid2DTransformControls::m_CenterXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterYScaleCenteredRigid2D, m_Controls, Ui_QmitkCenteredRigid2DTransformControls::m_RotationScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationYScaleCenteredRigid2D, and Ui_QmitkCenteredRigid2DTransformControls::m_UseOptimizerScalesCenteredRigid2D.
{
itk::Array<double> scales;
scales.SetSize(5);
scales.Fill(1.0);
if (m_Controls.m_UseOptimizerScalesCenteredRigid2D->isChecked())
{
scales[0] = m_Controls.m_RotationScaleCenteredRigid2D->text().toDouble();
scales[1] = m_Controls.m_CenterXScaleCenteredRigid2D->text().toDouble();
scales[2] = m_Controls.m_CenterYScaleCenteredRigid2D->text().toDouble();
scales[3] = m_Controls.m_TranslationXScaleCenteredRigid2D->text().toDouble();
scales[4] = m_Controls.m_TranslationYScaleCenteredRigid2D->text().toDouble();
}
return scales;
}
| itk::Object::Pointer QmitkCenteredRigid2DTransformView::GetTransform | ( | ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 33 of file QmitkCenteredRigid2DTransformView.cpp.
References AccessByItk, QmitkRigidRegistrationTransformsGUIBase::m_FixedImage, and m_TransformObject.
{
if (m_FixedImage.IsNotNull())
{
AccessByItk(m_FixedImage, GetTransform2);
return m_TransformObject;
}
return NULL;
}
| itk::Array< double > QmitkCenteredRigid2DTransformView::GetTransformParameters | ( | ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 83 of file QmitkCenteredRigid2DTransformView.cpp.
References Ui_QmitkCenteredRigid2DTransformControls::m_AngleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterForInitializerCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterYScaleCenteredRigid2D, m_Controls, Ui_QmitkCenteredRigid2DTransformControls::m_MomentsCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_RotationScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationYScaleCenteredRigid2D, and Ui_QmitkCenteredRigid2DTransformControls::m_UseOptimizerScalesCenteredRigid2D.
{
itk::Array<double> transformValues;
transformValues.SetSize(9);
transformValues.fill(0);
transformValues[0] = m_Controls.m_UseOptimizerScalesCenteredRigid2D->isChecked();
transformValues[1] = m_Controls.m_RotationScaleCenteredRigid2D->text().toDouble();
transformValues[2] = m_Controls.m_CenterXScaleCenteredRigid2D->text().toDouble();
transformValues[3] = m_Controls.m_CenterYScaleCenteredRigid2D->text().toDouble();
transformValues[4] = m_Controls.m_TranslationXScaleCenteredRigid2D->text().toDouble();
transformValues[5] = m_Controls.m_TranslationYScaleCenteredRigid2D->text().toDouble();
transformValues[6] = m_Controls.m_AngleCenteredRigid2D->text().toFloat();
transformValues[7] = m_Controls.m_CenterForInitializerCenteredRigid2D->isChecked();
transformValues[8] = m_Controls.m_MomentsCenteredRigid2D->isChecked();
return transformValues;
}
| void QmitkCenteredRigid2DTransformView::SetTransformParameters | ( | itk::Array< double > | transformValues ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 100 of file QmitkCenteredRigid2DTransformView.cpp.
References Ui_QmitkCenteredRigid2DTransformControls::m_AngleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterForInitializerCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterYScaleCenteredRigid2D, m_Controls, Ui_QmitkCenteredRigid2DTransformControls::m_GeometryCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_MomentsCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_RotationScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationYScaleCenteredRigid2D, and Ui_QmitkCenteredRigid2DTransformControls::m_UseOptimizerScalesCenteredRigid2D.
{
m_Controls.m_UseOptimizerScalesCenteredRigid2D->setChecked(transformValues[0]);
m_Controls.m_RotationScaleCenteredRigid2D->setText(QString::number(transformValues[1]));
m_Controls.m_CenterXScaleCenteredRigid2D->setText(QString::number(transformValues[2]));
m_Controls.m_CenterYScaleCenteredRigid2D->setText(QString::number(transformValues[3]));
m_Controls.m_TranslationXScaleCenteredRigid2D->setText(QString::number(transformValues[4]));
m_Controls.m_TranslationYScaleCenteredRigid2D->setText(QString::number(transformValues[5]));
m_Controls.m_AngleCenteredRigid2D->setText(QString::number(transformValues[6]));
m_Controls.m_CenterForInitializerCenteredRigid2D->setChecked(transformValues[7]);
m_Controls.m_MomentsCenteredRigid2D->setChecked(transformValues[8]);
m_Controls.m_GeometryCenteredRigid2D->setChecked(!transformValues[8]);
}
| void QmitkCenteredRigid2DTransformView::SetupUI | ( | QWidget * | parent ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 119 of file QmitkCenteredRigid2DTransformView.cpp.
References Ui_QmitkCenteredRigid2DTransformControls::m_AngleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_CenterYScaleCenteredRigid2D, m_Controls, Ui_QmitkCenteredRigid2DTransformControls::m_RotationScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationXScaleCenteredRigid2D, Ui_QmitkCenteredRigid2DTransformControls::m_TranslationYScaleCenteredRigid2D, and Ui_QmitkCenteredRigid2DTransformControls::setupUi().
{
m_Controls.setupUi(parent);
QValidator* validatorLineEditInputFloat = new QDoubleValidator(0, 20000000, 8, this);
m_Controls.m_AngleCenteredRigid2D->setValidator(validatorLineEditInputFloat);
m_Controls.m_RotationScaleCenteredRigid2D->setValidator(validatorLineEditInputFloat);
m_Controls.m_CenterXScaleCenteredRigid2D->setValidator(validatorLineEditInputFloat);
m_Controls.m_CenterYScaleCenteredRigid2D->setValidator(validatorLineEditInputFloat);
m_Controls.m_TranslationXScaleCenteredRigid2D->setValidator(validatorLineEditInputFloat);
m_Controls.m_TranslationYScaleCenteredRigid2D->setValidator(validatorLineEditInputFloat);
}
| vtkTransform * QmitkCenteredRigid2DTransformView::Transform | ( | vtkMatrix4x4 * | vtkmatrix, |
| vtkTransform * | vtktransform, | ||
| itk::Array< double > | transformParams | ||
| ) | [virtual] |
Implements QmitkRigidRegistrationTransformsGUIBase.
Definition at line 147 of file QmitkCenteredRigid2DTransformView.cpp.
References QmitkRigidRegistrationTransformsGUIBase::m_MovingImage.
{
if (m_MovingImage.IsNotNull())
{
mitk::ScalarType angle = transformParams[0] * 45.0 / atan(1.0);;
vtktransform->PostMultiply();
vtktransform->Translate(-transformParams[1], -transformParams[2], 0);
vtktransform->RotateZ(angle);
vtktransform->Translate(transformParams[1], transformParams[2], 0);
vtktransform->Translate(transformParams[3], transformParams[4], 0);
vtktransform->PreMultiply();
}
return vtktransform;
}
double QmitkCenteredRigid2DTransformView::m_CenterX [protected] |
Definition at line 67 of file QmitkCenteredRigid2DTransformView.h.
double QmitkCenteredRigid2DTransformView::m_CenterY [protected] |
Definition at line 68 of file QmitkCenteredRigid2DTransformView.h.
double QmitkCenteredRigid2DTransformView::m_CenterZ [protected] |
Definition at line 69 of file QmitkCenteredRigid2DTransformView.h.
Definition at line 63 of file QmitkCenteredRigid2DTransformView.h.
Referenced by GetScales(), GetTransformParameters(), SetTransformParameters(), and SetupUI().
itk::Object::Pointer QmitkCenteredRigid2DTransformView::m_TransformObject [protected] |
Definition at line 65 of file QmitkCenteredRigid2DTransformView.h.
Referenced by GetTransform().
1.7.2