366 Цвета дней рождения

Метод, а не мистика

У каждой даты один цвет. Он вычислен, а не угадан.

Здесь нет гороскопа. Каждый из 366 дней года получает один цвет по формуле, которой нужны только месяц и число. Ни года, ни имени, ни натальной карты. Одна и та же дата всегда даёт один и тот же цвет. Вся математика открыта и приведена ниже.

Светлота на протяжении года. Каждый столбик это один день в своём цвете.
Тон относительно календаря. Рассеяние заполняет круг, ни разу не повторившись.
01

Сезон живёт в светлоте и насыщенности

Год это одна косинусоида. Она достигает максимума в разгар лета и минимума в середине зимы, и это единственное число поднимает светлоту и насыщенность летом и опускает их зимой. Июль читается светлым и открытым, январь глубоким и тихим. Тон почти не слушает сезон, и поэтому времена года ощущаются как погода, а не как поворот цветового круга.

season = cos((doy / 366 − 0.54) × 2π)

02

День живёт в золотом рассеянии

Внутри сезона каждый день размещается умножением его номера на золотое сечение и взятием дробной части. Это самый равномерный способ заполнить интервал без повторов, та же укладка, которой подсолнух располагает семечки. Три независимых множителя разносят тон, светлоту и насыщенность по отдельности, чтобы они никогда не совпали в заметный узор. Слабое притяжение 0.2 подтягивает тон к летнему или зимнему ориентиру, так что рассеяние всё равно читается сезонным.

hue = frac(doy × 0.6180339887) × 300
lightness ← frac(doy × 0.7548776662)
chroma ← frac(doy × 0.569840291)

03

Сначала OKLCH, потом sRGB

Каждый цвет задан в OKLCH: светлота, насыщенность, тон, в пространстве, построенном так, чтобы равные шаги выглядели равными. Бледно-голубой и бледно-золотой на одной светлоте действительно ощущаются одинаково бледными, и именно это удерживает 366 цветов от расползания. Насыщенность зажимается в охват sRGB до того, как что-либо сохраняется, поэтому числа на странице дня это те же числа, которые отрисовываются, а названия и оценки совместимости описывают реальные цвета, а не идеальные.

И читаемость. Каждая страница смотрит на свой фон и переключает подписи на почти чёрный или почти белый с оттенком самого фона, выбирая тот, который реально даёт больше контраста, а затем усиливает его, пока день не пройдёт порог WCAG AA для основного текста. Его проходят все 366 дней.

Посмотреть все 366 цветов