Merge branch 'master' of github.com:introlab/rtabmap

This commit is contained in:
Mathieu Labbe
2015-04-27 02:43:13 -04:00
6 changed files with 55 additions and 64 deletions

View File

@@ -1899,51 +1899,35 @@ void DatabaseViewer::updateConstraintView(
if(updateImageSliders)
{
bool updateA = false;
bool updateB = false;
ui_->horizontalSlider_A->blockSignals(true);
ui_->horizontalSlider_B->blockSignals(true);
// set from on left and to on right
if(ui_->horizontalSlider_A->value() != idToIndex_.value(link.from()))
{
ui_->horizontalSlider_A->setValue(idToIndex_.value(link.from()));
updateA=true;
}
if(ui_->horizontalSlider_B->value() != idToIndex_.value(link.to()))
{
ui_->horizontalSlider_B->setValue(idToIndex_.value(link.to()));
updateB=true;
}
// set from on left and to on right {
ui_->horizontalSlider_A->setValue(idToIndex_.value(link.from()));
ui_->horizontalSlider_B->setValue(idToIndex_.value(link.to()));
ui_->horizontalSlider_A->blockSignals(false);
ui_->horizontalSlider_B->blockSignals(false);
if(updateA)
{
this->update(idToIndex_.value(link.from()),
ui_->label_indexA,
ui_->label_parentsA,
ui_->label_childrenA,
ui_->label_weightA,
ui_->label_labelA,
ui_->label_stampA,
ui_->graphicsView_A,
ui_->widget_cloudA,
ui_->label_idA,
false); // don't update constraints view!
}
if(updateB)
{
this->update(idToIndex_.value(link.to()),
ui_->label_indexB,
ui_->label_parentsB,
ui_->label_childrenB,
ui_->label_weightB,
ui_->label_labelB,
ui_->label_stampB,
ui_->graphicsView_B,
ui_->widget_cloudB,
ui_->label_idB,
false); // don't update constraints view!
}
this->update(idToIndex_.value(link.from()),
ui_->label_indexA,
ui_->label_parentsA,
ui_->label_childrenA,
ui_->label_weightA,
ui_->label_labelA,
ui_->label_stampA,
ui_->graphicsView_A,
ui_->widget_cloudA,
ui_->label_idA,
false); // don't update constraints view!
this->update(idToIndex_.value(link.to()),
ui_->label_indexB,
ui_->label_parentsB,
ui_->label_childrenB,
ui_->label_weightB,
ui_->label_labelB,
ui_->label_stampB,
ui_->graphicsView_B,
ui_->widget_cloudB,
ui_->label_idB,
false); // don't update constraints view!
}
if(ui_->constraintsViewer->isVisible())
@@ -2786,13 +2770,6 @@ void DatabaseViewer::addConstraint()
bool DatabaseViewer::addConstraint(int from, int to, bool silent, bool updateGraph)
{
if(from < to)
{
int tmp = to;
to = from;
from = tmp;
}
if(from == to)
{
UWARN("Cannot add link to same node");
@@ -2846,8 +2823,8 @@ bool DatabaseViewer::addConstraint(int from, int to, bool silent, bool updateGra
if(!silent)
{
ui_->graphicsView_A->setFeatures(tmpMemory.getSignature(to)->getWords());
ui_->graphicsView_B->setFeatures(tmpMemory.getSignature(from)->getWords());
ui_->graphicsView_A->setFeatures(tmpMemory.getSignature(from)->getWords());
ui_->graphicsView_B->setFeatures(tmpMemory.getSignature(to)->getWords());
updateWordsMatching();
}
}
@@ -2882,7 +2859,14 @@ bool DatabaseViewer::addConstraint(int from, int to, bool silent, bool updateGra
}
// transform is valid, make a link
linksAdded_.insert(std::make_pair(from, Link(from, to, Link::kUserClosure, t, variance, variance)));
if(from>to)
{
linksAdded_.insert(std::make_pair(from, Link(from, to, Link::kUserClosure, t, variance, variance)));
}
else
{
linksAdded_.insert(std::make_pair(to, Link(to, from, Link::kUserClosure, t.inverse(), variance, variance)));
}
updateSlider = true;
}
}

View File

@@ -2256,7 +2256,8 @@ void MainWindow::drawKeypoints(const std::multimap<int, cv::KeyPoint> & refWords
void MainWindow::showEvent(QShowEvent* anEvent)
{
this->setWindowModified(false);
//if the config file doesn't exist, make the GUI obsolete
this->setWindowModified(!QFile::exists(_preferencesDialog->getIniFilePath()));
}
void MainWindow::moveEvent(QMoveEvent* anEvent)

View File

@@ -166,6 +166,10 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
_ui->openni2_exposure->setEnabled(CameraOpenNI2::exposureGainAvailable());
_ui->openni2_gain->setEnabled(CameraOpenNI2::exposureGainAvailable());
// Default Driver
connect(_ui->comboBox_cameraRGBD, SIGNAL(currentIndexChanged(int)), this, SLOT(updateOpenNI2GroupBoxVisibility()));
this->resetSettings(_ui->groupBox_source0);
_ui->predictionPlot->showLegend(false);
QButtonGroup * buttonGroup = new QButtonGroup(this);
@@ -298,7 +302,6 @@ PreferencesDialog::PreferencesDialog(QWidget * parent) :
//openni group
connect(_ui->groupBox_sourceOpenni, SIGNAL(toggled(bool)), this, SLOT(makeObsoleteSourcePanel()));
connect(_ui->comboBox_cameraRGBD, SIGNAL(currentIndexChanged(int)), this, SLOT(makeObsoleteSourcePanel()));
connect(_ui->comboBox_cameraRGBD, SIGNAL(currentIndexChanged(int)), this, SLOT(updateOpenNI2GroupBoxVisibility()));
connect(_ui->openni2_autoWhiteBalance, SIGNAL(stateChanged(int)), this, SLOT(makeObsoleteSourcePanel()));
connect(_ui->openni2_autoExposure, SIGNAL(stateChanged(int)), this, SLOT(makeObsoleteSourcePanel()));
connect(_ui->openni2_exposure, SIGNAL(valueChanged(int)), this, SLOT(makeObsoleteSourcePanel()));

View File

@@ -6,8 +6,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>1182</width>
<height>821</height>
<width>1183</width>
<height>834</height>
</rect>
</property>
<property name="windowTitle">
@@ -41,8 +41,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>153</width>
<height>127</height>
<width>154</width>
<height>136</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout" columnstretch="0,1">
@@ -197,7 +197,7 @@
<x>0</x>
<y>0</y>
<width>152</width>
<height>127</height>
<height>136</height>
</rect>
</property>
<layout class="QGridLayout" name="gridLayout_2" columnstretch="0,1">
@@ -339,8 +339,8 @@
<rect>
<x>0</x>
<y>0</y>
<width>1182</width>
<height>25</height>
<width>1183</width>
<height>22</height>
</rect>
</property>
<widget class="QMenu" name="menuFile">
@@ -955,7 +955,7 @@
<double>0.100000000000000</double>
</property>
<property name="value">
<double>0.900000000000000</double>
<double>0.600000000000000</double>
</property>
</widget>
</item>
@@ -1014,7 +1014,7 @@
<item row="0" column="0">
<widget class="QComboBox" name="comboBox_featureType">
<property name="currentIndex">
<number>4</number>
<number>0</number>
</property>
<item>
<property name="text">