mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-05-06 19:39:56 -05:00
Warn if profile contains empty property line, but do not crash. Cleanup JWST profile. Prevent crash when moving to early date in JWST (closes #2617)
This commit is contained in:
@@ -1,7 +1,5 @@
|
||||
asset.require("spice/base")
|
||||
asset.require("./actions")
|
||||
asset.require("scene/solarsystem/planets/earth/layers/colorlayers/terra_modis_temporal")
|
||||
asset.require("scene/solarsystem/planets/earth/layers/colorlayers/esri_viirs_combo")
|
||||
|
||||
local sun = asset.require("scene/solarsystem/sun/sun")
|
||||
local sunTransforms = asset.require("scene/solarsystem/sun/transforms")
|
||||
@@ -150,52 +148,6 @@ local JWSTLabel = {
|
||||
}
|
||||
|
||||
asset.onInitialize(function()
|
||||
-- Start of data outage, use Terra instead as replacement
|
||||
openspace.scriptScheduler.loadScheduledScript(
|
||||
"2021 DEC 19 00:00:00",
|
||||
[[openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.Terra_Modis_Temporal.Enabled",
|
||||
true
|
||||
)
|
||||
openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.ESRI_VIIRS_Combo.Enabled",
|
||||
false
|
||||
)]],
|
||||
[[openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.Terra_Modis_Temporal.Enabled",
|
||||
false
|
||||
)
|
||||
openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.ESRI_VIIRS_Combo.Enabled",
|
||||
true
|
||||
)]],
|
||||
"",
|
||||
2 -- Not default group, never clear this script
|
||||
)
|
||||
|
||||
-- End of data outage, Go back to VIIRS ESRI combo
|
||||
openspace.scriptScheduler.loadScheduledScript(
|
||||
"2021 DEC 30 00:00:00",
|
||||
[[openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.Terra_Modis_Temporal.Enabled",
|
||||
false
|
||||
)
|
||||
openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.ESRI_VIIRS_Combo.Enabled",
|
||||
true
|
||||
)]],
|
||||
[[openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.Terra_Modis_Temporal.Enabled",
|
||||
true
|
||||
)
|
||||
openspace.setPropertyValueSingle(
|
||||
"Scene.Earth.Renderable.Layers.ColorLayers.ESRI_VIIRS_Combo.Enabled",
|
||||
false
|
||||
)]],
|
||||
"",
|
||||
2 -- Not default group, never clear this script
|
||||
)
|
||||
|
||||
openspace.addSceneGraphNode(JWSTBand)
|
||||
openspace.addSceneGraphNode(JWSTModel)
|
||||
openspace.addSceneGraphNode(JWSTFov)
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
asset.require("spice/base") -- openspace.time.advancedTime depends on SPICE
|
||||
asset.require("scene/solarsystem/planets/earth/layers/nightlayers/earth_at_night_2012")
|
||||
asset.require("scene/solarsystem/planets/earth/atmosphere")
|
||||
|
||||
-- Function to advance a time stamp in the given number of days, hours, minutes and
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
"base",
|
||||
"base_keybindings",
|
||||
"scene/solarsystem/planets/earth/earth",
|
||||
"scene/solarsystem/planets/earth/layers/colorlayers/viirs_noaa20_temporal.asset",
|
||||
"scene/solarsystem/planets/earth/satellites/satellites",
|
||||
"scene/solarsystem/planets/earth/satellites/misc/hubble_trail",
|
||||
"scene/solarsystem/planets/earth/lagrange_points/lagrange_points",
|
||||
@@ -248,11 +249,6 @@
|
||||
"type": "setPropertyValueSingle",
|
||||
"value": "false"
|
||||
},
|
||||
{
|
||||
"name": "",
|
||||
"type": "setPropertyValueSingle",
|
||||
"value": ""
|
||||
},
|
||||
{
|
||||
"name": "Scene.Earth.Renderable.Layers.ColorLayers.VIIRS_NOAA20_Temporal.Enabled",
|
||||
"type": "setPropertyValueSingle",
|
||||
@@ -268,4 +264,4 @@
|
||||
"major": 1,
|
||||
"minor": 2
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -574,6 +574,10 @@ void Scene::setPropertiesFromProfile(const Profile& p) {
|
||||
ghoul::lua::LuaState L(ghoul::lua::LuaState::IncludeStandardLibrary::Yes);
|
||||
|
||||
for (const Profile::Property& prop : p.properties) {
|
||||
if (prop.name.empty()) {
|
||||
LWARNING("Property name in profile was empty");
|
||||
continue;
|
||||
}
|
||||
std::string uriOrRegex = prop.name;
|
||||
std::string groupName;
|
||||
if (doesUriContainGroupTag(uriOrRegex, groupName)) {
|
||||
|
||||
@@ -227,7 +227,8 @@ std::vector<std::string> ScriptScheduler::progressTo(double newTime) {
|
||||
_currentTime = newTime;
|
||||
|
||||
// Construct result
|
||||
auto start = _scripts.begin() + prevIndex - 1;
|
||||
const size_t startOffset = prevIndex == 0 ? prevIndex : prevIndex - 1;
|
||||
auto start = _scripts.begin() + startOffset;
|
||||
auto end = it;
|
||||
for (auto iter = start; iter != _scripts.end() && iter >= end; --iter) {
|
||||
std::string script = iter->universalScript.empty() ?
|
||||
|
||||
Reference in New Issue
Block a user