This functionality allows you to register 2D as well as 3D images in a rigid manner. More...
#include <QmitkRigidRegistrationView.h>
Public Member Functions | |
QmitkRigidRegistrationView (QObject *parent=0, const char *name=0) | |
default constructor | |
virtual | ~QmitkRigidRegistrationView () |
default destructor | |
virtual void | CreateQtPartControl (QWidget *parent) |
method for creating the applications main widget | |
virtual void | StdMultiWidgetAvailable (QmitkStdMultiWidget &stdMultiWidget) |
Sets the StdMultiWidget and connects it to the functionality. | |
virtual void | StdMultiWidgetNotAvailable () |
Removes the StdMultiWidget and disconnects it from the functionality. | |
virtual void | CreateConnections () |
method for creating the connections of main and control widget | |
virtual void | Activated () |
Method which is called when this functionality is selected in MITK. | |
virtual void | Deactivated () |
Method which is called whenever the functionality is deselected in MITK. | |
virtual void | Visible () |
virtual void | Hidden () |
void | DataNodeHasBeenRemoved (const mitk::DataNode *node) |
Static Public Attributes | |
static const std::string | VIEW_ID = "org.mitk.views.rigidregistration" |
Protected Slots | |
void | FixedSelected (mitk::DataNode::Pointer fixedImage) |
void | MovingSelected (mitk::DataNode::Pointer movingImage) |
bool | CheckCalculate () |
void | UndoTransformation () |
Undo the last registration. | |
void | RedoTransformation () |
Redo the last registration. | |
void | AddNewTransformationToUndoList () |
Adds a new Transformation to the undo list and enables the undo button. | |
void | Translate (int *translateVector) |
Translates the moving image in x, y and z direction given by translateVector. | |
void | Rotate (int *rotateVector) |
Rotates the moving image in x, y and z direction given by rotateVector. | |
void | Scale (int *scaleVector) |
Scales the moving image in x, y and z direction given by scaleVector. | |
void | AlignCenters () |
Automatically aligns the image centers. | |
void | ShowRedGreen (bool show) |
Stores whether the image will be shown in gray values or in red for fixed image and green for moving image. | |
void | ShowManualRegistrationFrame (bool show) |
Changes the visibility of the manual registration methods accordingly to the checkbox "Manual Registration" in GUI. | |
void | OpacityUpdate (float opacity) |
Sets the selected opacity for moving image. | |
void | OpacityUpdate (int opacity) |
Sets the selected opacity for moving image. | |
void | SetImageColor (bool redGreen) |
Sets the images to grayvalues or fixed image to red and moving image to green. | |
void | ClearTransformationLists () |
Clears the undo and redo lists and sets the undo and redo buttons to disabled. | |
void | SetUndoEnabled (bool enable) |
void | SetRedoEnabled (bool enable) |
void | CheckCalculateEnabled () |
void | xTrans_valueChanged (int v) |
void | yTrans_valueChanged (int v) |
void | zTrans_valueChanged (int v) |
void | xRot_valueChanged (int v) |
void | yRot_valueChanged (int v) |
void | zRot_valueChanged (int v) |
void | xScale_valueChanged (int v) |
void | yScale_valueChanged (int v) |
void | zScale_valueChanged (int v) |
void | MovingImageChanged () |
void | Calculate () |
Starts the registration process. | |
void | SetOptimizerValue (double value) |
void | StopOptimizationClicked () |
void | UpdateTimestep () |
void | SetImagesVisible (berry::ISelection::ConstPointer) |
void | CheckForMaskImages () |
void | UseFixedMaskImageChecked (bool checked) |
void | UseMovingMaskImageChecked (bool checked) |
void | TabChanged (int index) |
void | SwitchImages () |
Protected Attributes | |
berry::ISelectionListener::Pointer | m_SelListener |
berry::IStructuredSelection::ConstPointer | m_CurrentSelection |
QmitkStdMultiWidget * | m_MultiWidget |
Ui::QmitkRigidRegistrationViewControls | m_Controls |
mitk::DataNode::Pointer | m_MovingNode |
mitk::DataNode::Pointer | m_MovingMaskNode |
mitk::DataNode::Pointer | m_FixedNode |
mitk::DataNode::Pointer | m_FixedMaskNode |
std::list < mitk::Geometry3D::Pointer > | m_UndoGeometryList |
std::list< std::map < mitk::DataNode::Pointer, mitk::Geometry3D * > > | m_UndoChildGeometryList |
std::list < mitk::Geometry3D::Pointer > | m_RedoGeometryList |
std::list< std::map < mitk::DataNode::Pointer, mitk::Geometry3D * > > | m_RedoChildGeometryList |
bool | m_ShowRedGreen |
float | m_Opacity |
float | m_OriginalOpacity |
bool | m_Deactivated |
int | m_FixedDimension |
int | m_MovingDimension |
int * | translationParams |
int * | rotationParams |
int * | scalingParams |
mitk::Color | m_FixedColor |
mitk::Color | m_MovingColor |
int | m_TranslateSliderPos [3] |
int | m_RotateSliderPos [3] |
int | m_ScaleSliderPos [3] |
QmitkStepperAdapter * | m_TimeStepperAdapter |
Friends | |
struct | SelListenerRigidRegistration |
This functionality allows you to register 2D as well as 3D images in a rigid manner.
Register means to align two images, so that they become as similar as possible. Therefore you can select from different transforms, metrics and optimizers. Registration results will directly be applied to the Moving Image.
Definition at line 47 of file QmitkRigidRegistrationView.h.
QmitkRigidRegistrationView::QmitkRigidRegistrationView | ( | QObject * | parent = 0 , |
const char * | name = 0 |
||
) |
default constructor
Definition at line 154 of file QmitkRigidRegistrationView.cpp.
References DataNodeHasBeenRemoved(), QmitkFunctionality::GetDataStorage(), m_RotateSliderPos, m_ScaleSliderPos, m_TimeStepperAdapter, m_TranslateSliderPos, rotationParams, scalingParams, and translationParams.
: QmitkFunctionality(), m_MultiWidget(NULL), m_MovingNode(NULL), m_MovingMaskNode(NULL), m_FixedNode(NULL), m_FixedMaskNode(NULL), m_ShowRedGreen(false), m_Opacity(0.5), m_OriginalOpacity(1.0), m_Deactivated(false),m_FixedDimension(0), m_MovingDimension(0) { m_TranslateSliderPos[0] = 0; m_TranslateSliderPos[1] = 0; m_TranslateSliderPos[2] = 0; m_RotateSliderPos[0] = 0; m_RotateSliderPos[1] = 0; m_RotateSliderPos[2] = 0; m_ScaleSliderPos[0] = 0; m_ScaleSliderPos[1] = 0; m_ScaleSliderPos[2] = 0; translationParams = new int[3]; rotationParams = new int[3]; scalingParams = new int[3]; m_TimeStepperAdapter = NULL; this->GetDataStorage()->RemoveNodeEvent.AddListener(mitk::MessageDelegate1<QmitkRigidRegistrationView, const mitk::DataNode*> ( this, &QmitkRigidRegistrationView::DataNodeHasBeenRemoved )); }
QmitkRigidRegistrationView::~QmitkRigidRegistrationView | ( | ) | [virtual] |
default destructor
Definition at line 180 of file QmitkRigidRegistrationView.cpp.
References berry::WorkbenchPart::GetSite(), berry::SmartPointer< TObjectType >::IsNotNull(), m_SelListener, and berry::ISelectionService::RemovePostSelectionListener().
{ if(m_SelListener.IsNotNull()) { berry::ISelectionService* s = GetSite()->GetWorkbenchWindow()->GetSelectionService(); if(s) s->RemovePostSelectionListener(m_SelListener); m_SelListener = NULL; } }
void QmitkRigidRegistrationView::Activated | ( | ) | [virtual] |
Method which is called when this functionality is selected in MITK.
Reimplemented from QmitkFunctionality.
Definition at line 268 of file QmitkRigidRegistrationView.cpp.
References berry::SmartPointer< TObjectType >::Cast(), CheckCalculateEnabled(), ClearTransformationLists(), mitk::RenderingManager::GetInstance(), berry::WorkbenchPart::GetSite(), berry::SmartPointer< TObjectType >::IsNull(), m_Controls, m_CurrentSelection, m_Deactivated, Ui_QmitkRigidRegistrationViewControls::m_OpacitySlider, m_SelListener, Ui_QmitkRigidRegistrationViewControls::m_ShowRedGreenValues, OpacityUpdate(), SelListenerRigidRegistration, and ShowRedGreen().
{ m_Deactivated = false; mitk::RenderingManager::GetInstance()->RequestUpdateAll(); QmitkFunctionality::Activated(); if (m_SelListener.IsNull()) { m_SelListener = berry::ISelectionListener::Pointer(new SelListenerRigidRegistration(this)); this->GetSite()->GetWorkbenchWindow()->GetSelectionService()->AddPostSelectionListener(/*"org.mitk.views.datamanager",*/ m_SelListener); berry::ISelection::ConstPointer sel( this->GetSite()->GetWorkbenchWindow()->GetSelectionService()->GetSelection("org.mitk.views.datamanager")); m_CurrentSelection = sel.Cast<const IStructuredSelection>(); m_SelListener.Cast<SelListenerRigidRegistration>()->DoSelectionChanged(sel); } this->OpacityUpdate(m_Controls.m_OpacitySlider->value()); this->ShowRedGreen(m_Controls.m_ShowRedGreenValues->isChecked()); this->ClearTransformationLists(); this->CheckCalculateEnabled(); /* m_Deactivated = false; mitk::RenderingManager::GetInstance()->RequestUpdateAll(); QmitkFunctionality::Activated(); if (m_SelListener.IsNull()) { m_SelListener = berry::ISelectionListener::Pointer(new SelListenerRigidRegistration(this)); this->GetSite()->GetWorkbenchWindow()->GetSelectionService()->AddPostSelectionListener(/ *"org.mitk.views.datamanager",* / m_SelListener); berry::ISelection::ConstPointer sel( this->GetSite()->GetWorkbenchWindow()->GetSelectionService()->GetSelection("org.mitk.views.datamanager")); m_CurrentSelection = sel.Cast<const IStructuredSelection>(); m_SelListener.Cast<SelListenerRigidRegistration>()->DoSelectionChanged(sel); } this->OpacityUpdate(m_Controls.m_OpacitySlider->value()); this->ShowRedGreen(m_Controls.m_ShowRedGreenValues->isChecked()); this->ClearTransformationLists(); this->CheckCalculateEnabled();*/ }
void QmitkRigidRegistrationView::AddNewTransformationToUndoList | ( | ) | [protected, slot] |
Adds a new Transformation to the undo list and enables the undo button.
Definition at line 519 of file QmitkRigidRegistrationView.cpp.
References QmitkFunctionality::GetDataStorage(), m_MovingNode, m_RedoChildGeometryList, m_RedoGeometryList, m_UndoChildGeometryList, m_UndoGeometryList, SetRedoEnabled(), and SetUndoEnabled().
Referenced by CreateConnections().
{ mitk::BaseData::Pointer movingData = m_MovingNode->GetData(); m_UndoGeometryList.push_back(static_cast<mitk::Geometry3D *>(movingData->GetGeometry(0)->Clone().GetPointer())); unsigned long size; mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); size = children->Size(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> childGeometries; for (unsigned long i = 0; i < size; ++i) { childGeometries.insert(std::pair<mitk::DataNode::Pointer, mitk::Geometry3D*>(children->GetElement(i), children->GetElement(i)->GetData()->GetGeometry())); } m_UndoChildGeometryList.push_back(childGeometries); m_RedoGeometryList.clear(); m_RedoChildGeometryList.clear(); this->SetUndoEnabled(true); this->SetRedoEnabled(false); }
void QmitkRigidRegistrationView::AlignCenters | ( | ) | [protected, slot] |
Automatically aligns the image centers.
Definition at line 907 of file QmitkRigidRegistrationView.cpp.
References int(), m_Controls, m_FixedNode, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XTransSlider, Ui_QmitkRigidRegistrationViewControls::m_YTransSlider, and Ui_QmitkRigidRegistrationViewControls::m_ZTransSlider.
Referenced by CreateConnections().
{ if (m_FixedNode.IsNotNull() && m_MovingNode.IsNotNull()) { mitk::Point3D fixedPoint = m_FixedNode->GetData()->GetGeometry()->GetCenter(); mitk::Point3D movingPoint = m_MovingNode->GetData()->GetGeometry()->GetCenter(); mitk::Vector3D translateVec; translateVec = fixedPoint - movingPoint; m_Controls.m_XTransSlider->setValue((int)m_Controls.m_XTransSlider->value() + (int)translateVec[0]); m_Controls.m_YTransSlider->setValue((int)m_Controls.m_YTransSlider->value() + (int)translateVec[1]); m_Controls.m_ZTransSlider->setValue((int)m_Controls.m_ZTransSlider->value() + (int)translateVec[2]); } }
void QmitkRigidRegistrationView::Calculate | ( | ) | [protected, slot] |
Starts the registration process.
Definition at line 1125 of file QmitkRigidRegistrationView.cpp.
References QmitkRigidRegistrationSelectorView::CalculateTransformation(), Ui_QmitkRigidRegistrationViewControls::frame_2, Ui_QmitkRigidRegistrationViewControls::frame_3, Ui_QmitkRigidRegistrationViewControls::m_CalculateTransformation, m_Controls, m_FixedMaskNode, m_FixedNode, m_MovingMaskNode, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_StopOptimization, Ui_QmitkRigidRegistrationViewControls::m_UseFixedImageMask, Ui_QmitkRigidRegistrationViewControls::m_UseMovingImageMask, Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1, QmitkRigidRegistrationSelectorView::SetFixedMaskNode(), QmitkRigidRegistrationSelectorView::SetFixedNode(), QmitkRigidRegistrationSelectorView::SetMovingMaskNode(), QmitkRigidRegistrationSelectorView::SetMovingNode(), QmitkRigidRegistrationSelectorView::StopOptimization(), and Ui_QmitkRigidRegistrationViewControls::timeSlider.
Referenced by CreateConnections().
{ m_Controls.qmitkRigidRegistrationSelector1->SetFixedNode(m_FixedNode); m_Controls.qmitkRigidRegistrationSelector1->SetMovingNode(m_MovingNode); if (m_FixedMaskNode.IsNotNull() && m_Controls.m_UseFixedImageMask->isChecked()) { m_Controls.qmitkRigidRegistrationSelector1->SetFixedMaskNode(m_FixedMaskNode); } else { m_Controls.qmitkRigidRegistrationSelector1->SetFixedMaskNode(NULL); } if (m_MovingMaskNode.IsNotNull() && m_Controls.m_UseMovingImageMask->isChecked()) { m_Controls.qmitkRigidRegistrationSelector1->SetMovingMaskNode(m_MovingMaskNode); } else { m_Controls.qmitkRigidRegistrationSelector1->SetMovingMaskNode(NULL); } m_Controls.frame_2->setEnabled(false); m_Controls.frame_3->setEnabled(false); m_Controls.m_CalculateTransformation->setEnabled(false); m_Controls.m_StopOptimization->setEnabled(true); m_Controls.qmitkRigidRegistrationSelector1->CalculateTransformation(((QmitkSliderNavigatorWidget*)m_Controls.timeSlider)->GetPos()); m_Controls.m_StopOptimization->setEnabled(false); m_Controls.frame_2->setEnabled(true); m_Controls.frame_3->setEnabled(true); m_Controls.m_CalculateTransformation->setEnabled(true); m_Controls.qmitkRigidRegistrationSelector1->StopOptimization(false); }
bool QmitkRigidRegistrationView::CheckCalculate | ( | ) | [protected, slot] |
checks if registration is possible
Definition at line 512 of file QmitkRigidRegistrationView.cpp.
References m_FixedNode, and m_MovingNode.
{ if(m_MovingNode==m_FixedNode) return false; return true; }
void QmitkRigidRegistrationView::CheckCalculateEnabled | ( | ) | [protected, slot] |
Definition at line 931 of file QmitkRigidRegistrationView.cpp.
References QmitkRigidRegistrationSelectorView::GetSelectedTransform(), Ui_QmitkRigidRegistrationViewControls::m_CalculateTransformation, m_Controls, m_FixedDimension, m_FixedNode, Ui_QmitkRigidRegistrationViewControls::m_ManualFrame, m_MovingDimension, m_MovingNode, and Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1.
Referenced by Activated(), CreateConnections(), CreateQtPartControl(), FixedSelected(), MovingImageChanged(), MovingSelected(), and UndoTransformation().
{ if (m_FixedNode.IsNotNull() && m_MovingNode.IsNotNull()) { m_Controls.m_ManualFrame->setEnabled(true); m_Controls.m_CalculateTransformation->setEnabled(true); if ( (m_FixedDimension != m_MovingDimension && std::max<int>(m_FixedDimension, m_MovingDimension) != 4) || m_FixedDimension < 2 /*|| m_FixedDimension > 3*/) { m_Controls.m_CalculateTransformation->setEnabled(false); } else if (m_Controls.qmitkRigidRegistrationSelector1->GetSelectedTransform() < 5 && (m_FixedDimension < 2) /*|| m_FixedDimension > 3)*/) { m_Controls.m_CalculateTransformation->setEnabled(false); } else if ((m_Controls.qmitkRigidRegistrationSelector1->GetSelectedTransform() > 4 && m_Controls.qmitkRigidRegistrationSelector1->GetSelectedTransform() < 13) && !(m_FixedDimension > 2)) { m_Controls.m_CalculateTransformation->setEnabled(false); } else if (m_Controls.qmitkRigidRegistrationSelector1->GetSelectedTransform() > 12 && m_FixedDimension != 2) { m_Controls.m_CalculateTransformation->setEnabled(false); } } else { m_Controls.m_CalculateTransformation->setEnabled(false); m_Controls.m_ManualFrame->setEnabled(false); } }
void QmitkRigidRegistrationView::CheckForMaskImages | ( | ) | [protected, slot] |
Definition at line 1214 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_FixedMaskNode, m_MovingMaskNode, Ui_QmitkRigidRegistrationViewControls::m_UseFixedImageMask, and Ui_QmitkRigidRegistrationViewControls::m_UseMovingImageMask.
Referenced by FixedSelected(), and MovingSelected().
{ if (m_FixedMaskNode.IsNotNull()) { m_Controls.m_UseFixedImageMask->show(); } else { m_Controls.m_UseFixedImageMask->hide(); } if (m_MovingMaskNode.IsNotNull()) { m_Controls.m_UseMovingImageMask->show(); } else { m_Controls.m_UseMovingImageMask->hide(); } }
void QmitkRigidRegistrationView::ClearTransformationLists | ( | ) | [protected, slot] |
Clears the undo and redo lists and sets the undo and redo buttons to disabled.
Definition at line 677 of file QmitkRigidRegistrationView.cpp.
References m_RedoChildGeometryList, m_RedoGeometryList, m_UndoChildGeometryList, m_UndoGeometryList, SetRedoEnabled(), and SetUndoEnabled().
Referenced by Activated(), and Deactivated().
{ this->SetUndoEnabled(false); this->SetRedoEnabled(false); m_UndoGeometryList.clear(); m_UndoChildGeometryList.clear(); m_RedoGeometryList.clear(); m_RedoChildGeometryList.clear(); }
void QmitkRigidRegistrationView::CreateConnections | ( | ) | [virtual] |
method for creating the connections of main and control widget
Definition at line 236 of file QmitkRigidRegistrationView.cpp.
References AddNewTransformationToUndoList(), AlignCenters(), Calculate(), CheckCalculateEnabled(), Ui_QmitkRigidRegistrationViewControls::m_AutomaticTranslation, Ui_QmitkRigidRegistrationViewControls::m_CalculateTransformation, m_Controls, Ui_QmitkRigidRegistrationViewControls::m_LoadRigidRegistrationParameter, Ui_QmitkRigidRegistrationViewControls::m_LoadRigidRegistrationTestParameter, Ui_QmitkRigidRegistrationViewControls::m_ManualRegistrationCheckbox, Ui_QmitkRigidRegistrationViewControls::m_OpacitySlider, Ui_QmitkRigidRegistrationViewControls::m_RedoTransformation, Ui_QmitkRigidRegistrationViewControls::m_RigidTransform, Ui_QmitkRigidRegistrationViewControls::m_SaveRigidRegistrationParameter, Ui_QmitkRigidRegistrationViewControls::m_SaveRigidRegistrationTestParameter, Ui_QmitkRigidRegistrationViewControls::m_ShowRedGreenValues, Ui_QmitkRigidRegistrationViewControls::m_StopOptimization, Ui_QmitkRigidRegistrationViewControls::m_SwitchImages, Ui_QmitkRigidRegistrationViewControls::m_UndoTransformation, Ui_QmitkRigidRegistrationViewControls::m_UseFixedImageMask, Ui_QmitkRigidRegistrationViewControls::m_UseMovingImageMask, Ui_QmitkRigidRegistrationViewControls::m_XRotSlider, Ui_QmitkRigidRegistrationViewControls::m_XScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_XTransSlider, Ui_QmitkRigidRegistrationViewControls::m_YRotSlider, Ui_QmitkRigidRegistrationViewControls::m_YScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_YTransSlider, Ui_QmitkRigidRegistrationViewControls::m_ZRotSlider, Ui_QmitkRigidRegistrationViewControls::m_ZScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_ZTransSlider, OpacityUpdate(), Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1, RedoTransformation(), SetOptimizerValue(), ShowManualRegistrationFrame(), ShowRedGreen(), StopOptimizationClicked(), SwitchImages(), TabChanged(), UndoTransformation(), UseFixedMaskImageChecked(), UseMovingMaskImageChecked(), xRot_valueChanged(), xScale_valueChanged(), xTrans_valueChanged(), yRot_valueChanged(), yScale_valueChanged(), yTrans_valueChanged(), zRot_valueChanged(), zScale_valueChanged(), and zTrans_valueChanged().
Referenced by CreateQtPartControl().
{ connect( m_Controls.m_ManualRegistrationCheckbox, SIGNAL(toggled(bool)), this, SLOT(ShowManualRegistrationFrame(bool))); connect((QObject*)(m_Controls.m_SwitchImages),SIGNAL(clicked()),this,SLOT(SwitchImages())); connect(m_Controls.m_ShowRedGreenValues, SIGNAL(toggled(bool)), this, SLOT(ShowRedGreen(bool))); connect(m_Controls.m_UseFixedImageMask, SIGNAL(toggled(bool)), this, SLOT(UseFixedMaskImageChecked(bool))); connect(m_Controls.m_UseMovingImageMask, SIGNAL(toggled(bool)), this, SLOT(UseMovingMaskImageChecked(bool))); connect(m_Controls.m_RigidTransform, SIGNAL(currentChanged(int)), this, SLOT(TabChanged(int))); connect(m_Controls.m_OpacitySlider, SIGNAL(valueChanged(int)), this, SLOT(OpacityUpdate(int))); connect(m_Controls.m_CalculateTransformation, SIGNAL(clicked()), this, SLOT(Calculate())); connect(m_Controls.m_UndoTransformation,SIGNAL(clicked()),this,SLOT(UndoTransformation())); connect(m_Controls.m_RedoTransformation,SIGNAL(clicked()),this,SLOT(RedoTransformation())); connect(m_Controls.m_AutomaticTranslation,SIGNAL(clicked()),this,SLOT(AlignCenters())); connect(m_Controls.m_StopOptimization,SIGNAL(clicked()), this , SLOT(StopOptimizationClicked())); connect(m_Controls.m_XTransSlider, SIGNAL(valueChanged(int)), this, SLOT(xTrans_valueChanged(int))); connect(m_Controls.m_YTransSlider, SIGNAL(valueChanged(int)), this, SLOT(yTrans_valueChanged(int))); connect(m_Controls.m_ZTransSlider, SIGNAL(valueChanged(int)), this, SLOT(zTrans_valueChanged(int))); connect(m_Controls.m_XRotSlider, SIGNAL(valueChanged(int)), this, SLOT(xRot_valueChanged(int))); connect(m_Controls.m_YRotSlider, SIGNAL(valueChanged(int)), this, SLOT(yRot_valueChanged(int))); connect(m_Controls.m_ZRotSlider, SIGNAL(valueChanged(int)), this, SLOT(zRot_valueChanged(int))); connect(m_Controls.m_XScaleSlider, SIGNAL(valueChanged(int)), this, SLOT(xScale_valueChanged(int))); connect(m_Controls.m_YScaleSlider, SIGNAL(valueChanged(int)), this, SLOT(yScale_valueChanged(int))); connect(m_Controls.m_ZScaleSlider, SIGNAL(valueChanged(int)), this, SLOT(zScale_valueChanged(int))); connect(m_Controls.m_LoadRigidRegistrationParameter, SIGNAL(clicked()), m_Controls.qmitkRigidRegistrationSelector1, SLOT(LoadRigidRegistrationParameter())); connect(m_Controls.m_SaveRigidRegistrationParameter, SIGNAL(clicked()), m_Controls.qmitkRigidRegistrationSelector1, SLOT(SaveRigidRegistrationParameter())); connect(m_Controls.m_LoadRigidRegistrationTestParameter, SIGNAL(clicked()), m_Controls.qmitkRigidRegistrationSelector1, SLOT(LoadRigidRegistrationTestParameter())); connect(m_Controls.m_SaveRigidRegistrationTestParameter, SIGNAL(clicked()), m_Controls.qmitkRigidRegistrationSelector1, SLOT(SaveRigidRegistrationTestParameter())); connect(m_Controls.qmitkRigidRegistrationSelector1,SIGNAL(OptimizerChanged(double)),this,SLOT(SetOptimizerValue( double ))); connect(m_Controls.qmitkRigidRegistrationSelector1,SIGNAL(TransformChanged()),this,SLOT(CheckCalculateEnabled())); connect(m_Controls.qmitkRigidRegistrationSelector1,SIGNAL(AddNewTransformationToUndoList()),this,SLOT(AddNewTransformationToUndoList())); }
void QmitkRigidRegistrationView::CreateQtPartControl | ( | QWidget * | parent ) | [virtual] |
method for creating the applications main widget
Implements berry::QtViewPart.
Definition at line 191 of file QmitkRigidRegistrationView.cpp.
References CheckCalculateEnabled(), CreateConnections(), Ui_QmitkRigidRegistrationViewControls::frame, Ui_QmitkRigidRegistrationViewControls::label, Ui_QmitkRigidRegistrationViewControls::label_2, m_Controls, Ui_QmitkRigidRegistrationViewControls::m_FixedLabel, Ui_QmitkRigidRegistrationViewControls::m_ManualFrame, Ui_QmitkRigidRegistrationViewControls::m_MovingLabel, Ui_QmitkRigidRegistrationViewControls::m_OpacityLabel, Ui_QmitkRigidRegistrationViewControls::m_OpacitySlider, QmitkFunctionality::m_Parent, Ui_QmitkRigidRegistrationViewControls::m_RigidTransform, Ui_QmitkRigidRegistrationViewControls::m_ShowRedGreenValues, Ui_QmitkRigidRegistrationViewControls::m_SwitchImages, Ui_QmitkRigidRegistrationViewControls::m_UseFixedImageMask, Ui_QmitkRigidRegistrationViewControls::m_UseMovingImageMask, Ui_QmitkRigidRegistrationViewControls::setupUi(), Ui_QmitkRigidRegistrationViewControls::TextLabelFixed, Ui_QmitkRigidRegistrationViewControls::TextLabelMoving, and Ui_QmitkRigidRegistrationViewControls::timeSlider.
{ m_Controls.setupUi(parent); m_Controls.m_ManualFrame->hide(); m_Controls.timeSlider->hide(); m_Controls.TextLabelFixed->hide(); m_Controls.m_FixedLabel->hide(); m_Controls.TextLabelMoving->hide(); m_Controls.m_MovingLabel->hide(); m_Controls.m_UseFixedImageMask->hide(); m_Controls.m_UseMovingImageMask->hide(); m_Controls.m_OpacityLabel->setEnabled(false); m_Controls.m_OpacitySlider->setEnabled(false); m_Controls.label->setEnabled(false); m_Controls.label_2->setEnabled(false); m_Controls.m_ShowRedGreenValues->setEnabled(false); m_Controls.m_SwitchImages->hide(); if (m_Controls.m_RigidTransform->currentIndex() == 1) { m_Controls.frame->show(); } else { m_Controls.frame->hide(); } m_Controls.m_ManualFrame->setEnabled(false); m_Parent->setEnabled(false); this->CreateConnections(); this->CheckCalculateEnabled(); }
void QmitkRigidRegistrationView::DataNodeHasBeenRemoved | ( | const mitk::DataNode * | node ) |
Definition at line 370 of file QmitkRigidRegistrationView.cpp.
References Ui_QmitkRigidRegistrationViewControls::label, Ui_QmitkRigidRegistrationViewControls::label_2, m_Controls, Ui_QmitkRigidRegistrationViewControls::m_FixedLabel, m_FixedNode, Ui_QmitkRigidRegistrationViewControls::m_MovingLabel, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_OpacityLabel, Ui_QmitkRigidRegistrationViewControls::m_OpacitySlider, Ui_QmitkRigidRegistrationViewControls::m_ShowRedGreenValues, Ui_QmitkRigidRegistrationViewControls::m_StatusLabel, Ui_QmitkRigidRegistrationViewControls::m_SwitchImages, Ui_QmitkRigidRegistrationViewControls::TextLabelFixed, and Ui_QmitkRigidRegistrationViewControls::TextLabelMoving.
Referenced by QmitkRigidRegistrationView().
{ if(node == m_FixedNode || node == m_MovingNode) { m_Controls.m_StatusLabel->show(); m_Controls.TextLabelFixed->hide(); m_Controls.m_FixedLabel->hide(); m_Controls.TextLabelMoving->hide(); m_Controls.m_MovingLabel->hide(); m_Controls.m_OpacityLabel->setEnabled(false); m_Controls.m_OpacitySlider->setEnabled(false); m_Controls.label->setEnabled(false); m_Controls.label_2->setEnabled(false); m_Controls.m_ShowRedGreenValues->setEnabled(false); m_Controls.m_SwitchImages->hide(); } }
void QmitkRigidRegistrationView::Deactivated | ( | ) | [virtual] |
Method which is called whenever the functionality is deselected in MITK.
Reimplemented from QmitkFunctionality.
Definition at line 327 of file QmitkRigidRegistrationView.cpp.
References ClearTransformationLists(), berry::WorkbenchPart::GetSite(), m_Deactivated, m_FixedNode, m_MovingNode, m_SelListener, berry::ISelectionService::RemovePostSelectionListener(), and SetImageColor().
{ m_Deactivated = true; this->SetImageColor(false); if (m_FixedNode.IsNotNull()) m_FixedNode->SetOpacity(1.0); m_FixedNode = NULL; m_MovingNode = NULL; this->ClearTransformationLists(); berry::ISelectionService* s = GetSite()->GetWorkbenchWindow()->GetSelectionService(); if(s) s->RemovePostSelectionListener(m_SelListener); m_SelListener = NULL; /* m_Deactivated = true; this->SetImageColor(false); m_FixedNode = NULL; m_MovingNode = NULL; this->ClearTransformationLists(); berry::ISelectionService* s = GetSite()->GetWorkbenchWindow()->GetSelectionService(); if(s) s->RemovePostSelectionListener(m_SelListener); m_SelListener = NULL; mitk::RenderingManager::GetInstance()->RequestUpdateAll(); QmitkFunctionality::Deactivated();*/ }
void QmitkRigidRegistrationView::FixedSelected | ( | mitk::DataNode::Pointer | fixedImage ) | [protected, slot] |
sets the fixed Image according to TreeNodeSelector widget
Definition at line 388 of file QmitkRigidRegistrationView.cpp.
References CheckCalculateEnabled(), CheckForMaskImages(), QmitkFunctionality::GetActiveStdMultiWidget(), QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), mitk::BaseController::GetTime(), QmitkStdMultiWidget::GetTimeNavigationController(), m_Controls, m_FixedColor, m_FixedDimension, Ui_QmitkRigidRegistrationViewControls::m_FixedLabel, m_FixedMaskNode, m_FixedNode, m_MultiWidget, m_ShowRedGreen, Ui_QmitkRigidRegistrationViewControls::m_SwitchImages, m_TimeStepperAdapter, Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1, QmitkRigidRegistrationSelectorView::SetFixedDimension(), QmitkRigidRegistrationSelectorView::SetFixedNode(), SetImageColor(), Ui_QmitkRigidRegistrationViewControls::TextLabelFixed, Ui_QmitkRigidRegistrationViewControls::timeSlider, and UpdateTimestep().
Referenced by SwitchImages().
{ if (m_FixedNode.IsNotNull()) { this->SetImageColor(false); m_FixedNode->SetOpacity(1.0); } m_FixedNode = fixedImage; if (m_FixedNode.IsNotNull()) { m_FixedNode->SetOpacity(0.5); m_FixedNode->SetVisibility(true); m_Controls.TextLabelFixed->setText(QString::fromStdString(m_FixedNode->GetName())); m_Controls.m_FixedLabel->show(); m_Controls.TextLabelFixed->show(); m_Controls.m_SwitchImages->show(); mitk::ColorProperty::Pointer colorProperty; colorProperty = dynamic_cast<mitk::ColorProperty*>(m_FixedNode->GetProperty("color")); if ( colorProperty.IsNotNull() ) { m_FixedColor = colorProperty->GetColor(); } this->SetImageColor(m_ShowRedGreen); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); if (dynamic_cast<mitk::Image*>(m_FixedNode->GetData())) { m_FixedDimension = dynamic_cast<mitk::Image*>(m_FixedNode->GetData())->GetDimension(); m_Controls.qmitkRigidRegistrationSelector1->SetFixedDimension(m_FixedDimension); m_Controls.qmitkRigidRegistrationSelector1->SetFixedNode(m_FixedNode); } bool hasMask = false; mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_FixedNode); unsigned long size; size = children->Size(); for (unsigned long i = 0; i < size; ++i) { mitk::BoolProperty::Pointer isMaskProp = dynamic_cast<mitk::BoolProperty*>(children->GetElement(i)->GetProperty("binary")); if(isMaskProp.IsNotNull() && isMaskProp->GetValue() == true) { m_FixedMaskNode = children->GetElement(i); hasMask = true; this->CheckForMaskImages(); break; } } if (!hasMask) { this->CheckForMaskImages(); m_FixedMaskNode = NULL; } } else { m_Controls.m_FixedLabel->hide(); m_Controls.TextLabelFixed->hide(); m_Controls.m_SwitchImages->hide(); } this->CheckCalculateEnabled(); if(this->GetActiveStdMultiWidget()) { m_TimeStepperAdapter = new QmitkStepperAdapter((QObject*) m_Controls.timeSlider, m_MultiWidget->GetTimeNavigationController()->GetTime(), "sliceNavigatorTimeFromRigidRegistration"); connect( m_TimeStepperAdapter, SIGNAL( Refetch() ), this, SLOT( UpdateTimestep() ) ); } }
void QmitkRigidRegistrationView::Hidden | ( | ) | [virtual] |
Called when this functionality is hidden ( no matter what IsExclusiveFunctionality() returns )
Reimplemented from QmitkFunctionality.
Definition at line 355 of file QmitkRigidRegistrationView.cpp.
{ /*m_Deactivated = true; this->SetImageColor(false); m_FixedNode = NULL; m_MovingNode = NULL; this->ClearTransformationLists(); berry::ISelectionService* s = GetSite()->GetWorkbenchWindow()->GetSelectionService(); if(s) s->RemovePostSelectionListener(m_SelListener); m_SelListener = NULL; //mitk::RenderingManager::GetInstance()->RequestUpdateAll(); //QmitkFunctionality::Deactivated();*/ }
void QmitkRigidRegistrationView::MovingImageChanged | ( | ) | [protected, slot] |
Definition at line 1096 of file QmitkRigidRegistrationView.cpp.
References CheckCalculateEnabled(), m_Controls, m_MovingDimension, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XRotSlider, Ui_QmitkRigidRegistrationViewControls::m_XScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_XTransSlider, Ui_QmitkRigidRegistrationViewControls::m_YRotSlider, Ui_QmitkRigidRegistrationViewControls::m_YScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_YTransSlider, Ui_QmitkRigidRegistrationViewControls::m_ZRotSlider, Ui_QmitkRigidRegistrationViewControls::m_ZScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_ZTransSlider, Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1, rotationParams, scalingParams, QmitkRigidRegistrationSelectorView::SetMovingDimension(), QmitkRigidRegistrationSelectorView::SetMovingNode(), and translationParams.
Referenced by MovingSelected(), xRot_valueChanged(), xScale_valueChanged(), xTrans_valueChanged(), yRot_valueChanged(), yScale_valueChanged(), yTrans_valueChanged(), zRot_valueChanged(), zScale_valueChanged(), and zTrans_valueChanged().
{ if (dynamic_cast<mitk::Image*>(m_MovingNode->GetData())) { m_Controls.m_XTransSlider->setValue(0); m_Controls.m_YTransSlider->setValue(0); m_Controls.m_ZTransSlider->setValue(0); translationParams[0]=0; translationParams[1]=0; translationParams[2]=0; m_Controls.m_XRotSlider->setValue(0); m_Controls.m_YRotSlider->setValue(0); m_Controls.m_ZRotSlider->setValue(0); rotationParams[0]=0; rotationParams[1]=0; rotationParams[2]=0; m_Controls.m_XScaleSlider->setValue(0); m_Controls.m_YScaleSlider->setValue(0); m_Controls.m_ZScaleSlider->setValue(0); scalingParams[0]=0; scalingParams[1]=0; scalingParams[2]=0; m_MovingDimension = dynamic_cast<mitk::Image*>(m_MovingNode->GetData())->GetDimension(); m_Controls.qmitkRigidRegistrationSelector1->SetMovingDimension(m_MovingDimension); m_Controls.qmitkRigidRegistrationSelector1->SetMovingNode(m_MovingNode); this->CheckCalculateEnabled(); } }
void QmitkRigidRegistrationView::MovingSelected | ( | mitk::DataNode::Pointer | movingImage ) | [protected, slot] |
sets the moving Image according to TreeNodeSelector widget
Definition at line 454 of file QmitkRigidRegistrationView.cpp.
References CheckCalculateEnabled(), CheckForMaskImages(), QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), m_Controls, m_FixedNode, m_MovingColor, Ui_QmitkRigidRegistrationViewControls::m_MovingLabel, m_MovingMaskNode, m_MovingNode, m_Opacity, m_OriginalOpacity, m_ShowRedGreen, MovingImageChanged(), OpacityUpdate(), Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1, SetImageColor(), QmitkRigidRegistrationSelectorView::SetMovingNodeChildren(), and Ui_QmitkRigidRegistrationViewControls::TextLabelMoving.
Referenced by SwitchImages().
{ if (m_MovingNode.IsNotNull()) { m_MovingNode->SetOpacity(m_OriginalOpacity); if (m_FixedNode == m_MovingNode) m_FixedNode->SetOpacity(0.5); this->SetImageColor(false); } m_MovingNode = movingImage; if (m_MovingNode.IsNotNull()) { m_MovingNode->SetVisibility(true); m_Controls.TextLabelMoving->setText(QString::fromStdString(m_MovingNode->GetName())); m_Controls.m_MovingLabel->show(); m_Controls.TextLabelMoving->show(); mitk::ColorProperty::Pointer colorProperty; colorProperty = dynamic_cast<mitk::ColorProperty*>(m_MovingNode->GetProperty("color")); if ( colorProperty.IsNotNull() ) { m_MovingColor = colorProperty->GetColor(); } this->SetImageColor(m_ShowRedGreen); m_MovingNode->GetFloatProperty("opacity", m_OriginalOpacity); this->OpacityUpdate(m_Opacity); bool hasMask = false; mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); m_Controls.qmitkRigidRegistrationSelector1->SetMovingNodeChildren(children); unsigned long size; size = children->Size(); for (unsigned long i = 0; i < size; ++i) { mitk::BoolProperty::Pointer isMaskProp = dynamic_cast<mitk::BoolProperty*>(children->GetElement(i)->GetProperty("binary")); if(isMaskProp.IsNotNull() && isMaskProp->GetValue() == true) { m_MovingMaskNode = children->GetElement(i); hasMask = true; this->CheckForMaskImages(); break; } } if (!hasMask) { m_MovingMaskNode = NULL; this->CheckForMaskImages(); } } else { m_Controls.m_MovingLabel->hide(); m_Controls.TextLabelMoving->hide(); } mitk::RenderingManager::GetInstance()->RequestUpdateAll(); this->MovingImageChanged(); this->CheckCalculateEnabled(); }
void QmitkRigidRegistrationView::OpacityUpdate | ( | float | opacity ) | [protected, slot] |
Sets the selected opacity for moving image.
opacity | the selected opacity |
Definition at line 661 of file QmitkRigidRegistrationView.cpp.
References mitk::RenderingManager::GetInstance(), m_MovingNode, and m_Opacity.
Referenced by Activated(), CreateConnections(), MovingSelected(), and OpacityUpdate().
{ m_Opacity = opacity; if (m_MovingNode.IsNotNull()) { m_MovingNode->SetOpacity(m_Opacity); } mitk::RenderingManager::GetInstance()->RequestUpdateAll(); }
void QmitkRigidRegistrationView::OpacityUpdate | ( | int | opacity ) | [protected, slot] |
Sets the selected opacity for moving image.
opacity | the selected opacity |
Definition at line 671 of file QmitkRigidRegistrationView.cpp.
References OpacityUpdate().
{ float fValue = ((float)opacity)/100.0f; this->OpacityUpdate(fValue); }
void QmitkRigidRegistrationView::RedoTransformation | ( | ) | [protected, slot] |
Redo the last registration.
Definition at line 586 of file QmitkRigidRegistrationView.cpp.
References QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), m_MovingNode, m_MultiWidget, m_RedoChildGeometryList, m_RedoGeometryList, m_UndoChildGeometryList, m_UndoGeometryList, QmitkStdMultiWidget::mitkWidget4, SetRedoEnabled(), and SetUndoEnabled().
Referenced by CreateConnections().
{ if(!m_RedoGeometryList.empty()) { mitk::BaseData::Pointer movingData = m_MovingNode->GetData(); m_UndoGeometryList.push_back(static_cast<mitk::Geometry3D *>(movingData->GetGeometry(0)->Clone().GetPointer())); unsigned long size; mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); size = children->Size(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> childGeometries; for (unsigned long i = 0; i < size; ++i) { childGeometries.insert(std::pair<mitk::DataNode::Pointer, mitk::Geometry3D*>(children->GetElement(i), children->GetElement(i)->GetData()->GetGeometry())); } m_UndoChildGeometryList.push_back(childGeometries); movingData->SetGeometry(m_RedoGeometryList.back()); m_RedoGeometryList.pop_back(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> oldChildGeometries; oldChildGeometries = m_RedoChildGeometryList.back(); m_RedoChildGeometryList.pop_back(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*>::iterator iter; for (unsigned long j = 0; j < size; ++j) { iter = oldChildGeometries.find(children->GetElement(j)); children->GetElement(j)->GetData()->SetGeometry((*iter).second); } //\FIXME when geometry is substituted the matrix referenced by the actor created by the mapper //is still pointing to the old one. Workaround: delete mapper m_MovingNode->SetMapper(1, NULL); mitk::RenderingManager::GetInstance()->RequestUpdate(m_MultiWidget->mitkWidget4->GetRenderWindow()); movingData->GetTimeSlicedGeometry()->UpdateInformation(); this->SetUndoEnabled(true); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } if(!m_RedoGeometryList.empty()) { this->SetRedoEnabled(true); } else { this->SetRedoEnabled(false); } }
void QmitkRigidRegistrationView::Rotate | ( | int * | rotateVector ) | [protected, slot] |
Rotates the moving image in x, y and z direction given by rotateVector.
rotateVector | Contains the rotation around x, y and z axis. |
Definition at line 731 of file QmitkRigidRegistrationView.cpp.
References QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), m_MovingNode, m_RedoGeometryList, and m_RotateSliderPos.
Referenced by xRot_valueChanged(), yRot_valueChanged(), and zRot_valueChanged().
{ if (m_MovingNode.IsNotNull()) { mitk::Vector3D rotateVec; rotateVec[0] = rotateVector[0] - m_RotateSliderPos[0]; rotateVec[1] = rotateVector[1] - m_RotateSliderPos[1]; rotateVec[2] = rotateVector[2] - m_RotateSliderPos[2]; m_RotateSliderPos[0] = rotateVector[0]; m_RotateSliderPos[1] = rotateVector[1]; m_RotateSliderPos[2] = rotateVector[2]; vtkMatrix4x4* rotationMatrix = vtkMatrix4x4::New(); vtkMatrix4x4* translationMatrix = vtkMatrix4x4::New(); rotationMatrix->Identity(); translationMatrix->Identity(); double (*rotMatrix)[4] = rotationMatrix->Element; double (*transMatrix)[4] = translationMatrix->Element; mitk::Point3D centerBB = m_MovingNode->GetData()->GetGeometry()->GetCenter(); transMatrix[0][3] = centerBB[0]; transMatrix[1][3] = centerBB[1]; transMatrix[2][3] = centerBB[2]; translationMatrix->Invert(); m_MovingNode->GetData()->GetGeometry()->Compose( translationMatrix ); mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); unsigned long size; size = children->Size(); mitk::DataNode::Pointer childNode; for (unsigned long i = 0; i < size; ++i) { childNode = children->GetElement(i); childNode->GetData()->GetGeometry()->Compose( translationMatrix ); childNode->GetData()->Modified(); } double radianX = rotateVec[0] * vnl_math::pi / 180; double radianY = rotateVec[1] * vnl_math::pi / 180; double radianZ = rotateVec[2] * vnl_math::pi / 180; if ( rotateVec[0] != 0 ) { rotMatrix[1][1] = cos( radianX ); rotMatrix[1][2] = -sin( radianX ); rotMatrix[2][1] = sin( radianX ); rotMatrix[2][2] = cos( radianX ); } else if ( rotateVec[1] != 0 ) { rotMatrix[0][0] = cos( radianY ); rotMatrix[0][2] = sin( radianY ); rotMatrix[2][0] = -sin( radianY ); rotMatrix[2][2] = cos( radianY ); } else if ( rotateVec[2] != 0 ) { rotMatrix[0][0] = cos( radianZ ); rotMatrix[0][1] = -sin( radianZ ); rotMatrix[1][0] = sin( radianZ ); rotMatrix[1][1] = cos( radianZ ); } m_MovingNode->GetData()->GetGeometry()->Compose( rotationMatrix ); for (unsigned long i = 0; i < size; ++i) { childNode = children->GetElement(i); childNode->GetData()->GetGeometry()->Compose( rotationMatrix ); childNode->GetData()->Modified(); } translationMatrix->Invert(); m_MovingNode->GetData()->GetGeometry()->Compose( translationMatrix ); for (unsigned long i = 0; i < size; ++i) { childNode = children->GetElement(i); childNode->GetData()->GetGeometry()->Compose( rotationMatrix ); childNode->GetData()->Modified(); } m_MovingNode->GetData()->Modified(); m_RedoGeometryList.clear(); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } }
void QmitkRigidRegistrationView::Scale | ( | int * | scaleVector ) | [protected, slot] |
Scales the moving image in x, y and z direction given by scaleVector.
scaleVector | Contains the scaling around x, y and z axis. |
Definition at line 822 of file QmitkRigidRegistrationView.cpp.
References QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), m_MovingNode, m_RedoGeometryList, and m_ScaleSliderPos.
Referenced by xScale_valueChanged(), yScale_valueChanged(), and zScale_valueChanged().
{ if (m_MovingNode.IsNotNull()) { mitk::Vector3D scaleVec; scaleVec[0] = scaleVector[0] - m_ScaleSliderPos[0]; scaleVec[1] = scaleVector[1] - m_ScaleSliderPos[1]; scaleVec[2] = scaleVector[2] - m_ScaleSliderPos[2]; m_ScaleSliderPos[0] = scaleVector[0]; m_ScaleSliderPos[1] = scaleVector[1]; m_ScaleSliderPos[2] = scaleVector[2]; vtkMatrix4x4* scalingMatrix = vtkMatrix4x4::New(); scalingMatrix->Identity(); double (*scaleMatrix)[4] = scalingMatrix->Element; if (scaleVec[0] >= 0) { for(int i = 0; i<scaleVec[0]; i++) { scaleMatrix[0][0] *= 0.95; } } else { for(int i = 0; i<-scaleVec[0]; i++) { scaleMatrix[0][0] *= 1/0.95; } } if (scaleVec[1] >= 0) { for(int i = 0; i<scaleVec[1]; i++) { scaleMatrix[1][1] *= 0.95; } } else { for(int i = 0; i<-scaleVec[1]; i++) { scaleMatrix[1][1] *= 1/0.95; } } if (scaleVec[2] >= 0) { for(int i = 0; i<scaleVec[2]; i++) { scaleMatrix[2][2] *= 0.95; } } else { for(int i = 0; i<-scaleVec[2]; i++) { scaleMatrix[2][2] *= 1/0.95; } } scalingMatrix->Invert(); m_MovingNode->GetData()->GetGeometry()->Compose( scalingMatrix ); m_MovingNode->GetData()->Modified(); mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); unsigned long size; size = children->Size(); mitk::DataNode::Pointer childNode; for (unsigned long i = 0; i < size; ++i) { childNode = children->GetElement(i); childNode->GetData()->GetGeometry()->Compose( scalingMatrix ); childNode->GetData()->Modified(); } m_RedoGeometryList.clear(); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } }
void QmitkRigidRegistrationView::SetImageColor | ( | bool | redGreen ) | [protected, slot] |
Sets the images to grayvalues or fixed image to red and moving image to green.
redGreen | if true, then images will be shown in red and green |
Definition at line 640 of file QmitkRigidRegistrationView.cpp.
References mitk::RenderingManager::GetInstance(), m_FixedColor, m_FixedNode, m_MovingColor, and m_MovingNode.
Referenced by Deactivated(), FixedSelected(), MovingSelected(), and ShowRedGreen().
{ if (!redGreen && m_FixedNode.IsNotNull()) { m_FixedNode->SetColor(m_FixedColor); } if (!redGreen && m_MovingNode.IsNotNull()) { m_MovingNode->SetColor(m_MovingColor); } if (redGreen && m_FixedNode.IsNotNull()) { m_FixedNode->SetColor(1.0f, 0.0f, 0.0f); } if (redGreen && m_MovingNode.IsNotNull()) { m_MovingNode->SetColor(0.0f, 1.0f, 0.0f); } mitk::RenderingManager::GetInstance()->RequestUpdateAll(); }
void QmitkRigidRegistrationView::SetImagesVisible | ( | berry::ISelection::ConstPointer | ) | [protected, slot] |
Definition at line 1184 of file QmitkRigidRegistrationView.cpp.
References QmitkFunctionality::GetDataStorage(), and m_CurrentSelection.
{ if (this->m_CurrentSelection->Size() == 0) { // show all images mitk::DataStorage::SetOfObjects::ConstPointer setOfObjects = this->GetDataStorage()->GetAll(); for (mitk::DataStorage::SetOfObjects::ConstIterator nodeIt = setOfObjects->Begin() ; nodeIt != setOfObjects->End(); ++nodeIt) // for each node { if ( (nodeIt->Value().IsNotNull()) && (nodeIt->Value()->GetProperty("visible")) && dynamic_cast<mitk::Geometry2DData*>(nodeIt->Value()->GetData())==NULL) { nodeIt->Value()->SetVisibility(true); } } } else { // hide all images mitk::DataStorage::SetOfObjects::ConstPointer setOfObjects = this->GetDataStorage()->GetAll(); for (mitk::DataStorage::SetOfObjects::ConstIterator nodeIt = setOfObjects->Begin() ; nodeIt != setOfObjects->End(); ++nodeIt) // for each node { if ( (nodeIt->Value().IsNotNull()) && (nodeIt->Value()->GetProperty("visible")) && dynamic_cast<mitk::Geometry2DData*>(nodeIt->Value()->GetData())==NULL) { nodeIt->Value()->SetVisibility(false); } } } }
void QmitkRigidRegistrationView::SetOptimizerValue | ( | double | value ) | [protected, slot] |
Definition at line 1157 of file QmitkRigidRegistrationView.cpp.
References m_Controls, and Ui_QmitkRigidRegistrationViewControls::m_OptimizerValueLCD.
Referenced by CreateConnections().
{ m_Controls.m_OptimizerValueLCD->display(value); }
void QmitkRigidRegistrationView::SetRedoEnabled | ( | bool | enable ) | [protected, slot] |
Definition at line 926 of file QmitkRigidRegistrationView.cpp.
References m_Controls, and Ui_QmitkRigidRegistrationViewControls::m_RedoTransformation.
Referenced by AddNewTransformationToUndoList(), ClearTransformationLists(), RedoTransformation(), and UndoTransformation().
{ m_Controls.m_RedoTransformation->setEnabled(enable); }
void QmitkRigidRegistrationView::SetUndoEnabled | ( | bool | enable ) | [protected, slot] |
Definition at line 921 of file QmitkRigidRegistrationView.cpp.
References m_Controls, and Ui_QmitkRigidRegistrationViewControls::m_UndoTransformation.
Referenced by AddNewTransformationToUndoList(), ClearTransformationLists(), RedoTransformation(), and UndoTransformation().
{ m_Controls.m_UndoTransformation->setEnabled(enable); }
void QmitkRigidRegistrationView::ShowManualRegistrationFrame | ( | bool | show ) | [protected, slot] |
Changes the visibility of the manual registration methods accordingly to the checkbox "Manual Registration" in GUI.
show | if true, then manual registration methods will be shown |
Definition at line 1172 of file QmitkRigidRegistrationView.cpp.
References m_Controls, and Ui_QmitkRigidRegistrationViewControls::m_ManualFrame.
Referenced by CreateConnections().
{ if (show) { m_Controls.m_ManualFrame->show(); } else { m_Controls.m_ManualFrame->hide(); } }
void QmitkRigidRegistrationView::ShowRedGreen | ( | bool | show ) | [protected, slot] |
Stores whether the image will be shown in gray values or in red for fixed image and green for moving image.
show | if true, then images will be shown in red and green |
Definition at line 634 of file QmitkRigidRegistrationView.cpp.
References m_ShowRedGreen, and SetImageColor().
Referenced by Activated(), and CreateConnections().
{ m_ShowRedGreen = redGreen; this->SetImageColor(m_ShowRedGreen); }
void QmitkRigidRegistrationView::StdMultiWidgetAvailable | ( | QmitkStdMultiWidget & | stdMultiWidget ) | [virtual] |
Sets the StdMultiWidget and connects it to the functionality.
Reimplemented from QmitkFunctionality.
Definition at line 223 of file QmitkRigidRegistrationView.cpp.
References m_MultiWidget, QmitkFunctionality::m_Parent, and QmitkStdMultiWidget::SetWidgetPlanesVisibility().
{ m_Parent->setEnabled(true); m_MultiWidget = &stdMultiWidget; m_MultiWidget->SetWidgetPlanesVisibility(true); }
void QmitkRigidRegistrationView::StdMultiWidgetNotAvailable | ( | ) | [virtual] |
Removes the StdMultiWidget and disconnects it from the functionality.
Reimplemented from QmitkFunctionality.
Definition at line 230 of file QmitkRigidRegistrationView.cpp.
References m_MultiWidget, and QmitkFunctionality::m_Parent.
{ m_Parent->setEnabled(false); m_MultiWidget = NULL; }
void QmitkRigidRegistrationView::StopOptimizationClicked | ( | ) | [protected, slot] |
Definition at line 1162 of file QmitkRigidRegistrationView.cpp.
References m_Controls, Ui_QmitkRigidRegistrationViewControls::qmitkRigidRegistrationSelector1, and QmitkRigidRegistrationSelectorView::StopOptimization().
Referenced by CreateConnections().
void QmitkRigidRegistrationView::SwitchImages | ( | ) | [protected, slot] |
Definition at line 1270 of file QmitkRigidRegistrationView.cpp.
References FixedSelected(), m_FixedNode, m_MovingNode, and MovingSelected().
Referenced by CreateConnections().
{ mitk::DataNode::Pointer newMoving = m_FixedNode; mitk::DataNode::Pointer newFixed = m_MovingNode; this->FixedSelected(newFixed); this->MovingSelected(newMoving); }
void QmitkRigidRegistrationView::TabChanged | ( | int | index ) | [protected, slot] |
Definition at line 1258 of file QmitkRigidRegistrationView.cpp.
References Ui_QmitkRigidRegistrationViewControls::frame, and m_Controls.
Referenced by CreateConnections().
{ if (index == 0) { m_Controls.frame->hide(); } else { m_Controls.frame->show(); } }
void QmitkRigidRegistrationView::Translate | ( | int * | translateVector ) | [protected, slot] |
Translates the moving image in x, y and z direction given by translateVector.
translateVector | Contains the translation in x, y and z direction. |
Definition at line 687 of file QmitkRigidRegistrationView.cpp.
References QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), m_MovingNode, m_RedoGeometryList, and m_TranslateSliderPos.
Referenced by xTrans_valueChanged(), yTrans_valueChanged(), and zTrans_valueChanged().
{ if (m_MovingNode.IsNotNull()) { mitk::Vector3D translateVec; translateVec[0] = translateVector[0] - m_TranslateSliderPos[0]; translateVec[1] = translateVector[1] - m_TranslateSliderPos[1]; translateVec[2] = translateVector[2] - m_TranslateSliderPos[2]; m_TranslateSliderPos[0] = translateVector[0]; m_TranslateSliderPos[1] = translateVector[1]; m_TranslateSliderPos[2] = translateVector[2]; vtkMatrix4x4* translationMatrix = vtkMatrix4x4::New(); translationMatrix->Identity(); double (*transMatrix)[4] = translationMatrix->Element; transMatrix[0][3] = -translateVec[0]; transMatrix[1][3] = -translateVec[1]; transMatrix[2][3] = -translateVec[2]; translationMatrix->Invert(); m_MovingNode->GetData()->GetGeometry()->Compose( translationMatrix ); m_MovingNode->GetData()->Modified(); mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); unsigned long size; size = children->Size(); mitk::DataNode::Pointer childNode; for (unsigned long i = 0; i < size; ++i) { childNode = children->GetElement(i); childNode->GetData()->GetGeometry()->Compose( translationMatrix ); childNode->GetData()->Modified(); } m_RedoGeometryList.clear(); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } }
void QmitkRigidRegistrationView::UndoTransformation | ( | ) | [protected, slot] |
Undo the last registration.
Definition at line 538 of file QmitkRigidRegistrationView.cpp.
References CheckCalculateEnabled(), QmitkFunctionality::GetDataStorage(), mitk::RenderingManager::GetInstance(), m_MovingNode, m_MultiWidget, m_RedoChildGeometryList, m_RedoGeometryList, m_UndoChildGeometryList, m_UndoGeometryList, QmitkStdMultiWidget::mitkWidget4, SetRedoEnabled(), and SetUndoEnabled().
Referenced by CreateConnections().
{ if(!m_UndoGeometryList.empty()) { mitk::BaseData::Pointer movingData = m_MovingNode->GetData(); m_RedoGeometryList.push_back(static_cast<mitk::Geometry3D *>(movingData->GetGeometry(0)->Clone().GetPointer())); unsigned long size; mitk::DataStorage::SetOfObjects::ConstPointer children = this->GetDataStorage()->GetDerivations(m_MovingNode); size = children->Size(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> childGeometries; for (unsigned long i = 0; i < size; ++i) { childGeometries.insert(std::pair<mitk::DataNode::Pointer, mitk::Geometry3D*>(children->GetElement(i), children->GetElement(i)->GetData()->GetGeometry())); } m_RedoChildGeometryList.push_back(childGeometries); movingData->SetGeometry(m_UndoGeometryList.back()); m_UndoGeometryList.pop_back(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> oldChildGeometries; oldChildGeometries = m_UndoChildGeometryList.back(); m_UndoChildGeometryList.pop_back(); std::map<mitk::DataNode::Pointer, mitk::Geometry3D*>::iterator iter; for (unsigned long j = 0; j < size; ++j) { iter = oldChildGeometries.find(children->GetElement(j)); children->GetElement(j)->GetData()->SetGeometry((*iter).second); } //\FIXME when geometry is substituted the matrix referenced by the actor created by the mapper //is still pointing to the old one. Workaround: delete mapper m_MovingNode->SetMapper(1, NULL); mitk::RenderingManager::GetInstance()->RequestUpdate(m_MultiWidget->mitkWidget4->GetRenderWindow()); movingData->GetTimeSlicedGeometry()->UpdateInformation(); this->SetRedoEnabled(true); mitk::RenderingManager::GetInstance()->RequestUpdateAll(); } if(!m_UndoGeometryList.empty()) { this->SetUndoEnabled(true); } else { this->SetUndoEnabled(false); } this->CheckCalculateEnabled(); }
void QmitkRigidRegistrationView::UpdateTimestep | ( | ) | [protected, slot] |
Definition at line 1167 of file QmitkRigidRegistrationView.cpp.
References mitk::RenderingManager::GetInstance().
Referenced by FixedSelected().
{ mitk::RenderingManager::GetInstance()->RequestUpdateAll(); }
void QmitkRigidRegistrationView::UseFixedMaskImageChecked | ( | bool | checked ) | [protected, slot] |
Definition at line 1234 of file QmitkRigidRegistrationView.cpp.
References m_FixedMaskNode.
Referenced by CreateConnections().
{ if (checked) { m_FixedMaskNode->SetVisibility(true); } else { m_FixedMaskNode->SetVisibility(false); } }
void QmitkRigidRegistrationView::UseMovingMaskImageChecked | ( | bool | checked ) | [protected, slot] |
Definition at line 1246 of file QmitkRigidRegistrationView.cpp.
References m_MovingMaskNode.
Referenced by CreateConnections().
{ if (checked) { m_MovingMaskNode->SetVisibility(true); } else { m_MovingMaskNode->SetVisibility(false); } }
void QmitkRigidRegistrationView::Visible | ( | ) | [virtual] |
Called when this functionality becomes visible ( no matter what IsExclusiveFunctionality() returns )
Reimplemented from QmitkFunctionality.
Definition at line 306 of file QmitkRigidRegistrationView.cpp.
{ /* m_Deactivated = false; mitk::RenderingManager::GetInstance()->RequestUpdateAll(); QmitkFunctionality::Activated(); if (m_SelListener.IsNull()) { m_SelListener = berry::ISelectionListener::Pointer(new SelListenerRigidRegistration(this)); this->GetSite()->GetWorkbenchWindow()->GetSelectionService()->AddPostSelectionListener("org.mitk.views.datamanager", m_SelListener); berry::ISelection::ConstPointer sel( this->GetSite()->GetWorkbenchWindow()->GetSelectionService()->GetSelection("org.mitk.views.datamanager")); m_CurrentSelection = sel.Cast<const IStructuredSelection>(); m_SelListener.Cast<SelListenerRigidRegistration>()->DoSelectionChanged(sel); } this->OpacityUpdate(m_Controls.m_OpacitySlider->value()); this->ShowRedGreen(m_Controls.m_ShowRedGreenValues->isChecked()); this->ClearTransformationLists(); this->CheckCalculateEnabled();*/ }
void QmitkRigidRegistrationView::xRot_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 1006 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_YRotSlider, Ui_QmitkRigidRegistrationViewControls::m_ZRotSlider, MovingImageChanged(), Rotate(), and rotationParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { rotationParams[0]=v; rotationParams[1]=m_Controls.m_YRotSlider->value(); rotationParams[2]=m_Controls.m_ZRotSlider->value(); Rotate(rotationParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::xScale_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 1051 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_YScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_ZScaleSlider, MovingImageChanged(), Scale(), and scalingParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { scalingParams[0]=v; scalingParams[1]=m_Controls.m_YScaleSlider->value(); scalingParams[2]=m_Controls.m_ZScaleSlider->value(); Scale(scalingParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::xTrans_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 961 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_YTransSlider, Ui_QmitkRigidRegistrationViewControls::m_ZTransSlider, MovingImageChanged(), Translate(), and translationParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { translationParams[0]=v; translationParams[1]=m_Controls.m_YTransSlider->value(); translationParams[2]=m_Controls.m_ZTransSlider->value(); Translate(translationParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::yRot_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 1021 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XRotSlider, Ui_QmitkRigidRegistrationViewControls::m_ZRotSlider, MovingImageChanged(), Rotate(), and rotationParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { rotationParams[0]=m_Controls.m_XRotSlider->value(); rotationParams[1]=v; rotationParams[2]=m_Controls.m_ZRotSlider->value(); Rotate(rotationParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::yScale_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 1066 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_ZScaleSlider, MovingImageChanged(), Scale(), and scalingParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { scalingParams[0]=m_Controls.m_XScaleSlider->value(); scalingParams[1]=v; scalingParams[2]=m_Controls.m_ZScaleSlider->value(); Scale(scalingParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::yTrans_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 976 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XTransSlider, Ui_QmitkRigidRegistrationViewControls::m_ZTransSlider, MovingImageChanged(), Translate(), and translationParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { translationParams[0]=m_Controls.m_XTransSlider->value(); translationParams[1]=v; translationParams[2]=m_Controls.m_ZTransSlider->value(); Translate(translationParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::zRot_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 1036 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XRotSlider, Ui_QmitkRigidRegistrationViewControls::m_YRotSlider, MovingImageChanged(), Rotate(), and rotationParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { rotationParams[0]=m_Controls.m_XRotSlider->value(); rotationParams[1]=m_Controls.m_YRotSlider->value(); rotationParams[2]=v; Rotate(rotationParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::zScale_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 1081 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XScaleSlider, Ui_QmitkRigidRegistrationViewControls::m_YScaleSlider, MovingImageChanged(), Scale(), and scalingParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { scalingParams[0]=m_Controls.m_XScaleSlider->value(); scalingParams[1]=m_Controls.m_YScaleSlider->value(); scalingParams[2]=v; Scale(scalingParams); } else { MovingImageChanged(); } }
void QmitkRigidRegistrationView::zTrans_valueChanged | ( | int | v ) | [protected, slot] |
Definition at line 991 of file QmitkRigidRegistrationView.cpp.
References m_Controls, m_MovingNode, Ui_QmitkRigidRegistrationViewControls::m_XTransSlider, Ui_QmitkRigidRegistrationViewControls::m_YTransSlider, MovingImageChanged(), Translate(), and translationParams.
Referenced by CreateConnections().
{ if (m_MovingNode.IsNotNull()) { translationParams[0]=m_Controls.m_XTransSlider->value(); translationParams[1]=m_Controls.m_YTransSlider->value(); translationParams[2]=v; Translate(translationParams); } else { MovingImageChanged(); } }
friend struct SelListenerRigidRegistration [friend] |
Definition at line 50 of file QmitkRigidRegistrationView.h.
Referenced by Activated().
control widget to make all changes for Deformable registration
Definition at line 262 of file QmitkRigidRegistrationView.h.
Referenced by Activated(), AlignCenters(), Calculate(), CheckCalculateEnabled(), CheckForMaskImages(), CreateConnections(), CreateQtPartControl(), DataNodeHasBeenRemoved(), FixedSelected(), MovingImageChanged(), MovingSelected(), SetOptimizerValue(), SetRedoEnabled(), SetUndoEnabled(), ShowManualRegistrationFrame(), StopOptimizationClicked(), TabChanged(), xRot_valueChanged(), xScale_valueChanged(), xTrans_valueChanged(), yRot_valueChanged(), yScale_valueChanged(), yTrans_valueChanged(), zRot_valueChanged(), zScale_valueChanged(), and zTrans_valueChanged().
berry::IStructuredSelection::ConstPointer QmitkRigidRegistrationView::m_CurrentSelection [protected] |
Definition at line 251 of file QmitkRigidRegistrationView.h.
Referenced by Activated(), SelListenerRigidRegistration::DoSelectionChanged(), and SetImagesVisible().
bool QmitkRigidRegistrationView::m_Deactivated [protected] |
Definition at line 274 of file QmitkRigidRegistrationView.h.
Referenced by Activated(), and Deactivated().
mitk::Color QmitkRigidRegistrationView::m_FixedColor [protected] |
Definition at line 280 of file QmitkRigidRegistrationView.h.
Referenced by FixedSelected(), and SetImageColor().
int QmitkRigidRegistrationView::m_FixedDimension [protected] |
Definition at line 275 of file QmitkRigidRegistrationView.h.
Referenced by CheckCalculateEnabled(), and FixedSelected().
Definition at line 266 of file QmitkRigidRegistrationView.h.
Referenced by Calculate(), CheckForMaskImages(), FixedSelected(), and UseFixedMaskImageChecked().
Definition at line 265 of file QmitkRigidRegistrationView.h.
Referenced by AlignCenters(), Calculate(), CheckCalculate(), CheckCalculateEnabled(), DataNodeHasBeenRemoved(), Deactivated(), FixedSelected(), MovingSelected(), SetImageColor(), and SwitchImages().
mitk::Color QmitkRigidRegistrationView::m_MovingColor [protected] |
Definition at line 281 of file QmitkRigidRegistrationView.h.
Referenced by MovingSelected(), and SetImageColor().
int QmitkRigidRegistrationView::m_MovingDimension [protected] |
Definition at line 276 of file QmitkRigidRegistrationView.h.
Referenced by CheckCalculateEnabled(), and MovingImageChanged().
Definition at line 264 of file QmitkRigidRegistrationView.h.
Referenced by Calculate(), CheckForMaskImages(), MovingSelected(), and UseMovingMaskImageChecked().
Definition at line 263 of file QmitkRigidRegistrationView.h.
Referenced by AddNewTransformationToUndoList(), AlignCenters(), Calculate(), CheckCalculate(), CheckCalculateEnabled(), DataNodeHasBeenRemoved(), Deactivated(), MovingImageChanged(), MovingSelected(), OpacityUpdate(), RedoTransformation(), Rotate(), Scale(), SetImageColor(), SwitchImages(), Translate(), UndoTransformation(), xRot_valueChanged(), xScale_valueChanged(), xTrans_valueChanged(), yRot_valueChanged(), yScale_valueChanged(), yTrans_valueChanged(), zRot_valueChanged(), zScale_valueChanged(), and zTrans_valueChanged().
default main widget containing 4 windows showing 3 orthogonal slices of the volume and a 3d render window
Definition at line 257 of file QmitkRigidRegistrationView.h.
Referenced by FixedSelected(), RedoTransformation(), StdMultiWidgetAvailable(), StdMultiWidgetNotAvailable(), and UndoTransformation().
float QmitkRigidRegistrationView::m_Opacity [protected] |
Definition at line 272 of file QmitkRigidRegistrationView.h.
Referenced by MovingSelected(), and OpacityUpdate().
float QmitkRigidRegistrationView::m_OriginalOpacity [protected] |
Definition at line 273 of file QmitkRigidRegistrationView.h.
Referenced by MovingSelected().
std::list<std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> > QmitkRigidRegistrationView::m_RedoChildGeometryList [protected] |
Definition at line 270 of file QmitkRigidRegistrationView.h.
Referenced by AddNewTransformationToUndoList(), ClearTransformationLists(), RedoTransformation(), and UndoTransformation().
std::list<mitk::Geometry3D::Pointer> QmitkRigidRegistrationView::m_RedoGeometryList [protected] |
Definition at line 269 of file QmitkRigidRegistrationView.h.
Referenced by AddNewTransformationToUndoList(), ClearTransformationLists(), RedoTransformation(), Rotate(), Scale(), Translate(), and UndoTransformation().
int QmitkRigidRegistrationView::m_RotateSliderPos[3] [protected] |
Definition at line 283 of file QmitkRigidRegistrationView.h.
Referenced by QmitkRigidRegistrationView(), and Rotate().
int QmitkRigidRegistrationView::m_ScaleSliderPos[3] [protected] |
Definition at line 284 of file QmitkRigidRegistrationView.h.
Referenced by QmitkRigidRegistrationView(), and Scale().
Definition at line 250 of file QmitkRigidRegistrationView.h.
Referenced by Activated(), Deactivated(), and ~QmitkRigidRegistrationView().
bool QmitkRigidRegistrationView::m_ShowRedGreen [protected] |
Definition at line 271 of file QmitkRigidRegistrationView.h.
Referenced by FixedSelected(), MovingSelected(), and ShowRedGreen().
Definition at line 286 of file QmitkRigidRegistrationView.h.
Referenced by FixedSelected(), and QmitkRigidRegistrationView().
int QmitkRigidRegistrationView::m_TranslateSliderPos[3] [protected] |
Definition at line 282 of file QmitkRigidRegistrationView.h.
Referenced by QmitkRigidRegistrationView(), and Translate().
std::list<std::map<mitk::DataNode::Pointer, mitk::Geometry3D*> > QmitkRigidRegistrationView::m_UndoChildGeometryList [protected] |
Definition at line 268 of file QmitkRigidRegistrationView.h.
Referenced by AddNewTransformationToUndoList(), ClearTransformationLists(), RedoTransformation(), and UndoTransformation().
std::list<mitk::Geometry3D::Pointer> QmitkRigidRegistrationView::m_UndoGeometryList [protected] |
Definition at line 267 of file QmitkRigidRegistrationView.h.
Referenced by AddNewTransformationToUndoList(), ClearTransformationLists(), RedoTransformation(), and UndoTransformation().
int* QmitkRigidRegistrationView::rotationParams [protected] |
Definition at line 278 of file QmitkRigidRegistrationView.h.
Referenced by MovingImageChanged(), QmitkRigidRegistrationView(), xRot_valueChanged(), yRot_valueChanged(), and zRot_valueChanged().
int* QmitkRigidRegistrationView::scalingParams [protected] |
Definition at line 279 of file QmitkRigidRegistrationView.h.
Referenced by MovingImageChanged(), QmitkRigidRegistrationView(), xScale_valueChanged(), yScale_valueChanged(), and zScale_valueChanged().
int* QmitkRigidRegistrationView::translationParams [protected] |
Definition at line 277 of file QmitkRigidRegistrationView.h.
Referenced by MovingImageChanged(), QmitkRigidRegistrationView(), xTrans_valueChanged(), yTrans_valueChanged(), and zTrans_valueChanged().
const std::string QmitkRigidRegistrationView::VIEW_ID = "org.mitk.views.rigidregistration" [static] |
Definition at line 56 of file QmitkRigidRegistrationView.h.