9
Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information Processing Image Processing and Interpretation Group !"# %&’()*+, -./0(1 2+’ -./0(’ 1./32-(14 !( 5&/6(’ 1& 32/ 5*7" 827 (+99(1 1.-" 21 )*+(1 2+’ 827 :&)#,&+1 ! ;/2:"*-1 1#17(%1 /(+’(/ 827 <=>? &@A(-71 27 "*," /27(1 ! BC-*(+7 "*’’(+ 1./32-( /(%&02)D 1"2’*+,D 7(E7./( %2::*+,F ! G27"(%29-2))# 1*%:)( H"( 5&/)’ *1 +&7 -&%:&1(’ &3 827 (+99(1 ! !( -2+ :/&0*’( 7"( %(2+1 7& 5&/6 5*7" -./0(’ &@A(-71 ! H"*1 -2+ @( ’&+( 27 7"( 2::)*-29&+ )(0() ! I%:)(%(+729&+ -2+ /(+’(/ 7"(1( &@A(-71 2::/&E*%27()# 5*7" 827 :/*%*90(1 L09_2 J0(/0*(5 K L(:/(1(+729&+ &3 -./0(1 2+’ 1./32-(1 K M&)#+&%*2) 3&/%1 K N(/%*7( -./0(1 K OPQ*(/ -./0(1 O21(’ &+R BS T+,() 2+’ >S U"/(*+(/R !"#$%&’()$ +,-./#$% ;/2:"*-1 0 1 2,. 3,4" 1..%,&’5 46#5 75&8$%9:&;$8 <.$"=> <V 7" (’?S W"2:7(/ XYR W./0(1 2+’ U./32-(1 L09_3 J+ &@A(-7 /(:/(1(+729&+ H"(/( 2/( %2+# 52#1 7& /(:/(1(+7 -./0(1 2+’ 1./32-(1S U&%( &3 7"( -&+1*’(/29&+1 7& 726( *+7& 2--&.+7 2/(R ! U72@*)*7# ! U%&&7"+(11 ! B21( &3 (02).29&+ ! >& 5( +((’ 2--./27( *+7(/:&)29&+ &/ -2+ 5( A.17 -&%( -)&1( 7& ’2724 ! >& 5( +((’ ’(/*0290(14 I+ ,(+(/2)D 7"(/( 2/( 7"/(( %2A&/ 7#:(1 &3 &@A(-7 /(:/(1(+729&+ ! BE:)*-*7 ! I%:)*-*7 ! M2/2%(7/*- B2-" &3 7"(1( "21 -(/72*+ 2’02+72,(1 2+’ ’*12’02+72,(1 L09_4 2::/&E*%29+, -./0( ’272 :&*+71 BE:)*-*7 L(:/(1(+729&+ G&17 32%*)*2/ 3&/% &3 -./0( *+ Z> y = f (x) W2++&7 /(:/(1(+7 2)) -./0(1 ! [(/9-2) )*+(1 ! W*/-)(1 BE7(+1*&+ 7& => ! y = f (x), z = g (x) ’(\+(1 2 -./0( *+ => (S,S (].29&+1 y = ax + b; z = cx + d ’(1-/*@( 2 )*+( *+ =>D @.7 -2++&7 /(:/(1(+7 2 )*+( *+ 2 :)2+( 5*7" -&+172+7 x ! H"( 3&/% z = f (x,y) ’(\+(1 2 1./32-( <@.7 -2++&7 /(:/(1(+7 2 1:"(/(? x y x y z L09_5 I%:)*-*7 L(:/(1(+729&+ H5& ’*%(+1*&+2) -./0( *+ *%:)*-*7 3&/%R f (x,y) = 0 G&17 -./0(1 2+’ 1./32-(1 7"27 5( 5&/6 5*7" "20( *%:)*-*7 3&/%1R ! T)) )*+(1 ax + by + c = 0 ! W*/-)(1 x 2 + y 2 - r 2 = 0 I+ 7"/(( ’*%(+1*&+1 f (x,y,z) = 0 ’(\+(1 2 1./32-( ! (S,SD 2+# :)2+(R ax + by + cz +d = 0D 5*7" -&+172+71 a, b, c 2+’ d ! 2 1:"(/( -(+7(/(’ 27 &/*,*+D 5*7" /2’*.1 rR x 2 + y 2 + z 2 - r 2 = 0 W./0(1 *+ => 2/( +&7 1& (21*)# /(:/(1(+7(’ *+ *%:)*-*7 3&/%S ! M&11*@)# 21 *+7(/1(-9&+ &3 75& 1./32-(1 f (x,y,z) = 0 2+’ g (x,y,z) = 0 I+ ,(+(/2)D 5( -2++&7 1&)0( 3&/ :&*+71 7"27 12913# 7"( *%:)*-*7 3&/% L09_6

Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

  • Upload
    others

  • View
    2

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

Computer Graphics

Curves and Surfaces

Aleksandra Pizurica

Ghent University

Telecommunications and Information Processing

Image Processing and Interpretation Group

!"#$$%&'()*+,$-./0(1$2+'$-./0('$1./32-(14$

!($5&/6('$1&$32/$5*7"$827$(+99(1$1.-"$21$)*+(1$2+'$827$:&)#,&+1$

! $;/2:"*-1$1#17(%1$/(+'(/$827$<=>?$&@A(-71$27$"*,"$/27(1$$

! $BC-*(+7$"*''(+$1./32-($/(%&02)D$1"2'*+,D$7(E7./($%2::*+,F$

! $G27"(%29-2))#$1*%:)($

H"($5&/)'$*1$+&7$-&%:&1('$&3$827$(+99(1$$$

! $!($-2+$:/&0*'($7"($%(2+1$7&$5&/6$5*7"$-./0('$&@A(-71$$

! $H"*1$-2+$@($'&+($27$7"($2::)*-29&+$)(0()$

! $I%:)(%(+729&+$-2+$/(+'(/$7"(1($&@A(-71$2::/&E*%27()#$5*7"$827$

:/*%*90(1$

L09_2

J0(/0*(5$

K  L(:/(1(+729&+$&3$-./0(1$2+'$1./32-(1$

K  M&)#+&%*2)$3&/%1$

K  N(/%*7($-./0(1$

K  OPQ*(/$-./0(1$

$

$

O21('$&+R$

BS$T+,()$2+'$>S$U"/(*+(/R$!"#$%&'()$*+,-./#$%*;/2:"*-1$0*1*2,.*3,4"*1..%,&'5*46#5*

75&8$%9:&;$8*<.$"=>$<V7"$('?S$W"2:7(/$XYR$W./0(1$2+'$U./32-(1$

L09_3

J+$&@A(-7$/(:/(1(+729&+$

H"(/($2/($%2+#$52#1$7&$/(:/(1(+7$-./0(1$2+'$1./32-(1S$U&%($&3$7"($

-&+1*'(/29&+1$7&$726($*+7&$2--&.+7$2/(R$

! $U72@*)*7#$

! $U%&&7"+(11$

! $B21($&3$(02).29&+$

! $>&$5($+(('$2--./27($*+7(/:&)29&+$&/$-2+$5($A.17$-&%($-)&1($7&$'2724$

! $>&$5($+(('$'(/*0290(14$

I+$,(+(/2)D$7"(/($2/($7"/(($%2A&/$7#:(1$&3$&@A(-7$/(:/(1(+729&+$

! $BE:)*-*7$

! $I%:)*-*7$

! $M2/2%(7/*-$

B2-"$&3$7"(1($"21$-(/72*+$2'02+72,(1$2+'$'*12'02+72,(1$

L09_4

2::/&E*%29+,$-./0($

'272$:&*+71$

BE:)*-*7$L(:/(1(+729&+$

G&17$32%*)*2/$3&/%$&3$-./0($*+$Z>$

y = f (x)

$

W2++&7$/(:/(1(+7$2))$-./0(1$

! $[(/9-2)$)*+(1$

! $W*/-)(1$

$

BE7(+1*&+$7&$=>$$

!  y = f (x), z = g (x) '(\+(1$2$-./0($*+$=>$

•  (S,S$(].29&+1$y = ax + b; z = cx + d '(1-/*@($2$)*+($*+$=>[email protected]$-2++&7$

/(:/(1(+7$2$)*+($*+$2$:)2+($5*7"$-&+172+7$x

! $H"($3&/%$z = f (x,y) '(\+(1$2$1./32-($<@.7$-2++&7$/(:/(1(+7$2$1:"(/(?$

x

y

x

y

z

L09_5

I%:)*-*7$L(:/(1(+729&+$$

H5&$'*%(+1*&+2)$-./0($*+$*%:)*-*7$3&/%R$

f (x,y) = 0

G&17$-./0(1$2+'$1./32-(1$7"27$5($5&/6$5*7"$"20($*%:)*-*7$3&/%1R$

! $T))$)*+(1$$ax + by + c = 0

! $W*/-)(1$$$$x2 + y2 - r2 = 0

I+$7"/(($'*%(+1*&+1$$f (x,y,z) = 0 '(\+(1$2$1./32-($

! $(S,SD$2+#$:)2+(R$ax + by + cz +d = 0D$5*7"$-&+172+71$a, b, c 2+' d

! $2$1:"(/($-(+7(/('$27$&/*,*+D$5*7"$/2'*.1$rR$$$$$x2 + y2 + z2 - r2 = 0$

W./0(1$*+$=>$2/($+&7$1&$(21*)#$/(:/(1(+7('$*+$*%:)*-*7$3&/%S$$

! $M&11*@)#$21$*+7(/1(-9&+$&3$75&$1./32-(1$f (x,y,z) = 0 2+' g (x,y,z) = 0$

I+$,(+(/2)D$5($-2++&7$1&)0($3&/$:&*+71$7"27$12913#$7"($*%:)*-*7$3&/%$

L09_6

Page 2: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

I%:)*-*7$L(:/(1(+729&+D$-&+7'S$$

T),(@/2*-$1./32-($$$

! $f (x,y,z)$*1$7"($1.%$&3$:&)#+&%*2)1$*+$7"($7"/(($02/*2@)(1

$

$

^.2'/*-$1./32-($$$

! $2$1:(-*2)$7#:($&3$2),(@/2*-$1./32-($5"(/($(2-"$7(/%$*+$$$f (x,y,z)$-2+$

"20($'(,/(($.:$7&$Z$<*S(SD$$$$$$$$$$$$$$$$$$$$$$$?

! $&3$*+7(/(17$@(-2.1($7"(#$*+-).'($&@A(-71$)*6($1:"(/(1D$'*161$2+'$-&+(1$2+'$

7"(#$,(+(/27($27$%&17$75&$*+7(/1(-9&+$:&*+71$5*7"$)*+(1$

"$7"($:/&@)(%$&3$\+'*+,$7"($*+7(/1(-9&+$5*7"$2$/2#$/('.-(1$7&$1&)0*+,$2$

].2'/29-$(].29&+$

$

$

$

L09_7

0),,( ==∑∑∑i j k

kji zyxzyxf

2≤++ kji

M2/2%(7/*-$L(:/(1(+729&+$

U(:2/27($(].29&+$3&/$(2-"$1:292)$02/*2@)(D$(E:/(11('$*+$7(/%1$&3$2+$

*+'(:(+'(+7$02/*2@)(D$-2))('$7"($:2/2%(7(/R$

x = x(u),

y = y(u),

z = z(u)

p(u)=[x(u), y(u), z(u)]T

p(u)

p(umin)

p(umax)

dp(u)

du=dx(u)

du

dy(u)

du

dz(u)

du

T;*0(1$7"($0()&-*7#$5*7"$5"*-"$7"($

-./0($*1$7/2-('$&.7$2+'$:&*+71$*+$

7"($'*/(-9&+$72+,(+7$7&$7"($-./0($L09_8

[*1.2)*Q($2$-./0($3&/$umax ≥ u ≥ umin

M2/2%(7/*-$_*+(1$

_*+($-&++(-9+,$75&$:&*+71$p0$$2+'$p1$$

p(u)=(1-u)p0+up1

!($-2+$+&/%2)*Q($u$7&$@($&0(/$7"($*+7(/02)$<YDX?$

p(0) = p0

p(1)= p1

L2#$3/&%$p0$*+$7"($'*/(-9&+$d

p(u)=p0+ud

p(0) = p0

p(1)= p0 +d

d

L09_9

M2/2%(7/*-$U./32-(1$

U./32-(1$/(].*/($Z$:2/2%(7(/1

x = x(u,v),

y = y(u,v),

z = z(u,v)

T1$u$2+'$v$02/#D$5($,(+(/27($2))$7"($:&*+71$&+$7"($1./32-(

p(u,v) = [x(u,v), y(u,v), z(u,v)]T$

O&7"$3&/$-./0(1$2+'$1./32-(1$5($-"&&1($7"($3.+-9&+1$2--&/'*+,$7&$1&%($

'(1*/('$:/&:(/9(1R$

! $U%&&7"+(11$

! $>*`(/(+92@*)*7#$

! $B21($&3$(02).29&+$

x

y

z p(u,0)

p(1,v) p(0,v)

p(u,1)

L09_10

M2/2%(7/*-$L(:/(1(+729&+$

L09_11

H"($:2/92)$'(/*0290(1$'(7(/%*+($7"($72+,(+7$:)2+($27$(2-"$:&*+7$&3$7"($

1./32-($

;

/),(

/),(

/),(),(

∂∂

∂∂

∂∂

=∂

uvuz

uvuy

uvux

u

vup

∂∂

∂∂

∂∂

=∂

vvuz

vvuy

vvux

v

vu

/),(

/),(

/),(),(p

G&/(&0(/D$5($-2+$&@72*+$7"($+&/%2)$27$2+#$:&*+7$p$21$7"($-/&11$:/&'.-7$

&3$7"(1($0(-7&/1$<21$)&+,$21$7"(#$2/($+&7$:2/2))()?R$$

v

vu

u

vu

∂×

∂=

),(),( ppn

H"($:2/2%(7/*-$3&/%$*1$7"($%&17$8(E*@)($2+'$/&@.17$3&/$-&%:.7(/$,/2:"*-1$

M2/2%(7/*-$M)2+(1$

p(u,v)=p0+u q+v r

q

r

p0

n

p0

n

p1

p2

q = p1 – p0

r = p2 – p0

M&*+7a0(-7&/$3&/%$

H"/((a:&*+7$3&/%$

rqn ×=

rqn ×=

L09_12

Page 3: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

W&+172+7$b$$R -*/-)(1$&3$-&+172+7$)&+,*7.'($

W&+172+7 φ R$-*/-)(1$&3$-&+172+7$)297.'($

M2/2%(7/*-$U:"(/($

x (θ, φ) = ρ cos θ sin φ

y (θ, φ) = ρ sin θ sin φ

z (θ, φ) = ρ cos φ

360 ≥ θ ≥ 0

180 ≥ φ ≥ 0

H"($:&*+71$&+$2$1:"(/($5*7"$/2'*.1$ρ$

>*`(/(+927($7&$1"&5$$n = p

L09_13

W./0($U(,%(+71$

Tc(/$+&/%2)*Q*+,$uD$(2-"$-./0($*1$5/*d(+!!

!!!p(u)=[x(u), y(u), z(u)]T, 1 ≥ u ≥ 0$

!"*)($*+$-)211*-2)$+.%(/*-2)$%(7"&'1$5($'(1*,+$2$1*+,)($,)&@2)$-./0(D$*+$

-&%:.7(/$,/2:"*-1$*7$*1$@(d(/$7&$'(1*,+$1%2))$-&++(-7('$-./0($1(,%(+71$

p(u)

q(u) p(0)

q(1)

A&*+$:&*+7$p(1) = q(0)

L09_14

T'02+72,(1$&3$'(1*,+*+,$(2-"$1(,%(+7$*+'*0*'.2))#$

!  5&/6*+,$*+7(/2-90()#e$2`(-9+,$7"($1"2:($&+)#$5"(/($5($52+7$

! $)&-2)$-&+7/&)$*%:)*(1$172@*)*7#R$1%2))$-"2+,(1$*+$:2/2%(7(/1$<*+'(:(+'(+7$02/S?$

-2.1($1%2))$-"2+,(1$*+$'(:(+'(+7$02/*2@)(1$

$

M&)#+&%*2)$/(:/(1(+729&+$

M2/2%(7/*-$M&)#+&%*2)$W./0(1$

,)(0

ucuxi

N

i

xi∑=

= ,)(0

ucuy jM

j

yj∑=

= ucuzk

K

k

zk∑=

=0

)(

5"(/($p$-2+$@($2+#$&3$xD$yD$z. J/$5($-2+$5/*7($*+$2$0(-7&/$3&/%$$

ucup kL

kk∑

=

=0

)(

I3$N=M=KD$5($+(('$7&$'(7(/%*+($3(N+1)$-&(C-*(+71S$B].*02)(+7)#$5($

+(('$3(N+1) *+'(:(+'(+7$-&+'*9&+1$

f&9+,$7"27$7"($-./0(1$3&/$xD$y$2+'$z$2/($*+'(:(+'(+7D$5($-2+$'(\+($

(2-"$*+'(:(+'(+7)#$*+$2+$*'(+9-2)$%2++(/S$!($-2+$.1($7"($3&/%$

$

$

!

,)]()()([)( Tuzuyuxu =p ,)(

0

∑=

=L

k

k

kuu cp

Tzkykxkk ccc ][=c

L09_16

!"#$M&)#+&%*2)14$

K  B21#$7&$(02).27($

K  W&+9+.&.1$2+'$'*`(/(+92@)($(0(/#5"(/($

! L(%(%@(/$7"27$5($5&/6$5*7"$-./0($1(,%(+71S$I7$*1$*%:&/72+7$7&$(+1./($

-&+9+.*7#$27$A&*+$:&*+71$*+-).'*+,$-&+9+.*7#$&3$'(/*0290(1$

! g&/$2$:&)#+&%*2)$-./0($2))$'(/*0290(1$(E*17$2+'$-2+$@($-&%:.7('$

2+2)#9-2))#$

p(u)

q(u)

A&*+$:&*+7$p(1) = q(0)

@.7 p’(1) ≠ q’(0)

L09_17

W.@*-$M2/2%(7/*-$M&)#+&%*2)1$

K  W"&&1*+,$7"($'(,/(($&3$7"($:&)#+&%*2)$-./0($*+0&)0(1$2$7/2'(a&`$

! $"*,"(/$'(,/(($h$%&/($:2/2%(7(/1$7&$1(7$"$@(d(/$2@*)*7#$7&$3&/%$7"($1"2:($

! $"&5(0(/D$%&/($-&17)#$2+'$%&/($'2+,(/$7"27$7"($-./0($5*))$@(-&%($/&.,"(/$

•  N = M = L = 3D$*1$-&+1*'(/('$21$2$,&&'$@2)2+-($@(75((+$(21($&3$

(02).29&+$2+'$8(E*@*)*7#$*+$'(1*,+$

$

$

K  g&./$-&(C-*(+71$7&$'(7(/%*+($3&/$(2-"$&3$xD y$2+'$z

" g&./$*+'(:(+'(+7$-&+'*9&+1$+(('('$3&/$02/*&.1$02).(1$&3$u$/(1.)9+,$*+$i$(].29&+1$*+$i$.+6+&5+1$3&/$(2-" &3 xD y 2+' z

K  H"($-&+'*9&+1$2/($2$%*E7./($&3$-&+9+.*7#$/(].*/(%(+71$27$7"($A&*+$

:&*+71$2+'$-&+'*9&+1$3&/$\j+,$7"($'272$$

L09_18

ucup k

kk∑

=

=3

0

)(

Page 4: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

W.@*-$M&)#+&%*2)$U./32-(1$

p(u,v) = [x(u,v), y(u,v), z(u,v)]T$D$5"(/($

L09_19

vucvup ji

i j

ij∑∑= =

=3

0

3

0

),(

p *1$2+#$&3$xD y 2+' z.

L(].*/(1$ik$-&(C-*(+71$<=$*+'(:(+'(+7$1(71$&3$XV?$7&$'(7(/%*+($2$

1./32-($:27-"S$

>(1*,+*+,$:2/2%(7/*-$-./0(1$

K  I+7/&'.-($7"($7#:(1$&3$-./0(1$

! $I+7(/:&)29+,$

! $N(/%*7($

! $OPQ*(/$

! $Oa1:)*+($

K  T+2)#Q($$7"(*/$:(/3&/%2+-($

L09_20

G27/*Ea[(-7&/$$g&/%$

uuuuuk

k

k∑=

=+++=3

0

33

2210)( cccccp

,

3

2

1

0

=

c

c

c

c

c,

1

3

2

=

u

u

uu'(\+($

uccupTT

u ==)(7"(+$

L09_21

=

kz

ky

kx

k

c

c

c

c

I+7(/:&)29+,$W./0($

p0

p1

p2

p3

;*0(+$3&./$'272$<-&+7/&)?$:&*+71$p0 , p1 , p2 , p3

'(7(/%*+($-.@*-$p(u) 5"*-"$:211(1$7"/&.,"$7"(%$

"$$ ($%.17$\+'$c0 ,c1 ,c2 , c3

L09_22

=

k

k

k

k

z

y

x

p

I+7(/:&)29&+$B].29&+1$

p0=p(0)=c0

p1=p(1/3)=c0+(1/3)c1+(1/3)2c2+(1/3)3c3

p2=p(2/3)=c0+(2/3)c1+(2/3)2c2+(2/3)3c3

p3=p(1)=c0+c1+c2+c3

&/$*+$%27/*E$3&/%$5*7"$p = [p0 p1 p2 p3]T$5($"20($p=Ac!5*7"$

$

=

1111

3

2

3

2

3

21

3

1

3

1

3

11

0001

32

32

A

g*/17D$5($+(('$7&$'(-*'($27$5"*-"$02).(1$&3$u$7"($*+7(/:&)29&+$726(1$

:)2-(S$_2-6*+,$2+#$&7"(/$*+3&/%29&+D$5($-2+$-"&&1($7"(1($02).(1$7&$@($

(].2))#$1:2-('S$U*+-($5($"20($-"&1(+$u$7&$02/#$&0(/$lYDXmD$5($2::)#$

*+7(/:&)29+,$-&+'*9&+1$27$u = 0, 1/3, 2/3, 1

L09_23

I+7(/:&)29&+$G27/*E$

U&)0*+,$3&/$c$5($\+'$7"($*+7(/:&)29&+$%27/*E$

−−

−−

−−==

5.45.135.135.4

5.4185.229

15.495.5

0001

1

AMI

c=MI p

f&7($7"27$MI $'&(1$+&7$'(:(+'$&+$*+:.7$'272$2+'$-2+$@($.1('$3&/$(2-"$

1(,%(+7$*+$x, y 2+' z.$

2+'$5($&@72*+$7"($-&(C-*(+71$c$21$$

L09_24

Page 5: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

I+7(/:&)29+,$G.)9:)($U(,%(+71$

.1( p = [p0 p1 p2 p3]T

.1( p = [p3 p4 p5 p6]T

($2-"*(0($-&+9+.*7#$27$A&*+$:&*[email protected]$+&7$

-&+9+.*7#$&3$'(/*0290(1$$

L09_25

O)(+'*+,$g.+-9&+1$

($-2+$/(5/*7($7"($(].29&+$3&/$p$21$

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$p(u)=uTc=uTMIp = b(u)Tp

5"(/($ *1$2$-&).%+$%27/*E$&3$

3&./$@)(+'*+,$:&)#+&%*2)1D$1.-"$7"27$

$

H"(1($@)(+'*+,$3.+-9&+1$3&/$7"($-.@*-$*+7(/:&)29+,$:&)#+&%*2)$2/($$

b0(u) = -4.5(u-1/3)(u-2/3)(u-1)

b1(u) = 13.5u (u-2/3)(u-1)

b2(u) = -13.5u (u-1/3)(u-1)

b3(u) = 4.5u (u-1/3)(u-2/3)

$

uMbT

I

Tububububu == )]()()()([)( 3210

∑=

=+++=3

033221100 )()()()()()(

i

iiububububu b u pppppp

L09_26

O)(+'*+,$g.+-9&+1D$-&+7'S$

H"(1($3.+-9&+1$2/($+&7$1%&&7"$

! N(+-($7"($*+7(/:&)29&+$:&)#+&%*2)$*1$+&7$1%&&7"$

H"($)2-6$&3$1%&&7"+(11$*1$7"($-&+1(].(+-($&3$7"($*+7(/:&)29+,$

/(].*/(%(+7$7"27$7"($-./0($%.17$:211$7"/&.,"$7"($-&+7/&)$:&*+71$

</27"(/$7"2+$A.17$-&%($-)&1($7&$7"(%?$

L09_27

I+7(/:&)29+,$M27-"$

I+7(/:&)29+,$:27-"$*1$2$+27./2)$(E7(+1*&+$&3$7"($*+7(/:&)29+,$-./0(S$$

T$@*-.@*-$1./32-($:27-"$-2+$@($5/*d(+$21$

$

"(/($cij$*1$2$7"/((a()(%(+7$-&).%+$%27/*E$&3$7"($x, y$2+'$z

-&(C-*(+71$3&/$7"($i ja7"$7(/%$*+$7"($:&)#+&%*2)S$

($+(('$16$-&+'*9&+1$7&$'(7(/%*+($7"($16$-&(C-*(+71$cijS$W"&&1($27$$$

u,v = 0, 1/3, 2/3, 1

$$

$

$

$

∑∑==

=3

0

3

0

),(j

ji

ji

i

vuvu cp

T$:2/9-.)2/$@*-.@*-$:&)#+&%*2)$:27-"$

*1$'(\+('$@#$48$()(%(+71$&3$CD$*S(S$@#$

16 7"/((a()(%(+7$0(-7&/1$

L09_28

G27/*E$g&/%$

>(\+(R$$v = [1 v v2 v3]T , C = [cij] P = [pij]

($-2+$/(5/*7($7"($(E:/(11*&+$3&/$p(u,v) 21$

$

$

I3$5($&@1(/0($7"27$3&/$-&+172+7$u$<v?D$5($&@72*+$*+7(/:&)29+,$-./0($*+$$$$$

v$<u?D$5($-2+$1"&5$7"27$

p(u,v) = uTCv

p(u,v) = uTMIPMITv

C = MIPMIT

=>$-&+7/&)$:&*+71$

L09_29

B2-"$bi(u)bj(v)$*1$2$@)(+'*+,$:27-"$

$

($-2+$@.*)'$2+'$2+2)#Q($1./32-(1$$3/&%$&./$6+&5)(',($&3$-./0(1$

$

U./32-(1$3&/%('$3/&%$-./0(1$@#$7"*1$7(-"+*].($2/($6+&5+$21$7(+1&/$

:/&'.-7$1./32-(1S$H"(#$2/($2+$(E2%:)($&3$1(:2/2@)($1./32-(1D$5"*-"$-2+$

@($5/*d(+$21$

$

$

"(/($f$2+'$g$2/($1.*72@)#$-"&1(+$%27/*-(1S$H"($2'02+72,($*1$7"27$5($$

5&/6$5*7"$3.+-9&+1$&3$u$2+' v *+'(:(+'(+7)#S$

O)(+'*+,$M27-"(1$

)()(),( vuvu gfp =

ppijj

ji

i

vbubvu )()(),(3

0

3

0

∑∑==

=

L09_30

Page 6: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

J7"(/$H#:(1$&3$W./0(1$2+'$U./32-(1$

K  N&5$-2+$5($,(7$2/&.+'$7"($)*%*729&+1$&3$7"($*+7(/:&)29+,$3&/%$

! $_2-6$&3$1%&&7"+(11$

! $>*1-&+9+.&.1$'(/*0290(1$27$A&*+$:&*+71$

K  ($"20($3&./$-&+'*9&+1$<3&/$-.@*-1?$7"27$5($-2+$2::)#$7&$(2-"$

1(,%(+7$

! $n1($7"(%$&7"(/$7"2+$3&/$*+7(/:&)29&+$

! $L()2E$7"($o'272$\7p$a$1.C-*(+7$7&$-&%($-)&1($7&$7"($'272$<+&$+(('$7&$/(2))#$

o,&$7"/&.,"p$7"($'272$:&*+71?$

L09_31

N(/%*7($3&/%$

N(/%*7($g&/%$

p(0) p(1)

p’(0) p’(1)

H"($-./0($*1$3&/-('$7&$:211$7"/&.,"$&+)#$Z$-&+7/&)$:&*+71$<1&D$

&+)#$Z$o*+7(/:&)29+,p$-&+'*9&+1?$

$

H5&$(E7/2$-&+'*9&+1$/(%2*+$2+'$7"(1($5*))$@($.1('$7&$%((7$

7"($/(].*/(%(+7$&+$7"($'(/*0290(1S$L09_33

N(/%*7($g&/%D$-&+7'S$

p(0) p(1)

p’(0) p’(1)

U&D$.1($75&$*+7(/:&)29+,$-&+'*9&+1$2+'$

75&$'(/*0290($-&+'*9&+1$:(/$1(,%(+7$

H"*1$(+1./(1$-&+9+.*7#$2+'$\/17$'(/*0290($

-&+9+.*7#$@(75((+$1(,%(+71$

L09_34

N(/%*7($g&/%D$-&+7'S$

I+7(/:&)29&+$-&+'*9&+1$2/($7"($12%($21$@(3&/($27$7"($(+'$:&*+71R

p0=p(0)=c0

p3=p(1)=c0+c1+c2+c3

$

H"($'(/*0290($&3$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$*1$1*%:)#$$$$$$

$

$

B02).29+,$27$(+'$:&*+71$#*()'1$75&$&7"(/$-&+'*9&+1R$

pq0=pq(0)=c1

p"3=pq(1)=c1+2c2+3c3

$

$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$$

33

2210)( uuuu ccccp +++=

32

21 32)(T

)()()(cccp uuu'

du

udz

du

udy

du

udx++

= =

L09_35

N(/%*7($g&/%D$-&+7'S$

c

p

p

p

p

q

=

=

3210

0010

1111

0001

3

0

3

0

'

'

U&)0*+,D$5($\+'$c=MHq$5"(/($MH**1$7"($N(/%*7($%27/*E$$

−−−=

1122

1233

0100

0001

MH

L09_36

Page 7: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

O)(+'*+,$M&)#+&%*2)1$3&/$7"($N(/%*7($3&/%$

+−

+−

+−

=

uu

uuu

uu

uu

u

23

23

23

23

2

32

132

)(b

T)7"&.,"$7"(1($3.+-9&+1$2/($1%&&7"D$7"($N(/%*7($3&/%$

*1$+&7$.1('$'*/(-7)#$*+$W&%:.7(/$;/2:"*-1$2+'$WT>$$

@(-2.1($5($.1.2))#$"20($-&+7/&)$:&*[email protected]$+&7$'(/*0290(1$

$

N&5(0(/D$7"($N(/%*7($3&/%$*1$7"($@21*1$&3$7"($O(Q*(/$3&/%$

qbpT

uu )()( =

L09_37

M2/2%(7/*-$2+'$;(&%(7/*-$W&+9+.*7#$

K  !($-2+$/(].*/($7"($'(/*0290(1$&3$$x, y$2+'$z 7&$(2-"$@($-&+9+.&.1$27$

A&*+$:&*+71$a$:2/2%(7/*-$-&+9+.*7#$

K  T)7(/+27()#D$5($-2+$&+)#$/(].*/($7"27$7"($72+,(+71$&3$7"($/(1.)9+,$

-./0($@($-&+9+.&.1$a$,(&%(7/#$-&+9+.*7#$

K  H"($)2d(/$,*0(1$%&/($8(E*@*)*7#$21$5($"20($7&$12913#$&+)#$75&$

-&+'*9&+1$*+17(2'$&3$7"/(($27$(2-"$A&*+$:&*+7$

L09_38

M2/2%(7/*-$2+'$;(&%(7/*-$W&+9+.*7#$

K  !($-2+$(+3&/-($02/*&.1$-&+9+.*7#$-&+'*9&+1$@#$%27-"*+,$:&)#+&%*2)1$

2+'$7"(*/$'(/*0290(1$27$p(1) 5*7"$q(0). $

K  M2/2%(7/*-$-&+9+.*7#$a$/(].*/(1$7"27$7"($'(/*0290(1$&3$$x, y$2+'$z 2/($

-&+9+.&.1$27$A&*+$:&*+71$pq(1) =qq(0). $

K  ;(&%(7/*-$-&+9+.*7#$a$/(].*/(1$&+)#$7"27$7"($72+,(+71$&3$7"($/(1.)9+,$

-./0($2/($-&+9+.&.1$pq(1) =αqq(0), α>0$<'(/*0290(1$:/&:&/9&+2)?$

K  H"($)2d(/$,*0(1$%&/($8(E*@*)*7#$21$5($"20($7&$12913#$&+)#$75&$

-&+'*9&+1$*+17(2'$&3$7"/(($27$(2-"$A&*+$:&*+7$

p(u)

q(u)

p(1) = q(0) q(1)

p(0)

L09_39

BE2%:)($

K  N(/($7"($p$2+'$q$"20($7"($12%($72+,(+71$27$7"($(+'1$&3$7"($1(,%(+7$

@.7$'*`(/(+7$'(/*0290(1$

K  ;(+(/27($'*`(/(+7$N(/%*7($-./0(1$

K  H"*1$7(-"+*].(1$*1$.1('$*+$'/25*+,$2::)*-29&+1$

L09_40

N*,"(/$>*%(+1*&+2)$T::/&E*%29&+1$

K  H"($7(-"+*].(1$3&/$@&7"$*+7(/:&)29+,$2+'$N(/%*7($-./0(1$-2+$@($.1('$5*7"$"*,"(/$'*%(+1*&+2)$:2/2%(7/*-$:&)#+&%*2)1$

K  g&/$*+7(/:&)29+,$3&/%D$7"($/(1.)9+,$%27/*E$@(-&%(1$*+-/(21*+,)#$%&/($*))a-&+'*9&+('$2+'$7"($/(1.)9+,$-./0(1$)(11$1%&&7"$2+'$%&/($

:/&+($7&$+.%(/*-2)$(//&/1$

K  I+$@&7"$-21(1D$7"(/($*1$%&/($5&/6$*+$/(+'(/*+,$7"($/(1.)9+,$

:&)#+&%*2)$-./0(1$2+'$1./32-(1$

L09_41

OPQ*(/$/(:/(1(+729&+$

Page 8: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

OPQ*(/q1$I'(2$

K  I+$,/2:"*-1$2+'$WT>D$5($'&$+&7$.1.2))#$"20($'(/*0290($'272$

K  O(Q*(/$1.,,(17('$.1*+,$7"($12%($i$'272$:&*+71$21$5*7"$7"($-.@*-$

*+7(/:&)29+,$-./0($7&$2::/&E*%27($7"($'(/*0290(1$*+$7"($N(/%*7($

3&/%$$

L09_43

T::/&E*%29+,$>(/*0290(1$

p0

p1 p2

p3

p1 )&-27('$27$u=1/3 p2 )&-27('$27$u=2/3

3/1)0( 01 pp

p−

≈'3/1

)1( 23 ppp

−≈'

1)&:($p’(0) 1)&:( p’(1)

u

L09_44

OPQ*(/$3&/%$

I+7(/:&)29+,$-&+'*9&+1$2/($7"($12%($21$3&/$7"($N(/%*7($3&/%$

p0=p(0)=c0

p3=p(1)=c0+c1+c2+c3

T::/&E*%29+,$'(/*0290($-&+'*9&+1$

pq0=$3(p1- p0)=c1

p"3=$3(p3- p2) =c1+2c2+3c3

U&)0($3&./$)*+(2/$(].29&+1$3&/$c=MBp

$

L09_45

OPQ*(/$G27/*E$

−−

−=

1331

0363

0033

0001

MB

p(u) = uTMBp = b(u)Tp

@)(+'*+,$3.+-9&+1$

L09_46

O)(+'*+,$g.+-9&+1$

=

u

uu

uu

u

u

3

2

2

3

)1(3

)1(3

)1(

)(b

f&7($7"27$2))$Q(/&1$2/($27$Y$2+'$X$5"*-"$3&/-(1$

7"($3.+-9&+1$7&$@($1%&&7"$&0(/$<YDX?$

L09_47

O(/+17(*+$M&)#+&%*2)1$

K  H"($@)(+'*+,$3.+-9&+1$2/($2$1:(-*2)$-21($&3$7"($O(/+17(*+$

:&)#+&%*2)1$

K  H"(1($:&)#+&%*2)1$,*0($7"($@)(+'*+,$:&)#+&%*2)1$3&/$2+#$'(,/(($

O(Q*(/$3&/%$

! $T))$Q(/&1$27$Y$2+'$X$

! $g&/$2+#$'(,/(($7"(#$2))$1.%$7&$X$

! $H"(#$2/($2))$@(75((+$Y$2+'$X$*+1*'($<YDX?$$

)1()!(!

!)( uu

kdk

dub

kdk −−

=−

!"

L09_48

Page 9: Computer Graphics Curves and Surfaces - Telinsanja/ComputerGraphics/L09... · Computer Graphics Curves and Surfaces Aleksandra Pizurica Ghent University Telecommunications and Information

W&+0(E$N.))$M/&:(/7#$

K  H"($:/&:(/9(1$&3$7"($O(/+17(*+$:&)#+&%*2)1$(+1./($7"27$2))$O(Q*(/$

-./0(1$)*($*+$7"($-&+0(E$".))$&3$7"(*/$-&+7/&)$:&*+71$

K  N(+-(D$(0(+$7"&.,"$5($'&$+&7$*+7(/:&)27($2))$7"($'272D$5($-2++&7$@($

7&&$32/$252#$

p0

p1 p2

p3

-&+0(E$".))$

OPQ*(/$-./0($

L09_49

OPQ*(/$M27-"(1$

n1*+,$12%($'272$2//2#$P=[pij] 21$5*7"$*+7(/:&)29+,$3&/%$

vuvbubvu TBB

Tijj

i ji MPMpp ==∑∑

= =

)()(),(3

0

3

0

M27-"$)*(1$*+$

-&+0(E$".))$

L09_50

T+2)#1*1$

K  T)7"&.,"$7"($O(Q*(/$3&/%$*1$%.-"$@(d(/$7"2+$7"($*+7(/:&)29+,$

3&/%D$7"($'(/*0290(1$2/($+&7$-&+9+.&.1$27$A&*+$:&*+71$

K  W2+$5($'&$@(d(/4$

! ;&$7&$"*,"(/$&/'(/$O(Q*(/$

K G&/($5&/6$

K >(/*0290($-&+9+.*7#$19))$&+)#$2::/&E*%27($

K U.::&/7('$@#$J:(+;_$

! T::)#$'*`(/(+7$-&+'*9&+1$$

K H/*-6#$5*7"&.7$)(j+,$&/'(/$*+-/(21($

L09_51

U.%%2/#$

K  L(:/(1(+729&+$&3$-./0(1$2+'$1./32-(1$

K  M&)#+&%*2)$3&/%1$

K  N(/%*7($-./0(1$

K  OPQ*(/$-./0(1$

$

$

g&/$%&/($'(72*)1D$1(($

BS$T+,()$2+'$>S$U"/(*+(/R$!"#$%&'()$*+,-./#$%*;/2:"*-1$0*1*2,.*3,4"*1..%,&'5*46#5*

75&8$%9:&;$8*<.$"=>$<V7"$('?S$W"2:7(/$XYR$W./0(1$2+'$U./32-(1$

L09_52