mirror of
https://github.com/introlab/rtabmap.git
synced 2026-09-03 10:00:23 +08:00
Memory::getNodeData() removing not wanted data if the node with all its data has been found in working memory.
This commit is contained in:
@@ -690,6 +690,22 @@ void DBDriver::getNodeData(
|
||||
(!occupancyGrid || s->sensorData().gridCellSize() != 0.0f))))
|
||||
{
|
||||
data = (SensorData)s->sensorData();
|
||||
if(!images)
|
||||
{
|
||||
data.setRGBDImage(cv::Mat(), cv::Mat(), std::vector<CameraModel>());
|
||||
}
|
||||
if(!scan)
|
||||
{
|
||||
data.setLaserScan(LaserScan());
|
||||
}
|
||||
if(!userData)
|
||||
{
|
||||
data.setUserData(cv::Mat());
|
||||
}
|
||||
if(!occupancyGrid)
|
||||
{
|
||||
data.setOccupancyGrid(cv::Mat(), cv::Mat(), cv::Mat(), 0, cv::Point3f());
|
||||
}
|
||||
found = true;
|
||||
}
|
||||
}
|
||||
|
||||
@@ -3847,6 +3847,22 @@ SensorData Memory::getNodeData(int locationId, bool images, bool scan, bool user
|
||||
(!occupancyGrid || s->sensorData().gridCellSize() != 0.0f))))
|
||||
{
|
||||
r = s->sensorData();
|
||||
if(!images)
|
||||
{
|
||||
r.setRGBDImage(cv::Mat(), cv::Mat(), std::vector<CameraModel>());
|
||||
}
|
||||
if(!scan)
|
||||
{
|
||||
r.setLaserScan(LaserScan());
|
||||
}
|
||||
if(!userData)
|
||||
{
|
||||
r.setUserData(cv::Mat());
|
||||
}
|
||||
if(!occupancyGrid)
|
||||
{
|
||||
r.setOccupancyGrid(cv::Mat(), cv::Mat(), cv::Mat(), 0, cv::Point3f());
|
||||
}
|
||||
}
|
||||
else if(_dbDriver)
|
||||
{
|
||||
|
||||
Reference in New Issue
Block a user