Generator

Rivers, and what they separate

A generator in the designing a base library, called 7 times across 2 essays. Below: what it draws at its defaults and at the arguments the essays give it, what it checked while drawing, and everywhere it is used.

river-packing is one function. Everything below came out of it during this build, at arguments taken from the essays rather than invented for this page — so a figure here is the same figure a reader meets in an essay, and when the generator changes, this page changes with it.

At its defaults

Rivers, and what they separateOne disc per flap, and — where two groups of flaps hang off different nodes of the skeleton — a strip of paper between them whose width is the length of the edge that joins them. The rule is not that circles must not overlap; it is that any two flaps must be at least as far apart on the sheet as they are through the tree.riverwidth 0.3legarmheadlegtailthe check10 pairs testedtightest by 0.0800(leg and arm)the ruledistance on the sheetat leastdistance through the treetwo nodes, and an edge between themthe extra width is thebody the flaps hang fromthe discs are what each flap costs; the strip is what joins the two halves of the subjectand both are the same condition, read off different pairs of leaves

tree: "simple"

Circles, which are the special caseOne disc per flap, and — where two groups of flaps hang off different nodes of the skeleton — a strip of paper between them whose width is the length of the edge that joins them. The rule is not that circles must not overlap; it is that any two flaps must be at least as far apart on the sheet as they are through the tree.leglegarmarmheadthe check10 pairs testedtightest by 0.0000(leg and head)the ruledistance on the sheetat leastdistance through the treeevery flap on one nodewith one node the rulereduces to non-overlapwith a single node every path runs through it, and the condition is exactly non-overlapwhich is why circle packing was ever thought to be the whole rule

tree: "river"

Rivers, and what they separateOne disc per flap, and — where two groups of flaps hang off different nodes of the skeleton — a strip of paper between them whose width is the length of the edge that joins them. The rule is not that circles must not overlap; it is that any two flaps must be at least as far apart on the sheet as they are through the tree.riverwidth 0.3legarmheadlegtailthe check10 pairs testedtightest by 0.0800(leg and arm)the ruledistance on the sheetat leastdistance through the treetwo nodes, and an edge between themthe extra width is thebody the flaps hang fromthe discs are what each flap costs; the strip is what joins the two halves of the subjectand both are the same condition, read off different pairs of leaves

tree: "branched"

A river that branchesOne disc per flap, and — where two groups of flaps hang off different nodes of the skeleton — a strip of paper between them whose width is the length of the edge that joins them. The rule is not that circles must not overlap; it is that any two flaps must be at least as far apart on the sheet as they are through the tree.riverwidth 0.13leglegarmarmhornhornthe check15 pairs testedtightest by 0.0433(leg and horn)the ruledistance on the sheetat leastdistance through the treethree nodes meeting at a pointa branch of the skeleton isa branch of the stripthree groups of flaps meet at one point of the skeleton, so the strip between them meets there tooand every pair of groups is two internal edges apart rather than one

What it checked while it drew

Collected by running this generator with a listener on the assertions, not written here. The count is how many separate times this build put that claim to the test.

Where it is called

Changing this generator changes every figure on this list, which is what makes the list worth publishing rather than keeping in a check script.

Every generator · The designing a base field · The patterns a reader can fold