Creating the listener in each call to the function means it will never have any tf data in it.  You need to create it somewhere long-lasting and pass it in to the function.

Josh

On Fri, Oct 22, 2010 at 4:51 PM, Daniel Chavez <dchavez@stanford.edu> wrote:

I'm having some trouble getting TF to convert a point from /base_link frame
to /map frame.  I made a function for it, shown below, based on code in the
TF tutorials:

geometry_msgs::PointStamped baseToMapFrame(geometry_msgs::PointStamped p)
{
       tf::TransformListener TFlistener(ros::Duration(1.0));  //Used for
listening to transforms
       geometry_msgs::PointStamped q;
       try{
               ros::Time now = ros::Time::now();
               geometry_msgs::PointStamped p,q;
               p.header.frame_id = "/base_link";
               p.header.stamp = ros::Time(0);
               TFlistener.transformPoint("/map",p,q);
       } catch (tf::TransformException ex){
           ROS_ERROR("%s",ex.what());
      }
       return q;
}

The error message I get when running is:

[ERROR] [1287786203.075208516, 13.800000000]: Frame id /map does not exist!
When trying to transform between /base_link and /map.

This is even after initializing the map frame with AMCL.  Strangely, if I do
tf_echo to see if TF knows this conversion, I get:

$ rosrun tf tf_echo /map /base_link
Failure at 75.200000000
Exception thrown:Frame id /map does not exist! When trying to transform
between /base_link and /map.
The current list of frames is:

At time 76.100
- Translation: [46.885, 45.869, 0.000]
- Rotation: in Quaternion [0.000, 0.000, 1.000, -0.022]
           in RPY [0.000, -0.000, -3.097]
At time 77.200
- Translation: [46.885, 45.869, 0.000]
- Rotation: in Quaternion [0.000, 0.000, 1.000, -0.022]
           in RPY [0.000, -0.000, -3.097]


Any thoughts on what might be happening?  It seems that tf_echo fails on the
first try but succeeds later on.

Help is appreciated.
--
View this message in context: http://ros-users.122217.n3.nabble.com/Trouble-converting-points-with-TF-tp1755749p1755749.html
Sent from the ROS-Users mailing list archive at Nabble.com.
_______________________________________________
ros-users mailing list
ros-users@code.ros.org
https://code.ros.org/mailman/listinfo/ros-users