Commit Graph

21 Commits

Author SHA1 Message Date
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Alexander Bock
6e29d898cf Update copyright header 2024-02-06 15:53:24 +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
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
ddcbe85b51 Add events when paths are started or finished (closes #1834) 2023-03-11 17:20:20 +01:00
Alexander Bock
4f4764209f Happy new year 2023-01-02 11:19:33 +01:00
Emma Broman
06a22c2592 Fix problem with camera path not finishing properly on skipToEnd 2022-10-07 09:17:58 +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
d0fcec569c Address stability problems for camera paths and make them more useful in general
* Change spline curve parameter interval from [0,1] to [0,nSegments], for slightly increased precision
* Use linear paths whenever precision isn't enough/paths are too long (and traverse linear paths differently, to make them less depending on the distance)
* Remove OrbitalNavigator.LinearFlight and instead add "Zoom to" helper functions (closes #1837 )
* Add check to prevent triggering awkward short paths, for example when flying to the current target or to the same geo position twice
* Refactor speed code and handle speed when path is shorter than start+closeup distance
* Add easing to speed dampening
* Add topic for engine mode (to be used for UI later)
* Cleaner log when creating paths (some previous info messages are now debug messages)

Related PR: OpenSpace/OpenSpace-WebGuiFrontend#70
2022-02-25 08:49:19 +01:00
Alexander Bock
d7d279ea16 Happy new year 2022-01-01 12:32:55 +01:00
Alexander Bock
4a860fb01d Some code facelifting 2021-10-14 10:31:46 +02:00
Emma Broman
1516c066c9 Don't scale camera path speed if no duration was given
Just using the current distance for camera speed works better than setting a default duration based on the path length
2021-08-25 15:58:28 +02:00
Emma Broman
5d11af00dc Rename curve type to path type
And clarify documentation a little. "Path type" makes more sense to a user, who is never actually exposed to the concept of curves
2021-08-16 12:59:00 +02:00
Emma Broman
a39dcf2567 Adress review comments 2021-08-15 19:34:10 +02:00
Emma Broman
4ccc47161c Add an AvoidCollisionWithLookAt curve
Same path as AvoidCollision, but with lookat rotation instead of slerp. Useful (needed) for some cases in the interactive installations, but should be replaced later on as it leads to fast rotations
2021-08-13 15:55:06 +02:00
Emma Broman
771aa46fcd Adress review comments 2021-07-09 15:35:14 +02:00
Emma Broman
6119b9b2a2 Make speed scale affect speed during path traversal 2021-06-24 15:04:25 +02:00
Emma Broman
43729ed911 Move path creation code into path class file 2021-06-23 15:58:48 +02:00
Emma Broman
77bdfaefd6 Move camera path code into core and refactor navigation code a bit 2021-06-23 09:12:36 +02:00