grafica pe calculator

30
Elemente de Grafică pe Calculator Introducere Sorin Babii, Ovidiu Pârvu Departamentul Calculatoare, ASPC, P9

Upload: robert-axinia

Post on 29-Dec-2014

167 views

Category:

Documents


12 download

DESCRIPTION

Computer grafics

TRANSCRIPT

Page 1: Grafica Pe Calculator

Elemente de Grafică pe Calculator

Introducere

Sorin Babii, Ovidiu PârvuDepartamentul Calculatoare,

ASPC, P9

Page 2: Grafica Pe Calculator

Cuprins

● Reguli● Scurtă istorie a Graficii pe Calculator● Domeniul Graficii pe Calculator: vedere de

ansamblu● Structura cursului● Lucrări de laborator● Introducere şi detalii tema 1 laborator

Page 3: Grafica Pe Calculator

Elemente de Grafică pe Calculator: Obiectivele Cursului

● Introduce elementele fundamentale ale graficii 2D şi 3D– Reprezentări (linii/curbe/suprafeţe)

– Trasare şi vizualizare

– Implementare● frame buffer simplu în format XPM● Linii, cercuri, curbe Bézier şi NURBS● Algoritmi de trasare

Page 4: Grafica Pe Calculator

Anul V: Sisteme pentru Prelucrări Grafice

● Grafică 3D● Ray tracing● Iluminare, vizualizare, fotorealism● Reţele poligonale şi Bezier● Modele ierarhice

Page 5: Grafica Pe Calculator

Anul V: Sisteme pentru Prelucrări Grafice

Page 6: Grafica Pe Calculator

Elemente de Grafică pe Calculator

● Domenii tratate– Transformări geometrice, grafică raster 2D, vizualizare

2D, curbe 2D

– Vizualizare 3D, curbe şi suprafeţe 3D

– Curbe şi suprafeţe Spline, B-Spline şi NURBS

– Trasare 3D, îndepărtarea liniilor ascunse, Z-buffer

– Modelarea Solidelor

Page 7: Grafica Pe Calculator

Elemente de Grafică pe Calculator

● Algoritmul lui Bresenham pentru conversia de scanare

● Algoritmul de decupare Cohen-Sutherland● Procesarea poligoanelor cu metoda Weiler-

Atherton● Algoritmul De Casteljau● B-Spline, NURBS, algoritmul De Boor● Algoritmul Z-buffer; îndepărtarea faţetelor

ascunse

Page 8: Grafica Pe Calculator

Reguli, Sugestii

● Pagina web: http://aspc.cs.utt.ro/~sorin/Graphics/EGC/

● Utilizaţi notiţele de curs● Examen parţial – laborator la zi● Examen final – oral, laborator la zi● Laborator – lucru individual

Page 9: Grafica Pe Calculator

Grafica pe Calculator: Scurt Istoric

● 1963, Ivan Sutherland: Sketchpad

● Osciloscop modificat● Primul sistem CAD

Page 10: Grafica Pe Calculator

Hardware Grafic: Istoric

● Display-uri– vectoriale

● 1974 – E&S Picture System

– raster● 1975 – frame buffer

E&S● anii 1980 – frame

buffer ieftine → calculatoare personale cu display bit-mapped

● anii 1990 – cristale lichide →laptop

● anii 2000 – proiectoare cu micro-oglindă→cinema digital

– Alte evoluţii

● stereo, head-mounted displays

● alte aspecte: tactil, sunet etc.

Page 11: Grafica Pe Calculator

Hardware Grafic: Istoric

● Hardware de intrare– 2D

● creion luminos, tableta, mouse, joystick, trackball, touch panel

● anii 1970-80: senzor CCD pt. imagini analogice

● anii 1990-2000: senzor digital CMOS + procesare locală

– 3D● 3D trackers, scanner-e

3D● mai multe camere● detectoare de perimetru

– altele● data glove● voce

Page 12: Grafica Pe Calculator

Grafica 2D

● Raster – pixeli– X11 bitmap, XBM

– X11 pixmap, XPM

– GIF

– TIFF

– PNG

– JPG

● Cu pierderi, apar trepte la transformare

● pentru fotografii

● Vectorial – instrucţiuni– Postscript

– CGM

– Fig

– DWG

● Fără pierderi, suportă scalare

● pentru desene artistice, diagrame

Page 13: Grafica Pe Calculator

Grafica 2D

● Raster: ● Vectorial:

Page 14: Grafica Pe Calculator

Grafică raster 2D: Adobe Photoshop

Page 15: Grafica Pe Calculator

Grafică raster 2D

Page 16: Grafica Pe Calculator

Grafică vectorială 2D: Adobe Illustrator

Page 17: Grafica Pe Calculator

Grafică vectorială 2D

Page 18: Grafica Pe Calculator

Display-uri Grafice

● Azi, aproape toate display-urile sunt RASTER

● Cum să generăm pixeli pe un display raster pornind de la biţi şi contururi?

Page 19: Grafica Pe Calculator

Frame Buffer

● Memoria video pentru pixeli, de unde se împrospătează display-ul video

● De obicei este implementat de placa video– frame buffer-e inteligente

● acceleratori pentru interacţiune 2D şi 3D● adâncime de culoare (1, 8, 16, 24, 32 biţi), Z-buffering

● Double buffering: utilizează o memorie secundară pentru construirea imaginii şi comutare

Page 20: Grafica Pe Calculator

Vizualizare 3D

● anii 1960: problema vizibilităţii– Roberts (1963), Appel

(1967) – algoritmi pentru linii ascunse

– Warnock (1969), Watkins (1970) – algoritmi pentru suprafeţe ascunse

– Sutherland (1974) – vizibilitate = sortare

● anii 1970 – grafica raster– Gouraud (1971) –

iluminarea difuză

– Phong (1974) – iluminarea speculară

– Blinn (1974) – suprafeţe curbe, texturi

– Catmull (1974): Z–buffer pentru suprafeţe ascunse

Page 21: Grafica Pe Calculator

Vizualizare 3D

● În căutarea realismului– 1980 – modele de

iluminare globală● Whitted (1980) – ray

tracing● Goral, Torrance (1984),

Cohen (1985) – radiozitate

● Kajiya (1986) – ecuaţia de vizualizare

Page 22: Grafica Pe Calculator

Vizualizare 3D

● sfârşitul 1980 – fotorealism– Cook (1984) – arbori

de umbrire (shade trees)

– Perlin (1985) – limbaje de umbrire

– Hanrahan şi Lawson (1990) - RenderMan

Page 23: Grafica Pe Calculator

Dezvoltări actuale

● început 1990 – reprezentări non-fotorealiste– Drebin (1988) –

volume rendering

– Haeberli (1990) – programe de pictură impresionistă

– Meier (1996) – reprezentări picturale

Page 24: Grafica Pe Calculator

Domenii de utilizare

● Distractiv● CAD/CAM● Vizualizări

ştiinţifice/medicale● Antrenament şi

educaţie● Realităţi sintetice

– VR, comerţ etc

● Artă şi design

Page 25: Grafica Pe Calculator

Domenii de utilizare

● Distractiv● CAD/CAM● Vizualizări

ştiinţifice/medicale● Antrenament şi

educaţie● Realităţi sintetice

– VR, comerţ etc

● Artă şi design

Page 26: Grafica Pe Calculator

Domenii de utilizare

● Distractiv● CAD/CAM● Vizualizări

ştiinţifice/medicale● Antrenament şi

educaţie● Realităţi sintetice

– VR, comerţ etc

● Artă şi design

Page 27: Grafica Pe Calculator

Domenii de utilizare

● Distractiv● CAD/CAM● Vizualizări

ştiinţifice/medicale● Antrenament şi

educaţie● Realităţi sintetice

– VR, comerţ etc

● Artă şi design

Page 28: Grafica Pe Calculator

Domenii de utilizare

● Distractiv● CAD/CAM● Vizualizări

ştiinţifice/medicale● Antrenament şi

educaţie● Realităţi sintetice

– VR, comerţ etc

● Artă şi design

Page 29: Grafica Pe Calculator

Domenii de utilizare

● Distractiv● CAD/CAM● Vizualizări

ştiinţifice/medicale● Antrenament şi

educaţie● Realităţi sintetice

– VR, comerţ etc

● Artă şi design

Page 30: Grafica Pe Calculator

Lucrări de Laborator

● Fără biblioteci grafice: OpenGL, DirectX, GLUT, Mesa

● Ieşire – bitmap 2D– XPM: X11 PixMap

– trebuie să vă scrieţi propriul cod pentru generarea de XPM

● Executabilul şi sursele se trimit prin e-mail