MCPcopy Index your code
hub / github.com/NVlabs/sionna-rt-gui

github.com/NVlabs/sionna-rt-gui @v0.1.1

Chat with this repo
repository ↗ · DeepWiki ↗ · release v0.1.1 ↗ · + Follow
129 symbols 473 edges 20 files 19 documented · 15% updated 3mo agov0.1.1 · 2026-03-19★ 334 open issues
What it actually does AI analysis from the code graph — generated when you open this
loading…
README

Sionna RT GUI

An interactive GUI to simulate and visualize Sionna RT scenes, paths, and radio maps.

Sionna RT GUI screenshot

Getting started

This project requires Python 3.10 or later. Sionna RT will be installed automatically as part of the dependencies.

Installing from PyPI

pip install sionna-rt-gui

Then, start the GUI with:

sionna-rt-gui

Select a scene from Sionna RT's built-in scenes using the dropdown in the top-left corner, or by passing it as a command-line argument:

sionna-rt-gui path/to/scene.xml

Installing from source

If you would like to tweak the GUI or build on top of it, you can clone this repository and install it from source:

python3 -m venv ./.venv
source ./.venv/bin/activate
pip install -r ./requirements.txt

Then, start the GUI with:

python ./scripts/run.py

GUI controls

The left-hand window can be used to trigger and configure all simulation options for radio devices, radio maps, and paths.

Press ? or H to show a help window listing supported keyboard shortcuts.

Animations: the position of radio devices can be animated over time. To do so,

  1. Select the radio device to animate.
  2. Use the transformation gizmo to place it in the scene.
  3. In the Selection window, click 'Add current position'
  4. Move the radio device to its next position and repeat until the trajectory is complete.

The device will move along the path when animation playback is enabled under the Animation section of the main window.

Command-line options

Configuration files

All available options and their defaults are defined in src/sionna_rt_gui/config.py.

Almost all parameters can be set using YAML configuration files, see e.g. configs/sionna_rt_gui/example.yaml. Pass a config file with the --config argument:

sionna-rt-gui --config path/to/config.yaml

Live reload mode

For development, use --watch to enable live code reloading:

python ./scripts/run.py --watch

This monitors source files and automatically reloads the GUI when changes are detected. You can also trigger a manual reload with Shift + R.

Limitations

The following features are not supported in the GUI at the moment:

  • Mesh-based radio maps

Acknowledgements

This project uses the Polyscope and Dear ImGui libraries with the Bess Dark theme. Sionna RT scenes use map data from OpenStreetMap.

License

Copyright (c) 2025-2026 NVIDIA Corporation. Licensed under the Apache License 2.0. See LICENSE for details.

Core symbols most depended-on inside this repo

Shape

Method 65
Function 46
Class 18

Languages

Python100%

Modules by API surface

src/sionna_rt_gui/gui.py33 symbols
src/sionna_rt_gui/reload.py18 symbols
src/sionna_rt_gui/config.py16 symbols
src/sionna_rt_gui/animation.py13 symbols
src/sionna_rt_gui/rm_utils.py9 symbols
src/sionna_rt_gui/sionna_utils.py8 symbols
src/sionna_rt_gui/ps_utils.py7 symbols
src/sionna_rt_gui/rendering.py5 symbols
src/sionna_rt_gui/selection.py3 symbols
test/test_rm_utils.py2 symbols
test/test_polyscope_empty.py2 symbols
test/test_drjit_utils.py2 symbols

For agents

$ claude mcp add sionna-rt-gui \
  -- python -m otcore.mcp_server <graph>

⬇ download graph artifact

Ask about this repo answers extend the page