Commit Graph

1558 Commits

Author SHA1 Message Date
Alexander Bock
bc715e1a74 Turn ResetTileProviders in RenderableGlobe into a button 2025-05-05 14:41:05 +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
8a364c16e3 Fix layout issues with Dashboards (#3614)
- Correctly render multiline text passed to a DashboardItemText
  - Invert the property for the Dashboard location to no longer need a negative y-axis
  - Use the current lineheight instead of pointsize for the ScreenLog
  - Remove the unused size function from DashboardItems
2025-04-21 01:10:02 +02:00
Emma Broman
eb709b830c Small option property cleanup (#3577)
* Notify change listeners

I can't come up with a reason for why we would not want to do this

* Remove the Display Type for OptionProperty (only used in ImGui)

* Replace extra boolean with internal anonymous addOption function

* Tiny refactor

* removed dropdown on a couple of more places

* Update optionproperty.cpp

---------

Co-authored-by: ElonOlsson <olssonelon@gmail.com>
2025-04-02 09:28:11 +02:00
Alexander Bock
e93ad7910f Rename propertyowner and gui to geographic overlays (#2883)
Breaking change
2025-03-24 17:12:47 +01:00
Alexander Bock
edd123197f Give the GeoJSON component in the RenderableGlobe a better name (closes #2883) 2025-03-19 13:31:13 +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
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
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
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
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
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
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
096363fd06 Make constructors explicit 2025-02-05 23:22:32 +01:00
Alexander Bock
5134946fbf Fix addGibsLayer script 2025-01-17 13:07:04 +01:00
Alexander Bock
820e90eab4 Happy new year 2025-01-14 16:21:08 +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
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
Alexander Bock
ff345006d1 General code cleanup (#3445) 2024-10-10 09:49:02 +02:00
Alexander Bock
125114cad5 Add documentation for TileProviderByLevel (#3446)
---------

Co-authored-by: Ylva Selling <ylva.selling@gmail.com>
2024-10-10 09:48:39 +02:00
Alexander Bock
c0ca1acb33 Don't crash when enableing the shadow component on a planet that doesn't have a ring system (closes #3404) 2024-09-16 18:01:10 +02:00
Alexander Bock
06a92620d1 Ignore GlobeBrowsing shader warning when setting camera position (closes #3405) 2024-09-16 17:32:48 +02:00
Alexander Bock
e24cff1d19 Handle warnings and coding style adaptations 2024-09-12 16:30:09 +02:00
Emma Broman
77672f0cc4 Fix, cleanup and simplify RenderableGlobe properties (#3408)
* Restructure "general properties" into shadow mapping and regular ones

To better connect to subpropertyowners and avoid having to specify an ordered list in constructor... Hard to keep track of

* Restructure properties in constructor to more easily find errors

* Add values that could not be set from parameters (e.g. from asset or script)

* Apply suggestions from code review

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

* Address review comments

---------

Co-authored-by: Alexander Bock <alexander.bock@liu.se>
2024-09-11 16:40:38 +02:00
Alexander Bock
fd64fe7c96 Improvements to the ScriptLog logging (#3389)
* Restructuring the queueScript function
* Don't log the contents of actions that are triggered.  Add the ability to do verbose logging in the scriptlog
2024-09-09 21:16:57 +02:00
Alexander Bock
7ec6b6cfb5 Add examples for GlobeRotation (#3377)
* Add examples for GlobeRotation and make the longitude and latitude defintion non-optional
* Remove old GlobeRotation example
2024-08-16 13:45:24 +02:00
Alexander Bock
9109918955 Remove warnings 2024-08-06 10:56:56 +02:00
Ylva Selling
952f177c54 UI updates (#3358)
* Remove events for scenegraphnodes and screenspacerenderables

* Add events for updating the property tree

* Remove duplicate function calls

* Update src/properties/propertyowner.cpp

Co-authored-by: Emma Broman <emma.broman@liu.se>

* Address PR comments and make helper functions with better comments

* Make uri function not return the identifier if the uri is not valid

* Rename fullyQualifiedIdentifier to uri

* Update gui hash

---------

Co-authored-by: Ylva Selling <ylva.selling@liu.se>
Co-authored-by: Emma Broman <emma.broman@liu.se>
2024-08-02 16:30:07 +02:00
Alexander Bock
ca40f173b5 Don't try to convert "Today" or "Yesterday" using SPICE 2024-08-02 15:36:41 +02:00
Alexander Bock
c4c82483e0 Update copyright header in CMakeLists files 2024-07-31 10:57:10 +02:00
Alexander Bock
b27eae7051 Correctly generate the mipmap for text tiles after rerendering them (closes #3356) 2024-07-30 14:10:21 +02:00
Alexander Bock
90d05187b4 Instead of deleting layers directly through the property, schedule them to delete in the next frame instead (closes #3357) 2024-07-30 13:51:18 +02:00
Alexander Bock
981a13a855 Add new TileProvider to select tile providers based on the date and apply to VIIRS Joint Polar Satellite System (#3350) 2024-07-18 11:18:57 +02:00
Alexander Bock
acab685178 Apply coding style to Lua scripting files 2024-07-16 12:27:03 +02:00
Alexander Bock
0707829c7b Reducing compiler warnings (#3341) 2024-06-28 14:16:06 +02:00
Alexander Bock
24e83d154e Make the 'Layer's specification in RenderableGlobe optional. Clean RenderableGlobe assets 2024-06-22 13:41:27 +02:00
Emma Broman
b8c2701931 Fix forgotten renamed variables 2024-06-13 11:18:52 +02:00
Emma Broman
d67fa4bc8d Clean up globebrowsing script function documentation and adapt to new format (#3307)
* Clean up globebrowsing script function documentation and adapt to new format
2024-06-13 10:50:54 +02:00
Alexander Bock
7e62f9f4b0 Add the ability to specify the BlendMode from .info files (closes #3311) 2024-06-12 20:40:34 +02:00
Alexander Bock
866aad2187 Global pass over the coding style 2024-06-12 14:51:25 +02:00
Ylva Selling
1cae99ebfc Issue/2000 automatically update gui (#3289)
* Make it possible to query a propertyowner by uri with the getpropertytopic

* Remove automatic reloading of ui from drag and drop script

* Add function for uri for propertyowners

* Add uri to the to_json for the propertyowner

* Add comment for the propertyOwner function and update the comment for the property function to clearer distinguish between uris and identifiers

* Go back to the old events but with uris instead as their member

* Apply feedback from PR

* Address PR comments

---------

Co-authored-by: Ylva Selling <ylva.selling@liu.se>
2024-06-04 18:32:41 +02:00
Alexander Bock
51359f93ba Fix erroneous change in the layer_support 2024-06-04 16:52:10 +02:00
Alexander Bock
32867630cc Add an explicit layer order to globebrowsing layers rather than relying on insertion order (#3281)
* Add z-index feature for layers
* Give all default layers a z-index
* The given z-index makes the layers have the same order as in 0.19.0
* Giving z-indices to all non-overlay layers
* Remove the z-index adjustment for manual layers
* Added zIndex parsing for .info files (#3298)
* No need to explicitly check the zIndex against an empty string.  Make similar check for identifier work correctly

---------

Co-authored-by: Malin E <malin.ejdbo@gmail.com>
Co-authored-by: Micah Acinapura <micahnyc@gmail.com>
2024-06-04 16:29:33 +02:00
Emma Broman
09a40f62dc Rename goToGeo -> jumpToGeo (#3296)
* Remove unused bool argument in globebrowsing functions
* Refactor some globe browsing functions
* Start updating goToGeo function to fade instead of just jump
* Add choice for whtehr to use default or arrival height when flying to a geo2
* Update / add docs for fly-to and go-to functions
* Rename function and add deprecated version of `goToGeo`
2024-06-04 16:18:03 +02:00
Alexander Bock
b1eb9e3731 Force recompilation of the RenderableGlobe shader when moving layers (closes #3295) 2024-06-03 14:16:13 +02:00
Alexander Bock
ff9b72c580 Prevent crash when accessing a layer name after it has been deleted (closes #3283) 2024-05-27 14:00:31 +02:00