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

@@ -166,7 +166,8 @@ IF((APPLE AND BUILD_AS_BUNDLE) OR WIN32)
# over. # over.
# To find dependencies, cmake use "otool" on Apple and "dumpbin" on Windows (make sure you have one of them). # To find dependencies, cmake use "otool" on Apple and "dumpbin" on Windows (make sure you have one of them).
install(CODE " install(CODE "
file(GLOB_RECURSE QTPLUGINS \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${plugin_dest_dir}/plugins/*${CMAKE_SHARED_LIBRARY_SUFFIX}\") file(GLOB_RECURSE QTPLUGINS \"\$ENV{DESTDIR}\${CMAKE_INSTALL_PREFIX}/${plugin_dest_dir}/plugins/*${CMAKE_SHARED_LIBRARY_SUFFIX}\")
set(BU_CHMOD_BUNDLE_ITEMS ON)
include(\"BundleUtilities\") include(\"BundleUtilities\")
fixup_bundle(\"${APPS}\" \"\${QTPLUGINS}\" \"${DIRS}\") fixup_bundle(\"${APPS}\" \"\${QTPLUGINS}\" \"${DIRS}\")
" COMPONENT runtime) " COMPONENT runtime)

View File

@@ -30,10 +30,12 @@ ENDIF()
IF(APPLE) IF(APPLE)
FIND_LIBRARY(CoreWLAN_LIBRARY CoreWLAN) FIND_LIBRARY(CoreWLAN_LIBRARY CoreWLAN)
MARK_AS_ADVANCED(CoreWLAN_LIBRARY) FIND_LIBRARY(Foundation_LIBRARY Foundation)
MARK_AS_ADVANCED(CoreWLAN_LIBRARY Foundation_LIBRARY)
SET(LIBRARIES SET(LIBRARIES
${LIBRARIES} ${LIBRARIES}
${CoreWLAN_LIBRARY} ${CoreWLAN_LIBRARY}
${Foundation_LIBRARY}
) )
SET(srcs SET(srcs
${srcs} ${srcs}

View File

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

View File

@@ -2256,7 +2256,8 @@ void MainWindow::drawKeypoints(const std::multimap<int, cv::KeyPoint> & refWords
void MainWindow::showEvent(QShowEvent* anEvent) 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) void MainWindow::moveEvent(QMoveEvent* anEvent)

View File

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

View File

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