Download Lecture 5

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the work of artificial intelligence, which forms the content of this project

Document related concepts
no text concepts found
Transcript
Numerical Methods in CAGD
FMN011
2014
Carmen Arévalo & Claus Führer
[email protected], [email protected]
Lund University
Lecture 7
Ht1 2014
Arévalo/Führer FMN100 2014
SPLINES
A spline of degree n with ordered knots u0, . . . , uk is a polynomial curve
over each knot interval [ui, ui+1] that is n − r times differentiable at each
knot of multiplicity r.
Spline curves are generalizations of Bézier curves and are developed to use
lower degree curve segments without worrying about the G1 continuous
condition.
There are two interesting properties of the spline basis functions that are
not part of the Bézier basis functions:
1. the domain is subdivided by knots
2. the basis functions are non-zero only on a finite subinterval
Arévalo/Führer FMN100 2014
1
B-SPLINE BASIS FUNCTIONS
s(u) =
m
X
diNin(u)
i=0
where the
Nin
are basis spline functions defined as
1
if u ∈ [ui, ui+1)
Ni0(u) =
0
otherwise
u − ui
ui+n+1 − u
n−1
n−1
n
Ni (u) =
Ni (u) +
Ni+1
(u)
ui+n − ui
ui+n+1 − ui+1
Points ui are called knots. Functions Nin(u) are called B-splines.
Convention: If ui = ui+r , then Nir−1(u) = 0.
Arévalo/Führer FMN100 2014
2
SOME PLOTS OF B-SPLINES
Arévalo/Führer FMN100 2014
3
PLOTS OF B-SPLINE BASIS FUNCTIONS WITH MULTIPLE KNOTS
Arévalo/Führer FMN100 2014
4
COMPUTATION OF B-SPLINE BASIS FUNCTIONS
The following triangular computation scheme shows how B-spline basis
functions are constructed. We can also observe their non-zero domain, and
determine which B-spline basis functions of a given degree are active on a
particular subinterval.
Arévalo/Führer FMN100 2014
5
[u0, u1)
N00
`
>
N01
`
~
[u1, u2]
N10
`
>
N02
`
~
>
N11
`
>
~
[u2, u3)
N20
N03
~
`
>
N12
~
>
N21
~
[u , u4)
Arévalo/Führer FMN100 2014
3
N30
6
PROPERTIES OF B-SPLINE BASIS FUNCTIONS
• Nin(u) is a piecewise polynomial of degree n.
• Nin(u) is non-zero only on [ui, ui+n+1) and Nin(u) > 0 on (ui, ui+n+1).
• On [ui, ui+1) at most n+1 degree n basis functions are non-zero:
n
n
n
Ni−n
(u), Ni−n+1
(u), . . . , Ni−1
(u), Nin(u).
• If the number of knots is k + 1 and the degree of the basis functions is
n
n, then the number of basis functions is k − n; i.e., N0n, . . . , Nk−n−1
form a basis for splines of degree n with support [a0, . . . , ak ].
•
k−n−1
X
Nin(u) = 1,
for u ∈ [un, uk−n]
i=0
Arévalo/Führer FMN100 2014
7
• N0n, . . . , Nk−n−1 over knots u0, . . . , uk restricted to the interval
[an, ak−n]) form a basis for all splines of degree n restricted to the
same interval.
!
n−1
n−1
Ni+1 (u)
d n
Ni (u)
•
−
Ni (u) = n
du
ui+n − ui ui+n+1 − ui+1
• Nin(u) is n − r times differentiable at knots of multiplicity r.
• There are at most n − r + 1 non-zero basis functions at a knot of
multiplicity r.
Arévalo/Führer FMN100 2014
8
Related documents