April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm International Journal of Shape Modeling c World Scientific Publishing Company COMPLEXITY REDUCTION FOR SYMBOLIC COMPUTATION WITH RATIONAL B-SPLINES * XIANMING CHEN School of Computing, University of Utah, 50 S. Central Campus Dr. Rm. 3190 Salt Lake City, UT 84112, USA [email protected]http://<www.cs.utah.edu/∼xchen> RICHARD F. RIESENFELD School of Computing, University of Utah, 50 S. Central Campus Dr. Rm. 3190 Salt Lake City, UT 84112, USA [email protected]ELAINE COHEN School of Computing, University of Utah, 50 S. Central Campus Dr. Rm. 3190 Salt Lake City, UT 84112, USA [email protected]Received (Day Month Year) Revised (Day Month Year) Accepted (Day Month Year) Communicated by (xxxxxxxxxx) Symbolic computation of NURBS plays an important role in many areas of NURBS- based geometric computation and design. However, any nontrivial symbolic computa- tion, especially when rational B-splines are involved, would typically result in B-splines with high degrees. In this paper we develop degree reduction strategies for NURBS sym- bolic computation on curves. The specific topics we consider include zero curvatures and critical curvatures of plane curves, various ruled surfaces related to space curves, and point/curve bisectors and curve/curve bisectors. Keywords : NURBS symbolic computation; degree reduction; zero curvature; critical curvature; torsion; evolute; focal curve; tangent developable; normal scroll; binormal scroll; rectifying developable; bisector curve; bisector surface. 1991 Mathematics Subject Classification: 68U07, 68U05 ∗ This work was supported in part by NSF ( CCR0310705 ). All opinions, findings, conclusions or recommendations expressed in this document are those of the authors and do not necessarily reflect the views of the sponsoring agencies. 1
25
Embed
COMPLEXITY REDUCTION FOR SYMBOLIC COMPUTATION WITH RATIONAL B
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Symbolic computation of NURBS plays an important role in many areas of NURBS-based geometric computation and design. However, any nontrivial symbolic computa-
tion, especially when rational B-splines are involved, would typically result in B-splineswith high degrees. In this paper we develop degree reduction strategies for NURBS sym-bolic computation on curves. The specific topics we consider include zero curvatures andcritical curvatures of plane curves, various ruled surfaces related to space curves, and
point/curve bisectors and curve/curve bisectors.
Keywords: NURBS symbolic computation; degree reduction; zero curvature; critical
∗This work was supported in part by NSF ( CCR0310705 ). All opinions, findings, conclusionsor recommendations expressed in this document are those of the authors and do not necessarilyreflect the views of the sponsoring agencies.
1
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
2 Xianming Chen, Richard F. Riesenfeld, Elaine Cohen
1. Introduction
Symbolic computation of Non-Uniform Rational B-splines (NURBS)1,2,3,4 refers to
algebraic operations on one or more NURBS that results in another NURBS. The
operations typically include primitive ones like sum, difference, multiplication, divi-
sion, differentiation, and function composition, and composite ones like dot product,
cross product (of 2 B-splines) and triple-scalar product (of 3 B-splines) in R3, and
generalized cross product of (n−1) B-splines and scalar product of n B-splines in Rn,
etc. These operations are essential to the construction of complex NURBS models
from simple ones, and, more importantly, to curve and surface interrogation.2,5,6,7,8
NURBS symbolic computation has also been used in various other areas such as
computing bisectors,9,10,11 blending surfaces12 and offsetting curves.13 In combina-
tion with subsivison-based rational constraint solvers,14,15 NURBS symbolic com-
putation can play a fundamental role in many areas of geometric computation on
free-form curves/surfaces. However, an important problem that restricts the prac-
tical use of NURBS symbolic computation is the rapidly increasing degree of the
derived NURBS, and hence their computational complexity, which is especially true
when rational B-splines are involved.
Because most operations on two rationals either add or double the degrees (cf.
Section 2), nontrivial symbolic computing on rational B-splines frequently becomes
impractical, especially when differentiation is involved. For example, the derivative
of the squared curvature of a quadratic rational curve has a degree of 96 (see Fig. 2)!
Considering that most geometric modeling systems abound with rational
quadratic curves/surfaces (e.g., circles and spheres), rapidly increasing degree can
pose computational issues. A common practice in the CAD community to deal
with problems caused by the rational representation is to approximate the ratio-
nal curve/surface with a polynomial. Error that might be acceptable in the initial
approximation might be amplified significantly in later stages of the design and
modeling process. Even when starting with a polynomial curve/surface, many in-
terrogations turn into interrogation of rationals.
In this paper, we develop degree reduction strategies for symbolic computation
on NURBS curves. Typically we transform the considered B-spline in various ways
into one with reduced degree. In some situations, the transformed B-spline is differ-
ent from the initial one, yet has the exact same solution to the considered problem
(like critical curvature inquiry); in other situations, the transformed B-spline rep-
resents the same geometry, but with a different parameterization (like the ruled
bisector surface); and, in yet other situations, the parameterization is the same,
but redundant terms are eliminated (like the evolute curve).
Also, a few words are in order about polynomial, rational or non-rational rep-
resentation. We clarify these terms first. Although piecewise polynomial functions
form a subset of piecewise rational functions, we usually reserve “rational”, omit-
ting the piecewise modifier throughout this paper, to refer to functions represented
as rational B-splines but not as polynomial B-splines. On the other hand, “non-
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
Complexity Reduction for Symbolic Computation with Rational B-splines 3
rational” refers to functions that are not even representable with piecewise rational
B-splines. Assuming a curve - called primary curve - has a polynomial or rational
representation with parameter s, representations for derived curves, are expected to
be parameterized in s also. We call this the natural parameterization. Throughout
the paper, when we say f is polynomial, rational or non-rational, it should be un-
derstood as polynomial, rational or non-rational with this natural parameterization
unless explicitly stated otherwise. We will also investigate several 2-dimensional de-
rived surfaces related to curves. In some situations, like that of the bisector surface
between 2 space curves, we are still able to have a natural parametric representa-
tion. In other situations that involve one primary curve, there is no bivariate natural
parameterization. This allows us to choose an appropriate parameterization to cre-
ate a representation that is polynomial or rational, or with lower degree. One such
example is the tangent developable of a polynomial or rational space curve γγγ. If it is
parameterized in s and ζ as γγγ(s) + ζ TTT (s) (TTT is the unit tangent vector), the devel-
opable is not even rational in general; but, when the representation is γγγ(s)+ηγ′γ′γ′(s),
the developable is now polynomial (rational) if γγγ is polynomial (rational). Further
assuming γγγ = ppp(s)/w(s) is rational, the same developable can also be represented
6 Xianming Chen, Richard F. Riesenfeld, Elaine Cohen
3. Derivatives of Rational Curves
Suppose γγγ = ppp/w, where p is a polynomial B-spline curve, and w is a polynomial
B-spline function. Its derivatives are,
γ′γ′γ′ =p′p′p′w − ppp w′
w2(1)
γ′′γ′′γ′′ =(p′p′p′w − pppw′)′
w2+ (p′p′p′w − ppp w′)(
1
w2)′
=p′′p′′p′′w − pppw′′
w2+ (p′p′p′w − pppw′)(
1
w2)′ (2)
γ′′′γ′′′γ′′′ =p′′′p′′′p′′′w−ppp w′′′
w2+
p′′p′′p′′w′−p′p′p′w′′
w2+(p′′p′′p′′w−ppp w′′)(
1
w2)′+(p′′p′′p′′w−ppp w′′)(
1
w2)′+(p′p′p′w−ppp w′)(
1
w2)′′
=p′′′p′′′p′′′w−ppp w′′′
w2+
p′′p′′p′′w′−p′p′p′w′′
w2+ 2(p′′p′′p′′w − pppw′′)(
1
w2)′ + (p′p′p′w−ppp w′)(
1
w2)′′. (3)
We introduce the notationa,
D1 = p′p′p′w − ppp w′,
D2 = p′′p′′p′′w − pppw′′,
D3 = p′′′p′′′p′′′w − pppw′′′,
D21 = p′′p′′p′′w′ − p′p′p′w′′
(4)
to rewrite the derivatives as
γ′γ′γ′ = 1w2 D1
γ′′γ′′γ′′ = 1w2 D2 −
2w′
w3 D1
γ′′′γ′′′γ′′′ = 1w2 D3 + 1
w2 D21 −4w′
w3 D2 + 6w′2−2ww′′
w4 D1.
(5)
Remark 3.1. The Di’s in Eq. (4), and their corresponding cross product and triple
scalar product, are polynomial B-splines with degrees,
D1 2d − 1
D2 2d − 2
D3 2d − 3
[D1 D2] 4d − 3
[D1 D2 D3] 6d − 6
where d is the degree of the primary rational B-spline curve γγγ. �
Notice that, since the NURBS are piecewise rational, the degrees of the Di’s
(i = 1, 2, 3) are actually one lower than described in Remark 3.1. This is because
aFor consistent notation, D10,D20, and D30 would be indicated instead of D1,D2, and D3,respectively. These notations are adopted for simplicity and because that D21 is the only situationwhere double subscripts are actually needed.
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
Complexity Reduction for Symbolic Computation with Rational B-splines 7
of the antisymmetry of the involved expressions. For example, when representing
D1 = p′p′p′w − pppw′ in the piecewise power basis, the coefficient of the highest degree
term vanishes. However, when γ is represented in the NURBS basis, none of the
coefficients of D1 vanish. To represent it in its proper degree, it would be necessary
to add another type of degree reduction stage to the computation, that is, to repre-
sent D1 as a spline of one degree lower and find its coefficients. Other research has
investigated this type of degree reduction( e.g., Ref. 21 and Ref. 22), which is quite
different from the type of degree reduction we are proposing within the context of
NURBS symbolic computation, and that is presented in this paper.
In Remark 3.1, for any two 2-D vectors aaa and bbb, [a ba ba b] denotes the determinant
of the matrix consisting of the two column vectors; and for arbitrary 3-D vectors
aaa, bbb and ccc, [a b ca b ca b c] is the triple scalar product. It also follows straightforwardly
[a ba ba b] = aaa� ··· bbb,
where, aaa� is used to mean the π/2 degree counter-clockwise rotation of aaa.
For a space curve γγγ, D21, as defined in Eq. (4), is spanned by D1 and D2 because
D1,D2 and D21 have a vanishing triple scalar product16 as below,
(a) a cubic B-spline curve γγγ (The curve model is from Ref. 29), its evolute and 6 criticalpoints where κ′ = 0 . Notice that there are actually 8 extreme curvature points(corresponding to 8 evolute cusps), with the 2 extra ones (not shown on the pri-mary curve) at the 2 ends of the bottom segment (segments are in alternatingcolors), where the left and right limit κ′ have different sign.
(b) the graph of the numerator of (κ2)′, with degree 24, and 150 control points. Two extraroots are returned where κ = 0.
(c) the graph of g0 = [γ′γ′γ′ γ′′′γ′′′γ′′′]‖γ′γ′γ′‖2−3(γ′γ′γ′ ···γ′′γ′′γ′′) [γ′γ′γ′ γ′′γ′′γ′′], with degree 6 and 24 control points.f has exactly 6 roots, where κ′ = 0.
All control polygons are shown in light gray, and control points in dark blue. Notice that
(b) and (c) are nonuniformly scaled and also trimmed to fit the space.
degree is only 6, compared to 24 produced by the squaring approach. This degree
comparison, as well as the one on rational curve case discussed shortly, is also tested
with Irit (version 9.5),25 where κ2 and (κ2)′ have degrees of 12 and 24 respectively
for a cubic polynomial, and 72 and 144 respectively for a cubic rational. See Fig. 1
for detail.
Now we focus on the rational situation. Because γ′γ′γ′, γ′′γ′′γ′′ and γ′′′γ′′′γ′′′ have degrees
of 2d, 4d and 8d, respectively, the first and second terms in Eq. (10) have degrees
(a) the graph (top and bottom trimmed off to fit the space) of the numerator of (κ2)′ of anellipse γγγ, with degree 96, 388 control points. Vertically scaled down by 0.00001.
(b) the ellipse γγγ, and the graph of g2 in Eq. (11), with degree 12 and 52 control points.Vertically scaled down by 0.3.
Control polygons are shown in green in both images. Notice that there are actually only 4
roots for each graph, because the rightmost one identifies with the leftmost one by periodic
condition. Also notice that both graphs are smooth but with C−1 B-spline representation.
For the rational case, based on the definition of Di in Eq. (4), and its relation
to the derivatives in Eq. (5), it is possible to transform EEEγ and achieve much degree
reduction. Specifically, substituting Eq. (5), and
γγγ′� =
(
D1
w2
)
�
=(D1)�
w2,
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
Complexity Reduction for Symbolic Computation with Rational B-splines 13
(a) EEEγ = γγγ +‖γ
′γ′
γ′‖2
[γ′γ′
γ′
γ′′
γ′′
γ′′]
γγγ′�, deg 26, 108 ctrl pt (b) EEEγ = γγγ +
‖D1‖2
[D1 D2]γγγ′
�, deg 9, 40 ctrl pt
Fig. 3. Evolute of an Ellipse
into Eq. (12), the evolute of a planar rational curve can re-formulated as,
EEEγ =ppp
w+
‖D1‖2
[D1 D2]
(D1)�
w2
=[D1 D2]w ppp + ‖D1‖
2 (D1)�
[D1 D2]w2,
with a final degree of 6d−3 (cf. Remark 3.1). Fig. 3 shows the evolute of an ellipse,
comparing initial representation to the transformed and degree reduced one.
Notice that we are able to reduce the degree considerably because (cf. Re-
mark 3.2) γγγ(i) can be replaced with Di and the algebraic operations on the common
divisor w2 result in some high degree terms that ultimately cancel.
5. Symbolic Computation on B-Spline Space Curves
Generally, the Frenet local orthonormal basis for a space curve,
TTT = γ′γ′γ′
‖γ′γ′γ′‖
,
BBB = γ′γ′γ′×γ′′γ′′
γ′′
‖γ′γ′γ′×γ′′γ′′
γ′′‖,
NNN = NNN‖NNN‖ = (γ′γ′
γ′×γ′′γ′′γ′′)×γ′γ′
γ′
‖γ′γ′γ′×γ′′γ′′
γ′′‖ ‖γ′γ′γ′‖
,
(13)
is not rational. However, a rational local orthogonal basis can be formed from it.
If γγγ is a rational B-spline, again by Eq. (5), DDDp can be represented as
DDDp =p
w+
1
w2
‖D1‖2
‖D1 × D2‖2(D1 × D2) × D1 +
µ
w4D1 × D2,
with significantly reduced degree.
6. Point/Curve and Curve/Curve Bisectors
It has been proved33,10 that the bisectorc between a rational planar curve and a
plane point is a rational curve, that the bisector between a space point and a space
cStrictly speaking, a point on the bisector, as discussed in this section and in Ref. 10, is notequidistant to the point and to the curve (or to the two curves), even locally – rather it has equalcritical distances. To get the real bisector, trimming procedure as done in Ref. 33 for the planecase has to be applied.
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
18 Xianming Chen, Richard F. Riesenfeld, Elaine Cohen
rational curve is a rational ruled surface, and that the bisector between two space
rational curves is a rational surface. For the plane case, Ref. 33 has shown that
the point/curve bisector has a maximal degree of 3d − 1 and 4d − 1, if the curve
is a degree d polynomial and rational respectively.d We will reformulate equations
defining bisectors on space curves10, so that the symbolically-computed NURBS
bisector has precisely the same degree (i.e., 3d − 1 or 4d − 1); and this is true for
curve/curve bisectors as well as for point/curve bisectors.
6.1. Polynomial formulation of the linear system for solving the
curve/curve bisector
Adapted from Ref. 10, the bisector BBB of two space curves γγγ(s) and γγγ(s) is the
solution to the following linear system,
γ′γ′γ′
γγγ′
γγγ − γγγ
BBB =
γγγ ··· γ′γ′γ′
γγγ ··· γγγ′
12 (‖γγγ‖2 − γγγ2)
, (22)
where each B-spline in the LHS is regarded as a row vector. Geometrically, this
simply means that a bisector point BBB(s, s) of two space curves γγγ and γγγ is the
intersection point of three planes namely, the plane passing through γγγ(s) with
normal γ′γ′γ′(s), the plane passing through γγγ(s) with normal γγγ′(s), and the plane
passing through γγγ(s)+γγγ(s)2 with normal γγγ(s) − γγγ(s). Applying Cramer’s rule, the
bisector is,
BBB =(D0, D1, D2)
D, (23)
where D is the determinant of the LHS matrix, and Di (i = 0, 1, 2) is that of the
LHS matrix when its i-th column is replaced by the RHS column vector.
Assume that γγγ is a degree d B-spline, either polynomial or rational, with pa-
rameter s. Only focusing on degree in s (BBB has the same degree in s as that in s),
Eq. (22) can be rewritten as,
d − 1 d − 1 d − 1
0 0 0
d d d
BBB =
2d − 1
0
2d
(24)
First consider the situation when γγγ is a degree d polynomial. D, as a 3 × 3 de-
terminant, is the sum of 6 terms. Because each of the 6 terms is a degree 2d − 1
polynomial B-spline, D is also a degree 2d − 1 polynomial B-spline. On the other
hand, D0 has the following degree representation,
2d − 1 d − 1 d − 1
0 0 0
2d d d
(25)
dIt is stated to be 4d− 2 in Ref. 33 for the rational case, although we believe this is likely a typo.
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
Complexity Reduction for Symbolic Computation with Rational B-splines 19
and thus 4 of the 6 terms are degree 3d − 1 B-splines, while the other 2 are still
degree 2d−1 polynomial B-spline. Therefore, D0, and of course D1 and D2 as well, is
a degree 3d−1 polynomial B-spline. Finally, a division of a degree 3d−1 polynomial
B-spline by another 2d− 1 polynomial scalar B-spline results in BBB being a rational
B-spline of degree 3d − 1.
Now suppose γγγ is rational. D is again the summation of 6 terms, each of which
is a degree 2d− 1 rational B-splines. However, adding them together does not raise
degree, because the denominators of these 6 rational B-splines are the same so the
summation of the 6 rationals is reduced to the summation of 6 polynomial B-splines
followed by a division by the common scalar polynomial B-spline. Therefore, D is
finally a degree 2d − 1 rational B-spline. On the other hand, D0 (and similarly for
D1 and D2) has much higher degree. Notice that each of the three rational scalar
B-splines in the first column of Eq. (25) has a different denominator from that
of the other two in the corresponding row. That is to say, in the summation of
the determinant, 2 of the 6 rational B-spline terms have a common denominator,
yet another 2 have another common denominator, and the remaining 2 have yet
another common denominator. Therefore, applying addition first within each pair
and then across the 3 pairs, the final rational B-spline is symbolically computed to
have degree (3d−1)+(3d−1)+(2d−1) = 8d−3. A better and simpler way of doing
this is to bring the three rational B-splines in each row of D0 to a common level
polynomial degree and knot configuration using degree elevation and knot insertion
respectively. That is, transforming Eq. (25) into,
2d − 1 2d − 1 2d − 1
0 0 0
2d 2d 2d
(26)
Now adding the 6 terms in the determinant as usual, D0 is symbolically computed
to be a degree (2d− 1)+2d = 4d− 1 rational B-spline. And finally, BBB (cf. Eq. (23))
is a rational B-spline of degree (2d − 1) + (4d − 1) = 6d − 2.
We have just discussed the optimal implementation. In what follows, we will
show that, for the rational case, the degree actually can be reduced to 4d − 1 by
careful reformulation.
Suppose γγγ = pppw
. Noticing that only the directions of the plane normals matter,
two of the three plane normals, γγγ′ and γγγ − γγγ, can be replaced with D1 and ppp−wγγγ,
respectively. Consequently, Eq. (22) can be transformed into,
D1
γγγ′
ppp − γγγw
BBB =
ppp ··· D1
w γγγ ··· γγγ′
12 (‖ppp‖2 − ‖γγγ‖2 w2)
, (27)
where,
BBB = wBBB. (28)
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
20 Xianming Chen, Richard F. Riesenfeld, Elaine Cohen
where the notation aaa, for any vector aaa, denotes the vector aaa with the last component
discarded. Focusing only on degrees in s, this is,(
d − 1 d − 1
d d
)
BBB =
(
2d − 1
2d
)
(35)
Notice that the above equation is actually the same as Eq. (29), considering that
the second row of the LHS matrix is all 0’s. Consequently, the bisector is a rational
eor, a degree 3d polynomial if only the denominator vector is taken as the generator. This, however,does not change the final degree of the bisector.
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
Complexity Reduction for Symbolic Computation with Rational B-splines 23
(a) The Explicit Directrix Approach (cf. Fig. 5(a)) (b) The Direct Approach (cf. Fig. 5(b))
Fig. 6. The Plane Bisector Curve
The plane bisector curve in Fig 5 is the iso-curve of the ruled bisector for both approaches.
of degree 3d−1 in s if the curve is a degree d polynomial. On the other hand, if the
curve is a degree d rational, we would have a polynomial re-formulation (omitted
here) just as we did in Section 6.1, and once again, the resulting bisector has a
degree 4d − 1 in s.
At this point, a few words are in order, comparing our direct approach method
to the explicit directrix method in Ref. 10.
(1) the degree of the final bisector here is considerably reduced; compare Fig. 4(a)
to Fig. 4(b) and Fig. 5(a) to Fig. 5(b).
(2) the iso-curves of the ruled surface are exactly the height contour lines; see
Fig. 4(b) and 5(b)
(3) more than one parameterization may have to be used to cover the whole bisector
surface if moving some component (the last one in the derivation) does not
work for the whole parametric space (In this case, the curve has to be split into
separate segments. For any neighboring segment pair, different components of
the bisector are moved to the RHS of Eq. (30)).
(4) both approaches have the special case of the plane bisector curve as an iso-curve
of the ruled bisector surface; see Fig. 6.
7. Conclusion
We have presented several degree reduction strategies for NURBS symbolic com-
putation on curves, including eliminating higher order derivative terms, canceling
common scalar factors, and developing symbolic computation using polynomial B-
splines. Although only focusing on NURBS symbolic computation, we would like
to point out that there is also a numerical issue involved here, i.e. the effect of
discarding the denominator to the final zero finding of the original rational. Fig. 2
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
24 Xianming Chen, Richard F. Riesenfeld, Elaine Cohen
gives us an example that the transformed and degree reduced B-spline, in fact, has
a better numeric condition. We suspect, however, that the opposite might be true if
at some points both the numerator and the (discarded) denominator are evaluated
very close to 0. In the future, we will extend the work in this paper to the surface
case, especially to investigate any possible degree reducing reformulation for various
surface interrogation problems.
References
1. Rida T. Farouki and V. T. Rajan. Algorithms for polynomials in bernstein form.Computer Aided Geometric Design, 5(1):1–26, 1988.
2. G. Elber. Free form surface analysis using a hybrid of symbolic and numeric compu-tation. Ph.D. thesis, University of Utah, Computer Science Department, 1992.
3. Tony DeRose, Ronald N. Goldman, Hans Hagen, and Stephen Mann. Functional com-position algorithms via blossoming. ACM Trans. Graph., 12(2):113–135, 1993.
4. Les A. Piegl and Wayne Tiller. Symbolic operators for nurbs. Computer-Aided Design,29(5):361–368, 1997.
5. G. Elber and E. Cohen. Second order surface analysis using hybrid symbolic andnumeric operators. ACM Transactions on Graphics, 12(2):160–178, April 1993.
6. Takashi Maekawa and Nicholas M. Patrikalakis. Interrogation of differential geometryproperties for design and manufacture. The Visual Computer, 10(4):216–237, 1994.
7. Gershon Elber and Myung-Soo Kim. Symbolic and numeric computation in curveinterrogation. Comput. Graph. Forum, 14(1):25–34, 1995.
8. N. M. Patrikalakis and T. Maekawa. Shape Interrogation for Computer Aided Designand Manufacturing. Springer-Verlag, 1 edition, 2002.
9. Gershon Elber and Myung-Soo Kim. Bisector curves of planar rational curves.Computer-Aided Design, 30(14):1089–1096, 1998.
10. Gershon Elber and Myung-Soo Kim. The bisector surface of rational space curves.ACM Trans. Graph, 17(1):32–49, 1998.
11. Gershon Elber and Myung-Soo Kim. A computational model for nonrational bisectorsurfaces: Curve-surface and surface-surface bisectors. GMP, pages 364–372, 2000.
12. Kwansik Kim and Gershon Elber. A symbolic approach to freeform parametric surfaceblends. Journal of Visualization and Computer Animation, 8(2):69–80, 1997.
13. Gershon Elber and Elaine Cohen. Error bounded variable distance offset operator forfree form curves and surfaces. Int. J. Comput. Geometry Appl, 1(1):67–78, 1991.
14. Evan C. Sherbrooke and Nicholas M. Patrikalakis. Computation of the solutions ofnonlinear polynomial systems. Computer Aided Geometric Design, 10(5):379–405,1993.
15. Gershon Elber and Myung-Soo Kim. Geometric constraint solver using multivariaterational spline functions. Symposium on Solid Modeling and Applications, pages 1–10,2001.
16. Xianming Chen, Richard Riesenfeld, and Elaine Cohen. Rational bezier patch dif-ferentiation using the rational forward difference operator. Proceedings of the 23rdComputer Graphics International Conference, June 2005.
17. K M Morken. Some identities for products and degree raising of splines. ConstructiveApproximation, 7:195–208, 1991.
18. E.T.Y Lee. Computing a chain of blossoms, with application to products of splines.cagd, 11(6):597–620, 1994.
19. Kenji Ueda. Multiplication as a general operation for splines. Curves and Surfaces inGeometric Design, pages 475–482, 1994.
April 2, 2007 21:19 WSPC/INSTRUCTION FILE ws-ijsm
Complexity Reduction for Symbolic Computation with Rational B-splines 25
20. Xianming Chen, Richard Riesenfeld, and Elaine Cohen. Nurbs multiplication revis-ited. Under Submission, 2006.
21. Tom Lyche and Knut Mrken. Knot removal for parametric b-spline curves and sur-faces. Computer Aided Geometric Design, 4(3):217–230, 1987.
22. Les Piegl and Wayne Tiller. Algorithm for degree reduction of b-spline curves.Computer-Aided Design, 27(2):101–110, February 1995.
23. J.W.Bruce and P.J.Giblin. Curves And Singularities. Cambridge University Press, 2edition, 1992.
24. Rida T. Farouki and C. Andrew Neff. Analytic properties of plane offset curves.Computer Aided Geometric Design, 7(1-4):83–99, 1990.
25. Gershon Elber. The irit modeling environment. http://www.cs.technion.ac.il/ irit/,2005.
26. B. O’Neill. Elementary Differential Geometry. Academic Press, 2 edition, 1997.27. R. T. Farouki and T. Sakkalis. Pythagorean hodographs. IBM Journal of Research
and Development, 34:736–752, 1990.28. Wonjoon Cho, Takashi Maekawa, and Nicholas M. Patrikalakis. Topologically reli-
able approximation of composite bzier curves. Computer Aided Geometric Design,13(6):497–520, August 1996.
29. William Martin and Elaine Cohen. Surface completion of an irregular boundary curveusing a concentric mapping. Proceedings of Curves and Surfaces 2002, 2002.
30. Ian R. Porteous. Geometric Differentiation: For the Intelligence of Curves and Sur-faces. Cambridge University Press, 2 edition, 2001.
31. Jan. J. Koenderink. Solid Shape. MIT press, 1990.32. Elaine Cohen, Richard F. Riesenfeld, and Gershon Elber. Geometric Modeling with
Splines:An Introduction. A K Peters, 1 edition, 2001.33. Rida T. Farouki and John K. Johnstone. The bisector of a point and a plane para-