* 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)
* 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)
* 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
* Clarifies which system is control over time and camera at what time
* Fixes#1845
* Prevent invalid switching between session recoring and camera path playback
* Some cleanup, mosly of SessionRecording and NavigationHandler. Also, remove ExternInteraction and some other unused/nonexisting functions
* Joysticks can either be "JoystickLike" or "TriggerLike", where the
triggers are normalized and have the deadzone close to -1 instead to 0
* Solves issue with zoom friction not to turn off for controllers
* Add implementation of the EventEngine to handle global event chains
* Add properties to SceneGraphNodes to determine two distance radii for camera-based events
Rotates around the y-axis of the node instead of the z-axis. Would be great if the nodes themselves knew about which axis of rotation would be to prefer.
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