latitude

hauteur

déclinaison

φ = 25.2 (slider from -90 to 90, step 0.0010)
h = 13 (slider from -90 to 90, step 0.02)
δ = -30 (slider from -90 to 90, step 0.0010)
C = (0, 0)
c1 = Circle(C, 1.0)
H = (-1, 0)
R = (1, 0)
shor = Segment(H, R)
Z = (0, 1)
P = Rotate(H, -(φ)°, C)
Q = Rotate(P, 1.5707963267948966, C)
E = Rotate(P, -1.5707963267948966, C)
seq = Segment(Q, E)
V = Rotate(H, -(h)°, C)
X = Rotate(R, h°, C)
salm = Segment(V, X)
γ = Rotate(Q, -(δ)°, C)
T = Rotate(E, δ°, C)
spar = Segment(γ, T)
A = Intersect(salm, spar)
chor = Semicircle(T, γ)
F = Intersect(chor, OrthogonalLine[A, spar])
saf = Segment(A, F)
sct = Segment(C, T)
M = Midpoint(spar)
smf = Segment(M, F)
scm = Segment(C, M)
I = Intersect(sct, Line[F, A])
sai = Segment(A, I)
K = Rotate(I, Angle[I, C, E], C)
S = Intersect(c1, Ray[K, Vector[I, A]])
B = Intersect(c1, Ray[K, Vector[A, I]])
sxb = Segment(S, B)
H_1 = Angle(F, M, T)
H_2: Angle[S, C, B] / 2.0
sbs = Segment(B, S)
aik = CircleArc(C, I, K)
I' = Mirror(I, C)
scorde = Segment(I, I')
J, G = Intersect(c1, Circle[H, Segment[I, I']])
L, D = Intersect(c1, Circle[J, Segment[I, I']])
H_3: Angle[L, C, H] / 4.0
HR = Arc(c1, L, H)