pose_subscriber.cpp #include<ros/ros.h>#include "turtlesim/Pose.h"void poseCallback(const turtlesim::Pose::ConstPtr& msg){ ROS_INFO("Turtle pose: x:%0.6f,y:%0.6f",msg->x,msg->y);}int main(int argc,char痴情的书包argv){ ros::init(argc,argv,"pose_subscriber"); ros::NodeHandle n; ros::Subscriber pose_sub=n.subscribe("/turtle1/pose",10,poseCallback); ros::spin(); return 0;} vim src/learning_topic/CMakeLists.txt
在CMakelists.txt中添加
add_executable(pose_subscriber src/pose_subscriber.cpp)target_link_libraries(pose_subscriber ${catkin_LIBRARIES})jddxg
cd ~/catkin_ws/source devel/setup.bashcatkin_make欢呼的黄豆
roscorerosrun turtlesim turtlesim_noderosrun learning_topic pose_subscriber Python #!/usr/bin/env pythonimport rospyfrom turtlesim.msg import Posedef poseCallback(msg): rospy.loginfo("Turtle pose: X:%0.6f,y:%0.6f",msg.x,msg.y)def pose_subscriber(): rospy.init_node('pose_subscriber',anonymous=True) rospy.Subscriber("/turtle1/pose",Pose,poseCallback) rospy.spin()if __name__=='__main__': pose_subscriber()欢呼的黄豆
roscorerosrun turtlesim turtlesim_noderosrun learning_topic pose_subscriber.py