Origine : Fermat, une spirale et un tournesol
Pierre de Fermat (1601 ?–1665) est magistrat, conseiller au parlement de Toulouse à partir de 1631. Les mathématiques sont pour lui une passion d'amateur : il ne publie presque rien et expose ses résultats dans des lettres à ses correspondants, souvent sans démonstration. Son œuvre compte pourtant parmi les plus importantes de son siècle :
- une géométrie analytique, qui traduit les courbes en équations, dont le manuscrit circule dès 1636, avant La Géométrie de Descartes (1637) ;
- une méthode de recherche des maxima, des minima et des tangentes qui annonce le calcul différentiel ;
- les fondements du calcul des probabilités, dans sa correspondance avec Pascal en 1654 ;
- en optique, le principe selon lequel la lumière suit le chemin le plus rapide ;
- en théorie des nombres, le célèbre « dernier théorème », noté en marge de son exemplaire de l'Arithmétique de Diophante (« j'en ai trouvé une démonstration merveilleuse que cette marge est trop étroite pour contenir »). Il ne sera démontré qu'en 1994, par Andrew Wiles.
La spirale. En 1636, dans une lettre au père Marin Mersenne, Fermat étudie une spirale dont le rayon croît comme la racine carrée de l'angle, r = a·√θ, appelée aussi spirale parabolique. Ce qui l'intéresse est une question d'aires : l'aire comprise entre deux tours successifs de la spirale est toujours la même. Il n'est question ni de plantes ni de graines.
Le tournesol, trois siècles plus tard. En 1979, le mathématicien Helmut Vogel publie un modèle simple du cœur du tournesol : la graine n est placée à l'angle n × 137,5° (l'angle d'or) et à la distance √n du centre. Les graines se trouvent alors sur une spirale de Fermat, et la propriété d'aires égales découverte par Fermat devient exactement ce qui donne aux graines une densité uniforme. C'est le calcul utilisé dans ce programme.
Les noms. Spira signifie « spirale » en latin : la forme que l'on retrouve dans les plantes, les coquillages, et dans la courbe de Fermat. Le sous-titre Fermat's Nightmare (le cauchemar de Fermat) est un clin d'œil, pas un fait historique. D'abord, le nom de Fermat est aujourd'hui associé aux tournesols, un sujet qui lui était étranger. Ensuite, sa spirale ne produit l'ordre du tournesol qu'à l'angle d'or : dès qu'on s'en écarte, les graines s'alignent en rayons et en bras, ce que le programme permet d'explorer.
Organisation des réglages
Les réglages suivent l'ordre de fabrication du motif. Chaque groupe ne dépend que de ceux qui le précèdent : modifier un groupe ne remet jamais en cause les groupes situés au-dessus.
- 1. Modèle : l'angle, le nombre de points et la taille de la spirale. C'est le motif mathématique, indépendant du support. L'animation de s sert à l'explorer.
- 2. Panneau : le brut, c'est-à-dire contour, cotes, épaisseur et marge de bord. Le Voronoï des points est découpé par ce contour.
- 3. Style : comment chaque cellule devient un usinage (ajouré lissé, poches étagées ou membranes lestées), à savoir forme des cellules, paroi et fraise, relief.
- 4. Affichage : rendu et superpositions de la vue 2D. Ne modifie jamais la pièce.
- 5. Exports : finesse du maillage 3D et fichiers.
Chaque groupe se replie d'un clic sur son titre ; l'état est mémorisé dans ce navigateur. Le bouton « Tout réinitialiser », en tête du groupe Modèle, remet tous les réglages à leurs valeurs par défaut, y compris le rendu et les superpositions.
Les points : une spirale de Fermat
C'est un modèle de phyllotaxie, le même que celui de Vogel (1979) pour les graines de tournesol. Chaque point n, de 0 à N−1, est placé en coordonnées polaires :
θₙ = n · α angle en degrés, modulo 360
rₙ = R · √n / √(N−1) rayon ; le dernier point tombe à R
α = s^0,8 / 1,2 angle de divergence
Le rayon en √n répartit les points uniformément. L'aire du disque de rayon rₙ vaut πrₙ², donc elle croît comme n. Chaque nouveau point ajoute la même aire, environ πR²/N. La densité est constante du centre au bord, d'où des cellules de Voronoï de taille homogène au cœur du motif. Avec un rayon proportionnel à n, on obtiendrait une spirale d'Archimède dont les points s'écartent vers l'extérieur.
L'angle α fait la forme
Chaque point est tourné de α par rapport au précédent, toujours du même angle.
- α = 360·p/q, fraction simple de 360° : les points retombent sur q rayons droits. 180° donne 2 rayons, 120° en donne 3, 144° (2/5) en donne 5. Ce sont les « cauchemars » : des bras radiaux séparés par de grands vides.
- α proche d'une fraction : les q rayons se courbent lentement en q bras spiralés. 137,14° vaut exactement 360·8/21 et donne 21 rayons droits, bien qu'à 0,37° seulement de l'angle d'or. À 137,3°, ces 21 rayons se courbent en bras.
- α = 137,508°, l'angle d'or = 360·(1 − 1/φ). C'est l'irrationnel le plus difficile à approcher par une fraction : son développement en fraction continue ne contient que des 1. Aucun alignement ne se forme et le remplissage est le plus serré possible. L'œil ne voit que des spirales croisées en nombres de Fibonacci (8, 13, 21, 34…).
Essayer (le guide se ferme et le motif se met à jour) :
Pour voir les germes eux-mêmes, cochez « Points calculés » dans Affichage › Superpositions.
Le paramètre s et la sensibilité du motif
s n'est qu'un changement d'échelle du curseur. La relation α = s^0,8 / 1,2 ne change rien à la géométrie : seul α compte, et le champ « angle α » permet de le saisir directement. L'angle d'or correspond à s ≈ 591,41. Autour de cette valeur, une unité de s vaut environ 0,19°.
Ajustement α. Le curseur s parcourt toute la gamme : un pixel de curseur y représente déjà plusieurs dixièmes de degré. « Ajustement α » ajoute de −1° à +1° à l'angle donné par s, par pas de 0,0005°. On fixe un motif avec s, puis on explore son voisinage sans perdre cette position. Saisir s ou α directement remet l'ajustement à zéro.
L'écart d'angle s'accumule avec n. Au point n, il vaut n·Δα. Avec N = 110, un écart de 0,1° seulement décale le dernier point de 11°. C'est pourquoi une petite variation de s transforme le bord du motif en laissant le centre presque intact, et pourquoi l'animation montre des bras qui apparaissent puis se dissolvent.
Rendus 2D
Éclairage. Les réglages « Lumière » du bandeau supérieur s'appliquent aux rendus matière et à la vue 3D : direction de la lumière vue de dessus (0° = droite, 90° = haut, 180° = gauche ; 129° par défaut, en haut à gauche), hauteur au-dessus du panneau (5° = rasante, qui accentue le relief ; 90° = au zénith), intensité de la lumière directe (modelé, reflets) et de la lumière d'ambiance (qui débouche les ombres). « Tout réinitialiser » les remet à leurs valeurs par défaut.
Le menu « Rendu » change seulement l'image : la géométrie et les exports restent les mêmes. Les rendus matière calculent le relief (arrondi, fonds de poche), l'éclairage et les ombres portées. Le bouton « Image PNG » enregistre le rendu affiché, en 2400 pixels sur le plus grand côté.
- Standard : relief noir et blanc pour l'ajouré lissé, teinte par profondeur pour les poches étagées.
- Contours : traits seuls, pour vérifier la géométrie.
- Érable sur mur sombre, Noyer sur mur clair : bois veiné, fil horizontal. Le panneau est vu accroché à 3 mm du mur, qui reçoit son ombre à travers les ajours.
- Laiton brossé : métal sur velours noir, reflets sur les arrondis.
- Vitrail : les parois deviennent le plomb, chaque trou un verre (rubis, cobalt, émeraude, ambre, améthyste…), plus lumineux au centre.
- Parastiches : fait voir les spirales que l'œil devine. Les cellules n, n+q, n+2q… s'alignent sur une même spirale ; elles reçoivent la même couleur et les spirales voisines alternent. Le q automatique est le dénominateur de la meilleure fraction approchant α/360 adaptée au nombre de points : 13 ou 21 à l'angle d'or, exactement le nombre de rayons pour une fraction simple. Essayez q = 8, 13, 21, 34 : chaque nombre de Fibonacci montre une autre famille.
- Lignes de niveau : courbes d'égale distance au trou le plus proche, comme une carte topographique. L'équidistance s'adapte au zoom (indiquée en bas à gauche) ; une ligne sur cinq est renforcée. Pour les poches, la teinte bleue fonce avec la profondeur.
- Plan technique : fond bleu, quadrillage 10 et 50 mm, cotes d'encombrement et cartouche des réglages. Les trous retouchés au rayon de fraise et les poches traversantes sont en bleu clair.
Fabrication
Toutes les cotes sont en millimètres.
| Fichier | Usage |
| DXF | Contournage des trous ou poches. Ajouré lissé : calques CADRE, TROUS, TROUS_RETOUCHES, POINTS. Poches étagées : un calque par profondeur, contours en vrais arcs. Membranes lestées : calques CONTOUR, MEMBRANES, POINTS. |
| 3MF | Volume 3D étanche, unité inscrite dans le fichier. À préférer au STL. |
| STL | Même volume, sans unité. À l'import, choisir « Millimètre ». |
| SVG | Plan 2D dimensionné en mm, pour découpe laser ou documentation. |
| PNG | Image du rendu 2D choisi (bouton « Image PNG »), pour présenter le projet. |
| JSON | Tous les réglages de la pièce. Relu par « Charger JSON » (ou glissé sur la page) pour retrouver la pièce, et par spira.py --params pour produire le STEP. |
| CSV | Coordonnées des germes. |
Unités dans Fusion 360. Fusion lit un STL en centimètres par défaut : une pièce de 100 mm arrive à 1000 mm. Utilisez le 3MF, ou choisissez « Millimètre » dans Insérer > Insérer un maillage. À l'insertion d'un DXF, vérifiez aussi l'unité proposée.
Gamme suggérée pour l'ajouré lissé. Contournage intérieur des trous à travers, à la fraise du diamètre réglé, depuis le DXF. Puis l'arrondi des chants, au choix : fraise quart-de-rond de rayon ρ (simple, forme identique hors zones en tube) ou finition 3D à la fraise boule sur le 3MF (reproduit aussi les tubes).
Gamme suggérée pour les membranes lestées. Ébauche en poche dans les contours du calque MEMBRANES, à la profondeur maximale, puis finition 3D à la fraise boule sur le 3MF, en passes parallèles à pas latéral fin. Le DXF ne porte que les contours : la surface est dans le 3MF et le STL.
Réglage « maillage ». Espacement des sommets du volume 3D : 1 mm suffit à l'écran, 0,5 mm est conseillé pour la FAO. Le fichier grossit en conséquence.
Dépannage
- Cellules écartées (barre du bas) : la cellule est plus petite que la fraise plus la paroi, ou hors du cadre. Réduisez la fraise ou la paroi, ou diminuez N.
- Beaucoup de trous retouchés : la fraise est grande devant les cellules. Ce n'est pas une erreur, mais les pointes des trous s'arrondissent davantage.
- Triangulation impossible en 3D : deux contours se touchent presque. Augmentez la marge ou la paroi.
- Vue 3D lente : augmentez le réglage « maillage », puis repassez à 0,5 mm avant l'export.
- Animation inactive : elle n'est disponible qu'en vue 2D, car en 3D chaque image demanderait un nouveau maillage.