La presentazione è in caricamento. Aspetta per favore

La presentazione è in caricamento. Aspetta per favore

Sistemi di riferimento. Trasformazioni –Le trasformazioni sono rappresentate da matrici 4x4 (coordinate omogenee) –Applicazione delle trasformazioni come.

Presentazioni simili


Presentazione sul tema: "Sistemi di riferimento. Trasformazioni –Le trasformazioni sono rappresentate da matrici 4x4 (coordinate omogenee) –Applicazione delle trasformazioni come."— Transcript della presentazione:

1 Sistemi di riferimento

2 Trasformazioni –Le trasformazioni sono rappresentate da matrici 4x4 (coordinate omogenee) –Applicazione delle trasformazioni come moltiplicazione di una matrice per un vettore –Viene mantenuto uno stack delle matrici utilizzate per le trasformazioni

3 Trasformazioni –La composizione di trasformazioni equivale alla moltiplicazione delle rispettive matrici –La moltiplicazione di matrici non è commutativa. Quindi l’ordine con cui vengono applicate le trasformazioni è importante –Ordine corretto M=T(R(S)) corrispondente alle chiamate: glTranslate(…); glRotate(…); glScale(…);

4 Trasformazioni void glLoadIdentity(); void glTranslate{fd} (TYPE x, TYPE y, TYPE z); void glRotate{fd} (TYPE angle, TYPE x, TYPE y, TYPE z); void glScale{fd} (TYPE x, TYPE y, TYPE z);

5 Gestione delle Matrici void glLoadIdentity( void ) –Imposta la matrice corrente all’identità

6 Gestione delle Matrici void glPushMatrix( void ) void glPopMatrix ( void ) –Gestiscono lo stack delle matrici –glPushMatrix inserisce la matrice corrente nello stack duplicandola –Lo stack delle matrici può essere utilizzato in maniera gerarchica

7 Gestione delle Matrici void glLoadMatrixd(GLdouble *m) void glLoadMatrixf(GLfloat *m) Rimpiazza la matrice corrente con la matrice definita tramite l’array void glMultMatrixd(const GLdouble *m) void glMultMatrixf(const GLfloat *m) Moltiplica la matrice corrente con la matrice definita tramite l’array

8 Gestione delle Matrici I parametri delle funzioni glLoadMatrix e glMultMatrixd sono definiti come array di 16 elementi La matrice viene definita nell’array utilizzando una notazione column-major order

9 Trasformazione di vista - LookAt void gluLookAt( GLdouble eyeX, GLdouble eyeY, GLdouble eyeZ, GLdouble centerX, GLdouble centerY, GLdouble centerZ, GLdouble upX, GLdouble upY, GLdouble upZ ); Utilizzata per posizionare intuitivamente la camera all’interno del mondo tridimensionale Crea una matrice che rappresenta le trasfromazioni necessarie a posizionare la camera utilizzando i 9 parametri passati come argomento

10 Trasformazione di vista - LookAt


Scaricare ppt "Sistemi di riferimento. Trasformazioni –Le trasformazioni sono rappresentate da matrici 4x4 (coordinate omogenee) –Applicazione delle trasformazioni come."

Presentazioni simili


Annunci Google