What is a Flexagon?

A Flexagon is a fun little paper toy that can display images in sequence. The flexagons on this site are 6 sided, so they're actually called Hexaflexagons, but save on digital ink we'll just call them flexagons.

There are 2 types of flexagons on this page. There are the 2 dimensional/3 image flexagons and the 3 dimensional/4 image flexagons. Neither is difficult to assemble, but the 2D version is a little less intimidating the first time around. All you need is a printer, a pair of scissors and some glue or tape.

Download one of the flexagons below and follow the animated instructions. Once you have the technique down you can use the generate page to make your own custom flexagons.

2D Flexagons

Here is a small and large black and white 2D flexagon. Here is a small and large color 2D flexagon.

Copy the image to your computer, print it out and follow these animated instructions.

  1. Print, cut out, and center fold.
  2. Mountain crease the left to right diagonals.
  3. Vally crease the right to left diagonals.
  4. Fold the pieces in to shape and glue/tape the head to the tail.
  5. Flex your brains out.

3D Flexagons

Here is a small and large black and white 3D flexagon. Here is a small and large color 3D flexagon.

Here are the steps for assembling a 3D flexagon. Each step links to an animation.

  1. Print and cut out a flexagon.
  2. Mountain crease the left to right diagonals.
  3. Mountain crease the right to left diagonals.
  4. Valley crease the horizontal folds.
  5. Rotate the horizontal creases back to make the flexagon 3 dimensional.
  6. Rotate and glue/tape the head to the tail.

Creating Your Own Flexagon

To create your own flexagon, you'll need 3 or 4 images of the correct height/width ratio. Once you have them, upload the images and download your flexagon.

How do you figure out the ratio? Well hexaflexagons are made up of hexagons. Each hexagon is made up of 6 equilateral triangles. The ghost of high school trigonometry makes it obvious given an image of width of w, then the height of the image must be 2 * tan(60) * (w/4). This simplifies to tan(60) * w/2, which yields w * (tan(60) / 2). Hitting that with the algebra stick heaves forth w * (1.73 / 2). This eventually keels over as w * 0.865.

I'm sure you did that in your head. Right? Yea, me neither.

To save brain cramps, the form below will take a height or width and will produce a color wheel template with the correct ratio (give or take a pixel). You can use this template to line up your images so that they'll be nicely centered for your custom flexagon.

Generate Color Wheel
Wheel width
or wheel height

Once you have your images laid out the way you want them, go to the upload page and create your flexagon.

Size Matters

To get truly smooth looking flexagons, you need to start with very large images. Unfortunately processing large flexagons can take a couple of minutes and many web browsers time out before the image is done.

To get around that, I've included the source code for my flexagon generator so you can build them at home. It's written in Python and uses ImageMagick to do the hard work. It's run from the command line and has been tested under Ubuntu GNU/Linux and Windows XP. Just down load it and read the instructions at the beginning.


For questions, comments or bugfixes contact me at flexagon.removethispart@modarnis.removethispart.com. Don't forget to delete ".removethispart" from both parts of the address or the spammers win.

This past was last updated on 2010-10-25 19:14:53