Эта программа создана по мотивам Fractint и предназначена для построения фракталов с помощью черепашьей графики:
Скачать fractal-2013-12-08.tar.bz2 (42 Кб)
Скачать описание языка построения фракталов в форме Бекуса-Наура (3,24 Кб)
Скачать файл с примерами фракталов (10 Кб)
Для сборки Fractal необходимо установить пакет cmake.
Выполните следующие команды:
tar xvf fractal-xxxx-xx-xx.tar.gz cd fractal-xxxx-xx-xx cmake -DCMAKE_BUILD_TYPE=Release make
Также возможна сборка в cmake
и в Windows:
cmake -G "Visual Studio 10 Win64"
Синтаксис:
имя_фрактала { описание фрактала }
Параметры описания:
alpha | Начальный угол. Если не задан — считается равным нулю. |
theta | Задает угол смещения в радианах. |
angle | Задает угол смещения в градусах. |
axiom | Задает аксиому. |
+ или - | Увеличить или уменьшить угол на theta радиан. |
! | Инвертировать значения + или - . |
[ и ] | Начало и конец ветви. |
F или D | Рисовать вперед на шаг. |
G или M | Пройти на шаг вперед без рисования. |
CЧИСЛО* | Задает текущий цвет равный ЧИСЛУ. |
>ЧИСЛО* | Увеличивает текущий цвет на ЧИСЛО. |
<ЧИСЛО* | Уменьшает текущий цвет на ЧИСЛО. |
| | Увеличивает угол на 180°. |
\ЧИСЛО* | Увеличивает угол на ЧИСЛО градусов. |
/ЧИСЛО* | Уменьшает угол на ЧИСЛО градусов. |
@ЧИСЛО* | Умножает текущий шаг на ЧИСЛО. |
@qЧИСЛО* | Умножает текущий шаг на квадратный корень из ЧИСЛА. |
@IЧИСЛО* | Умножает текущий шаг на 1/ЧИСЛО. |
@IqЧИСЛО или @qIЧИСЛО* | Умножает текущий шаг на квадратный корень из 1/ЧИСЛО. |
; | Комментарий до конца строки. |
; order ЧИСЛО* | Задать порядок текущего фрактала равным ЧИСЛУ. |
* Допустимо указывать только целые числа.
Любые другие символы, не указанные в таблице, могут быть использованы как имена переменных. Имя переменной может состоять только из одного символа!
В одном файле может быть описано сразу несколько фракталов. При генерации изображений создаются файлы с названиями вида имя_фрактала.png
.
Koch2 { ; Adrian Mariano ; from The Fractal Geometry of Nature by Mandelbrot Angle 12 Axiom F---F---F---F F=-F+++F---F+ } Koch3 { ; Adrian Mariano ; from The Fractal Geometry of Nature by Mandelbrot Angle 4 Axiom F-F-F-F F=F-F+F+FF-F-F+F }
Изображения генерируются с помощью этой команды:
../bin/lsystem.exe -l 5 < scripts/snoopy.ls