Alberto Paoluzzi, Dipartimento Informatica e Automazione, Università Roma Tre
Giorgio Scorzelli, Scientific Computing and Imaging Institute, University of Utah
Il corso intende sviluppare la capacità di (a) realizzare modelli geometrici di componenti e strutture sia industiali che naturali di elevata complessità, e di (b) partecipare al progetto e allo sviluppo di sistemi informatici orientati alla modellazione e alla simulazione. Il corso offre pertanto un insieme di richiami e di approfondimenti delle tecniche geometrico-matematiche necessarie, e fornisce gli elementi essenziali delle aree informatiche coperte (computer graphics, geometric computing e computational geometry), accompagnando la teoria con la pratica implementativa in un moderno ambiente di programmazione interpretato basato su Python.
- Grafica computazionale
-
Venerdì 16 luglio, ore 14:00, aula riunioni DIA (I piano)
- Grafica computazionale, Informatica grafica, Progettazione assistita da calcolatore
-
Martedì 20 luglio, ore 14:00, aula riunioni DIA (I piano)
- Grafica computazionale
-
Martedì 28 settembre, ore 14:00, aula N10
Il progetto è individuale, e va presentato pubblicando sullo spazio web dell’account openafs assegnato allo studente (modulo di richiesta, da presentare compilato in linea, stampato e firmato), alcune pagine web scritte con asciidoc.
Il tema del progetto 2010 riguarda la modellazione del quartiere di residenza dello studente, secondo modalità specificate nella terza prova intermedia, ma curando maggiormente il dettaglio geometrico delle strade e degli edifici, se necessario utilizzando modelli digitali del terreno (approssimati a piacere), texture e colori. La pagina web di presentazione includerà i sorgenti Pyplasm, immagini fotografiche e sintetiche, oltre ad una succinta descrizione in inglese del lavoro svolto.
Programma del corso
PRIMO MODULO
Equivalenza con il corso di Progettazione assistita da calcolatore (D.M. 509)
Introduzione al linguaggio Python, al linguaggio Plasm, libreria pyplasm.
Spazi vettoriali e affini, insiemi convessi, complessi simpliciali e poliedrali, campi e operatori differenziali.
Trasformazioni affini, Primitive grafiche, Strutture gerarchiche, Pipeline 3D, Proiezioni, Texture mapping, Ricostruzione 3D
Curve, superfici e solidi parametrici sia polinomiali che razionali. Patches rettangolari, simpliciali e multivariate. Modellazione geometrica transfinita.
SECONDO MODULO
Equivalenza con il corso di Informatica grafica (D.M. 509)
Introduzione all’uso del binding cross-platform di Python con OpenGL e le relative API. Elementi di programmazione con shader/buffer/texture model di OpenGL 3.x.
Intersezione di segmenti in una e pi√π dimensioni. Guscio convesso. Triangolazioni. Complessi duali.
Complessi simpliciali, complessi di celle. Catene e cocatene. Complessi di catene e cocatene. Operatori di bordo e cobordo. Rappresentazione con matrici sparse. Triangolazioni gerarchiche. Operazioni caratteristiche.
Ricostruzione dei palazzi imperiali al Palatino; Modellazione del sistema delle metropolitane romane; sviluppo del modello parametrico di un centro commerciale
Materiale didattico
-
Alberto Paoluzzi, "Geometric Programming for Computer-Aided Design", Wiley, 2003
Modalità di esame
-
9 crediti: 60 ore di lezioni, 30 ore di esercitazioni.
-
Esame: (1) progetto; (2) prova di programmazione.