Introduction to Polynomial Curves Part II Polar Forms

advertisement
Introduction to
Polynomial Curves
Part II
Peter Schröder
CS175 2005
1
Polar Forms
Blossom
Q
For every polynomial F(u) of degree
n there exists a unique symmetric
multiaffine map f(u1,...,un) for
which F(u)=f(u,...,u). This map is
called the polar form. F(u) is called
its diagonal and f is called the
blossom of F.
CS175 2005
2
Page 1
Example
Cubic case
CS175 2005
3
Polar Form
Correspondence
Differentiation
Q
differencing
well defined, i.e., independent of un
Q linear in τ
Q
CS175 2005
4
Page 2
Polar Form
Differentiation
CS175 2005
5
Polar Form
Differentiation
Q
let f be a polar form and 0· p· n,
and u ∈ R (fixed) then the
following are equivalent
Proof
CS175 2005
6
Page 3
Continuity
Two polynomials
Q
let F and G be two polynomials of
degree n and let u be a point on
the real line. Then F and G are Cq
continuous at u iff
CS175 2005
7
Bezier Segments
Continuity conditions
CS175 2005
8
Page 4
Bezier Points
Finding control points
Q
the Bezier control points of F with
respect to [s,t] are
Proof
CS175 2005
9
de Casteljau Alg.
Evaluate Bezier form
very stable
Q convex combinations only
Q
CS175 2005
10
Page 5
de Casteljau
Properties
Q
segment splitting, derivatives
CS175 2005
11
Multiple Segments
How to stick them together?
can match first derivative easily
Q second derivative?
Q
CS175 2005
12
Page 6
Modeling
Bezier curves
requires to keep track of continuity
conditions explicitly... Possible, but
very messy
Q better: use basis which has
continuity conditions built in!
Q
B-Splines
CS175 2005
13
B-Splines
Basic idea
Q
share arguments of control points
CS175 2005
14
Page 7
Argument “Bags”
Knotvector
Q
definition
non-decreasing sequence, can
have multiple entries (multiplicity)
Q curve:
Q
CS175 2005
15
Knot Vector
Example
Q
Bezier segments
Q
B-splines segments
Q
2n knots yield n+1 control points
Q
moving window of size n (why?)
CS175 2005
16
Page 8
Continuity
Simple knots example
Q
n=3 just drawing arguments
(pqr)
(qrs)
(qrv1)
(rst)
(rsv1)
(rv1v2)
(stx)
(stv1)
(rst)
(rsv1)
(sv1v2)
evaluation at s
(stx)
(stv1)
(sv1v2)
(v1v2v3)
Q
(qrs)
(txy)
(txv1)
(tv1v2)
(v1v2v3)
C2 at s: cubic B-splines are C2
CS175 2005
17
Continuity
Doubling a knot
Q
lose one order of continuity
(pqr)
(qrs)
(qrv1)
(rss)
(rsv1)
(rv1v2)
(rss)
(ssv1)
(sst)
(ssv1)
(sv1v2)
(v1v2v3)
Q
(sst)
(stv1)
(sv1v2)
evaluation at s
(stx)
(txy)
(txv1)
(tv1v2)
(v1v2v3)
now only C1
CS175 2005
18
Page 9
B-Splines
Terms
degree: highest exponent in
polynomial
Q order: 1+degree
Q multiplicity of a knot: how many
times repeated
Q continuity: Cn-m with multiplicty m
Q
CS175 2005
19
B-Splines
Definition
Q
recursive
Q
support
CS175 2005
20
Page 10
B-Spline Definition
Basis functions
CS175 2005
21
de Boor Algorithm
Recursion
Q
recursive definition of the basis is
reflected in recursive structure on
control points
CS175 2005
22
Page 11
Evaluation
CS175 2005
23
Evaluation
Cubic spline
Q
two successive segments
(pqr)
(qrs)
(qrv1)
(rst)
(rsv1)
(rv1v2)
(stx)
(stv1)
(sv1v2)
(qrs)
(rst)
(rsv1)
(stv1)
(sv1v2)
(v1v2v3)
(stx)
(txy)
(txv1)
(tv1v2)
(v1v2v3)
CS175 2005
24
Page 12
B-Splines
de Boor Algorithm
CS175 2005
25
B-Splines
Knot insertion
Q
create new degree of freedom
along curve
CS175 2005
26
Page 13
Knot Insertion
Example
Q
cubic spline: new knot
CS175 2005
27
Knot Doubling
Example
Q
increasing multiplicity:
CS175 2005
28
Page 14
Other Properties
Integrals and derivatives
Q
derivatives as differences
Q
Q
B-spline:
integrals
Q
Bernstein basis:
CS175 2005
29
Degree Elevation
Re-express as higher order curve
Q
by uniqueness
Q
example: quadratic to cubic
Q
Bezier control points?
CS175 2005
30
Page 15
Polar Forms
Curve manipulations
splitting
Q differentiation
Q knot insertion
Q increasing knot multiplicity
Q degree elevation
Q
CS175 2005
31
What Else?
Rational curves
Q
conic sections in homogeneous
coordinates
w
y
x
CS175 2005
32
Page 16
Download