B = Intersect(xAxis, yAxis)
CentroCurvatura = Point(Ray[B, Vector[(1, 0)]])
Foco = Midpoint(B, CentroCurvatura)
A = Point(Ray[Foco, Vector[(1, 0)]])
c = Circle(CentroCurvatura, B)
A_1: A
f = OrthogonalLine(A_1, xAxis)
C_1 = Point(f)
u = Vector(A_1, C_1)
g = Line(C_1, xAxis)
D_1, E = Intersect(c, g)
h = Line(D_1, Foco)
i = Line(C_1, CentroCurvatura)
F = Intersect(h, i)
j = OrthogonalLine(F, xAxis)
Z = Intersect(j, xAxis)
v = Vector(Z, F)
H = Point(Segment[B, Z])
k = OrthogonalLine(H, xAxis)
PosiciónOjos = Point(k)
Ojos = 0.38 (slider from 0 to 1, step 0.01)
d = Circle(PosiciónOjos, Ojos)
O_2, O_1 = Intersect(d, k)
l = Line(Z, O_1)
m = Line(Z, O_2)
C = Intersect(c, l, 2)
D = Intersect(c, m, 2)
n = Segment(O_2, O_1)
p = Segment(O_2, D)
q = Segment(D, A_1)
r = Segment(O_1, C)
s = Segment(C, A_1)
t = Segment(O_2, Z)
a = Segment(O_1, Z)
b = Segment(B, Z)
G: (0, 4)
e = OrthogonalLine(G, yAxis)
J = Intersect(c, e, 2)
c_1 = Circle(C, 1)
d_1 = Circle(D, 1)
K = Intersect(c, d_1, 1)
L = Intersect(c, c_1, 2)
J' = Mirror(J, xAxis)
K' = Mirror(K, xAxis)
L' = Mirror(L, xAxis)
e_1 = CircumcircleArc(J', B, J)
f_1 = CircumcircleArc(K', B, K)
g_1 = CircumcircleArc(L, B, L')
O: Foco
OZ = Distance(O, Z)
P: (x(O) + (1 / 3 * OZ), 0)
Q = Mirror(O, P)
β = Angle(m, l)