Inheritance diagram for web_controller.main.WebVisualizerNode:
Collaboration diagram for web_controller.main.WebVisualizerNode:Public Member Functions | |
| def | __init__ (self, viser.ViserServer server, Path mesh_path, float pub_targets_period) |
| def | odom_callback (self, Odometry msg) |
| def | target_callback (self, Targets msg) |
| def | camera_callback (self, Image msg, viser.ImageHandle view) |
| def | update_robot (self, pos, orient) |
| def | update_trajectory (self, pos) |
| def | update_plots (self) |
| def | clear_trajectory (self) |
| def | set_targets (self) |
| def | toggle_publishing (self) |
| def | publish_target (self) |
| def | front_camera_callback (self, Image msg) |
| def | bottom_camera_callback (self, Image msg) |
Protected Member Functions | |
| def | _setup_3d_scene (self) |
| def | _setup_gui (self) |
| def | _setup_ros_communication (self) |
| def | _init_plot_data (self) |
A ROS2 node that creates a web-based visualizer for a robot using Viser.
| def web_controller.main.WebVisualizerNode.__init__ | ( | self, | |
| viser.ViserServer | server, | ||
| Path | mesh_path, | ||
| float | pub_targets_period | ||
| ) |
|
protected |
Returns an empty dictionary to store plot data.
|
protected |
Initializes the 3D scene in Viser, including the robot mesh and camera views.
|
protected |
Creates all GUI elements in Viser.
|
protected |
Initializes ROS2 publishers and subscribers.
| def web_controller.main.WebVisualizerNode.bottom_camera_callback | ( | self, | |
| Image | msg | ||
| ) |
| def web_controller.main.WebVisualizerNode.camera_callback | ( | self, | |
| Image | msg, | ||
| viser.ImageHandle | view | ||
| ) |
Generic callback to convert ROS Image to numpy and update a Viser view.
| def web_controller.main.WebVisualizerNode.clear_trajectory | ( | self | ) |
| def web_controller.main.WebVisualizerNode.front_camera_callback | ( | self, | |
| Image | msg | ||
| ) |
| def web_controller.main.WebVisualizerNode.odom_callback | ( | self, | |
| Odometry | msg | ||
| ) |
Callback for receiving odometry data and updating the visualizer.
| def web_controller.main.WebVisualizerNode.publish_target | ( | self | ) |
Publish targets as a ROS2 message.
| def web_controller.main.WebVisualizerNode.set_targets | ( | self | ) |
Reads target values from the GUI
| def web_controller.main.WebVisualizerNode.target_callback | ( | self, | |
| Targets | msg | ||
| ) |
Callback for receiving target data for plotting.
| def web_controller.main.WebVisualizerNode.toggle_publishing | ( | self | ) |
Starts or stops the periodic publishing of target values.
| def web_controller.main.WebVisualizerNode.update_plots | ( | self | ) |
Updates the line plots in Viser with current data.
| def web_controller.main.WebVisualizerNode.update_robot | ( | self, | |
| pos, | |||
| orient | |||
| ) |
| def web_controller.main.WebVisualizerNode.update_trajectory | ( | self, | |
| pos | |||
| ) |
| web_controller.main.WebVisualizerNode.bottom_cam_sub |
| web_controller.main.WebVisualizerNode.bottom_cam_view |
| web_controller.main.WebVisualizerNode.bridge |
| web_controller.main.WebVisualizerNode.front_cam_sub |
| web_controller.main.WebVisualizerNode.front_cam_view |
| web_controller.main.WebVisualizerNode.gui_target_orient |
| web_controller.main.WebVisualizerNode.gui_target_posi |
| web_controller.main.WebVisualizerNode.gui_z_type |
| web_controller.main.WebVisualizerNode.is_publishing_targets |
| web_controller.main.WebVisualizerNode.lock |
| web_controller.main.WebVisualizerNode.MAX_DATAPOINTS |
| web_controller.main.WebVisualizerNode.mesh_path |
| web_controller.main.WebVisualizerNode.odom_data |
| web_controller.main.WebVisualizerNode.odom_subscriber |
| web_controller.main.WebVisualizerNode.pub_targets_period |
| web_controller.main.WebVisualizerNode.publish_button |
| web_controller.main.WebVisualizerNode.publish_timer |
| web_controller.main.WebVisualizerNode.robot |
| web_controller.main.WebVisualizerNode.server |
| web_controller.main.WebVisualizerNode.set_targets_button |
| web_controller.main.WebVisualizerNode.target_buffer |
| web_controller.main.WebVisualizerNode.target_publisher |
| web_controller.main.WebVisualizerNode.target_subscriber |
| web_controller.main.WebVisualizerNode.targets |
| web_controller.main.WebVisualizerNode.targets_data |
| web_controller.main.WebVisualizerNode.trajectory |
| web_controller.main.WebVisualizerNode.trajectory_clear_button |
| web_controller.main.WebVisualizerNode.trajectory_colors |
| web_controller.main.WebVisualizerNode.trajectory_points |