Commit Graph

5924 Commits

Author SHA1 Message Date
Alexander Bock
ab84ca7ad6 Fix merge issue 2025-03-17 11:37:32 +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
Alexander Bock
fc9b2ab091 Increase the compilation speed (#3545)
- 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
2025-03-14 11:22:40 +01:00
Alexander Bock
0e815559d2 Improve the error message for FixedRotation (closes #2445) 2025-03-10 14:56:59 +01:00
Alexander Bock
9b5c7b3080 Fix merge error 2025-03-10 14:31:04 +01: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
Roxeena
737976a8d2 Enable depth for RenderableSphericalGrid 2025-03-06 11:44:37 +01:00
Alexander Bock
25f7a2f1e4 Fix assertion failures in the ImGUI UI code 2025-03-04 11:43:44 +01:00
Alexander Bock
501fab40e8 Make the "Clear Projections" in the ProjectionComponent actually a button 2025-03-04 09:42:55 +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
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