A static transform publisher publishes a transform from parent frame_id to child child_frame_id. Therefore, I think the transform name convention of "parent_to_child" gives the clear meaning of what is being published. A third user may just assume that the meaningful variable name A_to_B represents the transform from frame A to frame B.
However, during static review, I observed that static transforms in the following launch files use a reversed transform name convention of "child_to_parent":
map_to_odom at line 4 in dead_reckoning.launch publishes a transform from odom to map.
laser_to_base at line 6 in bringup_minimal.launch publishes a transform from base_link to base_laser_link.
The above names do not reflect the actual transforms being published. The names odom_to_map and base_to_laser would be more appropriate.
Would really appreciate if you could please describe your perspective behind using this "child_to_parent" naming convention, and your views on its effects on code reuse in future.
A static transform publisher publishes a transform from parent
frame_id
to childchild_frame_id
. Therefore, I think the transform name convention of "parent_to_child" gives the clear meaning of what is being published. A third user may just assume that the meaningful variable name A_to_B represents the transform from frame A to frame B.However, during static review, I observed that static transforms in the following launch files use a reversed transform name convention of "child_to_parent":
map_to_odom
at line 4 in dead_reckoning.launch publishes a transform fromodom
tomap
.laser_to_base
at line 6 in bringup_minimal.launch publishes a transform frombase_link
tobase_laser_link
.The above names do not reflect the actual transforms being published. The names
odom_to_map
andbase_to_laser
would be more appropriate.Would really appreciate if you could please describe your perspective behind using this "child_to_parent" naming convention, and your views on its effects on code reuse in future.
Thank you!