Obsah
Úvod
Princíp
Aplikácie
Galéria
Prehľad appletov na webe
Applet
Literatúra a linky
O tejto kapitole



Ostatné kapitoly
Lindenmayerove systémy
Modelovanie ekosystémov
Dawkinsove biomorfy
Reakčno-difúzne modely
Difúzne ohraničené zhlukovanie
Voronoiove diagramy
Časticové systémy
Fibbonaciho čísla a zlatý rez


Hlavne menu
 O nás
 Tutoriály
 Archiv


Applet

Návod k appletu

Módy appletu:

  • 1 Level - je základným módom. Umožňuje užívateľovi manuálne zadávať body na plochu myšou, prípadne pridať zadaný počet náhodne vygenerovaných bodov na plochu. Vhodný pre generovanie náhodných bodov pre animáciu. Animácia je tiež súčasťou tohto módu. Body generujeme pomocou tlačidla Generate a ich počet nastavíme pomocou najspodnejšieho slidra na obrazovke. Po zadaní nami požadovaného množstva bodov môžeme spustiť animáciu tlačidlom Animate. Slider určený na generovanie bodov sa zmení na slider, ktorým môžeme ovládať rýchlosť animácie, prípadne prejsť do krokovacieho módu nastavením rýchlosti na 0. Počas behu animácie sa tlačidlo Animate zmení na Stop, pomocou ktorého môžeme animáciu zastaviť a pokračovať ďalej v pridávaní bodov. Tlačidlo Reset nám zastaví animáciu ( ak beží ) a vymaže všetky body z plochy.
  • 5 Levels / Manual - je manuálnym módom na vytváranie rekurzívnych voronoiovych obrazcov do piatej úrovne. Body každej úrovne je možné zadávať ručne myšou, alebo vygenerovať určené množstvo bodov do danej úrovne rekurzie náhodne pomocou tlačidla Generate. Tlačidlo Next (x) pridá do aktuálnej úrovne nami zadané body a presunie nás do ďalšej ( x - tej ) úrovne.
  • 5 Levels / Auto - je automatickým módom na vytváranie rekurzívnych voronoiovych obrazcov do x - tej úrovne bez možnosti parametrov ( na ich editáciu slúži manuálny mód ). Počet úrovní si volíme pomocou ľavého dolného slidra, ktorý má rozsah 1 až 5 úrovní. Po stlačení tlačidla Generate sa vygeneruje náhodný voronoiov obrazec. Počet bodov v každej úrovni stúpa exponenciálne. Kým v prvej úrovni sa vygenerujú iba 4 ( toto nazývam hustotou ) body ( a k ním prislúchajúce voronoiove polygóny ), v druhej úrovni sa vygeneruje bodov 42 = 16 a tak ďalej. Na zmenu hustoty slúži pravý dolný slider.V tomto móde prichádzame o možnosť zobraziť body, podľa ktorých sa obrazce generovali. Checkbox Points sa zmení na Color, pomocou ktorého sa môžeme prepínať medzi jednofarebným a viacfarebným zobrazovaním.

Tlačidlo Reset vymaže z plochy všetky body a im prislúchajúce voronoiove obrazce.

Slider napravo nám slúži na približovanie, tzv. zooming. Po priblíženej oblasti sa môžeme pohybovať myšou spôsobom drag&drop pomocou ľavého tlačidla.

Checkboxy Points a Voronoi slúžia na ovládanie viditeľnosti prvkov na obrazovke. Checkbox Anti-alias slúži na vypnutie / zapnutie anti-aliasingu, kôli odľahčeniu výpočtovej náročnosti.

Popis Algoritmu

Ako vstupný údaj nám slúžia body na ploche. Pre každý z týchto bodov je potrebné vytvoriť voronoiov polygón. Na obrázku sú body očíslované podľa toho, v akom poradí boli vložené na plochu ( a v akom poradí sa budú prehľadávať ).
Podľa poradia priradíme voronoiov polygón ako prvému bodu číslo "0". Prehľadávame všetky ostatné body a vytvárame pol roviny tvorené osami ich spojníc a bodom, okolo ktorého voronoiov polygón vytvárame. Obrázok znázorňuje pol rovinu vytvorenú medzi bodmi "0" a "1".
Obrázok znázorňuje pol rovinu vytvorenú medzi bodmi "0" a "2". Keďže sme prehľadali všetky body a vytvorili tým pádom všetky pol roviny, môžeme pristúpiť k tvorbe voronoioveho polygónu.
Výsledný voronoiov polygón vytvoríme ako prienik všetkých nájdených pol rovín. Analogicky postupujeme aj pri ďalších bodoch.

Zdrojový kód - voronoi.tgz

Hore
Kontakty:     webmaster     admin     chief
Valid HTML 4.01! Valid CSS!