Truchet Arcs
Quarter circles on a grid, closing into loops nobody planned.
Clock, date, widget row and the two bottom controls, drawn where iOS draws them.
Previewing with 8% bleed, as exported. Seed truchetarcs-001.
Which pattern you are looking at. Tap the preview to move to the next one and round again; the seed and the palette come with you, so the same words draw the same idea four ways.
Columns across the canvas. Rows follow from the aspect ratio so cells stay square.
How many concentric rings each quarter arc becomes, added either side of the radius that joins the neighbouring cells. They are spread evenly and centred on that radius, which is what makes each ring meet its opposite number across an edge; how far they reach is Arc spread’s job rather than this one. Raising it adds detail inside a mark that keeps its size, and the stroke follows the gap it leaves rather than being clamped by it.
How Truchet Arcs works
A Truchet tile is a square with an asymmetric mark on it — Sébastien Truchet’s original was a square split into two triangles — and a Truchet tiling is what you get when you fill a grid with copies of that square in random rotations. The remarkable thing is how little you have to specify. One tile, four rotations and a coin flip per cell produce paths that wander across the whole grid, close into loops, and look considered in a way that no part of the rule accounts for.
This one draws quarter arcs: two 90° curves per cell, centred on opposite corners, joining the midpoints of the edges they touch. Every cell edge is therefore a connection point and every mark meets whatever its neighbour offers, so the tiling comes out as a tangle of closed loops. The corner is the whole trick, and it is easy to get wrong — two circles of a given radius pass through any pair of points, and centring these on the cell’s middle instead gives marks that still meet at the edges but can never curl around a grid vertex. That version looks plausible and no loop, half circle or full circle ever forms in it at any density or seed.
Divisions decides how much the arcs behave like a single continuous system. It replaces each quarter arc with a fan of concentric ones sharing the same corner. Because a neighbour’s fan is centred on that same physical point whenever the rotations agree, every radius in the fan meets its opposite number across the edge and the marks become nested ribbons; where the rotations disagree, the lines simply stop. Those stopped ends are the structure of the tiling rather than an effect applied to it — a rotation facing away from its neighbour terminates a path, and no probability control is needed to produce one. What makes the fan join is that its radii mirror about the half cell, not that any particular radius is present: they are spread evenly and centred there, so odd counts include the middle radius and even counts straddle it, and both mirror exactly.
Both of the cell’s marks are fanned, and the two sets stay clear of each other because the radii stop where circles centred on opposite corners would touch. Carried past that point they cross, and the result is moiré rather than pattern. Arc spread moves that ceiling inward, and the gap between rings is worked out from the spread and the count rather than being set independently — so every arc you ask for fits, and the stroke thins to the gap it is left rather than the gap having to accommodate the stroke.
Grid density interacts with everything. Below about six columns the tiles are large enough that you read each one individually and the loops are the subject; above about twenty you stop seeing tiles at all and start seeing a woven texture, at which point stroke weight matters more than anything else on the panel.