Un arbre entier tenu dans une seule règle
Cet arbre n'est stocké nulle part. Je ne conserve pas la liste de ses branches, je conserve la règle qui les engendre : « une branche se scinde en deux sous-branches, chacune tournée d'un angle ± θ et raccourcie d'un facteur d'échelle ». Appliquée à elle-même, encore et encore, cette phrase unique suffit à faire pousser tout le feuillage. C'est le principe d'un système de Lindenmayer (L-système), formalisé par le biologiste Aristid Lindenmayer pour décrire la croissance des plantes.
La récursivité fait tout le travail
La fonction qui dessine une branche se termine en s'appelant deux fois elle-même, une fois pour chaque enfant, avec une longueur réduite et un angle incliné. Chaque appel replonge d'un niveau, jusqu'à une profondeur limite qui arrête la descente. C'est un cas d'école de récursivité : un problème visuellement complexe résolu par une poignée de lignes, parce que le sous-arbre gauche et le sous-arbre droit se traitent exactement comme l'arbre entier.
L'angle et le ratio dessinent l'espèce
Deux nombres suffisent à changer radicalement la silhouette. L'angle de branchement θ écarte plus ou moins les rameaux : resserré, l'arbre file vers le ciel comme un peuplier ; ouvert, il s'étale en boule comme un chêne. Le ratio de longueur, lui, décide de la vitesse à laquelle les branches maigrissent — un ratio proche de 1 donne un arbre dense et profond, un ratio faible un arbuste trapu. Déplacez la souris : l'axe horizontal règle l'angle, l'axe vertical la profondeur, et vous parcourez toute une flore d'un seul geste.
Un souffle de vent par une sinusoïde
Pour que l'arbre respire, j'ajoute à chaque angle une petite oscillation qui varie dans le temps : une sinusoïde, doublée d'une seconde de fréquence différente pour casser la régularité et imiter le bruit du vent réel. Surtout, l'amplitude croît avec la profondeur — le tronc reste stable, les rameaux fins frémissent. Ce simple dégradé d'inertie, de la base vers la cime, suffit à transformer un dessin figé en quelque chose de vivant.
Ce que je retiens pour vos projets
Un arbre foisonnant né d'une règle de trois lignes, c'est exactement la démarche que j'applique à un système d'entreprise : trouver la bonne abstraction, celle qui capture le motif répété plutôt que d'énumérer chaque cas à la main. Un code qui se ramifie proprement à partir d'un principe clair reste lisible, testable et facile à faire évoluer — là où une accumulation de cas particuliers finit toujours par étouffer. La complexité maîtrisée ne s'ajoute pas : elle se déduit d'une règle simple, bien posée.