mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-05-07 20:09:58 -05:00
121 lines
2.8 KiB
Lua
121 lines
2.8 KiB
Lua
local coreKernels = asset.require("spice/core")
|
|
|
|
|
|
|
|
-- Barycenter of the solar system, expressed in the Galactic frame
|
|
local SolarSystemBarycenter = {
|
|
Identifier = "SolarSystemBarycenter",
|
|
-- No parent; this node is attached to the scene graph root
|
|
TimeFrame = {
|
|
Type = "TimeFrameInterval",
|
|
Start = "1550-JAN-01",
|
|
End = "2650-JAN-22"
|
|
},
|
|
GUI = {
|
|
Name = "Solar System Barycenter",
|
|
Path = "/Solar System",
|
|
Hidden = true
|
|
}
|
|
}
|
|
|
|
local SunCenter = {
|
|
Identifier = "SunCenter",
|
|
Parent = SolarSystemBarycenter.Identifier,
|
|
Transform = {
|
|
Translation = {
|
|
Type = "SpiceTranslation",
|
|
Target = coreKernels.ID.Sun,
|
|
Observer = coreKernels.ID.SolarSystemBarycenter
|
|
}
|
|
},
|
|
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",
|
|
Parent = SolarSystemBarycenter.Identifier,
|
|
Transform = {
|
|
Translation = {
|
|
Type = "SpiceTranslation",
|
|
Target = coreKernels.ID.Sun,
|
|
Observer = coreKernels.ID.SolarSystemBarycenter
|
|
},
|
|
Rotation = {
|
|
Type = "SpiceRotation",
|
|
SourceFrame = coreKernels.Frame.Sun,
|
|
DestinationFrame = coreKernels.Frame.Galactic
|
|
}
|
|
},
|
|
GUI = {
|
|
Name = "Sun IAU",
|
|
Path = "/Solar System/Sun",
|
|
Hidden = true
|
|
}
|
|
}
|
|
|
|
local SunEclipJ2000 = {
|
|
Identifier = "SunEclipJ2000",
|
|
Parent = SolarSystemBarycenter.Identifier,
|
|
Transform = {
|
|
Translation = {
|
|
Type = "SpiceTranslation",
|
|
Target = coreKernels.ID.Sun,
|
|
Observer = coreKernels.ID.SolarSystemBarycenter
|
|
},
|
|
Rotation = {
|
|
Type = "SpiceRotation",
|
|
SourceFrame = coreKernels.Frame.EclipJ2000,
|
|
DestinationFrame = coreKernels.Frame.Galactic
|
|
}
|
|
},
|
|
GUI = {
|
|
Name = "Sun J2000",
|
|
Path = "/Solar System/Sun",
|
|
Hidden = true
|
|
}
|
|
}
|
|
|
|
local LightSource = {
|
|
Type = "SceneGraphLightSource",
|
|
Identifier = "Sun",
|
|
Node = SunIAU.Identifier,
|
|
Intensity = 1.0
|
|
}
|
|
|
|
|
|
asset.onInitialize(function()
|
|
openspace.addSceneGraphNode(SolarSystemBarycenter)
|
|
openspace.addSceneGraphNode(SunCenter)
|
|
openspace.addSceneGraphNode(SunIAU)
|
|
openspace.addSceneGraphNode(SunEclipJ2000)
|
|
end)
|
|
|
|
asset.onDeinitialize(function()
|
|
openspace.removeSceneGraphNode(SunEclipJ2000)
|
|
openspace.removeSceneGraphNode(SunIAU)
|
|
openspace.removeSceneGraphNode(SunCenter)
|
|
openspace.removeSceneGraphNode(SolarSystemBarycenter)
|
|
end)
|
|
|
|
asset.export(SolarSystemBarycenter)
|
|
asset.export(SunCenter)
|
|
asset.export(SunIAU)
|
|
asset.export(SunEclipJ2000)
|
|
asset.export("LightSource", LightSource)
|
|
|
|
|
|
|
|
asset.meta = {
|
|
Name = "Sun Transforms",
|
|
Description = "Sun transforms: Solar System Barycenter, SUN IAU and SUN J2000",
|
|
Author = "OpenSpace Team",
|
|
URL = "http://openspaceproject.com",
|
|
License = "MIT license"
|
|
}
|