mirror of
https://github.com/introlab/rtabmap_ros.git
synced 2026-10-04 16:57:46 +08:00
read-only support (#1397)
This commit is contained in:
@@ -7,7 +7,7 @@ find_package(catkin REQUIRED COMPONENTS
|
|||||||
image_geometry rtabmap_msgs
|
image_geometry rtabmap_msgs
|
||||||
)
|
)
|
||||||
|
|
||||||
find_package(RTABMap 0.21.13 REQUIRED)
|
find_package(RTABMap 0.23.4 REQUIRED)
|
||||||
|
|
||||||
catkin_package(
|
catkin_package(
|
||||||
INCLUDE_DIRS include
|
INCLUDE_DIRS include
|
||||||
|
|||||||
@@ -888,15 +888,24 @@ CoreWrapper::~CoreWrapper()
|
|||||||
this->saveParameters(configPath_);
|
this->saveParameters(configPath_);
|
||||||
|
|
||||||
printf("rtabmap: Saving database/long-term memory... (located at %s)\n", databasePath_.c_str());
|
printf("rtabmap: Saving database/long-term memory... (located at %s)\n", databasePath_.c_str());
|
||||||
|
bool saveDatabase = true;
|
||||||
if(rtabmap_.getMemory())
|
if(rtabmap_.getMemory())
|
||||||
{
|
{
|
||||||
// save the grid map
|
if(!rtabmap_.getMemory()->isReadOnly())
|
||||||
float xMin=0.0f, yMin=0.0f, gridCellSize = 0.05f;
|
|
||||||
cv::Mat pixels = mapsManager_.getGridMap(xMin, yMin, gridCellSize);
|
|
||||||
if(!pixels.empty())
|
|
||||||
{
|
{
|
||||||
printf("rtabmap: 2D occupancy grid map saved.\n");
|
// save the grid map
|
||||||
rtabmap_.getMemory()->save2DMap(pixels, xMin, yMin, gridCellSize);
|
float xMin=0.0f, yMin=0.0f, gridCellSize = 0.05f;
|
||||||
|
cv::Mat pixels = mapsManager_.getGridMap(xMin, yMin, gridCellSize);
|
||||||
|
if(!pixels.empty())
|
||||||
|
{
|
||||||
|
printf("rtabmap: 2D occupancy grid map saved.\n");
|
||||||
|
rtabmap_.getMemory()->save2DMap(pixels, xMin, yMin, gridCellSize);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
printf("rtabmap: Database is read-only, the current state of the memory is not saved.\n");
|
||||||
|
saveDatabase = false;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user