Creating a Tessellated Hyperbolic Disk with Tikz

A small example with tikz. It should be possible to simplify more, but I do not know the guideline to place the smaller circles (centers, radii, angles, etc.).

\documentclass[border=2mm]{standalone}
\usepackage{tikz}

\begin{document}
\begin{tikzpicture}
  \draw[very thick] (0,0) circle (4);  
  \begin{scope}
    \clip (0,0) circle (4);
    \foreach\i in {0,72,...,360}
    {
      \draw (\i:5)       circle (4);
      \draw (\i+12:5)    circle (2);
      \draw (\i-12:4.5)  circle (1.5);
      \draw (\i+36:4.25) circle (1);
    }
  \end{scope}
\end{tikzpicture}
\end{document}

EDIT: Another code, following Andrew Stacey suggestion. Now the circles meet each one perpendicularly, I think.

\documentclass[border=2mm]{standalone}
\usepackage{tikz}

\def\R{4}
\newcommand{\mycircle}[2] % radius, angle
{
  \pgfmathsetmacro\d{sqrt(\R*\R+#1*#1)};
  \draw(#2:\d) circle (#1);
}

\begin{document}
\begin{tikzpicture}
  \draw[very thick] (0,0) circle (\R);  
  \begin{scope}
    \clip (0,0) circle (\R);
    \foreach\i in {0,72,...,360}
    {
      \mycircle{5}{\i}
      \mycircle{1.55}{\i+12};
      \mycircle{1.55}{\i-12};
      \mycircle{0.8}{\i+36};
      \mycircle{0.8}{\i-36};
    }
  \end{scope}
\end{tikzpicture}
\end{document}

enter image description here


A template in PSTricks only for emergency, fun, and comparison purposes. You just need to figure out how to specify mathematically the location of the smaller circles on the big one (or probably not on it).

\documentclass[pstricks,border=12pt]{standalone}

\begin{document}
\begin{pspicture}(-5,-5)(5,5)
    \psclip{\pscircle{5}}
        \foreach \a in {0,30,...,330}{\pscircle(5;\a){2}}
    \endpsclip
\end{pspicture}
\end{document}

enter image description here

Tags:

Tikz Pgf