Commit Graph

5913 Commits

Author SHA1 Message Date
Alexander Bock
cc395ce340 Update C++ version to 23, add new warnings and the fix them 2025-03-01 15:49:38 +01:00
Alexander Bock
cd8924ed22 Remove compiler warnings on Clang/GCC (#3546) 2025-02-28 23:29:38 +01:00
Malin E
80b1061b26 Update time conversion to mirror distance conversion code (#3507) 2025-02-28 18:25:05 +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
9f77ca1daa Use composable Lua types in Property definitions. Allow OptionProperty to receive either indices or descriptions (#3524) 2025-02-27 15:42:54 +01:00
Ylva Selling
3c3efd9598 Documentation fix broken codegen links 2025-02-24 11:23:36 +01:00
Alexander Bock
5152a7a6e0 General code spring cleaning (#3525) 2025-02-22 15:28:14 +01:00
Alexander Bock
8cb3ce8b94 Add the ability to limit-rate the dashboard updating (#3527)
Co-authored-by: Emma Broman <emma.broman@liu.se>
2025-02-18 16:49:47 +01:00
Alexander Bock
d21d1e4dcf Add the ability to disable accelerated rendering for CEF. Disable it for AMD cards as it causes a crash (#2488) 2025-02-17 18:25:14 +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
David Wagner
3d57d3d65a Fixes for some "elapsed time" dashboard bugs (#3520)
- Expose the FormatString property (closes #3519). Contrary to other properties, it wasn't accessible through the scripting API.
  - Fix the time simplification logic (closes #3515). If the lowest required time unit's value was zero, all time units where displayed regardless of what the user required. Fix this by using a "less than" comparison rather than an equality comparison.
  - Fix string truncation (closes #3516). The time string truncation was off by one, causing the trailing unit name to be truncated e.g. (minutes -> minute).
2025-02-14 16:38:25 +01:00
Alexander Bock
1a03cb52a1 Add missing documentation entries for DashboardItemElapsedTime and DashboardItemInputState (closes #3514) 2025-02-14 14:30:07 +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
Emma Broman
1fbd5e827d Utilize new docs functionality in API scripts that are defined in Lua files (#3505)
* Fix a reference to a deprecated and renamed function in navigationstate docs

* Review documentation for scripts defined in .lua files

And utilize new markdown functionality

* Update renderable box grid size specs

So that it can have a size less than 1, and throws a specification error when the size is given as negative

* Fix some issues with the gaia filtering scripts

* Try adding param documentation to the lua script documentation

It works!

* Utiliize mroe markdown features in the updated documentations

* Add function parameter info and make small updated to gaia filtering functions

* Replace a long parameter info in description with `param` description

* Update usage examples

* Add example of how to create debug axes for the current SGN
2025-02-11 08:59:33 +01:00
Alexander Bock
b93c284551 Make the audio module adhere to the correct include ordering 2025-02-10 17:46:49 +01:00
Alexander Bock
08cfe384c5 Undo the previous change and use HorizonsTextFile again 2025-02-10 17:45:59 +01:00
Alexander Bock
b631c1c688 Make ScreenSpaceImageLocal not finding an image an error instead of a warning 2025-02-06 16:30:46 +01:00
Alexander Bock
b8e5fab5f5 Prevent crash when moving a layer to the top of a list that only has two entries (closes #3414) 2025-02-06 13:02:02 +01:00
Alexander Bock
53e356e819 Remove the unused any alternatives of the property accessor functions 2025-02-06 10:23:00 +01:00
Alexander Bock
096363fd06 Make constructors explicit 2025-02-05 23:22:32 +01:00
Alexander Bock
a8949ec2b5 Harmonize various documentation identifiers 2025-02-05 22:03:55 +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
7079845cf2 Turn missing Horizons files from a warning to an error. Improve error message quality of OrVerifiers 2025-02-04 03:00:25 +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
Alexander Bock
098a41b8bf Show node ID in frame information overlay 2025-02-03 19:17:27 +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
Roxeena
ad0e5b92dc Clean up _lua.inl include style 2025-01-28 10:45:57 +01:00
Emma Broman
d4c4c92a5e Docs for RenderableConstellationLines and RenderableConstellationBounds (#3481)
* Update some of the base documentation to make more sense on the docs page

* Add description for `RenderableConstellationBounds`

* Add description for `RenderableConstellationLines` and names file and labels details

* Remove redundant info from description

* Apply suggestions from code review

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
Co-authored-by: Malin E <malin.ejdbo@gmail.com>

* Update constellation bound documentation based on review comments

* Update docs about labels for constellation lines as well

---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
Co-authored-by: Malin E <malin.ejdbo@gmail.com>
2025-01-20 15:58:37 +01:00
Emma Broman
7401f5145e Automatically reload texture for RenderableSphereImageLocal when file changes (#3500)
* Use `TextureComponent` for `RenderableSphereImageLocal`

Cleans up code and makes texture reload automatically if the file changes

* Move a faultily located include
2025-01-20 15:58:01 +01:00
Alexander Bock
5771427bd9 Add the ability to specify longitude and latitude subdivisions in RenderableSphericalGrid (closes #3494) 2025-01-20 11:26:38 +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
Alexander Bock
5134946fbf Fix addGibsLayer script 2025-01-17 13:07:04 +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
d2c66d4782 Add documentation of spacecraftinstrument module types (closes #1847) 2025-01-15 11:53:01 +01:00
Alexander Bock
b16327f90a Use existing codegen::private (closes #3433) 2025-01-15 11:19:00 +01:00
Alexander Bock
0bc2c4a9ee Coding style fixes 2025-01-14 16:34:42 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +01:00
Alexander Bock
f0342e43e8 Adapting to SGCT changes (#3488) 2025-01-14 14:17:50 +01:00
Emma Broman
2856085724 Use a pointing hand GLFW cursor for the web grab cursor (#3465)
* Use a pointing hand GLFW cursor for the web grab cursor

* Add TODO comment about custom cursor
2024-12-09 17:08:06 +01:00
Andreas Engberg
27e46d8cf5 add openspace lua table to lua transforms 2024-12-04 13:41:28 +01:00
Andreas Engberg
84ad4cf373 Make sure we search the the actual file name and not entire path
Caused an issue where it would not "find" the metadata if there was any '.' in any part of the path e.g., `OpenSpace-0.20.1/..`
2024-11-07 10:16:18 +01:00
Emma Broman
fc93523914 "Fix" invalid geometries before adding them (#3452)
However, they might not actually be completely fixed and still look weird. But at least now they load
2024-10-30 16:40:28 +01:00
Malin E
40578ebc81 Update string versions of distance and time units, start with capital
letter

* Update RenderableModel to better make use of these predefined units
2024-10-29 17:02:48 +01:00
Alexander Bock
390d4a3e50 Fix issue with creating RenderableGlobes with layers 2024-10-22 15:24:35 +02:00
Alexander Bock
438d6e3ddd SessionRecording and KeyframeRecording redesign (#3399) 2024-10-21 15:06:40 +02:00
Emma Broman
304cbb2032 Provide errors when setting exoplanet module file paths 2024-10-21 10:04:35 +02:00
Emma Broman
68c2157dd4 Move Exoplanet creation code from C++ to Lua (#3450)
* Move exoplanet creation code to Lua

* Add more descriptions and handle missing values

* Remove old creation function and move load from CSV to Lua

* Properly document all functions, including a type for the `systemData` return value

* Add `\param` documentation to the scripts

* Cleanup and move helper functions to core scripts

* Throw Lua errors when things go wrong, instead of returning empty objects

This prevents the rest of the code from being run

* Flesh out TODO comments, so future us know why they are there


---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-10-21 09:30:18 +02:00