Homeβ–ΈPhysics & Mechanicsβ–ΈRoman Horologium: Sundial Shadow Simulator (2D)

πŸ•‘ Roman Horologium: Sundial Shadow Simulator (2D)

A working sundial, not a walk-through model: real solar-position equations (declination, hour angle, altitude and azimuth) drive a gnomon's shadow across a horologium disc β€” the kind of public sundial that once stood in the Roman Forum itself β€” while a day-long shadow-tip trace and the Romans' own 12 unequal "temporal hours" are read out live.

Physics & Mechanics2DModerate60 FPSπŸ“± Mobile-adapted⇄ 3D version
2d-roman-forum β†— Open standalone

The 3D "Roman Forum" is a decorative walk-through reconstruction β€” colonnades, a temple and wandering citizens β€” with lighting and atmosphere sliders but no physics underneath. This 2D companion goes the other way: it builds the real astronomy that made a Roman forum's public sundial actually work. Given a latitude, a day of the year and a time of day, it computes the sun's declination, hour angle, altitude and azimuth with the standard spherical-astronomy equations, then projects a vertical gnomon's shadow onto a horologium disc at the correct length (shadow = height / tan(altitude)) and direction. A toggleable trace plots the shadow tip's path across the whole day β€” the characteristic curve every sundial designer has to account for β€” and a live readout converts the current moment into the Romans' own timekeeping: twelve unequal "temporal hours" spanning sunrise to sunset (so an hour is longer in summer than in winter), and four night watches (vigiliae) after dark.

βš™ Under the hood

Canvas2D sundial driven by real solar-position equations β€” declination from day-of-year, hour angle from time-of-day, altitude/azimuth from latitude β€” with shadow length from gnomon height and a live day-trace of the shadow tip. Includes a Roman temporal-hour and vigil readout, dividing sunrise-to-sunset and sunset-to-sunrise into 12 and 4 equal parts respectively, as Roman civil timekeeping did.

sundialsolar positiondeclinationgnomonroman timekeepingspherical astronomy

2D Β· HTML5 Canvas 2D Β· 60 FPS target Β· runs fully client-side, no install

What did you find?

Add reproduction steps (optional)