#!/usr/bin/env python import rospy from tf import TransformListener import time rospy.init_node('tf_tester', anonymous=True) time.sleep(1) tf_listener = TransformListener() while True: frames = tf_listener.allFramesAsString() if frames: #1/0 pass if tf_listener.frameExists( "base_link"): #and tf_listener.frameExists("map"): t = tf_listener.getLatestCommonTime("odom", "map") position, quaternion = tf_listener.lookupTransform("odom", "map", t) print "odom->map", position, quaternion t = tf_listener.getLatestCommonTime("base_link", "odom") position, quaternion = tf_listener.lookupTransform( "base_link", "odom", t) print "base_link->odom", position, quaternion position, quaternion = tf_listener.lookupTransform( "base_link", "map", rospy.Time.now()) # Problems with time in the past print "base_link->map", position, quaternion break # time.sleep(1)