Curvas
Requisitos: Independência de eixos
x
y
x'
y'
Requisitos: Valores Múltiplos
x
y
Requisitos: Controle Local
x
y
Requisitos: Redução da Variação
polinômio de grau elevado
Requisitos: Continuidade Variável
Requisitos: Versatilidade
Requisitos: Amostragem Uniforme
s1
s2
s3
s4
sn
si sj
Formulação matemática tratável
Finalizando:
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
Geometria Diferencial
s
P(u)
)()( uPdu
duR
ou P(s)
)()(ˆ sPds
dsT
ou u
Tdu
dsR ˆ
)(uss
Rdu
ds
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
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
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
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
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
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)
Controle da Bézier Cúbica
Fecho Convexo
1)(00
n
ii
n
iii comVtP
Demonstração
Indução
1)( 101100 VVtP ok
n=1
1)()()(
)()(
1)(
21022110
10
10
010
210221100
VVVtP
VVVtP
)(tP
é interior ok
n=2
n=3...
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
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
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
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
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
Construção de uma Bezier
u=1/2
P(1/2)
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)
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.
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
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
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
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
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
t6/6
(-3t3+3t2+3t+1)/6(3t3-6t2+4)/6
(1-t)3/6
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)
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
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
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
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
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
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• vértices+ nós
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
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
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
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,
,,,
)(
)()()(
)(
)(
)(
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
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)
Top Related