RIPASSO PRODOTTO TRA MATRICI
- MOLTIPLICAZIONE TRA MATRICI: data una posizione a_r,c di una matrice prodotto tra le martricei A e B, il valore associato è pari alla combinazione lineare tra la riga in posizione r della prima matrice a la colonna in posizione c della seconda matrice
- diensione della matrice prodotto: r_totA x C_totB
Vediamo un pool di trasformazioni, perchè correlate ala prima fase della rasterizzazione
DEFINIZIONE DI TRASFORMAZIONE SPAZIALE
- un modello 3d si compone di punti e vettori come elementi di base (questi possono poi essere voxel, nuvole…) ognuno di essi ha delle coordinate, uno ad uno entrano nella funzione per trasformare l’oggetto nello spazio
VETTORI
TRASLAZIONE (Somma)
- trasla solo i punti non i vettori, quelli rimangon invariati
SCALATURA (prodotto)
- scalatura isotropica = mantiene le proporzioni del modello di partenza
- sia punti sia vettori sono scalati, tranne il punto d’origine
- ogni oggetto ha la sua origine
- scalatura anisotropica
- anisotropica quando i fattori si scalatura non sono identici: deforma l’oggetto pk le proporzioni non sono mantenute
rotazione (sull’origine) di 90° attorno all’asse z
- la cui coordinata rimane quindi invariata per ogni punto dell’oggetto
- punto di origine invariata
- sento antiorario
- senso orario
- osservazioni 2d, 3d
- scambi x e y tra loto e metti il meno ad uno dei 2
- spazio 2D → rotazione attorno all’origine
- spazio 3D → rotazione attorno all’asse Z
coordinate omogenee (o affini)
ATTENTO ALLA TEMINOLOGIA
- COORDINATE AFFINI = coordinate cartesiane + coordinata booleana per indicare se è punto (1) o vettore (0)
- TRASFORMAZIONI AFFINI = matrici 4x4 (pk le prime 3 colonne e righe lavorano sulle coordinate cartesiane, il 4° definisce il vettore booleano
MATRICI p.1
- le stesse trasformazioni di prima ma in dorma matriciale
MATRICE DI SCALING (fattore di scalatura costante espresso in forma matricizale)
- memorizza il pattern pk è equivalente al moltiplicare per uno scalare
- in pratica esprime l e trasformazioni viste precedentemente nella matrice di trasformazione affine (matrice 4x4)
MATRICE DI ROTAZIONE (memorizzare pattern matrice)
- molto interessante lo studio mirato di dove inserire -1 all’interno della matrice per avere x = -y e viceversa
MATRICE DI TRASLAZIONE
- posiziona tk nella matrice, in modo stidiato affinchè i valori della matrice di trasformazione si sommi al vettori si partenza
matrice di simmetria speculare (moltiplico z per -1)
- x e y sno invariati, eppure l’immagine sembra differente in x e y→ -z = graficamente ho per ogni punto, la rappresentazione
- alla stessa distanza da O
- simmetrica a quella precedente (come qs funnzione di cui metto il segno meno (l’immagine nn è differente in x ed y, è riflessa)
- rotazione di 90° sull’asse z
sommario
MATRICI p.2
determinante ha significato geometrico
- non chiede di sapere come si calcola il determinante
il determinate
- influenza il volume
- causa riflessione speculare (l’asse z è in direzione della normale)
proprietà e ottimizzazione
- proprietà
- scalabilità: unisco tutte le matrici di trasformazione, moltiplicandole tra loro
invertire la trasformazione
- la matrice inversa ad una matrice di trasformazione permette di ritornare alla situazione spaziale precedente
- COME SI CALCOLA?
si calcola diversamente in base al tipo di matrice, ma nn è casuale: in base all’operazione che riproduco nel vettore risultante (prodotto, somma,…) devo solo usare l’operazione inversa
- scalatura
- traslazione
- rotazione
quando una matrice 4x4 è affine (struttura)
- M → si applica sia a vettori, sia a punti
- negli esempi visti creava sempre un prodotto nel vettore risultane nella riga corrispondente (pk i valori erano impostati in modo da avvere solo un addento)
- t → essendo l’ultima colonna si moltiplica con il quarto vettore e si applica solo ai punti
- pk il vettore ha la coordinata affine a 0
deficit di rango → significato geometrico
non chiede di saper calcolare il rango
- deficit di rango = rango massimo (4 se matrice 4x4) - rango effettivo
- Cos'è il rango di una matrice?
- 3 = perdo z → piatto
- 2: perdo y → linea
- 1: perdo x → punto
Il rango di una matrice, in termini geometrici, ci dice quante dimensioni dello spazio vengono “coperte” dalla trasformazione rappresentata dalla matrice.
Per una matrice 4×4 (usata ad esempio in trasformazioni 3D omogenee → mantengono le prposrzioni del modello 3d), il rango massimo è 4. Ma se il rango è minore, significa che alcune dimensioni sono eliminate.