-
Notifications
You must be signed in to change notification settings - Fork 366
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Blueprintify Space View properties #6083
Labels
🟦 blueprint
The data that defines our UI
🐍 Python API
Python logging API
📺 re_viewer
affects re_viewer itself
🎄 tracking issue
issue that tracks a bunch of subissues
Comments
Wumpf
added
🎄 tracking issue
issue that tracks a bunch of subissues
🟦 blueprint
The data that defines our UI
🐍 Python API
Python logging API
📺 re_viewer
affects re_viewer itself
labels
Apr 23, 2024
5 tasks
Wumpf
added a commit
that referenced
this issue
Apr 26, 2024
…esView` blueprint (#6114) ### What * Part of [#6083](#6083) Usage example: ```py # ... # Plot with custom Y range that is locked into place during zoom and legend at the bottom left. rrb.TimeSeriesView( origin="/plot", axis_y=rrb.ScalarAxis(range=[0, 1], lock_range_during_zoom=True), plot_legend=rrb.Corner2D.LeftBottom, ), # Hide plot legend rrb.TimeSeriesView( origin="/plot", plot_legend=rrb.PlotLegend(visible=False), ), # ... ``` Changed codegen type definition: ```fbs /// A time series view. table TimeSeriesView ( "attr.rerun.view_identifier": "TimeSeries" ) { /// Configures the vertical axis of the plot. axis_y: rerun.blueprint.archetypes.ScalarAxis (order: 1000); /// Configures the legend of the plot. plot_legend: rerun.blueprint.archetypes.PlotLegend (order: 2000); } ``` Added the necessary serialization code and snippets. More aggressively using datatypes now to reduce amount of serialization code we need to write in Python. ### 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): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6114?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6114?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6114) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
Merged
5 tasks
Wumpf
added a commit
that referenced
this issue
Apr 26, 2024
… the same backing data (#6134) ### What * Part of [#6083](#6083) Necessary step on the way towards a `VisibleTimeRange` view property archetype. ### 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): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6134?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6134?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6134) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
5 tasks
Wumpf
added a commit
that referenced
this issue
Apr 30, 2024
…python code (#6164) ### What * Part of [#6083](#6083) And _some_ related refactors that I got engulfed with on this quest: * document fate of remaining `EntityProperties` * simplify `DataResult` formation by dropping overrides from the `OverrideContext` * took the opportunity to call out `EntityProperties` as `legacy_properties` in a lot of places which makes it easier to read these changes * make it explicit when we want to use latest-at query by introducing `QueryRange` type Python API not great yet, will improve and provide examples in an upcoming iteration. Planned direct follow-ups to this PR: * finally remove old History types that we still convert to * should fix the rest of #6135 if it isn't already by this PR * make python interface actually nice * add examples & more docs ### 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): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6164?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6164?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6164) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
This was referenced Jun 14, 2024
Wumpf
added a commit
that referenced
this issue
Jun 17, 2024
### What Example: ```python blueprint = rrb.Blueprint( rrb.TensorView( origin="tensor", name="Tensor", # Set a scalar mapping with a custom colormap, gamma and magnification filter. scalar_mapping=rrb.TensorScalarMapping(colormap="turbo", gamma=1.5, mag_filter="linear"), # Change sizing mode to keep aspect ratio. view_fit="FillKeepAspectRatio", ), collapse_panels=True, ) ``` As always with these ports, this comes with the usual ui refresh: ![image](https://github.com/rerun-io/rerun/assets/1220815/f4f1c79a-c4cb-4373-a7db-ad5a7576dcff) * Part of #6083 * Replaces / joins * #6577 * #6583 ### 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): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6585?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6585?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6585) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
5 tasks
Wumpf
added a commit
that referenced
this issue
Jun 19, 2024
### What Example: ```python blueprint = rrb.Blueprint( rrb.TensorView( origin="tensor", name="Tensor", # Set a scalar mapping with a custom colormap, gamma and magnification filter. scalar_mapping=rrb.TensorScalarMapping(colormap="turbo", gamma=1.5, mag_filter="linear"), # Change sizing mode to keep aspect ratio. view_fit="FillKeepAspectRatio", ), collapse_panels=True, ) ``` As always with these ports, this comes with the usual ui refresh: ![image](https://github.com/rerun-io/rerun/assets/1220815/f4f1c79a-c4cb-4373-a7db-ad5a7576dcff) * Part of #6083 * Replaces / joins * #6577 * #6583 ### 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): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6585?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6585?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6585) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
Wumpf
added a commit
that referenced
this issue
Jun 24, 2024
### What Updated python example: ```python blueprint = rrb.Blueprint( rrb.TensorView( origin="tensor", name="Tensor", # Explicitly pick which dimensions to show. slice_selection=rrb.TensorSliceSelection( # Use the first dimension as width. width=0, # Use the second dimension as height and invert it. height=rr.TensorDimensionSelection(dimension=1, invert=True), # Set which indices to show for the other dimensions. indices=[ rr.TensorDimensionIndexSelection(dimension=2, index=4), rr.TensorDimensionIndexSelection(dimension=3, index=5), ], # Show a slider for dimension 2 only. If not specified, all dimensions in `indices` will have sliders. slider=[2], ), # Set a scalar mapping with a custom colormap, gamma and magnification filter. scalar_mapping=rrb.TensorScalarMapping(colormap="turbo", gamma=1.5, mag_filter="linear"), # Change sizing mode to keep aspect ratio. view_fit="fill", ), collapse_panels=True, ) ``` ![image](https://github.com/rerun-io/rerun/assets/1220815/ccb154de-4fef-4dae-9cf1-17ea36c7da18) Models out the tensor slice selection in store compatible data structures Refrained from polishing up the ui all that much, it's pretty much the same but uses the new datastructure under the hood. Minor differences: * No longer show both arrows for 1D tensor slices. * allow reset to default and reset to default blueprint * change default for fill to keep aspect ratio Had to do add a bit of codegen for python struct serialization, but ended up doing most of the new datatypes by hand after all because of hard to generalize conversions. Tested manually against 1D tensors. * Part of #6083 ### 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): * Using examples from latest `main` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6590?manifest_url=https://app.rerun.io/version/main/examples_manifest.json) * Using full set of examples from `nightly` build: [rerun.io/viewer](https://rerun.io/viewer/pr/6590?manifest_url=https://app.rerun.io/version/nightly/examples_manifest.json) * [x] The PR title and labels are set such as to maximize their usefulness for the next release's CHANGELOG * [x] If applicable, add a new check to the [release checklist](https://github.com/rerun-io/rerun/blob/main/tests/python/release_checklist)! - [PR Build Summary](https://build.rerun.io/pr/6590) - [Recent benchmark results](https://build.rerun.io/graphs/crates.html) - [Wasm size tracking](https://build.rerun.io/graphs/sizes.html) To run all checks from `main`, comment on the PR with `@rerun-bot full-check`.
Closed in favor of new tracking issue |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Labels
🟦 blueprint
The data that defines our UI
🐍 Python API
Python logging API
📺 re_viewer
affects re_viewer itself
🎄 tracking issue
issue that tracks a bunch of subissues
Formalizing the data structure of various space view blueprints and make them accessible from ui and code
General
Spatial views
ViewCoordinates
component #2663AxisThree
doesn't have any required components, it can be enabled everywhereTensor
TimeSeries & BarChart
Log View Make LogView customizable from Blueprint #6824
List almost certainly incomplete!
The text was updated successfully, but these errors were encountered: