Journal of Information & Computational Science 4: 2 (2007) 533–543

advertisement
Journal of Information & Computational Science 4: 2 (2007) 533–543
Available at http://www.joics.com
Explicit Multi-degree Reduction of Said-Bézier
Generalized Ball Curves with Endpoints Constraints ?
Qian-Qian Hu a,b , Guo-Jin Wang a,b,∗
a Department
b State
of Mathematics, Zhejiang University, Hangzhou 310027, China
Key Laboratory of CAD & CG, Zhejiang University, Hangzhou 310027, China
Received 11 October 2006; revised 17 February 2007
Abstract
Theoretical study shows that Said-Bézier generalized Ball curves (SBGB curves) are distinctly superior
to Bézier curves in evaluation, degree elevation and reduction. However in practical engineering, there is
no effective algorithm for explicit multi-degree reduction of SBGB curves with endpoints constraints in
the world. It is going against designing and applying generalized Ball curves. In order to shrug off this
trouble, this paper deduces the matrices for both degree elevation and derived vectors at endpoints, of
SBGB curves, and then applying the theory about generalized inverse matrices and partitioned matrices,
deduces the explicit algorithm for multi-degree reduction of SBGB curves with constraints of arbitrary
order continuity at the endpoints. Finally, the error analysis for degree-reduced approximation is given.
Many numerical examples show the rationality and validity of this algorithm.
Keywords: Generalized Ball curve; Multi-degree reduction; Endpoints constraints; Generalized inverse
matrix
1
Introduction
Degree reduction of parameter curves is one of the most common operations in Computer Aided
Geometric Design (CAGD). It is used in data transfer and exchange between various CAGD
systems, compression of shape data information, and so on. Up to now, there are a mass of
treatises focused on degree reduction of Bézier curves/surfaces [1, 11], B-spline curves [8, 12],
and NURBS curves [3]. However, research on one of generalized Ball curves can be just counted
on one’s fingers.
In 1974, Ball curve [2] was introduced into CAGD system and had wide and successful applications. After about ten years, two kinds of generalized Ball curves, i.e., Wang-Ball curve [10] and
?
Supported by the NNSF of China (No. 60673031 & 60333010), the NNSF for Innovative Research Groups
(No. 60021201) and the 973 Program of China (No. 2004CB719400).
∗
Corresponding author.
Email address: wanggj@zju.edu.cn (Guo-Jin Wang).
c 2007 Binary Information Press
1548–7741/ Copyright °
June 2007
534
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
Said-Ball curve [9], were put forward. These two kinds of curves not only had some good properties similar to that of Bézier curves, but also had advantages over Bézier curves in evaluation,
degree elevation and reduction [4, 5]. In 1991, Goodman and Said [4] presented an algorithm for
1-degree reduction of Said-Ball curve based on reverse process of degree elevation. In 1996, Hu
et al [6] gave the algorithms for degree elevation and reduction of Wang-Ball curve and Said-Ball
curve. In 2000, Wu [11] defined two kinds of new generalized Ball curves with position parameter, that is, Wang-Said generalized Ball curve and Said-Bézier generalized Ball curve, which were
called WSGB curve and SBGB curve respectively. These two kinds of curves include Said-Ball
curves and Bézier curves, or Wang-Ball curves and Said-Ball curves respectively. They not only
possess many common properties of generalized Ball curves and Bézier curves, but also are better
than Bézier curves in recursive algorithm for evaluating a curve at any point. Also they are more
suitable for degree elevation and reduction. Therefore, thoroughly investigating degree reduction
of these kinds of curves is theoretically meaningful and valuable. However hitherto only Ref [7]
presented 1-degree reduced algorithm for WSGB curves using net-perturbation method and best
uniform approximation. More effective algorithms, especially the algorithms of explicit and constrained degree reduction, or the algorithms of multi-degree reduction, need to be emphatically
researched.
To satisfy this requirement, this paper presents a novel algorithm for explicit multi-degree
reduction of SBGB curves with endpoints constraints, based on the theory of generalized inverse
matrix and partitioned matrices. The main steps are as follows. Firstly, the explicit matrix is
deduced for degree elevation of SBGB curves. Secondly, applying the chain rule of derivation,
we present the derived vectors at endpoints of the curve and their matrix expressions. And then
by applying two aforementioned results and the theory of generalized inverse matrix, the explicit
algorithm for multi-degree reduction of SBGB curves with endpoints constraints is put forward.
Since the overdetermined system of linear equations can be solved by generalized inverse matrix,
this algorithm for multi-degree reduction works well. Finally, the error analysis for degree-reduced
approximation is given, and some numerical examples validate the effectiveness of this algorithm.
2
Matrices for Degree Elevation and Derived Vectors
at Endpoints of SBGB Curves
Definition 1 Let n ∈ N, and K(0 ≤ K ≤ bn/2c) be a given position parameter. Then
 µ
¶
bn/2c + K + i


ti (1 − t)bn/2c+K+1 , 0 ≤ i ≤ b(n − 1)/2c − K;


 µ ¶ i
n
αin (t, K) =
ti (1 − t)n−i ,
dn/2e − K ≤ i ≤ bn/2c;


i


 n
αn−i (1 − t, K),
bn/2c + 1 ≤ i ≤ n,
is called the basis of Said-Bézier generalized Ball curves with parameter K, where bn/2c is the
maximum integer not more than n/2, and dn/2e is the minimum integer not less than n/2 [11].
A Said-Bézier generalized Ball curve (SBGB curve) is represented by
n
P (t, K) =
n
X
i=0
αin (t, K)pi = αn Pn ,
0 ≤ t ≤ 1,
(1)
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
535
where Pn = (p0, p1 , ..., pn )T are control points and αn = (α0n (t, K), α1n (t, K), ..., αnn (t, K)). Obviously it is easy to show that Pn (t, bn/2c) and Pn (t, 0) are Bézier curve and Said-Ball curve
respectively. When 1 ≤ K ≤ bn/2c − 1, the curve Pn (t, K) is located between them.
Theorem 1 (Degree elevation) A SBGB curve (1) of degree n can be looked as a SBGB curve
of degree n + 1, i.e.,
n
n+1
X
X
n
n
αin+1 (t, K)pi .
P (t, K) =
αi (t, K)pi =
i=0
i=0
In other words, there exists an elevation matrix Mn+1 such that the control points satisfy
Pn = (p0 , p1 , ..., pn+1 )T = Mn+1 (p0 , p1 , ..., pn )T ,
where for n = 2r + 1,
¶Áµ
¶
 µ
r+K +j
r+1+K +i




j
i



i


n+1
i
1
−
an+1
=
i,j
n+1
µ
¶Áµ
¶



3r
+
1
+
K
−
j
3r
+
3
+
K
−
i




n−j
n+1−i


0
Mn+1 = (an+1
i,j ) i=0,1,...,n+1,
j=0,1,...,n
(2)
0 ≤ i ≤ r + 1 − K,
0 ≤ j ≤ min(r, i);
r + 2 − K ≤ i = j + 1 ≤ r + K;
r + 2 − K ≤ i = j ≤ r + K;
r + K + 1 ≤ i ≤ n + 1,
max(i − 1, r + 1) ≤ j ≤ n + 1;
else.
and for n = 2r,
an+1
i,j =







1
i
n+1
i
− n+1
r − K + 1 ≤ i = j + 1 ≤ r + K;
r − K + 1 ≤ i = j ≤ r + K;
0 ≤ j = i ≤ r − K, r + K + 1 ≤ i = j + 1 ≤ n + 1;
else.
1
0
Proof By the recursion formula for degree elevation in Ref[11], the elevation matrix is easy to
obtain. And by the property of degree elevation, the matrix Mn+1 is in full column rank.
In order to study the degree reduction with constraints of endpoints continuity, we first discuss
the derived vector matrix at the endpoints of SBGB curves.
Theorem 2 (Derived vectors) The derived vectors of order l(0 ≤ l ≤ n) at two endpoints of
the SBGB curve (1) of degree n are as follows:
dl Pn (0,K)
dtl
dl Pn (0,K)
dtl
dl Pn (1,K)
dtl
dl Pn (0,K)
dtl
dl Pn (1,K)
dtl
l
n
= (−1)l l!fIn,0,l (l), d P d(1,K)
= (−1)l l!gIII
n,l,0 (l),
tl
II
I
l
= (−1) l!(fn,0,dn/2e−K−1 (l) + fn,l (l)),
III
= (−1)l l!(gII
n,l (l) + gn,dn/2e−K−1,0 (l)),
=
=
0 ≤ l ≤ dn/2e − K − 1;
dn/2e − K ≤ l ≤ bn/2c + K;
III
(−1) l!(fIn,l−bn/2c−K−1,dn/2e−K−1 (l) + fII
n,bn/2c+K (l) + fn,l (l)),
III
bn/2c
(−1)l l!(gIn,l + gII
n,bn/2c+K + gn,dn/2e−K−1,l−bn/2c−K−1 ),
l
where
fIn,µ,ν (l)
=
ν
X
j=µ
µ
j
(−1)
bn/2c + K + j
j
¶µ
bn/2c + K + 1
l−j
+ K + 1 ≤ l ≤ n,
¶
pj ,
536
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
µ
dn/2e−K−1
gIn,µ (l)
X
=
bn/2c+K+1
(−1)
j=µ−bn/2c−K−1
fII
n,ν (l)
µ
ν
X
=
n
j
j
(−1)
j=dn/2e−K
¶µ
¶
n−j
l−j
X
=
µ
bn/2c+K+1
(−1)
µ
n−ν
X
=
n−j
(−1)
j=n−µ
j
l − bn/2c − K − 1
gII
n,µ (l)
=
X
µ
n−j
(−1)
j=n−µ
j=bn/2c+K+1
gIII
n,µ,ν (l)
¶µ
bn/2c+K
pj ,
n+bn/2c+K+1−ν
fIII
n,ν (l)
bn/2c + K + j
j
n + bn/2c + K − j
n−j
bn/2c + n + K − j
n−j
¶µ
¶µ
n
j
¶µ
¶
j
l−n+j
n−j
l − bn/2c − K − 1
bn/2c + K + 1
l−n+j
pj ,
¶
pj ,
¶
pj ,
¶
pj .
Proof According to the piecewise expression form of curve (1), it can be divided as follows
n
P
Pn (t, K) =
=
αin (t, K)pi
i=0
dn/2e−K−1
P
i=0
αin (t, K)pi +
bn/2c+K
P
i=dn/2e−K
αin (t, K)pi +
dn/2e−K−1
P
i=0
αin (1 − t, K)pn−i .
For the sake of simplicity, denote the three terms at the right side of the above expression
as f1 (t), f2 (t), f3 (t) respectively. Therefore, to calculate the derived vectors of order l at two
P
(l)
endpoints of the curve Pn (t, K) is equivalent to compute 3i=1 fi (t)(t = 0, 1). Firstly, by chain
rule of derivation, we have
l
dl ta (1 − t)b X
=
(−1)j
l
t
d
j=0
µ
l
j
¶
a!b!
ta−l+j (1 − t)b−j .
(a − l + j)!(b − j)!
Applying the above formula, one gets the derived vectors of order l of f1 (t), f2 (t):
(l)
f1 (t)
=
l
X
µ
j
(−1)
j=0
(l)
f2 (t)
=
l
X
j=0
l
j
¶ dn/2e−K−1
X
i=0
µ
j
(−1)
l
j
¶
(bn/2c + K + i)!(bn/2c + 1 + K) i−l+j
t
(1 − t)bn/2c+1+K−j pi ,
(bn/2c + 1 + K − j)!(i − l + j)!
bn/2c+K
X
i=dn/2e−K
n!
ti−l+j (1 − t)n−i−j pi .
(n − i − j)!(i − l + j)!
Since the derived vectors of order l of f1 (t) and f2 (t) at t = 0 or 1 are only related with the factor
that is a power function of t or (1 − t) respectively whose exponent is zero, we can get

(
 (−1)l l!fIn,0,l (l)
0
0 ≤ l ≤ dn/2e − K − 1
(l)
(l)
I
(−1)l l!fn,0,dn/2e−K−1 (l)
0
f1 (0) =
, f1 (1) =
, dn/2e − K ≤ l ≤ bn/2c + K ;
 (−1)l l!fI
bn/2c + K + 1 ≤ l ≤ n
(−1)l l!gI (l)
(l)
n
n,l−bn/2c−K−1,dn/2e−K−1
(l)
f2 (0) =

 0

 0
0 ≤ l ≤ dn/2e − K − 1
(l)
l l!gII (l)
(−1)
(l)
(−1)l l!fII
dn/2e − K ≤ l ≤ bn/2c + K .
,
f
(1)
=
,
n,l
n,l
2
 (−1)l l!gII
 (−1)l l!fII
(l)
(l)
bn/2c + K + 1 ≤ l ≤ n
n,bn/2c+K
n,bn/2c+K
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
537
Finally, noting the expressions of f1 (t) and f3 (t), and also applying the relationship
¯
¯
¯
¯
l n
l n
¯
¯
dl αin (t, K) ¯¯
dl αin (t, K) ¯¯
l d αi (1 − t, K) ¯
l d αi (1 − t, K) ¯
=
(−1)
,
=
(−1)
¯
¯
¯
¯ ,
dtl
dtl
dtl
dtl
t=0
t=1
t=1
t=0
we obtain the derived vectors of order l of f3 (t) at t = 0, 1 as follows
(
(
l
III
(l)
f3 (0) =
0
(l)
0
, f3 (1) =
III
l
(−1) l!fn (l)
(−1) l!gn,l,0 (l)
0 ≤ l ≤ dn/2e − K − 1
(−1)l l!gIII
(l)
dn/2e − K ≤ l ≤ bn/2c + K .
,
n,dn/2e−K−1,0
bn/2c + K + 1 ≤ l ≤ n
(−1)l l!gIII
(l)
n,dn/2e−K−1,l−bn/2c−K−1
Therefore the theorem is proven.
For the sake of simplicity, the results in Theorem 2 can be rewritten in matrix form. Since
each term on the right sides of the derived vector expressions, e.g., fIn,0,l (l), can be looked as a
row vector composed of some numbers multiplied by a column vector composed of corresponding
control points, Theorem 2 means the matrix of the derived vectors of order from 0 to n at the
left endpoint of the curve (1) is then expressed in matrix form as





 1
p0
1 0
0
Fn 0 0
 . 


(3)
Fn =  F2n F4n 0  .
 0 ...
 Fn  ..  ,
0
3
5
6
n
F
F
F
0 0 (−1) n!
pn
n
n
n
Likewise for the right endpoint case, where n is the degree of the curve, and the row vectors of the matrices Fin (i = 1, ..., 6) are formed by the row vectors of fIn,0,l (l), fIn,0,dn/2e−K−1 (l),
I
II
III
fII
n,l (l), fn,l−bn/2c−K−1,dn/2e−K−1 (l), fn,bn/2c+K (l), and fn,l (l) respectively, in which l is the row sequence number of the element Fin (i = 1, ..., 6) of the partitioned matrix Fn . And F1n , F2n are two
low triangular matrices.
3
Explicit Multi-degree Reduction of SBGB Curves
3.1
The case without endpoints constraints
Suppose the SBGB curve of degree m (m < n)
m
Q (t, K) =
m
X
αim (t, K)qi = αm (t, K)Qm ,
0 ≤ t ≤ 1,
(4)
i=0
is degree elevated to the one of degree n, as (1). By Theorem 1, there exist a series of (k + 1) × k
matrices Mk in full column rank, k = n, n − 1, ..., m + 1, such that
Pn = Mn−1 Qn−1 = Mn−1 Mn−2 Qn−2 = · · · = Mn−1 Mn−2 · · · Mm+1 Mm Qm .
To keep terseness of the notation, henceforth we write
M = Mn−1 Mn · · · Mm .
(5)
538
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
Obviously, M is an (n + 1) × (m + 1) matrix and in full column rank. And then the problem
that the SBGB curve Pn (t, K) (1) is degree reduced to the one of degree m(m < n) Qm (t, K) is
transformed to find Qm = (q0, q1 , ..., qm )T , such that MQm = Pn is satisfied.
By the definition of M, this system of linear equations is overdetermined, and can be solved by
least square method to obtain its solution
¡
¢−1 T
M Pn .
(6)
Q∗m = MT M
¡
¢−1 T
For an arbitrary matrix M in full column rank, M+ = MT M
M indicates the generalized
inverse matrix of M. Then the above formula is abbreviated as Q∗m = M+ Pn . Unfortunately,
we can see that the new control points Q∗m of degree-reduced curve calculated by least square
method lose the property of endpoints interpolation.
3.2
The case with endpoints constraints
Next we discuss the case that the original curve (1) and the degree-reduced curve (4) are
C α , C β (α, β ≥ 0, α+β < m) continuous respectively at their endpoints. Under the circumstances,
these two curves satisfy
m
n
di Q (0, K)
di P (0, K)
=
,
dti
dti
n
m
dj P (1, K)
dj Q (1, K)
=
, 0 ≤ i ≤ α, 0 ≤ j ≤ β.
dtj
dtj
The above formulae can be presented in matrix form as
Ln P = Lm Q,
b = Rm Q,
b
Rn P
(7)
b and Q)
b are the column vectors formed by the constrained control points
where P and Q (or P
of the curves (1) and (4) respectively when t = 0 (or t = 1).
According to Theorem 2, the coefficient matrices Ln and Lm (or Rn and Rm ) are easy to obtain.
It can be explained, e.g., for Lm , as follows. By the derived vector matrix Fm as in (3), when
α ≤ bm/2c + K, Lm is an (α + 1) × (α + 1) left upper submatrix of Fm , which is reversible, and
the constrained control points are Q = (q0 , q1 , ..., qα ); whereas when bm/2c + K + 1 ≤ α ≤ m,
Lm is composed of the first (α + 1) rows of the matrix Fm , and denoted as
µ
¶
µ 1
¶
¡
¢
Lm,1 0
Fm 0
Lm =
; Lm,1 =
, Lm,2 = F3m,α , F5m,α , F6m,α ,
(8)
2
4
Lm,2
Fm Fm
where Lm,1 is reversible, and the constrained control points are Qm = (q0, q1 , ..., qm )T . Also since
the control points vector P are known, we can find Q as follows.
If α ≤ bm/2c + K, the solution for left constrained control points of degree-reduced curve (4)
is
Q = L−1
m Ln P
(9)
¡ n¢
If bm/2c + K + 1 ≤ α ≤ m, Ln can be partitioned as U
, such that the row number of Un
Dn
is bm/2c + K + 1. Then applying (8), the first term of (7) can be rewritten as the following two
expressions
(10)
Lm,1 Q = Un P, Lm,2 Qm = Dn P.
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
539
Then we have
Q = (q0 , q1 , ..., qbm/2c+K )T = L−1
m,1 Un P.
(11)
Similarly, it is easy to obtain the corresponding coefficient matrices Rn , Rm and constrained
b Q
b of the original curve (1) and the degree-reduced curve (4).
control points P,
When β ≤ bm/2c + K, we have
b = (qm−β , ..., qm−1 , qm ) = R−1 Rn P.
b
Q
m
(12)
e and P
e as Q
e = Q − Q − Q,
b P
e = P − P − P,
b respecWhen α, β ≤ bm/2c + K, denote Q
tively. Applying the partitioning of matrices, the overdetermined system of linear equations with
endpoints constraints is changed to


 −1



P
Q
Ln Lm 0
0
e  , Qm =  Q
e ,

f
c
, Pn =  P
M= M
M
M
−1
b
b
0
0 Rn Rm
P
Q
(n+1)×(m+1)
f and M
c are the (n − α − β − 1) × (α + 1), (n − α − β − 1) × (m − α − β + 1), and
where M, M,
(n − α − β − 1) × (β + 1) matrices respectively, all their elements are calculated by the elevation
f is in full column rank. Therefore, by the multiplication
matrix (5) based on Theorem 1, and M
theorem of partitioned matrices, we have
c Q.
b
fQ
e =P
e − MQ − M
M
Substituting (9) and (12) into the above formula, and applying the theory of generalized inverse
matrix, the least square solution for this overdetermined system of linear equations is
³
´³
´T
e = −M
f + ML−1 Ln , M
c −1 Rn P, P,
f + , −M
f + MR
e P
b .
Q
(13)
m
m
And then combining (9), (12) and (13), further we have


L−1
0
0
m Ln
f + ML−1 Ln M
f + −M
f + MR
c −1 Rn  Pn .
Qm =  −M
m
m
0
0
R−1
R
n
m
(14)
When α, β ≥ bm/2c + K + 1, without loss of generality, we assume that α ≥ bm/2c + K + 1.
Then there is β ≤ dm/2e − K − 2. We partition the matrix Lm,2 in (8) as (C1 , C2 , C3 , C4 ), such
that their column numbers are bm/2c+K +1, α−bm/2c−K, m−α−β −1, β +1 respectively, and
e1 ∪ Q
e 2 ∪ Q,
b
e formed by the control points is subdivided into four parts: Q
e =Q∪Q
the vector Q
1
2
e = (qbm/2c+K+1 , ...qα−1 , qα )T , Q
e = (qα+1 , qα+2 , ..., qm−β−1 )T , and Q, Q
b are as in (10),
where Q
(12) respectively. Therefore the second term in (10) is
e 1 + C3 Q
e 2 + C4 Q
b = Dn P,
C1 Q + C2 Q
where C2 is reversible (See Appendix).
Substituting (9) and (12) into the above formula yields
e 2.
e 1 = C−1 Dn P − C−1 C1 L−1 Un P − C−1 C4 R−1 Rn P
b − C−1 C3 Q
Q
2
2
2
m,1
2
m
(15)
540
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
e 2 satisfy the elevation formula
Then the undetermined control points Q
f1Q
e1 + M
f2Q
e2 + M
cQ
b = P,
e
MQ + M
f1, M
f 2 , M)
c are composed of the rows from α + 1 to n − β − 1 of the
where the matrix (M, M
f1, M
f2, M
c
elevation matrix M, and the column sequence numbers of its four submatrices M, M
in ( M, g
M1 , g
M2 , d
M) are equal to that of C1 , C2 , C3 , C4 in (C1 , C2 , C3 , C4 ) respectively, and
g
g
M1 , M2 are in full column rank.
Substituting (15) into the above expression, and applying the least square method, it follows
that
e2 = M
f + ML P + M
f+P
e +M
f + MR P,
b
Q
(16)
where
f 1 C−1 C1 − M)L−1 Un − M
f 1 C−1 Dn ,
ML = (M
m,1
2
2
³
´
f 1 C−1 C4 − M
c R−1 Rn , M
f=M
f2 − M
f 1 C−1 C3 .
MR = M
2
m
2
On the other hand, substituting (16) into (15), we have
f+P
e − NR P,
b
e 1 = NL P − C−1 C3 M
Q
2
where
(17)
+
−1
−1
−1
g
NL = C−1
2 Dn − C2 C1 Lm,1 Un − C2 C3 M ML ,
−1
−1
f+
NR = C−1
2 C3 M MR + C2 C4 Rm Rn .
And then combining (11), (12), (16) and (17), we finally
 −1
Lm,1 Un
0

−1
f+
−C2 C3 M
 NL
Qm =  +
f ML
f+
 M
M
0
0
4
have
0


−NR 
P .
f + MR  n
M
R−1
m Rn
(18)
Error Analysis and Examples
Applying the elevation formula (5), the approximating error can be expressed as
ε = kPn (t, K) − Qm (t, K)k = kαn (t, K)(Pn − MQm )k.
And by nonnegativity and weighting property of SBGB basis, it is estimated as
ε ≤ max kPn − MQm k.
(19)
Example 1. Given an SBGB curve of degree 5 with position parameter K = 1 and control
points (0, 0), (0.5, 3), (2, 6), (4, 8), (7, 5), (9, 0). According to the algorithm in Section 3.1, reducing
it by two degrees without endpoints constraints, we can get a degree 3 one with control points
(0.0484, −0.1774), (0.4014, 5.2026), (5.7922, 8.4210), (9.0484, −0.1774). Furthermore, using the algorithm in Section 3.2, reducing it by two degrees with endpoints interpolation, we then get a
degree 3 one with control points (0, 0), (0.4112, 5.1668), (5.802, 8.3852), (9, 0) (See Fig. 1).
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
9
541
0.35
y
ε
8
0.3
7
0.25
6
5
0.2
4
0.15
3
2
0.1
1
0.05
0
−1
y
0
1
2
3
4
5
6
7
8
9
x
0
10
9
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
t
1
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
t
1
0.35
ε
8
0.3
7
0.25
6
0.2
5
4
0.15
3
0.1
2
0.05
1
0
0
0
1
2
3
4
5
6
7
8
x9
Fig. 1: The original curve (solid line), unconstrained degree-reduced curve (dashed)
(Upper-left), and its error curve (Upper-right); The original curve (solid line), degreereduced curve with endpoints interpolation(dashed) (Lower-left), and its error curve
(Lower-right).
Example 2. Given a degree 8 SBGB curve with position parameter K = 0 and control points
(0, −1), (1, 2), (3, 2), (2, −3), (4, −4), (6, −4), (8, 2), (9, 3), (11, 0). According to the algorithm in
Section 3.2, reducing it by two degrees with constraints of endpoints C1 , C1 or C3 , C1 continuities
respectively, we then obtain a degree 6 one with control points (0, −1), (1.25, 2.75), (3.4957, 2.2716),
(2.875, −7.9167), (8.0043, 1.2284), (8.5, 3.75), (11, 0); or (0, −1), (1.2, 2.75), (4, 2), (1.25, −6.75),
(8.7137, 0.7158), (8.5, 3.75), (11, 0) (See Fig. 2).
0.45
4
ε
y
0.4
2
0.35
0.3
0
0.25
−2
0.2
0.15
−4
0.1
−6
0.05
−8
0
0
2
4
6
8
10
x
12
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
t
1
Fig. 2: The original curve (solid line), 2-degree reduced curves with endpoints C1 , C1
(gray) or C3 , C1 (dashed) continuities and their control polygons(Left); The error curves
for 2-degree reduced curves with endpoints C1 , C1 (gray) or C3 , C1 (dashed) continuities
(Right).
542
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
Example 3. Given a degree 10 SBGB curve with position parameter K = 0 and control
points (0, 0), (2, 6), (3, 5), (4, 3), (4, −5), (5, 4), (6, 5), (7, 6), (8, 3), (12, 4), (12, 0). According to the
algorithm in Section 3.2, we can get a 1-degree reduced curve with endpoints C5 , C0 continuities
(see Fig. 3 at upper-left), and the 5 or 3-degree reduced curves with endpoints C1 , C1 continuities
(see Fig. 3 at lower-left).
1.4
6
ε
y
1.2
4
1
2
0.8
0
0.6
−2
0.4
−4
−6
0.2
0
0
2
4
6
8
10
x
12
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
t
1
0.45
6
ε
y
0.4
4
0.35
2
0.3
0.25
0
0.2
−2
0.15
0.1
−4
0.05
−6
0
2
4
6
8
10
x
12
0
t
1
Fig. 3: The original curve and its control polygon (solid line), 1-degree reduced curve with
endpoints C5 , C0 continuities (dashed) (Upper-left) and its error curve (Upper-right); The
original curve and its control points (solid line), 5-degree (dashed) or 3-degree (gray)
reduced curves with endpoints C1 , C1 continuities (Lower-left), and their error curves
(Lower-right).
Appendix (To prove C2 is reversible)
By Theorem 2, A = (−1)bm/2c+K+1 (F5m , F6m ) = A1 A2 , where A1 = (aij )0≤i,j≤dm/2e−K−1 , A2 =
(bij )0≤i,j≤dm/2e−K−1 , satisfy
¶
¶
( µ
( µ
aij =
dm/2e − K − 1 − j
i
0
i + j ≤ dm/2e − K − 1
else
, bij =
m−1−i
dm/2e − K − 1 − i
0,
,i = j
.
else
Obviously if A1 is positive definite, then the ordinal principal minor determinant of order α −
bm/2c − K of the matrix A1 is non-zero. And hence C2 is reversible.
Now recurring to row transformation matrix
½
1
B = (bij )0≤i,j≤dm/2e−K−1 =
0
i + j = dm/2e − K − 1
,
else
Q. Q. Hu et al. /Journal of Information & Computational Science 4: 2 (2007) 533–543
543
the matrix A1 with the row series (0, 1, ..., dm/2e − K − 1) can be changed to the matrix A01
whose row series are (dm/2e − K − 1, ..., 1, 0). Therefore A01 is actually a lower triangular matrix,
and the elements on its diagonal line are all positive. Hence A01 is positive definite. On the other
hand, B is also positive definite since all its eigenvalues are equal to 1. To sum up, A1 is positive
definite. And then C2 is reversible.
References
[1]
Y. J. Ahn, B. G. Lee, Y. Park, J. Yoo, Constrained polynomial degree reduction in the L2 -norm
equals best weighted Euclidean approximation of coefficients, Computer Aided Geometric Design
21 (2004) 181-191.
[2]
A. A. Ball, CONSURF Part 1: Introduction of conic lofting title, Computer-Aided Design 6 (1974)
243-249.
[3]
M. Chen, G. J. Wang, Multi-degree reduction of NURBS curves based on polynomial approximation theory and explicit matrix representation, SCIENCE IN CHINA, Series F 47 (2004) 44-54.
[4]
T. N. T. Goodman, H. B. Said, Properties of generalized Ball curves and surfaces, Computer-Aided
Design 23 (1991) 554-560.
[5]
T. N. T. Goodman, H. B. Said, Shape preserving properties of the generalized Ball basis, Computer
Aided Geometric Design 8 (1991) 115-121.
[6]
S. M. Hu, G. Z. Wang, and T. G. Jin, Properties of two types of generalized Ball curves, ComputerAided Design 28 (1996) 125-133.
[7]
P. Jiang, J. Q. Tan, Degree reduction of generalized Ball curves of Wang-Said, Journal of Software
17 (Suppl.) (2006) 93-102.
[8]
L. Piegl, W. Tiller, Algorithm for degree reduction of B-spline curves, Computer-Aided Design 27
(1995) 101-110.
[9]
H. B. Said, Generalized Ball curve and its recursive algorithm, CAM Trans. Graph 8 (1989) 360371.
[10] G. J. Wang, Ball curve of high degree and its application, Applied Mathematics a Journal of
Chinese Universities (A) 2 (1987) 126-140.
[11] H. Y. Wu, Unifying representation of Bézier curve and generalized Ball curves, Appl. Math. J.
Chinese Univ. Ser. B 15 (2000) 109-121.
[12] J. H. Yong, S. M. Hu, J. G. Sun, X. Y. Tan, Degree reduction of B-spline curves, Computer Aided
Geometric Design 18 (2001) 117-127.
[13] J. M. Zheng, G. Z. Wang, Perturbing Bézier coefficients for best constrained degree reduction in
the L2 -norm, Graphical Models 65 (2003) 351-368.
Download