Add 3I/ATLAS trail. Change GUI naming and coloring for 1I/'Oumuamua and 2I/Borisov. Add labels for 1I and 2I

This commit is contained in:
Alexander Bock
2025-07-11 11:16:20 +02:00
parent 4306387f69
commit 863f658f3e
3 changed files with 170 additions and 10 deletions
@@ -0,0 +1,104 @@
local sunTransforms = asset.require("scene/solarsystem/sun/transforms")
local trajectory = asset.resource({
Name = "3I/ATLAS Trajectory",
Type = "HttpSynchronization",
Identifier = "atlas_horizons",
Version = 1
})
local AtlasTrail = {
Identifier = "3I_AtlasTrail",
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
Renderable = {
Type = "RenderableTrailTrajectory",
Translation = {
Type = "HorizonsTranslation",
HorizonsTextFile = trajectory .. "i3_atlas.hrz"
},
Color = { 0.85, 0.85, 0.0 },
StartTime = "2020 JUL 01 00:00:00",
EndTime = "2030 JUL 01 00:00:00",
SampleInterval = openspace.time.secondsPerDay() / 2
},
GUI = {
Name = "3I/ATLAS Trail",
Path = "/Solar System/Interstellar/ATLAS",
Focusable = false,
Description = [[Trail of 3I/ATLAS from 2020 JUL 01 00:00:00 to 2030 JUL 01 00:00:00.
Data from JPL Horizons.]]
}
}
local AtlasPosition = {
Identifier = "3I_AtlasPosition",
Parent = sunTransforms.SolarSystemBarycenter.Identifier,
Transform = {
Translation = {
Type = "HorizonsTranslation",
HorizonsTextFile = trajectory .. "i3_atlas.hrz"
}
},
GUI = {
Name = "3I/ATLAS",
Path = "/Solar System/Interstellar/ATLAS",
Description = [[Position of 3I/ATLAS from 2020 JUL 01 00:00:00 to 2030 JUL 01
00:00:00. Data from JPL Horizons.]]
}
}
local AtlasLabel = {
Identifier = "3I_AtlasLabel",
Parent = AtlasPosition.Identifier,
Renderable = {
Type = "RenderableLabel",
Enabled = false,
Text = "3I/ATLAS",
FontSize = 70.0,
Size = 8.50,
MinMaxSize = { 1, 50 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 50.0 },
FadeWidths = { 1.0, 40.0 }
},
Tag = { "solarsystem_labels" },
GUI = {
Name = "3I/ATLAS Label",
Path = "/Solar System/Interstellar/ATLAS",
Focusable = false
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(AtlasPosition)
openspace.addSceneGraphNode(AtlasTrail)
openspace.addSceneGraphNode(AtlasLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(AtlasLabel)
openspace.removeSceneGraphNode(AtlasTrail)
openspace.removeSceneGraphNode(AtlasPosition)
end)
asset.export(AtlasPosition)
asset.export(AtlasTrail)
asset.export(AtlasLabel)
asset.meta = {
Name = "3I/ATLAS",
Description = [[This asset contains the trail and position of 3I/ATLAS from 2020
JUL 01 00:00:00 to 2030 JUL 01 00:00:00. Data from JPL Horizons.]],
Author = "OpenSpace Team",
URL = "https://ssd.jpl.nasa.gov/horizons.cgi",
License = "NASA"
}
@@ -24,14 +24,14 @@ local C2019Q4BorisovTrail = {
-- End time: 2050-Jan-01 00:00:00 (last data point)
-- Step size: 1 day
},
Color = { 0.9, 0.9, 0.0 },
Color = { 0.15, 0.9, 0.15 },
StartTime = "2015 JAN 01 00:00:00",
EndTime = "2050 JAN 01 00:00:00",
SampleInterval = openspace.time.secondsPerDay()
},
GUI = {
Name = "C/2019 Q4 Borisov Trail",
Path = "/Solar System/Interstellar",
Name = "2I/Borisov Trail",
Path = "/Solar System/Interstellar/Borisov",
Focusable = false,
Description = [[Trail of C-2019 Q4 Borisov from 2015 JAN 01 00:00:00
to 2050 JAN 01 00:00:00. Data from JPL Horizons]]
@@ -48,26 +48,54 @@ local C2019Q4BorisovPosition = {
}
},
GUI = {
Name = "C/2019 Q4 Borisov",
Path = "/Solar System/Interstellar",
Name = "2I/Borisov",
Path = "/Solar System/Interstellar/Borisov",
Description = [[Position of C-2019 Q4 Borisov from 2015 JAN 01 00:00:00
to 2050 JAN 01 00:00:00. Data from JPL Horizons]]
}
}
local C2019Q4BorisovLabel = {
Identifier = "C2019Q4BorisovLabel",
Parent = C2019Q4BorisovPosition.Identifier,
Renderable = {
Type = "RenderableLabel",
Enabled = false,
Text = "2I/Borisov",
FontSize = 70.0,
Size = 8.50,
MinMaxSize = { 1, 50 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 50.0 },
FadeWidths = { 1.0, 40.0 }
},
Tag = { "solarsystem_labels" },
GUI = {
Name = "2I/Borisov Label",
Path = "/Solar System/Interstellar/Borisov",
Focusable = false
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(C2019Q4BorisovPosition)
openspace.addSceneGraphNode(C2019Q4BorisovTrail)
openspace.addSceneGraphNode(C2019Q4BorisovLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(C2019Q4BorisovLabel)
openspace.removeSceneGraphNode(C2019Q4BorisovTrail)
openspace.removeSceneGraphNode(C2019Q4BorisovPosition)
end)
asset.export(C2019Q4BorisovPosition)
asset.export(C2019Q4BorisovTrail)
asset.export(C2019Q4BorisovLabel)
@@ -24,14 +24,14 @@ local OumuamuaTrail = {
-- End time: 2050-Jan-01 00:00:00 (last data point)
-- Step size: 1 day
},
Color = { 0.9, 0.9, 0.0 },
Color = { 0.85, 0.1, 0.85 },
StartTime = "2014 JAN 01 00:00:00",
EndTime = "2050 JAN 01 00:00:00",
SampleInterval = openspace.time.secondsPerDay()
},
GUI = {
Name = "'Oumuamua Trail",
Path = "/Solar System/Interstellar",
Name = "1I/'Oumuamua Trail",
Path = "/Solar System/Interstellar/'Oumuamua",
Focusable = false,
Description = [[Trail of 'Oumuamua from 2014 JAN 01 00:00:00 to 2050 JAN 01 00:00:00.
Data from JPL Horizons]]
@@ -48,26 +48,54 @@ local OumuamuaPosition = {
}
},
GUI = {
Name = "'Oumuamua",
Path = "/Solar System/Interstellar",
Name = "1I/'Oumuamua",
Path = "/Solar System/Interstellar/'Oumuamua",
Description = [[Position of 'Oumuamua from 2014 JAN 01 00:00:00 to 2050 JAN 01
00:00:00. Data from JPL Horizons]]
}
}
local OumuamuaLabel = {
Identifier = "OumuamuaLabel",
Parent = OumuamuaPosition.Identifier,
Renderable = {
Type = "RenderableLabel",
Enabled = false,
Text = "1I/'Oumuamua",
FontSize = 70.0,
Size = 8.50,
MinMaxSize = { 1, 50 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 50.0 },
FadeWidths = { 1.0, 40.0 }
},
Tag = { "solarsystem_labels" },
GUI = {
Name = "1I/'Oumuamua Label",
Path = "/Solar System/Interstellar/'Oumuamua",
Focusable = false
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(OumuamuaPosition)
openspace.addSceneGraphNode(OumuamuaTrail)
openspace.addSceneGraphNode(OumuamuaLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(OumuamuaLabel)
openspace.removeSceneGraphNode(OumuamuaTrail)
openspace.removeSceneGraphNode(OumuamuaPosition)
end)
asset.export(OumuamuaPosition)
asset.export(OumuamuaTrail)
asset.export(OumuamuaLabel)