You are on page 1of 128

Capitolo 1

Elementi di Algebra Lineare
1.1

Le matrici: definizioni

In questo capitolo saranno descritti i concetti fondamentali che riguardano
la teoria delle matrici (che compone una parte fondamentale della cosiddetta
Algebra Lineare). Le matrici giocano un ruolo fondamentale nella descrizione delle trasformazioni geometriche, uno strumento base della Computer
Garphics.
Definizione 1.1.1 Una matrice `e una tabella di numeri reali con m righe
ed n colonne, con m, n ∈ N, indicata solitamente nel seguente modo


a11 a12 . . . a1n
 a21 a22 . . . a2n 


A =  ..
..  .
..
 .
. 
.
am1 am2 . . . amn

Quando non `e importante precisare il numero di righe o di colonne la matrice
viene indicata con una lettera maiuscola, per esempio A, oppure con Am,n
quando `e importante specificarle. I numeri interi m ed n si dicono dimensioni
della matrice, ovvero A si dice matrice di dimensioni m × n o di ordine m × n.
I numeri aij ∈ R, con 1 ≤ i ≤ m e 1 ≤ j ≤ n, si chiamano elementi della
matrice e si usa scrivere anche
A = [aij ] .
Se ogni elemento della matrice `e un numero reale allora si indica con Rm×n
l’insieme delle matrici aventi elementi reali, ricordando che R indica l’insieme
1

CAPITOLO 1. ELEMENTI DI ALGEBRA LINEARE

2

dei numeri reali. Se m 6= n allora la matrice si dice rettangolare. Se m = n la
matrice A si dice quadrata ed il comune numero di righe e di colonne si dice
ordine Come gi`a accennato se i e j sono due numeri interi l’elemento della
matrice che si trova in posizione (i, j) viene indicato con aij . Gli elementi
aij di una matrice quadrata A di ordine n tali che i = j sono detti elementi
principali o diagonali e formano la cosiddetta diagonale principale di A.
Se m = 1 (ovvero la matrice `e composta da una sola riga) si dice anche
vettore riga, mentre se n = 1 (ovvero la matrice `e composta da una sola
colonna) si dice anche vettore colonna. Le propriet`a principali dei vettori
saranno descritte in dettaglio in seguito.
Due matrici A e B, con lo stesso numero m di righe ed n di colonne, sono
uguali se e soltanto se
aij = bij ,

i = 1, . . . , m, j = 1, . . . , n.

Definizione 1.1.2 Data una matrice A ∈ Rm×n , la matrice n × m ottenuta
da A scambiando le righe con le colonne si chiama matrice trasposta, AT , di
A:




a11 a21 . . . am1
a11 a12 a13 . . . a1n
 a12 a22 . . . am2 


 a21 a22 a13 . . . a2n 

 a13 a23 . . . am3 

T
,
A
=
A =  ..

.
.. 
..
..
 ..
 .
..
.. 
. 
.
.
 .
.
. 
am1 am2 am3 . . . amn
a1m a2m . . . amn
Per esempio

A= 

1 3 5 7
2 4 6 8 

,

1

3
AT = 
 5
7


2
4 
.
6 
8

In particolare la matrice trasposta di un vettore colonna `e un vettore riga e
viceversa. Vedremo in seguito che per i vettori le notazioni sono notevolmente
semplificate.
Casi particolari di matrici quadrate:
• matrice simmetrica: aij = aji , ovvero gli elementi della i−esima
riga sono uguali a quelli della j−esima colonna, e quindi A = AT , per

CAPITOLO 1. ELEMENTI DI ALGEBRA LINEARE
esempio:

1
 3
A=
 5
7

3
4
5
6

5
5
6
6

3


7
6 
;
6 
8

• matrice triangolare superiore: aij = 0, per i > j, ovvero gli
elementi sotto la diagonale principale sono tutti nulli, per esempio:


1 3 5 7
 0 4 5 6 

A=
 0 0 6 6 ;
0 0 0 8

• matrice triangolare inferiore: aij = 0, per i < j, ovvero gli elementi
sopra la diagonale principale sono tutti nulli, per esempio:


1 0 0 0
 3 4 0 0 

A=
 5 5 6 0 ;
7 6 6 8
• matrice diagonale: aij = 0, per i 6= j, ovvero gli elementi al di fuori
della la diagonale principale sono tutti nulli, per esempio:


1 0 0 0
 0 4 0 0 

A=
 0 0 6 0 ;
0 0 0 8

• matrice identit`
a: aij = 0, per i 6= j, e aii = 1 per ogni i, quindi si
tratta di una matrice diagonale con tutti gli elementi principali uguali
a 1, e che solitamente si indica con In , dove n `e l’ordine della matrice
oppure semplicemente con I se non risulta essenziale evidenziarne la
dmensione:


1 0 0 0 0 0
 0 1 0 0 0 0 


 0 0 1 0 0 0 
.

I6 = I = 

0
0
0
1
0
0


 0 0 0 0 1 0 
0 0 0 0 0 1

. 1.CAPITOLO 1. . . a commutativa della somma. La matrice i cui elementi sono gli opposti degli elementi di A si chiama opposta di A e si indica con −A. . • A + (−A) = O : esistenza dell’opposto per la somma. am1 + bm1 am2 + bm2 . a2n + b2n    A+B = . amn + bmn Definizione 1.   ..1 Assegnate due matrici A. B ∈ Rm×n si definisce somma di A e B. .  .2 Assegnata una matrice A ∈ Rm×n ed un numero α ∈ R. . • A + B = B + A : propriet` • A + O = A : la matrice nulla ` e elemento neutro della somma. .. αa2n    αA =  .2. . .. . . . . αa1n  αa21 αa22 .  αam1 αam2 . e si denota con αA. αamn Le operazioni appena introdotte godono delle seguenti propriet`a: • (A + B) + C = A + (B + C) : propriet` a associativa della somma. si definisce prodotto di A per α. . la matrice C ∈ Rm×n ottenuta sommando gli elementi corrispondenti sono:   a11 + b11 a12 + b12 .  .. a1n + b1n  a21 + b21 a22 + b22 . .. la matrice ottenuta moltiplicando per α tutti gli elementi di A:   αa11 αa12 .2. e si denota con A + B. . . ELEMENTI DI ALGEBRA LINEARE 4 • La matrice con tutti gli elementi nulli si chiama anche matrice nulla e si pu`o indicare con O. • α(A + B) = αA + αB. . . • (α + β)A = αA + βA. . .2 Operazioni tra matrici Definizione 1.. .

Definizione 1. a1n − b1n  a21 − b21 a22 − b22 . altrimenti si dicono non conformabili. m. . dato il prodotto AB non ha nemmeno senso considerare il prodotto BA.2. ELEMENTI DI ALGEBRA LINEARE • 0 A = O. . . j = 1. . Se. . .1 Siano A e B le seguenti matrici:  1 3 2    0 −1 −1 2 3 0 −1 .. cij = ai1 b1j +ai2 b2j +· · ·+aip bpj = k=1 Si noti che affinch`e tale prodotto abbia senso `e necessario che il numero delle colonne della prima matrice coincida con il numero delle righe della seconda. . amn − bmn Definizione 1.  Calcoliamo la matrice C = AB.2. in generale. assegnate due matrici.   .4 Assegnate due matrici A ∈ Rm×p e B ∈ Rp×n si definisce prodotto righe per colonne la matrice C ∈ Rm×n i cui elementi cij sono ottenuti moltiplicando gli elementi della i−esima riga di A per gli elementi della j−esima colonna di B e sommando i prodotti cos`ı ottenuti: p X aik bkj i = 1. . B= A=  −2 0 1 5 1 −3 1 5 0 −1   . .3 Assegnate due matrici A. • −1 A = −A.. am1 − bm1 am2 − bm2 . e si denota con A − B. L’elemento cij `e uguale alla somma dei prodotti degli elementi della i−esima riga di A per la j−esima colonna di B. n. . . . a2n − b2n    A−B = . B ∈ Rm×n si definisce differenza tra A e B. . la matrice C ∈ Rm×n ottenuta sommando A con la matrice opposta di B: sono:   a11 − b11 a12 − b12 .. . . . . c11 c12 c13 c21 c22 c23 = 2 · 1 + 3 · 0 + 0 · (−1) + (−1) · 5 = −3 = 2 · 3 + 3 · (−1) + 0 · 0 + (−1) · 0 = 3 = 2 · 2 + 3 · (−1) + 0 · 1 + (−1) · (−1) = 2 = 5 · 1 + 1 · 0 + (−3) · (−1) + 1 · 5 = 13 = 5 · 3 + 1 · (−1) + (−3) · 0 + 1 · 0 = 14 = 5 · 2 + 1 · (−1) + (−3) · 1 + 1 · (−1) = 5. .2.5 CAPITOLO 1. Questo significa che. Esempio 1. . . `e possibile calcolarne il prodotto allora le matrici si dicono conformabili.

2 Siano A e B  3 1 A =  −1 2 3 1 le seguenti matrici:    2 1 −1 0 1 . Se invece accade che AB = BA allora si dice che le due matrici commutano altrimenti si dice che non commutano. B =  0 1 1 .  6 4 −2 C =  0 2 4 . 2 1 1 1 Calcoliamo la matrice C = AB. Nel caso particolarmente importante di matrici quadrate esse devono avere lo stesso ordine.2. in questo caso ha senso considerare i prodotti AB se BA ma pu`o succedere che AB 6= BA. Il prodotto tra matrici gode delle seguenti propriet`a: . ELEMENTI DI ALGEBRA LINEARE In definitiva C=  −3 3 2 13 14 5  6 . L’elemento cij `e uguale alla somma dei prodotti degli elementi della i−esima riga di A per la j−esima colonna di B. Esempio 1.CAPITOLO 1. c11 c12 c13 c21 c22 c23 c31 c32 c33 In definitiva =3·2+1·0+0·2=6 =3·1+1·1+0·1=4 = 3 · (−1) + 1 · 1 + 0 · 1 = −2 = −1 · 2 + 2 · 0 + 1 · 2 = 0 = −1 · 1 + 2 · 1 + 1 · 1 = 2 = −1 · (−1) + 2 · 1 + 1 · 1 = 4 =3·2+1·0+1·2=8 =3·1+1·1+1·1=5 = 3 · (−1) + 1 · 1 + 1 · 1 = −1. 8 5 −1  Calcolando il prodotto D = BA si trova invece:   2 3 0 D= 2 3 2  8 5 2 da cui risulta evidente che AB 6= BA.

per esempio: A2 = A A. A3 = A A A e.7 CAPITOLO 1.3 Sia P la seguente matrice  0 0 1  0 1 0 P =  1 0 0 0 0 0 di permutazione di ordine 4:  0 0   0  1 e calcoliamo il prodotto  0 0  0 1 PA =   1 0 0 0   3 9 4  2 6 8  = 8   1 2 4 5 9 che `e stata ottenuta dalla matrice identit` a la terza. Ak = A | A{z. ELEMENTI DI ALGEBRA LINEARE • (AB)C = A(BC) : propriet` a associativa del prodotto. in generale.2. 4  9 . • A(B + C) = AB + AC : propriet` a distributiva del prodotto rispetto alla somma. Una matrice che si ottiene da I scambiando alcune righe (o colonne) viene detta matrice di permutazione. Consideriamo la seguente matrice  1 2 3  2 6 7 A=  3 9 6 4 5 7 P A: 1 0 0 0  0 1 2  2 6 0   0  3 9 1 4 5 3 7 6 7 I scambiando la prima riga con A  4 8   8  9 6 7 3 7  8 8  . • α(AB) = (αA)B. . • (AB)T = B T AT . . A} . • A I = I A = A : la matrice identit` a ` e elemento neutro del prodotto. k volte Esempio 1. Come conseguenza nella definizione di prodotto tra matrici si possono definire anche le potenze di una matrice.

 . .. akk ak. . .  . .... Consideriamo ora una matrice quadrata A di ordine n ed un numero intero k. . . . a1k a21 a22 . . ak+1. . . akn  A =  ak1    ak+1. . A1q  A21 A22 . .. a2k . . ELEMENTI DI ALGEBRA LINEARE 8 La moltiplicazione a sinistra di una matrice di permutazione per A ha l’effetto di scambiare le righe di A esattamente nello stesso modo con cui erano state scambiate le righe dell’identit` a per ottenere P .  . 1 ≤ k < n. Calcoliamo ora il prodotto AP :      3 2 1 4 1 2 3 4 0 0 1 0  2 6 7 8  0 1 0 0   7 6 2 8      AP =   3 9 6 8  1 0 0 0  =  6 9 3 8 .. . . . posto    A11 =   a11 a12 .. ann an1 an2 .. . . . a2n   . . e suddividiamo la matrice in 4 parti nel seguente modo:   a11 a12 . . akk      (1. . a1n  a21 a22 .. . . . . . . qj=1 nj = n.. . .  . .k+1 . a1k a1.  ..... . . .  . . . .k+1 .2 .  Ap1 Ap2 . ank e. . an. .     ak2 ..n   .k+1 . . Operazioni a blocchi Definizione 1..k+1 . a2k a2. . . . 7 5 4 9 4 5 7 9 0 0 0 1 Invece la moltiplicazione a destra di una matrice di permutazione per A ha l’effetto di scambiare le colonne di A.2. . . Apq P P dove ogni Aij `e di dimensioni mi × nj e pi=1 mi = m.. . .CAPITOLO 1. . . ak+1.k+1 . . .1 ak+1. . .. . ak1 ak2 . .5 Una matrice A ∈ Rn×m si dice partizionata in p × q blocchi se viene suddivisa nel seguente modo:   A11 A12 .k ak+1. . .. A2q    A =  .1) ..   . .. . .

. a2n . .k+2 . . ann la matrice pu`o essere scritta nel seguente modo:   A11 A12 A= A21 A22 (1. .4) con A11 ∈ Rk×k . a1n a2. Se B `e una matrice quadrata avente lo stesso ordine di A pu`o essere suddivisa esattamente nello stesso modo   B11 B12 B= B21 B22 con B11 ∈ Rk×k . . Le operazioni tra le due matrici possono essere eseguite utilizzando tale partizionamento. . .k+2 . . .. . .1 ak+2.n .k+1 ak. . . . matrici di dimensioni opportune.2 . .. .k+1 a1. A21 ∈ Rk×(n−k) . con la differenza che in questo caso gli elementi sono. ank      ak+1. ak+1. . .. ... . .k . ak. .k+1 .1 ak+1.n ak+2. . B21 ∈ Rk×(n−k) .. akn     ak+1.k+2 ..k+1 ak+1. ..  (1. . . an1 an2 .k+1 ak+2. . . Le quattro matrici definite sono dette blocchi.k+1 a2. .k+1 . ak+2... ak+2. ..k+1 an. . ELEMENTI DI ALGEBRA LINEARE 9  (1.2)    A12 =   A21    =     A22 =   a1. . an. .3)    .. A21 ∈ R(n−k)×k e A22 ∈ R(n−k)×(n−k) .CAPITOLO 1. a loro volta. ak+1. B21 ∈ R(n−k)×k e B22 ∈ R(n−k)×(n−k) . . in particolare la somma `e la seguente   A11 + B11 A12 + B12 A+B = A21 + B21 A22 + B22 mentre per il prodotto si applica una regola simile al prodotto righe per colonne.k+2 . .    B11 B12 A11 A12 A·B = B21 B22 A21 A22 =  A11 B11 + A12 B21 A11 B12 + A12 B22 A21 B11 + A22 B21 A21 B12 + A22 B22  .2 . ... ..k ak+2.

4 Supponiamo  1 2 0 7 5 0  2 4 1 2 2 0   0 2 2 2 3 0  A=  1 0 0 7 2 0  3 3 2 0 3 0   1 2 3 6 7 1 1 3 9 9 8 0 che A e B siano   0  0     0     0  B=   0     0  1 le seguenti matrici: 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 1 0 0 Posto k = 5 abbiamo le seguente ripartizioni a blocchi   1 2 0 7 5 0 0  2 4 1 2 2 0 0     0 2 2 2 3 0 0      A O 11  A=  1 0 0 7 2 0 0  = A21 I2  3 3 2 0 3 0 0     1 2 3 6 7 1 0  1 3 9 9 8 0 1   1 0 0 0 0 1 2  0 1 0 0 0 3 4     0 0 1 0 0 5 6      I5 B12   B= 0 0 0 1 0 7 8 = O B22  0 0 0 0 1 9 1     0 0 0 0 0 1 2  0 0 0 0 0 3 4 1 3 5 7 9 1 3 2 4 6 8 1 2 4      .2.     Calcolando il prodotto a blocchi si ottiene      A11 A11 B12 I5 B12 A11 O . Il prodotto a blocchi risulta essere particolarmente utile quando la matrice ha una struttura particolare. ovvero nel caso in cui uno dei blocchi sia uguale alla matrice nulla oppure alla matrice identit`a.10 CAPITOLO 1. . = A·B = A21 A21 B12 + B22 O B22 A21 I2 Si pu` o osservare come in questo modo risulta evidente che una parte degli elementi della matrice prodotto non debba essere calcolata. Esempio 1. ELEMENTI DI ALGEBRA LINEARE Tali operazioni sono dette rispettivamente somma a blocchi e prodotto a blocchi.

j−1 ai+1.j−1 an. . . .CAPITOLO 1.j−1 ai−1. .  . k. ai−1. a1. Se la matrice A `e quadrata di ordine n allora fissata una qualsiasi riga (colonna) di A. Una sottomatrice B principale di ordine k di A `e detta principale di testa se `e formata dagli elementi aij . . .  a11  .  ....6 Assegnata una matrice A ∈ Rm×n . a1. Definizione 1.j+1 . ..   . .   a Aij =  i−1.8 Se A ∈ Rn×n `e una matrice di ordine 1.j+1 .  . . 0 < h ≤ m. . . una matrice B ∈ Rh×k ..  . diciamo la i-esima (j-esima) allora applicando la cosiddetta regola di Laplace il determinante di A `e: n X det A = aij (−1)i+j det Aij j=1 dove Aij `e la sottomatrice la j-esima colonna.7 Assegnata una matrice A ∈ Rm×n .j+1 .1 11 Determinante di una matrice quadrata Prima di definire il determinante di una matrice vediamo alcune definizioni preliminari. aij (−1)i+j det Aij . . .2. .. Definizione 1..1  ai+1. Definizione 1. si definisce determinante di A il numero det A = a11 .1  . . ann . 0 < k ≤ n.. . ai+1. `e detta sottomatrice di A se `e ottenuta da A eliminando m − h righe ed n − k colonne. i... .. an.j−1 . . . ..... . ELEMENTI DI ALGEBRA LINEARE 1. j = 1..n  .j+1 Il determinante `e pure uguale a det A = n X i=1  a1n . . ai+1. ai−1. .. . . an1 che si ottiene da A cancellando la i-esima riga e .. . una sottomatrice quadrata B di ordine k ≤ n di A `e detta principale se gli elementi principali di B sono anche gli elementi principali di A.n   . ..  .. .2.2.2.

2) e quindi det A11 = a22 . a21 a22 Fissiamo la prima riga (cio`e poniamo i = 1) ed applichiamo la regola di Laplace: det A = 2 X a1j (−1)1+j det A1j j=1 = a11 (−1)1+1 det A11 + a12 (−1)1+2 det A12 = a11 det A11 − a12 det A12 . ELEMENTI DI ALGEBRA LINEARE 12 cio`e il determinante `e indipendente dall’indice di riga (o di colonna) fissato. . Sia   a11 a12 A= . • Se A `e una matrice triangolare o diagonale allora det A = n Y i=1 aii . Vediamo di calcolare il determinante di una matrice di ordine 2. 1) e quindi det A12 = a21 . Ora A11 = [a22 ].CAPITOLO 1. poich`e cancellando dalla matrice A la prima riga e la seconda colonna resta solo l’elemento in posizione (2. • Se due matrici A e B differiscono solo per lo scambio di due righe (o di due colonne) allora det A = − det B. Il determinante gode delle seguenti propriet`a: • det AB = det A det B (Regola di Binet). poich`e cancellando dalla matrice A la prima riga e la prima colonna resta solo l’elemento in posizione (2. Il determinante di A vale quindi: det A = a11 a22 − a21 a12 . In modo analogo A12 = [a21 ]. Il numero (−1)i+j det Aij prende il nome di cofattore di aij .

in caso contrario viene detta singolare. = 2 − 2 = 0.2.CAPITOLO 1. • se una matrice A ha una riga (o una colonna) `e nulla. Definizione 1. oppure una riga (o una colonna) `e proporzionale ad un’altra riga (o colonna) oppure `e combinazione lineare di due (o pi` u) righe (o colonne) di A allora det A = 0. Definizione 1. • se α ∈ R allora det αA = αn det A. Ora det A22 = det  det A23 = det Quindi det A = 16. • det AT = det A. ELEMENTI DI ALGEBRA LINEARE 13 • det I = 1. • se si moltiplica una riga (o una colonna) di A per un numero reale α allora il determinante di A risulta moltiplicato per α. in questo caso la seconda riga.2.2.9 Una matrice A di ordine n si dice non singolare se il suo determinante `e diverso da zero.5 Calcoliamo il determinante della seguente matrice di ordine 3:   2 1 −1 A =  0 4 3 . Esempio 1. 2 1 1 Calcoliamo il determinante rispetto alla riga (o alla colonna) che ha pi` u elementi uguali a zero.10 Si definisce inversa di A la matrice A−1 tale che: AA−1 = A−1 A = I .  2 −1 2 1 2 1 2 1   = 2 + 2 = 4. det A = −a21 det A21 + a22 det A22 − a23 det A23 = a22 det A22 − a23 det A23 = 4 · det A22 − 3 · det A23 .

cos θ − sin θ sin θ cos θ  . e prescinde dalla conoscenza della formula (1. ELEMENTI DI ALGEBRA LINEARE L’elemento di posto (i.5). (1. Queste classi sono le matrici ortogonali. diagonali ed alcuni tipi di matrici triangolari. det A−1 = det A Per esempio se A `e la matrice di ordine 2:   a b A= c d a(−1)  = (−1)i+j allora det A = ad − bc ed `e facile verificare che la matrice inversa `e:   1 d −b −1 A = . A= − sin θ cos θ Infatti T AA   =  cos θ sin θ − sin θ cos θ =  cos2 θ + sin2 θ − cos θ sin θ + cos θ sin θ − cos θ sin θ + cos θ sin θ cos2 θ + sin2 θ =  1 0 0 1  .5) ij det A Per quello che riguarda il determinante della matrice inversa vale la seguente propriet`a: 1 . cio`e se la sua matrice inversa coincide con la matrice trasposta. cio`e: A−1 = AT .14 CAPITOLO 1. Un esempio di matrice ortogonale `e il seguente   cos θ sin θ . ad − bc −c a Ci sono alcuni tipi di matrici per i quali il calcolo della matrice inversa `e molto semplice. Una matrice si dice ortogonale se AT A = AAT = I. j) della matrice inversa `e uguale a det Aji .

. .CAPITOLO 1.. A=  . i = 1. . In questo caso la matrice inversa di A `e la matrice diagonale avente come elementi principali i reciproci degli elementi principali di A:   1/a11   1/a22 O     −1 . .n−1 1/ann Simili alle matrici diagonali sono le matrici diagonali a blocchi:   D1   D2 O     . . A= . ELEMENTI DI ALGEBRA LINEARE Se invece A `e una matrice diagonale:  a11  a22 O   . . . A = . In questo caso la matrice inversa `e:  −1  D1   D2−1 O     .     O 1/an−1. i = 1. `e una matrice quadrata non singolare di ordine ni .   O an−1.n−1 15  ann       allora `e ovvio che A `e invertibile se aii 6= 0. A−1 =     −1   O Dn−1 −1 Dn Un ultimo esempio riguarda una classe di matrici che viene applicata nella rappresentazione di alcune trasformazioni nel piano e nello spazio e che . n..     O Dn−1 Dn in cui ogni elemento Di . . . . n. ..

cio`e la somma e la differenza sono possibili tra vettori dello stesso tipo e con lo stesso numero di componenti. .  .   1      .  . m .. .  .i  1   .      Quest’ultima propriet`a `e posseduta anche da matrici triangolari con analoga struttura.. ELEMENTI DI ALGEBRA LINEARE 16 vedremo in uno dei prossimi capitoli.   . Per le operazioni tra vettori valgono le stesse regole viste per le matrici.. Solitamente il termine vettore viene associato a vettori colonna e l’insieme dei vettori ad m componenti viene indicato con Rm . Se x `e un vettore colonna di m elementi allora xT `e un vettore riga sempre di m elementi.3 Vettori Se A ∈ Rm×1 (o A ∈ R1×m ). yi = n X j=1 aij xj . A= . e sono le matrici triangolari del tipo:   1 a1i   1 a2i   . .   . .  .  .i    1     .. A= . ai−1...   1 in questo caso si pu`o facilmente verificare che  1 −a1i  1 −a2i  .. i = 1. 1. −ai−1.CAPITOLO 1. . la matrice si riduce ad una sola colonna (o una sola riga) e viene detta vettore colonna (o riga) ad m elementi o componenti..   .. Se A ∈ Rm×n e x ∈ Rn `e possibile definire il prodotto matrice per vettore nel seguente modo: y = Ax..

Se si calcola il prodotto T (x.1 Sia  5 1 0 A =  −1 1 2  5 −5 1  e sia x il vettore  1 x =  2 .CAPITOLO 1. `e definito nel seguente modo: siano xy ∈ Rn . Se accade che α = 0 allora si dice che i due vettori sono ortogonali. y) = xT y = n X xi yi = α i=1 e il risultato `e un numero reale. La quantit`a √ xT x viene detta lunghezza del vettore. ·). Esempio 1. che viene indicato come (·. allora (x. Il prodotto interno. Tra vettori sono consentite le seguenti operazioni: 1. prodotto esterno. 3  Calcoliamo il vettore prodotto y = Ax: y1 = 5 · 1 + 1 · 2 + 0 · 3 = 7 y2 = −1 · 1 + 1 · 2 + 2 · 3 = 7 y3 = 5 · 1 − 5 · 2 + 1 · 3 = −2. . x) = x x = n X i=1 e x2i ≥ 0 (x. x) = 0 solo se x `e il vettore che ha tutte le componenti uguali a zero.3. Non `e possibile effettuare il prodotto AxT perch`e le dimensioni non sono compatibili. prodotto interno. 2. ELEMENTI DI ALGEBRA LINEARE 17 quindi y ∈ Rm .

4  Calcoliamo prima il prodotto interno: xT y = 1 · (−1) + 2 · (−2) + 3 · 4 = 7. . n.CAPITOLO 1. . . i = 1.3. ELEMENTI DI ALGEBRA LINEARE 18 Se x ∈ Rn e y ∈ Rm allora il prodotto esterno viene definito nel seguente modo: A = xyT e il risultato `e una matrice di dimensione n × m i cui elementi sono: aij = xi yj . . anche se va osservato che B = AT . Esempio 1. Osserviamo che tale operazione gode della propriet` a commutativa. j = 1. −3 −6 12 Tale prodotto non gode della propriet` a commutativa. . poich`e T y x = 7. . . Per quello che riguarda il prodotto esterno. il risultato `e la matrice   −1 −2 4 A = xyT =  −2 −4 8  . infatti:   −1 −2 −3 B = yxT =  −2 −4 −6  . m. 4 8 12 Infatti B 6= A. .2 Siano x e y i seguenti vettori:   1  x= 2  3 e  −1 y =  −2  . .

1 Coordinate cartesiane Un concetto fondamentale che si incontra quando si deve affrontare la geometria analitica. Si definisce ordinata di P la lunghezza del segmento OPy con il segno positivo se Py si trova al di sopra dell’origine. degli oggetti geometrici che si intendono rappresentare matematicamente. cio`e alcuni particolari punti (o enti geometrici) privilegiati rispetto ai quali definire la posizione dei punti. delle figure. Classicamente nel cosiddetto sistema di riferimento delle Coordinate Cartesiane vengono considerate due particolari rette. Infatti considerato un punto P del piano la sua posizione venga determinata nel seguente modo. Il punto di intersezione tra tali rette prende il nome di Origine del Riferimento Cartesiano (infatti `e indicato con O) e `e il punto rispetto al quale viene definita la posizione degli altri punti.1 si mandano da P le rette parallele agli assi cartesiani che intercettano gli stessi nei due punti Px e Py . cio`e lo studio della rappresentazione matematica degli enti geometrici. Per poter descrivere in modo efficace la posizione di un qualsiasi oggetto `e necessario fissare il cosiddetto sistema di riferimento. una orientata verso destra e l’altra verso l’alto cui vengono dati rispettivamente nome di asse delle ascisse (o asse delle x) e asse delle ordinate (o asse delle y). segno negativo in caso contrario. Osservando la Figura 2.Capitolo 2 Elementi di Geometria Analitica 2. Si definisce ascissa di P la lunghezza del segmento OPx con il segno positivo se Px si trova a destra dell’origine. `e quello di posizione. segno negativo in caso 19 . tra di loro perpendicolari.

risultino perfettamente determinati i corrispondenti valori dell’altra (variabile dipendente). contrario.1 segno di x x>0 x<0 x<0 x>0 segno di y y>0 y>0 y<0 y<0 Il concetto di funzione Una funzione `e una relazione che lega due grandezze variabili in modo che. ELEMENTI DI GEOMETRIA ANALITICA y Py • P (x1 .1: Coordinate cartesiane del punto P.20 CAPITOLO 2. Il segno assunto dall’ascissa e dall’ordinata di un punto P (x. Gli assi del riferimento cartesiano dividono il piano in quattro settori. detti quadranti. assegnati valori arbitrari ad una di esse (variabile indipendente). numerati a partire da quello in alto a destra (primo quadrante) fino all’ultimo in basso a destra (quarto quadrante) e procedendo in senso antiorario. y) `e quello riportato nella seguente tabella: Quadrante I II III IV 2.1. L’origine ha coordinate (0. y1 ) O Px x Figura 2. Nel caso della geometria analitica un primo obiettivo `e quello di . 0).

(oppure x = f (y)) oppure sotto forma implicita F (x. y)) con x (o y) appartenente all’insieme di definizione della funzione. Vogliamo calcolare la lunghezza del segmento AB. curve e cos`ı via) una funzione matematica cio`e stabilire il legame tra le ascisse e le ordinate dei punti facenti parte di tale ente. a meno che l’espressione F (x. y2 ). se esistono. mentre assai frequente `e il caso in cui a tale espressione possano essere associate pi` u equazioni esplicite in una delle due variabili. Nei prossimi paragrafi vedremo come associare ai pi` u comuni enti geometrici le relative espressioni funzionali. y1 ) e (x2 . risolvere l’equazione rispetto ad una delle variabili ed ottenere in questo modo un’espressione esplicita. Esplicitare una funzione data sotto forma implicita significa. quando ci`o `e possibile. f (x)) (oppure (g(y). ELEMENTI DI GEOMETRIA ANALITICA 21 associare ad ogni ente geometrico (rette. y) = 0 e G(x. Tale insieme prende il nome di insieme di definizione o dominio della funzione. Un altro concetto importante strettamente legato a quello di funzione `e il grafico. 2. y) = 0 cio`e i punti che soddisfano entrambe le equazioni.2 Distanza tra due punti Siano A e B due punti del piano cartesiano aventi coordinate rispettivamente (x1 . y) = 0 oppure y = g(x) G(x. Generalmente tale eventualit`a `e piuttosto remota. y) = 0) si definiscono punti di intersezione.CAPITOLO 2. che . Nel caso in cui la funzione abbia un’espressione nota esplicitamente si deve considerare l’insieme dei valori x che danno come risultato un valore reale accettabile. Nel caso in cui la funzione sia definita implicitamente allora non ha senso parlare di insieme di definizione. Il grafico di una funzione nota esplicitamente `e l’insieme dei punti del piano aventi coordinate (x. coniche. Le funzioni possono essere presentate sotto forma esplicita y = f (x). Assegnate due funzioni f (x) e g(x) (o due espressioni implicite F (x. iniziando dalle rette. le soluzioni del sistema   y = f (x) F (x. y) = 0 possa essere resa esplicita rispetto ad una delle variabili. y) = 0.1.

2 possiamo considerare che AB `e la lunghezza dell’ipotenusa del triangolo rettangolo ABC. Con riferimento alla Figura 2. y1 ) e B(x2 .1. viene solitamente indicata con AB.22 CAPITOLO 2. Osserviamo che l’ordine con cui le coordinate appaiono nella formula `e arbitrario (la distanza di B da A `e la stessa di A da B). Facendo riferimento alla Figura 2. Se i due punti hanno la stessa ascissa allora AB = |y2 − y1 | mentre se hanno la stessa ordinata AB = |x2 − x1 |.3 si vuole calcolare l’ascissa del .3 Coordinate del punto medio di un segmento Siano A(x1 . segue che AB = BC = y2 − y1 p (x2 − x1 )2 + (y2 − y1 )2 .2: Distanza tra due punti. 2. che abbiamo chiamato M . Si vogliono determinare le coordinate del punto medio del segmento AB. pertanto pu`o essere calcolata applicando il Teorema di Pitagora. y2 ) due punti del piano cartesiano. ELEMENTI DI GEOMETRIA ANALITICA y B By Ay O A C Ax Bx x Figura 2. Poich`e le lunghezze dei cateti sono AC = x2 − x1 .

2 2 In modo perfettamente analogo si arriva a determinare che. si ha: 1 x1 + x2 xM = x1 + (x2 − x1 ) = . retta parallela all’asse x. retta coincidente con l’asse y. Poich`e M `e il punto medio del segmento AB si ha che AM = M B e. 3.4 Le rette Volendo associare ad ogni retta la relativa equazione consideriamo i seguenti casi: 1.1. detta xM l’ascissa di M. ELEMENTI DI GEOMETRIA ANALITICA y B By M My Ay O A Ax Mx Bx x Figura 2. 2 2. detta yM l’ordinata di M . segue: y1 + y2 yM = . . di conseguenza anche 1 1 Ax Mx = Mx Bx = Ax Bx = (x2 − x1 ). punto Mx e l’ordinata di My . 2. retta coincidente con l’asse x. 2 2 Quindi.3: Punto medio di un segmento.23 CAPITOLO 2.

cio`e deve essere y =m x ⇔ y = mx. Poich`e i triangoli OAAx e OBBx sono simili vale il seguente rapporto di proporzionalit`a tra i lati y1 y2 = =m x1 x2 (2. Con riferimento alla Figura 2.1).1) essendo m una costante reale. Analogamente per una retta parallela all’asse y. y) affinch`e appartenga a questa retta deve essere soddisfatta l’equazione: y = 0. y1 ) e B(x2 . ELEMENTI DI GEOMETRIA ANALITICA 24 4. Tutti i punti della retta hanno la stessa ordinata a pertanto soddisfano l’equazione: y = a. infatti i punti dell’asse y hanno ascissa nulla. retta parallela all’asse y. se il punto di intersezione con l’asse x ha coordinate (a. Se P (x. pertanto considerato un punto P del piano avente coordinate (x. Anche il secondo caso `e semplice. pertanto soddisfano l’equazione: x = 0. retta generica del piano. Sia ora r una retta passante per l’origine del riferimento.CAPITOLO 2. y) `e un generico punto del piano affinch`e appartenga alla retta le sue coordinate devono soddisfare la stessa relazione di proporzionalit`a (2. Nel primo caso l’equazione `e banale poich`e i punti che appartengono all’asse x hanno ordinata nulla. y2 ). di coordinate (0.4 siano A e B due punti della retta aventi coordinate rispettivamente A(x1 . 0) allora i punti della retta soddisfano l’equazione: x = a. retta passante per l’origine. . 5. 6. a). Se ora consideriamo una retta parallela all’asse x sia A il suo punto d’intersezione con l’asse y.

La verifica che il punto A `e l’origine del riferimento X Y `e immediata.5). Supponiamo ora di traslare l’asse x verso l’alto in modo tale che l’origine del nuovo riferimento cartesiano coincida con il punto A. Le relazioni tra le coordinate del nuovo riferimento rispetto al vecchio sono:   X =x (2. Nel caso di una retta generica non passante per l’origine (Figura 2. pertanto un modo . sostituendo le relazioni (2. supponiamo che essa intercetti l’asse y nel punto A di coordinate (0. si ottiene y − q = mx ⇒ y = mx + q.2)  Y = y − q.2). Nel piano X Y la retta in questione passa per l’origine. Le rette in R2 sono quindi rappresentate dall’equazione algebrica di primo grado: y = mx + q. ELEMENTI DI GEOMETRIA ANALITICA y r P • B A O Ax x Bx Figura 2.4: Retta passante per l’origine. Indichiamo con X Y tale nuovo riferimento. q). (2.25 CAPITOLO 2.3) Tuttavia tale rappresentazione non riesce a tenere conto anche dell’asse y (che ha equazione x = 0) e delle rette ad esso parallele. quindi ha equazione: Y = mX da cui.

4) si pu`o ricavare l’espressione di y: c a y =− x− b b e.5 Equazione della retta passante per due punti Siano P1 (x1 . (2. Supponiamo che tale retta non sia parallela a nessuno degli assi del piano altrimenti il problema sarebbe banalmente risolto. Sia y = mx + q (2. Se b 6= 0 allora da (2.26 CAPITOLO 2. 2. si ottiene l’equazione dell’asse y. y1 ) e P2 (x2 .1. si riottiene la (2.5: Retta generica. y2 ) due punti del piano xy. Il valore m prende il nome di coefficiente angolare della retta.4) In questo modo.3). posto a = 1 e b = c = 0.5) . mentre q `e detto termine noto. ELEMENTI DI GEOMETRIA ANALITICA y≡Y r A X O x Figura 2. posto m = −a/b e q = −c/b. Si vuole determinare l’equazione della retta passante per P1 e P2 . alternativo di rappresentare l’equazione di una retta `e: ax + by + c = 0.

6) da (2.5): e (2. quindi: y2 = mx2 + q. y2 − y1 x2 − x1 Se invece la condizione appena riportata non `e verificata allora i 3 punti non appartengono alla stessa retta. y2 − y1 x2 − x1 (2.6) e stessa cosa vale anche per P2 . (x2 − x1 )2 Sostituendo l’espressione del coefficiente angolare (2. con m e q coefficienti incogniti.6) da (2. (2.9) si ottiene l’equazione richiesta: y − y1 x − x1 = . allora: p AB = (x2 − x1 )2 + (y2 − y1 )2 = s (x2 − x1 )2   (y2 − y1 )2 1+ .CAPITOLO 2.8) per (2. Matematicamente la condizione per tale situazione `e la seguente: y3 − y1 x3 − x1 = . P2 e P3 sono allineati. y3 ) se queste verificano l’equazione (2.5).7): Dividendo (2.8) y2 − y1 = m(x2 − x1 ). Diamo ora una formula alternativa per il calcolo della distanza tra due punti.10) vuol dire che i tre punti P1 . Le coordinate del punto P1 devono soddisfare l’equazione (2. (2. y2 ) due punti del piano.7) y − y1 = m(x − x1 ) (2. (2. Siano A(x1 .11) segue: √ AB = |x2 − x1 | 1 + m2 .10) Dalla relazione (2.9) Sottraiamo ora (2. (2.12) . quindi y1 = mx1 + q (2. ELEMENTI DI GEOMETRIA ANALITICA 27 l’equazione di tale retta. y1 ) e B(x2 .9) si ha l’espressione del coefficiente angolare della retta in funzione delle coordinate dei due punti: y2 − y1 .11) m= x2 − x1 Inoltre se supponiamo di avere un terzo punto P3 di coordinate (x3 .

RQ = mx1 .7 siano r ed s due rette tra loro perpendicolari e aventi equazione: r : y = mx. m2 x2 + q2 ).7 Condizione di perpendicolarit` a tra rette Ricordiamo che due rette sono perpendicolari se nel loro punto d’intersezione formano 4 angoli uguali a 90◦ . q1 ) e B(0. Tali punti hanno coordinate A(0. Il punto S sulla retta s avr`a coordinate (x1 . s : y = m1 x. m1 x1 ). con x1 6= 0.13) Ora QS = 0 − m1 x1 = −m1 x1 . QS OQ (2. e supponiamo che tali punti abbiano la stessa ascissa x1 6= 0 (Figura 2. 2.1. 0). m1 x1 + q1 ) e Q(x1 . avr`a coordinate (x1 . I triangoli OQR e OQS sono simili pertanto vale la seguente proporzionalit`a: OQ RQ = . Consideriamo due generici punti appartenenti a tali rette.1.CAPITOLO 2. Dalla Figura 2. Per ovvie considerazioni geometriche i segmenti AB e P Q hanno la stessa lunghezza. ELEMENTI DI GEOMETRIA ANALITICA 2. Consideriamo per semplicit`a il caso di due rette passanti per l’origine. q2 ). Consideriamo i punti di intersezione di tali rette con l’asse y. Le loro coordinate saranno pertanto P (x1 . Sia invece Q il punto di coordinate (x1 . r1 ed r2 . Il punto R sulla retta r di ascissa pari a x1 . P su r1 e Q su r2 . parallele. mx1 ).6 28 Condizione di parallelismo tra rette Supponiamo di avere due rette.6). e rispettivamente di equazioni: y = m 1 x + q1 e y = m 2 x + q2 . pertanto: AB = QP ⇒ q1 − q2 = m 1 x1 + q1 − m 2 x1 − q2 da cui segue (m1 − m2 )x1 = 0 e quindi necessariamente m1 = m2 . rispettivamente A e B.

la lunghezza del segmento avente come estremo P e perpendicolare ad r.8 sia P H la distanza da calcolare e sia M il punto della retta r che ha la stessa ascissa di P e quindi coordinate (x1 .8 1 .6: Rette parallele. Dalla Figura 2.29 CAPITOLO 2. −m1 x1 x1 da cui segue che deve essere necessariamente m1 = − 2. y1 ) ed r una retta di equazione y = mx + q. Tale distanza `e. mx1 +q).1. m (2. per definizione. pertanto (2. Il punto N ha coordinate (x1 .14) Distanza di un punto da una retta Sia P un punto del piano di coordinate (x1 .13) diventa mx1 x1 = . Supponiamo che P non appartenga ad r. Vogliamo stabilire la formula per calcolare la distanza di P da r. 0) . ELEMENTI DI GEOMETRIA ANALITICA y r1 P r2 A Q B O x Figura 2.

posto pertanto d = P H la distanza da calcolare vale la seguente proporzione: PH PM = . ELEMENTI DI GEOMETRIA ANALITICA y R r Q O x S s Figura 2. ND MD Calcoliamo le lunghezze dei segmenti coinvolti in tale relazione.12) segue P M = |y1 − mx1 − q| . y=0 m I triangoli HM P e M N D sono simili.30 CAPITOLO 2. mentre per determinare l’ascissa di D si deve determinare l’intersezione della retta r con l’asse x:  q y = mx + q ⇒ x=− . Dalla formula (2.7: Rette perpendicolari.

q .

.

.

N D = .

− − x1 .

m .

√ .

q .

.

M D = .

− − x1 .

1 + m 2 . m (2.15) .

8: Distanza di un punto da una retta.31 CAPITOLO 2. Andando a sostituire in (2.15) si ha: |y − mx1 − q| d . ELEMENTI DI GEOMETRIA ANALITICA y P H M D O N x Figura 2.

q .

= .

q1 .

√ .

.

.

.

.

− − x1 .

.

− − x1 .

1 + m2 (2. fatte le dovute semplificazioni.2 |y1 − mx1 − q| √ . Considerato un cono di rotazione avente vertice V e angolo al vertice 2α supponiamo di intersecarlo con un piano generico non passante per il vertice e che forma un angolo pari a β con l’asse del cono (cio`e l’asse intorno al quale avviene la rotazione delle due .16) Le coniche La conica `e una curva che si ottiene intersecando un cono rotondo indefinito con un piano non passante per il vertice. segue la formula finale: d= 2. 1 + m 2 m m da cui.

La prima `e che β=α allora il piano taglia il cono lungo una linea aperta detta parabola Se invece β>α allora il piano taglia il cono lungo una linea chiusa detta ellisse.2. 2. La caratterizzazione tra i diversi tipi di coniche dipende dal segno assunto dalla quantit`a b2 − 4ac. b. d. cio`e insiemi di punti che godono tutti di una stessa propriet`a. Nel caso particolare in cui π β= 2 allora la curva chiusa `e detta circonferenza. Nel caso specifico .1 Rappresentazione cartesiana delle coniche In generale una conica `e descritta da un’equazione implicita del secondo ordine: ax2 + bxy + cy 2 + dx + ey + f = 0 con a. 2. In dettaglio: b2 − 4ac = 0: La curva `e una parabola.2. c.2 La parabola Dal punto di vista geometrico le coniche sono dei luoghi geometrici. e che viene detta iperbole. Ultimo caso `e quello in cui β<α in cui il piano taglia il cono lungo una linea aperta costituita da due rami. f ∈ R e dove il termine b `e uguale a zero quando uno degli assi di simmetria della curva coincide con uno degli assi del riferimento cartesiano (o `e parallelo ad uno di essi). e. b2 − 4ac > 0: La curva `e un’iperbole.CAPITOLO 2. ELEMENTI DI GEOMETRIA ANALITICA 32 rette che formano il solido stesso). Si possono presentare diverse eventualit`a. b2 − 4ac < 0: La curva `e un’ellisse (o una circonferenza se a = c).

9). (x − α)2 + (y − β)2 = (y − d)2 x2 − 2xα + α2 + y 2 − 2yβ + β 2 = y 2 − 2yd + d2 x2 − 2xα − 2(β − d)y + α2 + β 2 − d2 = 0.33 CAPITOLO 2. Consideriamo innanzitutto il caso in cui la direttrice `e una retta parallela all’asse x e quindi ha equazione y = d mentre il fuoco F ha coordinate (α. Supponendo che sia β 6= d.9: La parabola. si pu`o ricavare l’espressione . Il caso `e descritto nella Figura 2. detta direttrice (Figura 2. quindi deve quindi risultare: PF = PH cio`e Elevando a quadrato p (x − α)2 + (y − β)2 = |y − d|. la parabola `e l’insieme dei punti del piano equidistanti da un punto fisso.9. e da una retta fissa. cio`e che il fuoco non appartiene alla direttrice (altrimenti si originerebbe una parabola degenere). β). detto fuoco. ELEMENTI DI GEOMETRIA ANALITICA P F• V H r Figura 2.

Una volta assegnata l’equazione (2.CAPITOLO 2. β−d c= α 2 + β 2 − d2 2(β − d) segue che la parabola ammette come rappresentazione una classica equazione del secondo ordine: y = ax2 + bx + c.17) quindi un generico punto appartenente alla parabola ha coordinate (x. ELEMENTI DI GEOMETRIA ANALITICA 34 di y in funzione di x: 2(β − d)y = x2 − 2xα + α2 + β 2 − d2 e quindi y= Posto a= 1 α α 2 + β 2 − d2 x2 − x+ . 2(β − d) b=− α . cio`e se il fuoco si trova al di sotto della direttrice allora a < 0 e la parabola volge la concavit`a verso il basso. 2(β − d) β−d 2(β − d) 1 .17) si possono ricavare le coordinate del fuoco e l’equazione della direttrice risolvendo il sistema  1   a =   2(β − d)       α b =− β−d        α 2 + β 2 − d2   . Se β > d. (2. Osservazioni: 1. 3. Se invece β < d. 2. ax2 + bx + c).  c = 2(β − d) . Innanzitutto si pu`o notare dalla definizione dei coefficienti che a 6= 0. cio`e se il fuoco si trova al di sopra della direttrice allora a > 0 e la parabola volge la concavit`a verso l’alto.

 b   α =−    2a      1 = 2a β−d       2    4ac − b = (β − d)(β + d)  4a2  b   α = −   2a      1 β−d =  2a         β +d = −∆ 2a e d.CAPITOLO 2. ELEMENTI DI GEOMETRIA ANALITICA Vediamo di determinare quindi le incognite α. =− b 2a = 2a α 2 + β 2 − d2 = 2(β − d)  b   α =−    2a      1 = 2a β−d         b2 c   − = β 2 − d2 . a 4a2  b   α = −   2a      1 β−d =  2a         − ∆ = (β + d) 1 4a2 2a  b   α =−   2a      1−∆ 2β =  2a         2d = − ∆ − 1 2a 2a 35 . β    1   α   2a =     β − d           1 b = −2aα β−d             α 2 + β 2 − d2     c =    c 2(β − d)  b   α =−    2a      1 = 2a β−d         b2 c   = 2 + β 2 − d2 a 4a Poniamo ∆ = b2 − 4ac.

α−d c= α 2 + β 2 − d2 2(α − d) . 2(α − d) b=− β . L’asse della parabola ha equazione b x=− (2. si pu`o ricavare l’espressione di x in funzione di y: 2(α − d)x = y 2 − 2βy + α2 + β 2 − d2 e quindi x= Posto a= 1 β α 2 + β 2 − d2 y2 − x+ . 2(α − d) α−d 2(α − d) 1 . Elevando a quadrato (x − α)2 + (y − β)2 = (x − d)2 x2 − 2αx + α2 + y 2 − 2βy + β 2 = x2 − 2dx + d2 y 2 − 2βy + α2 + β 2 − d2 − 2(α − d)x = 0. In analogia con il caso precedente si deve tener presente che la distanza del punto P dalla direttrice vale in questo caso |x − d|. 4a La retta perpendicolare alla direttrice e che `e asse di simmetria della parabola interseca la curva in un punto detto vertice.18): y=a b2 b2 b2 ∆ − + c = − +c=− .18) 2a mentre per determinare l’ordinata del vertice `e sufficiente sostituire nell’equazione della parabola il valore x dato da (2. 2 4a 2a 4a 4a Consideriamo ora il caso in cui la direttrice `e una retta parallela all’asse y e quindi ha equazione x = d. Supponendo che sia α 6= d.CAPITOLO 2. Quindi p (x − α)2 + (y − β)2 = |x − d|. ELEMENTI DI GEOMETRIA ANALITICA 36  b   α =−   2a      1−∆ β =  4a         d = −1 + ∆.

pertanto |y − mx − q| p √ = (x − α)2 + (y − β)2 . 1 + m2 Eleviamo a quadrato (y − mx − q)2 = (x − α)2 + (y − β)2 2 1+m y 2 + m2 x2 + q 2 − 2mxy − 2qy + 2mqx = = (1 + m2 )(x2 − 2αx + α2 + y 2 − 2βy + β 2 ) da cui. Anche in questo caso va imposta l’equidistanza di un generico punto del piano di coordinate (x.19) quindi un generico punto appartenente alla parabola ha coordinate (ay 2 + by + c. Siano (α. β). detto centro.10.16). In questo caso la distanza del punto dalla direttrice va calcolato applicando la formula (2. β) le coordinate del centro C e sia r la distanza di tali punti da C. 2. y).3 La circonferenza La circonferenza `e l’insieme dei punti del piano equidistanti da un punto fisso. Con riferimento alla Figura 2. come `e noto r prende il nome di raggio della circonferenza. raccogliendo tutti i termini al secondo membro x2 + m2 y 2 + 2mxy − 2(mq + α + αm2 )x − 2(β + βm2 − q)y+ +(α2 + β 2 )(1 + m2 ) − q 2 = 0. y) dalla direttrice e dal fuoco F avente coordinate (α. ELEMENTI DI GEOMETRIA ANALITICA 37 segue che la parabola ammette come rappresentazione un’equazione del secondo ordine: x = ay 2 + by + c (2. un punto P di coordinate (x. y) per appartenere alla curva deve essere tale che: PC = r .2. Vediamo ora come ultimo caso e solo per esempio il calcolo dell’equazione di una parabola avente come direttrice una generica retta del piano avente equazione: y = mx + q.CAPITOLO 2.

b = −2β. ELEMENTI DI GEOMETRIA ANALITICA y • C r O x Figura 2. c = α2 + β 2 − r 2 si ha la generica equazione di una circonferenza: x2 + y 2 + ax + by + c = 0. a = −2α. Da tale generica equazione si possono ricavare agevolmente le coordinate del centro che sono a b α=− . r= 4 4 Se c = 0 allora l’origine del riferimento cartesiano sta sulla circonferenza mentre se a = 0 allora il centro appartiene all’asse x mentre se b = 0 allora .38 CAPITOLO 2.10: Circonferenza di centro in C e raggio r. cio`e quindi p (x − α)2 + (y − β)2 = r. β=− 2 2 e il raggio r a2 b 2 + − c. (x − α)2 + (y − β)2 = r2 Posto x2 + y 2 − 2αx − 2βy + α2 + β 2 − r2 = 0.

C1 e C2 hanno un solo punto d’intersezione. ELEMENTI DI GEOMETRIA ANALITICA 39 appartiene all’asse y. Appare ovvio che i punti in comune tra C1 e C2 appartengono all’asse radicale. cio`e x21 + y12 + a1 x1 + b1 y1 + c1 = 0 x21 + y12 + a2 x1 + b2 y1 + c2 = 0.11): 1. Tale retta prende il nome di asse radicale delle due circonferenze. C1 e C2 hanno infiniti punti d’intersezione. Se a = b = 0 allora il centro coincide con l’origine e la circonferenza ha equazione: x2 + y 2 = r 2 . C1 e C2 non hanno punti d’intersezione. L’equazione dell’asse radicale pu`o essere utilizzata per determinare le coordinate dei punti di intersezione tra due circonferenze. Sottraendo le due equazioni si ottiene (a1 − a2 )x1 + (b1 − b2 )y1 + (c1 − c2 ) = 0 . Infatti se consideriamo le due circonferenze sono possibili 4 situazioni (riassunte nella Figura 2. 3.CAPITOLO 2. y1 ) appartenga ad entrambe le circonferenze e quindi le sue coordinate soddisfino le due equazioni. Se sottraiamo le due equazioni otteniamo (a1 − a2 )x + (b1 − b2 )y + (c1 − c2 ) = 0 che rappresenta l’equazione di una retta purch`e tutti e tre i coefficienti non siano contemporaneamente nulli (il che vorrebbe dire che le due circonferenze C1 e C2 coincidono) oppure sia diverso da zero solo il termine noto c1 − c2 (il che porterebbe ad un’equazione priva di senso). Supponiamo di essere nel secondo o nel terzo caso. 4. Siano C1 e C2 due diverse circonferenze aventi equazione rispettivamente C1 : x 2 + y 2 + a1 x + b 1 y + c 1 = 0 e C2 : x2 + y 2 + a2 x + b2 y + c2 = 0. C1 e C2 hanno due punti d’intersezione. Infatti supponiamo che il punto P di coordinate (x1 . 2.

11: Possibili intersezioni tra due circonferenze.2.CAPITOLO 2.4 L’ellisse L’ellisse `e il luogo geometrico dei punti el piano per i quali `e costante la somma delle distanze da due punti fissi detti fuochi. b1 − b2 Quindi m ed ma soddisfano la condizione di perpendicolarit`a tra rette (2. −b1 /2) e (−a2 /2. Sia P un punto di . Un’ultima osservazione riguardante tale retta `e che essa `e perpendicolare alla retta congiungente i centri delle due circonferenze. quindi P appartiene all’asse radicale poich`e le sue coordinate soddisfano l’equazione di tale retta. ELEMENTI DI GEOMETRIA ANALITICA C1 C2 C1 C1 C2 40 C2 C1 ≡ C2 Figura 2. 2.14). Infatti i centri delle due circonferenze sono i punti C1 e C2 di coordinate rispettivamente (−a1 /2. −b2 /2) pertanto la retta che li unisce ha coefficiente angolare m= −b2 + b1 b1 − b2 = −a2 + a1 a1 − a2 mentre il coefficiente angolare dell’asse radicale `e ma = − a1 − a2 .

12).20) otteniamo p p (x + c)2 + y 2 + (x − c)2 + y 2 = 2a p p (x − c)2 + y 2 = 2a − (x + c)2 + y 2 . eliminando i termini uguali nei due membri. ed isolando il termine con la radice quadrata: p a (x + c)2 + y 2 = a2 + cx eleviamo nuovamente a quadrato: a2 (x2 + 2cx + c2 + y 2 ) = (a2 + cx)2 .12: Costruzione dell’ellisse. ELEMENTI DI GEOMETRIA ANALITICA y P • • F′ O • F x Figura 2. 0) e (−c.41 CAPITOLO 2. 0). Applicando la formula della distanza tra due punti del piano in (2.20) dove a `e una costante positiva. coordinate generiche (x. y) e siano F ed F ′ i due fuochi che supponiamo stiano sull’asse x e siano simmetrici rispetto all’origine pertanto hanno coordinate rispettivamente (c. Eleviamo a quadrato i due membri: x2 − 2cx + c2 + y 2 = 4a2 + x2 + 2cx + c2 + y 2 − 4a p (x + c)2 + y 2 da cui. Poniamo P F ′ + P F = 2a (2. essendo c una costante positiva (vedere Figura 2.

−b). b) e (0.12 consideriamo il triangolo P F F ′ e applichiamo la propriet`a che la somma delle lunghezze di due lati `e sempre maggiore della lunghezza del terzo lato si ha PF′ + PF > FF′ cio`e 2a > 2c possiamo quindi porre ⇒ a2 − c2 > 0. Un’ultima cosa da osservare `e che non `e possibile esplicitare univocamente l’equazione dell’ellisse. a2 b Tale equazione rappresenta un’ellisse avente fuochi sull’asse delle x posti simmetricamente rispetto all’origine (vedere Figura 2.21) Se nella Figura 2. dividendo per a2 b2 . (2.21): b 2 x 2 + a2 y 2 = a2 b 2 e. si ottiene l’equazione x2 y 2 + 2 = 1. ELEMENTI DI GEOMETRIA ANALITICA 42 a2 x2 + 2a2 cx + a2 c2 + a2 y 2 = a4 + c2 x2 + 2a2 cx Isolando i termini in x e y al primo membro si ottiene (a2 − c2 )x2 + a2 y 2 = a2 (a2 − c2 ).13). infatti volendo ricavare y in funzione di x si ottiene: y2 x2 a2 − x 2 =1− 2 = b2 a a2 e quindi y2 = b2 2 (a − x2 ) 2 a ⇒ y=± b√ 2 a − x2 a . Il valore 2a rappresenta pertanto la lunghezza del cosiddetto asse maggiore dell’ellisse. mentre 2b `e la lunghezza dell’asse minore. Noti a e b si pu`o ricavare l’ascissa positiva di uno dei due fuochi dalla formula √ c = a2 − b 2 . 0) e (−a. 0) e l’asse y nei punti C e D di coordinate rispettivamente (0. L’ellisse inteseca l’asse x nei punti A e B di coordinate rispettivamente (a.CAPITOLO 2. a2 − c 2 = b 2 e sostituire in (2.

2.43 CAPITOLO 2.13: Ellisse con fuochi posti sull’asse x. purch`e sia positiva l’espressione sotto radice a2 − x 2 ≥ 0 ⇔ −a ≤ x ≤ a. y) e siano F ed F ′ i due fuochi che supponiamo stiano sull’asse x e siano simmetrici rispetto all’origine pertanto hanno coordinate . mentre la funzione b√ 2 y=− a − x2 a individua la parte di curva in verde. ELEMENTI DI GEOMETRIA ANALITICA y C • F′ B • F O A x D Figura 2. 2.14. Sia P un punto di coordinate generiche (x.5 L’iperbole L’iperbole `e il luogo geometrico dei punti el piano per i quali `e costante la differenza delle distanze da due punti fissi detti fuochi. In particolare la funzione y=+ b√ 2 a − x2 a individua la porzione di curva evidenziata in rosso nella Figura 2.

Eleviamo a quadrato i due membri: p x2 + 2cx + c2 + y 2 = 4a2 + x2 − 2cx + c2 + y 2 + 4a (x − c)2 + y 2 da cui. eliminando i termini uguali nei due membri. Applicando la formula della distanza tra due punti del piano in (2.22) dove a `e una costante positiva. ELEMENTI DI GEOMETRIA ANALITICA y C B • F′ • F O A x D Figura 2.14: rispettivamente (c. essendo c una costante positiva (vedere Figura 2. 0). ed isolando il termine con la radice quadrata: p cx − a2 = a (x − c)2 + y 2 eleviamo nuovamente a quadrato: (cx − a2 )2 = a2 (x2 − 2cx + c2 + y 2 ) . 0) e (−c. Poniamo P F ′ − P F = 2a (2.22) otteniamo p p (x + c)2 + y 2 − (x − c)2 + y 2 = 2a p p (x + c)2 + y 2 = 2a + (x − c)2 + y 2 .12).44 CAPITOLO 2.

23): b 2 x 2 − a2 y 2 = a2 b 2 e.12 consideriamo il triangolo P F F ′ e applichiamo la propriet`a che la differenza delle lunghezze di due lati `e sempre minore della lunghezza del terzo lato si ha PF′ − PF < FF′ cio`e 2a < 2c ⇒ c2 − a2 > 0. mentre non ha punti di intesezione con l’asse y. Anche per l’esplicitazione dell’equazione dell’iperbole vale lo stesso discorso fatto per l’ellisse. . ELEMENTI DI GEOMETRIA ANALITICA 45 c2 x2 + a4 − 2a2 cx = a2 x2 − 2a2 cx + a2 c2 + a2 y 2 . a2 b Dall’equazione `e facile stabilire che la curva inteseca l’asse x nei punti A e B di coordinate rispettivamente (a. possiamo quindi porre c 2 − a2 = b 2 e sostituire in (2.23) Se nella Figura 2.CAPITOLO 2. 0). Isolando i termini in x e y al primo membro si ottiene (c2 − a2 )x2 − a2 y 2 = a2 (c2 − a2 ). (2. si ottiene l’equazione finale dell’iperbole: x2 y 2 − 2 = 1. infatti si pu`o facilmente verificare che b√ 2 x − a2 y=± a purch`e sia positiva l’espressione sotto radice x 2 − a2 ≥ 0 ⇔ x ≤ −a o x ≥ a. dividendo per a2 b2 . L’ascissa positiva di uno dei due fuochi vale √ c = a2 + b 2 . 0) e (−a.

3 Rappresentazioni parametriche Supponiamo ora di dover rappresentare graficamente l’arco della circonferenza di equazione x2 + y 2 = 1 nel primo quadrante del piano cartesiano. di conseguenza alcuni tratti della .2.8. per esempio: x = 0. 2. compresi tra 0 e 1.4. Un modo di procedere pu`o essere il seguente. Cio`e: x2 m 2 x2 − 2 =1 a2 b da cui segue che x = ±√ purch`e risulti b 2 − a2 m 2 > 0 ⇒ x2 = ⇒ a2 b 2 .16 si evince che tali punti non sono equidistanti sulla curva. b 2 − a2 m 2 ab b 2 − a2 m 2 m 2 a2 < b 2 ⇒ b b − <m< . Esplicitiamo l’equazione nella variabile x: √ y = 1 − x2 consideriamo una serie di punti equidistanti sull’asse x. a b y= x a sono dette asintoti (sono le rette s ed r in Figura 2. 0.15). Le due particolari rette di equazione b y = − x. Osservando la Figura 2.CAPITOLO 2. 1 calcoliamo il valore di y in tali punti e approssimiamo la circonferenza con la poligonale che unisce tali punti.6. a a Solo le rette il cui coefficiente angolare `e compreso tra −b/a e b/a intersecano in due punti l’iperbole. 0. 0. 0. ELEMENTI DI GEOMETRIA ANALITICA 46 Determiniamo ora l’intesezione dell’iperbole con una generica retta passante per l’origine:  2 x y2   2 − 2 =1 a b   y = mx.

θ1 ] soddisfano l’equazione non parametrica della conica (o della curva). La rappresentazione delle coniche vista nei precedenti paragrafi non costituisce il miglior modo per determinare la rappresentazione grafica della curva. Tale tipo di rappresentazione presenta come vantaggi fondamentali una certa indipendenza dagli assi di riferimento senza dover ricavare nuovamente l’equazione cartesiana della curva (che sar`a pi` u chiara quando saranno analizzate le trasformazioni geoemetriche nel prossimo capitolo) e inoltre forniscono in modo esplicito le coordinate dei punti che appartengono alla curva stessa. θ ∈ [θ0 . . La rappresentazione parametrica di una conica (o anche in modo pi` u generale di una curva di R2 ) consiste nel determinare due funzioni g(θ) e f (θ) tali che se poniamo  θ ∈ [θ0 . ELEMENTI DI GEOMETRIA ANALITICA y • F′ B O A • F x Figura 2. curva sono approssimati meglio di altri. g(θ)).47 CAPITOLO 2.15: Iperbole con fuochi posti sull’asse x. θ1 ]  x = f (θ)  y = g(θ) i punti aventi coordinate (f (θ).

θ + 2π) queste identificano lo stesso punto del piano. l’origine del piano non identifica alcun angolo θ. Una prima risposta `e no. 0).17). Sia P un punto del piano di coordinate cartesiane (x. Tali due grandezze (ρ. Anche una volta risolto tale inconveniente la rappresentazione in coordinate polari non `e ancora univoca. 2. la lunghezza ρ del segmento OP . Ancora una volta per porre rimedio a questa ambiguit`a dobbiamo imporre che i punti del piano . infatti se consideriamo le due coppie di coordinate (ρ. y). l’angolo θ che la semiretta OP forma con il semiasse delle ascisse positive.CAPITOLO 2. Ci chiediamo innanzitutto se tale rappresentazione consenta di identificare in modo univoco tutti i punti del piano. ELEMENTI DI GEOMETRIA ANALITICA 48 y • • • • • O × × × × × • × x Figura 2.16: Approssimazione di una circonferenza con una poligonale 2. θ) permettono di identificare il punto P e prendono il nome di coordinate polari (Figura 2. poich`e.4 Coordinate polari La rappresentazione parametrica vista nei paragrafi precedenti `e strettamente legata ad un sistema di coordinate alternativo a quello cartesiano. in base alla definizione vista. Si pu`o porre rimedio a tale inconveniente assegnando all’origine coordinate polari (0. Unendo tale punto con l’origine del piano vengono identificate due grandezze geometriche: 1. θ) e (ρ.

y) K ρ y θ x O H Figura 2. θ = arctan(y/x). con ρ > 0 e 0 ≤ θ < 2π.17: Coordinate polari. ρ = x2 + y 2 5. vengano identificati da coordinate polari (ρ. θ).CAPITOLO 2. θ = arcsin(y/ρ) 7.17 si ricavano facilmente le seguenti propriet`a: 1. y = ρ sin θ 3. . ELEMENTI DI GEOMETRIA ANALITICA 49 •P (x. Vediamo ora di stabilire le relazioni tra i due sistemi di coordinate definiti finora. θ = arccos(x/ρ) 6. tan θ = y/x p 4. x = ρ cos θ 2. Sfruttando le relazioni esistenti tra i lati del triangolo rettangolo OP H in Figura 2.

Vediamo nella seguente tabella a quali punti corrispondono alcuni valori di θ: Valore di θ Punto 0 (r. Per rappresentare graficamente la circonferenza si sceglie un angolo θ0 = (2π)/N e si uniscono i punti di coordinate (r cos kθ0 . Tali punti dividono la circonferenza in archi che hanno la stessa lunghezza pertanto la rappresentazione grafica della curva `e migliore di quella rappresentata nella Figura 2. . 2π] (2.16. . . r) π (−r.4. ELEMENTI DI GEOMETRIA ANALITICA 2. Nel caso in cui la circonferenza abbia centro in un punto di coordinate (α. 0) 2π Poich`e le funzioni che appaiono in (2.24) y = r sin θ.1 50 Rappresentazione polare della circonferenza Nel caso della circonferenza avente centro nell’origine e raggio r una possibile rappresentazione polare `e la seguente:  x = r cos θ θ ∈ [0. β). .25) y = β + r sin θ.24) possono essere modificate nel seguente modo:  x = α + r cos θ θ ∈ [0. 0) 3π/2 (0. e raggio r. con k = 0. 0) π/2 (0. . le equazioni parametriche (2.25) soddisfano l’equazione della circonferenza che in questo caso `e: (x − α)2 + (y − β)2 = r2 .24) hanno periodo 2π. 2π] (2. 1. per valori di θ superiori a 2π si ottiene sempre la medesima curva. r sin kθ0 ). ` facile verificare che tale rappresentazione soddisfa l’equazione della circonE ferenza x2 + y2 = r2 : x2 + y 2 = r2 cos2 θ + r2 sin2 θ = r2 (cos2 θ + sin2 θ) = r2 . Anche in questo caso possiamo verificare che le (2. −r) (r. N.CAPITOLO 2. diverso dall’origine.

Questo vuol dire che i punti dell’ellisse hanno coordinate:  ab  cos θ  x =√ 2 a2 sin θ + b2 cos2 θ θ ∈ [0. Nel caso dell’ellisse di equazione x2 y 2 + 2 =1 a2 b possiamo sostituire a x e y le coordinate polari e ricavare tale funzione. Infatti riscrivendo l’equazione in questo modo b 2 x 2 + a2 y 2 = a2 b 2 e sostituendo le espressioni per x e y: b2 ρ2 cos2 θ + a2 ρ2 sin2 θ = a2 b2 (b2 cos2 θ + a2 sin2 θ)ρ2 = a2 b2 e quindi l’equazione polare dell’ellisse `e ρ= √ ab 2 a2 sin θ + b2 cos2 θ .4. 2π]. ab   y =√ sin θ a2 sin2 θ + b2 cos2 θ . 2. ELEMENTI DI GEOMETRIA ANALITICA 51 Infatti: (x − α)2 + (y − β)2 = (α + r cos θ − α)2 + (β + r sin θ − β)2 = r2 cos2 θ + r2 sin2 θ = r2 (cos2 θ + sin2 θ) = r2 .2 Rappresentazione polare dell’ellisse Determinare l’equazione di una curva in coordinate polari significa trovare una funzione ρ(θ) tale che i punti appartenenti alla curva abbiano coordinate (ρ(θ) cos θ. ρ(θ) sin θ).CAPITOLO 2.

La prima `e la cosiddetta spirale di Archimede che ammette come equazione in coordinate polari ρ = θ.4.4 Rappresentazione polare delle spirali Come esempio di curve bidimensionali possiamo considerare le spirali che descriviamo brevemente in questo paragrafo. a a 2. θ∈R .CAPITOLO 2.4.  y =p b2 cos2 θ − a2 sin2 θ In questo caso si deve richiedere tuttavia che risulti b2 cos2 θ − a2 sin2 θ > 0 il che `e vero nel caso in cui b b − < tan θ < . ELEMENTI DI GEOMETRIA ANALITICA 2. b2 cos2 θ − a2 sin2 θ Questo vuol dire che i punti dell’iperbole hanno coordinate:  ab   x =p cos θ  b2 cos2 θ − a2 sin2 θ ab   sin θ.3 52 Rappresentazione polare dell’iperbole Per l’iperbole si procede in modo analogo a quanto visto per l’ellisse poich`e le due equazioni sono simili a meno di un segno: b 2 x 2 − a2 y 2 = a2 b 2 e sostituendo le espressioni per x e y: b2 ρ2 cos2 θ − a2 ρ2 sin2 θ = a2 b2 (b2 cos2 θ − a2 sin2 θ)ρ2 = a2 b2 e quindi l’equazione polare dell’iperbole `e ab ρ= p .

1. con n ≥ 0. . La funzione x(θ) si annulla nei punti che rendono zero cos θ cio`e i punti θn = π/2 + nπ. x = θn cos θn = 2kπ cos(2kπ) = 2kπ Se n = 2k + 1 allora la funzione cos θn = −1 quindi i punti hanno coordinate:  y =0 k = 0. . . 1. cio`e n = 2k. allora i punti hanno coordinate:  y =0 k = 0. x = θn cos θn = −(2k + 1)π In Figura 2. ELEMENTI DI GEOMETRIA ANALITICA cui corrispondono le equazioni parametriche  x = θ cos θ y = θ sin θ 53 θ ≥ 0. .18 `e tracciato il grafico della spirale di Archimede con θ compreso tra 0 e 10π. . 1. La funzione y(θ) si annulla nei punti che rendono zero sin θ cio`e i punti θn = nπ. allora i punti hanno coordinate: ( x =0 π  π  π k = 0. Se n `e un numero pari. . Per analizzare come evolve tale curva nel piano xy al variare di θ calcoliamo i punti in cui essa intercetta gli assi cartesiani. cio`e n = 2k + 1. Le variabili x e y si annullano entrambe quando θ = 0 quindi l’origine `e il punto d’inizio della curva. y = θn sin θn = − − (2k + 1)π 2 Per i punti in cui la curva intercetta l’asse x si procede in modo analogo. con n ≥ 0. allora la funzione sin θn vale −1 quindi i punti hanno coordinate: ( x =0 π k = 0. Un secondo tipo di curva spirale `e la spirale esponenziale (o logaritmica) avente equazione ρ = eθ . 2. . 2. 2. . . y = θn sin θn = + 2kπ sin + 2kπ = + 2kπ 2 2 2 Invece se n `e un numero dispari. Se n `e un numero pari. . Inoltre il segno delle variabili cartesiane `e associato al segno delle funzioni cos θ e sin θ.CAPITOLO 2. 1. cio`e n = 2k. . . 2.

con a al solito costante positiva (possiamo considerare a = 1).CAPITOLO 2. Un altro tipo di spirale `e la curva Litus avente come equazione polare ρ2 θ = a2 . La spirale di Fermat `e definita dall’equazione in coordinate polari ρ2 = a2 θ √ cio`e ρ = ±a θ.18: Spirale di Archimede. con a costante positiva (potremmo considerare anche a = 1).   sin θ   y =a √ θ .19 `e tracciato il grafico della spirale di Fermat con θ compreso tra 0 e 10π e con i due rami della curva tracciati con tratto continuo e tratteggiato. In Figura 2. Le equazioni cartesiane sono quindi  cos θ  x =a √    θ θ > 0. e caratterizzata da un grafico in cui le spire crescono molto rapidamente (con velocit`a esponenziale appunto) e si allonatano molto presto dall’origine. ELEMENTI DI GEOMETRIA ANALITICA 54 30 20 y 10 0 −10 −20 −30 −30 −20 −10 0 x 10 20 30 Figura 2. La curva `e formata da due spirali simili a quella di Archimede equidistanti tra loro che si avvolgono l’una sull’altra.

15π].20 `e tracciata tale curva con θ appartenente all’intervallo [0. ELEMENTI DI GEOMETRIA ANALITICA 6 4 y 2 0 −2 −4 −6 −6 −4 −2 0 x 2 4 6 Figura 2.05.55 CAPITOLO 2.19: Spirale di Fermat. Per valori di θ grandi la curva si avvolge intorno all’origine attraverso spire di ampiezza sempre pi` u piccola. . Per θ = 0 le funzioni non sono definite mentre per valori di θ prossimi a zero la x assume valori molto grandi mentre la y tende a zero. In Figura 2.

5 2 x 2.5 1 1.5 1 y 0.56 CAPITOLO 2.5 Figura 2.5 4 4.5 0 −0.5 0 0.5 −1 −1.20: Litus.5 −0. ELEMENTI DI GEOMETRIA ANALITICA 2 1. 3 3.5 .

y). 57 . La coppia (tx . Definiti due valori reali tx e ty allora il punto P ′ traslato di P `e il punto avente coordinate (x1 . curve) `e necessario rideterminare l’espressione matematica di tali enti geometrici. Traslazione. 3.1 Traslazione Sia P un punto del piano di coordinate cartesiane (x. per esempio un poligono. Le trasformazioni base che si possono definire sono le seguenti: 1. si ottiene applicando la trasformazione a tutti i vertici che vengono poi uniti. ty ) prende il nome di vettore di traslazione o vettore di shift. La traslazione di una figura pi` u complessa. Rotazione.1. 3.Capitolo 3 Trasformazioni Geometriche in due dimensioni 3. Scaling. 2.1 Trasformazioni base Molto spesso per ottenere delle figure molto complesse (poligoni. Un modo per evitare questo pu`o essere quello di considerare l’espressione matematica di un ente facile da determinare e applicare poi delle trasformazioni pi` u complesse. y1 ) tali che  x1 = x + t x y1 = y + t y .

1: Traslazione di un punto del piano. negativo in caso contrario. y1 ) sono le coordinate del punto P ′ (vedere Figura 3.CAPITOLO 3.2 Rotazione La rotazione consiste nello spostamento di un oggetto lungo un arco di circonferenza. 3. Per convenzione l’angolo viene considerato positivo se la rotazione avviene in senso antiorario. TRASFORMAZIONI IN DUE DIMENSIONI 58 y P′ ty P tx x O Figura 3. yr ) del punto di rotazione (o punto pivot) rispetto al quale avviene la rotazione. P = .1. T = P = y1 ty y allora la traslazione ha la seguente formulazione vettoriale: P ′ = P + T. La traslazione `e una trasformazione che non deforma la figura di partenza. Siano (x.3). y1 ) in funzione di . poich`e le distanze relative tra i punti restano invariate. In forma vettoriale se poniamo       x1 tx x ′ . y) le coordinate del punto P mentre (x1 . Per generare una rotazione dobbiamo specificare l’angolo di rotazione θ e la posizione (xr . Cerchiamo di determinare (x1 . Consideriamo prima il caso in cui il punto pivot coincide con l’origine.

y P′ r θ r P φ O x Figura 3. 59 .2: Traslazione di una figura.3: Rotazione di un punto intorno all’origine. TRASFORMAZIONI IN DUE DIMENSIONI y x O Figura 3.CAPITOLO 3.

Facendo riferimento alla Figura 3.5 e ponendo AP uguale r valgono le seguenti relazioni: x = xr + r cos φ y = yr + r sin φ ⇒ ⇒ r cos φ = x − xr r sin φ = y − yr . sostituite in (3. forniscono x1 = x cos θ − y sin θ y1 = x sin θ + y cos θ.1) y1 = r sin(θ + φ) = r(cos θ sin φ + sin θ cos φ) = r cos θ sin φ + r sin θ cos φ. yr ). R=   cos θ − sin θ sin θ cos θ vale la relazione: P ′ = RP infatti: RP =  cos θ − sin θ sin θ cos θ  x y  =  x cos θ − y sin θ x sin θ + y cos θ  . y). TRASFORMAZIONI IN DUE DIMENSIONI (x. In coordinate polari abbiamo: x1 = r cos(θ + φ) = r(cos θ cos φ − sin θ sin φ) = r cos θ cos φ − r sin θ sin φ (3.60 CAPITOLO 3. Supponiamo ora che il punto pivot A non coincida con l’origine e abbia coordinate (xr . ′ P =  x1 y1  . Posto P =  x y  .1). . Esprimendo anche le coordinate di P in forma polare abbiamo: x = r cos φ y = r sin φ che.

3 Scaling Lo scaling serve a trasformare le dimensioni di un oggetto.1. Infatti moltiplicando le coordinate (x. .2) y1 = yr + r sin(θ + φ) = yr + r cos θ sin φ + r sin θ cos φ = yr + (y − yr ) cos θ + (x − xr ) sin θ. TRASFORMAZIONI IN DUE DIMENSIONI 61 y O x Figura 3.4: Rotazione di una figura intorno all’origine di un angolo pari a π/6. y) di ciascun vertice per i fattori di scala sx ed sy vengono prodotte le coordinate trasformate:  x1 = s x x y1 = sy y. Come la traslazione anche la rotazione cambia la posizione dell’oggetto ma non lo deforma.CAPITOLO 3. Per le coordinate di P ′ valgono le relazioni: x1 = xr + r cos(φ + θ) = xr + r cos θ cos φ − r sin θ sin φ = xr + (x − xr ) cos θ − (y − yr ) sin θ (3. 3.

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

62

P′

y
r

θ

P

r
φ

A
x

O

Figura 3.5: Rotazione del punto P intorno al punto A.
` immediato verificare che, posto
E   


x1
x

,
,
P =
P =
y1
y

Sc = 

sx 0
0 sy 

risulta
P ′ = Sc P.
I fattori di scala sx ed sy devono essere strettamente positivi. Se i loro valori
sono maggiori di 1 allora le dimensioni dell’oggetto aumentano, se se sono
minori di 1 diminuiscono, se sono 1 allora restano invariate. Se sx = sy allora
si parla di scaling uniforme (resta costante la proporzione tra le distanze
relative), altrimenti si parla di scaling differenziale (o differenziato).
Lo scaling pu`o essere effettuato anche rispetto ad un generico punto del piano
avente coordinate (xs , ys ), che viene detto punto fisso e che rimane inalterato
dopo lo scaling. Facendo riferimento alla Figura 3.7 si vuole cio`e che il fattore
di scaling per le ascisse sia applicato alla differenza tra le ascisse di A e di P
e non all’ascissa di A, e stesso discorso vale per le ordinate. Dette (x1 , y1 ) le
coordinate di P ′ deve essere:

 x1 = xs + sx (x − xs ) = sx x + (1 − sx )xs

y1 = ys + sy (y − ys )

= sy y + (1 − sy )ys .

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

63

y

O

x

Figura 3.6: Scaling uniforme di una figura rispetto all’origine (sx = sy =
1/2).

y

O

x

Figura 3.7: Scaling differenziato di una figura rispetto all’origine (sx =
1/2, sy = 3/2).

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

3.2

64

Coordinate omogenee

Nei paragrafi precedenti abbiamo visto che indicate con P le coordinate di un
punto del piano queste possono essere trasformate, in diversi modi, nelle coordinate P ′ e che le trasformazioni hanno sempre un’espressione matematica
del tipo
P ′ = MP + T
dove M `e una matrice quadrata di dimensione 2 e T `e un vettore avente 2
componenti. Per esempio nel caso della traslazione
P′ = P + T
quindi la matrice M `e uguale alla matrice identit`a di ordine 2 e T `e quello
che abbiamo chiamato vettore di traslazione o di shift. Per motivi puramente
matematici `e opportuno evitare che le trasformazioni abbiano tale forma, cio`e
che siano presenti dei termini additivi, facendo in modo che le trasformazione si presenti sempre sotto forma di un prodotto matrice-vettore che metta
in relazione direttamente le coordinate del punto trasformato con quelle del
punto di partenza. Vedremo tra poco che ci`o `e possibile, purch`e le trasformazioni vengano rappresentate sempre con matrici quadrate di ordine 3. Per
far questo `e necessario che anche le coordinate cartesiane siano sostituite da
una rappresentazione a 3 valori che prende il nome di Coordinate Omogenee
(xh , yh , h). La relazione tra coordinate omogenee e cartesiane `e immediata:
x=

xh
,
h

y=

yh
h

cosicch`e il punto di coordinate cartesiane (x, y) ha coordinate omogenee
(hx, hy, h), essendo h un parametro reale diverso da zero. Per semplicit`a solitamente si sceglie h = 1, cosicch`e il punto ha coordinate omogenee (x, y, 1)
e la relazione tra i due tipi di coordinate `e immediata. Utilizzando le coordinate omogenee tutte le trasformazioni base possono essere espresse in termini
di prodotto matrice-vettore.

3.2.1

Traslazione

Definiamo la matrice


1 0 tx
T (tx , ty ) =  0 1 ty 
0 0 1

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

65

e indichiamo con P e P ′ le coordinate omogenee del punto rispettivamente
prima e dopo la trasformazione, cio`e


 
x1
x
P ′ =  y1  .
P =  y ,
1
1
Calcoliamo ora

 
x
1 0 tx



y 
T (tx , ty )P = 0 1 ty
1
0 0 1


 
x + tx
1 · x + 0 · y + tx · 1
=  0 · x + 1 · y + ty · 1  =  y + ty  = P ′ .
1
0·x+0·y+1·1

La trasformazione inversa, cio`e quella che consente
P ′ in P, sar`a ovviamente:

1 0
−1

T (tx , ty ) = T (−tx , −ty ) = 0 1
0 0

3.2.2

di trasformare il punto

−tx
−ty  .
1

Rotazione

Definiamo la matrice

cos θ − sin θ 0
R(θ) =  sin θ cos θ 0  .
0
0
1

Risulta anche in questo caso immediata la verifica che la matrice R(θ) trasforma P in P ′ :
 

x
cos θ − sin θ 0
R(θ)P =  sin θ cos θ 0   y 
1
0
0
1

x cos θ − y sin θ
=  x sin θ + y cos θ  = P ′ .
1

1 1 0 0 1  La trasformazione inversa `e definita dalla matrice   1/sx 0 0 −1  0 1/sy 0  .3 Scaling Per lo scaling una volta definita la matrice  sx  0 Sc (sx . generano trasformazioni molto pi` u complesse che per`o possono sempre essere ricondotte a una forma moltiplicativa del tipo P ′ = M P. Tali trasformazioni base. in questo caso l’angolo di rotazione:   cos θ sin θ 0 R−1 (θ) = R(−θ) =  − sin θ cos θ 0  . Sc−1 (sx . considerate tre matrici A. sy )P =  0 sy 0   y  =  sy y  = P ′ . TRASFORMAZIONI IN DUE DIMENSIONI 66 Anche in questo caso per ottenere la trasformazione inversa `e sufficiente cambiare il segno del parametro. combinate tra loro. Per riuscire in questo si sfrutta la propriet`a associativa del prodotto tra matrici. . sy ) = 0 0 1 3.CAPITOLO 3. infatti.2. Il motivo di tale particolarit`a `e legato al fatto che le trasformazioni rispetto ad altri punti possono essere viste sempre come combinazione di successive trasformazioni che possiamo definire di base.2. sy ) = Sc (s−1 x . sy ) = 0 risulta diagonale:  0 0 sy 0  0 1     sx x x sx 0 0 Sc (sx . B e C. risulta: A(BC) = (AB)C.4 Trasformazioni composte La formulazione in termini di coordinate omogenee delle trasformazioni di rotazione e scaling viste nei paragrafi precedenti avevano sempre come punto pivot o punto fisso l’origine del sistema cartesiano. 0 0 1 3.

2. Anche a questa regola ci sono tuttavia alcune eccezioni. ty1 )P ] = [T (tx2 . il prodotto tra matrici non gode della propriet`a commutativa. Rotazione dell’oggetto rispetto all’origine. come abbiamo avuto modo di vedere nel primo capitolo. TRASFORMAZIONI IN DUE DIMENSIONI 67 Per le trasformazioni composte va sempre tenuto presente l’ordine con il quale le trasformazioni base sono applicate. ty1 + ty2 ). 1) mentre (x. Consideriamo ora il caso della rotazione intorno ad un generico punto pivot diverso dall’origine e formuliamo tale trasformazione in funzione delle trasformazioni base (Figura 3. Iniziamo da due traslazioni successive aventi vettori di shift rispettivamente (tx1 . ty1 ) e (tx2 . y. R = T (−xr .8): 1. Le coordinate omogenee del punto traslato P ′ saranno: P ′ = T (tx2 . Consideriamo prima il caso di trasformazioni successive tutte dello stesso tipo. Questo vuol dire essenzialmente che nelle traslazioni successive di un oggetto non ha importanza l’ordine col quale sono effettuate. ty2 )T (tx1 . Calcolando la matrice prodotto T (tx2 . ty1 )]P. poich`e. ty1 ) si trova agevolmente:      1 0 tx1 + tx2 1 0 tx1 1 0 tx2  0 1 ty2   0 1 ty1  =  0 1 ty1 + ty2  . 0 0 1 0 0 1 0 0 1 quindi T (tx2 . Traslazione del punto pivot nell’origine del riferimento. yr . 1) sono le coordinate di uno dei vertici dell’oggetto allora le tre trasformazioni appena descritte hanno le seguenti espressioni matematiche: 1. ty2 )T (tx1 . ty2 )T (tx1 . Un discorso dello stesso tipo vale per due rotazioni successive di angoli θ1 e θ2 : P ′ = R(θ2 )[R(θ1 )P ] = [R(θ2 )R(θ1 )]P = R(θ2 + θ1 )P.CAPITOLO 3. 3. Se il punto pivot ha coordinate omogenee (xr . −yr )P 2. ty2 )[T (tx1 . ty2 ). Q = R(θ)R . Traslazione dell’origine fino alla posizione iniziale del punto pivot. ty1 ) = T (tx1 + tx2 .

Mettendo insieme le tre relazioni: P ′ = T (xr . yr )Q. yr )R(θ)R = T (xr . TRASFORMAZIONI IN DUE DIMENSIONI y 68 III II I • x O Figura 3. yr )R(θ)T (−xr . P ′ = T (xr .CAPITOLO 3. III) Traslazione dall’origine. II) Rotazione intorno all’origine. yr )Q = T (xr . −yr )P Calcoliamo ora il prodotto tra le tre matrici:   1 cos θ − sin θ 0    0 R(θ)T (−xr . 3.8: Trasformazioni base successive per la rotazione rispetto ad un punto pivot diverso dall’origine: I) Traslazione verso l’origine. . −yr ) = sin θ cos θ 0 0 0 0 1  cos θ − sin θ −xr cos θ + yr sin θ  = sin θ cos θ −xr sin θ − yr cos θ 0 0 1  0 −xr 1 −yr  0 1  .

detta RT (xr . 0 0 1  Moltiplicando la matrice cos`ı ottenuta per le coordinate omogenee di P risulta:    x cos θ − sin θ xr − xr cos θ + yr sin θ P ′ =  sin θ cos θ yr − xr sin θ − yr cos θ   y  1 0 0 1  x cos θ − y sin θ + xr − xr cos θ + yr sin θ =  x sin θ + y cos θ + yr − xr sin θ − yr cos θ  1   xr + (x − xr ) cos θ − (y − yr ) sin θ =  yr + (y − yr ) cos θ + (x − xr ) sin θ  .2) utilizzando un approccio puramente geometrico. Per ottenere l’immagine riflessa di un . come E appunto in un specchio.2. yr . 1  Si pu`o osservare che il risultato `e lo stesso trovato in (3. Per definire tale trasformazione `e necessario che venga fissata una retta rispetto alla quale avviene la riflessione. Tale retta prende il nome di asse di riflessione. 3. Deformazione (o Shear). Riflessione. θ) =  0 1 0 0 69 la matrice prodotto. Concludiamo questo capitolo con la formulazione matematica e la descrizione delle propriet`a di due ulteriori trasformazioni: 1.5 Riflessione ` la trasformazione che produce un’immagine speculare dell’oggetto. risulta:   cos θ − sin θ −xr cos θ + yr sin θ xr yr   sin θ cos θ −xr sin θ − yr cos θ  0 0 1 1  cos θ − sin θ xr − xr cos θ + yr sin θ =  sin θ cos θ yr − xr sin θ − yr cos θ  . yr .CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI e quindi. θ)  1 0 RT (xr . 2.

deve essere necessariamente la seguente:   1 0 0 Rx =  0 −1 0  . 1 1 0 0 1 In Figura 3.CAPITOLO 3.9 `e riprodotta una riflessione rispetto all’asse x. Quindi la matrice di trasformazione. resta invariata l’ascissa mentre l’ordinata cambia segno. che indichiamo . In questo caso si pu`o osservare che l’ordinata del punto riflesso resta invariata mentre l’ascissa cambia segno.9: Riflessione di un oggetto rispetto all’asse x. che indichiamo con Rx . In questo caso si pu`o osservare che. y1 ) le coordinate del punto riflesso. 0 0 1 Risulta infatti immediata la verifica:      x x 1 0 0 Rx P =  0 −1 0   y  =  −y  = P ′ . Quindi la matrice di trasformazione. punto P si manda la retta perpendicolare all’asse di riflessione e si identifica il punto P ′ tale che sia P che P ′ sono equidistanti dall’asse di riflessione. TRASFORMAZIONI IN DUE DIMENSIONI 70 B y C A O x A′ C′ B′ Figura 3.10 `e invece riprodotta una riflessione rispetto all’asse y. y) le coordinate del punto di partenza e (x1 . dette (x. In Figura 3.

Per calcolare q imponiamo che A ∈ s: β = −α + q ⇒ q = α + β. 1 1 0 0 1 Nel caso in cui l’asse di riflessione non sia uno degli assi cartesiani si pu`o considerare la trasformazione come una combinazione di trasformazioni base.10: Riflessione di un oggetto rispetto all’asse y. Per semplicit`a indichiamo con s la retta passante per A e A′ e che e’ perpendicolare alla bisettrice b. 0 0 1 Risulta infatti immediata la verifica:      −x x −1 0 0 Ry P =  0 1 0   y  =  y  = P ′ . con Ry .71 CAPITOLO 3. β) utilizzando. Cerchiamo di determinare le coordinate cartesiane del punto A′ riflesso del punto A di coordinate (α. Supponiamo di effettuare una riflessione rispetto alla bisettrice del primo e del terzo quadrante (vedere Figura 3. deve essere necessariamente la seguente:   −1 0 0 Ry =  0 1 0  . q ∈ R. .11). La retta s avr`a equazione y = −x + q. TRASFORMAZIONI IN DUE DIMENSIONI y C ′ C B′ B A′ A x O Figura 3. per il momento solo considerazioni geometriche.

TRASFORMAZIONI IN DUE DIMENSIONI y 72 A C H A′ B O C′ B′ x Figura 3. cio`e: α+β α + x1 = 2 2 e ⇒ x1 = β. β. Per calcolarle imponiamo che H sia punto medio del segmento AA′ . e calcoliamo le sue coordinate:    y = x  x= α+β  2 ⇒ α+β    y= . α.11: Riflessione di un oggetto rispetto alla bisettrice del I del III quadrante. 1). y1 ) le coordinate di A′ . 1) viene trasformato in (β.CAPITOLO 3. Si pu`o facilmente verificare che la matrice di trasformazione in questo caso `e:   0 1 0 RI =  1 0 0  . Indichiamo con H il punto di intersezione tra b ed s. 0 0 1 . β + y1 α+β = ⇒ y1 = α. 2 2 Poich`e il punto di coordinate omogenee (α. y = −x + α + β 2 Siano (x1 . la riflessione rispetto alla bisettrice del I e del III quadrante ha come effetto lo scambio delle coordinate.

3. 0 0 1  Nel caso in cui l’asse di riflessione sia una retta generica avente equazione y = mx + q. 0 0 1 In modo abbastanza analogo si pu`o scoprire che la matrice di riflessione rispetto al II e IV quadrante `e   0 −1 0 RII =  −1 0 0  . TRASFORMAZIONI IN DUE DIMENSIONI 73 Vediamo ora di ricavare la matrice di trasformazione utilizzando le trasformazioni base. √  √   2/2 − 2/2 0 1 0 0 √ √ R(π/4)Rx =  2/2 2/2 0   0 −1 0  0 0 1 0 0 1 RI √  √  2/2 2/2 0 √ √ =  2/2 − 2/2 0  . Riflessione rispetto all’asse x. Ricordiamo che per convenzione gli angoli della rotazione sono considerati positivi se misurati in senso antiorario. Le operazioni da effettuare sono le seguenti: 1. in modo tale che l’asse x sia sovrapposto alla bisettrice del I e del III quadrante. Rotazione in senso antiorario di 45◦ (o di π/4). in modo tale che la bisettrice coincida con l’asse x. Detta RI la matrice di riflessione rispetto a tale bisettrice sar`a: RI = R(π/4)Rx R(−π/4). con q 6= 0 (cio`e non passante per l’origine del piano cartesiano). 2.CAPITOLO 3. 0 0 1 √ √  √  √  2/2 2/2 0 2/2 2/2 0 √ √ √ √ =  2/2 − 2/2 0   − 2/2 2/2 0  0 0 1 0 0 1  0 1 0 =  1 0 0 . Calcoliamo ora tale matrice. Rotazione in senso orario di 45◦ (o di π/4). la trasformazione `e ancora pi` u complessa: .

Le coordinate omogenee del punto trasformato sono quindi:      x + shx y x 1 shx 0 .2. La matrice di riflessione Rg sar`a il risultato del prodotto di 5 matrici: Rg = T (0. 5. Rotazione in senso orario di un angolo pari a θ (con θ = arctan m). −q). y P ′ = S(shx )P =  0 1 0   y  =  1 1 0 0 1 L’ordinata resta invariata mentre l’ascissa viene modificata proporzionalmente rispetto a y. Traslazione dell’asse x in modo tale che il punto di coordinate (0. 2.6 Deformazione Tale trasformazione distorce la forma di un oggetto come questo fosse stato soggetto a una sorta di trazione rispetto ad uno degli assi. q)R(θ)Rx R(−θ)T (0. Nella deformazione rispetto all’asse y la matrice di trasformazione `e la seguente:   1 0 0 S(shy ) =  shy 1 0  0 0 1 . Nella deformazione rispetto all’asse x la matrice di trasformazione `e la seguente:   1 shx 0 S(shx ) =  0 1 0  0 0 1 essendo shx un numero reale. q). q) (traslato nell’origine) torni nella posizione di partenza. 4. Rotazione in senso antiorario di un angolo pari a θ in modo tale che l’asse x sia sovrapposto alla retta.CAPITOLO 3. Riflessione rispetto all’asse x. in modo tale che la retta di riflessione coincida con l’asse x. TRASFORMAZIONI IN DUE DIMENSIONI 74 1. 3. Traslazione dell’asse x in modo tale che l’origine venga a coincidere con il punto di coordinate (0. 3.

0 0 1 Le coordinate omogenee del punto trasformato sono:      x + shx y x 1 shx 0 P ′ = S(shx .CAPITOLO 3. shy )P =  shy 1 0   y  =  y + shy x  . 1 1 0 0 1 ` possibile definire anche la deformazione rispetto ad entrambi gli assi. shy ) =  shy 1 0  .3 Trasformazione window-to-viewport Un esempio di trasformazione composta `e la trasformazione window to viewport che consiste nel portare punti che si trovano nel rettangolo di rappresen- . TRASFORMAZIONI IN DUE DIMENSIONI 75 y O x Figura 3. con shy un numero reale. 1 1 0 0 1 3.12: Deformazione rispetto all’asse x di una figura piana con shx = 1/2. Le coordinate omogenee del punto trasformato sono quindi:      x x 1 0 0 P ′ = S(shy )P =  shy 1 0   y  =  y + shy x  . E definendo i due parametri shx ed shy e la relativa matrice di trasformazione:   1 shx 0 S(shx .

14: Deformazione rispetto ad entrambi gli assi con shx = shy = 1/2.CAPITOLO 3. . y O x Figura 3.13: Deformazione rispetto all’asse y di una figura piana con shy = 1/2. TRASFORMAZIONI IN DUE DIMENSIONI 76 y O x Figura 3.

Prima di definire le trasformazioni elementari che definiscono quella composta window-to-viewport. y). ymax ) (ovvero l’angolo in alto a destra). v). la window viene definita dalle coordinate (x. vmin ) (ovvero l’angolo in basso a sinistra) e (umax . Il punto trasformato appartiene alla finestra definita dai punti di coordinate (umin . vmax ) (ovvero l’angolo in alto a destra). ymin ) (ovvero l’angolo in basso a sinistra) e (xmax . mentre quella di vieport dalle coordinate (u. Il punto da trasformare appartiene alla finestra definita dai punti di coordinate (xmin . per convenzione. tazione del grafico (detta window) in un altro rettangolo (detto viewport). Questa trasformazione consente di rappresentare la figura utilizzando il sistema di coordinate pi` u comodo per poi trasformarle in base alle dimensioni del supporto di rappresentazione dello stesso. La window viene traslata in modo tale che il vertice in basso a sinistra. La trasformazione `e composta dai seguenti passi: 1. ymin ) coincida con l’origine.77 CAPITOLO 3. . Si effettua lo scaling tra la window traslata e la finestra viewport collocata nell’origine del sistema di coordinate (u. v). `e opportuno specificare che. 2. TRASFORMAZIONI IN DUE DIMENSIONI vmax ymax vmin umin umax ymin xmin xmax Figura 3. di coordinate (xmin . Come esempio si pensi ad una trasformazione che deve adattare la window al supporto hardware cui lo stesso grafico `e destinato (detto spazio di coordinate del dispositivo).15: Trasformazione window to viewport.

bisogna determinare i due fattori di scala sxu e syv tali che u = sxu x. ovvero ai valori di x corrispondenti al limite destro della finestra di window devono corrispondere i valori pari al limite destro della finestra di viewport. 0 0 1 La seconda trasformazione deve effettuare lo scaling tra le coordinate u e x. La viewport viene traslata in modo tale che l’angolo in basso a destra sia portato in posizione (umin . Per determinarli `e sufficiente imporre che. deve essere u = umax − umin . v = syv y. e v e y rispettivamente. 0) (0. 0) Figura 3. vmin ). y) (0. La prima trasformazione `e definita dalla matrice   1 0 −xmin  0 1 −ymin  . . TRASFORMAZIONI IN DUE DIMENSIONI 78 • (u.CAPITOLO 3. 3. v) • (x. quando x = xmax − xmin .16: Trasformazione window to viewport.

ymax − ymin La matrice di trasformazione `e quindi   umax − umin 0 0  xmax − xmin    v − v max min  .1 Clipping L’operazione di clipping consiste nell’individuare le porzioni della figura tracciata che sono interne alla finestra di visualizzazione (viewport).3. 0 0   ymax − ymin 0 0 1 La matrice di trasformazione del terzo passo `e   1 0 umin  0 1 vmin  . clipping tridimensionale) sono effettuate partendo dal clipping di segmenti. Tale operazione `e fondamentale in quanto tutte le altre (clipping di poligoni. Operazione fondamentale `e il clipping di segmenti che quindi tende ad individuare la parte di un segmento interno alla finestra di viewport. ovvero facendo corrispondere ai valori di y relativi al limite superiore della finestra di window quelli pari al limite superiore della finestra di viewport si ricava syv = vmax − vmin . Un punto di coordinate (x. 0 0 1        u 1 0 umin sxu 0 0 1 0 −xmin x  v  =  0 1 vmin   0 syv 0   0 1 −ymin   y  . TRASFORMAZIONI IN DUE DIMENSIONI 79 In questo modo si ricava sxu = umax − umin . Supponiamo che la finestra di clipping sia rappresentata nella Figura 3.CAPITOLO 3. y) `e interno alla finestra se sono simultaneamente soddisfatte le seguenti disequazioni: xmin ≤ x ≤ xmax . .17. ymin ≤ y ≤ ymax . 1 0 0 1 0 0 1 0 0 1 1 3. xmax − xmin Procedendo in modo analogo per le ordinate.

Se entrambi gli estremi sono esterni alla finestra allora il segmento potrebbe intesecare parzialmente la finestra cos`ı come potrebbe essere completamente estrerno alla stessa.18). Nel caso di un segmento l’analisi di appartenza alla finestra avviene partendo dai suoi estremi. ya ) e (xb . Nel primo caso si devono ovviamente determinare le coordinate degli estremi della porzione del segmento che si trova all’interno della finestra (Figura 3.18). t ∈ [0. Ci sono tre possibili casi: 1. 2. y(t) = ya + (yb − ya )t . Se gli estremi sono entrambi interni alla finestra allora l’intero segmento `e interno alla finestra (Figura 3.17: Finestra di Clipping. TRASFORMAZIONI IN DUE DIMENSIONI 80 ymax ymin xmin xmax Figura 3. yb ) sono le coordinate cartesiane degli estremi allora il segmento `e definito dalle seguenti equazioni parametriche  x(t) = xa + (xb − xa )t. Per calcolare le intersezioni tra i segmenti o per verificare l’appartenenza di un punto ad un segmento si utilizza la rappresentazione parametrica dello stesso. Infatti se (xa . 1].19). Se uno degli estremi `e interno alla finestra mentre l’altro `e esterno allora il segmento interseca parzialmente il rettangolo pertanto va calcolato il punto d’intersezione con i lati che delimitano la finestra di viewport (Figura 3. 3.CAPITOLO 3.

81

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

C
C′
B
D
A

Figura 3.18: Primo e secondo caso di Clipping di un segmento.

F

G
G′

E

H′
H

Figura 3.19: Terzo caso di Clipping di un segmento.

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

82

Si potrebbero utilizzare le equazioni parametriche per determinare le intersezioni con le quattro rette che delimitano la finestra di clipping ma il procedimento `e troppo macchinoso e piuttosto costoso dal punto di vista computazionale. Per questo motivo si utilizzano metodi alternativi come quello
descritto nel paragrafo successivo.

3.3.2

Algoritmo di Cohen-Sutherland

Il piano viene suddiviso in 9 regioni ed ai punti appartenenti a queste regioni `e
assegnato un codice composto da quattro cifre binarie (dette bit cio`e uguali a
0 oppure a 1). Ogni cifra del codice assume un valore in base all’appartenenza
della regione ad un determinato semipiano. In dettaglio se (x, y) sono le
coordinate cartesiane di un generico punto del piano allora: 

1
se y > ymax
o
1 bit =
0
se y ≤ ymax , 

1
se y < ymin
o
2 bit =
0
se y ≥ ymin , 

1
se x > xmax
3o bit =
0
se x ≤ xmax , 

1
se x < xmin
o
4 bit =
0
se x ≥ xmin .

Se il codice assegnato ad entrambi gli estremi `e 0000 allora il segmento `e
interno alla finestra di clipping. In modo abbastanza semplice si pu`o verificare
che se effettuando l’operazione di AND logico tra i codici degli estremi del
segmento il risultato `e diverso da 0000 allora il segmento non interseca la
finestra di clipping. Ricordiamo che se x e y sono due variabili binarie allora
il risultato dell’operazione di AND logico `e riassunto nella seguente tabella
x
0
0
1
1

y
0
1
0
1

x AND y
0
0
0
1

Invece se il risultato dell’operazione logica AND `e 0000 allora si procede
alla ricerca dell’estremo esterno alla finestra di clipping. Descriviamo l’algoritmo facendo riferimento alla situzione rappresentata nella Figura 3.21.

CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI

1001

1000

1010

0001

0000

0010

0101

0100

0110

Figura 3.20: Codici definiti dall’algoritmo di Cohen-Sutherland.

A
A′
B′
B

Figura 3.21: Algoritmo di Cohen-Sutherland.

83

Tale punto sostituisce l’estremo A che era esterno alla finestra di clipping rispetto alla retta x = xmin . ovvero il punto B ′ . TRASFORMAZIONI IN DUE DIMENSIONI 84 L’applicazione dell’algoritmo di Cohen-Sutherland avviene nei seguenti passi: 1a Iterazione: gli estremi del segmento sono A e B: A ha codice 0001 B ha codice 0100 Poich`e il primo bit differente `e il secondo troviamo l’intersezione con la retta y = ymin .3. 2a Iterazione: gli estremi del segmento sono A e B ′ : A ha codice 0001 B ′ ha codice 0000 Poich`e il primo bit differente `e il quarto troviamo l’intersezione con la retta x = xmin . L’applicazione dell’algoritmo di Cohen-Sutherland ai singoli lati che lo delimitano porterebbe al risultato visualizzato nella Figura 3.3 Clipping di poligoni Applicando l’algoritmo di Cohen-Sutherland ai lati del poligono si ottiene un insieme di segmenti parzialmente sconnessi. 3.3. prendendo in input la sequenza ordinata di vertici. Un metodo alternativo `e l’algoritmo di Sutherland-Hodgman.23. ovvero il punto A′ . Prendendo come riferimento una delle rette che delimitano la finestra di clipping si possono presentare 4 casi: . Un ultima osservazione `e quella che l’algoritmo di Cohen-Sutherland pu`o essere esteso anche a problemi di clipping in tre dimensioni. Poich`e gi estremi A′ e B ′ hanno entrambi codice 0000 allora il segmento A′ B ′ `e il clipping del segmento AB. Per esempio dovendo effettuare il clipping del poligono raffigurato in Figura 3.4 Algoritmo di Sutherland-Hodgman Si basa sull’applicazione del clipping a segmenti effettuato rispetto alle quattro rette che delimitano la finestra stessa.CAPITOLO 3.22. applicando il clipping ai lati del poligono e aggiornando la lista dei vertici aggiungendo eventuali vertici (quando un lato interseca la retta) o togliendone altri (se il lato `e esterno alla finestra stessa). Tale punto sostituisce l’estremo B che era esterno alla finestra di clipping rispetto alla retta y = ymin . 3.

23: Applicazione dell’algoritmo di Cohen-Sutherland.22: Clipping di poligoni. 85 . TRASFORMAZIONI IN DUE DIMENSIONI Figura 3.CAPITOLO 3. Figura 3.

Lo spigolo `e completamente interno al semipiano che contiene la finestra di clipping quindi il secondo estremo `e aggiunto alla lista dei vertici. G.24: Clipping di poligoni. 3. . il che comporterebbe l’eliminazione del vertice C e l’aggiunta di due ulteriori vertici (ovvero i punti di intersezione tra i segmenti BC e CD con la retta y = ymin appunto). C. B. C.25. 2.24 `e riportato un esempio di poligono cui applicare l’algoritmo di Sutherland-Hodgman. F. F. E. TRASFORMAZIONI IN DUE DIMENSIONI G H F A E B D C Figura 3. 1. Nella Figura 3.86 CAPITOLO 3. Successivamente l’algoritmo viene applicato rispetto alla retta di equazione y = ymin . Nel caso specifico quando si applica il primo passo dell’algoritmo. H} e fornisce in output l’insieme di vertici {A′ . E. L’operazione viene quindi ripetuta rispetto a tutte le rette che delimitano la finestra di clipping ottenendo alla fine la lista dei vertici di un poligono interamente contenuto nella finestra. B. D. questo riceve in input l’insieme dei vertici {A. Se entrambi gli estremi sono esterni allora non si esegue alcuna operazione. H. Se il primo estremo `e esterno mentre il secondo `e interno allora vengono aggiunti alla lista dei vertici il punto di intersezione con la retta ed il secondo estremo. ovvero effettuando il clipping rispetto alla retta x = xmin . 4. relativi alla Figura 3. G. A′′ }. D. Se il primo estremo `e interno ed il secondo `e esterno allora il punto di intersezione con la retta `e aggiunto alla lista dei vertici.

25: Clipping di poligoni.87 CAPITOLO 3. TRASFORMAZIONI IN DUE DIMENSIONI G A′′ H F E ′ A B D C Figura 3. .

Nello spazio il concetto di funzione `e simile a quello gi`a visto nel caso bidimensionale.1) . Tali coordinate sono attribuite al punto P con l’aggiunta della distanza di P dal piano xy con il segno positivo se P si trova al di sopra del piano. negativa altrimenti. y). essendo la relazione tra due insiemi (le coppie (x. cio`e R2 e i valori z. (x. esplicitando una funzione `e del tipo z = f (x. y) (rispetto a R2 ). y). I tre assi perpendicolari definiscono tre piani di riferimento. anch’essi perperndicolari tra loro.Capitolo 4 Trasformazioni Geometriche in tre dimensioni 4. che prendono il nome di piani di proiezione oppure cartesiani. y) ∈ Ω ⊆ R2 . Viene cio`e aggiunta all’ascissa e all’ordinata una terza coordinata. In Figura 4. Proiettando P sul piano delimitato dagli assi x e y si ottiene il punto P ′ che.1 Geometria Analitica nello Spazio Nel caso dello spazio R3 vengono considerati come riferimento tre assi perpendicolari che si intersecano in un punto O detto orgine del riferimento.1 `e riportato il procedimento per l’attribuzione delle coordinate cartesiane spaziali del punto P . appartenendo al piano cartesiano bidimensionale. Funzioni implicite sono invece del tipo f (x. ha coordinate (x. cio`e R). y. detta quota. 88 (4. z) = 0.

topografia e cartografia. Per una funzione (4.CAPITOLO 4. y) tali che `e calcolabile il valore z. Come abbiamo gi`a accennato ogni coppia di assi cartesiani definisce un piano di proiezione.1) l’insieme di definizione `e l’insieme delle coppie (x. y) = z0 } `e detto Curva di livello relativa al valore z0 . pertanto ammette la semplice equazione z = 0. Iniziando dai piani di proiezione. Quindi i tre piani saranno identificati come xy. In modo analogo y = b e z = c rappresentano le equazioni di due piani paralleli ri- . si pensi per esempio alla rappresentazione delle catene montuose nelle carte geografiche o alle curve isobare nelle previsioni metereologiche) e permettono di poter avere un’idea dell’andamento della funzione nello spazio. Considerato un valore z0 reale allora l’insieme: {(x. Anche l’equazione dei piani che sono paralleli a quelli di riferimento sono di facile attribuzione. y) ∈ R2 | f (x. Infatti x = a rappresenta l’insieme dei punti che hanno distanza dal piano yz pari ad a e quindi appartengono ad un piano parallelo ad esso. Il piano xy `e composto da tutti i punti che hanno quota nulla. Tali curve hanno delle notevoli applicazioni in svariati campi (metereologia. Cerchiamo ora di attribuire un’equazione ai pi` u semplici enti geometrici dello spazio cartesiano cio`e a piani e rette. xz e yz.1: Coordinate cartesiane del punto P. TRASFORMAZIONI IN TRE DIMENSIONI 89 z P • O y P′ x Figura 4. In modo analogo si pu`o verifcare che x = 0 `e l’equazione del piano yz mentre y = 0 identifica il piano xz.

1). b. ty . z. Pi` u in generale.   P = P =  z1  . y. In generale si tratta di adattare concetti gi`a visti nel piano al caso spaziale. tenendo conto che. al solito. d sono coefficienti reali. Considereremo il caso di trasformazioni che riguardano le coordinate omogenee. nel caso di R3 . tz ) =   0 0 0 1 0 0 0 0 1 0  tx ty   tz  1 e. poich`e valgono tutte le considerazioni. TRASFORMAZIONI IN TRE DIMENSIONI 90 spettivamente a xz e xy. 4.2. z) sono (x. 4. le coordinate omogenee di un punto di coordinate cartesiane (x. indichiamo con P e P ′ le coordinate omogenee del punto rispettivamente prima e dopo la trasformazione.2 Trasformazioni base nello spazio In questo capitolo esamineremo le principali propriet`a e la formulazione matematica delle principali trasformazioni geometriche nello spazio.1 Traslazione Definiamo la matrice  1  0 T (tx . Le trasformazioni base che si possono definire sono esattamente le stesse viste in precedenza. y. c. un piano `e rappresentato dall’equazione lineare ax + by + cz + d = 0 dove a. cio`e     x1 x  y1   y  ′ .  z  1 1 .CAPITOLO 4.

avente coordinate omogenee (x1 . sar`a ovviamente:   1 0 0 −tx  0 1 0 −ty   T −1 (tx .2). cio`e quella che consente di trasformare il punto P ′ in P.2. tz )P =   0 0  0 1 0 0 0 0 1 0  tx x   ty   y tz   z 1 1  x + tx  y + ty  ′  =  z + tz  = P . 1   =  La trasformazione inversa. TRASFORMAZIONI IN TRE DIMENSIONI 91 Calcoliamo ora  1  0 T (tx . z1 . −tz ) =   0 0 1 −tz  . −ty . Le rotazioni pi` u facili da definire sono quelle che hanno l’asse coincidente (o parallelo) con uno degli assi del riferimento cartesiano. 1). P e P ′ hanno la stessa ascissa x (vedere Figura 4. y1 . Per comprendere meglio tale concetto si pu`o ricorrere al seguente criterio: quando la rotazione avviene intorno ad uno degli assi del riferimento per valutare il verso di tale movimento ci si pone perpendicolarmente a tale asse e si valuta come verso positivo quello antiorario. ty . Per convenzione gli angoli di rotazione sono positivi quando la rotazione avviene in senso antiorario. 0 0 0 1 4. abbiamo pertanto la prima . tz ) = T (−tx . Comunque come nel caso bidimensionale rotazioni pi` u complesse possono essere definite utilizzando apposite combinazioni di rotazioni rispetto agli assi e traslazioni. ty .2 Rotazione Per generare una rotazione di una figura nello spazio `e necessario specificare una retta (detta asse di rotazione) intorno alla quale avviene la rotazione e l’angolo di rotazione. La rotazione avviene in un piano parallelo al piano yz e perpendicolare all’asse delle ascisse quindi i punti H. z.CAPITOLO 4. Vediamo ora di determinare la matrici di trasformazione nel caso in cui la rotazione avvenga rispetto all’asse x di un angolo pari a θ. Sia P il punto di coordinate omogenee (x. 1) e sia P ′ il punto ruotato. y.

Per quello che riguarda la relazione tra ordinate e quote si pu`o ripetere il ragionamento gi`a fatto nel caso bidimensionale. TRASFORMAZIONI IN TRE DIMENSIONI 92 z O P′ r r θ H x y φ P Px Figura 4. Posto r pari alla lunghezza del segmento HP l’ordinata di P ′ sar`a: y1 = r cos(θ + φ) = r cos θ cos φ − r sin θ sin φ = y cos θ − z sin θ. .CAPITOLO 4. relazione tra le coordinate omogenee dei due punti x1 = x. Sia φ l’angolo che la semiretta HP forma con il piano xy.2: Rotazione del punto P intorno all’asse x. In modo analogo possiamo procedere per la quota: z1 = r sin(θ + φ) = r cos θ sin φ + r sin θ cos φ = y sin θ + z cos θ. Ricordiamo infatti che valgono le seguenti identit`a: y = r cos φ z = r sin φ.

3) abbiamo   z1 = z x1 = x cos θ − y sin θ  y1 = x sin θ + y cos θ. La matrice di trasformazione `e:  cos θ  0 Ry (θ) =   − sin θ 0  0 sin θ 0 1 0 0   0 cos θ 0  0 0 1 (4. Con un primo cambio di variabile in (4.CAPITOLO 4. Per determinare le matrici di rotazione rispetto agli altri assi del riferimento possiamo utilizzare un opportuno cambio di variabile: x −→ y −→ z −→ x. Con un cambio di variabile in (4. La matrice di trasformazione `e:  cos θ − sin θ  sin θ cos θ Rz (θ) =   0 0 0 0 0 0 1 0  0 0   0  1 .3) che definisce una rotazione intorno all’asse y. 93 (4. TRASFORMAZIONI IN TRE DIMENSIONI Ricapitolando abbiamo ottenuto le seguenti relazioni   x1 = x y1 = y cos θ − z sin θ  z1 = y sin θ + z cos θ.2) Se definiamo la matrice  1 0 0  0 cos θ − sin θ Rx (θ) =   0 sin θ cos θ 0 0 0 `e immediato verificare che  0 0   0  1 P ′ = Rx (θ)P.2) abbiamo   y1 = y z1 = z cos θ − x sin θ  x1 = z sin θ + x cos θ.

Rotazione della figura rispetto a tale asse. Traslazione della figura cosicch`e l’asse di rotazione coincida con l’asse del riferimento a cui `e parallelo. Se la rotazione avviene rispetto ad una retta parallela ad uno degli assi del riferimento cartesiano allora pu`o essere interpretata come combinazione delle seguenti trasformazioni base: 1. 3. La traslazione da applicare sar`a pertanto T (0. Rotazione della figura rispetto a tale asse. Se una retta `e parallela a tale asse allora i suoi punti hanno la stessa quota b e la stessa ordinata a. 5. 4. cio`e l’equazione di tale retta `e:  y =a z = b. Applicazione della rotazione inversa che porti l’asse del riferimento nella posizione della retta passante per l’origine. Giusto come esempio vediamo il caso in cui l’asse di rotazione `e parallelo all’asse delle ascisse. TRASFORMAZIONI IN TRE DIMENSIONI 94 che definisce una rotazione intorno all’asse z. 2. La rotazione rispetto a tale retta avr`a la seguente matrice di trasformazione: R(θ) = T −1 (0. −b)Rx (θ)T (0. Traslazione della figura in modo tale che l’asse di rotazione torni nella posizione originaria. . −a. infatti il valore dell’ascissa deve restare invariato.CAPITOLO 4. −b) Ancor pi` u complesso `e il procedimento per la rotazione di una figura rispetto ad una retta dello spazio generica: 1. Rotazione della figura in modo tale che l’asse di rotazione coincida con uno degli assi del riferimento. Traslazione della figura in modo tale che l’asse di rotazione torni nella posizione originaria. 3. −a. −a. −b). Traslazione della figura in modo tale che l’asse di rotazione passi per l’origine del riferimento cartesiano. 2.

Riflessione e deformazione Esaminiamo rapidamente queste tre trasformazioni il cui significato `e perfettamente analogo al caso bidimensionale. Lo deformazione rispetto a z `e definito dalla  1 0  0 1 SHz (a. La matrice di trasformazione sar`a pertanto:   −1 0 0 0  0 1 0 0   RFx =   0 0 1 0 . z1 = sz z. La Riflessione tridimensionale pu`o essere effettuata rispetto ad un piano detto appunto piano di riflessione. sz ) = S(1/sx . b) =   0 0 0 0 matrice:  a 0 b 0   1 0  0 1 .3 Scaling. 1/sz ). Per lo Scaling definiamo la matrice di trasformazione   sx 0 0 0  0 sy 0 0   S(sx . y1 = sy y. 1/sy . y. 0 0 0 1 La trasformazione inversa `e: RFx−1 = RFx . sy . stessa ordinata ed ascissa con il segno opposto. sy .2. TRASFORMAZIONI IN TRE DIMENSIONI 95 Osserviamo che la rotazione descritta al punto 2. Se tale piano coincide con il piano yz allora l’immagine di un punto P di coordinate omogenee (x. `e in realt`a una doppia rotazione poich`e una retta passante per l’origine forma una angolo α con il piano xy e uno β con il piano xz pertanto `e necessaria una rispetto ad entrambi tali angoli. La trasformazione inversa `e: S −1 (sx .CAPITOLO 4. z. 4. 1) sar`a il punto che avr`a stessa quota. sz ) =   0 0 sz 0  0 0 0 1 che porta alle seguenti relazioni: x1 = sx x.

2. a. z. 0 0 0 1 Verifichiamo che applicando Πx al punto P si ottiene il punto P ′ di coordinate omogenee (x. b) = SHz (−a. −b). y. 1):      1 0 0 0 x x  0 1 0 0  y   y      Πxy (a)P =   0 0 0 a  z  =  a . 1 0 0 0 1 1 Se a = 0 si ottiene la classica proiezione  1 0  0 1 Πxy =   0 0 0 0 ortogonale sul piano xy:  0 0 0 0  . Il punto P ′ proiezione di P si ottiene intersecando il piano z = a con la retta passante per P e ad esso perpendicolare. Sia P un punto dello spazio avente coordinate omogenee (x. 1) e supponiamo di volerlo proiettare su un piano parallelo al piano xy avente perci`o equazione: z = a. TRASFORMAZIONI IN TRE DIMENSIONI 96 che porta alle seguenti relazioni:   x1 = x + az y1 = y + bz  z1 = z. La matrice sar`a pertanto:   1 0 0 0  0 1 0 0   Πxy (a) =   0 0 0 a . Quindi la trasformazione opera indipendentemente dal valore della quota di P . Resta invariata la quota mentre ascissa e ordinata variano proporzionalmente rispetto ad essa.4 Proiezioni assonometriche L’ultimo tipo di trasformazione `e la Proiezione assonometrica. Quindi P ′ avr`a quota pari ad a mentre ascissa e ordinata sono le stesse di P . cio`e su un piano dello spazio. 4. 0 0  0 1 .CAPITOLO 4. La trasformazione inversa `e SHz−1 (a. y.

Tale risultato non deve sorprendere poich`e la trasformazione ha l’effetto di annullare una delle dimensioni dello spazio ed `e impossibile ricostruire il valore della terza coordinata usando le altre due. Una caratteristica di questa trasformazione `e che non `e possibile definire la trasformazione inversa che permetta di passare da P ′ a P . Infatti la matrice Πx non `e invertibile. 0  1 . 0 0 0 1 e Πyz  0  0 =  0 0 0 1 0 0 0 0 1 0  0 0  . Per quello che riguarda le altre trasformazioni. TRASFORMAZIONI IN TRE DIMENSIONI 97 z P • O y •P ′ z=a x Figura 4.CAPITOLO 4. le matrici di proiezione sui piani xz e yz sono rispettivamente:   1 0 0 0  0 0 0 0   Πxz =   0 0 1 0 .3: Proiezione del punto P sul piano di equazione z = a.

con continuit`a. β numeri reali (eventualmente uguali anche a ±∞). D’ora in poi supporremo sempre che il dominio di una funzione sia un intervallo del tipo [α. scelto un punto a dell’insieme di definizione di f (x). cio`e senza staccare la penna dal foglio. Dal punto di vista matematico. β].Capitolo 5 Approssimazione di Curve nello Spazio 5. la continuit`a della funzione in a vuol dire che calcolando i valori di f (x) quando x si avvicina ad a si ottiene proprio il valore f (a) indipendentemente dal fatto che x si avvicini al punto a da destra o da sinistra. Innanzitutto il primo di tali concetti `e quello di dominio o insieme di definizione di una funzione. Tale insieme non `e altro se non l’insieme dei numeri reali x per i quali risulta calcolabile il valore di f (x). Se indichiamo con S il dominio della funzione f (x) il secondo basilare concetto dell’analisi matematica `la continuit`a della funzione f nei punti appartenenti a S. Richiamiamo brevemente in questo paragrafo alcuni altri concetti fondamentali dell’analisi matematica e in particolare il loro significato geometrico.1 Elementi di Analisi Matematica Abbiamo gi`a incontrato nei capitoli precedenti il concetto di funzione di variabile reale e quello di grafico associato ad una funzione. Da un punto di vista pi` u pratico continuit`a di una funzione vuol dire che il grafico associato ad f pu`o essere tracciato. con α. Infatti punti in cui una funzione non `e continua sono solitamente i punti che non appartengono al suo insieme di definizione oppure quei punti in cui la funzione assume una determinata espressione g1 (x) a 98 . in un intorno del punto.

se `e negativo invece sta decrescendo. che solitamente si indica con f ′ (x0 ). f (x0 + h)). f (x0 )) e (x0 + h.CAPITOLO 5. Se il valore che si ottiene per la derivata nei due casi `e diverso vuol dire che la derivata prima di f in x0 . CURVE NELLO SPAZIO 99 destra di x = a e una diversa espressione g2 (x) a sinistra del punto. E caso la continuit`a della funzione `e garantita se g1 (a) = g2 (a). in quanto il suo grafico non presenta alcun salto in x = 0. cio`e sono i punti in cui una funzione ammette un’espressione matematica diversa a destra e a sinistra. Un primo tipo di punti `e quella appena introdotta. Una seconda classe di punti sono quelli che si trovano √ agli estremi del dominio. La derivata prima di una funzione permette di poter controllare l’andamento della funzione. (x0 + h) − x0 essendo h un valore positivo. I punti ±1 non garantiscono la continuit`a di f (x) cos`ı come `e stata definita poich`e la funzione non `e definita a destra o a sinistra. Per esempio se consideriamo la funzione f (x) = x2 − 1 il suo insieme di definizione `e il seguente: [ S = {x ∈ R|x ≤ −1} {x ∈ R|x ≥ 1} . in modo ` ovvio che in questo tale che in x = a il grafico di f (x) presenti un salto. Per esempio se consideriamo la funzione  x<0  x f (x) =  2 x x≥0 questa risulta essere continua in tutto il suo intervallo di definizione (che coincide con l’insieme dei numeri reali). Se x0 `e un punto del dominio definiamo il seguente rapporto incrementale: f (x0 + h) − f (x0 ) . Si pu`o ripetere lo stesso discorso prendendo un valore di h negativo oppure calcolando il rapporto incrementale con −h e si ottiene l’andamento della funzione a sinistra di x0 . Risulta anche interessante vedere quali sono i punti nei quali una funzione pu`o non essere continua. a destra di x0 sta crescendo. Se il rapporto incrementale `e positivo (supponiamo h sufficientemente piccolo) vuol dire che la funzione. non `e continua . Un ulteriore importante concetto `e quello di derivata di una funzione. Geometricamente esso rappresenta il coefficiente angolare della retta congiungente i punti di coordinate (x0 .

1. Quasi contemporaneamente al suo lavoro un ingegnere. Sembra logico che la necessit`a di sviluppare dei metodi grafico-matematici fosse strettamente legata al tipo di lavoro che svolgeva nell’ambito della progettazione industriale.1 Approssimazione di curve nello spazio Prima di descrivere le pi` u interessanti tecniche per l’approssimazione (o l’interpolazione) di curve nello spazio pu`o essere utile una breve introduzione di tipo storico. Infatti tali punti sono caratterizzati dal fatto che ammettono tangente parallela all’asse x e quindi con coefficiente angolare nullo e quindi vanno cercati tra i valori che annullano la derivata prima della funzione. Lo studio dell’andamento della derivata prima della funzione permette di identificare i punti di massimo e di minimo. descrescente a sinistra. Tale problema infatti `e stato affrontato per la prima volta intorno alla fine degli anni ’50 da Paul De Casteljau che era un progettista della casa automobilistica francese Citro¨en. senz’altro pi` u noto rispetto a De Casteljau. che prese il suo nome. mentre nel caso dei punti di minimo si ha invece un comportamento opposto. la teoria per l’approssimazione di curve nello spazio. per la costruzione di curve approssimanti nello spazio. 5. La derivata seconda f ′′ (x) `e la pendenza della funzione f ′ (x). Pierre B´ezier. Tale lavoro rimase ignoto a tutti per ovvi motivi di concorrenza. cio`e il coefficiente angolare della tangente alla curva sta aumentando e quindi si pu`o facilmente intuire che la funzione volge la concavit`a verso l’alto.CAPITOLO 5. Quando `e positiva vuol dire che la derivata prima di f sta crescendo. 5. I punti in cui cambia la concavit`a sono quelli in cui la derivata seconda `e uguale a zero e prendono il nome di punti di flesso. progettista presso la Renault. `e legato all’espressione matematica delle curve in oggetto. Il primo lavoro di B´ezier fu pubblicato nel 1964 e il suo nome. Esattamente del 1959 De Casteljau elabor`o un algoritmo. Si pensi che una pubblicazione completa dei rapporti tecnici di De Casteljau risale solo agli anni ’70.2 L’algoritmo di De Casteljau ` il metodo fondamentale nel campo del design di curve e superfici nello spaE zio poich`e permette di costruire in modo semplice e algoritmico le curve nello . dal punto di vista matematico. CURVE NELLO SPAZIO 100 in tale punto. Per i punti di massimo la funzione `e crescente a destra. svilupp`o.

101 CAPITOLO 5. Osserviamo innanzitutto che l’espressione ottenuta `e l’equazione di una parabola nella variabile t. Tale parabola passa per i punti P0 e P2 ma non per P1 . P1 e P2 tre punti dello spazio e sia t un parametro reale compreso tra 0 e 1. CURVE NELLO SPAZIO spazio aventi rappresentazione parametrica di tipo polinomiale. Dall’espressione ottenuta per P02 (t) si nota che il cambio del punto P1 (o di uno degli altri punti di controllo). . infatti si pu`o agevolmente verificare che P02 (0) = P0 . Per descrivere l’algoritmo di De Casteljau consideriamo come esempio la costruzione di una curva parabolica nello spazio avente quindi come equazioni parametriche dei polinomi di secondo grado. Definiamo le seguenti espressioni: P01 (t) = (1 − t)P0 + tP1 P11 (t) = (1 − t)P1 + tP2 . mentre se t = 1: P01 (1) = P1 P11 (1) = P2 . Siano P0 . Osserviamo che P01 (t) `e l’espressione del segmento congiungente P0 e P1 e analogamente P11 (t) `e l’espressione del segmento congiungente P1 e P2 . Nell’approssimazione di curve nello spazio tali punti prendono il nome di punti di controllo (o vertici). Infatti se t = 0 allora P01 (0) = P0 P11 (0) = P1 . comporta un cambio globale della curva. anche se i coefficienti della parabola (al variare di t) non devono essere ricalcolati. Se si effettua un’altra combinazione lineare si ottiene: P02 (t) = (1 − t)P01 (t) + tP11 (t) = = (1 − t)[(1 − t)P0 + tP1 ] + t[(1 − t)P1 + tP2 ] = = (1 − t)2 P0 + 2t(1 − t)P1 + t2 P2 . P02 (1) = P2 .

P1 . k) `e il cosiddetto coefficiente binomiale: C(n. . n. al contrario. . Assegnati n + 1 punti P0 .k (t) prendono anche il nome di funzioni base (blending functions nella terminologia inglese e tale definizione `e di tipo generale). . . . . Supponendo quindi che siano stati assegnati n + 1 punti di controllo P0 . .1) dove C(n. la Curva di B´ezier assume la seguente espressione P (t) = n X Pk Jn. i = 0. (5. I polinomi di Bernstein possono essere calcolati anche utilizzando la seguente relazione di ricorrenza Jn. . Si definisce polinomio di Bernstein il seguente polinomio: Jn.k (t) = (1 − t)Jn−1. . 1≤k ≤n−1 (5. . . e avendo posto Pi0 (t) = Pi .2) Le funzioni Jn.3 Le Curve di B´ ezier Come abbiamo visto nel precedente paragrafo l’algoritmo di De Casteljau permette di costruire la curva approssimante passante per due punti dello spazio in modo ricorsivo. . . .k (t) + tJn−1. CURVE NELLO SPAZIO Tale algoritmo pu`o essere naturalmente generalizzato alla costruzione di approssimanti polinomiali di qualsiasi grado. . (n − k)!k! n `e il grado del polinomio e k `e un numero intero compreso tra 0 ed n. purch`e si abbia a disposizione un numero sufficiente di punti. La tecnica che ci apprestiamo a descrivere. Pn .102 CAPITOLO 5. P1 . fornisce l’equazione esplicita della curva voluta. Pn allora la curva di grado n `e: k−1 Pik (t) = (1 − t)Pik−1 (t) + tPi+1 (t) con k = 1. n − k.k (t) = C(n. Alla base della rappresentazione di B´ezier c’`e la scelta di di opportune funzioni base per rappresentare la curva voluta.k−1 (t). k)tk (1 − t)n−k (5. k) = n! . Nel caso specifico la scelta cade sui cosiddetti Polinomi di Bernstein. cio`e partendo dalla curva di primo grado (funzione lineare) e costruendo via via quelle di grado superiore fino al grado voluto. .3) . 5.k (t) k=0 0 ≤ t ≤ 1.

le ordinate e le quote dei punti appartenenti alla curva approssimante: x(t) = n X xk Jn. 2. (n − k)!k! k = 1.103 CAPITOLO 5. cio`e la variazione di una delle quote di un punto di controllo modifica solo il valore delle quote dei punti della curva. Elenchiamo ora le principali propriet`a delle curve di B´ezier.k (t). (5. si hanno le seguenti relazioni per le ascisse. Calcoliamo infatti il valore di P (t) per t = 0 e t = 1.0 (0) = 1. CURVE NELLO SPAZIO con Jn. cio`e [0. n. Osserviamo che le tre equazioni parametriche sono indipendenti tra loro. . Il grado della curva di B´ezier `e sempre di uno inferiore rispetto al numero dei punti di controllo a disposizione. .k (t) k=0 y(t) = n X yk Jn. Jn. La rappresentazione parametrica della curva avviene sempre nello stesso intervallo di variabilit`a del parametro t.k (0) k=0 con Jn.k (t) k=0 z(t) = n X zk Jn.k (0) = n! 0k (1 − 0)n−k = 0. e Jn. . k=0 essendo (xk . yk . 3. L’espressione (5.n (t) = tn . y(t). . 1. z(t)). zk ) le coordinate del punto di controllo Pk . 1]. La curva di B´ezier passa sempre per il primo e per l’ultimo punto di controllo.2) va intepretata come una relazione vettoriale.0 (t) = (1 − t)n .4) Si pu`o osservare che la relazione (5. cio`e posto P (t) = (x(t). . in conseguenza di (5.4).3) `e molto simile a quella definita dall’algoritmo di De Casteljau. Se t = 0 n X P (0) = Pk Jn.

n (1) = 1.104 CAPITOLO 5. Quando t = 1 invece P (1) = n X Pk Jn. .2 si pu`o osservare come la posizione dei punti di controllo intermedi abbia il compito di definire la forma della curva cio`e il modo con cui la curva deve congiungere i punti di controllo estremi. . .4) e Jn. Dalla Figura 5. . (n − k)!k! k = 0.1: Esempi di curve di B´ezier con 3. .k (1) k=0 con Jn. n − 1. 4 e 5 punti di controllo. quindi P (1) = Pn . da (5.k (1) = n! 1k (1 − 1)n−k = 0. quindi P (0) = P0 . CURVE NELLO SPAZIO P1 b P2 P0 b b P1 b P2 b P1 b P0 P4 b b P3 b b P3 b P0 b P2 Figura 5.

La curva di B´ezier `e sempre interna alla poligonale avente come vertici i punti di controllo Pk . Calcolando le derivate della curva agli estremi. cio`e per t = 0 e t = 1 si trova: P ′ (0) = n(P1 − P0 ) P ′ (1) = n(Pn − Pn−1 ).105 CAPITOLO 5.k (t) = 1. 4. k=0 Questa propriet`a garantisce inoltre che la curva non oscilla rispetto ai punti di controllo. 5.2: Esempi di curve di B´ezier di terzo grado (4 punti di controllo). CURVE NELLO SPAZIO P1 b P2 b P1 b P3 P0 b b P3 P0 P1 b b b b P2 P0 P3 b b P2 b Figura 5. . Questa propriet`a `e conseguenza del fatto che i polinomi di Bernstein sono positivi nell’intervallo [0. In particolare si vede che la tangente agli estremi coincide con la retta congiungente rispettivamente i primi due e gli ultimi due punti di controllo. 1] ed inoltre n X Jn.

La condizione di allineamento dei punti di controllo P2 . quindi la curva P (t) `e sicuramente continua.3: Nella figura in alto `e tracciata una curva di B´ezier a tratti. CURVE NELLO SPAZIO P1 P2 b b P(t) P0 b Q3 P3 ≡ Q0 b b Q(t) P1 P2 b b b Q1 b Q2 P(t) b P0 b P3 ≡ Q0 Q3 b Q(t) b b Q1 Q2 Figura 5. Le due curve si toccano in un punto. ma non `e detto che esse abbiano la stessa tangente. Tuttavia si dovrebbero valutare polinomi di grado elevato. . determinata dall’unione delle due curve P (t) e Q(t). Nel grafico in basso tale condizione non `e verificata. Per quanto osservato al punto precedente la condizione di continuit`a della derivata prima dipende solo dal fatto che il punto di contatto pi` u il penultimo punto della prima curva e il secondo punto di controllo della seconda siano allineati (vedere Figura 5.106 CAPITOLO 5. Per ovviare a questo problema si potrebbe pensare all’utilizzo di una serie di curve di B´ezier di grado pi` u basso. 6. infatti il punto nel P3 la curva presenta una cuspide cio`e un punto in cui la tangente a destra e quella a sinistra sono differenti. Questa tecnica tuttavia presenta un altro problema. Se si hanno a disposizione molti punti di controllo si potrebbe pensare di calcolare una singola curva di B´ezier.3). P3 (coincidente con Q0 ) e Q1 assicura la continuit`a della derivata prima della curva.

4). Una curva di B´ezier pu`o essere fatta passare vicino ad un determinata posizione assegnando a tale vertice un punto di controllo multiplo (vedere Figura 5.107 CAPITOLO 5. Esempio 5. Poich`e abbiamo a disposizione . 9. 1).j (u)Jn. v) = m X n X Pjk Jm. 8.k (v) j=0 k=0 0 ≤ u. 3) e P3 (3. cio`e delle funzioni in due variabili definite in opportuni domini di R2 . 1) e di voler calcolare la curva di B´ezier che approssima la curva passante per P0 e P3 . 7.4: Esempio di curve di B´ezier con punti coincidenti. CURVE NELLO SPAZIO P1 P2 b b P0 P3 b b P1 ≡ P2 • P3 • P0 • P4 • Figura 5. L’espressione matematica di una superficie di B´ezier `e la seguente: P (u. Il concetto (e il modo di costruzione) delle curve di B´ezier possono essere utilizzati anche per tracciare delle superfici approssimanti. 3). v ≤ 1 con Pjk punti di controllo in R3 . P1 (2.3.1 Supponiamo siano assegnati i seguenti punti di controllo P0 (1. P2 (4. Una curva chiusa di B´ezier `e generata specificando il primo e l’ultimo punto di controllo nella stessa posizione.

3.0 (t) = (1 − t)3 J3. C(3. quindi il cambio di un punto di controllo provoca la variazione di tutta la curva. 3) = 1 e 6 6 = 3.2 (t) = 3t2 (1 − t) J3.2 (t) + P3 J3. In determinate circostanze questa mancanza di controllo locale pu`o essere dannosa. I polinomi di Bernstein. C(3. La curva di B´ezier `e: P (t) = P0 J3. 5 punti di controllo una di grado 4 e cos`ı via). (3 − 1)!1! (3 − 2)!2! I polinomi di Bernstein hanno quindi le seguenti espressioni: C(3. L’uso delle curve di B´ezier ha molti vantaggi ma anche alcuni svantaggi: 1.1 (t) + P2 J3. 2) = = 3. Il coefficiente binomiale in questo caso `e: C(3. 2.3 (t) = t3 . CURVE NELLO SPAZIO 4 punti di controllo la curva avr` a grado 3. usati come base nelle curve di B´ezier.4 Le B-Spline Da un punto di vista matematico una curva `e definita attraverso una poligonale che unisce una serie di vertici (o punti di controllo) e da un opportuno schema di interpolazione (o di approssimazione) che associa a tale curva un’equazione. 5.0 (t) + P1 J3. 1) = J3.108 CAPITOLO 5. L’unico modo per ridurre il grado della curva `e quello di diminuire il numero di punti cos`ı come l’unico modo per aumentarlo `e quello di aggiungere ulteriori punti. 0) = C(3.1 (t) = 3t(1 − t)2 J3. Il numero dei punti di controllo fissa l’ordine del polinomio che definisce la curva (per esempio 4 punti di controllo definiscono una poligonale di grado 3. 1. k) = Quindi 6 (3 − k)!k! k = 0. 2. sono definiti globalmente per ogni valore del parametro t nell’intervallo [0. . 1].3 (t). Determiniamo quindi i polinomi di Bernstein di grado 3.

CAPITOLO 5.k (t) + Qi Jn.i (t) 6= 0. Q(t) = n X Qk Jn. e che sono appunto. Definiamo quindi i nuovi punti di controllo Qk tali che  se k 6= i  Pk Qk =  ′ Pi = Pi + v se k = i.k (t) + (Pi + v)Jn.k6=i = n X Pk Jn.k6=i = n X Pk Jn.i (t). per esempio Pi venga modificato nel punto Pi′ pari a Pi′ = Pi + v Siamo interessati a vedere come varia la curva di B´ezier. Calcoliamo la nuova curva di B´ezier Q(t). le B-Spline. CURVE NELLO SPAZIO 109 Supponiamo ora che uno dei punti di controllo. Questo `e il motivo principale che ha portato all’uso di una classe di funzioni base diverse dai polinomi. Il loro uso consente di evitare entrambi i problemi appena citati nonostante abbiano lo svantaggio .i (t) k=0.k6=i = n X Pk Jn.k (t) + Pi Jn.i (t) + vJn.k (t) + vJn. 0<t<1 segue che P (t) 6= Q(t).k (t) k=0 = n X Qk Jn. 0<t<1 e quindi le due curve sono sostanzialmente diverse per ogni t.i (t) k=0.i (t) k=0.i (t) = P (t) + vJn. k=0 Poich`e Jn.

Si definisce dominio del nodo ti l’intervallo [ti .3. 8. allora il vettore dei nodi si dice uniforme. Per esempio il vettore dei nodi U = {0. 9. 2. 7. 6. 9. Prima di definire le funzioni base definiamo alcuni concetti preliminari. 11} . 8.CAPITOLO 5. 5. 1 ≤ i ≤ m. 4.4 e cos`ı via). allora si dice che ti `e un nodo multiplo con molteplicit`a k. 2. 1. 5. cio`e: ti = ti+1 = · · · = ti+k−1 con k > 1. t1 . 9. altrimenti si dice non uniforme. . se ti appare solo una volta allora `e un nodo semplice. 10. cio`e non definite in tutto l’intervallo di variabilit`a del parametro t. 8. Il vettore dei nodi U = {0. t2 . Le B-Spline sono definite come una combinazione di funzioni base non globali. 3. 3. . ti+1 ). 11. Al contrario. 10. 3. 6. tm } cio`e tali che: t0 ≤ t1 ≤ t2 ≤ · · · ≤ tm . 10} non `e un vettore uniforme. Tale comportamento non globale dipende dal fatto che ad ogni punto di controllo `e associata una singola funzione della base. Un’altra caratteristica delle B-Spline `e che l’ordine della risultante curva pu`o essere variato senza cambiare il numero dei punti di controllo (quindi fissati tali punti si possono avere curve di ordine 2. Sia U un insieme di m + 1 numeri non descrescenti U = {t0 . gli altri hanno molteplicit`a 1. mentre il l’insieme U `e detto vettore dei nodi. cio`e la differenza ti − ti−1 `e costante per ogni i. Ognuno di tali punti influisce sull’andamento della curva solo in uno determinato intervallo di variabilit`a del parametro t. 1. CURVE NELLO SPAZIO 110 di richiedere una maggiore complessit`a computazionale. 8. Se il nodo ti compare k volte. Tali valori ti sono detti nodi (in inglese knots). Ovviamente se i due valori ti e ti+1 coincidono allora il dominio di ti non `e definito. 10. inoltr i nodi 8 e 9 hanno molteplicit`a 2 mentre il nodo 10 ha molteplicit`a 3. . Se i nodi sono equispaziati. .

4. 1. 0. ti+1 ] e zero in tutti gli altri. Se p = 0 allora le funzioni base sono le cosiddette funzioni a gradino perch`e assumono valore uguale a 1 solo in un intervallo [ti . 4} cio`e t0 = 0. 2. Infatti il vettore dei nodi U = {0. 4. CURVE NELLO SPAZIO `e un vettore uniforme. tm ] ce.i (t) + Np−1.i+1 (t).111 CAPITOLO 5. di solito. 1}.2. I nodi definiscono una partizione dell’intervallo [t0 . 1]. che indichiamo con p. t1 = 1. e che rappresenta il grado della B-Spline. 5} `e equivalente al vettore U1 = {0. 0. t4 = 4. Per capire meglio il senso della formula di Cox-de Boor consideriamo come esempio il vettore dei nodi U = {0. 3.0 (t).3 (t) sono piuttosto semplici da tracciare.1 Funzioni B-Spline Base La i−esima funzione B-Spline base di grado p viee definita utilizzando la seguente formula ricorsiva:  ti ≤ t ≤ ti+1  1 N0. 1]. ti+p − ti ti+p+1 − ti+1 che viene detta Formula di Cox-de Boor. I grafico delle funzioni N0. In ogni modo `e sempre possibile trasformarlo in [0.1 (t). N0. 2.2 (t) e N0. 0.8. t2 = 2. 5. . Prima di definire le funzioni base per le B-Spline si deve definire un ulteriore parametro. N0.i (t) = t − ti ti+p+1 − t Np−1. t3 = 3. coincide con l’intervallo [0.4.i (t) =  0 altrimenti e Np. 1.

112 CAPITOLO 5. CURVE NELLO SPAZIO N0.0 (t) • t0 • t1 • t2 • t3 • t4 t • t2 • t3 • t4 t • t3 • t4 t N0.2 (t) • t0 • t1 • t2 .1 (t) • t0 • t1 N0.

.4 (t) .3 (t) N2.0 (t) N2.2 (t) N3.i+1 (t).i+1 (t). [t4 . N1. Inoltre in ogni colonna dello schema sono riportate tutte le funzioni base aventi lo stesso grado.113 CAPITOLO 5. .. In generale per valutare Np.i (t) sono richieste N0. t3 ] N0. .3 (t) • t0 • t1 • t2 • t3 • t4 t Per comprendere meglio come funziona la formula di Cox-de Boor si pu`o utilizzate la seguente rappresentazione tabellare. . 4}.2 (t) N3. t1 ] N0. rispettivamente i domini dei nodi e le funzioni di grado 0. [t0 .i (t) si devono conoscere Np−1. nelle prime due colonne. .0 (t) N1..0 (t) N1.1 (t) N2. [t3 . N1.1 (t) N4. Se il vettore dei nodi `e U = {0.3 (t) .2 (t) .0 (t) [t1 . t2 ] N0. Per calcolare la funzione base N1. ..i (t) e Np−1.1 (t) [t2 .. 3. . 2..i (t) e N0. CURVE NELLO SPAZIO N0. allora la tabella delle . t4 ] N0. t5 ] N0. 1. .1 (t) .0 (t) . che ha.

1] e [1. 1)  t N1. si ha N1.0 (t) N1.1 (t).2 (t) [3. Poich`e le funzioni N0. 2] ed assume la seguente espressione:  t ∈ [0. CURVE NELLO SPAZIO funzioni base da calcolare `e [0.0 (t) N1. Calcoliamo ora N1. .0 (t) = tN0. t2 = 2. 4] N0.0 (t) `e definita nell’intervallo [0.0 (t) = t − t0 t2 − t N0.0 (t) =  2−t t ∈ [1.2 (t). 2) t ∈ [2. t3 = 3.1 (t) = (t − 1)N0.1 (t) = t − t1 t3 − t N0. 3].0 (t) N2. 2] N0. t1 = 1.0 (t) e N0.114 CAPITOLO 5. t2 − t1 t3 − t2 cio`e N1.0 (t) [1.1 (t) N1.1 (t) [2. t1 − t0 t2 − t1 poich`e t0 = 0. 1] N0.1 (t): N1. 2]. la funzione N1.1 (t).1 (t) sono definite rispettivamente negli intervalli [0. 3] N0.1 (t) + N0.1 (t) =   t−1  3−t t ∈ [1.3 (t) Applicando la formula di Cox-de Boor: N1.0 (t) + (2 − t)N0.2 (t) N3.0 (t) + N0.1 (t) + (3 − t)N0. da cui si ricava che N1.1 (t) N2. 2].2 (t).

2 (t) = t − t2 t4 − t N0.1 (t) • t0 • t1 • t2 . CURVE NELLO SPAZIO Calcoliamo ora N1. 4]. 3) 4−t t ∈ [3.3 (t).3 (t).2 (t): N1.2 (t) + N0.2 (t) + (4 − t)N0.115 CAPITOLO 5. da cui si ricava che N1. • t2 • t3 • t4 t • t3 • t4 t N1. t3 − t2 t4 − t3 cio`e N1.2 (t) = (t − 2)N0.0 (t) • t0 • t1 N1.2 (t) =   t−2  t ∈ [2.

1 (t). quindi 1 N2.0 (t) + N1. 2 .0 (t) e N1.1 (t) 2−0 3−1 t 3−t = N1.1 (t) t2 − t0 t3 − t1 3−t t−0 N1.2 (t) • t0 • t1 • t2 • t3 • t4 t Una volta calcolate N1.0 (t) `e diversa da zero e contribuisce all’espressione di N2.0 (t) = t.116 CAPITOLO 5. 1) : In questo caso solo N1.1 (t) possiamo calcolare N2.0 (t) = t2 .0 (t) = = t − t0 t3 − t N1.0 (t) dobbiamo distinguere quattro casi: 1o caso: t ∈ [0.0 (t).0 (t) utilizzando sempre la formula di Cox-de Boor: N2. CURVE NELLO SPAZIO N1.0 (t) + N1. 2 2 Per esplicitare l’espressione di N2.0 (t) + N1. infatti si ha N1.

CURVE NELLO SPAZIO 2o caso: t ∈ [1. la funzione N2.0 (t) = (3 − t)2 .0 (t) che N1.0 (t) = 0. infatti N1. quindi 1 N2. 1) t ∈ [1.1 (t) = 3 − t.1 (t) sono diverse da zero quindi N2.1 (t) sono nulli quindi N2. 3) In questo caso solo N1. Riassumendo. 2) t ∈ [2. . 3) t ∈ [3.0 (t) che N1.0 (t) =    1   (3 − t)2    2      0 t ∈ [0.1 (t) 2 1 1 = t(2 − t) + (3 − t)(t − 1) 2 2 = =  1 2t − t2 + 3t − t2 − 3 + t 2  1 −3 + 6t − 2t2 2 3o caso: t ∈ [2.0 (t).0 (t) `e:  1 2   t   2       1    (−3 + 6t − 2t2 ) 2 N2. 4).1 (t) contribuisce all’espressione di N2.117 CAPITOLO 5. 4] In questo caso sia N1. 2) In questo caso sia N1. 2 o 4 caso: t ∈ [3.0 (t) + 3−t N1.0 (t) = 2t N1.

1) t ∈ [1.0 (t) • t0 • t1 • t2 • t3 • t4 t • t3 • t4 t N2.0 (t) + N3. CURVE NELLO SPAZIO Ripetendo analoghi calcoli per N2.118 CAPITOLO 5.1 (t) si trova:  0         1 2     2 (t − 1)  N2.1 (t) = N2.0 (t) + N2. 3) t ∈ [3. cio`e N3.0 (t) = t3 − t0 t4 − t1 3 3 . 4) N2.1 (t) • t0 • t1 • t2 Procedendo nello stesso modo si pu`o calcolare l’ultima funzione che manca.0 (t): 4−t t4 − t t t − t0 N2.1 (t) N2.1 (t) = 1    (−11 + 10t − 2t2 )   2         1 (4 − t)2 2 t ∈ [0. 2) t ∈ [2.

. In ogni intervallo [ti . La funzione base Np. . t1 . tm } .i (t) `e diversa da zero solo nell’intervallo [ti .119 CAPITOLO 5. ti+p+1 ]. . Np. 3) t ∈ [3.0 (t) • t0 • t1 • t2 • t3 • t4 t Riassumiamo ora due propriet`a che le funzioni base delle B-Spline posseggono e che si possono facilmente dedurre dall’esempio fatto. . .i−p+1 (t). cio`e Np. . 1. .i−p (t). . CURVE NELLO SPAZIO e ottenendo N3. . 2. Pn ed il vettore dei nodi U = {t0 . .0 (t) =                1 3 t 6 t ∈ [0. 2)   1   (−44 + 60t − 24t2 + 3t3 )   6         1 (4 − t)3 6 t ∈ [2. 4) N3. Assegnati n + 1 punti di controllo P0 . Np. 1) 1 (4 − 12t + 12t2 − 3t3 ) 6 t ∈ [1. ti+1 ] ci sono al pi` u p + 1 funzioni base diverse da zero.i (t). t2 . Adesso possiamo definire formalmente la B-Spline che approssima una curva nello spazio. . . P1 .

m.CAPITOLO 5.5. .i (t) sono le funzioni base di grado p. una verso l’alto e l’altra verso il basso.i (t) ≥ 0 per ogni i. In definitiva nell’intervallo [ti . CURVE NELLO SPAZIO 120 si definisce B-Spline di grado p la curva C(t) = n X Np. p. oltre ai punti di controllo. detti punti nodo (knot points). Ricapitoliamo ora le principali propriet`a delle B-Spline: • Np. Elenchiamo ora le principali differenze tra le B-Spline e le curve di B´ezier: 1. Tuttavia essa ha. ti+1 ] per sapere quali sono le funzioni definite in tale intervallo (cio`e diverse da zero in tale intervallo) si considera il solito schema tabulare e si tracciano due rette che partono da tale dominio e vanno in diagonale verso destra. Il vettore dei nodi definisce un insieme di punti sulla curva. Il grado p `e indipendente dal numero di punti di controllo. ` possibile costruire una B-Spline che non passa per il primo e l’ultimo 2. i = 0. che si traduce in un numero superiore di gradi di libert`a. t. 3. E punto di controllo (B-Spline aperta). le funzioni diverse da zero sono evidenziate nella figura 5. in particolare. in s`e. in particolare quelli di coordinata C(ti ). L’espressione formale della BSpline di grado p `e solo formalmente molto simile a quella che abbiamo visto per le curve di B´ezier. . Per esempio nel seguente schema. una maggiore informazione. considerando il dominio [t2 .i (t)Pi i=0 dove Np. .i (t) `e un polinomio di grado p in t. • Np. In particolare poich`e se abbiamo n + 1 punti di controllo dobbiamo anche poter definire n + 1 funzioni base `e necessario che tra n. . ti+1 ] ci sono al pi` u p+1 funzioni base diverse da zero. p ed m ci sia la seguente relazione: m = n + p + 1. • Fissato un dominio [ti . si devono scegliere i nodi ti ed il grado p (indipendente da n). . t3 ].

. • Se il numero di punti di controllo `e n+1 e p `e il grado della curva allora il numero m deve essere n + p + 1. t5 ] N0. • La somma di tutte le funzioni base di grado p non nulle nel dominio [ti . t6 ] N0. CURVE NELLO SPAZIO [t0 . • Se il k−esimo punto di controllo cambia.5: • Al contrario fissata una funzione base Np.1 (t) [t2 .1 (t) N2. t1 ] N0.2 (t) N2.4 (t) N1. ti+p+1 ]. Per esempio nel seguente schema.0 (t) N4.4 (t) [t5 .3 (t) N2.5 (t) Figura 5.0 (t) N5.6 (t) N1.5 (t) [t6 .i (t) `e diversa da zero solo nell’intervallo [ti .0 (t) [t1 .1 (t) N3.4 (t) N2. t4 ] N0.121 CAPITOLO 5.2 (t) N4. t2 ] N0. ti+1 ] `e 1.0 (t) N2. t3 ] N0.0 (t) N3.0 (t) N1. t7 ] N0.2 (t) N3. una verso l’alto e l’altra verso il basso.2 (t): Quind la funzione Np.2 (t) [t3 .3 (t) [t4 .3 (t) N1.1 (t) N4. cio`e Pk diventa Pk + v allora vogliamo calcolare la nuova B-Spline avente come punti di controllo Qk tali che  se i 6= k  Pi Qi =  ′ Pk = Pk + v se i = k.1 (t) N5.i (t) per sapere in quali domini `e definita si considera la stessa tabella e si tracciano due rette che partono da tale dominio e vanno in diagonale verso sinistra. considerando la funzione N3.2 (t) N1.0 (t) N6.1 (t) N1.3 (t) N3.

2 (t) N1.0 (t) N1.k (t).7 `e .1 (t) N1.1 (t) N3. t2 ] N0.0 (t) N2. CURVE NELLO SPAZIO [t0 .3 (t) N2.1 (t) N4.3 (t) N3.2 (t) N4.1 (t) [t2 .4 (t) N1. t5 ] N0.0 (t) [t1 .6: La nuova B-Spline D(t) di grado p `e: D(t) = n X Qi Np.4 (t) [t5 . t4 ] N0.i (t) + (Pk + v)Np. t6 ] N0.k (t) i=0. t3 ] N0.1 (t) N5.5 (t) Figura 5.k (t) i=0.k (t) + vNp. t7 ] N0.2 (t) N2.i (t) + Qk Np.i (t) + Pk Np.0 (t) N5.0 (t) N6.122 CAPITOLO 5.0 (t) N3.0 (t) N4.k (t) = C(t) + vNp.i6=k i=0 = n X n X Pi Np.2 (t) N3.4 (t) N2.2 (t) [t3 .5 (t) [t6 . Per evidenziare quest’ultima propriet`a.k (t) `e diversa da zero solo nell’intervallo [tk .6 (t) N1.3 (t) [t4 .k (t) i=0. tk+p+1 ] allora le curve C(t) e D(t) differiscono solo nella parte di curva compresa tra i punti nodo C(tk ) e C(tk+p+1 ).i6=k = n X Pi Np.3 (t) N1.i (t) = Qi Np. nella Figura 5. t1 ] N0. i=0 Poich`e la funzione Np.i (t) + vNp.i6=k = n X Pi Np. che `e probabilmente il vantaggio pi` u grande nell’uso delle B-Spline rispetto alle curve di B´ezier.1 (t) N2.

Nelle Figure successive sono evidenziate le parti della curva influenzate dai punti di controllo. che richiede m + 1 = 9 (ovvero m = 8) nodi.123 CAPITOLO 5. . CURVE NELLO SPAZIO P2 • P1 • P3 • P4 • C(t4 ) C(t5 ) C(t3 ) C(t6 ) C(t2 ) C(t7 ) C(t1 ) C(t8 ) P0 P5 Figura 5.7: rappresentata una B-spline cubica (p = 3) con n = 5 (ovvero 6 punti di controllo).

124 CAPITOLO 5. CURVE NELLO SPAZIO P2 • P1 • P3 • P4 • C(t4 ) C(t5 ) C(t3 ) C(t6 ) C(t2 ) C(t7 ) C(t1 ) C(t8 ) P0 P5 P2 • P1 • P4 • C(t4 ) C(t3 ) C(t2 ) C(t1 ) P0 P3 • C(t5 ) C(t6 ) C(t7 ) C(t8 ) P5 .

125 CAPITOLO 5. . Tuttavia sovrapponendo le due curve (Figura 5.9) si osserva che queste sono differenti solo in una parte (ovvero nel dominio in cui `e definita la funzione N3.3 (t)). cambia anche la curva (grafico verde nella Figura 5. CURVE NELLO SPAZIO P2 • P1 • P3 • P4 • C(t4 ) C(t5 ) C(t3 ) C(t6 ) C(t2 ) C(t7 ) C(t1 ) C(t8 ) P0 P5 P2 • P1 • P4 • C(t4 ) C(t3 ) C(t2 ) C(t1 ) P0 P3 • C(t5 ) C(t6 ) C(t7 ) C(t8 ) P5 Spostando il quarto punto di controllo nella posizione P3′ .8).

9: . CURVE NELLO SPAZIO P2 • P1 • P3 • P4 • P3′ • C(t4 ) C(t3 ) C(t5 ) C(t6 ) C(t7 ) C(t2 ) C(t8 ) C(t1 ) • P0 • P5 Figura 5.126 CAPITOLO 5.8: P2 • P1 • P3 • P4 • P3′ • C(t4 ) C(t3 ) C(t5 ) C(t6 ) C(t2 ) C(t7 ) C(t1 ) C(t8 ) • P0 • P5 Figura 5.

i (t) sono funzioni razionali. . n X i=0 Rp. (5. e ωi > 0 per ogni i.i (t)ωi .i (t) sono le funzioni basedi grado p definite sull’insieme di nodi non uniforme U = {t0 . Rp.5) Np. ovvero funzioni base razionali costruite su insiemi di nodi non uniformi.5) si pu`o scrivere come C(t) = n X Rp.127 CAPITOLO 5. al solito. si pu`o supporre t0 = 0 e tm = 1).i (t)ωi i=0 allora la relazione (5.4. dette NURBS (acronimo di Non-Uniform Rational B-Spline). i valori ωi sono i pesi mentre le funzioni Np.i (t) = 1. t2 . p e t ∈ [0. CURVE NELLO SPAZIO 5. . . che godono delle seguenti propriet`a: 1.i (t) = n X Np.i (t)ωi Pi i=0 n X .i (t) ≥ 0 per ogni i. ∀t ∈ [0. t1 . Si possono ottenere approssimazioni migliori utilizzando come funzioni base quelle di tipo razionale. tm } con m = n + p (anche se. 1]. 1]. 2.i (t)ωi i=0 dove i Pi sono i punti di controllo. Ponendo Np. Rp. Una NURBS di grado p `e definito da C(t) = n X Np.2 Funzioni B-Spline Razionali Le B-spline hanno il vantaggio di fornire un controllo locale sulla curva approssimante ma sono pur sempre delle funzioni polinomiali a tratti e consentono quindi una buona approssimazione solo per curve di questo tipo.i (t)Pi i=0 in cui le funzioni Rp. . .

CAPITOLO 5. allora cambia solo la porzione di curva nll’intervallo [ti . associato a tale peso. 6. Se ωi = 1 per ogni i allora Rp. oppure se cambia solo l’i−esimo nodo ωi . 5. ti+p+1 ]. Infatti incrementando il valore del peso ωi la curva si avvicina al punto di controllo Pi . Alo contrario decrementando il valore di ωi la curva si allontana dallo stesso punto. Quindi le B-spline sono un caso particolare di NURBS.n (1) = 1. ti+p+1 ]. CURVE NELLO SPAZIO 128 3. Se viene spostato il punto di controllo Pi . Rp. Se il peso ωi fosse uguale a zero allora il punto di controllo Pi non ha alcuna influenza sulla curva.i (t) = Np. Rp.i (t) `e diversa da zero solo nell’intervallo [ti . 7. C(0) = P0 e C(1) = Pn .i (t) per ogni i. 4.0 (0) = Rp. Il valore dei pesi consente un maggiore controllo sulla curva C(t). .