When a new scan matched point cloud is published, its timestamp is used for
publishing corresponding transforms. Further transforms are stamped with
::ros::Time::now().
If configured to publish odom, the two published transforms are combined into
one tf message.
Also use reflectivity in the 'PointsBatch'es created in 'WriteAssets'.
In the online case, we throw away reflectivities during SLAMing to save
on memory, so there will be none.
- Move sources from <project>/src into project/project and fix includes.
- Add autogenerated CMakeFiles for ROS projects. The python script is
not yet fully updated to be used for keeping the files updated without
manual intervention though.
- Build everything with -fPIC, so we can create shared libraries.
* Pulls out TfBridge.
* SensorBridge has its own options.
* SensorBridge is now responsible for transforming the sensor data into the tracking frame.
* Constant odometry covariance is no longer optional.
We disable backface culling so that submaps also show when looked at from
below.
We add a depth bias to move submaps further to the back, so that submaps
do not overdraw the visualization of laser scans which makes the latter
sometimes hard to see.
Before, republishing the point clouds at high frequency caused unnecessary
computational load.
This also fixes an issue seen in RViz:
After replaying a bag, point clouds with the same timestamp were continued to
be published. These were never dropped by the PointCloud2 display leading to
excessive memory consumption and bad visualization performance.
When receiving a FinishTrajectory call, the Cartographer nodes catches up on
computing loop closures, runs a final optimization, and when in 2D writes out
a PGM map similar to map_saver.
The publish_occupancy_grid option is removed, and the publisher always
created in 2D. Only when subscribed to, we start computing OccupancyGrids.
Adds documentation for published topics where this is now documented.