Académique Documents
Professionnel Documents
Culture Documents
458
Introduzione
Una curva nel piano o nello spazio può rappresentarsi utilizzando diverse
formulazioni matematiche:
x = f (u )
Formulazione parametrica: y = g (u )
z = h(u )
1
Confronto tra la rappresentazione analitica e
quella parametrica
Curve parametriche
In generale, dal punto di vista teorico, non esiste una formulazione che, in
tutti i casi, risulta migliore delle altre.
L’esperienza ha tuttavia dimostrato che, nella grafica computerizzata, la
formulazione parametrica semplifica l’implementazione al calcolatore. La
rappresentazione parametrica è dunque quella maggiormente utilizzata,
mentre la rappresentazione analitica è limitata a casi particolari.
La formulazione generale di una curva parametrica, come detto è la seguente:
C = C(u )
2
Curve parametriche come serie di funzioni
C(u ) = ∑ Ti Fi (u )
n
i =0
P0 = P(0 ) = a 0 a 0 = P0
P1 = P(1) = a 0 + a1 + a 2 + a 3 a1 = P0'
P0' = P0' (0 ) = a1 a 2 = −3P0 + 3P1 − 2P0' − P1'
P1' = P ' (1) = a1 + 2a 2 + 3a 3 a 3 = 2P0 − 2P1 + P0' + P1'
3
Rappresentazione in serie di potenze
(Lagrange)
i i!(n − i )!
I coefficienti Pi, sono punti nello spazio costituenti il poligono di controllo della
curva. La forma della curva approssima il poligono di controllo.
4
Caratteristiche delle funzioni base nella
rappresentazione di Bézier
La funzioni base della rappresentazione di Bézier godono delle seguenti
caratteristiche:
Non negatività: Bi ,n (u ) ≥ 0 ∀ i,n; 0 ≤ u ≤ 1
n
Somma uno: ∑ B (u ) = 1;
i =0
i ,n 0 ≤ u ≤1
= 3 (grado 3, 4 punti di
Funzioni di Bernstein per n
B(u)
per n = 2 (grado 2, 3
Funzioni di Bernstein
punti di controllo)
controllo)
0 1 u 0 1
u
Appunti di Disegno Tecnico Industriale 466
5
Vantaggi e svantaggi della rappresentazione di
Bézier
VANTAGGI SVANTAGGI
Rappresentazione intuitiva Grado della curva dipendente dal
facilmente manipolabile per via numero di punti di controllo (n punti
interattiva (spostamento punti di → grado n-1)
controllo):
Necessari gradi elevati per
La formulazione ricorsiva permette una rappresentare forme complesse
efficiente implementazione del
Mancanza di controllo locale: il
calcolo di punti sulla curva (meno
movimento di un punto di controllo
soggetta ad errori numerici rispetto alla
modifica la forma dell’intera curva
formulazione di Hermite)
(funzioni base tutte non nulle per u ∈
]0,1[)
6
Rappresentazione polinomiale a tratti B-Spline
La rappresentazione polinomiale a tratti di tipo B-Spline (secondo la formulazione
di Cox-deBoor) è così definita: n
C(u ) = ∑ Pi N i , p (u )
i =0
Essendo le Ni,n funzioni polinomiali aventi la seguente formulazione:
1 se ki ≤ u ≤ ki +1
N i ,0 (u ) =
0 altrimenti
u − ki ki + p +1 − u
N i , p (u ) = N i , p −1 (u ) + N i +1, p −1 (u )
ki + p − ki ki + p +1 − ki +1
K = {k0,…,km} rappresenta un vettore di valori reali non decrescenti (non
necessariamente distinti) denominati nodi (knots). Nella definizione si assume che
0/0 = 0.
p è il grado della curva;
Il vettore dei nodi “spezza” il
(n+1) il numero di punti di controllo; dominio della curva in modo da
permettere la formulazione a tratti
(m+1) il numero dei nodi;
Il numero dei nodi (m+1), il grado della curva (p), il numero dei punti di controllo
(n+1) sono tra loro legati dalla relazione: (m + 1) = (n +1 ) + p + 1
Appunti di Disegno Tecnico Industriale 470
N(u) N(u)
u u
7
Considerazioni sul vettore dei nodi nella
rappresentazione B-Spline
Le funzioni base della rappresentazione B-Spline, Ni,p(u), risultano univocamente
determinate una volta fissato il grado p ed il vettore dei nodi {k0,…,km}.
Il vettore dei nodi è uniforme se tutti i suoi nodi sono equamente spaziati, ossia
se esiste un valore d tale che ki+1 – ki = d per ogni i ∈ [p,m-p-1]
p=5
p=4
p=2
p=3
p=1
Effetto del cambiamento di grado su una curva B-Spline definita dallo stesso
poligono di controllo.
8
Proprietà della rappresentazione B-Spline:
gestione locale della geometria
Gestione locale della geometria: la modifica di un punto di controllo Pi
comporta una modifica della curva soltanto nell’intervallo [ki,ki+p+1[.
u = 1/2
u = 1/4
u=0
u=1 u = 3/4
u=1
u = 2/3
u=0
9
Altre proprietà della rappresentazione B-Spline
La formulazione della curva è invariante rispetto ad una trasformazione
affine dello spazio: la curva trasformata di una curva data definita da punti di
controllo assegnati è ottenuta applicando la trasformazione ai punti di controllo.
La rappresentazione B-Spline include la rappresentazione di Bézier come caso
particolare quando si ponga:
(n+1) = p+1 e K = {0,…,0,1,…,1}
La derivata di una curva B-Spline di grado p si può esprimere formalmente ancora
come una B-Spline di grado p-1:
n −1 Pi +1 − Pi
C' (u ) = ∑ N i , p −1 (u )Q i essendo Qi = p
i =0
ki + p +1 − ki +1
mentre il vettore dei nodi K’ è ottenuto dal vettore K togliendo da questo ultimo il
primo e l’ultimo elemento.
Le curve coniche
Le curve coniche rivestono un ruolo primario nella modellazione assistita dal
calcolatore, pertanto la loro rappresentazione assume particolare rilevanza. La
rappresentazione analitica di una conica generica è la seguente
Una conica si dice in forma standard quando il suo o i suoi assi di simmetria
coincidono con gli assi del sistema di riferimento. In questo caso si hanno le
seguenti formulazioni:
Conica Formulazione analitica Formulazione parametrica
a(b 2 + a 2t 2 ) 2ab 2t
2 2
x y
Iperbole − =1 a 2t 2 − b 2 , a 2t 2 − b 2
a 2 b2
Parabola y = mx2 (t , mt )
2
x2 y2 a (1 − t )2
2bt
Ellisse + =1 1+ t2 ,
a 2 b2 1 + t 2
Da ciò si osserva che con le tecniche viste finora (funzioni base polinomiali e
polinomiali a tratti) è possibile rappresentare esattamente soltanto la parabola.
Appunti di Disegno Tecnico Industriale 477
10
Rappresentazione attraverso polinomi razionali
(NURBS)
La rappresentazione di curve attraverso polinomi razionali è definita nel modo
seguente: n N i , p (u )wi
C(u ) = ∑ Pi Ri , p (u ); con Ri , p = n
i =0
∑ N (u )w
j =0
j, p j
n (wi xi , wi yi , wi zi , wi ), se wi ≠ 0
C(u ) = ∑ P i N i , p (u ); con P i =
i =0 (xi , yi , z j ,0), se wi = 0
u u
Funzioni B-spline razionali di grado 3 con U Funzioni B-spline razionali di grado 3 con U
={0,0,0,0,1/4,1/2,3/4,1,1,1,1} e w = {1,1,1,1,1,1,1} ={0,0,0,0,1/4,1/2,3/4,1,1,1,1} e w = {1,1,1,3/10,1,1,1}
Appunti di Disegno Tecnico Industriale 479
11
Proprietà della rappresentazione con polinomi
razionali
Valgono le proprietà precedentemente viste: gestione locale della geometria,
invarianza della formulazione a trasformazione affine, inclusione nel
poligono convesso e proprietà dell’intersezione (un piano/curva non interseca
la curva più volte di quelle che interseca il poligono di controllo). Inoltre:
Sostituendo si ottiene:
C(u ) =
(1 − u )2 P0 + u 2 P2 + 2u (1 − u )
P1
1 − 2u + 2u 2 1 − 2u + 2u 2
Da cui:
r (1 − 2u ) 2ru (1 − u )
x(u ) = y (u ) =
1 − 2u + 2u 2 1 − 2u + 2u 2
Per la quale risulta:
x 2 (u ) + y 2 (u ) = r 2 ∀ u
12