Closed Hugal31 closed 3 years ago
Duplicate of #111 and #108
Echo is designed for debugging the publishing of transforms. lookupTransform is for transforming data. The transform from Frame A to B is the inverse of the transform to move data from A to B.
This issue has been mentioned on ROS Discourse. There might be relevant details there:
https://discourse.ros.org/t/nomenclature-of-tf-echo-and-tf-listener/36985/7
Same as with the equivalent issue on tf2:
tf_echo takes two arguments, in order source and target, which gives the transformation from source to target, while the tf and tf2 API always gives the transformation from target to source (to transform coordinates in source frame to coordinates in target frame).
Indeed, it calls
TransformListnener::lookupTransform
with the wrong argument names: it calls with source_frame, then the target_frame, whereas the function takes target_frame first.I suggest to rename the two arguments so the API remains compatible.