mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-01 17:10:26 +08:00
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:
@@ -17,7 +17,7 @@ class OdometryEvent : public UEvent
|
||||
{
|
||||
public:
|
||||
OdometryEvent(
|
||||
const Image & data, int quality = 0) :
|
||||
const Image & data, int quality = -1) :
|
||||
_data(data),
|
||||
_quality(quality) {}
|
||||
virtual ~OdometryEvent() {}
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
if(quality >= 0)
|
||||
{
|
||||
_ui->statsToolBox->updateStat("/Odom inliers/", (float)data.id(), (float)quality);
|
||||
}
|
||||
if(!pose.isNull())
|
||||
{
|
||||
_lastOdomPose = pose;
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user