Sunteți pe pagina 1din 15

3

ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A


CURBELOR

3.1. Interpolare cu ajutorul funcţiilor polinomiale


Prin interpolare se ı̂nţelege următoarea problemă: se dau n + 1 puncte
P0 , P1 , . . . , Pn ı̂n plan sau ı̂n spaţiu având vectorii de poziţie r0 , . . . , rn şi
se caută o funcţie vectorială ρ : [a, b] → R2 , sau ρ : [a, b] → R3 , astfel ı̂ncât
ρ(a) = r0 , ρ(t1 ) = r1 , . . . , ρ(b) = rn , unde a = t0 < t1 < . . . < tn−1 < tn = b.
Punctele P0 , P1 , . . . , Pn se numesc noduri. Vom cere ca funcţia ρ să fie
cât mai simplă, adică, pe componente, să fie o funcţie polinomială sau o
funcţie polinomială pe porţiuni, sau o funcţie raţională.
Prima soluţie a problemei inerpolării este dată de funcţiile liniare, adică
interpolarea se face cu ajutorul segmentelor. Considerăm n + 1 puncte
P0 , P1 , . . . , Pn şi definim

ρi (t) = tri+1 + (1 − t)ri , ∀t ∈ [0, 1], i = 0, n − 1.

Evident, ρi (0) = ri şi ρi (1) = ri+1 . Definim acum funcţia ρ prin

ρ : [0, n] → R3 , ρ(t) = ρi (t − i), ∀t ∈ [i, i + 1].

Deoarece
ρi (i + 1 − i) = ri+1 = ρi+1 (i + 1 − (i + 1)),

65
66 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

rezultă că ρ este bine defnită. Evident, ρ este netedă pe porţiuni, adică
ρ este netedă, ∀i = 0, n − 1, dar ρ este doar continuă; ı̂n ti , ρ nu este,
(i,i+1)
ı̂n general, derivabilă.
Pentru a obţine ρ netedă (global) vom cere că ρ să fie funcţie vectorială
polinomială. Vom studia două tipuri de interpolare cu funcţii polinomiale:
interpolarea Lagrange şi interpolarea Hermite.

3.2. Interpolarea Lagrange


Fie P0 (x0 , y0 , z0 ), P1 (x1 , y1 , z1 ), . . . , Pn (xn , yn , zn ), n + 1 puncte ı̂n R3 şi
considerăm un interval real [a, b] ı̂mpreună cu o partiţie a sa

a = t0 < t1 < . . . < tn = b.

Vrem să determinăm o funcţie polinomială L(t) = (Lx (t), Ly (t), Lz (t)),
t ∈ [a, b], astfel ı̂ncât
L(ti ) = ri , i = 0, n,
sau, pe componente,

(3.2.1) Lx (ti ) = xi , Ly (ti ) = yi şi Lz (ti ) = zi , i = 0, n.

Vom determina funcţia Lx , funcţiile Ly şi Lz determinându-se analog. Deoarece


un polinom de grad n are n + 1 coeficienţi iar ecuaţia (3.2.1) reprezintă de
fapt n + 1 ecuaţii pentru Lx , vom căuta Lx sub forma

Lx (t) = a0 + a1 t + . . . + an tn ,

unde a0 , a1 , . . . , an ∈ R şi trebuiesc determinaţi. Lx se numeşte polinom


Lagrange. Din (3.2.1) obţinem
8
a + a1 t0 + . . . + an tn0 = x0
> 0
>
>
<
a0 + a1 t1 + . . . + an tn1 = x1
(3.2.2) .
>. . .
>
>
:
a0 + a1 tn + . . . + an tnn = xn
3.2. Interpolarea Lagrange 67

Sistemul (3.2.2) este liniar cu n + 1 necunoscute (a0 , . . . , an ). Matricea


sa este ‡ ‘
1 t0 . . . tn0
1 t1 . . . tn1
A= ,
... ... ... ...
1 tn . . . tnn
Q
iar det A = 0≤i<j≤n (tj − ti ) ̸= 0. Prin urmare avem un sistem Cramer.
Pentru a scrie Lx mai convenabil vom introduce polinoamele Lagrange de
bază Li , i = 0, n. Ele sunt polinoame de grad n şi se definesc prin

Li (tj ) = δij , i, j = 0, n,

unde δij sunt simbolii lui Kronecker, adică δij = 1 dacă i = j şi δij = 0 dacă
i ̸= j. Se obţine
n
Y t − tj
(3.2.3) Li (t) = .
t − tj
j=0 i
j̸=i

Este uşor de verificat că Li (ti ) = 1 şi Li (tj ) = 0, ∀j ̸= i, deci, ı̂ntr-adevăr


Li este dat de (3.2.3). Acum putem scrie Lx sub forma
n
X
(3.2.4) Lx (t) = x0 L0 (t) + x1 L1 (t) + . . . + xn Ln (t) = xi Li (t).
i=0

Polinoamele Li nu depind de x0 , . . . , xn şi prin urmare, dacă se modifică


unul din x0 , x1 , . . . , xn , Lx (t) este uşor de recalculat din (3.2.4). Altfel ar
trebui să recalculăm toţi a0 , a1 , . . . , an , conform regulii lui Cramer, ceea ce ar
implica un volum mult mai mare de calcul. Mai mult, soluţia la interpolarea
Lagrange se scrie
n
X
L(t) = Li (t)ri .
i=0

Avantajul interpolării Lagrange este că se obţine o funcţie polinomială, deci


foarte simplă. Dezavantajul este gradul n al funcţiei polinomiale. Pentru n
mare, volumul de calcul (şi deci acumularea erorilor) face ca procedeul să
nu fie convenabil.
68 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

Un caz particular al interpolării Lagrange este următorul:


Considerăm P0 (x0 , y0 ), P1 (x1 , y1 ), . . . , Pn (xn , yn ), n + 1 puncte ı̂n plan, x0 <
x1 < . . . xn , şi vrem să determinăm o funcţie polinomială L astfel ı̂ncât

L(xi ) = yi , i = 0, n.

Analog putem scrie soluţia L sub forma


n
X
L(x) = yi Li (x),
i=0

Qn x−xj
unde Li sunt polinoamele Larange de bază Li (xj ) = δij şi Li (x) = j=0,j̸=i xi −xj .

3.3. Curbe Ferguson şi interpolare Hermite


Se consideră două puncte P0 şi P1 ı̂n spaţiu date prin vectorii de poziţie r0
şi r1 , precum şi doi vectori r′0 şi r′1 . Dorim să găsim o curbă ρ : [0, 1] → R3
care să satisfacă: (
ρ(0) = r0 , ρ(1) = r1
.
ρ′ (0) = r′0 , ρ′ (1) = r′1
Căutăm ρ sub forma unei funcţi polinomiale şi, deoarece avem 4 condiţii, ρ
va fi de forma

(3.3.5) ρ(t) = a0 + ta1 + t2 a2 + t3 a3 ,

unde a0 , . . . , a3 sunt vectori constanţi din R3 ce urmează a fi determinaţi.


Din (3.3.1) rezultă
ρ(0) = a0 = r0
şi
ρ(1) = a0 + a1 + a2 + a3 = r0 + a1 + a2 + a3 = r1 ,
de unde obţinem

(3.3.6) a1 + a2 + a3 = r1 − r0 .
3.3. Curbe Ferguson şi interpolare Hermite 69

Derivând (3.3.1) rezultă ρ′ (t) = a1 + 2ta2 + 3t2 a3 şi avem

(3.3.7) ρ′ (0) = a1 = r′0 ,

iar
ρ′ (1) = a1 + 2a2 + 3a3 = r′0 + 2a2 + 3a3 = r′1
de unde

(3.3.8) 2a2 + 3a3 = r′1 − r′0 .

Din (3.3.2), (3.3.3) şi (3.3.4) obţinem


(
a2 = 3r1 − 3r0 − 2r′0 − r′1
(3.3.9)
a3 = 2(r0 − r1 ) + r′0 + r′1 .

Prin urmare

ρ(t) = r0 + tr′0 + t2 (3r1 − 3r0 − 2r′0 − r′1 ) + t3 {2(r0 − r1 ) + r′0 + r′1 }


= (1 − 3t2 + 2t3 )r0 + (3t2 − 2t3 )r1 + (t − 2t2 + t3 )r′0 + (−t2 + t3 )r′1
Ü (t)r ′ + H
= H0 (t)r0 + H1 (t)r1 + H Ü (t)r ′ ,
0 0 1 1

unde (
H0 (t) = 1 − 3t2 + 2t3 , H1 (t) = 3t2 − 2t3
Ü (t) = t − 2t2 + t3 ,
H HÜ (t) = −t2 + t3 .
0 1

Ü şi H
Polinoamele H0 , H1 , H Ü se numesc polinoamele Hermite de bază core-
0 1
spunzătoare lui t0 = 0 şi t1 = 1. Să observăm că polinamele Lagrange de
bază L0 şi L1 sunt date de

L0 (t) = 1 − t şi L1 (t) = t,

iar
(
H0 (t) = (1 − 2L′0 (0)t)L20 (t), H1 (t) = (1 − 2L′1 (1)(t − 1))L21 (t)
.
Ü (t) = tL2 (t),
H Ü (t) = (t − 1)L2 (t)
H
0 0 1 1

Ü (t)r ′ + H
Curba ρ(t) = H0 (t)r0 + H1 (t)r1 + H Ü (t)r ′ se numeşte curba Fer-
0 0 1 1
guson corespunzătoare configuraţiei (r0 , r1 , r0 , r′1 ).

70 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

Expresia lui ρ se poate scrie ı̂ntr-o formă mai compactă cu ajutorul


matricelor. Aceasta scriere este avantajoasă şi atunci când dorim să lucrăm
cu MATLAB. Fie deci matricele
‡ ‘
1 0 0 0
0 0 1 0
T = (1 t t2 t3 ) ∈ M1×4 (R), C= ∈ M4×4 (R)
−3 3 −2 −1
2 −2 1 1

şi
‡ ‘
r0
r1
R=
r′0
r′1
Ü şi H
Matricea C are pe coloane coeficienţii polinoamelor H0 , H1 , H Ü . Putem
0 1
scrie acum
ρ(t) = T CR.

Considerăm acum n+1 puncte P0 , P1 , . . . , Pn date prin vectorii de poziţie


r0 , r1 , . . . , rn . Deasemeni vom da n + 1 vectori r′0 , r′1 , . . . , r′n ce reprezintă
vectorii tangenţi (sau vectorii viteză) ı̂n punctele considerate. Fie [a, b] un
interval ı̂nchis şi
a = t < t1 < . . . < tn = b

o partiţie a sa. Căutăm o funcţie polinomială H : [a, b] → R3 , H(t) =


(H x (t), H y (t), H z (t)), care să satisfacă condiţiile
(
H(ti ) = ri , i = 0, n
H ′ (tj ) = r′j , j = 0, n.

După cum a fost sugerat de cazul n = 1, vom introduce polinoamele Hermite


Ü definite prin
de bază Hi şi H j

(
Hi (tj ) = δij , Hi′ (tj ) = 0, i, j, = 0, n
Ü (t ) = 0,
H Ü ′ (t ) = δ ,
H k, l = 0, n.
k l k l kl
3.4. Racordarea a două curbe Ferguson 71

Ü este 2n + 1. Se obţine
Gradul polinoamelor Hi şi Hj
(
Hi (t) = {1 − 2L′i (ti )(t − ti )}L2i (t), i = 0, n
Ü (t) = (t − t )L2 (t),
H j = 0, n,
j j j

iar H se scrie sub forma


n
X n
X
(3.3.10) H(t) = Hi (t)ri + Ü (t)r ′ .
H j j
i=0 j=0

Avantajul folosirii interpolării Hermite este că se obţine un control mult mai
mare asupra curbei (sunt daţi şi vectorii viteză) dar dezavantajul este dat
gradul mare al polinoamelor Hermite implicate.
Un caz particular al interpolării Hermite este următorul: se dau n + 1
puncte ı̂n plan P0 (x0 , y0 ), P1 (x, y1 ), . . . , Pn (xn , yn ), x0 < x1 < . . . < xn , şi
n + 1 valori y0′ , y1′ , . . . , yn′ . Căutăm un polinom H(x) care să satisfacă

(3.3.11) H(xi ) = yi şi H ′ (xj ) = yj′ , ∀i, j = 0, n.

Gradul lui H va fi 2n + 1, iar soluţia H se scrie sub forma


n
X n
X
H(x) = Hi (x)ri + Ü (x)r ′ .
H j j
i=0 j=0

3.4. Racordarea a două curbe Ferguson


Fie ρ1 şi ρ2 curbele Ferguson corespunzătoare configuraţiilor (r10 , r11 , r′10 , r′11 )
şi (r20 , r21 , r′20 , r′21 ), respectiv. Vrem să determinăm condiţiile care trebuie
să le ı̂ndeplinească cei 8 vectori pentru a a vea o racordare de clasă C 2 , adică
funcţia vectorială compozită
(
ρ1 (t), t ∈ [0, 1]
ρ : [0, 2] → R , 3
ρ(t) =
ρ2 (t − 1), t ∈ [1, 2]

să fie de clasă C 2 . Este clar că ρ este de clasă C 2 dacă şi numai dacă
ρ1 (1) = ρ2 (0), ρ′1 (1) = ρ′2 (0) şi ρ′′1 (1) = ρ′′2 (0). Să vedem cum rescriem
72 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

aceste 3 condiţii cu ajutorul celor 8 vectori. Primele două condiţii se scriu


echivalent
r11 = r20 şi r′11 = r′20 .
Pentru ultima condiţie, reamintim că

ρ(t) = (1 − 3t2 + 2t3 )r0 + (3t2 − 2t3 )r1 + (t − 2t2 + t3 )r′0 + (−t2 + t3 )r′1

de unde

ρ′ (t) = (−6t + 6t2 )r0 + (6t − 6t2 )r1 + (1 − 4 + 3t2 )r′0 + (−2t + 3t2 )r′1 ,

şi

ρ′′ (t) = (−6 + 12t)r0 + (6 − 12t)r1 + (−4 + 6t)r′0 + (−2 + 6t)r′1 .

Prin urmare
ρ′′1 (1) = 6r10 − 6r11 + 2r′10 + 4r′11 ,
ρ′′2 (0) = −6r20 + 6r21 − 4r′20 − 2r′21 = −6r11 + 6r21 − 4r′11 − 2r′21
şi deci obţinem că ρ este de clasă C 2 dacă şi numai dacă
(
r11 = r20 , r′11 = r′20
.
r′10 + 4r′11 + r′21 = 3(r21 − r10 )

3.5. Curbe Bezier de grad 3 şi racordarea lor


Se consideră 4 puncte ı̂n spaţiu P0 , P1 , P2 şi P3 date prin vectorii de poziţie
b0 , b1 , b2 şi b3 , respectiv. Dorim să găsim o curbă b : [0, 1] → R3 care să
ı̂ndeplinească condiţiile:
(
b(0) = b0 , b(1) = b3
(3.5.12) ′
b (0)∥(b1 − b0 ), b(1)∥(b3 − b2 ).

Spre deosebire de curba Ferguson, apare o relaxare ı̂n ceea ce priveşte vectorii
viteză ı̂n extremităţi, ı̂n situaţa de faţă precizându-se doar direcţiile lor şi
nu vectorii propriu-zişi.
3.5. Curbe Bezier de grad 3 şi racordarea lor 73

P1 P2

P0
P3

Inginerul Bézier a avut ideea folosirii polinoamelor Berstein

Bi3 (u) = C3i ui (1 − u)3−i , ∀u ∈ [0, 1].


P
Evident, 3i=0 Bi3 (u) = 1, ∀u ∈ [0, 1], şi Bi3 (u) ≥ 0, ∀i = 0, 3 şi ∀u ∈ [0, 1].
Bézier a considerat curba
3
X 3
X
(3.5.13) b(u) = Bi3 (u)bi = C3i ui (1 − u)3−i bi
i=0 i=0
= (1 − u)3 b0 + 3u(1 − u)2 b1 + 3u2 (1 − u)b2 + u3 b3 .

Curba b definită mai sus se numeşte curba Bezier de grad 3 corespunzătoare


configuraţiei (b0 , b1 , b2 , b3 ).
Din cele două proprietăţi ale polinoamelor Bernstein rezultă că b(u)
aparţine ı̂nfăşurătorii convexe a punctelor P0 , P1 , P2 şi P3 . Dacă P0 , P1 , P2
şi P3 formeaza un patrulater convex, atunci b(u) aparţine interiorului pa-
trulaterului, iar dacă P0 , P1 , P2 şi P3 nu sunt coplanare, b(u) aparţine inte-
riorului tetraedrului format de aceste puncte. În plus, b(0) = b0 , b(1) = b3 ,
iar

b (u) = −3(1 − u)2 b0 + 3(1 + 3u2 − 4u)b1 + 3(2u − 3u2 )b2 + 3u2 b3 ,

de unde
′ ′
b (0) = 3(b1 − b0 ) şi b (1) = 3(b3 − b2 ).
Prin urmare curba Bezier definită de (3.5.2) ı̂ndeplineşte condiţiile (3.5.1).
Este uşor de văzut ca

Propoziţia 3.5.1. Curba Bézier corespunzătoare configuraţiei (b0 , b1 , b2 , b3 )


este curba Ferguson corespunzătoare configuraţei (b0 , b3 , 3(b1 −b0 ), 3(b3 −b2 )).
74 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

Putem exprima (3.5.2) şi ı̂ntr-o formă mult mai restrânsă, cu ajutorul
matricelor. Avem
(3.5.14) b(u) = U M B,
unde U = (1 u u2 u3 ) este o matrice linie având ca elemente puterile
parametrului u, matricea
‡ ‘
1 0 0 0
−3 3 0 0
M= ∈ M4×4 (R)
3 −6 3 0
−1 3 −3 1
se obţine din dezvoltarea polinoamelor Bernstein Bi3 (u) (coeficienţii se pun
pe coloană), iar B este matricea coloană
‡ ‘
b0
b1
B= .
b2
b3

3.6. Calculul curburii ı̂n extremităţi


Considerăm punctele P0 , P1 , P2 şi P3 , cu vectorii de poziţie b0 , b1 , b2 şi b3 ,
respectiv. Vrem să determinăm curbura curbei Bézier corespunzătoare ı̂n
u = 0 şi u = 1. Reamintim că curbura este dată de
′ ′′
∥b (u) × b (u)∥
k(u) = ′ .
∥b (u)∥3
Avem

b (u) = −3(1 − u)2 b0 + 3(1 − 4u + 3u2 )b1 + 3(2u − 3u2 )b2 + 3u2 b3 ,
′′
b (u) = 6(1 − u)b0 + 3(−4 + 6u)b1 + 3(2 − 6u)b2 + 6ub3 ,
de unde obţinem
′ ′
b (0) = 3(b1 − b0 ), b (1) = 3(b3 − b2 ),
′′
b (0) = 6b0 − 12b1 + 6b2 = 6(b0 − b1 ) + 6(b2 − b1 ),
′′
b (1) = 6b1 − 12b2 + 6b3 = 6(b1 − b2 ) + 6(b3 − b2 ).
3.6. Calculul curburii ı̂n extremităţi 75

Înlocuind ı̂n expresia curburii obţinem

2 ∥(b1 − b0 ) × (b2 − b1 )∥ 2 ∥(b3 − b2 ) × (b2 − b1 )∥


k(0) = , k(1) = .
3 ∥b1 − b0 ∥3 3 ∥b3 − b2 ∥3

Întotdeauna vom presupune că k(0) ̸= 0 şi k(1) ̸= 0.


Înainte de a trece la racordarea a două curbe Bézier vom rezolva o ecuaţie
vectorială.

Propoziţia 3.6.1. Fie a, b ∈ R3 , a ̸= 0 şi b⊥a. Atunci soluţiile ecuaţiei


vectoriale a × x = b sunt date de
1
(3.6.15) x = αa − a × b, α ∈ R.
∥a∥2

Demonstraţie. Cazul 1: b = 0. Ecuaţia a × x = 0 are soluţiile x = αa,


α ∈ R, care sunt de tipul (3.6.1) (pentru b = 0).
Cazul 2: b ̸= 0. În acest caz, {a, b, a × b} este o bază ortogonală. Scriem
x sub forma
x = αa + βb + γa × b, α, β, γ ∈ R.
Avem

a × x = b ⇔ βa × b + γa × (a × b) = b
⇔ βa × b + γ{⟨a, b⟩a − ⟨a, a⟩b} = b
⇔ βa × b − γ∥a∥2 b = b
⇔ βa × b − (γ∥a∥2 + 1)b = 0
1
⇔ β = 0 şi γ = − .
∥a∥2

Deci soluţia ecuaţiei a × x = b este dată de (3.6.1).

Considerăm acum două linii poligonale cadru cu vârfurile date de b10 ,


b11 , b12 , b13 şi b20 , b21 , b22 , b23 , respectiv. Notăm cu b1 şi b2 cele două
curbe Bézier corespunzătoare. Vrem să aflăm ce condiţii trebuie să satisfacă
vârfurile celei de a doua linie poligonală astfel ı̂ncât curba compozită să fie
76 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

continuă şi, ı̂n plus, să avem continuitate pentru vectorii reperului Frent şi
pentru curbură. Aceste condiţii se scriu echivalent
8
b = b13
> 20
>
>
<
T2 (0) = T1 (1)
(3.6.16)
>B (0) = B (1)
> 2 1
>
:
k2 (0) = k1 (1).

Mai mult, sistemul (3.6.2) este echivalent cu sistemul


8
b = b13
> 20
<
′ ′
(3.6.17) b (0) = λb1 (1), λ > 0
> 2
:
k2 (0)B2 (0) = k1 (1)B1 (1).

Notăm că dacă ı̂n (3.6.3) cerem λ = 1 atunci avem racordare de clasă
C 1 , iar o racordare de clasă C 2 satisface automat condiţiile de mai sus (cu
λ = 1).
Avem relaţiile
( ′ ′
b1 (1) = 3(b13 − b12 ), b2 (0) = 3(b21 − b20 )
′′ ′′
b1 (1) = 6b11 − 12b12 + 6b13 , b2 (0) = 6b20 − 12b21 + 6b22

şi atunci
′ ′
b2 (0) = λb1 (1) ⇔ b21 − b20 = λ(b13 − b12 ),
adică

(3.6.18) b21 = (1 + λ)b13 − λb12 ,

sau
1 λ
(3.6.19) b13 = b21 + b12 .
1+λ 1+λ

Prin urmare b13 aparţine segmentului determinat de b12 şi b21 . Dacă λ = 1,
atunci b13 este mijlocul segmentului. Vectorul b21 este unic determinat.
3.6. Calculul curburii ı̂n extremităţi 77

Reamintim expresiile curburii şi ale vectorului unitar al binormalei


′ ′′ ′ ′′
∥b (u) × b (u)∥ b (u) × b (u)
k(u) = ′ şi B(u) = ′ ′′ .
∥b (u)∥3 ∥b (u) × b (u)∥

Prin urmare k2 (0)B2 (0) = k1 (1)B1 (1) dacă şi numai dacă
′ ′′ ′ ′′ ′ ′′ ′ ′′
b2 (0) × b2 (0) b1 (1) × b1 (1) λb1 (1) × b2 (0) b1 (1) × b1 (1)
′ = ′ ⇔ ′ = ′
∥b2 (0)∥3 ∥b1 (1)∥3 λ3 ∥b1 (1)∥3 ∥b1 (1)∥3
′ ′′ ′ ′′
⇔ b1 (1) × b2 (0) = λ2 b1 (1) × b1 (1).
′′
Ultima ecuaţie este o ecuaţie vectorială cu necunoscuta b2 (0) şi, conform
Propoziţiei 3.6.1, obţinem

′′ ′ λ2 ′ ′ ′′
b2 (0) = αb1 (1) − ′ b1 (1) × (b1 (1) × b (1))
∥b1 (1)∥ 2

′ λ2 ′ ′′ ′ ′ ′′
= αb1 (1) − ′ {⟨b1 (1), b1 (1)⟩b1 (1) − ∥b1 (1)∥2 b1 (1)}
∥b1 (1)∥ 2
′ ′′
= µb1 (1) + λ2 b1 (1),

unde

λ2 ′ ′′
µ = α− ′ ⟨b1 (1), b1 (1)⟩
∥b1 (1)∥2
λ2 18
= α− ⟨b13 − b12 , b11 − 2b12 + b13 ⟩
9∥b13 − b12 ∥2
2λ2
= α− {∥b13 − b12 ∥2 − ⟨b13 − b12 , b12 − b11 ⟩}.
∥b13 − b12 ∥2
′′ ′ ′′
Relaţia b2 (0) = µb1 (1) + λ2 b1 (1) este echivalentă cu

6b20 − 12b21 + 6b22 = 3µ(b13 − b12 ) + λ2 (6b11 − 12b12 + 6b13 )


µ
⇔ b20 − 2b21 + b22 = (b13 − b12 ) + λ2 (b11 − 2b12 + b13 )
2
78 Capitolul 3. ELEMENTE DE GEOMETRIA COMPUTAŢIONALĂ A CURBELOR

Prin urmare

b22 = −b13 + 2(1 + λ)b13 − 2λb12


µ
+ (b13 − b12 ) + λ2 (b11 − 2b12 + b13 )
2
µ µ
= λ b11 − (2λ + + 2λ2 )b12 + (−1 + 2 + 2λ + + λ2 )b13
2
2 2
µ µ
(3.6.20) = λ b11 − (2λ + + 2λ )b12 + (1 + 2λ + + λ )b13 .
2 2 2
2 2
Observăm că suma coeficienţilor
µ µ
λ2 − (2λ + + 2λ2 ) + (1 + 2λ + + λ2 ) = 1
2 2
şi deci punctele având vectorii de poziţie b11 , b12 , b13 şi b22 sunt coplanare.
Reamintim aici că dacă b = a1 b1 + a2 b2 + a3 b3 şi a1 + a2 + a3 = 1, atunci
punctele corespunzătoare lor, P, P1 , P2 şi P3 sunt coplanare. Într-adevăr,

b − b1 = a1 b1 + a2 b2 + a3 b3 − b1
= a1 b1 + a2 (b2 − b1 ) + a3 (b3 − b1 ) + a2 b1 + a3 b1 − b1
= (a1 + a2 + a3 − 1)b1 + a2 (b2 − b1 ) + a3 (b3 − b1 )
= a2 (b2 − b1 ) + a3 (b3 − b1 )

de unde rezultă că P, P1 , P2 şi P3 sunt coliniare.


Vectorul b22 nu este unic determinat, el depinzând de parametrul µ.
Pentru µ = 0 şi λ = 1, b22 devine

b22 = b11 − 4b12 + 4b13 .

În concluzie, date b10 , b11 , b12 şi b13 = b20 ∈ R3 , şi dat λ > 0, din (3.6.4) şi
(3.6.6) găsim b21 şi b22 astfel ı̂ncât condiţiile de racordare sunt satisfăcute.
Vectorul b23 poate fi ales arbitrar.
3.6. Calculul curburii ı̂n extremităţi 79

.b 21

.b
b10. . 22

b13= b20

. .b .b 23
b 11 12

S-ar putea să vă placă și