Designing planar cubic B-spline curves with monotonic curvature for curve interpolation

Monotonic curvature plays an important role in industrial design and styling of curves with aesthetic shapes, e.g., in automobile and aircraft design [1]. Used in conventional parametric CAD/CAM systems, general B-splines are not adequate for aesthetic requirements. Except for the straight line and circle, monotonic curvature distribution, associated with pleasing shape, is very difficult to achieve. So Farin suggested that a fair curve has a curvature plot with relatively few regions of monotonically varying curvature. Starting from this basis, work on B-spline fairing was developed mainly in three direction: knot-removal-reinsertion methods, optimization methods based on minimizing an energy function, and filtering approaches based on B-spline wavelets. Visual curve completion (interpolating a curve segment, with continuity, to fill a gap) is a fundamental problem for human visual understanding [2]. Aesthetically pleasingly shaped curves usually have monotonically varying curvature [3]. While the shape of a curve is primarily defined by its curvature distribution, monotonicity of curvature is not easily achieved and controlled. To overcome this problem,

we present a construction approach for B-spline curves, which guarantees monotonic curvature by enforcing simple geometric constraints on the control vectors.
Euler curves have the useful property that their curvature changes linearly with arc length, so are widely used in modeling and shape interpolation [4][5][6]. However, Euler curves also have disadvantages for curve interpolation. Firstly, they are defined by transcendental functions, requiring complex mathematical expressions which are difficult to compute. Secondly, given two endpoints with associated tangents, there is no exact solution for an Euler curve. Thirdly, Euler curves are not compatible with current CAD software systems, which are based on NURBS. In order to overcome these drawbacks of Euler curves, we have developed a new interpolation algorithm for cubic B-spline curves, with advantages of simple computation, exact interpolation and compatibility with existing CAD systems.
1 Planar cubic B-spline curves with monotonic curvature

Theory
In this paper, we consider cubic curves. A planar B-spline curve of degree three is defined by where C i are control points (see Fig. 1(a)), and N i,3 (t) are B-spline basis functions defined on the knot vector t = [t 0 , . . . , t n+3 ]. The derivatives of this curve can be expressed as (2) where P (t) is the first derivative of the B-spline curve, and C 1 i represents its corresponding control points (see Fig. 1(b)). Proceeding further, we obtain where P (t) is the second derivative, and C 2 i represents the corresponding control points (see Fig. 1(c)). Now consider a B-spline curve segment with four control points. It can be represented as We construct a local coordinate system. Specifically, let the direction of the first control vector be the x-axis, and C j−3 be the origin (see Fig. 2).
Next, we prove that if the following three geometrical Lemmas are satisfied, the B-spline curve segment on [t j , t j+1 ] has monotonic curvature.

Lemma 1. If the first and second derivative control points {C
Proof. From P (t) = (P (t)(P (t)) T ) 1/2 , we can derive Thus, if P (t) and P (t) are in the same quadrant, As where s denotes slope (see Fig. 1(d)), then sin( P (t), P (t) ) 0 for t ∈ [t j , t j+1 ], where denotes the angle between two vectors.
Proof. As the vector C 1 , from the variation diminishing property, we can derive that 0 ∠ P (t + Δt), We may now prove the following theorems. Theorem 1. If a B-spline control polygon satisfies Lemmas 1-3, then the curvature of the curve segment is monotonic.
Proof. If Lemmas 1-3 are satisfied, then (i) . Then, we can conclude that κ(t + Δt) κ(t) as 0. Therefore, the curvature κ(t) is a decreasing function for t ∈ [t j , t j+1 ], and this curve segment has monotonic curvature. Theorem 2. If (i) C 2 j−2 is located in a fair location (defined in Fig. 3 j−2 } are located in the same quadrant, then the curvature of the associated B-spline curve segment on [t j , t j+1 ] is monotone. Proof. If the given geometric conditions are satisfied, we have (i) Fig. 3). Thus, Theorem 1 is satisfied by the B-spline curve segment, proving the result.  Fig. 4), the control polygon satisfies the three geometric conditions. Thus, the corresponding B-spline curve segment has monotonic curvature.

Designing cubic B-spline curves with monotonic curvature
Using the result in Theorem 2 as a basis, our design approach may be summarized in the following steps.

Fix the first B-spline control vector. Let
Therefore, the designed curve has monotonic curvature. Pseudocode is given in Algorithm 1.

Curve interpolation with B-spline curves with monotonic curvature
We now consider curve interpolation: given two specified endpoints with associated tangent directions, we wish to find a curve satisfying these G 1 conditions. See Algorithm 2, which uses a knot sequence which is uniformly spaced everywhere except at its ends. Due to affine invariance, without loss of generality we can fix the origin at the initial control point C 0 , and set the x axis to the tangent direction T 0 (see Fig. 8). The end control point should be located in the first quadrant with a proper tangent direction, limited between the two dashed lines (see Fig. 8).

Examples of curve interpolation
This section gives examples to demonstrate the effectiveness of our new design approach.
The first example is a cubic B-spline curve with five control points (see Fig. 10(a)). From Theorem 1, it can be inferred that the B-spline curve has monotonic curvature, as confirmed in Fig. 10(b).  Figures 11-13 show applications of Algorithm 2 to curve completion for occluded objects. Figure 11(a) is a partially occluded bird; in Fig. 11(b) we use a cubic B-spline curve constructed by our method to complete its boundary. Figure 12 shows an example of leaf vein  completion. Lastly, the curve in Fig. 13 completes the edge of a wine glass in an artistic photograph.