Домой / Основные настройки / Фрактальная графика. Фракталы - фото. В лесах фрактальной графики

Фрактальная графика. Фракталы - фото. В лесах фрактальной графики

Фрактальная графика

Понятие фрактала и история появления фрактальной графики. Понятие размерности и ее расчет. Геометрические фракталы. Алгебраические фракталы. Системы итерируемых функций. Стохастические фракталы. Фракталы и хаос.

Понятие фрактала и история появления фрактальной графики

Вы, наверное, часто видели довольно хитроумные картины, на которых непонятно что изображено, но все равно необычность их форм завораживает и приковывает внимание. Как правило, это хитроумные формы не поддающиеся, казалось бы, какому–либо математическому описанию. Вы, к примеру, видели узоры на стекле после мороза или, к примеру, хитроумные кляксы, оставленные на листе чернильной ручкой, так вот что–то подобное вполне можно записать в виде некоторого алгоритма, а, следовательно, доступно объясниться с компьютером. Подобные множества называют фрактальными . Фракталы не похожи на привычные нам фигуры, известные из геометрии, и строятся они по определенным алгоритмам, а эти алгоритмы с помощью компьютера можно изобразить на экране. Вообще, если все слегка упростить, то фракталы – это некое преобразование многократно примененное к исходной фигуре.

Первые идеи фрактальной геометрии возникли в 19 веке. Кантор с помощью простой рекурсивной (повторяющейся) процедуры превратил линию в набор несвязанных точек (так называемая Пыль Кантора ). Он брал линию и удалял центральную треть и после этого повторял то же самое с оставшимися отрезками. Пеано нарисовал особый вид линии (см. рис). Для ее рисования Пеано использовал следующий алгоритм.

На первом шаге он брал прямую линию и заменял ее на 9 отрезков длинной в 3 раза меньшей, чем длинна исходной линии (Часть 1 и 2 рисунка 1). Далее он делал то же самое с каждым отрезком получившейся линии. И так до бесконечности. Ее уникальность в том, что она заполняет всю плоскость. Доказано, что для каждой точки на плоскости можно найти точку, принадлежащую линии Пеано . Кривая Пеано и пыль Кантора выходили за рамки обычных геометрических объектов. Они не имели четкой размерности. Пыль Кантора строилась вроде бы на основании одномерной прямой, но состояла из точек, а кривая Пеано строилась на основании одномерной линии, а в результате получалась плоскость. Во многих других областях науки появлялись задачи, решение которых приводило к странным результатам, на подобие описанных (Броуновское движение, цены на акции).

Вплоть до 20 века шло накопление данных о таких странных объектах, без какой либо попытки их систематизировать. Так было, пока за них не взялся Бенуа Мандельброт – отец современной фрактальной геометрии и слова фрактал . Работая в IBM математическим аналитиком, он изучал шумы в электронных схемах, которые невозможно было описать с помощью статистики. Постепенно сопоставив факты, он пришел к открытию нового направления в математике – фрактальной геометрии.

Сам Мандельброт вывел слово fractal от латинского слова fractus, что означает разбитый (поделенный на части). И одно из определений фрактала – это геометрическая фигура, состоящая из частей и которая может быть поделена на части, каждая из которых будет представлять уменьшенную копию целого (по крайней мере, приблизительно).

Как только Мандельброт открыл понятие фрактала , оказалось, что мы буквально окружены ими. Фрактальны слитки металла и горные породы, фрактальны расположение ветвей, узоры листьев, капиллярная система растений; кровеносная, нервная, лимфатическая системы в организмах животных, фрактальны речные бассейны, поверхность облаков, линии морских побережий, горный рельеф...

Чтобы представить себе фрактал понаглядней рассмотрим пример, приведенный в книге Б.Мандельброта «Фрактальная геометрия природы» ставший классическим – «Какова длина берега Британии?». Ответ на этот вопрос не так прост, как кажется. Все зависит от длины инструмента, которым мы будем пользоваться. Померив берег с помощью километровой линейки мы получим какую–то длину. Однако мы пропустим много небольших заливчиков и полуостровков, которые по размеру намного меньше нашей линейки. Уменьшив размер линейки до, скажем, 1 метра – мы учтем эти детали ландшафта, и, соответственно длина берега станет больше. Пойдем дальше и измерим длину берега с помощью миллиметровой линейки, мы тут учтем детали, которые больше миллиметра, длина будет еще больше. В итоге ответ на такой, казалось бы, простой вопрос может поставить в тупик кого угодно – длина берега Британии бесконечна.

Основное свойство фракталов – самоподобие . Любой микроскопический фрагмент фрактала в том или ином отношении воспроизводит его глобальную структуру. В простейшем случае часть фрактала представляет собой просто уменьшенный целый фрактал.

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

Берем отрезок и среднюю его треть переламываем под углом 60 градусов. Затем повторяем эту операцию с каждой из частей получившейся ломаной – и так до бесконечности. В результате мы получим простейший фрактал – триадную кривую , которую в 1904 году открыла математик Хельга фон Кох .

Если на каждом шаге не только уменьшать основной мотив, но также смещать и поворачивать его, можно получить более интересные и реалистически выглядящие образования, например, лист папоротника или даже целые их заросли. А можно построить весьма правдоподобный фрактальный рельеф местности и покрыть её очень симпатичным лесом. В 3D Studio Max, например, для генерации деревьев используется фрактальный алгоритм. И это не исключение – большинство текстур местности в современных компьютерных играх представляют фракталы. Горы, лес и облака на картинке – фракталы.

Файлы фрактальных изображений имеют расширение fif. Обычно файлы в формате fif получаются несколько меньше файлов в формате jpg, но бывает и наоборот. Самое интересное начинается, если рассматривать картинки со все большим увеличением. Файлы в формате jpg почти сразу демонстрируют свою дискретную природу – появляется пресловутая лесенка. А вот fif файлы, как и положено фракталам, с ростом увеличения показывают все новую степень детализации структуры, сохраняя эстетику изображения.

Понятие размерности и ее расчет

В своей повседневной жизни мы постоянно встречаемся с размерностями. Мы прикидываем длину дороги, узнаем площадь квартиры и т.д. Это понятие вполне интуитивно ясно и, казалось бы, не требует разъяснения. Линия имеет размерность 1. Это означает, что, выбрав точку отсчета, мы можем любую точку на этой линии определить с помощью 1 числа – положительного или отрицательного. Причем это касается всех линий – окружность, квадрат, парабола и т.д.

Размерность 2 означает, что любую точку мы можем однозначно определить двумя числами. Не надо думать, что двумерный – значит плоский. Поверхность сферы тоже двумерна (ее можно определить с помощью двух значений – углов наподобие ширины и долготы).

Если смотреть с математической точки зрения, то размерность определяется следующим образом: для одномерных объектов – увеличение в два раза их линейного размера приводит к увеличению размеров (в данном случае длинны) в два раза (2^1).

Для двумерных объектов увеличение в два раза линейных размеров приводит к увеличению размера (например, площадь прямоугольника) в четыре раза (2^2).

Для 3–х мерных объектов увеличение линейных размеров в два раза приводи к увеличению объема в восемь раз (2^3) и так далее.

Рассчитаем размерность для кривой Пеано. Исходная линия, состоящая из трех отрезков длинны Х, заменяется на 9 отрезков втрое меньшей длинны. Таким образом, при увеличении минимального отрезка в 3 раза длина всей линии увеличивается в 9 раз и D=log(9)/log(3)=2 – двумерный объект.

Когда размерность фигуры получаемой из каких–то простейших объектов (отрезков) больше размерности этих объектов – мы имеем дело с фракталом.

Геометрические фракталы

Именно с них и начиналась история фракталов. Этот тип фракталов получается путем простых геометрических построений. Обычно при построении этих фракталов поступают так: берется «затравка» – аксиома – набор отрезков, на основании которых будет строиться фрактал. Далее к этой «затравке» применяют набор правил, который преобразует ее в какую–либо геометрическую фигуру. Далее к каждой части этой фигуры применяют опять тот же набор правил. С каждым шагом фигура будет становиться все сложнее и сложнее, и если мы проведем бесконечное количество преобразований – получим геометрический фрактал.

Рассмотренная ранее кривая Пеано является геометрическим фракталом. На рис. ниже приведены другие примеры геометрических фракталов (слева направо Снежинка Коха, Лист, Треугольник Серпинского).


Рис. Снежинка Коха


Рис. Лист


Рис. Треугольник Серпинского

Из этих геометрических фракталов очень интересным и довольно знаменитым является – снежинка Коха . Строится она на основе равностороннего треугольника. Каждая линия которого заменяется на 4 линии каждая длинной в 1/3 исходной. Таким образом, с каждой итерацией длинна кривой увеличивается на треть. И если мы сделаем бесконечное число итераций – получим фрактал – снежинку Коха бесконечной длинны. Получается, что наша бесконечная кривая покрывает ограниченную площадь.

Размерность снежинки Коха (при увеличении снежинки в 3 раза ее длина возрастает в 4 раза) D=log(4)/log(3)=1.2619...

Для построения геометрических фракталов хорошо приспособлены так называемые L–Systems . Суть этих систем состоит в том, что имеется определенных набор символов системы, каждый из которых обозначает определенное действие и набор правил преобразования символов.

Алгебраические фракталы

Вторая большая группа фракталов – алгебраические . Свое название они получили за то, что их строят, на основе алгебраических формул иногда весьма простых. Методов получения алгебраических фракталов несколько. Один из методов представляет собой многократный (итерационный) расчет функции Zn+1=f(Zn), где Z – комплексное число, а f некая функция. Расчет данной функции продолжается до выполнения определенного условия. И когда это условие выполнится – на экран выводится точка. При этом значения функции для разных точек комплексной плоскости может иметь разное поведение:

    с течением времени стремится к бесконечности.

    стремится к 0

    принимает несколько фиксированных значений и не выходит за их пределы.

    поведение хаотично, без каких либо тенденций.

Чтобы проиллюстрировать алгебраические фракталы обратимся к классике – множеству Мандельброта .

Рис. Множество Мандельброта

Для его построения нам необходимы комплексные числа. Комплексное число – это число, состоящее из двух частей – действительной и мнимой, и обозначается оно a+bi. Действительная часть a это обычное число в нашем представлении, а bi – мнимая часть. i – называют мнимой единицей, потому, что если мы возведем i в квадрат, то получим –1.

Комплексные числа можно складывать, вычитать, умножать, делить, возводить в степень и извлекать корень, нельзя только их сравнивать. Комплексное число можно изобразить как точку на плоскости, у которой координата Х это действительная часть a, а Y это коэффициент при мнимой части b.

Функционально множество Мандельброта определяется как Zn+1=Zn*Zn+C. Для построения множества Мандельброта воспользуемся алгоритмом на Бейсике.

For a=–2 to 2 " для всех действительных а от –2 до 2

For b=–2 to 2 " для всех мнимых b от –2 до 2

"Принадлежит множеству Мандельброта

"Повторяем 255 раз (для режима 256 цветов)

For iteration=1 to 255

"Проверили – не принадлежит

If abs(Zn)>2 then Lake=False: Exit For

"Нарисовали черную точку,принадлежащую "озеру" Мандельброта.

If Lake=True Then PutPixel(a,b,BLACK)

" Нарисовали точку не принадлежащую множеству или лежащую на границе.

Else PutPixel(a, b, iteration)

А теперь опишу программку словами. Для всех точек на комплексной плоскости в интервале от –2+2i до 2+2i выполняем некоторое достаточно большое количество раз Zn=Z0*Z0+C, каждый раз проверяя абсолютное значение Zn. Если это значение больше 2, что рисуем точку с цветом равным номеру итерации на котором абсолютное значение превысило 2, иначе рисуем точку черного цвета. Все множество Мандельброта в полной красе у нас перед глазами.

Черный цвет в середине показывает, что в этих точках функция стремится к нулю – это и есть множество Мандельброта . За пределами этого множества функция стремится к бесконечности. А самое интересное это границы множества. Они то и являются фрактальными. На границах этого множества функция ведет себя непредсказуемо – хаотично.

Меняя функцию, условия выхода из цикла можно получать другие фракталы. Например, взяв вместо выражения С=a+bi выражение Z0=a+bi, а С присваивать произвольные значения мы получим множество Жюлиа , тоже красивый фрактал.

Для множества Мандельброта тоже проявляется самоподобие.

Стохастические фракталы

Типичный представитель данного класса фракталов «Плазма» .

Рис. Плазма

Для ее построения возьмем прямоугольник и для каждого его угла определим цвет. Далее находим центральную точку прямоугольника и раскрашиваем ее в цвет равный среднему арифметическому цветов по углам прямоугольника плюс некоторое случайное число. Чем больше случайное число – тем более «рваным» будет рисунок. Если, например, сказать, что цвет точки это высота над уровнем моря, то получим вместо плазмы – горный массив. Именно на этом принципе моделируются горы в большинстве программ. С помощью алгоритма, похожего на плазму строится карта высот, к ней применяются различные фильтры, накладываем текстуру.

Системы итерируемых функций (IFS – Iterated Function Systems)

Эта группа фракталов получила широкое распространение благодаря работам Майкла Барнсли из технологического института штата Джорджия. Он пытался кодировать изображения с помощью фракталов. Запатентовав несколько идей по кодированию изображений с помощью фракталов, он основал фирму «Iterated Systems», которая через некоторое время выпустила первый продукт «Images Incorporated», в котором можно было изображения переводить из растровой формы во фрактальную FIF.

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

Если в L–systems (алгебраических фракталах) речь шла о замене прямой линии неким полигоном, то в IFS мы в ходе каждой итерации заменяем некий полигон (квадрат, треугольник, круг) на набор полигонов, каждый их которых подвергнут аффинным преобразованиям. При аффинных преобразованиях исходное изображение меняет масштаб, параллельно переносится вдоль каждой из осей и вращается на некоторый угол.

Фракталы и хаос

Понятие фрактал неразрывно связано с понятием хаос. Хаос – это отсутствие предсказуемости. Хаос возникает в динамических системах, когда для двух очень близких начальных значений система ведет себя совершенно по–разному. Пример хаотичной динамической системы – погода (метеорологи шутят: «Взмах крыла бабочки в Техасе приводит к урагану во Флориде»).

Хорошо проиллюстрировать хаотичное поведение можно с помощью так называемого logistic equation x=c*x(1–x). Пришло это выражение из биологии, т.к. это грубая модель популяции животных. Так вот при исследовании поведения этой функции выяснилась интересная ее особенность. Если с – фактор роста популяции находится в пределах от 1 до 3, то через некоторое количество итераций популяция стабилизируется.

При с=3 наша функция раздваивается – через определенное число итераций приходим к ситуации, когда высокая популяция в один год сменяется низкой в следующий и значение выражения как бы скачет между двумя значениями.

При с=3.45 она раздваивается снова и у нас уже имеется четырехлетний цикл.

И в точке 3.57 начинается хаос. Значения выражения не имеют какой либо периодичности или структуры. На рисунке изображена зависимость поведения функции от величины с.

На сегодня фрактальная графика очень быстро развивается и весьма популярна и перспективна. Основой фрактальной графики является геометрия. Основным методом создания изображений является принцип наследственности от геометрического свойства наследников.

Фрактал - это структура, которая состоит из частей, подобных целому. Его основное свойство - самоподобие. Объекты, называют самоподобными, если части объекта после увеличения, остаются похожими друг на друга.

Центром фрактальной фигуры является её простейший элемент - треугольник с равными сторонами, который назвали «фрактальный». На середине сторон треугольника строят такие же равносторонние треугольники, которые равны одной третьей стороны исходной фигуры. Затем, на треугольниках первого поколения выстраивают треугольники второго поколения, но уже со стороной равно одной девятой от стороны центрального треугольника. Этот процесс можно продолжать нескончаемое число раз.

Изменение и комбинируя окраски фрактальных фигур, возможно, проектировать живые или неживые природные образы, такие как снег или же деревья, ветви, листья. Составлять фрактальную композицию. Изображения фрактальной графики состоят из уравнений или по системе уравнений. Фрактальная графика - это вычисление. Для того, что выполнять изображения такой графики, компьютеру нужно хранить только формулу или алгоритм, по которой производятся вычисления. Заменив коэффициенты уравнения, можем создать абсолютно другое изображение, а при использовании сразу нескольких коэффициентов одновременно, можно создать линии или поверхность самого сложной формы.

Фрактальная графика 21 века стала популярной совсем недавно, в ней используются такие понятия, как: фрактальные треугольники, фигуры, объекты прямые и композиции. А так же «Объекты-родители» и «Объекты-наследники». Все эти понятия играют свою роль в создании изображения.

При помощи фрактальной компьютерной графики создаются абстрактные композиции, реализующие такие приемы композиции как линии горизонтальные и вертикальные, любые направления диагоналей, различные симметричные и асимметричные. Немногие российские и зарубежные программисты, и компьютерные дизайнеры знакомы с фрактальной графикой.

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

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

Создателями фракталов является человек разносторонний, владеющий несколькими профессиями сразу. Он должен быть одновременно и художником, и скульптором, и фотографом. Создавая рисунок свои руками, вы пользуясь математической формулой сам задаете ту форму изображения, которая вам нужна. Подстраиваете параметры, выбираете, каким рисунок будет по виду, какого цвета. Отличие фрактальной графики от других редакторов графики, например Photoshop, заключается в том, что вы создаете свой уникальный рисунок с «ноля».

В Photoshop невозможно создать рисунок, его можно лишь отредактировать или отформатировать, придать ему необходимый цвет, размер, улучшить качество и сгладить недостатки. Отличительной чертой редактора Painter считается то, что художник, в реале работающий без помощи компьютера, не сможет, используя кисть, перо или карандаш, тех же возможностей, что даны в Painter.





Фрактальная графика — новая технология, позволяющая получать уникальные красивые картины, но не только это. Читайте и смотрите видео про применение, примеры и изображения фрактальной графики.

Как был открыт фрактал

Математические формы, известные как фракталы, принадлежат гению выдающегося ученого Бенуа Мандельброта. Большую часть жизни он провёл в Соединенных Штатах, где преподавал математику в Йельском университете. В 1977 и 1982 годах Мандельброт опубликовал научные труды, посвященные изучению «фрактальной геометрии» или «геометрии природы».

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

Как устроен фрактал

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

Структура фрактала на всех шкалах является нетривиальной. Здесь нужно уточнить, что имеется в виду. Так вот, регулярные фигуры, такие как окружность, эллипс или график гладкой функции устроены таким образом, что при рассмотрении небольшого фрагмента регулярной фигуры в достаточно крупном масштабе он будет схожим с фрагментом прямой. Для фракталов же увеличение масштаба не приводит к упрощению структуры фигуры, и на всех шкалах мы видим однообразно сложную картину.

Изображение объектов фрактальной графики

Изображение объектов фрактальной графики в природе

Фракталы в природе

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

Рассмотрим строение цветной капусты. Если разрезать один из цветков, очевидно, что в руках остаётся всё та же цветная капуста, только меньшего размера. Можно продолжать резать снова и снова, даже под микроскопом - однако все, что мы получим - это крошечные копии цветной капусты. В этом простейшем случае даже небольшая часть фрактала содержит информацию обо всей конечной структуре.

Ярким примером фрактала в природе является «Романеску», она же «романская брокколи» или «цветная коралловая капуста». Первые упоминания об этом экзотическом овоще относятся к Италии 16 века. Почки этой капусты растут по логарифмической спирали. Ей не перестают восхищаться 3D-художники, дизайнеры и кулинары.

Последние, причём, особенно ценят овощ за самый утончённый вкус (сладковато-ореховый, а не сернистый оттенок), какой только может быть у капусты, и за то, что он менее рассыпчатый, чем обычная цветная капуста. Кроме того, романская брокколи богата витамином С, антиоксидантами и каротиноидами.

Фракталы в цифровой технике

Фрактальная геометрия внесла неоценимый вклад в разработку новых технологий в области цифровой музыки, а так же сделала возможной сжатие цифровых изображений. Существующие фрактальные алгоритмы сжатия изображения основаны на принципе хранения сжимающего изображения вместо самой цифровой картинки.

Для сжимающего изображения основная картинка остаётся неподвижной точкой. Фирма «Microsoft» использовала один из вариантов данного алгоритма при издании своей энциклопедии, но по тем или иным причинам широкого распространения эта идея не получила.

Фрактальная графика достоинства и недостатки

Фракталы в сети

Принцип фрактального сжатия информации для компактного сохранения сведений об узлах сети «Netsukuku» использует система назначения IP-адресов. Каждый её узел хранит 4 килобайта информации о состоянии соседних узлов.

Любой новый узел подключается к общей сети Интернет, не требуя центрального регулирования раздачи IP-адресов. Можно сделать вывод, что принцип фрактального сжатия информации обеспечивает децентрализованную работу всей сети, а потому работа в ней протекает максимально устойчиво.

Фракталы в графике

Фракталы широко применяются в компьютерной графике – при построении изображений деревьев, кустов, поверхности морей, горных ландшафтов, и других природных объектов. Благодаря фрактальной графике был изобретён эффективный способ реализации сложных неевклидовых объектов, чьи образы похожи на природные: это алгоритмы синтеза коэффициентов фрактала, позволяющие воспроизвести копию любой картинки максимально близко к оригиналу.

Интересно, что кроме фрактальной «живописи» существуют так же фрактальная музыка и фрактальная анимация. В изобразительном искусстве существует направление, занимающееся получением изображения случайного фрактала – «фрактальная монотипия» или «стохатипия».

В математической основе фрактальной графики лежит фрактальная геометрия, где в основу методов построения «изображений-наследников» помещён принцип наследования от исходных «объектов-родителей». Сами понятия фрактальной геометрии и фрактальной графики появилось всего около 30 лет назад, но уже прочно вошли в обиход компьютерных дизайнеров и математиков.

Базовыми понятиями фрактальной компьютерной графики являются:

  • Фрактальный треугольник - фрактальная фигура - фрактальный объект (иерархия в порядке убывания)
  • Фрактальная прямая
  • Фрактальная композиция
  • «Объект-родитель» и «Объект наследник»

Создание фрактальной графики картинки

Также как в векторной и трёхмерной графике, создание фрактальных изображений математически вычисляемо. Главное отличие от первых двух видов графики в том, что фрактальное изображение строится по уравнению или системе уравнений, - ничего кроме формулы в памяти компьютера для выполнения всех вычислений хранить не нужно, - и такая компактность математического аппарата позволила использование этой идеи в компьютерной графике.

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

Как построить фрактал?

Создатель фракталов выполняет роль художника, фотографа, скульптора, и ученого-изобретателя одновременно. Какие предстоят этапы работы сотворения рисунка «с нуля»?

  • задать форму рисунка математической формулой
  • исследовать сходимость процесса и варьировать его параметры
  • выбрать вид изображения
  • выбрать палитру цветов

Среди фрактальных графических редакторов и прочих графических программ можно выделить:

  • «Art Dabbler»
  • «Painter» (без компьютера ни один художник никогда не достигнет заложенных программистами возможностей лишь посредством с помощью карандаша и пера кисти)
  • «Adobe Photoshop» (но здесь изображение «с нуля» не создается, а, как правило, только обрабатывается)

Рассмотрим устройство произвольной фрактальной геометрической фигуры. В её центре находится простейший элемент - равносторонний треугольник, получивший одноимённое название: «фрактальный». На среднем отрезке сторон построим равносторонние треугольники со стороной, равной одной трети от стороны исходного фрактального треугольника.

По тому же принципу строятся ещё более мелкие треугольники-наследники второго поколения – и так до бесконечности. Объект, который в результате получился, называется «фрактальной фигурой», из последовательностей которой получаем «фрактальную композицию».

Фрактальная графика , как и векторная, основана на математических вычислениях . Однако её базовым элементом является сама математическая формула , то есть никаких объектов в памяти компьютера не хранится и изображение строится исключительно по уравнениям либосистемам уравнений . Таким способом строят как простейшие регулярные структуры, так и сложные иллюстрации, имитирующие природные ландшафты и трехмерные объекты.

Определение . Фрактал - это объект, отдельные элементарные части которого повторяют (наследуют) свойства своих «родительских » структур.

Понятия фрактал и фрактальная геометрия (от лат. fractus - состоящий из фрагментов ) впервые были предложены в 1975 г. математиком Б.Мандельбротом для обозначения нерегулярных , но самоподобных структур . Рождение фрактальной геометрии связывают с выходом в 1977 г. его книги «Фрактальная геометрия природы», в которой были объединены в единую систему научные разработки учёных, работавших в этой области (Пуанкаре, Жюлиа, Кантор и др.). С точки зрения компьютерной графики фрактальная геометрия незаменима при задании линий и поверхностей достаточно сложной формы, а также при генерации объектов, образы которых весьма похожи на природные.

Одним из основных свойств фракталов является их самоподобие . В самом простом случае небольшая часть фрактала содержит информацию обо всём фрактале в целом. Существует большое разнообразие фракталов. Потенциально наиболее полезным их видом являются фракталы на основе системы итеративных функций (Iterated Function System – IFS ). Метод IFS , изобретённый Майклом Барнсли и его коллегами из Технологического института шт. Джорджия (США), применительно к построению фрактальных изображений базируется на самоподобии их отдельных элементов и заключается в моделировании всего рисунка несколькими меньшими его фрагментами . Специальные уравнения позволяют переносить, поворачивать и изменять масштаб отдельных участков изображения, служащих компоновочными блоками для остальной части картины в целом.

Самыми известными природными фрактальными объектами являются деревья , от каждой ветки которых ответвляются меньшие, похожие на нее, от тех - еще меньшие и так далее. Появление новых элементов меньшего масштаба происходит по достаточно простому алгоритму. Очевидно, что описать такой объект можно всего лишь несколькими математическими уравнениями. Фрактальными свойствами обладают также и многие другие природные объекты: снежинка при увеличении тоже оказывается фракталом, по фрактальным алгоритмам растут кристаллы, растения и т.д.

Посмотрим, как строится простейший фрактал - фрактальный треугольник, его еще называют «снежинка Коха » (рис. 8.2.). Используя простейший алгоритм, треугольники можно достраивать аналогичным образом до бесконечности, что приведёт к получению объекта любого уровня сложности. При этом в отличие от векторной графики, ничего кроме самих уравнений в памяти ком-пьютера хранить не нужно. Вся информация, необходимая для воспроизведения этого фрактала, будет занимать всего лишь несколько десятков байт. Возникает вопрос - а можно ли сжимать данные, подобрав для этого подходящий фрактальный алгоритм? Принципиально - можно, и в этом направлении в настоящее время ведутся активные исследования. Некоторые уже разработанные фрактальные алгоритмы позволяют сжимать определенные типы файлов в 30 раз и более.

8.6.Трехмерная (3D) графика.

Трехмерная графика нашла широкое применение в таких областях, как научные расчеты, инженерное проектирование, компьютерное моделирование физических объектов и т.п. В качестве примера рассмотрим наиболее сложный вариант трехмерного моделирования - создание подвижного изображения реального физического тела . В упрощенном виде для пространственного моделирования объекта требуется:

§ Спроектировать и создать виртуальный каркас скелет ») объекта, наиболее полно соответствующий его реальной форме;

§ Спроектировать и создать виртуальные материалы (текстуры ), по физическим свойствам визуализации похожие на реальные;

§ Наложить виртуальные материалы на различные части поверхности объекта (спроецировать текстуры на объект );

§ Настроить физические параметры пространства , в котором будет находиться объект, т.е. задать освещение, гравитацию, свойства атмосферы и т.д.;

§ Задать траекторию движения объекта;

§ Наложить поверхностные эффекты на итоговый анимационный сюжет.

Для создания реалистичной каркасной модели объекта используют геометрические примитивы (прямоуголь­ник, куб, шар, конус и прочие) и гладкие , так назы­ваемые сплайновые поверхности . В последнем случае вид поверхности определя­ется расположенной в пространстве сеткой опор­ных точек , каждой из которых присваивается коэф­фициент , задающий степень её влиянии на часть поверхности , расположенной вблизи опорной точки . От взаимного распо­ложения точек и величины коэффициентов зависит форма и гладкость поверх­ности в целом. Деформация объекта в общем случае обеспечивается перемещением отдельных контрольных точек каркаса , связанных с близлежащими опорными точками и влияющих на них в соответствии с удаленностью друг от друга. Специальный инструментарий позволяет обрабатывать примитивы, составляющие объект, как единое целое с учетом их взаимодействия на основе заданной физической модели.

После формирования «скелета » объекта необходимо покрыть его поверхность требуемыми материалами (текстурами). При этом осуществляется так называемая визуализация поверхности , т.е. расчет коэффициента её прозрачности, угла преломления лучей света на границе материала и окружающего пространства и т.д. Закраска поверхностей объекта осуществляется, как правило, метода­ми Гуро или Фонга,) представляющими собой специальные алгоритмы расчета и формирования цветовых оттенков отдельных частей этих поверхностей.

Из всех параметров пространства, в котором будет существовать создаваемый объект, с точки зрения визуализации самым важным является определение источников света . В трехмерной графике принято использовать виртуальные эквиваленты реальных физичес­ких световых источников, таких как, например, Солнце (удаленный неточечный источник ), электри­ческая лампочка (точечный источник ), естественная освещенность вне видимости Солнца и Луны (растворен­ный свет ), прожектор (направленный источник ).

После завершения конструирования и визуализации объекта приступают к его «оживлению », то есть заданию параметров движения. Компьютерная анимация базируется на ключевых кадрах изображения . В первом кадре объект выставляется в исходное положение. Через определенный промежуток (например, в пятом кадре) задается новая ориентация объекта и так далее до конечного положения. Промежуточные кадры вычисляются программно по специальному алгоритму. При этом происхо­дит не просто линейная аппроксимация, а плавное изменение положения опорных точек объекта в соответствии с заданными условиями, определяемыми законами взаимодействия объектов между собой, разрешенными плоскостями движения, предельными углами поворотов, величинами ускорений и скоростей и т.д. Такой подход называют методом инверсной кинематики движения . Он хорошо работает при моделировании различных механических устройств. В случае с имитацией живых объектов используют так называемые скелетные модели , когда создается некий каркас, подвижный в точках, характерных для моделируемого объекта. Движения этих точек просчитываются предыдущим методом, затем на каркас накладывается оболочка из смоделированных поверхностей и осуществляется их визуализация путем наложения текстур с учетом условий освещенности.

Наиболее совершенный метод анимации заключается в фиксации реальных движений физического объекта. Для этого на объекте закрепляют в контрольных точках источники света и снимают заданное движение на видео- или кинопленку. Затем координаты этих точек по кадрам переводят в компьютер и присваивают соответствующим опорным точкам каркасной модели . В результате движе­ния смоделированного объекта оказываются практически неотличимыми от движений живого прототипа.

Процесс расчета реалистичных изображений в компьютерной графике называют рендерингом (визуализацией ). Применение сложных математических моделей позволяет имитировать такие физи­ческие эффекты, как взрывы, дождь, огонь, дым, туман и т.д. Однако их применение в полном объеме требует достаточно больших вычислитель­ных ресурсов и поэтому в персональных компьютерах обычно реализуется лишь в упро­щенных вариантах. По завершении рендеринга компьютерную трехмерную анимацию используют либо как самостоятельный продукт, либо в качестве отдельных частей или кадров других продуктов.

Особую область трехмерного моделирования в режиме реального времени состав­ляют тренажеры технических средств - автомобилей, судов, летательных и кос­мических аппаратов. В них очень точно должны быть смоделированы технические параметры реальных объектов и свойства окружающей физической среды. В более простых вариантах, например при обучении вождению наземных транспортных средств, тре­нажеры могут быть реализованы и на персональных компьютерах.

Среди программных средств создания и обработки трехмерной графики для персональных компьютеров можно выделить три пакета:

§ 3D Studio Max (фирмаKinetix). Пакет считается полупрофессиональным, однако его ресурсов вполне хватает для разработки качественных трехмерных изображений объектов неживой природы. Его отличительными особенностями являются поддержка большинства существующих аппаратных ускорителей 3D -графики, мощные световые эффекты и большое число программных дополнений от сторонних фирм. Сравнительная нетребовательность к аппаратным ресурсам позволяет использовать 3D Studio Max даже на ПК среднего уровня. Вместе с тем по средствам моделирования и анимации он все же уступает более разви­тым современным программным средствам.

§ Softimage 3D (фирмаMicrosoft). Программа изначально создавалась для специализированных графических станций и лишь сравнительно недавно была конвертирована под операционную систему Windows NT. Её отличают богатые возможности моделирования, наличие большого числа регулируемых физических и кинематографических параметров, качественный и достаточно быстрый модуль для рендеринга и множество программных дополнений, значительно расширяющих функции пакета. Однако на платформе IBM PC Softimage 3D выглядит несколько тяжеловато и требует достаточно мощных аппаратных ресурсов.

§ Maya (фирмыAlias, Wavefront, TDI). Один из наиболее передовых пакетов в классе средств создания и обработки трехмерной графики для персональных компьютеров с точки зрения интерфейса и функциональных возможностей. Существует в вариантах для различных операционных систем, в том числе и Windows NT. Весь инструментарий Maya сведен в четыре группы: анимация (Animation ), моделирование (Modeling ), физическое моделирование (Dynamic ) и визуализация (Rendering ). Пакет имеет модульное построение и включает в себя программные блоки, обеспечивающие имитацию физических твердых тел, захват движения, обработку звука, обработку вирту­альных моделей методами, характерными для реальной работы скульпторов и художников, а также сопряжение реальных натурных съемок с компьютерной анимацией и т.д.

Что будем делать с полученным материалом:

Если этот материал оказался полезным ля Вас, Вы можете сохранить его на свою страничку в социальных сетях:

Все темы данного раздела:

Издательство СПбГПУ
УДК 681.3 (075) Рекомендовано к изданию Научно-методическим советом Псковского государственного политехнического института Рецензенты: - Ил

Основы информатики
1. Информация и информационные процессы Основные понятия: информация, информационные процессы, информационное общество, и

Информационные технологии
7. Технологии обработки текстовой информации Основные понятия: текстовый редактор и процессор, Формат текстового файла, Т


Типовая структура пользовательского интерфейса текстового процессора приведена на рис. 7.1 и она включает следующие элементы: § Строка главного меню содержит имена групп к

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

Этапы формирования текстового электронного документа
Любой текстовый документ в процессе своего формирования проходит следующие этапы (рис.7.2):) 1. Создание документа. 2. Вво

Редактирование текста
Операция редактированиятекста состоит в замене или корректировке неправильно введенных текстовых фрагментов, изменении некоторых атрибутов этих фрагментов и прочее. При выполнении

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

Поиск и замена фрагментов текста
Зачастую при форматировании текста возникает необходимость оперативного поиска и замены по всему набранному тексту документа неправильно набранных слов или словосочетаний, отдельных служебных симво

Стили и шаблоны
Наиболее мощным средством автоматизации форматирования в текстовых редакторах является механизм под названием «стиль». Известно два основных подхода к оформлению текстовог

Средства автоматизации ввода текста
При вводе текста эффективными средствами автоматизации являютсяавтозамена, автотекст, автопроверка орфографии и грамматики. Функция автозамена позволяет с

Автоматическое форматирование текстового документа
Под автоформатированиемпонимается автоматическое оформление текстового документа либо сразу при вводе текста, либо по окончании в случае активизации соответствующей команды. Систем

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

Создание графических объектов с помощью встроенных средств
В современных текстовых процессорах можно создавать рисованные объекты, не закрывая документа, в который они должны быть, вставлены. Рисование происходит прямо в документе с использованием внутренн

Вставка объектов из других приложений
Как уже упоминалось, главным принципиальным достоинством современных текстовых процессоров является возможность создания сложных составных документов. Под сложным составным докумен

Основы издательского делопроизводства
Подготовка сложных составных документов к их изданию в виде брошюр, технических отчетов, сборников документов, журналов, книг и иной печатной продукции до недавнего времени достаточно сложным, труд

Теоретические основы представления графических данных
Представление компьютерных данных в графическом виде впервые было реализовано еще в середине 50-х годов 20-го века в задачах научных и военных исследований. С тех пор графический способ отображения

Форматы графических данных
В компьютерной графике используется несколько десятков различных форматов файлов для хранения изображений, но лишь часть из них стала стандартом и применяется в подавляющем большин

Растровая графика
Растровые изображения формируются в процессе преобразования графической инфор­мации из аналоговой формы в цифровую, например, при сканировании существующих на бумаге или фотоплен­к

Векторная графика
Векторные изображения формируются из объектов (точка, линия, окружность, треугольник, прямоугольник и пр.), которые хра­нятся в памяти компьютера в виде графических примити

Цвет и способы его описания
8.7.1. Понятие цвета и его характеристики.) Цвет чрезвычайно важен в компьютерной графике как средство усиления зритель

Способы описания цвета
Цвета в природе образуются различным образом. С одной стороны, световые источники (Солнце, лампочки, экраны компьютеров и телевизоров) излучают свет различных длин волн, воспринима

Цветовая палитра
Электронная цветовая палитра в компьютерной графике по предназначению подобна палитре художника, но включает в себя гораздо большее число цветов. Это своеобразная таблица данных, в

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

Цветовая модель RGB
Цветовая модель RGB (Рис. 8.3.) является аддитивной, т.е. в ней любой цвет представляет собой сочетание в

Цветовая модель CMYK
Несветящиеся объекты поглощают часть спектра белого света, отражая цвета, определяющие окраску этих объектов. Цвета, которые образуются из белого света путем вычитания из него определенных участков

Цветовая модель CIE Lab
Модели RGB и CMYK являются аппаратно-зависимыми (в RGB значения базовых цветов определяются, как правило, качеством монит

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

Графические редакторы и их возможности
Для созда­ния, просмотра и редактирования графических изображений на компьютере используют­ся специальные программы - графические редакторы, подразделяемые, как правило, на две кат

Растровые графические редакторы
Среди растровых графических редакторов есть простые, на­пример приложение Windows Paint, и мощные профессио­нальные графические системы, такие как пакет Ad

Векторные графические редакторы
К простейшим векторным графическим редакторам относятся, например, графические программные приложения в составе текстового процессора Microsoft Word и редактора эл

Редакторы электронных таблиц и табличные процессоры
9.1.1.Назначение, Основные функции, Классификация, Ценность любой информации в значительной мере определяется качеством её организации, и, более того, существенная

Форматы табличных файлов
Электронные таблицы, также как и другие электронные документы (текстовые, графические, комплексные), хранятся на внешних носителях в виде файлов. Как правило, при сохранении файлов электронных табл

Типовая структура пользовательского интерфейса
При работе с электронной таблицей на экране монитора выводятся рабочее поле таблицы и панель управления (рис.9.1). Панель управления обычно включа

Этапы формирования электронной таблицы
Любой табличный документ в процессе своего формирования проходит следующие этапы:) 1. Создание таблицы или ее загрузка. 2.

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

Редактирование электронной таблицы
Редактирование электронной таблицы состоит в замене или корректировке неправильно введенных данных, изменении некоторых их атрибутов, изменении содержимого отдельных ячеек, их удал

Форматирование таблицы
Легкость восприятия информации в электронных таблицах резко улучшается при применении различных приемов форматирования, т.е. при оформлении таблицы в определенномпрофессиональном стиле

Сортировка, поиск и замена данных
Электронные таблицы позволяют осуществлять сортировку данных. Данные в электронных таблицах можно сортировать по возрастанию или по убыванию. Стро

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

Средства автоматизации ввода данных
При вводе данных обычно используются следующие приемы автоматизации: · Повторный ввод (копирование)уже существующих данных путем использования буфера обме

Автоматическое форматирование электронных таблиц
Для обеспечения быстрого форматирования как содержимого ячеек, так и внешнего вида таблицы используются средства автоматического форматирования. К этим средствам можно отнести: · С

Автоматизация циклических вычислений и создания формул
Как уже отмечалось, современные табличные процессоры представляют собой мощные программные системы, ориентированные в первую очередь на эффективную математическую обработку разнообразной числовой и

Деловая графика в табличных процессорах
Деловая графика состоит в визуализации больших массивов числовых данных, т.е. в пред­ставлении их в наглядной графической форме, в виде диаграмм. Определение. Диаг

Агрегирование данных
Агрегирование данных состоит в формировании промежуточных итогов, а также создании сводных и консолидированных таблиц.

Использование электронных таблиц для решения задач
Качественная и глубокая проработка математических и алгоритмических возможностей современных табличных процессоров превратила их мощный математический инструмент подготовки и проведения прикладных

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

Решение задач моделирования объектов, процессов, явлений
Кроме рассмотренных в пп. 9.8.1 и 9.8.2 задач, табличные процессоры позволяют решить и много других задач моделирования финансово-экономи-ческих, управленч

Базы данных
С самого начала развития вычислительной техники образовались два основных направления ее использования: § Первое - это применение вычислительной техники для выполнения численных ра

Требования, предъявляемые к БД и информации, хранящейся в ней
Для того, чтобы компьютерная БД приносила людям пользу, она должна отвечать следующему ряду требований: § Адекватность

Типы баз данных
За время использования компьютерных БД было предложено несколько типовых структур (по-другому называемых видами или типами БД), н

Основные объекты в базах данных
К основным объектам баз данныхотносятсятаблицы (отношения, relations), метаданные (metadata), индексы (indexes) и представления (view) )

Виды запросов и способы их организации
Определение. Любые манипуляции с данными в базах данных, такие как выбор, вставка, удаление, обновление данных, изменение или выбор метаданных, называются запросами к базе данных (query)

Понятие мультимедиа. Гипертекст и гипермедиа. Объекты мультимедиа
Термин мультимедиа (от англ. multimedia) можно перевести как «много сред» или «много носителей», т.е.: Определение.

Схемы хранения и воспроизведения мультимедиа-файлов
Для реализации мультимедиа компьютер должен быть оснащен следующими компонентами: § Аппаратными средствами, реализующими доступ к мультимедиа-данным, их создание и воспроизведение - иными

Средства создания мультимедиа документов (обзор)
В настоящее мультимедиа-технологии нашли широкое применение при создании разнообразных документов делового и развлекательного характера, презентационного назначения, когда возникает необходимость п

Компьютерные сети
Телекоммуникации в широком смысле этого понятия - это общение между субъектами, которыми могут быть люди, приборы, компьютеры, любые технические системы, находящимися на таком

Топология сети
Определение. Структура связей абонентов (узлов) вычислительной сети или, иными словами, метод их соединения в распределенную вычислительную среду, образующий некоторую физическую г

Архитектура сети
Определение. Системное описание вычислительной сети, определяющее функциональное назначение сетевых узлов при взаимодействии их друг с другом с целью обмена данными и организации у

Средства реализации сетей
В структуре сети любого масштаба легко выделить основные компоненты, без которых она не может быть реализована. Это, прежде всего: · Аппаратные средства, которые включают:

Основные пользовательские функции Internet
Развивая глобальные распределенные вычислительные среды (РВС) человечество создает на планете Земля новую универсальную интеллектуальную информационную среду. Одним из самых ярких

Структура Internet
Определение. Internet- это объединенная сеть, использующая технологию статистического мультиплексирования и устройства маршрутизации пакетов типа

Адресация в Internet
С точки зрения пользователя Internet - это совокупность крупных сетевых узлов (хостов или информационных серверов), объединенных между собой

Базовые информационные службы Интернет
Изначально сеть Internet была задумана и построена с целью автоматизациипроцессов обработки данных. Термин «обработка данных» озн

Off-line-сервисы Internet
§ Служба электронной почты e-mail, предоставляющая пользователю возможность обмена сообщения с другими абонентами по электронными коммуникациям. Можно пересылать текстовые сообщени

On-line-сервисs Internet
§ Служба удаленного файлового обмена FTP (File Transfer Protocol), предоставляющая FTP-клиенту механизм интерактивного доступа к файлохран

Internet-провайдеры
Интернет-провайдерами (от англ. to provide - предоставлять) называются сетевые компании, предоставляющие доступ к услугам глобальной сети Интернет

Web-браузеры
Как уже упоминалось ранее для просмотра WWW-ресурсовглобальной сетиИнтернет необходимо на клиентских станциях, подключенных к сети, установить клиентские программн

Основы технологии WWW
12.6.1.Архитектура распределенной Web-системы. Фундаментом Web-систем являются четыре компоненты:)

Пособие для поступающих в вуз
Под общей редакцией доцента, к.т.н. В.С. Белова Технический редактор В.С. Белов Компьютерная верстка: авторский коллектив

Фрактальная графика , как и векторная, основана на математических вычислениях . Однако её базовым элементом является сама математическая формула , то есть никаких объектов в памяти компьютера не хранится и изображение строится исключительно по уравнениям либосистемам уравнений . Таким способом строят как простейшие регулярные структуры, так и сложные иллюстрации, имитирующие природные ландшафты и трехмерные объекты.

Определение . Фрактал - это объект, отдельные элементарные части которого повторяют (наследуют) свойства своих «родительских » структур.

Понятия фрактал и фрактальная геометрия (от лат. fractus - состоящий из фрагментов ) впервые были предложены в 1975 г. математиком Б.Мандельбротом для обозначения нерегулярных , но самоподобных структур . Рождение фрактальной геометрии связывают с выходом в 1977 г. его книги «Фрактальная геометрия природы», в которой были объединены в единую систему научные разработки учёных, работавших в этой области (Пуанкаре, Жюлиа, Кантор и др.). С точки зрения компьютерной графики фрактальная геометрия незаменима при задании линий и поверхностей достаточно сложной формы, а также при генерации объектов, образы которых весьма похожи на природные.

Одним из основных свойств фракталов является их самоподобие . В самом простом случае небольшая часть фрактала содержит информацию обо всём фрактале в целом. Существует большое разнообразие фракталов. Потенциально наиболее полезным их видом являются фракталы на основе системы итеративных функций (Iterated Function System – IFS ). Метод IFS , изобретённый Майклом Барнсли и его коллегами из Технологического института шт. Джорджия (США), применительно к построению фрактальных изображений базируется на самоподобии их отдельных элементов и заключается в моделировании всего рисунка несколькими меньшими его фрагментами . Специальные уравнения позволяют переносить, поворачивать и изменять масштаб отдельных участков изображения, служащих компоновочными блоками для остальной части картины в целом.

Самыми известными природными фрактальными объектами являются деревья , от каждой ветки которых ответвляются меньшие, похожие на нее, от тех - еще меньшие и так далее. Появление новых элементов меньшего масштаба происходит по достаточно простому алгоритму. Очевидно, что описать такой объект можно всего лишь несколькими математическими уравнениями. Фрактальными свойствами обладают также и многие другие природные объекты: снежинка при увеличении тоже оказывается фракталом, по фрактальным алгоритмам растут кристаллы, растения и т.д.

Посмотрим, как строится простейший фрактал - фрактальный треугольник, его еще называют «снежинка Коха » (рис. 8.2.). Используя простейший алгоритм, треугольники можно достраивать аналогичным образом до бесконечности, что приведёт к получению объекта любого уровня сложности. При этом в отличие от векторной графики, ничего кроме самих уравнений в памяти ком-пьютера хранить не нужно. Вся информация, необходимая для воспроизведения этого фрактала, будет занимать всего лишь несколько десятков байт. Возникает вопрос - а можно ли сжимать данные, подобрав для этого подходящий фрактальный алгоритм? Принципиально - можно, и в этом направлении в настоящее время ведутся активные исследования. Некоторые уже разработанные фрактальные алгоритмы позволяют сжимать определенные типы файлов в 30 раз и более.


8.6.Трехмерная (3D) графика.

Трехмерная графика нашла широкое применение в таких областях, как научные расчеты, инженерное проектирование, компьютерное моделирование физических объектов и т.п. В качестве примера рассмотрим наиболее сложный вариант трехмерного моделирования - создание подвижного изображения реального физического тела . В упрощенном виде для пространственного моделирования объекта требуется:

§ Спроектировать и создать виртуальный каркас скелет ») объекта, наиболее полно соответствующий его реальной форме;

§ Спроектировать и создать виртуальные материалы (текстуры ), по физическим свойствам визуализации похожие на реальные;

§ Наложить виртуальные материалы на различные части поверхности объекта (спроецировать текстуры на объект );

§ Настроить физические параметры пространства , в котором будет находиться объект, т.е. задать освещение, гравитацию, свойства атмосферы и т.д.;

§ Задать траекторию движения объекта;

§ Наложить поверхностные эффекты на итоговый анимационный сюжет.

Для создания реалистичной каркасной модели объекта используют геометрические примитивы (прямоуголь­ник, куб, шар, конус и прочие) и гладкие , так назы­ваемые сплайновые поверхности . В последнем случае вид поверхности определя­ется расположенной в пространстве сеткой опор­ных точек , каждой из которых присваивается коэф­фициент , задающий степень её влиянии на часть поверхности , расположенной вблизи опорной точки . От взаимного распо­ложения точек и величины коэффициентов зависит форма и гладкость поверх­ности в целом. Деформация объекта в общем случае обеспечивается перемещением отдельных контрольных точек каркаса , связанных с близлежащими опорными точками и влияющих на них в соответствии с удаленностью друг от друга. Специальный инструментарий позволяет обрабатывать примитивы, составляющие объект, как единое целое с учетом их взаимодействия на основе заданной физической модели.

После формирования «скелета » объекта необходимо покрыть его поверхность требуемыми материалами (текстурами). При этом осуществляется так называемая визуализация поверхности , т.е. расчет коэффициента её прозрачности, угла преломления лучей света на границе материала и окружающего пространства и т.д. Закраска поверхностей объекта осуществляется, как правило, метода­ми Гуро или Фонга,) представляющими собой специальные алгоритмы расчета и формирования цветовых оттенков отдельных частей этих поверхностей.

Из всех параметров пространства, в котором будет существовать создаваемый объект, с точки зрения визуализации самым важным является определение источников света . В трехмерной графике принято использовать виртуальные эквиваленты реальных физичес­ких световых источников, таких как, например, Солнце (удаленный неточечный источник ), электри­ческая лампочка (точечный источник ), естественная освещенность вне видимости Солнца и Луны (растворен­ный свет ), прожектор (направленный источник ).

После завершения конструирования и визуализации объекта приступают к его «оживлению », то есть заданию параметров движения. Компьютерная анимация базируется на ключевых кадрах изображения . В первом кадре объект выставляется в исходное положение. Через определенный промежуток (например, в пятом кадре) задается новая ориентация объекта и так далее до конечного положения. Промежуточные кадры вычисляются программно по специальному алгоритму. При этом происхо­дит не просто линейная аппроксимация, а плавное изменение положения опорных точек объекта в соответствии с заданными условиями, определяемыми законами взаимодействия объектов между собой, разрешенными плоскостями движения, предельными углами поворотов, величинами ускорений и скоростей и т.д. Такой подход называют методом инверсной кинематики движения . Он хорошо работает при моделировании различных механических устройств. В случае с имитацией живых объектов используют так называемые скелетные модели , когда создается некий каркас, подвижный в точках, характерных для моделируемого объекта. Движения этих точек просчитываются предыдущим методом, затем на каркас накладывается оболочка из смоделированных поверхностей и осуществляется их визуализация путем наложения текстур с учетом условий освещенности.

Наиболее совершенный метод анимации заключается в фиксации реальных движений физического объекта. Для этого на объекте закрепляют в контрольных точках источники света и снимают заданное движение на видео- или кинопленку. Затем координаты этих точек по кадрам переводят в компьютер и присваивают соответствующим опорным точкам каркасной модели . В результате движе­ния смоделированного объекта оказываются практически неотличимыми от движений живого прототипа.

Процесс расчета реалистичных изображений в компьютерной графике называют рендерингом (визуализацией ). Применение сложных математических моделей позволяет имитировать такие физи­ческие эффекты, как взрывы, дождь, огонь, дым, туман и т.д. Однако их применение в полном объеме требует достаточно больших вычислитель­ных ресурсов и поэтому в персональных компьютерах обычно реализуется лишь в упро­щенных вариантах. По завершении рендеринга компьютерную трехмерную анимацию используют либо как самостоятельный продукт, либо в качестве отдельных частей или кадров других продуктов.

Особую область трехмерного моделирования в режиме реального времени состав­ляют тренажеры технических средств - автомобилей, судов, летательных и кос­мических аппаратов. В них очень точно должны быть смоделированы технические параметры реальных объектов и свойства окружающей физической среды. В более простых вариантах, например при обучении вождению наземных транспортных средств, тре­нажеры могут быть реализованы и на персональных компьютерах.

Среди программных средств создания и обработки трехмерной графики для персональных компьютеров можно выделить три пакета:

§ 3D Studio Max (фирмаKinetix). Пакет считается полупрофессиональным, однако его ресурсов вполне хватает для разработки качественных трехмерных изображений объектов неживой природы. Его отличительными особенностями являются поддержка большинства существующих аппаратных ускорителей 3D -графики, мощные световые эффекты и большое число программных дополнений от сторонних фирм. Сравнительная нетребовательность к аппаратным ресурсам позволяет использовать 3D Studio Max даже на ПК среднего уровня. Вместе с тем по средствам моделирования и анимации он все же уступает более разви­тым современным программным средствам.

§ Softimage 3D (фирмаMicrosoft). Программа изначально создавалась для специализированных графических станций и лишь сравнительно недавно была конвертирована под операционную систему Windows NT. Её отличают богатые возможности моделирования, наличие большого числа регулируемых физических и кинематографических параметров, качественный и достаточно быстрый модуль для рендеринга и множество программных дополнений, значительно расширяющих функции пакета. Однако на платформе IBM PC Softimage 3D выглядит несколько тяжеловато и требует достаточно мощных аппаратных ресурсов.

§ Maya (фирмыAlias, Wavefront, TDI). Один из наиболее передовых пакетов в классе средств создания и обработки трехмерной графики для персональных компьютеров с точки зрения интерфейса и функциональных возможностей. Существует в вариантах для различных операционных систем, в том числе и Windows NT. Весь инструментарий Maya сведен в четыре группы: анимация (Animation ), моделирование (Modeling ), физическое моделирование (Dynamic ) и визуализация (Rendering ). Пакет имеет модульное построение и включает в себя программные блоки, обеспечивающие имитацию физических твердых тел, захват движения, обработку звука, обработку вирту­альных моделей методами, характерными для реальной работы скульпторов и художников, а также сопряжение реальных натурных съемок с компьютерной анимацией и т.д.