57 "Point Cloud Registration")
63 mSpaceListenerMoving =
mServices->spaceProvider()->createListener();
64 mSpaceListenerFixed =
mServices->spaceProvider()->createListener();
65 mSpaceListenerMoving->setSpace(
mServices->spaceProvider()->getPr());
70 mFixedImage->setTypeRegexp(
"mesh");
71 mFixedImage->setValueName(
"Select Surface");
72 mFixedImage->setHelp(
"Select a surface model to register against.");
85 this->connectAutoRegistration();
89 QVBoxLayout* layout =
new QVBoxLayout(
this);
93 QVBoxLayout* trackLayout = this->createVBoxInGroupBox(layout,
"Tracking Recorder");
94 trackLayout->setMargin(0);
95 trackLayout->addWidget(mRecordTrackingWidget);
103 void RMPCFromPointerWidget::connectAutoRegistration()
108 &RMPCFromPointerWidget::queuedAutoRegistration,
109 Qt::QueuedConnection);
113 QVBoxLayout* RMPCFromPointerWidget::createVBoxInGroupBox(QVBoxLayout* parent, QString header)
115 QWidget* widget =
new QWidget(
this);
116 QVBoxLayout* layout =
new QVBoxLayout(widget);
117 layout->setMargin(0);
120 parent->addWidget(groupBox);
133 MeshPtr moving = this->getTrackerDataAsMesh();
134 QString logPath =
mServices->patient()->getActivePatientFolder() +
"/Logs/";
139 MeshPtr RMPCFromPointerWidget::getTrackerDataAsMesh()
147 moving->setVtkPolyData(trackerdata_r);
157 mSpaceListenerFixed->setSpace(
mServices->spaceProvider()->getD(fixed));
163 void RMPCFromPointerWidget::queuedAutoRegistration()
176 mServices->registration()->setLastRegistrationTime(QDateTime::currentDateTime());
177 QString text = QString(
"Contour from %1").arg(tool->getName());
178 mServices->registration()->applyPatientRegistration(new_rMpr, text);
boost::shared_ptr< class RegServices > RegServicesPtr
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
void fixedDataChanged(QString uid)
boost::shared_ptr< class Data > DataPtr
void activeToolChanged(const QString &uId)
vtkSmartPointer< class vtkPolyData > vtkPolyDataPtr
vtkPolyDataPtr polydataFromTransforms(TimedTransformMap transformMap_prMt, Transform3D rMpr)
void changed()
emit when the underlying data value is changed: The user interface will be updated.
boost::shared_ptr< class Mesh > MeshPtr
std::map< double, Transform3D > TimedTransformMap
XmlOptionFile descend(QString element) const
step one level down in the xml tree
boost::shared_ptr< class Tool > ToolPtr