Rosanswers logo

Hi, I am trying to get data from ar_pose_markers. I am running the package and I see the topic is refreshing with new data. I am using ar_tools and usb_cam.

I have to make a node that subscribe to this topic and it able to extract the information. I am subscribing to the topic but I can extract the position. This code give me a number but is the same number all the time.

The node code is the following one

#include "ros/ros.h"
#include "std_msgs/String.h"
#include <ar_pose/ARMarkers.h>

int yo=10;
int zo;
int i=0;
void ar_pose_markerCallback(const ar_pose::ARMarkers::ConstPtr& msg)
float xo=0;
ROS_INFO("hello world");
ar_pose::ARMarker ar_pose_marker;
ROS_INFO("%d", xo);


int main(int argc, char **argv)
ROS_INFO("hello world");
ros::init(argc, argv, "node_sub");
ros::NodeHandle n;
ros::Rate loop_rate(1);
ros::Subscriber sub = n.subscribe("ar_pose_marker", 1, ar_pose_markerCallback);
while (ros::ok())



} return 0; }

Originally posted by jsoley on ROS Answers with karma: 1 on 2017-03-24

Post score: 0

Original comments

Comment by nlamprian on 2017-03-24:
Notice how you are not assigning anything with the received message msg.

Comment by saikishor on 2017-03-25:
Yes!!! You are not using the message at all!!! You have just declared a variable with that type of message. Now, you try using the msg.

Comment by saikishor on 2017-03-29:
Use this "msg->markers[0]" to fetch data in the function.


1 Answer 1


Rosanswers logo

Man, like they say, use the msg to get the topic information. I can provide you some notes if you want.

Originally posted by Brijesh GM with karma: 16 on 2017-03-25

This answer was ACCEPTED on the original site

Post score: 0


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.