Exploration for the vision's surface 4 (programming grid) and the "trace as thumbnail glyph" idea in surface 3. Thesis: put a pen on each of the four roles in a minor set, run the dance, and the ink is the dance: one image for 64 beats that the eye can read in a second, so a caller can see a dance's shape and an evening's shape without reading text.
The question is which projection of the pens' motion to use. Section 0 shows one dance under four projections side by side: the plain pen plot (the glyph), the pens marched along x as time passes (a braid), a seismograph of across/along position against time, and a figure strip where each figure gets its own little plot whose width is its beat count, which solves the different-lengths problem. Section 1 lines a real program up as rows on a shared 64-beat axis and lets you swap which projection fills the rows, with the vision's family-coloured beat bars as the baseline to beat. Section 2 is the pens live: press play and every row draws at once on one clock.
Geometry is a tiny hand-written figure library in minor-set units (the set is 2×2, band at the top, 1s face down the hall) and is approximate on purpose: shapes need to be honest enough to compare, not simulator-grade. Dances are Yona's 2026-06-13 EFS program plus four Portland standards, figure text from contra-card/dances.csv.
Every dance as a pen plot, same scale per dance, ink follows the section 0 ink control. Click a glyph to load it into section 0.
Pick a dance and a pen colour. role is four pens (larks cool, robins warm, ones darker). family colours the ink by figure family from the card taxonomy, so the plot doubles as a legend. phrase colours by A1 A2 B1 B2 with the ink darkening through each phrase, which is the mode built to spot A1 = B1 repetition. worn is one colour with ink that accumulates, the "worn boards" look from the hall spike.
Four pens on the minor set, 64 beats of ink. This is the thumbnail candidate for the grid. Hover a stroke for the figure.
Each cell is that figure's ink alone, starting from where the dancers actually are. Cell width is the beat count on a 64-beat axis, so cells line up with the phrase and with the other dances below.
The pens march right as the beats pass. Loops are turns, flat stretches are standing still, crossings are passes. Slow the march and it folds back into the glyph; speed it up and it becomes the seismograph.
Pure time axis. A swing is a wiggle in both lanes, a circle is offset sine waves, long lines is a bump in the top lane only. Repeats read as repeated waveforms.
Rows are dances in program order on a shared 64-beat axis with phrase lines. Swap the row projection: bars is the vision's own grid mock (family-coloured beat bars), the baseline; the others put ink in the rows. Repeats: a figure that also appears earlier in the same dance gets a ring at its start; a figure that occupies the same beats in the previous dance gets a tick above it (the vision's "collision" mark). Click a family in the legend to dim every row that lacks it; hover any figure for its name.