Après la trituration de mon programme générateur de plante, j’ai réussi à obtenir ça :
| donne | ![]() |
C’est une représentation d’un L-systems crée par Hogeweg and Hesper. Pour plus d’informations sur ce genre de technique, je vous invite à lire The Algorithmic Beauty of Plants, un livre qu’il est intéressant de le lire.
Le principe de base du L-System est de partir d’une base (ici défini par la ligne begin), et d’appliquer un jeu de règles simples. Par exemple si un symbole A est précédé d’un autre symbole A et suivi d’un symbole B, alors ce symbole sera remplacé par : B[-F B F B] . Si un symbole + est rencontré il sera transformé en symbole -. Les symboles +,- et F ne sont exclus pour les tests de “contexts”. On fait tourner le système 30 fois et on interprète :
- F : on affiche une ligne blanche
- + : on tourne la tête d’écriture vers la gauche.
- - : on tourne la tête d’écriture vers la droite.
- [ : on commence une branche (qu'on arrête avec ']‘)
- A, B : on ne fait rien
En changeant certains symboles on peut aussi faire des arbres en 3D, ici seul un rendu en 2 dimensions a été fait, pour débugguer.