Bézier curves and surfaces are the most widely used mathematical modelling tools in CAD/CAM systems, see [1–3]. One of the main concerns in representing Bézier curves is to keep the degree as low as possible. This simplifies the evaluation, manipulation and determination of a small number of Bézier points. These and other factors encourage us to consider approximating circular arcs using quadratic Bézier curves. Besides many other applications, quadratic Bézier curves are commonly used in encoding and rendering of type fonts and HTML techniques by many companies. Circular arcs are commonly used in the fields of Computer Aided Geometric Design CAGD, Computer Graphics, and many other applications. Since circular arcs are represented by rational Bézier curves and cannot be represented by polynomial curves in explicit form, circular arc representations using polynomial Bézier curves have been developed by many researchers, see for example [4–14].
In this paper, a novel approach to represent a circular arc using quadratic Bézier curves with high accuracy is proposed. The method leads to the solution that minimizes a variation of the Euclidean error.
We want to represent the longest arc of the circle, i.e. the angle θ as large as possible. At the same time, the resulting Bézier curve has to satisfy the Chebyshev error. It is known that the angle θ can not be greater than . So, we consider the circular arc c : t ↦ (cos(t), sin(t)), −θ ≤ t ≤ θ, where . Later, we will find out the largest value for θ that satisfies the Chebyshev error. An illustrative choice for the Bézier points with is shown in Fig. 1.
It is not possible to exactly represent a circle with a polynomial curve. While a circle can be represented exactly using rational Bézier curves, a polynomial approximation is preferred in many applications. The ability to represent a primitive circle is a must, especially in computer graphics and data and image processing. Thus, there is a demand to find a parametrically defined polynomial curve p : t ↦(x(t), y(t)), 0 ≤ t ≤ 1, where x(t), y(t) are polynomials of degree n. The degree of p has to be as small as possible, and p has to approximate c within tolerable error. Having the degree n low makes the software very fast, convenient, obviates complications of high degree, and reduces the cost. In this paper, degree 2 curves are considered, and it is shown that it works well and produces results that are as good as the results of higher degrees. This makes the method competitive. Namely, quadratic Bézier curves are constructed to represent circular arcs with the best quadratic uniform approximation and the highest accuracy.
A possible function to measure the error between p and c is the Euclidean error function: (1)
The square root complicates the analysis. Thus to avoid radicals, we find the square of the p components of the circular arc. So, E(t), is replaced by the following error function (2)
Note that both e(t), and E(t), attain their roots and extrema at the same parameters. In this paper, we are interested in finding the quadratic best uniform approximation that has the highest order of approximation and the minimum error. This research is motivated by the conjecture in  which states that it is possible to approximate a curve by a polynomial of degree n with order 2n, rather than the classical order n + 1. In quadratic case, the associated error function has to equioscillate five times. Consequently, the approximation problem can be formulated as follows.
The approximation problem in this paper is to find p : t ↦ x(t), y(t)), 0 ≤ t ≤ 1, where x(t), y(t), are polynomials of degree 2, that approximates c by satisfying the following three conditions:
p minimizes maxt∈[0;1] |e(t)|,
p approximates c with order four,
e(t), equioscillates five times over [0, 1].
The solution to this problem is shown in Section 3 to be as follows:
This paper is organized as follows. Section 1 introduces some preliminaries and defines the Bézier points for the best solution (the Bézier curve). The main result is given in Theorem 3.1 in Section 3. In Section 4, the properties of the best solution are presented. Section 5 states all other possible solutions. Section 6 presents comparisons between the quarter of the circle using this method and other existing methods. Conclusions and suggested open problems are given in Section 7.
Throughout this paper, we use the notations x(t), y(t), and to represent parametric equations, and similarly points, because no ambiguity can appear.
In this paper, the curve p(t), is given in Bézier form, see Fig. 2. The Bézier curve p(t), of degree 2 is given by (3) where p0, p1, p2 are the Bézier points, and are the Bernstein polynomials of degree 2. The Bernstein polynomials of degree 2 form a basis for quadratic curves. A quadratic Bézier curve is a linear combination of quadratic Bernstein polynomials and thus every quadratic curve can be written as a quadratic Bézier curve.
To represent a whole circle, the circular arc between the points (cos(θ), −sin(θ)), and (cos(θ), sin(θ)), is approximated in the first step, see Fig. 1. Thereafter, the rest of the circle is represented by rotation of this segment.
Since it is intended to represent the whole circle with piecewise polynomial curve with minimum error, it is not important where the errors occur, at the end points or elsewhere; it is important to keep this error as small as possible than where the error occurs. Other methods may require continuity conditions, see [15, 16].
To represent a circular arc, the Bézier points are chosen to explore symmetry properties of the circle. So, let p0 = (α0 cos(θ) −β0 sin(θ)), then by the symmetry of the circular arc the point p2 should have the form p2 = (α0 cos(θ) β0 sin(θ)). Also, because of the symmetry, p1 must be on the positive x-axis and thus p1 = (γ, 0). By making the substitution α = α0 cos(θ), β = β0 sinθ, then the proper choice for the Bézier points should be (4)
To have the Bézier curve p in the first and fourth quadrants as the circular arc c, the following conditions should be satisfied (5)
Thus, the Bézier polynomial curve p(t), is given by (6)
There are three parameters α, β, γ that will be used to have the polynomial curve p comply with the conditions of the approximation problem; this is done in the following section.
3. The best quadratic uniform approximation
The values of α, β, γ that minimize the uniform error and satisfy the conditions of the approximation problem are given in the following theorem.
Theorem 3.1.: The Bézier curve in (6) with the Bézier points in (4) , where (7) satisfies the following three conditions: p minimizes the uniform error maxt ∈ [0, 1] |e(t)| and approximates c with order four, and the error function e(t) equioscillates five times in [0, 1]. More precisely, the error functions satisfy: (8)
Proof.: Substituting the components of p(t) into equation (2) for the error function e(t) gives (9)The last equality for e(t) is a polynomial of degree 4. To satisfy the approximation conditions, the values of α, β, γ have to be chosen so that the error function e(t) coincides with the monic Chebyshev polynomial of degree 4, see . Substituting the values of α = α*, β = β*, γ = γ* from (7) and simplifying gives Making the substitution yields The last polynomial is the monic quartic Chebyshev polynomial T̃4(u), u ∈ [−1, 1], which is the unique polynomial of degree 4 that minimizes |e(u)| over [−1, 1] and equioscillates five times between for all u ∈ [−1, 1], see . Consequently, p has fourth order of contact with c. The error function e(t) minimized is related to the Euclidean error E(t) by the following formula Thus Substituting the bounds of e(t) gives This proves Theorem 3.1.Conditions (2) and (3) given in Theorem 3.1 are the consequences of the fact that the conditions were imposed on the error function to make it coincide with the monic quartic Chebyshev polynomial. In particular, condition (2) assures the improvement of the order of approximation over the standard order (from 3 to 4). The function of condition (3) is to assure that the approximation is the best uniform approximation which is clear from Fig. 4.Fig. 3 shows the circular arc and the approximating Bézier curve, and Fig. 4 shows the corresponding error. One would not expect a quadratic Bézier curve to approximate almost half a circle more precisely than this.
Remarks: The Bézier curve in Theorem 3.1 corresponds to the angle θ = 86.5°. In this case, the Bézier curve is the longest circular arc that can satisfy the Chebyshev error. It is almost half of the circle. The Bézier curve with α = α*, β = β*, γ = γ* represents the circular arc in the first and fourth quadrants generated counter clockwise, see Fig. 3. For programming purposes, the parameters α, β, γ, are given in terms of each other, for example if α is given as a constant, then the other parameters are given in terms of α as follows:
(10) x(t) does not approximate cos(t), neither does y(t) approximate sin(t). Consequently, (x(t) cos(t))2 + (y(t) −sin(t))2 does not tell anything. The only guarantee is that (x(t), y(t)), t ∈ [0, 1] approximates the circular arc between (cos(θ), −sinθ)) and (cos(θ), sin(θ)) for θ = 86.5°.
The Bézier curve in Theorem 3.1 corresponds to the angle θ = 86.5°. In this case, the Bézier curve is the longest circular arc that can satisfy the Chebyshev error. It is almost half of the circle.
The Bézier curve with α = α*, β = β*, γ = γ* represents the circular arc in the first and fourth quadrants generated counter clockwise, see Fig. 3.
For programming purposes, the parameters α, β, γ, are given in terms of each other, for example if α is given as a constant, then the other parameters are given in terms of α as follows: (10)
x(t) does not approximate cos(t), neither does y(t) approximate sin(t). Consequently, (x(t) cos(t))2 + (y(t) −sin(t))2 does not tell anything. The only guarantee is that (x(t), y(t)), t ∈ [0, 1] approximates the circular arc between (cos(θ), −sinθ)) and (cos(θ), sin(θ)) for θ = 86.5°.
In the following section, the properties of the approximating quadratic Bézier curve are given.
4. Properties of approximating quadratic Bézier curve
In addition to the properties mentioned in the remarks after Theorem 3.1, some other properties are given in this section. The first is about the roots of the error functions e(t) and E(t) that are given in the following proposition.
Proposition 4.1.: The roots of the error functions e(t) and E(t) are: Because of symmetry, we have t1 + t4 = 1, t2 + t3 = 1.
Proof.: Substituting ti in e(t) gives e(ti) = 0, i = 1, 2, 3, 4. Since e(t) is a polynomial of degree 4 and thus has 4 roots, these are all the roots. The error function E(t) has the same roots of e(t) because E(t) = 0 if and only if if and only if x2(t) + y2(t) = 1 if and only if e(t) = 0. □
The quadratic Bézier curve in Theorem 3.1 and the circular arc intersect at the points p(t1), p(t2), p(t3), and p(t4).
In the following proposition, the extreme values of the error functions are given.
Proposition 4.2.: The extreme values of e(t) and E(t) occur at Because of symmetry, we have Moreover, the values of the error functions E(t) and e(t) at t̃i are given by Thus
Proof.: Differentiating e(t) gives a polynomial of degree 3. Substituting t̃1, t̃2, t̃3 gives e′(t̃i) = 0, i = 1, 2, 3. Since e′(t) is of degree three, these are all interior critical points. Checking at the end points adds t̃0 = 1, t̃4 = 0 to the critical points. Since thus differentiating E(t) and equating to 0 gives if and only if e′(t) = 0. Thus e(t) and E(t) attain the extrema at the same values. This completes the proof of the proposition. □
To get the solution in Theorem 3.1, some conditions were imposed on α, β, γ in (5). However, if the conditions on α, β, γ are removed, there will be other possible solutions. In the following section, all the possible (real) quadratic Bézier curves are listed.
5 All quadratic Bézier curves
If the conditions imposed on 𝛼, 𝛽, 𝛾 in (5) are removed, then the other solutions are given in the following theorem.
Theorem 5.1.: Removing the conditions on 𝛼 𝛽 𝛾 in (5), then the approximation problem has eight solutions; four of these solutions are complex and the other four are real. The real solutions are sign multiple of the solution in Theorem 3.1 and are summarized in the following table:
Proof.: The case of the first solution has been proved in Theorem 3.1. For each of the other three solutions, the same steps in Theorem 3.1 are carried out for the error function to get the monic Chebyshev polynomial of degree 4 that satisfies the conditions of the approximation problem. □
Remarks.: Table 1 lists all the (real) possible solutions to the approximation problem; fortunately, four out of the eight solutions are real, make sense, satisfy the three approximation conditions, and are related in being reflections to each other around the x- or y-axis. The second solution coincides with the first solution, but generated clockwise. The third and fourth solutions are reflections of the first solution around the y-axis, generated counter clockwise and clockwise, respectively. Sign of α is the same as the sign of γ. If sign of 𝛽 is positive then the curve is generated counter clockwise and if it is negative then the curve is generated clockwise. If sign of α is positive then the curve lies in the first and fourth quadrants, and if it is negative then the curve lies in the second and third quadrants. The third and the fourth solutions are reflections of the first and second solutions around the y-axis, respectively. The first solution is chosen because it is generated in the same direction as the circle is generated.
Table 1 lists all the (real) possible solutions to the approximation problem; fortunately, four out of the eight solutions are real, make sense, satisfy the three approximation conditions, and are related in being reflections to each other around the x- or y-axis. The second solution coincides with the first solution, but generated clockwise. The third and fourth solutions are reflections of the first solution around the y-axis, generated counter clockwise and clockwise, respectively.
Sign of α is the same as the sign of γ. If sign of 𝛽 is positive then the curve is generated counter clockwise and if it is negative then the curve is generated clockwise. If sign of α is positive then the curve lies in the first and fourth quadrants, and if it is negative then the curve lies in the second and third quadrants.
The third and the fourth solutions are reflections of the first and second solutions around the y-axis, respectively.
The first solution is chosen because it is generated in the same direction as the circle is generated.
Proposition 5.2.: For every t ϵ [0, 1], the errors of approximating the circular arc using the Bézier curves in Theorems 3.1 and 5.1 are given by: In the following section, examples and comparisons are given.
6 Examples and comparisons
Theorem 3.1 gives the best uniform approximation for To get other angles, the subdivision algorithm is usually used, but the error is not altered accordingly. To take advantage of the small error of Theorem 3.1, we divide the error function in equation (9) by a constant and apply the method. By trial and test, we get the constant s = 11.227225575 that corresponds to the quarter of the circle. Dividing equation (9) with s and solving it, then we get the Bézier points corresponding to the quarter of the circle with the parameters α = 0.707106781, β = 0.714936116, γ = 1.30399605. By rotating this Bézier curve we get the whole circle as shown in Fig. 5.
We compare our method in this paper with the other existing methods. All of the following methods are based on cubic Bézier curve representation of quarter of circle, except the work of Mørken .
In , a cubic parametric curve is represented; the end points and a point in the middle of the circular arc are interpolated; the error is 2.7 × 10–4 for a quarter of circle. A quarter of a circle is approximated by a cubic curve in  using the values and tangents at the end points with error 4.2 × 10–4. A general cubic scheme of order six is presented in  using values of positions, tangents, and curvatures at the endpoints. For a quarter of a circle, they got an error of 1.4 × 10–3. A cubic approximation for the circle of order six with error for a quarter of 1.4 × 10M–4 is given in . In , different types of cubic approximations of circular arcs of order six are considered; best error of a quarter is 2 × 10–4. In , the conjecture of high order approximation is illustrated; representation of a circular arc is given as an example with error about 2 × 10–3 for a circle quarter, see also [11, 13]. Quadratic splines are used in  to represent conic sections with high order. Quadratic methods are given in  to represent circular arcs with best error of 1 × 10–2.
The scheme in this paper represents a circular arc in an easy way while satisfying the approximation conditions of the best uniform approximation. The resulting error between the circle and the quadratic Bézier curve is 5.5×10–3. This example shows that the quadratic Bézier representation of circular arc competes with the other existing cubic Bézier representations of circular arcs. It has additional advantage that it is represented using three Bézier points making it affordable in all applications.
Fig. 5 and Fig. 6 illustrate the facts that were proved in the theorems and propositions. In particular, the approximating Bézier curves satisfy conditions of the approximating problem: p minimizes the uniform error maxt∈[0,1]|E(t)| and approximates c with order four, and the error function E(t) equioscillates five times over the interval [0, 1].
It is a challenging issue and is still an open problem to find the best quadratic uniform approximation of a function with the following properties: the error function equioscillates four times, the approximation order is three, and the curve and the approximation intersect three times.
Despite these challenges, we are able to find in this article the best quadratic uniform approximation of circular arcs with parametrically defined polynomial curve in explicit form. Fortunately, we did get better results than expected: the error function equioscillates five times (rather than four times); the approximation order is four (rather than three); the curve and the approximation intersect four times (rather than three times). Numerical examples are given in section 6 demonstrated the efficiency and simplicity of the approximation method.
Representing circular arcs using quadratic Bézier curves is needed in many applications. It is interesting to further investigate the following related issues:
Study quadratic approximation with G1–continuity using equioscillating error functions and constrained Chebyshev polynomials.
Find a way to write the Bézier points in terms of the angle θ. It would be very important to have the best approximation available for any θ perhaps by employing a semi-numerical method.
Apply these results in this paper to perform degree reduction of Bézier curves to get the best approximation with the minimum uniform error.
Moreover, it will also be interesting to approximate other kinds of curves using best uniform quadratic approximation that has order four, and the error function equioscillates five times. Even though it is a tough subject to find the best quadratic uniform approximation of a function with error that equioscillates four times, has approximation order three, and the function and the approximation intersect three times.
The author owes thanks to the reviewers for helpful and invaluable comments and suggestions for improving an earlier version of this paper.
G. Farin, Curves and Surfaces for Computer Aided Geometric Design, Academic Press, Boston (1988).
J. Hoschek and D. Lasser, Fundamentals of Computer Aided Geometric Design, A K Peters, Wellesley (1993).
H. Prautzsch, W. Boehm, M. Paluszny, Bézier and B-Spline Techniques, Springer (2002).
P. Bézier, The mathematical basis of the UNISURF CAD system, Butterworth-Heinemann Newton, MA, USA, ISBN 0-408-22175-5, (1986).
J. Blinn, How many ways can you draw a circle?, Computer Graphics and Applications, IEEE 7(8) (1987), 39-44.
C. de Boor, K. Höllig and M. Sabin, High accuracy geometric Hermite interpolation, Comput. Aided Geom. Design 4 (1988), 269-278.
T. Dokken, M. Dæhlen, T. Lyche and K. Mørken, Good approximation of circles by curvature-continuous Bézier curves, Comput. Aided Geom. Design 7 (1990), 33-41.
M. Floater, High order approximation of conic sections by quadratic splines, Comput. Aided Geom. Design 12 (1995), 617-637.
M. Goldapp, Approximation of circular arcs by cubic polynomials, Comput. Aided Geom. Design 8 (1991), 227-238.
K. Mørken, Best approximation of circle segments by quadratic Bézier curves, in Curves and Surfaces, P. L. Laurent, A. Le Méhaute, and L. Schumacker (eds.), Academic Press (1991), 331-336.
A. Rababah, Taylor theorem for planar curves, Proc. Amer. Math. Soc. 119(3), (1993), 803-810.
A. Rababah, High order approximation method for curves, Comput. Aided Geom. Design 12 (1995), 89-102.
A. Rababah, High accuracy Hermite approximation for space curves in <d, Journal of Mathematical Analysis and Applications 325(2), (2007), 920-931.
A. Rababah, The best uniform cubic and quartic approximation of circular arcs with high accuracy, preprint.
A. Rababah and S. Mann, Iterative process for G2-multi degree reduction of Bézier curves, Applied Mathematics and Computation 217(20), (2011), 8126-8133.
A. Rababah and S. Mann, Linear methods for G1, G2, and G3-multi-degree reduction of Bézier curves, Computer-Aided Design 45(2), (2013), 405-414.
J. Rice, The approximation of functions, Vol. 1: linear theory, Addison-Wesley, 1964.
About the article
Published Online: 2016-03-03
Published in Print: 2016-01-01
© 2016 Rababah, published by De Gruyter Open.. This work is licensed under the Creative Commons Attribution-NonCommercial-NoDerivatives 3.0 License. (CC BY-NC-ND 3.0)