B Spline
B Spline
CALGARY
Modelingforcomputergraphics FaramarzSamavati
UNIVERSITYOF
CALGARY
Functions to Models
Name: Bezier Bspline
Space:
Polynomials
Splines
Basis: Model:
Curves,surfaces, volumes
ModelingforComputer Graphics FaramarzSamavati
???
UNIVERSITYOF
CALGARY
B-Spline of order 1
Consider a simple knot sequence : integer values What is the Spline Space of order 1? Piecewise constant functions, step functions Order = 1 , degree=0 Continuity = -1 Discontinuous A practical example : Any row or column of an image
4 3 2 1 0.5 2.5
UNIVERSITYOF
CALGARY
B-Spline Basis
vBasis set vmany basis sets vB-Spline is the most famous basis set for Splines vThe quickest way of definition
? ?? ?
UNIVERSITYOF
CALGARY
v What is the Spline Space of order 2? v Piecewise linear functions or polyline Order = 2 , degree = 1 , continuous
Continuity = 0
vBasis function = B-Spline of order 2 vA special situation at the start and at the end knots
ModelingforComputer Graphics FaramarzSamavati
UNIVERSITYOF
CALGARY
B-Spline of order 3
v The same knot sequence v quadratic spline v Order = 3 , degree = 2 , continuity = ? v 3 nonzero segments, why?
UNIVERSITYOF
CALGARY
Continuity?
v 4 segments
UNIVERSITYOF
CALGARY
B-Spline Properties
v Basis set for Spline space v Positivity v Compact support v Unit summation
UNIVERSITYOF
CALGARY
B-Spline Curves
Modelingforcomputergraphics FaramarzSamavati
UNIVERSITYOF
CALGARY
Outline
v B-Spline functions (basis functions) and their v v v v
properties B-Spline curves Properties of B-Spline curves Multiple knots Efficient Algorithm for B-Spline curves
UNIVERSITYOF
CALGARY
B-Spline Curve
v Similar to Bezier curve a Linear
vKnotsequencehasbeenfixed(asetofnon
decreasingrealnumbers)
UNIVERSITYOF
CALGARY
B-Spline Curve
Acurvesegment
v v v v v
m is not coupled with k For example : m=13 and k=3 in this curve Pi may has two or three components Parameter space, Curve space segments of the curve
Parameterrange
UNIVERSITYOF
CALGARY
Properties
v It is a kth order Spline v Local Modification v Convex-Hull and strong
A
convex-Hull properties v Affine Invariance: coordinate curve free definition generator Affine transformation: translation, rotation, shear, scaling.
curve generator A
UNIVERSITYOF
CALGARY
Properties:Affine Invariance
Affine transformation (translation, rotation, shear, scaling) A(P) = M.P + V M: a 2x2 matrix for 2D points or 3x3 matrix for 3D points V: a translation vector
A
curve generator
curve generator A
UNIVERSITYOF
CALGARY
UNIVERSITYOF
CALGARY
changes only k segments of the curve v Because basis functions have local support
UNIVERSITYOF
CALGARY
Multiple knots
v Vary the spacing between knots can control the