In particolare si copriranno con vari livelli di approfindimento i seguenti temi:
- Data Visualization. Verranno presentati i principali
paradigmi e presentate le funzioni avanzate della libreria Python
Seaborn. (1 CFU)
- Introduzione al Computer Aided Geometric Design.
Introduzione alla teoria e pratica delle curve e superifcie di Bezier e
NURBS (1 CFU)
- Geometric Processing per dati 3d. Introduzione al calcolo e
studio degli invarianti geometrici e geometrico-differenziali delle mesh
3d (2 CFU)
- Introduzione alla programmazione visuale (graphical nodes in Blender) (1 CFU)
- Programmazione di script Python per la grafica (in Blender) (1 CFU)
Principi di CAGD relativi a curve di Bezier, curve spline, NURBS. Principali proprietà e algoritmi.
Principi di geometria differenziale discreta e operazioni di elaborazine geometrica di mesh 3d.
Programmazione visuale (nodes) in Blender.
Sviluppo di script Python per Blender.
Argomenti | Riferimenti testi | |
---|---|---|
1 | Scientific Visualization | dispense docente |
2 | Laboratory of Scientific visualization | manuali on line |
3 | Basics of CAGD | dispense docente |
4 | Basics of Geometry processing | dispense docente |
5 | Python scripting for Blender | manuali on line |
6 | Visual programing in Blender (lab) | manuali on line |
verifiche sui seguenti elementi:
a) visualizzazione di dati assegnati dal docente; (25%)b) sviluppo di script Python in Blender che implementi operazioni di Geometry processing assegnate dal docente; (25%)
c) sviluppo di un semplice progetto usando i geometry nodes (proposto dallo studente) (25%)
d) colloquio orale sulle nozioni teoriche del corso. (25%)
In caso di necessità, a seguito di apposite indicazioni da parte degli organi di Ateneo, la verifica potrà essere effettuata in modalità telematica, con le necessarie variazioni rispetto a quanto dichiarato in precedenza.
Le prove sono finalizzate per ottenere una valutazione complessiva della preparazione dello studente Il voto è attribuito secondo il seguente schema:
Non approvato: lo studente non ha acquisito i concetti di base e non è in grado di rispondere ad almeno il 60% delle domande né di svolgere gli esercizi teorici e pratici.
18-20: lo studente dimostra una padronanza appena sufficiente dei concetti base, e/o riesce ad impostare gli esercizi teorico/pratici con molta difficoltà e con vari errori.
21-24: lo studente dimostra una padronanza minima dei concetti di base, le sue capacità di collegamento dei contenuti sono modeste, riesce a risolvere semplici esercizi.
25-27: lo studente dimostra una buona padronanza dei contenuti del corso, le sue capacità di collegamento dei contenuti sono buone, risolve gli esercizi con pochi errori.
28-30 e lode: lo studente ha acquisito tutti i contenuti del corso ed è in grado di padroneggiarli compiutamente e di collegarli con spirito critico; risolve gli esercizi in modo completo e senza errori di particolare rilievo.
Progetto a) Dato un Data Set Tabulare multidimensionale con tipi di dati eterogenei produrre un report con grafici in varie modalità che consentano di comprendere visualmente le principali proprietà statistico/descrittive del Data Set. Verranno forniti alcuni "tempalte" del report grafico desiderato.
Progetto b) Preso un operatore base di geometria differenziale discreta su mesh 3d (assegnato dal docente), sviluppare in Python un operatore all'interno di Blender che lo implementi e ne mostri il risultato visuale.Esempi verranno forniti all'inizio del corso.
Progetto c) Realizzare una rete di Geometry nodes in Blender che implementi un task di modellazione e animazione parametrica di un oggetto complesso a scelta dello studente. Esempi verranno forniti all'inizio del corso.