-

Package Summary

Tags No category tags.
Version 1.13.2
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version noetic-devel
Last Updated 2023-08-17
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.13.2 (2020-06-08)

  • fix shebang line for python3 (#212)
  • Contributors: Mikael Arguedas

1.13.1 (2020-05-15)

1.13.0 (2020-03-10)

1.12.1 (2020-03-10)

  • Use process_time() for Python 3.8 compatibility (#205)
  • Bump CMake version to avoid CMP0048 warning (#204)
  • Add rostest include dirs (#195)
  • Remove trailing semicolons from tf sources (#187) * [tf] Removed trailing semicolons after functions from all sources Used the -Wpedantic compiler flag to find all occurrences

  • Allow to choose output precision in tf_echo (#186)
    • Allow to choose output precision in tf_echo
  • update how c++11 requirement is added (#184)
  • update install destination in CMakeLists.txt (#183)
    • export binary to right locations
    • specify archive and runtime destinations, update whitespace (#5)
  • add visibility macro
  • windows bring up, use ROS_DEPRECATED
  • Remove [signals]{.title-ref} from find_package(Boost COMPONENTS ...)
  • fixing error of casting away constness in method void tfSwapScalarEndian(const tfScalar& sourceVal, tfScalar& destVal) in line 626 of Vector3.h (#179)
  • Fix log output typo: message_notifier -> message_filter (#177) Almost all the log outputs use message_filter, except one. The warning text still referred to message_notifier. This commit fixes that.
  • Contributors: C-NR, James Xu, Maarten de Vries, Martin Günther, Shane Loretz, Victor Lamoine, Yoshua Nava

1.12.0 (2018-05-02)

  • Adapt to new xmlrpcpp header location (#164)
  • Maintain & expose tf2 Buffer in shared_ptr for tf (#163) - Adds a tf2_ros::Buffer via a public accessor method to expose to customers of Transformer - Maintains the tf2_ros::Buffer in a shared_ptr to safely share access to the Buffer object - As this is targeting Melodic, adds c++11 compile flags to grant access to std::shared_ptr's - Reorders the include_directories in the CMakeLists to ensure the headers exposed in this package are read before the system installed catkin_INCLUDE_DIRS (otherwise changes to tf source headers are never detected during a catkin_make on a system with ros-*-geometry installed)

  • Prevent rates that result in core dump (0.0) or no limit on update rate at all (<0.0) #159 (#160)
  • Fix empty yaml parsing (#153) Fixes #152 The empty yaml was coming through as a list not a dict so was breaking the expectations. I used the shorthand [or {}]{.title-ref} since I know any valid data won't evaluate to zero. A more complete solution is described here: https://stackoverflow.com/a/35777649/604099
  • Make python scripts Python3 compatible. (#151)
    • Python 3 fixes
    • Prefer str.format over operator % and small python3 fixes.
  • Contributors: Ian McMahon, Lucas Walter, Maarten de Vries, Tully Foote

1.11.9 (2017-07-14)

  • Replace legacy python code with appropriate calls to tf2_ros (#149) (#134)
  • Replace deprecated Eigen module with Eigen3
  • Update minimum version for run dependency on tf2_ros
  • Add support for static_transforms in tf_monitor. Fixes #136 with #134 for tf_echo and view_frames.
  • Pass through allFramesAsDot time argument optionally.
  • remove vestigial includes. Fixes #146 (#147)
  • Commented code caused error in documentation (#142)
  • [doc] Add migration notice in manifest. (#129)
  • Fix "stdlib.h: No such file or directory" errors in GCC-6
  • Fix error for null conversion.
  • Change version regex for graphviz in view_frames
  • fix for issue in getAngleShortestPath(), closes #102
  • Contributors: AndyZe, Edward Venator, Hodorgasm, Isaac I.Y. Saito, Michael Korn, Mike Purvis, Tom Moore, Tully Foote, Timo Röhling

1.11.8 (2016-03-04)

1.11.7 (2015-04-21)

  • add a unit test for pytf wait_for_transform
  • removed msg serv installation from cmakelists
  • generated autodoc
  • Fixed Vector3 documentation
  • display RPY in both radian and degree
  • Fixed command line arguments
  • using TimeStamp and FrameId in message filter this allows to use tf::MessageFilter with pcl::PointCloud<T> see #55
  • Added and optional third argument to specify publishing frequency
  • Contributors: Adnan Munawar, Brice Rebsamen, Jackie Kay, Tully Foote, Ying Lu

1.11.6 (2015-03-25)

  • reenable python tests
  • Broadcaster: Rospy fix #84. Add sendTransformMessage.
  • Contributors: Tully Foote, lsouchet

1.11.5 (2015-03-17)

  • Strip leading slash get parent #79
  • Make frameExists strip leading slash going into tf2.#63
  • Update broadcaster.py, Added ability to use TransformStamped
  • update view_frames to use AllFramesAsDot(rospy.time.now()) #77
  • Contributors: David Lu!!, Gaël Ecorchard, Kei Okada, Tully Foote

1.11.4 (2014-12-23)

  • Install static lib and remove test for Android
  • Larger default queue size in broadcaster With queue_size=1 when two transforms are sent in quick succession, the second is often lost. The C++ code uses a default queue_size of 100, so switch to that default here as well. If that is not appropriate, a queue_size constructor argument is provided.
  • Update package.xml
  • add rate parameter to tf_echo
  • Added check for normalized quaternion in roswtf plugin
  • Contributors: David Lu!!, Gary Servin, Kevin Hallenbeck, Stephan Wirth, contradict

1.11.3 (2014-05-07)

1.11.2 (2014-02-25)

  • fixing test linking
  • Contributors: Tully Foote

1.11.1 (2014-02-23)

1.11.0 (2014-02-14)

  • TF uses ros::MessageEvent to get connection information
  • Contributors: Kevin Watts, Tully Foote

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
apriltag_ros
arbotix_controllers
arbotix_python
aruco_ros
planner_qp
axis_camera
basler_tof
cob_base_controller_utils
cob_cartesian_controller
cob_collision_velocity_filter
cob_footprint_observer
cob_frame_tracker
cob_model_identifier
cob_obstacle_distance
cob_omni_drive_controller
cob_tricycle_controller
cob_twist_controller
cob_scan_unifier
cob_undercarriage_ctrl
cob_collision_monitor
cob_grasp_generation
cob_lookat_action
cob_moveit_bringup
cob_moveit_interface
cob_obstacle_distance_moveit
cob_linear_nav
cob_map_accessibility_analysis
cob_image_flip
cob_gazebo_tools
cob_gazebo_worlds
points_preprocessor
cras_py_common
diagnostic_common_diagnostics
ensenso_camera_test
exotica_core
fetch_open_auto_dock
aruco_detect
fiducial_msgs
fiducial_slam
find_object_2d
frame_editor
franka_control
franka_example_controllers
gazebo_plugins
gazebo_ros
geodesy
geometry
tf_conversions
turtle_tf
graft
grid_map_costmap_2d
grid_map_ros
grid_map_visualization
haf_grasping
hector_gazebo_plugins
hector_pose_estimation
hector_pose_estimation_core
message_to_tf
hector_sensors_description
hector_imu_attitude_to_tf
hector_imu_tools
hector_map_server
hector_mapping
hector_slam_launch
hector_trajectory_server
hfl_driver
ifm3d_ros_examples
imu_processors
imu_transformer
imu_complementary_filter
interactive_marker_twist_server
ira_laser_tools
iris_lama_ros
drone_wrapper
rotors_driver
collada_urdf_jsk_patch
respeaker_ros
respeaker_ros
jsk_footstep_controller
jsk_ik_server
jsk_teleop_joy
euscollada
checkerboard_detector
jsk_pcl_ros
jsk_pcl_ros_utils
jsk_perception
jsk_recognition_utils
roseus
jsk_interactive_marker
khi_duaro_moveit_config
khi_robot_bringup
khi_rs007l_moveit_config
khi_rs007n_moveit_config
khi_rs013n_moveit_config
khi_rs020n_moveit_config
khi_rs025n_moveit_config
khi_rs080n_moveit_config
laser_assembler
map_laser
laser_filters
laser_geometry
lsm_localization
explore_lite
mapviz
mapviz_plugins
multires_image
tile_map
swri_geometry_util
swri_image_util
swri_transform_util
mavros_extras
microstrain_3dmgx2_imu
microstrain_inertial_examples
microstrain_inertial_rqt
mir_driver
mobile_robot_simulator
mocap_nokov
mocap_optitrack
mongodb_log
mbf_abstract_nav
mbf_costmap_core
mbf_costmap_nav
mbf_simple_nav
mbf_utility
moveit_commander
moveit_python
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
sbpl_lattice_planner
nearfield_map
nmea_navsat_driver
nonpersistent_voxel_layer
novatel_gps_driver
octomap_pa
octomap_ros
osm_cartography
ov_msckf
openni2_launch
openzen_sensor
oxford_gps_eth
p2os_driver
p2os_teleop
p2os_urdf
pass_through_controllers
pcdfilter_pa
face_detector
leg_detector
people_tracking_filter
pcl_ros
pf_driver
pr2_position_scripts
pr2_teleop
pr2_teleop_general
pr2_arm_move_ik
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
pr2_navigation_perception
pr2_navigation_self_filter
semantic_point_annotator
pr2_gazebo_plugins
razor_imu_9dof
rc_genicam_driver
rc_pick_client
rc_tagdetect_client
rc_visard_driver
ridgeback_control
ridgeback_gazebo_plugins
robot_calibration
robot_controllers
dwb_local_planner
nav_2d_utils
nav_core_adapter
robot_pose_ekf
robot_self_filter
robot_state_publisher
robotont_gazebo
ackermann_steering_controller
diff_drive_controller
four_wheel_steering_controller
ros_numpy
roscompile
cl_tf
rosserial_client
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_conversions
rtabmap_rviz_plugins
rtabmap_slam
rtabmap_util
rtabmap_viz
laser_ortho_projector
laser_scan_matcher
ncd_parser
polar_scan_matcher
sciurus17_vision
sick_ldmrs_driver
sick_ldmrs_tools
sick_scan
simple_grasping
gmapping
slam_karto
slam_toolbox
backward_global_planner
backward_local_planner
forward_global_planner
forward_local_planner
pure_spinning_local_planner
undo_path_global_planner
move_base_z_client_plugin
move_group_interface_client
sm_dance_bot
sm_dance_bot_2
sm_dance_bot_strikes_back
sm_viewer_sim
stag_ros
stage_ros
steering_functions
tf2_server
tf2_web_republisher
tf_remapper_cpp
trac_ik_python
turtlebot3_fake
turtlebot3_gazebo
tuw_nav_msgs
tuw_multi_robot_ctrl
tuw_multi_robot_router
tuw_voronoi_graph
ubiquity_motor
ublox_gps
ur_robot_driver
urg_node
velo2cam_calibration
velodyne_gazebo_plugin
velodyne_driver
velodyne_gazebo_plugins
visp_tracker
visp_ros
rwt_moveit
rwt_nav
interactive_marker_tutorials
warehouse_ros
webots_ros
wifi_ddwrt
easy_markers
xpp_vis
z_laser_viz
camera_aravis
flexbe_core
sick_scan_xd
clober_simulation
atf_metrics
atf_test_tools
cob_fiducials
flatland_plugins
mitch_v2_driver
muse_v2_driver
quori_holonomic_drive_controller
quori_mapping_odometry
rm_common
rqt_human_radar
serl_franka_controllers

Recent questions tagged tf at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.11.9
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version indigo-devel
Last Updated 2018-07-06
Dev Status MAINTAINED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.11.9 (2017-07-14)

  • Replace legacy python code with appropriate calls to tf2_ros (#149) (#134)
  • Replace deprecated Eigen module with Eigen3
  • Update minimum version for run dependency on tf2_ros
  • Add support for static_transforms in tf_monitor. Fixes #136 with #134 for tf_echo and view_frames.
  • Pass through allFramesAsDot time argument optionally.
  • remove vestigial includes. Fixes #146 (#147)
  • Commented code caused error in documentation (#142)
  • [doc] Add migration notice in manifest. (#129)
  • Fix "stdlib.h: No such file or directory" errors in GCC-6
  • Fix error for null conversion.
  • Change version regex for graphviz in view_frames
  • fix for issue in getAngleShortestPath(), closes #102
  • Contributors: AndyZe, Edward Venator, Hodorgasm, Isaac I.Y. Saito, Michael Korn, Mike Purvis, Tom Moore, Tully Foote, Timo Röhling

1.11.8 (2016-03-04)

1.11.7 (2015-04-21)

  • add a unit test for pytf wait_for_transform
  • removed msg serv installation from cmakelists
  • generated autodoc
  • Fixed Vector3 documentation
  • display RPY in both radian and degree
  • Fixed command line arguments
  • using TimeStamp and FrameId in message filter this allows to use tf::MessageFilter with pcl::PointCloud<T> see #55
  • Added and optional third argument to specify publishing frequency
  • Contributors: Adnan Munawar, Brice Rebsamen, Jackie Kay, Tully Foote, Ying Lu

1.11.6 (2015-03-25)

  • reenable python tests
  • Broadcaster: Rospy fix #84. Add sendTransformMessage.
  • Contributors: Tully Foote, lsouchet

1.11.5 (2015-03-17)

  • Strip leading slash get parent #79
  • Make frameExists strip leading slash going into tf2.#63
  • Update broadcaster.py, Added ability to use TransformStamped
  • update view_frames to use AllFramesAsDot(rospy.time.now()) #77
  • Contributors: David Lu!!, Gaël Ecorchard, Kei Okada, Tully Foote

1.11.4 (2014-12-23)

  • Install static lib and remove test for Android
  • Larger default queue size in broadcaster With queue_size=1 when two transforms are sent in quick succession, the second is often lost. The C++ code uses a default queue_size of 100, so switch to that default here as well. If that is not appropriate, a queue_size constructor argument is provided.
  • Update package.xml
  • add rate parameter to tf_echo
  • Added check for normalized quaternion in roswtf plugin
  • Contributors: David Lu!!, Gary Servin, Kevin Hallenbeck, Stephan Wirth, contradict

1.11.3 (2014-05-07)

1.11.2 (2014-02-25)

  • fixing test linking
  • Contributors: Tully Foote

1.11.1 (2014-02-23)

1.11.0 (2014-02-14)

  • TF uses ros::MessageEvent to get connection information
  • Contributors: Kevin Watts, Tully Foote

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
ar_track_alvar
arbotix_controllers
arbotix_python
axis_camera
basler_tof
diagnostic_common_diagnostics
ensenso_camera_test
find_object_2d
flexbe_core
frame_editor
franka_control
gazebo_plugins
gazebo_ros
generic_control_toolbox
geodesy
geometry
tf_conversions
test_tf2
turtle_tf
grid_map_costmap_2d
grid_map_ros
grid_map_visualization
hector_gazebo_plugins
hector_sensors_description
imu_processors
imu_transformer
imu_complementary_filter
interactive_marker_twist_server
interactive_markers
ira_laser_tools
collada_urdf_jsk_patch
respeaker_ros
euscollada
roseus
laser_assembler
map_laser
laser_filters
laser_geometry
explore_lite
swri_geometry_util
swri_image_util
swri_transform_util
mavros_extras
microstrain_3dmgx2_imu
mir_driver
mbf_abstract_nav
mbf_costmap_core
mbf_costmap_nav
mbf_simple_nav
mbf_utility
moveit_commander
moveit_kinematics
moveit_planners_chomp
moveit_chomp_optimizer_adapter
moveit_planners_ompl
moveit_ros_manipulation
moveit_ros_move_group
moveit_ros_perception
moveit_ros_planning
moveit_ros_planning_interface
moveit_ros_robot_interaction
moveit_ros_visualization
moveit_ros_warehouse
moveit_python
mrpt_ekf_slam_2d
mrpt_ekf_slam_3d
mrpt_graphslam_2d
mrpt_icp_slam_2d
mrpt_rbpf_slam
amcl
base_local_planner
carrot_planner
clear_costmap_recovery
costmap_2d
dwa_local_planner
global_planner
move_base
nav_core
navfn
robot_pose_ekf
rotate_recovery
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
assisted_teleop
pose_base_controller
pose_follower
novatel_gps_driver
novatel_span_driver
octomap_pa
octomap_ros
osm_cartography
openni2_launch
pcdfilter_pa
face_detector
leg_detector
people_tracking_filter
pcl_ros
phidgets_ik
phidgets_imu
pr2_position_scripts
pr2_teleop
pr2_teleop_general
pr2_arm_move_ik
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
pr2_gazebo_plugins
rc_pick_client
rc_tagdetect_client
rc_visard_driver
dwb_local_planner
nav_2d_utils
nav_core2
nav_core_adapter
robot_self_filter
robot_state_publisher
ackermann_steering_controller
diff_drive_controller
four_wheel_steering_controller
roscompile
cl_tf
rosserial_client
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_ros
rviz
sick_ldmrs_driver
sick_ldmrs_tools
sick_scan
gmapping
slam_karto
stage_ros
static_tf
teb_local_planner
tf2_web_republisher
tf_remapper_cpp
trac_ik_python
urg_node
uuv_assistants
uuv_control_cascaded_pid
uuv_thruster_manager
uuv_trajectory_control
uuv_sensor_ros_plugins
uuv_teleop
velo2cam_calibration
velodyne_gazebo_plugin
velodyne_driver
velodyne_gazebo_plugins
visp_tracker
interactive_marker_tutorials
volksbot_driver
warehouse_ros
webots_ros
wifi_ddwrt
easy_markers
xpp_vis
xsens_driver
ca_driver
dynpick_driver
innok_heros_driver
katana
nav_pcontroller
rosaria
rtt_tf

Recent questions tagged tf at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.11.9
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version indigo-devel
Last Updated 2018-07-06
Dev Status MAINTAINED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.11.9 (2017-07-14)

  • Replace legacy python code with appropriate calls to tf2_ros (#149) (#134)
  • Replace deprecated Eigen module with Eigen3
  • Update minimum version for run dependency on tf2_ros
  • Add support for static_transforms in tf_monitor. Fixes #136 with #134 for tf_echo and view_frames.
  • Pass through allFramesAsDot time argument optionally.
  • remove vestigial includes. Fixes #146 (#147)
  • Commented code caused error in documentation (#142)
  • [doc] Add migration notice in manifest. (#129)
  • Fix "stdlib.h: No such file or directory" errors in GCC-6
  • Fix error for null conversion.
  • Change version regex for graphviz in view_frames
  • fix for issue in getAngleShortestPath(), closes #102
  • Contributors: AndyZe, Edward Venator, Hodorgasm, Isaac I.Y. Saito, Michael Korn, Mike Purvis, Tom Moore, Tully Foote, Timo Röhling

1.11.8 (2016-03-04)

1.11.7 (2015-04-21)

  • add a unit test for pytf wait_for_transform
  • removed msg serv installation from cmakelists
  • generated autodoc
  • Fixed Vector3 documentation
  • display RPY in both radian and degree
  • Fixed command line arguments
  • using TimeStamp and FrameId in message filter this allows to use tf::MessageFilter with pcl::PointCloud<T> see #55
  • Added and optional third argument to specify publishing frequency
  • Contributors: Adnan Munawar, Brice Rebsamen, Jackie Kay, Tully Foote, Ying Lu

1.11.6 (2015-03-25)

  • reenable python tests
  • Broadcaster: Rospy fix #84. Add sendTransformMessage.
  • Contributors: Tully Foote, lsouchet

1.11.5 (2015-03-17)

  • Strip leading slash get parent #79
  • Make frameExists strip leading slash going into tf2.#63
  • Update broadcaster.py, Added ability to use TransformStamped
  • update view_frames to use AllFramesAsDot(rospy.time.now()) #77
  • Contributors: David Lu!!, Gaël Ecorchard, Kei Okada, Tully Foote

1.11.4 (2014-12-23)

  • Install static lib and remove test for Android
  • Larger default queue size in broadcaster With queue_size=1 when two transforms are sent in quick succession, the second is often lost. The C++ code uses a default queue_size of 100, so switch to that default here as well. If that is not appropriate, a queue_size constructor argument is provided.
  • Update package.xml
  • add rate parameter to tf_echo
  • Added check for normalized quaternion in roswtf plugin
  • Contributors: David Lu!!, Gary Servin, Kevin Hallenbeck, Stephan Wirth, contradict

1.11.3 (2014-05-07)

1.11.2 (2014-02-25)

  • fixing test linking
  • Contributors: Tully Foote

1.11.1 (2014-02-23)

1.11.0 (2014-02-14)

  • TF uses ros::MessageEvent to get connection information
  • Contributors: Kevin Watts, Tully Foote

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
ar_track_alvar
arbotix_controllers
arbotix_python
aruco_ros
basler_tof
collada_urdf
crazyflie_controller
crazyflie_driver
diagnostic_common_diagnostics
gazebo_plugins
gazebo_ros
geodesy
geometry
tf_conversions
test_tf2
turtle_tf
graft
grid_map_costmap_2d
grid_map_ros
grid_map_visualization
haf_grasping
hector_gazebo_plugins
hector_pose_estimation
hector_pose_estimation_core
message_to_tf
hector_imu_attitude_to_tf
hector_imu_tools
hector_map_server
hector_mapping
hector_trajectory_server
imu_processors
imu_transformer
imu_complementary_filter
interactive_markers
collada_urdf_jsk_patch
respeaker_ros
jsk_footstep_controller
jsk_ik_server
jsk_teleop_joy
euscollada
checkerboard_detector
jsk_pcl_ros
jsk_pcl_ros_utils
jsk_perception
jsk_recognition_utils
roseus
jsk_interactive_marker
laser_assembler
map_laser
laser_filters
laser_geometry
leap_motion
explore_lite
multirobot_map_merge
swri_geometry_util
swri_image_util
swri_transform_util
mavros_extras
microstrain_3dmgx2_imu
mongodb_log
moveit_commander
moveit_planners_ompl
moveit_ros_benchmarks
moveit_ros_benchmarks_gui
moveit_ros_manipulation
moveit_ros_move_group
moveit_ros_perception
moveit_ros_planning_interface
moveit_ros_robot_interaction
moveit_ros_warehouse
moveit_python
mrpt_ekf_slam_2d
mrpt_ekf_slam_3d
mrpt_graphslam_2d
mrpt_icp_slam_2d
mrpt_rbpf_slam
amcl
base_local_planner
carrot_planner
clear_costmap_recovery
costmap_2d
dwa_local_planner
fake_localization
global_planner
map_server
move_base
nav_core
navfn
robot_pose_ekf
rotate_recovery
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
odometry_publisher_tutorial
robot_setup_tf_tutorial
simple_navigation_goals_tutorial
novatel_gps_driver
novatel_span_driver
octomap_ros
openni2_launch
openni2_launch
pcdfilter_pa
face_detector
leg_detector
people_tracking_filter
dummy_slam_broadcaster
pcl_ros
phidgets_imu
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
razor_imu_9dof
rgbd_launch
robot_controllers
robot_self_filter
robot_state_publisher
diff_drive_controller
ros_numpy
cl_tf
rosserial_client
rotors_gazebo_plugins
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_ros
hrpsys_ros_bridge
rviz
laser_ortho_projector
laser_scan_matcher
ncd_parser
polar_scan_matcher
sick_ldmrs_driver
sick_ldmrs_tools
gmapping
slam_karto
teb_local_planner
tf2_web_republisher
trac_ik_python
ublox_gps
underwater_vehicle_dynamics
uwsim
move_base_straight
tf_publisher_gui
uos_freespace
urg_node
velodyne_gazebo_plugins
visp_tracker
visp_ros
osg_interactive_markers
osg_markers
osg_utils
rwt_moveit
interactive_marker_tutorials
volksbot_driver
warehouse_ros
easy_markers
xsens_driver
ardrone_autonomy
ca_driver
dynpick_driver
force_torque_sensor_calib
gravity_compensation
frontier_exploration
grizzly_motion
hector_elevation_mapping
hector_elevation_visualization
hector_path_follower
hector_timestamp_alignment
hector_qrcode_detection
hector_soft_obstacle_detection
innok_heros_driver
katana
nao_description
naoqi_dcm_driver
nav_pcontroller
netft_utils
rcll_fawkes_sim
robot_pose_publisher
rosaria
rtt_tf
stdr_gui
stdr_robot
stdr_samples
stdr_server
tiny_slam
vigir_footstep_planning_lib
vigir_feet_pose_generator
vigir_foot_pose_transformer
vigir_footstep_planner
vigir_walk_monitor
vigir_footstep_planning_msgs
head_pose_estimation
nao_path_follower
rosh_geometry
stereo_slam
vicon_bridge
aruco_mapping
aubo_control
aubo_new_driver
behavior_tree_leaves
libhaloc
object_recognition_tabletop
patrolling_sim
rail_ceiling
ros_ethernet_rmp
schunk_ezn64
schunk_pg70
stream_manipulator_3d
tf_keyboard_cal

Recent questions tagged tf at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.11.9
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version indigo-devel
Last Updated 2018-07-06
Dev Status MAINTAINED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.11.9 (2017-07-14)

  • Replace legacy python code with appropriate calls to tf2_ros (#149) (#134)
  • Replace deprecated Eigen module with Eigen3
  • Update minimum version for run dependency on tf2_ros
  • Add support for static_transforms in tf_monitor. Fixes #136 with #134 for tf_echo and view_frames.
  • Pass through allFramesAsDot time argument optionally.
  • remove vestigial includes. Fixes #146 (#147)
  • Commented code caused error in documentation (#142)
  • [doc] Add migration notice in manifest. (#129)
  • Fix "stdlib.h: No such file or directory" errors in GCC-6
  • Fix error for null conversion.
  • Change version regex for graphviz in view_frames
  • fix for issue in getAngleShortestPath(), closes #102
  • Contributors: AndyZe, Edward Venator, Hodorgasm, Isaac I.Y. Saito, Michael Korn, Mike Purvis, Tom Moore, Tully Foote, Timo Röhling

1.11.8 (2016-03-04)

1.11.7 (2015-04-21)

  • add a unit test for pytf wait_for_transform
  • removed msg serv installation from cmakelists
  • generated autodoc
  • Fixed Vector3 documentation
  • display RPY in both radian and degree
  • Fixed command line arguments
  • using TimeStamp and FrameId in message filter this allows to use tf::MessageFilter with pcl::PointCloud<T> see #55
  • Added and optional third argument to specify publishing frequency
  • Contributors: Adnan Munawar, Brice Rebsamen, Jackie Kay, Tully Foote, Ying Lu

1.11.6 (2015-03-25)

  • reenable python tests
  • Broadcaster: Rospy fix #84. Add sendTransformMessage.
  • Contributors: Tully Foote, lsouchet

1.11.5 (2015-03-17)

  • Strip leading slash get parent #79
  • Make frameExists strip leading slash going into tf2.#63
  • Update broadcaster.py, Added ability to use TransformStamped
  • update view_frames to use AllFramesAsDot(rospy.time.now()) #77
  • Contributors: David Lu!!, Gaël Ecorchard, Kei Okada, Tully Foote

1.11.4 (2014-12-23)

  • Install static lib and remove test for Android
  • Larger default queue size in broadcaster With queue_size=1 when two transforms are sent in quick succession, the second is often lost. The C++ code uses a default queue_size of 100, so switch to that default here as well. If that is not appropriate, a queue_size constructor argument is provided.
  • Update package.xml
  • add rate parameter to tf_echo
  • Added check for normalized quaternion in roswtf plugin
  • Contributors: David Lu!!, Gary Servin, Kevin Hallenbeck, Stephan Wirth, contradict

1.11.3 (2014-05-07)

1.11.2 (2014-02-25)

  • fixing test linking
  • Contributors: Tully Foote

1.11.1 (2014-02-23)

1.11.0 (2014-02-14)

  • TF uses ros::MessageEvent to get connection information
  • Contributors: Kevin Watts, Tully Foote

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
ar_track_alvar
arbotix_controllers
arbotix_python
aruco_ros
asr_cyberglove_visualization
asr_fake_object_recognition
asr_flir_ptu_driver
asr_flock_of_birds
asr_flock_of_birds_tracking
asr_ftc_local_planner
asr_mild_base_driving
asr_mild_base_fake_driving
asr_mild_base_laserscanner
asr_navfn
asr_robot_model_services
axis_camera
basler_tof
cob_helper_tools
cob_interactive_teleop
cob_script_server
scenario_test_tools
cob_cartesian_controller
cob_collision_velocity_filter
cob_footprint_observer
cob_frame_tracker
cob_model_identifier
cob_obstacle_distance
cob_omni_drive_controller
cob_twist_controller
cob_scan_unifier
cob_undercarriage_ctrl
cob_collision_monitor
cob_grasp_generation
cob_lookat_action
cob_moveit_bringup
cob_moveit_interface
cob_obstacle_distance_moveit
cob_pick_place_action
cob_linear_nav
cob_map_accessibility_analysis
cob_image_flip
cob_bringup_sim
cob_gazebo_worlds
collada_urdf
crazyflie_controller
crazyflie_driver
diagnostic_common_diagnostics
fiducial_pose
flexbe_core
flir_ptu_driver
frame_editor
freenect_launch
gazebo_plugins
gazebo_ros
generic_control_toolbox
geodesy
geometry
tf_conversions
test_tf2
turtle_tf
graft
grid_map_costmap_2d
grid_map_ros
grid_map_visualization
haf_grasping
hector_gazebo_plugins
hector_pose_estimation
hector_pose_estimation_core
message_to_tf
hector_imu_attitude_to_tf
hector_imu_tools
hector_map_server
hector_mapping
hector_trajectory_server
imu_processors
imu_transformer
imu_complementary_filter
interactive_markers
collada_urdf_jsk_patch
respeaker_ros
jsk_footstep_controller
jsk_ik_server
jsk_teleop_joy
euscollada
checkerboard_detector
jsk_pcl_ros
jsk_pcl_ros_utils
jsk_perception
jsk_recognition_utils
roseus
jsk_interactive_marker
kobuki_node
kobuki_gazebo_plugins
laser_assembler
map_laser
laser_filters
laser_geometry
leap_motion
swri_geometry_util
swri_image_util
swri_transform_util
mavros_extras
microstrain_3dmgx2_imu
tra1_bringup
tra1_description
mir_driver
mongodb_log
moveit_commander
moveit_planners_ompl
moveit_ros_benchmarks
moveit_ros_benchmarks_gui
moveit_ros_manipulation
moveit_ros_move_group
moveit_ros_perception
moveit_ros_planning_interface
moveit_ros_robot_interaction
moveit_ros_warehouse
pr2_moveit_plugins
pr2_planning_interface_tests
moveit_python
mrp2_description
mrp2_hardware
mrpt_ekf_slam_2d
mrpt_ekf_slam_3d
mrpt_graphslam_2d
mrpt_icp_slam_2d
mrpt_rbpf_slam
amcl
base_local_planner
carrot_planner
clear_costmap_recovery
costmap_2d
dwa_local_planner
fake_localization
global_planner
map_server
move_base
nav_core
navfn
robot_pose_ekf
rotate_recovery
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
assisted_teleop
pose_base_controller
pose_follower
odometry_publisher_tutorial
robot_setup_tf_tutorial
simple_navigation_goals_tutorial
novatel_gps_driver
novatel_span_driver
octomap_pa
octomap_ros
osm_cartography
openni2_launch
pcdfilter_pa
face_detector
leg_detector
people_tracking_filter
dummy_slam_broadcaster
pcl_ros
phidgets_imu
phidgets_ir
pr2_position_scripts
pr2_teleop
pr2_teleop_general
pr2_arm_move_ik
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
pr2_navigation_perception
pr2_navigation_self_filter
semantic_point_annotator
pr2_gazebo_plugins
razor_imu_9dof
rc_pick_client
rc_tagdetect_client
rc_visard_driver
rgbd_launch
ridgeback_control
ridgeback_gazebo_plugins
robot_controllers
dwb_local_planner
nav_2d_utils
nav_core2
nav_core_adapter
robot_self_filter
robot_state_publisher
diff_drive_controller
ros_numpy
roscompile
cl_tf
rosserial_client
rotors_gazebo_plugins
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_ros
hrpsys_ros_bridge
hironx_ros_bridge
nextage_calibration
rviz
laser_ortho_projector
laser_scan_matcher
ncd_parser
polar_scan_matcher
sick_ldmrs_driver
sick_ldmrs_tools
sick_scan
gmapping
slam_karto
static_tf
teb_local_planner
tf2_web_republisher
tf_remapper_cpp
trac_ik_python
ubiquity_motor
ublox_gps
underwater_vehicle_dynamics
uwsim
move_base_straight
tf_publisher_gui
uos_freespace
urg_node
velodyne_driver
velodyne_gazebo_plugins
visp_tracker
visp_ros
osg_interactive_markers
osg_markers
osg_utils
rwt_moveit
interactive_marker_tutorials
volksbot_driver
wifi_ddwrt
easy_markers
xpp_vis
xsens_driver
yocs_ar_pair_approach
yocs_diff_drive_pose_controller
yocs_localization_manager
yocs_math_toolkit
yocs_navigator
yocs_virtual_sensor
yocs_waypoints_navi
agvs_description
agvs_gazebo
agvs_robot_control
ardrone_autonomy
camera1394
camera1394stereo
cost_map_demos
ca_driver
declination
nav_layer_from_points
dynpick_driver
force_torque_sensor_calib
gravity_compensation
frontier_exploration
grizzly_motion
grizzly_gazebo_plugins
handle_detector
hector_elevation_mapping
hector_elevation_visualization
hector_path_follower
hector_timestamp_alignment
hector_qrcode_detection
hector_soft_obstacle_detection
footstep_planner
humanoid_localization
imu_compass
caljob_creator
industrial_extrinsic_cal
rgbd_depth_correction
target_finder
innok_heros_driver
katana
kobuki_softnode
gazebo_flocking
myahrs_driver
nao_description
naoqi_dcm_driver
nav_pcontroller
netft_utils
rb_tracker
arm_navigation_msgs
openrave_calibration
openrave_robot_control
openrave_robot_filter
pheeno_ros_sim
phoxi_camera
ps4eye
rb1_base_localization
rb1_base_navigation
rb1_base_gazebo
rbcar_description
rbcar_navigation
rbcar_gazebo
rbcar_robot_control
rcll_fawkes_sim
robot_pose_publisher
roboteq_diff_driver
robotiq_s_model_articulated_gazebo_plugins
roch_bringup
roch_navigation
roch_base
rosabridge_server
rosaria
rrt_exploration
rtt_tf
segway_rmp
sophus_ros_conversions
tf_tools
stdr_gui
stdr_robot
stdr_samples
stdr_server
summit_x_gazebo
summit_x_robot_control
summit_xl_localization
summit_xl_gazebo
summit_xl_robot_control
tango_ros_native
tiny_slam
turtlebot_actions
turtlebot_navigation
turtlebot_rapps
turtlebot_arm_kinect_calibration
turtlebot_arm_moveit_demos
create_node
ur_modern_driver
vigir_footstep_planning_lib
vigir_feet_pose_generator
vigir_foot_pose_transformer
vigir_footstep_planner
vigir_walk_monitor
vigir_footstep_planning_msgs
apriltags_ros
ar_pose
argos3d_p100
asctec_hl_interface
ax2550
bwi_tools
multi_level_map_server
calvin_pick_n_place
calvin_pick_server
cob_leg_detection
cob_openni2_tracker
cob_people_detection
cob_people_tracking_filter
crsm_slam
descartes_moveit
head_pose_estimation
household_objects_database
iav_depthimage_to_laserscan
interaction_cursor_3d
interaction_cursor_demo
jsk_aero_startup
jsk_baxter_startup
jsk_fetch_startup
nao_jsk_teleop
jsk_robot_startup
imu_recalibration
kurt_base
moveit_simple_grasps
nao_path_follower
nav2_driver
oculus_rviz_plugins
pi_tracker
pr2_make_a_map_app
pr2_map_navigation_app
pr2_precise_trajectory
razer_hydra
rocon_tf_reconstructor
ros_arduino_python
rosh_geometry
hrpsys_gazebo_atlas
s3000_laser
segbot_bringup
segbot_logical_translator
segbot_sensors
segbot_simulation_apps
sentis_tof_m100
skeleton_markers
stereo_slam
velodyne_height_map
vicon_bridge
viso2_ros
youbot_driver_ros_interface
ardrone2islab
aruco_mapping
aubo_control
aubo_new_driver
baxter_sim_hardware
baxter_sim_kinematics
behavior_tree_leaves
bowpmap_ros
camera_pose_calibration
carl_dynamixel
carl_phidgets
carl_tools
carl_moveit
carl_navigation
carl_safety
cirkit_unit03_driver
cit_adis_imu
pointcloud2pcd
dlut_pc_odom
dlut_viso2_ros
ekf_localization
evarobot_state_publisher
evarobot_gazebo
fetch_arm_control
fetch_pbd_interaction
fulanghua_ekf_2d
fulanghua_static_path_publisher
fulanghua_waypoints_nav
gaitech_edu
head_action
hexagon_map
homer_map_manager
homer_mapping
homer_nav_libs
homer_navigation
or_libs
or_msgs
or_nodes
fake_target_detector
point_cloud_reducer
husky_bringup
jackal_base
convenience_ros_functions
object_msgs_tools
grasp_prediction_arc2017
drc_task_common
jsk_smart_gui
kml_util
fake_laser
nj_costmap
nj_oa_costmap
featurenav_base
place_matcher_csm
place_matcher_hist
local_map
nj_escape_crossing
laser_odometry_core
libhaloc
light_scan_sim
micros_dynamic_objects_filter
micros_mars_task_alloc
moveit_goal_builder
moveit_planning_helper
mtig_driver
o3d3xx
object_recognition_tabletop
ohm_tsd_slam
patrolling_sim
plot_util
pr2_delivery
rail_ceiling
rail_object_detector
rapid_pbd
rb1_description
rb1_torso_description
rl_agent
rl_env
rl_experiment
remote_manipulation_markers
remote_monitor
rgbdslam
ridgeback_base
p3dx_dpl
ackermann_controller
four_wheel_steering_controller
ros_ethernet_rmp
schunk_ezn64
schunk_pg70
slam6d_exporter
spin_hokuyo
spur_2dnav
steer_drive_controller
stepback_and_steerturn_recovery
stream_manipulator_3d
surface_perception
odom_tf_publish
pure_pursuit_controller
tensor_field_nav_core
tf_keyboard_cal
tinkerforge_laser_transform
transform_graph
viodom
voronoi_planner
wpi_jaco_wrapper
yumi_hw

Recent questions tagged tf at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.10.8
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version hydro-devel
Last Updated 2015-05-12
Dev Status MAINTAINED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
ar_track_alvar
arbotix_controllers
arbotix_python
aruco_ros
axis_camera
cob_interactive_teleop
cob_script_server
cob_sick_s300
cob_undercarriage_ctrl
cob_grasp_generation
cob_lookat_action
cob_moveit_interface
cob_pick_place_action
cob_linear_nav
cob_scan_unifier
cob_image_flip
cob_gazebo
cob_gazebo_worlds
control_toolbox
diagnostic_common_diagnostics
flir_ptu_driver
freenect_launch
gazebo_plugins
gazebo_ros
geodesy
geometry
tf_conversions
test_tf2
turtle_tf
graft
hector_gazebo_plugins
hector_pose_estimation
hector_pose_estimation_core
message_to_tf
hector_imu_attitude_to_tf
hector_imu_tools
hector_map_server
hector_mapping
hector_trajectory_server
depth_image_proc
image_rotate
compressed_depth_image_transport
compressed_image_transport
theora_image_transport
imu_pipeline
interactive_markers
collada_urdf_jsk_patch
respeaker_ros
jsk_footstep_controller
jsk_ik_server
jsk_teleop_joy
checkerboard_detector
jsk_pcl_ros
jsk_pcl_ros_utils
jsk_perception
jsk_recognition_utils
roseus
jsk_interactive_marker
kobuki_node
kobuki_gazebo_plugins
laser_assembler
map_laser
laser_filters
laser_geometry
mavros
microstrain_3dmgx2_imu
mongodb_log
pr2_planning_interface_tests
moveit_python
amcl
base_local_planner
carrot_planner
clear_costmap_recovery
costmap_2d
dwa_local_planner
fake_localization
global_planner
map_server
move_base
nav_core
navfn
robot_pose_ekf
rotate_recovery
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
odometry_publisher_tutorial
robot_setup_tf_tutorial
simple_navigation_goals_tutorial
novatel_span_driver
octomap_ros
osm_cartography
face_detector
leg_detector
people_tracking_filter
dummy_slam_broadcaster
pcl_ros
phidgets_imu
phidgets_ir
pr2_position_scripts
pr2_teleop
pr2_teleop_general
pr2_arm_move_ik
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
pr2_navigation_perception
pr2_navigation_self_filter
semantic_point_annotator
pr2_gazebo_plugins
razor_imu_9dof
rgbd_launch
robot_localization
robot_state_publisher
diff_drive_controller
cl_tf
rosserial_client
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_ros
hrpsys_ros_bridge
hironx_ros_bridge
rviz
gmapping
slam_karto
tf2_web_republisher
ubiquity_motor
move_base_straight
tf_publisher_gui
urg_node
velodyne_driver
visp_tracker
visp_ros
osg_interactive_markers
osg_markers
osg_utils
rwt_moveit
interactive_marker_tutorials
volksbot_driver
wifi_ddwrt
easy_markers
yocs_diff_drive_pose_controller
yocs_math_toolkit
yocs_virtual_sensor
yocs_waypoints_navi
ardrone_autonomy
camera1394
camera1394stereo
declination
dynpick_driver
force_torque_sensor_calib
gravity_compensation
frontier_exploration
grizzly_motion
grizzly_gazebo_plugins
handle_detector
hector_elevation_mapping
hector_elevation_visualization
hector_path_follower
hector_qrcode_detection
hector_soft_obstacle_detection
footstep_planner
humanoid_localization
imu_compass
innok_heros_driver
katana
kobuki_softnode
nao_description
ps4eye
python_trep
collada_urdf
robot_pose_publisher
rosaria
rosjava_messages
rtt_tf
segway_rmp
tf_tools
stdr_gui
stdr_robot
stdr_samples
stdr_server
turtlebot_actions
turtlebot_core_apps
turtlebot_navigation
create_node
agvs_description
agvs_gazebo
agvs_robot_control
purepursuit_planner
apriltags_ros
ar_kinect
ar_pose
argos3d_p100
asctec_hl_interface
ax2550
calvin_pick_n_place
calvin_pick_server
camera_aravis
cob_3d_mapping_slam
cob_3d_registration
cob_3d_transform_nodes
cob_keyframe_detector
cob_leg_detection
cob_openni2_tracker
cob_people_detection
cob_people_tracking_filter
corobot_gazebo
corobot_phidget_ik
corobot_state_tf
map_to_jpeg
crsm_slam
descartes_moveit
eigen_utils
epos_driver
epuck_driver
erratic_player
ethzasl_extrinsic_calibration
ethzasl_icp_mapper
ethzasl_icp_mapper_experiments
ethzasl_point_cloud_vtk_tools
libpointmatcher_ros
guardian_gazebo
guardian_robot_control
head_pose_estimation
household_objects_database
pykdl_utils
husky_bringup
husky_gazebo_plugins
iav_depthimage_to_laserscan
interaction_cursor_3d
interaction_cursor_demo
jsk_aero_startup
jsk_baxter_startup
jsk_fetch_startup
nao_jsk_teleop
jsk_robot_startup
kingfisher_teleop
imu_recalibration
kurt_base
maggie_base
moveit_commander
moveit_planners_ompl
moveit_ros_benchmarks_gui
moveit_ros_manipulation
moveit_ros_move_group
moveit_ros_perception
moveit_ros_planning_interface
moveit_ros_robot_interaction
moveit_ros_warehouse
moveit_simple_grasps
mr_tools
nao_path_follower
r2_gazebo
nav2_driver
neato_node
object_recognition_clusters
oculus_rviz_plugins
openni2_launch
openni_tracker
blort
blort_ros
ndt_mcl
ndt_registration
pi_tracker
pr2_make_a_map_app
pr2_map_navigation_app
pr2_plugs_actions
pr2_plugs_common
visual_pose_estimation
pr2_precise_trajectory
razer_hydra
read_omni_dataset
retalis
ros_arduino_python
rosh_geometry
hrpsys_gazebo_atlas
ptu46
ptu_control
rflex
s3000_laser
segbot_logical_translator
segbot_simulation_apps
rmp_base
sentis_tof_m100
sr_kinematics
sr_utilities
skeleton_markers
robin_people_detection
slam_exporter
v4r_artoolkitplus
v4r_ellipses
v4r_laser_robot_calibration
velodyne_height_map
vicon_bridge
viso2_ros
wheeled_robin_node
dt_local_planner
elevator
wheeled_robin_formation_drive
wheeled_robin_guided_tour
fake_odom
wifi_scan
youbot_driver_ros_interface

Recent questions tagged tf at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.11.9
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version indigo-devel
Last Updated 2018-07-06
Dev Status MAINTAINED
CI status Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.11.9 (2017-07-14)

  • Replace legacy python code with appropriate calls to tf2_ros (#149) (#134)
  • Replace deprecated Eigen module with Eigen3
  • Update minimum version for run dependency on tf2_ros
  • Add support for static_transforms in tf_monitor. Fixes #136 with #134 for tf_echo and view_frames.
  • Pass through allFramesAsDot time argument optionally.
  • remove vestigial includes. Fixes #146 (#147)
  • Commented code caused error in documentation (#142)
  • [doc] Add migration notice in manifest. (#129)
  • Fix "stdlib.h: No such file or directory" errors in GCC-6
  • Fix error for null conversion.
  • Change version regex for graphviz in view_frames
  • fix for issue in getAngleShortestPath(), closes #102
  • Contributors: AndyZe, Edward Venator, Hodorgasm, Isaac I.Y. Saito, Michael Korn, Mike Purvis, Tom Moore, Tully Foote, Timo Röhling

1.11.8 (2016-03-04)

1.11.7 (2015-04-21)

  • add a unit test for pytf wait_for_transform
  • removed msg serv installation from cmakelists
  • generated autodoc
  • Fixed Vector3 documentation
  • display RPY in both radian and degree
  • Fixed command line arguments
  • using TimeStamp and FrameId in message filter this allows to use tf::MessageFilter with pcl::PointCloud<T> see #55
  • Added and optional third argument to specify publishing frequency
  • Contributors: Adnan Munawar, Brice Rebsamen, Jackie Kay, Tully Foote, Ying Lu

1.11.6 (2015-03-25)

  • reenable python tests
  • Broadcaster: Rospy fix #84. Add sendTransformMessage.
  • Contributors: Tully Foote, lsouchet

1.11.5 (2015-03-17)

  • Strip leading slash get parent #79
  • Make frameExists strip leading slash going into tf2.#63
  • Update broadcaster.py, Added ability to use TransformStamped
  • update view_frames to use AllFramesAsDot(rospy.time.now()) #77
  • Contributors: David Lu!!, Gaël Ecorchard, Kei Okada, Tully Foote

1.11.4 (2014-12-23)

  • Install static lib and remove test for Android
  • Larger default queue size in broadcaster With queue_size=1 when two transforms are sent in quick succession, the second is often lost. The C++ code uses a default queue_size of 100, so switch to that default here as well. If that is not appropriate, a queue_size constructor argument is provided.
  • Update package.xml
  • add rate parameter to tf_echo
  • Added check for normalized quaternion in roswtf plugin
  • Contributors: David Lu!!, Gary Servin, Kevin Hallenbeck, Stephan Wirth, contradict

1.11.3 (2014-05-07)

1.11.2 (2014-02-25)

  • fixing test linking
  • Contributors: Tully Foote

1.11.1 (2014-02-23)

1.11.0 (2014-02-14)

  • TF uses ros::MessageEvent to get connection information
  • Contributors: Kevin Watts, Tully Foote

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
ar_track_alvar
arbotix_controllers
arbotix_python
aruco_ros
asr_cyberglove_visualization
asr_direct_search_manager
asr_fake_object_recognition
asr_flir_ptu_driver
asr_flock_of_birds
asr_flock_of_birds_tracking
asr_ftc_local_planner
asr_ism
asr_ism_visualizations
asr_mild_base_driving
asr_mild_base_fake_driving
asr_mild_base_laserscanner
asr_navfn
asr_next_best_view
asr_psm
asr_psm_visualizations
asr_recognizer_prediction_psm
asr_robot_model_services
asr_state_machine
asr_world_model
axis_camera
basler_tof
cis_camera
cob_helper_tools
cob_interactive_teleop
cob_script_server
scenario_test_tools
cob_base_controller_utils
cob_cartesian_controller
cob_collision_velocity_filter
cob_footprint_observer
cob_frame_tracker
cob_model_identifier
cob_obstacle_distance
cob_omni_drive_controller
cob_tricycle_controller
cob_twist_controller
cob_scan_unifier
cob_undercarriage_ctrl
cob_collision_monitor
cob_grasp_generation
cob_lookat_action
cob_moveit_bringup
cob_moveit_interface
cob_obstacle_distance_moveit
cob_linear_nav
cob_map_accessibility_analysis
cob_image_flip
cob_gazebo_tools
cob_gazebo_worlds
tf2_relay
crazyflie_controller
crazyflie_driver
diagnostic_common_diagnostics
eband_local_planner
ensenso_camera_test
exotica_core
fanuc_post_processor
fiducial_msgs
find_object_2d
flexbe_core
flir_ptu_driver
frame_editor
franka_control
franka_example_controllers
freenect_launch
gazebo_plugins
gazebo_ros
generic_control_toolbox
geodesy
geometry
tf_conversions
test_tf2
turtle_tf
grid_map_costmap_2d
grid_map_ros
grid_map_visualization
haf_grasping
hector_gazebo_plugins
hector_pose_estimation
hector_pose_estimation_core
message_to_tf
hector_sensors_description
hector_imu_attitude_to_tf
hector_imu_tools
hector_map_server
hector_mapping
hector_trajectory_server
heron_controller
heron_gazebo
hfl_driver
husky_bringup
ifm3d_ros_examples
imu_processors
imu_transformer
imu_complementary_filter
interactive_marker_twist_server
interactive_markers
ira_laser_tools
collada_urdf_jsk_patch
respeaker_ros
jsk_footstep_controller
jsk_ik_server
jsk_teleop_joy
euscollada
checkerboard_detector
jsk_pcl_ros
jsk_pcl_ros_utils
jsk_perception
jsk_recognition_utils
roseus
jsk_interactive_marker
khi_duaro_moveit_config
khi_robot_bringup
khi_rs007l_moveit_config
khi_rs007n_moveit_config
khi_rs013n_moveit_config
khi_rs020n_moveit_config
khi_rs025n_moveit_config
khi_rs080n_moveit_config
kobuki_node
kobuki_gazebo_plugins
laser_assembler
map_laser
laser_filters
laser_geometry
leap_motion
leica_gazebo_simulation
leica_point_cloud_processing
explore_lite
mapviz
mapviz_plugins
multires_image
tile_map
swri_geometry_util
swri_image_util
swri_transform_util
mavros_extras
microstrain_3dmgx2_imu
tra1_bringup
tra1_description
mir_driver
mocap_optitrack
mongodb_log
moose_control
mbf_abstract_nav
mbf_costmap_core
mbf_costmap_nav
mbf_simple_nav
mbf_utility
moveit_commander
moveit_kinematics
moveit_planners_chomp
moveit_chomp_optimizer_adapter
moveit_planners_ompl
moveit_ros_manipulation
moveit_ros_move_group
moveit_ros_perception
moveit_ros_planning
moveit_ros_planning_interface
moveit_ros_robot_interaction
moveit_ros_visualization
moveit_ros_warehouse
pr2_planning_interface_tests
moveit_python
mrpt_ekf_slam_2d
mrpt_ekf_slam_3d
mrpt_graphslam_2d
mrpt_icp_slam_2d
mrpt_rbpf_slam
amcl
base_local_planner
carrot_planner
clear_costmap_recovery
costmap_2d
dwa_local_planner
global_planner
move_base
nav_core
navfn
robot_pose_ekf
rotate_recovery
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
assisted_teleop
pose_base_controller
pose_follower
odometry_publisher_tutorial
robot_setup_tf_tutorial
simple_navigation_goals_tutorial
nearfield_map
nonpersistent_voxel_layer
novatel_gps_driver
novatel_span_driver
octomap_pa
octomap_ros
osm_cartography
openni2_launch
orb_slam2_ros
oxford_gps_eth
p2os_driver
p2os_teleop
p2os_urdf
pcdfilter_pa
face_detector
leg_detector
people_tracking_filter
dummy_slam_broadcaster
pcl_ros
pilz_robot_programming
pipeline_planner
pr2_position_scripts
pr2_teleop
pr2_teleop_general
pr2_arm_move_ik
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
pr2_navigation_perception
pr2_navigation_self_filter
semantic_point_annotator
pr2_gazebo_plugins
rail_segmentation
razor_imu_9dof
rc_genicam_driver
rc_pick_client
rc_tagdetect_client
rc_visard_driver
ridgeback_control
ridgeback_gazebo_plugins
rslidar_driver
rslidar_pointcloud
robot_calibration
robot_controllers
dwb_local_planner
nav_2d_utils
nav_core2
nav_core_adapter
robot_self_filter
robot_state_publisher
rsm_additions
rsm_core
rsm_rviz_plugins
ackermann_steering_controller
diff_drive_controller
four_wheel_steering_controller
ros_numpy
rosbag_editor
roscompile
cl_tf
rosserial_client
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_ros
hrpsys_ros_bridge
hironx_ros_bridge
nextage_calibration
rviz
rxros_tf
laser_ortho_projector
laser_scan_matcher
ncd_parser
polar_scan_matcher
sciurus17_vision
seed_r7_gazebo
seed_r7_moveit_config
seed_r7_ros_controller
sick_ldmrs_driver
sick_ldmrs_tools
sick_scan
simple_grasping
gmapping
slam_karto
spatio_temporal_voxel_layer
sr_utilities
hand_kinematics
sr_grasp_stability
stag_ros
stage_ros
static_tf
teb_local_planner
tf2_web_republisher
tf_remapper_cpp
trac_ik_python
turtlebot3_autorace_control
turtlebot3_autorace_detect
turtlebot3_fake
turtlebot3_gazebo
tuw_aruco
tuw_checkerboard
tuw_ellipses
tuw_marker_pose_estimation
tuw_nav_msgs
tuw_multi_robot_ctrl
tuw_multi_robot_router
tuw_voronoi_graph
ubiquity_motor
ublox_gps
underwater_vehicle_dynamics
uwsim
move_base_straight
tf_publisher_gui
uos_freespace
urg_node
uuv_assistants
uuv_control_cascaded_pid
uuv_thruster_manager
uuv_trajectory_control
uuv_sensor_ros_plugins
uuv_teleop
velo2cam_calibration
velodyne_gazebo_plugin
velodyne_driver
velodyne_pointcloud
velodyne_gazebo_plugins
vesc_ackermann
visp_tracker
visp_ros
osg_interactive_markers
osg_markers
osg_utils
interactive_marker_tutorials
volksbot_driver
warehouse_ros
webots_ros
wifi_ddwrt
easy_markers
xpp_vis
xsens_driver
yocs_ar_pair_approach
yocs_diff_drive_pose_controller
yocs_localization_manager
yocs_math_toolkit
yocs_navi_toolkit
yocs_navigator
yocs_virtual_sensor
yocs_waypoints_navi
ackermann_controller
agvs_description
agvs_gazebo
agvs_robot_control
apriltag_ros
ardrone_autonomy
bin_pose_emulator
camera1394
camera1394stereo
carla_ros_bridge
choreo_core
cog_publisher
cost_map_demos
ca_driver
declination
nav_layer_from_points
dmu_ros
dynpick_driver
earth_rover_localization
ez_interactive_marker
fanuc_grinding_post_processor
force_torque_sensor_calib
gravity_compensation
frontier_exploration
gps_goal
handle_detector
hebiros
hector_elevation_mapping
hector_elevation_visualization
hector_path_follower
hector_timestamp_alignment
hector_quadrotor_controllers
hector_qrcode_detection
hector_soft_obstacle_detection
footstep_planner
humanoid_localization
ifm_o3mxxx
iiwa_hw
imu_compass
caljob_creator
industrial_extrinsic_cal
rgbd_depth_correction
target_finder
innok_heros_driver
jaguar_description
jog_arm
katana
kobuki_softnode
mynt_eye_ros_wrapper
mas_cartesian_control
gazebo_flocking
mobility_base_gazebo_plugins
move_base_to_manip
mrpt_bridge
multi_jackal_base
multi_jackal_control
multi_jackal_description
multi_jackal_nav
multipoint_navigation_receiver
multiwii
myahrs_driver
nao_description
naoqi_dcm_driver
nav_pcontroller
netft_utils
o3m151_driver
rb_tracker
arm_navigation_msgs
openrave_calibration
openrave_robot_control
openrave_robot_filter
orb_slam2_with_maps-odom
pattern_manager
pheeno_ros_sim
phoxi_camera
pioneer_mrs
ps4eye
raspicat
rb1_base_localization
rb1_base_gazebo
rbcar_description
rbcar_gazebo
rbcar_robot_control
rcll_fawkes_sim
robot_pose_publisher
recordit
roboteq_diff_driver
robotiq_3f_gripper_articulated_gazebo_plugins
op3_localization
roch_navigation
roch_rapps
roch_base
rosabridge_server
rosaria
rrt_exploration
rtt_tf
segway_rmp
slam_constructor
smp_ros
sophus_ros_conversions
tf_tools
stdr_gui
stdr_robot
stdr_samples
stdr_server
stomp_moveit
summit_x_gazebo
summit_x_robot_control
summit_xl_localization
summit_xl_gazebo
tango_ros_native
tiny_slam
turtlebot_actions
turtlebot_navigation
turtlebot_rapps
turtlebot_arm_kinect_calibration
turtlebot_arm_moveit_demos
turtlebot_arm_object_manipulation
create_node
tuw_marker_slam
ur_modern_driver
vigir_footstep_planning_lib
vigir_feet_pose_generator
vigir_foot_pose_transformer
vigir_footstep_planner
vigir_walk_monitor
vigir_footstep_planning_msgs
watson_ins
wire_core
wire_viz
xarm_planner
d435i_xarm_setup
xbot_node
xiaoqiang_driver
xiaoqiang_freenect_launch
addwa_local_planner

Recent questions tagged tf at Robotics Stack Exchange

Package Summary

Tags No category tags.
Version 1.12.1
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/ros/geometry.git
VCS Type git
VCS Version melodic-devel
Last Updated 2021-09-02
Dev Status MAINTAINED
CI status
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

tf is a package that lets the user keep track of multiple coordinate frames over time. tf maintains the relationship between coordinate frames in a tree structure buffered in time, and lets the user transform points, vectors, etc between any two coordinate frames at any desired point in time.

Additional Links

Maintainers

  • Tully Foote

Authors

  • Tully Foote
  • Eitan Marder-Eppstein
  • Wim Meeussen
README
No README found. No README in repository either.
CHANGELOG

Changelog for package tf

1.12.1 (2020-03-10)

  • Use process_time() for Python 3.8 compatibility (#205)
  • Bump CMake version to avoid CMP0048 warning (#204)
  • Add rostest include dirs (#195)
  • Remove trailing semicolons from tf sources (#187) * [tf] Removed trailing semicolons after functions from all sources Used the -Wpedantic compiler flag to find all occurrences

  • Allow to choose output precision in tf_echo (#186)
    • Allow to choose output precision in tf_echo
  • update how c++11 requirement is added (#184)
  • update install destination in CMakeLists.txt (#183)
    • export binary to right locations
    • specify archive and runtime destinations, update whitespace (#5)
  • add visibility macro
  • windows bring up, use ROS_DEPRECATED
  • Remove [signals]{.title-ref} from find_package(Boost COMPONENTS ...)
  • fixing error of casting away constness in method void tfSwapScalarEndian(const tfScalar& sourceVal, tfScalar& destVal) in line 626 of Vector3.h (#179)
  • Fix log output typo: message_notifier -> message_filter (#177) Almost all the log outputs use message_filter, except one. The warning text still referred to message_notifier. This commit fixes that.
  • Contributors: C-NR, James Xu, Maarten de Vries, Martin Günther, Shane Loretz, Victor Lamoine, Yoshua Nava

1.12.0 (2018-05-02)

  • Adapt to new xmlrpcpp header location (#164)
  • Maintain & expose tf2 Buffer in shared_ptr for tf (#163) - Adds a tf2_ros::Buffer via a public accessor method to expose to customers of Transformer - Maintains the tf2_ros::Buffer in a shared_ptr to safely share access to the Buffer object - As this is targeting Melodic, adds c++11 compile flags to grant access to std::shared_ptr's - Reorders the include_directories in the CMakeLists to ensure the headers exposed in this package are read before the system installed catkin_INCLUDE_DIRS (otherwise changes to tf source headers are never detected during a catkin_make on a system with ros-*-geometry installed)

  • Prevent rates that result in core dump (0.0) or no limit on update rate at all (<0.0) #159 (#160)
  • Fix empty yaml parsing (#153) Fixes #152 The empty yaml was coming through as a list not a dict so was breaking the expectations. I used the shorthand [or {}]{.title-ref} since I know any valid data won't evaluate to zero. A more complete solution is described here: https://stackoverflow.com/a/35777649/604099
  • Make python scripts Python3 compatible. (#151)
    • Python 3 fixes
    • Prefer str.format over operator % and small python3 fixes.
  • Contributors: Ian McMahon, Lucas Walter, Maarten de Vries, Tully Foote

1.11.9 (2017-07-14)

  • Replace legacy python code with appropriate calls to tf2_ros (#149) (#134)
  • Replace deprecated Eigen module with Eigen3
  • Update minimum version for run dependency on tf2_ros
  • Add support for static_transforms in tf_monitor. Fixes #136 with #134 for tf_echo and view_frames.
  • Pass through allFramesAsDot time argument optionally.
  • remove vestigial includes. Fixes #146 (#147)
  • Commented code caused error in documentation (#142)
  • [doc] Add migration notice in manifest. (#129)
  • Fix "stdlib.h: No such file or directory" errors in GCC-6
  • Fix error for null conversion.
  • Change version regex for graphviz in view_frames
  • fix for issue in getAngleShortestPath(), closes #102
  • Contributors: AndyZe, Edward Venator, Hodorgasm, Isaac I.Y. Saito, Michael Korn, Mike Purvis, Tom Moore, Tully Foote, Timo Röhling

1.11.8 (2016-03-04)

1.11.7 (2015-04-21)

  • add a unit test for pytf wait_for_transform
  • removed msg serv installation from cmakelists
  • generated autodoc
  • Fixed Vector3 documentation
  • display RPY in both radian and degree
  • Fixed command line arguments
  • using TimeStamp and FrameId in message filter this allows to use tf::MessageFilter with pcl::PointCloud<T> see #55
  • Added and optional third argument to specify publishing frequency
  • Contributors: Adnan Munawar, Brice Rebsamen, Jackie Kay, Tully Foote, Ying Lu

1.11.6 (2015-03-25)

  • reenable python tests
  • Broadcaster: Rospy fix #84. Add sendTransformMessage.
  • Contributors: Tully Foote, lsouchet

1.11.5 (2015-03-17)

  • Strip leading slash get parent #79
  • Make frameExists strip leading slash going into tf2.#63
  • Update broadcaster.py, Added ability to use TransformStamped
  • update view_frames to use AllFramesAsDot(rospy.time.now()) #77
  • Contributors: David Lu!!, Gaël Ecorchard, Kei Okada, Tully Foote

1.11.4 (2014-12-23)

  • Install static lib and remove test for Android
  • Larger default queue size in broadcaster With queue_size=1 when two transforms are sent in quick succession, the second is often lost. The C++ code uses a default queue_size of 100, so switch to that default here as well. If that is not appropriate, a queue_size constructor argument is provided.
  • Update package.xml
  • add rate parameter to tf_echo
  • Added check for normalized quaternion in roswtf plugin
  • Contributors: David Lu!!, Gary Servin, Kevin Hallenbeck, Stephan Wirth, contradict

1.11.3 (2014-05-07)

1.11.2 (2014-02-25)

  • fixing test linking
  • Contributors: Tully Foote

1.11.1 (2014-02-23)

1.11.0 (2014-02-14)

  • TF uses ros::MessageEvent to get connection information
  • Contributors: Kevin Watts, Tully Foote

1.10.8 (2014-02-01)

  • Port groovy-devel patch to hydro-devel
  • Added rosconsole as catkin dependency for catkin_package
  • Add rosconsole as runtime dependency
  • Contributors: Michael Ferguson, Mirza Shah

1.10.7 (2013-12-27)

  • fix bug in tf::Matrix3x3::getEulerYPR() Fixes a bug in tf::Matrix3x3::getEulerYPR() implementation's handling of gimbal lock cases (when the new x axis aligns with the old +/-z axis).
  • add test that demonstrated bug in tf::Matrix3x3 tf::Matrix3x3::getEulerYPR() has a bug which returns an incorrect rpy for certain corner case inputs. This test demonstrates that bug.
  • Fix const correctness of tf::Vector3 rotate() method The method does not modify the class thus should be const. This has already been fixed in Bullet itself.
  • add automatic tf buffer cleaning on bag loop for python This logic was already implemented for c++ but not for the python module.
  • Contributors: Acorn Pooley, Timo Rohling, Tully Foote, v4hn

1.10.6 (2013-08-28)

  • switching to wrapper scripts which will provide a deprecation warning for #3
  • add missing roswtf dependency to really export the plugin (fix #27)
  • Update listener.py Fix the tf listener service exception in rospy. See: http://answers.ros.org/question/10777/service-exception-using-tf-listener-in-rospy/
  • Fix MessageFilter race condition If MessageFilter does not explicitly stop its callback timer when it's being destroyed, there is a race condition when that timer is processed in a callback queue run by a different thread. Specifically, maxRateTimerCallback() may be called after messages_mutex has been destroyed, causing a unrecoverable error.

1.10.5 (2013-07-19)

  • tf: export dependency on tf2_ros Fixes #21
  • added run dependency on graphviz closes #19

1.10.4 (2013-07-11)

1.10.3 (2013-07-09)

  • fixing unittest for new resolve syntax

1.10.2 (2013-07-09)

1.10.1 (2013-07-05)

  • updating dependency requirement to tf2_ros 0.4.3
  • removing unused functions removing unused private methods removing max_extrapolation_distance_ removing unused data storage _frameIDs frameIDS_reverse frame_authority_ removing cache_time from tf, passing through method to tf2 buffer_core removing unused variables frames_ and frame_mutex_ and interpolating_ removing unused mutex and transformchanged signaling commenting on deprecation of MAX_EXTRAPOLATION_DISTANCE

1.10.0 (2013-07-05)

  • adding versioned dependency on recent geometry_experimental changes
  • fixing test dependencies
  • fixing callbacks for message filters
  • remove extra invalid comment
  • dedicated thread logic all implemented
  • removing commented out code
  • mostly completed conversion of tf::TransformListener to use tf2 under the hood
  • lookuptwist working
  • tf::Transformer converted to use tf2::Buffer under the hood. passing tf_unittest.cpp
  • making tf exceptions typedefs of tf2 exceptions for compatability
  • first stage of converting Transformer to Buffer
  • switching to use tf2's TransformBroadcaster
  • adding dependency on tf2_ros to start moving over contents
  • fixing unit tests

1.9.31 (2013-04-18 18:16)

1.9.30 (2013-04-18 16:26)

  • Adding correct install targets for tf scripts
  • Removing scripts from setup.py install

1.9.29 (2013-01-13)

  • use CATKIN_DEVEL_PREFIX instead of obsolete CATKIN_BUILD_PREFIX

1.9.28 (2013-01-02)

1.9.27 (2012-12-21)

  • set addditional python version
  • added license headers to various files

1.9.26 (2012-12-14)

  • add missing dep to catkin

1.9.25 (2012-12-13)

  • add missing downstream depend
  • update setup.py

1.9.24 (2012-12-11)

  • Version 1.9.24

1.9.23 (2012-11-22)

  • Releaseing version 1.9.23
  • tf depended on angles but did not find_package it

1.9.22 (2012-11-04 09:14)

1.9.21 (2012-11-04 01:19)

1.9.20 (2012-11-02)

1.9.19 (2012-10-31)

  • fix catkin function order
  • Removed deprecated 'brief' attribute from <description> tags.

1.9.18 (2012-10-16)

  • tf: Fixed wrong install directory for python message files.
  • tf: fixed bug where generated python message code was not being installed.
  • tf: added setup.py file and changed CMakeLists.txt to install python files and bound library (_tf.so, also known as pytf_py in CMakeLists.txt) which must have been missed during the previous catkin-ization.

1.9.17 (2012-10-02)

  • fix several dependency issues

1.9.16 (2012-09-29)

  • adding geometry metapackage and updating to 1.9.16

1.9.15 (2012-09-30)

  • fix a few dependency/catkin problems
  • remove old API files
  • comply to the new catkin API

1.9.14 (2012-09-18)

  • patch from Tom Ruehr from tf sig
  • patch from #5401 for c++0x support

1.9.13 (2012-09-17)

  • update manifests

1.9.12 (2012-09-16)

  • use the proper angles package

1.9.11 (2012-09-14 22:49)

  • no need for angles anymore

1.9.10 (2012-09-14 22:30)

  • no need for bullet anymore

1.9.9 (2012-09-11)

  • update depends
  • minor patches for new build system

1.9.8 (2012-09-03)

  • fixes for groovy's catkin

1.9.7 (2012-08-10 12:19)

1.9.6 (2012-08-02 19:59)

  • changing how we install bins

1.9.5 (2012-08-02 19:48)

  • fix the header to be compiled properly
  • using PROGRAMS insteas of TARGETS

1.9.4 (2012-08-02 18:29)

1.9.3 (2012-08-02 18:28)

  • forgot to install some things
  • also using DEPENDS

1.9.2 (2012-08-01 21:05)

  • make sure the tf target depends on the messages (and clean some include_directories too)

1.9.1 (2012-08-01 19:16)

  • install manifest.xml

1.9.0 (2012-08-01 18:52)

  • catkin build system
  • remove bullet dep
  • fix bug #5089
  • add link flag for OSX
  • tf: MessageFilter: added public getter/setter for queue_size_
  • adding btQuaternion constructor for ease of use
  • fixing method naming for camelCase and adding bt* Constructor methods
  • tf.tfwtf now uses rosgraph.Master instead of roslib
  • Added tf and angles to catkin
  • cleanup up last errors
  • SIMD_ -> TFSIMD_ defines to not conflict
  • write in bullet assignment and return methods
  • executable bit on conversion script
  • changing defines from BT to TF
  • removing BULLET_VERSION info
  • changing all bt* to tf* in LinearMath to avoid collisions
  • convert btScalar to tfScalar to avoid definition conflicts
  • deleting GEN_clamp and GEN_clamped as they're unused and would conflict
  • non conflicting minmax functions
  • the migration script
  • applied bullet_migration_sed.py to LinearMath include dir with namespaced rules and everything with Namespaced rules and all 152 tests pass
  • removing all BT_USE_DOUBLE_PRECISION ifs and hardcoding them to the double case
  • adding tf namespaces to moved files
  • breaking bullet dependency
  • removing redundant typedefs with new datatypes
  • moving filenames to not collide in search and replaces
  • changing include guards
  • moving linear math into tf namespace
  • copying in bullet datatypes
  • switching to a recursive mutex and actually holding locks for the right amount of time. ticket:5
  • Giving error message when time cache is empty for lookup failures
  • Moving lct_cache_ to local variable from class member. As class member, using this variable makes lookupTransform not thread-safe
  • velocity test precision a little lower requirements
  • Fix to error message for earliest extrapolation time exception, ros-pkg5085
  • Fixing epsilon to prevent test failures
  • Reducing epsilon value for velocity tests
  • add missing empty_listener.cpp file
  • Not calling ros::Time::now() in tf.cpp, causes problems with pytf
  • fix for ROS_BREAK include
  • Adding faster point cloud transform, as specified in ros-pkg#4958
  • Cache unittest reenabled
  • Adding speed_test from tf2 to check lookupTransform/canTransform
  • Josh's optimizations from tf2 merged into tf. Tests pass
  • Benchmark test includes tests of lookupTransform
  • Adding ros::Time::init to benchmark test
  • Testing compound transforms with lookupTransform
  • Adding helix test of time-varying transforms, with interpolation, to test lookupTransform
  • Moving test executables to bin/. Cleanup in tf_unittest. Removed deprecated calls to bullet, added 'ring45' test from tf2 as lookupTransform test
  • patch for #4952
  • kevin's patch for #ros-pkg4882
  • Fix for TransformListener hanging on simulation shutdown, #4882
  • removing old srv export
  • removing old srv includ path
  • this should never have been passing in an error string here -- likely one of the reasons MessageFilter is so slow
  • Adding to author list to create branch
  • removing reset_time topic and catching negative time change to reset the tf buffer
  • #4277 transformPointCloud
  • revert patch that uses ros::ok in waitForTransform. ticket #4235
  • make tf unittest a ros node
  • fix lockup in waitForTransform. ticket 4235
  • reverting r30406 and r30407, they are redundant with standardized functionality and break previous functionality
  • sse detection #4114
  • tf: change_notifier should sleep after an exception
  • created common place for ROS Pose/Point/Quaternion to numpy arrays transformations
  • added TransformBroadcaster.sendTransform for PoseStamped
  • one more patch for #4183
  • new unit test
  • waitforTransform now polls on walltime to avoid ros::Time initialization issues. basic unit test for waitForTransform in python.
  • fix for stricter time
  • fix ros::Time unit test problem with ROS 1.1.9
  • #4103 method getTFPrefix() added, documented, tested
  • moving patch to trunk from tag r30172
  • Added Ubuntu platform tags
  • Update MessageFilter to use traits and MessageEvent
  • #4039, moved PoseMath from tf to tf_conversions
  • #4031 add lookupTwist and lookupTwistFull
  • fixing zero time edge case of lookupTwist, thanks james
  • commenting debug statement
  • Typo in comment
  • documentation
  • fixing up unit tests
  • lookup twist for #4010
  • commenting twist test while the code is being refactored
  • removing transform twist as per api review in ticket #4010
  • Added doctest for PoseMath creation from message
  • Doc for PoseMath
  • Double module tf
  • Remove expect_exception
  • comment for operator
  • opeartor == for StampedTransform too #3990
  • First cut at posemath
  • adding operator== to Stamped<T> with unit tests
  • adding methods for vectorized publishing of transforms #3954
  • fix thread-safety of add()
  • Re-add message filter test that was accidentally removed when the message notifier was deleted
  • Fix message filter in the case where messages are arriving faster than the update timer is running (exacerbated by rosbag play --clock not actually broadcasting the clock at 100hz). (#3810)
  • Tiny refactor for callerid->authority
  • #3942 testcase
  • Add doc for Transformer.clear
  • Missing initializer from TransformListener
  • New test test_cache_time
  • fixing quaternion checking and adding unittests #3758
  • review status #3776
  • tf: change_notifier now supports multiple frames; publishes tfMessages
  • passing basic tests for transformtwist
  • adding transformTwist method
  • all tests passing on lookupVelocity
  • tests for values calculated by hand
  • linear velocity to multiple other targets
  • expanding to all three dimentions and asserting others are zero
  • first cut velocity, basic test architecture layed out.
  • searchparam when publishing
  • noting deprecations better and changing frame_id to frame_name for unresolved
  • removing /tf_message since it's been deprecated
  • returning remap capability to remap #3602
  • inlining helper function
  • tf: changed manifest to have lower-case tf
  • comment
  • more documentation
  • adding helper function for getting tf_prefix
  • patches for tf_monitor to correctly display the chain, thanks for the help Sachin.
  • asserting that incoming frameids are resolved, currently at debug level as this is not fully implemented in othe code. This level will escalate slowly as compliance is increased #3169
  • not using my own deprecated function
  • more usage
  • tf_echo usage expanded
  • fixing typo in documentation
  • removing include of message_notifier
  • removing deprecated message_notifier #3046
  • removing deprecated data type and constructor #3046
  • removing deprecated sendTransform calls
  • fixing test for usage of deprecated APIs #3046
  • removing deprecated setTransform method #3046
  • removing deprecated lookupTransform methods #3046
  • removed deprecated canTransform method #3046
  • removing deprecated canTransform #3046
  • removing deprecated transform_sender #3046
  • removing deprecated transformStampedMsgToTF and transformStampedTFToMsg #3046
  • fixing startup race condition #3168
  • adding InvalidArgument exception for transformMethods, currently it only throws if w in quaternions are w <= 0 or w > 1 #3236
  • reving for release
  • commenting all velocity work for it's not ready to be released
  • adding in deprecated call which I removed accidentally
  • renaming tf::remap to tf::resolve as per #3190 with backwards compatability. Also Standardizing to only do searchparam at startup #3167
  • Switch MessageFilter back to using a Timer instead of a WallTimer, since the time-jumping is now fixed (#2430)
  • adding createQuaternionFromRPY method to help deprecation transition #2992
  • Added specific tes for quaternion types
  • Switching refernece frame and moving frame ordering for lookup transform call to actually be correct
  • adding test to the back
  • fixing lookupVelocity special cases for zero time
  • documention improvements
  • Doc clarifications
  • removing debugging
  • lookupVelocity Python first cut
  • transformVector3
  • switching tf_prefix to searchParam so you can set it for a whole namespace #2921
  • removing .py extension from script
  • simpler topic name
  • adding tf_remapping script to remap frame ids #870
  • fixing manifest loading to right package
  • uncommenting lookup velocity and fixing implementation
  • removing redundant angles package dependency #3334
  • Patch from #3337
  • fixing ~ usage
  • commenting out lookupvelocity while it's still not working for release of patches
  • angles needed for velocity lookup
  • Switch from to_seconds to to_sec, #3324
  • updating for 0.10 changes to python and hudson
  • fixing deprecated to_seconds call in tfwtf
  • merging 0.4x changes into trunk
  • a first trial of lookupVelocity
  • added createQuaternionMsgFromRollPitchYaw helper function
  • removing wait_for_transform_death test from default, for it doesn't work under release
  • switching to Release from Debug
  • fixing usage message of static_transform_sender
  • Warn about received messages with frame_ids that are not fully qualified, but resolve them locally
  • moving deprecation note to top of summary
    • Remap target frames (#3119)
    • Throw out messages immediately if they have an empty frame_id
  • fixing display of chain to show all links
  • documentation for #2072
  • fixing frequency output of tf_monitor
  • making remapping on send more consistent
  • removing unused variable
  • Doxygen comments for the failure reasons
  • Add a failure callback to tf::MessageFilter
  • fixing #2990 deprecated ~ call
  • update tf error strings. Still need review and user testing
  • notifier should subscribe to tf and tf_message
  • doc: updated setTransform to properly list child_frame_id
  • Doc clearer on exceptions
  • restoring caller_id to graph view in python
  • Set daemon on listener thread
  • better command line outputs
  • Removed turtlesim reference from python broadcaster
  • removing useages of deprecated bullet APIs
  • Add rosdoc to manifest
  • Fix build break
  • New Sphinx docs
  • changing display of legend to be above the tree
  • make output consistent with view frames
  • tweak output of tf_echo
  • tweek output of tf_echo
  • update output string
  • update output of view frames
  • make tf_echo wait for up to one second before throwing exceptions
  • Fixes for pytf: exception distinction, waitForTransform, threaded listener
  • Switch MessageFilter back to a WallTimer... shouldn't have been checked in with my last checkin
  • Remove last remnants of Node use
  • Fix compiler warnings
  • removing last warnings relating to #2477
  • tf monitor working, and a little bit cleaner display
  • fixing useage of ~ params
  • cleaning up tf_echo output
  • fixing warning
  • static_transform_publsher replacing transform_sender for backwards compatability, and fixing new StampedTransform
  • update tf description
  • remove extra / in method def. Ticket #2778
  • fixed deprecation of Stamped<> 4 constructor vs 3 constructor. and switched three usages #2477
  • converting transformPointCloud to use new StampedTransform #2477
  • fixing warnings related to #2477
  • internally switching to StampedTransform for #2477 cleanup
  • fixing usage of Stamped<Transform> to StampedTransform
  • switching Stamped<btTransform> to StampedTransform, deprecating usage, and changing all APIs to the new one with backwards compatabilty #2477. It's working but lots of warnings left to fix
  • removing warning
  • fixing deprecated function call usage
  • one less node API call
  • one less node usage
  • fixing urls for new server
  • Rename tf message from tf_message to tf. Listener is backwards compatible, broadcaster is not. See ticket #2381
  • migration part 1

Wiki Tutorials

This package does not provide any links to tutorials in it's rosindex metadata. You can check on the ROS Wiki Tutorials page for the package.

Dependant Packages

Name Deps
apriltag_ros
ar_track_alvar
arbotix_controllers
arbotix_python
aruco_ros
asr_cyberglove_visualization
asr_direct_search_manager
asr_fake_object_recognition
asr_flir_ptu_driver
asr_flock_of_birds
asr_flock_of_birds_tracking
asr_ftc_local_planner
asr_ism
asr_ism_visualizations
asr_mild_base_driving
asr_mild_base_fake_driving
asr_mild_base_laserscanner
asr_navfn
asr_next_best_view
asr_psm
asr_psm_visualizations
asr_recognizer_prediction_psm
asr_robot_model_services
asr_state_machine
asr_world_model
planner_qp
axis_camera
basler_tof
cis_camera
aruco_pose
clover
cob_helper_tools
cob_interactive_teleop
cob_script_server
scenario_test_tools
cob_base_controller_utils
cob_cartesian_controller
cob_collision_velocity_filter
cob_footprint_observer
cob_frame_tracker
cob_model_identifier
cob_obstacle_distance
cob_omni_drive_controller
cob_tricycle_controller
cob_twist_controller
cob_scan_unifier
cob_undercarriage_ctrl
cob_collision_monitor
cob_grasp_generation
cob_lookat_action
cob_moveit_bringup
cob_moveit_interface
cob_obstacle_distance_moveit
cob_linear_nav
cob_map_accessibility_analysis
cob_image_flip
cob_gazebo_tools
cob_gazebo_worlds
points_preprocessor
tf2_relay
cras_py_common
crazyflie_controller
crazyflie_driver
datmo
diagnostic_common_diagnostics
ensenso_camera_test
exotica_core
fanuc_post_processor
fetch_open_auto_dock
fiducial_msgs
find_object_2d
flexbe_core
flir_ptu_driver
frame_editor
franka_control
franka_example_controllers
freenect_launch
gazebo_plugins
gazebo_ros
generic_control_toolbox
geodesy
geometry
tf_conversions
test_tf2
test_tf2
turtle_tf
graft
grid_map_costmap_2d
grid_map_ros
grid_map_visualization
haf_grasping
hector_gazebo_plugins
hector_pose_estimation
hector_pose_estimation_core
message_to_tf
hector_sensors_description
hector_imu_attitude_to_tf
hector_imu_tools
hector_map_server
hector_mapping
hector_trajectory_server
heifu_mavros
heifu_simple_waypoint
heron_controller
heron_gazebo
hfl_driver
husky_bringup
ifm3d_ros_examples
imu_processors
imu_transformer
imu_complementary_filter
inertial_sense_ros
interactive_marker_twist_server
interactive_markers
ira_laser_tools
iris_lama_ros
collada_urdf_jsk_patch
respeaker_ros
jsk_footstep_controller
jsk_ik_server
jsk_teleop_joy
euscollada
checkerboard_detector
jsk_pcl_ros
jsk_pcl_ros_utils
jsk_perception
jsk_recognition_utils
roseus
jsk_interactive_marker
khi_duaro_moveit_config
khi_robot_bringup
khi_rs007l_moveit_config
khi_rs007n_moveit_config
khi_rs013n_moveit_config
khi_rs020n_moveit_config
khi_rs025n_moveit_config
khi_rs080n_moveit_config
kobuki_node
kobuki_gazebo_plugins
laser_assembler
map_laser
laser_filters
laser_geometry
leap_motion
leica_gazebo_simulation
leica_point_cloud_processing
lsm_localization
explore_lite
mapviz
mapviz_plugins
multires_image
tile_map
swri_geometry_util
swri_image_util
swri_transform_util
mavros_extras
microstrain_3dmgx2_imu
microstrain_inertial_examples
microstrain_inertial_rqt
tra1_bringup
tra1_description
mir_driver
mobile_robot_simulator
mocap_nokov
mocap_optitrack
mongodb_log
moose_control
mbf_abstract_nav
mbf_costmap_core
mbf_costmap_nav
mbf_simple_nav
mbf_utility
moveit_commander
pr2_moveit_plugins
pr2_planning_interface_tests
moveit_python
mrp2_slam
mrp2_hardware
nav2d_exploration
nav2d_karto
nav2d_localizer
nav2d_navigator
nav2d_operator
sbpl_lattice_planner
odometry_publisher_tutorial
robot_setup_tf_tutorial
simple_navigation_goals_tutorial
nearfield_map
nonpersistent_voxel_layer
novatel_gps_driver
novatel_span_driver
octomap_pa
octomap_ros
osm_cartography
ov_msckf
openni2_launch
openzen_sensor
orb_slam2_ros
oxford_gps_eth
p2os_driver
p2os_teleop
p2os_urdf
pass_through_controllers
pcdfilter_pa
face_detector
leg_detector
people_tracking_filter
dummy_slam_broadcaster
pcl_ros
pf_driver
pipeline_planner
pr2_position_scripts
pr2_teleop
pr2_teleop_general
pr2_arm_move_ik
pr2_head_action
pr2_mechanism_controllers
robot_mechanism_controllers
pr2_navigation_perception
pr2_navigation_self_filter
semantic_point_annotator
pr2_gazebo_plugins
rail_segmentation
razor_imu_9dof
rc_genicam_driver
rc_pick_client
rc_tagdetect_client
rc_visard_driver
ridgeback_control
ridgeback_gazebo_plugins
rslidar_driver
rslidar_pointcloud
robot_calibration
robot_controllers
dwb_local_planner
nav_2d_utils
nav_core_adapter
robot_one
robot_pose_ekf
robot_self_filter
robot_state_publisher
rsm_additions
rsm_core
rsm_rviz_plugins
robotont_gazebo
ackermann_steering_controller
diff_drive_controller
four_wheel_steering_controller
ros_numpy
rosbag_editor
roscompile
cl_tf
rosserial_client
rotors_gazebo_plugins
rqt_ez_publisher
rqt_nav_view
rqt_pose_view
rtabmap_ros
hrpsys_ros_bridge
hironx_ros_bridge
nextage_calibration
rviz
rxros_tf
laser_ortho_projector
laser_scan_matcher
ncd_parser
polar_scan_matcher
sciurus17_vision
seed_r7_gazebo
seed_r7_moveit_config
seed_r7_ros_controller
sick_ldmrs_driver
sick_ldmrs_tools
sick_scan
simple_grasping
gmapping
slam_karto
backward_global_planner
backward_local_planner
forward_global_planner
forward_local_planner
pure_spinning_local_planner
undo_path_global_planner
move_base_z_client_plugin
move_group_interface_client
sm_dance_bot
sm_dance_bot_2
sm_dance_bot_strikes_back
sm_viewer_sim
sr_utilities
hand_kinematics
sr_grasp_stability
stag_ros
stage_ros
static_tf
steering_functions
tf2_server
tf2_web_republisher
tf_remapper_cpp
trac_ik_python
turtlebot3_autorace_control
turtlebot3_autorace_detect
turtlebot3_fake
turtlebot3_gazebo
tuw_aruco
tuw_checkerboard
tuw_ellipses
tuw_marker_pose_estimation
tuw_nav_msgs
tuw_multi_robot_ctrl
tuw_multi_robot_router
tuw_voronoi_graph
ubiquity_motor
ublox_gps
underwater_vehicle_dynamics
uwsim
uos_freespace
ur_robot_driver
urg_node
uuv_assistants
uuv_control_cascaded_pid
uuv_thruster_manager
uuv_trajectory_control
uuv_sensor_ros_plugins
uuv_teleop
velo2cam_calibration
velodyne_gazebo_plugin
velodyne_driver
velodyne_pointcloud
velodyne_gazebo_plugins
vesc_ackermann
visp_tracker
visp_ros
osg_interactive_markers
osg_markers
osg_utils
rwt_moveit
rwt_nav
interactive_marker_tutorials
volksbot_driver
warehouse_ros
webots_ros
wifi_ddwrt
easy_markers
xpp_vis
xsens_driver
yocs_ar_pair_approach
yocs_diff_drive_pose_controller
yocs_localization_manager
yocs_math_toolkit
yocs_navi_toolkit
yocs_navigator
yocs_virtual_sensor
yocs_waypoints_navi
yujin_yrl_package
z_laser_viz

Recent questions tagged tf at Robotics Stack Exchange