Pull to refresh

Comments 20

Пффф, я в 2004 году на Delphi это закодил в виде скринсейвера под шиндошс. Но придумал не сам, увидел алгоритм в статье в Журнале Hard'n'Soft от декабря 2002 года. Там весьма развёрнутая статья с десятком алгоритмов рисования подобных изображений. До сих пор номер на полке лежит.

А потом на волне интереса к Kolibri OS портировал «паутинку» под Kolibri ОС на ассемблере:
http://board.kolibrios.org/viewtopic.php?p=24018#p24018

Даже в trunk включили:
http://websvn.kolibrios.org/filedetails.php?repname=Kolibri+OS&path=%2Fprograms%2Fdemos%2Fweb%2Ftrunk%2Fweb.asm
А в комплексных числах операция взятия остатка не требуется…
Момент с 248 до 250 на 0.005 впечатляет.
Но он меркнет по сравнению с тем, как с 268 начинают «расти» лепестки. Или даже 301.
Да, красиво. Кстати, с 48 до 50 то же самое получится :)
Надо понять закон для Z координаты тогда
На глаз оно циклично с не очень большим периодом
С периодом в число точек, если быть точным.
UFO just landed and posted this here
автор пишет: «В итоге у нас получится такая фигура, еще называемая кардиоидой из-за ее схожести с изображением сердца.»

стесняюсь спросить — а есть ли математическое доказательство тому, что получилась именно кардиоида (в приближении), а не какая-то другая (похожая) фигура?

известный пример схожести линий:
«цепная линия» (образованная провисающими проводами) похожа на параболу, но не является ею — формула там совсем другая
а есть ли математическое доказательство тому, что получилась именно кардиоида (в приближении), а не какая-то другая (похожая) фигура?

Это вполне может сойти за пример по математике для первокурсника технического вуза.

Вместо номера точки будем пользоваться её полярной координатой \varphi. Тогда точка \varphi соединяется прямой с точкой 2\varphi. Уравнение такой прямой в декартовых координатах:
U(x,y,\varphi)=(x-\cos\varphi)(\sin 2\varphi-\sin\varphi)-(y-\sin\varphi)(\cos 2\varphi-\cos\varphi)=0.
Мы хотим найти огибающую семейства прямых U(x,y,\varphi)=0. Не трудно показать (или прочитать в википедии), что для этого должно выполняться U=\partial U/\partial\varphi=0. Решив эту линейную систему уравнений, получим параметрическое уравнение огибающей: x=\frac13(2\cos\varphi+\cos2\varphi), y=\frac13(2\sin\varphi+\sin2\varphi). Что и требовалось доказать.
Sign up to leave a comment.

Articles