ContributorMural::Renderers::Skyline
Inherits ContributorMural::Renderer < Reference < Object
A city skyline: each contributor is a building on a shared street, its height set by their weight — the people carrying the project are the towers — with the avatar up top like a rooftop billboard and a hash-lit grid of windows below it. Buildings wrap into further rows past the configured width, each row bottom-aligned on its own ground strip.
Constants
Most rows of windows one wall will draw. Well clear of what the default band asks for (a 220px tower glazes 12), so it only ever bites the towers that would otherwise be drawn in specks.
Height jitter as a share of the smallest step between weight ranks — under half, so jitter can never reorder what the weights decided.
A clean daytime silhouette on light walls, a dusk city on dark ones. Hardcoded per mode like orbit's ring: the four-colour palette record has no slot for architecture, and a per-style palette is not worth its keys.
Share of windows lit.
Side padding between a building's wall and its avatar; a building is
avatar_size + 2 * PAD wide.
The roof zone every silhouette variation stays inside, so the avatar always sits against the full-width body underneath it.
How many roof silhouettes draw_roof knows.
Headroom over each row's tallest extent.
Instance methods
Pixel size at which to fetch this user's avatar (2x render size for crisp display on high-DPI screens).
Heights rank the distinct weights across the whole document — a thousandfold outlier lands at the top of the band exactly like a twofold one, and a section of equals renders low rather than faking a skyline of towers. Keyed by login, so sectioning cannot move anyone.