## 1 Introduction

The exponential polynomials that lie in the null spaces of constant coefficient linear differential operators have nice properties and they have often been used for the construction of curves and surfaces in the fields of computer aided geometric design [1, 7, 10]. The frequently used exponential polynomials are polynomials, trigonometric functions, hyperbolic functions or their mixtures. Besides polynomial curves and surfaces, typical curves and surfaces such as ellipses, cycloids, involute, helices, etc. can be represented by exponential polynomials exactly [15, 19, 22, 30]. By choosing a proper parameter interval, normalized B-bases that are useful for optimal shape design can be obtained from the exponential polynomials [4, 16, 23, 25]. Algebraic trigonometric polynomials can be used to define curves intrinsically or design curves with Pythagorean hodographs [27, 21, 20].

Many algorithms have been given in the literature to evaluate single or sequences of points and derivatives on polynomial curves and surfaces. The de Casteljau algorithm or the rational de Casteljau algorithm can be employed to robustly evaluate single points on Bézier or rational Bézier curves [7, 5]. If for rendering or machining purposes, sequences of points have to be evaluated in an efficient way [6, 8]. Particularly, the forward differencing approaches have been successfully employed for fast rendering of Bézier or NURBS (Non-Uniform Rational B-spline) curves and surfaces [13, 14].

Differently from polynomial curves and surfaces that can be evaluated by arithmetic operations, points on curves and surfaces which are constructed by transcendental functions or mixtures of polynomials and transcendental functions have to be evaluated by inquiring pre-computed special function tables or loading special mathematical libraries. Though this seems feasible for many modern computing machines [11, 18], evaluating general exponential polynomial curves and surfaces by only arithmetic operations without any pre-computed tables or special math library can have its own advantages. Particularly, the speed and efficiency of evaluation play important roles in the fields of CNC machining and interactive rendering.

Recently, we have shown that free-form curves used in CAGD are usually the solutions of linear differential systems and points and derivatives on the curves can be obtained by solving the linear differential systems numerically [29]. Particularly, when the parameter step is fixed, points on the curve can be evaluated dynamically by multiplying a pre-computed constant matrix with prior points. When an iso-parameter curve on a surface is to be evaluated, a differential system will first be established and a transformation matrix will be computed based on the differential system for evaluating the curve. The method is simple and universal and points on polynomial as well as transcendental curves can be evaluated with only arithmetic operations. However, the evaluation accuracy varies much when the differential systems have been solved by different numerical methods or the parameter step has been chosen different values. If the constant matrix for dynamic evaluation is given by the exponential of the coefficient matrix of a linear differential system, careful attention should be paid for robust computation of the matrix [17].

Instead of solving linear differential systems numerically, in this paper we derive the constant matrices for dynamic evaluation of curves and surfaces using basis transformation. This is based on the fact that spaces spanned by the exponential polynomial basis are invariant with respect to the translation of the parameter while curves and surfaces used for CAGD are usually constructed by exponential polynomials. By using identities of exponential polynomials, we compute explicitly the transformation matrices between bases with or without the translation of the parameter. Combined with control points, a constant matrix for evaluating points on an exponential polynomial curve with equal parameter steps is derived. It is also noticed that a polynomial space of degree no more than a given number is even invariant with respect to any linear transformation of the parameter. The matrix for polynomial basis transformation can then be used to evaluate points on polynomial curves with changing parameter steps. Based on basis transformation, a family of surface curves with various iso-parameters can be evaluated dynamically using a single matrix and surface curves with skew parametrization can also be evaluated dynamically with a pre-computed constant matrix.

The rest of the paper is structured as follows. In Section 2 we present explicit formulae for computing basis transformation for exponential polynomials. In Section 3 robust algorithm for evaluating points on general exponential polynomial curves with fixed parameter steps, dynamic algorithm for evaluating polynomial curves with changing parameter steps, and dynamic algorithms for evaluating iso-parameter curves on surfaces or surface curves with skew parametrization will be given. Examples and comparisons with some known methods for curve and surface evaluation are given in Section 4. Section 5 concludes the paper with a brief summary of our work.

## 2 Basis transformation for spaces composed of exponential polynomials

As parametric curves and surfaces are usually defined by basis functions together with coefficients or control points, a parametric curve or surface can then be evaluated efficiently by exploring distinguished properties of the basis. This section presents explicit transformation formulae for exponential polynomial basis which will be used for robust and efficient curve or surface evaluation in next section.

### 2.1 Spaces spanned by exponential polynomials

Suppose that a linear differential operator with constant coefficients is given by

where , , and is closed under conjugation. A function that satisfies is referred an exponential polynomial. Let be the null space of the linear differential operator. From the knowledge of differential equation [2] we know that , where , , are the basis functions of the space. Based on the definition of exponential polynomials we have the following proposition.

###### Proposition 1

Suppose that is a constant coefficient linear differential operator and is the null space of the operator. Let be an arbitrary given real number. If function satisfies , it yields that and .

Proposition 1 states that the null space of a linear differential operator is closed with respect to a differentiation and the space is also invariant with respect to any translation of the parameter.

Before deriving formulae for basis transformation, we present the definition of union or product of two sets of bases. Assume and

, where the capital ’T’ means the transpose of a vector or matrix. The union of

and is given by(1) |

Let . The product of and is obtained as

(2) |

###### Proposition 2

Suppose spaces spanned by basis or are closed with respect to a differentiation. Then, spaces spanned by the union or by the product are also closed with respect to a differentiation.

###### Proof

Because spaces spanned by or are closed with respect to a differentiation, there exist matrix of order and matrix of order such that and . Then, the derivative of can be computed as

Let and be the identity matrices of order or order , respectively. The derivative of can be computed by

Therefore, the spaces spanned by or by are also closed under differentiation. This completes the proof.

In the following we assume that the basis functions are real. Particularly, we assume that the bases are obtained by unions or products of a few elementary basis functions. Let , and

. The basis functions for free-form curves and surfaces in CAGD can usually be obtained by recursive compositions or tensor products of the elementary bases. Several popular basis vectors for construction of free-form curves and surfaces in CAGD and their elementary decomposition can be found in Table

1.### 2.2 Transformation of general exponential polynomial basis with parameter translation

In this subsection we show that the space spanned by general exponential polynomial basis is invariant with respect to a translation of the parameter and a simple and robust method for computing the transformation matrix between different bases will be presented.

###### Proposition 3

Suppose is closed with respect to a differentiation. Let be an arbitrary real number. It yields that . There exists a matrix such that .

###### Proof

Because , , there exists a matrix such that satisfies a linear differential system

(3) |

From Equation (3), can be represented as . Therefore, we have . Let . Since and , we have . This proves the proposition.

###### Proposition 4

Suppose and , , . The space is invariant when parameter or parameter or both of the two parameters have been translated.

###### Proof

We first prove that the space is invariant when the parameter or has been translated. Let . Because , , there exists matrix such that the basis vector satisfy . Therefore, we have for any selected real number . From this expression of , we have . Similarly, we have . Denote and . Because matrices and are non-singular, it implies that both and are basis vectors of the space .

Now we prove that the space is invariant when both parameters and have been translated. In fact, . Since , we concludes that is also the basis vector of space .

Though the transformation matrices for bases with or without translation of the parameters are defined by exponentials of constant matrices, accurate and efficient evaluation of exponentials of matrices is not a trivial task [17]. We propose to compute the transformation matrix for exponential polynomial basis with translated parameter directly. Particularly, we derive the transformation matrices for polynomials, trigonometric functions and hyperbolic functions using the identities of the functions first and then compute the transformation matrices for even more general basis through their elementary decompositions.

Assume , and are the basis vectors as given in Subsection 2.1. With simple computation, the transformation for basis vector can be obtained as , where

Similarly, the transformation matrices for and are

and

respectively. It yields that and .

For a small parameter step , the values of , , and can be computed efficiently with only arithmetic operations by Taylor expansion:

The above expressions can be evaluated by Horner algorithm in practice. From the definition of and we know that and . If the parameter step is larger than a threshold, for example , we can choose a proper integer and compute the elements of matrix or first, and then compute the matrix or by matrix multiplication. Similarly, transformation matrices with other parameter steps can be computed by , , etc.

Assume the transformation matrices for or are and , respectively. The transformation matrix for can be computed as

(4) |

The transformation matrix for is obtained as follows

(5) |

where is also known as the Kronecker product of two matrices.

Similar to the product of two univariate bases, the transformation matrix for the tensor product basis of a surface can be computed easily. Suppose that , and , the transformation matrix for is computed by

(6) |

By Equations (4), (5) and (6), the transformation matrices for even more complicated basis will be computed accurately and robustly.

### 2.3 Transformation of polynomial basis with linear transformation of the parameter

In this subsection we show that space of polynomials of degree no more than a given number is invariant with respect to a linear transformation of the parameter. Particularly, the transformation matrix for Bernstein basis will be given.

###### Proposition 5

Let . The space is invariant with respect to a linear transformation of the parameter.

###### Proof

Let . Assume and are real numbers. Replacing within by , we have , where

Because , we have . Therefore, is another set of basis of the space . The proposition is proven.

Besides power basis, another popular basis used for polynomial curve and surface modeling is Bernstein basis. We derive transformation matrix for Bernstein basis under a linear transformation of the parameter. The transformation matrix will be used for dynamic evaluation of Bézier curves and surfaces with constant or changing parameter steps.

###### Proposition 6

Assume , where , , are Bernstein basis functions. Assume are real numbers. Then the basis vector satisfies

(7) |

where

and , .

###### Proof

Let , , , . The basis vector can be represented as . Assume and are identity or shift operators which satisfy and . The basis vector can be reformulated as . Then we have

where

As , , representing in matrix form, we have

This proves the proposition.

## 3 Dynamic evaluation of exponential polynomial curves and surfaces

In this section we show that curves and surfaces defined by basis and control points can be evaluated dynamically by applying the basis transformation recursively. If a linear differential system is available, the derivatives of the curve or surface at the evaluated points can be obtained simultaneously.

### 3.1 Dynamic evaluation of exponential polynomial curves

Suppose a free-form curve is defined by , where , , are the control points. Let . The curve can be represented as , where and is also referred as the normal curve in [9]. If , we first lift all control points in space by adding additional coordinates as that presented in [29]. Assume the lifted curve is , where , . When a point on has been evaluated, the point on will be obtained just by choosing the first few coordinates.

Suppose that the space is closed under a differentiation and the matrix is nonsingular. The curve is formulated as . From Proposition 3 we know that the basis vector satisfies . Therefore, all points on curve satisfy . Substituting , we have , where . Suppose an initial point at parameter is known, points with a constant time step will be computed dynamically as follows

(8) |

where . From Equation (3) we know that . Then we have , where . The derivatives at the evaluated points are obtained as , , etc.

As discussed in Subsection 2.3 the polynomial spaces are invariant under a linear transformation of the parameter. Points with changing parameter steps on a polynomial curve can be evaluated by a fixed iteration matrix. Assume be the basis vector as given in Proposition 6. By applying a linear transformation that maps interval to , the basis vector becomes . A polynomial curve satisfies , where . Starting from an initial point , a sequence of points on curve will be computed by

(9) |

where

A linear differential system that represents the Bézier curves has been given in [29]. By the differential system, the derivatives at any evaluated point on a Bézier curve can be obtained just by multiplying the coefficient matrix with the point.

### 3.2 Dynamic evaluation of exponential polynomial surfaces

Similar to free-form curves, a bivariate surface can also be reformulated as the solution to a linear differential system when the space spanned by the basis functions is closed with respect to the partial differentials. Iso-parameter curves and surface curves with skew parametrization can be computed dynamically via basis transformation.

Dynamic evaluation of iso-curves of free-form surfaces. Suppose a surface is given by , where , , are the control points and , , are the basis or blending functions. Assume the matrix is nonsingular and the space is closed with respect to the partial differentiation and . Let . The surface is reformulated as . From Proposition 4 we know that and . Let and . The iso-parameter curves or points on the -curves or -curves can be computed dynamically by

(10) |

or

(11) |

From the proof of Proposition 4 we also know that and . Therefore, the derivatives of can be computed by

where and . Besides the first order derivatives, higher order derivatives can also be computed by multiplying these two matrices repeatedly. For example, , .

Dynamic evaluation of surface curves with skew parametrization. In addition to the iso-parameter curves, curves with skew parametrization on a surface can satisfy differential equations and can be evaluated dynamically too. Assume is a tangent smooth curve in the parameter domain. A surface curve is obtained as . The derivative of the surface curve is

By substituting , we obtain a linear differential system

(12) |

where . In particular, if and are linear functions, i.e., and , it yields that , , and is a constant matrix.

Assume and are linear functions, we evaluate a sequence of points on curve by basis transformation. Suppose that the point

Comments

There are no comments yet.