Moves the Octomap grid with the frame defined in the header on every frame update.
This makes it possible to attach an Octomap to a moving frame (e.g. items on a conveyor belt).
This PR adds:
The header of the last Octomap message is stored (header_).
bool updateFromTF() updates the node frame using latest TF frame specified in the stored header.
updateFromTF() gets called inside update(float wall_dt, float ros_dt) (e.g. every time the Octomap gets rendered).
The additional node frame update does not seem to have any performance impact on rendering speed. Unless there is another reason not to do so, updating the frames regardless of the Octomap being static or moving can be default behaviour.
For compatibility, this commit cherrypicks cleanly on all versions of the plugin except for fuerte (tested on kinetic and indigo).
This PR is related to #12 but it doesn't solve the issue.
Moves the Octomap grid with the frame defined in the header on every frame update. This makes it possible to attach an Octomap to a moving frame (e.g. items on a conveyor belt). This PR adds:
header_
).bool updateFromTF()
updates the node frame using latest TF frame specified in the stored header.updateFromTF()
gets called insideupdate(float wall_dt, float ros_dt)
(e.g. every time the Octomap gets rendered).The additional node frame update does not seem to have any performance impact on rendering speed. Unless there is another reason not to do so, updating the frames regardless of the Octomap being static or moving can be default behaviour.
For compatibility, this commit cherrypicks cleanly on all versions of the plugin except for fuerte (tested on kinetic and indigo).
This PR is related to #12 but it doesn't solve the issue.