10 #include <visualization_msgs/Marker.h> 11 #include <visualization_msgs/MarkerArray.h> 12 #include <tf2_geometry_msgs/tf2_geometry_msgs.h> 13 #include <tf2/LinearMath/Vector3.h> 22 marker.header.frame_id = common_args.
frame_id;
23 marker.header.stamp = common_args.
stamp;
24 marker.ns = common_args.
ns;
25 marker.lifetime = common_args.
duration;
32 visualization_msgs::Marker marker;
34 marker.color = common_args.
color;
35 marker.scale.x = diameter;
36 marker.scale.y = diameter;
37 marker.scale.z = diameter;
39 marker.type = visualization_msgs::Marker::SPHERE_LIST;
40 marker.action = visualization_msgs::Marker::ADD;
47 float thickness,
const MarkerArgs &common_args)
49 visualization_msgs::Marker marker;
51 marker.color = common_args.
color;
53 marker.type = visualization_msgs::Marker::LINE_LIST;
54 marker.action = visualization_msgs::Marker::ADD;
56 geometry_msgs::Point p;
60 marker.points.emplace_back(p);
64 marker.points.emplace_back(p);
66 marker.scale.x = thickness;
75 visualization_msgs::Marker marker;
77 marker.color = common_args.
color;
78 marker.scale.x = thickness;
80 marker.type = visualization_msgs::Marker::LINE_LIST;
81 marker.action = visualization_msgs::Marker::ADD;
90 visualization_msgs::Marker marker;
92 marker.color = common_args.
color;
94 marker.type = visualization_msgs::Marker::CYLINDER;
95 marker.action = visualization_msgs::Marker::ADD;
97 marker.pose.position.x = p.getX();
98 marker.pose.position.y = p.getY();
99 marker.pose.position.z = p.getZ();
101 marker.scale.x = diameter;
102 marker.scale.y = diameter;
103 marker.scale.z = height;
111 visualization_msgs::Marker marker;
113 marker.color = common_args.
color;
115 marker.type = visualization_msgs::Marker::TRIANGLE_LIST;
116 marker.action = visualization_msgs::Marker::ADD;
128 visualization_msgs::Marker marker;
130 marker.color = common_args.
color;
132 marker.type = visualization_msgs::Marker::TRIANGLE_LIST;
133 marker.action = visualization_msgs::Marker::ADD;
144 tf2::Vector3 p3, tf2::Vector3 p4,
const MarkerArgs &common_args)
146 visualization_msgs::Marker marker;
148 marker.color = common_args.
color;
150 marker.type = visualization_msgs::Marker::TRIANGLE_LIST;
151 marker.action = visualization_msgs::Marker::ADD;
153 marker.points.reserve(6);
154 geometry_msgs::Point point;
156 marker.points.emplace_back(tf2::toMsg(p1, point));
157 marker.points.emplace_back(tf2::toMsg(p2, point));
158 marker.points.emplace_back(tf2::toMsg(p4, point));
160 marker.points.emplace_back(tf2::toMsg(p2, point));
161 marker.points.emplace_back(tf2::toMsg(p3, point));
162 marker.points.emplace_back(tf2::toMsg(p4, point));
164 std_msgs::ColorRGBA color;
169 marker.colors.resize(2, color);
170 marker.color.a = 1.0;
181 unsigned int n = array.markers.size();
183 for (
unsigned int i = 0; i <
n; i++) {
184 array.markers[i].id = i;
visualization_msgs::Marker rviz_marker_line(float thickness, const MarkerArgs &common_args)
Creates a blank Rviz marker to display lines.
Arguments used to create a Rviz maker.
ros::Time stamp
Time stamp for the ROS message.
void pop_marker_ids(visualization_msgs::MarkerArray &array)
Populates id of all the markers in a marker array.
std::string frame_id
Frame in which position/orientation of the object is.
Declaration of common Rviz display functions.
visualization_msgs::Marker rviz_marker_rect(const MarkerArgs &common_args)
Creates a blank Rviz marker to display rectangles.
visualization_msgs::Marker rviz_marker_cylinder(tf2::Vector3 p, float diameter, float height, const MarkerArgs &common_args)
Creates a Rviz marker to display a cylinder.
void fill_marker_header(visualization_msgs::Marker &marker, const MarkerArgs &common_args)
Fill header of marker.
visualization_msgs::Marker rviz_marker_triangles(const MarkerArgs &common_args)
Creates a blank Rviz marker to display triangles.
ros::Duration duration
Duration of the marker (in sec)
visualization_msgs::Marker rviz_marker_spheres(float thickness, const MarkerArgs &common_args)
Creates a blank Rviz marker to display spheres.
std::string ns
Namespace for the Rviz marker.
std_msgs::ColorRGBA color
Color of the marker.