Skip to main content

Interactive Rerun viewer for DimOS with click-to-navigate support

Project description

Advanced example showing how to control an external application from the Rerun viewer, by extending the viewer UI.

Custom Viewer Callback example screenshot

[!NOTE] #2337: In order to spawn a web viewer with these customizations applied, you have to build the web viewer of the version yourself. This is currently not supported outside of the Rerun repository.

Overview

This example is divided into two parts:

In the app, an additional gRPC server is opened to allow the viewer to send messages to the app. Similar to the extend_viewer_ui example, the viewer is wrapped in an eframe app, which allows us to handle the extra communication logic and define our own control UI using egui.

The communication between the viewer and the app is implemented in the comms module. It defines a simple protocol to send messages between the viewer and the app using bincode. The protocol supports basic commands that the viewer can send to the app, such as logging a Boxes3D or Point3D to an entity, or changing the radius of a set of points that is being logged.

Usage

First start the Rerun SDK app with cargo run -p custom_callback --bin custom_callback_app, and then start the extended viewer with cargo run -p custom_callback --bin custom_callback_viewer.

Relationship with Viewer callbacks

The [re_viewer] crate also exposes some baseline Viewer events through the StartupOptions.on_event field, which can exist alongside your own events from widgets added by extending the UI.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distributions

No source distribution files available for this release.See tutorial on generating distribution archives.

Built Distributions

If you're not sure about the file name format, learn more about wheel file names.

dimos_viewer-0.30.0a1-cp310-cp310-manylinux_2_28_x86_64.whl (40.7 MB view details)

Uploaded CPython 3.10manylinux: glibc 2.28+ x86-64

dimos_viewer-0.30.0a1-cp310-cp310-macosx_11_0_arm64.whl (34.6 MB view details)

Uploaded CPython 3.10macOS 11.0+ ARM64

File details

Details for the file dimos_viewer-0.30.0a1-cp310-cp310-manylinux_2_28_x86_64.whl.

File metadata

File hashes

Hashes for dimos_viewer-0.30.0a1-cp310-cp310-manylinux_2_28_x86_64.whl
Algorithm Hash digest
SHA256 e33492ff1f2877a562b0748d5c39e69ae469732abac4ed5b872c8259b649ab5b
MD5 d5e1b800efa751a4a7b6313799df3241
BLAKE2b-256 76aaf394c6579a4871780752b66b7425a4189a709b11014d7a87e0af1e3ceefb

See more details on using hashes here.

Provenance

The following attestation bundles were made for dimos_viewer-0.30.0a1-cp310-cp310-manylinux_2_28_x86_64.whl:

Publisher: build-viewer.yml on dimensionalOS/dimos-viewer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file dimos_viewer-0.30.0a1-cp310-cp310-macosx_11_0_arm64.whl.

File metadata

File hashes

Hashes for dimos_viewer-0.30.0a1-cp310-cp310-macosx_11_0_arm64.whl
Algorithm Hash digest
SHA256 69a5f12810e4efd2cf4c3c9214a5fa9bc71a027c486f2a742d34ac8337e6a5df
MD5 0bcbe9f879c0a66a3c495945ec54bd73
BLAKE2b-256 8592fb718bc8c1050df8f99d0edcb79101a08549c2ce403fcca78609b12c5a30

See more details on using hashes here.

Provenance

The following attestation bundles were made for dimos_viewer-0.30.0a1-cp310-cp310-macosx_11_0_arm64.whl:

Publisher: build-viewer.yml on dimensionalOS/dimos-viewer

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page