Moire Press / Issue 01

Two sets of lines. Nobody drew the stripes.

Lay 12-pixel lines over 13-pixel lines and a slow pattern 156 pixels wide appears from nowhere. Guess the width of the ghost stripes before the maths tells you, then break the rules in the lab.

Pink lines every px, blue lines every px. How wide is one ghost stripe (centre to centre)?
Drag on the picture to slide the blue layer.
-

Why it works

Each grating is a wave with a spatial frequency, 1 divided by its spacing. Where two waves overlap, the picture contains their difference as well. For parallel lines with spacings a and b the ghost stripes repeat every a x b / |a - b|. That is why 12 and 13 give 156 while 12 and 14 give 84. Close spacings make huge stripes.

Turning instead of stretching

With the same spacing but a rotation of angle t, the ghost width is a / (2 sin(t/2)). A tiny turn of the blue layer gives wide stripes that sweep fast. In the lab the readout uses the general version, a x b / sqrt(a^2 + b^2 - 2ab cos t), for lines and dot grids.