GraphView: added user link on inter/intra loop closure color scheme option

This commit is contained in:
matlabbe
2022-10-24 17:45:16 -07:00
parent df888962f4
commit 8e30c1c812

View File

@@ -623,9 +623,16 @@ void GraphViewer::updateGraph(const std::map<int, Transform> & poses,
linkItem->setColor(_neighborMergedColor); linkItem->setColor(_neighborMergedColor);
} }
else if(iter->second.type() == Link::kUserClosure) else if(iter->second.type() == Link::kUserClosure)
{
if(_intraInterSessionColors)
{
linkItem->setColor(interSessionClosure?_loopInterSessionColor:_loopIntraSessionColor);
}
else
{ {
linkItem->setColor(_loopClosureUserColor); linkItem->setColor(_loopClosureUserColor);
} }
}
else if(iter->second.type() == Link::kLandmark) else if(iter->second.type() == Link::kLandmark)
{ {
linkItem->setColor(_landmarkColor); linkItem->setColor(_landmarkColor);
@@ -1587,7 +1594,8 @@ void GraphViewer::setIntraSessionLoopColor(const QColor & color)
{ {
if((iter.value()->linkType() == Link::kGlobalClosure || if((iter.value()->linkType() == Link::kGlobalClosure ||
iter.value()->linkType() == Link::kLocalSpaceClosure || iter.value()->linkType() == Link::kLocalSpaceClosure ||
iter.value()->linkType() == Link::kLocalTimeClosure) && iter.value()->linkType() == Link::kLocalTimeClosure ||
iter.value()->linkType() == Link::kUserClosure) &&
!iter.value()->isInterSession()) !iter.value()->isInterSession())
{ {
iter.value()->setColor(_loopIntraSessionColor); iter.value()->setColor(_loopIntraSessionColor);
@@ -1605,7 +1613,8 @@ void GraphViewer::setInterSessionLoopColor(const QColor & color)
{ {
if((iter.value()->linkType() == Link::kGlobalClosure || if((iter.value()->linkType() == Link::kGlobalClosure ||
iter.value()->linkType() == Link::kLocalSpaceClosure || iter.value()->linkType() == Link::kLocalSpaceClosure ||
iter.value()->linkType() == Link::kLocalTimeClosure) && iter.value()->linkType() == Link::kLocalTimeClosure ||
iter.value()->linkType() == Link::kUserClosure) &&
iter.value()->isInterSession()) iter.value()->isInterSession())
{ {
iter.value()->setColor(_loopInterSessionColor); iter.value()->setColor(_loopInterSessionColor);
@@ -1627,6 +1636,7 @@ void GraphViewer::setIntraInterSessionColorsEnabled(bool enabled)
{ {
this->setGlobalLoopClosureColor(_loopClosureColor); this->setGlobalLoopClosureColor(_loopClosureColor);
this->setLocalLoopClosureColor(_loopClosureLocalColor); this->setLocalLoopClosureColor(_loopClosureLocalColor);
this->setUserLoopClosureColor(_loopClosureUserColor);
} }
} }