Fixed bag_to_pcd processing of static transforms #375
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
bag_to_pcd usage of TF interface was obsolete, so it needed a ROS master running and filled TF buffer by publishing transforms via a
tf::TransformPublisher
. More importantly, it did not correctly handle static TFs, which resulted in inability to resolve static frames.This PR rewrites the code to use
tf2_ros::Buffer
which does not require a running ROS master and it also adds correct handling of static frames (as long as they are found on topics ending with_static
).I only did not understand why
rosbag info
reports for my bags that/tf
topic is of typetf2_msgs/TFMessage
, while the code branch taken is the one fortf::tfMessage
. Maybe it's some kind of automatic conversion from TF1 to TF2 that takes place here.