Risanje črt in krožnic v praksi

Z računalniki rišemo črte, krožnice, elipse in druge krivulje pri najrazličnejših opravilih, od grafike pri računalniških igrah do črt na risbi arhitekta. V urejevalniku besedil narišemo celo majhen krog za piko na vrhu črke »i«. Če kombiniramo risanje črt in krožnic s trehnikami, kot sta polnjenje (ang. filling) in izravnavanje (ang. anti-aliasing), lahko z računalniki narišemo jasne slike z gladkimi krivuljami in prehodi, neodvisne od ločljivosti. Slike, ki so shranjene kot opis krivulj in barvnih polnil, imenujemo vektorska grafika. Te slike je mogoče narisati v poljubni ločljivosti, kar pomeni, da če vektorsko sliko povečamo, na bomo opazili kvadratkastih robov, ki jih opazimo, ko povečamo bitne oziroma rasterske slike. Vendar pa moramo pri uporabi vektorske grafike piksle preračunati vsakič, ko želimo sliko narisati, zato je pomembno, da za risanje vektorskih slik uporabimo hitre algoritme.

Vektrosko grafiko najpogosteje uporabljamo pri pisavah (ang. outline fonts), saj omogoča, da besedilo poljubno povečamo, na da bi se izgubila kakovost oblike znakov in črk.

Znanstveniki s področja računalništva in informatike so tudi za risanje drugih oblik iznašli hitre algoritme, kar pomeni, da lahko slike in grafiko relativno hitro prikažemo oziroma izrišemo tudi na razmeroma počasni strojni opremi – pametni telefon mora na primer ves čas izvajati te izračune za prikaz slik, zmanjševanje količine izračunov pa lahko pospeši delovanje mobilnega telefona in podaljša življenjsko dobo baterije.

Kot običajno stvari niso tako preproste, kot je prikazano tukaj. Na primer, predstavljaj si vodoravno črto, ki poteka od točke (0, 0) do točke (10, 0) in je dolga 11 slikovnih pik. Zdaj jo primerjaj s 45-stopinjsko črto, ki poteka od točke (0, 0) do točke (10, 10). Še vedno je dolga 11 slikovnih pik, vendar je črta daljša (približno 41% daljša). To pomeni, da bi bila črta na zaslonu videti tanjša, zato moramo izvesti dodatne postopke (predvsem izravnavo), da bo črta videti v redu. In to je šele začetek raziskovanja, katere grafične tehnike potrebujemo za hiter izris in prikaz visokokakovostnih slik.


Do zdaj smo spoznali le osnove računalniške grafike. Znanstveniki s področja računalništva in informatike so razvili tudi algoritme za druga področja računalniške grafike, kot na primer:

  • Osvetlitev (ang. Lighting) s katero na sceno dodamo virtualne luči, s katerimi ustvarimo senčenje in globino.
  • Preslikava teksture (ang. Texture mapping) za simuliranje realističnih materialov, kot so trava, koža, les, voda itd.
  • Izravnavanje (ang. Anti-aliasing) s katerim se izognemo kvadratkastim robovom, ko digitalno izrisujemo slike.
  • Projekcija (ang. Projection) s katero preslikamo 3D predmete v sceni na 2D zaslon, ki ga uporablja gledalec.
  • Odstranjevanje skritih predmetov (ang. Hidden object removal) je ugotavljanje, katerih delov slike gledalec ne more videti.
  • Fotorealistično upodabljanje (ang. Photo-realistic rendering) je čim bolj realističen izris slik, ali pa nameren ne-realističen izris, na primer »slikarsko upodabljanje«, da slika izgleda, kot da bi bila naslikana s čopičem.
  • Učinkovito simuliranje pojavov iz resničnega sveta, kot so ogenj, valovi, človeško gibanje itd.

Sistem množenja matrik, ki ga uporabljamo v tem poglavju, je poenostavljena različica sistema množenja, ki ga uporabljajo proizvodni sistemi in temelji na homogenih koordinatah. Homogeni sistem uporablja matrike velikosti 4×4 (namesto 3×3, ki smo jih uporabljali za 3D). Prednost je v tem, da je vse operacije mogoče uporabljati le množenje (pri sistemu 3×3 smo morali za skaliranje in vrtenje matriki pomnožiti, pri translaciji pa sešteti), poleg tega pa precej olajša tudi nekatere druge grafične operacije. Grafične procesne enote (GPE) v sodobnih namiznih računalnikih so še posebej dobre pri obdelavi homogenih sistemov, posledica tega pa je zelo hitra grafika.