Outils pour utilisateurs

Outils du site


nsi:langages:processing:trajectoire

Suivi de trajectoire

On souhaite qu'un point suive la trajectoire ci-dessous.

Les valeurs en $x$ et $y$ sont choisies pour être au centre d'une fenêtre 640×400.

Il s'agit d'une courbe paramétrée :

$$\begin{cases}x(t) = 320 + 120\cos(t)\\y(t) = 200 + 50 \sin\left(t + \frac{\pi}{3}\right)\end{cases}$$

Script

float t = 0;
final int size = 5; // final : c'est une constante

void setup() {
  size(640, 400);
  stroke(0,0,0);
}

void draw(){
  background(250,200,200);
  t += 0.1;
  float x = 320 + 120*cos(t);
  float y = 200 + 50*sin(t + PI/3);
  circle(x, y, size);
}

Notez que les fonctions trigonométriques sont reconnues sans nécessiter d'import. Cela est dû au fait que Processing est conçu exprès pour faire ce genre de calcul, donc les fonctions trigonométriques sont presque toujours utilisées.

L'ellipse n'est pas inclinée dans le bon sens. Cela est dû à l'inversion du sens de l'axe $y$ : sur l'écran, $y$ augmente en allant vers le bas. Le sens trigonométrique s'en trouve renversé.

nsi/langages/processing/trajectoire.txt · Dernière modification : de goupillwiki