From 605a98a6981d76a1d6062f50abd58b34212aebad Mon Sep 17 00:00:00 2001 From: Antoine Beyeler <49431240+abey79@users.noreply.github.com> Date: Wed, 13 Dec 2023 17:00:32 +0100 Subject: [PATCH] Add experimental Dataframe Space View (#4468) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit ### What Add a new kind of space view—called Dataframe Space View—which display the raw data of the entities added to it. This first iteration display data with the "latest at" semantics, with each rows corresponding to an entity instance. This features is _experimental_ and has plenty of usability issues (whose growing list is tracked in https://github.com/rerun-io/rerun/issues/4466). As a result, it is disabled by default and can be enabled in the options. For the purpose of this feature flag, this PR adds support for de-registering a space view from the registry. image image ### Checklist * [x] I have read and agree to [Contributor Guide](https://github.com/rerun-io/rerun/blob/main/CONTRIBUTING.md) and the [Code of Conduct](https://github.com/rerun-io/rerun/blob/main/CODE_OF_CONDUCT.md) * [x] I've included a screenshot or gif (if applicable) * [x] I have tested the web demo (if applicable): * Full build: [app.rerun.io](https://app.rerun.io/pr/4468/index.html) * Partial build: [app.rerun.io](https://app.rerun.io/pr/4468/index.html?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) - Useful for quick testing when changes do not affect examples in any way * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG - [PR Build Summary](https://build.rerun.io/pr/4468) - [Docs preview](https://rerun.io/preview/91ab16c95fb7e061a8f327ad0364ac433de543d5/docs) - [Examples preview](https://rerun.io/preview/91ab16c95fb7e061a8f327ad0364ac433de543d5/examples) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) --- ARCHITECTURE.md | 11 +- Cargo.lock | 21 ++ Cargo.toml | 1 + crates/re_space_view_dataframe/Cargo.toml | 33 +++ crates/re_space_view_dataframe/README.md | 10 + crates/re_space_view_dataframe/src/lib.rs | 8 + .../src/space_view_class.rs | 253 ++++++++++++++++++ .../src/view_part_system.rs | 38 +++ crates/re_viewer/Cargo.toml | 1 + crates/re_viewer/src/app.rs | 29 +- crates/re_viewer/src/ui/rerun_menu.rs | 19 +- crates/re_viewer_context/src/app_options.rs | 5 + .../re_viewer_context/src/command_sender.rs | 3 + .../src/space_view/dyn_space_view_class.rs | 10 +- .../src/space_view/space_view_class.rs | 5 + .../space_view/space_view_class_registry.rs | 57 ++-- 16 files changed, 477 insertions(+), 27 deletions(-) create mode 100644 crates/re_space_view_dataframe/Cargo.toml create mode 100644 crates/re_space_view_dataframe/README.md create mode 100644 crates/re_space_view_dataframe/src/lib.rs create mode 100644 crates/re_space_view_dataframe/src/space_view_class.rs create mode 100644 crates/re_space_view_dataframe/src/view_part_system.rs diff --git a/ARCHITECTURE.md b/ARCHITECTURE.md index 20838b816bdb..a707f9cff831 100644 --- a/ARCHITECTURE.md +++ b/ARCHITECTURE.md @@ -88,11 +88,11 @@ Of course, this will only take us so far. In the future we plan on caching queri Here is an overview of the crates included in the project: - - - - - + + + + +