Upload
attilio-pala
View
212
Download
0
Embed Size (px)
Citation preview
Modellare1
Daniele MariniCon contributi di Maurizio Rossi
Sintesi e analisi
Dalla forma geometrica all’immagine
dall’immagine alla forma geometrica
Problema direttoe
problema inverso
Creare una rappresentazione
• Una rappresentazione di un modello ha due significati:– rappresentazione astratta, matematica della
struttura– raffigurazione della forma
• La rappresentazione astratta richiede tecniche di costruzione
• La rappresentazione astratta richiede un metodo di descrizione della struttura dati che la descrive
• Riassumiamo questi concetti distinguendo tra superfici e volumi nel diagramma seguente
Schemi di rappresentazione
Sono il modo con cui un modello per la sintesi di immagini viene descritto. I principali:
• mesh o griglia poligonale• poliedri• patch parametriche (bicubiche ..)• CSG (geometria solida costruttiva)• suddivisione spaziale (voxel)• implicite: x2 + y2 + z2 = r2
Oggetto di studio del CAD
Quale schema scegliere?
• per il rendering di forme statiche?• per il rendering di forme animate o dinamiche?• oggetti rigidi o flessibili o malleabili?• quali tipi di forma: semplici come un mondo di solidi elementari o complesse come la testa di una persona?
NON ESISTE LO SCHEMA UNICO UNIVERSALE
Superfici o volumi• I modelli possono essere forme
bidimensionali descritte su una superficie …
• oppure forme tridimensionali• Le forme tridimensionali possono essere
descritte da superfici nello spazio …• o da volumi nello spazio• I volumi possono anche essere
rappresentati come solidi delimitati da superfici
Elementi base
Quadrilatero (o triangolo) piano
Patch parametrica
CSG
voxel
Rappresentazione Poliedrica
Vertici, spigoli, facce, oggetti
Semplice, a volte costoso, problemi di precisione eaccuratezza, dipende dalla curvatura, può essereautomatizzato (reverse modeling 3d, luce strutturata, o con algoritmi - es. sweep -trascinamento)
Con sistemi automatici si generano molti triangoli: problema della decimazione dei triangoli (eliminazione dei triangoli inutili)
vide
o
vide
o
Importanza della struttura dati:
struttura di un disegno piano
video
Struttura di una scena
Procedimenti costruttivi:sweep (estrusione e
rotazione)
videovideo
Rotazione
Rappresentazione parametricaFunzioni di Bernstein blending functions
Funzioni di Bernstein fino al 3° ordine:
)(P)(P)(P)(P)( 0330220110000 tBtBtBtBtP xxxxx +++= )(P)(P)(P)(P)( 0330220110000 tBtBtBtBtP xxxxx +++=
Costruire una curva di Bezier
Vincoli di continuità agli estremi del poligono
vide
o
vide
o
Superfici parametriche:Bezier
Patch bicubiche parametriche
P(u,v) = ijCi,j Bi(u)Bj(v)P(u,v) = ijCi,j Bi(u)Bj(v)
Ci,j sono 16 punti di controllo
u, v sono parametri reali in (0,1)
P è un polinomio bicubico
vide
o
vide
o
Valutare la superficie parametrica
• Come trovare punti sulla superficie:– Valutazione diretta dell’equazione parametrica
(costosa)– Algoritmi progressivi: De Casteljau - interpolazione
lineare progressiva, vediamo l’esempio di calcolo dei punti su una parabola:
22
121
110
20
2111
1010
)1(2)1()()()1()(
)1()(
)1()(
btbttbtttbtbttb
tbbttb
tbbttb
o +−+−=+−=
+−=
+−=
22
121
110
20
2111
1010
)1(2)1()()()1()(
)1()(
)1()(
btbttbtttbtbttb
tbbttb
tbbttb
o +−+−=+−=
+−=
+−=
b0
b1
b2
b01
b11
b02
De Casteljau• Il caso della parabola riguarda una curva
piana, per le superfici il metodo si generalizza:Il punto è il punto con parametro t sulla curva di Beziér bn calcolato come:
Per le superfici di interesse per la grafica n=3I punti bi sono i punti di controllo
dettagli sul metodo si trovano su: G. Farin Curves and surfaces for computer aided geometric design, AP
€
bon (t)
€
bir(t) = (1− t)bi
r−1(t) + tbi+1r−1(t)
con r =1,..,n;i = 0,..,n − r
€
bir(t) = (1− t)bi
r−1(t) + tbi+1r−1(t)
con r =1,..,n;i = 0,..,n − r
NURBS• Non Uniform Rational B Splines: si considerano i
pesi wi (chiamati shape parameters)• se i pesi sono tutti =1 si hanno le curve di Bezier
€
P( t) =w0C0B0(t)+ w1C1B1( t)+ w2C2B2(t)+ w3C3B3( t)
w0B0(t)+ w1B1( t)+ w2B2(t)+ w3B3( t)=
wiCiBi(t)i =0
3
∑
wiBi(t)i =0
3
∑
€
P( t) =w0C0B0(t)+ w1C1B1( t)+ w2C2B2(t)+ w3C3B3( t)
w0B0(t)+ w1B1( t)+ w2B2(t)+ w3B3( t)=
wiCiBi(t)i =0
3
∑
wiBi(t)i =0
3
∑€
P( t) = CiBi(t)i =0
3
∑
€
P( t) = CiBi(t)i =0
3
∑
Curve parametriche per interpolazione
• Spline cubiche• Matrice di Hermite:
• Teoria, vantaggi e svantaggi delle diverse forme sono oggetto di studio della geometria computazionale
[ ]⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡ =
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−−
−−
=
3
2
1
0
3210
1
1000
3300
3630
1331
)(
t
t
t
t
t CCCCP [ ]⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡ =
⎥⎥⎥⎥
⎦
⎤
⎢⎢⎢⎢
⎣
⎡
−−
−−
=
3
2
1
0
3210
1
1000
3300
3630
1331
)(
t
t
t
t
t CCCCP
video