Сайт о телевидении

Сайт о телевидении

» » Фрактальная графика сообщение. Фрактальная графика

Фрактальная графика сообщение. Фрактальная графика

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

Математической основой фрактальной графики является фрактальная геометрия. Здесь в основу метода построения изображений положен принцип наследования от, так называемых, «родителей» геометрических свойств объектов-наследников.

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

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

В центре фрактальной фигуры находится её простейший элемент — равносторонний треугольник , который получил название «фрактальный» . Затем, на среднем отрезке сторон строятся равносторонние треугольники со стороной, равной (1/3a) от стороны исходного фрактального треугольника. В свою очередь, на средних отрезках сторон полученных треугольников, являющихся объектами-наследниками первого поколения, выстраиваются треугольники-наследники второго поколения со стороной (1/9а) от стороны исходного треугольника.

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

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

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

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

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


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

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

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

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

Введение

Слово фрактал образовано от латинского "fractus" и в переводе означает состоящий из фрагментов. Оно было предложено Бенуа Мандельбротом в 1975 году. Определение фрактала, данное Мандельбротом, звучит так: "Фракталом называется структура, состоящая из частей, которые в каком-то смысле подобны целому". Одним из основных свойств фракталов является самоподобие. В самом простом случае небольшая часть фрактала содержит информацию о всем фрактале. Понятия фрактал и фрактальная геометрия, появившиеся в конце 70-х, с середины 80-х прочно вошли в обиход математиков и программистов.

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

1. Теоретическая часть

1.1Применение фракталов

·Компьютерные системы.

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

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

·Механика жидкостей.

Изучение турбулентности в потоках очень хорошо подстраивается под фракталы. Турбулентные потоки хаотичны и поэтому их сложно точно смоделировать.

При помощи фракталов также можно смоделировать языки пламени.

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

·Телекоммуникации.

В телекоммуникациях фракталы используются для создания фрактальных антенн. Фрактальные антенны - относительно новый класс электрически малых антенн (ЭМА), принципиально отличающийся своей геометрией от известных решений. По сути, традиционная эволюция антенн базировалась на евклидовой геометрии, оперирующей объектами целочисленной размерности (линия, круг, эллипс, параболоид и т. п.). Фрактальная антенны с удивительно компактным дизайном обеспечивает превосходную широкополосную производительность в маленьком форм-факторе. Достаточно компактны для установки или встраивания в различных местах, фрактальные антенны используются для морских, воздушных транспортных средств, или персональных устройств. На изображении выше пример фрактальной антенны.

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

1.2Классификация фракталов

Вообще фракталом называется предмет который обладает одним из указанных свойств:

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

vЯвляется самоподобным или приближенно самоподобным.

vОбладает дробной метрической размерностью.

В основном фракталы классифицируют по трём видам:

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

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

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

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

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

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

Рис.1. Пример алгебраического фрактала.

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

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

Рис.2. Пример геометрического фрактала.

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

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

1.3Виды фракталов

Рассмотрим несколько распространённых видов фракталов.

Решётка Серпинского.

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

Рис.3. Решетка Серпинского.

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

Не перепутайте этот фрактал с решеткой Серпинского. Это два абсолютно разных объекта. В этом фрактале, инициатор и генератор одинаковы. При каждой итерации, добавляется уменьшенная копия инициатора к каждому углу генератора и так далее. Если при создании этого фрактала произвести бесконечное число итераций, он бы занял всю плоскость, не оставив ни одной дырочки. Поэтому его фрактальная размерность ln9/ln3 = 2.0.

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

Кривая Коха.

Кривая Коха один из самых типичных детерминированных фракталов. Она была изобретена в 1904 году шведским математиком по имени Хельге фон Кох, который, изучая работы Георга Контора и Карла Вейерштрассе, натолкнулся на описания некоторых странных кривых с необычным поведением. Инициатор - прямая линия. Генератор - равносторонний треугольник, стороны которого равны трети длины большего отрезка. Эти треугольники добавляются к середине каждого сегмента снова и снова. В своем исследовании, Мандельброт много экспериментировал с кривыми Коха, и получил фигуры такие как Острова Коха, Кресты Коха, Снежинки Коха и даже трехмерные представления кривой Коха, используя тетраэдр и прибавляя меньшие по размерам тетраэдры к каждой его грани. Кривая Коха имеет размерность ln4/ln3 = 1.261859507.

Рис.5. Кривая Коха.

Фрактал Мандельброта.

Это НЕ множество Мандельброта, которое можно достаточно часто видеть. Множество Мандельброта основано на нелинейных уравнениях и является комплексным фракталом. Это тоже вариант кривой Коха несмотря на то, что этот объект не похож на нее. Инициатор и генератор так же отличны от использованных для создания фракталов, основанных на принципе кривой Коха, но идея остается той же. Вместо того, чтобы присоединять равносторонние треугольники к отрезку кривой, квадраты присоединяются к квадрату. Благодаря тому, что этот фрактал занимает точно половину отведенного пространства при каждой итерации, он имеет простую фрактальную размерность 3/2 = 1.5

Рис.6. Фрактал Мандельброта.

Кривая Дракона.

Изобретенная итальянским математиком Джузеппе Пеано, Кривая Дракона или Взмах Дракона, как он назвал его, очень похож на колбасу Минковского. Использован более простой инициатор, а генератор тот же самый. Мандельброт назвал этот фрактал Река Двойного Дракона. Его фрактальная размерность приблизительно равна 1.5236.

Рис.7. Дракон Джузеппе Пеано.

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

Множества Мандельброта и Жюлиа, вероятно, два наиболее распространенных среди сложных фракталов. Их можно найти во многих научных журналах, обложках книг, открытках, и в компьютерных хранителях экрана. Множество Мандельброта, которое было построено Бенуа Мандельбротом, наверное первая ассоциация, возникающая у людей, когда они слышат слово фрактал. Этот фрактал, напоминающий чесальную машину с прикрепленными к ней пылающими древовидными и круглыми областями, генерируется простой формулой Zn+1=Zna+C, где Z и C - комплексные числа и а - положительное число.

Множество Мандельброта, которое чаще всего можно увидеть - это множество Мандельброта 2й степени, то есть а=2. Тот факт, что множество Мандельброта не только Zn+1=ZnІ+C, а фрактал, показатель в формуле которого может быть любым положительным числом ввел в заблуждение многих. На этой странице вы видите пример множества Мандельброта для различных значений показателя а.

Также популярен процесс Z=Z*tg (Z+C). Благодаря включению функции тангенса, получается множество Мандельброта, окруженное областью, напоминающей яблоко. При использовании функции косинуса, получаются эффекты воздушных пузырьков. Короче говоря, существует бесконечное количество способов настройки множества Мандельброта для получения различных красивых картинок.

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

Модель Джулии

Модель фрактала Джулии имеет то же уравнение, что и модель Мандельброта: Z=Z 2 +c, только здесь переменным параметром является не c , a z.

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

Рис.9. Модель Джулии.

2. Постановка задачи

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


Рис.10. Схема работы программы.

Работать мы будем в среде программирования PascalABC.NET, поговорим о ней подробнее. PascalABC.NET - это язык программирования Паскаль нового поколения, который включает в себя классический Паскаль, большинство возможностей языка Delphi , а также ряд собственных расширений. Он реализован на платформе Microsoft.NET и содержит все современные языковые средства такие как: классы , перегрузку операций , интерфейсы , обработку исключений , обобщенные классы и подпрограммы , сборку мусора , лямбда-выражения, средства параллельного программирования ..NET является мультипарадигменным языком: на нем можно программировать в структурном , объектно-ориентированном и функциональном стилях. Также это простая и мощная интегрированная среда разработки, поддерживающая технологию IntelliSense , содержащая средства автоформатирования, встроенный отладчик и встроенный дизайнер форм. Кроме того, консольный компилятор PascalABC.NET функционирует на Linux и MacOS под Mono .

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

Особенности:

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

·среда разработки, ориентированная на обучение: подсказки по коду, отладчик, автоформатирование кода и подсветка синтаксиса, простая навигация по коду и т.д.

·поддержка современных возможностей языков программирования: модули, классы, пространства имен, обработка исключений, сборка мусора и т.д.

·средства параллельного программирования (директивы OpenMP).

·обучающий инструментарий, сохранившийся с Pascal ABC: встроенный задачник, механизм проверяемых заданий, "исполнители" Робот и Чертежник и т.д.

По функциональному назначению выделяется три области экрана:

ØСтрока меню

ØРабочая область

ØСтрока состояния

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

Рис.11. Главное окно в PascalABC.NET

Основные команды и горячие клавиши.

Основные команды языка программирования Pascal и соответствующие им горячие клавиши:

·Ctrl+F9 - запуск программы

·Alt+F5 - просмотр пользовательского экрана

·F2 - сохранение программы

·F3 - открытие сохраненной программы

·Alt+F3 - закрытие активного окна

·Alt+X - выход из Турбо Паскаль

·F1 - контекстная помощь

·Ctrl+F1 - справка об операторе, на котором установлен курсор

·Alt+Backspace - отмена последнего изменения

·Ctrl+Y - удаление строки

·Shift+стрелки - выделение блока текста

·Ctrl+Insert - копирование выделенного блока в буфер

·Shift+Insert - вставка из буфера

Операции отношения.

К операциям отношения в Pascal относят:

·> - больше

·< - меньше

·= - равно

·<> - не равно

·>= - больше или равно

·<= - меньше или равно

В операциях отношения могут быть не только числа, но также и символы, строки, множества и указатели.

Приоритет операций.

Существует следующий приоритет операций:

·унарная операция not, унарный минус -, взятие адреса @

·операции типа умножения: * / div mod and

·операции типа сложения: + - or xor

·операции отношения: = <> < > <= >= in

Логические операции.

·NOT - логическое отрицание ("НЕ")

·AND - логическое умножение ("И")

·OR - логическое сложение ("ИЛИ")

·XOR - логическое ("Исключающее ИЛИ")

Структура программы

Программа на языке Pascal состоит из заголовка, разделов описаний и раздела операторов. Заголовок программы должен содержат имя программы (program tab;)

Описания могут включать в себя:

фрактал стохастический множество кривая

Рис.12.Структура программы.

Раздел описания модулей. Состоит из служебного слова USES и содержит имена подключаемых модулей (библиотек). Раздел описания модулей должен быть первым среди разделов описаний. Имена модулей разделяются друг от друга запятыми (uses CRT,tab;).

Все метки, которые используются в программе, должны быть описаны в разделе описания меток (label 5, 365, 95, Quit;).

Описание констант позволяет использовать имена как синонимы констант, их необходимо определить в разделе описания констант:K=524; MAX= 17850;

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

var S,R,M: Integer;,Y: Char;,D6: Boolean;

Раздел операторов - составной оператор, содержащий между служебными словами begin.......end последовательность операторов. Операторы отделяются символом " ; ". А текст заканчивается точкой(.) .

Кроме описаний и операторов PascalABC.NET может содержать комментарии, представляющие собой произвольную последовательность символов, которые располагаются между скобкой комментариев { ... }:

3. Практическая часть

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

Рис.13. Пошаговое создание треугольника Серпинского.

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

Рис.14. Пошаговое создание треугольника Серпинского.

Вот наш конечный код написание нашей программы треугольника Серпинского в среде программирования PascalABC.NET.

program Serpinskiy;CRT, GraphABC;, gm: Integer;= 9;tr(x1, y1, x2, y2, x3, y3: Real);(Round(x1), Round(y1), Round(x2), Round(y2));(Round(x2), Round(y2), Round(x3), Round(y3));(Round(x3), Round(y3), Round(x1), Round(y1));;draw(x1, y1, x2, y2, x3, y3: Real; n: Integer);n, y1n, x2n, y2n, x3n, y3n: Real;n > 0 thenn:= (x1 + x2) / 2;n:= (y1 + y2) / 2;n:= (x2 + x3) / 2;n:= (y2 + y3) / 2;n:= (x3 + x1) / 2;n:= (y3 + y1) / 2;(x1n, y1n, x2n, y2n, x3n, y3n);(x1, y1, x1n, y1n, x3n, y3n, n - 1);(x2, y2, x1n, y1n, x2n, y2n, n - 1);(x3, y3, x2n, y2n, x3n, y3n, n - 1);;;(320,10,600,470,40,470);(320,10,600,470,40,470,iter);{}.

Рис.15. Готовая программа в PascalABC.NET.

После того как написали код, следует запустить нашу программу. Для этого заходим в раздел "Программа" и выбираем пункт "Выполнить без связи с оболочкой".

Рис.16. Запуск программы.

После запуска откроется дополнительное окно, в котором мы можем увидеть наш готовый рисунок.

Рис.17. Готовый Треугольник Серпинского.

Заключение

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

Список литературы

1.Божокин С.В., Паршин Д.А. Фракталы и мультифракталы. РХД 2008 г.

Дж.Милнор Голоморфная динамика. РХД 2010 г.

Витолин Д. Применение фракталов в машинной графике. // Computerworld-Россия.-2007.

Пайтген Х.-О., Рихтер П. Х. Красота фракталов. - М.: "Мир", 2009.

Кроновер Р. М. Фракталы и хаос в динамических системах. Основы теории 2011.

Мандельброт Б. Самоаффинные фрактальные множества, "Фракталы в физике". М.: Мир 2010.

Мандельброт Б. Фрактальная геометрия природы. 2009.

Морозов А.Д. Введение в теорию фракталов. Н.Новгород: Изд-во Нижегород. ун-та 2009.





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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Рейтинг: / 18

ПлохоОтлично

Растровая, векторная и фрактальная графика

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

Растровая и векторная графика создается в специальных программах - графических редакторах и процессорах. Например, программы Paint и Gimp являются растровыми, а Inkscape - векторым.

Растровая графика

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

Пиксель – наименьший элемент изображения на экране компьютера. Размер экранного пикселя приблизительно 0,0018 дюйма.

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

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

Самыми близкими аналогами растровой графики является живопись, фотография.

Кодирование графической информации

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

Число цветов (К), воспроизводимых на экране дисплея, зависти от числа бит (N ), отводимых в видеопамяти под каждый пиксель:

K =2 N

Для получения богатой палитры цветов базовым цветам могут быть заданы различные интенсивности. Например, при глубине цвета в 24 бита на каждый из цветов выделяется по 8 бит (RGB ), т.е. для каждого из цветов возможны K = 28 = 256 уровней интенсивности. Один бит видеопамяти занимает информация об одном пикселе на черно-белом экране (без полутонов).

Величину N называют битовой глубиной.

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

Если на экране с разрешающей способностью 800 х 600 высвечиваются только двухцветные изображения, то битовая глубина двухцветного изображения равна 1, а объем видеопамяти на одну страницу изображения равен 800 * 600 * 1 = 480000 бит = 60000 байт.

Для хранения двух страниц изображения при условии, что разрешающая способность дисплея равна 640 х 350 пикселей, а количество используемых цветов - 16 будет таким: 640 * 350 * 4 * 2 = 1792000 бит = 218,75 Кбайт

Количество используемых цветов - 16, это 2 4 , значит, битовая глубина цвета равна 4.

Векторная графика

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

Файл, отображающий векторное изображение, содержит начальные координаты и параметры примитивов – векторные команды.

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

Информация о цвете объекта сохраняется как часть его описания, т.е. тоже в векторной команде.

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

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

Файлы векторной графики могут содержать растровые объекты.

Достоинства векторной графики

  • Векторные изображения занимают относительно небольшой объем памяти.
  • Векторные объекты могут легко масштабироваться без потери качества
  • Недостатки векторной графики
  • Векторная графика не позволяет получать изображения фотографического качества.
  • Векторные изображения описываются тысячами команд. В процессе печати эти команды передаются устройству вывода (принтеру). Чаще всего изображение на бумаге выглядит не так как на экране монитора.

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

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

Математической основой фрактальной графики является фрактальная геометрия. Здесь в основу метода построения изображений положен принцип наследования от, так называемых, «родителей» геометрических свойств объектов-наследников.

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

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

В центре фрактальной фигуры находится её простейший элемент - равносторонний треугольник, который получил название «фрактальный». Затем, на среднем отрезке сторон строятся равносторонние треугольники со стороной, равной (1/3a) от стороны исходного фрактального треугольника. В свою очередь, на средних отрезках сторон полученных треугольников, являющихся объектами-наследниками первого поколения, выстраиваются треугольники-наследники второго поколения со стороной (1/9а) от стороны исходного треугольника.

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

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

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

Итак, базовым понятием для фрактальной компьютерной графики являются «Фрактальный треугольник». Затем идет «Фрактальная фигура», «Фрактальный объект»; «Фрактальная прямая»; «Фрактальная композиция»; «Объект-родитель» и «Объект наследник». Следует обратить Ваше внимание на то, что фрактальная компьютерная графика, как вид компьютерной графики двадцать первого века получила широкое распространение не так давно.

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

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

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

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

Почему фраталы так красивы?

Так сказочно, обворожительно, волнующе красивы. Математика вся пронизана красотой и гармонией, только эту красоту надо увидеть. Вот как пишет сам Мандельброт в своей книге "The Fractal Geometry of Nature"-"Почему геометрию часто называют холодной и сухой? Одна из причин лежит в ее неспособности описать форму облаков, гор или деревьев. Облака - это не сферы, горы - не углы, линия побережья - не окружность, кора не гладкая, а молния не прямая линия..."Фрактальная графика - это не просто множество самоповторяющихся изображений, это модель структуры и принципа любого сущего. Вся наша жизнь представлена фракталами. Взять, к примеру, ДНК, это всего лишь основа, одна итерация, а при повторении… появляется человек! И таких примеров много. Нельзя не отметить широкое применение фракталов в компьютерных играх, где рельефы местности зачастую являются фрактальными изображениями на основе трёхмерных моделей комплексных множеств и броуновского движения. Фрактальная графика необходима везде, и развитие "фрактальных технологий" - это одна из немаловажных задач на сегодняшний день. Фракталы вокруг нас повсюду, и в очертаниях гор, и в извилистой линии морского берега. Некоторые из фракталов непрерывно меняются, подобно движущимся облакам или мерцающему пламени, в то время как другие, подобно деревьям или нашим сосудистым системам, сохраняют структуру, приобретенную в процессе эволюции. Х.О.Пайген и П.Х Рихтер.

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


Понятие фрактал и фрактальная графика.

Геометрия, появившиеся в конце 70-х, с середины 80-х прочно вошли в обиход математиков и программистов. Слово фрактал образовано от латинского fractus и в переводе означает состоящий из фрагментов. Оно было предложено Бенуа Мандельбротом в 1975 году для обозначения нерегулярных, но самоподобных структур, которыми он занимался. Рождение фрактальной геометрии принято связывать с выходом в 1977 году книги Мандельброта `The Fractal Geometry of Nature". В его работах использованы научные результаты других ученых, работавших в период 1875-1925 годов в той же области (Пуанкаре, Фату, Жюлиа, Кантор, Хаусдорф). Но только в наше время удалось объединить их работы в единую систему. Роль фракталов в машинной графике сегодня достаточно велика. Они приходят на помощь, например, когда требуется, с помощью нескольких коэффициентов, задать линии и поверхности очень сложной формы. С точки зрения машинной графики, фрактальная геометрия незаменима при генерации искусственных облаков, гор, поверхности моря. Фактически найден способ легкого представления сложных неевклидовых объектов, образы которых весьма похожи на природные. Одним из основных свойств фракталов является самоподобие. В самом простом случае небольшая часть фрактала содержит информацию о всем фрактале. Определение фрактала, данное Мандельбротом, звучит так: "Фракталом называется структура, состоящая из частей, которые в каком-то смысле подобны целому"