Botafogo

Représentation d’une courbe paramétrée

Représentation en 2D

En deux dimensions, une courbe paramétrée par le paramètre est donnée par , où les vecteurs et sont des vecteurs unitaires dans les directions et , respectivement. En guise d’exemple, nous allons considérer une courbe appelée trochoïde définie par :
Remarque 1.1. La cycloïde est un cas particulier de cette courbe que l’on obtient en posant . Si vous vous intéressez aux courbes mathématiques en deux et trois dimensions, ne manquez pas de visiter le site suivant : https://mathcurve.com/.
Les coordonnées du vecteur position peuvent être définies de la manière suivante :
python
import numpy as np
import matplotlib.pyplot as plt
R = 3
d = 4
t = np.linspace(-2*np.pi,2*np.pi,1000)
courbe_x = R*t - d*np.sin(t)
courbe_y = R - d*np.cos(t)
Après avoir créé les axes, on peut afficher la courbe :
python
fig = plt.figure(1) 
ax = fig.gca()
ax.plot(courbe_x, courbe_y, linewidth=2)
plt.axis('scaled')
plt.show()
Remarque 1.2. On pourrait ici également simplement utiliser le code suivant :
python
plt.plot(courbe_x, courbe_y, linewidth=2)
plt.axis('scaled')
plt.show()
Cas particulier de la cycloïde :

Représentation en 3D

En trois dimensions, une courbe paramétrée par le paramètre est donnée par : où les vecteurs , et dénotent les vecteurs unitaires dans les directions , , et , respectivement. Après le préambule habituel,
python
import numpy as np
import matplotlib.pyplot as plt
les coordonnées du vecteur position peuvent être définies de la manière suivante (cas d’une courbe appelée “courbe de Viviani”) :
python
a = 1
t = np.linspace(-2*np.pi,2*np.pi,100)
courbe_x = a + a*np.cos(t) 
courbe_y = a*np.sin(t)
courbe_z = 2*a*np.sin(t/2)
Il est alors possible d’afficher la courbe en prenant soin de faire tourner quelque peu les graduations des axes et pour améliorer la lisibilité de la figure :
python
fig = plt.figure(1) 
ax = plt.axes(projection='3d')
#ax = fig.add_subplot(projection='3d') # Variante
plt.setp(ax.get_xticklabels(), rotation=45)
plt.setp(ax.get_yticklabels(), rotation=-20)
ax.plot(courbe_x, courbe_y, courbe_z, linewidth=2)
ax.set_title('Représentation de la "courbe de Viviani"')
plt.show()
Remarque 1.1. La courbe de Viviani (appelée aussi “fenêtre de Viviani”) est définie comme l’intersection d’une sphère et d’un cylindre qui est tangent à la sphère et passe par le centre de cette dernière :

Polycopié rédigé par Roger Sauser, CMS. Sauf indication contraire, le contenu de ce document est soumis à une licence Creative Commons internationale, Attribution - Utilisation non commerciale - Partage dans les mêmes conditions 4.0 International (CC BY-NC-SA 4.0).

© 2026 Projet Botafogo. En savoir plus.