mirror of
https://github.com/OpenSpace/OpenSpace.git
synced 2026-05-07 20:09:58 -05:00
6fee06aa4e
* Fix VideoTileLayer -> VideoTileProvider * Move kernel loading into spice files * Define Spice IDs inside assets * General asset cleanup and organization
192 lines
4.9 KiB
Lua
192 lines
4.9 KiB
Lua
local pck = asset.resource({
|
|
Name = "General PCK Kernels",
|
|
Type = "HttpSynchronization",
|
|
Identifier = "general_pck",
|
|
Version = 1
|
|
})
|
|
|
|
local spk = asset.resource({
|
|
Name = "General SPK Kernels",
|
|
Type = "HttpSynchronization",
|
|
Identifier = "general_spk",
|
|
Version = 2
|
|
})
|
|
|
|
|
|
-- The following IDs are defined in the de430 kernel provided by the `generic_spk` package
|
|
local ID = {
|
|
Earth = "EARTH",
|
|
EarthBarycenter = "EARTH BARYCENTER",
|
|
Mars = "MARS",
|
|
MarsBarycenter = "MARS BARYCENTER",
|
|
Mercury = "MERCURY",
|
|
MercuryBarycenter = "MERCURY BARYCENTER",
|
|
Moon = "MOON",
|
|
Neptune = "NEPTUNE",
|
|
NeptuneBarycenter = "NEPTUNE BARYCENTER",
|
|
Jupiter = "JUPITER",
|
|
JupiterBarycenter = "JUPITER BARYCENTER",
|
|
Pluto = "PLUTO",
|
|
PlutoBarycenter = "PLUTO BARYCENTER",
|
|
Saturn = "SATURN",
|
|
SaturnBarycenter = "SATURN BARYCENTER",
|
|
SolarSystemBarycenter = "SOLAR SYSTEM BARYCENTER",
|
|
Sun = "SUN",
|
|
Uranus = "URANUS",
|
|
UranusBarycenter = "URANUS BARYCENTER",
|
|
Venus = "VENUS",
|
|
VenusBarycenter = "VENUS BARYCENTER",
|
|
}
|
|
|
|
-- The following frames are provided as built-in reference frames by SPICE itself. See
|
|
-- https://naif.jpl.nasa.gov/pub/naif/toolkit_docs/C/req/frames.html
|
|
-- Appendix: "Built in" Inertial Reference Frames
|
|
-- Appendix: "Built in" PCK-Based IAU Body-Fixed Reference Frames
|
|
-- Appendix: High Precision Earth Fixed Frames
|
|
-- for more information
|
|
local Frame = {
|
|
J2000 = "J2000",
|
|
EclipJ2000 = "ECLIPJ2000",
|
|
Galactic = "GALACTIC",
|
|
|
|
Earth = "IAU_EARTH",
|
|
ITRF93 = "ITRF93",
|
|
EarthFixed = "EARTH_FIXED",
|
|
Mars = "IAU_MARS",
|
|
Mercury = "IAU_MERCURY",
|
|
Moon = "IAU_MOON",
|
|
Neptune = "IAU_NEPTUNE",
|
|
Jupiter = "IAU_JUPITER",
|
|
Pluto = "IAU_PLUTO",
|
|
Saturn = "IAU_SATURN",
|
|
Sun = "IAU_SUN",
|
|
Uranus = "IAU_URANUS",
|
|
Venus = "IAU_VENUS",
|
|
|
|
["52Europa"] = "IAU_52_EUROPA",
|
|
Adrastea = "IAU_ADRASTEA",
|
|
Amalthea = "IAU_AMALTHEA",
|
|
Ananke = "IAU_ANANKE",
|
|
Ariel = "IAU_ARIEL",
|
|
Arrokoth = "IAU_ARROKOTH",
|
|
Atlas = "IAU_ATLAS",
|
|
Belinda = "IAU_BELINDA",
|
|
Bennu = "IAU_BENNU",
|
|
Bianca = "IAU_BIANCA",
|
|
Borrelly = "IAU_BORRELLY",
|
|
Callirrhoe = "IAU_CALLIRRHOE",
|
|
Callisto = "IAU_CALLISTO",
|
|
Calypso = "IAU_CALYPSO",
|
|
Carme = "IAU_CARME",
|
|
Ceres = "IAU_CERES",
|
|
Chaldene = "IAU_CHALDENE",
|
|
Charon = "IAU_CHARON",
|
|
Cordelia = "IAU_CORDELIA",
|
|
Cressida = "IAU_CRESSIDA",
|
|
Davida = "IAU_DAVIDA",
|
|
Deimos = "IAU_DEIMOS",
|
|
Desdemona = "IAU_DESDEMONA",
|
|
Despina = "IAU_DESPINA",
|
|
Didymos = "IAU_DIDYMOS",
|
|
Dimorphos = "IAU_DIMORPHOS",
|
|
Dione = "IAU_DIONE",
|
|
DonaldJohanson = "IAU_DONALDJOHANSON",
|
|
Elara = "IAU_ELARA",
|
|
Enceladus = "IAU_ENCELADUS",
|
|
Epimetheus = "IAU_EPIMETHEUS",
|
|
Erinome = "IAU_ERINOME",
|
|
Eros = "IAU_EROS",
|
|
Europa = "IAU_EUROPA",
|
|
Eurybates = "IAU_EURYBATES",
|
|
Galatea = "IAU_GALATEA",
|
|
Ganymede = "IAU_GANYMEDE",
|
|
Gaspra = "IAU_GASPRA",
|
|
Harpalyke = "IAU_HARPALYKE",
|
|
Helene = "IAU_HELENE",
|
|
Himalia = "IAU_HIMALIA",
|
|
Hydra = "IAU_HYDRA",
|
|
Hyperion = "IAU_HYPERION",
|
|
Iapetus = "IAU_IAPETUS",
|
|
Ida = "IAU_IDA",
|
|
Io = "IAU_IO",
|
|
Iocaste = "IAU_IOCASTE",
|
|
Isonoe = "IAU_ISONOE",
|
|
Itokawa = "IAU_ITOKAWA",
|
|
Janus = "IAU_JANUS",
|
|
Juliet = "IAU_JULIET",
|
|
Kalyke = "IAU_KALYKE",
|
|
Larissa = "IAU_LARISSA",
|
|
Leda = "IAU_LEDA",
|
|
Leucus = "IAU_LEUCUS",
|
|
Lutetia = "IAU_LUTETIA",
|
|
Lysithea = "IAU_LYSITHEA",
|
|
Magaclite = "IAU_MAGACLITE",
|
|
Menoetius = "IAU_MENOETIUS",
|
|
Metis = "IAU_METIS",
|
|
Mimas = "IAU_MIMAS",
|
|
Miranda = "IAU_MIRANDA",
|
|
Naiad = "IAU_NAIAD",
|
|
Nereid = "IAU_NEREID",
|
|
Nix = "IAU_NIX",
|
|
Oberon = "IAU_OBERON",
|
|
Ophelia = "IAU_OPHELIA",
|
|
Orus = "IAU_ORUS",
|
|
Pallas = "IAU_PALLAS",
|
|
Pan = "IAU_PAN",
|
|
Pandora = "IAU_PANDORA",
|
|
Pasiphae = "IAU_PASIPHAE",
|
|
Patroclus = "IAU_PATROCLUS",
|
|
Phobos = "IAU_PHOBOS",
|
|
Phoebe = "IAU_PHOEBE",
|
|
Polymele = "IAU_POLYMELE",
|
|
Portia = "IAU_PORTIA",
|
|
Praxidike = "IAU_PRAXIDIKE",
|
|
Prometheus = "IAU_PROMETHEUS",
|
|
Proteus = "IAU_PROTEUS",
|
|
Puck = "IAU_PUCK",
|
|
Queta = "IAU_QUETA",
|
|
Rhea = "IAU_RHEA",
|
|
Rosalind = "IAU_ROSALIND",
|
|
Ryugu = "IAU_RYUGU",
|
|
Sinope = "IAU_SINOPE",
|
|
Steins = "IAU_STEINS",
|
|
Taygete = "IAU_TAYGETE",
|
|
Telesto = "IAU_TELESTO",
|
|
Tempel1 = "IAU_TEMPEL_1",
|
|
Tethys = "IAU_TETHYS",
|
|
Thalassa = "IAU_THALASSA",
|
|
Thebe = "IAU_THEBE",
|
|
Themisto = "IAU_THEMISTO",
|
|
Titan = "IAU_TITAN",
|
|
Titania = "IAU_TITANIA",
|
|
Triton = "IAU_TRITON",
|
|
Umbriel = "IAU_UMBRIEL",
|
|
Vesta = "IAU_VESTA"
|
|
}
|
|
|
|
|
|
asset.onInitialize(function()
|
|
openspace.spice.loadKernel(pck .. "pck00011.tpc")
|
|
openspace.spice.loadKernel(spk .. "de430.bsp")
|
|
end)
|
|
|
|
asset.onDeinitialize(function()
|
|
openspace.spice.unloadKernel(spk .. "de430.bsp")
|
|
openspace.spice.unloadKernel(pck .. "pck00011.tpc")
|
|
end)
|
|
|
|
asset.export("ID", ID)
|
|
asset.export("Frame", Frame)
|
|
|
|
|
|
|
|
asset.meta = {
|
|
Name = "SPICE Base",
|
|
Version = "1.1",
|
|
Description = [[This asset contains the spice base kernels necessary for any space
|
|
application. Includes positions for Solar System bodies from 1850 to 2150]],
|
|
Author = "OpenSpace Team",
|
|
URL = "https://naif.jpl.nasa.gov/naif/data_generic.html",
|
|
License = "NASA"
|
|
}
|