пятница, 18 марта 2011 г.

Как можно заработать на линейных фракталах

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

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


Читать далее!

пятница, 4 сентября 2009 г.

Julia (Выпуск 13)

В этой статье мы рассмотрим широко-известный фрактал, который называется Julia.

Создайте новый флейм, открыв редактор и кликнув по кнопочке 1 (см. рис 25 по ссылке). Установите вариацию julia=1, а linear=0.

Создайте копию трансформации (треугольника) 1, кликнув по кнопке 3. На данном этапе вы будете видеть лишь идеальный круг.

Теперь создайте трансформацию 3, кликнув по кнопке 2 и установите linear=0 и julia=0.25. Идеальный круг заполнится циклическими окружностями. Чтобы окрасить полученную фигуру разными цветами, воспользуйтесь пунком меню Flame->Randomize Color Values.


Рис. 56: Результат трёх трансформаций с вариацией Julia

Теперь последнюю трансформацию сдвинем вверх. Для этого в редакторе нужно кликнуть на закладку Triangle и кликнуть по стрелке смещения вверх с шагом 0.05 (см. на Рис. 57). При этом в центре разноцветного круга будет образовываться типичная фрактальная фигура Julia:


Рис. 57: Образование фигуры Julia


Рис. 58: Результат смещения одной трансформации вверх

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


Рис. 59: Julia и саттелиты

Обратите внимание: все саттелиты имеют ту же самую структуру, что и основной фрактал:


Рис. 60: Саттелит в приближении

Polar в final transformation

Имея дело с такими симметримичными фигурами, одну из которых мы получили только что, имеет смысл применить Final Transformation с вариацией Polar=1.


Рис. 61: Добавляем Final Transformation с Polar=1 & Linear =1

Получилась почти 3D-фигура:


Рис. 62: Результат добавления Final Transformation с Polar=1 & Linear =1

Теперь если мы установим в только что добавленной финальной трансформации linear в 0, то мы получим... полоску с орнаментом!


Рис. 63: Результат установки Linear=0 в Final Transformation

Теперь мы попробуем сдвинуть финальную трансформацию на 0,25 шага вниз:


Рис. 63: Результат установки Linear=0 в Final Transformation

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

Пример 1:


Рис. 64: Модифицированный фрактал Julia

Исходный код флейма:


<flame gamma="2.68" brightness="24.4" background="0 0 0"
quality="50" filter="0.1" oversample="1" zoom="-0.359"
rotate="-45.65" angle="0.796742803535411" scale="54.34"
center="0.00840142659615006 0.000754844302416124" size="400 400"
name="2b2hUrchin">
<xform coefs="-1 0 0 1 0 0" julia="2" color="0" weight="0.5">
<xform coefs="0.2 -0.5 0.2 0.5 0 0" julia="0.75"
color="1" weight="0.5">
<xform coefs="-0.256 -0.256 -0.256 0.256 0 -1"
color="1" weight="0.5" sinusoidal="0.029" symmetry="1">
<xform coefs="0.8 0 0 -0.8 0 0" julia="2" color="0" weight="0.5">
<colors data="00E5DE2C00E7DD2E00E9DC2F00ECDC3000EEDB3200F0DA3300F3D93400F5D836
00F7D83700FAD73900FCD63A00F9D03F00F6CB4400F4C54900F1C04E00EEBA53
00ECB45800E9AF5D00E6A96200E3A46700E09E6C00DE987100DB937600D88D7B
00D6888000D3828500D07C8A00CD779000CA719500C86C9A00C5669F00C261A4
00C05BA900BD55AE00BA50B300B74AB800B445BD00B23FC200AF39C700AC34CC
00AA2ED100A729D600A423DB00A129D5009E30CF009B36CA00983DC4009543BE
009249B8008F50B3008C56AD00895DA7008663A10083699B00807096007D7690
007A7D8A0077838400748A7E00729079006F9673006C9D6D0069A3670066AA62
0063B05C0060B656005DBD50005AC34A0057CA450054D03F0051D639004EDD33
004BE32E0048EA280045F0220045E9280044E32F0044DC350043D53B0043CF41
0042C8480042C14E0042BA540041B45B0041AD610040A6670040A06D003F9974
003F927A003E8C80003E8586003E7E8D003D7893003D7199003C6AA0003C64A6
003B5DAC003B56B2003A50B9003A49BF003A42C500393BCC003935D200382ED8
003827DE003721E500371AEB003D1CE500431FDE004A21D8005023D2005625CC
005C28C500622ABF00692CB9006F2EB2007531AC007B33A6008135A000883799
008E3A9300943C8D009A3E8600A0408000A6437A00AD457300B3476D00B94967
00BF4C6100C54E5A00CC505400D2524E00D8554700DE574100E4593B00EB5B35
00F15E2E00F760280002D6EB0006CFEB0009C9EB000DC2EB0011BCEC0014B5EC
0018AEEC001CA8EC001FA1EC00239AEC002794ED002A8DED002E86ED003280ED
003579ED003973ED003C6CEE004065EE00445FEE004758EE004B52EE004F4BEE
005244EE00563EEF005A37EF005D30EF00612AEF006523EF00681CEF006C16F0
00700FF0007309F0007702F0007402F0007102F0006E02F0006B03F0006803F0
006503F0006203F0005F03F0005C03F1005904F1005604F1005304F1005004F1
004D04F1004A04F1004804F1004505F1004205F1003F05F1003C05F1003905F1
003605F1003306F1003006F2002D06F2002A06F2002706F2002406F2002107F2
001E07F2001B07F2001807F2001D0EEB002216E400261DDD002B24D600302BCE
003533C700393AC0003E41B9004349B2004850AB004D57A400515E9C00566695
005B6D8E0060748700647C8000698379006E8A720073916B00789964007CA05C
0081A7550086AE4E008BB6470090BD400094C4390099CC32009ED32A00A3DA23
00A7E11C00ACE91500B1F00E00B3EF0F00B6EE1100B8EE1200BAED1400BDEC15
00BFEB1600C1EA1800C4EA1900C6E91A00C8E81C00CBE71D00CDE61E00CFE520
00D2E52100D4E42300D6E32400D9E22500DBE12700DEE12800E0E02A00E2DF2B"
count="256">
</flame>

Пример 2:


Рис. 65: Модифицированный фрактал Julia

Исходный код флейма:


<flame name="2B2HSolarity" size="400 400" 
center="0.0259883114496029 -0.0318311410914605"
scale="104.31" zoom="-1.191" oversample="1" filter="0.1"
quality="50" background="0 0 0"
brightness="36.8391304347826" gamma="2.68" >
<xform weight="0.5" color="0" julia="2" coefs="1 0 0 -1 0 0" />
<xform weight="0.5" color="0.25" julia="2" coefs="1 0 0 1 0 0" />
<xform weight="0.5" color="0.5" linear="-0.008"
julia="0.792" coefs="0.38017 0.010323 0.391165
0.001986 -0.468796 -0.128315" />
<xform weight="0.5" color="0.75" linear="-0.008"
julia="-0.066" coefs="-0.012309 -0.270788
0.05744 -0.246171 -0.002467 -0.003113" />
<xform weight="0.5" color="1" julia="1.047" coefs="0.64 0 0 -0.64 0 -2" />
<xform weight="0.5" color="1" julia="1.047" coefs="-0.64 0 0 0.64 0 2" />
<colors count="256"
data="00FF000000FD0A0200FB0F0300FA140400F9190500F81E0600F7200600F72307
00F42D0800F3320900F2370A00F13C0B00F0410C00EE460D00ED4B0E00EC4D0E
00EC500E00EA5A1000E85F1100E7641200E6691300E56E1400E4701400E47315
00E17D1600E0821700DF871800DE8C1900DD911A00DC931A00DB961B00DA9B1C
00D9A01C00D89D1E00D89B1F00D89A2000D7982000D7972100D7962100D79622
00D6922400D5912500D5902600D58E2600D58C2700D48B2700D48B2800D48A29
00D4882A00D3852C00D2832C00D2822D00D2802E00D27F2F00D17E2F00D17E30
00D17A3100D0793200D0783300CF763400CF743500CF733500CF733600CE7237
00CE703700D1713400D2713200D4723000D5722F00D6722E00D7732D00D9732B
00DC742800DD742600DF752400E0752200E2762100E2762000E3771F00E5771D
00E6781C00EA791800EB791600ED7A1500ED7A1400EE7A1300F07B1100F17B0F
00F47C0C00F57C0A00F77D0900F87D0800F97E0700FA7E0500FC7F0300FD7F02
00FF800000FA7E0000F77C0000F57B0000F47A0000F37A0000F0780000EE7700
00E9750000E6730000E4720000E2710000E1710000DF700000DC6E0000DA6D00
00D86C0000D36A0000D1690000D0680000CE670000CB660000C9640000C66300
00C1610000BE5F0000BC5E0000BB5D0000BA5D0000B75C0000B55A0000B25900
00B0580000B55F0800B6600A00B7620C00BA651000BC681500BF6C1900C16F1D
00C6762500C8792900CB7C2D00CC7D2F00CE7F3200D0833600D3863A00D5893E
00D88C4200DC934A00DD944C00DF964E00E19A5200E49D5700E6A05B00E9A35F
00EEAA6700EFAB6900F0AD6B00F3B16F00F5B47400F8B77800FABA7C00FDBE80
00FFC18400FFBA8000FFB87F00FFB67F00FFB27D00FFAE7B00FFAB7900FFA777
00FFA07400FF9E7300FF9C7200FF987000FF946E00FF916C00FF8D6B00FF8969
00FF866700FF826500FF7E6300FF7A6200FF776000FF735E00FF6F5C00FF6B5A
00FF645700FF625600FF605500FF5D5300FF595100FF554F00FF514E00FF4E4C
00FF4A4A00FE4D4B00FC4F4C00FB524C00FA544D00F8574E00F75A4F00F55C4F
00F45F5000F3615100F1645100F0675200EE695300ED6C5400EC6E5400EA7155
00E9745600E8765600E6795700E57B5800E47E5900E2805900E1835A00DF865B
00DE885B00DD8B5C00DB8D5D00DA905E00D8935E00D7955F00D6986000D49A60
00D39D6100D39E6300D49F6400D4A06600D5A16800D5A26900D6A36B00D6A46C
00D6A56E00D7A67000D7A77100D8A87300D8A97400D9AA7600D9AB7800DAAC79
00DAAD7B00DAAE7D00DBAF7E00DBB08000DCB18200DCB28300DDB38500DDB486
00DDB58800DEB68A00DEB78B00DFB88D00DFB98E00E0BA9000E0BB9200E1BD95"/>
</flame>


Читать далее!

понедельник, 6 апреля 2009 г.

Линейные фракталы (Выпуск 12)

В данной статье я расскажу вам об очень простом способе создания очень интересных фракталов (ведь всё гениальное просто). Нам всего лишь понадобятся две трансформации и 3-4 вариации - а в результате мы получим бесконечное множество прекрасныейших фракталов!

Настройки

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

Для этого, во-первых, выставим количество трансформаций равное двум:


Рис. 48: Нам нужны лишь две трансформации

Поверьте, уже имея в наличии лишь две трансформации, можно получить картинки просто загляденье!

Далее идёт ключевой момент! Мы выберем всего лишь четыре вариации, которые будут использоваться для построения фракталов:


Рис. 49: Выбраны лишь вариации linear, sinusoidal, spherical, bubble

Далее, генерируем случайный батч флеймов и просматриваем результаты. Иногда уже изначально флейм можно запускать на рендеринг:


Рис. 50: Этот фрактал был сгенерирован случайно

Но чаще всего приходится повозиться в редакторе трансформаций.

Например, рассмотрим вот такую неприметную спираль:


Рис. 51: Случайная спираль

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

В редакторе трансформаций я увеличила красный треугольник, потянув его за "гипотенузу" (см. рис. 52). Обратите внимание, как преобразились "точки", которые изначально предстали перед нами на рис. 51: они превратились в какие-то цветы.


Рис. 52: Пропорциональное растягивание трансформации

Далее, эту же самую трансформацию я затем переместила влево-вверх. "Цветы" с предыдущего рисунка "расцвели пышным цветом".


Рис. 53: Смещение трансформации

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


Рис. 54: Поворот трансформации

Результат я слегка "доработала напильноком", то есть повернула и прозуммировала, в окошке настроек, в закладке Camera:


Рис. 55: Результат

Попробуйте и вы!

Предлагаю и вам поэкспериментировать со случайно сгенерированными фракталами, как описано в данной статье. Как основу для экспериментов могу предложить вам вот такой флейм:

<flames name="tutorial_linear">
<flame name="Tutorial_linear_start" gamma_threshold="0.04" gamma="4"
brightness="4" background="0 0 0" quality="50" filter="0.5"
oversample="1" scale="92.4732180512498"
center="0.354646500852971 -0.839556375622789" size="544 423"
version="Apophysis 2.08 beta 2">
<xform coefs="0.667643523480949 -0.33152745720891 0.33152745720891
0.667643523480949 -0.451362217310816 0.204452093690634" bubble="0.939448388991877"
linear="0.0605516110081226" color="0" weight="0.589866891857702">
<xform coefs="0.108336419740966 -0.229373862635709 0.407497783897741
0.350819709226498 0.0972881191410124 -0.647529187612236" color="1"
weight="0.410133108142298" spherical="1">
<palette format="RGB" count="256">
000000FCC000FABE02F8BC04F8BA04F8B804F8B804F8B804
F4B404F4B206F4B008F2AE08F0AC08F0AA08F0A808EEA80A
ECA80CECA40CEAA20CE8A00CE89E0EE89C10E89C10E89C10
E49810E49610E49410E29412E09414E09214E09014E09014
DC8C14DC8C18DA8A18D88818D88618D88418D88418D88418
D4801CD47E1CD47C1CD27A1CD0781CD0781ED07820D07420
CC7420CC7020CA6E22C86C24C86A24C86824C86824C86824
C46424C46226C46028C26028C06028C05E28C05C28C05C2C
C0582CBC582CBC562CBC542CBA522EB85030B85030B85030
B44C30B44A32B44834B24634B04434B04434B04434B04034
B04034AC3C38AC3A38AC3838AA3838A83838A83438A8343C
A4303CA42E3CA42C3CA42C3CA42C3CA02C40A02840A02840
A024409C24409C22429C20449A1E44981C44981C44981C44
941848941648941448941248941048901048901048900C4C
900C4C8C084C8C084C8C084C8C044C880450880050880050
88005086005084005084005084005084005080005080004C
80004C7C004C7C004C7C004C7C004C7C0048780048780048
780048760048740048740046740044740044700044700044
7000446C00446C00426C00406C00406C0040680040680040
68003C66003C64003C64003C64003C64003C60003C60003C
6000385C00385C00385C00385C00385C0038580034580034
580034560034540034540034540034540030500030500030
5000305000304C00304C00304C002C4C002C48002C48002C
48002C46002A440028440028440028440028400028400028
4000284000243C00243C00243C00243C0024380024380020
38002038002034002034002034002034002030001C30001C
30001C30001C2C001C2C001C2C001C2C0018280018280018
280018280018240018240014240014240014200014200014
2000142000141C00101C00101C00101C0010180010180010
18000C18000C14000C14000C14000C14000C10000C100008
1000081000080C00080C00080C00080C0008080004080004
080004080004040004040004040000040000000000000000
</palette>
</flame>
</flames>

Результаты экспериментов предлагаю выложить в группу Apotut на фликре. Кстати, там уже появились первые работы:


Источник: http://www.flickr.com/photos/36211454@N08/3337659841/in/pool-981668@N23

А вы всё думаете, "чего бы такого замутить"? Начинайте генерировать фракталы!

Самые интересные фракталы будут публиковаться в этом блоге.

Напоминаю, что редактирование трансформаций включает в себя следующие операции:

  1. Поворот вокруг угла О.
  2. Пропорциональные растяжение всех сторон (достаточно потянуть мышкой сторону, противолежащую углу О).
  3. Изменение координат вершин X и Y (перетаскиванием мышкой).
  4. Перемещение трансформации (перетащить мышкой, кликнув по углу О).

Если редактирование трансформаций не приводит к желаемому эффекту, то воспользуйтесь мутациями.

Несколько подсказок:

  1. Если трансформации - равнобедренные треугольники, то общий вид фрактала получается более аккуратным и "округлым".
  2. Чаще всего фрактал начинает приобретать осмысленные формы, если стянуть трансформации к опорному треугольнику.
  3. Наилучшие результаты получаются, если одна трансформация установлена в bubble=1, а другая есть комбинация linear+sinusuidal=1 или linear+spherical = 1, при этом рекомендуется установить linear в районе 0.8-0.9, а комплементарную вариацию (sinusoidal или spherical) в 0.1-0.2 соответственно.
  4. Однако, не следуйте слепо этим подсказкам и просто внимательно изучайте наличные случайные фракталы.
  5. Не ограничивайтесь двумя трансформациями, попробуйте три и более.
  6. Не ограничивайтесь четырьмя, выбранными выше, вариациями. Интересные результаты дают и комбинации также, например, с вариациями disc и swirl.

Традиционная демонстрация возможностей апофизиса


Источник: http://mobilelectro.deviantart.com/art/tetra-70224568
Автор: Mobilelectro (рекомендую посмотреть всю галерею)

Вот могут же люди... А мы?


Читать далее!

пятница, 26 декабря 2008 г.

Рендеринг (Выпуск 11)

Итак, мы изучили всё, что касается манипуляций с фракталами. Мы умеем создавать прекрасные флеймы, но они так и остаются флеймами в формате XML. Теперь наша задача создать из флеймов графичекие файлы в высоком разрешении. То есть нам нужно выполнить рендеринг.

Окно рендеринга вызвается через Flame->Render to Disc (Ctrl+R). Либо же через кнопку №3 в панели инструментов. При этом окно рендеринга будет выглядеть, как на Рис. 45:


Рис. 45: Настроки рендеринга

Первым делом рендеринг нужно настроить.

Выпадающее меню Preset содержит все сохранённые ранее настройки.

В поле Destination необходимо указать путь к папке и имя файла, куда будет сохраняться графическое изображение в JPG или PNG формате.

Size предназначается для выбора размера конечного файла в пикселях. Отметьте галочкой опцию Maintain aspect ratio, если хотите, чтобы при изменении одного параметра (например, ширины) припорционально менялся и другой параметр (соответственно, высота) так, чтобы картинка оставалась "стандартной" для мониторов.

Группа параметров в области Rendering отвечает за качество выходной картинки:

  • Quality (качество) - грубо говоря, это количество нарисованных точек на единицу площади. Не забывайте, что во фрактале прежде, чем рисовать какие-то точки, их нужно сначала рассчитать. Поэтому этот параметр можно также рассматривать, как точность рассчёта. Очевидно, что тем выше данный параметр, тем более аккуратная картинка на выходе получается. Значение можно выбрать из выпадающего списка, в котором максимум равен 4000. Но если вы недовольны результатом, можете вручную поставить большее значение и перерендерить.
  • Filter Radius (радиус фильтра) - радиус блюрящего фильтра. Чем больше радиус, тем меньше шума, но и тем более размыты контуры. Значение в районе 1-1,5 даёт прекрасные результаты.
  • Oversample (пересамплинг) - значение в данном поле показывает во сколько раз относительно выбранных размеров будет увеличена картинка при рендеринге. На заключительном этапе рендеринга изображение будет уменьшено до выбранного размера. Этот трюк используется для того, чтобы убрать шум и слишком размытые контуры на изображении. Чем больше значение, тем презентабельнее результат. Однако, при больших значениях (уже при 3) памяти может не хватить. Стандартное значение равно 2.

Memory Usage позволяет настроить использование физических ресурсов вашего компьютера, чтобы параллельные процессы выполнялись в комфортном режиме (не тормозили, не подвисали):

  • Buffer depth (размер буффера) - количество битов для выполнения вычислений над дробными числами. Чем больше размер буффера, тем точнее вычисления, но тем больше памяти потребуется.
  • Limit memory usage to (ограничить использование памяти до) - количество памяти (в Кб), отведённое под вычисление фрактала. Если отключить эту опцию, то апофизис будет стремиться использовать всю доступную память, чтобы рассчитать фрактал как можно быстрее. При этом остальные программы могут начать тормозить. Если же ограничить память, то рендеринг не затронет производительность других программ, но может занять значительно больше времени. При ограничении памяти рассчёт фрактала разбивается на части, которые могут "поместиться" в отведённую память.
  • Рядом будут отображаться некие статистические данные. Обратите внимание на сводку по Approximate memory required (приблизительно необходимое количество памяти): если эта строчка стала красной, а вы не ограничили память, то рендеринг просто не начнётся: вы превысили доступную память, а апофизис не знает, нужно ли разбивать вычисления на части.

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

  1. Save Parameters (сохранить параметры) -сохранить установленные параметры в отдельный пресет.
  2. Post process render (рендер по окончании процесса) - это отдельное окошко, которое запускается в конце рассчёта фрактала (Рис. 46). Если отметить эту опцию, то из одного рассчитанного фрактала вы можете сохранить несколько картинок с разными параметрами, например, яркости, контраста и фонового цвета (см. Рис.46). Для этого нужно просто установить нужные значения и нажать кнопку Save. После чего нужно будет переименовать созданный файл, а то все последующие сохранения будут записываться в него же.

    Рис. 46: Постобработка рендеринга
  3. Shutdown on complete (выключение по завершении) - ваш компьютер выключится, как только рендеринг закончится. (Например, если вы оставили рабочий компьютер на выходные прорендерить пачку фракталов).
  4. Save incomplete renders (сохранить незавершённые рендеры) - позволяет на досчитывать фрактал до конца, сохраняя уже рассчитанную часть в картинку при нажатии на кнопку Stop. Эта функция полезна, если вам не нужно показывать фрактал в 100%-ном увеличении.

Всё, вам остаётся нажать лишь кнопку Render и ждать завершения. Статус рендеринга будет отображаться на закладке Output:


Рис. 47: Статус рендеринга

Обратите внимание, что большие и качественные картинки рендерятся иногда более суток!

Во время рендеринга вы можете приостановить процесс, нажав на кнопку Pause (пауза), либо вовсе прекратить его по нажатию кнопки Stop (стоп). В первом случае память всё также будет загружена. (Так что это не поможет вам выполнить срочное дело чуть что). Во втором случае, если вы выбрали сохранение незавершённых рендеров, ваша картинка сохраниться в несколько худшем качестве, чем ожидалось. Но если вы уменьгите её до размеров блоговых картинок, то это не будет заметно.

Ура! Теперь мы умеем создавать прекрасные изображения фракталов!

Если вы хотите похвастаться своими фракталами, то милости прошу в нашу группу на фликре: ApoTut. Я вас также очень прошу оставлять, если не флейм фрактала, то хотя бы намёк на его трансформации :)


Читать далее!