[Documentation] [TitleIndex] [WordIndex

Many of the tf tutorials are available for both C++ and Python. The tutorials are streamlined to complete either the C++ track or the Python track. If you want to learn both C++ and Python, you should run through the tutorials once for C++ and once for Python. Note that the general concept itself is explained directly on tf package.

tf is deprecated in favor of tf2. tf2 provides a superset of the functionality of tf and is actually now the implementation under the hood. If you're just learning now it's strongly recommended to use the tf2/Tutorials instead.

Workspace Setup

If you have not yet created a workspace in which to complete the tutorials, click here for some brief instructions .

Learning tf

C++

Python

  1. Writing a tf broadcaster (C++)

    This tutorial teaches you how to broadcast coordinate frames of a robot to tf.

  2. Writing a tf listener (C++)

    This tutorial teaches you how to use tf to get access to frame transformations.

  3. Adding a frame (C++)

    This tutorial teaches you how to add an extra fixed frame to tf.

  4. Learning about tf and time (C++)

    This tutorial teaches you to use the waitForTransform function to wait for a transform to be available on the tf tree.

  5. Time travel with tf (C++)

    This tutorial teaches you about advanced time travel features of tf

  1. Writing a tf broadcaster (Python)

    This tutorial teaches you how to broadcast the state of a robot to tf.

  2. Writing a tf listener (Python)

    This tutorial teaches you how to use tf to get access to frame transformations.

  3. Adding a frame (Python)

    This tutorial teaches you how to add an extra fixed frame to tf.

  4. Learning about tf and time (Python)

    This tutorial teaches you to use the waitForTransform function to wait for a transform to be available on the tf tree.

  5. Time travel with tf (Python)

    This tutorial teaches you about advanced time travel features of tf

Now that you have completed these tutorials please take the time to complete this short questionnaire.

Debugging tf

  1. Debugging tf problems

Using sensor messages with tf

  1. Using Stamped datatypes with tf::MessageFilter

    This tutorial describes how to use tf::MessageFIlter to process Stamped datatypes.

Setting up your robot with tf

  1. Setting up your robot using tf

    This tutorial provides a guide to set up your robot to start using tf.

  2. Using the robot state publisher on your own robot

    This tutorial explains how you can publish the state of your robot to tf, using the robot state publisher.

  3. Using urdf with robot_state_publisher

    This tutorial gives a full example of a robot model with URDF that uses robot_state_publisher. First, we create the URDF model with all the necessary parts. Then we write a node which publishes the JointState and transforms. Finally, we run all the parts together.

Create a new tutorial:

Video Demonstration

Watch the video below to have more explanation on transforms.

PR2 Beta Workshop


2025-04-19 17:22