These ray-traced kaleidoscope images were made using POV-Ray.

Click on a "thumbnail" picture to view a larger version of the same picture.

Please allow time for the background image to load.

Plane Kaleidoscope (60-60-60 degrees)

The only rule is that the angle of intersection between any pair of mirrors must divide evenly into 180 degrees. The "great circles" where the mirrors intersect with the sphere form a "spherical triangle" on the surface of the sphere. The angles of the spherical triangle are the same as the angles between pairs of mirrors so they must divide evenly into 180 degrees. The following spherical triangles produce spherical kaleidoscopes: 90-90-x (where x is a sub-multiple of 180 degrees), 60-60-90, 45-60-90 and 36-60-90 (degrees). These are the only possibilities (taking into account the fact that the sum of the three angles of a spherical triangle is always greater than 180 degrees).

These spherical kaleidoscopes have polyhedral symmetry plus reflection symmetry. (90-90-x = dihedral, 60-60-90 = tetrahedral, 45-60-90 = octahedral, 36-60-90 = icosahedral.)

If you make any POV-Ray kaleidoscopes and put them on a web page, please send me the URL.

global_settings { assumed_gamma 2.2 } global_settings { max_trace_level 24 } camera { location <0, 0, -4> look_at <0, 0, 0> right x } #declare myimage=pigment { image_map { gif "input\oak01.gif" once } } #declare Mirrors = union { plane { <-1,0,0>, .5 } plane { <0,-1,0>, .5 * tan(pi/6) } plane { <sin(pi/6),cos(pi/6),0>, 0 } finish { reflection 1 ambient 0 specular 0 } } union { plane { <0, 0, 1>, 0 pigment {myimage} translate <-.5,-.5,0> finish { ambient 1.4 } } object { Mirrors } translate <1, tan(pi/6), 0> / 6 rotate 1*z }

The final "translate" moves the whole thing so that the camera line-of-sight is in the center of the triangle of mirrors. The final "rotate" prevents some POV-Ray glitches that may occur due to mirrors being aligned exactly horizontally and vertically. The input image "oak01.gif" is a square non-interlaced GIF (mine was 300 x 300 pixels). Render with a square output image resolution (I added 300x300, 400x400, etc. to my RENDERER\QUICKRES.INI file).

- Emily Lovell's POV-Ray kaleidoscope animations
- KaleidoPoem by Mark Bloomer
- Kaleidoscope Heaven much info about kaleidoscopes
- The Disgustoscope build one!
- David E. Joyce's Java Kaleidoscope
- Hank Hufnagel's SymmeToy
- Timothy Blackmore's Archive of Light
- Duck Into Kaleidoscope (Exploratorium)

The information about kaleidoscopes comes from H.S.M. Coxeter's book "Regular Polytopes" (Coxeter01).

<Dogfeathers Home Page> <Mark's Page> <Mark's Kaleidoscopes Page Two>

Email: Mark Newbold

This page URL: http://dogfeathers.com/kaleido