Vektorová grafika - matematika či umění? - 22.02.02

Vzhledem k tomu, že pojem vektorová grafika není asi pro všechny zas tak známým, napsal jsem tento malý příspěvek, v němž se snažím alespoň částečně tento pojem objasnit. Jako vděčný vzor pro názornost mi posloužil tučňák z loga Linuxu.

Mé první seznámení s vektorovou grafikou se odehrálo před několika lety. Tehdy jsem potřeboval do textového dokumentu psaného v programu Wordperfect vložit obrázek automobilu Jeep. Byl to obrázek dodávaný s programem jako tzv. clipart, a tak mi nic nebránilo jednoduše jej vložit do dokumentu. Při další manipulaci s dokumentem se mi mimoděk „podařilo“ na tento obrázek dvojkliknout a rázem jsem se ocitl v prostředí jakéhosi pradědečka současných ilustračních programů. Následovalo mé nemalé zděšení, když po chvilce mé „tvůrčí“ činnosti vznikla z krásného a poměrně realisticky vystínovaného obrázku jen hromádka mnoha barevných geometrických útvarů, v níž by ni Piccaso nenalezl nejmenší náznak Jeepa, a to i bez ohledu na to, že by neměl tušení co Jeep je. (Bohužel ten obrázek jsem už nenašel, ale myslím, že Tux to předvede taky srozumitelně. Mimochodem zdrojový soubor naleznete v sekci download.)

Proměna Tuxe v chaos.

Proměna Tuxe v chaos.

Ať se nám to líbí nebo ne, základem vektorové grafiky je pouze a jenom matematika. V sedmdesátých letech francouzský matematik a konstruktér Pierr Béziere vyvinul matematickou metodu jíž byl schopen popsat libovolný úsek křivky pouze za pomoci čtyř bodů. Stačí tak znát dva krajní tzv. kotevní body jež definují danou úsečku a dva tzv. kontrolní body určující vlastní tvar křivky. Spojnice mezi kontrolním a kotevním bodem je vlastně tečnou k výsledné křivce. Tímto způsobem lze popsat i tu nejsložitější křivku jakou jsme schopni nakreslit. Jméno Bézier a pojem Bézierovy křivky je tak s počítačovou grafikou neodmyslitelně spjato. V současnosti je naštěstí k dispozici již celá řada grafických programů které od uživatele nevyžadují rutinní znalost polynomů třetího řádu jimiž jsou obrázky popsány a tak se můžeme klidně věnovat vlastní grafické tvorbě.

Jak předchozí povídání naznačuje, má každý vektorový obrázek určitou hierarchii. Je zpravidla složen z mnoha menších a jednodušších objektů (často sdružených do skupin), které jsou dále tvořeny jednou či více cestami skládajícími se z několika segmentů definovaných kotevními a kontrolními body. Tyto segmenty jsou tak ony nejmenší části obrázku - Bézierovy křivky.

Bézierovy křivky.

Bézierovy křivky.

Tím nejzákladnějším stavebním kamenem všech vektorových obrázků jsou však právě kotevní a kontrolní body. Kotevní body určují nejen polohu daného segmentu, ale jelikož jsou to oni kdož spojují jednotlivé segmenty dohromady, závisí na nich i tvar přechodu jednoho segmentu v druhý. Může tak být vytvořen spoj ostrý neboli rohový či spoj hladký.

Ukázka ostrých a hladkých spojů.

Ukázka ostrých a hladkých spojů.

Budeme-li v oné hierarchii pokračovat o další stupeň výše, můžeme spojit několik segmentů dohromady a vytvořit tak cestu. A to buď cestu otevřenou (má vždy o jeden kotevní bod více než je počet jejích segmentů) nebo cestu uzavřenou. Odsud je jen velmi malý krůček k vlastním objektům, u nichž lze již krom polohy a tvaru definovat mnoho dalších parametrů jako jsou styl, barva a tloušťka obrysu či styl a barva výplně. Dalo by se říci, že pak už jen stačí objekty vhodně poskládat dohromady a…

Jak poskládat Tuxe.

Jak poskládat Tuxe.

Tato technika působí na první pohled dosti neohrabaně a pro grafiku nepoužitelně, avšak jsou i jiné útvary než čtverec, obdélník nebo kruh a tak se touto zdánlivě nepoužitelnou metodou dá nakreslit skoro cokoliv. Hlavní nevýhoda však tkví v barevných přechodech a stínování. Každá fotka a vůbec všecko kolem nás je jen hra stínů a barevných přechodů a jednolitou barevnou plochu člověk skoro nenajde. Dnešní software pro vektorovou grafiku se však snaží čelit i této stinné stránce a při pohledu na některé výtvory zvláště pracovitých jedinců nezbývá než uznat, že se jim to daří. Příkladem mohou být už jen obaly těchto softwarů (CorelDRAW® či Adobe® Illustrator®), na nichž si člověk občas není jist nejedná-li se náhodou o fotografii.

Co je však tou hlavní výhodou celé vektorové grafiky je možnost v podstatě libovolného zvětšování již vytvořeného obrázku, a to bez sebemenší ztráty na kvalitě. Zatímco z rastrových obrázků máme po zvětšení jen hromádku různobarevných čtverečků, vektorový obrázek se nezmění. Neméně důležitá a příjemná je i možnost neustále pracovat odděleně s jednotlivými objekty obrázku. Jednotlivé tahy štětce na „plátně“ se nám budou jen těžko opravovat (i když např. Adobe® Photoshop® dovoluje pracovat s jednotlivými objekty - vrstvami, ale těžko budu mít každý tah v separátní vrstvě), avšak ve vektorovém obrázku zůstanou stále jako oddělené objekty a lze je tedy i odděleně upravovat (barva, tvar…).

Zvětšování rastrového a vektorového obrázku.

Zvětšování rastrového a vektorového obrázku.

Dnes se vše točí kolem internetu a není divu, že i na tomto poli si začíná vektorová grafika budovat své místečko. Proč? Odpověď je velmi prostá: hlavním nedostatkem internetu je ještě stále rychlost, respektive pomalost přenosu dat. Jelikož jsou vektorové obrázky poměrně paměťově nenáročné, jsou pro použití na webovou grafiku velmi dobře použitelné (fotku s nimi však stále nenakreslíte). Neustále se zvětšující počet internetových stránek tak pod krycím názvem flash používá právě vektorovou grafiku.