engine/steering library

How a ThemeIntent narrows one generator attempt (engine v4). Internal: the generator and the family builders call it; hosts use ThemeIntent.

Steering never removes a draw from the palette stream, so the rest of a theme keeps its seeded variety: brightness and the harmony scheme are drawn and then overridden, chroma ranges are narrowed before they are sampled, and steered hues come from their own palette…/intent sub-stream. A centred attempt (the first theme of a steered feed) puts each narrowed choice at the middle of its range.

Engine v5 steers the families with their own palettes by Steering.recolour: the family builds its usual theme (with the intent's brightness), then every colour turns by the hue that puts the theme's accent (Claymorphism: its body) on the intent's colour, and chroma scales to the intent's level. Lightness never changes, so each family keeps its character; the generator's repair then re-solves labels.

Classes

Steering
One attempt's steering.

Functions

intentTag(String paletteTag) → String
The palette sub-stream steered hues come from for paletteTag.
recolourTag(String paletteTag) → String
The palette sub-stream Steering.recolour draws from (engine v5).