Contexte et objectifs
Le premier générateur d’Iron Arachne créait des écus en sélectionnant aléatoirement des éléments graphiques (lions, aigles, croix, épées, fleurs, couronnes). Cette approche produit des images vaguement heraldiques mais ne respecte aucune règle historique. L’objectif du nouvel algorithme est de modéliser la tradition héraldique comme un système formel afin de générer des identités visuelles cohérentes et reproductibles.
Architecture basée sur le blazon
En Europe, le blazon constitue une langue contrôlée capable de décrire un blason. Exemple minimal :
Azure, a lion rampant Or Le champ (field) est bleu (azure) et le charge (lion) est or, en posture « rampant ». Cette phrase suit une grammaire stricte : vocabulaire limité, morphologie définie, syntaxe ordonnée. Un générateur peut d’abord produire un arbre syntaxique abstrait (AST) représentant le blazon, puis le transformer en scene graph pour le rendu SVG. L’utilisation d’enum et de tagged union dans le code assure que chaque nœud de l’AST ne prend que les valeurs permises (tincture, charge, attitude). Le processus se déroule en trois étapes : (1) sélection aléatoire mais contrainte de symboles via un finite state machine qui garantit la validité de la séquence, (2) construction de l’AST, (3) traversée du graphe pour générer du SVG. Cette architecture permet de réutiliser le même blazon avec plusieurs moteurs de rendu, produisant des styles graphiques différents tout en conservant l’identité sous‑jacente.Approche des mon japonais
Les mon (ou kamon) n’ont pas d’équivalent du blazon. Leur identité repose sur un vocabulaire visuel compact (plantes, animaux, astres, outils, formes géométriques) et sur des motifs de composition reconnaissables. Le mon le plus célèbre, le Tokugawa mitsuba aoi, combine trois feuilles stylisées disposées radialement. Au lieu de générer une description textuelle, le générateur doit choisir un motif de base, appliquer des règles de symétrie (rotation, réflexion) et placer les éléments selon des patrons pré‑définis. Cette méthode implique un corpus de motifs historiques et un grammar de composition qui ne repose pas sur une langue verbale mais sur des contraintes géométriques. Le rendu se fait directement en SVG à partir d’un arbre de scène construit à partir des motifs sélectionnés.
Implications et limites
Le modèle blazon‑first offre une extensibilité claire : ajouter une nouvelle tincture ou un nouveau charge ne nécessite que la mise à jour de l’énumération et de la grammaire, sans toucher au moteur de rendu. En revanche, il impose une courbe d’apprentissage pour les utilisateurs non familiers avec la terminologie héraldique. Le modèle mon‑first, plus visuel, simplifie la création pour les designers mais limite la génération combinatoire, car le nombre de combinaisons valides dépend fortement du nombre de motifs de base et des règles de composition. Aucun des deux systèmes ne résout le problème de la cadence (distinction des branches familiales) ou du marshalling (combinaison d’armoiries) de façon native ; ces extensions nécessitent des modules supplémentaires. Enfin, les deux approches partagent la contrainte de produire du SVG, format texte qui facilite le stockage, la modification et l’interopérabilité avec les pipelines de design web.