Issue/1486: Create labels for all moons (#2453)

* Added labels for all existing moons in the solar system (closes #1486)

* Updated fade behavior and labels sizes for planets and moons in the solar system
This commit is contained in:
Adam Rohdin
2023-02-01 14:23:18 +01:00
committed by GitHub
parent 494188371b
commit 5161662928
50 changed files with 1502 additions and 46 deletions

View File

@@ -50,11 +50,38 @@ local Charon = {
}
}
local CharonLabel = {
Identifier = "CharonLabel",
Parent = Charon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Charon",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 250.0, 500.0 },
FadeWidths = { 150.0, 250.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Charon Label",
Path = "/Solar System/Dwarf Planets/Pluto/Moons",
Description = "Label for Pluto's moon Charon"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Charon)
openspace.addSceneGraphNode(CharonLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(CharonLabel)
openspace.removeSceneGraphNode(Charon)
end)

View File

@@ -52,12 +52,39 @@ local HydraTrail = {
}
}
local HydraLabel = {
Identifier = "HydraLabel",
Parent = Hydra.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Hydra",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 250.0, 1000.0 },
FadeWidths = { 150.0, 500.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = "Cheron Label",
Path = "/Solar System/Dwarf Planets/Pluto/Moons",
Description = "Label for Pluto's moon Hydra"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Hydra)
openspace.addSceneGraphNode(HydraTrail)
openspace.addSceneGraphNode(HydraLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(HydraLabel)
openspace.removeSceneGraphNode(HydraTrail)
openspace.removeSceneGraphNode(Hydra)
end)

View File

@@ -51,12 +51,39 @@ local KerberosTrail = {
}
}
local KerberosLabel = {
Identifier = "KerberosLabel",
Parent = Kerberos.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Kerberos",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 250.0, 1000.0 },
FadeWidths = { 150.0, 500.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = "Cheron Label",
Path = "/Solar System/Dwarf Planets/Pluto/Moons",
Description = "Label for Pluto's moon Kerberos"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Kerberos)
openspace.addSceneGraphNode(KerberosTrail)
openspace.addSceneGraphNode(KerberosLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(KerberosLabel)
openspace.removeSceneGraphNode(KerberosTrail)
openspace.removeSceneGraphNode(Kerberos)
end)

View File

@@ -51,12 +51,39 @@ local NixTrail = {
}
}
local NixLabel = {
Identifier = "NixLabel",
Parent = Nix.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Nix",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 250.0, 1000.0 },
FadeWidths = { 150.0, 500.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = "Cheron Label",
Path = "/Solar System/Dwarf Planets/Pluto/Moons",
Description = "Label for Pluto's moon Nix"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Nix)
openspace.addSceneGraphNode(NixTrail)
openspace.addSceneGraphNode(NixLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(NixLabel)
openspace.removeSceneGraphNode(NixTrail)
openspace.removeSceneGraphNode(Nix)
end)

View File

@@ -50,12 +50,39 @@ local StyxTrail = {
}
}
local StyxLabel = {
Identifier = "StyxLabel",
Parent = Styx.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Styx",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 250.0, 1000.0 },
FadeWidths = { 150.0, 500.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = "Cheron Label",
Path = "/Solar System/Dwarf Planets/Pluto/Moons",
Description = "Label for Pluto's moon Styx"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Styx)
openspace.addSceneGraphNode(StyxTrail)
openspace.addSceneGraphNode(StyxLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(StyxLabel)
openspace.removeSceneGraphNode(StyxTrail)
openspace.removeSceneGraphNode(Styx)
end)

View File

@@ -57,10 +57,14 @@ local PlutoLabel = {
Type = "RenderableLabel",
Text = "Pluto",
FontSize = 70.0,
Size = 9.05,
Size = 9.10,
MinMaxSize = { 1, 100 },
BlendMode = "Additive",
OrientationOption = "Camera View Direction"
OrientationOption = "Camera View Direction",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 2.0, 120.0 },
FadeWidths = { 1.0, 150.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -56,14 +56,14 @@ local EarthLabel = {
Type = "RenderableLabel",
Text = "Earth",
FontSize = 70.0,
Size = 8.77,
MinMaxSize = { 1, 100 },
Size = 8.50,
MinMaxSize = { 1, 50 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 15.0 },
FadeWidths = { 1.0, 25.0 }
FadeDistances = { 1.5, 30.0 },
FadeWidths = { 1.0, 40.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -56,11 +56,39 @@ local Moon = {
}
}
local MoonLabel = {
Identifier = "MoonLabel",
Parent = Moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Moon",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.4, 10.0 },
FadeWidths = { 0.1, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Moon Label",
Path = "/Solar System/Planets/Earth/Moon",
Description = "Label for Earth's Moon"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Moon)
openspace.addSceneGraphNode(MoonLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(MoonLabel)
openspace.removeSceneGraphNode(Moon)
end)

View File

@@ -52,11 +52,38 @@ local Callisto = {
}
}
local CallistoLabel = {
Identifier = "CallistoLabel",
Parent = Callisto.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Callisto",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 10.0 },
FadeWidths = { 0.5, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Callisto Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon Callisto"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Callisto)
openspace.addSceneGraphNode(CallistoLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(CallistoLabel)
openspace.removeSceneGraphNode(Callisto)
end)

View File

@@ -51,11 +51,38 @@ local Europa = {
}
}
local EuropaLabel = {
Identifier = "EuropaLabel",
Parent = Europa.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Europa",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 10.0 },
FadeWidths = { 0.5, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Europa Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon Europa"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Europa)
openspace.addSceneGraphNode(EuropaLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(EuropaLabel)
openspace.removeSceneGraphNode(Europa)
end)

View File

@@ -51,11 +51,39 @@ local Ganymede = {
}
}
local GanymedeLabel = {
Identifier = "GanymedeLabel",
Parent = Ganymede.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Ganymede",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 10.0 },
FadeWidths = { 0.5, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Ganymede Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon Ganymede"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Ganymede)
openspace.addSceneGraphNode(GanymedeLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(GanymedeLabel)
openspace.removeSceneGraphNode(Ganymede)
end)

View File

@@ -51,11 +51,40 @@ local Io = {
}
}
local IoLabel = {
Identifier = "IoLabel",
Parent = Io.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Io",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 10.0 },
FadeWidths = { 0.5, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Io Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon Io"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Io)
openspace.addSceneGraphNode(IoLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(IoLabel)
openspace.removeSceneGraphNode(Io)
end)

View File

@@ -48,10 +48,14 @@ local JupiterLabel = {
Type = "RenderableLabel",
Text = "Jupiter",
FontSize = 70.0,
Size = 8.77,
MinMaxSize = { 1, 100 },
Size = 8.75,
MinMaxSize = { 1, 50 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive"
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 3.0, 40.0 },
FadeWidths = { 1.0, 60.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -207,22 +207,62 @@ local anankeGroup = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(anankeGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.5, 90.0 },
FadeWidths = { 0.5, 90.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (Ananke group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(anankeGroup)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
asset.export( node)
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -275,21 +275,63 @@ local carmeGroup = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(carmeGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 2.0, 125.0 },
FadeWidths = { 0.5, 50.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (Carme group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(carmeGroup)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -35,21 +35,87 @@ local carpoGroup = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(carpoGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 100.0 },
FadeWidths = { 0.0, 100.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (Carpo group)"
}
}
-- 'Hacky' solution to case where the main label gets culled on approach due to its onscreen size.
-- We need the size of the original label to be big as it needs to be legible from long distances when focusing on Jupiter.
moon_labels[i+1] = {
Identifier = moon.Identifier .. "LabelNear",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 5.5,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.2, 1.0 },
FadeWidths = { 0.1, 0.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label (Near)",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Transitional Label for close-range viewing of " .. moonName .. " (Carpo group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(carpoGroup)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -104,21 +104,60 @@ local himaliaGroup = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(himaliaGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 120.0 },
FadeWidths = { 1.0, 120.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (Himalia group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(himaliaGroup)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -86,21 +86,64 @@ local innerMoons = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(innerMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 50.0,
Size = 5.6,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.1, 3.0 },
FadeWidths = { 0.1, 3.0 },
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (inner group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(innerMoons)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -162,21 +162,61 @@ local otherGroups = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(otherGroups) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.0, 150.0 },
FadeWidths = { 1.0, 50.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (other groups)"
}
}
end
local nodes = proceduralGlobes.createGlobes(otherGroups)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -350,8 +350,7 @@ local pasiphaeGroup = {
Identifier = parentIdentifier,
Spice = parentSpice
},
-- sic: The Identifier in the SPICE kernel is wrong
Spice = "MAGACLITE",
Spice = "MEGACLITE",
Radii = { 5000, 5000, 5000 },
Tags = tags,
TrailTags = trailTags,
@@ -364,21 +363,61 @@ local pasiphaeGroup = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(pasiphaeGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.5, 140.0 },
FadeWidths = { 0.5, 50.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (Pasiphae group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(pasiphaeGroup)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -34,21 +34,60 @@ local themistoGroup = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(themistoGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.5, 120.0 },
FadeWidths = { 0.5, 50.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Jupiter/Moons",
Description = "Label for Jupiter's moon " .. moonName .. " (Themisto group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(themistoGroup)
asset.onInitialize(function()
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end
end)
for i, node in ipairs(nodes) do
for _, node in ipairs(nodes) do
asset.export(node)
end

View File

@@ -61,8 +61,8 @@ local MarsLabel = {
Type = "RenderableLabel",
Text = "Mars",
FontSize = 70.0,
Size = 8.66,
MinMaxSize = { 1, 100 },
Size = 8.50,
MinMaxSize = { 1, 50 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
TransformationMatrix = {
@@ -71,6 +71,10 @@ local MarsLabel = {
0.0, 0.0, 1.0, 1.0E7,
0.0, 0.0, 0.0, 1.0
},
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 40.0 },
FadeWidths = { 1.0, 50.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -77,12 +77,41 @@ local DeimosTrail = {
}
}
local DeimosLabel = {
Identifier = "DeimosLabel",
Parent = Deimos.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Deimos",
FontSize = 70.0,
Size = 5.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 50.0, 1000.0 },
FadeWidths = { 50.0, 2000.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Deimos Label",
Path = "/Solar System/Planets/Mars/Moons",
Description = "Label for Mars' moon Deimos"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Deimos)
openspace.addSceneGraphNode(DeimosTrail)
openspace.addSceneGraphNode(DeimosLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(DeimosLabel)
openspace.removeSceneGraphNode(DeimosTrail)
openspace.removeSceneGraphNode(Deimos)
end)

View File

@@ -79,12 +79,39 @@ local PhobosTrail = {
}
}
local PhobosLabel = {
Identifier = "PhobosLabel",
Parent = Phobos.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Phobos",
FontSize = 70.0,
Size = 5.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 30.0, 1000.0 },
FadeWidths = { 30.0, 2000.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Phobos Label",
Path = "/Solar System/Planets/Mars/Moons",
Description = "Label for Mars' moon Phobos"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Phobos)
openspace.addSceneGraphNode(PhobosTrail)
openspace.addSceneGraphNode(PhobosLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(PhobosLabel)
openspace.removeSceneGraphNode(PhobosTrail)
openspace.removeSceneGraphNode(Phobos)
end)

View File

@@ -59,10 +59,14 @@ local MercuryLabel = {
Type = "RenderableLabel",
Text = "Mercury",
FontSize = 70.0,
Size = 8.46,
MinMaxSize = { 1, 100 },
Size = 8.5,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive"
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 20.0 },
FadeWidths = { 1.0, 30.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -141,15 +141,56 @@ local innerMoons = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(innerMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 50.0,
Size = 5.2,
MinMaxSize = { 1, 20 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 100, 800.0 },
FadeWidths = { 100, 1200.0 },
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Neptune/Moons",
Description = "Label for Neptune's moon " .. moonName .. " (inner group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(innerMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -72,15 +72,56 @@ local irregularProgradeMoons = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(irregularProgradeMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.4,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1, 250.0 },
FadeWidths = { 1, 250.0 },
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Neptune/Moons",
Description = "Label for Neptune's moon " .. moonName .. " (Irregular prograde group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(irregularProgradeMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -71,15 +71,55 @@ local irregularRetrogradeMoons = {
}
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs(irregularRetrogradeMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.4,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1, 250.0 },
FadeWidths = { 1, 250.0 },
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Neptune/Moons",
Description = "Label for Neptune's moon " .. moonName .. " (Irregular retrograde group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(irregularRetrogradeMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -39,10 +39,14 @@ local NeptuneLabel = {
Type = "RenderableLabel",
Text = "Neptune",
FontSize = 70.0,
Size = 8.96,
MinMaxSize = { 1, 100 },
Size = 9.0,
MinMaxSize = { 1, 80 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive"
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 6.0, 120.0 },
FadeWidths = { 2.0, 150.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -22,15 +22,56 @@ local Triton = {
Kernels = kernel
}
-- Generate labels for each moon
local moon_labels = {}
for i, moon in ipairs({ Triton }) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 50.0,
Size = 7.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1, 15.0 },
FadeWidths = { 1, 15.0 },
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Neptune/Moons",
Description = "Label for Neptune's moon " .. moonName
}
}
end
local nodes = proceduralGlobes.createGlobes({ Triton })
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moonlabel in ipairs(moon_labels) do
openspace.addSceneGraphNode(moonlabel)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -49,11 +49,40 @@ local Dione = {
}
}
local DioneLabel = {
Identifier = "DioneLabel",
Parent = Dione.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Dione",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.3, 10.0 },
FadeWidths = { 0.15, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Dione Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Dione"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Dione)
openspace.addSceneGraphNode(DioneLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(DioneLabel)
openspace.removeSceneGraphNode(Dione)
end)

View File

@@ -51,11 +51,40 @@ local Enceladus = {
}
}
local EnceladusLabel = {
Identifier = "EnceladusLabel",
Parent = Enceladus.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Enceladus",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.3, 10.0 },
FadeWidths = { 0.15, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Enceladus Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Enceladus"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Enceladus)
openspace.addSceneGraphNode(EnceladusLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(EnceladusLabel)
openspace.removeSceneGraphNode(Enceladus)
end)

View File

@@ -50,11 +50,40 @@ local Hyperion = {
}
}
local HyperionLabel = {
Identifier = "HyperionLabel",
Parent = Hyperion.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Hyperion",
FontSize = 70.0,
Size = 6.2,
MinMaxSize = { 1, 35 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.5, 20.0 },
FadeWidths = { 0.3, 20.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Hyperion Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Hyperion"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Hyperion)
openspace.addSceneGraphNode(HyperionLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(HyperionLabel)
openspace.removeSceneGraphNode(Hyperion)
end)

View File

@@ -51,11 +51,39 @@ local Iapetus = {
}
}
local IapetusLabel = {
Identifier = "IapetusLabel",
Parent = Iapetus.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Iapetus",
FontSize = 70.0,
Size = 6.2,
MinMaxSize = { 1, 35 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.5, 20.0 },
FadeWidths = { 0.3, 20.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Iapetus Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Iapetus"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Iapetus)
openspace.addSceneGraphNode(IapetusLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(IapetusLabel)
openspace.removeSceneGraphNode(Iapetus)
end)

View File

@@ -51,11 +51,40 @@ local Mimas = {
}
}
local MimasLabel = {
Identifier = "MimasLabel",
Parent = Mimas.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Mimas",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.3, 10.0 },
FadeWidths = { 0.15, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Mimas Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Mimas"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Mimas)
openspace.addSceneGraphNode(MimasLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(MimasLabel)
openspace.removeSceneGraphNode(Mimas)
end)

View File

@@ -86,15 +86,54 @@ local gallicGroup = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(gallicGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.25, 90.0 },
FadeWidths = { 0.25, 90.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon " .. moonName .. " (Gallic group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(gallicGroup)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -103,15 +103,54 @@ local inuitGroup = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(inuitGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.25, 90.0 },
FadeWidths = { 0.25, 90.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon " .. moonName .. " (Inuit group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(inuitGroup)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -521,15 +521,54 @@ local norseGroup = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(norseGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.1,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 1.25, 90.0 },
FadeWidths = { 0.25, 90.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon " .. moonName .. " (Norse group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(norseGroup)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -156,15 +156,54 @@ local otherGroup = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(otherGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 5.5,
MinMaxSize = { 1, 20 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 250.0, 1500.0 },
FadeWidths = { 100.0, 1500.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon " .. moonName .. " (other group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(otherGroup)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -147,15 +147,54 @@ local shepherdGroup = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(shepherdGroup) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 5.5,
MinMaxSize = { 1, 20 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 75.0, 1000.0 },
FadeWidths = { 25.0, 800.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon " .. moonName .. " (Shepherd group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(shepherdGroup)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -51,11 +51,40 @@ local Rhea = {
}
}
local RheaLabel = {
Identifier = "RheaLabel",
Parent = Rhea.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Rhea",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.3, 10.0 },
FadeWidths = { 0.15, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Rhea Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Rhea"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Rhea)
openspace.addSceneGraphNode(RheaLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(RheaLabel)
openspace.removeSceneGraphNode(Rhea)
end)

View File

@@ -67,10 +67,14 @@ local SaturnLabel = {
Type = "RenderableLabel",
Text = "Saturn",
FontSize = 70.0,
Size = 8.85,
MinMaxSize = { 1, 100 },
Size = 8.9,
MinMaxSize = { 1, 60 },
BlendMode = "Additive",
OrientationOption = "Camera View Direction"
OrientationOption = "Camera View Direction",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 2.5, 80.0 },
FadeWidths = { 1.0, 100.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -49,11 +49,40 @@ local Tethys = {
}
}
local TethysLabel = {
Identifier = "TethysLabel",
Parent = Tethys.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Tethys",
FontSize = 70.0,
Size = 6.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.3, 10.0 },
FadeWidths = { 0.15, 10.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Tethys Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Tethys"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Tethys)
openspace.addSceneGraphNode(TethysLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(TethysLabel)
openspace.removeSceneGraphNode(Tethys)
end)

View File

@@ -51,11 +51,40 @@ local Titan = {
}
}
local TitanLabel = {
Identifier = "TitanLabel",
Parent = Titan.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = "Titan",
FontSize = 70.0,
Size = 6.2,
MinMaxSize = { 1, 35 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 0.5, 20.0 },
FadeWidths = { 0.3, 20.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = "Titan Label",
Path = "/Solar System/Planets/Saturn/Moons",
Description = "Label for Saturn's moon Titan"
}
}
asset.onInitialize(function()
openspace.addSceneGraphNode(Titan)
openspace.addSceneGraphNode(TitanLabel)
end)
asset.onDeinitialize(function()
openspace.removeSceneGraphNode(TitanLabel)
openspace.removeSceneGraphNode(Titan)
end)

View File

@@ -241,15 +241,54 @@ local innerMoons = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(innerMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 5.5,
MinMaxSize = { 1, 17 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 100.0, 500.0 },
FadeWidths = { 25.0, 500.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Uranus/Moons",
Description = "Label for Uranus' moon " .. moonName .. " (inner group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(innerMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -35,15 +35,55 @@ local irregularMoons = {
}
}
--Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(irregularMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 2.0, 80.0 },
FadeWidths = { 1.0, 40.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Uranus/Moons",
Description = "Label for Uranus' moon " .. moonName .. " (Irregular prograde group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(irregularMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -154,15 +154,54 @@ local irregularMoons = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(irregularMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 7.0,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Gm",
FadeDistances = { 2.0, 80.0 },
FadeWidths = { 1.0, 40.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "minor_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Uranus/Moons",
Description = "Label for Uranus' moon " .. moonName .. " (Irregular retrograde group)"
}
}
end
local nodes = proceduralGlobes.createGlobes(irregularMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -99,15 +99,54 @@ local majorMoons = {
}
}
-- Generate all moon labels
local moon_labels = {}
for i, moon in ipairs(majorMoons) do
local moonName = moon.GUI.Name or moon.Identifier
moon_labels[i] = {
Identifier = moon.Identifier .. "Label",
Parent = moon.Identifier,
Renderable = {
Enabled = false,
Type = "RenderableLabel",
Text = moonName,
FontSize = 70.0,
Size = 5.9,
MinMaxSize = { 1, 25 },
OrientationOption = "Camera View Direction",
BlendMode = "Normal",
EnableFading = true,
FadeUnit = "Mm",
FadeDistances = { 175.0, 4000.0 },
FadeWidths = { 35.0, 2000.0 }
},
Tag = { "solarsystem_labels", "moon_labels", "major_moon_labels" },
GUI = {
Name = moonName .. " Label",
Path = "/Solar System/Planets/Uranus/Moons",
Description = "Label for Uranus' moon " .. moonName .. " (Major moon)"
}
}
end
local nodes = proceduralGlobes.createGlobes(majorMoons)
asset.onInitialize(function()
for _, node in ipairs(nodes) do
openspace.addSceneGraphNode(node)
end
for _, moon in ipairs(moon_labels) do
openspace.addSceneGraphNode(moon)
end
end)
asset.onDeinitialize(function()
for i = #moon_labels, 1, -1 do
openspace.removeSceneGraphNode(moon_labels[i])
end
for i = #nodes, 1, -1 do
openspace.removeSceneGraphNode(nodes[i])
end

View File

@@ -39,10 +39,14 @@ local UranusLabel = {
Type = "RenderableLabel",
Text = "Uranus",
FontSize = 70.0,
Size = 8.86,
MinMaxSize = { 1, 100 },
Size = 9.0,
MinMaxSize = { 1, 80 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive"
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 2.5, 100.0 },
FadeWidths = { 1.0, 120.0 }
},
Tag = { "solarsystem_labels" },
GUI = {

View File

@@ -64,10 +64,14 @@ local VenusLabel = {
Type = "RenderableLabel",
Text = "Venus",
FontSize = 70.0,
Size = 8.54,
MinMaxSize = { 1, 100 },
Size = 8.5,
MinMaxSize = { 1, 40 },
OrientationOption = "Camera View Direction",
BlendMode = "Additive"
BlendMode = "Additive",
EnableFading = true,
FadeUnit = "au",
FadeDistances = { 1.5, 25.0 },
FadeWidths = { 1.0, 35.0 }
},
Tag = { "solarsystem_labels" },
GUI = {