A kaleidoscope typically has two mirrors set at an angle to each other, so that the sector between the mirrors is repeatedly reflected. Each sequence of reflections produces an image of that sector that is moved, or "transformed" in some way. The collection of all these transformations is called a "group" by mathematicians. This page is about the groups of transformations generated by kaleidoscopes with three mirrors. It introduces an applet which displays the patterns generated by these groups. The applet displays the "fundamental regions" of the groups, and some of the highly symmetrical figures that can be generated by these groups. I hope to add more later.

A kaleidoscope image is two-dimensional, and the geometry we will be looking at is two-dimensional. It might be on a plane, or on the surface of a sphere. The "mirrors" of a real kaleidoscope are represented by their intersections with the surface where the images appear; these intersections are just straight lines, or curves, which somehow define reflections.

A single mirror is a very rudimentary kaleidoscope; it shows the region on one side of the mirror, and its image under the reflection R in the mirror.
The group of this "kaleidoscope" has two elements: R, and the identity transformation E, which makes no change.
The half-planes on the two sides of the mirror are the *fundamental regions* for this group of transformations.

If the kaleidoscope has two mirrors with an angle θ between them, let us call the reflections in the mirrors R_{1} and R_{2}.
The combination R_{1}R_{2} is a rotation through 2θ.
This rotation, and the results of repeating it any number of times, give an ordinary kaleidoscope image its flower-like symmetry about a center.
This image is most coherent when some multiple of 2θ is a full circle; that is,

Mathematicians customarily measure angles in "radians," of which there are 2π in a full circle.

2nθ = 2π

for some n, or θ = π/n.
Commonly sold kaleidoscopes often have n = 3 or n = 4.
Then the **kaleidoscope group**, which consists of the identity transformation E and all combinations of the reflections in the mirrors, is finite; in fact, it has exactly
2n elements.
Likewise, there are 2n fundamental regions: the sector between the mirrors, its image in one of the mirrors, and copies of these two rotated through multiples of 2θ.

Suppose the kaleidoscope has three mirrors, represented by lines on a plane. They enclose a triangle PQR in that plane. Its angles are π/p, π/q, and π/r for some integers (p, q, r). Now these angles must add up to π, which restricts (p, q, r) to a few choices: up to rearrangements, they are (2, 3, 6), (2, 4, 4), and (3, 3, 3). The triangle PQR is a fundamental region for the group, as are all the triangles obtained from it by sequences of reflections. These triangles cover the plane without overlapping; they are sometimes said to "tile" the plane, or to be a "tessellation" of the plane. You can see these, using the applet on this page.

We can get more kaleidoscopes if we change the rules. The most confining one is the rule that the angle sum has to be exactly π. Now spherical triangles have angle sums greater than π. If we take three great circles on a sphere, then they define a spherical triangle. This gives us more choices for (p, q, r): up to rearrangement, they are (2, 2, n) where n ≥ 2, and (2, 3, n) where n is 3, 4, or 5. Each of these choices gives us a tessellation of the sphere; the applet can be used to show them.

Most choices of integers (p, q, r) have 1/p + 1/q + 1/r < 1, so that the angle sum would have to be less than π.
Is there any way we can get a kaleidoscope with those angles?
There is.
But we have to bend the rules quite a bit.
We choose mirrors represented by straight lines or circles.
For the reflection in a circle, we use the geometrical operation called inversion.
This works out nicely: any series of such "reflections" sends the original triangle into another one, bounded by line segments and circular arcs, with the same internal angles.
Given that these internal angles are all π/n for integer n, these triangles fit together neatly, without overlapping. There are infinitely many of them. They are all inside a large circle, and every point inside that circle is in one of these triangles.
This large circle, with all the little triangles inside it, is a model of a figure in hyperbolic geometry.
For this reason, this kind of kaleidoscope, and the associated kaleidoscope group, are called *hyperbolic*.

So, for any (p, q, r), we have a kaleidoscope, and a kaleidoscope group, and a tessellation into fundamental regions of that group.
The kaleidoscope, and its group, may be spherical, Euclidean, or hyperbolic.
There is other geometry to be gotten from the kaleidoscope groups. In particular, the spherical kaleidoscope groups can be used to construct all the
"uniform polyhedra."
These include the five *regular polyhedra*, and also a larger class called the *Archimedean polyhedra*.
When one of these polyhedra is projected onto the sphere containing its vertices, the result is a
uniform tessellation.
Uniform tessellations can be generalized to the Euclidean and hyperbolic kaleidoscope groups.
Besides the uniform tessellations and polyhedra, there are also
dual uniform tessellations
and polyhedra.

The applet on this page displays tessellations defined by a kaleidoscope group, for any choice of (p, q, r) within a certain range. To choose values of p, q, and r, use the pop-up menus at the left. Below the menus for "P", "Q", and "R" you can choose whether to see the fundamental regions or one of the uniform tessellations or polyhedra. You can change the color scheme by clicking on the color patches at the right of the display.

P:

Q:

R:

This is a spherical kaleidoscope. To rotate the display, grab a point on it with the mouse cursor and drag it.

This is a Euclidean kaleidoscope.

This is a hyperbolic kaleidoscope. You can select what kind of point
to place at the center, with this pop-up menu.
P, Q, and R stand for the corners of the fundamental triangle; PQ
stands for a point on the arc PQ, etc.; and PQR stands for a point
inside the triangle.

Use this menu to select the Wythoff symbol for a uniform
tessellation: