NavList:
A Community Devoted to the Preservation and Practice of Celestial Navigation and Other Methods of Traditional Wayfinding
Re: Star globe
From: Bill Lionheart
Date: 2025 Jan 9, 10:26 +0000
From: Bill Lionheart
Date: 2025 Jan 9, 10:26 +0000
Hi Frank
Good point about it being inside out. Much more useful for learning to find starts. A right side out one might be helpful to visualize actual geometry perhaps in relation to other bodies, eg how the sun and planets appear to move against the stars. I suppose a practical use is we want to understand what navigational stars we might be able to use at dawn/dusk. Presumably the procedure is that you find a star near your zenith at a specific time and location and then pop a ring on the sphere of a suitable radius for your horizon (or a sensible altitude above the horizon). Looking at the photos it seems the globes are on a stand (with three ball bearings?) that allows you to set the zenith to up, and then their is an azimuth circle you have to align and a sort of altitude protractor
Thanks for everyone's pics and links to their favorite star globes. I love the wooden boxes. I am looking for almost disposable level that can be easily and cheaply made for people wanting to learn.
I think Frank, your point about making one starting with a smooth plastic ball is a good one. For learning to find stars that is going to really help. I thought of an intermediate version. To print the stars on the sphere but then label them (and draw some constellation lines too) as a way to help learn to recognise them. The manual skill of drawing would help the learning.
I had started playing with printing stars in Openscad
// === STAR DATA ===
// Each star: [RA (hours), Dec (degrees), Magnitude, "Label"]
stars = [
[2.5, 89.3, 2.0, "Polaris"], // Polaris
[14.8, 74.2, 3.0, "Kochab"], // Kochab
[17.5, 86.6, 4.0, "Pherkad"],
[15.0, 77.6, 5.0, "Eta UMi"],
[16.8, 82.0, 4.3, "Yildun"]
// === STAR DATA ===
// Each star: [RA (hours), Dec (degrees), Magnitude, "Label"]
stars = [
[2.5, 89.3, 2.0, "Polaris"], // Polaris
[14.8, 74.2, 3.0, "Kochab"], // Kochab
[17.5, 86.6, 4.0, "Pherkad"],
[15.0, 77.6, 5.0, "Eta UMi"],
[16.8, 82.0, 4.3, "Yildun"]
....
];
];
// === FUNCTIONS ===
// Convert celestial coordinates to Cartesian on the hemisphere
function celestial_to_cartesian(ra, dec, r) = [
r * cos(dec) * cos(ra * 15), // RA to degrees (*15)
r * cos(dec) * sin(ra * 15),
r * sin(dec)
];
// Convert celestial coordinates to Cartesian on the hemisphere
function celestial_to_cartesian(ra, dec, r) = [
r * cos(dec) * cos(ra * 15), // RA to degrees (*15)
r * cos(dec) * sin(ra * 15),
r * sin(dec)
];
OK... I think I should have turned it inside out! Maybe [x,y,z] -> [-x,-y,-z] a central inversion is what is needed.
Then printing a pentagram of a size depending on magnitude (is radius inversely proportional to magnitude about right?)
// Pentagram Marker
module pentagram(position, size) {
translate(position * (1 + 0.01)) // Slight offset
look_at(position)
rotate([0, 0, 90]) // Ensure proper pentagram alignment
linear_extrude(0.5)
polygon([
[0, size],
[size * sin(72), size * cos(72)],
[size * sin(144), size * cos(144)],
[size * sin(216), size * cos(216)],
[size * sin(288), size * cos(288)],
[0, size]
]);
}
module pentagram(position, size) {
translate(position * (1 + 0.01)) // Slight offset
look_at(position)
rotate([0, 0, 90]) // Ensure proper pentagram alignment
linear_extrude(0.5)
polygon([
[0, size],
[size * sin(72), size * cos(72)],
[size * sin(144), size * cos(144)],
[size * sin(216), size * cos(216)],
[size * sin(288), size * cos(288)],
[0, size]
]);
}
If the surface was nice to write on and big enough one could then add labels manually to help learning. Then the process mirrors finding them in the sky, the stars are in the right place and we have to label them.
Bill Lionheart