Commit Graph

90 Commits

Author SHA1 Message Date
Emma Broman 09a40f62dc Rename goToGeo -> jumpToGeo (#3296)
* Remove unused bool argument in globebrowsing functions
* Refactor some globe browsing functions
* Start updating goToGeo function to fade instead of just jump
* Add choice for whtehr to use default or arrival height when flying to a geo2
* Update / add docs for fly-to and go-to functions
* Rename function and add deprecated version of `goToGeo`
2024-06-04 16:18:03 +02:00
Emma Broman a82af895d7 Issue/3016 - Settings for jumpTo (#3080)
* Add script for jumpTo scene graph node and navigation state

* Add property to control how long the fading takes (navigation handler)

* Update GUI hash

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-04-04 10:20:24 +02:00
Emma Broman d2f5dd43a5 Include timestamp in navigation state (#3078)
* Add optional timestamp to navigation state

* add option to include timetamp when setting/loading navigation state

* Don't require file extension when loading navstate

for symmetry with save function

* Update Navstate docs

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-03-21 20:48:57 +01:00
Alexander Bock 534f92c485 Second linting pass and adding .clang_tidy file (#3128) 2024-03-18 22:46:17 +01:00
Alexander Bock 2759c00e4b Pass through the code to address clang-tidy linting (#3083) 2024-03-17 00:58:50 +01:00
Alexander Bock 2fbcb0544e NavigationState handling (#3023)
* Change the navigation state format from Lua to JSON.  Add the ability to set the navigation state in the profile editor based on a file
2024-02-25 01:09:32 +01:00
Alexander Bock 6e29d898cf Update copyright header 2024-02-06 15:53:24 +01:00
Emma Broman af5ebd7731 Issue/2949 - Fix for camera transition events (#2982)
* Fix variable name typo

* Update transitions to not care about which sphere we were previously in

* Also handle when anchor node changes

* Remove log messages used for testing, and unused variable

* Update src/navigation/navigationhandler.cpp

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-12-20 08:28:34 +01:00
Emma Broman 8a1b6aceb2 Keep track of aim from navigations state when creating a camera path (#2981) 2023-12-20 08:28:21 +01:00
Emma Broman 9c77a12269 Issue/2665 - Show timer for how long time left in camera path (#2980)
* Add a camera path topic and compute remaining time in path

* Remove unused parameter in function

* Include speed scale in estimation of time the path will take

* Includes cleanup and address review comments

* Round instead of ceil, to make countdown reach 0 in most cases

* Update GUI hash
2023-12-20 08:28:07 +01:00
Alexander Bock 7db7c40841 Doxygen style overhaul (#2954)
Reformatting the existing Doxygen comments to be unified
2023-11-20 23:39:17 +01:00
Alexander Bock 4ee078502b Doxygen (#2953)
* Update Doxygen and add new CSS file
* Remove Doxygen warnings
2023-11-19 16:35:14 +01:00
Emma Broman aae4d04c43 Add documentation for camera path instruction dictionary
used as input for `openspace.pathnavigation.createPath`
2023-11-15 16:00:36 +01:00
Alexander Bock 06a7c692c5 Add special handling for a number of properties in the DashboardItemPropertyValue (closes #2899) 2023-10-19 11:21:28 +02:00
Emma Broman 7bfedbdf12 Feature - OrbitalNavigator Setting - Orbit Around Up (#2874)
* Hack to try to get desired behavior (for testing)

* Add properties to control axes of rotation and whether rotation aorund up should be enabled

* Generalze orbit function to just use an angle instead of speed and deltatime

* Move speed scale computation to a separate function

* Refactor horizontal translation code a bit

* Refactor speed computation for idel behavior

* Refactor/clean up orbit code

* Add property docs

* Add some safety checks

* Apply suggestions from code review

Co-authored-by: Alexander Bock <alexander.bock@liu.se>

* More updates based on code review

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-09-11 10:44:12 +02:00
Emma Broman f591938f01 Add options to disable roll and zoom in OrbitalNavigator (#2866) 2023-08-29 09:12:02 +02:00
Emma Broman c949a9892c Issue/2227 - Option to just specify a scene graph node in profile editor camera dialog (#2699)
* Add profile edit to start camera at a given scene graph node

* Restructure some navigation code to allow computing camera pose from node

* Delay computation of camera pose for node spec as well... And give NodeInfo a more extensive name (The objects may move during the frame, making the computed pose invalid)

* Update to make scene graph node first option in editor

* Add some description to each tab in the camera dialog

* Add operator== for CameraGoToNode struct to make the unit tests compile

* Add version handling for new profile version

* Add option to specify an optional height

* Update current version constant, for old test cases to go through successfully

* Add some test files

Note that apparently, the profile loading does not check the values of the individual fields, just existence, and type. So added two test cases that are not currently checked.

---------

Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
2023-05-24 11:22:41 +02:00
Malin E c0a1dc7e79 Dont allow axis flipping for propertry axis 2023-05-17 10:50:35 +02:00
Malin E 6ce55400d1 Enable reversing of movement for joystick axes 2023-05-17 10:14:47 +02:00
Micah Acinapura 5a9bb529f3 Feature/night sky items (#2613)
* added night sky items and camera event
---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2023-04-16 17:29:48 -04:00
Malin E 4bda27dcdf Start to address PR comments 2023-04-13 13:30:16 +02:00
Malin E 96f7ac1d69 Some small clean up 2023-03-28 10:17:04 +02:00
Malin E 99d52ce144 Merge branch 'master' into feature/min-max-distance
* Solve conflicts
2023-03-27 15:43:22 +02:00
Alexander Bock ddcbe85b51 Add events when paths are started or finished (closes #1834) 2023-03-11 17:20:20 +01:00
Alexander Bock 6fa589c880 Adding option for constant velocity flight (closes #2150)
Using adapted code from James H
2023-03-11 00:16:54 +01:00
Alexander Bock 1aef976911 Show error message when trying to save navigation state to an invalid file path (closes #2508) 2023-03-07 00:05:31 +01:00
Alexander Bock a711591c09 Update Doxygen (#2537)
* Modernizing Doxygen
* Remove warnings for Doxygen
2023-03-06 23:41:24 +01:00
Emma Broman 3ffb29b9be Add option to invert idle behavior (fixes #2379)
Both through separate property and by allowing negative speed factor
2023-02-27 16:06:15 +01:00
Emma Broman 352c9dd5ec Touch module code cleanup (#2465)
* Remove unused feature that allowed us to "pick" nodes using touch (it didn't really work and had some nasty hardcoded and costly implementation). Fixes Touch interaction picking refactor #1041

* General refactoring of code and removing redundant code

* Make touch markers prettier (change default color and smoothen edges)

* Add module property to control which renderable types are "directly touchable"

* Add SGN property to control which individual nodes are "directly touchable" ("SupportsDirectInteraction")

* Fix stuttering when zooming in closer than the orbitalnavigator allows
2023-02-14 13:55:24 +01:00
Alexander Bock ac228c9c87 Add a new dashboard item that shows the state of input devices (closes #2415) 2023-01-21 18:29:17 +01:00
Malin E c10361d81e Undo misstake 2023-01-12 15:20:00 +01:00
Malin E c5d2e75854 Some clean up 2023-01-12 14:33:39 +01:00
Malin E a59ae2661d Slider adjustment for max distance property 2023-01-12 11:48:04 +01:00
Malin E 8ed9d083cb Adjust camera position if outside the max distance limit 2023-01-12 11:01:32 +01:00
Malin E 659dab821c Add property to limit zoom out distance in OrbitalNavigator 2023-01-11 17:36:19 +01:00
Malin E a990e1679b Add lua function to set minimum allowed distance for the OrbitalNavigator 2023-01-11 16:40:57 +01:00
Alexander Bock 4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Alexander Bock 524b78f5d2 Add the ability to disablee keybindings (closes #2238) 2022-10-14 11:24:44 +02:00
Emma Broman 06a22c2592 Fix problem with camera path not finishing properly on skipToEnd 2022-10-07 09:17:58 +02:00
Emma Broman 8192292229 Move findNodeNearTarget function from path to pathnavigator
To reduce conflicts between wisdome installation branch and master
2022-10-06 22:25:27 +02:00
Emma Broman 5a970ee6e0 Add a function to skip immediately to the end of a playing camera path 2022-10-06 22:13:06 +02:00
Alexander Bock 163ac4dcef Cleanup of mostly asset files
- Fixes for all files
 - constexpr cleanup
 - Cosmetic changes
 - Remove punctuation from the end of messages
2022-07-28 17:21:59 +02:00
Alexander Bock c1252902c7 More Code Cleanup (#2192)
* Harmonizing ( and ) in function calls
* static const -> constexpr
* Fix compile issue
* Unify shader tab size
* Add _fs and _vs to shaders
* Harmonize spacing
2022-07-26 11:22:41 +02:00
Alexander Bock 9b1143f02f Ubuntu 22.04 and GCC11 fixes (#2163)
* Update CEF version
* Update Ghoul
* Update SGCT
* Update codegen
* Remove warnings happening on Ubuntu 22.04 with GCC 11
* AppleClang warning fixes
* Compile fix for Ubuntu and MacOS
* Add Qt 6.2.3 to the CMAKE_PREFIX_PATH
2022-06-28 00:46:01 +02:00
Malin E 102ceafd6f Add Lua function to list all connected joysticks 2022-04-13 15:32:03 +02:00
Emma Broman d0d918cdae Camera path updates (issue #1919 and #1947) (#1966)
* Use linear camera path when within target bounding sphere

And do a workaround for speed computation when bounding spheres are large
Closes #1910 (by at least making it so that the camera moves in an observable speed)

* Make linear paths rotate based on time rather than distance (closes #1947)
2022-04-06 17:34:36 +02:00
Emma Broman 2f29fcd9e2 Fix wrong order of path type enum, and make it enum class 2022-03-22 11:15:20 +01:00
Emma Broman 4e45f6634d Add helper function and timer to trigger idle behavior (#1898)
* Format property infos in orbital navigator more consistently

* Add helper function to trigger an idle behavior (issue #1833)

* Add timer to start idle behavior when camera is idle (issue #1730)
2022-03-15 10:06:24 +01:00
Emma Broman a0433c0419 Use largest of boudning and interaction sphere for creating camera path (closes #1897) 2022-03-02 10:52:03 +01:00
Emma Broman 6e751585b0 Add a property to change the default arrival distance for camera paths 2022-02-27 20:51:26 +01:00