Vítejte v programu FRACTAL IMAGES ! ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚ Stali jste se majiteli zcela nového produktu napsaného původně pro Sharp mz-800. Je jedním z nemnoha programů, které dokonale využijí grafické schop- nosti Vašeho počítače. Díky komfortní- mu ovládání a rozsáhlé nápovědě se s programem okamžitě sblížíte a výsledky práce Vás určitě nadchnou. Dokonce si je můžete nechat barevně (!) vytisknout na plotteru mz-1P16. S použitím přídav- ného programu KONVERT je dostanete i do MZ-Paintu, kde se na nich můžete dále podle libosti vyřádit. Po zhlédnutí demo-obrázků se do toho s chutí pustíte a pak už Vám nic neza- brání ve vytváření barevných, nádher- ných, půvabných, rozkošných, úchvat- ných, jedinečných, strhujících, omra- čujících, šokujících, ohromujících, velkolepých, bombastických, bizarních, nepřekonatelných, nepředstavitelných, oslepujících, fantastických, překvapu- jících, fascinujících, nevídaných a nepředvídatelných, originálních, neopa- kovatelných, ožívajících, záhadných, tajemných, udivujících, podivuhodných, okouzlujících, krásných, zasněných, láskyplných, romantických a nikdy nekončících obrázků. Neuvěřitelné ... A přitom vždy to, co vytvoříte, je jen zlomkem toho, co byste mohli vytvořit. Ale abyste si nemysleli, zase tak bez- chybné to není. Hodně záleží i na Vás, na Vašem štěstí a trpělivosti. Vedle pocitů euforie pak můžete propadnout třeba i touze uplatňovat na Váš počítač násilí. Tento způsob komunice ovšem není nejvhodnější, počítači časté inzultace přílíš neprospívají. Vaší fantazii se meze nekladou (způ- sobů likvidace počítače je mnoho) a než získáte cit (ale teď už se vracíme zase k programu) vytušit, kde se skrývají ty nejhezčí obrázky, můžete zatím vycházet z obrázků vzorových. Tak to by mohlo být na úvod vše, máte se tedy na co těšit. Snad byste ještě mohli vědět, že tento 'softwarový pro- dukt' spatřil světlo počítačového světa koncem roku 1992 a pokud mi za něj chcete vyjádřit svůj 'obdiv', můžete mi napsat nebo zatelefonovat (jestli víte kam...). Takže pevné nervy ! S úctou autor (tedy já)  Pokud jste se už prokousali úvodem,  můžeme přistoupit k věci. Nejdříve si  dáme obsah.  OBSAH  ‚‚‚‚‚‚‚ Úvod . . . . . . . . . . . . . 1 Obsah . . . . . . . . . . . . . 4 Hlavní nápověda . . . . . . . . 5 Nápověda v programu . . . . . . 5 Ovládání . . . . . . . . . . . 6 Kopie programu . . . . . . . . 7 Co jsou to fraktály ? . . . . . 8 Mandelbrotova množina . . . . . 9 Juliova množina . . . . . . . . 13 Závěr . . . . . . . . . . . . . 15  Hlavní nápověda  ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚  Hlavní nápověda je právě tato část programu, která se nahraje až po spuštění z hlavního menu programu.  Klávesami   a   se listuje po stranách nahoru a dolů, klávesami   a   se vybírá strana, která se zobrazí po stisknutí CR. Klávesou ESC se s touto nápovědou rozloučíte a vrátíte se do hlavního menu programu. Na myši se používají pouze tlačítka, mají stejný význam jako klá- vesy  ,  a ESC.  Nápověda v programu  ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚  Pokud si nevíte v programu rady, mů- žete téměř v každé situaci stisknout ? a zobrazí se vám příslušná nápověda. Jestliže najedete šipkou na ikonu v hlavním menu a stisknete ?, vypíše se, co tato ikona představuje a její horká klávesa.  Ovládání  ‚‚‚‚‚‚‚‚  V hlavním menu jsou dva způsoby spouštění jednotlivých částí programu : 1. Najetím šipkou na příslušnou ikonu a  stisknutím CR. 2. Stisknutím příslušné klávesy (tzv.  horké klávesy). Téměř z každé části programu lze vysko- čit stisknutím klávesy ESC. Během jakéhokoliv kreslení však ESC nelze použít - ukončí se klávesou E, obrá- zek je považován za dokončený. K ovládání lze také používat myš, nejlé- pe třítlačítkovou. Musí být připojena na port JOY2. Mezi ovládáním klávesnicí a myší platí tyto analogie : kl. CR = levé tlačítko na myši (tl.1) kl. SPACE = prostřední tlačítko na  myši (tl.2) kl. ESC = pravé tlačítko na myši (tl.3) Na myši dvoutlačítkové lze tl.3 nahradit současným stiskem pravého+levého (ne naopak !) tlačítka. Tl.3 místo ESC nelze použít v případech, kdy se něco zadává z klávesnice. Pokud se program na něco ptá - tl.1 = ANO, tl.2 = NE .  Kopie programu  ‚‚‚‚‚‚‚‚‚‚‚‚‚‚  Jestliže potřebujete udělat kopii programu (samozřejmě pouze pro svoji vlastní potřebu) a nápovědu nepotřebu- jete, zkopírujete jen hlavní program FRACTALS.COM. Chcete-li nápovědu, musíte zkopírovat také všechny soubory s pří- ponou HLP.  Co jsou to fraktály ?  ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚  Mnozí jste se již určitě s fraktály setkali. V poslední době se jejich používání na počítačích rozšiřuje, zatím většinou k efektním grafickým demonstra- cím. Stejně tak je využívá i tento prog- ram, na fraktálech jsou založeny všechny obrázky.  Základním znakem fraktálů je tzv. soběpodobnost. Můžeme často vidět nějaký objekt (např. základní motiv množiny) na různých místech v různých velikostech nebo všelijak otočený a zdeformovaný. Charakteristická vlastnost se stále opa- kuje v různých měřítcích, vždy však tro- chu jinak - zkresleně a deformovaně. Jindy je objekt tvořen z několika vlastních zmenšených replik, ty jsou pak tvořeny z ještě menších a ty z ještě menších atd. Další zajímavou vlastností fraktálů je jejich struktura a organizace. Na první pohled mezi nimi nepanuje žádný přísný řád, nenacházíme zde pravidelné nebo pravidelně uspořádané tvary a objekty. Zároveň však nelze říct, že by mezi nimi vládl úplný chaos. Fraktály existují na jakési hranici mezi řádem a chaosem. Právě to je také činí tak zajímavými. Snad ještě zajímavější je, že všechny tyto složité útvary bývají popsány poměrně jednoduchými matematickými vztahy. S touto vlastností se setkáváme právě v Mandelbrotově a Juliově množině.  V poslední době se fraktály využívají také ke komprimaci obrazových dat. Tento postup je dosti složitý, nicméně lze takto data zkrátit až 50 krát !  Mandelbrotova množina  ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚  S komplexními čísly se asi již každý setkal (a pokud ne, nemusí číst dál - určitě nic nepochopí), ale zřejmě jen málokdo je nějak smysluplně používal. Využitím komplexních čísel a hlavně pak některými iteračními metodami s komlex- ními čísly se zabýval B.B Mandelbrot. Dospěl mj. také k formuli z=z +c , která má fraktální topologii. Jako první tak spatřil po jejím počítačovém zpracování charakteristický útvar v okolí komplexní nuly, nazvaný později "Mandelbrotova množina". V programu se výraz z +c uve- deným způsobem iteruje - to znamená, že z počátečních hodnot proměnných z a c vypočítáme novou hodnotu z, tu spolu s c znovu dosadíme, vypočítáme další z, které spolu s c znovu dosadíme, a tak pořád dokola. Např. pro počáteční z=0 a c=1+i dostaneme posloupnost čísel 1+i, 1+3i, -7+7i,...  V programu jsou komplexní z a c roz- děleny na dvě proměnné (reálnou a ima- ginární část) Zr,Zi,Cr,Ci. Komplexní čísla se zobrazují v rovině, tedy každý obrázek je v podstatě část množiny kom- plexních čísel, kde každý bod představu- je jedno komplexní číslo určené proměn- nou c (proměnnou Cr pak chápeme jako souřadnici x, proměnnou Ci jako sou- řadnici y). Barva pro každý bod na obra- zovce se vypočítá následovně : Za c se dosadí příslušné komplexní číslo, kterým je bod určen, z se vynu- luje a iteruje se tak dlouho, dokud z nedosáhne určité mezní hodnoty (nastane pro zr +zi >=4). Podle počtu provedených iterací se daný bod obarví. Protože pro některá c může být provede- ný počet iterací značně velký (pro kom- plexní nulu dokonce nekonečný), zavádí se maximální počet iterací. Jestliže tedy ani po provedení maximálního počtu iterací z nedosáhlo mezní hodnoty, s iterováním se končí a daný bod se obarví černě. Pokud se počet provedených ite- rací blíží maximálnímu počtu iterací, obarví se bod bíle. Je-li počet iterací ještě menší, obarví se bod podle zvole- ného typu obarvení. Pro názornost si lze obrázky představovat jako třírozměr- né objekty a dělit si je na vrstvy - v každé vrstvě jsou stejně obarvené body se stejným počtem iterací; maximální po- čet iterací potom určuje počet vrstev v obrázku.  Maximální počet iterací (počet vrstev) je možné vybrat ze čtyř hodnot (100,200, 300,400) a platí, čím je větší, tím pod- robněji se obrázky vykreslují (tím "hlouběji" se do množiny nahlíží). Nejlepší je max. počet iterací (počet vrtsev) určovat vždy podle konkrétního obrázku (stejně tak i jeho obarvení).  Při zadávání parametrů určíme komplex- ní číslo, od kterého se bude počítat (tj. poloha části množiny - souřadnice jejího levého dolního rohu) a velikost zobrazované části množiny. Počítač pak v takto určeném výseku postupně vypočítá ke každému komplexnímu číslu (co číslo to bod na obrazovce) počet iterací a obarví na obrazovce příslušné body. Tento způsob výpočtu umožňuje téměř li- bovolné zvětšení libovolných částí množiny.  V obrázku celkové Mandelbrotovy mno- žiny je osový kříž, na kterém je číselně vyjádřeno umístění Mandelbrotovy množiny v množině komplexních čísel.  Parametry pro zobrazení vybrané části není nutné zadávat číselně - stačí ji vymezit pomocí rámečku.  Tak to bylo něco málo k Mandelbrotově množině. Pokud to ještě vydržíte, dáme si Juliovu množinu.  Juliova množina  ‚‚‚‚‚‚‚‚‚‚‚‚‚‚‚  Juliova množina (nebo též Juliova křivka; dále jen JM) vzniká v podstatě úplně stejně jako Mandelbrotova množina (dále jen MM), rozdíl je jen ve významu parametrů. Narozdíl od MM jsou jednotli- vá čísla (body) určena proměnnou z (Zr a Zi jsou zde tedy souřadnicemi X a Y; v MM jsou souřadnicemi Cr a Ci) a c zde představuje konstantu (Cr a Ci jsou zde konstanty X a Y; v MM jsou konstantami Zr a Zi). Konstanty X a Y určují deformaci množiny, v MM nebyla deformace žádoucí - konstanty jsme ponechávali nulové, v JM je však vhodné jim nějaká čísla přiřadit - může zde pak existovat více typů JM podle kon- stant X a Y.  Přestože je MM jenom jedna, je mnohem rozmanitější a přehlednější a zaujme vás určitě víc než JM. A máme to skoro za sebou, zbývá už jen  závěr.  Závěr  ‚‚‚‚‚  Na závěr jsem si nechal něco, co vás asi nejvíc zaskočí. Toto "něco" je čas, resp. doba výpočtu. Budete si muset zvyknout, že než se vám něco nakreslí, počkáte si třeba i několik hodin. Způsob výpočtu obrázků je totiž časově velmi náročný. Pro jeden bod se může dělat např. až 100 iterací, přičemž na celé obrazovce je 64000 bodů, to je dohromady 6 400 000 iterací. Výpočet jedné iterace trvá asi 0.004 s, celý obrázek se tedy může vypotit klidně až za 25 600 s, což je něco přes 7 hodin. A to si představ- te, že by se kreslilo 300 nebo 400 vrstev ... Nejvýhodnější tedy je kreslit si malé obrázky a jen ty nejlepší nechat nakreslit na celou obrazovku (třeba přes noc). Nemusíte se bát nechat počítač delší dobu zapnutý, je prokázá- no, že počítačům vadí víc časté zapínání a vypínání než dlouhodobý vyrovnaný chod. Mimo to vlastníte přece kvalitní výrobek firmy Sharp.  Tento program je napsán celý ve stro- jáku, v pascalu by počítání trvalo asi 3 krát, v basicu dokonce 11 krát déle. Takže si nestěžujte, jak vidíte, mohlo by to být i horší.  Tak a to už je opravdu všechno, kdo by chtěl vědět něco víc např. o fraktálech, fraktální geometrii nebo o Mandelbrotově a Juliově množině, může se podívat do těchto časopisů : VTM 18/89, T 5/88, Bajt 4/91,Vesmír 8/88. Přeji Vám hodně úspěchů a ještě více pěkných programů, jako je tento.  Tomáš Pávek, autor