Jaap's Puzzle Page

Circle Puzzle Applet

Written by Jaap Scherphuis © 2006-2012.

The program may be freely used or adapted for use on any other website provided that its copyright message remains intact and a link is given to this page, or to Jaap's Puzzle Page. The program may not be sold.

If the applet doesn't work, it may be that you need to install a more recent version of Java. You can go to www.java.com to get it.

   Executable jar file
   source files

Send any comments or suggestions to .

Launch the Circle Puzzles Applet

Circle puzzles are flat puzzles consisting of two or more intersecting disks. The disks are subdivided into pieces, and can rotate which causes the pieces to be permuted. These puzzles are the two-dimensional equivalent of Rubik's Cube type puzzles.

Examples of regular circle puzzles on this site are:

  1. Circle Puzzle / Whirligig
  2. Cohan Circle / Arusloky
  3. Rashkey
  4. Lotica / Turn'Push
  5. Turnstile / Puzzler

There are also several variations on circle puzzles:

  1. Farmland Gear puzzles: Circle puzzles with extra geared wheels inside them
  2. Mad Triad, Rotos: circle puzzles using incomplete disks, i.e. only some of the pieces.
  3. Rotascope: a circle puzzle with bandaged pieces
  4. Battle Gear: a circle puzzle not based on a periodic symmetry of the plane.

Douglas Engel invented several of the puzzles listed above, and wrote the Circle Puzzler's Manual in which many ideas about and variations of circle puzzles are shown.

The applet above allows you to design and play regular circle puzzles. This means any unbandaged circle puzzle that is based on a symmetry group of the plane, such as those on the first list above. Those on the second list are not (yet) supported).

How to use the applet:

The program has three tabs named Grid, Circles, and Play, as well as a File menu.


Here you can choose the regular grid pattern which your puzzle is to be based on. Choose one of the types of grid in the drop-down list at the bottom of the screen. Hover your mouse pointer over the circles. If one of the circles becomes thickly drawn, then you can use your mouse to drag it, making it smaller or larger. Note that only one circle of each type in the repeating pattern will be changable in this way. If you want concentric rings/disks, then you can drag extra circles from the centre point. You can remove a circle by reducing its size to zero through dragging it to the centre. You can zoom in or out with the buttons at the bottom right.


On this screen you can select which disks in the infinite repeating pattern are to be used in your puzzle. Click any circle centre to select or deselect it. If you have a set of concentric circles, then you can can hold down shift while clicking the centre to select which parts are movable and which stay fixed. You can zoom in or out with the buttons at the bottom right.


On this screen you can play with the finished puzzle. Drag any movable piece in the direction you want to move it, and the disk or ring will move. To randomly scramble the pussle, click the Mix button, and to reset it to the solved state click the Reset button.

File menu

The File menu has the following options:
New:Creates a new empty puzzle.
Upload:Uploads your puzzle to the server, sharing it with all other users of this program. A password can be provided so that no one else can edit it.
Download:Downloads any of the available puzzles from the server.

Note that the password protection is rather trivial, so do not use a password that you use anywhere else. Note also that the server file name must consist only of letters, numbers and underscores.

If you run this program as an applet within your browser, then it has limited permissions to change things on your computer. The File menu will then have only the three options above. If you run the program from the executable jar file outside your browser as a stand-alone application, then the File menu will have the following additional options:

Open:Opens a previously saved file.
Save:Saves any changes you have made in the current puzzle.
Save As:Saves the current puzzle to a file, with a file name of your choice.
Exit:Exits the program.

Possible future enhancements


Send any comments or suggestions to .