Один показник – багато форм
Звичайна еліптична рівняння (x/a)² + (y/b)² = 1 є особливим випадком більш загальної сім’ї, виявленої Габріелем Ламе в 1818 році: |x/a|² + |y/b|² = 1, де n може бути будь-яким додатним дійсним числом. Ламе розглядав це виключно як математичну цікавість; два століття потому данський учений, винахідник і поет П’єт Хей відродив його як практильний інструмент проектування, використовуючи для формування обертні в площі Сергеля в Стокгольмі в 1960-х роках, де проста еліпс здавалася занадто тісною, а прямокутник – занадто різким.
Що змінюється, коли n змінюється від 0 до нескінченності
n < 1 → вигнута, зіркова крива (астроїд при n=2/3)
n = 1 → діамант (обертаний квадрат, прямі краї)
n = 2 → звичайна еліпса (коло, якщо a=b)
n = 4 → «квасіркуль» Пете Хейна – заокруглений квадрат супереліпси
n → ∞ → межуючий прямокутник [-a,a] × [-b,b]
При n=2/3 з a=b крива точно є астроїдом - одна й та сама чотиризубий зірка, яка з'являється як особливий випадок гіпоциклої з R=4r в іншому місці цього сайту, підтверджуючи, що ці дві незалежно мотивовані сім’ї кривих перетинаються на одному показнику. Коли n збільшується за 2, кути еліпса відштовхуються та вирівнюються, і крива поступово все більше наближається до межуючого прямокутника без того, щоб коли-небудь досягти його для будь-якого кінцевого значення n - межа є справжнім прямокутником лише в сенсі n→∞.
n < 1 → concave, star-like curve (astroid at n=2/3) n = 1 → diamond (rotated square, straight edges) n = 2 → ordinary ellipse (circle if a=b) n = 4 → Piet Hein's "squircle" - rounded-square superellipse n → ∞ → the bounding rectangle [-a,a]×[-b,b]
П'єта Хайна: Скварль – чому n=4
Хайн особливо віддавав перевагу n=4 (коли a=b, що давало форму ‘скварля’) тому, що візуально вона здавалася округлішою за об’ємне прямокутне сегмент, але більш квадратною за коло – справді проміжний вигляд, а не компроміс. Він застосовував цю концепцію не лише у проєктуванні, але й у меблях, посуді та головоломці ‘Superegg’, 3D-фігури обертання на основі того ж показника. Пізніше ‘скварль’ з'явився в цифровому дизайні інтерфейсів, де іконки додатків на деяких мобільних платформах малюються як супереліпси замість справжніх об’ємних прямокутних сегментів, оскільки перехід від плоского краю до кривизни здається більш плавним для ока.
Параметризація кривої для рендерингу
Неявне рівняння є незручним для безпосереднього відбору, оскільки розв’язання для y за заданим x передбачає використання дробового степеня та вибір знаку в кожній точці. Параметрична форма усуває це, використовуючи позначену синусом і косинусом форму з підписами (позначення cos^[n] означає sign(cos t) · |cos t|^(2/n), зберігаючи знак, який би зруйнувала наївна потужність):
x(t) = a · sign(cos t) · |cos t|^(2/n) y(t) = b · sign(sin t) · |sin t|^(2/n), де t ∈ [0, 2π)
Таким чином, кожна така точка точно задовольняє неявне рівняння для будь-якого t, тому фіксована кількість зразків (кілька сотень) рівномірно розподілених у t дає гладку контурну лінію без необхідності чисельного знаходження коренів – набагато дешевша підхід, ніж сканування x та розв’язання для y в кожному стовпці.
x(t) = a · sign(cos t) · |cos t|^(2/n) y(t) = b · sign(sin t) · |sin t|^(2/n), t ∈ [0, 2π)
Порівняння з колом та обчисленим прямокутником
Щоб зробити ідентичність форми очевидною, демо перекладає супереліпс проти двох опорних кривих у тому ж межовому прямокутнику: справжній коло (еквівалентний n=2) та звичайний обчислений прямокутник, побудований з чотирьох дуг четвертинного кола, що з’єднуються прямими сторонами. Супереліпс при n=4 помітно проходить між ними — його кривизна змінюється безперервно по всьому периметру, на відміну від обчисленого прямокутника, кривизна якого різко переходить від нуля (по прямій стороні) до постійної ненульової величини (на дузі) у кожній з восьми точок дотику. Ця безперервна кривизна є математичним поясненням того, чому сквигл виглядає більш органічно, ніж обчислений прямокутник, незважаючи на те, що він займає майже ту ж площу.
Часті запитання
Що таке саме «squircle»?
«Squircle» – це конкретна супереліпса |x/a|^n + |y/b|^n = 1, де n=4 і a=b, названа та популяризована Пітом Хайном. Вона візуально знаходиться між колом (n=2) і квадратом (n→∞), і на відміну від заокругленого прямокутника, її кривина змінюється плавно по всьому периметру замість різкого стрибка на переході від дуги до краю.
При якому степені супереліпса стає астроїдом?
При n=2/3 з a=b, супереліпса точно співпадає з астроїдом – кривою з чотирма виступами (чотиризубим зірком), яка також є гіпоциклоїдою, що описується колом радіусом r, який обертається всередині фіксованого кола радіусом 4r. Це єдина точка, де ці дві незалежно отримані сім'ї кривих точно перетинаються.
Чому деякі іконки додатків використовують супереліпси замість заокруглених прямокутників?
Тому що кривина супереліпси змінюється безперервно по всьому периметру, тоді як кривина заокругленого прямокутника різко стрибає там, де пряма сторона зустрічається з круглим прорізом. Ця невідповідність ледь помітна неозброєним оком як незначний «заїк», тому інтерфейси, які прагнуть до ідеально гладко вигнутого вигляду, використовують супереліпс замість нього.
Спробуйте наживо
Усе, що вище, працює прямо у вашому браузері — відкрийте Superellipse і змінюйте параметри під час роботи. Нічого не встановлюється, нічого не завантажується на сервер, уся модель живе в одній вкладці.
▶ Відкрити симуляцію Superellipse