This is documentation for Mathematica 5.2, which was
based on an earlier version of the Wolfram Language.
View current documentation (Version 11.2)

Spirographs with Mathematica

A Simple Spirograph

Imagine a wheel rolling around a second wheel that is rolling around another wheel and so on. A point on the rim of the outermost wheel will trace an interesting curve in the plane.

Let the radius and angular frequency of the  wheel be  and  . The point will be at the position  in the complex CurlyPhi-plane. The function Spirograph generates a picture of the path of the point.

Here are a few examples.

Coloring Spirographs

We color the successive line elements of a spirograph to see how the point moves as a function of time. The function ColorLine colors curve starting from red and going through yellow, green, and blue and then back to red. The object curve is extracted from the output of the function Spirograph and manipulated just like any Mathematica expression.

Here is a coloring of the second spirograph we drew above.

The next picture shows a collection of randomly generated colored spirographs.

Animating a Spirograph Construction

The function SpirographAnimation generates an animation that shows the circles and the trace of a point on the outermost circle.

Here is an animation of the first spirograph that we drew.

Double click the picture to see the animation.

A Maurer Spirograph

We can enhance our spirograph pictures using an idea of Maurer (1989).

Assume that we have a closed parametrized curve in the plane. Find the points  on the curve corresponding to a division of the parameter domain into  parts, where  and  are positive integers. The   -sided Maurer polygons are formed by joining the points  .

Here is a spirograph picture.

Here is a set of Maurer polygons for this curve.

Again, we can color the polygons with a function ColorPolygons.

The function ColoredMaurerSpirograph shows the spirograph picture with one of the sets of Maurer polygons.

An Historical Application of Spirographs

Spirographs had an important application in the 1940s, when they were used for the "manual" solution of polynomial equations of higher degree. To understand this, let us consider the following polynomial ScriptPScriptOScriptLScriptY in the variable z.

We replace the variable z by its polar form,  , where r and CurlyPhi are the absolute value and phase or argument of z.

We show the spirographs for a range of values of r.

Let us zoom to a neighborhood of the origin.

Here is an even closer look.

These are absolute values and arguments of the zeros of the polynomial.

The spirograph curves corresponding to these absolute values all go through the origin.

An analog circuit was used to vary  and the corresponding spirographs were monitored using an oscilloscope. Further analysis to determine CurlyPhi led to approximations of the zeros of the polynomial.