Every cell draws the same eight stubs and one of two bridges, and the result reads as a circuit board.
Eight stubs, then a coin
Every cell in this piece draws the same eight line segments, in the same places,
every time:
// Top right
DrawLine(canvas, paint, x + s / 2, y + s, x + s / 2, y + s / 2);
DrawLine(canvas, paint, x + s / 2, y + s / 2, x + s, y + s / 2);
// … and the same for the other three corners
Four right-angled elbows, one in each quadrant, each reaching from the cell edge in
to the quarter point. Nothing about them varies.
Then one coin flip decides how the four elbows are joined in the middle:
if (rng.NextDouble() < 0.5)
{
// two vertical bridges
}
else
{
// two horizontal bridges
}
One bit per cell. That is the entire random content.
A single cell at full size. Eight stubs, two bridges — and already it looks like
something that carries current, because right angles and quarter points are what
circuit boards are made of.
Why the traces join
Each elbow ends at ±s/2 from the cell centre on the cell’s own edge — that is, at
the quarter point of the edge. The neighbouring cell’s elbow ends at the same
place, because the neighbour is the same size and uses the same offsets.
So every stub meets a stub. There are no dangling ends anywhere in the interior of
the drawing, and the traces that result run for as far as the coin flips happen to
line up.
One division. Four cells, sixteen stubs meeting in eight places.
Sixteen cells. Traces now cross several cells, and the bridges have started to look
like decisions — this junction passes straight through, that one turns.
What the bridge choice does
The two options are not a rotation of each other in effect. Vertical bridges connect
the top-left elbow to the bottom-left one and the top-right to the bottom-right,
which makes the cell a pair of parallel vertical runs. Horizontal bridges make it a
pair of parallel horizontal runs.
Either way the cell has four entry points and connects them in pairs — so the whole
drawing is a set of closed loops and edge-to-edge paths, never a branch. A trace
followed from any starting point leads somewhere; it never forks.
Sixty-four cells.
Two hundred and fifty-six. The subdivision does not add detail to existing cells: a
cell that divides is replaced by four smaller ones, each drawing the full eight-stub
pattern at half the size. Each depth is a fresh drawing of the same rule.
Five boards
| Rendering | Iterations | Cells | Stroke | Ink |
|---|
| Circuit Teal | 4 | 256 | 1.0px | #00CED1 on black |
| Circuit Coral | 5 | 1024 | 1.2px | #FF6B6B on #0a0a0a |
| Circuit Amber | 3 | 64 | 1.8px | #E8940A on #060300 |
| Circuit Violet | 5 | 1024 | 0.6px | #A78BFA on #04020A |
| Circuit Jade | 4 | 256 | 1.0px | #2DB87B on #010A04 |
Because the stroke width does not scale with the cell size, the same depth at
different weights produces different readings. Amber reaches three levels — 64
cells — and its 1.8 px stroke makes each elbow read as a shape rather than a
trace. Coral and Violet both reach five, but Coral’s heavier stroke draws a
dense, almost textile weave while Violet’s fine line stays open. Jade matches
Teal in depth and weight and differs only in ink — the same 256-cell board in
green.
Every board fills the canvas edge to edge; the piece is scaled so its outermost
strokes sit just inside the frame of the image, drawn whole rather than cut.
On the wall
The gallery closes with the piece as it would hang: Circuit Teal behind an
ivory mat, in a graphite frame, on a dark wall with a pool of light above it.
The framing is presentation, not generation — the piece is drawn into the
mat’s window exactly as it is drawn onto a bare canvas, and it fills the
window on its own. There is one framed plate, not five: the frame is a way to
show the work, not a variant of it.
Determinism
SeededRandom — the project’s stable Xoshiro256StarStar — is seeded from the
preset and consumed once per leaf, in the subdivision’s traversal order. Same seed,
same board, on any machine.