Curve e superfici parametriche

Slides:



Advertisements
Presentazioni simili
Funzioni reali di due variabili reali
Advertisements

L’ IPERBOLE.
Funzioni di due variabili
Sistema di riferimento sulla retta
Spazio dei giunti e spazio operativo
MODELLAZIONE DIGITALE
FUNZIONI DI DUE VARIABILI
MECCANICA DEL CONTINUO - TENSIONI
Implementazione del problema della approssimazione ai minimi quadrati Camillo Bosco Corso di Analisi Numerica A.A
Meccanica 3 7 marzo 2011 Cinematica in due dimensioni
Definizione e caratteristiche
1 Grandezze omogenee, commensurabili e incommensurabili
ELETTROMAGNETISMO APPLICATO ALL'INGEGNERIA ELETTRICA ED ENERGETICA
Funzioni algebriche intere razionali
Curve e Superfici Il mondo non è fatto di rette e poligoni.
EQUAZIONI DIFFERENZIALI ORDINARIE PRIME CONSIDERAZIONI .
GEOMETRIA RELAZIONALE NEI CAD. In un CAD ogni oggetto è creato in sequenza: eseguendo un comando dellutente; leggendo dati da un file. Tutti gli oggetti.
Esercizi di riepilogo Gabriella Puppo.
Metodi FEM per problemi ellittici
FEM -2 Gabriella Puppo.
Metodi FEM per problemi ellittici lineari a tratti Gabriella Puppo.
G.M. - Informatica B-Automazione 2002/03 Funzione Indica una relazione o corrispondenza tra due o più insiemi che soddisfa ad alcune proprietà. Il dominio.
Sistemi di equazioni lineari
Università degli Studi di Roma La Sapienza
Grandezze scalari e vettoriali
Studente Claudia Puzzo
Università de L’AQUILA
Metodi numerici per l’approssimazione
Metodi numerici per lapprossimazione Laboratorio di Metodi Numerici a.a. 2008/2009 Prof. Maria Lucia Sampoli.
Modellare 1 Daniele Marini.
MASSIMI E MINIMI DI UNA FUNZIONE
Infomatica Grafica a.a DICGIM – University of Palermo Dipartimento di Ingegneria Chimica, Gestionale, Informatica e Meccanica Environment Mapping.
14 giugno 2011 Rasterizzazione Prof. Roberto Pirrone.
4 aprile 2011 Modellazione Solida Prof. Roberto Pirrone.
11 ottobre 2012 Modelli a poligoni Roberto Pirrone.
Daniele Santamaria – Marco Ventura
Fabrizio Gay – corso di fondamenti e applicazioni di geometria descrittiva aa CURVE e SUPERFICIE 1: Modelli matematico e categorie comuni (morfologia.
Determinazione delle superfici visibili
Illuminamento e Shading
21 giugno 2011 Volume Rendering Prof. Roberto Pirrone.
Cad 3d, le origini e le motivazioni
Daniele Marini Con contributi di Maurizio Rossi
Salvatore Mazzola e Andrea Portale Prof.ssa R. M. Pidatella
LA PARABOLA.
Effetti fotorealistici
LA CIRCONFERENZA.
Daniele Marini Con contributi di Maurizio Rossi
Approssimazione di derivate
due parole sull’interpolazione
(Potenziale ed energia potenziale)
il moto rotatorio di un corpo rigido
Corso Di Programmazione Grafica
Corso di Programmazione Grafica e Laboratorio Daniele Marini
Rete di Hopfield applicata al problema del TSP Federica Bazzano
Esercizi (attrito trascurabile)
Definizione Si dice che la variabile z è una funzione reale di due variabili x e y, nell’insieme piano D, quando esiste una legge di natura qualsiasi che.
Due parole sull’interpolazione Daniele Marini. Due problemi trovare una funzione incognita a partire da dati campione –che assuma nei punti campione il.
Trasformazioni geometriche
APPUNTI DI GEOMETRIA ANALITICA DELLA RETTA
Proprietà macromolecolari Il calcolo delle proprietà macromolecolari implica l’utilizzo della statistica della catena polimerica in termini di distanze.
La circonferenza e l’ellisse La sezione conica è l’intersezione di un piano con un cono. La sezione cambia a seconda dell’inclinazione del piano. Se il.
Sistemi di equazioni lineari. Sistemi di primo grado di due equazioni a due incognite Risolvere un sistema significa trovare la coppia di valori x e y.
Raccogliamo x al primo membro e 2 al secondo:
Vettori in R n. I vettori I vettori sono gli oggetti matematici che costituiscono la base di tutte le teorie fisiche. Le grandezze fisiche si distinguono.
Luoghi di punti In geometria il termine
IL CERCHIO E LA CIRCONFERENZA.
La Circonferenza. LA CIRCONFERENZA Assegnato nel piano un punto C detto Centro, si chiama circonferenza la curva piana con i punti equidistanti da C.
Transcript della presentazione:

Curve e superfici parametriche 24 ottobre 2012 Curve e superfici parametriche Roberto Pirrone

Sommario Generalità sulle curve parametriche Curve di Hermite 24 ottobre 2012 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 24 ottobre 2012 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)]

In ogni segmento il parametro varia in [0,1] Curve parametriche 24 ottobre 2012 In ogni segmento il parametro varia in [0,1]

Curve parametriche 24 ottobre 2012 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 24 ottobre 2012 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.

Curve parametriche 24 ottobre 2012

Curve parametriche 24 ottobre 2012

Gradi di continuità 24 ottobre 2012 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

Gradi di continuità 24 ottobre 2012

Rappresentazione con polinomi di blending 24 ottobre 2012 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 24 ottobre 2012 Polinomi di blending

Curve di Bézier 24 ottobre 2012

Algoritmo di De Casteljeau 24 ottobre 2012 Consente la valutazione della curva nel punto di ascissa curvilinea u0. Si basa su uno schema ricorsivo di valutazione del punto Q(u0) a partire dai punti di controllo Pi.

Proprietà delle curve di Bézier 24 ottobre 2012 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 24 ottobre 2012 Chiusura convessa di n punti: il minimo poligono convesso che li raccorda tutti come vertici

Proprietà delle curve di Bézier 24 ottobre 2012

Proprietà delle curve di Bézier 24 ottobre 2012

Congiunzione di più segmenti di Bézier 24 ottobre 2012 Condizione di continuità: S3-S2=k(R1-R0)

Congiunzione di più segmenti di Bézier 24 ottobre 2012

Curve di Hermite 24 ottobre 2012

Relazione tra curve di Bézier e di Hermite 24 ottobre 2012 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 24 ottobre 2012 Possono essere: Uniformi rispetto a u Non Uniformi rispetto a u Razionali (NURBS: Non-Uniform Rational B-Spline)

Proprietà delle B-spline uniformi 24 ottobre 2012 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 24 ottobre 2012 Ogni segmento di curva Qi(u) dipende da 4 punti di controllo Pi-3, Pi-2, Pi-1, Pi parzialmente 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 24 ottobre 2012

Proprietà delle B-spline uniformi 24 ottobre 2012 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+5 knot

Proprietà delle B-spline uniformi 24 ottobre 2012 Vettore uniforme dei knot: [0,1,2,3,4]

Molteplicità dei punti di controllo 24 ottobre 2012 La molteplicità tripla di un punto di controllo estremo forza il passaggio della curva per il punto stesso

Molteplicità dei punti di controllo 24 ottobre 2012 La molteplicità doppia di un punto di controllo non estremo “attrae” il segmento creando una forte curvatura locale

Molteplicità dei punti di controllo 24 ottobre 2012 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 24 ottobre 2012 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 24 ottobre 2012 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 24 ottobre 2012 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 24 ottobre 2012

Molteplicità dei knot 24 ottobre 2012 Q4 si annulla e si crea un flesso perché Q3 e Q5 debbono giacere nelle rispettive chiusure convesse

Molteplicità dei knot 24 ottobre 2012 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 24 ottobre 2012 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 24 ottobre 2012 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 24 ottobre 2012 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

Curve di Bézier razionali 24 ottobre 2012

Condizioni di controllo delle curve razionali 24 ottobre 2012 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-Uniform Rational B-Splines 24 ottobre 2012 Non-Uniform Rational 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 24 ottobre 2012 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 u o viceversa

Superfici di Bézier 24 ottobre 2012 16 punti di controllo

Effetto della modifica dei punti di controllo Superfici di Bézier 24 ottobre 2012 Effetto della modifica dei punti di controllo

Superfici di Bézier 24 ottobre 2012

Superfici di Bézier 24 ottobre 2012

Continuità delle superfici di Bézier 24 ottobre 2012 S(u,v) R(u,v)

Continuità delle superfici di Bézier 24 ottobre 2012 S(u,v) R(u,v)

Superfici B-spline 24 ottobre 2012 Necessitano di 16 punti di controllo, come nel caso precedente, che modulano 16 funzioni di base bi-variate Sono necessari 8 knot per ogni patch lungo entrambe le coordinate (u,v) 8x8 knot per ogni patch Le 16 funzioni di base hanno il loro picco nel quadrilatero centrale di questo reticolo

Superfici B-spline 24 ottobre 2012

Superfici B-spline Il patch è confinato all’interno dei quattro 24 ottobre 2012 Il patch è confinato all’interno dei quattro punti centrali di controllo e non li interpola

Superfici B-spline 24 ottobre 2012 Triplicando una riga di punti di controllo lungo un edge a u costante non si ottiene interpolazione

Superfici B-spline 24 ottobre 2012 Triplicando una riga di punti di controllo sia lungo un edge a u costante sia lungo un edge a v costante si ottiene interpolazione dei soli vertici collineari

Superfici B-spline 24 ottobre 2012 Triplicando una riga ed una colonna interna di punti di controllo in cui quello centrale sia stato alzato si ottengono creste Punti di controllo collineari danno luogo a creste più accentuate

Modellazione con superfici parametriche 24 ottobre 2012 Caso di una sezione circolare Il problema è la determinazione dei Pij che determinano la superficie a partire da un profilo 2D noto I punti del profilo dovranno essere “modulati” dai punti che definiscono la sezione circolare Si costruisce solo un quarto della superficie e poi si opera per simmetria La sezione circolare con Bézier si può costruire con i punti T00={0,1,0}, T10={c,1,0}, T20={1,c,0}, T30={1,0,0}, c≃0,552

Modellazione con superfici parametriche 24 ottobre 2012 I punti Pij (i=0,…,3 j=cost) si ottengono scalando i punti Ti0 di rj nel piano (x,y) e imponendo la quarta coordinata pari a zj Pij={rjTi0x, rjTi0y, zj}

Modellazione con superfici parametriche 24 ottobre 2012 La sezione trasversale viene interpolata tra il profilo iniziale e quello finale: Q(u,v)=Q(u,0)(1-r(v))+Q(u,1)r(v), r(0)=0, r(1)=1

Modellazione con superfici parametriche 24 ottobre 2012

Controllo delle superfici durante la modellazione 24 ottobre 2012 Per garantire la continuità in una mesh di patch è necessario che ogni estremo venga mosso collinearmente con i suoi otto vicini in modo da rendere continue le derivate Qu, Qv e Quv

Disegno dei poliedri di controllo 24 ottobre 2012 Si possono implementare due strategie Controllo fine per raffinamento della griglia dei punti di controllo Si ottiene maggior precisione per realizzare deformazioni locali della superficie Controllo globale attraverso la deformazione dei punti di controllo “annegati” in uno spazio parametrico controllato da una ipersuperficie di Bézier

Controllo fine Le deformazioni vengono confinate ai nuovi patch 24 ottobre 2012 Le deformazioni vengono confinate ai nuovi patch definiti per inserzione dei Rij

Controllo globale 24 ottobre 2012 Si consideri una curva Q(t) controllata da quattro punti Pi: I punti possono essere pensati come appartenenti ad uno spazio bivariato (u,v) che variano in [0..1] Se definiamo una griglia complanare di punti di controllo Rij in (u,v) questi definiscono un patch di Bézier planare La curva Q(t) appartiene interamente allo spazio così definito e, se modifichiamo i punti di controllo Rij sempre in modo complanare, questo induce una deformazione nei punti Pi e quindi, globalmente in Q(t) Nel caso 3D la superficie viene annegata in un iperspazio trivariato di Bézier

Controllo globale 24 ottobre 2012

Fitting di superfici 24 ottobre 2012 Il fitting di curve o superfici con B-spline è importante in CG Modellazione di nuvole di punti acquisiti con range finder Interpolazione “dolce” di traiettorie nell’animazione Si procederà ad interpolare curve B-spline a u costante e a v costante creando una mesh di curve La mesh di curve viene trasformata in una sequenza di patch di Bézier più semplici da controllare

Fitting di superfici 24 ottobre 2012

Fitting di superfici 24 ottobre 2012 Il sistema precedente ha m-1 equazioni e m+1 incognite Si risolve aggiungendo altri due punti di controllo da interpolare L’interpolazione avviene separatamente lungo u e lungo v dando luogo ad una rete di punti di controllo B-spline Qi

Fitting di superfici 24 ottobre 2012 La conversione B-spline  Bézier avviene trasformando i soli punti di controllo attraverso le matrici di base La forma analitica delle superfici in funzione di u e v è la stessa [P0 P1 P2 P3]=BB-1BS[Q0 Q1 Q2 Q3] Per ogni quadrupla di punti di controllo B-spline Qk,…,Qk+3 si genera una quadrupla di punti Bézier eliminando Qk ed inserendo Qk+4 Così si generano i punti di controllo sui contorni delle patch: quelli interni si costruiscono sulla base di vincoli di continuità tra le superfici

Fitting di superfici 24 ottobre 2012