loading...
running...
How to use
The left wheel is the real wheel and turns continuously. The strobe lamp flashes fs times per second of simulated time and the camera stores one picture per flash; the monitor on the right always shows the last picture. If the wheel turns less than half a revolution between flashes the monitor shows the true direction; more than that and it shows a slower, even backward, impostor. Hide the red marker to see the classic wagon-wheel effect with twelve identical spokes, where the pattern repeats every 30 degrees. Drag to orbit, wheel or pinch to zoom, space pauses, R resets.
Models and baked PBR textures made in Blender; Three.js r160 turns the wheels and times the strobe.
The science
A wheel with one marked spoke turns at f revolutions per second, so its angle is theta(t) = 2 pi f t. Sampling at fs frames per second records theta_n = 2 pi f n / fs, and angles are only known modulo a full turn, so the monitor shows the step wrapped into (-pi, pi]:
d_theta = wrap(2 pi f / fs)
f_apparent = f - round(f/fs) fs (signed, in rev/s)
aliased magnitude |f - k fs|, forward if f_apparent > 0, backward if < 0, frozen if 0
Nyquist: the apparent speed equals the true speed only when |f| < fs/2. With N identical spokes the picture repeats every 2 pi / N, so the effective pattern frequency is N f and the apparent rate is (N f - round(N f/fs) fs) / N: the safe limit drops to fs/(2N) revolutions per second. Twelve spokes sampled at 24 frames per second look frozen at f = 2 rev/s.
The same mathematics governs a sine sampled by an ADC: the strip chart shows the marker height sin(theta) sampled at fs and the dashed alias sine sin(2 pi f_apparent t) passing through the same dots. Checks: the DFT of the held-angle sample sequence peaks at the formula frequency, the mean wrapped step recovers f_apparent, the 12-spoke rule is verified, and f = fs freezes.
Honest simplifications: instantaneous point sampling (a real strobe or shutter has a finite exposure and blur), a rigid wheel with perfectly even spokes, no flicker perception model. Your eyes add their own persistence; the monitor wheel is redrawn at your display rate, not at fs, so very high fs values are represented exactly in the numbers but shown at 60 frames per second.