Afficher le plan de base

Afficher le plan de section

Afficher les points A', ..., I'

Afficher l'angle droit à la base

Afficher l'angle droit à la section

Afficher M'

Afficher les points I, ..., L

Afficher l'ellipse de base

A = (-2, -2)
B = (8, -2)
I = Midpoint(A, B)
u = Vector(A, I)
AB = Line(A, B)
D = (2, 2)
L = Midpoint(A, D)
O = Translate(L, u)
o = OrthogonalLine(O, AB)
F = Point(o)
v = Ray(O, F)
O' = Point(v)
S = Point(v)
k: Distance[S, O'] / Distance[S, O]
k': Distance[O, O'] / Distance[O, S]
J = Translate(O, u)
K = Translate(D, u)
C = Translate(K, u)
L_1 = Midpoint(A, L)
c_1 = Segment(A, B)
c_2 = Segment(B, C)
c_3 = Segment(C, D)
c_4 = Segment(D, A)
AK = Segment(A, K)
IL' = Segment(I, L_1)
E = Intersect(AK, IL')
ε = Conic(I, J, K, L, E)
t_1, t_2 = Tangent(S, ε)
T_1 = Intersect(ε, t_1)
T_2 = Intersect(ε, t_2)
a = Segment(S, T_1)
b = Segment(S, T_2)
KT_1 = Line(K, T_1)
d = Line(K, T_2)
P_1 = Intersect(KT_1, AB)
P_2 = Intersect(d, AB)
s_c = Segment(P_1, P_2)
P_c = Point(s_c)
a_1 = Line(K, L)
P_0 = Intersect(a_1, AB)
b_1 = Line(O, P_0)
AD = Line(A, D)
b_c = Line(P_c, AD)
I_b = Intersect(b_c, b_1)
a_c = Line(I_b, a_1)
P'_c = Intersect(a_c, AD)
e_c = Line(P_c, K)
e'_c = Line(I, P'_c)
E_c = Intersect(e'_c, e_c)
ε_c = Locus(E_c, P_c)
P'_2 = Mirror(P_2, P_1)
s_g = Ray(P_1, P'_2)
P_g = Point(s_g)
b_g = Line(P_g, AD)
I_g = Intersect(b_g, b_1)
a_g = Line(I_g, a_1)
P'_g = Intersect(a_g, AD)
e_g = Line(P_g, K)
e'_g = Line(I, P'_g)
E_g = Intersect(e'_g, e_g)
ε_g = Locus(E_g, P_g)
P'_1 = Mirror(P_1, P_2)
s_d = Ray(P_2, P'_1)
P_d = Point(s_d)
b_d = Line(P_d, AD)
I_d = Intersect(b_d, b_1)
a_d = Line(I_d, a_1)
P'_d = Intersect(a_d, AD)
e_d = Line(P_d, K)
e'_d = Line(P'_d, I)
E_d = Intersect(e'_d, e_d)
ε_d = Locus(E_d, P_d)
M = Point(ε)
MO = Segment(M, O)
α = Point(MO)
distanceOα = Distance(O, α)
distanceOM = Distance(O, M)
ε_α = Dilate(ε, distanceOα / distanceOM, O)
OJ_s = Segment(O, J)
α_1 = Intersect(ε_α, OJ_s)
c_α = Circle(O, α_1)
S_α = Intersect(c_α, v)
u_α = Vector(O, α)
S'_α = Translate(S_α, u_α)
h_α = Segment(S_α, S'_α)
v_α = Segment(S'_α, α)
A' = Dilate(A, k, S)
B' = Dilate(B, k, S)
C' = Dilate(C, k, S)
D' = Dilate(D, k, S)
I' = Dilate(I, k, S)
J' = Dilate(J, k, S)
K' = Dilate(K, k, S)
L' = Dilate(L, k, S)
E'_c = Dilate(E_c, k, S)
ε'_c = Locus(E'_c, P_c)
E'_g = Dilate(E_g, k, S)
ε'_g = Locus(E'_g, P_g)
E'_d = Dilate(E_d, k, S)
ε'_d = Locus(E'_d, P_d)
M' = Dilate(M, k, S)
M'O' = Segment(O', M')
α' = Dilate(α, k, S)
T'_α = Dilate(S'_α, k, S)
T_α = Dilate(S_α, k, S)
c'_1 = Segment(A', B')
c'_2 = Segment(B', C')
c'_3 = Segment(C', D')
c'_4 = Segment(D', A')
v'_α = Segment(α', T'_α)
h'_α = Segment(T'_α, T_α)
text1: "k = \frac{" + (Name[S]) + (Name[O']) + "}{" + (Name[S]) + (Name[O]) + "} \,=\," + k
Z_0 = (-4, 18)
v_0 = Line(Z_0, yAxis)
c_z = Circle(Z_0, 1)
plan_b = true
plan_h = true
prime = false
angle_b = true
angle_h = true
M_prime = true
IaL = false
h_0 = Line(Z_0, xAxis)
Z'_1, Z_1 = Intersect(c_z, v_0)
z_v = Vector(Z_0, Z_1)
h_1 = Translate(h_0, z_v)
c'_z = Circle(Z_0, 6)
Z'_2, Z_2 = Intersect(c'_z, h_0)
z_h = Vector(Z_0, Z_2)
v_1 = Translate(v_0, z_h)
v_2 = Translate(v_1, z_h)
h_2 = Translate(h_1, z_v)
c = Translate(v_2, z_h)
ellipse = false