Spirale logarithmique¶
La mosaïque au bouclier est exposée au musée archéologique de Saint-Romain-en-Gal. Un esprit mathématique y reconnaîtra des spirales logarithmiques. J’ai voulu les reproduire en \(\LaTeX\).
Fig. 19 Photo de la « Mosaïque au Bouclier », au musée de Saint-Romain-en-Gal.¶
Le résultat est là :
Quelques explications¶
Remarquons tout d’abord que la « spirale » est en fait constituée de segments de droite. Cela rend la figure plus facile à tracer, puisqu’il n’y a alors que des segments et des arcs de cercle.
Rappelons qu’une spirale logarithmique est caractérisée par l’équation \(r = a\times b^{\theta}\), où \((r; \theta)\) sont les coordonnées polaires des points de la spirale. Pour simplifier, nous prenons ici a=1 et b=1,02 (les deux valeurs sont arbitraires, fixées en tatonnant pour simplifier les calculs, et pour donner à notre figure les mêmes « proportions » que la mosaïque).
Commençons par tracer un « triangle », composé d’un arc de cercle et de deux segments. Les coordonnées polaires des trois points sont les suivantes, où :
\(\theta\) est « l’angle de départ » du triangle ;
\(\delta\) est la « largeur » (en degrés) du triangle (faire varier cette valeur change le nombre de répétitions du triangle par cercle).
Puis nous répétons ce motif tout autour du cercle. Cela se fait en ajoutant \(delta\) autant de fois que nécessaire, à l’angle des coordonnées, mais pas à l’argument du rayon.
Cela donne un cercle complet de « triangles ».
Pour faire le cercle suivant, on répète le processus, en prenant comme angle de départ \(\theta+\frac{\delta}{2}\), et ainsi de suite, autant de fois que de cercles souhaités.
Code source¶
Tout cela a été placé dans une macro qui dessine un seul triangle, qui est appelée plusieurs fois avec deux boucles, l’une qui répète un triangle sur un cercle, et l’autre qui répète un cercle avec un rayon plus grand.
% Copyright 2025 Louis Paternault
%
% This work may be distributed and/or modified under the following licences.
%
% LaTeX Project Public Licence
% ----------------------------
%
% This work may be distributed and/or modified under the
% conditions of the LaTeX Project Public License, either version 1.3
% of this license or (at your option) any later version.
% The latest version of this license is in
% http://www.latex-project.org/lppl.txt
% and version 1.3 or later is part of all distributions of LaTeX
% version 2005/12/01 or later.
%
% Creative Commons by-sa 4.0
% --------------------------
%
% This work may be distributed and/or modified under the
% conditions of the Creative Commons Attribution-ShareAlike 4.0 International
% (CC BY-SA 4.0). The full text of this license is in
% https://creativecommons.org/licenses/by-sa/4.0/
% Compile using LuaLaTeX
%$ lualatex $basename
\documentclass[tikz]{standalone}
\newcommand{\logtriangle}[4]{%
% #1 : angle de départ
% #2 : largeur des triangles (en degrés)
% #3 : base de la spirale
% #4 : offset
\draw[fill=black, thick]
({#1 + #4}:{pow(#3, #1)}) arc
({#1 + #4}:{#1+#2+#4}:{pow(#3, #1)}) --
({#1 + #4 + .5 * #2}:{pow(#3, #1 + .5 * #2)}) --
cycle;
}
\begin{document}
\begin{tikzpicture}
\fill[white] (0, 0) circle ({pow(1.02, 186)});
\foreach \j in {0, 1, ..., 30} {
\foreach \i in {0, 12, ..., 360} {
\logtriangle{\j * 6}{12}{1.02}{\i}
}
}
\end{tikzpicture}
\end{document}