bastille day 2000 renaming

This commit is contained in:
ElonOlsson
2021-10-05 10:22:55 -04:00
parent 1ef4d9959e
commit 60e2abdbb8
10 changed files with 66 additions and 84 deletions

View File

@@ -12,7 +12,7 @@ local densityDirectory = asset.syncedResource({
local sunRadius = 6.957E8
local densityVolume = {
Identifier = "MAS-MHD-Density-bastille-day",
Identifier = "MAS-MHD-Density-bastille-day-2000",
Parent = sunTransforms.SunIAU.Identifier,
Transform = {
Scale = {
@@ -40,17 +40,17 @@ local densityVolume = {
},
GUI = {
Name = "MAS Density",
Path = "/Solar System/Heliosphere/Bastille Day",
Description = "Volumetric rendering for the bastille day CME event"
Path = "/Solar System/Heliosphere/Bastille Day 2000",
Description = "Volumetric rendering for the bastille day CME event. This asset contain data from 2000-07-14 08:33 to 2000-07-14 11:49"
}
}
local toggle_volume = {
Identifier = "density_volume.toggle_volume",
Name = "Toggle volume",
Command = propertyHelper.invert("Scene.MAS-MHD-Density-bastille-day.Renderable.Enabled"),
Command = propertyHelper.invert("Scene.MAS-MHD-Density-bastille-day-2000.Renderable.Enabled"),
Documentation = "Toggle volume rendering of CME",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
@@ -69,5 +69,5 @@ asset.meta = {
Author = "CCMC, OpenSpace team",
URL = "https://dx.doi.org/10.3847/1538-4357/aab36d",
License = "CC-BY",
Identifier = {"MAS-MHD-Density-bastille-day"}
Identifier = {"MAS-MHD-Density-bastille-day-2000"}
}

View File

@@ -14,7 +14,7 @@ local sunRadius = 6.957E8
-- Fieldlies from binaries
local fieldlines = {
Identifier = "MAS-MHD-Fieldlines-bastille-day",
Identifier = "MAS-MHD-Fieldlines-bastille-day-2000",
Parent = heliosphereTransforms.HEEQ180ReferenceFrame.Identifier,
Transform = {
Scale = {
@@ -36,28 +36,24 @@ local fieldlines = {
{ 0, 1000000 },
{ 100, 2000 }
},
LoadAtRuntime = true,
ScaleToMeters = 1.0,
SecondsBefore = 24*60*60,
SecondsAfter = 24*60*60,
SimulationModel = "mas",
Color = {
Uniform = { 0.0, 0.725, 0.75, 1.0 }
}
},
GUI = {
Path = "/Solar System/Heliosphere/Bastille Day",
Path = "/Solar System/Heliosphere/Bastille Day 2000",
Name = "MAS Fieldlines",
Description = "Magnetic fieldlines for the bastille day CME event"
Description = "Magnetic fieldlines for the bastille day CME event. This asset contains data from 2000-07-14 08:33 to 2000-07-14 11:49"
}
}
local toggle_fieldlines = {
Identifier = "fieldlines.toggle_fieldlines",
Name = "Toggle Fieldlines",
Command = propertyHelper.invert("Scene.MAS-MHD-Fieldlines-bastille-day.Renderable.Enabled"),
Command = propertyHelper.invert("Scene.MAS-MHD-Fieldlines-bastille-day-2000.Renderable.Enabled"),
Documentation = "Toggle fieldline rendering of CME",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
@@ -76,5 +72,5 @@ asset.meta = {
Author = "CCMC, Jonathan Grangien, Matthias Berg",
URL = "https://dx.doi.org/10.3847/1538-4357/aab36d",
License = "CC-BY",
Identifier = {"MAS-MHD-Fieldlines-bastille-day"}
Identifier = {"MAS-MHD-Fieldlines-bastille-day-2000"}
}

View File

@@ -12,7 +12,7 @@ local fluxNodesBinaries = asset.syncedResource({
-- FluxNodes from binaries
local fluxNodes = {
Identifier = "MAS-MHD-FluxNodes-bastille-day",
Identifier = "MAS-MHD-FluxNodes-bastille-day-2000",
Parent = heliosphereTransforms.HEEQ180ReferenceFrame.Identifier,
Transform = {
Rotation = rot.CarringtonLongitudeToHEEQ180Rotation
@@ -20,26 +20,22 @@ local fluxNodes = {
Renderable = {
Type = "RenderableFluxNodes",
SourceFolder = fluxNodesBinaries,
ColorTablePaths = asset.localResource("transferfunctions/CMR.txt"),
LoadAtRuntime = true,
--ScaleToMeters = 1.0,
SecondsBefore = 24*60*60,
SecondsAfter = 24*60*60,
Enabled = true
ColorTablePath = asset.localResource("transferfunctions/CMR.txt"),
ColorTableRange = {-2.0, 4.0}
},
GUI = {
Path = "/Solar System/Heliosphere/Bastille Day",
Path = "/Solar System/Heliosphere/Bastille Day 2000",
Name = "Flux Nodes",
Description = "Flux nodes for the bastille day CME event"
Description = "Flux nodes for the bastille day CME event. This asset contains data from 2000-07-14 08:38 to 2000-07-14 19:48"
}
}
local toggle_fluxnodes = {
Identifier = "fluxnodes.toggle_fluxnodes",
Name = "Toggle flux nodes",
Command = propertyHelper.invert("Scene.MAS-MHD-FluxNodes-bastille-day.Renderable.Enabled"),
Command = propertyHelper.invert("Scene.MAS-MHD-FluxNodes-bastille-day-2000.Renderable.Enabled"),
Documentation = "Toggle flux node rendering of CME",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
@@ -58,5 +54,5 @@ asset.meta = {
Author = "CCMC, Christian Adamsson, Emilie Ho",
URL = "https://dx.doi.org/10.3847/1538-4357/aab36d",
License = "CC-BY",
Identifier = {"MAS-MHD-FluxNodes-bastille-day"}
Identifier = {"MAS-MHD-FluxNodes-bastille-day-2000"}
}

View File

@@ -18,7 +18,7 @@ local TexturesPathMeridial = asset.syncedResource({
})
local EquatorialCutplane = {
Identifier = "EquatorialCutplane-bastille-day",
Identifier = "EquatorialCutplane-bastille-day-2000",
Parent = transforms.HEEQ180ReferenceFrame.Identifier,
Transform = {
Rotation = rot.CarringtonLongitudeToHEEQ180Rotation
@@ -34,13 +34,13 @@ local EquatorialCutplane = {
},
GUI = {
Name = "Cutplane Equitorial",
Path = "/Solar System/Heliosphere/Bastille Day",
Description = "Equatorial cutplane sequence for the bastille day CME event"
Path = "/Solar System/Heliosphere/Bastille Day 2000",
Description = "Equatorial cutplane sequence for the bastille day CME event. This asset contains data from 2000-07-14 08:38 to 2000-07-14 12:00"
}
}
local MeridialCutplane = {
Identifier = "MeridialCutplane-bastille-day",
Identifier = "MeridialCutplane-bastille-day-2000",
Parent = transforms.HEEQ180ReferenceFrame.Identifier,
Transform = {
Rotation = {
@@ -59,25 +59,25 @@ local MeridialCutplane = {
},
GUI = {
Name = "Cutplane Meridial",
Path = "/Solar System/Heliosphere/Bastille Day",
Description = "Meridial cutplane sequence for the bastille day CME event"
Path = "/Solar System/Heliosphere/Bastille Day 2000",
Description = "Meridial cutplane sequence for the bastille day CME event. This asset contains data from 2000-07-14 08:38 to 2000-07-14 12:00"
}
}
local toggle_equatorial = {
Identifier = "fluxnodescutplane.toggle_equatorial",
Name = "Toggle equatorial cutplane",
Command = propertyHelper.invert("Scene.EquatorialCutplane-bastille-day.Renderable.Enabled"),
Command = propertyHelper.invert("Scene.EquatorialCutplane-bastille-day-2000.Renderable.Enabled"),
Documentation = "Toggle equatorial cutplane of CME",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
local toggle_meridial = {
Identifier = "fluxnodescutplane.toggle_meridial",
Name = "Toggle meridial cutplane",
Command = propertyHelper.invert("Scene.MeridialCutplane-bastille-day.Renderable.Enabled"),
Command = propertyHelper.invert("Scene.MeridialCutplane-bastille-day-2000.Renderable.Enabled"),
Documentation = "Toggle meridial cutplane of CME",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
@@ -98,5 +98,5 @@ asset.meta = {
Author = "CCMC, Christian Adamsson, Emilie Ho",
URL = "https://dx.doi.org/10.3847/1538-4357/aab36d",
License = "CC-BY",
Identifier = {"MeridialCutplane-bastille-day", "EquatorialCutplane-bastille-day"}
Identifier = {"MeridialCutplane-bastille-day-2000", "EquatorialCutplane-bastille-day-2000"}
}

View File

@@ -9,7 +9,7 @@ local TexturesPath = asset.syncedResource({
})
local legend = {
Identifier = "LegendFluxNodes-bastille-day",
Identifier = "LegendFluxNodes-bastille-day-2000",
Type = "ScreenSpaceImageLocal",
TexturePath = TexturesPath .. "/CMR_transparent_white_text.png",
Scale = 0.15,
@@ -19,26 +19,26 @@ local legend = {
local show_legend = {
Identifier = "fluxnodelegend.show_legend",
Name = "Show the legend image",
Command = "openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day.Opacity', 0.0);" ..
"openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day.Enabled', true);" ..
"openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day.Opacity', 1.0, 4);",
Command = "openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day-2000.Opacity', 0.0);" ..
"openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day-2000.Enabled', true);" ..
"openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day-2000.Opacity', 1.0, 4);",
Documentation = "Show the legend image",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
local hide_legend = {
Identifier = "fluxnodelegend.hide_legend",
Name = "Hides the legend image",
Command = "openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day.Opacity', 0.0, 2);",
Documentation = "Hides the legend image",
GuiPath = "/Bastille-Day",
Command = "openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day-2000.Opacity', 0.0, 2);",
Documentation = "Hides the legend image",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
asset.onInitialize(function()
openspace.addScreenSpaceRenderable(legend)
-- These numbers are there to put the legend on the side of the screen.
openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day.Rotation', { 0.0, 0.0, 0.56652 });
openspace.setPropertyValueSingle('ScreenSpace.LegendFluxNodes-bastille-day-2000.Rotation', { 0.0, 0.0, 0.56652 });
openspace.action.registerAction(show_legend)
openspace.action.registerAction(hide_legend)
end)
@@ -56,5 +56,5 @@ asset.meta = {
Author = "Christian Adamsson, Emilie Ho",
URL = "https://dx.doi.org/10.3847/1538-4357/aab36d",
License = "MIT",
Identifier = {"LegendFluxNodes-bastille-day"}
Identifier = {"LegendFluxNodes-bastille-day-2000"}
}

View File

@@ -3,7 +3,7 @@ local sunTransforms = asset.require('scene/solarsystem/sun/transforms')
local earthTransforms = asset.require('scene/solarsystem/planets/earth/transforms')
local travelSpeedIndicator = {
Identifier = "TravelSpeedIndicator",
Identifier = "TravelSpeedIndicator-2000",
--SunIAU adds an extra rotation. Using barycenter, then offsetting to SunIAU
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
Transform = {
@@ -21,7 +21,7 @@ local travelSpeedIndicator = {
FadeLength = 10
},
GUI = {
Path = "/Solar System/Heliosphere/Bastille Day",
Path = "/Solar System/Heliosphere",
Name = "Speed indicator",
Description = "Speed of light indicator from sun to earth"
}
@@ -36,5 +36,5 @@ asset.meta = {
Author = "CCMC, Christian Adamsson, Emilie Ho",
URL = "",
License = "MIT",
Identifier = {"TravelSpeedIndicator"}
Identifier = {"TravelSpeedIndicator-2000"}
}

View File

@@ -26,7 +26,7 @@ local switch_color_layer = {
end;
]],
Documentation = "Display next sun texture in list of textures",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}

View File

@@ -11,7 +11,7 @@ local textureSourcePath = asset.syncedResource({
})
local EUVLayer = {
Identifier = "EUV-Layer-bastille-day",
Identifier = "EUV-Layer-bastille-day-2000",
Parent = transforms.SunIAU.Identifier,
Renderable = {
Type = "RenderableTimeVaryingSphere",
@@ -24,16 +24,16 @@ local EUVLayer = {
GUI = {
Name = "EUV Layer",
Path = "/Solar System/Sun",
Description = "Texture sequence of an extreme ultraviolet (EUV) simulation, during the CME"
Description = "Texture sequence of an extreme ultra violet (EUV) simulation, during the CME. This asset contains data from 2000-07-14 08:38 to 2000-07-14 19:48"
}
}
local toggle_EUV_layer ={
local toggle_EUV_layer = {
Identifier = "euv_layer.toggle_EUV",
Name = "Toggle EUV Layer",
Command = propertyHelper.invert("Scene.EUV-Layer-bastille-day.Renderable.Enabled"),
Command = propertyHelper.invert("Scene.EUV-Layer-bastille-day-2000.Renderable.Enabled"),
Documentation = "Toggle EUV layer of sun",
GuiPath = "/Bastille-Day",
GuiPath = "/Bastille-Day 2000",
IsLocal = false
}
@@ -53,5 +53,5 @@ asset.meta = {
Author = "CCMC, OpenSpace team",
URL = "https://dx.doi.org/10.3847/1538-4357/aab36d",
License = "CC-BY",
Identifier = {"EUV-Layer-bastille-day"}
Identifier = {"EUV-Layer-bastille-day-2000"}
}

View File

@@ -2,7 +2,7 @@
"actions": [
{
"documentation": "Reset button to start of CME",
"gui_path": "/Bastille-Day",
"gui_path": "/Bastille-Day 2000",
"identifier": "bastille-day.reset_loops",
"is_local": false,
"name": "Reset button. Start of CME, no loop",
@@ -10,7 +10,7 @@
},
{
"documentation": "New loop: Restarts time at 10:03 and stops at 10:16, sets delta time to 2 min/ second (120 seconds/ second)",
"gui_path": "/Bastille-Day",
"gui_path": "/Bastille-Day 2000",
"identifier": "bastille-day.short_loop",
"is_local": false,
"name": "Loop 10:03 - 10:16, at 2 min/ second",
@@ -18,7 +18,7 @@
},
{
"documentation": "New loop: Restarts time at 10:03 and stops at 11:00, delta time to 4 min/ second (240 seconds/ second)",
"gui_path": "/Bastille-Day",
"gui_path": "/Bastille-Day 2000",
"identifier": "bastille-day.standard_loop",
"is_local": false,
"name": "Loop 10:03 - 11:00, at 4 min/ second",
@@ -26,19 +26,19 @@
},
{
"documentation": "Fast loop: Starts from 10:03 and sets delta time to 15 min/ second (900 seconds/ second)",
"gui_path": "/Bastille-Day",
"gui_path": "/Bastille-Day 2000",
"identifier": "bastille-day.fast_loop",
"is_local": false,
"name": "Loop 10:03 - 11.48, at 15 min/ second",
"script": "openspace.scriptScheduler.clear();openspace.time.setDeltaTime(900);openspace.time.setTime('2000-JUL-14 10:03:00.00');StarttimescriptSlowLoop = \"openspace.time.setTime('2000 JUL 14 10:03:00')\";openspace.scriptScheduler.loadScheduledScript('2000 JUL 14 12:00:00', StarttimescriptSlowLoop);"
"script": "openspace.scriptScheduler.clear();openspace.time.setDeltaTime(900);openspace.time.setTime('2000-JUL-14 10:03:00.00');StarttimescriptFastLoop = \"openspace.time.setTime('2000 JUL 14 10:03:00')\";openspace.scriptScheduler.loadScheduledScript('2000 JUL 14 11:48:00', StarttimescriptFastLoop);"
},
{
"documentation": "Long loop: Restarts time at 09:30 and stops at 11:50, delta time to 4 min/ second (240 seconds/ second)",
"gui_path": "/Bastille-Day",
"gui_path": "/Bastille-Day 2000",
"identifier": "bastille-day.long_loop",
"is_local": false,
"name": "Loop 09:30 - 13:00, at 4 min/ second",
"script": "openspace.scriptScheduler.clear();openspace.time.setDeltaTime(240);openspace.time.setTime('2000-JUL-14 09:30:00.00');StarttimescriptLongLoop = \"openspace.time.setTime('2000 JUL 14 09:30:00')\";openspace.scriptScheduler.loadScheduledScript('2000 JUL 14 11:50:00', StarttimescriptLongLoop);"
"script": "openspace.scriptScheduler.clear();openspace.time.setDeltaTime(240);openspace.time.setTime('2000-JUL-14 09:30:00.00');StarttimescriptLongLoop = \"openspace.time.setTime('2000 JUL 14 09:30:00')\";openspace.scriptScheduler.loadScheduledScript('2000 JUL 14 13:00:00', StarttimescriptLongLoop);"
}
],
"assets": [

View File

@@ -36,7 +36,6 @@
#include <ghoul/filesystem/filesystem.h>
#include <ghoul/filesystem/cachemanager.h>
#include <ghoul/logging/logmanager.h>
// Test debugging tools more then logmanager
#include <ghoul/logging/consolelog.h>
#include <ghoul/logging/visualstudiooutputlog.h>
#include <ghoul/opengl/programobject.h>
@@ -132,7 +131,8 @@ namespace {
constexpr openspace::properties::Property::PropertyInfo colorTableRangeInfo = {
"ColorTableRange",
"Color Table Range",
"Valid range for the color table. [Min, Max]"
"Valid range for the color table as the exponent, with base 10, of flux values. "
"[Min, Max]"
};
constexpr openspace::properties::Property::PropertyInfo DomainZInfo = {
"ZLimit",
@@ -226,27 +226,15 @@ namespace {
"Toggles the pulse with alpha by gaussian for nodes close to Earth."
};
float stringToFloat(const std::string input, const float backupValue = 0.f) {
float tmp;
try {
tmp = std::stof(input);
}
catch (const std::invalid_argument& ia) {
LWARNING(fmt::format(
"Invalid argument: {}. '{}' is NOT a valid number", ia.what(), input
));
return backupValue;
}
return tmp;
}
struct [[codegen::Dictionary(RenderableFluxNodes)]] Parameters {
// path to source folder with the 3 binary files in it
std::filesystem::path sourceFolder [[codegen::directory()]];
// [[codegen::verbatim(ColorTablePathInfo.description)]]
std::string colorTablePaths;
std::string colorTablePath;
// [[codegen::verbatim(GoesEnergyBinsInfo.description)]]
std::optional<int> energyBin;
// [[codegen::verbatim(colorTableRangeInfo.description)]]
std::optional<glm::vec2> colorTableRange;
};
#include "renderablefluxnodes_codegen.cpp"
@@ -301,8 +289,9 @@ RenderableFluxNodes::RenderableFluxNodes(const ghoul::Dictionary& dictionary)
{
const Parameters p = codegen::bake<Parameters>(dictionary);
_colorTablePath = p.colorTablePaths;
_colorTablePath = p.colorTablePath;
_transferFunction = std::make_unique<TransferFunction>(_colorTablePath);
_colorTableRange = p.colorTableRange.value_or(_colorTableRange);
_binarySourceFolderPath = p.sourceFolder;
if (std::filesystem::is_directory(_binarySourceFolderPath)) {
@@ -506,6 +495,7 @@ void RenderableFluxNodes::setupProperties() {
_styleGroup.addProperty(_gaussianAlphaFilter);
_styleGroup.addProperty(_colorMode);
_styleGroup.addProperty(_scalingMethod);
_colorTableRange.setViewOption(properties::Property::ViewOptions::MinMaxRange);
_styleGroup.addProperty(_colorTableRange);
_styleGroup.addProperty(_colorTablePath);
_styleGroup.addProperty(_streamColor);