Otros rayos

Antes de F_1

Rayos estándar

F_1 = Point(xAxis)
P_1 = Point(xAxis)
P_2 = Point(xAxis)
N_1 = Point(xAxis)
f: y = 0
g = OrthogonalLine(P_1, f)
h = OrthogonalLine(P_2, f)
c = Circle(N_1, Distance[P_1, P_2])
N_2 = Intersect(c, f, 2)
d = Circle(P_2, Distance[F_1, N_1])
F_2 = Intersect(d, f, 2)
O = PointIn(x < x(P_1))
i = Line(O, f)
C = Intersect(h, i)
j = Line(C, F_2)
k = Line(N_1, O)
l = Line(N_2, k)
I = Intersect(j, l)
m = Line(I, f)
A = Intersect(g, m)
n = Line(O, F_1)
p = Segment(O, C)
q = Segment(C, I)
s = Segment(N_2, I)
t = Segment(O, A)
a = Segment(A, I)
D = Point(g)
b = Segment(O, D)
e = Line(D, f)
E = Intersect(h, e)
f_1 = OrthogonalLine(F_2, f)
g_1 = OrthogonalLine(F_1, f)
G = Intersect(g_1, Line[D, O])
i_1 = Line(E, Line[G, N_1])
o = false
u = false
v = false
B = Intersect(g, i)
F = Intersect(g, k)
r = Segment(O, F)
j_1 = Line(F, f)
H = Intersect(h, j_1)
k_1 = Segment(H, I)
l_1 = Segment(F, N_1)
m_1 = Segment(F, H)
n_1 = Segment(I, H)
p_1 = Segment(I, C)
q_1 = Segment(I, A)
r_1 = Segment(H, N_2)
s_1 = Segment(C, F_2)
J = Intersect(m, f_1)
t_1 = Segment(A, J)
h_1 = Line(G, N_1)
K = Intersect(g, h_1)
a_1 = Line(K, f)
L = Intersect(h, a_1)
b_1 = Segment(G, K)
c_1 = Segment(K, L)
e_1 = Segment(K, N_1)
f_2 = Line(L, N_2)
M = Intersect(f_2, a)
d_1 = Segment(L, M)
g_2 = Segment(D, E)
h_2 = Segment(E, I)
i_2 = Segment(A, F_1)