Skip to content
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

[Viewer3D] Add slider to display cameras based on their resection IDs #2235

Merged
merged 7 commits into from
Nov 17, 2023

Conversation

cbentejac
Copy link
Contributor

@cbentejac cbentejac commented Oct 31, 2023

Description

This PR adds a slider in the 3D Viewer to filter cameras in the 3D view based on their resection IDs. The slider appears when the "Display Cameras Based On Resection IDs" button is selected, and if at least one of the objects currently loaded in the 3D Viewer has cameras with identifiable resection IDs.

Any camera whose resection ID is higher than the one set through the slider will be hidden the 3D view, which allows to visualize the order in which the cameras have been added, and the groups in which they have been added.

Additionally, the "DISPLAY" and "CAMERA" groups become tabs that can be expanded and hidden. By default, they are hidden.

This relates to alicevision/QtAliceVision#51 and alicevision/AliceVision#1593.

If any model with cameras is displayed in the 3D Viewer, a slider can
be used to filter the cameras that are being currently displayed based
on their resection IDs. This allows to visualize the order in which the
cameras have been added, and the groups in which they have been added.
The `ExpandableGroup` is based on QML's `GroupBox`. It is very similar
to the `Group` object, with the difference that it can be hidden/expanded
by clicking on the group's title/label.
…evant

The content of the "DISPLAY" and "CAMERA" groups is hidden by default.
Instead of customizing the `Group` object's toolbar to hide/expand these
groups, the `ExpandableGroup` object, which is specifically made to handle
these cases, is used. The groups can be expanded either by clicking
the dedicated tool button or anywhere on the toolbar.
Instead of displaying the resection IDs of the 3D model that was loaded
last, update the display whenever the active model selection changes.
@fabiencastan fabiencastan merged commit df6d38f into develop Nov 17, 2023
4 checks passed
@fabiencastan fabiencastan deleted the dev/resectionIdFiltering branch November 17, 2023 09:20
@fabiencastan fabiencastan added the feature new feature (proposed as PR or issue planned by dev) label Nov 24, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
feature new feature (proposed as PR or issue planned by dev) UI
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants