-
Notifications
You must be signed in to change notification settings - Fork 58
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
ENH: Initial VR home widget implementation #100
Open
jcfr
wants to merge
1
commit into
KitwareMedical:master
Choose a base branch
from
jcfr:gui-widgets-interactions-rebased
base: master
Could not load branches
Branch not found: {{ refName }}
Loading
Could not load tags
Nothing to show
Loading
Are you sure you want to change the base?
Some commits from the old base branch may be removed from the timeline,
and old review comments may become outdated.
Conversation
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
10 tasks
jcfr
force-pushed
the
gui-widgets-interactions-rebased
branch
from
October 13, 2022 20:15
d749324
to
b4b5598
Compare
This commit is intended to implement features described in KitwareMedical#43 by integrating changes originally associated with the following branches: * dgmato/gui-widgets-interactions - initially developed between 2021-12-15 and 2022-05-23 by @dgmato with contributions from @cpinter. - based on the "gui-widgets-module" branch * dgmato/gui-widgets-module - initially developed between 2018-10-18 and 2021-10-0523 by @cpinter with contributions from @dgmato, @lassoan, @SalehChoueib and @mohammadrashid0917 - with first commit titled "ENH: Initial VR home widget implementation" based of "dgmato/virtual-widget" branch. * dgmato/virtual-widget - initial commit contributed by @SalehChoueib on 2018-10-18 (ENH: Add virtual widget from arbitrary Qt Widget !WIP!) - follow-up development by @cpinter and @mohammadrashid0917 between 2019-05-13 and 2019-06-13 ------------ Commits originally associated with branch "dgmato/gui-widgets-interactions": * ENH: Remove unused UI widget in GUI Widgets module * ENH: Do not load avatar models when setting up VR pointer * ENH: Add new button to set up interaction Set up will include getting the VR controller transform node and applying that transform to the pointer model. * ENH: Add GUIWidgets module to Virtual Reality category for easy access * ENH: Load avatar models and transform pointer by right controller transform * ENH: Reorganize code and remove unused code * COMP: Fix build error due to Slicer API changes * ENH: Add new module target library vtkSlicerMarkupsModuleMRMLDisplayableManager * ENH: Send mouse release event to complete simulated mouse click after press event * ENH: Modify coordinate system for GUI widget Origin is located on the top left corner in Qt widgets. * ENH: Add button "Start interaction" to simulate interaction with VR pointer * ENH: Add module to simulate VR pointer display and movement ------------ Commits originally associated with branch "dgmato/gui-widgets-module": * ENH: Add buttons in GUIWidgets to show VR widgets; Fix include dirs variable in CMake * ENH: Add GUIWidgets module that provides in-VR Qt widget This is still a prototype, a few crucial features are needed: - Handle mouse interactions on the widget: forward events to Qt - Support moving the widget to arbitrary position - Implement outline tube and handle to grab with the controller - Option to keep widget floating in certain position relative to head motion (~HUD) - Implement laser pointer and use the intersection with these widgets as mouse interaction See more history: https://github.com/cpinter/VtkQWidgetTest * ENH: Creating and registering VR segment editor widget Creates and registers the VR segment editor widget (which can be switched to from the VR home widget) * BUG: Fix issues in VR home widget and the data widget * ENH: Creating and registering VR data module widget Creates and registers the VR data module widget (which can be switched to from the VR home widget) * ENH: Convert the interactor style to use the new vtkMRMLViewInteractorStyle Fix build error with Slicer-4.10 * STYLE: Add function documentation * ENH: Initial VR home widget implementation Squashed commits (originally associated with branch "dgmato/virtual-widget") * ENH: Create framework for registering VR modules Adds registerModule function to qMRMLVRView which can be called to create a new button for that module on the Modules bar in the VR home widget * ENH: Make VR home widget controls functional These changes make it so that changes in the module widget (viewable in Slicer) are reflected in the home widget (viewable in VR) and vice versa * ENH: Add VR optimized Qt Style Sheet This style sheet makes the text in the VR menu widget bigger, and gives the buttons and slider handles different colors for unpressed, hover, and pressed statuses. * ENH: Add VR home widget WIP Its UI is more or less complete but events are not handled and style sheet is needed * ENH: Add virtual widget from arbitrary Qt Widget !WIP! Co-authored-by: Andras Lasso <[email protected]> Co-authored-by: Csaba Pinter <[email protected]> Co-authored-by: David Garcia Mato <[email protected]> Co-authored-by: Mohammad Rashid <[email protected]> Co-authored-by: Sal Choueib <[email protected]>
jcfr
force-pushed
the
gui-widgets-interactions-rebased
branch
from
April 9, 2023 20:01
b4b5598
to
27c945d
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This commit is intended to implement features described in #43 by integrating changes originally associated with the following branches:
dgmato/gui-widgets-interactions
dgmato/gui-widgets-module
branchdgmato/gui-widgets-module
dgmato/virtual-widget
branch.dgmato/virtual-widget
Commits originally associated with branch
dgmato/gui-widgets-interactions
:ENH: Remove unused UI widget in GUI Widgets module
ENH: Do not load avatar models when setting up VR pointer
ENH: Add new button to set up interaction Set up will include getting the VR controller transform node and applying that transform to the pointer model.
ENH: Add GUIWidgets module to Virtual Reality category for easy access
ENH: Load avatar models and transform pointer by right controller transform
ENH: Reorganize code and remove unused code
COMP: Fix build error due to Slicer API changes
ENH: Add new module target library vtkSlicerMarkupsModuleMRMLDisplayableManager
ENH: Send mouse release event to complete simulated mouse click after press event
ENH: Modify coordinate system for GUI widget Origin is located on the top left corner in Qt widgets.
ENH: Add button "Start interaction" to simulate interaction with VR pointer
ENH: Add module to simulate VR pointer display and movement
Commits originally associated with branch
dgmato/gui-widgets-module
:ENH: Add buttons in GUIWidgets to show VR widgets; Fix include dirs variable in CMake
ENH: Add GUIWidgets module that provides in-VR Qt widget
This is still a prototype, a few crucial features are needed:
See more history: https://github.com/cpinter/VtkQWidgetTest
ENH: Creating and registering VR segment editor widget Creates and registers the VR segment editor widget (which can be switched to from the VR home widget)
BUG: Fix issues in VR home widget and the data widget
ENH: Creating and registering VR data module widget Creates and registers the VR data module widget (which can be switched to from the VR home widget)
ENH: Convert the interactor style to use the new vtkMRMLViewInteractorStyle Fix build error with Slicer-4.10
STYLE: Add function documentation
ENH: Initial VR home widget implementation
Squashed commits (originally associated with branch
dgmato/virtual-widget
)ENH: Create framework for registering VR modules Adds registerModule function to qMRMLVRView which can be called to create a new button for that module on the Modules bar in the VR home widget
ENH: Make VR home widget controls functional These changes make it so that changes in the module widget (viewable in Slicer) are reflected in the home widget (viewable in VR) and vice versa
ENH: Add VR optimized Qt Style Sheet This style sheet makes the text in the VR menu widget bigger, and gives the buttons and slider handles different colors for unpressed, hover, and pressed statuses.
ENH: Add VR home widget WIP Its UI is more or less complete but events are not handled and style sheet is needed
ENH: Add virtual widget from arbitrary Qt Widget !WIP!
Co-authored-by: Andras Lasso [email protected]
Co-authored-by: Csaba Pinter [email protected]
Co-authored-by: David Garcia Mato [email protected]
Co-authored-by: Mohammad Rashid [email protected]
Co-authored-by: Sal Choueib [email protected]