Hyperbole — asymptotes, axes, foyers
x² - 4y² = 4 (a=2, b=1). Rouge pointille : asymptotes y = ±x/2. Vert tirets : axes de symetrie. Orange : foyers.
c = courbe("x^2 - 4*y^2 - 4 = 0", couleur="bleu")
(a1, a2) = asymptotes(c)
style(a1, couleur="rouge", trait="pointille")
style(a2, couleur="rouge", trait="pointille")
(ax1, ax2) = axes(c)
style(ax1, couleur="vert", trait="tirets")
style(ax2, couleur="vert", trait="tirets")
(F1, F2) = foyers(c)
style(F1, couleur="orange")
style(F2, couleur="orange")Parabole — axe, directrice, foyer, tangente
y² = 4x (p=1). Vert tirets : axe de symetrie. Rouge pointille : directrice. Orange : foyer. Violet : point mobile et sa tangente.
c = courbe("y^2 - 4*x = 0", couleur="bleu")
(a) = axes(c)
style(a, couleur="vert", trait="tirets")
d = directrice(c)
style(d, couleur="rouge", trait="pointille")
(F) = foyers(c)
style(F, couleur="orange")
P = point_sur(c, 2)
style(P, couleur="violet")
t = tangente(c, P)
style(t, couleur="violet", trait="tirets")Ellipse — axes, foyers
4x² + 9y² = 36 (a=3, b=2). Vert tirets : grand et petit axes. Orange : foyers F1 et F2.
c = courbe("4*x^2 + 9*y^2 - 36 = 0", couleur="bleu")
(ax1, ax2) = axes(c)
style(ax1, couleur="vert", trait="tirets")
style(ax2, couleur="vert", trait="tirets")
(F1, F2) = foyers(c)
style(F1, couleur="orange")
style(F2, couleur="orange")Droite polaire — interactive
Cercle x² + y² = 9. Deplacez le point P (rouge) pour voir la droite polaire se mettre a jour en temps reel. La polaire d'un point sur le cercle est la tangente en ce point.
c = courbe("x^2 + y^2 - 9 = 0", couleur="bleu")
P = point(5, 2, couleur="rouge")
p = polaire(P, c)
style(p, couleur="rouge", trait="tirets")Transformation de courbe — y = x² tourne de 45°
transforme(r, courbe('y = x^2')) cree une courbe implicite F(T⁻¹(x,y)) = 0. Le resultat n'est plus une fonction y=g(x) mais est rendu correctement. Bleu : parabole y = x² | Rouge : rotation 45° autour de O
O = point(0, 0, couleur="noir")
f = courbe("y = x^2", couleur="bleu")
r = rotation(angle=45, centre=O)
f2 = transforme(r, f)
style(f2, couleur="rouge")Transformation de coniques — ellipse rotation + translation + homothetie
Les coniques restent des coniques apres transformation affine : les coefficients sont recalcules via la matrice inverse. tangente(), point_sur() et zeros() restent utilisables sur l'image. Bleu : ellipse x²/4 + y²/9 = 1 | Rouge : rotation 30° | Vert : translation (3, 1) | Violet : homothetie rapport 0.5
O = point(0, 0, couleur="noir")
c = courbe("{x^2}/4 + {y^2}/9 - 1 = 0", couleur="bleu")
r = rotation(angle=30, centre=O)
c2 = transforme(r, c)
style(c2, couleur="rouge")
A = point(0, 0)
B = point(3, 1)
t = translation(vecteur=(A, B))
c3 = transforme(t, c)
style(c3, couleur="vert")
h = homothetie(rapport=0.5, centre=O)
c4 = transforme(h, c)
style(c4, couleur="violet")Similitude — spirale de triangles
similitude(centre=O, angle=40, rapport=0.85) appliquee 4 fois successivement a un triangle. Chaque iteration tourne de 40° et reduit de 15%. Deplacez O pour changer le centre.
O = point(0, 0, couleur="noir")
A = point(3, 0, couleur="bleu")
B = point(4, 0, couleur="bleu")
C = point(3.5, 1, couleur="bleu")
segment(A, B, couleur="bleu")
segment(B, C, couleur="bleu")
segment(C, A, couleur="bleu")
sim = similitude(centre=O, angle=40, rapport=0.85)
A2 = transforme(sim, A)
B2 = transforme(sim, B)
C2 = transforme(sim, C)
segment(A2, B2, couleur="rouge")
segment(B2, C2, couleur="rouge")
segment(C2, A2, couleur="rouge")
A3 = transforme(sim, A2)
B3 = transforme(sim, B2)
C3 = transforme(sim, C2)
segment(A3, B3, couleur="vert")
segment(B3, C3, couleur="vert")
segment(C3, A3, couleur="vert")
A4 = transforme(sim, A3)
B4 = transforme(sim, B3)
C4 = transforme(sim, C3)
segment(A4, B4, couleur="violet")
segment(B4, C4, couleur="violet")
segment(C4, A4, couleur="violet")
A5 = transforme(sim, A4)
B5 = transforme(sim, B4)
C5 = transforme(sim, C4)
segment(A5, B5, couleur="orange")
segment(B5, C5, couleur="orange")
segment(C5, A5, couleur="orange")Transformation de courbe implicite — folium de Descartes
Courbe implicite F(x,y) = 0 transformee par translation et rotation. Le rendu utilise l'algorithme marching squares sur la courbe composee F(T⁻¹(x,y)) = 0. Bleu : folium x³+y³-3xy = 0 | Rouge : translation (2, 2) | Vert : rotation 90°
O = point(0, 0, couleur="noir")
c = courbe("x^3 + y^3 - 3*x*y = 0", couleur="bleu")
A = point(0, 0)
B = point(2, 2)
t = translation(vecteur=(A, B))
c2 = transforme(t, c)
style(c2, couleur="rouge")
r = rotation(angle=90, centre=O)
c3 = transforme(r, c)
style(c3, couleur="vert")