Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M.
270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Le curve di Bézier
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Curve di Bézier di Grado n
• Polinomio di grado n
• n + 1 vincoli ⇒ n + 1 punti di controllo
n n!
f(u) = ∑ i Pi (1 − u) n − i u i
0 i!(n − i)!
Vettore dei punti di controllo
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Proprietà Curve di Bézier di Grado n
• Passa per il primo e l'ultimo punto di controllo
• P1-P2 definisce la tangente in P1
• Pn – Pn+1 definisce la tangente in Pn+1
• La curva è interamente contenuta nel convex-hull
definito dai punti di controllo
• Invariante rispetto alla rotazione dei punti di controllo
• Precisione lineare: se i punti di controllo sono allineati
la curva è un segmento retto
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Curve di Bézier di Grado 3
• Per n = 3 la formula
n n!
f(u) = ∑ i Pi (1 − u) n − i u i
0 i!(n − i)!
• Diventa
f(u) = (1 − u)3 P0 + 3u(1 − u) 2 P1 + 3u 2 (1 − u)P2 + u 3P3
• Dove P0, P1, P2 e P3 sono i punti di controllo
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Proprietà Curve di Bézier di Grado 3
• Polinomio di Grado 3
• 4 punti di controllo
• P0– P1 definisce la tangente in P0
• P3– P2 definisce la tangente in P3
P1
P1 P2
P2
P0 P3
P0 P3
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Curve di Bézier di Grado 3
• Calcolo dei coefficienti del polinomio
P2 P3
p(u) = a0 + a1u + a2u2 + a3u3
p'(u) = a1 + 2a2u + 3a3u2
P1 P4
per u = 0 => P1= P(0) => P1= a0
per u = 1 => P4= P(1) => P4= a0 + a1 + a2 + a3
per u = 0 => TgP1= P’(0) => TgP1= a1
per u = 1 => TgP4= P’(1) => TgP4= a1 + 2a2 + 3a3
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Curve di Bézier di Grado 3
• Matrice di Bézier
Matrice di Bézier Vettore dei parametri
-1 3 -3 1 P1 a3
3 -6 3 0 P2 a2
=
-3 3 0 0 · P3 a1
1 0 0 0 P4 a0
Vettore dei punti
di controllo
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8
Titolo: Le curve di Bézier
Attività n°: 1
Curve di Bézier di Grado 3
P(0, 2) Calcolo dei coefficienti
del polinomio
P(2, 1)
Vedere il file Excel allegato
alla sessione di studio
P(-2, 0) P(2, 0)
-1 3 -3 1 -2 -2 a3
X 3 -6 3 0 0 0 a2
3 3 0 0 · 2
= 6 a1
x(u) = -2u3 + 6u -2
1 0 0 0 2 -2 a0
-1 3 -3 1 0 3 b3
3 -6 3 0 2 -9 b2 y(u) = 2u3 - 9u2 + 6u
Y
3 3 0 0 · 1
= 6 b1
1 0 0 0 0 0 b0
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Le curve di B-Spline
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Oltre le curve di Bézier
• Come faccio con soli 4 punti di controllo ad ottenere
forme come questa ?
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Oltre le curve di Bézier
• Occorre aumentare il numero di punti di controllo
• Aumentando il grado del polinomio ?
– (Ricordando che G = n + 1)
• Brutta idea:
– La curva diventa più complessa da gestire
– ad esempio, diventa più complicato calcolare i punti di
intersezione con altre curve
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Oltre le curve di Bézier
• Altra idea:
– concatenare curve di Bezièr
• Occorre affrontare un problema:
– quale continuità garantire nei punti di giunzione ?
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Tipi di Curve Parametriche
• B-Spline
– Unione di tratti di curve di Bézier con continuità G2
– I punti di giunzione dei tratti sono detti nodi
– Aumenta il controllo locale della curvaà
P4
P6
P2
P1 P3 P5 P7
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Definizione di Continuità
• C0 continuità di posizione
• le curve si toccano in un punto
• C1 continuità delle derivate prime
• la velocità prima e dopo il punto è la stessa
• C2 continuità delle derivate seconde
• L’accelerazione prima e dopo il punto è la stessa
• Cn continuità delle derivate n-esime
Definizione matematica classica
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Definizione di Continuità
• La definizione classica di continuità è un indice utile
per valutare la “levigatezza” delle curve ?
• No, perché dipende da come viene parametrizzata la
curva
• Occorre introdurre un nuovo concetto di continuità: la
continuità geometrica
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Continuità Geometrica
• Continuità G0
– Corrisponde alla continuità C0
• Continuità G1
– La direzione dei vettori tangenti nel punto è la stessa
• Continuità G2
– La direzione ed il modulo dei vettori tangenti nel punto sono gli
stessi
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Curve B-Spline
• L’unione di N curve di Bézier definisce N + 1 punti, detti nodi (K),
che rappresentano gli estremi ed i punti di contatto delle curve
• Il valore del parametro in corrispondenza del nodo è detto valore
del nodo
• Una B-Spline di grado G e Pt punti di controllo è composta da Pt - G
curve di Bézier
P4
Pt = 7
G=3 P6
P2
4 tratti
K=5
P1 P3 P5 P7
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Curve B-Spline
• I punti di controllo della B-Spline non coincidono con
quelli delle singole pezze di Bézier
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S1
Titolo: Le curve di B-Spline
Attività n°: 1
Curve B-Spline
• Muovere un punto di controllo ha un’influenza locale
sulla curva
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S2
Titolo: Domande sulla rappresentazione di curve e curve di Bezier
Attività n°: 1
Domande sulla rappresentazione
di curve e curve di Bezier
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S2
Titolo: Domande sulla rappresentazione di curve e curve di Bezier
Attività n°: 1
Lo studente risponda alle seguenti domande come verifica
di quanto studiato sulla rappresentazione di curve e curve
di Bezier:
- Quante sono le rappresentazioni di una curva?
- Quali sono le caratteristiche della rappresentazione di
curve?
- Quali sono le caratteristiche della curve parametriche?
- Che cosa sono e come funzionano i punti di controllo?
- Quali sono le caratteristiche della curve Bezier?
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S2
Titolo: Domande sulla rappresentazione di curve e curve di Bezier
Attività n°: 1
- Quali sono le proprietà delle curve Bezier?
- Che cosa sono e come funzionano le curve B-spline?
- Come viene definita la continuità delle curve?
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S3
Titolo: Introduzione alla costruzione di curve in Excel
Attività n°: 1
Introduzione alla costruzione di
curve in Excel
Corso di Laurea: INGEGNERIA INDUSTRIALE CURR. ENERGETICO (D.M. 270/04)
Insegnamento: COMPUTER AIDED DESIGN
Lezione n°: 8/S3
Titolo: Introduzione alla costruzione di curve in Excel
Attività n°: 1
Scopo della sessione di studio
• La sessione di studio presenta un esempio pratico di
costruzione di curve di Bézier e B-Spline in Excel.
• In allegato alla sessione di studio lo studente troverà un
foglio Excel in cui sono state implementate le formule
viste nelle slides della lezione.
• Lo studente può leggere le note su come interpretare il
foglio Excel posizionandosi con il mouse sopra i
triangolini rossi che compaiono in alcune celle.
Calcolo dei punti d
usando la matrice d
Modificare le coordinate dei punti di
Matrice di Bézier x
-1 3 -3 1 P1 0
3 -6 3 0 P2 1
-3 3 0 0 P3 2
1 0 0 0 P4 3
u x y
0 0 -3
0,1 0,3 -1,703
0,2 0,6 -0,784
0,5
0,3 0,9 -0,201
0,4 1,2 0,088 0
0,5 1,5 0,125
-0,5 0 0,5
0,6 1,8 -0,048
0,7 2,1 -0,389 -1
0,8 2,4 -0,856
0,9 2,7 -1,407 -1,5
1 3 -2 -2
-2,5
-3
-3,5
di una curva di Bézier cubica
di Bézier e 4 punti di controllo
controllo (tabella verde) per modificare la curva
y x y
-3 a3 0 7 u3
2 a2 0 -21 u2
0 a1 3 15 u
-2 a0 0 -3 1
Curva di Bézier
1 1,5 2 2,5 3 3,5
Calcolo dei segmenti di cu
usando la matrice B-Spl
Modificare le coordinate dei punti di contr
Matrice B-Spline x y
-0,16667 0,5 -0,5 0,166667 P0 0 0
0,5 -1 0,5 0 P1 1 1
-0,5 0 0,5 0 P2 0 3
0,166667 0,666667 0,166667 0 P3 3 1
P4 4 0
u x y P5 5 1
Nodo 1 0 0,666667 1,166667 P6 6 2
0,1 0,657667 1,320833
0,2 0,634667 1,48
0,3 0,603667 1,639167
0,4 0,570667 1,793333
0,5 0,541667 1,9375
0,6 0,522667 2,066667
0,7 0,519667 2,175833
0,8 0,538667 2,26
0,9 0,585667 2,314167
1 0,666667 2,333333
Nodo 2 0,785667 2,314167
0,938667 2,26
1,119667 2,175833
1,322667 2,066667
1,541667 1,9375
1,770667 1,793333
2,003667 1,639167
2,234667 1,48
2,457667 1,320833
Nodo 3 2,666667 1,166667
2,857 1,021833
3,029333 0,888
3,185667 0,766167
3,328 0,657333
3,458333 0,5625
3,578667 0,482667
3,691 0,418833
3,797333 0,372
3,899667 0,343167
Nodo 4 4 0,333333
4,1 0,343
4,2 0,370667
4,3 0,414333
4,4 0,472
4,5 0,541667
4,6 0,621333
4,7 0,709
4,8 0,802667
4,9 0,900333
Nodo 5 5 1
urva di una B-Spline cubica
ine e 7 punti di controllo
rollo (tabella verde) per modificare la curva
Q3=P0 - P3 Q4=P1 - P4 Q5=P2 - P5 Q6=P3 - P6
x y x y x y x y
a3 1 -0,833 a3 -1 0,8333 a3 0,333 0,16667 a3 0 -0,3333
a2 -1 0,5 a2 2 -2 a2 -1 0,5 a2 0 1
a1 0 1,5 a1 1 0 a1 2 -1,5 a1 1 0
a0 0,667 1,167 a0 0,6667 2,3333 a0 2,667 1,16667 a0 4 0,3333
Curva B-Spline
2,5
1,5
0,5
0
0 1 2 3 4 5 6