Floating End Condition

Closed End Condition

Open End Condition

Multiple Verticies

 


Floating End Condition

Some designers are particularly concerned about the ends of the curve. When we have an arbitrary knot sequence, most likely the ends of the curve do not interpolate the ends of the control polygon. This is called floating end condition. Uniform knot spacing is a good example of floating end condition. Since the outermost two knots do not contribute to the curve definition we can ignore them.

Closed End Condition

If we make the spacing between the first (K+1) knots to be the same as the spacing between the last (K+1) knots, where K is the order, and let the first (K-1) vertices overlap with the last (K-1) vertices, we have a closed curve. This is called closed end condition. The curve remains closed as long as the knot spacings are kept the same, and the vertices are overlapped. Furthermore, if the knots are wrapped around and made into a periodic sequence, then the curve is a periodic curve. Note that the basis functions are connected in a smooth way. This is why the curve ends are merged with CK-2 continuity, where K is the order.

Open End Condition

Some designers prefer the curve interpolate the ends of the control polygon by enforcing multiple knots with multiplicity equals to the order, and call it open end condition. Furthermore, they also make all the interior knots to be evenly spaced. Other people, however, still prefer uniform knot spacing, mostly for simplicity. Let us return our attention to the curve space and start playing with vertices.

Multiple Vertices

Suppose we line up K consecutive vertices, where K is the order. The curve will contain a line segment. This is easy to see because the convex hull formed by these K vertices is squeezed into a line segment. Next, let us demonstrate the effect of multiple vertices. If we move these vertices to make a triple vertex, the curve passes through it. In general, stacking up (K-1) vertices will effectively force a positional interpolation. But there is more. In addition to forcing an interpolation, it also makes the curve contain linear segments. This is because the convex hull formed by the (K-1) identical vertices plus the K-th one is also squeezed into a line segment. Therefore when one stacks up vertices to force an interpolation, be aware of this extra side effect that may or may not be desirable.

Consider a cubic curve with uniform knots. The same set of control vertices can be used for a quadratic curve with uniform knots. Over each interval we have exactly three basis functions, and the convex hulls are formed by successive three control vertices. Notice that these curve segments are also known as conic sections. When the same set of control vertices are used for a linear curve with uniform knots, the curve coincides with the control polygon. This is a quartic curve with uniform knots. Over each interval we have exactly five basis functions, and the convex hulls are formed by five successive control vertices. In all the cases, the affine invariance, convex hull property, locality properties, continuity and variation diminishing property, they all hold.

Going downward with the degrees, let us see the cases of open end condition, with uniform interior knots. You probably have noticed by now that as we lower the degrees, the curve gets closer and closer to the control polygon and finally, when it is linear case, the curve is identical to its control polygon.