# Which data types does tf use?

I want to know what datatypes tf can work with natively.

Which data types does tf use?

I want to know what datatypes tf can work with natively.

add a comment

13

From the tf wiki page on tf/data types

tf can be used either with the underlying Bullet transform types or with the transform types available in the geometry_msgs package. Since tf deals with coordinate frames, every datatype that tf uses needs to be stamped, i.e. extra information is added to the datatype to represent the name of the frame in which it lives and a timestamp. The timestamp typically represents the time at which the data was created/ last valid.

tf can directly operate on the following messages or Bullet datatypes:

- Pose - tf can transform poses by using the tf::transformPose function. The transformPose function can operate on:
- geometry_msgs/PoseStamped - A stamped representation of a pose expressed in a particular frame
`tf::Stamped<tf::Pose>`

- A templated stamped representation of the underlying Bullet datatype btTransform.

- Position - tf can transform positions (or points) using the tf::transformPoint function. The transformPoint function can operate on:
- geometry_msgs/PointStamped - Represents a stamped point in 3D.
`tf::Stamped<tf::Point>`

- A stamped version of the underlying Bullet datatype btVector3.

- Rotation - tf can transform a rotation using the tf::transformQuaternion function. The transformQuaternion function can operate on:
- geometry_msgs/QuaternionStamped - A stamped representation of a quaternion.
`tf::Stamped<tf::Quaternion>`

- A stamped version of the underlying Bullet datatype btQuaternion.

Vector - tf can transform a free vector using the tf::transformVector function. The tranformVector function can operate on:

- geometry_msgs/VectorStamped - A stamped representation of a free vector.
`tf::Stamped<tf::Vector3>`

- A stamped version of the underlying Bullet datatype btVector.

PointCloud - tf can transform point clouds directly using the tf::transformPointCloud function. This function operates on:

- sensor_msgs/PointCloud - A representation of a 3D point cloud.

Please start posting anonymously - your entry will be published after you log in or create a new account.

Asked: ** 2011-02-14 10:59:45 -0500 **

Seen: **1,244 times**

Last updated: **Feb 14 '11**

What is the tf threading model?

rosbag play & tf static_transform_publisher

p3dx urdf model isn't shown correctly in rviz

robot_localization does not produce odom->base_link transform

robot_localization ukf not publishing map->odom

What is tf/static_transform_publisher equivalent in tf2?

ROS Answers is licensed under Creative Commons Attribution 3.0 Content on this site is licensed under a Creative Commons Attribution Share Alike 3.0 license.