Skip to content

Commit

Permalink
DatabaseViewer: fixed "Graph not created" error when clicking on expo…
Browse files Browse the repository at this point in the history
…rt map/graph actions
  • Loading branch information
matlabbe committed Nov 27, 2015
1 parent 69a0412 commit 2945abd
Showing 1 changed file with 45 additions and 6 deletions.
51 changes: 45 additions & 6 deletions guilib/src/DatabaseViewer.cpp
Expand Up @@ -1262,7 +1262,10 @@ void DatabaseViewer::updateIds()
if(ids_.size())
{
updateLoopClosuresSlider();
updateGraphView();
if(ui_->graphViewer->isVisible())
{
updateGraphView();
}
}
}

Expand Down Expand Up @@ -1369,6 +1372,16 @@ void DatabaseViewer::generateLocalGraph()

void DatabaseViewer::generateTOROGraph()
{
if(graphes_.empty())
{
this->updateGraphView();
if(graphes_.empty() || ui_->horizontalSlider_iterations->maximum() != (int)graphes_.size()-1)
{
QMessageBox::warning(this, tr("Cannot generate a graph"), tr("No graph in database?!"));
return;
}
}

if(!graphes_.size() || !graphLinks_.size())
{
QMessageBox::warning(this, tr("Cannot generate a TORO graph"), tr("No poses or no links..."));
Expand Down Expand Up @@ -1401,6 +1414,16 @@ void DatabaseViewer::generateTOROGraph()

void DatabaseViewer::generateG2OGraph()
{
if(graphes_.empty())
{
this->updateGraphView();
if(graphes_.empty() || ui_->horizontalSlider_iterations->maximum() != (int)graphes_.size()-1)
{
QMessageBox::warning(this, tr("Cannot generate a graph"), tr("No graph in database?!"));
return;
}
}

if(!graphes_.size() || !graphLinks_.size())
{
QMessageBox::warning(this, tr("Cannot generate a g2o graph"), tr("No poses or no links..."));
Expand Down Expand Up @@ -1548,6 +1571,17 @@ void DatabaseViewer::generate3DMap()
QMessageBox::warning(this, tr("Cannot generate a graph"), tr("The database is empty..."));
return;
}

if(graphes_.empty())
{
this->updateGraphView();
if(graphes_.empty() || ui_->horizontalSlider_iterations->maximum() != (int)graphes_.size()-1)
{
QMessageBox::warning(this, tr("Cannot generate a graph"), tr("No graph in database?!"));
return;
}
}

bool ok = false;
QStringList items;
items.append("1");
Expand Down Expand Up @@ -1622,6 +1656,16 @@ void DatabaseViewer::generate3DMap()

void DatabaseViewer::detectMoreLoopClosures()
{
if(graphes_.empty())
{
this->updateGraphView();
if(graphes_.empty() || ui_->horizontalSlider_iterations->maximum() != (int)graphes_.size()-1)
{
QMessageBox::warning(this, tr("Cannot generate a graph"), tr("No graph in database?!"));
return;
}
}

const std::map<int, Transform> & optimizedPoses = graphes_.back();

int iterations = ui_->spinBox_detectMore_iterations->value();
Expand Down Expand Up @@ -3039,11 +3083,6 @@ void DatabaseViewer::sliderIterationsValueChanged(int value)
}
void DatabaseViewer::updateGraphView()
{
if(!ui_->graphViewer->isVisible())
{
return;
}

ui_->label_loopClosures->clear();
ui_->label_poses->clear();
if(poses_.size())
Expand Down

0 comments on commit 2945abd

Please sign in to comment.