Flocon de Koch (projet)


L’objectif est de dessiner en VBScript/VBS_gfx, le flocon de neige imaginé en 1904 par le mathématicien suédois Helge von Koch. Il s’agit d’un objet fractal qui présente une autosimilitude parfaite, contrairement à l’ensemble de Mandelbrot où les minibrots sont légèrement déformés.


Jalon 1 : procédé de Koch

Dans le fichier “Nouveau.vbs”, effectuez les opérations suivantes :

•  Tirer au sort deux pixels A et B de coordonnées (xA ; yA) et (xB ; yB)
•  Déterminer les coordonnées des points C et D tels que AC = CD = DB
•  Déterminer les coordonnées du point E tel que le triangle CDE soit équilatéral direct
•  Tracer la ligne polygonale ACEDB.


Déplacez les points A et B dans l’applet Java ci-dessous pour visualiser ce qui est demandé :


Coloriez la ligne polygonale du chaud au froid pour vérifier son orientation, puis envoyez-moi votre premier jalon.

Attendez ma validation pour passer à la suite.



Jalon 2 : courbe de Koch

Il s’agit d’itérer récursivement le procédé de Koch en prenant comme condition de sortie la profondeur d’itération.

Dans un nouveau script, créez une procédure Koch qui s’appelle elle-même :

Sub Koch (xA, yA, xB, yB, ByVal profondeur)
Si la profondeur est nulle, alors :
Tracer le segment [AB]
Sinon :
Décrémenter la profondeur d’itération
Déterminer les coordonnées des points C, D et E
Appeler Koch pour chaque segment de la ligne polygonale ACEDB
End Sub

Il ne restera plus qu’à invoquer Koch -300, 0, 300, 0, 9 dans le code principal pour faire apparaître une approximation de la courbe de Koch :




Jouez sur l’argument de profondeur (0, 1, 2, 3, …) pour vérifier la cohérence de la récursion, puis envoyez-moi votre deuxième jalon.



Jalon 3 : flocon de Koch

Reproduisez précisément le grand flocon principal ci-dessous (le décor de saison n’est pas demandé) :





Éléments du projet à rendre :

  – un compte-rendu manuscrit du jalon 1 avec démonstration des formules de rotation ;
  – par Internet, la totalité du script final réglé pour afficher le grand flocon de Koch ci-dessus ;
  – imprimé en relief syntaxique, le même script sans la passerelle graphique.

Bonnes récursions !

Philippe Haubenestel