![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.0.3 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | foxy-devel |
Last Updated | 2021-12-13 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.0.3 (2021-12-13)
- Make sure to add all dependencies to the package.xml (#209) (#214)
- Backport Fix faulty templated constructor (#213)
- Contributors: Vatan Aksoy Tezer, Chris Lalancette
4.0.2 (2021-10-07)
- Add pluginlib dependency. (#203)
- Re-enable RemoteControl functionality
(#204)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Rename node_executable to executable (#201)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.0.1 (2021-09-14)
- Remove executor namespace from rclcpp (#190)
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Create LICENSE (#183)
- Contributors: Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
- Normalize interactive marker quaternions. (#132)
- normalize before publish (#131)
- New helper function getIdentityPose() (#122)
- For ABCD planes: better comments, ensure the plane equation is satisfied. (#120) Co-Authored-By: Henning Kayser <<henningkayser@picknik.ai>>
- Make [rviz_visual_tools]{.title-ref} publish triangle mesh and
[tf_visual_tools]{.title-ref} clean published transforms
(#117)
- Add [clearAllTransform]{.title-ref} method to tf_visual_tools
- Add new function to publish mesh marker from triangles and vertices
- Publish plane from Ax+By+Cz+D=0 equation (#119)
- Fixed publishCylinder namespace (#109)
- Remove default arguments to make function calls not ambiguous (#112)
- Initialize quaternions in demo to avoid warning (#111)
- Fix node type in demo launch files (#110)
- Use LOGNAME for logging re:moveit styel (#106)
- Contributors: AndyZe, Bjar Ne, Dave Coleman, Jafar Abdi, Mike Lautman, Mori, MoriKen, Nathan Brooks, Sean Yen, Victor Lamoine, Yu Yan, d-walsh, hshose
3.7.0 (2018-11-26)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 3.6.0 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/davetcoleman/rviz_visual_tools.git |
VCS Type | git |
VCS Version | kinetic-devel |
Last Updated | 2019-02-23 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Dave Coleman
Authors
- Dave Coleman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
Install
Ubuntu Debian
sudo apt-get install ros-kinetic-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro kinetic
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
roslaunch rviz_visual_tools demo_rviz.launch
Then start demo:
roslaunch rviz_visual_tools demo.launch
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.h>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers"));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Affine3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
// Publish arrow vector of pose
ROS_INFO_STREAM_NAMED("test","Publishing Arrow");
visual_tools_->publishArrow(pose, rviz_visual_tools::RED, rviz_visual_tools::LARGE);
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
3.6.0 (2018-01-15)
- Addresses Issue #49 - Default Constructor Not Nodelet Friendly
- Added option to pass in a node handle in the constructor that defaults to
- Reset marker should publish initialized quaternion
- Improve code quality - add const, static, C++11 features, clang-format
- Create demo executable for IMarkerSimple
- Improve memory efficiency of functions
- Contributors: Dave Coleman, Geoffrey Chiou, Victor Lamoine
3.5.1 (2017-12-25)
- Normalize quaternion before storage
- Fix for ambiguous function call to publishAxis
- Add linking to visualization tools library for imarker_simple
- Added arrow pub to take two points
- Document clang-tidy
- catkin lint
- roslint applied
- Clang-format again
- Clang-tidy ALL
- C++11 optimizations
- Fix deprecated calls to convertFromXYZRPY
- Add new convertPoseSafe() function
- New convertFromXYZRPY() function to avoid deprecation warning
- Allow to enable frame locking in the markers/markers arrays
- Update license year
- IMarkerSimple: set name and pose
- New printTransformFull() function
- Removed deprecated warning
- New class for easily using 6dof imarkers
- More options to tf_visual_tools
- Update README.md
- Contributors: Andy McEvoy, Dave Coleman, Fadri Furrer, Victor Lamoine
3.4.1 (2017-06-20)
- Add dependency on QT5 for Ubuntu Zesty/Lunar support
- Allow publishPath with std_msgs::ColorRGBA
- Make INFO msg DEBUG
- Contributors: Dave Coleman, Victor Lamoine
3.4.0 (2016-11-02)
- Consolidated publishing into RemoteReciever class
- Improve console output
- Add RvizGui and KeyTool
- Enable remote control from withing rviz_visual_tools
- New publishPath() function
- Shorten number of lines printTranslation() requires
- Contributors: Dave Coleman
3.3.0 (2016-09-28)
- BREAKING CHANGE: Make batch publishing enabled by default
- Removed enableInternalBatchPublishing()
- Removed triggerInternalBatchPublishAndDisable()
- Deprecated triggerBatchPublish() in favor of function name trigger()
- Deprecated triggerBatchPublishAndDisable()
- Ability to trigger every x markers that are in queue, ideal in for loops
- New waitForMarkerPub() function that takes timeout
- Add std::move
- Added Docker for Kinetic
- Added delay to demo to allow rviz to load in Docker
- Change the sphere marker type from SPHERE_LIST to SPHERE - This makes irregularly scaled spheres (i.e. ellipsoids) to be rendered correctly.
- Contributors: Dave Coleman, Miguel Prada
3.2.0 (2016-07-14)
- Catkin depend on eigen and tf conversions
- New warning
- Added EulerConvention enum
- Added new convertFromXYZRPY() function
- Added new tests
- Contributors: Dave Coleman, Enrique Fernandez
3.1.0 (2016-07-06)
- Switched publishPath() to use cylinders
- Added new publishLineStrip() function
- Added new publishPath() functions
- Added new publishAxis() functions
- Update screenshot
- Broke publishPath() API for recent addition - incorrect Eigen vector used
- New publishPath() function for Affine3d
- New publishAxis() functions that use scale
- New publishAxisInternal() function for more efficient publishing
- New publishAxisPath() function for showing a series of coordinate axis
- Added warning for batch publishing when not enabled
- Bug fix in publishLines() for id incrementing
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
rostest | |
rosunit | |
rviz | |
sensor_msgs | |
eigen_conversions | |
geometry_msgs | |
roscpp | |
tf_conversions | |
visualization_msgs | |
graph_msgs | |
std_msgs | |
trajectory_msgs | |
roslint | |
eigen_stl_containers |
System Dependencies
Name |
---|
libqt5x11extras5-dev |
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools |
Launch files
- launch/demo.launch
-
- debug [default: false]
- launch/demo_combined.launch
-
- debug [default: false]
- launch/demo_rviz.launch
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.2.0 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/davetcoleman/rviz_visual_tools.git |
VCS Type | git |
VCS Version | jade-devel |
Last Updated | 2016-08-06 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Dave Coleman
- Andy McEvoy
Authors
- Dave Coleman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class, or ompl_visual_tools if you are an OMPL ROS user.
This package includes:
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
Install
Ubuntu Debian
sudo apt-get install ros-jade-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro jade
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
roslaunch rviz_visual_tools demo_rviz.launch
Then start demo:
roslaunch rviz_visual_tools demo.launch
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.h>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers"));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Affine3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
// Publish arrow vector of pose
ROS_INFO_STREAM_NAMED("test","Publishing Arrow");
visual_tools_->publishArrow(pose, rviz_visual_tools::RED, rviz_visual_tools::LARGE);
Basic Publishing Functions
See visual_tools.h
for more details and documentation on the following functions:
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
2.2.0 (2016-04-28)
- Created much better demo, added new screenshot
- Numbered colors so that they can be matched in OMPL
- New publishLine() function variants
- Psychedelic mode
- Prevent publishing empty marker arrays
- Improved warning and error correction
- New publishSphere function
- Ability to set marker topic after constructor
- Ability to force waiting for topic to connect
- Added new posesEqual() function
- Updated publishArrow() function
- New publishPath function
- New publishLine function
- New publishCylinder that accepts two points
- New publishText function
- Removed redundant namespace names
- New convertPointToPose function
- Reduced output
- Renamed line_marker_ to line_strip_marker_
- Faster method for waiting for subscriber thread
- Untested publishPath() modification
- Fix to correctly use optional alpha color property
- Change getColorScale to work from 0->1 instead of 0->100
- Additional parameters to publishCuboid()
- New color scale function for generated interpolated colors from RED->GREEN (1->100)
- Contributors: Dave Coleman
2.1.0 (2016-02-09)
- Allow publishArrow functions to specify ID
- Contributors: Dave Coleman
2.0.3 (2016-01-10)
- Renamed test to demo
- Fix bug in random number generator
- Noted a TODO
- Documentation
- Contributors: Dave Coleman
2.0.2 (2015-12-27)
- Formatting
- Removed unused var
- roslint fixes
- Contributors: Dave Coleman
2.0.1 (2015-12-05)
- catkin lint cleanup
- Updated travis badge
- Updated README
- Contributors: Dave Coleman
2.0.0 (2015-12-02)
- Updated README
- Add badges
- Default true for enableBatchPublishing()
- Renamed convertXYZRPY() to convertFromXYZRPY()
- Changed roll pitch yall convention (fix)
- Added preliminary unit tests
- Hide include dependencies
- New convertToXYZRPY function
- Decrease wait time for topics to subscribe
- New publishSphere and publishArrow functions
- Added new thread safe pose conversion function
- Auto format with clang
- New publishSphere with frame_id function
- New print transform functions
- Fixed RPY error
- New convert Affine3d to roll pitch yaw function
- New tf_visual_tools functionality to help debug transforms
- New parameter server isEnabled feature
- Add id for wireframe cuboids
- Namespaced publishWireframeCuboid
- Helper function for publishAxisLabeled
- New getBoolMap() function
- New convertXYZRPY() function
- Fix warnings
- Fixed yellow
- Fix internal publish bug
- Check for empty parameter
- New delayed publishing internal mode
- added publishCuboid function for Eigen::Affine3d
- New string vector param reading
- added publishCuboid function for Eigen::Affine3d
- Show whole param path
- Added publish plane and cone
- Renamed to publishAxisLabled()
- New publishWireframeRectangle function
- Fixed publishZArrow direction
- New publishAxisWithLabel() function
- Removed mute functionality
- New publishWireframeRectangle() function
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
eigen_conversions | |
geometry_msgs | |
roscpp | |
tf_conversions | |
visualization_msgs | |
graph_msgs | |
std_msgs | |
trajectory_msgs | |
cmake_modules | |
roslint | |
catkin | |
rostest | |
rosunit |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
tf_keyboard_cal |
Launch files
- launch/demo.launch
-
- debug [default: false]
- launch/demo_combined.launch
-
- debug [default: false]
- launch/demo_rviz.launch
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 2.3.1 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/davetcoleman/rviz_visual_tools.git |
VCS Type | git |
VCS Version | indigo-devel |
Last Updated | 2017-11-13 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Dave Coleman
- Andy McEvoy
Authors
- Dave Coleman
Rviz Visual Tools
Helper functions for displaying and debugging data in Rviz via published markers.
This package includes:
- Basic geometric markers for Rviz
- A tf publishing helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and others.
Install
Ubuntu Debian
sudo apt-get install ros-indigo-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro indigo
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
roslaunch rviz_visual_tools demo_rviz.launch
Then start demo:
roslaunch rviz_visual_tools demo.launch
Or used combined roslaunch file:
roslaunch rviz_visual_tools demo_combined.launch
Code API
See VisualTools Class Reference
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/visual_tools.h>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::VisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::VisualTools("base_frame","/rviz_visual_markers"));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Affine3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
// Publish arrow vector of pose
ROS_INFO_STREAM_NAMED("test","Publishing Arrow");
visual_tools_->publishArrow(pose, rviz_visual_tools::RED, rviz_visual_tools::LARGE);
Basic Publishing Functions
See visual_tools.h
for more details and documentation on the following functions:
- publishSphere
- publishSpheres
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
2.3.1 (2016-08-06)
- Clarified docs
- Contributors: Dave Coleman
2.3.0 (2016-08-06)
- Added Docker for Indigo
- Added delay to demo to allow rviz to load in Docker
- Change the sphere marker type from SPHERE_LIST to SPHERE. (#47) This makes irregularly scaled spheres (i.e. ellipsoids) to be rendered correctly.
- Contributors: Dave Coleman, Miguel Prada
2.2.1 (2016-07-14)
- Latched publisher
- publishAxisLabeled arguments
- publishAxisLabeled arguments order
- Remove TODO msg
- Adds Publish Labeled Axis
- Numbered colors so that they can be matched in OMPL
- New publishLine() function variants
- Psychedelic mode
- Prevent publishing empty marker arrays
- Improved warning and error correction
- New publishSphere function
- Hide debug message
- Ability to set marker topic after constructor
- Ability to force waiting for topic to connect
- Added new posesEqual() function
- Updated publishArrow() function
- New publishPath function
- New publishLine function
- New publishCylinder that accepts two points
- New publishText function
- Removed redundant namespace names
- New convertPointToPose function
- README
- Created much better demo, added new screenshot
- Reduced output
- Renamed line_marker_ to line_strip_marker_
- Faster method for waiting for subscriber thread
- Untested publishPath() modification
- Fix to correctly use optional alpha color property
- Change getColorScale to work from 0->1 instead of 0->100
- Additional parameters to publishCuboid()
- New color scale function for generated interpolated colors from RED->GREEN (1->100)
- Contributors: Dave Coleman, Enrique Fernandez, Naveed Usmani
2.1.0 (2016-02-09)
- Allow publishArrow functions to specify ID
- Contributors: Dave Coleman
2.0.3 (2016-01-10)
- Renamed test to demo
- Fix bug in random number generator
- Noted a TODO
- Documentation
- Contributors: Dave Coleman
2.0.2 (2015-12-27)
- Formatting
- Removed unused var
- roslint fixes
- Contributors: Dave Coleman
2.0.1 (2015-12-05)
- catkin lint cleanup
- Updated travis badge
- Updated README
- Contributors: Dave Coleman
2.0.0 (2015-12-02)
- Updated README
- Add badges
- Default true for enableBatchPublishing()
- Renamed convertXYZRPY() to convertFromXYZRPY()
- Changed roll pitch yall convention (fix)
- Added preliminary unit tests
- Hide include dependencies
- New convertToXYZRPY function
- Decrease wait time for topics to subscribe
- New publishSphere and publishArrow functions
- Added new thread safe pose conversion function
- Auto format with clang
- New publishSphere with frame_id function
- New print transform functions
- Fixed RPY error
- New convert Affine3d to roll pitch yaw function
- New tf_visual_tools functionality to help debug transforms
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
eigen_conversions | |
geometry_msgs | |
roscpp | |
tf_conversions | |
visualization_msgs | |
graph_msgs | |
std_msgs | |
trajectory_msgs | |
cmake_modules | |
roslint | |
catkin | |
rostest | |
rosunit |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools |
Launch files
- launch/demo.launch
-
- debug [default: false]
- launch/demo_combined.launch
-
- debug [default: false]
- launch/demo_rviz.launch
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 4.1.4 |
License | BSD |
Build type | AMENT_CMAKE |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | ros2 |
Last Updated | 2024-09-04 |
Dev Status | MAINTAINED |
CI status | No Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Mike Lautman
Authors
- Mike Lautman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-${ROS_DISTRO}-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro ${ROS_DISTRO}
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
ros2 launch rviz_visual_tools demo_rviz.launch.py
Then start the RViz Visual Tools demo:
ros2 run rviz_visual_tools rviz_visual_tools_demo
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.hpp>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers", node));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
4.1.4 (2023-01-05)
- Migrate to Ogre.h (#226)
- Remove galactic jobs since they are deprecated (#232)
- Add arbitrary color option to publishCuboid (#227)
- Bump clang-format version to 14 (#228)
- Contributors: Sebastian Castro, Stephanie Eng, Vatan Aksoy Tezer
4.1.3 (2022-07-18)
- Humble CI and formatting updates (#220)
- Minor typo fix (#222)
- Add a method to publish a plane using the normal and distance (#221) Co-authored-by: AndyZe <<andyz@utexas.edu>>
- Fix description of plane functions (#219)
- Update black version (#218)
- Add option to never wait for subscriber (#217)
- Contributors: Marq Rasmussen, Stephanie Eng, Vatan Aksoy Tezer
4.1.2 (2021-12-13)
- Fix faulty templated constructor (#211)
- Make sure to add all dependencies to the package.xml (#209) Otherwise it will fail to build on the buildfarm.
- Contributors: Chris Lalancette, Vatan Aksoy Tezer
4.1.1 (2021-10-07)
- Re-enable RemoteControl functionality
(#205)
- use condition_variable to be more thread safe
- Drop executor from constructor, deprecate old one
- Fix RemoteControl usage in demo
- Use SystemDefaultsQOS for RemoteControl subscriber
- Add RvizVisualToolsGui dashboard to rviz config, correct view
- Add pluginlib dependency. (#203)
- Fix package dependencies and cmake export (#202)
- Rename node_executable to executable (#200)
- Contributors: Davide Faconti, Henning Kayser, Jafar Abdi, Steven! Ragnarök, Vatan Aksoy Tezer
4.1.0 (2021-09-14)
- Fixes for new ros2 branch (#198)
- Fix include deprecation warning
- Enable Galactic and Rolling CI
(#190)
- minor compile fixes
- Fixes & improvements for deleting markers
(#188)
- Added RvizVisualTools method to delete all markers in a namespace
- Fixed deleteAllMarkers for all namespaces
- Added getters for marker ID's
- Move waitForSubscriber function to header file (#185)
- Contributors: Henning Kayser, Jafar Abdi, Nathan Brooks, Vatan Aksoy Tezer, Wyatt Rees
4.0.0 (2021-04-09)
- Fix warning about deprecation (#180) rclcpp::executor::FutureReturnCode was removed
- Update to offer shared_ptr to create_timer
- Fix rviz_visual_tools_gui (#147)
- Compilation for Windows (#143)
- Remove stl file in preparation for LFS setup (#140)
- Add function deleteMarker: deletes marker for given namespace and id (#137)
- fix waitForSubscriber time (#142)
- Eloquent cleanup
(#135)
- some misc cleanup of the imarker simple lib
- actually reset marker counts
- changes for using IMarker simple as a library
- Fix rviz warnings about scale and uninitialized quaternions (#129)
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Name | Deps |
---|---|
moveit_visual_tools | |
lidar_situational_graphs |
Launch files
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 3.6.0 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/davetcoleman/rviz_visual_tools.git |
VCS Type | git |
VCS Version | kinetic-devel |
Last Updated | 2019-02-23 |
Dev Status | DEVELOPED |
CI status | Continuous Integration |
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Dave Coleman
Authors
- Dave Coleman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
Install
Ubuntu Debian
sudo apt-get install ros-kinetic-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro kinetic
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
roslaunch rviz_visual_tools demo_rviz.launch
Then start demo:
roslaunch rviz_visual_tools demo.launch
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.h>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers"));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Affine3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
// Publish arrow vector of pose
ROS_INFO_STREAM_NAMED("test","Publishing Arrow");
visual_tools_->publishArrow(pose, rviz_visual_tools::RED, rviz_visual_tools::LARGE);
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
3.6.0 (2018-01-15)
- Addresses Issue #49 - Default Constructor Not Nodelet Friendly
- Added option to pass in a node handle in the constructor that defaults to
- Reset marker should publish initialized quaternion
- Improve code quality - add const, static, C++11 features, clang-format
- Create demo executable for IMarkerSimple
- Improve memory efficiency of functions
- Contributors: Dave Coleman, Geoffrey Chiou, Victor Lamoine
3.5.1 (2017-12-25)
- Normalize quaternion before storage
- Fix for ambiguous function call to publishAxis
- Add linking to visualization tools library for imarker_simple
- Added arrow pub to take two points
- Document clang-tidy
- catkin lint
- roslint applied
- Clang-format again
- Clang-tidy ALL
- C++11 optimizations
- Fix deprecated calls to convertFromXYZRPY
- Add new convertPoseSafe() function
- New convertFromXYZRPY() function to avoid deprecation warning
- Allow to enable frame locking in the markers/markers arrays
- Update license year
- IMarkerSimple: set name and pose
- New printTransformFull() function
- Removed deprecated warning
- New class for easily using 6dof imarkers
- More options to tf_visual_tools
- Update README.md
- Contributors: Andy McEvoy, Dave Coleman, Fadri Furrer, Victor Lamoine
3.4.1 (2017-06-20)
- Add dependency on QT5 for Ubuntu Zesty/Lunar support
- Allow publishPath with std_msgs::ColorRGBA
- Make INFO msg DEBUG
- Contributors: Dave Coleman, Victor Lamoine
3.4.0 (2016-11-02)
- Consolidated publishing into RemoteReciever class
- Improve console output
- Add RvizGui and KeyTool
- Enable remote control from withing rviz_visual_tools
- New publishPath() function
- Shorten number of lines printTranslation() requires
- Contributors: Dave Coleman
3.3.0 (2016-09-28)
- BREAKING CHANGE: Make batch publishing enabled by default
- Removed enableInternalBatchPublishing()
- Removed triggerInternalBatchPublishAndDisable()
- Deprecated triggerBatchPublish() in favor of function name trigger()
- Deprecated triggerBatchPublishAndDisable()
- Ability to trigger every x markers that are in queue, ideal in for loops
- New waitForMarkerPub() function that takes timeout
- Add std::move
- Added Docker for Kinetic
- Added delay to demo to allow rviz to load in Docker
- Change the sphere marker type from SPHERE_LIST to SPHERE - This makes irregularly scaled spheres (i.e. ellipsoids) to be rendered correctly.
- Contributors: Dave Coleman, Miguel Prada
3.2.0 (2016-07-14)
- Catkin depend on eigen and tf conversions
- New warning
- Added EulerConvention enum
- Added new convertFromXYZRPY() function
- Added new tests
- Contributors: Dave Coleman, Enrique Fernandez
3.1.0 (2016-07-06)
- Switched publishPath() to use cylinders
- Added new publishLineStrip() function
- Added new publishPath() functions
- Added new publishAxis() functions
- Update screenshot
- Broke publishPath() API for recent addition - incorrect Eigen vector used
- New publishPath() function for Affine3d
- New publishAxis() functions that use scale
- New publishAxisInternal() function for more efficient publishing
- New publishAxisPath() function for showing a series of coordinate axis
- Added warning for batch publishing when not enabled
- Bug fix in publishLines() for id incrementing
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
rostest | |
rosunit | |
rviz | |
sensor_msgs | |
eigen_conversions | |
geometry_msgs | |
roscpp | |
tf_conversions | |
visualization_msgs | |
graph_msgs | |
std_msgs | |
trajectory_msgs | |
roslint | |
eigen_stl_containers |
System Dependencies
Name |
---|
libqt5x11extras5-dev |
Dependant Packages
Launch files
- launch/demo.launch
-
- debug [default: false]
- launch/demo_combined.launch
-
- debug [default: false]
- launch/demo_rviz.launch
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 3.8.0 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | melodic-devel |
Last Updated | 2020-06-09 |
Dev Status | MAINTAINED |
CI status |
|
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Dave Coleman
Authors
- Dave Coleman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
Developed by Dave Coleman at the Correll Robotics Lab, University of Colorado Boulder with help from Andy McEvoy and many others.
-
Travis CI
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-melodic-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro melodic
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
roslaunch rviz_visual_tools demo_rviz.launch
Then start demo:
roslaunch rviz_visual_tools demo.launch
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.h>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers"));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
// Publish arrow vector of pose
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
3.8.0 (2019-09-18)
- Windows bring up. (#116)
- Change email address (#114)
- Fixed publishCylinder namespace (#109)
- Remove default arguments to make function calls not ambiguous
(#112)
- Remove default arguments to make function calls not ambiguous
- Remove further default values
- Add unit tests for publishPath() functions, make sucess return value more stringent
- Initizalize quaternions in demo to avoid warning (#111)
- Fix node type in demo launch files (#110)
- Only auto-assign one reviewer (#107)
- Use LOGNAME for logging re:moveit styel (#106)
- Document Github Probot for Auto Assign (#101)
- Contributors: Dave Coleman, Sean Yen, Victor Lamoine, d-walsh
3.7.0 (2018-11-26)
- Fix Eigen::Affine3d for Melodic (using Eigen::Isometry3d) (#105)
- Improve documentation (#100)
- Fix some catkin_lint warnings and rename targets output (#98)
- Update README Kinetic to Melodic (#102)
- Add Melodic build farm badges (#99)
- Add ccache support (#93)
- no ros::spinOnce() (#82)
- Deprecate old functions for ROS Melodic (#91)
- Improve package with catkin_lint (#89)
- Add OGRE dependency (#88)
- Automoc requires at least cmake version 2.8.6 (#86)
- Fix Travis badge (#84)
- The code already uses AUTOMOC (#76)
- Contributors: Dave Coleman, Jochen Sprickerhof, Michael Görner, Simon Schmeisser, Victor Lamoine
3.6.1 (2018-05-31)
- Actually link qt code into the gui library (#74)
- Contributors: Michael Goerner
3.6.0 (2018-01-15)
- Addresses Issue #49 - Default Constructor Not Nodelet Friendly
- Added option to pass in a node handle in the constructor that defaults to
- Reset marker should publish initialized quaternion
- Improve code quality - add const, static, C++11 features, clang-format
- Create demo executable for IMarkerSimple
- Improve memory efficiency of functions
- Contributors: Dave Coleman, Geoffrey Chiou, Victor Lamoine
3.5.1 (2017-12-25)
- Normalize quaternion before storage
- Fix for ambiguous function call to publishAxis
- Add linking to visualization tools library for imarker_simple
- Added arrow pub to take two points
- Document clang-tidy
- catkin lint
- roslint applied
- Clang-format again
- Clang-tidy ALL
- C++11 optimizations
- Fix deprecated calls to convertFromXYZRPY
- Add new convertPoseSafe() function
- New convertFromXYZRPY() function to avoid deprecation warning
- Allow to enable frame locking in the markers/markers arrays
- Update license year
- IMarkerSimple: set name and pose
- New printTransformFull() function
- Removed deprecated warning
- New class for easily using 6dof imarkers
- More options to tf_visual_tools
- Update README.md
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
Deps | Name |
---|---|
catkin | |
rostest | |
rosunit | |
rviz | |
sensor_msgs | |
eigen_conversions | |
geometry_msgs | |
roscpp | |
tf_conversions | |
visualization_msgs | |
graph_msgs | |
std_msgs | |
trajectory_msgs | |
roslint | |
eigen_stl_containers |
System Dependencies
Dependant Packages
Name | Deps |
---|---|
ainstein_radar_drivers | |
moveit_visual_tools |
Launch files
- launch/demo.launch
-
- debug [default: false]
- launch/demo_combined.launch
-
- debug [default: false]
- launch/demo_rviz.launch
- launch/rvt_test.launch
-
- debug [default: false]
Messages
Services
Plugins
Recent questions tagged rviz_visual_tools at Robotics Stack Exchange
![]() |
rviz_visual_tools package from rviz_visual_tools reporviz_visual_tools |
ROS Distro
|
Package Summary
Tags | No category tags. |
Version | 3.9.1 |
License | BSD |
Build type | CATKIN |
Use | RECOMMENDED |
Repository Summary
Checkout URI | https://github.com/PickNikRobotics/rviz_visual_tools.git |
VCS Type | git |
VCS Version | noetic-devel |
Last Updated | 2020-10-09 |
Dev Status | MAINTAINED |
CI status |
|
Released | RELEASED |
Tags | No category tags. |
Contributing |
Help Wanted (0)
Good First Issues (0) Pull Requests to Review (0) |
Package Description
Additional Links
Maintainers
- Dave Coleman
Authors
- Dave Coleman
Rviz Visual Tools
C++ API wrapper for displaying shapes and meshes in Rviz via helper functions that publish markers. Useful for displaying and debugging data. For more advanced robot visualization features, see the moveit_visual_tools which builds on this class.
This package includes:
- Rviz Panel GUI to step through your code for debugging and testing
- Rviz-based keyboard control for stepping through application
- Easy to use helper functions for visualizing in Rviz fast
- Basic geometric markers for Rviz
- More complex geometric shapes such as coordinate frames, framed boxes, planes, paths, graphs
- Ability to quickly choose standard colors and sizes
- Tools to ensure proper connection to Rviz before publishing visualizations
- Shortcuts to convert between different types of points and poses - ROS msgs, Eigen, tf, etc
- Batch publishing capabilities to reduce over throttling ROS messages
- A tf publishing helper class
- An interactive marker helper class
This open source project was developed at PickNik Robotics. Need professional ROS development and consulting? Contact us at projects@picknik.ai for a free consultation.
-
Travis CI
-
ROS Kinetic Buildfarm - AMD64 Xenial Debian Build for Ubuntu 16.04
-
ROS Kinetic Buildfarm - AMD64 Xenial Devel Build for Ubuntu 16.04
-
ROS Melodic Buildfarm - AMD64 Bionic Debian Build for Ubuntu 18.04
-
ROS Melodic Buildfarm - AMD64 Bionic Devel Build for Ubuntu 18.04
Install
Ubuntu Debian
sudo apt-get install ros-melodic-rviz-visual-tools
Build from Source
Clone this repository into a catkin workspace, then use the rosdep install tool to automatically download its dependencies. Depending on your current version of ROS, use:
rosdep install --from-paths src --ignore-src --rosdistro melodic
Quick Start Demo
To see random shapes generated in Rviz, first launch Rviz:
roslaunch rviz_visual_tools demo_rviz.launch
Then start demo:
roslaunch rviz_visual_tools demo.launch
Code API
Usage
We’ll assume you will be using these helper functions within a class. Almost all of the functions assume you are publishing transforms in the world frame (whatever you call that e.g. /odom).
Initialize
Add to your includes:
#include <rviz_visual_tools/rviz_visual_tools.h>
Add to your class’s member variables:
// For visualizing things in rviz
rviz_visual_tools::RvizVisualToolsPtr visual_tools_;
In your class’ constructor add:
visual_tools_.reset(new rviz_visual_tools::RvizVisualTools("base_frame","/rviz_visual_markers"));
Change the first parameter to the name of your robot’s base frame, and the second parameter to whatever name you’d like to use for the corresponding Rviz marker ROS topic.
Tools
Now in your code you can easily debug your code using visual markers in Rviz
Start rviz and create a new marker using the ‘Add’ button at the bottom right. Choose the marker topic to be the same as the topic you specified in the constructor.
Example Code
In the following snippet we create a pose at xyz (0.1, 0.1, 0.1) and rotate the pose down 45 degrees along the Y axis. Then we publish the pose as a arrow for visualziation in Rviz. Make sure your Rviz fixed frame is the same as the one chosen in the code.
// Create pose
Eigen::Isometry3d pose;
pose = Eigen::AngleAxisd(M_PI/4, Eigen::Vector3d::UnitY()); // rotate along X axis by 45 degrees
pose.translation() = Eigen::Vector3d( 0.1, 0.1, 0.1 ); // translate x,y,z
File truncated at 100 lines see the full file
Changelog for package rviz_visual_tools
3.9.1 (2020-10-09)
- [maint] add soname versions to libraries (#166)
- [maint] Apply clang-format-10 (#173)
- Contributors: Tyler Weaver
3.9.0 (2020-09-05)
- [feature] Add optional parent frame to iMarker (#159)
- [feature] Publish cuboid with size as a vector3 or Eigen::Vector3d (#125)
- [feature] Normalize interactive marker quaternions. (#132)
- [feature] normalize before publish (#131)
- [feature] New helper function getIdentityPose() (#122)
- [feature] Windows bring up. (#116)
- [feature] For ABCD planes: better comments, ensure the plane equation is satisfied. (#120)
- [feature] Make [rviz_visual_tools]{.title-ref} publish triangle mesh and [tf_visual_tools]{.title-ref} clean published transforms (#117)
- [feature] Publish plane from Ax+By+Cz+D=0 equation (#119)
- [feature] Remove default arguments to make function calls not ambiguous (#112)
- [feature] Initizalize quaternions in demo to avoid warning (#111)
- [fix] rviz warnings about scale and uninitialized quaternions (#129)
- [fix] publishCylinder namespace (#109)
- [fix] node type in demo launch files (#110)
- [maint] Adding missing dependency (interactive_markers) (#168)
- [maint] clang-tidy (#158)
- [maint] replace tf_conversions with tf2 (#151)
- [maint] bump cmake version (#150)
- [maint] remove trailing whitespaces (#130)
- [maint] Apply clang-tidy (#127)
- [maint] Switch to moveit_ci, apply clang-format (#124)
- [maint] Use LOGNAME for logging re:moveit styel (#106)
- Contributors: AndyZe, Bjar Ne, Dave Coleman, Jafar Abdi, JafarAbdi, Michael Görner, Mike Lautman, Sean Yen, Victor Lamoine, Yu, Yan, d-walsh
3.7.0 (2018-11-26)
- Fix Eigen::Affine3d for Melodic (using Eigen::Isometry3d) (#105)
- Improve documentation (#100)
- Fix some catkin_lint warnings and rename targets output (#98)
- Update README Kinetic to Melodic (#102)
- Add Melodic build farm badges (#99)
- Add ccache support (#93)
- no ros::spinOnce() (#82)
- Deprecate old functions for ROS Melodic (#91)
- Improve package with catkin_lint (#89)
- Add OGRE dependency (#88)
- Automoc requires at least cmake version 2.8.6 (#86)
- Fix Travis badge (#84)
- The code already uses AUTOMOC (#76)
- Contributors: Dave Coleman, Jochen Sprickerhof, Michael Görner, Simon Schmeisser, Victor Lamoine
3.6.1 (2018-05-31)
- Actually link qt code into the gui library (#74)
- Contributors: Michael Goerner
File truncated at 100 lines see the full file
Wiki Tutorials
Package Dependencies
System Dependencies
Dependant Packages
Launch files
- launch/demo.launch
-
- debug [default: false]
- launch/demo_combined.launch
-
- debug [default: false]
- launch/demo_rviz.launch
- launch/rvt_test.launch
-
- debug [default: false]