Download - Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Transcript
Page 1: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Curvas e Superfícies

Bezier, Splines, NURBS e Subdivididas

Page 2: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 1: Independência de eixos

x

y

x'

y'

Page 3: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 2: Valores Múltiplos

x

y

Page 4: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 3: Controle Local

x

y

Page 5: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 4: Pouca Oscilação

polinômio de grau elevado

Page 6: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 4: Continuidade Variável

Page 7: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 5: Versatilidade

Page 8: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisito 6: Amostragem Uniforme

s1

s2

s3

s4

sn

si sj

Requisito 7:Formulação matemática tratável

Finalizando:

Page 9: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Solução

Curva representada por partes através de polinômios de grau baixo (geralmente 3) Curva representada por partes através de polinômios de grau baixo (geralmente 3)

zzzz

yyyy

xxxx

dtctbtatz

dtctbtaty

dtctbtatx

23

23

23

)(

)(

)(

globaluuu

ou

localt

n,

1,0

0

t=0

t=1

Parametrização

t=0 t=1 t=0 t=1t=0 t=1

u0 u1 u2 un

zzzz

yyyy

xxxx

dtctbtatz

dtctbtaty

dtctbtatx

23

23

23

)(

)(

)(

continuidade no ponto comum dos trechos

Page 10: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Geometria Diferencial

s

P(u)

)()( uPdu

duR

ou P(s)

)()(ˆ sPds

dsT

ou u

Tdu

dsR ˆ

)(uss

Rdu

ds

Page 11: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Requisitos da parametrização

P0

P1

P(u)10)1()( PuPuuP

10 )())(1()( PufPufuP

(1-u)

ua

(1-f(u)) f(u)

ubua

ub0

1

0)( uPdu

d

)()( 1212 ususuuSe

u

Page 12: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Continuidade Geométrica e Paramétrica

Descontínua Contínua: C0 e G0

)1()0( 21 RR

Contínua: C1 e G1

)1()0( 21 TT

C0 e G1

)1()0( 21 RR

Geométrica

)1()0( 21 TT

C1 e G0

0)1()0( 21 RR

Paramétrica

Page 13: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Curvas de Bézier

P. de Casteljau, 1959 (Citroën)P. de Bézier, 1962 (Renault) - UNISURFForest 1970: Polinômios de Bernstein

iinni tt

i

ntB

)1()(,

n

iini VtBtP

0, )()(

x

P(t)

y

z

t=0

t=1

V0

V1

V2

V3

Vn-1

Vn onde:

)!(!

!

ini

n

i

n

coef. binomial

pol. Bernstein

Page 14: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Bézier Cúbicas

30033,0 )1()1(

0

3)( ttttB

x

P(t)

3

03, )()(

iii VtBtP

y

z

V0

V1

V2

V3

tttttB 21133,1 )1(3)1(

1

3)(

22233,2 )1(3)1(

2

3)( tttttB

33333,3 )1(

3

3)( ttttB

i

i tB )(3, 1)1( 3 tt

33

22

12

03 )1(3)1(3)1()( VtVttVttVttP

Page 15: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Polinômios Cúbicos de Bernstein

1

10 t

B0,3

(1-t)3

3

10 t

B1,3

3(1-t)2t

1

10 t

B3,3

t3

10 t

B2,3

3(1-t) t2

-3

1

10 t

B0,3 + B1,3 + B2,3 + B3,3

Page 16: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Propriedades da Bézier Cúbica

33

22

12

03 )1(3)1(3)1()( VtVttVttVttP

33

22

12

02 )1(63)1(3)1(6)1(3)( VtVtttVtttVttP

dt

d

0)0( VP

3)1( VP

10 33)0( VVPdt

d

32 33)1( VVPdt

d

x

P(t)

y

z

V0

V1

V2

V3

R(0)

R(1)

Page 17: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Controle da Bézier Cúbica

Page 18: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Fecho Convexo

1)(00

n

ii

n

iii comVtP

Page 19: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Equação do Foley

zyx

zyx

zyx

zyx

VVV

VVV

VVV

VVV

ttttP

333

222

111

000

23

0001

0033

0363

1331

1)(

)(tP

0V

1V 2V

3V

33

22

12

03 )1(3)1(3)1()( VtVttVttVttP

Page 20: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Redução de n=3 para n=2

33

22

12

03 )1(3)1(3)1()( VtVttVttVttP

101

0 )1()( VtVttV

211

1 )1()( VtVttV

321

2 )1()( VtVttV

12

211

10

2 )1(2)1()( VtVttVttP

32

2

21102

)1(

)1()1(2)1()1()(

VtVtt

VtVtttVtVtttP

)(10 tV

)(11 tV )(1

2 tV

Bezier n=2

Page 21: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Redução de n=2 para n=1

11

10

20 )1()( VtVttV

12

211

10

2 )1(2)1()( VtVttVttP

1211

11

10 )1()1()1()( VtVttVtVtttP

Bezier n=1

12

11

21 )1()( VtVttV

11

20)1()( VtVttP

10V

11V

12V

20V

21V

)(tP

Page 22: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Cálculo de um Ponto

10V

11V

12V

20V

21V

)(tP

0V

1V

2V

3V

11V

10V

12V

20V

21V )(tP

(1-t)

t

)()()1()( 1,11,, tBttBttB ninini Mostre que:

0V

1V 2V

3V

Page 23: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Subdivisão de Bézier Cúbicas

3

2

1

0

3

2

1

0

1331

0242

0044

0008

8

1

V

V

V

V

V

V

V

V

L

L

L

L

3

2

1

0

3

2

1

0

8000

4400

2420

1331

8

1

V

V

V

V

V

V

V

V

R

R

R

R

101 2

1

2

1VVV L

. . .LV1

H

00 VV L

1V

2V

LV2

RL VV 03

RV1

RV2

33 VV R

Page 24: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Construção de uma Bezier

u=1/2

P(1/2)

Page 25: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Curve fitting

33

22

12

03 )1(3)1(3)1()( VtVttVttVttP

32

22

12

02 33)1(6)1(6)1(3)1(3)( VtVtttVtttVttP

dt

d

32

22

12

02 3)23(3)143(3)1(3 VtVttVttVt

32

2102

2

3)26(3)46(3)1(6)( VtVtVtVttPdt

d

2102102

2

266126)0( VVVVVVPdt

d

3213212

2

266126)1( VVVVVVPdt

d

01102 333)0( VVVVP

dt

d

23322 333)1( VVVVP

dt

d

Page 26: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Nova notação

0V

1ncp

2ncr

0p

1p1np

2ncp

0r

1r

1nr

1ncl

1nl

1l

2ncl

1V

2V

3V

4V

5V 6V 7V

4nVnV1nV3nV 2nV

Page 27: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Derivadas na nova notação

13

1223 )1(3)1(3)1()( iiiii tttttttP plrp

12

2

26)0( iiiiPdt

dlrp

112

2

26)1( iiiPdt

dplr

iiiPdt

dpr 3)0(

113)1( iiiPdt

dlp

x

y

z

)(tPi

ip

ir

1il

1ip

Page 28: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Construção de uma curva que passa por 2 pontos

n=2

0)0('' P

0)1('' P

0p

1p

0r

1l

026 100 lrp

026 110 plr

010 3

1ppr

011 3

2ppl

Page 29: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Construção de uma curva que passa por 3 pontos

0p

0r

2p

1r

1p1l

2l

02 100 lrp

0)0(''0 P

0)1(''1 P

0

1

02 221 plr

111)1( prl

10

0

2

1

0

2

1

1

0

0

2100

1221

0)1(0

0012

p

p

p

l

r

l

r

)0('')1('' 10 PP

211110 22 lrpplr

Page 30: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Método contrutivo: dados n pontos acrescentar mais um

0p

1p1np

np

1np

0r

1r

nr

1nr

1nl

1nl

1l

nl

10

0

nnn prl )1(

11 22 nnnnnn lrpplr

02 11 nnn plr

1

1

1210

122

0)1(

n

n

n

n

n

n

p

r

p

l

r

l

Page 31: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Interpolação: dados p0…pn ache l’s e r’s

1p1np

np

1np

0r

1r

nr

1nr

1nl

1nl

1l

nl

0p

Page 32: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

0d

1d

2d2npd

Bezier interpolation

0p

1p

2p

2npp

1npp

0r

1r

2npr

2r

1npl

2l

1l

2npl

Given: np points

110 ,,, npppp

Find: 2(np-1) points

121 ,,, nplll

210 ,,, nprrr Criteria:

0'' 0p 026 100 lrp 0102 pr l

0'' 1npp 026 112 npnpnp l pr 112 2 npnpnp l pr

rightiileftii dd '' 1 pp iiiiii dld prp 133 iiiiiii dddld pr )( 11

rightilefti '''' pp iiiiii ll 11 2626 rppr 022 11 iiii ll rr

Page 33: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Bezier interpolation Criteria:

0102 pr l

112 2 npnpnp l pr

iiiiiii dddld pr )( 11

022 11 iiii ll rr

1

223

221

110

0

1

2

2

2

2

1

1

0

12

12

01

0

)(

0

)(

0

)(

21000000

12210000

000000

00122100

000000

00001221

000000

00000012

n

nnn

nc

nc

ncnn dd

dd

dd

l

l

l

l

dd

dd

dd

p

p

p

p

p

r

r

r

r

2npr

0d

1d

2d2npd

0p

1p

2p

2npp

1npp

0r

1r

2r

1npl

2l

1l

2npl

resulting linear system:

solve for l and r

Page 34: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Bezier surface (from cross section curves)

x

y

z

N

S

EW

conventions and notations

x

z

00p

ijp

0,1npp00e

ijeijw

ijn

0,1npn00ne

ijneijnw

ijs ijseijsw

i=0,…,np-1

j=0,

…,n

c-1

00n

01p

10p

pij is the point i of curve j

Page 35: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Bezier surface (from cross section curves)

1,10 ,,, nciii ppp 2,10 ,,, nciii nnn

1,11 ,,, nciii sss

1,10 ,,, nciii eee 2,10 ,,, nciii nenene

1,11 ,,, nciii sesese

1,10 ,,, nciii www 2,10 ,,, nciii nwnwnw

1,11 ,,, nciii swswsw

i=0,…,np-1

i=0,…,np-2

i=1,…,np-1

N

S

EW

x

z

00p

ijp

0,1npp00e

ijeijw

ijn

0,1npn00ne

ijneijnw

ijs ijseijsw

i=0,…,np-1

j=0,

…,n

c-1

00n

01p

10p

Page 36: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Bezier surface rendering

LV1

H

00 VV L

1V

2V

LV2

RL VV 03

RV1

RV2

33 VV R

4x4

7x7

7x4

4(4x4)

Page 37: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

B-Splines

• vértices+ nós

0V

1V

2V

3V 4V

nV

+

+ +

++ +

••

)(uP

i

n

ipi VuNuP

0

, )()(

)()(

)()(

)(

)()( 1,1

11

11,, uN

uu

uuuN

uu

uuuN pi

ipi

pipi

ipi

ipi

.10

0:. definiçãoporobs

p = grau do polinômio Ni,p(u) controla a continuidade ( Cp-1 )

u0 u1 u2 … um

contráriocaso

uuuseuN ii

i 0

)[1)( 1

0,

U={u0, u1, ..., um}

m=n+p+1

u0 u2 ui ui+1 um... u

Ni,0(u)

u1...

ui = nós (knots)ui,ui+1 = trechos (spans)

Page 38: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Propriedades de Ni,p(u)

• Não negativa: Ni,p(u)0 para qualquer u, i, e p.

• Partição da unidade: Ni,p(u)=1 para todo uu0,um.

• Suporte local: Ni,p(u)=0 se uui, ui+p+1. Mais ainda, in qualquer intervalo dos nós no máximo p+1 das Ni,p(u) são não zero.

• Diferenciabilidade: todas as derivadas de Ni,p(u) existem no interior de um intervalo de nós (onde é polinômial) . Nos nós Ni,p(u) é p-k diferenciável, onde k é a multiplicidade do nó.

• Extremo: exceto para o caso p=0, Ni,p(u) tem apenas um ponto de máximo.

Page 39: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Spline Uniforme

)())1((

)()(

)( 1,11,, uNpd

udpuuN

pd

uuuN pi

ipi

ipi

uj+1- uj =d

)()(

)()(

)(

)()( 1,1

11

11,, uN

uu

uuuN

uu

uuuN pi

ipi

pipi

ipi

ipi

Page 40: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Splines Uniformes p=0 e p=1

)[0

)[1)(

1

10,

ii

iii uuuse

uuuseuN

p=0

0 ui-d ui ui+d n...

Ni,0(u)

...

p=1

][0

)[)2(

)[

)0[0

)(

2

21

1

1,

mi

iii

iii

i

i

uuuse

uuused

udu

uuused

uuuuse

uN

)()2(

)()(

)( 1,11,1, uNd

uduuN

d

uuuN pi

ipi

ii

Ni,2(u)

ui-d ui ui+d ui+2d

Page 41: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Splines Uniformesp=2

Ni,1(u) Ni+1,1(u)Ni-1,1(u)

],[0

),[2

)3(

),[2

))()(3()2)((

),[2

)(

),0[0

)(

3

322

2

212

12

2

2,1

mi

iii

iiiiii

iii

i

uuuse

uuused

udu

uuused

duuuduuduuu

uuused

uu

uuse

uN

ui-d ui ui+d ui+2d ui+3d

p=2 )(2

)3()(

2

)()( 1,11,2, uN

d

uduuN

d

uuuN i

ii

ii

Page 42: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Polinômios da B-Spline Uniforme

u ui ui+d ui+2d ui+3d ui+4d

Ni,0 (u) 0 1 0 0 0 0

Ni+1,0 (u) 0 0 1 0 0 0

Ni,1 (u) 0 (u-ui) (ui+2d-u) 0 0 0

Ni+1,1 (u) 0 0 (u-(ui+d)) (ui+3d-u) 0 0

Ni,2 (u) 0 (u-ui)2/2d2 (u-ui)(ui+2d-u)/2d2 +

(ui+3d-u)(u-(ui+d))/2d2 (ui+3d-u)2/2d2 0 0

Ni+1,2 (u) 0 0 (u-(ui+d))2/2d2 (u-(ui+d))(ui+3d-u)/2d2 +(ui+4d-u)(u-(ui+2d))/2d2 (ui+4d-u)2/2d2 0

Ni,3 (u) 0 (u-ui)3/6d3

[(u-ui)2(ui+2d-u) +

(u-ui)(ui+3d-u)(u-(ui+d))+(ui+4d-u)(u-(ui+d))2 ]

/6d3

[(u-ui) (ui+3d-u)2 +(ui+4d-u)(u-(ui+d))(ui+3d-u)+ (ui+4d-u)2(u-(ui+2d))]/6d2

(ui+4d-u)3/6d3 0

t t=(u-ui)/d t = (u-(ui+d))/d t = (u-(ui+2d))/d t=(u-(ui+3d))/d

Ni,3 (t) 0 t6/6 (-3t3+3t2+3t+1)/6 (3t3-63t2+4)/6 (1-t)3/6 0

)())1((

)()(

)( 1,11,, uNpd

udpuuN

pd

uuuN pi

ipi

ipi

Page 43: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Segmentos da B-spline cúbica

p(t)

0,0

0,1

0,2

0,3

0,4

0,5

0,6

0,7

0,0 0,2 0,4 0,6 0,8 1,0t

t3/6

(-3t3+3t2+3t+1)/6(3t3-6t2+4)/6

(1-t)3/6

Page 44: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Funções da base

00,1

0,2

0,3

0,4

0,5

0,6

0,7

u1 u2 u3 ... um-4u0uum-3 um-2

N0,3(u) N2,3(u)N-1,3(u) ...

t

2

3

1

2323

1

3

66

1333

6

463

6

)1()(

iiiii V

tV

tttV

ttV

ttP

For i = 0, ..., n For t = 0, ..., 1

Nn-1,3(u)

um-1 um

N1,3(u)

i=0

ti=1

ti=n

Nn,3(u) Nn+1,3(u)

Page 45: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

B-Spline Periódica- Foley -

ziyixi

ziyixi

ziyixi

ziyixi

VVV

VVV

VVV

VVV

ttttP

,3,3,3

,2,2,1

,,,

,1,1,1

23

0141

0303

0363

1331

1)(

Para cada par Vi, Vi+1 , i=0,...,n Para cada t=0,...,1

Periódica: i=0, ... , nV-1 = Vn Vn+1 = V0 Vn+2 = V1

Vn+1= V0 Vn+2 =V1

V2

V3

V4

V-1= Vn

Page 46: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

B-Spline Não Periódica- Foley -

• vértices+ nós

0V

1V

2V

3V 1nV

nV

+

++

+

+ +

••

i=0

i=1 i=2

i=3

1V

i=n-1 1nV

1nV

i=0P(0) = (V-1+ 4V0+ V1)/6

P’’(0) = V-1 -2V0+ V1 = 0

V-1 = 2V0 - V1

i=0; P(0) = V0

i=n-1

P(1) = (Vn-1+ 4Vn+ Vn+1)/6

P’’(1) = Vn-1-2Vn+ Vn+1

Vn+1 = 2Vn - Vn-1

i=n-1; P(1) = Vn

Page 47: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Base Periódica

B-Spline Cúbica Uniforme Periódica

0.0

0.1

0.2

0.3

0.4

0.5

0.6

0.7

0.0 0.2 0.4 0.6 0.8 1.0

u

N(u

,i,p

)

N(u,0,3)

N(u,1,3)

N(u,2,3)

N(u,3,3)

N(u,4,3)

N(u,6,3)

N(u,7,3)

U ={0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 0.9, 1.0}

V-1= V7

V8= V0

V9= V1

V2 V3

V4

V-3=V5

V-2= V6

i=0

i=1

i=2i=3 i=4

i=5

i=6

i=7

) () (

) () (

) (

) () (1 , 1

1 1

11 , ,u N

u u

u uu N

u u

u uu Np i

i p i

p ip i

i p i

ip i

Page 48: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Base Não Periódica

B-Spline Cúbica Uniforme e Aperiódica

0.0

0.2

0.4

0.6

0.8

1.0

0.0 0.2 0.4 0.6 0.8 1.0

u

N(u

,i,p)

N(u,0,3)

N(u,1,3)

N(u,2,3)

N(u,3,3)

N(u,4,3)

N(u,6,3)

N(u,7,3)

U= {0, 0, 0, 0, 1/4, 2/4, 3/4, 1, 1, 1, 1}

) () (

) () (

) (

) () (1 , 1

1 1

11 , ,u N

u u

u uu N

u u

u uu Np i

i p i

p ip i

i p i

ip i

Page 49: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Bézier e B-Spline

Bézier através da B-Spline CúbicaU ={0,0,0,0,1,1,1,1}

0.0

0.2

0.4

0.6

0.8

1.0

0.0 0.2 0.4 0.6 0.8 1.0

u

N(u

,i,p

)

N(u,0,3)

N(u,1,3)

N(u,2,3)

N(u,3,3)

) () (

) () (

) (

) () (1 , 1

1 1

11 , ,u N

u u

u uu N

u u

u uu Np i

i p i

p ip i

i p i

ip i

Page 50: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

B-Spline Periódica- Interpolação -

Vn+1= V0 Vn+1 =V1

V2

V3

V4

V-1= Vn

Para i=0,..., nPi(0) = (Vi-1+ 4Vi+ Vi+1)/6;

P0(0) P1(0)

P2(0)

P3(0)

P4(0)

Pn(0)

Considere os nós como os pontos dados

nn P

P

P

P

P

P

V

V

V

V

V

V

4

3

2

1

0

4

3

2

1

0

410001

141000

014100

001410

000141

100014

6

1

• vértices+ nós

Page 51: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

B-Spline Não Periódica- Foley -

• vértices+ nós

0V

1V

2V

3V 1nV

nV

+

++

+

+ +

••

i=0

i=1 i=2

i=3

1V

i=n-1 1nV

1nV

P0 = V0 ; Pn = Vn ;

Para i=1,..., n-1Pi(0) = (Vi-1+ 4Vi+ Vi+1)/6;

Considere os nós como os pontos dados

nn P

P

P

P

P

P

V

V

V

V

V

V

4

3

2

1

0

4

3

2

1

0

100000

141000

014100

001410

000141

000001

6

1

Page 52: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Funções Racionais

]1,0[

1

2,

1

1)(

22

2

u

u

u

u

uuP

2

2

2

1

1)cos(

1

2)sin(

)2/tan(

u

u

u

u

u

Da trigonometria:

0

0.2

0.4

0.6

0.8

1.0

0.2 0.4 0.6 0.8 1.0

Page 53: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Cônicas

cbtat

etdtx

cbtat

edty

eydtycybtyyat

tyx

eydxcybxyax

2

2

2

2222

22

0

0

x

y

cônica qualquer escrita num sistema deeixos cuja origem é um ponto da cônica

Qualquer cônica pode ser representada parametricamentecomo uma fração de polinômios quadráticos

Page 54: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

NURBSNon Uniform Rational B-Splines

yh

xh

w

w=1

x

y

i

ii

ii

ii

n

ipi

w

zw

yw

xw

uN

uw

uzuw

uyuw

uxuw

0, )(

)(

)()(

)()(

)()(

n

ii

i

i

n

kpkk

pii

z

y

x

uNw

uNw

uz

uy

ux

0

0,

,

)(

)(

)(

)(

)(

n

in

kpkk

piipi

i

i

i

pi

uNw

uNwuRonde

z

y

x

uR

uz

uy

ux

0

0,

,,,

)(

)()()(

)(

)(

)(

Page 55: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Cônicas como NURBS

}1,1,1,0,0,0{)()(

:

)()()(

)()()()(

2,2,

22,212,102,0

222,2112,1002,0

UcomuNuB

onde

wuBwuBwuB

VwuBVwuBVwuBuP

ii

0V

2V

1V

w0=1

w1=s/(1-s)

w2=1w1=0

0.2

-0.2

1

3

sElipse (w1<1)

Parábola (w1=1)

Hipérbola (w1>1)

Faux et al. w0w2 /w1 - determina a cônica

0V

2V

1V

w0=1

w1=s/(1-s)

w2=1w1=0

0.2

-0.2

1

3

sElipse (w1<1)

Parábola (w1=1)

Hipérbola (w1>1)

S

M

1

21

)1(

)(

VsMsS

eSP

Page 56: Curvas e Superfícies Bezier, Splines, NURBS e Subdivididas.

Círculo através de NURBS

U={0, 0, 0, 1/4, 1/4, 1/2, 1/2, 3/4, 3/4, 1, 1, 1} }1,2

2,1,

2

2,1,

2

2,1,

2

2,1{w

8

08

02,

2,2,2,

)(

)()()(

)(

)(

i

kkk

iii

i

ii

uNw

uNwuRonde

y

xuR

uy

ux

-1

-0.8

-0.6

-0.4

-0.2

0.2

0.4

0.6

0.8

1

-1 -0.8 -0.6 -0.4 -0.2 0 0.2 0.4 0.6 0.8 1

n=8p=2m=12

(x0 , y0)

(x1 , y1)(x2 , y2)(x3 , y3)

(x4 , y4)

(x5 , y5) (x6 , y6)(x7, y7)

(x8 , y8)