gui: fixed odom local map hiding on rtabmap update

This commit is contained in:
matlabbe
2019-01-09 13:50:12 -05:00
parent 2a8e5be361
commit d63f9e736e
2 changed files with 7 additions and 11 deletions

View File

@@ -2538,6 +2538,7 @@ void CloudViewer::setBackgroundColor(const QColor & color)
void CloudViewer::setCloudVisibility(const std::string & id, bool isVisible) void CloudViewer::setCloudVisibility(const std::string & id, bool isVisible)
{ {
UWARN("isVisible=%d cloud=%s", isVisible?1:0, id.c_str());
pcl::visualization::CloudActorMapPtr cloudActorMap = _visualizer->getCloudActorMap(); pcl::visualization::CloudActorMapPtr cloudActorMap = _visualizer->getCloudActorMap();
pcl::visualization::CloudActorMap::iterator iter = cloudActorMap->find(id); pcl::visualization::CloudActorMap::iterator iter = cloudActorMap->find(id);
if(iter != cloudActorMap->end()) if(iter != cloudActorMap->end())

View File

@@ -2388,18 +2388,13 @@ void MainWindow::updateMapCloud(
if(splitted.size() == 2) if(splitted.size() == 2)
{ {
id = std::atoi(splitted.back().c_str()); id = std::atoi(splitted.back().c_str());
if(splitted.front().at(splitted.front().size()-1) == '-') if(poses.find(id) == poses.end())
{ {
id*=-1; if(_cloudViewer->getCloudVisibility(iter.key()))
} {
} UDEBUG("Hide %s", iter.key().c_str());
_cloudViewer->setCloudVisibility(iter.key(), false);
if(poses.find(id) == poses.end()) }
{
if(_cloudViewer->getCloudVisibility(iter.key()))
{
UDEBUG("Hide %s", iter.key().c_str());
_cloudViewer->setCloudVisibility(iter.key(), false);
} }
} }
} }