\page plugins Plugins
Next Tutorial: \ref config Previous Tutorial: \ref commandline
A Gazebo GUI plugin is a shared library that defines a widget. The plugin contains QML code that specifies what the widget looks like, as well as C++ code that defines the plugin's behavior and ties it to other libraries.
See HelloPlugin for an example.
Gazebo GUI will look for plugins on the following paths, in this order:
- All paths set on the
GZ_GUI_PLUGIN_PATH
environment variable - All paths added by calling
gz::gui::addPluginPath
~/.gz/gui/plugins
- Plugins which are installed with Gazebo GUI
Gazebo GUI supports loading XML configuration files, which may contain parameters to be passed directly to the plugin. See the \subpage config tutorial for more information.
Display images from a Gazebo Transport topic.
gz gui -c examples/config/image.config
or
gz gui -s ImageDisplay
Publish messages on a Gazebo Transport topic.
-
Listen to string messages on the
/echo
topic:gz topic -e -t /echo
-
On a new terminal, open the publisher GUI:
gz gui -s Publisher
-
The GUI is pre-filled to publish "Hello" messages on the
/echo
topic. Click "Publish" to publish a message and see it on the terminal.
-
Stats: Display sim / real time published on a topic
-
Control: Buttons to make play / pause / step service requests
gz gui -c examples/config/time.config
Echo messages from a Gazebo Transport topic.
gz gui -c examples/config/pubsub.config
Publish key presses through Gazebo Transport.
gz gui -c examples/config/keypublisher.config
Change the topic to echo to /keyboard/keypress
, echo, and start pressing keys.
Not ported to versions 1 or higher yet
Discover all Gazebo Transport topics and introspect its fields.
gz gui -c examples/config/topicViewer.config
Not ported to versions 1 or higher yet
Show basic stats of all Gazebo Transport topics at the same time.
gz gui -c examples/config/topicsStats.config
Not ported to versions 1 or higher yet
Make custom service requests and serve custom services with these two plugins.
gz gui -c examples/config/reqres.config
Not ported to versions 1 or higher yet
This is a container for various Display Plugins that each paint on a Scene. The following example includes the display plugins that are installed with Gazebo GUI by default.
gz gui -c examples/config/display_plugins.config
Not ported to versions 1 or higher yet
Gazebo GUI will look for display plugins on the following paths, in this order:
- All paths set on the
GZ_GUI_DISPLAY_PLUGIN_PATH
environment variable ~/.gz/gui/display_plugins
- Display plugins that are installed with Gazebo GUI