700 likes | 927 Views
Curve e superfici parametriche. Roberto Pirrone. Sommario. Generalità sulle curve parametriche Vincoli geometrici e funzioni di blending Curve di Hermite Curve di Bézier Curve B- spline Curve NURBS Superfici Parametriche Superfici di Hermite di Bézier e NURBS. Curve parametriche.
E N D
Curve e superfici parametriche Roberto Pirrone
Sommario • Generalità sulle curve parametriche • Vincoli geometrici e funzioni di blending • Curve di Hermite • Curve di Bézier • Curve B-spline • Curve NURBS • Superfici Parametriche • Superfici di Hermite di Bézier e NURBS
Curve parametriche Una curva parametrica è definita come una terna di funzioni di un parametro Q(u)=[x(u),y(u),z(u)]che fa da ascissa curvilinea lungo la curva stessa. Una superficie è definita in termini di una coppia di parametri che stabiliscono un sistema di coordinate curvilinee sulla superficie stessa: Q(u,v)= [x(u,v), y(u,v),z(u,v)]
Curve parametriche In ogni segmento il parametro varia in [0,1]
Curve parametriche • le tre funzioni del parametro sono di norma scelte come funzioni cubiche. • Tale scelta deriva dalla proprietà delle cubiche di rappresentare curve non planari • 3 è il minimo grado polinomiale che ci consente di rappresentare curve nello spazio • le curve quadratiche necessitano di 3 coefficienti e quindi sono planari.
Curve parametriche Le cubiche sono facilmente controllabili, mentre polinomi di grado superiore presentano delle oscillazioni che sono difficili da controllare in termini del parametro. Infine, dipendendo da 4 parametri, ci consentono di specificarle a partire da 4 punti di controllo o dagli estremi e dalle tangenti degli estremi.
Gradi di continuità • Curve complesse sono costituite dalla successione di più segmenti • Il grado di continuità definisce il modo con cui due curve si toccano • Continuità geometrica • G0 le curve si toccano • G1 le curve hanno gradiente in u con la stessa direzione e verso • Continuità parametrica Cn: • le derivate in u nel punto di giunzione sono uguali fino all’ordine n
Rappresentazione con polinomi di blending • Una curva parametrica Q(u) può essere specificata dalla conoscenza di 4 vincoli geometrici Pi=[pix,piy,piz] i=0,…,3 posti nell’intorno della curva • I vincoli possono rappresentare • Punti di passaggio • Tangenti negli estremi • Punti di controllo esterni che influenzano la curvatura locale di Q(u) • Un mix dei precedenti • La scelta dei vincoli da luogo a diverse famiglie di curve
Rappresentazione con polinomi di blending Polinomi di blending
Algoritmo di De Casteljeau Consente la valutazionedellacurvanelpunto di ascissacurvilineau0. Si basasuuno schema ricorsivo di valutazione del puntoQ(u0) a partiredaipunti di controlloPi.
Proprietà delle curve di Bézier Le curve di Bézier sono tali che per ogni valore di u la somma dei polinomi di blendingè sempre 1. I Bi(u) si comportano come le coordinate baricentriche quindi il punto generico della curva Q(u) si trova sempre all’interno della chiusura convessa dei punti di controllo Pi.
Proprietà delle curve di Bézier Chiusura convessa di n punti: il minimo poligono convesso che li raccorda tutti come vertici
Congiunzione di più segmenti di Bézier Condizione di continuità: S3-S2=k(R1-R0)
Relazione tra curve di Bézier e di Hermite Nella formulazione di Hermite le curve parametriche non sono vincolate a giacere nella chiusura convessa dei punti di controllo
Curve B-spline • Possono essere: • Uniformi rispetto a u • Non Uniformi rispetto a u • Razionali (NURBS: Non-UniformRational B-Spline)
Proprietà delle B-spline uniformi • Il segmento B-spline uniforme • Non passa per i punti di controllo e giace nella loro chiusura convessa • E’ uniforme nel parametro • passando dal segmento Qi(u) al segmento successivo Qi+1(u) Δiu=1, ui=0,1,2,… • Knot: il valore ui ad ogni punto di giunzione • Il segmento i-esimo è comunque valutato per 0 ≤ u ≤ 1
Proprietà delle B-spline uniformi Ogni segmento di curva Qi(u) dipende da 4 punti di controllo Pi-3, Pi-2, Pi-1, Piparzialmente condivisi con i 3 segmenti precedenti In generale, una curva è un insieme di m-2 segmenti Q3, Q4, …, Qm dipendenti da m+1 punti di controllo P0, P1,…, Pm con m>=3
Proprietà delle B-spline uniformi Le funzioni di blending Bi(u) sono identicamente traslate lungo l’asse del parametro di intervallo in intervallo formando delle “funzioni di base” che si estendono su quattro intervalli Per m-2 segmenti sono necessari m+5knot
Proprietà delle B-spline uniformi Vettore uniformedei knot: [0,1,2,3,4]
Molteplicità dei punti di controllo La molteplicità tripla di un punto di controllo estremo forza il passaggio della curva per il punto stesso
Molteplicità dei punti di controllo La molteplicità doppia di un punto di controllo non estremo “attrae” il segmento creando una forte curvatura locale
Molteplicità dei punti di controllo La molteplicità tripla di un punto di controllo non estremo forza il passaggio della curva per il punto stesso creando una discontinuità
B-spline non uniformi • Il vettore dei knot può avere delle molteplicità, modificando la forma della funzione di base • [0,1,2,3,4] • [0,1,1,2,3] • [0,1,1,1,2] • [0,1,1,1,1]
B-spline non uniformi • Al crescere della molteplicità di ui, i∈[k,k+4] accade che: • ui ≡ ui+1 • Il segmento Qi(u) si annulla • bi-k(u) si annulla • Bk(u) cambia la sua forma
B-spline non uniformi • La molteplicità influenza molte funzioni di base: • Es. [0, 0, 0, 0, 1, 2, 3, 3, 3, 3] 6 Bi(u) • 0 0 0 0 1 B0(u) • 0 0 0 1 2 B1(u) • 0 0 1 2 3 B2(u) • 0 1 2 3 3 B3(u) • 1 2 3 3 3 B4(u) • 2 3 3 3 3 B5(u)
Molteplicità dei knot Q4 si annulla e si crea un flesso perché Q3 e Q5 debbono giacere nelle rispettive chiusure convesse
Molteplicità dei knot Q5 si annulla e si crea una cuspide perché Q3 e Q6 debbono giacere nelle rispettive chiusure convesse che condividono solo P3
Molteplicità dei knot Q6 si annulla e si crea una discontinuità perché Q3 e Q7 debbono giacere nelle rispettive chiusure convesse che sono completamente disgiunte
Calcolo ricorsivo delle funzioni di base Il calcolo è valido per B-spline uniformi e non di qualsiasi ordine. Le cubiche corrispondono all’ordine 4 cioè sono influenzate da 4 knot ciascuna.
Curve razionali • Una curva razionale R(u) n-dimensionale si ottiene attraverso una trasformazione proiettiva di tipo prospettico da una curva Q(u) definita in uno spazio in n+1 dimensioni • Il processo di riduzione delle coordinate è quello di omogeneizzazione • I punti della curva in Rn+1 si dividono per l’ultima coordinata • Le funzioni del parametro in Rn divengono così delle funzioni razionali
Condizioni di controllo delle curve razionali • Le curve razionali possono essere controllate modificando i Pi e/o i wi • (a) i punti di R(u) si muovono parallelamente alla direzione di spostamento di Pi • (b) i punti di R(u) si muovono lungo raggi proiettori a partire dal punto di controllo cui è associato il peso • Ad es. wi≡1 i=0,1,2,3 genera un arco di circonferenza
NURBS • Non-UniformRational B-Splines • Si controllano: • Muovendo i punti di controllo • Variando la molteplicità dei knot • Modificando i pesi wi • Hanno le stesse proprietà geometriche ed analitiche delle B-spline non razionali
Superfici parametriche Sono l’estensione delle curve a due coordinate locali (u,v) Si devono intendere come costruite “accostando” tra loro curve parametriche in v a passi costanti in u lungo l’andamento di una curva in uo viceversa
Superfici di Bézier 16 punti di controllo
Superfici di Bézier Effetto della modifica dei punti di controllo
Continuità delle superfici di Bézier S(u,v) R(u,v)
Continuità delle superfici di Bézier S(u,v) R(u,v)