An implementation of all 17 plane symmetries in TikZ. With the orbifold signature these are the following:
*632 | *442 | *333 | *2222 | ** |
2*22 | *x | |||
4*2 | 3*3 | 22* | ||
22x | xx | |||
632 | 442 | 333 | 2222 | o |
For their meaning and more pretty pictures see "The Symmetries of Things" by John H. Conway, Heidi Burgiel and Chaim Goodman-Strauss.
A brief comment about the orbifold signature: A number n before * represent a gyration point of order n, thus in 632 we have three effectively distinct points with respective orders 6, 3 and 2. Each * represents a kaleidoscope, a kaleidoscope which is not followed by a number is a mirror, a following number n represent a point where n mirror lines cross. Thus, in *333 we have a kaleidoscope with 3 different points, in each one, there are crossing 3 mirrors. In 4*2 we have a gyration point of order 4, the four neighbour point are actually the same point, a point where 2 mirrors cross. The x is called a miracle and represent a reflection which cannot be explained by a mirror line. Finally, the o is called a wonder and represents translations which are not explained by any previous symbol.
See also Orbifold notation (Wikipedia).
Do you have a question regarding this example, TikZ or LaTeX in general? Just ask in the
LaTeX Forum.
Oder frag auf Deutsch auf TeXwelt.de.
En français: TeXnique.fr.
% Symmetries of the plane% Author: Cristóbal Camarero Coterillo\documentclass[a4paper, 12pt, landscape]{article}\usepackage[utf8]{inputenc}\usepackage{textcomp}\usepackage{tikz}\usetikzlibrary{shapes,calc,decorations.pathmorphing,decorations.fractals}\usepackage[bookmarks=true]{hyperref}%landscape tuning\setlength{\oddsidemargin}{0in} % default=0in\setlength{\textwidth}{9in} % default=9in\setlength{\columnsep}{0.5in} % default=10pt\setlength{\columnseprule}{1pt} % default=0pt (no line)\setlength{\textheight}{5.85in} % default=5.15in\setlength{\topmargin}{-0.15in} % default=0.20in\setlength{\headsep}{0.25in} % default=0.35in\setlength{\parskip}{1.2ex}\setlength{\parindent}{0mm}%PDF Settings\newcommand\titulo{Symmetries of the plane}\newcommand\autor{\href{http://www.alumnos.unican.es/ccc66} {Cristóbal Camarero Coterillo}}\hypersetup{ %bookmarks=true, % show bookmarks bar? unicode=false, % non-Latin characters in Acrobats bookmarks pdftoolbar=true, % show Acrobats toolbar? pdfmenubar=true, % show Acrobats menu? pdffitwindow=true, % page fit to window when opened pdftitle={\titulo}, % title pdfauthor={\autor}, % author pdfsubject={symmetries of the plane in tikz}, % subject of the document pdfnewwindow=true, % links in new window pdfkeywords={plane,symmetry,orbifold},% list of keywords pdfpagemode=None, % avoid auto open bookmarks colorlinks=false, % false: boxed links; true: colored links linkcolor=red, % color of internal links citecolor=green, % color of links to bibliography filecolor=magenta, % color of file links urlcolor=cyan % color of external links}\begin{document}\newsavebox{\piece}%A TeX box to store the base tile (or orbifold)\clearpage%*632\phantomsection\addcontentsline{toc}{chapter}{*632}%Add to PDF bookmarks\savebox{\piece}{%We create the base tile\begin{tikzpicture}[overlay]\node[star,draw=red!50!black,inner sep=1pt] at (0.7,0.3) {};\node[red,anchor=base] at (0.55,0.05) {\tiny $*632$};\draw[thin] (0,0) -- ++(0:1) -- ++(120:0.5) --cycle;\end{tikzpicture}}\begin{center}%We replicate the tile according to the symmetry\begin{tikzpicture}[every node/.style={anchor=center,draw=none}]%The \i loop creates a supertile which can tile by translations%which is done by the \a and \b loops \foreach \a in {0,...,7} \foreach \b in {0,...,7} \foreach \i in {0,1,2,3,4,5} { \path (0,0) ++(0:\a) ++(60:\a) ++(0:\b) ++(-60:\b) node[rotate=\i*60] {\usebox{\piece}} node[rotate=\i*60,yscale=-1] {\usebox{\piece}}; }\end{tikzpicture}\end{center}\clearpage%632\phantomsection\addcontentsline{toc}{chapter}{632}\savebox{\piece}{%\begin{tikzpicture}[overlay]\node[blue] at (0.3,0.4) {\tiny 632};\draw[thin] (0,0) -- ++(0:1) -- ++(120:1) --cycle;\end{tikzpicture}}\begin{center}\begin{tikzpicture}[every node/.style={anchor=center,draw=none}] \foreach \a in {0,...,8} \foreach \b in {0,...,8} \foreach \i in {0,1,2,3,4,5} { \path (0,0) ++(0:\a) ++(60:\a) ++(0:\b) ++(-60:\b) node[rotate=\i*60] {\usebox{\piece}}; }\end{tikzpicture}\end{center}\clearpage%*442\phantomsection\addcontentsline{toc}{chapter}{*442}\savebox{\piece}{%\begin{tikzpicture}[overlay]\node[arrow box,arrow box arrows={south:0.5cm,west:0.5cm},draw=red!50!black,inner sep=4pt] at (0.8,0.8) {};\node[red,anchor=base] at (0.4,0.05) {\tiny $*442$};\draw[thin] (0,0) -- ++(0:1) -- ++(90:1) --cycle;\end{tikzpicture}}
Comments
very interesting!! :)
Adding comments is currently not enabled.