Winter Solstice
Author: Scott Farrar
Date: December 15, 2007

Drag point A around the edge of the Earth facing the Sun.

The Latitude will be incorrect (up to supplements and negatives) outside of 0 - 90 degrees.

Winter Solstice

ΔABC is an approximation of
the surface of the Earth at point A.
AC ∥ Orbital Plane
CB ⊥ AC
AB is tangent to the Earth at point A.

C_2 = (0, 0)
c = Circle(C_2, 1)
B_1 = Point(xAxis)
OrbitalPlane = Line(C_2, B_1)
b = OrthogonalLine(C_2, OrbitalPlane)
C_1, D = Intersect(c, OrbitalPlane)
F, G = Intersect(c, b)
NorthPole = Rotate(G, 23.5°, C_2)
Tilt = Angle(G, C_2, NorthPole)
Axis = Line(NorthPole, C_2)
e = OrthogonalLine(C_2, Axis)
f = Line(D, e)
g = Line(C_1, e)
h = Line(G, e)
i = Line(F, e)
E = Intersect(c, h, 2)
H = Intersect(c, e, 1)
I = Intersect(c, e, 2)
J = Intersect(c, i, 2)
K = Intersect(c, g, 2)
j = Segment(C_1, K)
Equator = Segment(H, I)
l = Segment(E, G)
L = Intersect(c, f, 2)
m = Segment(L, D)
n = Segment(F, J)
A = Point(c)
Latitude = Angle(I, C_2, A)
s = Ray(C_2, A)
t, a1 = Tangent(A, c)
O = Point(s)
d1 = Circle(A, 0.1)
S, B = Intersect(d1, t)
a = Line(A, OrbitalPlane)
d = Segment(A, B)
N = Intersect(c, a, 1)
p = OrthogonalLine(B, a)
C = Intersect(a, p)
q = Segment(A, C)
r = Segment(C, B)
b1 = Segment(C_2, A)
T1: "% of max Sunlight hitting AB = " + (cos(Latitude + Tilt) 100)
SouthPole = Intersect(c, Axis, 2)
k = CircleSector(C_2, G, F)