NURBS - PowerPoint PPT Presentation

1 / 12
About This Presentation
Title:

NURBS

Description:

p(t) = ( 1/6p0 1/2p1 1/2p2 1/6p3)t3 ( 1/2p0 p1 1/2p2 )t2 ... consisting of three parabola. segments. One more yields cubic B-spline basis. de Boor Algorithm ... – PowerPoint PPT presentation

Number of Views:113
Avg rating:3.0/5.0
Slides: 13
Provided by: csU70
Category:
Tags: nurbs

less

Transcript and Presenter's Notes

Title: NURBS


1
NURBS
  • CS 319
  • Advanced Topics in Computer Graphics
  • John C. Hart

2
B-Spline Segment
p1
p2
t0
p(t) (1/6p01/2p11/2p21/6p3)t3 ( 1/2p0
p11/2p2 )t2 (1/2p0
1/2p2 )t
1/6p02/3p11/6p2
t1
p0
p3
but makes more sense as
p(t) (1/6t3 1/2t2 1/2t 1/6)p0 (
1/2t3 t2 2/3)p1 (1/2t3
1/2t2 1/2t 1/6)p2 ( 1/6t3
)p3
3
B-Spline Basis
B1(t)
B2 (t)
2/3
  • p(t) (1/6t3 1/2t2 1/2t 1/6)p0
  • ( 1/2t3 t2 2/3)p1
  • (1/2t3 1/2t2 1/2t 1/6)p2
  • ( 1/6t3 )p3
  • B0(t)p0B1 (t)p1B2(t)p2B3 (t)p3
  • Piecewise cubicapproximation of aGaussian bump
    function
  • Progressively weightspoints along spline

1/6
B0 (t)
B3(t)
t
0
1
B1(t)
B2 (t)
B0(t)
B3 (t)
p3
p2
p1
p0
0
1
0
1
0
1
0
1
4
Uniform B-Splines
p0
p1
p2
t0
t1
p3
t2
  • Notation
  • d degree of polynomial
  • k order of polynomal d 1
  • E.g. cubic d 3, k 4
  • Segment i?? t lt i1 uses k d 1 control points
    pi to pid
  • p(t) Sj3 0 Bj(t mod 1)pij
  • Normalized basis function Ni,d(t)
  • Ni,d(t) Bfloor(t-i)(t mod 1) if i?? t lt id1
  • Otherwise its zero
  • Knot vector
  • e.g. 0,1,2,3,4,5,6,7
  • in general t0,t1,,tnk

p4
t3
p5
t4
p6
t5
p7
p1
p2
p3
p4
p5
p6
t
0
1
2
3
4
5
5
Non-UniformB-Splines
knot vector 0, .5, 1.3, 3.4, 4, 5.1, 6, 7 N3
curve segments d3 (cubic)
p0
  • Can specify an arbitrary parameter ti at each
    control point pi
  • Let N of polynomial curve segments
  • Parameters contained in a knot vector
  • Length (N1) 2d 2
  • t0,t1,t2,t3,,tN2d-2
  • Cubic t0,t1,t2,t3,,tN4
  • Domain of resulting curve is td-1,tNd-1
  • Cubic domain t2,tN2 (segments t0,t1,
    t1,t2, tN2,tN3 and tN3,tN4 arent
    plotted)
  • Need d1 extra knots at the beginning and end
    of the knot vector

p1
p2
t1.3
p3
t3.4
p4
t4
p5
t5.1
p6
p7
6
Knot Multiplicity
  • Knot multiplicity of times a given knot
    appears in the knot vector
  • Continuity d multiplicity
  • Cubic example
  • All knots unique 2nd derivative continuity
  • Multiplicity two 1st derivative cont.
  • Multiplicity three 0th derivative cont.
  • Multiplicity four discontinuous
  • Endpoint interpolation
  • Knots of multiplicity d1 at beginning and end of
    knot vector
  • e.g. 0, 0, 0, 0, 1, 2, 3, 3, 3, 3

2nd derivativediscontinuity
1st derivativediscontinuity
(0th derivative)discontinuity
7
Recursion
  • Higher degree basis can be constructed from lower
    degree bases
  • Ni,0(t)
  • 1 if ti?? t lt ti1
  • 0 otherwise
  • Non-uniform B-splines constructed using a
    systolic array

Ni,3(t)
Ni,2(t) Ni1,2(t)
Ni,1(t) Ni1,1(t) Ni2,1(t)
Ni,0(t) Ni1,0(t) Ni2,0(t) Ni3,0(t)
8
Convolution
  • Let Ni,k Nk(t i)
  • Uniform case
  • Translates of the same basis
  • Then
  • Nk(t) (Nk-1 N1)(t)
  • N1(t) 1 if 0?? t lt 1, 0 otherwise
  • N2(t) is piecewise quadraticGaussian
    approximationconsisting of three
    parabolasegments
  • One more yields cubic B-spline basis

9
de Boor Algorithm
knot vector 0 0 0 0 1 4 5 5 5 5 Cubic (d 3,
k 4)
  • Evaluate at t 2
  • p4,3 1/3 p4,2 2/3 p3,2
  • p4,2 1/4 p4,1 3/4 p3,1
  • p3,2 2/4 p3,1 2/4 p2,1
  • p4,1 1/4 p4,0 3/4 p3,0
  • p3,1 2/5 p3,0 3/5 p2,0
  • p2,1 2/4 p2,0 2/4 p1,0

p2
p3,1
p3
p4,1
p2,1
p4,2
p3,2
p4,3
p1
p4
p0
p5
10
B-Spline Blossoms
f(r2,r1,s1)
f(r1,t,s1)
f(r1,s1,s2)
f(r1,t,t)
f(t,t,t)
f(t,t,s1)
f(r2,r1,t)
knots r3, r2, r1, s1, s2, s3 r1 ? t ? s1
f(t, s1,s2)
f(r3,r2,r1)
f(s1,s2,s3)
p(t) f(t,t,t) (s1-t/s1-r1) f(t,t,r1)
(t-r1/s1-r1) f(t,t,s1) (s1-t/s1-r1)(s1-t/s1-r2)
f(t,r2,r1) (t-r2 /s1-r2) f(t,s1,r1)
(t-r1/s1-r1) (s2-t/s2-r1) f(t,r1,s1)
(t-r1/s2-r1) f(t,s2,s1)
11
Systolic Array
knots r3, r2, r1, s1, s2, s3 r1 ? t ? s1
f(t,t,t)
12
Rational B-Splines
  • Quotient of B-splines
  • p(t) (S wi pi Ni(t))/(S wi Ni(t))
  • B-spline in 4-D homogenous space
  • Projected back into 3-D via homogenous division
  • Weight values affect tension near control
    points
  • Weights can also define control points at
    infinity
  • Capable of generating conic sections (e.g.
    circular arcs)
Write a Comment
User Comments (0)
About PowerShow.com