00001 # transform_graph 00002 00003 [![Build Status](https://travis-ci.org/jstnhuang/transform_graph.svg?branch=indigo-devel)](https://travis-ci.org/jstnhuang/transform_graph) 00004 [![Coverage Status](https://coveralls.io/repos/github/jstnhuang/transform_graph/badge.svg?branch=indigo-devel)](https://coveralls.io/github/jstnhuang/transform_graph?branch=indigo-devel) 00005 00006 - [ROS wiki](https://wiki.ros.org/transform_graph) 00007 - [Code API](https://docs.ros.org/indigo/api/transform_graph/html/) 00008 00009 `transform_graph` is a library that computes transformations betweens arbitrary frames in a graph of transformations. 00010 See the generated documentation for details. 00011 00012 Basic example: 00013 ```cpp 00014 #include "transform_graph/transform_graph.h" 00015 00016 transform_graph::Graph graph; 00017 graph.Add("wrist", transform_graph::RefFrame("base_link"), wrist_pose_stamped); 00018 graph.Add("kinect", transform_graph::RefFrame("base_link"), kinect_pose_stamped); 00019 00020 // Find out if a point in the frame of the Kinect is near the wrist. 00021 pcl::PointXYZ point_in_kinect = ...; 00022 transform_graph::Position point_in_wrist; 00023 graph.DescribePosition(point_in_kinect, transform_graph::Source("kinect"), transform_graph::Target("wrist"), &point_in_wrist); 00024 if (point_in_wrist.vector().norm() < 0.05) { 00025 ... 00026 } 00027 ```