Le concept
Une courbe de Lissajous est le tracé de (sin(a*t), sin(b*t+δ)). Quand a et b sont dans un rapport rationnel, la courbe se ferme. Sinon, elle remplit progressivement un rectangle. En variant les fréquences et le déphasage dans le temps, on obtient des figures hypnotiques.
Le code
// Lissajous curve
function setup() { createCanvas(400, 280); }
function draw() {
background(11,15,20,20);
translate(width/2,height/2);
let a=3, b=2+sin(frameCount*0.002)*0.5;
noFill(); stroke(55,227,195,150); strokeWeight(1.5);
beginShape();
for (let t=0; t<TWO_PI*4; t+=0.01) {
let x = sin(a*t+frameCount*0.01) * width*0.38;
let y = sin(b*t) * height*0.38;
vertex(x,y);
}
endShape();
}Pour aller plus loin
Explorez les autres cours gratuits sur la page Apprendre, ou réservez un appel pour discuter de votre projet.
Envie d'aller plus loin ?
Réserver un appel découverte →