/slam_toolbox/update

Caution

This documentation page has been auto-generated.

It may be missing some details.

/slam_toolbox/update Quick Facts

Category

🧭 Navigation

Message type

visualization_msgs/msg/InteractiveMarkerUpdate

Direction

⬅️ you normally publish to this topic.

Visualize the graph in RViz and allows the user to apply changes in the position of the graph’s nodes.

Quick snippets

Publish data on the topic
$ ros2 topic pub /slam_toolbox/update visualization_msgs/msg/InteractiveMarkerUpdate # press Tab twice to complete

How to use in your code

Publish to the topic
 1#!/usr/bin/env python
 2
 3import rclpy
 4from rclpy.node import Node
 5
 6from visualization_msgs.msg import InteractiveMarkerUpdate
 7
 8
 9class UpdatePublisher(Node):
10
11    def __init__(self):
12        super().__init__('slam_toolbox_update_publisher')
13        self.publisher = self.create_publisher(
14            InteractiveMarkerUpdate,
15            '/slam_toolbox/update',
16            10)
17        timer_period = 0.5  # seconds
18        self.timer = self.create_timer(timer_period, self.timer_callback)
19
20    def timer_callback(self):
21
22        msg = InteractiveMarkerUpdate()
23
24        # check https://docs.ros2.org/latest/api/visualization_msgs/msg/InteractiveMarkerUpdate.html
25        # for the msg structure
26        # msg.data = ...
27
28        self.publisher.publish(msg)
29        self.get_logger().info('Publishing: "%s"' % msg.data)
30
31
32if __name__ == '__main__':
33    rclpy.init(args=args)
34
35    publisher = UpdatePublisher()
36
37    rclpy.spin(publisher)
38
39    rclpy.shutdown()