Спірограф малює красиві математичні криві, котячи коло всередині або зовні нерухомого кола. Перо, прикріплене на деякій відстані від центра котного кола, описує параметричну траєкторію — гіпотрохоїду (котіння всередині) або епітрохоїду (котіння зовні).
2π · r / НСД(R, r).Гіпотрохоїда (котіння всередині):
x(t) = (R−r)·cos(t) + d·cos((R−r)/r · t)
y(t) = (R−r)·sin(t) − d·sin((R−r)/r · t)
Епітрохоїда (котіння зовні):
x(t) = (R+r)·cos(t) − d·cos((R+r)/r · t)
y(t) = (R+r)·sin(t) − d·sin((R+r)/r · t)
Період: T = 2π · r / НСД(R, r)
Коли R = 2r у гіпотрохоїді, котне коло рівно двічі вміщується в нерухомому, і перо малює пряму лінію-діаметр — неймовірний результат для механічної іграшки! Якщо встановити r = R та d = r в режимі епітрохоїди, отримаємо кардіоїду — культову серцеподібну криву, що зустрічається у множині Мандельброта і в каустиках кави.
Досліджуйте параметричні криві котячих коліс в інтерактивному режимі. Гіпотрохоїда описується, коли мале коло котиться всередині нерухомого кільця; епітрохоїда — коли зовні. Регулюючи зовнішній радіус R, радіус кочення r і зміщення пера d, можна отримати нескінченну різноманітність троянд, зірок, петльових кривих і знамениту кардіоїду — все з одного простого механічного принципу.
Що таке гіпотрохоїда?
Гіпотрохоїда — це крива, яку описує точка, прикріплена до малого кола, що котиться всередині більшого нерухомого кола. Параметричні рівняння: x(t) = (R−r)cos(t) + d·cos((R−r)/r · t), y(t) = (R−r)sin(t) − d·sin((R−r)/r · t), де R — радіус зовнішнього кола, r — радіус котного кола, d — відстань пера від центра котного кола.
Що таке епітрохоїда?
Епітрохоїда — крива, яку описує точка на колі, що котиться зовні нерухомого кола. Рівняння: x(t) = (R+r)cos(t) − d·cos((R+r)/r · t), y(t) = (R+r)sin(t) − d·sin((R+r)/r · t). Відомі приклади: кардіоїда (d = r, r = R) та лімасон Паскаля.
Як працює іграшка-спірограф?
Іграшка-спірограф складається з зубчастих пластикових кілець і шестерень. Менша шестерня вставляється всередину (або зовні) нерухомого кільця, а перо — в один із отворів. Коли шестерня котиться, перо малює гіпотрохоїду або епітрохоїду. Співвідношення R/r і положення отвору d визначають малюнок.
Крива замкнеться після повного циклу 2π · r / НСД(R, r) по параметру t, що відповідає r / НСД(R, r) повним оборотам котного кола і R / НСД(R, r) обходам навколо нерухомого кола. Якщо R/r ірраціональне, крива ніколи точно не замкнеться і щільно заповнить кільцеву область.
Кардіоїда — це епітрохоїда з r = R та d = r. Її назва походить від грецького слова «серце». Вона зустрічається в мікрофонних діаграмах спрямованості, на межі головного опуклого компонента множини Мандельброта та у вигляді каустики у чашці кави.
Пелюсткова крива (родонея) з'являється, коли d = R − r (перо на окружності котного кола) і r рівно ділить R. Кількість пелюсток дорівнює R/r, якщо R/r непарне, або 2R/r, якщо R/r парне. Спробуйте R = 120, r = 40, d = 80 для трипелюсткової троянди.
Криві спірографа — це замасковані ряди Фур'є: кожен синусоїдальний доданок у параметричній сумі відповідає одній гармоніці. Гіпотрохоїди та епітрохоїди є частковими випадками Рулеток — кривих, утворених коченням однієї кривої по іншій, що вивчали Ейлер і Бернуллі.
Найбільший спільний дільник (НСД) R і r визначає період кривої. Для форми важливе лише скорочене відношення (R − r)/r. Криві з однаковим відношенням, але різними абсолютними радіусами мають однакову форму. НСД = 1 означає, що мала шестерня має зробити R обертів до повторення малюнку.
Коли d > r перо виходить за межі котного кола, утворюючи криві з петлями. Для гіпотрохоїд при d > r крива може виходити за межі нерухомого кільця. При d = r крива проходить через центр шляху котіння; при d < r крива лежить у кільцевій смузі між радіусами |R−r−d| і R−r+d.
Обидва є параметричними кривими з синусоїдальними складовими, але різняться за структурою. Фігури Ліссажу використовують x = A·sin(at + δ), y = B·sin(bt) з незалежними амплітудами і частотами, тоді як криві спірографа пов'язують амплітуду і частоту через геометрію кочення. При R/r = 2 гіпотрохоїда виродкується у пряму лінію — вироджена фігура Ліссажу.
Ця симуляція — цифровий спірограф: вона малює траєкторію пера, закріпленого на малому колі радіусом r, яке котиться без прослизання всередині або зовні великого нерухомого кола радіусом R. Перо розташоване на відстані d від центру рухомого кола. Механіка проста, але отримані криві — гіпотрохоїди та епітрохоїди — утворюють і акуратні розети зі пелюстками, і зорі, і серцеподібну кардіоїду, залежно лише від кількох параметрів, що перераховуються в реальному часі під час руху повзунків.
Дві родини рулет. У режимі «Гіпотрохоїда» мале коло котиться всередині нерухомого кільця: x(t) = (R−r)cos(t) + d·cos((R−r)/r·t). У режимі «Епітрохоїда» воно котиться зовні: x(t) = (R+r)cos(t) − d·cos((R+r)/r·t), з відповідним синусним доданком для y(t). Якщо в режимі епітрохоїди встановити r = R і d = r, вийде справжня кардіоїда, а малюнок завжди замикається після періоду 2π·r/gcd(R, r).
Перемикачем «Гіпотрохоїда / Епітрохоїда» обирайте режим кочення, а повзунками змінюйте зовнішній радіус R (50–200), радіус рухомого кола r (5–100) і зміщення пера d (1–200). Швидкість малювання (1–20) задає кількість кроків кута за кадр, а зсув відтінку (0–360°) обертає колір лінії. «Пауза/Відтворити» зупиняє малювання, «Скинути» очищає полотно й починає заново з t = 0, а «Інфо» відкриває панель із повними формулами.
Якщо співвідношення радіусів R/r дорівнює точно 2, гіпотрохоїда вироджується у пряму лінію — здається, що перо просто рухається туди-сюди через центр, хоча воно й далі підкоряється тим самим рівнянням кочення кола, які в інших випадках дають петлі.
Гіпотрохоїду малює коло, що котиться всередині нерухомого кільця: x(t) = (R−r)cos(t) + d·cos((R−r)/r·t) та y(t) = (R−r)sin(t) − d·sin((R−r)/r·t). Епітрохоїду малює коло, що котиться зовні нерухомого кола, за тими самими формулами, але зі знаком плюс перед доданком з R: x(t) = (R+r)cos(t) − d·cos((R+r)/r·t). Перемикання режиму змінює, з якого боку від R перебуває рухоме коло.
Перемкніться на режим «Епітрохоїда», а потім встановіть радіус рухомого кола r рівним зовнішньому радіусу R і зміщення пера d також рівним r. Коли r = R і d = r, рівняння епітрохоїди спрощуються до класичної кардіоїди — серцеподібної кривої, яку також можна побачити в діаграмах спрямованості мікрофонів і в межі головної кульки множини Мандельброта.
Малюнок повторюється після періоду 2π·r/gcd(R, r) за параметром t. Якщо R і r мають великий спільний дільник, крива замикається швидко й дає мало витків; якщо їхній найбільший спільний дільник малий, перу потрібно зробити набагато більше обертів, перш ніж візерунок з'єднається сам із собою.
Розетоподібні гіпотрохоїди з'являються, коли зміщення пера d дорівнює R − r, а r ділить R націло. Тоді кількість пелюсток дорівнює R/r, якщо це співвідношення непарне, або подвоєному R/r, якщо воно парне. Спробуйте R = 120, r = 40 і d = 80, щоб отримати акуратну розету з трьома пелюстками.
Коли d перевищує r, перо виходить за межу рухомого кола, тому крива замість плавної форми утворює додаткові петлі. Коли d дорівнює r, крива проходить точно через центр траєкторії кочення, а коли d менше за r, уся крива лишається у вузькому кільці навколо радіуса R − r.