Vysok´E Uˇcení Technick´E V Brnˇe
Total Page:16
File Type:pdf, Size:1020Kb
VYSOKEU´ CENˇ ´I TECHNICKE´ V BRNEˇ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMACNˇ ´ICH TECHNOLOGI´I USTAV´ POCˇ ´ITACOVˇ E´ GRAFIKY A MULTIMEDI´ ´I FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND MULTIMEDIA FRAKTALY´ V POCˇ ´ITACOVˇ E´ GRAFICE DIPLOMOVA´ PRACE´ MASTER’S THESIS AUTOR PRACE´ JAN HEIN´IK AUTHOR BRNO 2007 VYSOKEU´ CENˇ ´I TECHNICKE´ V BRNEˇ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA INFORMACNˇ ´ICH TECHNOLOGI´I USTAV´ POCˇ ´ITACOVˇ E´ GRAFIKY A MULTIMEDI´ ´I FACULTY OF INFORMATION TECHNOLOGY DEPARTMENT OF COMPUTER GRAPHICS AND MULTIMEDIA FRAKTALY´ V POCˇ ´ITACOVˇ E´ GRAFICE FRACTALS IN COMPUTER GRAPHICS DIPLOMOVA´ PRACE´ MASTER’S THESIS AUTOR PRACE´ JAN HEIN´IK AUTHOR VEDOUC´I PRACE´ Ing. ADAM HEROUT, Ph.D. SUPERVISOR BRNO 2007 Abstrakt Diplomov´apr´acese zab´yv´ahistori´ıfrakt´aln´ıgeometrie a popisuje v´yvoj nauky o frakt´alech. Po poˇc´ateˇcn´ımsezn´amen´ıse z´akladn´ımipojmy jsou pops´any jednotliv´edruhy frakt´al˚ua jejich typick´epˇr´ıklady. D´alejsou uvedeny oblasti, ve kter´ych je moˇzno se s frakt´alysetkat mimo obor poˇc´ıtaˇcov´egrafiky. Pr´ace seznamuje s praktick´ymvyuˇzit´ımfrakt´aln´ıgeometrie. V textu jsou uvedeny v souˇcasn´edobˇezn´am´eprogramy a softwarov´ebal´ıky vhodn´epro zobrazov´an´ıfrakt´al˚ua jsou pops´any jejich moˇznosti.Praktickou ˇc´ast diplomov´epr´acetvoˇr´ı slajdy, demonstraˇcn´ıprogram a plak´at. Elektronick´eslajdy pˇredstavuj´ıosnovou vyuˇzitelnou pro pˇredn´aˇsky o problematice frakt´aln´ıgeometrie. Program slouˇz´ık demonstraci vybran´ych druh˚ufrakt´al˚u. Plak´atje grafick´ymshrnut´ımv´ysledk˚upr´ace. Kl´ıˇcov´aslova Frakt´al,Juliova mnoˇzina, Mandelbrotova mnoˇzina,Newton˚uvfrakt´al,L-syst´em, Syst´em iterovan´ych funkc´ı,Stochastick´efrakt´aly, Hausdorffova dimenze, atraktor, sobˇepodobnost, Sierpinsk´ehotroj´uheln´ık, africk´efrakt´aly, Cantorova mnoˇzina, Kochova vloˇcka, Hilbertova kˇrivka, Fractal Flame Abstract This Master’s thesis deals with history of Fractal geometry and describes the fractal science development. In the begining there are essential Fractal science terms explained. Then description of fractal types and typical or most known examples of them are mentioned. Fractal knowledge application besides computer graphics area is discussed. Thesis informs about fractal geometry practical usage. Few present software packages or more programs which can be used for making fractal pictures are described in this work. Some of theirs capabilities are described. Thesis’ practical part consists of slides, demonstrational program and poster. Electronical slides represents brief scheme usable for fractal geometry realm lectures. Program generates selected fractal types. Thesis results are projected on poster. Keywords Fractal, Julia set, Mandelbrot set, Newton fractal, L-system, Iterated Function Set, Stochas- tic fractal, Hausdorff dimension, attractor, self-similarity, Sierpinski triangle, African frac- tals, Cantor set, Koch flake, Hilbert curve, Fractal Flame Citace Jan Hein´ık: Frakt´alyv poˇc´ıtaˇcov´egrafice, diplomov´apr´ace, Brno, FIT VUT v Brnˇe, 2007 Frakt´alyv poˇc´ıtaˇcov´egrafice Prohl´aˇsen´ı Prohlaˇsuji, ˇzejsem tuto diplomovou pr´acivypracoval samostatnˇepod veden´ım Ing. Adama Herouta, Ph.D. Uvedl jsem vˇsechny liter´arn´ıprameny a publikace, ze kter´ych jsem ˇcerpal. ....................... Jan Hein´ık 21. kvˇetna2007 Podˇekov´an´ı R´adbych podˇekoval Ing. Adamu Heroutovi, Ph.D. za vstˇr´ıcn´ypˇr´ıstup, odborn´eveden´ıa pomoc pˇri n´avrhu struktury diplomov´epr´ace. c Jan Hein´ık, 2007. Tato pr´ace vznikla jako ˇskoln´ı d´ılo na Vysok´emuˇcen´ı technick´emv Brnˇe,Fakultˇein- formaˇcn´ıch technologi´ı. Pr´ace je chr´anˇenaautorsk´ym z´akonem a jej´ıuˇzit´ıbez udˇelen´ıopr´avnˇen´ı autorem je nez´akonn´e,s v´yjimkou z´akonemdefinovan´ych pˇr´ıpad˚u. Obsah 1 Uvod´ 3 2 Z´akladn´ıpojmy 4 2.1 Frakt´al ....................................... 4 2.1.1 Historie frakt´al˚u ............................. 4 2.2 Dimenze ...................................... 6 2.2.1 Topologick´adimenze ........................... 6 2.2.2 Hausdorffova dimenze .......................... 6 2.3 Sobˇepodobnost .................................. 8 2.4 Atraktor ...................................... 9 2.4.1 Lorenz˚uvatraktor ............................ 10 3 Typy frakt´al˚u 11 3.1 Dynamick´esyst´emy ............................... 11 3.1.1 Juliovy mnoˇziny ............................. 12 3.1.2 Mandelbrotova mnoˇzina ......................... 12 3.1.3 Newtonova frakt´aln´ımnoˇzina ...................... 13 3.2 L-syst´emy ..................................... 14 3.2.1 Cantorova mnoˇzina ............................ 16 3.2.2 Kochova vloˇcka .............................. 17 3.2.3 Hilbertova kˇrivka ............................. 18 3.3 IFS frakt´aly .................................... 20 3.3.1 Sierpinsk´ehokobereˇcek .......................... 22 3.3.2 Mengerova houba ............................. 22 3.3.3 Fractal Flames .............................. 23 3.4 Stochastick´efrakt´aly(nepravideln´efrakt´aly) .................. 27 3.4.1 Simulace Brownova pohybu ....................... 27 3.4.2 Metoda pˇresouv´an´ıprostˇredn´ıho bodu ................. 29 3.4.3 Spektr´aln´ısynt´eza ............................ 32 4 Frakt´alyv praxi 34 4.1 Biologie a l´ekaˇrstv´ı ................................ 34 4.2 Poˇc´ıtaˇcov´agrafika ................................ 35 4.3 Frakt´aln´ıant´eny ................................. 36 4.4 Materi´aly ..................................... 37 4.5 Umˇen´ıa architektura ............................... 38 4.5.1 Africk´efrakt´aly .............................. 39 4.5.2 Betl´emsk´ahvˇezda ............................ 40 1 4.6 SW pro generov´an´ıfrakt´al˚u ........................... 41 4.6.1 FractInt .................................. 41 4.6.2 Fractal eXtreme ............................. 42 4.6.3 XaoS .................................... 43 4.6.4 Apophysis ................................. 44 5 Algoritmy pro generov´an´ıfrakt´al˚u 45 5.1 Algoritmy dynamick´ych syst´em˚u ........................ 45 5.1.1 Lorenz˚uvatraktor ............................ 45 5.1.2 Juliovy mnoˇziny ............................. 46 5.1.3 Mandelbrotova mnoˇzina ......................... 47 5.2 Algoritmy L-syst´em˚u ............................... 49 5.2.1 Kochova kˇrivka .............................. 49 5.3 Algoritmy IFS .................................. 50 5.3.1 Algoritmus n´ahodn´eproch´azky (RWA) ................. 50 5.3.2 Deterministick´yalgoritmus (DIA) ................... 52 5.3.3 Modifikovan´yalgoritmus n´ahodn´eproch´azky(M-RWA) ....... 54 5.3.4 Algoritmus generov´an´ıminima pixel˚u(MPA) ............. 55 5.3.5 Fractal flame ............................... 56 5.4 Algoritmy stochastick´ych frakt´al˚u ........................ 58 5.4.1 Simulace dif´uze .............................. 58 5.4.2 Metoda pˇresouv´an´ıprostˇredn´ıho bodu ................. 60 6 V´ysledky pr´ace 62 6.1 Slajdy ....................................... 62 6.2 Demonstraˇcn´ıprogram .............................. 64 6.2.1 Realizace ................................. 65 6.2.2 Ovl´ad´an´ıprogramu ............................ 67 6.2.3 Spr´avce palet ............................... 69 7 Z´avˇer 71 2 Kapitola 1 Uvod´ Poprv´eje moˇzn´ese s pojmem “frakt´al”setkat v roce 1975, kdy jej ve sv´epr´aciFrakt´aly: Tvar, n´ahoda a dimenze [11] (francouzsky Les objets fractals, forme, hasard et dimen- sion) uvedl Benoit Mandelbrot. Mnoho takov´ychto ´utvar˚u,jako napˇr. Kochova vloˇcka ˇci Sierpinsk´ehokoberec, bylo objeveno a pops´ano jiˇzdˇr´ıve, mnoh´ebyly dokonce vytvoˇreny jiˇzpˇred stalet´ımi- Africk´efrakt´aly. Pojem vych´az´ız latinsk´eho slova “fractus” (rozbit´y). Tyto sloˇzit´estruktury, vyhovuj´ıc´ıurˇcit´ymmatematick´ym poˇzadavk˚um,m˚uˇzeme nal´ezt tak´e v pˇr´ırodˇe. Pˇredstavuj´ıje snˇehov´evloˇcky, kaprad´ı,stromy, blesky, mraky, atd. Castoˇ je je- jich pozn´avac´ımznakem sobˇepodobnost, coˇzznamen´a,ˇzedan´y´utvar se jev´ıjako stejn´y v jak´emkoliv mˇeˇr´ıtkua st´alese opakuje. Pr´ace je rozdˇelenana dvˇehlavn´ıˇc´asti- teoretickou a praktickou. V teoretick´eˇc´asti pr´ace jsou vysvˇetleny z´akladn´ıpojmy jako je frakt´al,sobˇepodobnost aj. a jsou pˇribl´ıˇzeny souvislosti v´yvoje frakt´aln´ıpodstaty. D´alejsou uvedeny pˇr´ıklady frakt´aln´ıch ´utvar˚u,jejich rozˇclenˇen´ıa druhy algoritm˚u,kter´elze ke generov´an´ıobrazc˚upouˇz´ıt. V podkapitol´ach jsou uvedeny vˇzdypopisy jednotliv´ych typ˚u- Cantorova mnoˇzina,IFS frakt´aly, Mandelbrotova mnoˇzinaatd. Frakt´alyse vyskytuj´ı v mnoha oblastech techniky i kaˇzdodenn´ıch jevech. Nˇekter´ymzaj´ımavostem je vˇenov´ana vˇetˇs´ıpozornost. Napˇr´ıkladv kapitole ˇc. 4 jsou pops´any frakt´aly, kter´ese vyskytuj´ıve svˇetˇekolem n´as,at’ uˇzv pˇr´ırodˇe,nebo v nˇekter´emm z odvˇetv´ı techniky. Pˇrechod mezi teoretickou a praktickou ˇc´ast´ıpr´ace tvoˇr´ı 5. kapitola, kde jsou uvedeny algoritmy pro generov´an´ıfrakt´aln´ıch ´utvar˚u.V textu jsou uvedeny pˇr´ıklady, kdy tvarovˇe podobn´efrakt´alylze vytvoˇritodliˇsn´ymzp˚usobem. Pro zaj´ımavost jsou u nˇekter´ych al- goritm˚uuvedeny moˇznostimodifikac´ı. D´alejsou pops´any nˇekter´esoftwarov´ebal´ıky pro generov´an´ıfrakt´al˚u. Praktickou ˇc´astreprezentuje kapitola 6. C´ılemdiplomov´epr´ace bylo zpracovat informace ve formˇeelektronick´ych slajd˚uvyuˇziteln´ych jako v´yukov´ymateri´alpˇredmˇetu Poˇc´ıtaˇcov´a grafika na FIT VUT v Brnˇe.Pro ilustraci jednotliv´ych skupin frakt´al˚uje souˇc´ast´ıpr´ace tak´edemonstraˇcn´ıprogram. 3 Kapitola 2 Z´akladn´ıpojmy 2.1 Frakt´al Frakt´alje ˇclenit´yobjekt, jehoˇzjednotliv´eˇc´asti