Merge branch 'master' into feature/animation-fixes

* Resolve conflicts
This commit is contained in:
Malin E
2021-09-01 09:44:27 +02:00
289 changed files with 11427 additions and 8911 deletions
+32 -22
View File
@@ -1,7 +1,6 @@
-- This is a blank scene that that just sets up the default menus/dasboard/keys, etc.
local assetHelper = asset.require('util/asset_helper')
local sceneHelper = asset.require('util/scene_helper')
local propertyHelper = asset.require('util/property_helper')
-- Specifying which other assets should be loaded in this scene
@@ -14,36 +13,47 @@ asset.require('util/default_keybindings')
-- Load web gui
local webGui = asset.require('util/webgui')
-- Keybindings that are specific for this scene
local Keybindings = {
{
Key = "h",
Name="Toggle Trails",
Command = "local list = openspace.getProperty('{planetTrail_solarSystem}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end\n" ..
"local moonlist = openspace.getProperty('{moonTrail_solarSystem}.Renderable.Enabled'); for _,v in pairs(moonlist) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end",
Documentation = "Toggles the visibility of planet and moon trails",
GuiPath = "/Rendering",
Local = false
},
{
Key = "l",
Name = "Toggle planet labels",
Command = "local list = openspace.getProperty('{solarsystem_labels}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end",
Documentation = "Turns on visibility for all solar system labels",
GuiPath = "/Rendering",
Local = false
}
local toggle_trails = {
Identifier = "os_default.toggle_trails",
Name = "Toggle Trails",
Command = "local list = openspace.getProperty('{planetTrail_solarSystem}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end\n" ..
"local moonlist = openspace.getProperty('{moonTrail_solarSystem}.Renderable.Enabled'); for _,v in pairs(moonlist) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end",
Documentation = "Toggles the visibility of planet and moon trails",
GuiPath = "/Rendering",
IsLocal = false,
Key = "h"
}
local toggle_planet_labels = {
Identifier = "os_default.toggle_planet_labels",
Name = "Toggle planet labels",
Command = "local list = openspace.getProperty('{solarsystem_labels}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end",
Documentation = "Turns on visibility for all solar system labels",
GuiPath = "/Rendering",
IsLocal = false,
Key = "l"
}
asset.onInitialize(function ()
webGui.setCefRoute("onscreen")
sceneHelper.bindKeys(Keybindings)
openspace.action.registerAction(toggle_trails)
openspace.bindKey(toggle_trails.Key, toggle_trails.Identifier)
openspace.action.registerAction(toggle_planet_labels)
openspace.bindKey(toggle_planet_labels.Key, toggle_planet_labels.Identifier)
openspace.setDefaultGuiSorting()
openspace.setPropertyValueSingle("RenderEngine.VerticalLogOffset", 0.100000)
end)
asset.onDeinitialize(function ()
sceneHelper.unbindKeys(Keybindings)
openspace.action.removeAction(toggle_trails.Identifier)
openspace.clearKey(toggle_trails.Key)
openspace.action.removeAction(toggle_planet_labels.Identifier)
openspace.clearKey(toggle_planet_labels.Key)
end)
-1
View File
@@ -1,5 +1,4 @@
local assetHelper = asset.require('util/asset_helper')
local sceneHelper = asset.require('util/scene_helper')
local propertyHelper = asset.require('util/property_helper')
local debugHelper = asset.require('util/debug_helper')
+8 -23
View File
@@ -2,19 +2,11 @@ local assetHelper = asset.require('util/asset_helper')
local earth = asset.require('scene/solarsystem/planets/earth/earth')
local sunTransforms = asset.require('scene/solarsystem/sun/transforms')
local textures = asset.syncedResource({
Name = "New Horizons Textures",
Type = "HttpSynchronization",
Identifier = "newhorizons_textures",
Version = 3
})
local models = asset.syncedResource({
Name = "New Horizons Model",
Type = "HttpSynchronization",
Identifier = "newhorizons_model",
Version = 1
Version = 2
})
local Example_Fixed_Height = {
@@ -24,19 +16,15 @@ local Example_Fixed_Height = {
Translation = {
Type = "GlobeTranslation",
Globe = earth.Earth.Identifier,
Longitude = 0.0,
Latitude = 0.0,
FixedAltitude = 10000000.0
Longitude = -74.006,
Latitude = 40.7128,
Altitude = 100000.0
}
},
Renderable = {
Type = "RenderableModel",
Body = "NEW HORIZONS",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/NewHorizonsCleanModel.obj",
ColorTexture = textures .. "/NHTexture.jpg"
}}
GeometryFile = models .. "/NewHorizonsCleanModel.obj"
},
GUI = {
Path = "/Example"
@@ -51,17 +39,14 @@ local Example_Adaptive_Height = {
Type = "GlobeTranslation",
Globe = earth.Earth.Identifier,
Longitude = -74.006,
Latitude = 40.7128
Latitude = 40.7128,
UseHeightmap = true
}
},
Renderable = {
Type = "RenderableModel",
Body = "NEW HORIZONS",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/NewHorizonsCleanModel.obj",
ColorTexture = textures .. "/NHTexture.jpg"
}}
GeometryFile = models .. "/NewHorizonsCleanModel.obj"
},
GUI = {
Path = "/Example"
@@ -0,0 +1,47 @@
local stateMachineHelper = asset.require('util/lua_state_machine_helper')
local states = {
{
Title = "Highlight EarthTrail",
Play = function ()
openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 10, 1)
end,
Rewind = function ()
openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 2, 1)
end
},
{
Title = "Highlight MarsTrail",
Play = function ()
openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 2, 1)
openspace.setPropertyValue("Scene.MarsTrail.Renderable.Appearance.LineWidth", 10, 1)
end,
Rewind = function ()
openspace.setPropertyValue("Scene.MarsTrail.Renderable.Appearance.LineWidth", 2, 1)
openspace.setPropertyValue("Scene.EarthTrail.Renderable.Appearance.LineWidth", 10, 1)
end
}
}
local stateMachine
function next()
stateMachine.goToNextState()
end
function previous()
stateMachine.goToPreviousState()
end
asset.onInitialize(function ()
stateMachine = stateMachineHelper.createStateMachine(states)
openspace.bindKey('RIGHT', 'next()')
openspace.bindKey('LEFT', 'previous()')
end)
asset.onDeinitialize(function ()
stateMachine = nil
openspace.clearKey('RIGHT')
openspace.clearKey('LEFT')
end)
@@ -0,0 +1,75 @@
/*****************************************************************************************
* *
* OpenSpace *
* *
* Copyright (c) 2014-2021 *
* *
* Permission is hereby granted, free of charge, to any person obtaining a copy of this *
* software and associated documentation files (the "Software"), to deal in the Software *
* without restriction, including without limitation the rights to use, copy, modify, *
* merge, publish, distribute, sublicense, and/or sell copies of the Software, and to *
* permit persons to whom the Software is furnished to do so, subject to the following *
* conditions: *
* *
* The above copyright notice and this permission notice shall be included in all copies *
* or substantial portions of the Software. *
* *
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, *
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A *
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT *
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF *
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE *
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
****************************************************************************************/
#include "fragment.glsl"
in vec2 vs_st;
in vec3 vs_normalViewSpace;
in vec4 vs_positionCameraSpace;
in float vs_screenSpaceDepth;
in mat3 TBN;
uniform float ambientIntensity = 0.2;
uniform float diffuseIntensity = 1.0;
uniform float specularIntensity = 1.0;
uniform bool performShading = true;
uniform bool use_forced_color = false;
uniform bool has_texture_diffuse;
uniform bool has_texture_normal;
uniform bool has_texture_specular;
uniform bool has_color_specular;
uniform bool opacityBlending = false;
uniform sampler2D texture_diffuse;
uniform sampler2D texture_normal;
uniform sampler2D texture_specular;
uniform vec3 color_diffuse;
uniform vec3 color_specular;
uniform int nLightSources;
uniform vec3 lightDirectionsViewSpace[8];
uniform float lightIntensities[8];
uniform float opacity = 1.0;
Fragment getFragment() {
Fragment frag;
if (has_texture_normal) {
vec3 normalAlbedo = texture(texture_normal, vs_st).rgb;
normalAlbedo = normalize(normalAlbedo * 2.0 - 1.0);
frag.color.rgb = normalize(TBN * normalAlbedo);
}
else {
frag.color.rgb = normalize(vs_normalViewSpace);
}
frag.color.a = 1.0;
frag.gPosition = vs_positionCameraSpace;
frag.gNormal = vec4(vs_normalViewSpace, 0.0);
frag.disableLDR2HDR = true;
return frag;
}
@@ -0,0 +1,68 @@
/*****************************************************************************************
* *
* OpenSpace *
* *
* Copyright (c) 2014-2021 *
* *
* Permission is hereby granted, free of charge, to any person obtaining a copy of this *
* software and associated documentation files (the "Software"), to deal in the Software *
* without restriction, including without limitation the rights to use, copy, modify, *
* merge, publish, distribute, sublicense, and/or sell copies of the Software, and to *
* permit persons to whom the Software is furnished to do so, subject to the following *
* conditions: *
* *
* The above copyright notice and this permission notice shall be included in all copies *
* or substantial portions of the Software. *
* *
* THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, *
* INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A *
* PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT *
* HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF *
* CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE *
* OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. *
****************************************************************************************/
#version __CONTEXT__
#include "PowerScaling/powerScaling_vs.hglsl"
layout(location = 0) in vec4 in_position;
layout(location = 1) in vec2 in_st;
layout(location = 2) in vec3 in_normal;
layout(location = 3) in vec3 in_tangent;
out vec2 vs_st;
out vec3 vs_normalViewSpace;
out float vs_screenSpaceDepth;
out vec4 vs_positionCameraSpace;
out mat3 TBN;
uniform mat4 modelViewTransform;
uniform mat4 projectionTransform;
uniform mat4 normalTransform;
uniform mat4 meshTransform;
uniform mat4 meshNormalTransform;
void main() {
vs_positionCameraSpace = modelViewTransform * (meshTransform * in_position);
vec4 positionClipSpace = projectionTransform * vs_positionCameraSpace;
vec4 positionScreenSpace = z_normalization(positionClipSpace);
gl_Position = positionScreenSpace;
vs_st = in_st;
vs_screenSpaceDepth = positionScreenSpace.w;
vs_normalViewSpace = normalize(mat3(normalTransform) * (mat3(meshNormalTransform) * in_normal));
// TBN matrix for normal mapping
vec3 T = normalize(mat3(normalTransform) * (mat3(meshNormalTransform) * in_tangent));
vec3 N = normalize(mat3(normalTransform) * (mat3(meshNormalTransform) * in_normal));
// Re-orthogonalize T with respect to N
T = normalize(T - dot(T, N) * N);
// Retrieve perpendicular vector B with cross product of T and N
vec3 B = normalize(cross(N, T));
TBN = mat3(T, B, N);
}
@@ -0,0 +1,45 @@
local assetHelper = asset.require('util/asset_helper')
local sunTransforms = asset.require('scene/solarsystem/sun/transforms')
local transforms = asset.require('scene/solarsystem/planets/earth/transforms')
local model = asset.syncedResource({
Name = "Animated Box",
Type = "HttpSynchronization",
Identifier = "animated_box",
Version = 1
})
local model = {
Identifier = "modelshader",
Parent = transforms.EarthCenter.Identifier,
Transform = {
Translation = {
Type = "StaticTranslation",
Position = { 11E7, 0.0, 0.0 }
}
},
Renderable = {
Type = "RenderableModel",
GeometryFile = model .. "/BoxAnimated.glb",
ModelScale = 3E7,
LightSources = {
{
Type = "SceneGraphLightSource",
Identifier = "Sun",
Node = sunTransforms.SolarSystemBarycenter.Identifier,
Intensity = 1.0
}
},
PerformShading = true,
DisableFaceCulling = true,
VertexShader = asset.localResource("model_vs.glsl"),
FragmentShader = asset.localResource("model_fs.glsl"),
},
GUI = {
Name = "Model Shader",
Path = "/Example",
Description = "Simple box model with a custom shader",
}
}
assetHelper.registerSceneGraphNodesAndExport(asset, { model })
+8 -7
View File
@@ -15,17 +15,18 @@ asset.onInitialize(function ()
local interpolationDuration = 0.5
function nextSlide()
helper.goToNextSlide(deck, interpolationDuration)
end
-- Add global functions for controlling slide deck and bind to keys
rawset(_G, "nextSlide", function()
helper.goToNextSlide(deck, interpolationDuration)
end)
function previousSlide()
rawset(_G, "previousSlide", function()
helper.goToPreviousSlide(deck, interpolationDuration)
end
end)
function toggleSlides()
rawset(_G, "toggleSlides", function()
helper.toggleSlides(deck, interpolationDuration)
end
end)
helper.setCurrentSlide(deck, 1)
openspace.bindKey("KP_6", "nextSlide()", "Next slide", "Next slide", "/Slides")
+63 -38
View File
@@ -1,47 +1,72 @@
local stateMachineHelper = asset.require('util/state_machine_helper')
-- Create a state machine with a few different states. The state machine can be controlled through
-- the scripting commands from the state machine module.
states = {
local targetNode = function(nodeIdentifier)
return [[
openspace.setPropertyValueSingle("NavigationHandler.OrbitalNavigator.RetargetAnchor", nil)
openspace.setPropertyValueSingle(
"NavigationHandler.OrbitalNavigator.Anchor",
']] .. nodeIdentifier .. [['
)
openspace.setPropertyValueSingle("NavigationHandler.OrbitalNavigator.Aim", '')
]]
end
local states = {
{
Title = "Highlight EarthTrail",
Play = function ()
openspace.setPropertyValue("Scene.EarthTrail.Renderable.LineWidth", 10, 1)
end,
Rewind = function ()
openspace.setPropertyValue("Scene.EarthTrail.Renderable.LineWidth", 2, 1)
end
},
Identifier = "Constellations",
Enter = [[
openspace.setPropertyValueSingle('Scene.Constellations.Renderable.Opacity', 1.0, 1.0)
]],
Exit = [[
openspace.setPropertyValueSingle('Scene.Constellations.Renderable.Opacity', 0.0, 1.0)
]]
},
{
Title = "Highlight MarsTrail",
Play = function ()
openspace.setPropertyValue("Scene.EarthTrail.Renderable.LineWidth", 2, 1)
openspace.setPropertyValue("Scene.MarsTrail.Renderable.LineWidth", 10, 1)
end,
Rewind = function ()
openspace.setPropertyValue("Scene.MarsTrail.Renderable.LineWidth", 2, 1)
openspace.setPropertyValue("Scene.EarthTrail.Renderable.LineWidth", 10, 1)
end
Identifier = "Earth",
Enter = "openspace.setPropertyValueSingle('Scene.EarthLabel.Renderable.Enabled', true)",
Exit = "openspace.setPropertyValueSingle('Scene.EarthLabel.Renderable.Enabled', false)"
},
{
Identifier = "Moon"
}
}
local stateMachine
local transitions = {
{
From = "Earth",
To = "Moon",
Action = targetNode("Moon")
},
{
From = "Moon",
To = "Earth",
Action = targetNode("Earth")
},
{
From = "Earth",
To = "Constellations",
},
{
From = "Constellations",
To = "Earth"
},
{
From = "Moon",
To = "Constellations",
Action = targetNode("Earth")
},
{
From = "Constellations",
To = "Moon",
Action = targetNode("Moon")
}
}
function next()
stateMachine.goToNextState()
end
asset.onInitialize(function()
-- Setup (could be done in the profile)
openspace.setPropertyValueSingle('Scene.Constellations.Renderable.Enabled', true)
openspace.setPropertyValueSingle('Scene.Constellations.Renderable.Opacity', 0.0)
function previous()
stateMachine.goToPreviousState()
end
asset.onInitialize(function ()
stateMachine = stateMachineHelper.createStateMachine(states)
openspace.bindKey('RIGHT', 'next()')
openspace.bindKey('LEFT', 'previous()')
end)
asset.onDeinitialize(function ()
stateMachine = nil
openspace.clearKey('RIGHT')
openspace.clearKey('LEFT')
openspace.statemachine.createStateMachine(states, transitions, "Earth")
end)
@@ -78,7 +78,7 @@ local sunstar = {
}
},
GUI = {
Name = "Sun",
Name = "Sun Star",
Path = "/Milky Way/Stars",
Description = [[Individual star to represent the sun when outside of the solar
system]]
@@ -78,6 +78,60 @@ local createConstellations = function (baseIdentifier, guiPath, constellationfil
end
local show_art = {
Identifier = "constellation_art.show_art",
Name = "Show Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0);" ..
"openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Enabled', true);" ..
"openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0.2, 2);",
Documentation = "Enables and fades up constellation art work",
GuiPath = "/Rendering",
IsLocal = false
}
asset.export("ShowArtAction", show_art)
local hide_art = {
Identifier = "constellation_art.hide_art",
Name = "Hide Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0, 2);",
Documentation = "Fades out constellation artwork",
GuiPath = "/Rendering",
IsLocal = false
}
asset.export("HideArtAction", hide_art)
local disable_art = {
Identifier = "constellation_art.disable_art",
Name = "Disable Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Enabled', false);",
Documentation = "Disable constellation artwork",
GuiPath = "/Rendering",
IsLocal = false
}
asset.export("DisableArtAction", disable_art)
local show_zodiac_art = {
Identifier = "constellation_art.show_zodiac_art",
Name = "Show Zodiac Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0);" ..
"openspace.setPropertyValue('{zodiac}.Renderable.Enabled',true);" ..
"openspace.setPropertyValue('{zodiac}.Renderable.Opacity', 1, 2);",
Documentation = "Enables and fades up zodiac art work",
GuiPath = "/Rendering",
IsLocal = false
}
asset.export("ShowZodiacArt", show_zodiac_art)
local hide_zodiac_art = {
Identifier = "constellation_art.hide_zodiac_art",
Name = "Hide Zodiac Art",
Command = "openspace.setPropertyValue('{zodiac}.Renderable.Opacity', 0, 2);",
Documentation = "fades down zodiac art work",
GuiPath = "/Rendering",
IsLocal = false
}
asset.export("HideZodiacArt", hide_zodiac_art)
local nodes = {}
asset.onInitialize(function ()
@@ -87,12 +141,20 @@ asset.onInitialize(function ()
for _, n in ipairs(nodes) do
openspace.addSceneGraphNode(n);
end
openspace.action.registerAction(show_art)
openspace.action.registerAction(hide_art)
openspace.action.registerAction(disable_art)
end)
asset.onDeinitialize(function ()
for _, n in ipairs(nodes) do
openspace.removeSceneGraphNode(n.Identifier);
end
openspace.action.removeAction(show_art.Identifier)
openspace.action.removeAction(hide_art.Identifier)
openspace.action.removeAction(disable_art.Identifier)
end)
@@ -1,32 +1,13 @@
local scene_helper = asset.require('util/scene_helper')
local Keybindings = {
{
Key = "v",
Name = "Show Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0);" ..
"openspace.setPropertyValue('{zodiac}.Renderable.Enabled',true);" ..
"openspace.setPropertyValue('{zodiac}.Renderable.Opacity', 1, 2);",
Documentation = "Enables and fades up zodiac art work",
GuiPath = "/Rendering",
Local = false
},
{
Key = "Shift+v",
Name = "Show Constellation Art",
Command = "openspace.setPropertyValue('{zodiac}.Renderable.Opacity', 0, 2);",
Documentation = "fades down zodiac art work",
GuiPath = "/Rendering",
Local = false
},
}
local mainAsset = asset.require('./constellation_art')
asset.onInitialize(function ()
scene_helper.bindKeys(Keybindings)
openspace.bindKey("v", mainAsset.ShowZodiacArt.Identifier)
openspace.bindKey("Shift+v", mainAsset.HideZodiacArt.Identifier)
end)
asset.onDeinitialize(function ()
scene_helper.unbindKeys(Keybindings)
openspace.clearKey("v")
openspace.clearKey("Shift+v")
end)
asset.meta = {
@@ -1,40 +1,15 @@
local scene_helper = asset.require('util/scene_helper')
local Keybindings = {
{
Key = "c",
Name = "Show Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0);" ..
"openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Enabled', true);" ..
"openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0.2, 2);",
Documentation = "Enables and fades up constellation art work",
GuiPath = "/Rendering",
Local = false
},
{
Key = "SHIFT+c",
Name = "Hide Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Opacity', 0, 2);",
Documentation = "Fades out constellation artwork",
GuiPath = "/Rendering",
Local = false
},
{
Key = "CTRL+c",
Name = "Disable Constellation Art",
Command = "openspace.setPropertyValue('Scene.ConstellationArt*.Renderable.Enabled', false);",
Documentation = "Disable constellation artwork",
GuiPath = "/Rendering",
Local = false
}
}
local mainAsset = asset.require('./constellation_art')
asset.onInitialize(function ()
scene_helper.bindKeys(Keybindings)
openspace.bindKey("c", mainAsset.ShowArtAction.Identifier)
openspace.bindKey("SHIFT+c", mainAsset.HideArtAction.Identifier)
openspace.bindKey("CTRL+c", mainAsset.DisableArtAction.Identifier)
end)
asset.onDeinitialize(function ()
scene_helper.unbindKeys(Keybindings)
openspace.clearKey("c")
openspace.clearKey("SHIFT+c")
openspace.clearKey("CTRL+c")
end)
@@ -14,21 +14,42 @@ local vrts = asset.syncedResource({
Version = 1
})
asset.onInitialize(function ()
openspace.globebrowsing.addBlendingLayersFromDirectory(vrts, assetGlobe);
flipbook = helper.createFlipbook(assetPrefix, assetGlobe, 19);
rawset(_G, "nextFlip", function() helper.nextFlipbookPage(flipbook) end)
rawset(_G, "previousFlip", function() helper.previousFlipbookPage(flipbook) end)
openspace.action.registerAction({
Identifier = "lem_flipbook.next_flip",
Name = "Next A11 flip",
Command = "nextFlip()",
Documentation = "Show the next Apollo 11 flipbook image",
GuiPath = "/Missions/Apollo/11",
IsLocal = false
})
openspace.bindKey("p", "nextFlip()", "Show the next Apollo 11 flipbook image.", "Next A11 flip", "/Missions/Apollo/11")
openspace.bindKey("o", "previousFlip()","Show the previous Apollo 11 flipbook image.", "Prev A11 flip", "/Missions/Apollo/11")
rawset(_G, "previousFlip", function() helper.previousFlipbookPage(flipbook) end)
openspace.action.registerAction({
Identifier = "lem_flipbook.prev_flip",
Name = "Prev A11 flip",
Command = "previousFlip()",
Documentation = "Show the previous Apollo 11 flipbook image",
GuiPath = "/Missions/Apollo/11",
IsLocal = false
})
openspace.bindKey("p", "lem_flipbook.next_flip")
openspace.bindKey("o", "lem_flipbook.prev_flip")
end)
asset.onDeinitialize(function ()
flipbook = nil;
openspace.action.removeAction("lem_flipbook.next_flip")
openspace.action.removeAction("lem_flipbook.prev_flip")
openspace.clearKey("o")
openspace.clearKey("p")
end)
@@ -50,6 +50,7 @@ local Apollo15 = {
Renderable = {
Type = "RenderableModel",
GeometryFile = models .. "/ApolloCSM.osmodel",
ModelScale = 0.0001,
LightSources = {
{
Type = "SceneGraphLightSource",
@@ -2,7 +2,7 @@ local models = asset.syncedResource({
Name = "Apollo Boulders Models",
Type = "HttpSynchronization",
Identifier = "apollo_boulders",
Version = 1
Version = 2
})
asset.export('models', models)
@@ -47,11 +47,7 @@ local Station2Boulder1Model = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/b1-v2.obj",
ColorTexture = models .. "/b1-v2_u1_v1.jpeg"
}},
GeometryFile = models .. "/b1-v2.obj",
RotationVector = { 243.243256 ,206.270264, 309.677429 },
LightSources = LightSources,
PerformShading = false,
@@ -93,11 +89,7 @@ local Station2Boulder2Model = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/b2model.obj",
ColorTexture = models .. "/b2model_u1_v1.jpeg"
}},
GeometryFile = models .. "/b2model.obj",
RotationVector = { 66.162155, 7.783780, 114.193550 },
LightSources = LightSources,
PerformShading = false,
@@ -139,11 +131,7 @@ local Station2Boulder3Model = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/b3model.obj",
ColorTexture = models .. "/b3model_u1_v1.jpeg"
}},
GeometryFile = models .. "/b3model.obj",
RotationVector = { 161.513519 ,243.243256, 65.806450 },
LightSources = LightSources,
PerformShading = false,
@@ -58,11 +58,7 @@ local Station6Frag1Model = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/A17-S6-frag1.obj",
ColorTexture = models .. "/A17-S6-frag1.png"
}},
GeometryFile = models .. "/A17-S6-frag1.obj",
RotationVector = { 235.909088,165.000000,286.299194 },
LightSources = LightSources,
PerformShading = false,
@@ -105,11 +101,7 @@ local Station6Frag2Model = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/station6_boulder_frag2.obj",
ColorTexture = models .. "/frag2crop_u1_v1.jpeg"
}},
GeometryFile = models .. "/station6_boulder_frag2.obj",
RotationVector = { 336.959991,210.239990,325.984253 },
LightSources = LightSources,
PerformShading = false,
@@ -140,11 +132,7 @@ local Station6Frag3Model = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/station6_boulder_frag3.obj",
ColorTexture = models .. "/frag3crop_u1_v1.jpeg"
}},
GeometryFile = models .. "/station6_boulder_frag3.obj",
RotationVector = { 293.181824,255.000000,4.090910 },
LightSources = LightSources,
PerformShading = false,
@@ -47,11 +47,7 @@ local Station7BoulderModel = {
},
Renderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = models .. "/b7model.obj",
ColorTexture = models .. "/b7model_u1_v1.jpeg"
}},
GeometryFile = models .. "/b7model.obj",
RotationVector = { 1.945950,274.378387,212.903214 },
LightSources = LightSources,
PerformShading = false,
@@ -38,11 +38,6 @@ local Apollo8LaunchModel = {
End = "1968 DEC 22"
},
Transform = {
Scale = {
Type = "StaticScale",
-- The scale of the model is in cm; OpenSpace is in m
Scale = 0.01
},
Rotation = {
Type = "StaticRotation",
Rotation = {0.0, 0.0, -3.1415 / 2}
@@ -51,6 +46,7 @@ local Apollo8LaunchModel = {
Renderable = {
Type = "RenderableModel",
GeometryFile = models .. "/ApolloCSM.osmodel",
ModelScale = 0.0001,
LightSources = {
{
Type = "SceneGraphLightSource",
@@ -50,11 +50,6 @@ local Apollo8Model = {
End = "1968 DEC 28"
},
Transform = {
Scale = {
Type = "StaticScale",
-- The scale of the model is in cm; OpenSpace is in m
Scale = 0.01
},
Rotation = {
Type = "StaticRotation",
Rotation = {0.0, 0.0, -3.1415 / 2}
@@ -63,6 +58,7 @@ local Apollo8Model = {
Renderable = {
Type = "RenderableModel",
GeometryFile = models .. "/ApolloCSM.osmodel",
ModelScale = 0.0001,
LightSources = {
{
Type = "SceneGraphLightSource",
@@ -85,20 +85,32 @@ for i = 1, #landingData do
}
end
asset.onInitialize(function ()
openspace.bindShortcut(
'Show Apollo Landing Labels',
'openspace.setPropertyValue("Scene.Apollo*Insignia.Renderable.Opacity", 1, 0.5)',
'Show patches of the Apollo missions on their respective landing sites',
'/Missions/Apollo'
)
local show_apollo_labels = {
Identifier = "apollo_insignias.show_insignias",
Name = "Show Apollo Landing Labels",
Command = "openspace.setPropertyValue('Scene.Apollo*Insignia.Renderable.Opacity', 1, 0.5)",
Documentation = "Show patches of the Apollo missions on their respective landing sites",
GuiPath = "/Missions/Apollo",
IsLocal = true
}
openspace.bindShortcut(
'Hide Apollo Landing Labels',
'openspace.setPropertyValue("Scene.Apollo*Insignia.Renderable.Opacity", 0, 0.5)',
'Hide patches of the Apollo missions on their respective landing sites',
'/Missions/Apollo'
)
local hide_apollo_labels = {
Identifier = "apollo_insignias.hide_insignias",
Name = "Hide Apollo Landing Labels",
Command = "openspace.setPropertyValue('Scene.Apollo*Insignia.Renderable.Opacity', 0, 0.5)",
Documentation = "Hide patches of the Apollo missions on their respective landing sites",
GuiPath = "/Missions/Apollo",
IsLocal = true
}
asset.onInitialize(function ()
openspace.action.registerAction(show_apollo_labels)
openspace.action.registerAction(hide_apollo_labels)
end)
asset.onDeinitialize(function ()
openspace.action.removeAction(show_apollo_labels.Identifier)
openspace.action.removeAction(hide_apollo_labels.Identifier)
end)
asset.export('showInsignia', function (missinNumber, interpolationDuration)
@@ -20,7 +20,7 @@ local Gaia = {
XAxis = { 1.0, 0.0, 0.0 },
XAxisOrthogonal = true,
YAxis = "Sun",
YAxisInverted = true
YAxisInvert = true
},
Scale = {
Type = "StaticScale",
@@ -11,7 +11,7 @@ local trail = asset.syncedResource({
local GaiaTrail = {
Identifier = "GaiaTrail",
Parent = earthTransforms.EarthBarycenter.Identifier,
Parent = earthTransforms.EarthCenter.Identifier,
Renderable = {
Type = "RenderableTrailTrajectory",
Translation = {
@@ -36,7 +36,7 @@ local GaiaTrail = {
local GaiaTrailEclip = {
Identifier = "GaiaTrail_Eclip",
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
Parent = sunTransforms.SunCenter.Identifier,
Renderable = {
Type = "RenderableTrailTrajectory",
Enabled = false,
@@ -11,7 +11,7 @@ local trail = asset.syncedResource({
local GaiaPosition = {
Identifier = "GaiaPosition",
Parent = earthTransforms.EarthBarycenter.Identifier,
Parent = earthTransforms.EarthCenter.Identifier,
Transform = {
Translation = {
Type = "HorizonsTranslation",
@@ -5,16 +5,12 @@ local modelFolder = asset.syncedResource({
Name = "Pioneer 10/11 Models",
Type = "HttpSynchronization",
Identifier = "pioneer_10_11_model",
Version = 2
Version = 3
})
local ModelRenderable = {
Type = "RenderableModel",
Geometry = {{
Type = "MultiModelGeometry",
GeometryFile = modelFolder .. "/Pioneer.obj",
ColorTexture = modelFolder .. "/gray.png"
}},
GeometryFile = modelFolder .. "/pioneer.fbx",
LightSources = assetHelper.getDefaultLightSources(
sunTransforms.SolarSystemBarycenter.Identifier
)
@@ -10,7 +10,7 @@ local layer = {
"Yesterday",
"1d",
"1km",
"jpg"
"png"
),
Description = [[ Temporal coverage: 01 June 2002 - Present. The imagery resolution
is 1 km, and the temporal resolution is daily.]]
@@ -1,8 +1,17 @@
<GDAL_WMS>
<Service name="TiledWMS">
<ServerUrl>http://198.102.45.23/arcgis/rest/services/worldelevation3d/terrain3d?</ServerUrl>
<TiledGroupName>GCS_Elevation</TiledGroupName>
<Service name="TMS">
<ServerUrl>http://earthlive.maptiles.arcgis.com/arcgis/rest/services/GCS_Elevation3D/ImageServer/tile/${z}/${y}/${x}</ServerUrl>
</Service>
<Timeout>2</Timeout>
<DataWindow>
<UpperLeftX>-180</UpperLeftX> <UpperLeftY>90</UpperLeftY>
<LowerRightX>180</LowerRightX> <LowerRightY>-90</LowerRightY>
<SizeX>16777216</SizeX> <SizeY>8388608</SizeY>
<TileLevel>14</TileLevel> <YOrigin>top</YOrigin>
</DataWindow>
<Projection>EPSG:4326</Projection>
<BlockSizeX>512</BlockSizeX> <BlockSizeY>512</BlockSizeY>
<BandsCount>1</BandsCount> <DataType>Float32</DataType>
<DataValues NoData="0" Min="-11000" Max="8500"/>
<MaxConnections>5</MaxConnections>
<ZeroBlockHttpCodes>404,400</ZeroBlockHttpCodes>
</GDAL_WMS>
@@ -42,7 +42,6 @@ local Atmosphere = {
G = 0.85
},
Debug = {
-- PreCalculatedTextureScale is a float from 1.0 to N, with N > 0.0 and N in Naturals (i.e., 1, 2, 3, 4, 5....)
PreCalculatedTextureScale = 1.0,
SaveCalculatedTextures = false
}
@@ -42,7 +42,6 @@ local Atmosphere = {
G = 0.85
},
Debug = {
-- PreCalculatedTextureScale is a float from 1.0 to N, with N > 0.0 and N in Naturals (i.e., 1, 2, 3, 4, 5....)
PreCalculatedTextureScale = 1.0,
SaveCalculatedTextures = false
}
@@ -20,6 +20,24 @@ local SolarSystemBarycenter = {
}
}
local SunCenter = {
Identifier = "SunCenter",
Parent = SolarSystemBarycenter.Identifier,
Transform = {
Translation = {
Type = "SpiceTranslation",
Target = "SUN",
Observer = "SSB"
}
},
GUI = {
Name = "SUN Center",
Path = "/Solar System/Sun",
Description = [[Spice frame for the Sun]],
Hidden = true
}
}
-- Spice frame for the Sun
local SunIAU = {
Identifier = "SunIAU",
@@ -67,7 +85,7 @@ local SunECLIPJ2000 = {
}
}
assetHelper.registerSceneGraphNodesAndExport(asset, { SolarSystemBarycenter, SunIAU, SunECLIPJ2000 })
assetHelper.registerSceneGraphNodesAndExport(asset, { SolarSystemBarycenter, SunCenter, SunIAU, SunECLIPJ2000 })
asset.meta = {
+1 -1
View File
@@ -67,7 +67,7 @@ local addCartesianAxes = function (specification)
Parent = parent,
Transform = {
Scale = {
Type = "StaticScale",
Type = "NonUniformStaticScale",
Scale = scale
},
Translation = {
+188 -141
View File
@@ -1,155 +1,202 @@
local sceneHelper = asset.require('./scene_helper')
local propertyHelper = asset.require('./property_helper')
local Keybindings = {
{
Key = "F1",
Name = "Show Native GUI",
Command = propertyHelper.invert('Modules.ImGUI.Main.Enabled'),
Documentation = "Shows or hides the native UI",
GuiPath = "/Native GUI",
Local = true
},
{
Key = "ESC",
Name = "Toggle Shutdown",
Command = "openspace.toggleShutdown()",
Documentation = "Toggles the shutdown that will stop OpenSpace after a grace period. Press again to cancel the shutdown during this period.",
Local = true
},
{
Key = "PRINT_SCREEN",
Name = "Take Screenshot",
Command = "openspace.takeScreenshot()",
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
GuiPath = "/Rendering",
Local = true
},
{
Key = "F12",
Name = "Take Screenshot",
Command = "openspace.takeScreenshot()",
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
GuiPath = "/Rendering",
Local = true
},
{
Key = "SPACE",
Name = "Toggle Pause (Interpolated)",
Command = "openspace.time.pauseToggleViaKeyboard()",
Documentation = "Smoothly starts and stops the simulation time.",
GuiPath = "/Simulation Speed",
Local = true
},
{
Key = "Shift+SPACE",
Name = "Toggle Pause (Immediate)",
Command = "openspace.time.togglePause()",
Documentation = "Immediately starts and stops the simulation time.",
GuiPath = "/Simulation Speed",
Local = true
},
{
Key = "f",
Name = "Toggle Rotation friction",
Command = propertyHelper.invert('NavigationHandler.OrbitalNavigator.Friction.RotationalFriction'),
Documentation = "Toggles the rotational friction of the camera. If it is disabled, the camera rotates around the focus object indefinitely.",
GuiPath = "/Navigation",
Local = false
},
{
Key = "Shift+f",
Name = "Toggle Zoom Friction",
Command = propertyHelper.invert('NavigationHandler.OrbitalNavigator.Friction.ZoomFriction'),
Documentation = "Toggles the zoom friction of the camera. If it is disabled, the camera rises up from or closes in towards the focus object indefinitely.",
GuiPath = "/Navigation",
Local = false
},
{
Key = "Ctrl+f",
Name = "Toggle Roll Friction",
Command = propertyHelper.invert('NavigationHandler.OrbitalNavigator.Friction.RollFriction'),
Documentation = "Toggles the roll friction of the camera. If it is disabled, the camera rolls around its own axis indefinitely.",
GuiPath = "/Navigation",
Local = false
},
{
Key = "w",
Name = "Fade to/from black",
Command = "if openspace.getPropertyValue('RenderEngine.BlackoutFactor') > 0.5 then openspace.setPropertyValueSingle('RenderEngine.BlackoutFactor', 0.0, 3) else openspace.setPropertyValueSingle('RenderEngine.BlackoutFactor', 1.0, 3) end",
Documentation = "Toggles the fade to black within 3 seconds or shows the rendering after 3 seconds.",
GuiPath = "/Rendering",
Local = false
},
{
Key = "Tab",
Name = "Toggle main GUI",
Command = propertyHelper.invert('Modules.CefWebGui.Visible'),
Documentation = "Toggles the main GUI",
GuiPath = "/GUI",
Local = true
},
{
Key = "Shift+Tab",
Name = "Toggle dashboard and overlays",
Command =
local toggle_native_ui = {
Identifier = "os_default.toggle_native_ui",
Name = "Show Native GUI",
Command = propertyHelper.invert('Modules.ImGUI.Main.Enabled'),
Documentation = "Shows or hides the native UI",
GuiPath = "/Native GUI",
IsLocal = true,
Key = "F1"
}
local toggle_shutdown = {
Identifier = "os_default.toggle_shutdown",
Name = "Toggle Shutdown",
Command = "openspace.toggleShutdown()",
Documentation = "Toggles the shutdown that will stop OpenSpace after a grace period. Press again to cancel the shutdown during this period.",
IsLocal = true,
Key = "ESC"
}
local take_screenshot = {
Identifier = "os_default.take_screenshot",
Name = "Take Screenshot",
Command = "openspace.takeScreenshot()",
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
GuiPath = "/Rendering",
IsLocal = true,
Key = "F12"
}
local toggle_pause_interpolated = {
Identifier = "os_default.toggle_pause_interpolated",
Name = "Toggle Pause (Interpolated)",
Command = "openspace.time.pauseToggleViaKeyboard()",
Documentation = "Smoothly starts and stops the simulation time.",
GuiPath = "/Simulation Speed",
IsLocal = true,
Key = "SPACE"
}
local toggle_pause_immediate = {
Identifier = "os_default.toggle_pause_immediate",
Name = "Toggle Pause (Immediate)",
Command = "openspace.time.togglePause()",
Documentation = "Immediately starts and stops the simulation time.",
GuiPath = "/Simulation Speed",
IsLocal = true,
Key = "Shift+SPACE"
}
local toggle_rotation_friction = {
Identifier = "os_default.toggle_rotation_friction",
Name = "Toggle Rotation friction",
Command = propertyHelper.invert('NavigationHandler.OrbitalNavigator.Friction.RotationalFriction'),
Documentation = "Toggles the rotational friction of the camera. If it is disabled, the camera rotates around the focus object indefinitely.",
GuiPath = "/Navigation",
IsLocal = false,
Key = "f"
}
local toggle_zoom_friction = {
Identifier = "os_default.toggle_zoom_friction",
Name = "Toggle Zoom Friction",
Command = propertyHelper.invert('NavigationHandler.OrbitalNavigator.Friction.ZoomFriction'),
Documentation = "Toggles the zoom friction of the camera. If it is disabled, the camera rises up from or closes in towards the focus object indefinitely.",
GuiPath = "/Navigation",
IsLocal = false,
Key = "Shift+f"
}
local toggle_roll_friction = {
Identifier = "os_default.toggle_roll_friction",
Name = "Toggle Roll Friction",
Command = propertyHelper.invert('NavigationHandler.OrbitalNavigator.Friction.RollFriction'),
Documentation = "Toggles the roll friction of the camera. If it is disabled, the camera rolls around its own axis indefinitely.",
GuiPath = "/Navigation",
IsLocal = false,
Key = "Ctrl+f"
}
local fade_to_black = {
Identifier = "os_default.fade_to_black",
Name = "Fade to/from black",
Command = "if openspace.getPropertyValue('RenderEngine.BlackoutFactor') > 0.5 then openspace.setPropertyValueSingle('RenderEngine.BlackoutFactor', 0.0, 3) else openspace.setPropertyValueSingle('RenderEngine.BlackoutFactor', 1.0, 3) end",
Documentation = "Toggles the fade to black within 3 seconds or shows the rendering after 3 seconds.",
GuiPath = "/Rendering",
IsLocal = false,
Key = "w"
}
local toggle_main_gui = {
Identifier = "os_default.toggle_main_gui",
Name = "Toggle main GUI",
Command = propertyHelper.invert('Modules.CefWebGui.Visible'),
Documentation = "Toggles the main GUI",
GuiPath = "/GUI",
IsLocal = true,
Key = "Tab"
}
local toggle_overlays = {
Identifier = "os_default.toggle_overlays",
Name = "Toggle dashboard and overlays",
Command =
[[local isEnabled = openspace.getPropertyValue('Dashboard.IsEnabled');
openspace.setPropertyValueSingle('Dashboard.IsEnabled', not isEnabled);
openspace.setPropertyValueSingle("RenderEngine.ShowLog", not isEnabled);
openspace.setPropertyValueSingle("RenderEngine.ShowVersion", not isEnabled);
openspace.setPropertyValueSingle("RenderEngine.ShowCamera", not isEnabled)]],
Documentation = "Toggles the dashboard and overlays",
GuiPath = "/GUI",
Local = true
},
{
Key = "Alt+R",
Name = "Toggle rendering on master",
Command = propertyHelper.invert('RenderEngine.DisableMasterRendering'),
Documentation = "Toggles the rendering on master",
GuiPath = "/Rendering",
Local = true
},
{
Key = "Right",
Name = "Next Delta Time Step (Interpolate)",
Command = "openspace.time.interpolateNextDeltaTimeStep()",
Documentation = "Smoothly interpolates the simulation speed to the next delta time step, if one exists.",
GuiPath = "/Simulation Speed",
Local = true
},
{
Key = "Shift+Right",
Name = "Next Delta Time Step (Immediate)",
Command = "openspace.time.setNextDeltaTimeStep()",
Documentation = "Immediately set the simulation speed to the next delta time step, if one exists.",
GuiPath = "/Simulation Speed",
Local = true
},
{
Key = "Left",
Name = "Previous Delta Time Step (Interpolate)",
Command = "openspace.time.interpolatePreviousDeltaTimeStep()",
Documentation = "Smoothly interpolates the simulation speed to the previous delta time step, if one exists.",
GuiPath = "/Simulation Speed",
Local = true
},
{
Key = "Shift+Left",
Name = "Previous Delta Time Step (Immediate)",
Command = "openspace.time.setPreviousDeltaTimeStep()",
Documentation = "Immediately set the simulation speed to the previous delta time step, if one exists.",
GuiPath = "/Simulation Speed",
Local = true
}
Documentation = "Toggles the dashboard and overlays",
GuiPath = "/GUI",
IsLocal = true,
Key = "Shift+Tab"
}
local toggle_master_rendering = {
Identifier = "os_default.toggle_master_rendering",
Name = "Toggle rendering on master",
Command = propertyHelper.invert('RenderEngine.DisableMasterRendering'),
Documentation = "Toggles the rendering on master",
GuiPath = "/Rendering",
IsLocal = true,
Key = "Alt+R"
}
local next_delta_step_interpolate = {
Identifier = "os_default.next_delta_step_interpolate",
Name = "Next Delta Time Step (Interpolate)",
Command = "openspace.time.interpolateNextDeltaTimeStep()",
Documentation = "Smoothly interpolates the simulation speed to the next delta time step, if one exists.",
GuiPath = "/Simulation Speed",
IsLocal = true,
Key = "Right"
}
local next_delta_step_immediate = {
Identifier = "os_default.next_delta_step_immediate",
Name = "Next Delta Time Step (Immediate)",
Command = "openspace.time.setNextDeltaTimeStep()",
Documentation = "Immediately set the simulation speed to the next delta time step, if one exists.",
GuiPath = "/Simulation Speed",
IsLocal = true,
Key = "Shift+Right"
}
local previous_delta_step_interpolate = {
Identifier = "os_default.previous_delta_step_interpolate",
Name = "Previous Delta Time Step (Interpolate)",
Command = "openspace.time.interpolatePreviousDeltaTimeStep()",
Documentation = "Smoothly interpolates the simulation speed to the previous delta time step, if one exists.",
GuiPath = "/Simulation Speed",
IsLocal = true,
Key = "Left"
}
local previous_delta_step_immediate = {
Identifier = "os_default.previous_delta_step_immediate",
Name = "Previous Delta Time Step (Immediate)",
Command = "openspace.time.setPreviousDeltaTimeStep()",
Documentation = "Immediately set the simulation speed to the previous delta time step, if one exists.",
GuiPath = "/Simulation Speed",
IsLocal = true,
Key = "Shift+Left"
}
local Actions = {
toggle_native_ui,toggle_shutdown,take_screenshot,toggle_pause_interpolated,toggle_pause_immediate,
toggle_rotation_friction,toggle_zoom_friction,toggle_roll_friction,fade_to_black,
toggle_main_gui,toggle_overlays,toggle_master_rendering,next_delta_step_interpolate,
next_delta_step_immediate,previous_delta_step_interpolate,previous_delta_step_immediate
}
asset.onInitialize(function()
sceneHelper.bindKeys(Keybindings)
for _, action in ipairs(Actions) do
openspace.action.registerAction(action)
openspace.bindKey(action.Key, action.Identifier)
end
end)
asset.onDeinitialize(function ()
sceneHelper.unbindKeys(Keybindings)
for _, action in ipairs(Actions) do
openspace.action.removeAction(action.Identifier)
openspace.clearKey(action.Key)
end
end)
asset.export("DefaultKeybindings", Keybindings)
+1 -1
View File
@@ -2,6 +2,6 @@ local DataPath = asset.syncedResource({
Name = "Launcher Images",
Type = "HttpSynchronization",
Identifier = "launcher_images",
Version = 1
Version = 2
})
asset.export("DataPath", DataPath)
@@ -1,3 +1,8 @@
-- Contains the required functions to create a simple Lua state machine, that can step
-- forwards and backwards through a list of states.
--
-- A state is given as a table with a Title string, and two functions: Play and Rewind
-- (see example asset)
local goToNextStateFunction = function (machine)
if (machine.currentStateIndex >= #machine.states) then
-108
View File
@@ -1,108 +0,0 @@
local bindKeys = function(t, ignoreWarning)
ignoreWarning = ignoreWarning or false
for _, k in ipairs(t) do
assert(k.Key, 'No key provided')
assert(k.Command, 'No command provided for key ' .. k.Key)
k.Name = k.Name or k.Key
k.GuiPath = k.GuiPath or ''
local currentKey = openspace.getKeyBinding(k.Key)
if (next(currentKey) ~= nil) and (not ignoreWarning) then
openspace.printWarning('New keybind for "' .. k.Key .. '" is added, but a previous keybind already existed. If you want to silence this warning, pass "true", to this call to bindKeys')
end
if k.Local then
openspace.bindKeyLocal(k.Key, k.Command, k.Documentation, k.Name, k.GuiPath)
else
openspace.bindKey(k.Key, k.Command, k.Documentation, k.Name, k.GuiPath)
end
end
end
asset.export("bindKeys", bindKeys)
local unbindKeys = function(keys)
-- We check against k and k.Key to provide compatability
-- for both calls with the same table that goes to bindKeys
-- as well as the return values from setDeltaTimeKeys
for _, k in ipairs(keys) do
openspace.clearKey(k.Key or k)
end
end
asset.export("unbindKeys", unbindKeys)
--shortcut function
local function has_value (tab, val)
for index, value in ipairs(tab) do
-- We grab the first index of our sub-table instead
if value[1] == val then
return true
end
end
return false
end
local extractShortcuts = function(names, shortcuts)
local foundShortcuts = {};
if type(names) ~= "table" then
openspace.printWarning("scene_helper.extractShortcuts invalid paramater names (not Table)")
end
if type(shortcuts) ~= "table" then
openspace.printWarning("scene_helper.extractShortcuts invalid paramater shortcuts (not Table)")
end
for _, shortcut in ipairs(shortcuts) do
for _, name in ipairs(names ) do
if (shortcut.Name == name) then
foundShortcuts[#foundShortcuts+1] = shortcut
end
end
end
return foundShortcuts
end
asset.export("extractShortcuts", extractShortcuts)
local createKeyBindFromShortcuts = function(key, shortcuts, guipath, title, documentation)
if type(key) ~= "string" then
openspace.printWarning("scene_helper.createKeyBindFromShortcuts invalid paramater key (not String)")
end
if type(shortcuts) ~= "table" or #shortcuts == 0 then
openspace.printWarning("scene_helper.createKeyBindFromShortcuts invalid paramater shortcuts (not Table or empty)")
end
-- if type(guipath) ~= "string" then
-- guipath = shortcuts[0].GuiPath
-- end
local concatTitle = type(title) ~= "string"
local concatDocumentation = type(documentation) ~= "string"
local keybind = {
Key = key,
Command = "",
Name = name or "",
Documentation = documentation or "",
GuiPath = guipath or "",
Local = false
}
for _, shortcut in ipairs(shortcuts) do
keybind.Command = keybind.Command .. shortcut.Command
if concatTitle then
keybind.Name = keybind.Name .. "/" .. shortcut.Name
end
if concatDocumentation then
keybind.Documentation = keybind.Documentation .. "," .. shortcut.Documentation
end
keybind.Local = keybind.Local and shortcut.Local
end
return keybind
end
asset.export("createKeyBindFromShortcuts", createKeyBindFromShortcuts)
+11 -12
View File
@@ -1,23 +1,22 @@
--testing_keybindings.asset
local sceneHelper = asset.require('./scene_helper')
local propertyHelper = asset.require('./property_helper')
local Keybindings = {
{
Key = "F7",
Name = "Take Screenshot",
Command = "openspace.takeScreenshot()",
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
GuiPath = "/Rendering",
Local = true
}
local take_screenshot = {
Identifier = "testing_keyboard.take_screenshot",
Name = "Take Screenshot",
Command = "openspace.takeScreenshot()",
Documentation = "Saves the contents of the screen to a file in the ${SCREENSHOTS} directory.",
GuiPath = "/Rendering",
IsLocal = true
}
asset.onInitialize(function()
Keys = sceneHelper.bindKeys(Keybindings)
openspace.action.registerAction(take_screenshot)
openspace.bindKey("F7", take_screenshot.Identifier)
end)
asset.onDeinitialize(function ()
sceneHelper.unbindKeys(Keybindings)
openspace.action.removeAction(take_screenshot.Identifier)
openspace.clearKey("F7")
end)
+1 -1
View File
@@ -3,7 +3,7 @@ asset.require('./static_server')
local guiCustomization = asset.require('customization/gui')
-- Select which commit hashes to use for the frontend and backend
local frontendHash = "829260614bb95e236d23cb500f6ec0fb2e3bdf51"
local frontendHash = "224ef14e76ab76f5f91df2f0e35d6b9f6805aaf4"
local dataProvider = "data.openspaceproject.com/files/webgui"
local frontend = asset.syncedResource({
Binary file not shown.

After

Width:  |  Height:  |  Size: 61 KiB

+93 -55
View File
@@ -1,4 +1,78 @@
{
"actions": [
{
"documentation": "Jump to right before the earthrise photo",
"gui_path": "/Missions/Apollo/8",
"identifier": "profile.setup.earthrise",
"is_local": false,
"name": "Set Earthrise time",
"script": "openspace.time.setPause(true); openspace.time.setDeltaTime(1); openspace.time.setTime('1968 DEC 24 16:37:31'); openspace.navigation.setNavigationState({Anchor = 'Apollo8', Position = { 1.494592E1, 3.236777E1, -4.171296E1 }, ReferenceFrame = 'Root', Up = { 0.960608E0, -0.212013E0, 0.179675E0 }}); openspace.setPropertyValue('*Trail.Renderable.Enabled', false);"
},
{
"documentation": "Jump to time right before Apollo 8 liftoff, with its trail enabled",
"gui_path": "/Missions/Apollo/8",
"identifier": "profile.setup.apollo8",
"is_local": false,
"name": "Set Apollo 8 launch time",
"script": "openspace.time.setTime('1968-12-21T12:51:37.00'); openspace.setPropertyValueSingle('Scene.Apollo8LaunchTrail.Renderable.Enabled', true);"
},
{
"documentation": "Toggles Moon Kaguya color layer",
"gui_path": "/Missions/Apollo",
"identifier": "profile.moon.kaguyalayer",
"is_local": false,
"name": "Toggle Kaguya layer",
"script": "openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.Kaguya_Utah.Enabled', not openspace.getPropertyValue('Scene.Moon.Renderable.Layers.ColorLayers.Kaguya_Utah.Enabled'));"
},
{
"documentation": "Toggles shading for the Moon",
"gui_path": "/Missions/Apollo",
"identifier": "profile.moon.shading",
"is_local": false,
"name": "Toggle Moon shading",
"script": "openspace.setPropertyValueSingle('Scene.Moon.Renderable.PerformShading', not openspace.getPropertyValue('Scene.Moon.Renderable.PerformShading'));"
},
{
"documentation": "Set camera focus to the Earth",
"gui_path": "/Missions/Apollo",
"identifier": "profile.focus.earth",
"is_local": false,
"name": "Focus on Earth",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Earth'); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Set camera focus to the Moon",
"gui_path": "/Missions/Apollo",
"identifier": "profile.focus.moon",
"is_local": false,
"name": "Focus on Moon",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Moon'); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Disable apollo site on moon when leaving",
"gui_path": "/Missions/Apollo",
"identifier": "profile.moon.disableapollosites",
"is_local": false,
"name": "Disable Apollo sites",
"script": "openspace.setPropertyValue('Scene.Moon.Renderable.Layers.ColorLayers.A17_*.Enabled', false); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_11.Enabled', false); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A11_M177481212_p_longlat.Enabled', false); openspace.setPropertyValueSingle('Scene.Apollo11MoonTrail.Renderable.Enabled', false); openspace.setPropertyValueSingle('Scene.Apollo11LemTrail.Renderable.Enabled', false); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_17.Enabled', false);"
},
{
"documentation": "Setup for Apollo 11 landing site",
"gui_path": "/Missions/Apollo/11",
"identifier": "profile.setup.apollo11",
"is_local": false,
"name": "Setup A11 site",
"script": "openspace.time.setTime('1969 JUL 20 20:17:40'); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_11.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A11_M177481212_p_longlat.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.TargetLodScaleFactor', 20.11); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Apollo11LemPosition'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil); openspace.setPropertyValueSingle('Scene.Apollo11MoonTrail.Renderable.Enabled', true); openspace.setPropertyValueSingle('Scene.Apollo11LemTrail.Renderable.Enabled', true);"
},
{
"documentation": "Setup for Apollo 17 landing site",
"gui_path": "/Missions/Apollo/17",
"identifier": "profile.setup.apollo17",
"is_local": false,
"name": "Setup A17 site",
"script": "openspace.time.setTime('1972 DEC 12 19:47:11'); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_travmap.BlendMode', 0.000000); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_travmap.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_17.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_LEM.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_LEM.BlendMode', 0.000000); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_NAC_Alt_p.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_NAC_Alt_p.BlendMode', 0.000000); openspace.setPropertyValueSingle('Scene.Moon.Renderable.TargetLodScaleFactor', 20.17); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Apollo17LemModel'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_station7.BlendMode', 0.000000);"
}
],
"assets": [
"base",
"scene/solarsystem/missions/apollo/11/apollo11",
@@ -39,76 +113,40 @@
],
"keybindings": [
{
"documentation": "Jump to right before the earthrise photo",
"gui_path": "/Missions/Apollo/8",
"is_local": false,
"key": "E",
"name": "Set Earthrise time",
"script": "openspace.time.setPause(true); openspace.time.setDeltaTime(1); openspace.time.setTime('1968 DEC 24 16:37:31'); openspace.navigation.setNavigationState({Anchor = 'Apollo8', Position = { 1.494592E1, 3.236777E1, -4.171296E1 }, ReferenceFrame = 'Root', Up = { 0.960608E0, -0.212013E0, 0.179675E0 }}); openspace.setPropertyValue('*Trail.Renderable.Enabled', false);"
"action": "profile.setup.earthrise",
"key": "E"
},
{
"documentation": "Jump to time right before Apollo 8 liftoff, with its trail enabled",
"gui_path": "/Missions/Apollo/8",
"is_local": false,
"key": "U",
"name": "Set Apollo 8 launch time",
"script": "openspace.time.setTime('1968-12-21T12:51:37.00'); openspace.setPropertyValueSingle('Scene.Apollo8LaunchTrail.Renderable.Enabled', true);"
"action": "profile.setup.apollo8",
"key": "U"
},
{
"documentation": "Toggles Moon Kaguya color layer",
"gui_path": "/Missions/Apollo",
"is_local": false,
"key": "K",
"name": "Toggle Kaguya layer",
"script": "openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.Kaguya_Utah.Enabled', not openspace.getPropertyValue('Scene.Moon.Renderable.Layers.ColorLayers.Kaguya_Utah.Enabled'));"
"action": "profile.moon.kaguyalayer",
"key": "K"
},
{
"documentation": "Toggles shading for the Moon",
"gui_path": "/Missions/Apollo",
"is_local": false,
"key": "S",
"name": "Toggle Moon shading",
"script": "openspace.setPropertyValueSingle('Scene.Moon.Renderable.PerformShading', not openspace.getPropertyValue('Scene.Moon.Renderable.PerformShading'));"
"action": "profile.moon.shading",
"key": "S"
},
{
"documentation": "Set camera focus to the Earth",
"gui_path": "/Missions/Apollo",
"is_local": false,
"key": "HOME",
"name": "Focus on Earth",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Earth'); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.earth",
"key": "Home"
},
{
"documentation": "Set camera focus to the Moon",
"gui_path": "/Missions/Apollo",
"is_local": false,
"key": "M",
"name": "Focus on Moon",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Moon'); openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.moon",
"key": "M"
},
{
"documentation": "Disable apollo site on moon when leaving",
"gui_path": "/Missions/Apollo",
"is_local": false,
"key": "F9",
"name": "Disable Apollo sites",
"script": "openspace.setPropertyValue('Scene.Moon.Renderable.Layers.ColorLayers.A17_*.Enabled', false); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_11.Enabled', false); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A11_M177481212_p_longlat.Enabled', false); openspace.setPropertyValueSingle('Scene.Apollo11MoonTrail.Renderable.Enabled', false); openspace.setPropertyValueSingle('Scene.Apollo11LemTrail.Renderable.Enabled', false); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_17.Enabled', false);"
"action": "profile.moon.disableapollosites",
"key": "F9"
},
{
"documentation": "Setup for Apollo 11 landing site",
"gui_path": "/Missions/Apollo/11",
"is_local": false,
"key": "F11",
"name": "Setup A11 site",
"script": "openspace.time.setTime('1969 JUL 20 20:17:40'); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_11.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A11_M177481212_p_longlat.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.TargetLodScaleFactor', 20.11); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Apollo11LemPosition'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil); openspace.setPropertyValueSingle('Scene.Apollo11MoonTrail.Renderable.Enabled', true); openspace.setPropertyValueSingle('Scene.Apollo11LemTrail.Renderable.Enabled', true);"
"action": "profile.setup.apollo11",
"key": "F11"
},
{
"documentation": "Setup for Apollo 17 landing site",
"gui_path": "/Missions/Apollo/17",
"is_local": false,
"key": "F7",
"name": "Setup A17 site",
"script": "openspace.time.setTime('1972 DEC 12 19:47:11'); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_travmap.BlendMode', 0.000000); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_travmap.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.HeightLayers.LRO_NAC_Apollo_17.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_LEM.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_LEM.BlendMode', 0.000000); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_NAC_Alt_p.Enabled', true); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_NAC_Alt_p.BlendMode', 0.000000); openspace.setPropertyValueSingle('Scene.Moon.Renderable.TargetLodScaleFactor', 20.17); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Apollo17LemModel'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil); openspace.setPropertyValueSingle('Scene.Moon.Renderable.Layers.ColorLayers.A17_station7.BlendMode', 0.000000);"
"action": "profile.setup.apollo17",
"key": "F7"
}
],
"mark_nodes": [
@@ -145,6 +183,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
+33 -19
View File
@@ -1,4 +1,30 @@
{
"actions": [
{
"documentation": "Toggle trails on or off for satellites around Earth",
"gui_path": "/Earth",
"identifier": "profile.toggle.satellite",
"is_local": false,
"name": "Toggle satellite trails",
"script": "local list = openspace.getProperty('{earth_satellites}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Refocuses the camera on the ISS",
"gui_path": "/Earth",
"identifier": "profile.focus.iss",
"is_local": false,
"name": "Focus ISS",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'ISS');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Retargets the camera on Earth",
"gui_path": "/Earth",
"identifier": "profile.focus.earth",
"is_local": false,
"name": "Focus on Earth",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Earth')openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
}
],
"assets": [
"base",
"scene/solarsystem/planets/earth/earth",
@@ -35,28 +61,16 @@
],
"keybindings": [
{
"documentation": "Toggle trails on or off for satellites around Earth",
"gui_path": "/Earth",
"is_local": false,
"key": "S",
"name": "Toggle satellite trails",
"script": "local list = openspace.getProperty('{earth_satellites}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.satellite",
"key": "S"
},
{
"documentation": "Refocuses the camera on the ISS",
"gui_path": "/Earth",
"is_local": false,
"key": "I",
"name": "Focus ISS",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'ISS');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.iss",
"key": "I"
},
{
"documentation": "Retargets the camera on Earth",
"gui_path": "/Earth",
"is_local": false,
"key": "HOME",
"name": "Focus on Earth",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Earth')openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.earth",
"key": "HOME"
}
],
"mark_nodes": [
@@ -88,6 +102,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
+43 -25
View File
@@ -1,4 +1,38 @@
{
"actions": [
{
"documentation": "Toggle trails on or off for satellites around Earth",
"gui_path": "/Earth",
"identifier": "profile.toggle.satellite",
"is_local": false,
"name": "Toggle satellite trails",
"script": "local list = openspace.getProperty('{earth_satellites}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Refocuses the camera on the ISS",
"gui_path": "/Earth",
"identifier": "profile.focus.iss",
"is_local": false,
"name": "Focus ISS",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'ISS');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Retargets the camera on Earth",
"gui_path": "/Earth",
"identifier": "profile.focus.earth",
"is_local": false,
"name": "Focus on Earth",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Earth')openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Toggle on/off minor moon trails for all planets in the solar system",
"gui_path": "/Solar System",
"identifier": "profile.toggle.minormoons",
"is_local": false,
"name": "Toggle Minor Moon Trails",
"script": "local list = openspace.getProperty('{moonTrail_minor}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
}
],
"assets": [
"base",
"scene/solarsystem/planets/earth/earth",
@@ -43,36 +77,20 @@
],
"keybindings": [
{
"documentation": "Toggle trails on or off for satellites around Earth",
"gui_path": "/Earth",
"is_local": false,
"key": "S",
"name": "Toggle satellite trails",
"script": "local list = openspace.getProperty('{earth_satellites}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.satellite",
"key": "S"
},
{
"documentation": "Refocuses the camera on the ISS",
"gui_path": "/Earth",
"is_local": false,
"key": "I",
"name": "Focus ISS",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'ISS');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.iss",
"key": "I"
},
{
"documentation": "Retargets the camera on Earth",
"gui_path": "/Earth",
"is_local": false,
"key": "HOME",
"name": "Focus on Earth",
"script": "openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.Anchor', 'Earth')openspace.setPropertyValueSingle('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.earth",
"key": "HOME"
},
{
"documentation": "Toggle on/off minor moon trails for all planets in the solar system",
"gui_path": "/Solar System",
"is_local": false,
"key": "SHIFT+H",
"name": "Toggle Minor Moon Trails",
"script": "local list = openspace.getProperty('{moonTrail_minor}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.minormoons",
"key": "SHIFT+H"
}
],
"mark_nodes": [
@@ -110,6 +128,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
+54 -32
View File
@@ -1,4 +1,46 @@
{
"actions": [
{
"documentation": "Toggle trails on or off for satellites around Earth",
"gui_path": "/Earth",
"identifier": "profile.toggle.satellitetrails",
"is_local": false,
"name": "Toggle satellite trails",
"script": "local list = openspace.getProperty('{earth_satellites}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Toggle points and labels for the Lagrangian points for Earth Sun system",
"gui_path": "/JWST",
"identifier": "profile.toggle.lagrangianpoints",
"is_local": false,
"name": "Toggle Lagrangian points",
"script": "local list = openspace.getProperty('{lagrange_points_earth}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Toggle Hubble Ultra Deep Field image and line towards its coordinate",
"gui_path": "/JWST",
"identifier": "profile.toggle.hudf",
"is_local": false,
"name": "Toggle Hubble Ultra Deep Field",
"script": "local list = openspace.getProperty('{mission_jwst_hudf}.*.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Toggle L2 label, point and line",
"gui_path": "/JWST",
"identifier": "profile.toggle.l2",
"is_local": false,
"name": "Toggle L2",
"script": "local list = openspace.getProperty('{lagrange_points_earth_l2_small}.*.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Toggle James Webb Space Telecope field of view and view band",
"gui_path": "/JWST",
"identifier": "profile.toggle.jwst_fov",
"is_local": false,
"name": "Toggle JWST field of view and view band",
"script": "local list = openspace.getProperty('{mission_jwst_fov}.*.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
}
],
"assets": [
"base",
"scene/solarsystem/planets/earth/earth",
@@ -38,44 +80,24 @@
],
"keybindings": [
{
"documentation": "Toggle trails on or off for satellites around Earth",
"gui_path": "/Earth",
"is_local": false,
"key": "S",
"name": "Toggle satellite trails",
"script": "local list = openspace.getProperty('{earth_satellites}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.satellitetrails",
"key": "S"
},
{
"documentation": "Toggle points and labels for the Lagrangian points for Earth Sun system",
"gui_path": "/JWST",
"is_local": false,
"key": "P",
"name": "Toggle Lagrangian points",
"script": "local list = openspace.getProperty('{lagrange_points_earth}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.lagrangianpoints",
"key": "P"
},
{
"documentation": "Toggle Hubble Ultra Deep Field image and line towards its coordinate",
"gui_path": "/JWST",
"is_local": false,
"key": "U",
"name": "Toggle Hubble Ultra Deep Field",
"script": "local list = openspace.getProperty('{mission_jwst_hudf}.*.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.hudf",
"key": "U"
},
{
"documentation": "Toggle L2 label, point and line",
"gui_path": "/JWST",
"is_local": false,
"key": "O",
"name": "Toggle L2",
"script": "local list = openspace.getProperty('{lagrange_points_earth_l2_small}.*.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.l2",
"key": "O"
},
{
"documentation": "Toggle James Webb Space Telecope field of view and view band",
"gui_path": "/JWST",
"is_local": false,
"key": "V",
"name": "Toggle JWST field of view and view band",
"script": "local list = openspace.getProperty('{mission_jwst_fov}.*.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.jwst_fov",
"key": "V"
}
],
"mark_nodes": [
@@ -107,6 +129,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
}
+33 -19
View File
@@ -1,4 +1,30 @@
{
"actions": [
{
"documentation": "Set and goto Insight Landing",
"gui_path": "/Missions/Insight",
"identifier": "profile.setup.insight",
"is_local": false,
"name": "Setup scene for insight EDL",
"script": "openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.Mola_Utah.Settings.Offset', -469.300000);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Settings.Offset', -470.800006);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Enabled', true);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.ColorLayers.HiRISE-LS.Enabled', true);openspace.time.setPause(true);openspace.time.setTime('2018 NOV 26 19:39:01.68');openspace.navigation.setNavigationState({Anchor = 'Insight',Pitch = 0.567457E-4,Position = { 1.240506E1,-1.369270E1,-2.423553E0 },ReferenceFrame = 'Root',Up = { 0.441211E0,0.247019E0,0.862737E0 },Yaw = -0.446853E-4});"
},
{
"documentation": "Disable Mars layer settings used for insight EDL",
"gui_path": "/Missions/Insight",
"identifier": "profile.unsetup.insight",
"is_local": false,
"name": "Unset Insight Landing",
"script": "openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.Mola_Utah.Settings.Offset', 0);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Settings.Offset', 0);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Enabled', false);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.ColorLayers.HiRISE-LS.Enabled', false);"
},
{
"documentation": "Sets time and layers for Perseverance landing",
"gui_path": "/Missions/Perseverance",
"identifier": "profile.setup.perseverance",
"is_local": false,
"name": "Setup and Goto Perseverance",
"script": "openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.Mola_Utah.Settings.Offset', -1674.0);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Settings.Offset', -1674.0);openspace.time.setPause(true);openspace.time.setTime('2021 FEB 18 20:32:16');openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Enabled', true);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.ColorLayers.HiRISE-LS.Enabled', true);openspace.navigation.setNavigationState({Anchor = 'Perseverance',Pitch = 0.567457E-4,Position = { 1.240506E1,-1.369270E1,-2.423553E0 },ReferenceFrame = 'Root',Up = { 0.441211E0,0.247019E0,0.862737E0 },Yaw = -0.446853E-4});"
}
],
"assets": [
"base",
"scene/solarsystem/missions/insight/edl",
@@ -34,28 +60,16 @@
],
"keybindings": [
{
"documentation": "Set and goto Insight Landing",
"gui_path": "/Missions/Insight",
"is_local": false,
"key": "I",
"name": "Setup scene for insight EDL",
"script": "openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.Mola_Utah.Settings.Offset', -469.300000);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Settings.Offset', -470.800006);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Enabled', true);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.ColorLayers.HiRISE-LS.Enabled', true);openspace.time.setPause(true);openspace.time.setTime('2018 NOV 26 19:39:01.68');openspace.navigation.setNavigationState({Anchor = 'Insight',Pitch = 0.567457E-4,Position = { 1.240506E1,-1.369270E1,-2.423553E0 },ReferenceFrame = 'Root',Up = { 0.441211E0,0.247019E0,0.862737E0 },Yaw = -0.446853E-4});"
"action": "profile.setup.insight",
"key": "I"
},
{
"documentation": "Disable Mars layer settings used for insight EDL",
"gui_path": "/Missions/Insight",
"is_local": false,
"key": "SHIFT+I",
"name": "Unset Insight Landing",
"script": "openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.Mola_Utah.Settings.Offset', 0);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Settings.Offset', 0);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Enabled', false);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.ColorLayers.HiRISE-LS.Enabled', false);"
"action": "profile.unsetup.insight",
"key": "SHIFT+I"
},
{
"documentation": "Sets time and layers for Perseverance landing",
"gui_path": "/Missions/Perseverance",
"is_local": false,
"key": "P",
"name": "Setup and Goto Perseverance",
"script": "openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.Mola_Utah.Settings.Offset', -1674.0);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Settings.Offset', -1674.0);openspace.time.setPause(true);openspace.time.setTime('2021 FEB 18 20:32:16');openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.HeightLayers.HiRISE-LS-DEM.Enabled', true);openspace.setPropertyValueSingle('Scene.Mars.Renderable.Layers.ColorLayers.HiRISE-LS.Enabled', true);openspace.navigation.setNavigationState({Anchor = 'Perseverance',Pitch = 0.567457E-4,Position = { 1.240506E1,-1.369270E1,-2.423553E0 },ReferenceFrame = 'Root',Up = { 0.441211E0,0.247019E0,0.862737E0 },Yaw = -0.446853E-4});"
"action": "profile.setup.perseverance",
"key": "P"
}
],
"mark_nodes": [
@@ -77,6 +91,6 @@
},
"version": {
"major": 1,
"minor": 2
"minor": 1
}
}
+172 -130
View File
@@ -1,4 +1,134 @@
{
"actions": [
{
"documentation": "Sets the focus of the camera on 'NewHorizons'.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.focus.newhorizons",
"is_local": false,
"name": "Focus on New Horizons",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'NewHorizons');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Anchor at New Horizons, Aim at Pluto",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.focus.anchor_nh|aim_pluto",
"is_local": false,
"name": "Anchor NH, Aim Pluto",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'NewHorizons');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', 'Pluto');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil)"
},
{
"documentation": "Sets the focus of the camera on 'Pluto'",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.focus.pluto",
"is_local": false,
"name": "Focus on Pluto",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'PlutoProjection') ;openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Sets the focus of the camera on 'Charon'.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.focus.charon",
"is_local": false,
"name": "Focus on Charon",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Charon');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Toggles New Horizons image projection",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.toggle_nh_image_projections",
"is_local": false,
"name": "Toggle NH Image Projection",
"script": "local enabled = openspace.getPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.PerformProjection'); openspace.setPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.PerformProjection', not enabled); openspace.setPropertyValue('Scene.CharonProjection.Renderable.ProjectionComponent.PerformProjection', not enabled);"
},
{
"documentation": "Removes all image projections from Pluto and Charon.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.clear_image_projections",
"is_local": false,
"name": "Clear image projections",
"script": "openspace.setPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.ClearAllProjections', true); openspace.setPropertyValue('Scene.CharonProjection.Renderable.ProjectionComponent.ClearAllProjections', true);"
},
{
"documentation": "Jumps to the 14th of July 2015 at 0900 UTC and clears all projections.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.setup.approach",
"is_local": false,
"name": "Reset time and projections",
"script": "openspace.time.setTime('2015-07-14T09:00:00.00');openspace.setPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.ClearAllProjections', true);openspace.setPropertyValue('Scene.CharonProjection.Renderable.ProjectionComponent.ClearAllProjections', true);"
},
{
"documentation": "Increases the height map exaggeration on Pluto.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.pluto.increase_height_exaggeration",
"is_local": false,
"name": "Pluto HeightExaggeration +",
"script": "openspace.setPropertyValueSingle(\"Scene.PlutoProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.PlutoProjection.Renderable.HeightExaggeration\") + 5000);"
},
{
"documentation": "Decreases the height map exaggeration on Pluto.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.pluto.decrease_height_exaggeration",
"is_local": false,
"name": "Pluto HeightExaggeration -",
"script": "openspace.setPropertyValueSingle(\"Scene.PlutoProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.PlutoProjection.Renderable.HeightExaggeration\") - 5000);"
},
{
"documentation": "Increases the height map exaggeration on Charon.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.charon.increase_height_exaggeration",
"is_local": false,
"name": "Charon HeightExaggeration +",
"script": "openspace.setPropertyValueSingle(\"Scene.CharonProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.CharonProjection.Renderable.HeightExaggeration\") + 5000);"
},
{
"documentation": "Decreases the height map exaggeration on Charon.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.charon.decrease_height_exaggeration",
"is_local": false,
"name": "Charon HeightExaggeration -",
"script": "openspace.setPropertyValueSingle(\"Scene.CharonProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.CharonProjection.Renderable.HeightExaggeration\") - 5000);"
},
{
"documentation": "Toggles the visibility of the trail behind Pluto.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.toggle.pluto_trail",
"is_local": false,
"name": "Toggle Pluto Trail",
"script": "openspace.setPropertyValueSingle('Scene.PlutoBarycentricTrail.Renderable.Enabled', not openspace.getPropertyValue('Scene.PlutoBarycentricTrail.Renderable.Enabled'));"
},
{
"documentation": "Toggles the visibility of the text labels of Pluto, Charon, Hydra, Nix, Kerberos, and Styx.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.toggle.pluto_labels",
"is_local": false,
"name": "Toggle Pluto Labels",
"script": "local list = {\"Scene.PlutoText.Renderable.Enabled\", \"Scene.CharonText.Renderable.Enabled\", \"Scene.HydraText.Renderable.Enabled\", \"Scene.NixText.Renderable.Enabled\", \"Scene.KerberosText.Renderable.Enabled\", \"Scene.StyxText.Renderable.Enabled\"}; for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Toggles the visibility of the labels for the New Horizons instruments.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.toggle_nh_labels",
"is_local": false,
"name": "Toggle New Horizons Labels",
"script": "local v = openspace.getPropertyValue(\"Scene.Labels.Renderable.Opacity\"); if v <= 0.5 then openspace.setPropertyValueSingle(\"Scene.Labels.Renderable.Opacity\",1.0,2.0) else openspace.setPropertyValueSingle(\"Scene.Labels.Renderable.Opacity\",0.0,2.0) end"
},
{
"documentation": "Toggles the visibility of the shadow visualization of Pluto and Charon.",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.toggle_shadows",
"is_local": false,
"name": "Toggle Shadows",
"script": "openspace.setPropertyValueSingle('Scene.PlutoShadow.Renderable.Enabled', not openspace.getPropertyValue('Scene.PlutoShadow.Renderable.Enabled'));openspace.setPropertyValueSingle('Scene.CharonShadow.Renderable.Enabled', not openspace.getPropertyValue('Scene.CharonShadow.Renderable.Enabled'));"
},
{
"documentation": "Toggles the trail of New Horizons",
"gui_path": "/Missions/New Horizons",
"identifier": "profile.toggle.nh_trail",
"is_local": false,
"name": "Toggle NH Trail",
"script": "openspace.setPropertyValueSingle('Scene.NewHorizonsTrailPluto.Renderable.Enabled', not openspace.getPropertyValue('Scene.NewHorizonsTrailPluto.Renderable.Enabled'));"
}
],
"assets": [
"base",
"scene/solarsystem/missions/newhorizons/dashboard",
@@ -37,172 +167,84 @@
],
"keybindings": [
{
"documentation": "Sets the focus of the camera on 'NewHorizons'.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "A",
"name": "Focus on New Horizons",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'NewHorizons');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.newhorizons",
"key": "A"
},
{
"documentation": "Anchor at New Horizons, Aim at Pluto",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "SHIFT+A",
"name": "Anchor NH, Aim Pluto",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'NewHorizons');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', 'Pluto');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil)"
"action": "profile.focus.anchor_nh|aim_pluto",
"key": "SHIFT+A"
},
{
"documentation": "Sets the focus of the camera on 'Pluto'",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "S",
"name": "Focus on Pluto",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'PlutoProjection') ;openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.pluto",
"key": "S"
},
{
"documentation": "Sets the focus of the camera on 'Charon'.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "D",
"name": "Focus on Charon",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Charon');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', '');openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.charon",
"key": "D"
},
{
"documentation": "Toggles New Horizons image projection",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "F7",
"name": "Toggle NH Image Projection",
"script": "local enabled = openspace.getPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.PerformProjection'); openspace.setPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.PerformProjection', not enabled); openspace.setPropertyValue('Scene.CharonProjection.Renderable.ProjectionComponent.PerformProjection', not enabled);"
"action": "profile.toggle_nh_image_projections",
"key": "F7"
},
{
"documentation": "Removes all image projections from Pluto and Charon.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "F8",
"name": "Clear image projections",
"script": "openspace.setPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.ClearAllProjections', true); openspace.setPropertyValue('Scene.CharonProjection.Renderable.ProjectionComponent.ClearAllProjections', true);"
"action": "profile.clear_image_projections",
"key": "F8"
},
{
"documentation": "Jumps to the 14th of July 2015 at 0900 UTC and clears all projections.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "F9",
"name": "Reset time and projections",
"script": "openspace.time.setTime('2015-07-14T09:00:00.00');openspace.setPropertyValue('Scene.PlutoProjection.Renderable.ProjectionComponent.ClearAllProjections', true);openspace.setPropertyValue('Scene.CharonProjection.Renderable.ProjectionComponent.ClearAllProjections', true);"
"action": "profile.setup.approach",
"key": "F9"
},
{
"documentation": "Increases the height map exaggeration on Pluto.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "KP8",
"name": "Pluto HeightExaggeration + (KP)",
"script": "openspace.setPropertyValueSingle(\"Scene.PlutoProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.PlutoProjection.Renderable.HeightExaggeration\") + 5000);"
"action": "profile.pluto.increase_height_exaggeration",
"key": "KP_8"
},
{
"documentation": "Increases the height map exaggeration on Pluto.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "CTRL+I",
"name": "Pluto HeightExaggeration +",
"script": "openspace.setPropertyValueSingle(\"Scene.PlutoProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.PlutoProjection.Renderable.HeightExaggeration\") + 5000);"
"action": "profile.pluto.increase_height_exaggeration",
"key": "CTRL+I"
},
{
"documentation": "Decreases the height map exaggeration on Pluto.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "CTRL+K",
"name": "Pluto HeightExaggeration -",
"script": "openspace.setPropertyValueSingle(\"Scene.PlutoProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.PlutoProjection.Renderable.HeightExaggeration\") - 5000);"
"action": "profile.pluto.decrease_height_exaggeration",
"key": "CTRL+K"
},
{
"documentation": "Decreases the height map exaggeration on Pluto.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "KP2",
"name": "Pluto HeightExaggeration - (KP)",
"script": "openspace.setPropertyValueSingle(\"Scene.PlutoProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.PlutoProjection.Renderable.HeightExaggeration\") - 5000);"
"action": "profile.pluto.decrease_height_exaggeration",
"key": "KP_2"
},
{
"documentation": "Increases the height map exaggeration on Charon.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "KP9",
"name": "Charon HeightExaggeration + (KP)",
"script": "openspace.setPropertyValueSingle(\"Scene.CharonProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.CharonProjection.Renderable.HeightExaggeration\") + 5000);"
"action": "profile.charon.increase_height_exaggeration",
"key": "KP_9"
},
{
"documentation": "Increases the height map exaggeration on Charon.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "CTRL+O",
"name": "Charon HeightExaggeration +",
"script": "openspace.setPropertyValueSingle(\"Scene.CharonProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.CharonProjection.Renderable.HeightExaggeration\") + 5000);"
"action": "profile.charon.increase_height_exaggeration",
"key": "CTRL+O"
},
{
"documentation": "Decreases the height map exaggeration on Charon.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "KP3",
"name": "Charon HeightExaggeration - (KP)",
"script": "openspace.setPropertyValueSingle(\"Scene.CharonProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.CharonProjection.Renderable.HeightExaggeration\") - 5000);"
"action": "profile.charon.decrease_height_exaggeration",
"key": "KP_3"
},
{
"documentation": "Decreases the height map exaggeration on Charon.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "CTRL+L",
"name": "Charon HeightExaggeration -",
"script": "openspace.setPropertyValueSingle(\"Scene.CharonProjection.Renderable.HeightExaggeration\", openspace.getPropertyValue(\"Scene.CharonProjection.Renderable.HeightExaggeration\") - 5000);"
"action": "profile.charon.decrease_height_exaggeration",
"key": "CTRL+L"
},
{
"documentation": "Toggles the visibility of the trail behind Pluto.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "O",
"name": "Toggle Pluto Trail",
"script": "openspace.setPropertyValueSingle('Scene.PlutoBarycentricTrail.Renderable.Enabled', not openspace.getPropertyValue('Scene.PlutoBarycentricTrail.Renderable.Enabled'));"
"action": "profile.toggle.pluto_trail",
"key": "O"
},
{
"documentation": "Toggles the visibility of the text labels of Pluto, Charon, Hydra, Nix, Kerberos, and Styx.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "J",
"name": "Toggle Pluto Labels",
"script": "local list = {\"Scene.PlutoText.Enabled\", \"Scene.CharonText.Enabled\", \"Scene.HydraText.Enabled\", \"Scene.NixText.Enabled\", \"Scene.KerberosText.Enabled\", \"Scene.StyxText.Enabled\"}; for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.pluto_labels",
"key": "J"
},
{
"documentation": "Toggles the visibility of the labels for the New Horizons instruments.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "I",
"name": "Toggle New Horizons Labels",
"script": "local v = openspace.getPropertyValue(\"Scene.Labels.Renderable.Opacity\"); if v <= 0.5 then openspace.setPropertyValueSingle(\"Scene.Labels.Renderable.Opacity\",1.0,2.0) else openspace.setPropertyValueSingle(\"Scene.Labels.Renderable.Opacity\",0.0,2.0) end"
"action": "profile.toggle_nh_labels",
"key": "I"
},
{
"documentation": "Draws the instrument field of views in a solid color or as lines.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "M",
"name": "Toggle instrument FOVs",
"script": "local list = {\"Scene.PlutoText.Enabled\", \"Scene.NH_LORRI.Renderable.SolidDraw\", \"Scene.NH_RALPH_LEISA.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_PAN1.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_PAN2.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_RED.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_BLUE.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_FT.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_METHANE.Renderable.SolidDraw\", \"Scene.NH_RALPH_MVIC_NIR.Renderable.SolidDraw\", \"Scene.NH_ALICE_AIRGLOW.Renderable.SolidDraw\", \"Scene.NH_ALICE_SOC.Renderable.SolidDraw\"}; for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle_shadows",
"key": "SHIFT+T"
},
{
"documentation": "Toggles the visibility of the shadow visualization of Pluto and Charon.",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "SHIFT+T",
"name": "Toggle Shadows",
"script": "openspace.setPropertyValueSingle('Scene.PlutoShadow.Renderable.Enabled', not openspace.getPropertyValue('Scene.PlutoShadow.Renderable.Enabled'));openspace.setPropertyValueSingle('Scene.CharonShadow.Renderable.Enabled', not openspace.getPropertyValue('Scene.CharonShadow.Renderable.Enabled'));"
},
{
"documentation": "Toggles the trail of New Horizons",
"gui_path": "/Missions/New Horizons",
"is_local": false,
"key": "T",
"name": "Toggle NH Trail",
"script": "openspace.setPropertyValueSingle('Scene.NewHorizonsTrailPluto.Renderable.Enabled', not openspace.getPropertyValue('Scene.NewHorizonsTrailPluto.Renderable.Enabled'));"
"action": "profile.toggle.nh_trail",
"key": "T"
}
],
"mark_nodes": [
@@ -246,6 +288,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
}
+73 -43
View File
@@ -1,4 +1,62 @@
{
"actions": [
{
"documentation": "Sets the focus of the camera on 'OsirisRex'",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.focus.osirisrex",
"is_local": false,
"name": "Focus on OsirisRex",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'OsirisRex'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Sets the focus of the camera on 'Bennu'",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.focus.bennu",
"is_local": false,
"name": "Focus on Bennu",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'BennuBarycenter'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Sets the time to the approach at Bennu",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.setup.bennu_approach",
"is_local": false,
"name": "Set Bennu approach time",
"script": "openspace.printInfo('Set time: Approach');openspace.time.setTime('2018-SEP-11 21:31:01.183');"
},
{
"documentation": "Sets the time to the preliminary survey of Bennu",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.setup.bennu_survey",
"is_local": false,
"name": "Set Bennu survey time",
"script": "openspace.printInfo('Set time: Preliminary Survey'); openspace.time.setTime('2018-NOV-20 01:13:12.183');"
},
{
"documentation": "Sets the time to the orbital B event",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.setup.orbital_b_event",
"is_local": false,
"name": "Set orbital B event time",
"script": "openspace.printInfo('Set time: Orbital B'); openspace.time.setTime('2019-APR-08 10:35:27.186');"
},
{
"documentation": "Sets the time to the recon event",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.setup.recon_event",
"is_local": false,
"name": "Set recon event time",
"script": "openspace.printInfo('Set time: Recon'); openspace.time.setTime('2019-MAY-25 03:50:31.195');"
},
{
"documentation": "Toggles the visibility of the text marking the location of the Sun",
"gui_path": "/Missions/Osiris Rex",
"identifier": "profile.toggle.sun_marker",
"is_local": false,
"name": "Toggle Sun marker",
"script": "openspace.setPropertyValueSingle('Scene.SunMarker.Renderable.Enabled', not openspace.getPropertyValue('Scene.SunMarker.Renderable.Enabled'));"
}
],
"assets": [
"base",
"scene/solarsystem/missions/osirisrex/dashboard",
@@ -41,60 +99,32 @@
],
"keybindings": [
{
"documentation": "Sets the focus of the camera on 'OsirisRex'",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "A",
"name": "Focus on OsirisRex",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'OsirisRex'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.osirisrex",
"key": "A"
},
{
"documentation": "Sets the focus of the camera on 'Bennu'",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "S",
"name": "Focus on Bennu",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'BennuBarycenter'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.bennu",
"key": "S"
},
{
"documentation": "Sets the time to the approach at Bennu",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "F8",
"name": "Set Bennu approach time",
"script": "openspace.printInfo('Set time: Approach');openspace.time.setTime('2018-SEP-11 21:31:01.183');"
"action": "profile.setup.bennu_approach",
"key": "F8"
},
{
"documentation": "Sets the time to the preliminary survey of Bennu",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "F9",
"name": "Set Bennu survey time",
"script": "openspace.printInfo('Set time: Preliminary Survey'); openspace.time.setTime('2018-NOV-20 01:13:12.183');"
"action": "profile.setup.bennu_survey",
"key": "F9"
},
{
"documentation": "Sets the time to the orbital B event",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "F10",
"name": "Set orbital B event time",
"script": "openspace.printInfo('Set time: Orbital B'); openspace.time.setTime('2019-APR-08 10:35:27.186');"
"action": "profile.setup.orbital_b_event",
"key": "F10"
},
{
"documentation": "Sets the time to the recon event",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "F11",
"name": "Set recon event time",
"script": "openspace.printInfo('Set time: Recon'); openspace.time.setTime('2019-MAY-25 03:50:31.195');"
"action": "profile.setup.recon_event",
"key": "F11"
},
{
"documentation": "Toggles the visibility of the text marking the location of the Sun",
"gui_path": "/Missions/Osiris Rex",
"is_local": false,
"key": "Q",
"name": "Toggle Sun marker",
"script": "openspace.setPropertyValueSingle('Scene.SunMarker.Renderable.Enabled', not openspace.getPropertyValue('Scene.SunMarker.Renderable.Enabled'));"
"action": "profile.toggle.sun_marker",
"key": "Q"
}
],
"mark_nodes": [
@@ -123,6 +153,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
+83 -49
View File
@@ -1,4 +1,70 @@
{
"actions": [
{
"documentation": "Sets the focus of the camera on 67P",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.focus.67P",
"is_local": false,
"name": "Focus on 67P",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', '67P'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Sets the focus of the camera on Rosetta",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.focus.rosetta",
"is_local": false,
"name": "Focus on Rosetta",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Rosetta'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
},
{
"documentation": "Jumps to the time when the Philae lander is released.",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.setup.lander_release",
"is_local": false,
"name": "Set lander release time",
"script": "openspace.time.setTime('2014-11-12T08:20:00.00');"
},
{
"documentation": "Removes all image projections from 67P.",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.67p.clear_projections",
"is_local": false,
"name": "Clear 67P projections",
"script": "openspace.setPropertyValue('Scene.67P.Renderable.ProjectionComponent.ClearAllProjections', true);"
},
{
"documentation": "Toggles the visibility of all trails further from the Sun than 67P.",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.toggle.outerplanet_trails",
"is_local": false,
"name": "Toggle outer planetary trails",
"script": "local list = openspace.getProperty('{planetTrail_giants}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
},
{
"documentation": "Toggles the visibility of the free floating image plane.",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.toggle.image_plane",
"is_local": false,
"name": "Toggle image plane",
"script": "openspace.setPropertyValueSingle('Scene.ImagePlaneRosetta.Renderable.Enabled', not openspace.getPropertyValue('Scene.ImagePlaneRosetta.Renderable.Enabled'));"
},
{
"documentation": "Toggles the visibility of Philae's trail.",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.toggle.philae_trail",
"is_local": false,
"name": "Toggle Philae trail",
"script": "openspace.setPropertyValueSingle('Scene.PhilaeTrail.Renderable.Enabled', not openspace.getPropertyValue('Scene.PhilaeTrail.Renderable.Enabled'));"
},
{
"documentation": "Enables or disables the image projection on 67P.",
"gui_path": "/Missions/Rosetta",
"identifier": "profile.toggle.67p_projection",
"is_local": false,
"name": "Toggle 67P projection",
"script": "openspace.setPropertyValueSingle('Scene.67P.Renderable.ProjectionComponent.PerformProjection', not openspace.getPropertyValue('Scene.67P.Renderable.ProjectionComponent.PerformProjection'));"
}
],
"assets": [
"base",
"scene/solarsystem/missions/rosetta/67p",
@@ -45,68 +111,36 @@
],
"keybindings": [
{
"documentation": "Sets the focus of the camera on 67P",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "A",
"name": "Focus on 67P",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', '67P'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.67P",
"key": "A"
},
{
"documentation": "Sets the focus of the camera on Rosetta",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "S",
"name": "Focus on Rosetta",
"script": "openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Anchor', 'Rosetta'); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.Aim', ''); openspace.setPropertyValue('NavigationHandler.OrbitalNavigator.RetargetAnchor', nil);"
"action": "profile.focus.rosetta",
"key": "S"
},
{
"documentation": "Jumps to the time when the Philae lander is released.",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "F6",
"name": "Set lander release time",
"script": "openspace.time.setTime('2014-11-12T08:20:00.00');"
"action": "profile.setup.lander_release",
"key": "F6"
},
{
"documentation": "Removes all image projections from 67P.",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "F8",
"name": "Clear 67P projections",
"script": "openspace.setPropertyValue('Scene.67P.Renderable.ProjectionComponent.ClearAllProjections', true);"
"action": "profile.67p.clear_projections",
"key": "F8"
},
{
"documentation": "Toggles the visibility of all trails further from the Sun than 67P.",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "E",
"name": "Toggle outer planetary trails",
"script": "local list = openspace.getProperty('{planetTrail_giants}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.outerplanet_trails",
"key": "E"
},
{
"documentation": "Toggles the visibility of the free floating image plane.",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "I",
"name": "Toggle image plane",
"script": "openspace.setPropertyValueSingle('Scene.ImagePlaneRosetta.Renderable.Enabled', not openspace.getPropertyValue('Scene.ImagePlaneRosetta.Renderable.Enabled'));"
"action": "profile.toggle.image_plane",
"key": "I"
},
{
"documentation": "Toggles the visibility of Philae's trail.",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "O",
"name": "Toggle Philae trail",
"script": "openspace.setPropertyValueSingle('Scene.PhilaeTrail.Renderable.Enabled', not openspace.getPropertyValue('Scene.PhilaeTrail.Renderable.Enabled'));"
"action": "profile.toggle.philae_trail",
"key": "O"
},
{
"documentation": "Enables or disables the image projection on 67P.",
"gui_path": "/Missions/Rosetta",
"is_local": false,
"key": "P",
"name": "Toggle 67P projection",
"script": "openspace.setPropertyValueSingle('Scene.67P.Renderable.ProjectionComponent.PerformProjection', not openspace.getPropertyValue('Scene.67P.Renderable.ProjectionComponent.PerformProjection'));"
"action": "profile.toggle.67p_projection",
"key": "P"
}
],
"mark_nodes": [
@@ -140,6 +174,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}
+73 -43
View File
@@ -1,4 +1,62 @@
{
"actions": [
{
"documentation": "Set camera focus to Voyager 1",
"gui_path": "/Missions/Voyager",
"identifier": "profile.focus.voyager1",
"is_local": false,
"name": "Focus on Voyager",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Voyager_1');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '')"
},
{
"documentation": "Sets the camera focus on Voyager 2",
"gui_path": "/Missions/Voyager",
"identifier": "profile.focus.voyager2",
"is_local": false,
"name": "Focus on Voyager2",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Voyager_2');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '');"
},
{
"documentation": "Sets the time for Voyager's approach to Jupiter",
"gui_path": "/",
"identifier": "profile.setup.jupiter_approach",
"is_local": false,
"name": "Set Jupiter Approach",
"script": "openspace.time.setTime(\"1979-01-20T01:32:07.914\")"
},
{
"documentation": "Sets the time for Voyager's approach to Saturn",
"gui_path": "/Missions/Voyager",
"identifier": "profile.setup.saturn_approach",
"is_local": false,
"name": "Set Saturn Approach",
"script": "openspace.time.setTime(\"1980-10-20T07:43:42.645\");"
},
{
"documentation": "Set the camera focus to Jupiter",
"gui_path": "/Missions/Voyager",
"identifier": "profile.focus.jupiter",
"is_local": false,
"name": "Focus on Jupiter",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Jupiter');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '');"
},
{
"documentation": "Sets the camera focus on Saturn",
"gui_path": "/Missions/Voyager",
"identifier": "profile.focus.saturn",
"is_local": false,
"name": "Focus on Saturn",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Saturn');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '');"
},
{
"documentation": "Toggles the trails of the minor moons",
"gui_path": "/Solar System",
"identifier": "profile.toggle.minor_trails",
"is_local": false,
"name": "Toggle minor trails",
"script": "local list = openspace.getProperty('{moonTrail_minor}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
}
],
"assets": [
"base",
"scene/solarsystem/missions/voyager/dashboard",
@@ -37,60 +95,32 @@
],
"keybindings": [
{
"documentation": "Set camera focus to Voyager 1",
"gui_path": "/Missions/Voyager",
"is_local": false,
"key": "V",
"name": "Focvus on Voyager",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Voyager_1');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '')"
"action": "profile.focus.voyager1",
"key": "V"
},
{
"documentation": "Sets the camera focus on Voyager 2",
"gui_path": "/Missions/Voyager",
"is_local": false,
"key": "SHIFT+V",
"name": "Focus on Voyager2",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Voyager_2');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '');"
"action": "profile.focus.voyager2",
"key": "SHIFT+V"
},
{
"documentation": "Sets the time for Voyager's approach to Jupiter",
"gui_path": "/",
"is_local": false,
"key": "SHIFT+J",
"name": "Set Jupiter Approach",
"script": "openspace.time.setTime(\"1979-01-20T01:32:07.914\")"
"action": "profile.setup.jupiter_approach",
"key": "SHIFT+J"
},
{
"documentation": "Sets the time for Voyager's approach to Saturn",
"gui_path": "/Missions/Voyager",
"is_local": false,
"key": "SHIFT+S",
"name": "Set Saturn Approach",
"script": "openspace.time.setTime(\"1980-10-20T07:43:42.645\");"
"action": "profile.setup.saturn_approach",
"key": "SHIFT+S"
},
{
"documentation": "Set the camera focus to Jupiter",
"gui_path": "/Missions/Voyager",
"is_local": false,
"key": "J",
"name": "Focus on Jupiter",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Jupiter');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '');"
"action": "profile.focus.jupiter",
"key": "J"
},
{
"documentation": "Sets the camera focus on Saturn",
"gui_path": "/Missions/Voyager",
"is_local": false,
"key": "S",
"name": "Focus on Saturn",
"script": "openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.RetargetAnchor\", nil);openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Anchor\", 'Saturn');openspace.setPropertyValueSingle(\"NavigationHandler.OrbitalNavigator.Aim\", '');"
"action": "profile.focus.saturn",
"key": "S"
},
{
"documentation": "Toggles the trails of the minor moons",
"gui_path": "/Solar System",
"is_local": false,
"key": "SHIFT+H",
"name": "Toggle minor trails",
"script": "local list = openspace.getProperty('{moonTrail_minor}.Renderable.Enabled'); for _,v in pairs(list) do openspace.setPropertyValueSingle(v, not openspace.getPropertyValue(v)) end"
"action": "profile.toggle.minor_trails",
"key": "SHIFT+H"
}
],
"mark_nodes": [
@@ -123,6 +153,6 @@
},
"version": {
"major": 1,
"minor": 0
"minor": 1
}
}