Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la...
-
Upload
doannguyet -
Category
Documents
-
view
223 -
download
1
Transcript of Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la...
![Page 1: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/1.jpg)
Informatica GraficaUn’introduzione
![Page 2: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/2.jpg)
Rappresentare la Geometria
Operabile da metodi di calcolo automatici
“Grafica Vettoriale”
Partiamo dalla rappresentazione di un punto ....
![Page 3: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/3.jpg)
Spazi VettorialeSPAZI VETTORIALI – definizione
Uno spazio vettoriale V su un campo F è un insieme con due
operazioni
+ : V ! V " V (addizione)
· : F ! V " V (prodotto per uno scalare)
tali che, per ogni u,v,w # V e per ogni !," # F :
v + w = w + v; (commutatività dell’add.)
u + (v + w) = (u + v) + w; (associatività dell’add.)
esiste 0 # V tale che v + 0 = v; (elemento neutro dell’add.)
esiste $v # V tale che v + ($v) = 0; (inversa dell’add.)
! · (v + w) = ! · v + ! · w; (distr. dell’add. rispetto al prod.)
(! + ") · v = ! · v + ! · v; (distr. del prod. rispetto all’add.)
! · (" · v) = (!") · v; (assoc. del prod.)
1 · v = v. (elemento neutro del prod.)
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.5/??
![Page 4: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/4.jpg)
Combinazione LineareSPAZI VETTORIALI — combinazione lineare
siano v1,v2, . . . ,vn ! V e !1,!2, . . . ,!n ! F . Il vettore
!1v1 + · · · + !nvn ! V
è detto combinazione lineare dei vettori v1,v2, . . . ,vn
l’insieme di tutte le combinazioni lineari degli elementi di un insieme
S " V è un sottospazio di V
tale sottospazio è detto generato da S ed è denotato come linS
un insieme di vettori S è linearmente indipendente quando nessuno di
essi può essere generato dagli altri
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.6/??
![Page 5: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/5.jpg)
BasiSPAZI VETTORIALI – basi e coordinate
un insieme minimale di vettori indipendenti {ei} che genera uno
spazio vettoriale V è detto base
il numero d di vettori di una (ogni) base di V è detto dimensione dello
spazio
qualunque elemento v ! V si può rappresentare in modo unico come
combinazione lineare degli elementi di una base {ei} fissata
v =d
!
i=1
viei
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.7/??
![Page 6: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/6.jpg)
CoordinateSPAZI VETTORIALI – basi e coordinate
il concetto di base, ovvero di sottoinsieme massimale di vettori
linearmente indipendenti, è probabilmente il più importante quando si
lavora con spazi vettoriali
ogni elemento di uno spazio vettoriale può essere rappresentato in
modo unico come combinazione lineare degli elementi di una base.
questo conduce a parametrizzare lo spazio, cioè a rappresentarne
ogni elemento con una sequenza ordinata di scalari, le coordinate
dell’elemento rispetto alla base fissata.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.8/??
![Page 7: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/7.jpg)
PuntiSPAZI AFFINI – definizione
uno spazio affine è un insieme di punti dove lo spostamento tra i punti
x e y è ottenuto sommando un vettore v al punto x
un insieme A di punti è detto uno spazio affine modellato sullo spazio
vettoriale V se esiste una funzione, detta azione affine
A! V " A; (x,v) #" x + v, t.c.
1. (x + v) + w = x + (v + w) per ogni x $ A e v,w $ V ;
2. x + 0 = x per ogni x $ A, dove 0 $ V è il vettore nullo;
3. per ogni coppia x,y $ A esiste un unico (y % x) $ V tale che
x + (y % x) = y.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.15/??
![Page 8: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/8.jpg)
Vettori visione GraficaSPAZI AFFINI
somma e differenza di vettori (regola del parallelogramma)
u
v
u + v
- v u - vu
vu + v
x
x + u
(x + u) + v
associatività dello spostamento (somma di punto e vettore) in uno
spazio affine
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.16/??
![Page 9: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/9.jpg)
Combinazioni AffiniCOMBINAZIONI AFFINI
Siano dati i punti x0, . . . ,xd ! En e gli scalari !0, . . . ,!d ! R, con
!0 + · · · + !d = 1
il punto
!0x0 + · · · + !dxd =d
!
i=0
!ixi
è detto una combinazione affine di tali punti
l’insieme di tutte le combinazioni affini di un insieme di punti R è detto
guscio affine dei punti
un insieme S di punti è detto affinemente indipendente se nessuno di
essi apprtiene al guscio affine degli altri
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.20/??
![Page 10: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/10.jpg)
RetteCOMBINAZIONI AFFINI – retta per 2 punti
il guscio affine di due punti x0,x1 ! Ed affinemente indipendenti è la
retta per essi
aff {x0,x1} = {x | x = !0x0 + !1x1, !0 + !1 = 1}
la retta per due punti si può scrivere anche
{x | x = (1 " !1)x0 + !1x1, !1 ! R}
ovvero
{x | x = x0 + !(x1 " x0), ! ! R}
ovvero
aff {x0,x1} = x0 + lin {x1 " x0}
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.21/??
![Page 11: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/11.jpg)
PianiCOMBINAZIONI AFFINI – piano per 3 punti
il guscio affine di tre punti x0,x1,x2 ∈ Ed affinemente indipendenti è il
piano cui appartengono
aff {x0,x1,x2} = {x | x = α0x0 + α1x1 + α2x2, α0 + α1 + α2 = 1}
il piano per tre punti si può scrivere anche
{x | x = (1 − α1 − α2)x0 + α1x1 + α2x2, α1,α2 ∈ R}
ovvero
{x | x = x0 + α1(x1 − x0) + α2(x2 − x0), α1,α2 ∈ R}
ovvero
aff {x0,x1,x2} = x0 + lin {x1 − x0,x2 − x0}Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.22/??
![Page 12: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/12.jpg)
(Sotto)Spazio e DimensioniSPAZI VETTORIALI — sottospazio
si dice che U ⊂ V è un sottospazio di V se (U ,+, ·) è uno spazio
vettoriale rispetto alle stesse operazioni
La dimensione di un sottospazio U ⊂ V è pari al numero minimo di
elementi generatori
La codimensione di un sottospazio U ⊂ V è definita come
dimV − dimU .
l’intersezione di sottospazi è un sottospazio
la combinazione lineare di sottospazi è un sottospazio
sottospazi di R3 sono i piani e le rette per l’origine, e l’insieme {0}
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.9/??
![Page 13: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/13.jpg)
Combinazione Convessa
![Page 14: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/14.jpg)
Segmenti, Triangoli, ...
COMBINAZIONI CONVESSE – guscio convesso
il guscio convesso di 2 punti affinemente indipendenti è il
segmento di cui sono estremi
il guscio convesso di 3 punti affinemente indipendenti è il
triangolo di cui sono vertici
il guscio convesso di 4 punti affinemente indipendenti è il
tetraedro di cui sono vertici
in E3 non ci possono essere più di 4 punti affinemente indipendenti
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.24/??
ed altri simplessi
![Page 15: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/15.jpg)
TrasformazioniTRASFORMAZIONI E TENSORI – trasformazione lineare
Una trasformazione lineare T : V1 ! V2 è una funzione tra spazi
vettoriali che preserva le combinazioni lineari:
T(!1v1 + · · · + !nvn) = !1Tv1 + · · · + !nTvn.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.6/43
TRASFORMAZIONI E TENSORI – trasformazione affine
Una trasformazione affine T : E1 ! E2 è una funzione tra spazi affini
che preserva l’azione affine:
T(x + !(y " x)) = Tx + !(Ty " Tx).
Una trasformazione affine si estende con naturalezza allo spazio
vettoriale sottostante, definendo
Tv = Ty " Tx, dove v = y " x.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.7/43
![Page 16: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/16.jpg)
Tensori
![Page 17: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/17.jpg)
Prodotto Tensoree Scalare
Prodotto Tensore: u ! v = T
Prodotto Scalare: u · v = a
1
PRODOTTO TENSORE – di vettori
Il prodotto tensore di due vettori a,b ! V è il tensore a " b ! linV che
mappa un vettore arbitrario v nel vettore (b · v)a.
Più formalmente:
" : V2 # linV : (a,b) $# a " b
tale che, per ogni v ! V
(a " b)v = (b · v)a.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.3/43
![Page 18: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/18.jpg)
PRODOTTO TENSORE – decomposizione direzionale
siano dati e,v ! V , con e unitario. Il tensore e " e applicato a v
fornisce la proiezione di v nella direzione di e:
(e " e)v = (e · v)e.
il tensore I # e " e, applicato a v, fornisce
(I # e " e)v = v # (e · v)e,
la proiezione di v nel sottospazio lineare ortogonale a e
e
v
(I - e e) v!
(e e) v!
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.4/43
Prodotto Tensore: u ! v = T
Prodotto Scalare: u · v = a
u · u = |u|2
Vettori Ortogonali: u · v = 0
1
![Page 19: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/19.jpg)
Composizione TensoriTRASFORMAZIONI E TENSORI
il prodotto dei tensori S,T ! linV è definito come composizione di
funzioni:
ST = S " T.
Quindi (ST)v = S(Tv) per ogni v ! V .
in PLaSM, le trasformazioni lineari ed affini invertibili sono
rappresentate, in un modo molto naturale, come funzioni. Pertanto il
prodotto di tensori è dato dalla composizione di funzioni
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.9/43
![Page 20: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/20.jpg)
Spazio Euclideo
![Page 21: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/21.jpg)
Tensori -> MatriciCALCOLO MATRICIALE
quando sia data una base ortonormale (ei) in V , i componenti Sij di
un tensore S ! linV sono definiti come
Sij = ei · Sej
per questa definizione, il vettore v = Su può essere rappresentato per
componenti rispetto alla base (ei) come (vi), con
vi =!
j
Sijuj
in altri termini, data una base, un tensore è rappresentato da una
matrice
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.10/43
![Page 22: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/22.jpg)
Tensori -> Matrici
![Page 23: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/23.jpg)
Coordinate OmogeneeCOORDINATE OMOGENEE
definiscono una corrispondenza biunivoca tra l’insieme dei punti del
piano cartesiano e l’insieme delle rette per l’origine o dello spazio 3D
x, X
y, Y
W
p = (x, y)
p = (X, Y, 1)
Coordinate omogenee del piano 2D
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.14/43
![Page 24: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/24.jpg)
Coordinate OmogeneeCOORDINATE OMOGENEE
in tale corrispondenza E2 ! E3, ogni punto (x, y)T " E2 è
rappresentato come (X,Y,W )T " E3, tale che x = X/W , y = Y/W ,
con W #= 0
il punto (x, y)T del piano viene ad essere rappresentato da ogni
vettore del tipo !(X,Y, 1)T , con ! " R e ! #= 0.
per andare dal vettore omogeneo p! = (X,Y,W ) al suo
corrispondente punto cartesiano p = (x, y) saranno necessarie due
divisioni per la coordinata omogenea W .
per evitare questo calcolo si associa al punto (x, y)T del piano la
rappresentazione omogenea normalizzata (X,Y, 1)T , per la quale
x = X, y = YRoma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.15/43
![Page 25: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/25.jpg)
TraslazioniTRASLAZIONE
una traslazione del piano è una funzione T : E2 ! E2, dove un vettore
fisso t = (m,n)T è sommato ad ogni punto p = (x, y)T , così che
p! = T(p) = p + t =
!
"
x
y
#
$ +
!
"
m
n
#
$ =
!
"
x + m
y + n
#
$.
xx*
y y*
pp*
m
nt
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.16/43
![Page 26: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/26.jpg)
TraslazioniTRASLAZIONE
lo spostamento dell’origine implica che la traslazione non sia una
trasformazione lineare, e pertanto che non possa essere
rappresentata in coordinate cartesiane con una matrice
la traslazione diventa lineare se usiamo coordinate omogenee. Infatti,
la traslazione che mappa un punto p in
p! = p + t,
con t = (m,n)T , diventa, usando coordinate omogenee:
p! = T p =
!
"
"
#
1 0 m
0 1 n
0 0 1
$
%
%
&
!
"
"
#
x
y
1
$
%
%
&
=
!
"
"
#
x + m
y + n
1
$
%
%
&
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.17/43
![Page 27: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/27.jpg)
ScalamentoSCALAMENTO – definizione
uno scalamento S è un tensore di trasformazione rappresentato da
una matrice diagonale con coefficienti positivi, così da avere:
p! = S p =
!
"
a 0
0 b
#
$
!
"
x
y
#
$ =
!
"
ax
by
#
$, a, b > 0
se a, b > 1, allora S produce un dilatazione
se a = b = 1, allora S è un tensore identità
se a, b < 1, allora S produce una compressione
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.19/43
![Page 28: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/28.jpg)
ScalamentoSCALAMENTO – scalamenti elementari
p! = Sx p =
!
"
a 0
0 1
#
$
!
"
x
y
#
$ =
!
"
ax
y
#
$
x
x*
p p*
x
x*
p
p*
*y y *y y
p! = Sy p =
!
"
1 0
0 b
#
$
!
"
x
y
#
$ =
!
"
x
by
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.20/43
![Page 29: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/29.jpg)
Scalamento SCALAMENTO – coordinate omogenee
la matrice normalizzata omogenea S! ! R33 del tensore di scala 2D
può essere derivata facilmente dalla corrispondente matrice non
omogenea S ! R22, aggiungendo una riga e una colonna unitarie:
p" = S!p =
!
"
S 0
0 1
#
$
!
%
%
"
x
y
1
#
&
&
$
=
!
%
%
"
a 0 0
0 b 0
0 0 1
#
&
&
$
!
%
%
"
x
y
1
#
&
&
$
=
!
%
%
"
ax
by
1
#
&
&
$
.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.21/43
![Page 30: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/30.jpg)
T e S in 3D
![Page 31: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/31.jpg)
RiflessioneRIFLESSIONE – definizione
trasformazione lineare definita da una matrice che differisce
dall’identità perché uno dei coefficienti diagonali è pari a !1
due riflessioni elementari Mx e My nel piano E2
Mx =
!
"
!1 0
0 1
#
$, My =
!
"
1 0
0 !1
#
$
l’effetto di un tensore di riflessione è quello di cambiare di segno una
sola delle coordinate dei punti
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.23/43
![Page 32: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/32.jpg)
RiflessioneRIFLESSIONE – rappresentazione omogenea
la rappresentazione omogenea normalizzata di tali trasformazioni si
ottiene aggiungendo una riga e colonna unitarie alle loro matrici
M!
x =
!
"
Mx 0
0 1
#
$, M!
y =
!
"
My 0
0 1
#
$
xx*
y y *
p
p*
xx*
y y *
pp*
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.24/43
![Page 33: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/33.jpg)
Orientamento Assi
x
y
z
x
y
z
Sistema destrorso sistema sinistrorso
![Page 34: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/34.jpg)
RotazioneROTAZIONE elementare del piano
più esplicitamente:
!
"
cos ! ! sin !
sin ! cos !
#
$ = R
!
"
1 0
0 1
#
$,
x
y*
1e*e2
x*
y
e1
2e*
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.27/43
![Page 35: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/35.jpg)
RotazioneROTAZIONE – in coordinate omogenee
la matrice omogenea normalizzata R! ! linR3 di una rotazione del
piano si ottiene dalla matrice non omogenea R ! linR2
p" = R!p =
!
"
R 0
0 1
#
$
!
%
%
"
x
y
1
#
&
&
$
=
!
%
%
"
x cos ! + y sin !
"x sin ! + y cos !
1
#
&
&
$
nel modo usuale, orlando la matrice originaria con l’identità ...
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.28/43
![Page 36: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/36.jpg)
Rotazioni in 3D
![Page 37: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/37.jpg)
DeformazioniSCORRIMENTO – elementare
piano visto come fascio di rette parallele a un asse coordinato
uno scorrimento elementare 2D è un tensore che mappa i punti di
ogni retta in altri punti della stessa retta, in modo tale che:
tutti i punti di ogni retta traslino dello stesso vettore
solo l’asse coordinato parallelo al fascio resti fisso
la traslazione di ogni retta sia proporzionale alla sua distanza da
tale asse coordinato
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.31/43
![Page 38: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/38.jpg)
DeformazioniSCORRIMENTO
un tensore di scorrimento elementare non muta una coordinata,
mentre l’altra cambia linearmente con il valore della coordinata fissa
p! = Hx p =
2
4
1 0
a 1
3
5
2
4
x
y
3
5 =
2
4
x
y + ax
3
5,
p! = Hy p =
2
4
1 b
0 1
3
5
2
4
x
y
3
5 =
2
4
x + by
y
3
5.
x
x*
y y*
p*
1
a
p
x
x*
y y* x = by
y = ax b1
azione diHx, normale all’asse x, eHy , normale all’asse yRoma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.32/43
![Page 39: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/39.jpg)
Deformazioni 3D
![Page 40: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/40.jpg)
Trasformazione arbitrariaTRASFORMAZIONE ARBITRARIA
azione di un tensore arbitrario sul quadrato unitario standard
x
x*
y y*
A*
B*C*
a
b
c
d
a+c
+d
B C
AO
!
o! a! b! c!"
= Q!
o a b c
"
,
oppure, usando le corrispondenti coordinate:#
$
0 a c a + c
0 b d b + d
%
& =
#
$
a c
b d
%
&
#
$
0 1 0 1
0 0 1 1
%
&.
Roma – 14 giugno – 5 luglio Corso di Dottorato in Informatica ed Automazione Universita Roma Tre – p.36/43
![Page 41: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/41.jpg)
![Page 42: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/42.jpg)
![Page 43: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/43.jpg)
x''x*
y'' y*
x'x''
y' y''
xx'
y y'
. .
xx*
y y*
=
m
n
![Page 44: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/44.jpg)
x''x*
y'' y*
x'x''
y' y''
xx'
y y'
. .
xx*
y y*
=
m
n
![Page 45: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/45.jpg)
Rotazioni Qualunque
!
y
z
y'
z'
ny
nz
"
x'
x''
z'z''
n'z
n'x
x
y
z
nx
n z
n y
![Page 46: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/46.jpg)
!
y
z
y'
z'
ny
nz
"
x'
x''
z'z''
n'z
n'x
x
y
z
nx
n z
n y
!
y
z
y'
z'
ny
nz
"
x'
x''
z'z''
n'z
n'x
x
y
z
nx
n z
n y
!
y
z
y'
z'
ny
nz
"
x'
x''
z'z''
n'z
n'x
x
y
z
nx
n z
n y
![Page 47: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/47.jpg)
Strutture Gerarchiche
5
43
2
1 6
5
43
2
1 6
![Page 48: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/48.jpg)
Strutture Gerarchiche
![Page 49: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/49.jpg)
Strutture Gerarchiche
Soggiorno
Pranzo Conversazione
Tavolo
Poltrona Divano
Sedia
T1
T2
T3
T4
T5
T6
T7
T8 T
9 T10
T11 T
12T13
T14
![Page 50: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/50.jpg)
Strutture Gerarchichey
x x
y
x
y
x
y
y
x x
y
x
y
x
y
![Page 51: Informatica Grafica - dia.uniroma3.itportuesi/PAC/2006/Informatica Grafica.pdf · Rappresentare la Geometria Operabile da metodi di calcolo automatici “Grafica Vettoriale” Partiamo](https://reader030.fdocument.pub/reader030/viewer/2022020416/5c66a25b09d3f230488c79fa/html5/thumbnails/51.jpg)