Rotation d'axe i

Rotation d'axe j

Rotation autour de u

Paramètres de la perspective

Afficher M

Angle entre le plan (O,  u, w ) et le plan (O, M, w)

Angle entre le plan (O, u, v) et la droite (OM)

Déplacement de M

Rayon de la sphère

Afficher les axes

Afficher O_u

Afficher O_v

Afficher O_w

Afficher cercle (O, U, V)

Afficher cercle (O, V, W)

Afficher cercle (O, U, W)

Afficher section par O_u

Afficher plan de section par O_u

Afficher section par O_v

Afficher plan de section par O_v

Afficher section par O_w

Afficher plan de section par O_w

Afficher Φ et Ψ

Afficher section parallèle à (O, u, v)

Afficher section parallèle à (O, v, w)

Afficher section parallèle à (O, u, w)

Afficher méridien

Φ

Ψ

Lorsqu'une ellipse est constituée de trait continu et de trait
interrompu, elle est définie en deux parties (arcs).
Il y a un souci de gestion des points d'intersection avec Σ.
Ajustez le style de trait (continu ou interrompu) comme il 
convient.

O_0 = Intersect(xAxis, yAxis)
i = Vector(O_0, (1, 0))
j = Vector(O_0, (0, 1))
φ = 0.3665191429188092 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
θ = 0.5235987755982988 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
α = 0.05235987755982989 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
P_1: O_0 + 3 / 2 i + 2 j
P_2: P_1 - 15 / 2 i
P_3: P_2 - 4 j
P_4: P_3 + 15 / 2 i
Cadre_1, p_1, p_2, p_3, p_4 = Polygon(P_1, P_2, P_3, P_4)
A_5: {-sin(θ), cos(θ), 0}
A_6: {-cos(θ) sin(φ), -sin(θ) sin(φ), cos(φ)}
coefε0_1: {1, 0, 1 / sin(φ)^(2), 0, 0, 1}
ε0_1: Element[coefε0_1, 1] x^(2) + Element[coefε0_1, 2] x y + Element[coefε0_1, 3] y^(2) + Element[coefε0_1, 4] x + Element[coefε0_1, 5] y = Element[coefε0_1, 6]
coefε0_2: {(Element[A_6, 3]^(2) + Element[A_6, 2]^(2)) / (cos(θ) cos(φ))^(2), -2 Element[A_6, 2] / (cos(θ) cos(φ)^(2)), 1 / cos(φ)^(2), 0, 0, 1}
ε0_2: Element[coefε0_2, 1] x^(2) + Element[coefε0_2, 2] x y + Element[coefε0_2, 3] y^(2) + Element[coefε0_2, 4] x + Element[coefε0_2, 5] y = Element[coefε0_2, 6]
coefε0_3: {(Element[A_6, 3]^(2) + Element[A_6, 1]^(2)) / (sin(θ) cos(φ))^(2), 2 Element[A_6, 1] / (sin(θ) cos(φ)^(2)), 1 / cos(φ)^(2), 0, 0, 1}
ε0_3: Element[coefε0_3, 1] x^(2) + Element[coefε0_3, 2] x y + Element[coefε0_3, 3] y^(2) + Element[coefε0_3, 4] x + Element[coefε0_3, 5] y = Element[coefε0_3, 6]
ARα_1: {-sin(θ), cos(α) cos(θ), -sin(α) cos(θ)}
ARα_2: {-cos(θ) sin(φ), -cos(α) sin(θ) sin(φ) + sin(α) cos(φ), sin(α) sin(θ) sin(φ) + cos(α) cos(φ)}
U_0: O_0 + Element[ARα_1, 1] i + Element[ARα_2, 1] j
u = Vector(O_0, U_0)
V_0: O_0 + Element[ARα_1, 2] i + Element[ARα_2, 2] j
v = Vector(O_0, V_0)
W_0: O_0 + Element[ARα_1, 3] i + Element[ARα_2, 3] j
w = Vector(O_0, W_0)
d0_1: cos(α) sin(φ) - sin(α) sin(θ) cos(φ)
coefΓ0_1: {(Element[ARα_2, 2]^(2) + Element[ARα_2, 1]^(2)) / d0_1^(2), -2 * (sin(α)^(2) cos(θ) sin(θ) sin(φ) + cos(α) sin(α) cos(θ) cos(φ)) / d0_1^(2), (Element[ARα_1, 2]^(2) + Element[ARα_1, 1]^(2)) / d0_1^(2), 0, 0, 1}
Γ0_1: Element[coefΓ0_1, 1] x^(2) + Element[coefΓ0_1, 2] x y + Element[coefΓ0_1, 3] y^(2) + Element[coefΓ0_1, 4] x + Element[coefΓ0_1, 5] y = Element[coefΓ0_1, 6]
d0_2: cos(θ) cos(φ)
coefΓ0_2: {(Element[ARα_2, 3]^(2) + Element[ARα_2, 2]^(2)) / d0_2^(2), 2 sin(θ) sin(φ) / (d0_2 cos(φ)), 1 / cos(φ)^(2), 0, 0, 1}
Γ0_2: Element[coefΓ0_2, 1] x^(2) + Element[coefΓ0_2, 2] x y + Element[coefΓ0_2, 3] y^(2) + Element[coefΓ0_2, 4] x + Element[coefΓ0_2, 5] y = Element[coefΓ0_2, 6]
d0_3: sin(α) sin(φ) + cos(α) sin(θ) cos(φ)
coefΓ0_3: {(Element[ARα_2, 3]^(2) + Element[ARα_2, 1]^(2)) / d0_3^(2), 2 / d0_3^(2) * (-cos(α)^(2) cos(θ) sin(θ) sin(φ) + cos(α) sin(α) cos(θ) cos(φ)), (Element[ARα_1, 3]^(2) + Element[ARα_1, 1]^(2)) / d0_3^(2), 0, 0, 1}
Γ0_3: Element[coefΓ0_3, 1] x^(2) + Element[coefΓ0_3, 2] x y + Element[coefΓ0_3, 3] y^(2) + Element[coefΓ0_3, 4] x + Element[coefΓ0_3, 5] y = Element[coefΓ0_3, 6]
horiz1_{cases} = Translate(xAxis, Vector[35 / 4 j])
horiz2_{cases} = Translate(xAxis, Vector[33 / 4 j])
horiz3_{cases} = Translate(xAxis, Vector[31 / 4 j])
horiz4_{cases} = Translate(xAxis, Vector[29 / 4 j])
horiz5_{cases} = Translate(xAxis, Vector[27 / 4 j])
horiz6_{cases} = Translate(xAxis, Vector[25 / 4 j])
horiz7_{cases} = Translate(xAxis, Vector[23 / 4 j])
horiz8_{cases} = Translate(xAxis, Vector[21 / 4 j])
AffM = true
Φ = 0.7155849933176751 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
Ψ = 0.8377580409572782 rad (slider from 0 to 6.283185307179586, step 0.017453292519943295)
Q_1: O_0 + 1 / 4 i + 11 / 2 j
Q_2: Q_1 - 25 / 4 i
Q_3: Q_2 - 3 j
Q_4: Q_3 + 25 / 4 i
Cadre_2, q_1, q_2, q_3, q_4 = Polygon(Q_1, Q_2, Q_3, Q_4)
coordsph_M: {cos(Φ) cos(Ψ), sin(Φ) cos(Ψ), sin(Ψ)}
M_0: O_0 + Element[coordsph_M, 1] u + Element[coordsph_M, 2] v + Element[coordsph_M, 3] w
M_{U,0}: O_0 + cos(Φ) u + sin(Φ) v
Ω0_1 = Translate(Dilate[Γ0_1, cos(Ψ), O_0], Vector[sin(Ψ) w])
Ω0_2 = Translate(Dilate[Γ0_2, sqrt(1 - Element[coordsph_M, 1]^(2)), O_0], Vector[Element[coordsph_M, 1] u])
Ω0_3 = Translate(Dilate[Γ0_3, sqrt(1 - Element[coordsph_M, 2]^(2)), O_0], Vector[Element[coordsph_M, 2] v])
d0_4: cos(Φ) * (Element[ARα_2, 3] Element[ARα_1, 1] - Element[ARα_1, 3] Element[ARα_2, 1]) + sin(Φ) * (Element[ARα_2, 3] Element[ARα_1, 2] - Element[ARα_1, 3] Element[ARα_2, 2])
d0_5: cos(Φ) * (Element[ARα_2, 1] Element[ARα_1, 3] - Element[ARα_1, 1] Element[ARα_2, 3]) + sin(Φ) * (Element[ARα_2, 2] Element[ARα_1, 3] - Element[ARα_1, 2] Element[ARα_2, 3])
coefMer_Ψ: {Element[ARα_2, 3]^(2) / d0_4^(2) + (cos(Φ) Element[ARα_2, 1] + sin(Φ) Element[ARα_2, 2])^(2) / d0_5^(2), -2 Element[ARα_2, 3] Element[ARα_1, 3] / d0_4^(2) - 2 * (cos(Φ) Element[ARα_2, 1] + sin(Φ) Element[ARα_2, 2]) * (cos(Φ) Element[ARα_1, 1] + sin(Φ) Element[ARα_1, 2]) / d0_5^(2), Element[ARα_1, 3]^(2) / d0_4^(2) + (cos(Φ) Element[ARα_1, 1] + sin(Φ) Element[ARα_1, 2])^(2) / d0_5^(2), 0, 0, 1}
Mer0_Ψ: Element[coefMer_Ψ, 1] x^(2) + Element[coefMer_Ψ, 2] x y + Element[coefMer_Ψ, 3] y^(2) + Element[coefMer_Ψ, 4] x + Element[coefMer_Ψ, 5] y = Element[coefMer_Ψ, 6]
O = (5.74, 7)
r = 3.75 (slider from 1 to 6, step 0.25)
Σ = Translate(Dilate[Σ_0, r, O_0], Vector[Vector[O_0, O]])
U: O + r u
U': O - r u
UU' = Segment(U, U')
V: O + r v
V': O - r v
VV' = Segment(V, V')
W: O + r w
W': O - r w
WW' = Segment(W, W')
Affaxes = true
axe_u = Segment(O + (r + 2) u, O - (r + 2) u)
axe_v = Segment(O + (r + 2) v, O - (r + 2) v)
axe_w = Segment(O + (r + 2) w, O - (r + 2) w)
AffO_u = false
O_u = Point(axe_u)
k_u: Distance[O, O_u] / Distance[O, U]
AffO_v = false
O_v = Point(axe_v)
k_v: Distance[O, O_v] / Distance[O, V]
AffO_w = true
O_w = Point(axe_w)
k_w: Distance[O, O_w] / Distance[O, W]
AffΓ_1 = true
Γ_1 = Translate(Dilate[Γ0_1, r, O_0], Vector[Vector[O_0, O]])
A_1, A_2, A_3, A_4 = Intersect(Γ_1, Σ)
ΓA1A3 = Arc(Γ_1, A_1, A_3)
ΓA3A1 = Arc(Γ_1, A_3, A_1)
AffΓ_2 = true
Γ_2 = Translate(Dilate[Γ0_2, r, O_0], Vector[Vector[O_0, O]])
B_1, B_2, B_3, B_4 = Intersect(Γ_2, Σ)
ΓB1B3 = Arc(Γ_2, B_1, B_3)
ΓB3B1 = Arc(Γ_2, B_3, B_1)
AffΓ_3 = true
Γ_3 = Translate(Dilate[Γ0_3, r, O_0], Vector[Vector[O_0, O]])
C_1, C_2, C_3, C_4 = Intersect(Γ_3, Σ)
ΓC1C3 = Arc(Γ_3, C_1, C_3)
ΓC3C1 = Arc(Γ_3, C_3, C_1)
AffΓ'_2 = false
Γ'_2 = Dilate(Translate[Γ_2, Vector[O, O_u]], sqrt(1 - k_u^(2)), O_u)
D_1, D_2, D_3, D_4 = Intersect(Γ'_2, Σ)
ΓD1D3 = Arc(Γ'_2, D_1, D_3)
ΓD3D1 = Arc(Γ'_2, D_3, D_1)
exD = If(x(D_1) < x(O) + r, 1, 0)
Γ''_2 = Dilate(Translate[Γ_2, Vector[O, O_u]], sqrt(1 - k_u^(2)), O_u)
Γ'''_2 = Dilate(Translate[Γ_2, Vector[O, O_u]], sqrt(1 - k_u^(2)), O_u)
AffPlanO_u = false
D_5: O_u + (r + 2) v + (r + 2) w
D_6: D_5 - 2 * (r + 2) v
D_7: D_6 - 2 * (r + 2) w
D_8: D_7 + 2 * (r + 2) v
PlanO_u, d_5, d_6, d_7, d_8 = Polygon(D_5, D_6, D_7, D_8)
AffΓ'_3 = false
Γ'_3 = Dilate(Translate[Γ_3, Vector[O, O_v]], sqrt(1 - k_v^(2)), O_v)
E_1, E_2, E_3, E_4 = Intersect(Γ'_3, Σ)
ΓE1E3 = Arc(Γ'_3, E_1, E_3)
ΓE3E1 = Arc(Γ'_3, E_3, E_1)
exE = If(x(E_1) < x(O) + r, 1, 0)
Γ''_3 = Dilate(Translate[Γ_3, Vector[O, O_v]], sqrt(1 - k_v^(2)), O_v)
Γ'''_3 = Dilate(Translate[Γ_3, Vector[O, O_v]], sqrt(1 - k_v^(2)), O_v)
AffPlanO_v = false
E_5: O_v + (r + 2) u + (r + 2) w
E_6: E_5 - 2 * (r + 2) w
E_7: E_6 - 2 * (r + 2) u
E_8: E_7 + 2 * (r + 2) w
PlanO_v, e_5, e_6, e_7, e_8 = Polygon(E_5, E_6, E_7, E_8)
AffΓ'_1 = false
Γ'_1 = Dilate(Translate[Γ_1, Vector[O, O_w]], sqrt(1 - k_w^(2)), O_w)
F_1, F_2, F_3, F_4 = Intersect(Γ'_1, Σ)
ΓF1F3 = Arc(Γ'_1, F_1, F_3)
ΓF3F1 = Arc(Γ'_1, F_3, F_1)
exF = If(x(F_1) < x(O) + r, 1, 0)
Γ''_1 = Dilate(Translate[Γ_1, Vector[O, O_w]], sqrt(1 - k_w^(2)), O_w)
Γ'''_1 = Dilate(Translate[Γ_1, Vector[O, O_w]], sqrt(1 - k_w^(2)), O_w)
AffPlanO_w = false
F_5: O_w + (r + 2) u + (r + 2) v
F_6: F_5 - 2 * (r + 2) u
F_7: F_6 - 2 * (r + 2) v
F_8: F_7 + 2 * (r + 2) u
PlanO_w, f_5, f_6, f_7, f_8 = Polygon(F_5, F_6, F_7, F_8)
AffΦΨ = false
AffΩ1 = false
AffΩ2 = false
AffΩ3 = false
AffMerM = false
M: O + r Vector[O_0, M_0]
M_u: O + Element[coordsph_M, 1] r u
M_v: O + Element[coordsph_M, 2] r v
M_w: O + Element[coordsph_M, 3] r w
M_U: O + r Vector[O_0, M_{U,0}]
U_1: O + u
M'_U: O + Vector[O_0, M_{U,0}]
OM_U = Segment(O, M_U)
Γ1_1 = Translate(Dilate[Γ0_1, Min[1, r], O_0], Vector[Vector[O_0, O]])
sec_Φ = Sector(Γ1_1, U, M'_U)
T_Φ: O + cos(Φ / 2) u + sin(Φ / 2) v
M_1: O + Vector[O_0, M_0]
OM = Segment(O, M)
Mer1_Ψ = Translate(Mer0_Ψ, Vector[Vector[O_0, O]])
sec_Ψ = Sector(Mer1_Ψ, M'_U, M_1)
T_Ψ: O + cos(Φ) cos(Ψ / 2) u + sin(Φ) cos(Ψ / 2) v + sin(Ψ / 2) w
Ω_1 = Translate(Dilate[Ω0_1, r, O_0], Vector[Vector[O_0, O]])
G_1, G_2, G_3, G_4 = Intersect(Ω_1, Σ)
ΩG1G3 = Arc(Ω_1, G_1, G_3)
ΩG3G1 = Arc(Ω_1, G_3, G_1)
exG = If(x(G_1) < x(O) + r, 1, 0)
Ω''_1 = Translate(Dilate[Ω0_1, r, O_0], Vector[Vector[O_0, O]])
Ω'''_1 = Translate(Dilate[Ω0_1, r, O_0], Vector[Vector[O_0, O]])
Ω_2 = Translate(Dilate[Ω0_2, r, O_0], Vector[Vector[O_0, O]])
H_1, H_2, H_3, H_4 = Intersect(Ω_2, Σ)
ΩH1H3 = Arc(Ω_2, H_1, H_3)
ΩH3H1 = Arc(Ω_2, H_3, H_1)
exH = If(x(H_1) < x(O) + r, 1, 0)
Ω''_2 = Translate(Dilate[Ω0_2, r, O_0], Vector[Vector[O_0, O]])
Ω'''_2 = Translate(Dilate[Ω0_2, r, O_0], Vector[Vector[O_0, O]])
Ω_3 = Translate(Dilate[Ω0_3, r, O_0], Vector[Vector[O_0, O]])
I_1, I_2, I_3, I_4 = Intersect(Ω_3, Σ)
ΩI3I1 = Arc(Ω_3, I_3, I_1)
ΩI1I3 = Arc(Ω_3, I_1, I_3)
exI = If(x(I_1) < x(O) + r, 1, 0)
Ω''_3 = Translate(Dilate[Ω0_3, r, O_0], Vector[Vector[O_0, O]])
Ω'''_3 = Translate(Dilate[Ω0_3, r, O_0], Vector[Vector[O_0, O]])
Mer_M = Translate(Dilate[Mer0_Ψ, r, O_0], Vector[Vector[O_0, O]])
J_1, J_2, J_3, J_4 = Intersect(Mer_M, Σ)
MerJ1J3 = Arc(Mer_M, J_1, J_3)
MerJ3J1 = Arc(Mer_M, J_3, J_1)