0% found this document useful (0 votes)
68 views29 pages

B Spline1

B-splines curves have the following properties: 1) They provide local control, where adjusting a single control point only affects the curve within a parameter range, unlike Bezier curves which are globally affected. 2) They are constructed using basis functions that are associated with knot values along the curve. 3) They use Cox-de Boor recursion formulas to define the basis functions based on the knot vector and control points.

Uploaded by

Atul Chauhan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
68 views29 pages

B Spline1

B-splines curves have the following properties: 1) They provide local control, where adjusting a single control point only affects the curve within a parameter range, unlike Bezier curves which are globally affected. 2) They are constructed using basis functions that are associated with knot values along the curve. 3) They use Cox-de Boor recursion formulas to define the basis functions based on the knot vector and control points.

Uploaded by

Atul Chauhan
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 29

Curves

B-Splines

Bezier Curve

There is no local control (change of one control


point affects the whole curve)

Degree of curve is fixed by the number of


control points
Curves
B-Splines

Each control point is associated with a unique


basis function

Each point affects the shape of the curve over


a range of parameter values where the basis
function is non-zero
local control
Curves
B-Splines

B1 Q0:B0 B1 B2 B3
B3 Q1:B1 B2 B3 B4
Q0 x x2
1 Q2 x3 Parameter t is defined as
x0 xi<t<xi+1
Q1
x0 x1 x2 x3: Knot values
B0 B2 (knot vector)

Control Point
Knot Point
Curves
B-Splines

Polynomial spline function of order k (degree k-1)

n +1 tmin t tmax
P (t ) = Bi Ni ,k (t )
i =1 2 k n +1

Bi : Control point
Nik : Basis function
Curves
B-Splines
Cox-de Boor Recursive Formula

1 x i t < x i +1
Ni ,1(t ) =
0 otherwise

(t x i )Ni ,k 1(t ) ( x i + k t )Ni +1,k 1(t )


Ni ,k (t ) = +
x i +k 1 x i x i +k x i +1

xis are the knot values xi<xi+1


Curves
B-Splines
Properties
Partition of Unity
n +1
Ni ,k (t ) = 1, Ni ,k 0
i =1
Covex hull property
Curves
B-Splines
Convex hull property

For a B-Spline curve of order k (degree k-1)


a point on the curve lies within the convex hull of
k neighboring points

All points of B-Spline curve must lie within the


union of all such convex hulls
Curves
B-Splines
Convex hull property

K=2
Curves
B-Splines
Convex hull property
K=3
Curves
B-Splines
Convex hull property
K=3
Curves
B-Splines
Convex hull property
K=3
Curves
B-Splines
Convex hull property
K=3
Curves
B-Splines
Convex hull property

K=8
Curves
B-Splines
Convex hull property

K=8
Curves
B-Splines
Cox-de Boor Recursive Formula

1 x i t < x i +1
Ni ,1(t ) =
0 otherwise

(t x i )Ni ,k 1(t ) ( x i + k t )Ni +1,k 1(t )


Ni ,k (t ) = +
x i +k 1 x i x i +k x i +1

xis are the knot values xi<xi+1


Curves
B-Splines

Total knot values = n + 1 + k


Nik has non zero value for x i x i +k span

Example N 1, 3 L N 4, 3
n+1 = 4, k = 3
x1 x 4 x4 x7
knot vector [x1 x2 x7]
Curves
B-Splines

Knot vector X can be:

Uniform (periodic)
Open-Uniform
Non-Uniform
Curves
B-Splines

Uniform (Periodic)
Individual knot values are evenly spaced

e.g. [ 0 1 2 3 4]
[ -0.2 -0.1 0 0.1 0.2 ]
[ 0 0.25 0.5 0.75 1 ]
Curves
B-Splines

Open
Has multiplicity of knot values at ends equal to
the order k of the B-Spline basis function. Internal Knot
values are evenly spaced

e.g. k=2 [ 0 0 1 2 3 4 4 ]
k=3 [ 0 0 0 1 2 3 3 3 ]
k=4 [ 0 0 0 0 1 2 2 2 2 ]
Curves
B-Splines

Non-Uniform
Unequal internal spacing and/or multiple internal
knot(s)

e.g. [ 0 0.28 0.5 0.72 1 ]


[0 0 0 1 1 2 2 2]
[0 1 2 2 3 4]
Curves
B-Splines

Uniform (Periodic)
Uniform Knot vectors yields periodic uniform
basis functions
Ni,k(t) = Ni-1,k(t-1) = Ni+1,k(t+1)

1 N1,3 N2,3 N3,3 N4,3 X=[0 1 2 3 4 5 6]


n +1 = 4
k=3
0 1 2 3 4 5 6
Curves
B-Splines

Uniform (Periodic)
For k=3, n+1 = 4
Cox-de Boor Recursive Formula

(t x i )Ni ,2 (t ) ( xi +3 t )Ni +1,2 (t )


Ni ,3 (t ) = +
xi +2 xi xi +3 xi +1
Curves
B-Splines

Uniform (Periodic)

Ni ,3 (t )

(t xi )Ni ,2 (t ) ( xi +3 t )Ni +1,2 (t )


xi +2 xi x i +3 xi +1

(t x i )Ni ,1(t ) ( x i + 2 t )Ni +1,1(t ) (t x i +1 )Ni +1,1(t ) ( xi +3 t )Ni +2,1(t )


xi +1 xi xi +2 x i +1 xi +2 xi +! x i +3 x i + 2
Curves
B-Splines

Uniform (Periodic)

N11 N21 N31 N41 N51 N61


1

0 1 2 3 4 5 6
Curves
B-Splines

Uniform (Periodic)

N12 N22 N32 N42 N52


1

0 1 2 3 4 5 6
Curves
B-Splines

Uniform (Periodic)

N12 N22 N32 N52


1

0 1 2 3 4 5 6
Curves
B-Splines

Uniform (Periodic)

N12 N22 N32 N52


1

0 1 2 3 4 5 6
Curves
B-Splines

Open knot vector

xi = 0 1 xi k
xi = i k k +1 i n +1
xi = n k + 2 n + 2 i n + k +1

[ ]
k k
Curves
B-Splines

Open knot vector


When k=n+1 Bezier Curve
if n+1 = 4 = k knot vector = [0 0 0 0 1 1 1 1]
1
N1,4 (t ) = (1 t ) = J0
3 3
J 03 J 33
N2,4 (t ) = 3t (1 t )2 = J13 J13 J 23
N3,4 (t ) = 3t 2 (1 t ) = J 23
N4,4 (t ) = t 3 = J33
0 t 1

You might also like

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy