Vývoj+počítačové+grafiky

= = = **Obsah tématu:** =
 * 2D grafika
 * Rastrová grafika (princip,použití)
 * Vektorová grafika (princip, použití)
 * 3D grafika
 * Výhled do budoucnosti (vektorová grafika na webu, použití 3D grafiky apod.)

= =



==



= Vývoj počítačové grafiky =

Informatika je věda poměrně mladá. A samotné slovo popisující tento obor částečně vysvětluje i svůj význam. Informatika je věda zabývající informacemi a jejich zpracováním. A proto se nevyhnutelně i do sféry působnosti dostalo i snaha zpracovávat vizuální informace, či informace vizualizovat. Zrodil se tak podobor nazývaný počítačová grafika. Počítačová grafika je z technického hlediska obor informatiky, který používá počítače k tvorbě umělých grafických objektů a dále také na úpravu zobrazitelných a prostorových informací, nasnímaných z reálného světa (například digitální fotografie a jejich úprava, filmové triky). Z hlediska umění jde o samostatnou kategorii grafiky. Tento obor dnes zahrnuje mnoho oblastí např. 3D grafika, digitální kresba, video, animace, digitální fotografie…Pokud se chceme zabývat počítačovou grafikou je třeba definovat alespoň základní rozdělení, které se v dnešní době používá. Asi nejzákladnější rozdělení je na tzv. 2D grafiku a 3D grafiku. Dnes se často kombinuje rastrová a vektorová grafika v souborových formátech jako PDF či SWF. = = =Historie= První pokusy o zpracování grafické informace počítačem bylo možné pozorovat už ve 40. letech (W. B. Hales, 1944, analogové kresby) a 50. letech (Iwan Moscowich, 1951, kreslicí stroj). První publikace vyšly ve 2. polovině 50. let (Max Bense, 1954, „Programmierung des Schönen“, W. Franke, 1957, „Kunst und Konstruktion“). Termín počítačová grafika se poprvé objevuje v roce 1960, kdy pracovníci firmy Boeing, resp. William Fetter, začali tímto pojmem označovat proces návrhu a realizace výkresové dokumentace pomocí počítače.

Na začátku grafických technologií byly projekty jako Whirlwind, což byl první počítač využívající CRT obrazovku pro výstup dat, který navíc umožňoval využití světelného pera jako vstupní jednotky. Významným krokem byl počítač TX-2 vyvinutý roku 1959 v Lincolnově laboratoři v Massachusetts Institute of Technology. V roce 1963 byl pro tento počítač naprogramován Ivanem Sutherlandem program Sketchpad, který byl prvním programem využívajícím grafické možnosti počítače a tedy i prvním programem s grafickým uživatelským rozhraním. Brzy se začaly významné počítačové firmy zajímat o grafiku a v roce 1965 uvedla firma IBM na trh grafický terminál IBM 2250, první komerčně dostupný grafický počítač.

Protože grafika patří mezi úlohy nenumerické povahy, na které není klasická univerzální architektura počítače von Neumanna vhodná, mohla se rozvinout tehdy až výkonnost technických prostředků dosáhla určitého stupně. Ve vývoji počítačové grafiky pozorovat tyto důležité etapy:

1. od počátků do konce 60. let. Toto období je charakterizováno unikátními pokusy o zpracování grafické informace ve vybraných institucích.

2. 70. léta. Rozvoj technických prostředků umožnil rozšíření počítačové grafiky do celého světa, ale jen na úrovni organizací. Vzhledem k vysoké pořizovací ceně technického vybavení nebyla počítačová grafika přístupná širšímu okruhu uživatelů. První zmínka o navrhování počítačem (CAD), pokus o využití počítačové grafiky v umění, začátky světových výstav s touto tématikou (Japonsko).

3. 80. léta. Uvedení mikroprocesorů na trh umožnil zlevnit technické prostředky a rozšířit okruh uživatelů počítačové grafiky. Počítače IBM PC byly ještě pro jednotlivce cenově nedostupné, ale počítač ZX Spectrum lorda Sinclera, osazený mikroprocesorem ZX-81 byl cenově přijatellný i pro soukromé uživatele (domácnosti).

4. 90. léta. Rozvoj technologií VLSI (Very Large Scale Integration) a komunikací (Internet) ovlivnil významně i počítačovou grafiku. Prosazuje se masově 3D grafika a animace, počítačová grafika proniká do téměř všech oborů lidské činnosti.

Před rokem 2000 se vývoj počítačové grafiky značně zrychlil a dá se říci, že se postupně stává dominantním oborem. S rozšířením počítačů do domácnosti byl kladen velký důraz na pohodlné ovládání což je umožněno hlavně díky grafice. Počítačová grafika se tak ze sféry vědecké dostává do sféry spotřební. Začínají vznikat kvalitnější počítačové hry, které spolu s filmovým průmyslem mílovými kroky posunují laťku počítačové grafiky čím dál tím blíže k realistickému zobrazení běžného nevirtuálního světa. Vizualizace však také pomáhá při konstrukci různých technických zařízení, simulaci pevnosti konstrukcí, crash-testech, ale i medicíně a usnadňuje tak každý den práci mnoha lidem v mnoha odvětvích.

**Grafické akcelerátory** 1984 - PGC první grafický akcelerátor pro počítače IBM/PC 1987 - Vykreslování složitějších tvarů, IBM 8514/A 1990 - Vykreslování složitějších tvarů, TIGA 1995 - 2D grafické akcelerátory po nástupu GUI 1995 - Počátky 3D akcelerace. 1996 - 3Dfx Voodoo 1998 - Zobrazení 3D těles s více texely a kombinace více textur 1999 - První GeForce podpora T&L a DirectX 7 2000 - První Radeon a GeForce 2 2002 - ATI Radeon R200 2004 - Radeon R300

= = =Zobrazovací zařízení=

Abychom lépe porozuměli způsobu práce a rozdílům mezi jednotlivými generacemi grafických karet, je nutné popsat jejich základní parametry.


 * **Rozlišení** - Velikost rastru, ze kterého je obrázek složen. Rozlišení se udává jako počet elementárních bodů (pixelů) umístěných v horizontálním a ve vertikálním směru.


 * **Barevná hloubka** - Počet barev, které lze současně zobrazit na obrazovce.Běžně používané barevné hloubky jsou 256 barev, 32 tisíc barev, 65 tisíc barev (režim hicolor) a cca 16 milionů barev (režim true-color). Lidské oko přitom v ideálních světelných podmínkách rozliší asi 20 milionů barevných odstínů, musíme si však uvědomit, že monitor zobrazuje pouze menší část celého viditelného spektra.


 * **Obnovovací frekvence** - Rychlost, kterou se obnovuje obraz na monitoru. Obrazová frekvence se u běžných CRT monitorů pohybuje od 50 Hz do 150 Hz. Za dostatečnou přitom dnes považujeme frekvenci nad 75 Hz. **Lidský zrak nerozpozná změny nad 20-24 Hz** (na této nedokonalosti lidského oka jsou položeny **základy kinematografie, 24 obrázků za sekundu**). Dosvit bodového elektronového paprsku je časově omezen a náš zrak by byl rušen blikáním obrazu, proto se za minimální zobrazovací frekvenci považuje 70Hz (lépe 85Hz) a ergonomicky **doporučená hodnota je 85-100Hz**. U LCD je možno použít nižší frekvenci, protože pracuje na jiném principu, při kterém nedochází k neustálému překreslování obrazovky.


 * **Typ systémové sběrnice** - Na typu sběrnice závisí množství dat, které je možné přenést z operační paměti do video paměti za určitou dobu.Sběrnice používané grafickými kartami : PC-BUS, ISA, EISA, VESA Local Bus, PCI, AGP ,PCI Express.

Abychom mohli správně pochopit vývoj počítačové grafiky, je nutné předem zmínit i vývoj zobrazovacích zařízení. Ta jsou ve své podstatě brzdou, ale i nejdůležitějším zařízením pro tento obor. V době minulé byl např. problém barevná reprezentace dat, dnes je to např. trojrozměrný displej, který (až na několik experimentů, co se k této vizi přibližují) "omezuje" grafiky, ačkoliv data ve trojrozměrné podobě již několik let existují.

Počátky zobrazovacích zařízení se vztahují již k roku 1897. Tento rok vymyslel německý fyzik Karl Ferdinand Brown katodovou trubici, která se ve své podstatě používá dodnes. Na tento vynález navázali další vědci. V roce 1925 vytváří skotský vynálezce John Logie Baird první elektro-mechanický "televizor". O dva roky později si Philo Taylor Farnsworth nechává patentovat také první elektronický televizní systém (tedy včetně kamery). CRT displeje se tak začínají šířit světem. Princip je jednoduchý - svazek elektronů rozsvěcuje svojí intenzitou luminofory a ty po nějaký čas září. Televize a dnešní monitory (rastrové displeje) používají pohyb svazku elektronů po řádcích (je tedy obnovován v pravidelných intervalech celý obraz). Jako první displeje se používaly hlavně osciloskopy, později vektorové displeje. Princip spočíval v přímém vykreslování průběhu funkce či úseček přímo elektronovým svazkem (drátový obraz) na rozdíl od překreslování po řádcích celého obrazu. Největší rozmach těchto displejů byl v mezi roky 1960-1970. V osmdesátých letech je nahradila již vyspělejší technologie rastrových displejů. Počátky dnes hojně používaných LCD sahají až do roku 1968, kdy společnost RCA (George Heilmeier) vytvořila první LCD displej. Počátky výzkumu "tekutých krystalů" však sahají téměř do doby vynálezu katodové trubice. Zabýval se jimi již v roce 1904 Otto Lehmann. Přesto však cesta k funkčnímu zobrazovacímu zařízení byla o dost složitější. Momentální vývoj směřuje k vývoji a vylepšení 3D displeje.

=ASCII art=

ASCII art je jedním z nejstarších odvětví počítačové grafiky a je to její první předchůdce. Spočívá v reprezentaci obrázků a dalších grafických prvků pomocí písmen a znaků tabulky ASCII. Základy této umělecké disciplíny vznikly již v 19. století s prvními psacími stroji a od 60. let se ASCII art vyvíjel i na poli počítačů. Není to ještě opravdová grafika, jak ji známe dnes, ale pouze tvoření obrazců pomocí znaků ASCII tabulky. ASCII art se používá kdekoli se text přenáší nebo zobrazuje snadněji než grafika, anebo v některých případech, pokud není přenos obrázků vůbec možný, tedy psací stroje, dálnopisy, negrafické počítačové terminály, starší počítačové sítě (např. BBS), email a Usenet news. ASCII art se také používá ve zdrojových kódech programů pro zobrazení loga firmy nebo produktu a kreslení diagramů. ASCII art se nejprve využívá pro vyjádření emocí (smajlíci) později přichází složitější obrazce (např. v podpisech na konci emailu). Postupem času vznikají i animované filmy či počítačové hry. Na internetu je dostupná celá řada aplikací, kam stačí napsat libovolný text či nahrát obrázek a automaticky se vygeneruje ASCII podle stanovených požadavků jako je třeba výběr druhu písma, volba znaků, ze kterých bude obrázek generován nebo nastavení znaku, kterým budou vyplněny mezery. Vyzkoušet online ASCII generátor lze například na adrese [], [|http://www.degraeve.com/img2txt.php]nebo []. Spoustu generátorů lze také stáhnout přímo do počítače.



= 2D grafika =

2D grafika je v informatice označení pro speciální část počítačové grafiky, která pracuje s dvojrozměrnými objekty (obrázky, text, geometrické 2D modely – čáry, křivky). Typickým využitím počítačové 2D graficky je zobrazení informací na počítačovém monitoru. Existují základní 2 přístupy ke 2D grafice:
 * rastrová (bitmapová) grafika
 * vektorová grafika

každý z nich má svá vlastní specifika.

=Rastrová (bitmapová) grafika=

Základem rastrové grafiky je pravidelná síť pixelů organizovaná jako dvourozměrná matice bodů. Každý pixel nese specifické informace, například o jasu, barvě, průhlednosti bodu, nebo kombinaci těchto hodnot. Obrázek v rastrové grafice má omezené rozlišení, které se udává počtem řádek a sloupců a také barevná hloubka. Tento způsob popisu obrázků používá např. televize nebo digitální fotoaparát. Obrázek v rastrové grafice má omezené rozlišení, které se udává počtem řádek a sloupců. Je nutné podotknout že i 3D i vektorová grafika je ve finále prezentována uživateli systému jako rastrová. To je však dáno použitou zobrazovací technologií – rastrovým displejem.


 * __Výhody: __**


 * Snadné pořízení obrázku (pomocí fotografie, scaneru.
 * Lze je velmi snadno zobrazit/tisknou.
 * Mohou popisovat velmi složité předlohy (fotografie,…).
 * převod mezi formáty bitmap je velmi snadný


 * __Nevýhody: __**


 * Velké nároky na zdroje (při vysokém rozlišení a barevné hloubce velikost obrázku dosahuje i jednotek megabytů, v profesionální grafice se běžně operuje i s podklady o desítkách megabytů).
 * Změna velikosti (zvětšování nebo zmenšování) vede ke zhoršení obrazové kvality obrázku.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Zvětšování obrázku je možné jen v omezené míře, neboť při větším zvětšení je na výsledném obrázku patrný rastr.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">**pixel** - zkrácení anglických slov picture element, obrazový prvek; zkratka px a je nejmenší jednotkou digitální rastrové grafiky

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">**barevná hloubka** - termín, který popisuje počet bitů použitých k popisu určité barvy nebo pixelu v bitmapovém obrázku nebo rámečku videa. Toto pojetí je také známé jako počet bitů na pixel, zejména je-li uvedeno spolu s počtem použitých pixelů. Větší barevná hloubka zvětšuje škálu různých barev a přirozeně také paměťovou náročnost obrázku či videa.


 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">1bitová barva (21 = 2 barvy) také označováno jako Mono Color (nejpoužívanější je, že bit 0 = bílá a bit 1 = černá)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">4bitová barva (24 = 16 barev)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">8bitová barva (28 = 256 barev)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">15bitová barva (215 = 32 768 barev) také označováno jako Low Color
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">16bitová barva (216 = 65 536 barev) také označováno jako High Color
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">24bitová barva (224 = 16 777 216 barev) také označováno jako True Color
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">32bitová barva (232 = 4 294 967 296 barev) také označováno jako Super True Color (někdy také jako True Color)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">48bitová barva (248 = 281 474 976 710 656 = 281,5 biliónů barev) také označováno jako Deep Color

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Lidské oko je velmi kvalitní orgán a dokáže od sebe odlišit až 20 milionů různých odstínů. Na základě toho jsou už barvy True Color (Pravé barvy) považovány vhodné pro kvalitní tisk fotografií v barevných časopisech.


 * = [[image:bitvamapa.gif width="490" height="336" align="center" caption="1bitová barevná hloubka"]] ||= [[image:IMG_6444.jpg width="498" height="342" align="center" caption="24bitová barevná hloubka"]] ||

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;"> <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Tiskárny nedokáží vytisknout jeden pixel libovolné barvy. Aby barevně vytiskly jeden pixel, musí jeho barvu namíchat z několika bodů (Dots) svých barevných inkoustů (obvykle 4 nebo 6 barev - viz CMYK). Jeden pixel obrazu se tak rozpadne na několik inkoustových tiskových bodů (Dots). Tiskový bod (Dot) tak musí být menší, než je pixel obrazu, aby bylo možné barvu pixelu namíchat. Procesu míchání (skládání) barev se říká rozklad (Dithering). Dots per Inch (DPI) není tak nic jiného, než s jakou hustotou je tiskárna schopná stříkat inkoustové body na papír.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">DPI (dots per inch) **


 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">LPI (lines per inch) **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">LPI definuje hustotu polotónového rastru a tím i jeho kvalitu. Číslo je vyjádřením počtu linek tiskových bodů, které je možné rozmístit na délce jednoho palce. Čím hustší rastr je, tím bude obrázek ostřejší, detaily propracovanější, přechody jemnější. Obecně platí, že čím nižší LPI, tím výraznější budou tiskové body na vytištěném obrázku. Laserové tiskárny tisknoucí v rozlišení 300 – 600 DPI většinou nedokážou tisknout v lepším LPI než 50 – 65. Proto kvalita takto tištěných obrázků není vysoká. Zařízení, která umožňují využívat vysokých hodnot LPI, naopak vytvářejí obrazy s jemnými přechody a téměř neznatelným rastrem. Pro novinový tisk se hodnoty LPI pohybují obvykle okolo 85, běžné publikace kolem 100 – 120 LPI, velmi kvalitní tisky pak přibližně 130 – 155 LPI.




 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">LPI a jeho vztah k DPI **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Zvolit správný poměr mezi LPI a DPI je kus umění. Pokud zvolíte příliš malé rozlišení obrázku, kvalita výsledného tisku bude nevalná; obrázek bude mít sklon k „zubatosti“, nejasným detailům, případně posterizaci. Ani opačný extrém není to pravé – zvolíte-li příliš vysoké rozlišení, kvalitu tisku to nepoznamená - zato objem dat a tudíž volné místo na vašem disku ano a pořádně. Proto i tady platí – všeho s mírou.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Především pro ofsetový tisk se často používá jednoduchá pomůcka pro přepočet: rozlišení obrázku (v DPI) by mělo mít dvojnásobnou hodnotu, než LPI zamýšleného rastru. Chcete-li při rastru 100 LPI tisknout obrázek, měl by mít rozlišení 200 DPI. Jde však o pomůcku, nikoli závazný vzorec; proto tato formulka není použitelná za všech okolností. Hodí se v případě, kdy obrázek obsahuje velké geometrické plochy a rovné hrany. Naopak v případech, kdy zpracováváte mnohamegové soubory dat, si můžete dovolit přepočet LPI x 1,5. Vždycky se vyplatí vycházet z konkrétních okolností – tisková technika, typ výstupního zařízení, účel tisku a také typ rastru. Podle posledního ze zmíněných faktorů vznikla tato přepočítávací tabulka:

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Autotypický rastr do 150 LPI – koeficient 2 <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Autotypický rastr nad 150 LPI – koeficient 1,5 <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Stochastický rastr – koeficient 1

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Koeficientem je míněn tzv. faktor kvality – nejde o veličinu oficiální, ale vytvořenou na základě empirických zkušeností. <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">I při pečlivém propočítávání je důležité nezapomenout na základní věc: veškeré propočty je nutné provádět z konečné velikosti obrázku. Pokud ho zvětšujete, vzdalujete se od optimálního rozlišení do mínusu, pokud zmenšujete, vzdalujete se zase do plusu (což s sebou na druhou stranu nese mínus v podobě zbytečných bytů dat). V případě, že si velikostí nejste jisti, radši počítejte s tou největší. A pokud jste nuceni velikost obrázku změnit, můžete provést drobnou korekci propočtu jednoduchým způsobem:

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">DPI = 2 x LPI x % původní velikosti (příklad: 2 x 150 x 1.2 (má-li obrázek 120% původní velikosti).

<span style="background-color: #ffffff; color: #000000; font-family: Arial,Helvetica,sans-serif; font-size: 130%; vertical-align: baseline;">** Komprese dat **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Používané formáty rastrové grafiky rozlišujeme jako:
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">nekomprimované
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">komprimované
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">s beztrátovou kompresí
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">se ztrátovou kompresí

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;"> Komprese dat (také komprimace dat) je speciální postup při ukládání nebo transportu dat. Úkolem komprese dat je zmenšit datový tok nebo zmenšit potřebu zdrojů při ukládání informací. Obecně se jedná o snahu zmenšit velikost datových souborů, což je výhodné např. pro jejich archivaci nebo při přenosu přes síť s omezenou rychlostí (snížení doby nutné pro přenos). Komprese může být nutná při omezené datové propustnosti, např. mobilní telefon komprimuje hovor pro přenos GSM sítí. <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Zvláštními postupy – kódováním, které je dané zvoleným kompresním algoritmem – se ze souboru odstraňují redundantní (nadbytečné) informace, zvyšuje se entropie dat. Komprese dat lze rozdělit do dvou základních kategorií. Ztrátové metody slouží pro kompresi videa a zvuků a na bezztrátových metodách stojí celý internet a některá přenosná média. Dnes se hlavně využívá kombinací několika algoritmů současně. Nejlépe je to vidět u hudebních a obrazových kodeků, kterých pro spouštění hudby nebo videa je potřeba hned několik.


 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Ztrátová komprese **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Způsob ukládání některých digitálních dat v počítačích. Pomocí speciálního algoritmu se zmenšuje objem dat na zlomek původní velikosti. Přitom se některé méně důležité informace ztrácejí a z vytvořených dat již nejdou zrekonstruovat. Obecný přístup ztrátové komprese je tedy jednoduchý. Po úvodním předzpracování se přeskupí nebo transformují data tak, aby bylo možno lehce oddělit důležité informace od nedůležitých. Nedůležité informace se pak potlačí mnohem více než důležité a nakonec se výsledek zkomprimuje některým z bezeztrátových kompresních algoritmů. Algoritmus ztrátové komprese má tedy dvě podstatné části — transformace původních dat a potlačení různě důležitých dat.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Přestože se část informace při ztrátové kompresi nevratně ztrácí, je tento způsob ukládání dat často velmi výhodný. Ztráta některých informací je totiž zcela vyvážena velmi výrazným zmenšením komprimovaných dat. Obvykle je tak určitá (malá) ztráta kvality vyvážena výraznou úsporou místa. Ztrátová komprese se nejčastěji používá pro ukládání obrazových a zvukových záznamů.


 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Bezeztrátová komprese **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Jedná se o algoritmy, které dovolují přesnou zpětnou rekonstrukci komprimovaných dat, na rozdíl od ztrátové komprese, kde to možné není. Bezeztrátová komprese se používá všude tam, kde je důležité, aby originální data a data po dekompresi komprimovaného souboru byla totožná - např. komprese textů nebo komprese čehokoli, kde je nepřípustná i sebemenší ztráta kvality.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Obvykle se algoritmy ztrátové komprese popisují a standardizují z pohledu dekodéru. Popíše se tedy zpracování toku dat od jednotlivých nul a jedniček až po finální rekonstrukci a postzpracování obrazu nebo zvuku. Tím je dáno, jak musí vypadat zkomprimovaná data. Kodér (někdy se používá slovo „enkodér“) pak musí vyrobit přesně taková data. Jak to udělá, je už věc jeho autorů. Tento přístup má hlavní výhodu v tom, že jednotlivé kodéry vytvářejí data, které může dekódovat každý dekodér. Další výhodou je možnost soutěže mezi autory kompresních algoritmů. Například dnešní implementace MPEG kodérů jsou o desítky procent efektivnější než první implementace, které se objevily po vydání standardu.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Většina bezeztrátových komprimačních programů nepoužívá jen jeden algoritmus, ale hned několik najednou. U některých komprimačních programů jsou data napřed transformována a až poté komprimována. Zmíněná transformace se používá za účelem dosažení lepších kompresních poměrů.

=Rozdělení algoritmů bezeztrátové komprese=

<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">**<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Transformace **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Tyto algoritmy ve skutečnosti nic nekomprimují, pouze modifikují data tak, aby se dala lépe zkomprimovat. Je také podmínkou, že ke každé transformaci musí existovat transformace inverzní, která bude schopna obnovit původní data.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Burrows-Wheelerova transformace (BWT)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Move-to-front transformace (MTF I a MTF II)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Weighted frequency count (WFC)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Distance coding (DC)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Inverse frequency coding (IF)

<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">**<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Slovníkové algoritmy **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Zjednodušeně: Algoritmy v této skupině vytvářejí v průběhu komprimace slovník na základě dat již zkomprimovaných, v němž se pak snaží najít data, která se teprve mají komprimovat. Pokud jsou data nalezena ve slovníku, algoritmus zapíše pozici dat ve slovníku místo samotných dat.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Lempel-Ziv 77 (LZ77)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Lempel-Ziv 78 (LZ78)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Lempel-Ziv-Welch 84 (LZW84) - podobný LZ78, byl velmi populární, ale také patentovaný
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">LZMA

<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">**<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Statistické algoritmy **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Snaží se určitým způsobem předvídat jaké znaky budou v souboru dat následovat. Pro znaky s vyšší pravděpodobností výskytu vyhradí algoritmus kratší informaci pro jejich zapsání, pro znaky s nižší pravděpodobností výskytu vyhradí naopak delší informaci pro jejich zapsání. <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Statistické metody dále dělíme na metody se statickým modelem (model slouží pro vypočítávání pravděpodobnosti výskytu znaků) a metody s adaptivním modelem. Metody se statickým modelem vytvoří před komprimací dat určitý model a podle něho zkomprimují celý soubor dat, zatímco metody s adaptivním modelem průběžně model aktualizují. Obecně se dá říci, že metody se statickým modelem bývají dvouprůchodové a metody s adaptivním modelem jednoprůchodové.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Shannon-Fanovo kódování
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Huffmanovo kódování
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Aritmetické kódování (známé taktéž jako aritmeticko logické kódování)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Range coding (RC)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">ACB
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Prediction by partial match (PPM)

<span style="background-color: transparent; color: #000000; font-family: serif; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">**<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Ostatní algoritmy **


 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Run length encoding (RLE)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Potlačení nul
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Bitové mapy
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Půlbajtové kódování

=Vektorová grafika=

Vektorová grafika je jeden ze dvou základních způsobů reprezentace obrazových informací v počítačové grafice. Zatímco v rastrové grafice je celý obrázek popsán pomocí hodnot jednotlivých barevných bodů uspořádaných do pravoúhlé mřížky, vektorový obrázek je složen ze základních geometrických útvarů jako jsou body, přímky, křivky a mnohoúhelníky. <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Vektorový obrázek je složen ze základních geometrických útvarů, jako jsou body, přímky, křivky a mnohoúhelníky. Teoretickým základem vektorové grafiky je analytická geometrie. Obrázek není složen z jednotlivých bodů, ale z křivek - vektorů. Křivky spojují jednotlivé kotevní body a mohou mít definovanou výplň (barevná plocha nebo barevný přechod). Tyto čáry se nazývají Bézierovy křivky. Je to metoda, díky které jsme schopni popsat pomocí čtyř bodů libovolný úsek křivky. Křivka je popsána pomocí dvou krajních bodů (tzv. kotevní body) a dvou bodů, které určují tvar křivky (tzv. kontrolní body). Spojnice mezi kontrolním bodem a kotevním bodem je tečnou k výsledné křivce.

__<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Výhody: __
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Je možné libovolné zmenšování nebo zvětšování obrázku bez ztráty kvality.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Je možné pracovat s každým objektem v obrázku odděleně.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Výsledná paměťová náročnost obrázku je obvykle mnohem menší než u rastrové grafiky.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Je většinou velmi jednoduché převést vektorová data do bitmapového formátu a takto je i uložit.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Zachovává stále ostré a přesné hrany křivek a objektů - vektor je definován matematicky.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">__Nevýhody__:
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Oproti rastrové grafice zpravidla složitější pořízení obrázku.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Překročí-li složitost grafického objektu určitou mez, začne být vektorová grafika náročnější na operační paměť a procesor.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Vektory se nehodí pro "popsání" složitěšjí předlohy (fotografie). Museli bychom každou plošku se stejnou barvou ohraničit vektorovým objektem a přiřadit jí onu barvu. K tomuto účelu slouží tzv. trasovací programy (CorelTRACE), které to udělají za nás.
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Pro zobrazení na monitoru, tisknutí (i zobrazení na webu) musí být převedeny na bitmapu.

= 3D grafika =



<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">3D grafika vychází z vektorové 2D grafiky, ale podstatným rozdílem je, že geometrická data se neukládají pouze v rovině, ale v prostorové (třídimenzionální) soustavě souřadnic. Základním geometrickým útvarem jsou polygony – plošky, ze kterých jsou tvořeny všechny objekty. Zajímavým faktem je, že vektorová reprezentace 3D scény se používá pouze pro editaci. Pro finální reprezentaci se po tzv. renderingu vytváří rastrový obraz. Důvod je v tom, že krom geometrických dat se nastavují pro skupiny polygonů různé další vlastnosti např. typ povrchu, barva, odrazivost a je tedy nutné pro celou scénu vykreslit (renderovat - vypočítat chování světla, stínů, odlesků). 3D grafika je využívána i ve vědě a průmyslu (například pro počítačové simulace nebo trojrozměrné zobrazení orgánů.

=Historie 3D grafiky=

<span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt;">Výzkum v oblasti 3D grafiky probíhal současně na mnoha místech převážně ve Spojených státech amerických od 60. let 20. století. Nejvýznamnější roli v tomto oboru sehrála Univerzita v Utahu, kde byl roku 1968 Davidem Evansem založen projekt pro rozvoj počítačové grafiky. Utažské univerzitě se podařilo pro tento program získat jak dostatek peněz, tak přední experty v oboru (na univerzitě pracoval mimo jiné i Ivan Sutherland) a v průběhu let univerzita dosáhla významných výsledků.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Mezi důležité objevy provedené v rámci tohoto programu patří:

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Základní algoritmy a techniky renderování (například z-buffer, anti-aliasing, perspektivní zkreslení...)

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Mapování textur („pokrytí“ povrchu tělesa obrázkem)

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Algoritmy pro stínování těles – stínováním se rozumí vykreslení určitého místa na povrchu tělesa správnou barvou pro vytvoření iluze trojrozměrnosti. Nejjednodušší metoda (flat shading, konstantní stínování) vybarví celý polygon jedním odstínem barvy. Existuje ale několik metod pro simulaci zaoblených tvarů:

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Gouraudovo stínování je algoritmus vynalezený v roce 1971 Francouzem Henrim Gouraudem. Spočívá ve vytvoření iluze zaoblenostiinterpolováním barvy podél povrchu.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Phongovo stínování je pomalejší, ale přesnější technika vynalezená Buiem Tuongem Phongem. Iluze oblého povrchu je vytvořena interpolováním směru normály podél povrchu polygonu s nastavitelnou velikostí odrazivosti (lesklosti) materiálu. Tato metoda byla později optimalizována Jimem Blinnem, dalším pracovníkem utažské univerzity. V dnešní době jde o široce využívanou metodu.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Edwin Catmull a Jim Clark vyvinuli metodu zaoblení povrchu tělesa rozdělením na menší polygony (Catmull-Clarkův algoritmus), často využívanou při 3D modelování.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">• Metody osvětlení a vrhání stínů, užití textur pro změnu reliéfu povrchu (Bump mapping) a další.

<span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt;">Několik výzkumníků univerzity později založilo významné firmy na poli počítačové grafiky, například Silicon Graphics (Jim Clark), Adobe Systems (John Warnock), Netscape (Jim Clark) nebo Pixar (Edwin Catmull). Neopomenutelným produktem utažské univerzity je nejslavnější model v historii počítačové grafiky, konvice z Utahu, kterou vytvořil Martin Newell. Prvním filmem, kde se objevily 3D grafické počítačem generované obrázky, se v roce 1976 stal Futureworld a prvním celovečerním 3D-animovaným filmem byl Toy Story z roku 1995


 * Modelování **

Pojmem 3D modelování se rozumí proces tvarování a vytváření 3D modelu, který může být reprezentován několika způsoby. Modely mohou být vytvořeny na počítači člověkem pomocí modelovacího nástroje, podle dat získaných měřicím přístrojem z reálného světa nebo na základě počítačové simulace.

Asi nejobvyklejší reprezentace tvaru tělesa je tzv. hraniční reprezentace. Těleso je popsáno jako mnohostěn zcela určený svými hranicemi (stěnami, hranami a vrcholy). Téměř všechny počítačové modely, které se používají ve hrách a filmech, jsou hraniční modely. V projektování a CAD se používá metoda CSG (konstruktivní geometrie pevných těles). Modely se konstruují z primitivních geometrických těles (koule, kvádr, válec, kužel, toroid) operacemi sjednocení, průniku a rozdílu. Pro zobrazování se tento model většinou převádí do hraniční reprezentace.

V objemové reprezentaci jsou tělesa definována jako množina bodových vzorků získaných např. lékařským tomografem nebo 3D scannerem. Pro zobrazování se používá metoda sledování paprsku, speciální algoritmy (které zviditelňují buď objem nebo povrch) nebo se tělesa převádějí do hraniční reprezentace.

Rendering
Rendering je tvorba reálného obrazu na základě počítačového modelu, nejčastěji 3D. Rendering obsahuje v závislosti na softwaru mnoho parametrů a nastavení, kterými lze ovlivnit konečný vzhled scény. Jde o odvětví počítačové grafiky. Zabývá se tvorbou obrazů, napodobující reálný svět. Je to zvláštní způsob vizualizace datc. Data jsou parametry popisující reálný nebo imaginární svět s jeho objekty a jejich vlastnostmi. Úkolem syntézy obrazu je z tohoto počítačového modelu obraz, který je pokud možno nerozeznatelný od fotografie definovaného objektu v reálném světě.



Syntéza obrazu je odvětví, které významně ovlivňuje tvorbu počítačových her, programů pro tvorbu grafiky a animaci a programů CAD/CAM. Realistické počítačové obrazy nacházejí uplatnění při tvorbě filmových efektů,architektuře, vojenství, při simulaci fyzikálních jevů nebo projektech pracující s virtuální realitou.

__ Některé prvky renderingu: __


 * **Stínování** - kolísání barvy a jasu povrchu v závislosti na osvětlení
 * **Texturování** - dodání realistického vzhledu povrchu modelu
 * **Bump mapping** - metoda napodobující drobné nerovnosti povrchu
 * **Mlha** - tlumení světla při průchodu atmosférou
 * **Stíny** - důsledek zakrytí zdroje světla jiným objektem
 * **Měkké stíny** – různé úrovně osvětlení způsobené částečně zakrytými světelnými zdroji
 * **Odraz světla** – zrcadlové nebo velmi lesklé reflexe
 * **Průhlednost** – šíření světla skrze objekty bez zkreslení
 * **Průsvitnost** – šíření světla skrze objekty se zkreslením
 * **Refrakce** – ohyb světla spojený se šířením světla skrze objekty
 * **Pohybové rozostření** – rychle pohybující se objekty se jeví rozmazané

Ray-tracing
Jedná se o vysoce výpočetně náročnou metodu počítačové vizualizace, pomocí které lze dosáhnout velmi realistického zobrazení modelu. Spočívá v postupném stopování paprsků odrážených modelem směrem k uživateli. Umožňuje zobrazení jevů, pomocí jiných technik vůbec, či jen stěží dosažitelných, jako jsou např. odrazy a odlesky objektů, lom světla v objektech, atd.Na začátku máme:



Popis 3D scény skládající se z:


 * 1) objektů (pozice, tvar, barva a další vlastnosti materiálu)
 * 2) světelných zdrojů (pozice, barva)
 * 3) (případně: barva pozadí scény, vlastnosti prostředí)



Pozici pozorovatele
Sledujeme paprsky, které se šíří od světelných zdrojů do scény. Některé paprsky zasáhnou objekty, kde se podle jejich vlastností lomí, odrážejí a rozptylují. Obraz scény tvoří paprsky dopadlé na projekční plochu.Tato metoda zahrnuje efekty vznikající vzájemnou interakcí objektů ve scéně (tj. například odrazy ostatních těles na povrchu lesklého objektu a lom světla při průchodu průhledným tělesem). Dokáže určit stíny vržené různými tělesy (tyto stíny jsou však ostře ohraničeny). Protože je nereálné sledovat všechny paprsky ze zdrojů světla, postupujeme v praxi naopak. Paprsek je sledován zpětně, tzn. ve směru od pozorovatele. Projekční paprsky vysíláme přes pixely obrazu scény. Hledáme, co je vidět v daném pixelu, jakou světelnou energii paprsek přináší.

Typy paprsků:

 * Primární paprsek - vyslaný od pozorovatele scény.
 * Sekundární paprsek - vzniká odrazem nebo lomem paprsku.
 * Stínový paprsek - vyslaný z místa dopadu paprsku na objekt ke zdrojům světla pro zjištění, leží-li ve stínu. Není-li objekt ve stínu, je pro něj vyhodnocen osvětlovací model. Zanedbává se jejich lom.



Při sledování paprsků musíme vlastně hledat jejich průsečíky s objekty scény. Naivní algoritmus testuje navzájem každý paprsek s každým objektem scény (a se všemi polygony v každém objektu), což vede ke značně časově náročnému výpočtu. Každý průsečík paprsku s objektem generuje další dva paprsky + stínový paprsek. V každém takovém průsečíku je zapotřebí provést ty samé výpočty, je tedy vhodné využít pro implementaci ray-tracingu rekurzi.Pro ukončení rekurze je možné použít následující kritéria:


 * 1) paprsek narazí na difúzní povrch
 * 2) je dosažena předem stanovená maximální hloubka rekurze
 * 3) energie paprsku klesne pod určitý práh

Nevýhody ray-tracingu

 * ostré stíny
 * bodové zdroje světla
 * zrcadla (lesklé plochy) sice odrážejí okolí, ale neodrážejí světlo do okolí, nejsou sekundárními zdroji světla
 * při změně ve scéně (místo pozorovatele, nové světlo, nový objekt, odebrání něčeho, ...) se musí vyhodnotit celá scéna
 * není adaptivní, zobrazení probíhá se stejným vzorkováním, nezávisle na situaci ve scéně (velké monotónní plochy)

Urychlování ray-tracingu
Prostý ray-tracing je velmi náročný na čas, urychlovací metody ho mohou urychlit o jeden až dva řády. Nejčastější urychlovací metody:Urychlení výpočtu průsečíkůa. speciální funkce na výpočet průsečíků s každým typem objektu (pre testy potenciálních průsečíků před vlastními výpočty s tělesem)b. snížení počtu výpočtů průsečíků - obálky, hierarchie obálek - dělení scény (BSP, Octal-tree) - paměť překážek - koherence paprsků (válcové nebo kuželové obálky paprsků)Snížení počtu paprskůa. adaptivní antialiasing (zředěné vysílání paprsků, interpolace při malé změně)b. řízení hloubky rekurze (útlum intenzity paprsků při odrazech a lomech -> stupeň rekurze při útlumu pod daný limit)Svazky paprsků (svazek paprsků se vysílá jako jeden - kvalita)Distribuce výpočtů na dvě části (procesů, procesorů)

Ray - casting
<span style="font-family: Arial,sans-serif; font-size: 13pt;">Ray casting pracuje na stejném principu jako ray tracing, je to v podstatě jeho odnož, ale rozdíl spočívá v tom, že na rozdíl od ray tracingu počítá s paprskem (primárním) vyslaným z kamery jen do doby, kdy vznikne průsečík mezi takto vyslaným paprskem a objektem. Poté spočítána barva a informace o ní se vrací zpět. Tato metoda je výrazně rychlejší (díky absenci dalších výpočtů), ale neumožňuje další kouzla jako refrakce, reflexe nebo přirozené stíny.

Budoucnost

 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">SVG (Scalable Vector Graphics) **

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">SVG je grafický formát umožňující popsat vektorovou grafiku vč. vložených bitmap a dalších pokročilých grafických technik (existuje jistá podoba s PDF) Je to značkovací jazky a formát souboru, který popisuje dvojrozměrnou vektorovou grafiku pomocí XML (lidově bychom jej mohli přirovnat k HTML pro grafiku, jen s jinými tagy). Formát SVG by se měl v budoucnu stát základním otevřeným formátem pro vektorovou grafiku na Internetu.

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Definuje 3 základní typy grafických objektů:


 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">vektorové tvary (obdélník, kružnice, elipsa, úsečka, lomená čára, mnohoúhelník a křivka)
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">rastrové obrazy
 * <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">textové objekty

<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">Tyto objekty mohou být různě seskupeny, formátovány pomocí atributů nebo stylů CSS a polohovány pomocí obecných prostorových transformací. Podporuje ořezávání objektů, alpha masking (průhlednost), interaktivitu, filtrování obrazu a animaci. Ne všechyny SVG prohlížeče však umí všechny tyto vlastnosti. Je možné snadné kombinování s XHTML, dokonce v rámci jednoho souboru, SVG grafika proto není omezena na obdélníkový rám ve kterém pracují zásuvné moduly. Stejně snadno jako HTML je editovatelný třeba i v textovém editoru a přístupný vyhledávačům (existuje už podpora mj. v Google. Po 5 letech od vzniku normy už existuje i dostatečný počet vizuálních editorů i animátorů vč. obdob programu Flash.


 * GIS **

Ve vektorových mapových vrstvách jsou data uložena pomocí bodů a čar. Bod je základním elementem s definovanou polohou (souřadnicí) a nemá z geometrického hlediska žádný rozměr. Čára je úsečka nebo křivka spojující dva body. V běžných GIS se z důvodů zjednodušení křivka reprezentuje pomocí seřazené sekvence bodů spojených přímou čarou. Modelování geodat pomocí vektorů úzce souvisí s teorií grafů. Vektorová data jsou v GIS organizována a ukládána podle různých vektorových modelů.

**Špagetový model** - Ve špagetovém modelu GIS jsou všechny typy objektů, bez ohledu na počet dimenzí, uloženy v jednom heterogenním seznamu. Tento seznam má pouze 2 položky:


 * <span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt; line-height: 150%; margin-bottom: 0.0001pt;">typ objektu - bod, čára, polygon
 * <span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt; line-height: 150%; margin-bottom: 0.0001pt;">parametry objektu - jedna či více souřadnic

<span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt; line-height: 150%; margin-bottom: 0cm;">Ve špagetovém modelu GIS není obsažena žádná informace o topologii (sousednost, orientace, konektivita, obsahování) a proto je tento model pro analýzu geodat obtížně použitelný.Navíc zde dochází k redundanci dat.

<span style="display: block; font-family: Arial,sans-serif; font-size: 13pt; text-align: justify;">Tento model patří mezi nejjednodušší. Princip vychází z digitalizace map, kde se každý objekt na mapě reprezentuje jedním logickým záznamem v souboru a je definovaný jako řetězec x,y souřadnic. Z logiky věci vyplývá, že řetězec je seřazený.

<span style="display: block; font-family: Arial,sans-serif; font-size: 13pt; text-align: justify;">Jeho nevýhoda spočívá v tom, že ačkoli jsou všechny objekty v prostoru definovány, struktura neposkytuje informace o vztazích mezi objekty, odtud také pochází název špagetový, je to soubor řetězců souřadnic nemající žádnou logickou strukturu. Další nevýhodou je způsob uložení sousedících polygonů. Společná linie je totiž ukládána dvakrát, pro každý polygon zvlášť.

<span style="display: block; font-family: Arial,sans-serif; font-size: 13pt; text-align: justify;">Pro většinu prostorových analýz je tento model nevhodný, jelikož veškeré potřebné prostorové vztahy musí být spočítány před každou analýzou. Nicméně neexistence prostorových vztahů činní tento model atraktivním pro použití v jednodušších CAC (Computer Assisted Cartography - počítačová kartografie) systémech, kde je díky jednoduchosti velice výkonný.

<span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt; line-height: 150%; margin-bottom: 0cm;">**Hierarchický model GIS** - Hierarchický model ukládá data hierarchicky s ohledem na počet dimenzí. Vychází s faktu, že polygon se skládá z několika linií, linie z několika úseček, úsečky jsou pak spojením dvou bodů. Tyto elementy jsou pak v GIS uloženy samostatně, nejčastěji v geodatabázi.

<span style="font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 12pt; line-height: 150%; margin-bottom: 0cm;">**Topologický model GIS** - Topologický model je kompromisem mezi špagetovým a hierarchickým modelem. Ukládají se pouze body a čáry, přičemž k čáře lze připojit informaci o její orientovanosti, podle níž lze pak určit sousední polygon vlevo a vpravo.

Hra ARMA 3, kde je využíváno podkladů GIS ke tvorbě herního prostředí

** Virtuální realita se snaží přiblížit skutečnosti: **
__ Moc odlesků __
 * docílení realističnosti (spoustu odlesků kolem sebe)
 * pokud chybí ve hře – působí umělohmotně
 * realistických efektů je dána právě světlem (jak se odráží od předmětů a jaká je jeho intenzita)

__ Nové oči __
 * v reálném světě se od bulvy se odráží celá scéna a oko se leskne v závislosti na tom, jak do něj dopadá světlo
 * oči také vyjadřují naše emoce podle toho, jak se kolem nich stahují svaly

=Ray tracing - slepá ulička nebo budoucnost grafiky?=

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Ray tracing je v poslední době často skloňován v souvislosti s budoucností počítačové grafiky, ale metoda sama není žádnou novinkou. Samotný ray tracing je založen na principu velmi podobném tomu, jak vnímáme obraz světa lidským okem. Ray tracing jako takový je pouze jednou z mnoha metod renderování, jako je ray casting nebo rasterizace.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Tato metoda byla doposud nasazována pouze tam, kde bylo možné na výsledný render čekat delší dobu, což je především doména filmových efektů nebo statických obrázků. Pro počítačovou grafiku je nutné, aby vše probíhalo v reálném čase. V předešlých letech nebylo vůbec možné uvažovat nad tím, že by jakýkoli domácí počítač byl schopen podobnou úlohu zvládnout. Poslední demonstrace Intelu na mnohojádrových systémech s procesory Xeon hovoří za vše, ale ani v konkurenčním táboru nikdo nespí, a tak můžeme vidět ray tracing i v podání Nvidia a jejích profesionálních systémech Quadro.



<span style="display: block; font-family: Arial,Helvetica,sans-serif; font-size: 16px; text-align: center;">Fotografie nebo renderovaná scéna?

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Ray tracing je založen na principu fyzikálně korektního obrazu založeného na paprscích vycházejících ze zdroje (kamera), kde je sledována dráha paprsku a jeho interakce s objekty, které mají v této virtuální scéně figurovat. Mnoho čtenářů si může ray-tracing velmi dobře splést s velmi podobnou metodou zvanou ray casting, která je založena na podobném principu.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Každý paprsek je vždy otestován na vznik průniku s předmětem v dané scéně a v bodě tohoto průniku je určena úroveň osvětlení a vlastnosti objektu respektive bodu (fyzikální vlastnosti, které ovlivňují do značné míry reflexe, refrakce a další efekty) a poté konečně jeho výsledná barva. Pokud je daný objekt (potažmo pixel) odrazivý nebo průsvitný, je k dosažení požadované efektu často třeba kombinovat data několika takovýchto paprsků.



<span style="display: block; font-family: Arial,Helvetica,sans-serif; font-size: 16px; text-align: center;">Princip ray tracingu

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Ray casting - zjednodušený ray tracing?

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Ray casting pracuje na stejném principu jako ray tracing, je to v podstatě jeho odnož, ale rozdíl spočívá v tom, že na rozdíl od ray tracingu počítá s paprskem (primárním) vyslaným z kamery jen do doby, kdy vznikne průsečík mezi takto vyslaným paprskem a objektem. Poté spočítána barva a informace o ní se vrací zpět. Tato metoda je výrazně rychlejší (díky absenci dalších výpočtů), ale neumožňuje další kouzla jako refrakce, reflexe nebo přirozené stíny.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Pokud si pamětníci vzpomínají na hry Wolfenstein 3D, Comanche (Voxel Space) nebo Comanche 3 (Voxel Space 2), tak právě ty jsou efektním příkladem zmíněné metody renderingu. Právě kvůli využití této techniky nebyly hry založené na Voxel Space enginu akcelerovatelné tehdejšími grafickými kartami 3dfx, ATi nebo nVidia.



<span style="display: block; font-family: Arial,Helvetica,sans-serif; font-size: 16px; text-align: center;">Comanche 3 - Voxel Space 2

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">V reálném světě se paprsky jako takové odrážejí, jsou pohlcovány, nebo se lámou, než se dostanou do pozice, kde je umístěno lidské oko (v našem případě ve virtuálním světě kamera) sledující scénu. Pro účely počítačové grafiky by byl tento způsob značně neefektivní, protože by bylo velmi těžké nebo nemožné určit, které z paprsků opravdu dorazí do bodu, kde se nachází oko potažmo kamera.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Velká část výpočtů by tak byla prováděna zcela zbytečně. Pokud bychom se ovšem pohroužili do světa zpracování 3D scény ještě hlouběji, narazíme na tzv. „Photon mapping“, který je založen právě na principu výpočtu dráhy paprsků emitovaných ze světelného zdroje a zároveň z pozice kamery scény.

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Photon mapping

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Algoritmus jako takový byl vyvinut za účelem reálného globálního osvětlení (global illumination) 3D scény. Jedná se o tzv. „dvou průchodový“ algoritmus, kde jsou počítány nejen paprsky ze světelného zdroje, ale také paprsky vycházející z pozice kamery. Pokud je splněna podmínka a oba paprsky se propojí, je určena tzv. hodnota záření.



<span style="display: block; font-family: Arial,Helvetica,sans-serif; font-size: 16px; text-align: center;">Photon mapping v akci

<span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">Tento typ renderování se využívá typicky tam, kde je třeba simulovat průchod světla průsvitnými předměty (sklo, voda atd.). Hlavní výhodou je také možnost vzájemné reflexe mezi osvětlovanými předměty, což znamená, že světlo po průchodu průsvitným předmětem dokáže osvětlit další předmět (kaustika). Photon mapping je výrazně náročnější alternativou k ray tracingu. V současné době není možné uvažovat o jeho nasazení v real time renderování.




 * Ray-tracing a počítačové hry **

Nvidia je společností, která jistě představuje lídra v odvětví počítačové grafiky. Podle společnosti tato technologie nemá ve světě her co dělat, protože je jednak velmi náročná a jednak je vývoj her na nové platformě plýtváním peněz. Představitelé Nvidie pro různá periodika z oblasti informační technologií vydávají poměrně zkreslená data ohledně vhodnosti ray tracingu pro hry. Společnost AMD zatím věnuje veškeré úsilí svému novému dítku Cinema 2.0, které má být dveřmi do světa her s fotorealistickou grafikou. AMD nedělá kolem Cinema 2.0 nebo potenciálu nových čipů RV770 tak velký humbuk jako Nvidia, ale o to více jsou její projekty zajímavé. Hlavy herních studií odhadují, že bude trvat cirka 5 až 7 let, než počítačové hry dosáhnou na hranici reálnosti CG (Computer Graphics) filmů.



Společnost Intel vidí naopak v ray tracingu velký potenciál a propaguje tento způsob jako nástupce současné rasterizace. Demonstrace Intelu jsou v naprosté většině založeny na reálných herních enginech pod OpenGL. Začalo to hrou Quake III a v současné době to končí ve hře Enemy Territory: Quake Wars, která je schopná běžet na 4 procesorech quad-core Xeon rychlostí 20 FPS. Intel přistupuje k ray tracingu zcela jiným způsobem než Nvidia. Vše akceleruje na svých x86 architekturách, které přes nižší papírový výkon, než v případě GPU, jsou pro tyto účely lepší. Ray tracing rozdělil hlavní výrobce na dva tábory, jeden (Nvidia) hlásá, že tato metoda renderování není vhodná pro nasazení v herním průmyslu a druhý naopak prohlašuje, že ray tracing je budoucností. Intel se snaží proniknout do herního průmyslu a nejen do něj svými projekty jako je Larrabee nebo prototypy 80-jádrových procesorů (Polaris).Ray tracing jako takový není všelékem a dokonalým způsobem k vykreslování budoucích her, ale přes odpor některých (i světových) osobností světa informačních technologií je jasné, že přichází velmi zajímavá dekáda v oblasti počítačové grafiky. Příchod ray tracingu na komerční pole her lze očekávat v horizontu několika let a velmi bude záležet také na dostupnosti hardware s dostačujícím výkonem. Dle ohlášených produktů, ať už ze stáje Intelu nebo AMD, to vypadá, že se ale nemusíme strachovat.


 * Project Morpheus **
 * Vizor s displejem, který je vyvinut společností Sony Computer Entertainment.
 * Project Morpheus tvoří dvě sady obrázků: jedna pro headset a druhá pro televizor, takže se může zapojit každý.
 * Díky technologii zvuku 3D uslyšíte nad sebou, pod sebou a všude kolem sebe každičký jemný zvuk se strhující přesností.

Nová souprava pro virtuální realitu Morpheus je vybavena 5,7 palcovým displejem OLED s rozlišením 1920xRGBx1080. Tato nová obrazovka rozšiřuje zorné pole a díky nízkému dosvitu odstraňuje pohybovou neostrost. Hry na soupravě Morpheus mohou být renderovány rychlostí 120 snímků za sekundu. V kombinaci s vysokou obnovovací frekvencí displeje OLED a výkonem systému PS4 bude souprava Morpheus zobrazovat neuvěřitelně plynulý obraz. Nízká latence je pro zobrazení virtuální reality velmi důležitá, a omezili jsme proto latenci na méně než 18 ms, což je oproti prvnímu prototypu soupravy Morpheus asi poloviční hodnota. Díky tomu je možné dosáhnout pocitu reality a zároveň zajistit pro hráče pohodlí.
 * Hlavní prvky **
 * Displej OLED
 * Obnovovací frekvence 120Hz
 * Výjimečně nízká latence

Použitá literatura a zdroje
<span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://cs.wikipedia.org/wiki/Počítačová_grafika <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://cs.wikipedia.org/wiki/Grafika <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://knihy.cpress.cz/DataFiles/Book/00002856/Download/kap._vektorova%20grafika_K1377.pdf <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://cs.wikipedia.org/wiki/Vektorová_grafika <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://www.symbio.cz/slovnik/vektorova-grafika.html <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://cs.wikipedia.org/wiki/Rastrová_grafika <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://distancne.obaka-orlova.cz/PDF/VRG.pdf <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://www.fi.muni.cz/usr/jkucera/pv109/2006/xzidek2.htm <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://graficke_karty.a4.cz/http:cs.wikipedia.org/wiki/Grafická_karta <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://cs.wikipedia.org/wiki/Rendering <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://www.svethardware.cz/art_doc-FCE1823B3C965F8AC12574BE004E14D3.html <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://en.wikipedia.org/wiki/Ray_tracing_(graphics) <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://www.grafika.cz/ <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://en.wikipedia.org/wiki/Lines_per_inch <span style="background-color: transparent; color: #000000; font-family: &#39;Arial&#39;,&#39;sans-serif&#39;; font-size: 16px; text-align: start; text-decoration: none; vertical-align: baseline;">http://en.wikipedia.org/wiki/Dots_per_inch <span style="font-family: Arial,Helvetica,sans-serif; font-size: 16px;">http://www.svethardware.cz/ray-tracing-slepa-ulicka-nebo-budoucnost-grafiky/24485 http://www.3dgrafika.wbs.cz/

<span style="display: block; height: 1px; left: -10000px; overflow: hidden; position: absolute; top: 12129px; width: 1px;">**__GIS__** <span style="display: block; height: 1px; left: -10000px; overflow: hidden; position: absolute; top: 12129px; width: 1px;">Ve vektorových mapových vrstvách jsou data uložena pomocí bodů a čar. Bod je základním elementem s definovanou polohou (souřadnicí) a nemá z geometrického hlediska žádný rozměr. Čára je úsečka nebo křivka spojující dva body. V běžných **GIS** se z důvodů zjednodušení křivka reprezentuje pomocí seřazené sekvence bodů spojených přímou čarou. Modelování geodat pomocí vektorů úzce souvisí s teorií grafů. <span style="display: block; height: 1px; left: -10000px; overflow: hidden; position: absolute; top: 12129px; width: 1px;">Vektorová data jsou v **GIS** organizována a ukládána podle různých vektorových modelů. Topologický model **GIS** - Topologický model je kompromisem mezi špagetovým a hierarchickým modelem. Ukládají se pouze body a čáry, přičemž k čáře lze připojit informaci o její orientovanosti, podle níž lze pak určit sousední polygon vlevo a vpravo.