Spiegazioni dell'esercitazione del 28 Ottobre 2005

 

Scopo dell’esercitazione: scopo dell’esercitazione è di completare ed animare un versione stilizzata ma abbastanza completa di una mano con tutti i punti di snodo principali.

 

Nota bene: Tutte le operazioni di disegno e di modifica delle matrici devono (preferibilmente) essere effettuate nella Display Function, chiamata display nel nostro caso. Nelle altre funzioni, dovete soltanto cambiare i valori dei parametri che vengono usati dalla Display Function.

 

Cose da fare:

1)      Copiate in una vostra directory il file mano.c contenuto nella directory del corso con l’esercitazione di oggi

 

2)      Avviate il Visual C++, caricate il file mano.c, compilatelo ed eseguitelo.
Verranno visualizzati i seguenti elementi:
- il palmo della mano (blu);
- un pollice (rosso);
- un dito (verde);
- gli assi cartesiani: x (rosso), y (verde), z (blu);

 

3)      Analizzate il codice di mano.c e cercate di comprenderne il funzionamento. Partite dalla funzione display e leggete tutte le funzioni che vengono invocate per disegnare i vari oggetti con le relative componenti;

 

4)      Modificate il file mano.c componendo la mano dalle primitive palmo, pollice e dito. Usate lo schema già scritto nella funzione mano. Si deve posizionare il pollice vicino al palmo e poi si deve invocare quattro volte la funzione dito cambiando ogni volta la posizione in modo opportuno.

 

5)      Realizzare l’animazione che a partire dalla mano chiusa (tutti gli angoli delle falangi = 90.0) apre la mano un dito per volta contando fino a 5. Per fare questo esaminate il funzionamento di glutTimerFunc e della relativa callback temporizzato

 

6)      Inserite una seconda mano e realizzate l’animazione che a partire da entrambi le mani chiuse (tutti gli angoli = 90.0) apre un dito per volta contando fino a 10.

 

Documentazione: Tutta la documentazione su OpenGL è disponibile nella directory  del corso. Questa contiene i tre files:

·        glspec15.pdf

·        glu1.3.pdf

·        glut-3-spec.pdf