The library documents itself · Diagramming & graphs
stzMathStyle
19 own methods · 7 forms written with extensions, listed under their method
the source: base/graph/stzMathDiagram.ring(opens in a new tab) · All classes · The area reference: Diagramming & graphs
Under each method, its extensions (Q CS XT Z ZZ IB W U): bold and ticked, it exists; struck, it does not. The extensions and what they mean
Examples: 0 come from the library's tests; 7 were composed from each method's signature and run for this page, on a fresh object, for example o1 = StzCurvedGraphStyle(). 12 methods have none yet. Examples run on 2026-10-03 20:23 inside the library at commit 0e72e2e2c.
Method
Explanation, as the source carries it
init
(no comment in the source: the name reads as a sentence) initno extension
SetCanvas
(no comment in the source: the name reads as a sentence) set canvasQCSXTZZZIBWU
CanvasWidth
(no comment in the source: the name reads as a sentence) canvas widthno extension
composed example
o1 = StzCurvedGraphStyle() ? o1.CanvasWidth() #--> 720composed from the signature, run for this page
CanvasHeight
(no comment in the source: the name reads as a sentence) canvas heightno extension
composed example
o1 = StzCurvedGraphStyle() ? o1.CanvasHeight() #--> 640composed from the signature, run for this page
ForAll
ForAll("Set x", rows) -- rows are DATA. Each row is one of: [ :shape, "x.icon", :circle | :rect | :text | :line | :curve | :poly | :mark, [ props ] ] [ :delete, "x.icon" ] unmint a shape an earlier rule made [ :unknown, "p.sx", lo, hi ] a variable the solver owns [ :field, "U.ox", number | "expression" ] [ :override, "u.arrow.x2", number | "expression" ] [ :ensure, "fn", [ args ] ] a constraint [ :encourage, "fn", [ args ] ] an objective [ :layer, "x.text", :above | :below, "x.icon" ] A property or argument is a number, a path ("x.icon.r"), or an expression over paths ("U.ox + 14*ux(u.arrow)").QCSXTZZZIBWU
ForAllWhere
(no comment in the source: the name reads as a sentence) for all whereQCSXTZZZIBWU
Rules
(no comment in the source: the name reads as a sentence) rulesno extension
StartPlanar
A PLANAR START. The solver never leaves the basin it starts in -- DN7f measured 84 crossing terms holding 10,138 energy units at convergence that no weight could spend -- so the start is where planarity is decided. A style that draws a graph declares which objects are its vertices, which shape's centre carries them, and which constructors are its edges; the diagram then seeds those centres by Tutte's embedding rather than at random. Everything else in the picture still starts where it always did.QCSXTZZZIBWU
StartLayout
LAYOUTS AS STARTS (DN8b). The graph plane's own engines -- hierarchical, ring, force, mesh, sequence -- computed on the graph the substance's vertices and edges make, and overlaid as the solver's start. The planar start is one of them. StartTrying names SEVERAL: the solver takes them in order, and the first that ends lawful is the picture -- so the seed is no longer what decides whether a lattice crosses.no extension
StartTrying
(no comment in the source: the name reads as a sentence) start tryingno extension
Starts
the starts to try, in order; empty means one random startno extension
composed example
o1 = StzCurvedGraphStyle() ? @@( o1.Starts() ) #--> [ "planar", "hierarchical", "force", "random" ]composed from the signature, run for this page
ClearPlanarStart
(no comment in the source: the name reads as a sentence) clear planar startno extension
PlanarStart
(no comment in the source: the name reads as a sentence) planar startno extension
composed example
o1 = StzCurvedGraphStyle() ? @@( o1.PlanarStart() ) #--> [ "Vertex", "icon", [ "Edge", "Arc" ] ]composed from the signature, run for this page
SetMargin
A MARGIN inside the paper. The on-canvas rule holds every shape inside the canvas exactly, and a style whose vertices repel one another pushes them onto that line: the dodecahedron came out with its outer face touching all four edges. A margin moves the line in.QCSXTZZZIBWU
Margin
(no comment in the source: the name reads as a sentence) marginno extension
composed example
o1 = StzCurvedGraphStyle() ? o1.Margin() #--> 36composed from the signature, run for this page
SetTheme
COLOUR AS MEANING (DN8d). A style writes ROLES -- :primary for the one accent, :neutral for ink, :muted for secondary ink, :background for the paper -- and the theme decides what each is. A theme is named here; the diagram resolves every role through it at draw time, and a text with no colour of its own takes the best of black and white on what it sits on, measured. Content colours -- Byrne's plate, the quaternion table's eight -- stay the style's own data.QCSXTZZZIBWU
Theme
(no comment in the source: the name reads as a sentence) themeno extension
composed example
o1 = StzCurvedGraphStyle() ? o1.Theme() #--> lightcomposed from the signature, run for this page
SolveLabelsAfter
LABELS AFTER SHAPES. The joint first stage lets a name's constraints move the shapes -- which an Euler diagram needs, since a set must be large enough for its name, and which a graph must NOT have: a name held off an edge pulls on the edge's endpoints, and at a high penalty weight eight names threw a planar cube away to make room for themselves. Under this, the first stage sees no label term at all, and the names find their room against frozen shapes.QCSXTZZZIBWU
LabelsAfter
(no comment in the source: the name reads as a sentence) labels afterno extension
composed example
o1 = StzCurvedGraphStyle() ? o1.LabelsAfter() #--> 1composed from the signature, run for this page

