* Make GlobeRotation and GlobeTranslation work for non-globes and move them to the base module
* Move ellipsoid and geodetic classes into the core
* Allow more things to take scene graph nodes instead of RenderableGlobes
* Move goToGeo and related Lua functions into the core
* Move more functions from the pathnavigation namespace into the navigation namespace
---------
Co-authored-by: Emma Broman <emma.broman@liu.se>
- Remove toStringConversion function and move json_helper include out of numericalproperty.inl
- Optimizing some header files
- Remove duplicate Lua functions from properties.
- Move List,Option,Selection,String, and TriggerProperty into misc folder
- Move lua_helper include out of inline file
- Add lua_helper to the precompiled header
- Declare property functions as final. No longer have OptionProperty derive from IntProperty
- Remove Dictionary header from properties
* Makes Translation/Scale/Rotation all able to have a TimeFrame, not just the SpiceRotation. Add read-only BoolProperty to the TimeFrame that indicates whether the current time is a in the timeframe
---------
Co-authored-by: Emma Broman <emma.broman@liu.se>
* Add possiblity to sort SGNs in GUI based on numerical value
And apply to grids
* Fix mistake in docs
* Apply suggestions from code review
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Rename Order -> Ordering and remove unused getter functions
* Update GUI hash to match the UI changes
---------
Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
* Always add GUI properties, even if tag is not in the asset
To make objects wihtout GUI tag be included in the UI
* Hide the hover circle, to clean up scene menu list a little
* set root node gui hidden property to true
* Properly add the gui properties for all scene graph nodes (even root)
* Update GUI hash
* Add property for actual bounding and interaction sphere value
* Apply suggestions from code review (no "Read Only" in name)
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
* 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
* Cleanup Property code
* Remove NOLINT statements
* Return Property class types as string_view
* Remove getStringValue function
* Simplify string value retrieval
* Ensure that image paths in the ImageSequenceTileProvider are sorted (closes#2205)
* Some cleanup of OpenSpaceEngine
* Cleanup documentation
* Some more cleanup of engine classes
* Some more cleanup
* Update SGCT repository
* Use new Jenkins node identifiers as the old method broke with update
* Add implementation of the EventEngine to handle global event chains
* Add properties to SceneGraphNodes to determine two distance radii for camera-based events
* Add ability to render the bounding sphere as a debug option
* Separate boundingsphere and interactionspheres
* Correctly compute BoundingSpheres for more renderables (RenderablePlanesCloud, RenderableOrbitalKepler)
* Adapting to introduction of new Dictionary class in Ghoul
* Mainly replacing usage of float instead of doubles as expected
* Adjust to the lack of the hasKeyAndValue function
* Cleanup
* CMake cleanups
* Update current year
* Update copyright header
* Use script to return list of all modules
* Update credits, license and ghoul
Introduce the ability to navigate using an anchor and aim.
Example use: Set spacecraft as anchor and planet as aim to always look down at a planet, while followin the spacecraft in its orbit.
* Update node packages, download nodejs in build process, start server from openspace process
* Patch CEF cmake automatically
* Build webserver automatically
* Work on CMake for WebBrowser, Webgui and CefWebGui
* Map key modifiers to CEF
* Smooth time interpolation in webgui
* Automatically focus on search field in filter lists
* Move webgui code to external repositories
* Use asset system to distribute webgui
* Remove webgui from main repository
* Add support for right click in webgui and improve timetopic
* Resolve cmake policy warning
* Add relative time interpolation to lua interface
* Sanitize json error message before logging error. Workaround for #736
* Added gui properties to scene graph nodes
* Add version topic
* Add shortcuttopic
* Add ability to disable rendering of cefwebgui
* Don't do message loop work if there is no browser.
* Set correct path to nodejs on unix
* Message loop work in presync
* modifications for shortcuts in gui, added names for shortcuts
* Set properties via lua scripts
* Allow gui grouping for shortcuts
* Add gui paths keybindings
* Blocking keyboard callbacks when webgui has keyboard focus in an editable field
* Allow disabling of WebBrowser and CefWebGui
* Make it possible to hide GUI
* Get rid of redundant dashboard items if web gui is used
* Hide WebGUI on slave nodes
* Hide WebGUI on main rendering window if a GUI window exists
* Enable WebGUI on default unless it is overwritten in the openspace.cfg
* Add guiName for propery owners in socket api
* Removal of ChunkRenderer, ChunkedLodGlobe, ChunkCuller, chunklevel evaluator, culling classes, layershadermanager, GpuLayer, GPUData, ChunkNode, Grid, BasicGrid, Chunk files, Angle, AABB classes, PointGlobe, Ellipsoid, TileSelector, tiledatatype, iodescription, simplerawtilerreader, rawtilereader
* Less dynamic allocation for SkirtedGrid, LayerManager, RenderableGlobe, TextureUnit
* Clean up memory management in RawTiles
* Code simplification
* Optimize shader uniform setting
* Introduce UniformCache
* Callback simplification
* Turn ChunkNode into a struct
* Use a MemoryPool to organize all ChunkNodes rather than use unique_ptr and the necessary memory allocation
* Collect draw calls
* Consolidate fragment shaders between local and global renderer
* Shader cleanup and optimization
* Update CMake to not include included shaders
* Integrate traversal function into the looping
* Replace std::queue with std::vector
* Merge TextureContainer into MemoryAwareTileCache
* Lazy computation of chunk bounding boxes
* Memory management of LayerGroup
* Remove class hierarchy from tileproviders (temporaltileprovider not working yet)
* Remove PBO classes
* Chunk status stored in Chunk
* Don't create a copy of the ChunkTilePile
* Enable culling by projected area on default
* Have raw tile reader return a Tile instead of a shared_ptr to a tile
* Start making GDAL mandatory
* Increase the default lod scale factor to 15
* First implementation of time frames
* Add TimeFrameUnion. Only show solar system 1850-2150.
* Consider dependencies when determining whether time frame is active
* Code review fixes.
* Make height map fallback layer work again
* Add documentation to joystick button bindings
* Removed grouped property headers
* Add new version number constant generated by CMake
* Make Joystick deadzone work properly
* Change the startup date on Earth to today
* Fix key modifier handling
* Add debugging indices for TreeNodeDebugging
* Fix script schedule for OsirisRex
* Do not open Mission schedule automatically
* Upload default projection texture automatically
* General code cleanup
* Fix check_style_guide warnings
* Remove .clang-format
* MacOS compile fixes
* Clang analyzer fixes
* Fix Triton asset file
* Display an error if no Property matches a regex in setPropertyValue
* Correct user-facing name for some Moon assets
* Add fade in and fade out helping functions
* Reenable label fading in New Horizons
* Added GUI hint to hide uninteresting nodes
* Set Hidden Hint on barycenter nodes