Commit Graph

1801 Commits

Author SHA1 Message Date
Micah Acinapura f1808aea76 Merge branch 'master' into merge/2022softwareintegration 2025-05-14 10:09:29 -04:00
Emma Broman e33ad09632 Update GUI hash
Move profile info to File menu, Add color to friction buttons, tighten up mission panel, and close windows menu when selecting a window
2025-05-14 12:03:12 +02:00
Anders Lundkvist a05380779e Add time varying screen space image online class (#3646)
New screen space renderable class, ScreenSpaceTimeVaryingImageOnline, for displaying online time-dependent images from a JSON file.

This class loads a JSON file containing timestamped image URLs and displays the image that corresponds to the current simulation time. It only renders during the valid time interval defined by the dataset and updates automatically as time progresses.
2025-05-13 08:00:54 -04:00
Alexander Bock 22735c5aaf Add support for non-numerical values to the DashboardItemTimevaryingText (closes #3653) 2025-05-12 21:19:24 +02:00
Emma Broman 1d56563412 Move profile name from top bar center to File menu (#3628)
* Add more profile meta info to profile topic, and gueard for nonexisting meta entry

* Add punctuation to end of profile descriptions

* Cleanup

* Apply suggestions from code review

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

* Update GUI hash

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-05-06 18:17:41 +02:00
Anders Lundkvist 517e44db5a Add time varying dashboard item text class (#3621)
New dashboard item class, DashboardItemTimeVaryingText, designed to display numeric values from a JSON time series, dynamically updating based on time. Also added examples for this.

Useful for displaying dynamic values like KP index or solar wind parameters in sync with time.
---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-05-05 15:31:02 -04:00
Alexander Bock 214c3056fb Add Kuiper constellation of satellites 2025-04-30 08:47:47 +02:00
Emma Broman a6354d14a6 Fix typo 2025-04-29 15:58:15 +02:00
Emma Broman d978476b93 Fix broken apollo assets 2025-04-29 15:56:05 +02:00
Ylva Selling b1e843cb48 Small UI rewrite fixes 2025-04-29 15:49:48 +02:00
Ylva Selling e3f5b83f74 Feature/2025 UI rewrite (#3608)
* Remove Escape keybind; move gui keybind to F2

* Clear up keybinds properly

* Workaround for CEF focus bug

* Add TODO comment

* Guard against null ptr dereferencing

* Remove shift tab

* add additional keyboard mapping from glfw to cef

* Change dashboards to make prototype for first user test

* add mission added/removed event, disptached when a mission has been loaded/unloaded

* send missions as map instaed of array, rename missionName -> name

* Set keybind for toggling overlays to shift+f2

* Remove property for showing the title in the gui skybrowser module

* Remove default setting for skybrowser

* First implementation of setting the ui panel visibility from the launcher

* Add profile topic

* Coding style adjustment

* Add markNodes to the profiletopic

* Change format of additional data of options in engine

* Address PR comments

* map escape key from glfw to cef correctly

* fix issue with "Enter" key not working on buttons and other input fields in CEF

* Add test for new profile version

* Send skybrowser data although we are outside the solar system

* Update webgui to new ui

* Add name to profile topic

* Add cef variable to javascript context for when browser is in cef

* Use camelcase for cef variable

* Rewrite shortcuts topic to ActionKeybind and pass data in a better way (#3590)

* Rewrite shortcuts topic to ActionKeybind and pass data in a better way

* Fix strange error with file structure

* Address PR comments

* Address PR comments

* Address PR comments

* Make numbers in asset file prettier

* Rename name to identifier for missions event

* Clean up browser code

* Update UI hash (to fix the actions panel not working)

And update outdated comment. The backend is not part of this

* Feature/notify meta data change (#3605)

* Add notifyMetaDataChangeListener to topic

* First round of clean up the data passing

* Convert from string to json for metadata

* Update additional data to json

* Use nlohmann::json for additional data

* Pass meta data in new structure to topics

* Remove meta data method

* Fix mistake in merge

* Update src/properties/property.cpp

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>

* remove TODO comment that will be fixed by this PR

* Address PR comments

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Emma Broman <emma.broman@liu.se>

* Address PR comment

* Remove function for setting the endpoint

* Update frontend hash

* Remove enabled property from exoplanets module

* Remove enabled property from skybrowser module

* Update default UI panels json

* Remove setting of enabled properties for skybrowser and exoplanets

* Update gui hash

* Auto format json

---------

Co-authored-by: Andreas Engberg <adde.engberg@gmail.com>
Co-authored-by: Emma Broman <emma.broman@liu.se>
Co-authored-by: Alexander Bock <alexander.bock@liu.se>
Co-authored-by: Alexander Bock <mail@alexanderbock.eu>
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
2025-04-29 15:43:56 +02:00
Emma Broman e0df6d6c2e Default keybinds asset cleanup (#3618)
* Split default keybinds asset file into one file for the actions and one for the keybinds

* Renaming the `default_actions.asset -> solarsystem_actions.asset` and then separating the `default_keybindings.asset` into `default_keybindings` and `default_actions`

* Move time action to correct place in file

* Update ESC -> Ctrl+Q for toggling a shutdown

Also add comment to the clearKey lines to make the connection easier to see

* Remove Alt+R keybinding

* Add asset meta for keybindings asset

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-04-25 14:12:26 +02:00
Alexander Bock b111b24e8a Add horizons-based NewHorizons asset. Move Voyager and Pioneer horizons files into separate folders. Create new interstellar horizons file that replaces previous voyager-pioneer one (closes #3273) 2025-04-24 09:09:42 +02:00
Alexander Bock c82a8a763f Reparent the milkyway galaxy to the root to make it not disappear when SPICE information runs out (closes #3232) 2025-04-23 17:38:32 +02:00
Anders Lundkvist ad786f7d5c Add RenderableSwitch class (#3597) 2025-04-23 16:44:24 +02:00
Alexander Bock 6dc738e54e Move functions about globe locations from the GlobeBrowsingModule into the core (#3613)
* 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>
2025-04-23 16:15:17 +02:00
Alexander Bock b02680a360 Add new TimeFrame that parses Spice kernels (#3600) 2025-04-22 20:47:17 +02:00
Emma Broman ad324b1292 Remove "Up" keybind and retire property_helper and renderable_helper (#3604)
* Remove keybindings to the UP key

Removed the actions as well as they are probably not needed. We have the "now" button and it is rare that one want to interpolate to now

* Replace property_helper usage with function from core_scripts (only `invert` was used)

And retire the property_helper and renderable_helper assets. They are no longer needed!
2025-04-22 15:02:13 +02:00
Alexander Bock a6dbbaf8e8 Add asset meta information for the Apollo assets (closes #3063) 2025-04-21 12:27:52 +02:00
Brian Abbott 4982cd95e5 Alterations made to the GUI name and ordering of digital universie assets. (#3460)
---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-04-19 11:43:04 +02:00
Emma Broman d2821b48b7 Add missing tags for the Moon (closes #3406) 2025-04-15 10:49:06 +02:00
Alexander Bock 17b182cda3 Add new Kepler data reader for the IAU's Minor Planet Center database files (#3591) 2025-04-14 19:50:05 +02:00
Arohdin d1ae420301 RenderableSphere assets: set blending and depth options 2025-04-08 14:21:49 +02:00
Alexander Bock 565bad9d4a Add new calibrator asset and profile (closes #2268) 2025-04-05 15:55:14 +02:00
Alexander Bock 80955e3ec1 Add ScreenSpaceRenderableRenderable class (#3575) 2025-04-01 12:45:35 +02:00
Alexander Bock ce56e2d118 Add WMS layer for Titan HiSAR map (#3565) 2025-03-31 11:02:18 +02:00
Alexander Bock 6b35545f69 Add reference information for the eclipse paths 2025-03-19 13:55:40 +01:00
Brian Abbott b5e6a0f13b Changed the color of the constellation boundaries (#3458) 2025-03-14 11:26:12 +01:00
Alexander Bock 5008aa7cd7 Adding documentation and examples (#3541)
- Make the SourceType and DestinationType parameters required in the DashboardItemAngle
  - Shift the "UTC" string in the DashboardDate from the FormatString to the TimeFormat
  - Make the SourceType and DestinationType parameters for the DashboardItemDistance required
  - Add new "Deltatime" option to the DashboardItemFramerate.  Add examples for the DashboardItemFramerate
  - Fix issue where the inputstate would not update if no option was selected
  - Automatically disable simplification if a unit is requested in the asset for a DashboardItemSimulationIncrement or DashboardItemVelocity
2025-03-14 11:25:26 +01:00
ElonOlsson 305f0a7d65 fixed 2012 profile with the new kernels 2025-03-13 13:13:09 -04:00
Alexander Bock 7328a94fb1 TimeFrame specification and status (#3553)
* 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>
2025-03-10 13:53:32 +01:00
Alexander Bock b6d380d84c Add new class TimelineScale (#3536) 2025-03-06 13:06:19 +01:00
Alexander Bock b9910befcf Fix spelling error in the HEEQ rotation asset 2025-03-03 17:34:47 +01:00
David Wagner cb66065445 Add a "time offset" option to the SpiceRotation and SpiceTranslation (#3544)
Lets SpiceTranslation and SpiceRotation compute the transformation with a given time offset compared to the simulation time (or fixed date if one is configured)
2025-03-03 10:17:20 +01:00
Alexander Bock 1260ebf309 Don't throw warnings when disabling trails where none are currently loaded 2025-02-28 19:53:25 +01:00
Alexander Bock 3c811a488f Add a new DashboardItem to show the camera orientation (#3542) 2025-02-28 16:50:33 +01:00
Alexander Bock b813b9e80b Fix up the documentation for the Carrington to HEEQ rotation 2025-02-25 08:31:46 +01:00
Alexander Bock de57307537 Remove the Indian anti-satellite debris asset as the last of its known debris has reentered the atmosphere (closes #3529) 2025-02-19 15:07:27 +01:00
Alexander Bock 588c4a6f86 Fixing assets that had problems loading (#3528)
- Correctly remove interpolating render program to prevent invalid shader access
 - Fix Apollo 11 location
 - Fix Apollo 17 location
 - Replace errors with warnings for Gala and Rime instruments for Juice
 - Correctly rely on the solarsystembarycenter asset in the Voyager/Pioneer asset
 - Use correct identifier for the Jupiter barycenter
 - NASA Treks assets
 - Slidedeck
 - Fix unloading of missions
 - No longer crash when loading and unloading image sequence assets
2025-02-17 14:08:53 +01:00
Alexander Bock 0883101dc5 Use correct identifiers for the bastille day assets 2025-02-12 10:32:42 +01:00
Emma Broman 7f4bf73993 Cleanup and add some more examples (#3506)
* Remove duplicated node line example

* Update `ScreenSpaceBrowser` example to new format

* Add screenspace image examples

* Add docs and examples for `RenderableGrid`

* Add docs and examples for `RenderableRadialGrid` + create 10 grid segments per default

* Add docs and examples for `RenderableSphericalGrid`

* Remove the old, combined, grid example

* Apply suggestions from code review

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

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-02-11 09:37:57 +01:00
Alexander Bock fc0e3959ac Add new types for Scale, Translation, and Rotation that combines multiple instances together 2025-02-05 21:56:41 +01:00
Alexander Bock 8a567245e5 Use the correct period lengths for Neptune and Uranus
Can do that now as we have an increased-range default SPICE kernel
2025-02-03 19:50:29 +01:00
Emma Broman 3d3580fa65 Polish and docs for RenderableDistanceLabel and docs for RenderableNodeLine (#3485)
* Update add add documentation for `RenderableDistanceLabel`

* Move distancelabel to `base` module and remove now empty `vislab` module

* Add examples for `RenderableNodeLine` and `RenderableDistanceLabel`

* Fix faultily formatted documentation ID for `RenderableNodeLine`

* Make `RenderableDistanceLabel` unit use units from distanceconversion file

And simplify how the different names for a unit are specified

* Use new distanceUnitList() function for other classes that uses the units

* Change default unit to correct option according to documentation

* Make the text property readonly for `RenderableDistanceLabel`

* Add property to specify the precision of the number

distance label precision to docs

* Add examples with different units and descriptors

* Add docs description to `RenderableNodeLine`

* Update name in one of the examples

* Remove redundant switch cases

* Apply suggestions from code review

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-01-29 16:11:47 +01:00
Emma Broman c4cf883ec9 Docs and examples for RenderableDisc (#3482)
* Add description and update GUI property values

* Add examples with a single color

* Remove old example file

* Rename ellipse example and remove width

* Apply suggestions from code review

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>

* Address review comments

* Also update renerable description

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-01-17 14:16:01 +01:00
Emma Broman 0dbc331ebf Docs and examples for RenderableBoxGrid (#3479)
* Add boxgrid examples

* Add description about the box grid renderable for the docs page

* change phrasing in example assets slightly

* Apply suggestions from code review

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>

* Remove labels support for `RenderableBoxGrid`

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2025-01-17 13:50:40 +01:00
Emma Broman e643e8d653 Make debug plane a ScreenSpaceRenderable and add documentation (#3483)
* Add screenspace version of debug plane, and an example

* Remove the old renderable

* Apply suggestions from code review

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

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-01-17 13:47:37 +01:00
Emma Broman 16aa150f10 Polish RenderableCartesianAxes - documentation, examples, and make fading work correctly (#3478)
* Make `RenderableCartesianAxes` fade and fix opacity setting

* Update existing documentation of cartesian axes

* Add example with custom colros and parent node

* Apply suggestions from code review

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

* Include earth asset instead of using string identifer

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2025-01-17 13:18:45 +01:00
Malin E 3c61857127 Fix blending and depth issue with RenderableSpheres
* There is now a bool setting to turn off depth writing and testing for
  RenderableSpheres (useful for background images).

* There is also an Option setting to choose blending mode, similar to
  the setting that RenderablModel has.

* NOTE: The default behaviour for RenderableSphere have now changed.
  Before it was always additive blending that was used but now it is
  default blending that is used by default. If additive blending is
  wanted, then use the option setting and select it instead.
2025-01-15 15:02:40 +01:00
Alexander Bock 820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00