Offset approximation based on reparameterizing the path ZHAO Hong-yan WANG Guo-jin

advertisement
Appl. Math. J. Chinese Univ.
2009, 24(4): 431-442
Offset approximation based on reparameterizing the path
of a moving point along the base circle
ZHAO Hong-yan1,2,3
WANG Guo-jin∗1,2
Abstract. This paper presents a novel algorithm for planar curve offsetting. The basic idea
is to regard the locus relative to initial base circle, which is formed by moving the unit normal
vectors of the base curve, as a unit circular arc first, then accurately to represent it as a rational
curve, and finally to reparameterize it in a particular way to approximate the offset. Examples
illustrated that the algorithm yields fewer curve segments and control points as well as C 1
continuity, and so has much significance in terms of saving computing time, reducing the data
storage and smoothing curves entirely.
§1 Introduction
Offset curves/surfaces, also called parallel curves/surfaces, are defined as locus of the points
which are at constant distance r along the normal from the base curves/surfaces. Offsets are
widely used in various CAD/CAM (Computer Aided Design and Computer Aided Manufacture)
areas, such as tool path generation, 3D NC machining, solid modeling, and so on[1-5] .
Given a planar parametric curve C(t) = (x(t), y(t)), the offset curve with an offset radius r
is defined by Cr (t) = C(t) + rN(t), where
(y 0 (t), −x0 (t))
N(t) = p
x02 (t) + y 02 (t)
is the unit normal of C(t). In general, the offset curve is not rational because of the square
root function in the denominator of N(t), and so it is hard to be applied in CAD system.
Farouki and Sakkalis[6] , and Lü[7] have introduced Pythagorean hodograph (PH) and Offsetrational (OR) curves respectively, whose offsets are rational curves, but they have not been not
widely used due to less flexibility. So approximation techniques seem to be a more feasible
solution to the planar curve offsetting.
Received: 2008-12-08
MR Subject Classification: 65D18
Keywords: CAD/CAM, offset, circle, convolution, Bézier/B-spline curve, rational curve
Digital Object Identifier(DOI): 10.1007/s11766-009-2150-z
Supported by the National Natural Science Foundation of China (60933007; 60873111)
*Corresponding author, E-mail: wanggj@zju.edu.cn
432
Appl. Math. J. Chinese Univ.
Vol. 24, No. 4
There were a lot of researches on offset approximation, such as translating[8-10] , interpolation
and fitting methods[11-13] . Cobb[8] proposed to translate each control point, whereas Tiller, et
al.[9] developed translating each edge of the control polygon to derive a new control net of
the approximated offset curve. Hoschek[11] suggested a least squares solution to determine the
hodographs at the endpoints. Piegl, et al.[12] employed sample interpolation to approximate
the offsets of NURBS curves/surfaces. Li, et al.[13] used Legendre series.
Taking a different approach, Lee, et al.[14-16] proposed to treat the offset as a convolution
problem. They regarded the offset curve as a convolution of a sweeping circle moving along the
base curve whose radius was equal to the offset radius. Three kinds of methods were proposed:
circle approximation method CAO, circle representation methods LRC, TMC (also named MO)
and SRC, and the method CAMO. Method CAO[14] approximates the sweeping circle with
piecewise quadratic polynomial Bézier curves, and takes the convolution of the circle and the
base curve as the offset approximation. Methods LRC, TMC and SRC[15-16] represent the
sweeping circle with piecewise quadratic rational Bézier curves, and take the convolution of the
reparametrized sweeping circle and the base curve as the approximation. Method CAMO[16-17]
approximates the circle with polynomial curves, and then reparameterizes the convolution of
the circle and the base curve. However, each of them has limitations. Method CAO could not
offset the circular arc, while the latter is widely applied in engineering. Method LRC employs
linear reparametrization, and could not derive high quality approximation. Methods TMC and
SRC use sampling technique, and could not provide explicit and reliable results. As a refinement
of CAO, Ahn, et al.[17] proposed to approximate the sweeping circle by conic approximation
technique[18] to yield approximated offset of the same degree as the base curve. However, it
could not offset circular arcs precisely either. Besides, the methods by Lee, et al. and Ahn, et al.
generate G1 continuous approximation at most. This paper provides a new high-precision offset
approximation method based on reparameterizing the path drawn by a moving point along the
base circle. Particular techniques are employed to reparameterize the rational quadratic unit
circular arc drawn by the unit normal vectors of the base curve, relative to the initial unit base
circle. The method surpasses method CAO and Ahn, et al.’s method in offsetting circular arc
precisely, exceeds methods TMC and SRC in avoiding the approximation instability caused from
sample dependence, and outperforms all Lee, et al.’s and Ahn et al.’s methods in yielding C 1
continuous offset approximation. More importantly, error analysis and examples show that our
method outperforms the existing algorithms in global error control and the number of curve
subdivisions and control points, especially in high quality approximation. Due to the high
approximation precision, fewer curve subdivisions and control points, the method is practical
and applicable in engineering.
ZHAO Hong-yan, et al. Offset approximation based on reparameterizing the path of a moving point· · ·
433
y
P2=(cos2θ, sin2θ )
P1=(1, tanθ )
Q(s)
2θ
P0=(1, 0)
x
Fig. 1
§2
Circular arc with quadratic rational representation
Representing circular arc by quadratic rational form
In this section, we will review the quadratic rational Bézier representation of circular arc.
Suppose the central angle is 2θ(0 < 2θ < π2 ). The quadratic rational Bézier curve with three
control points P0 , P1 , P2 and weights ω0 , ω1 , ω2 is defined by
(1 − s)2 ω0 P0 + 2(1 − s)sω1 P1 + s2 ω2 P2
Q(s) = (xQ (s), yQ (s)) =
, 0 ≤ s ≤ 1.
(1 − s)2 ω0 + 2s(1 − s)ω1 + s2 ω2
To represent the circular arc in Fig.1, assume P0 = (1, 0), P1 = (1, tan θ), P2 = (cos 2θ, sin 2θ),
ω0 = ω2 = 1, ω1 = cos θ. The two components xQ (s), yQ (s) of Q(s) are
(1 − s)2 + 2(1 − s)s cos θ + s2 cos 2θ
,
xQ (s) =
(1 − s)2 + 2(1 − s)s cos θ + s2
2(1 − s)s sin θ + s2 sin 2θ
yQ (s) =
.
(1 − s)2 + 2(1 − s)s cos θ + s2
§3
Offset curve approximation
In this section, a regular parametric polynomial/rational curve C(t) of degree d is considered.
Its offset approximation will be represented with piecewise rational curve segments.
Suppose C(t) = (x(t), y(t))(0 ≤ t ≤ 1) satisfies the following conditions: it is convex; the
range of the direction angles of the normal vectors is less than π2 ; y(0) = x0 (0) = 0, y 0 (0) > 0.
If the base curve dose not meet the above requirements, we can do a simple rotation to bring
it into accord.
0
(t)
Let α(t) = arctan(− xy0 (t)
) denote the directed angle from the positive half of x axis to the
unit normal N(t) of C(t). Then there is α(0) = 0. Assume α(1) = 2θ, that is, y 0 (1) sin 2θ =
−x0 (1) cos 2θ. Since N(t) is a unit vector function, its locus can be seen as the locus of a moving
point on the sweeping circle with the centre moving along the base curve. On the other hand,
this moving point draws a unit circular arc with central angle 2θ relative to the initial unit base
circle, and so the circular arc can be exactly represented as the quadratic rational Bézier curve
Q(s)(0 ≤ s ≤ 1) defined in §1.
The circular arc Q(s)(0 ≤ s ≤ 1) here does not represent the real locus of the normal
N(t)(0 ≤ t ≤ 1). It is just a relative locus on the initial unit base circle. Since the base curve
434
Appl. Math. J. Chinese Univ.
Vol. 24, No. 4
C r (t 't )
a
Cr (t )
J
C (t 't )
G
Q( s(t ))
E
Cr (t )
N (t )
C (t )
Fig. 2
Curve segment offset in the convex direction
is not always an OR (offset-rational) curve in general, so no rational parametrization t = t(s)
exists to make the unit normal vector rational-represented. Nevertheless, we can find a rational
transformation s = s(t), and use it, to obtain the curve Car (t) = C(t) + rQ(s(t)) as an approximation of the offset Cr (t) = C(t) + rN(t). The transformation should be properly designed
such that Car (t) is C 1 continuous, interpolates endpoints and offsets circular arc precisely. Since
||Q(s(t))|| ≡ ||N(t)|| ≡ 1 holds for 0 ≤ t ≤ 1, the approximation error comes only from the
direction deviation between vectors Q(s(t)) and N(t).
Inspired by Lee et al.[15] , the approximated reparametrization may be defined by
[a(1 − t) + bt]x0 (t) + [c(1 − t) + dt]y 0 (t)
s(t) =
,
[e(1 − t) + f t]x0 (t) + [g(1 − t) + ht]y 0 (t)
where a, b, c, d, e, f , g and h are undetermined coefficients.
Note that Car (t) should be a C 1 endpoints interpolation of the exact offset, which requires
that
¯
¯
dQ(s(t)) ¯¯
N(t) ¯¯
s(i) = i,
=
, i = 0, 1.
(1)
¯
dt
dt ¯t=i
t=i
In addition, arcs should be offset precisely. Assume the arc is represented by
C∗ (t) = (x∗ (t), y ∗ (t))
¶
µ
2(1 − t)t sin θ + t2 sin 2θ
(1 − t)2 + 2(1 − t)t cos θ + t2 cos 2θ
,
.
=
(1 − t)2 + 2(1 − t)t cos θ + t2
(1 − t)2 + 2(1 − t)t cos θ + t2
In this case, C∗ (t) + rQ(s(t)) should be equal to the exact offset. That is,
C∗ (t) + rQ(s(t)) = C∗ (t) + rN∗ (t),
where N∗ (t) is the unit normal of C∗ (t).
It is easy to transform the above equation to
t = s(t).
Solving the linear system of Eqs. (1) and (2), we get
a = cos θ, b = 1, c = d = 0, e = cos θ − cos 2θ,
f = 1 − cos θ cos 2θ, g = − sin 2θ, h = − sin 2θ cos θ.
(2)
ZHAO Hong-yan, et al. Offset approximation based on reparameterizing the path of a moving point· · ·
435
C (t 't )
G
a
Cr (t ) J
Q( s(t ))
E
C r (t 't )
Cr (t )
Fig. 3
C (t )
N (t )
Curve segment offset in the concave direction
Also the reparametrization s = s(t) can be written out.
Here, we give some explanations for s(1) = 1. Applying y 0 (1) sin 2θ = −x0 (1) cos 2θ to s(1),
we have
− sin 2θ
s(1) =
= 1.
(1 − cos θ cos 2θ)(− sin 2θ) − sin 2θ cos θ cos 2θ
For those regular, but not simple base curves, it should be subdivided so that each segment
is convex or concave, and the range of direction angles of normal vectors is less than π2 . Then the
parameter domain should be transformed to [0, 1] by a simple translation and scaling. Finally,
a rotation is required to locate the beginning point on the X-axis, with its tangent parallel to
the positive Y-axis.
For a polynomial curve C(t) of degree d, the degree of our approximated offset curve is 3d
and 5d − 2 for a rational curve, 2 degrees higher than 3d − 2 and 5d − 4 generated by Lee, et
al.[14]
§4
Error analysis
Most of existing methods estimate the approximation error only on finite samples. It cannot
achieve global control. Elber, et al[19] proposed to find the maximum of the function e(t) =
||C(t) − Car (t)||2 − r2 for error estimation. However, there always exists e(t) ≡ 0 to LRC, TMC,
SRC and our method, because the distance between Car and C(t) always equals the offset
radius r. So this estimation is invalid. Elber, et al[19] provided another solution: computing the
direction deviation angle from the differential vector Car (t) − C(t) to the normal N(t). Suppose
the angle is β, there is cos β = Q(s(t)) · N(t). Lee, et al.[15-16] employed the method. They
found that e(t) ≈ r sin β to their algorithms. Zhao et al.[20] proposed a novel way to improve
the error estimation of circle representation for offset approximation. They classified the base
curve, investigated the deviation angle, and obtained more precise error bounds. In this paper,
we will employ this new method to estimate the error bound, and compare different offset
436
Appl. Math. J. Chinese Univ.
Vol. 24, No. 4
C(1)
C(t0)
Cr(t0)
C(t)
Car (t0)
Car (1)=Cr(1)
Fig. 4 Trimmed curve. The exact offset Cr (t) and the normal N(t) are drawn in red. The approximation
a
offset Ca
r (t) and Cr (t) − C(t) are drawn in green.
approximation algorithms in the next section. In the below we shall give a brief introduction
of the error estimation method.
Given a point C(t) on the base curve, we can find a unique point C(t + ∆t) in its neighborhood so that the offset point of approximation Car (t) lies on the normal line of C(t + ∆t)
(Fig. 2 and 3), here ∆t is a slight increment and t + ∆t ∈ [0, 1]. The equivalent mathematic
description is that, for any t ∈ [0, 1], there is a scale number λ so that C(t+∆t)+λrN(t+∆t) =
C(t) + rQ(s(t)), where λ is in fact a function dependent on t. Since λr measures the distance
between the base curve and the offset curve along normal directions, the error r(λ − 1) between
it and the offset radius can be seen as the approximation error. This error comes from human’s
visual habits, is close to the exact error.
Define the direction angle between N(t + ∆t) and Q(s(t)) by γ, and that between N(t + ∆t)
and C(t) − C(t + ∆t) by δ, then λ has the following expression[20] :
C(t) − C(t + ∆t)
λ = Q(s(t)) · N(t) +
· N(t + ∆t)
r
||C(t) − C(t + ∆t)||
= cos γ +
· cos δ.
r
The approximation error is
µ
¶
||C(t) − C(t + ∆t)||
(λ − 1) = r cos γ − 1 +
· cos δ .
(3)
r
Zhao, et al.[20] proposed to classify the base curve into two kinds: one is offset in their convex
side (Fig. 2), and the other is classified in their concave side (Fig. 3). The relationships between
angles γ, β and δ are discussed respectively, and applied into Eq. (3). Then the error bound
of the offset approximation is obtained. To the base curve offset in the convex side, the error
bound is[20]
−r sin2 β ≤ r(λ − 1) ≤ 0.
(4)
ZHAO Hong-yan, et al. Offset approximation based on reparameterizing the path of a moving point· · ·
Fig. 5
437
Quadratic circular arc splines
To the base curve offset in the concave side, the error bound is[20]
r sin2 β
β cos β(1 + 2η) − η 2
−
≤ r(λ − 1) ≤ 2r(sin2 )
,
(5)
2
2
2
(cos β − η)2
(cos β − η) + sin β
r
where η = ρ(t)
, ρ(t) is the curvature radius function of the base curve.
For those points where ρ(t) is close to the offset radius r, a large error bound may be
concluded from Eq. (5). In fact, since self-intersections usually happen in the neighborhood of
those points, they are generally intentionally eliminated in advance. Then we can always find
a positive constant η ∗ > η = ρr for any point 0 ≤ t ≤ 1. Replace η with η ∗ in Eq. (5) and an
error bound only related to β will be got.
Note that cos β = Q(s(t)) · N(t), which is a rational polynomial. After a symbolic computation the range of cos β (or β) is obtained. Applying it to Eqs. (4) and (5), we will derive the
estimation error bounds.
When the curve C(t) is a trimmed curve or self-intersection that occurs on exact/approximated offset curves, the discussion may be a little complicated. The assumption that C(t + ∆t)
always exists as a foot-point of Car (t) on the base curve may not hold at the endpoints and
near the self-intersections. Then the global error may not be controlled. Nevertheless, since
the method in this paper guarantees C 1 endpoint interpolation, the assumption always holds
(Fig. 4). For self-intersecting offset curves, we apply the method in Lee, et al.[14] to eliminate
the self-intersecting loops, which is omitted here.
§5
Experimental results
In this section, we compare experimental results of our method with previous methods.
Different methods are first compared in terms of exact circular arc offsetting and the total
number of control points of approximated offsets. Then the methods by Lee, et al.[14-16] and
Ahn et al.[17] are compared with ours in relation to the error estimation bounds.
Fig. 5 represents a circle expressed by quadratic rational Bézier splines. Known from §3,
the method in this paper can offset it exactly. The result is also a quadratic rational spline
curve having the same degree and number of control points with the base curve. The existing
methods hardly achieve that except LRC, TMC and SRC methods.
Figs. 6 and 7 represent a uniform cubic B-spline curve and a cubic Bézier curve with their
offsets respectively. The input curves are drawn in thick lines. The comparisons are shown in
438
Appl. Math. J. Chinese Univ.
Vol. 24, No. 4
0.1
Cob
Elb
Elb_2
Til
Lst
Lst_2
Lee
Zhao
2IIVHWHUURU
0.01
1E-3
1E-4
1E-5
1E-6
1
10
100
1000
1XPEHURIFRQWUROSRLQWV
Fig. 6 Offset for a uniform cubic B-spline curve: (a) offset using our method; (b) total number of control points
generated by existing methods and our method
Table 1 Comparison on the numbers of control points of the approximation curves offsetting the same cubic
uniform B-spline curve by different methods under the various error bounds |δ|
|δ|
10−3
10−4
10−5
Cob
208
637
1846
Elb
174
417
1357
Elb2
190
550
1690
Til
202
640
1918
Lst
84
138
240
Lst2
94
166
277
Lee
141
211
365
Zhao
109
136
172
the right sides in Figs. 6 and 7, where the code of each algorithm is the same as in Lee[14] . Our
method is appended in the last column of Tables 1 and 2, denoted by Zhao. The input curve
in Fig. 6 is a uniform cubic B-spline curve with 7 control points:
(−3.01619, 2.34143), (−3.97193, −2.20842), (−1.07045, 0.0722807), (0.319568, −2.77522),
(−0.152767, 2.299), (2.92416, −0.939865), (2.8027, 3.02775).
An offset radius 0.5 is used in the example. The input curve in Fig. 7 is a cubic Bézier curve with
4 control points: (−0.785938, 0.891849), (−0.993306, −0.59695), (0.3, −2.5), and (0.9, −0.2). The
offset radius is 1.0.
The experiments show that our algorithm generates much fewer control points than previous
methods, only except the methods Lst and Lst2 in Fig. 6 with the given approximation error
bound 10−3 , and the method Lst in Fig. 7 with the approximation error bound 10−3 or
10−4 . The main reason is that the offset yielded by our method has relatively high degree.
Nevertheless, when the number of curve subdivisions is considered, our method performs much
better. Fig. 6 shows that the control points yielded by other methods increase greatly when
the given error is decreased, so the curve subdivisions increase greatly. However, the control
points generated by our method increase slowly, so do the curve subdivisions. Our method
to this point has more advantages in data storage and time saving when the offset curve is
stored and processed by segments. If the given tolerance is less than 10−4 , our algorithm
outperforms others in the number of control points, as well as subdivisions. Besides, the offset
curve continuity obtained by our method is up to C 1 , higher than those by other methods. So
our algorithm is fairly suited for high precision offset approximation with high continuity.
Almost none of the existing methods obtain a precise error bound due to the complicated
ZHAO Hong-yan, et al. Offset approximation based on reparameterizing the path of a moving point· · ·
439
0.1
Cob
Elb
Elb_2
Til
Lst
Lst_2
Lee
Zhao
2IIVHWHUURU
0.01
1E-3
1E-4
1E-5
1E-6
10
100
1000
10000
1XPEHURIFRQWUROSRLQWV
Fig. 7 Offset for a cubic Bézier curve: (a) offset using our method; (b) total number of control points generated
by existing methods and our method
C(t)
C1(t)
Fig. 8
C2(t)
Offset for a quintic Bézier curve: (a) before subdivision; (b) after subdivision
expression of N(t). Neither does ours. However, we can still find a relatively practical error
bound based on strict numerical analysis to lots of examples. For the length limitation of the
paper, below we only give some explanations to the examples in Figs. 6 and 7.
The uniform cubic B-spline curve (Fig. 6) can be divided into four curve segments. Computing 2θ and sin2 β for each curve segment, we get
sin2 β ≈ 0.019(sin θ)6.105 , sin2 β ≈ 0.03(sin θ)6.181 , sin2 β ≈ 0.024(sin θ)6.182
and sin2 β ≈ 0.0214(sin θ)6.175 by fitting technique . So for the cubic B-spline curve, sin2 β is
at least O(θ6 ).
Divide the cubic Bézier curve (Fig. 7) to three curve segments. The relationship between
2θ and sin2 β of each segment is: sin2 β ≈ 0.000398(sin θ)7.88 , sin2 β ≈ 0.000395(sin θ)7.87 and
sin2 β ≈ 0.0994(sin θ)7.88 . So sin2 β is about O(θ7 ), better than that of the cubic B-spline curve.
It is reasonable because the inflexion points on the B-spline curve influence the approximation
effect.
Besides the statistical analysis, below we will provide another way to compare the approximation error yielded by previous methods and ours. In 2004, by showing a table, Ahn, et al[17]
compared the error bounds of approximate curve segments generated by Lee et al[14] and their
algorithm, to illustrate their advantages. Since our algorithm is a direct improvement to that
of Lee, et al and Ahn et al, in the following, we will also give a comparison on error bounds of
all these algorithms, including Lee et al’s, Ahn et al’s and ours, by employing the similar table
format shown in Ref. [17], so as to make the discussion more convincing. Fig. 8 represents a
quintic Bézier curve and the offsets before and after one subdivision. The error bound of each
curve segment is compared in Table 3. The error estimation method of Zhao, et al[20] is used.
The results show that our algorithm yields smaller error bound, but higher precision.
We do lots of experiments to validate the correctness and effectiveness of our method. Fig.
440
Appl. Math. J. Chinese Univ.
Fig. 9
Vol. 24, No. 4
(a)
(b)
(c)
(d)
(a) Dinosaur; (b) Logo of Beijing 2008 Olympics; (c) Dancer; (d) Elephant
9 shows some of them, four pieces of artistic patterns composed of a set of offsets respectively.
Our method is useful in CAD / CAM.
§6
Conclusion
We present a new offset curve approximation method based on reparameterizing the rational
quadratic unit circular arc drawn by the unit normal vectors of the base curve, relative to the
initial unit base circle. Theoretical analysis and experimental results show that our algorithm
surpasses most of the existing methods in approximation precision, as well as in precise circle
offsetting, sample technique independence, and C 1 offset approximation.
Like Lee, et al’s method[14] , the main disadvantage of our method is that the approximated
offset curves are rational curves of relatively high degree. The degrees are 3d and 5d − 2
respectively, 2 degrees higher than 3d − 2 and 5d − 4 in Lee, et al[14] , where d is the degree
of the original Bézier or rational Bézier curve. However, it is deserved at the expense of little
increase of the degree to yield the much smaller error bounds and number of segmented curves
and control points, especially for high precision approximation.
ZHAO Hong-yan, et al. Offset approximation based on reparameterizing the path of a moving point· · ·
441
Table 2 Comparison on the numbers of control points of the approximation curves offsetting the same cubic
Bzier curve by different methods under the various error bounds |δ|
|δ|
10−3
10−4
10−5
Cob
94
316
865
Table 3
C (t)
C 1 (t)
C 2 (t)
Elb
74
216
974
Elb2
97
247
769
Til
97
322
886
Lst
19
31
50
Lst2
31
46
88
Lee
50
85
141
Zhao
28
37
46
Comparison on error bounds between Lee et al.’s and Ahn et al.’s methods and ours
CAO
1.24
0.0443
0.0256
Ahn
0.1030
0.0391
0.0430
LRC
[−0.2780, 0]
[−0.1133, 0]
[−0.1109, 0]
TMC
[−0.1235, 0]
[−0.0496, 0]
[−0.0636, 0]
SRC
[−0.0970, 0]
[−0.0435, 0]
[−0.0487, 0]
Zhao
[−0.0837, 0]
[−0.0382, 0]
[−0.0207, 0]
References
1 Hansen A, Arbab F. An algorithm for generating NC tool paths for arbitrarily shaped pockets
with islands, ACM Transactions on Graphics, 1992, 11(2): 152-182.
2 Held M. On the Computational Geometry of Pocket Machining, Berlin: Springer-Verlag, 1991.
3 Chen Y J, Ravani B. Offset surface generation and contouring in computer-aided design, Journal
of Mechanisms, Transmissions and Automation in Design: ASME Transactions, 1987, 109(3):
133-142.
4 Kuragano T, Sasaki N, Kikuchi A. The FRESDAM system for designing and manufacturing free
form objects, In: Martin R ed, USA-Japan Cross Bridge, Flexible Automation, 1988, 2: 931-938.
5 Patrikalakis N M, Prakash P V. Free-form plate modeling using offset surfaces, Journal of Offshore
Mechanics and Arctic Engineering, 1988, 110(3): 287-294.
6 Farouki R T, Sakkalis T. Pythagorean hodographs, IBM Journal of Research and Development,
1990, 34(5): 736-752.
7 Lü Wei. Offset-rational parametric plane curves, Comput Aided Geom Design, 1995, 12(6):
601-616.
8 Cobb E S. Design of sculptured surfaces using the B-spline representation, Salt Lake City, Utah,
USA: University of Utah, 1984.
9 Tiller W, Hanson E G. Offsets of two-dimensional profiles, IEEE Computer Graphics and Application, 1984, 4(9): 36-46.
10 Elber G, Cohen E. Offset approximation improvement by control points perturbation, In: Lyche
T, Schumaker L L eds, Mathematical Methods in Computer Aided Geometric Design II, New
York: Academic Press, 1992, 229-237.
11 Hoscheck J. Spline approximation of offset curves, Comput Aided Geom Design, 1988, 20(1):
33-40.
12 Piegl L A, Tiller W. Computing offsets of NURBS curves and surfaces, Comput Aided Design,
1999, 31(2): 147-156.
13 Li Y M, Hsu V Y. Curve offsetting based on Legendre series, Comput Aided Geom Design, 1998,
15(7): 711-720.
442
Appl. Math. J. Chinese Univ.
Vol. 24, No. 4
14 Lee I K, Kim M S, Elber G. Planar curve offset based on circle approximation, Comput Aided
Design, 1996, 28(8): 617-630.
15 Lee I K, Kim M S, Elber G. New approximation methods of planar offset and convolution curves,
In: Strasser W, Klein R, Rau R eds, Geometric Modeling: Theory and Practice, Heidelberg:
Springer-Verleg, 1997, 83-101.
16 Lee I K, Kim M S, Elber G. Polynomial/rational approximation of Minkowski sum boundary
curves, Graphical Models and Image Processing, 1998, 60(2): 136-165.
17 Ahn Y J, Kim Y S, Shin Y. Approximation of circular arcs and offset curves by Bézier curves of
high degree, J Comput Appl Math, 2004, 167(2): 405-416.
18 Floater M. An O(h2n ) Hermite approximation for conic sections, Comput Aided Design, 1997,
14(2): 135-151.
19 Elber G, Cohen E. Error bounded variable distance offset operator for free form curves and
surfaces, Internat J Comput Geom Appl, 1991, 1(1): 67-78.
20 Zhao H Y, Wang G J. Error analysis of reparametrization based approaches for curve offsetting,
Comput Aided Design, 2007, 39(2): 142-148.
1 Department of Mathematics, Zhejiang University, Zhejiang 310027, China
2 State Key Laboratory of CAD & CG, Zhejiang University, Zhejiang 310027, China
3 College of Fundamental Studies, Shanghai University of Engineering Science, Shanghai 201620, China
Download