OdometryEvent: set quality to -1 when not set.

git-svn-id: http://rtabmap.googlecode.com/svn/trunk/rtabmap@1611 f169173b-cf89-36c8-b27e-44dbe73f0c83
This commit is contained in:
matlabbe
2014-07-24 17:27:43 +00:00
parent 38f967e10f
commit 18f84febc1
3 changed files with 10 additions and 6 deletions

View File

@@ -550,7 +550,7 @@ void MainWindow::processOdometry(const rtabmap::Image & data, int quality)
pose = _lastOdomPose;
}
else if(quality &&
else if(quality>=0 &&
_preferencesDialog->getOdomQualityWarnThr() &&
quality < _preferencesDialog->getOdomQualityWarnThr())
{
@@ -562,7 +562,10 @@ void MainWindow::processOdometry(const rtabmap::Image & data, int quality)
UDEBUG("odom ok");
_ui->widget_cloudViewer->setBackgroundColor(Qt::black);
}
_ui->statsToolBox->updateStat("/Odom inliers/", (float)data.id(), (float)quality);
if(quality >= 0)
{
_ui->statsToolBox->updateStat("/Odom inliers/", (float)data.id(), (float)quality);
}
if(!pose.isNull())
{
_lastOdomPose = pose;

View File

@@ -23,6 +23,7 @@ namespace rtabmap {
OdometryViewer::OdometryViewer(int maxClouds, int decimation, float voxelSize, int qualityWarningThr, QWidget * parent) :
CloudViewer(parent),
dataQuality_(-1),
lastOdomPose_(Transform::getIdentity()),
maxClouds_(maxClouds),
voxelSize_(voxelSize),
@@ -50,14 +51,14 @@ OdometryViewer::OdometryViewer(int maxClouds, int decimation, float voxelSize, i
void OdometryViewer::processData()
{
rtabmap::Image data;
int quality = 0;
int quality = -1;
dataMutex_.lock();
if(data_.size())
{
data = data_.back();
data_.clear();
quality = dataQuality_;
dataQuality_ = 0;
dataQuality_ = -1;
}
dataMutex_.unlock();
@@ -109,7 +110,7 @@ void OdometryViewer::processData()
this->updateCameraPosition(data.pose());
if(qualityWarningThr_ && quality && quality < qualityWarningThr_)
if(qualityWarningThr_ && quality>=0 && quality < qualityWarningThr_)
{
this->setBackgroundColor(Qt::darkYellow);
}