Уроки, алгоритмы, программы, примеры

Вход на сайт

Материалы по разделам

Построения
на плоскости (2D)
Графика
в пространстве (3D)
Вычислительная
геометрия
Физическое
моделирование
Фрактальная
графика

Новые комментарии

добрый день! при попытке компиляции выдает Source.obj : error LNK2001: неразрешенный внешний символ "__imp_glPointSize" 1>Source.obj : error LNK2001: неразрешенный внешний символ "__imp_glPopMatrix" 1>Source.obj : error LNK2001: неразрешенный...
Можно точно вот эту программу просто наоборот типа:4,3,2,1,4 вот так надо двигаться
Здравствуйте. Спасибо за полезную инфу про уравнения а не матрицы. Во всём интернете только матрицы. У Вас опечатка в уравнении вращения по Z в координате Y= надо минус добавить И ещё. Все предыдущие уравнения можно подставить в последнее уравнение...
WebGL API Tutorial WebGL wiki Adding 2D content to a WebGL context

Счетчики и рейтинг

Рейтинг@Mail.ru Яндекс.Метрика


Папоротник Барнсли - фрактал, названный в честь Майкла Барнсли, британского математика, который первым описал его в своей книге "Фракталы Повсюду". Является одним из основных примеров "самоподобных" множеств, т.е. представляет собой математически генерируемый "шаблон", воспроизводимый при любом увеличении или уменьшении количества итераций.

Построение

Папоротник Барнсли строится при помощи 4-х афинных преобразований вида:

Барнсли представил свой IFS-код папоротника (Iterated function system - "Система повторяющихся функций") в виде матрицы значений:

w a b c d e f p
ƒ1 0 0 0 0.16 0 0 0.01
ƒ2 0.85 0.04 -0.04 0.85 0 1.6 0.85
ƒ3 0.2 -0.26 0.23 0.22 0 1.6 0.07
ƒ4 -0.15 0.28 0.26 0.24 0 0.44 0.07

где столбцы a-f - коэффициенты уравнения, а p - коэффициент вероятности, x и y - координаты.
Данная таблица отвечает следующим преобразованиям:




Папоротник Барнсли теоретически может быть построен вручную. Т.е. Вы берете ручку, лист в бумаги в мелкую клетку и следуете матрице коэффициентов. Однако, количество необходимый итераций исчисляется десятками тысяч, что делает использование компьютера, мягко говоря, желательным.
Варьируя значения констант в таблице можно получать множество различных моделей, отличных от Папоротника Барнсли:

Телиптерисовый папоротник





Лептоспоранговый папоротник



Пошаговое моделирование


Первая точка находится в начале координат (х0 = 0, у0 = 0), а затем новые точки итеративно вычисляются путем случайного применения одного из следующих четырех преобразований координат:

  • (1)xn + 1 = 0; yn + 1 = 0.16 yn.

Данное преобразование выбирается в 1% случаев и указывает на точку у основания "стебля". Эта часть рисунка в результате итерационных преобразований завершается первой.

  • (2) xn + 1 = 0.85 xn + 0.04 yn; yn + 1 = −0.04 xn + 0.85 yn + 1.6.

Преобразование (2) используется в 85% случаев и указывает на любую точку листовки попадающую в красный треугольник

  • (3) xn + 1 = 0.2 xn − 0.26 yn; yn + 1 = 0.23 xn + 0.22 yn + 1.6.

Выбирается в 7% случаев - попадания точки в синий треугольник и симметричного ему относительно главного стебля треугольника.

  • (4)xn + 1 = −0.15 xn + 0.28 yn; yn + 1 = 0.26 xn + 0.24 yn + 0.44.

В оставшихся 7% случаев используется преобразование (4) - для симметричных преобразованию (3) относительно стеблей 2-го порядка позиций.