DOCENTE: LUCIA MADDALENA
NUMERO DI CREDITI (CFU): 6
SETTORE SCIENTIFICO-DISCIPLINARE: INF/01
FINALITÀ DEL CORSO: Fornire i concetti di base della grafica interattiva ed avviare all'utilizzo di strumenti software grafici per la generazione di applicazioni grafiche
ARTICOLAZIONE DIDATTICA:
lezioni: 24 h laboratorio: 24 h
PROGRAMMA DEL CORSO:
- Introduzione: applicazioni, evoluzione, sistema grafico di base, modelling, rendering, pipeline grafica.
- Dispositivi hardware per la grafica: dispositivi di output (CRT vettoriali e aster, LCD, schermi al plasma,
pen plotter, stampanti inkjet e laser, …); dispositivi di input (posizionamento, tastiera, acquisizione immagini,
acquisizione geometrie 3D, acquisizione movimenti 3D, …).
- Trasformazioni geometriche: traslazione, scaling, rotazione e shear 2D e 3D e loro rappresentazione matriciale
mediante coordinate omogenee.
- Trasformazioni di visualizzazione: proiezioni geometriche piane; proiezioni parallele (ortografica, ortografica
multivista, assonometria, obliqua); proiezioni prospettiche (con 1, 2 e 3 vanishing point); pipeline di visualizzazione;
volume di vista; proiezioni in OpenGL.
- Modellazione con mesh poligonali: definizione, proprietà; normali e metodo di Newell; poliedri (formula di Eulero, solidi platonici);
approssimazione di superfici mediante mesh.
- Curve e superfici: rappresentazione parametrica e non parametrica di curve e superfici; Curve di Bezier e polinomi di Bernstein;
Algoritmo di de Casteljau; Curve di Bezier composite; Curve B-Spline e funzioni di base B-Spline; Curve NURBS; Superfici di Bezier;
Superfici di Bezier composite; Superfici B-Spline; Superfici NURBS; Superfici rigate e superfici di rotazione mediante NURBS.
- Illuminazione e shading: definizione; modelli di illuminazione (modello di Phong); tecniche di shading (flat shading, Gouraud shading,
Phong shading).
- Clipping: definizione; clipping di punti, segmenti di rette e poligoni 2D e 3D; algoritmo di Cohen-Sutherland;
algoritmo di Sutherland-Hodgeman; cenni al clipping di altre primitive (curve, superfici, testo).
- Rimozione delle superfici nascoste: definizione; approcci object-based e image-based; Back face culling; algoritmo del pittore;
depth sort; algoritmo Z-buffer.
- Rasterizzazione: definizione; scan conversion di punti, segmenti di retta e poligoni; algoritmo DDA; algoritmo di Bresenham;
algoritmo scan-line; algoritmo flood-fill; inside-outside testing; cenni all’antialiasing.
- Texture mapping: definizione; tecniche di texture mapping; magnification e minification; environment mapping;
bump mapping; projective texture mapping; multitexturing.
- Introduzione a OpenGL e GLUT: caratteristiche principali; librerie; gestione di finestre, colori, frame buffer,
primitive, errori; interazione con strumenti di I/O; trasformazioni di modellazione e di visualizzazione e stack di matrici;
utilizzo di routine per curve e superfici, per illuminazione e shading, per texture.
PROPEDEUTICITÀ: Nessuna
PRE-REQUISITI: PROGRAMMAZIONE I, II E III, MATEMATICA
MODALITA’ DI ACCERTAMENTO DEL PROFITTO: esame orale e/o elaborato di progetto e/o prova pratica
TESTI DI RIFERIMENTO:
- E. Angel, Interactive Computer Graphics, IV ed., Addison Wesley, 2006
- J.D. Foley, A. van Dam, S.K. Feiner, J.F. Hughes, R.L. Phillips, Introduction to Computer Graphics, Addison- Wesley, 1997
- J.D. Foley, A. van Dam, S.K. Feiner, J.F. Hughes, Computer Graphics: Principles and Practice, Second Edition in C, Addison-Wesley, 1997
- Francis S. Hill, Jr., Computer Graphics Using Open GL, Second Edition, Prentice Hall, 2000
- OpenGL Architecture Review Board, D. Shreiner, M. Woo, J. Neider, T. Davis, The OpenGL Programming Guide. The Red Book. II edition, Addison-Wesley Publishing Company
- D.F. Rogers, J.A. Adams, Mathematical Elements for Computer Graphics, II edition, McGraw-Hill, 1990
- D. Salomon, Curves and Surfaces for Computer Graphics, 2006
MATERIALE DIDATTICO FORNITO: Le presentazioni multimediali (formato .pdf) di tutte le lezioni sono disponibili via e-mail (lucia.maddalena 'at' na.icar.cnr.it)
Last update: April 7, 2008