37
VYSOKÉ UČENÍ TECHNICKÉ V BRNĚ BRNO UNIVERSITY OF TECHNOLOGY FAKULTA ELEKTROTECHNIKY A KOMUNIKAČNÍCH TECHNOLOGIÍ ÚSTAV TELEKOMUNIKACÍ FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF TELECOMMUNICATIONS VÝVOJ APLIKACE PRO MODELOVÁNÍ FYZIKÁLNÍCH JEVŮ DEVELOPMENT OF APPLICATION FOR SIMULATION OF PHYSICALS EFFECTS BAKALÁŘSKÁ PRÁCE BACHELOR'S THESIS AUTOR PRÁCE Milan Polách AUTHOR VEDOUCÍ PRÁCE Ing. Vladimír Holcman, Ph.D. SUPERVISOR BRNO 2009

Bakalářská práce

Embed Size (px)

DESCRIPTION

Bakalářská práce

Citation preview

  • VYSOK UEN TECHNICK V BRN BRNO UNIVERSITY OF TECHNOLOGY

    FAKULTA ELEKTROTECHNIKY A KOMUNIKANCH TECHNOLOGI STAV TELEKOMUNIKAC FACULTY OF ELECTRICAL ENGINEERING AND COMMUNICATION DEPARTMENT OF TELECOMMUNICATIONS

    VVOJ APLIKACE PRO MODELOVN FYZIKLNCH JEV DEVELOPMENT OF APPLICATION FOR SIMULATION OF PHYSICALS EFFECTS

    BAKALSK PRCE BACHELOR'S THESIS

    AUTOR PRCE Milan Polch AUTHOR

    VEDOUC PRCE Ing. Vladimr Holcman, Ph.D. SUPERVISOR BRNO 2009

  • !"#$#%&'!#()&(*(+,-,./01-231456789:3;+;?@ABC?D E7.,93F;./GH IJD KLMNMOPQCRSD T USVABWXYSZ[\PSDN]]LN]]K_ abc d'e**!f'(#= g(#e'hiiib_cj:.kl3m

  • Abstrakt

    Clem tto bakalsk prce bylo vytvoit vukov systm pro efektivnj vuku fyziklnch

    jev a nahrazen starch pouvanch systm. Celek se skld z nkolika st, kde na zatku

    jsou teoretick informace zobrazeny na internetovch strnkch, dle je mon spustit simulaci

    fyziklnch jev a na zvr je mon si na animaci prohldnout, jak dan jev vypad v relnm

    prosted pi relnch situacch. Animace pro simulace jev v relnm prosted jsou tvoeny

    programem Blender a pomoc programovacho jazyka Python.

    Kl ov slova

    Blender, simulace fyziklnch jev, Python,e-learning,animace

    Abstrakt

    The aim of this bachelor's thesis was to create an educational system for more effective

    teaching physical phenomena and the replacement of older systems used. Whole project is

    composed of several parts. At the begining, the theoretical information are shown on website.

    Next is a simulation of physical phenomena and in conclusion, how the phenomena looks like

    in a real situation is presented. Animations for simulations are created in Blender, using

    programming language Phyton.

    Keywords

    Blender, simulation of physicals effects, Python, e-learning, animation

  • - 4 -

    POLCH, Milan. VVOJ APLIKACE PRO MODELOVN FYZIKLNCH JEV . [s.l.], 2009. 37 s. , 1 CD-ROM. Brno: Vysok uen technick v Brn, Fakulta elektrotechniky a komunikanch technologi. Vedouc bakalsk prce Ing. Vladimr Holcman, Ph.D.

  • - 5 -

    Prohlen Prohlauji, e svou bakalskou prci na tma Vvoj aplikace pro modelovn fyziklnch jev jsem vypracoval samostatn pod vedenm vedoucho bakalsk prce s pouitm odborn literatury a dalch informanch zdroj, kter jsou vechny citovny v prci a uvedeny v seznamu literatury na konci prce. Jako autor uvedenho bakalsk prce dle prohlauji, e v souvislosti s vytvoenm tohoto projektu jsem neporuil autorsk prva tetch osob, zejmna jsem nezashl nedovolenm zpsobem do cizch autorskch prv osobnostnch a jsem si pln vdom nsledk poruen ustanoven 11 a nsledujcch autorskho zkona . 121/2000 Sb., vetn monch trestnprvnch dsledk vyplvajcch z ustanoven 152 trestnho zkona . 140/1961 Sb. V Brn dne ............... ............................................ podpis autora

  • - 6 -

    Podkovn

    Dkuji vedoucmu bakalsk prce Ing. Vladimru Holcmanovi, Ph.D., za velmi

    uitenou metodickou pomoc a cenn rady pi zpracovn bakalsk prce.

    V Brn dne . . . . . . . . . . . . . . . . . . . . . . . . . . .

    (podpis autora)

  • - 7 -

    VOD....................................................................................................................................................- 8 -

    1 TEORETICK VOD...................................................................................................................- 9 -

    1.1 HISTORIE BLENDERU .................................................................................................................. - 9 - 1.2 UIVATELSK ROZHRAN BLENDERU ....................................................................................... - 10 - 1.2.1 UIVATELSK NASTAVEN ....................................................................................................... - 10 - 1.2.2 3D OKNO ................................................................................................................................ - 11 - 1.2.3 OVLDAC PANELY.................................................................................................................. - 14 - 1.2.3.1 Logika .................................................................................................................................- 15 - 1.2.3.2 Stnovn ............................................................................................................................- 16 - 1.3 INTERNET................................................................................................................................... - 19 - 1.3.1 HISTORIE INTERNETU............................................................................................................. - 19 - 1.3.2 VZNIK HTML .......................................................................................................................... - 20 - 1.4 PYTHON ..................................................................................................................................... - 20 - 1.5 FYZIKA ....................................................................................................................................... - 21 - 1.5.1 IKM VRH.............................................................................................................................. - 21 - 1.5.1.1 Matematick popis............................................................................................................- 21 - 1.5.1.2 Vpoet ikmho vrhu bez vlivu prosted ....................................................................- 22 - 1.5.1.3 Vpoet ikmho vrhu s vlivem prosted ....................................................................- 22 -

    2 PRAKTICK ST ...................................................................................................................- 23 -

    2.1 TVORBA HTML STRNEK ........................................................................................................... - 23 - 2.1.1 VLASTN TVORBA HTML STRNKY ........................................................................................ - 24 - 2.1.2 TVORBA VZHLEDU HTML STRNEK ...................................................................................... - 26 - 2.2 PYTHON ..................................................................................................................................... - 28 - 2.2.1 VVOJOV DIAGRAM.............................................................................................................. - 29 - 2.3 TVORBA PROGRAM ................................................................................................................. - 30 - 2.3.1 OVLDN PROGRAMU ........................................................................................................... - 31 - 2.3.2 TVORBA VIDEA VRHY........................................................................................................... - 32 - 2.3.3 TVORBA ANIMACE KAPALINY ............................................................................................... - 32 -

    ZVR................................................................................................................................................- 34 -

    POUIT LITERATURA .................................................................................................................- 35 -

  • - 8 -

    vod

    Clem bakalsk prce je vytvoit nov prosted pro vuku fyziklnch jev. Zklad by

    mly tvoit internetov strnky, kde se student seznm s fyziklnm jevem, zjist, kde

    se s nm me setkat a bude si moci spustit jednoduchou animaci, kde uvid probran

    dj. Pokud bude mt dle zjem, bude si moci sthnout a spustit program, kde po

    zadn potench hodnot bude moci spustit animaci na vykreslen trajektorie. Druh

    monost na sputn bude zanimovn dje pomoc programu Blender. Tento program

    je spe zamen na ukzn dje v praxi, ne vysvtlen teorie dje.

    Modern postupy vuky se zamuj na co nejefektivnj, ale zrove na co

    nejsrozumitelnj zpsob pedn informace. Pokud nkdo potebuje zskat

    informace, sta se pouze pipojit na internet a informace vyhledat. Na internetu se

    dozv informace, kter hledal, ale nalezne zde i mnoho dalho nap. praktick ukzky.

    Tomuto by mla napomoci i tato prce.

    Bakalsk projekt vychz z poadavk lektor fyziky na komplexnj a nzornj

    systmy pro potaovou vuku a e-learning. Celek by ml nahradit stvajc program

    Fmulus, u kterho jsou problmy s rychlost zobrazovanho dje. Fmulus byl

    koncipovn na mn vkonn potae a z tohoto dvodu se musel run upravovat

    zdrojov kd, aby byla animace pehledn.

    Pro animaci bude pouit OpenSource program Blender. Tento program je sice

    primrn uren na 3D modelovn, ale m i GameEngine, ji nzev napovd, je

    zamen na hry. Z GameEngine vyuijeme jen malou st a to na samotn sputn

    animace. Nejprve se pomoc Python skriptu natou poten hodnoty vytvoen

    programem na zobrazen trajektorie, nsledn se provede vypotn drhy objektu.

    Po sputn GameEngine v Blenderu bude stait zmaknout pouze nkolik klves na

    sputn animace.

    V bakalsk prci by mly bt vytvoeny simultnn animace pro fyzikln jevy a to

    vrh vzhru, ikm vrh, voln pd a vodorovn vrh. Tyto animace studentm v co

    nejvt me pibl probran fyzikln jev.

    Program na vytvoen potench hodnot a zobrazen trajektorie je npln jin

    bakalsk prce.

  • - 9 -

    1 Teoretick vod

    1.1 Historie Blenderu

    Blender vznikl v roce 1996 jako modelovac nstroj animanho studia NeoGeo. V roce

    1998 byl Blender zveejnn ve verzi 1.25 a podporoval operan systmy FreeBSD a

    Linux. Nsledn byla zaloena spolenost NaN(Not a Numer), kter pracovala na

    vvoji Blenderu Creator. [2]

    V roce 1999 byla uvolnna verze pro Windows. Byly pidny nov modelan

    funkce, kter se daly dokoupit za 95 USD. Ve verzi 2.25 vznikla komern verze

    Blenderu, Blender Publisher. Tato verze byla k dispozici za 11000 K. Bohuel vvoj

    neel tak, jak si firma NaN pedstavovala a 12. bezna 2002 vyhlsila bankrot. [2]

    Firma NaN odmtla zveejnit zdrojov kdy Blenderu. To se povedlo a po

    vyjednvn Tona Roosendaala za nsledujcch podmnek :

    -vznikne nekomern asociace Blender Foundation

    -nadace zaplat spolenosti poplatek 100 000 USD

    -nadace znovu zpstupn dokumentaci a webov strnky Blenderu

    Nkolik zastnc Blenderu a bvalch zamstnanc zaalo shnt potebn

    finance na odkoupen Blenderu. Minimln vklad byl 50 euro a tm zskal pispvatel

    lenstv v komunit Blender Foundation.

    Velkm pekvapenm bylo, e 100 000 USD dali dohromady za pouhch 7 tdn a

    dne 13. jna 2002 byl Blender zveejnn pod licenc GNU GPL a byly sputny

    internetov strnky www.blender.org

    Nyn se vvoji Blenderu vnuj dobrovolnci z celho svta pod vedenm Tona

    Roosendaala. V roce 2005 zaloila Blender Foundation projekt Project Orange ,

    kter ml za kol vytvoit animovan film. Prvn film se jmenoval Elefant Dream. [2]

    Dky velkmu spchu filmu zaloil Ton Roosendaal Blender Institut, kter m za

    kol koordinovat a vytvet OpenSource projekty souvisejc s projekty 3D filmu, her a

    vizulnch efekt.

    V dubnu vydal projekt Peach Project oteven film Big Buck Bunny. V souasn

    dob se pracuje na he Apricot. [2]

  • - 10 -

    1.2 Uivatelsk rozhran Blenderu

    Obr.1.1 Nhled na rozhran Blenderu

    Rozhran Blenderu je pln pizpsobiteln. My si zde popeme zkladn nastaven

    modelovacho rozhran. Zkladn rozhran se skld z horn uivatelsk lity, 3D okna

    a ovldacch panel (Obr.1.1).

    1.2.1 Uivatelsk nastaven

    V hornm uivatelskm nastaven v menu Soubor se nachz monosti pro ukldn a

    natn souboru *.blend , import a export ppadn ukldn jako spustiteln exe

    soubor, pokud pracujeme s GameEngine.

    Obr. 1.2 Ukzka zkladnch objektu Blenderu

  • - 11 -

    V menu Pidat mme monost pidvat do scny kivky, objekty, meta objekty,

    svtla, kamery a opiku Suzanne (Obr. 1.2). Tyto objekty jdou pak dle pizpsobiteln

    naim poadavkm.

    V menu asov osa jsou rzn monosti pro ulehen prce s asem, kter

    sten vyuijeme pi animaci.

    Dle tu mme menu Hra a render. Tato menu jsou dleit pro vytvoen vslednch

    obrzk nebo animaci. My vyuijeme jen sten monosti menu Hry, kde se

    nastavuj druhy pouitch textur pro Game engine a dle monost spustit hru. Render

    nebudeme vyuvat, protoe bude poteba vytvet animaci podle zadanch hodnot.

    Bohuel toto render neumouje. Render funguje na principu, e nm ze zadanch

    hodnot vytvo snmek nebo celou animaci. My msto toho vyuijeme Blender

    GameEngine , kter nm umouje spoutt animaci pmo v Blenderu.

    Jako posledn monost v horn lit je vbr prosted (momentln vyuvme

    prosted modelovac (Obr.1.1)) . Zvolit si meme hned z nkolika monost a to

    Animanho, kde se pracuje s IPO kivkami, Materilovho, kter nm usnaduje prci

    s barvami a texturovnm objektu, Sequencer pro prci s videem a jako posledn

    Scripting, kter je pizpsoben pro prci s Pythonem.

    1.2.2 3D okno

    Orientace v 3D prosted Blenderu je z potku trochu nepehledn, ale po delm

    pouvn zjistte, e je cel Blender koncipovn pro rychlou a jednoduchou prci.

    Vtina funkc, kter potebujeme, se d vyvolat nkolika zpsoby. Prvn monost je

    asov del a to pomoc nabdek v Blenderu.[2] Lep monost je vyuit klvesovch

    zkratek. Napklad rozdlen plochy na nkolik mench st lze udlat s nsledujcm

    postupem. V dolnm menu 3D okna vybereme menu Mesh->Hrany->Rozdlit , tm

    dojde k rozdlen plochy na 4 men. Dal monost je pomoc klvesov zkratky W

    a z menu vybrat monost Rozdlit.

    1. 2. 3. 4a-b. 5. 6. 7. 8. 9.

    Obr. 1.3 Menu 3D okna

  • - 12 -

    Popis menu v 3D okn (Obr.1.3) 1. umouje zmnit typ celho okna, napklad na uivatelsk nastaven viz.

    Horn lita nebo ovldac panely. Je zde mon vybrat z mnoha monost, kter

    nm zpstupuj rzn nastaven Blenderu

    2. v poloce Pohled jsou monosti pro vbr kamer, pohledu, dle vbru pozad

    na 3D plochu, kter nm me pomoci pi modelovn sloitjho objektu

    3. pokud mme na scn vce objekt, me bt asem sloitj se v nich

    orientovat. V tomto nm pome menu Vybrat, kde mme monost zvolit

    seskupen objekty, objekty se stejnmi vlastnostmi nebo stejnho druhu 4a.

    4.A menu Objekt je asi nejdleitj. Nachz se zde monosti pro modelovn

    a pravu objektu, proto si projdeme toto menu podrobnji

    skripty -zde meme vyvolat skripty souvisejc s modelovnm

    Show/Hide Objects slou k doasnmu schovn objektu na

    scn. Pokud budeme mt velkou rozpracovanou scnu, projev se to

    hlavn na zti potae a tm i zpomalen na prce. Proto je lep

    nechat viditeln pouze objekty, se ktermi prv pracujeme a zbytek

    pomoc nabdky schovat.

    pesunout do vrstvy - podobn monost jako Show/Hide je monost

    pesunout do vrstvy. Tato funkce se nejvce pouv k rozdlen scny

    napklad na objekty a svtla nebo ppadn jinak

    zmnit typ objektu - vyuijme pokud je poteba pevst kivky na

    mesh. [2]

    spojit objekty pouijeme pokud potebujeme spojit nkolik objekt

    do jednoho, usnaduje to prci s deformacemi . [2]

    Boolean operace nm umon zkladn matematick operace s

    objekty, stn, odtn[2]

    Klonovat, duplikovat rozdl je zde takov, e pokud tleso

    naklonujeme, stv se obrazem pvodnho tlesa. Pokud zmnme na

    pvodnm velikost, barvu atd., zmn se i klonovan tleso. Pi pouit

    funkce duplikovat se vytvo stejn kopie jako pvodn tleso, ale

    nadle nezvisl na vzoru. [2]

  • - 13 -

    4.B pokud se pepneme do editanho menu (viz. Editan md), dostvme se k

    monosti editovat body, kivky nebo plochy. Menu objekt se zmn na Mesh a

    monosti tu jsou trochu jin.

    Ploky mme monost vytvet nov plochy, pevdt tyhelnky

    na trojhelnky a naopak. [2]

    Hrany zde mme monost rozdlit jednu ploku na nkolik malch,

    zaoblit hrany mezi vce plokami [2]

    Taen pokud ozname napklad 1 plochu a dme taen, zachov

    se pvodn tvar objektu a k tomu se vythne z pedelho objektu

    vybran ploka. Tato metoda se nejastji pouv pi modelovn. [2]

    Edita n mody zde mme na vbr z nkolika monost a tm se

    nm i mn monosti prce s objektem. Mezi nejdleitj pat

    Objektov md, kdy meme tlesu mnit polohu, natoen a celkov

    velikosti, ale nemme pstup k jednotlivm stem objektu. Od toho

    mme Editan md, kdy meme ve vybranm objektu mnit pozice

    Body, Hran i Ploch a dle s nimi pracovat. Zbyl mdy nejsou pro ns

    momentln dleit. [2]

    5. Zde meme vybrat z 5-ti zobrazen, jak bude mt 3D plocha, jsou to :

    Oblka - zobraz se pouze nejvt velikost objektu[2]

    Drt - zobraz se cel tleso, kde jsou vidt vechny body a hrany[2]

    Plon - jsou vidt cel objekty, ale pouv se osvtlen z naeho

    pohledu [2]

    Stnovan - podobn jako ploky, ale zde se pouv osvtlen podle

    svtel, kter mme na ploe. [2]

    Texturovan - pokud je tlesu piazena textura, tak by nyn mla bt

    viditeln. Pokud nen, je poteba zkontrolovat zda normly tlesa

    smuj smrem ven a ppadn je pepotat(Ctrl + N) [2]

    Obr.1.4 Monost zmny pozice, velikosti a rotace pomoc kurzoru

  • - 14 -

    6.udv podle eho se bude rotovat objekt. Pokud zvolme Medin, bude

    objekt rotovat kolem svho stedu. Jin monost je pouit 3D kurzoru a

    umstn ho mimo tleso. Tleso bude nyn rotovat kolem 3D kurzoru.

    7. Ikona ruky nm udv, jak monosti prce s objektem budeme moci

    provdt v 3D okn pmo pomoc myi. Monosti jsou v nsledujcm

    poad (Obr.1.4).

    pozice - umon mnit pozici kliknutm na 1 z os X,Y,Z [2]

    rotace - umon rotaci objektu kolem os X,Y,Z [2]

    zvten/zmenen - umon mnit velikost objektu na osch X,Y,Z [2]

    Tyto monosti jdou provdt i seln a to pomoc menu Vlastnosti

    transformace, kter vyvolme klvesou N.

    8.zde je monost vbru vrstev, s jakmi chceme pracovat. Pokud

    potebujeme vybrat vce vrstev, sta pout klvesu Shift a pak vybrat jak

    vrstvy potebujeme.

    1.2.3 Ovldac panely

    Tento blok pat mezi nejdleitj. Nastavuj se zde vlastnosti tles, barvy, dynamika,

    nastaven kamer a svtel i prosted. Projdeme si zde pouze dleit zklady, kter

    budeme vyuvat pozdji pi vytven animace. Popeme si, jak piadit objektu

    barvu, piadme jednoduchou texturu, nastavme si jednoduch svtla a ukeme si

    zklad GameEngine(logiky).

    Zaneme od zatku. Jako prvn monost v Ovldacch panelech je Logika.

    Obr.1.5 Zobrazen nastaven logiky v ovldacch panelech

  • - 15 -

    1.2.3.1 Logika

    Meme si j rozdlit na 4 sti (Obr.1.5). V prvn zleva mme monost nastavovat

    vlastnosti tles. V prvnm rolovacm menu mme na vbr nkolik monost, kter si

    nyn popeme :

    a)soft body pomoci tohoto nastaven meme simulovat mkk tlesa, napklad

    dopadajc m na tvrdou podloku. M se pi dopadu na podloku podle

    nastavench hodnot zdeformuje a odsko znovu nahoru. Pokud je sprvn

    nastaven prosted, ml by se m chovat jako pi reln situaci [2]

    b)Ridic body zde se e kolize tles. Meme tak napklad simulovat hru

    kuelky. Budeme potebovat pouze drhu pro kuelky, kterou nm me nahradit

    obyejn Plocha. Dle budeme potebovat nkolik kuelek, kter nahrad nkolik

    kvdr a jednu kouli. Objektm nastavme Ridic body. Dle mus nastavit velikost

    pole okolo kadho objektu, kde se m kolize potat. To lze udlat bu

    nastavenm poloky Radius, aby odpovdala velikosti objektu . Druh monost je

    trochu jednodu nastavenm Bounds na objekt jak mme zvolen. V naem

    ppad zvolme pro kulenkovou kouli Share a pro kuelky Box. Nyn pokud

    spustme animaci (ukazatel myi mus bt na 3D okn a dle zmakneme klvesu

    P zjistme, e koule pouze kuelky vychl, ale neporaz je. Dvodem je nastaven

    stejn vhy kuelky i koule. Toto meme lehce napravit, pokud nastavme Mass

    na vt hodnotu ne 1. m vt bude vha, tm vt by mla mt koule razanci.

    Podobnou metodu vyuijeme pi animaci ikmho vrhu, kdy dlov koule zen

    vpotem balistick drhy naraz do staven sestavenho z objektu s nastavenmi

    Ridic body. [2]

    Zbyl ti nabdky slou k ovldn logiky. Prvn nm udv na jak podmt se

    m nco udlat, druh jak logick funkce m bt pouita (AND,OR, XOR... nebo

    skript python, kde meme nastavit, co se m dt a posledn,co se m provst.

    Pokus si prohldneme podrobnji obrzek, zjistme, e objekt Krychle m

    nastaven dva aktivtory. Prvn se spust, pokud zmkneme klvesu S, tm se

    spust skript python, kde meme definovat, co se m dt. Meme zjistit, zda se

    naplnily njak podmnky, nebo jako v naem ppad nateme hodnoty z

    textovho souboru a pomoc skriptovacho jazyka vypotme balistickou kivku a

    piadme ji objektu.

  • - 16 -

    Ve druhm spouti ekme na stisknut klvesy A. Pot se projde funkc

    AND, kde se nm odstartuje animace definovan pomoc IPO kivky, kterou jsme

    spotaly pi stisknut klvesy S.

    Podmt na sputn me bt nkolik. Meme spoutt napklad z

    klvesnice jako z ukzky nebo stisknutm myi. Dal pro ns zajmav monost je

    Always, kter se spust p sputn GameEngine (klvesa P) a neek a se

    napklad zmkne klvesa. Ostatn monosti nebudeme vyuvat.

    Podobn jako je tomu u podmtu, mme na vbr i u akce, kter se m

    provst. V ukzce spoutme pohyb objektu po dan drze, ale objekt meme

    napklad jenom posunou po nkter ose o zvolen krok. Dle meme

    nastavovat kamery, scny a dal nastaven .

    1.2.3.2 Stnovn

    ve stnovn najdeme nstroje pro nastaven svtel, barev i textur. Projdeme si

    postupn jednotliv podloky, kter budeme vyuvat.

    Obr.1.6 Zobrazen nastaven svtla v ovldacch panelech

    a)svtla pokud vytvome v Blenderu njakou scnu, musme ji i vidt. K tomu

    potebuj objekty svtlo. Mme jich nkolik druh. Pa mezi n i Svtlo a Slunce.

    Zbyl nebudeme vyuvat, protoe potebujeme, aby scna byla co

    nejjednodu. Svtla jsou dleit pi renderovn snmku nebo videa. My bude

    pracovat s pmo pehrvanm videem, a proto by nebylo vhodn ekat na 1

    snmek nkolik sekund, kdy potebujeme alespo 25 snmk za sekundu, aby

    bylo video plynul.

    Svtlu meme nastavit nkolik parametr. Zle jak druh svtla prv

    vyuvme. My se zamme na Svtlo. V poloce energy (Obr.1.6) nastavujeme

    slu svtla. Zde si musme dt pozor, aby scna nebyla pli tmav, ale tak na

    to, abychom scnu nepesvtlili. Dal monost je nastaven barvy svtla.

    Meme tak napklad simulovat slunce, nebo modr neonov svtlo. [2]

  • - 17 -

    Obr.1.7 Zobrazen zkladnho nastaven svtla v ovldacch panelech

    Obr.1.8 Zobrazen zkladnch monost nastaven barvy objektu

    Jako dal meme nastavovat stny, kde podle nastaven kvality me

    render jednoho obrzku trvat nkolik sekund a destek minut, p sloitjch

    scnch i nkolik hodin.

    b) barvy zde mme monost nastavovat velk rozsah barev pomoc RGB

    parametru. Pokud njak parametr zmnme, uke se nm vsledek v levm

    okn(Obr.1.7), kde meme zvolit, na jakm objektu by mla bt vidt ukzka.

    Spolu s ukzkou se zmn i zkladn barva objektu, ale sloitj vci, jako

    napklad prhlednost, odraz a textury, se nm projev a pi renderu.

    V Pod menu Vazby a spojen(Obr1.7) pidlujeme jednotliv barvy objektm.

    Je mon, aby 1 barvu mlo vce rozdlnch objekt. Dle tu mme nastaven, co

    z danho objektu bude vidt, jde nastavit, aby objekt nevrhal stn nebo pout

    prhlednost. [2]

    V poloce Materil(Obr.1.7) nastavujeme barvy pomoci RGB parametr. Zde

    se jet dl nastaven na 3 sti Col, kde nastavujeme barvu objektu, Spe, zde

    nastavujeme jakou barvu bude mt prhledn objekt a nakonec Mir, kde se

  • - 18 -

    nastavuje barva odrazu.

    Dal skupina se zabv odrazem svtla, odleskem a prhlednost a nakonec

    novou funkci v Blenderu a to je simulace prsvitnosti. Shadery udvaj, jak se m

    chovat odraz svtla od objektu. Jde nastavit, aby Objekt vypadal jako plastov,

    kovov nebo i bez odrazu svtla. [2]

    Mirror Transp nm nastavuje, jestli bude objekt prhledn, leskl nebo ob

    vlastnosti najednou.

    Jako posledn je SSS(Subsurface Scattering), kde se simuluje prsvitnost

    objektu. D se to vyut pro prosvcen pokoky ruky, kde slab sti ke budou

    svtlej. Stejnho efektu doshneme v reln situaci, pokud si ruku prosvtme

    baterkou. [2]

    Na Obr.1.8 je ukzno nkolik pkladovch monost, jak lze barvy nastavit.

    Na prvnm obrzku je pouze obyejn barva. U druhho je nastaven Halo efekt,

    kdy se kad bod v objektu zmn na zc. Tet a tvrt objekt maj nastaven

    rzn barevn pechody. U ptho je pouit odraz od okol, kdy odr sten

    objekty v jeho okol a barvu prosted, ve kterm je. est objekt m nastavenou

    prhlednost bez lomu svtla. Pedposledn objekt m nastaven odraz s

    prhlednost a byly pidleny barvy pro prhlednost a odrazy. Posledn objekt

    vyuv SSS, kde je vidt, e ten sti objektu jsou svtlej.

    Obr.1.9 A)Plocha s pouitm textury B) Plocha s pouitm textury s Nor

  • - 19 -

    Obr.1.10 Nastavovn vlastnost textury v ovldacch panelech

    c) texturovn pokud potebujeme dt obrzku vzhled njakho relnho

    objektu, budeme nejspe potebovat textury. Textury se daj piadit jednotlivm

    objektm. Na obrzku Obr.1.9A vidme plochu, na kterou byla textura nebe. U

    obrzku Obr. 1.9 B byla pouita funkce Nor, kter doke pomoc bump maps

    nasimulovat prostorov povrch. Toto se d vyut ke zmenen potu bod

    objektu. Napklad meme vymodelovat lidsk obliej, kter me mt ve

    finlnm stdiu i nkolik milion bod. Pokud bychom takovto obliej pouili ve

    he, moc bychom si nezahrli. Proto vyuijeme bump maps, kdy z naeho

    oblieje pouijeme UV mapu. V relu si to meme pedstavit, jako kdyby jste

    pouili z hlavy ki a tu pak nathli na podobn model hlavy, kter bude

    obsahovat pouze pr tisc bod. Pokud pouijeme pouze UV mapu, budou na

    modelu vidt vrsky, ale nebude to vypadat jako na pvodn hlav. S vyuitm

    Nor se vrsky nasimuluj jako by byly vymodelovny prostorov. [2]

    1.3 Internet

    Internet v dnen dob zastv neocenitelnou lohu v ivot lovka. et n as i

    finance, pomh nm nejen pi nakupovn, ale tak pi vyuit volnho asu i

    hledn zamstnn. Je to tak dleit forma komunikace. Pomoc internetu doclme

    rychl a efektivn vyhledn informac.

    1.3.1 Historie internetu

    Prvn nznak internetu vznikl v roce 1968 ve Velk Britnii[1]. Zde se jednalo o

    zkladn st, kter neopustila budovu. Do vvoje internetu se pustila americk armda,

    kter chtla zajistit komunikaci a to i v ppad, e by dolo v st k porue. V RAND

  • - 20 -

    Corporation pili na een, jak tento problm vyeit. Vyuili s bez centrlnho uzlu,

    kde se pi vpadku jedn trasy zvol jin a tm zstane zachovno spojen. Vldou

    USA byla zaloena organizace Advanced Research Projects Agency, kter v roce

    1969 vybudovala experimentln s ARPANET. Zpotku nebyla s moc vyuvna,

    byly pipojeny sttn ady a nkter university. [1]

    Zlom nastal, kdy Tim Berners-Lee zaal v roce 1989 zkoumat prci

    s hypertextovmi dokumenty. Z tto prce pozdji vzniklo World Wide Web, kde je

    mon penet texty i obrzky. V roce 1992 bylo k internetu pipojeno ji pes milion

    uivatel. Internet zaali vyuvat i pro komern ely.[1]

    1.3.2 Vznik HTML

    Nyn ji vme jak vznikl internet ale jak je mon, e pipojenm se na nkterou

    internetovou strnku se nm zobraz texty, obrzky, video i hudba.

    Mezi zkladn zpsoby pat HTML (HyperText Markup Language) V pekladu

    hypertextov (hypertext = odkaz) znakovac jazyk.

    Podle [3] vzniklo HTML na zklad Tim Berners-Lee a Robert Caillau, kte

    pracovali na propojenm informanm systmu pro CERN ve vcarsku. Pracovali

    v programech TeX, Postskript ale potebovali jednodu jazyk. Proto v roce 1990

    vytvoen jazyk HTML a nsledn protokol pro penos dat v potaov sti

    http(HyperText Transfer Protocol)

    1.4 Python

    Jazyk Python vznikl v roce 1989 ve vzkumnm stavu v Amsterodamu [7]. Na jeho

    vvoji se podlel Guido van Rossum. Jazyk Python dostal jmno podle poadu BBC

    Monty Pythons Flying Circus.[7]. Dnes se program rozen na mnoha operanch

    systmech (Windows, Linux)

    Python je objektov jazyk, kde jsou eeny vjimky ( pokud nastane chyba v sti

    programu a mme oetenou vjimku, zpracuje se jin st programu.

    Do Pythonu jdou implementovat vci z programovacho jazyka C++, ale lze to

    provst i opan. Zkladnm rozdlem v jazyku C++ a Python je jin een st kd

    za podmnkou.

  • - 21 -

    Pokud pouvme programovac jazyk C++ sta st kdu umstit do {} u Pythonu

    musme st kdu, kter pat k podmnce odsadit.

    1.5 Fyzika

    Pi popisu jednotlivch vrh se vychz ze stejnch rovnic, kter jsou pouze upraven.

    Pro popis vrh pouijme ikm vrh. Zbyl jevy se daj nasimulovat zmnou parametr.

    Pokud bude nastaven hel ikmho vrhu na 90 , bude se jednat o dj vrh vzhru.

    1.5.1 ikm vrh

    Se ikmm vrhem se setkvme ji od vzniku lidstva. Lid v pravku vyuvali

    ikmho vrhu k lovu zvat. I kdy si sice neuvdomovali, podle jakch zkon se letc

    objekt pohybuje, dokzali ho vyut.

    1.5.1.1 Matematick popis

    ikm vrh meme rozdlit na dv st. Na vodorovn a svisl pohyb, pitom jsou oba

    pohyby na sob nezvisl [6]

    tavxx x21

    00 += [6] (1)

    a) Vodorovn smr - vme, e vodorovn sloka thovho zrychlen je nulov, proto

    na ase nezvisl [6]. Tleso si udruje poten rychlost v0x, a proto posunut

    tlesa ve vodorovnm smru x-x0 vypotme podle vzorce(1) pr0 ax=0

    x-x0=v0xt [6] (2)

    v0xt= v0 cos0 [6] (3)

    Kdy dosadme vzorec (3) do vzorce (2) zskme:

    x-x0 =(v0 cos0)t [6] (4)

    b) Svisl smr- svislou sloku vektoru posunut dostaneme ze vzorce :

  • - 22 -

    2002

    00 2

    1)sin(

    2

    1gttvgttvyy y == .[6] (5)

    Svislou sloku rychlosti v0y meme nahradit v0 cos0 a nsledn upravit na:

    gtvvy = 00 sin [6] (6)

    )(2)sin( 02

    002 yygvvy = [6] (7)

    1.5.1.2 Vpoet ikmho vrhu bez vlivu prost ed

    Pi ikmm vrhu mme tleso v potenm stavu v potku kartzskch souadnic,

    pak je v ase t=0 x0 = y0 = z0 = 0

    v0x = v0cos v0y = v0sin [5] (8)

    Poten rychlost spotme pomoc vzorce (8)

    vx=v0cos vy=v0sin gt [5] (9)

    Pokud potebujeme znt rychlost tlesa v ase t>0 vyuijeme vzorce (9)

    [5] (10)

    Pi vpotu pozice tlesa v ase pouijeme vzorec (10)

    1.5.1.3 Vpoet ikmho vrhu s vlivem prost ed

    Obr.1.11 Ukzka zmny trajektorie tlesa a)pohybujcho se ve vzduchu

    b)pohybujcho se ve vakuu

  • - 23 -

    A doposud jsme uvaovali, e na tleso nem vliv okoln prosted. Pokud ho

    chceme zapotat, musme pidat nkolik parametr. Ped vpotem musme mt

    zadan hodnoty hmotnosti, polomru tlesa a hustotu prosted, ve kterm se tleso

    bude pohybovat. Pokud se tleso pohybuje v hustm prosted, jeho trajektorie bude

    odlin ne u trajektorie tlesa pohybujcho se ve vakuu Obr.1.11

    24 RS = [5] (11)

    SCk2

    = [5] (12)

    Pomoc vzorce (11) zskme velikost povrchu koule. Nsledn spotme koeficient

    odporu prosted k (12) .

    Fy = -gm - kvvy Fx = -kvvx [5] (13)

    ay = Fy/m ax = Fx/m [5] (14)

    vy = vy + aydt vx = vx + axdt [5] (15)

    y = y + vydt x = x + vxdt [5] (16)

    Nyn spotme slu (13), z n nsledn zrychlen tlesa (14). Z vypotanch

    hodnot zskme rychlost na osch X a Y (15) a nakonec pozici tlesa v danm ase

    (16).

    2 Praktick st

    V praktick sti se budou vytvet jednotliv sti projektu. Zklad bude tvoen HTML

    strnkou, pomoc kter zobrazme informace o danm dji a budou vytvoeny

    jednotliv sti pro grafick vzhled internetov strnky. Posledn st je vytvoen

    pomoc programu Blender a s pomoc programovacho jazyka Python animace.

    Vytven vstupnch dat a simulace trajektorie bude eit program, kter nen sousti

    tto prce.

    2.1 Tvorba html strnek

    Internetov strnky pomhaj pedvat informace o tom, co ns zajm nebo co se

  • - 24 -

    potebujeme dozvdt. Mezi nkolik zpsob, jak internetov strnky vytvoit pat i

    metoda HTML. Takovto stnky meme umstit na internet nkolika zpsoby. Mezi n

    pat sluby free web-hostin, kde jsme omezeni velikost datovho loit pro strnky

    a na takovto strnky se mus pidat reklama, ale za umstn se nic neplat. Dal

    monost je web-hosting, kde meme dle dohodnut ceny pouvat urit sluby.

    Pokud je poteba vytvoit internetov stnky, kde je nutn potat s velkm pstupem

    na tyto stnky, nebo jsou poadavky na kvalitn sprvu strnek, jde pouit server

    hostin.

    HTML kd je tvoen pomoc tag(znaek) [4]. Napklad, pokud budeme chtt, aby

    se na strnkch zobrazil tun text, meme to udlat takto: tun text

    vsledek bude po zobrazen v nkterm z dnench prohle vypadat takto tun

    text . Doshneme toho tm, e text umstme to tag. Prvn znamen, e od

    tohoto bodu bude text tun. Tun text ukonme pomoc . Podobn meme

    udlat napklad kurzvu. Sta, abychom msto dali . Nesmme zapomenou

    nakonec pout abychom kurzvu ukonili.

    Pokud budeme pst njak text, zjistme, e peme stle na jednu dku a na

    dal se dostane a po zaplnn celho dku. Toto se d napravit pomoc tagu
    .

    Zatmco tagy pro tun text a kurzvu jsou prov (mus zat a nkde se ukonit) u

    tagu
    to tak nen. Tag
    nm oddkuje na dal dek a tm uet problmy s

    pravou. [4]

    2.1.1 Vlastn tvorba HTML strnky

    Obr.2.1 Ukzka zobrazen HTML kdu v editoru Quanta Plus

  • - 25 -

    K vytvoen HTML kdu je vhodn pouvat HTML editory. Editory nm umouj lpe

    se orientovat v textu, zobrazuj chyby, kde je patn kus textu, ale nkter um i

    vytvet HTML stnku bez nutnosti pokroil znalost psan kdu v HTML. Pro tvorbu

    stnek byl pouit editor Quanta Plus Obr.2.1 . Nyn si popeme jednotliv sti kdu.

  • - 26 -

    onMouseOut=this.src=menu1a.png>

    pomoc provho tagu kme, e se po zmknut m zobrazit strnka

    stranka2.html . Uvnit tagu bude tag na umstn obrzku. Vsledek

    bude vypadat tak, e na zatku bude zkladn obrzek. Pokud na obrzek

    najedeme my, obrzek se zmn na jin. Pokud budeme na obrzku a

    zmkneme my, pesmrujeme se na novou stnku. Tag IMG nm definuje,

    e te se nastav obrzek. Pomoc border nastavme, aby obrzek neml

    dn rmeek a pkazy onMouseOver a onMouseOut nastavme zmnu

    obrzku pi najet myi na obrzek a pi dojet z obrzku. Zkladn obrzek

    nastavme na zatku pomoc SCR.

    ukonuje tlo rmeku

    ukonuje rmeek

    ukonuje tlo HTML

    ukonuje HTML strnku

    2.1.2 Tvorba vzhledu HTML strnek

    Obr.2.2 Hotov HTML strnka

    Samotn kd vtinou nesta na vzhled strnek. Jde sice nastavit barva pozad,

    mnit barvu psma a podobn malikosti. Pokud potebujeme vylepit vzhled strnky,

    pouijeme obrzky, napklad na pozad, na nadpisy i na tvorbu ikon.

  • - 27 -

    Obrzky si meme sthnout z internetu a to bu voln dostupn, nebo si vce

    kvalitn koupit. My zvolme tet variantu a to tu, e si je vytvome. Na internetu sice

    najdeme plno vhodnch obrzk a tlatek, ale daj se jen mlo upravovat.

    Obr.2.3 Rozhran programu Inkscape

    Pro tvorbu obrzk a tlatek jsem zvolil program Inkscape. Jedn se o OpenSource

    program, to znamen, e je voln dostupn a nen poteba platit za drah komern

    programy. Program Inkscape je vektorov, to znamen, e objektm vytvoenm v

    Inkscapu meme mnit velikost bez ztrty kvality. Pokud bychom nco podobnho

    udlali z obyejnm obrzkem, tak vsledek nebude vypadat dobe, budou vidt

    jednotliv pixely a ostrost obrzku bude patn.

    Na tvorbu strnek budeme potebovat dva obrzky na pozad a tyi tlatka.

    Tlatka budeme pouvat celkem dvoje, ale musme mt dal obrzky tlatek, pokud

    na n najedeme my.

    Zaneme rychlm popisem Inkscapu. Nebudeme potebovat mnoho funkc, sta

    nm pouze tvorba obdlnk, pechody a posun objektu (Obr.2.3) .

    Tvorba pozad, kter bude na strnce, nm sta vytvoit bl obdlnk, kter nemus

    bt moc irok, ale mus bt hodn dlouh. Obdlnku dme blou barvu a umstme na

    nj nov, stejn velk a dme mu svtle edivou barvu. Nyn nm sta jen umstit nad

    obdlnky barevn pechod a hodn ho nathnout. Tm nm vzniklo prvn pozad na

    strnky. Ze zatku je tmav a postupn smrem dol je svtlej.

    Pi tvorb druhho pozad budeme postupovat trochu jinak. Jako zklad pouijeme

    obrzek a upravme ho do potebn velikosti. Bude se jednat o obrzek, kter bude

  • - 28 -

    jako pozad v nadpisu. Protoe se jedn o pozad, nen pesn velikost nutn. Pokud

    bude strnka vt ne obrzek, obrzek se sten zopakuje.

    Nyn vytvome tlatka. Na tlatka budeme potebovat nkolik obdlnk. Prvnmu

    piadme ernou barvu. Obdlnk zkoprujeme a dme mu blou barvu. Pomoc

    pechodu vytvome bl pruh naspodu ernho obdlnku. Bl obdlnk by ml bt

    mal a rychle se vytratit doerna. Znovu zkoprujme tentokrt bl obdlnk a otome

    ho o 180. Tm dostaneme bl pruh naho e i dole. Vsledek si ulome, protoe ho

    budeme potebovat na pozad lity s tlatky. K dokonen tlatek nm schz pouze

    pidn textu. Text se pid v lev nabdce po zmaknut ikony A . Dme textu modrou

    barvu. Text si zkoprujeme a dme stranou. Pvodn modr text pidme k ern lit s

    blmi pruhy. Protoe chceme, aby tlatko vypadalo, e je trochu prostorov,

    posuneme text o dv rovn ne, doclme, e bl pruhy ovlivn i text, kter je pod

    nimi. Tm mme hotov 1. tlatko, druh udlme stejnm zpsobem, jen pouijeme

    jinou barvu textu. Dostaneme 2 stejn tlatka, kde se li pouze barva textu.

    Jako posledn udlme logo strnek. Vytvome text s nzvem strnek a nastavme

    mu ervenou barvu. Za text pidme logo Fyziklnho stavu a mme hotovo. Vhoda

    tohoto uspodn je, e obrzek je jenom text a logo. Zbytek je prhledn a neru

    pozad. Vsledn vzhled strnky je vidt na obrzku Obr.2.2

    2.2 Python

    Program Python je trochu podobn jazyku C++. Python se li od C++ napklad pi

    definovn promnnch. V programovacm jazyku C++ je poteba kad promnn

    pedem urit jak hodnoty bude uchovvat (string, integer, float ), u jazyka Python

    na tom nezle [7] nap. pokud ulome do promnn A napklad hodnotu 7.5, do

    promnn B hodnotu 1.5 a A vydlme B a to ulome do promnn C, zjistme, e

    vsledn hodnota je integer, i kdy A i B jsou float. Program Python se tmto

    pstupem, jednoduchost bl ostatnm programm jako jsou Matlab, PHP atd.

    Jeliko projekt je koncipovn tak, aby byl co nejuniverzlnj jsou podklady pro

    animace natny z externho textovho souboru, proto je nutn pout program

    Python extern vpotov modul pro program Blender.

  • - 29 -

    2.2.1 Vvojov diagram

    Samotn Blender neum pracovat s externmi daty, proto je nutn natat a pracovat

    s daty Pythonu. Vvojov diagram znzoruje jdro celho vpotu. Stejn postup se

    pouv pro vpoet dalch os ppadn rotace. Ukazatel ObIpo nm spojuje objekt,

    se kterm pracujeme, s kivkami, kter udvaj cestu objektu v jednotlivch osch.

    Jmno ukazatele se me zmnit, ale je nutn, aby se dle pracovalo se stejnm

    nzvem.

    Start programu

    Naten potebnch knihoven

    Naten dat z textovho souboru

    Piazen promnnch a jejich prava

    Vypotn zkladnch promnnch

    Existuje ukazatel ObIpo?

    Smae star ukazatel ObIpo a nsledn se vytvo nov kde se do LocX a piad s promnn

    Vytvo se nov ukazatel ObIpo a nsledn funkce LocX a piad se promnn

    AnoNe

    Pekreslen

    Vypotn bod trajektorii na ose LocX

    Uloen bod do kivky LocX

  • - 30 -

    2.3 Tvorba program

    Animace zamen na praktick ukzn jev jsou pouze st celho bloku. Nejdve

    bude student seznmen s teorii jevu a jeho matematickm popisem. Nsledn spust

    animace fyzikln parametr a na zvr si spust animaci jevu v relnm prosted.

    Programy vytvoen Blendrem nemaj iteln zdrojov kd, protoe je vyuit cel

    program a v nm jsou upraveny jednotliv sti. Pro vytvoen programu musme

    nejprve vymodelovat sti scny, kter budeme pouvat. Napklad budovy, pstroje,

    krajinu a dal. Pi vytven jednotlivch objekt je teba dbt na to, aby mly co

    nejmn bod. m je scna jednodu, tm men nroky jsou kladeny na zaten

    potae. Pi vytvoen objekt byly pouity postupy z kapitoly 1.3 . Nsledn

    potebujeme zajistit vpoet trajektorie objektu. V tom nm poslou Python skript.

    Program sestaven podle vvojovho diagramu v kapitole 2.2.1 nm nate soubory

    z textovho souboru, spot zkladn promnn a nsledn spot samotnou

    trajektorii. Ped vpotem je mon vytvoit dal nataven pro objekty, kter ve scn

    pouvme. Napklad pi animaci vodorovnho vrhu na zatku urme trajektorii letu

    letadla. To znamen, e podle natench hodnot ze souboru nastavme vku letadla

    podle poten hodnoty y0. Po spotn jednotlivch trajektorii je teba jednotlivm

    objektm teba dt vdt, e se maj dit danou trajektorii.Toho doclme tak, e

    objektu piadme v zobrazen IPO kivek nzev ObIpo nebo jin nzev, kter jsme

    pouily ve skriptu. Jako posledn st je poteba objektm sdlit, kdy se maj spustit.

    To doclme pouitm Logiky Obr.1.5 . Tm urme, e pi zmknut pslun klvesy

    se provede vpoet ze skriptu a stisknutm dalho tlatka spustme trajektorii.

    V animacch je to eeno kombinacemi klves P, O, I. Klvesou P spustme rozhran

    pro pehrvn her v naem ppad prosted pro zanimovn dje. Klvesou O se

    provede sputn Python skriptu, kde spot trajektorii objektu a pokud se na scn

    vyskytuj dal pohybliv objekty, nastav jejich poten parametry. Posledn klvesa

    I spust zanimovn dje. Posledn st je upraven vzhledu Blenderu. Jeliko se

    jedn o 3D grafick program, je zde i mnoho nabdek a monost nastaven. Lze to

    jednodue upravit stisknutm pravho tlatka myi na pechodu mezi jednotlivmi

    okny.

  • - 31 -

    2.3.1 Ovldn programu

    Animace je pizpsoben, aby byla co nejjednodu na ovldn. Samotn program

    Blender je na ovldn velice sloit, a proto je vzhled programu upraven tak, aby

    uivatel, kter nem zjem pracovat s Blendrem mohl pouze pustit animaci a nebyl

    nijak zatovn prostedm Blenderu. Jak je vidt podle obrzk 2.4 a 2.5 prava

    zjednodu celou animaci. Pestoe je animace upraven, je stle mon do n

    zasahovat klvesovmi zkratkami. Kombinace klves P, O, I je zvolena tak, aby bylo

    co nejpehlednj. Klvesy O a I je mon zamnit za jin, ale klvesa P je nutn na

    sputn potebnho rozhran. Klvesy je mon mnit v Logice viz. Kap 1.2.3.1

    Obr.2.4 Vzhled animace ped pravou

    Obr.2.5 Vzhled animace po prav

  • - 32 -

    2.3.2 Tvorba videa vrhy

    Pi tvorb videa se nm oteve velk paleta grafickch nstroj oproti GameEngine.

    Pi vytven animaci pro reln prbh nememe pouvat generovn textur,

    osvtlen je znan omezeno. Je to zpsobeno vysokou nronost tchto nstroj,

    kter nm neumouj plynul bh animac. Pi vytveni videa se tmto ale dit

    nemusme. Pedem si nastavme, jak bude vypadat trajektorie objektu a meme

    vyut i asov nron procesy jako napklad vpoty stn, rzn odrazy a hlavn

    kvalitn nastaven materil. Napklad na Obr.2.6 je vidt pouit Nor mapy na podlaze

    a pouit odrazu na kulikch. Jeden takovto obrzek trv vytvoit piblin 10s. P

    25 snmcch za sekundu by nm 4 sekundov video trvalo 17 minut. To pro video

    pehrvan v relnm ase nepijateln.

    Obr.2.6 Zobrazen 1 snmku animace

    Pro vytvoeni animaci nebyl pouit Python skript, ale byla vyuita fyzika Blenderu.

    Fyziku jsme nemohli pout pi vytven pedelch animac z dvodu nepesnho

    nastaven zkladnch hodnot. Nyn ukazujeme pouze prbh dje a poten hodnoty

    nezadvme.

    2.3.3 Tvorba animace kapaliny

    Blender um simulovat kapaliny. Na ukzku, co se stane na vodn hladin, jsou

    vytvoeny 2 animace. Prvn znzoruje, co se stane, pokud na hladinu dopadne mal

    kulika. V druh je kulika nkolikrt vt. Vpoet simulace kapalin je velice nron

  • - 33 -

    na as. Pro vytvoen simulace je teba nejprve pipravit prosted. Nvod jak vytvoit

    prosted je v kapitole 1.2. Pro vytvoen simulace potebujeme 2 nov objekty nejlpe

    krychle. Krychle dme nad sebe a podle toho, kolik chceme mt kapaliny, posuneme

    vrchn krychli dol. m vce se krychle pekrvaj, tm vce budeme mt kapaliny.

    Nsledn je nutn nastavit vlastnosti tles. Na zloce Objekt-Fyzika-Fluid nastavme

    pro vrchn krychli Domain a pro spodn Fluid. U objektu, kter na kapalinu naraz

    nastavme Obstacie. Pokud mme ve hotovo, klikneme na objekt, kter m

    nastavenou vlastnost Domain na Bake. Tm se nm spust vpoet kapaliny. Po

    vpotu je nutn jet vyrenderovat animaci. Toho doclme tak, e zmkneme

    klvesovou zkratku ctrl+F12 . Vsledek vidme na obrzku 2.7

    Obr. 2.7 Jeden snmek z animace kapaliny (vlny)

  • - 34 -

    Zvr

    Clem bakalsk prce bylo vytvoit nov prosted pro simulaci fyziklnch jev.Celek

    se skld z nkolika st. Na zatku jsou zpstupnny informace pomoc

    internetovch strnek. Nsledn je mon spustit program na simulaci fyziklnch jev

    (tento program je npln jin bakalsk prce) a nakonec uvid animaci jev

    v relnm prosted.

    Pvodn mylenka byla vytvoit pomoc programu Blender samostatn exe soubor, kde

    by byla animace danho jevu. Pi realizaci tohoto postupu se vyskytl problm

    s knihovnami, kter nebylo mon dodat. eenm bylo pouit celho programu

    Blender, kde je upraven vzhled, aby byl co nejjednodu. K ovldn jednotlivch

    animac je poteba 3 klves a to P,O a I. U animac ikmho vrhu a vodorovnho vrhu

    jsou pouity scny, kde je krom samotn animace i okoln prosted. V ppad vrhu

    vzhru a volnho pdu bylo okoln prosted tak pouito, ale bylo pli graficky

    nron, a proto byla pouita jen hlavn st animace. Jako doplnn animac byly

    pidny videa pohybu kuliek v relnm a idelnm prosted a posledn st zobrazuje

    dopad tlesa do kapaliny. Kapaliny je mon vypotat lpe a na vt plochy ,ale

    vpoetn as by byl velice dlouh v dech hodin.

    Cel systm bude v budoucnu slouit jako vukov nstroj na stavu Fyziky FEKT

    VUT v Brn. V budoucnu se pedpokld jeho rozen o dal fyzikln jevy tak, aby

    systm obsahoval vechny potebn tmatick oblasti, kter jsou na stavu Fyziky

    probrny.

  • - 35 -

    Pouit literatura

    Internetov lnky

    [1] BEDN , Martin. Historie vzniku internetu. Historie vzniku internetu [online].

    2007 [cit. 2008-11-20]. Dostupn z WWW:

    .

    Internetov strnky

    [2]Blender Foundation. Www.blender.org [online]. 1998-2008 [cit. 2008-10-04]. Text v

    anglitin. Dostupn z WWW:

    [3]HyperText Markup Language. Wikipedia [online]. 2008 [cit. 2008-12-13]. Dostupn

    z WWW:

  • - 36 -

    Seznam zkratek ARPANET - Advanced Research Projects Agency Network

    CERN - European Organization for Nuclear Research

    HTML - HyperText Markup Language

    HTTP - HyperText Transfer Protocol

    NaN - Not a Numer

    SSS - Subsurface Scattering

    WWW - World Wide Web

  • - 37 -

    Plohy Na piloenm CD-ROM jsou animace, zdrojov kdy, internetov strnky pro e-learning a bakalsk prce ve formtu pdf.

    Animace jsou rozdleny na jednotliv asti podle animovanho jevu. Uvnit kad takovto sloky je soubor hodnoty.txt , kter obsahuje poten hodnoty. Skript *.py, kter obsahuje zdrojov kd pro vpoet trajektorie a soubor *.blend, kter spust animan prosted. Ped prvnm otevenm souboru *.blend je poteba nastavit sputn pomoc Blenderu. Toho doclme tak, e pravm tlatkem myi klikneme na soubor *.blend , dme Otevt-> Vybrat program ze seznamu->Prochzet a nyn na piloenm cd najdeme sloku blender-2.48a-windows a zvolme program Blender. Dle se sta dit pokyny programu.

    Na CD-ROM jsou dle ve sloce WWW_strnky uloeny zdrojov kdy internetovch strnek optimalizovan pro prohle Internet Explorer.