Skip to content

This is a utility program for displaying data in soft realtime in multiple windows.

License

Notifications You must be signed in to change notification settings

UCR-Robotics/DisplayRT

Repository files navigation

DisplayRT

This is a utility program for displaying data stream in soft realtime in multiple windows. This project is originally motivated to visualize data of various types from a mobile robot.

DisplayRT

Dependencies

Ubuntu 20.04 LTS and 22.04 LTS

  • QT5: the dependencies can be installed via the command sudo apt install qtbase5-dev qt5-qmake qtbase5-dev-tools libqt5widgets5.
  • QCustomPlot: the source code (v2.1.0) is included in the folder /thirdparty/QCustomPlot. Run setup_QCustomPlot.sh for library compilation.
  • mini-yaml: the submodule (main) is included in the folder /thirdparty/mini-plot.

Compilation

The easiest way is to run the script setup.sh in the root folder. It will install QT5 dependencies and compile the project. You can also compile it as a normal CMake project.

Usage

It is essentially an abstraction class named DisplayRT that can be coordinated directly in your project or with the middleware like ROS1/ROS2 or LCM. You should develop your display class by inheriting DisplayRT and implement the virtual methods Setup() and Update(). A quick start would be calling defaultSetupDisplay() and defaultUpdateDisplay() in your Setup() and Update() implementations respectively.

See examples in \example folder for more usage cases.

Acknowledgments

This project includes the following third-party components:

  • QCustomPlot, licensed under the GPL License. See thirdparty/QCustomPlot/GPL.txt for details. Source code can be downloaded here.
  • mini-yaml, licensed under the MIT License. See thirdparty/mini-yaml/LICENSE for details.

TODO

  • ROS1/ROS2 examples
  • LCM examples
  • add yaml-cpp support

About

This is a utility program for displaying data in soft realtime in multiple windows.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published