1.标记:发送基本形状(C ++)
Description: Shows how to use visualization_msgs/Marker messages to send basic shapes (cube, sphere, cylinder, arrow) to rviz.
与其他显示不同,标记显示(Marker Display)让您rviz可视化数据,而无需rviz知道有关这些数据的解释。相反,原始对象是通过visualization_msgs/标记的邮件发送到显示器,这让你展现的东西似箭,盒子,球体和线路。
在开始之前,让我们在你的程序包路径创建一个临时包名为using_markers,
4.1代码
粘贴以下到的src / basic_shapes.cpp:
https://raw.github.com/ros-visualization/visualization_tutorials/indigo-devel/visualization_marker_tutorials/src/basic_shapes.cpp
Description: Shows how to use visualization_msgs/Marker messages to send basic shapes (cube, sphere, cylinder, arrow) to rviz.
说明:演示如何使用visualization_msgs/标记的邮件发送基本形式(立方体,球体,圆柱体,箭头)rviz。
与其他显示不同,标记显示(Marker Display)让您rviz可视化数据,而无需rviz知道有关这些数据的解释。相反,原始对象是通过visualization_msgs/标记的邮件发送到显示器,这让你展现的东西似箭,盒子,球体和线路。
本教程将告诉您如何发送的四个基本形式(盒,球体,圆柱体和箭头)。我们将创建一个每一秒散发出新的标记的程序,用不同形状替换最后一个。
在开始之前,让我们在你的程序包路径创建一个临时包名为using_markers,
catkin_create_pkg using_markers roscpp visualization_msgs地方:
4.1代码
粘贴以下到的src / basic_shapes.cpp:
https://raw.github.com/ros-visualization/visualization_tutorials/indigo-devel/visualization_marker_tutorials/src/basic_shapes.cpp
30 #include <ros/ros.h>
31 #include <visualization_msgs/Marker.h>
32
33 int main( int argc, char** argv )
34 {
35 ros::init(argc, argv, "basic_shapes");
36 ros::NodeHandle n;
37 ros::Rate r(1);
38 ros::Publisher marker_pub = n.advertise<visualization_msgs::Marker>("visualization_marker", 1);
39
40 // Set our initial shape type to be a cube 初始化形状为立方体
41 uint32_t shape = visualization_msgs::Marker::CUBE;
42
43 while (ros::ok())
44 {
45 visualization_msgs::Marker marker;
46 // Set the frame ID and timestamp. See the TF tutorials for information on these.