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

Вход на сайт

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

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

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

Спасибо за реализацию, она действительно быстрая. Но не все линии отрисовывает в нужную сторону... Необходимо добавить проверку для случая X-линии if(y1 "<" y0) grad=-grad; и аналогично для Y-линии if(x1 "<" x0) grad=-grad; P.S. На...
Отличные уроки(учу GL по ним), только в renderScene нужно добавить очистку буфера цвета и буфера глубины. При изменении размеров треугольники размножаются)
как исправить это , сделал все по инструкции
Timer1 - выдает ошибку. Использовал IdleTimer1, работает! unit Unit1; {$mode objfpc}{$H+} interface uses Classes, SysUtils, FileUtil, Forms, Controls, Graphics, Dialogs, StdCtrls, ExtCtrls, OpenGLContext, GL, GLU; type { TForm1 } TForm1 =...
в коде присутствуют ошибки! // Считываем координаты procedure TForm1.getCoords(Sender: TObject); var j1:longint; begin n:= StrToInt(Edit2.Text); //число точек s1:=Edit1.Text; s2:=''; i := 1; j:=1; k:=0...

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

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

Фрактал Слово Фибоначчи -- самоподобная фрактальная кривая, реализующая Слово Фибоначчи с помощью простого и интересного начертания. Этот фрактал демонстрирует три типа узоров и большое количество самоподобностей, тесную связь с числами Фибоначчи.

Слово Фибоначчи

Бесконечное слово Фибоначчи -- специфическая бесконечная последовательность в двубуквенном алфавите.
Пусть f1 будет ”1” и f2 будет ”0”. Тогда fn = fn−1fn−2, объединение двух предыдущих условий.
Это также определяется следующим морфизмом σ : 0 → 01, 1 → 0, где f1 = 1.
Последовательные слова Фибоначии:
f1 : 1
f2 : 0
f3 : 01
f4 : 010
f5 : 01001
f6 : 01001010
f7 : 0100101001001
Бесконечное слово Фибоначчи это предел f.

Построение

Возьмём nю цифру слова Фибоначчи,
- рисуем сегмент
- если цифра ”0”,то :
поворачиваем налево, если ”n” четное,
направо, если ”n” нечетное.
- повторяем.

Будем называть этот алгоритм ”четное-нечетное правило рисования”.
Первые сегменты рисуются таким образом: первая цифра "0", поэтому рисуем вертикальный сегмент и поворачиваем направо. Вторая цифра ”1”, поэтому рисуем горизонтальный сегмент, третья цифра "0", поэтому продолжаем рисовать горизонтальный сегмент и поворачиваем направо. Четвертая цифра ”0”, поэтому рисуем вертикальный сегмент и поворачиваем налево. Продолжаем индуктивно.
Кривая распускается во фрактальный узор.

Демонстрационные примеры по теме

Скриншот к примеру
Java, Windows, Windows API


Скриншот к примеру
C++, SFML, Windows