RViz2 tools for route graph visualization and editing, compatible with ROS2 Humble.
This package provides an RViz2 panel plugin for creating, editing, and visualizing route graphs. It allows you to:
- Add/edit/remove nodes (waypoints)
- Add/edit/remove edges (connections between nodes)
- Save/load graphs in GeoJSON format
- Visualize graphs with markers in RViz2
- Node Management: Create nodes by clicking points in RViz2 or entering coordinates manually
- Edge Management: Connect nodes with directed edges
- Visual Feedback: Nodes displayed as green spheres, edges as blue arrows
- GeoJSON Support: Save and load route graphs in standard GeoJSON format
- Interactive: Click points in RViz2 to automatically populate coordinate fields
This package is designed for ROS2 Humble. Build it in your workspace:
cd ~/ros2_ws
colcon build --packages-select nav_route_rviz_tools --symlink-install
source install/setup.bashros2 launch nav_route_rviz_tools route_tool.launch.pyOr manually add the panel to RViz2:
- Open RViz2
- Go to Panels → Add New Panel
- Select "nav_route_rviz_tools/Route Tool"
-
Add Nodes:
- Select "Node" radio button in the Add tab
- Click "Publish Point" tool in RViz2 and click on the map, OR
- Enter X, Y coordinates manually
- Click "Create" button
-
Add Edges:
- Select "Edge" radio button in the Add tab
- Enter Start Node ID and End Node ID
- Click "Create" button
-
Edit Nodes/Edges:
- Go to Edit tab
- Enter the ID of the node/edge to edit
- Enter new values
- Click "Confirm" button
-
Remove Nodes/Edges:
- Go to Remove tab
- Enter the ID to remove
- Click "Delete" button
-
Save/Load:
- Click "Save" to export graph to GeoJSON file
- Click "Load" to import graph from GeoJSON file
- ROS2 Humble
- rclcpp
- rviz_common
- rviz_default_plugins
- nav2_util
- Qt5
- geometry_msgs
- visualization_msgs
- tf2_ros
Apache License 2.0
Based on nav2_rviz_plugins from Nav2 project (Jazzy branch), adapted for Humble compatibility.