35 #include "ui_transform.h"    42   qRegisterMetaType<Eigen::Quaterniond>(
"Eigen::Vector3d");
    43   qRegisterMetaType<Eigen::Quaterniond>(
"Eigen::Quaterniond");
    48   connect(
ui_->pos_x, SIGNAL(valueChanged(
double)), 
this, SLOT(
changePos(
double)));
    49   connect(
ui_->pos_y, SIGNAL(valueChanged(
double)), 
this, SLOT(
changePos(
double)));
    50   connect(
ui_->pos_z, SIGNAL(valueChanged(
double)), 
this, SLOT(
changePos(
double)));
    51   connect(
ui_->euler_widget_, SIGNAL(valueChanged(Eigen::Quaterniond)),
    62   return ui_->euler_widget_->value();
    67   if (
pos_.isApprox(p)) 
return;
    71   ui_->pos_x->blockSignals(
true);
    72   ui_->pos_y->blockSignals(
true);
    73   ui_->pos_z->blockSignals(
true);
    75   ui_->pos_x->setValue(p.x());
    76   ui_->pos_y->setValue(p.y());
    77   ui_->pos_z->setValue(p.z());
    79   ui_->pos_x->blockSignals(
false);
    80   ui_->pos_y->blockSignals(
false);
    81   ui_->pos_z->blockSignals(
false);
    88   ui_->euler_widget_->setValue(q);
    93   QDoubleSpinBox *
s = qobject_cast<QDoubleSpinBox*>(sender());
   101   if (Eigen::internal::isApprox(
pos_[i], value)) 
return;