I’m still plugging away at my map to the stars in D3. It’s fun. I finally managed to get the ecliptic drawn on it.
I’m doing everything in the equatorial coordinate system, that’s the one all the astronomy books use with objects located in Right Ascension and Declination. It took me a long time to understand this system; it’s basically spherical polar coordinates of where a star is relative to the center of the earth. Only RA is measured in 24 hours instead of 360 degrees. And the earth’s rotation is normalized out so that a star’s RA/dec coordinates don’t change with the seasons (thank goodness!). The stars’ RA/Dec do move around at various larger time scales; the Earth’s 26,000 year precession, its nutation (18.6 year is the dominant cycle), and the relative motions of the stars themselves. I’m ignoring all those niceties although where I can I’m taking data normalized to the J2000.0 epoch.
I’m so bad at spatial geometry, it took me a long time to decide the ecliptic didn’t move with the seasons in this coordinate system, either. But duh, in retrospect, of course. The ecliptic is just one of those things I didn’t ever understand until recently. Anyway, the very definition of the equitorial coordinate system is that RA=0h00, Dec=0° is the place where the sun crosses the equator at the vernal equinox. (Well and that the plane Dec=0° is the plane of the earth’s rotation, and a right handed convention). And because the earth is tilted at an angle of 23.44°, it naturally follows that at the summer solstice the sun is at RA=6h00, Dec=23.44°. Those two points are enough to define the great circle which is the ecliptic, which is how I’m drawing this in my code. Of course the ecliptic goes back around to 12h00,0° and then 18h00,-23.44°.
I feel dumb that it takes me minutes (hours?) to figure this stuff out! To sanity check what I’m doing, I’m comparing my drawings to a chart that Sky & Telescope publishes. There’s also a helpful chart in the Wikipedia article for Declination. Just for fun all three images have different projections. I’m using Mollweide.