Générateur d'étoiles
Voici le tout premier article co-écrit avec Marie !
Tout a commencé quand j’ai vu ma fille Marie, 4 ans, dessiner des étoiles à 4 branches. J’ai voulu généraliser le processus et dessiner des étoiles à $N$ branches.
J’ai ainsi calculé les coordonnées des points de l’étoile. Marie a choisi l’épaisseur du trait, ses couleurs ainsi que les paramètres de vitesse.
Pour construire notre étoile, nous partons de deux cercles concentriques de rayon $r_1$ et $r_2$ ($r_2 \leq r_1$). Sur le cercle externe, nous disposons $N$ points équirépartis, c’est-à-dire séparés par une ouverture angulaire de $\theta = 2\pi/N$, qui seront les pointes de l’étoile. Nous disposons de même $N$ points équirépartis sur le cercle interne mais avec un déphasage supplémentaire de $\theta/2 = \pi/N$.
Pour les pointes de l’étoile, nous avons ainsi :
\[\left\{ \begin{align} x_k &= r_1 \cdot \cos (k \times \theta)\\ y_k &= r_1 \cdot \sin (k \times \theta)\\ \end{align}\right.\]Et pour les “creux” :
\[\left\{ \begin{align} x_k &= r_2 \cdot \cos (k \times \theta + \theta/2)\\ y_k &= r_2 \cdot \sin (k \times \theta + \theta/2)\\ \end{align}\right.\]Nous avons également rajouté un déphasage qui augmente avec le temps afin de faire tourner l’étoile sur elle-même.
Dans l’animation ci-dessous :
- les touches
a
etz
du clavier changent le rayon interne de l’étoile - les touches
q
ets
du clavier changent le nombre de branches - les touches
w
etx
du clavier changent la vitesse de rotation
En jouant avec les paramètres de l’étoile, nous avons pu reconstruire :
- un triangle, pour $N=3$ et un ratio $r_2/r_1$ adapté
- un carré, pour $N=4$ et un ratio $r_2/r_1$ adapté
- un pentagone, un hexagone, un octogone
- un rond (approché) lorsque $N$ est grand et que $r_1 = r_2$
Y-arriverez-vous de votre côté ?