Updated computePath(pose) to avoid links pointing to nodes not in WM

This commit is contained in:
matlabbe
2015-09-15 18:17:38 -04:00
parent 16d998f3b0
commit d7e6a2c0e8
2 changed files with 20 additions and 10 deletions
+6 -2
View File
@@ -3249,8 +3249,12 @@ bool Rtabmap::computePath(const Transform & targetPose)
UASSERT(s);
for(std::map<int, Link>::const_iterator jter=s->getLinks().begin(); jter!=s->getLinks().end(); ++jter)
{
links.insert(std::make_pair(jter->second.from(), jter->second.to()));
links.insert(std::make_pair(jter->second.to(), jter->second.from())); // <->
// only add links for which poses are in "nodes"
if(uContains(nodes, jter->second.to()))
{
links.insert(std::make_pair(jter->second.from(), jter->second.to()));
//links.insert(std::make_pair(jter->second.to(), jter->second.from())); // <-> (commented: already added when iterating in nodes)
}
}
}
UINFO("Time getting links = %fs", timer.ticks());