Shape control tools for periodic Bézier curves

Bézier curves are an essential tool for curve design. Due to their properties, common operations such as translation, rotation, or scaling can be applied to the curve by simply modifying the control polygon of the curve. More flexibility, and thus more diverse types of curves, can be achieved by associating a weight with each control point, that is, by considering rational Bézier curves. As shown by Ramanantoanina and Hormann [ 7 ] , additional and more direct control over the curve shape can be achieved by exploiting the correspondence between the rational Bézier and the interpolating barycentric form and by exploring the effect of changing the degrees of freedom of the latter (interpolation points, weights, and nodes). In this paper, we explore similar editing possibilities for closed curves, in particular for the rational extension of the periodic Bézier curves that were introduced by Sánchez-Reyes [ 9 ] . We show how to convert back and forth between the periodic rational Bézier and the interpolating trigonometric barycentric form, derive a necessary condition to avoid poles of a trigonometric rational interpolant, and devise a general framework to perform degree elevation of periodic rational Bézier curves. We further discuss the editing possibilities given by the trigonometric barycentric form.


Introduction
We recall that a Bézier curve P : [0, 1] → 2 , defined by the control points P 0 , . . ., P n ∈ 2 , is given by where B n i (t ) = n i (1 − t ) n −i t i denotes the i -th Bernstein polynomial of degree n .The only shape controls induced by this formula are the control points P i , which can be used to intuitively modify the shape of the curve P .By associating a scalar α i ∈ with each P i , we obtain a rational Bézier curve The additional degrees of freedom α 0 , . . ., α n can be used to induce a push or pull effect towards the control polygon.New shape controls for rational Bézier curves can be achieved by expressing the curve in barycentric form.We recall that a barycentric rational curve Q : [0, 1] → 2 , defined by the distinct nodes t 0 , . . ., t n ∈ [0, 1], the interpolation points Q 0 , . . .,Q n ∈ 2 , and the non-zero weights β 0 , . . ., β n ∈ , is given by The possibility of converting back and forth between the rational Bézier form (1) and the barycentric form ( 2) is described by Ramanantoanina and Hormann [7].Due to the interpolation property Q (t i ) = Q i for any i = 0, . . ., n , the barycentric form offers a more direct control over the curve and can be used to force the curve to pass through specific points, which is much harder to achieve using the rational Bézier form.Ramanantoanina and Hormann [7] also analyse the effect of changing the other parameters of the barycentric form, namely the nodes t i and the weights β i .In particular, they describe how to slide a point Q k along the curve by modifying the corresponding node t k and suitably adjusting the weights without changing the shape of the curve, and how to control the flatness of the curve at Q k by modifying β k .To this end, they derive the formula for the tangent vector Q ′ (t k ) from the formula of the derivatives of a barycentric rational interpolant [10] and show that only the length of this vector depends on β k , but not its direction.Geometrically, this means that decreasing β k flattens a curve locally around Q k , while increasing β k forces  Bézier curve to control the shape (b,c), which is intuitive, but requires skill and experience to exactly reproduce the shape in (a).Instead, after converting the Bézier curve in (c) to the interpolating barycentric form (d), it is possible to edit the curve by dragging the interpolation points and forcing the curve to pass through a certain set of key points on the desired shape (e) and then adjusting the shape by modifying the flatness at these points (f ). the curve to bend more tightly at Q k .They further describe how to insert a new interpolation point without changing the shape of the curve, which effectively raises the degree of the curve from n to n + 1. Figure showcases the advantages of editing a curve using the barycentric form.
While the aforementioned constructions are only for open curves, the goal of this paper is to derive similar shape control tools for closed curves.One option would be to close the rational Bézier curve in (1) by aligning the end points, that is, by letting P 0 = P n , resulting in C 0 -continuity, and higher orders of continuity can be achieved by further constraining control points and weights.For example, C 1 -continuity is ensured if α 1 α n (P 1 − P 0 ) = α 0 α n−1 (P n − P n −1 ).Another option would be to consider Bézier splines or B-splines, but all these approaches result in curves with a finite order of differentiability.
A third option is to consider periodic Bézier curves [9].These curves are closed and smooth (that is, C ∞ ) everywhere and inherit many important properties from classical Bézier curves.The main idea behind their construction is to replace the Bernstein polynomials by shifted versions of a periodic function that imitates the shape of a central Bernstein polynomial (see Figure 2).A periodic Bézier curve P : [0, 2π] → of degree N ∈ with control points P 0 , . . ., P n ∈ 2 , where n = 2N , is defined as , and φ i = 2i π n+1 for i = 0, . . ., n .Since cos n t 2 = (1+cos t ) N /2 N , it is clear that this is a trigonometric polynomial curve of degree N .

Contributions
We extend the construction of periodic Bézier curves in the same way that Bézier curves are extended to rational Bézier curves.Namely, we introduce a weight α i for each control point P i of a periodic Bézier curve and then project the spatial periodic Bézier curve with control points (α i P i , α i ) ∈ 3 centrally into the z = plane.Hence, a periodic rational Bézier curve with control points P 0 , . . ., P n ∈ 2 and weights α 0 , . . ., α n ∈ is given by Notice that P (t ) reduces to a trigonometric polynomial curve if all weights α i are equal.
Recall that our goal is to explore the possibility of converting the periodic rational Bézier form in (3) to an interpolating barycentric form and to investigate the shape control possibilities that the latter offers.In the periodic setting, the equivalent of the barycentric rational curve in (2) turns out to be the trigonometric barycentric rational curve Q : [0, 2π] → 2 , defined by the distinct nodes t 0 , . . ., t n ∈ [0, 2π), the interpolation points Q 0 , . . .,Q n , and the non-zero weights β 0 , . . ., β n ∈ , and given by where csc(t ) = 1/ sin(t ).
We first show (Section 2) how to convert back and forth between the periodic rational Bézier form (3) and the trigonometric barycentric form (4).In this context, we also develop a necessary condition on the weights β i to assure that the curve Q (t ) has no poles.We then explore the shape control offered by the trigonometric barycentric form, namely, by modifying the interpolation points, the nodes, or the weights (Section 3).Finally, we present three algorithms for performing degree elevation of a periodic rational Bézier curve (Section 4), using either the discrete Fourier transform as in [9] or a direct conversion of the old to the new control points, or by inserting two new interpolation points into the trigonometric barycentric form such that the shape of the curve remains the same.

Equivalence of periodic rational Bézier and trigonometric barycentric form
Let us first recall how to convert a trigonometric polynomial into barycentric form [8,4,1]. Consider the trigonometric polynomial ), where n = 2N .It is well known that p can be expressed in terms of the values p i = p (t i ), i = 0, . . ., n as which is commonly known as Gauss's formula for trigonometric interpolation [8] and akin to the Lagrange form for classical polynomials.Factoring out the product ℓ(t ) = n j =0 sin t −t j 2 , we get the first trigonometric barycentric form of p , where Note that in the special case of equidistant nodes t i = 2i π n +1 , i = 0, . . ., n , Berrut [1] shows that the weights are simply W i = (−1) i W 0 .We can further write p in second trigonometric barycentric form after dividing (5) by the constant function 1, expressed in first trigonometric barycentric form as 1 = ℓ(t 2 , and cancelling the factor ℓ(t ), In particular, we can use the first trigonometric barycentric form to convert a periodic rational Bézier curve into trigonometric barycentric form.
Proposition 1.For any sequence of nodes 0 ≤ t 0 < • • • < t n < 2π, we can express the periodic rational Bézier curve P (t ) in (3) in trigonometric barycentric form (4) with Q i = P (t i ) and Proof.We first express the denominator z (t ) and the numerator of P (t ) in first trigonometric barycentric form (5) as We then divide ( 8) by (7), cancel the factor ℓ(t ), and substitute P (t i ) = Q i and W i z (t i ) = (−1) i β i to arrive at the trigonometric barycentric form (4).
Since each of the (n + 1) 2 terms B n (t i −φ j ) can be computed in O (log n ) and each weight for i = 0, . . ., n , the relations ( 7) and ( 8) can be written compactly as Q = B P , where This is useful for showing how to get back from the trigonometric barycentric form to the periodic rational Bézier form.
Proposition 2. We can express the trigonometric barycentric rational curve Q (t ) in (4) as a periodic rational Bézier curve (3) with control points P i = ( xi , ŷi )/ ẑi and weights α i = ẑi , where ( xi , ŷi , ẑi ) is the i -th row of P = B −1 Q , as long as all ẑi are non-zero.
Proof.Given Q (t ), we first use the nodes t i to compute the W i as in ( 6), then use the weights β i to set The statement then follows from the fact that Q = B P , but it remains to show that B is invertible.
To this end, we first recall from [9] that the n + 1 functions B n (t − φ i ), i = 0, . . ., n span the (n + 1)dimensional space T N = span{cos(k t ), sin(k t ) : k = 0, . . ., N } and are thus linearly independent.Moreover, any non-trivial linear combination of these functions is a trigonometric polynomial of order N and as such has no more than 2N = n zeros [6].Consequently, the functions B n (t − φ i ) form a Chebyshev system, which implies that B is non-singular.
The time complexity of this conversion is O (n 3 ), since this is the time that it takes in general to solve the dense linear system Q = B P .If one or more of the ẑi in Proposition 2 vanish, then this means that the curve cannot be represented in periodic rational Bézier form, unless we extend the definition to allow for infinite control points, like in the case of classical rational Bézier curves [5,3,7].Alternatively, we can apply degree elevation (see Section 4) to represent the curve as a periodic rational Bézier curve with higher degree.
Because of the equivalence of the periodic rational Bézier form (3) and the trigonometric barycentric form (4), we will use P (t ) and Q (t ) interchangeably from now on to refer to the same periodic rational curve, given in either of the two forms.One important aspect when modelling with periodic rational curves it to ensure that they are free of poles.On the one hand, this is guaranteed for P (t ) if all weights α i are positive, since this implies that the denominator z (t ) is positive, too, for all t ∈ [0, 2π].On the other hand, it is less clear which choice of weights β i guarantees that the denominator of Q (t ) does not vanish for some t ∈ [0, 2π], because the functions (−1) i csc t −t i 2 are neither entirely positive nor entirely negative.However, Berrut [2] shows that Q (t ) has no poles if all β i are equal to some common non-zero value, and we also know that β i = (−1) i W i for i = 0, . . ., n with W i defined as in ( 6) is a safe choice, because Q (t ) is a trigonometric polynomial curve (in second trigonometric barycentric form) in that case.Since the factors of W i in (6) are negative for i < j and positive for i > j , if we assume the t i to be ordered and in [0, 2π), and n = 2N is even, it is clear that sign(W i ) = (−1) i and that the β i are all positive in this case.This is actually not surprising, because it turns out that a common sign of the β i is a necessary condition for the absence of poles, exactly as for classical barycentric rational interpolants [10].
Proof.If we follow Proposition 2 and convert Q (t ) into the spatial periodic Bézier curve P (t ) with control points Pi , without projecting P (t ) centrally into the z = 1 plane to get P (t ), then it is clear that the zcomponent of P (t ), which is nothing but the denominator z (t ) of P (t ), does not vanish for any t ∈ [0, 2π], because Q (t ) is free of poles.It then follows from Proposition 1 that the β i = (−1) i W i z (t i ) are all either positive or negative, because sign(W i ) = (−1) i , as pointed out above.
Since the weights α i and β i can always be scaled by a common non-zero factor without changing the curve, we can summarize these considerations crisply as: positive α i are sufficient, but not necessary for the absence of poles, and positive β i are necessary, but not sufficient.

Shape editing using the trigonometric barycentric form
The equivalence of the periodic rational Bézier and the trigonometric barycentric form enables new editing possibilities for periodic rational Bézier curves, beyond changing the control points P i and the associated weights α i , by modifying the parameters of the trigonometric barycentric form, namely the interpolation points Q i , the nodes t i , and the weights β i , similar to how it can be done for classical rational Bézier curves [7].

Displacing an interpolation point
The interpolation property of the trigonometric barycentric form provides an intuitive means to modify the curve by displacing an interpolation point Q k (see Figure 4.b).This is particularly useful for forcing the curve to pass through a specific target point, which is much harder to achieve by changing the Bézier control points P i .However, in contrast to the basis functions α i B n (t − φ i )/ n j =0 α j B n (t − φ j ) of the periodic rational Bézier form, the basis functions (−1) i csc 2 β j of the trigonometric barycentric form are neither non-negative nor as nicely bell-shaped and a large displacement of some Q k might therefore induce a less intuitive global deformation of the curve's shape.Hence, while displacing the interpolation points is good for micro-editing the shape, the Bézier control points remain the better handles for global shape design.

Sliding an interpolation point
For the same reason as before, changing the value of a single node t k may deform the curve in a non-intuitive way.However, it is possible to update simultaneously the interpolation point Q k and all the weights β i , such that changing a node t k results in sliding Q k along a curve.This can be achieved in two ways.On the one hand, we can use Proposition 2 to express Q (t ) in periodic rational Bézier form using the current sequence of nodes and then convert P (t ) back into trigonometric barycentric form with Proposition 1, this time with the new sequence of nodes, where t k is replaced by some new value tk : convert to periodic rational Bézier form with respect to t 0 , . . ., t k , . . ., t n P (t ) convert to trigonometric barycentric form with respect to t 0 , . . ., tk , . . ., t n On the other hand, we can also compute the parameters of the new curve Q (t ) directly.
Proposition 4. Suppose we change the node t k for some k ∈ {1, . . ., n − 1} to a new value tk ∈ (t k −1 , t k +1 ).The trigonometric barycentric rational curve Q (t ) in (4) can then be expressed in terms of the nodes t 0 , . . ., tk , . . ., t n , the interpolation points Q 0 , . . ., Qk , . ..Q n , and the weights βi , where Qk = Q ( tk ) and Proof.We follow the diagram in ( 9) and first convert Q (t ) to periodic rational Bézier form (3). By Proposition 1, we then know that the weights of the given curve Q can be written with respect to the given nodes t 0 , . . ., t n as β i = (−1) i W i z (t i ), where z (t ) is the denominator of P (t ) and W i is defined as in (6).It further follows from Proposition 1 that Q can be expressed with respect to the new nodes t0 , . . ., tn , where ti = t i for i ̸ = k , using the new interpolation points Qi = P ( ti ) and the new weights βi = (−1) i Wi z ( ti ), where Wi = n j =0, j ̸ =i csc ti − t j 2 .Clearly, Qi = P (t i ) = Q i for i ̸ = k and Qk = P ( tk ) = Q ( tk ).To prove the formulas in (10), we recall that z (t ) can be expressed in first trigonometric barycentric form as Figure 4.d shows that modifying a single node t k and updating the interpolation points and weights as described in Proposition 4 does not change the shape of the curve, but only the position of Q k .
Remark 1.We restrict the new value tk to be in the interval (t k −1 , t k +1 ) in Proposition 4 and exclude the cases k = 0 and k = n , so as to keep the statement and the proof simple, but we can also deal with the case tk We just need to make sure that the indices are rearranged such that the new nodes are ordered, and this rearrangement requires to change the signs of some weights, so that they all end up having the same sign.For example, if 0 < l < k , then we can compute the weights βi as in (10) and then define the correctly ordered nodes ti , interpolation points Qi , and weights βi as A similar rearrangement table can be derived if k + 1 < l ≤ n and also for the cases tk ∈ [0, t 0 ) and tk ∈ (t n , 2π).
It is then natural to ask what happens when tk jumps from one interval to the neighbouring interval, for example, as tk transitions from (t k −1 , t k +1 ) to (t k +1 , t k +2 ).This can be seen as an elastic collision where Q k slides towards Q k +1 , swaps the order in the moment of collision, and afterwards continues to slide as Q k +1 .As long as h = t k +1 − tk > 0, Proposition 4 can be used to update all parameters, but it follows from (10) that βk and βk+1 grow like O (1/h ) as h converges to zero.If h is very small, this may lead to numerical instabilities.However, this can be avoided in an application by limiting the maximal zoom factor and not letting the user move Q k closer than one pixel towards Q k +1 .In the moment of collision, when tk = t k +1 , the trigonometric barycentric form breaks down as the weights βk and βk+1 in (10) diverge, but we can still derive a formula for the curve Q in this state.Proposition 5.If the node t k for some k ∈ {0, . . ., n − 1} is set to the new value tk = t k +1 , resulting in a double node t k +1 , then we can express the trigonometric barycentric rational curve in (4) as Proof.If tk ∈ (t k −1 , t k +1 ), then we know from Proposition 4 that Q (t ) = N (t )/D (t ), where and with Qk = Q ( tk ) and the βi as in (10).Our task now is to find the limit of N (t ) and D (t ) as tk converges to t k +1 .Let us first focus on the denominator D (t ).The sum poses no problem, because the βi for i ̸ = k , k + 1 simply converge to the βi in (12) as tk → t k +1 , but the remaining two terms need to be analysed more carefully, since βk and βk+1 diverge.Using their definition in (10), we have As before, the terms in the sum are uncritical, and for the last term, we can use L'Hôpital's rule to get Overall, we conclude that D (t ) converges to the denominator in (11) as tk → t k +1 .Similar arguments can be used to show that N (t ) converges to the numerator in (11).We just need to remember that also Qk depends on tk when applying L'Hôpital's rule to which eventually leads to the term involving Q ′ k +1 .

Changing a weight
We now investigate the effect of changing a weight β k .In the case of barycentric rational curves, Ramanantoanina and Hormann [7] observed that only the length of the curve's tangent vector at Q k depends on β k , but not its direction, and we observe the same behaviour in the trigonometric setting.Proposition 6.For any k ∈ {0, . . ., n } the tangent vector of the trigonometric rational barycentric curve Q (t ) Proof.Multiplying the numerator and denominator in (4) by sin where By the product rule, For t = t k , these expressions simplify to The statement then follows from the quotient rule, which asserts that Since β k does not appear in the sum in (13), which determines the direction of the tangent vector at Q k , but only in the denominator of the leading factor, which influences the length of this vector, it follows that decreasing β k increases the flatness of the curve at Q k , while increasing β k lets the curve bend more tightly (see Figure 4.c).However, setting β k to a very small or a very large value may create poles.Bounds on β k that prevent this can be derived in the same way as for barycentric rational curves This approach can easily be adapted to a periodic rational Bézier curve P (t ) with control points P i and weights α i , since the latter is just the image of the spatial periodic Bézier curve P (t ) with control points (α i P i , α i ) under the central projection Π into the z = 1 plane.Hence, the degree of a periodic rational Bézier curve can be raised from N to N + 1 in five simple steps:

Degree elevation via the trigonometric barycentric form
The equivalence of the periodic rational Bézier and the trigonometric barycentric form offers an alternative approach to degree elevation.Given a periodic rational Bézier curve P (t ) of degree N , we first convert P as explained in Proposition 1, but using n + 3 nodes 0 ≤ t 0 < • • • < t n +2 < 2π, thus resulting in a trigonometric barycentric rational curve Q (t ) of degree N + 1.We then follow Proposition 2 to convert Q back into periodic rational Bézier form, but now with degree N + 1: convert to trigonometric barycentric form with respect to t 0 , . . ., convert to periodic rational Bézier form with respect to t 0 , . . ., t n +2 This procedure can be further simplified by using uniformly distributed nodes t i and recalling the matrix notation of the conversion process.It then follows that we can compute the control points of the degree-raised spatial periodic Bézier curve from the control points of the given spatial periodic Bézier curve as PN +1 = C −1 D PN , where the entries of the matrices C ∈ (n +3)×(n+3) and D ∈ (n +3)×(n+1) are with ψ i = 2i π n+3 , i = 0, . . ., n + 2 and φ i = 2i π n +1 , i = 0, . . ., n .Hence, the degree can be raised from N to N + 1 (see Figure 5) in three simple steps: Instead of inverting C , it is advisable to solve instead the linear system C PN +1 = D PN , which can be done efficiently in O (n log n ) time using the fast Fourier transform, because C is a symmetric circulant matrix.

Degree elevation using point insertion
If we prefer to work with the trigonometric barycentric form, then a third variant of degree elevation is the following.Given the trigonometric barycentric rational curve Q (t ), its degree can be raised from N to N +1 by inserting two new interpolation points.Conceptually, this is achieved by first converting Q with Proposition 2 to periodic rational Bézier form, using the given nodes t 0 , . . ., t n , and then using Proposition 1, but with respect to the new nodes t0 , . . ., tn+2 , which are obtained by adding the two parameter values corresponding to the new interpolation points to the sequence of given nodes, to obtain Q as a trigonometric barycentric rational curve of degree N + 1: convert to periodic rational Bézier form with respect to t 0 , . . ., t n P N (t ) convert to trigonometric barycentric form with respect to t0 , . . ., tn+2 As in the previous subsection, the interpolation points and weights of the degree-raised curve can be computed from the interpolation points and weights of the given curve as QN +1 = C D −1 QN , where the entries of the matrices C ∈ (n +3)×(n +1) and D ∈ (n +1)×(n +1) are but we can actually avoid matrix multiplication and inversion and compute the parameters of the degreeraised curve directly with simple formulas.Since we can slide interpolation points to any position along the curve (see Proposition 4 and Remark 1), we assume without loss of generality that the two new interpolation points are inserted at the two parameter values tk , tk+1 ∈ (t k −1 , t k ) for some k ∈ {1, . . ., n }, so that the new nodes t0 , . . ., tn+2 are Proposition 7. The trigonometric barycentric rational curve Q of degree N in (4) can be expressed as a trigonometric barycentric rational curve Q of degree N + 1 with parameters Proof.As in the proof of Proposition 4, the statement is obvious for the nodes ti and the interpolation points Qi , and we conclude from Proposition 1 that β i = (−1) i W i z (t i ) and βi = (−1) i Wi z ( ti ).For i = k , recall that z (t ) = ℓ(t ) (−1) j +k +1 csc tk+1 − t j 2 β j .
Remark 2. In practice, a user would probably prefer to insert one interpolation point at a time.Assuming that the current number of interpolation points is odd, this can be done by simply inserting two new points Qk and Qk+1 , following Proposition 7, but showing only Qk to the user.Once the user decides to insert another interpolation point, Qk+1 is revealed and moved to the desired position using Proposition 4.

Conclusion
In this paper, we extended the idea of periodic Bézier curves by Sánchez-Reyes [9] to the rational setting and explored the use of the trigonometric barycentric form in the context of curve design.We showed that it offers more direct control over the curve's shape and complements the usual shape control tools given by the periodic rational Bézier form (control points and weights).While the periodic rational Bézier form is more suitable for designing the general shape of a curve, the trigonometric barycentric form is recommended for micro-editing.In particular, the interpolation property can be used to intuitively adjust the shape of a curve by moving the interpolation points and to force a curve to pass through specific points in the plane.If the user wishes to adjust the shape in a region without any interpolation points, there are two possible solutions.
One can either slide an existing interpolation point to the desired position or insert a new interpolation point, both without changing the shape of the curve.Moreover, the user can control the curvature of a curve at an interpolation point by adjusting the corresponding weight.Although we restricted our discussion to planar curves, it is clear that the described framework is also valid for 3D curves and even higher dimensional curves, because the construction is independent of the dimension of the control points P i and the interpolation points Q i .

Figure 1 :
Figure 1: In order to create the curve in (a), a designer would normally use the control points and weights of a rational

Figure 2 :
Figure 2: The shape of the Bernstein (left) and the periodic basis functions (right) for n = 4.

Figure 3 :
Figure3: Converting a periodic rational curve from trigonometric barycentric form (a) to periodic rational Bézier form may require infinite control points (b), but after inserting two interpolation points (c), which raises the degree of the curve by one, the curve can be represented as a periodic rational Bézier curve with finite control points (d).

Figure 4 :
Figure 4: The shape of a periodic rational curve in trigonometric barycentric form (a) can be modified intuitively by displacing an interpolation point (b) or by changing the associated weight (c).The blue and the red curve are obtained from the black curve by moving the indicated interpolation point (b) and by increasing or decreasing its weight, visualized by proportionally sized disks (c), while leaving all other interpolation points and weights unchanged.Moreover, it is possible to slide an interpolation point (d) and to insert new interpolation points (e) without changing the shape of the curve.

[ 7 , 1
Proposition 6].Degree elevation using the discrete Fourier transform Sánchez-Reyes[9] describes a three-step procedure to increase the degree of a periodic Bézier curve P (t ) from N to N + 1.He first uses the discrete Fourier transform (DFT) to express P as a complex trigonometric polynomial curve with 2N + 1 Fourier coefficients c −N , . . ., c N ∈ 2 .Degree elevation can then be achieved by simply adding two higher order zero frequencies and converting the new set of 2N + 3 Fourier coefficients ci = c i , i = −N , . . ., N and c−N −1 = cN +1 = (0, 0) back to the spatial domain with the inverse DFT:P N (t ) DFT P N +1 (t )

Figure 5 :
Figure 5: Raising the degree (from left to right) of a periodic rational Bézier curve.