Daniele Marini Con contributi di Maurizio Rossi

Slides:



Advertisements
Presentazioni simili
Calcolo vettoriale E.F. Orsega – Università Ca’ Foscari di Venezia
Advertisements

Momento di un vettore rispetto ad un polo fisso
Capitolo 4 Trasformazioni Geometriche
Geometria analitica dello spazio
COORDINATE POLARI Sia P ha coordinate cartesiane
Cinematica diretta Un manipolatore è costituito da un insieme di corpi rigidi (bracci) connessi in cascata tramite coppie cinematiche (giunti). Si assume.
Cinematica del braccio di un robot
Scalari e vettori In fisica si lavora con due tipi di grandezze: le grandezze scalari e le grandezze vettoriali. Le grandezze scalari sono quelle grandezze.
Definizione e caratteristiche
a’ = f(a) Definizione e proprietà
Un manipolatore è costituito da un insieme di corpi rigidi (bracci) connessi in cascata tramite coppie cinematiche (giunti) a formare una catena cinematica.
Cinematica differenziale
Costruzione di Interfacce Lezione 4 Sistemi di riferimento e trasformazioni
Costruzione di Interfacce Lezione 5 Trasformazioni Affini
Costruzione di Interfacce Lezione 4 Nozioni di geometria per la grafica
Costruzione di Interfacce Lezione 4 Geometria per la grafica
Costruzione di Interfacce Lezione 5 Trasformazioni Affini
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2005/06 Lezione.
Computer Graphics Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2006/07 Lezione.
Sistemi Multimediali II Marco Tarini Università dellInsubria Facoltà di Scienze MFN di Varese Corso di Laurea in Informatica Anno Accademico 2004/05 Lezione.
Rotazione di un corpo rigido attorno ad un asse fisso
Sistema di riferimento su una retta
Moti del corpo rigido 2) Rotazione 3) Rototraslazione 1) Traslazione
Applicazioni progettuali di grafica computerizzata a.a. 2008/2009 Trasformazioni affini.
Isometrie del piano In geometria, si definisce isometria
Le trasformazioni del piano
Lezione 9 Invarianze e leggi di conservazione: definizioni generali
Trasformazioni 2D e 3D Daniele Marini.
Vettori Con che verso a Verso
Lavorare con le matrici in OGL
Spazi vettoriali astratti Somma e prodotto di n-ple Struttura di R n.
MOMENTI DI SECONDO ORDINE
Fondamenti di Robotica
Prodotto vettoriale Dati due vettori
Le proiezioni e la prospettiva
Le trasformazioni Daniele Marini.
Un modello per interpretare, interagire e descrivere la realtà
Le proiezioni e la prospettiva
Le proiezioni e la prospettiva
Testi e dispense consigliati
Una ruota di 25cm di raggio è costituita da un cerchio sottile di massa trascurabile sul quale è inserita rigidamente una pallina, assimilabile ad un punto.
il moto rotatorio di un corpo rigido
Controllare le proiezioni
Corso Di Programmazione Grafica aa 2007/2008
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Intersezioni e distanze
Quaternioni (continua)
Trasformazioni Daniele Marini.
Corso Di Programmazione Grafica
Rotazioni e quaternioni
Corso Di Programmazione Grafica aa2006/2007
Controllare la prospettiva
Le trasformazioni Daniele Marini Corso Di Programmazione Grafica aa 2005/2006.
Vettori dello spazio bidimensionale (R 2)
MEMORANDUM 02 PROIEZIONE CENTRALE, RIBALTAMENTO E OMOLOGIA DEL PIANO:
G.M. - Edile A 2002/03 Una sferetta P viene posta in una conca semisferica di raggio R in un punto diverso da quello più basso. La sferetta rotola e l’angolo.
MATEMATICA PER L’ECONOMIA e METODI QUANTITATIVI PER LA FINANZA a. a
Prof. Giovanni Ianne I vettori.
1 Lezione XI Avviare la presentazione col tasto “Invio”
La geometria delle trasformazioni
AvvioEsci ITC Soverato ITC Soverato Proff. Santoro-Mezzotero Le trasformazioni geometriche nel piano.
I GRAFICI – INPUT 1.
A.s Lezioni a cura del Prof.Giovanni Calò Le trasformazioni geometriche Un trasformazione geometrica t è una corrispondenza biunivoca che fa.
L’iperbole l'iperbole1IISS "Medi" - Galatone prof. Giuseppe Frassanito.
a’ = f(a) Definizione e proprietà
angoli orientati negativamente se la rotazione avviene in verso orario
Luoghi di punti In geometria il termine
TRASFORMAZIONI GEOMETRICHE.
Prof. Cerulli – Dott. Carrabs
Transcript della presentazione:

Daniele Marini Con contributi di Maurizio Rossi Trasformazioni 2D e 3D Daniele Marini Con contributi di Maurizio Rossi

L’ambiente per le trasformazioni Spazio affine Coordinate omogenee Matrici

Richiami di geometria affine - Spazio vettoriale lineare: operazioni di somma tra vettori Campo scalare; operazione prodotto vettore x scalare - Spazio affine: è costituito da un insieme di punti, uno spazio vettoriale associato e due operazioni: addizione vettore + punto; sottrazione punto-punto

Richiami di geometria affine

Orientamento nello spazio affine lo spazio può essere orientato in due modi: mano sinistra: avvolgete la mano all’asse x e puntate il pollice verso x a sinistra, z (medio) viene verso di voi e y (indice) va verso l’alto mano destra: avvolgete la mano all’asse x e puntate il pollice verso x a destra, z (medio) viene verso di voi e y (indice) va verso l’alto questo definisce il world coordinate system in cui sono definiti la scena

Coordinate omogenee Spazio delle classi di equivalenza: ogni punto in coordinate cartesiane 3D corrisponde a infiniti punti nello spazio omogeneo 4D che differiscono solo per un fattore moltiplicativo w: Il passaggio dallo spazio omogeneo allo spazio 3D: solitamente si sceglie w=1

Coordinate omogenee Lo spazio 3D può anche essere considerato come lo spazio omogeneo del piano 2D:ogni punto nel piano 2D corrisponde a infiniti punti nello spazio omogeneo 3D che differiscono solo per un fattore moltiplicativo w:

Matrici

Trasformazione affine una trasformazione affine preserva una combinazione baricentrica la combinazione baricentrica è una somma pesata di punti dello spazio affine

Trasformazioni affini rappresentate con matrici più trasformazioni possono essere combinate moltiplicando le matrici tra loro, creando una sola trasformazione una trasformazione si ottiene in generale combinando trasformazioni lineari (rotazioni, scala e shear) seguite da una traslazione

Definizione degli oggetti gli oggetti possono essere definiti in un proprio sistema di riferimento locale: i vertici dell’oggetto sono definiti rispetto a un orientamento proprio e naturale un oggetto complesso può essere decomposto in elementi più semplici col proprio riferimento locale e in seguito assemblato aggregando oggetti elementari un oggetto può essere istanziato più volte per assemblare e istanziare un oggetto si applicano le trasformazioni affini, che cambiano il riferimento locale

La trasformazione affine conserva le rette Possiamo descrivere un poliedro con i suoi vertici, facce e spigoli, questa proprietà ci garantisce che è necessario trasformare soltanto i vertici per trasformare tutto il poliedro

Trasformare gli oggetti le trasformazioni agiscono sui vertici dell’oggetto denotiamo i vertici (punti) come vettore colonna v R, T e S sono operatori di rotazione, traslazione e scala il punto trasformato è quindi: v’ = v + T traslazione, v’ = S v scala, v’ = R v rotazione

traslazione scala

Due parametri per la rotazione: angolo, centro di rotazione rotazione attorno all’origine rotazione attorno al centro dell’oggetto: prima traslare poi ruotare poi contro-traslare

La rotazione nel piano x=r cosa b y= r sin a a (x’,y’) x=r cosa (x,y) b y= r sin a a x’=r cos(a+b) = r cos a cos b - r sin a sin b = x cos b - y sin b y’=r sin(a+b) = r cos a sin b + r sin a cos b = x sin b + y cos b

Traslazione, Rotazione e Scala sul piano sono espresse come trasformazioni nello spazio di coordinate omogenee 3D. Il vettore trasformato si ottiene pre-moltiplicando il vettore originale per la matrice di trasformazione: v’=T v

Traslazione

Scala

Rotazione la matrice di rotazione ha determinante pari a 1

Trasformazioni conformi Preservano relazioni angolari Considerare punti P come numeri complessi z=x+iy Anamorfosi conica: z’=r/z* (in cui z*=x-iy è il complesso coniugato di z) I punti P interni al cerchio sono proiettati all’esterno in P’ a distanza r/d e riflessi rispetto all’asse x e viceversa.

Trasformazioni di Mœbius (Omografiche) z’ = (az+b)/(cz+d) con: ad-bc ≠ 0 al variare dei coefficienti complessi a,b,c,d si hanno: scala, rotazione, traslazione, inversione, ...

3D Ambiente: spazio affine, coordinate omogenee 4D Matrici, prodotto vettore per matrice

Traslazione, Rotazione e Scala espresse come trasformazioni nello spazio di coordinate omogenee 4D come prodotto tra matrici coord. cartesiane coord. omogenee

Scala coord. cartesiane coord. omogenee

Scala

Matrici di rotazione occorre specificare un asse di rotazione: attorno a x, y o z:

ritroviamo la rotazione sul piano z=0 ! coord. cartesiane coord. omogenee

Trasformazioni inverse Denotiamo le inverse come: T-1, S-1, R-1. La traslazione inversa si ottiene negando i coefficienti di traslazione La scala inversa si ottiene prendendo il reciproco dei coefficienti La rotazione inversa si ottiene negando l’angolo di rotazione.

Composizione di trasformazioni Si possono applicare trasformazioni in successione, moltiplicando in ordine opportuno le matrici (associatività) v”=M2M1v = M2(M1v) =M2v’ la trasf. M1 viene applicata per prima! ricordiamo che il prodotto di rotazioni non è commutativo: R2R1 ≠ R1R2

Possiamo applicare a ogni punto separatamente le matrici: Oppure calcolare prima la matrice M: A B C q p M=C(B(A)) M q p

Esempio: rotazione Ө attorno a un punto p e parallela a un asse Traslare l’oggetto nell’origine, i coefficienti della traslazione T sono riferiti al punto p Ruotare attorno all’origine di un angolo  Traslare inversamente nel punto p M=T-1RT

Combiniamo le tre trasformazioni in un’unica matrice:

Rotazione attorno a un punto e un asse generico

Struttura di una generica matrice di trasformazione In generale una trasformazione composta è organizzata: rotazione traslazione

Cambiamento di riferimento Le trasformazioni si possono considerare applicate agli oggetti (punti in un s.d.r.) o come cambiamento di riferimento In questo caso si esprimono i punti p in un nuovo s.d.r. p’; es. traslazione:

Le trasformazioni per modellare Da oggetti prototipo (modelli) a loro “istanze” Tre trasformazioni nell’ordine: Scala Rotazione Traslazione Minst=T(R(S))

Accumulare trasformazioni Per modellare una scena complessa si possono accumulare trasformazioni La scena è organizzata in una scene graph Durante la modellazione si creano matrici di istanza, applicate a ogni singolo oggetto Oggetti organizzati in gerarchia vengono raccolti e trasformati con nuove matrici che si accumulano sullo stack

Stack di matrici Attraversando la struttura della scena si cambiano le matrici di trasformazione gestendo lo stack Nei moderni sistemi real-time le operazioni sulle matrici di trasformazione sono gestite dall’hardware apposito nella pipeline di rendering

Classi di trasformazioni