A

B

C

CentreRapporteur = (20.216864588317442, -4.735862624450519)
a = 6.9 (slider from -5 to 7, step 0.1)
f = 2.233
RotRapporteur = Point(Circle[CentreRapporteur, a])
zc1r = Segment(CentreRapporteur, RotRapporteur)
Z1R = Mirror(RotRapporteur, CentreRapporteur)
d1R = Line(Z1R, RotRapporteur)
d2R = OrthogonalLine(Z1R, d1R)
d3R = OrthogonalLine(RotRapporteur, d1R)
d4R = Rotate(d1R, atan(f / a), CentreRapporteur)
d5R = Rotate(d1R, -atan(f / a), CentreRapporteur)
Z2R = Intersect(d5R, d3R)
ang: round(random() * 100.0) + 10.0
Z3R = Intersect(d4R, d2R)
A = (6.70923356825387, -3.441381318361097)
B: (13.0, ang / 20.0)
C = Rotate(B, ang°, A)
α = Angle(B, A, C)
b = Segment(B, A)
c = Segment(C, A)
D: (ang, 0.0)