Accès libre

Monotonicity preserving representations of curves and surfaces

À propos de cet article

Citez

Introduction

Recently there have been important advances on the stability and accuracy of algorithms in Computer-Aided Geometric Design (CAGD), as can be seen in [7,8,1012]. For the computation of curves and surfaces in CAGD, another very important topic is shape preservation. One of the simpler shape properties is monotonicity, to which we devote this paper and for which important problems are still open, as will be shown. These open problem arise in particular for surface design. In contrast to the variation diminishing properties of Bézier curves, tensor product Bézier surfaces and Bézier triangles do not satisfy simple extensions of these properties, as shown in [21]. Several definitions of monotonicity preserving properties for these surfaces were introduced in [16] and [17], including the simplest of them: axial monotonicity preservation. As for monotonicity preserving properties for rational Bézier surfaces, it has been proved only the axial monotonicity preservation of surfaces generated by the tensor product of two univariate rational Bernstein bases (see [5, 6, 16]).

Monotonicity preservation for curves has been deeply studied and we recall in Section 2 some basic results. In Section 2, we also include a new formula for the derivation of rational Bézier curves, which has its own interest and will be used here to give a direct proof of the monotonicity preservation of these curves. Section 3 is devoted to the monotonicity preservation for surfaces, where there are still open problems, as we had announced before and we shall comment at the end of the paper. In Subsection 3.1 we consider triangular patches and in Subsections 3.2 and 3.3 rectangular patches, considering the rational case in Subsection 3.3. In Subsection 3.3 we conjecture that there are no more axially monotonicity preserving surfaces, that is, a rational bilinear patch is axially monotonicity preserving if and only if it corresponds to the tensor product of two univariate rational Bernstein bases.

Monotonicity preservation of curves

In this section we revisit the main results on the monotonicity preserving representation of curves and we also include a new formula for the derivation of rational Bézier curves, which has its own interest and further potential applications in addition to its application in this section.

Let 𝒰 be a vector space of real functions defined on [a,b] ⊆ ℝ and (u0,...,un) a basis of 𝒰 . If a control polygon P0 ···Pn is given then we define a parametric curve

γ(t)=i=0nPiui(t),t[a,b].$$\begin{array}{} \displaystyle \gamma (t) = \sum\limits_{i = 0}^n {{P_i}} {u_i}(t),\quad t \in [a,b]. \end{array}$$

In CAGD the functions u0,...,un are usually nonnegative and i=0nui(t)=1t[a,b]$\begin{array}{} \displaystyle \sum\nolimits_{i = 0}^n {{u_i}} (t) = 1\forall {\mkern 1mu} t \in [a,b] \end{array}$ (i.e. the system (u0,...,un) is normalized) and in this case we say that (u0,...,un) is a blending system. The convex hull property is an important property for curve design: for any control polygon, the curve always lies in the convex hull of the control polygon. The convex hull property holds if and only if (u0,...,un) is a blending system. In interactive design we want that the shape of a parametrically defined curve mimics the shape of its control polygon; thus we can predict or manipulate the shape of the curve by choosing or changing the control polygon suitably. One of the simplest shape properties is monotonicity, which will be now described.

In the design of curves it is required that the sense of the path tracing of the curve and the polygon agree. Let us draw the control polygon starting from P0 and finishing in Pn, and the curve γ(t) taking all values of t starting from a and finishing at b. Let P0,··· ,Pn be control points in ℝk and let γ be the curve defined by (1). A surjective affine mapping T : ℝk → ℝ can be interpreted as the projection of the space onto some line. In the case that the projection of the control polygon onto this line is increasing, that is, T (P0) ≤ ··· ≤ T (Pn), then the projection of the corresponding curve γ(t) onto that line T (γ(t)) must also be increasing. So, we see that this shape preserving property is essentially 1-dimensional. We can see a graphical example of this property in Figure 1. A system satisfying this property is said to be a monotonicity preserving system. This shape preserving property can be formalized as follows:

Fig. 1

Monotonicity preservation of a representation of curves

Definition 1

A system of functions (u0,...,un) is monotonicity preserving (resp., strictly monotonicity preserving) if for any α0α1 ≤ ... ≤ αn (resp., α0 < α1 < ... < αn) in ℝ, the function i=0nαiui$\begin{array}{} \displaystyle \sum\nolimits_{i = 0}^n {{\alpha _i}{u_i}} \end{array}$ is increasing (resp., strictly increasing).

Some properties and applications of monotonicity preserving systems can be seen in [24]. A proof of the following result, which characterizes monotonicity preserving systems, appears in Proposition 2.3 of [4].

Proposition 1

Let (u0,...,un) be a system of functions defined on an interval [a,b]. Letvi:=j=inuj$\begin{array}{} \displaystyle {v_i}: = \sum\nolimits_{j = i}^n {{u_j}} \end{array}$for i ∈ {0,1,...,n}. Then:

(u0,...,un) is monotonicity preserving if and only if v0is a constant function and the functions vi are increasing for i = 1,...,n.

(u0,...,un) is strictly monotonicity preserving if and only if (u0,...,un) is monotonicity preserving and the functionj=1nvj$\begin{array}{} \displaystyle \sum\nolimits_{j = 1}^n {{v_j}} \end{array}$is strictly increasing.

Nonrational curves

Bézier curves provide the most usual representation of curves in CAGD. These curves are represented in terms of Bernstein polynomials. The Bernstein polynomials of degree n are defined by

bin(x)=(ni)xi(1x)ni,x[0,1],$$\begin{array}{} \displaystyle b_i^n(x)={n\choose i}x^i(1-x)^{n-i},\quad x\in [0,1], \end{array}$$

for all i = 0,1,...,n. The system (b0n,,bnn)$\begin{array}{} \displaystyle (b_0^n,\ldots,b_n^n) \end{array}$ forms a basis of the space of polynomials of degree at most n, ∏n. For more details in Bernstein polynomials and applications see [13] and [14]. The following result is well known and an argument for its proof can be found in p. 381 of [4].

Proposition 2

The Bernstein basis(b0n,,bnn)$\begin{array}{} \displaystyle (b_0^n,\ldots,b_n^n) \end{array}$preserves monotonicity strictly.

Bézier curves are polynomial curves. But when working with polynomials some problems arise. For example, polynomial curves have a global behavior, that is, if one modifies, even slightly, one of its control points, then the modification affects to the whole function. In addition, polynomial curves with high degree can present big oscillations. Piecewise polynomials are the solution to avoid these poblems in diverse fields of mathematics including CAGD. In this field, the role played by Bernstein polynomials in Béizer cuves is played by B-splines in the case of piecewise polyomial curves. Let us consider d ∈ ℕ0 and a sequence of nondecreasing real numbers x=(xj)j=1n+d+1$\begin{array}{} \displaystyle \mathbf{x}=(x_j)_{j=1}^{n+d+1} \end{array}$ with at least d + 2 elements. The j-th B-spline of degree d with nodes x is defined by

Nj,d,x(x)=xxjxj+dxjNj,d1,x(x)+xj+d+1xxj+d+1xj+1Nj+1,d1,x(x),$$\begin{array}{} \displaystyle N_{j,d,\mathbf{x}}(x)=\frac{x-x_j}{x_{j+d}-x_j}N_{j,d-1,\mathbf{x}}(x)+\frac{x_{j+d+1}-x}{x_{j+d+1}-x_{j+1}}N_{j+1,d-1,\mathbf{x}}(x), \end{array}$$

for all x ∈ ℝ, with

Nj,0,x(x)={1,if xjx<xj+1,0,in other case.$$\begin{array}{} \displaystyle {N_{j,0,{\bf{x}}}}(x) = \{ \begin{array}{*{20}{l}} {1,}&{{\rm{if\;}}{x_j} \le x < {x_{j + 1}},}\\ {0,}&{{\rm{in\;other\;case}}{\rm{.}}} \end{array} \end{array}$$

For more details in B-splines and applications see [13] and [20]. The following result is also well known and an argument for its proof can be found in pp. 381–382 of [4].

Proposition 3

The B-spline basis(Ni,d,x)i=1n$\begin{array}{} \displaystyle (N_{i,d,\mathbf{x}})_{i=1}^n \end{array}$associated to a sequence of nodesx=(xj)j=1n+d+1$\begin{array}{} \displaystyle \mathbf{x}=(x_j)_{j=1}^{n+d+1} \end{array}$preserves monotonicity.

Rational curves

In this subsection, we include a new formula for the derivation of rational Bézier curves, which has its own interest and will be used here to give a direct proof of the monotonicity preservation of these curves.

In CAGD given a system of functions U = (u0,...,un) defined in [a,b], it is usual to construct a rational system of functions (r0,...,rn) from a sequence of positive weights (wi)i=0n$\begin{array}{} \displaystyle (w_i)_{i=0}^n \end{array}$ defined by

ri(t)=wiui(t)i=0nwiui(t),t[a,b].$$\begin{array}{} \displaystyle {r_i}(t) = \frac{{{w_i}{u_i}(t)}}{{\Sigma _{i = 0}^n{w_i}{u_i}(t)}},\quad t \in [a,b]. \end{array}$$

The weights act as shape parameters.

Rational Bernstein bases arise taking U=(b0n,,bnn)$\begin{array}{} \displaystyle U=(b_0^n,\ldots,b_n^n) \end{array}$ in (4) and the corresponding curve is called rational Bézier curve. It is known, from the results of [4], that rational bases constructed from the Bernstein basis of ∏n are also monotonicity preserving. Now let us prove this result from a new and different approach. We will use a new formula for the derivative of a rational Bézier curve presented in the folowing result. This formula is not only important for proving that rational Bernstein bases are monotonicity preserving, but it can be also useful for the problems studied in [15, 18, 22, 24].

Proposition 4

Let us consider a rational Bézier curve g given by

γ(t)=i=0nPiwibin(t)i=0nwibin(t),t[0,1],$$\begin{array}{} \displaystyle \gamma (t) = \sum\limits_{i = 0}^n {{P_i}} {\mkern 1mu} \frac{{{w_i}{\mkern 1mu} b_i^n(t)}}{{\sum\nolimits_{i = 0}^n {{\mkern 1mu} {w_i}b_i^n(t)} }},\quad t \in [0,1], \end{array}$$

with (wi)0≤ina sequence of positive weights and P0 ···Pn the control polygon. Then we have

γ(t)=ni=0n1j=in1(j+1i)n(j+1)(ni)(k=ij(ΔPk))bin1(t)bjn1(t)(i=0nwibin(t))2,$$\begin{array}{} \displaystyle \gamma '(t) = n{\mkern 1mu} \frac{{\sum\nolimits_{i = 0}^{n - 1} {\sum\nolimits_{j = i}^{n - 1} {\frac{{(j + 1 - i){\mkern 1mu} n}}{{(j + 1){\mkern 1mu} (n - i)}}} } {\mkern 1mu} \left( {\sum\nolimits_{k = i}^j {(\Delta {P_k})} } \right)b_i^{n - 1}(t){\mkern 1mu} b_j^{n - 1}(t)}}{{{{\left( {\sum\nolimits_{i = 0}^n {{\mkern 1mu} {w_i}b_i^n(t)} } \right)}^2}}}, \end{array}$$

wherePk := Pk+1Pk.

Proof. Taking into account that

γ(t)=N(t)D(t),$$\begin{array}{} \displaystyle \gamma(t)=\frac{N(t)}{D(t)}, \end{array}$$

where N(t):=i=0nPiwibin(t)$\begin{array}{} \displaystyle N(t): = \sum\nolimits_{i = 0}^n {{\mkern 1mu} {P_i}{w_i}{\mkern 1mu} b_i^n(t)} \end{array}$ and D(t):=i=0nwibin(t)$\begin{array}{} \displaystyle D(t): = \sum\nolimits_{i = 0}^n {{w_i}b_i^n(t)} \end{array}$, we deduce

γ(t)=N(t)D(t)N(t)D(t)(D(t))2.$$\begin{array}{} \displaystyle \gamma'(t)=\frac{N'(t)\,D(t)-N(t)\,D'(t)}{(D(t))^2}. \end{array}$$

Since

N(t)=ni=0n1Δ(Piwi)bin1(t),D(t)=ni=0n1(Δwi)bin1(t),$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {N'(t) = n\mathop \Sigma \limits_{i = 0}^{n - 1} \Delta ({P_i}{w_i})b_i^{n - 1}(t),} \hfill \\ {D'(t) = n\mathop \Sigma \limits_{i = 0}^{n - 1} (\Delta {w_i})b_i^{n - 1}(t),} \hfill \\ \end{array} \end{array}$$

we can write (5) in the following way

γ(t)=ni=0n1j=0n[Δ(Piwi)wjPjwj(Δwi)]bin1(t)bjn(t)(D(t))2.$$\begin{array}{} \displaystyle \gamma '(t) = n{\mkern 1mu} \frac{{\sum\nolimits_{i = 0}^{n - 1} {\sum\nolimits_{j = 0}^n {\left[ {\Delta ({P_i}{\mkern 1mu} {w_i}){\mkern 1mu} {w_j} - {P_j}{\mkern 1mu} {w_j}{\mkern 1mu} (\Delta {w_i})} \right]} } {\mkern 1mu} b_i^{n - 1}(t){\mkern 1mu} b_j^n(t)}}{{{{\left( {D(t)} \right)}^2}}}. \end{array}$$

From the previous formula, since ∆(Pi wi) = wi+1 (∆Pi) + (∆wi)Pi, we deduce

γ(t)(D(t))2=ni=0n1j=0n[wi+1wj(ΔPi)+(Δwi)wjPi(Δwi)wjPj]bin1(t)bjn(t).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2} = n} \hfill & {\mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = 0}^n [{w_{i + 1}}{w_j}(\Delta {P_i})} \hfill \\ {} \hfill & { + (\Delta {w_i}){w_j}{P_i} - (\Delta {w_i}){w_j}{P_j}]b_i^{n - 1}(t)b_j^n(t).} \hfill \\ \end{array} \end{array}$$

Applying the univariate de Casteljau algorithm to the right-hand of the previous formula we derive

γ(t)(D(t))2=i=0n1j=0n1k=01[wi+1wj+k(ΔPi)+(Δwi)wj+kPi(Δwi)wj+kPj+k]bin1(t)bjn1(t)bk1(t).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2}} \hfill & { = \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = 0}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 [{w_{i + 1}}{w_{j + k}}(\Delta {P_i})} \hfill \\ {} \hfill & { + (\Delta {w_i}){w_{j + k}}{P_i} - (\Delta {w_i}){w_{j + k}}{P_{j + k}}]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t).} \hfill \\ \end{array} \end{array}$$

Now, rearranging the right-hand of the previous formula, we have

γ(t)(D(t))2=i=0n1j=0i1k=01[wi+1wj+k(ΔPi)+(Δwi)wj+kPi(Δwi)wj+kPj+k]bin1(t)bjn1(t)bk1(t)+i=0n1k=01[wi+1wi+k(ΔPi)+(Δwi)wi+kPi(Δwi)wi+kPi+k]bin1(t)bin1(t)bk1(t)+i=0n1j=i+1n1k=01[wi+1wj+k(ΔPi)+(Δwi)wj+kPi(Δwi)wj+kPj+k]bin1(t)bjn1(t)bk1(t)$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2} = } \hfill & {\mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = 0}^{i - 1} \mathop \Sigma \limits_{k = 0}^1 [{w_{i + 1}}{w_{j + k}}(\Delta {P_i}) + (\Delta {w_i}){w_{j + k}}{P_i}} \hfill \\ {} \hfill & { - (\Delta {w_i}){w_{j + k}}{P_{j + k}}]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 [{w_{i + 1}}{w_{i + k}}(\Delta {P_i}) + (\Delta {w_i}){w_{i + k}}{P_i}} \hfill \\ {} \hfill & { - (\Delta {w_i}){w_{i + k}}{P_{i + k}}]b_i^{n - 1}(t)b_i^{n - 1}(t)b_k^1(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i + 1}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 [{w_{i + 1}}{w_{j + k}}(\Delta {P_i}) + (\Delta {w_i}){w_{j + k}}{P_i}} \hfill \\ {} \hfill & { - (\Delta {w_i}){w_{j + k}}{P_{j + k}}]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t)} \hfill \\ \end{array} \end{array}$$

Then we can deduce that the previous expression can be written as

γ(t)(D(t))2=Σi=0n1Σj=0i1Σk=01[wi+1wj+kΣl=j+ki(ΔPl)wiwj+kΣl=j+ki1(ΔPl)]bin1(t)bjn1(t)bk1(t)+Σi=0n1Σk=01wiwi+1(ΔPi)bin1(t)bin1(t)bk1(t)+Σi=0n1Σj=i+1n1Σk=01[wi+1wj+kΣl=i+1j+k1(ΔPl)+wiwj+kΣl=ij+k1(ΔPl)]bin1(t)bjn1(t)bk1(t).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2}} \hfill & { = \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = 0}^{i - 1} \mathop \Sigma \limits_{k = 0}^1 [{w_{i + 1}}{w_{j + k}}\mathop \sum \limits_{l = j + k}^i (\Delta {P_l})} \hfill \\ {} \hfill & { - {w_i}{w_{j + k}}\mathop \Sigma \limits_{l = j + k}^{i - 1} (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 {w_i}{w_{i + 1}}(\Delta {P_i})b_i^{n - 1}(t)b_i^{n - 1}(t)b_k^1(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i + 1}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 [ - {w_{i + 1}}{w_{j + k}}\mathop \Sigma \limits_{l = i + 1}^{j + k - 1} (\Delta {P_l})} \hfill \\ {} \hfill & { + {w_i}{w_{j + k}}\mathop \Sigma \limits_{l = i}^{j + k - 1} (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t).} \hfill \\ \end{array} \end{array}$$

By performing an index change and reordering, we have

γ(t)(D(t))2=i=0n1j=i+1n1k=01[wj+1wi+kl=i+kj(ΔPl)wjwi+kl=i+kj1(ΔPl)]bin1(t)bjn1(t)bk1(t)+i=0n1k=01wiwi+1(ΔPi)bin1(t)bin1(t)bk1(t)+i=0n1j=i+1n1k=01[wi+1wj+kl=i+1j+k1(ΔPl)+wiwj+kl=ij+k1(ΔPl)]bin1(t)bjn1(t)bk1(t).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2} = } \hfill & {\mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i + 1}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 [{w_{j + 1}}{w_{i + k}}\mathop \Sigma \limits_{l = i + k}^j (\Delta {P_l})} \hfill \\ {} \hfill & { - {w_j}{w_{i + k}}\mathop \Sigma \limits_{l = i + k}^{j - 1} (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 {w_i}{w_{i + 1}}(\Delta {P_i})b_i^{n - 1}(t)b_i^{n - 1}(t)b_k^1(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i + 1}^{n - 1} \mathop \Sigma \limits_{k = 0}^1 [ - {w_{i + 1}}{w_{j + k}}\mathop \Sigma \limits_{l = i + 1}^{j + k - 1} (\Delta {P_l})} \hfill \\ {} \hfill & { + {w_i}{w_{j + k}}\mathop \Sigma \limits_{l = i}^{j + k - 1} (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t)b_k^1(t).} \hfill \\ \end{array} \end{array}$$

Extending the sum on k and operating, we deduce that

γ(t)(D(t))2=i=0n1j=i+1n1[wiwj+1l=ij(ΔPl)wi+1wjl=i+1j1(ΔPl)]bin1(t)bjn1(t)+i=0n1wiwi+1(ΔPi)bin1(t)bin1(t).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2} = } \hfill & {\mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i + 1}^{n - 1} [{w_i}{w_{j + 1}}\mathop \Sigma \limits_{l = i}^j (\Delta {P_l})} \hfill \\ {} \hfill & { - {w_{i + 1}}{w_j}\mathop \Sigma \limits_{l = i + 1}^{j - 1} (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t)} \hfill \\ {} \hfill & { + \mathop \Sigma \limits_{i = 0}^{n - 1} {w_i}{w_{i + 1}}(\Delta {P_i})b_i^{n - 1}(t)b_i^{n - 1}(t).} \hfill \\ \end{array} \end{array}$$

From the previous formula we can derive in a straightforward way

γ(t)(D(t))2=i=0n1j=in1[wiwj+1l=ij(ΔPl)]bin1(t)bjn1(t)i=0n1j=i+1n1[wi+1wj+1l=i+1j1(ΔPl)]bin1(t)bjn1(t).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2} = } \hfill & {\mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i}^{n - 1} [{w_i}{w_{j + 1}}\mathop \Sigma \limits_{l = i}^j (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t)} \hfill \\ {} \hfill & { - \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i + 1}^{n - 1} [{w_{i + 1}}{w_{j + 1}}\mathop \Sigma \limits_{l = i + 1}^{j - 1} (\Delta {P_l})]b_i^{n - 1}(t)b_j^{n - 1}(t).} \hfill \\ \end{array} \end{array}$$

Then, arranging the indexes and operating, we have

γ(t)(D(t))2=i=0n1j=in1[wiwj+1l=ij(ΔPl)](bin1(t)bjn1(t)bi1n1(t)bj+1n1(t)).$$\begin{array}{} \displaystyle \begin{array}{*{20}{c}} {\gamma '(t){{(D(t))}^2} = \mathop \Sigma \limits_{i = 0}^{n - 1} \mathop \Sigma \limits_{j = i}^{n - 1} [{w_i}{w_{j + 1}}\mathop \Sigma \limits_{l = i}^j (\Delta {P_l})](b_i^{n - 1}(t)} \hfill & {b_j^{n - 1}(t)} \hfill \\ {} \hfill & { - b_{i - 1}^{n - 1}(t)b_{j + 1}^{n - 1}(t)).} \hfill \\ \end{array} \end{array}$$

So the result follows from the last expression.

As a consequence, we can derive the following result.

Corollary 5

A rational Bézier basis (r0,...,rn) defined by

ri(t)=wibin(t)i=0nwibin(t),$$\begin{array}{} \displaystyle {r_i}(t) = \frac{{{w_i}b_i^n(t)}}{{\sum\nolimits_{i = 0}^n {{w_i}b_i^n(t)} }}, \end{array}$$

with (wi)0≤ina sequence of positive weights, is strictly monotonicity preserving.

Proof. Let us consider the function

γ(t)=i=0nαiwibin(t)i=0nwibin(t)$$\begin{array}{} \displaystyle \gamma (t) = \sum\limits_{i = 0}^n {{\alpha _i}} \frac{{{w_i}b_i^n(t)}}{{\sum\nolimits_{i = 0}^n {{w_i}b_i^n(t)} }} \end{array}$$

with α0 < α1 < ··· < αn. Differentiating the previous formula we have

γ(t)=ni=0n1j=in1(j+1i)n(j+1)(ni)(k=ij(Δαk))bin1(t)bjn1(t)(i=0nwibin(t))2>0,t(0,1),$$\begin{array}{} \displaystyle \gamma '(t) = n{\mkern 1mu} \frac{{\sum\nolimits_{i = 0}^{n - 1} {\sum\nolimits_{j = i}^{n - 1} {\frac{{(j + 1 - i){\mkern 1mu} n}}{{(j + 1){\mkern 1mu} (n - i)}}} } {\mkern 1mu} \left( {\sum\nolimits_{k = i}^j {(\Delta {\alpha _k})} } \right)b_i^{n - 1}(t){\mkern 1mu} b_j^{n - 1}(t)}}{{{{\left( {\sum\nolimits_{i = 0}^n {{w_i}{\mkern 1mu} b_i^n(t)} } \right)}^2}}} > 0,\quad t \in (0,1), \end{array}$$

and so γ is strictly increasing. Therefore, the rational basis is strictly monotonicity preserving.

Monotonicity preservation of surfaces

In [16] and [17], some generalizations of the monotonicity preservation of curves have been extended for surfaces defined on rectangular and triangular patches, respectively. Subsection 3.1 considers triangular patches, and rectangular patches are analyzed in the remaining subsections. In Subsection 3.3 we present a conjecture on axially monotonicity preserving rational Bézier surfaces defined on rectangular patches.

Monotonicity preservation of surfaces defined in triangular patches

Any point τ in a plane can be expressed in terms of its barycentric coordinates with respect to any nonde-generate triangle 𝒯 in that plane with vertices T0, T1 and T2:

τ=i=02τiTi,i=02τi=1.$$\begin{array}{} \displaystyle \tau = \sum\limits_{i = 0}^2 {{\tau _i}} {\mkern 1mu} {T_i},\quad \sum\limits_{i = 0}^2 {{\tau _i}} = 1. \end{array}$$

If t ∈ 𝒯 , then τi ≥ 0, i = 0,1,2. Let i = (i0,i1,i2) denote a multi-index where i0,i1,i2 ∈ ℕ0 = {0,1,2,...} and let us denote by |i| the sum i0 + i1 + i2.

Given n ≥ 1, let us consider for each i such that |i| = n a function ϕi : 𝒯 → ℝ. We shall refer to them as a system and write (ϕi)|i|=n. Then, given (ci)|i|=n a sequence of coefficients in ℝ, we can define a function F : 𝒯 → ℝ, as

F(τ)=|i|=nciϕi(τ),τT.$$\begin{array}{} \displaystyle F(\tau ) = \sum\limits_{|{\bf{i}}| = n} {{c_{\bf{i}}}} {\mkern 1mu} {\phi _{\bf{i}}}(\tau ),\quad \tau \in {\mathscr T}. \end{array}$$

Let us consider the following points xi=i0nT0+i1nT1+i2nT2$\begin{array}{} \displaystyle {x_{\bf{i}}} = \frac{{{i_0}}}{n}{\mkern 1mu} {T_0} + \frac{{{i_1}}}{n}{\mkern 1mu} {T_1} + \frac{{{i_2}}}{n}{\mkern 1mu} {T_2} \end{array}$, with |i| = n. Then we define the control net of F as the function

p:T,$$\begin{array}{} \displaystyle p:\mathscr{T}\rightarrow\mathbb{R}, \end{array}$$

which is linear on each subtriangle of 𝒯 and satisfies

p(xi)=ci,|i|=n.$$\begin{array}{} \displaystyle p(x_{\mathbf{i}})= c_{\mathbf{i}},\quad |{\mathbf{i}}|=n. \end{array}$$

The control net is important in interactive design because it is a mesh of points used to control the shape of the surface. So, in [17] Peña and Floater provided several generalizations of the concept of monotonicity preservation of curves to surfaces.

Definition 2

A system (ϕi)|i|=n is axially monotonicity preserving (AMP) if the function F is increasing in the direction T1T0, T2T1 or T0T2 whenever the control net p is increasing in the same direction.

In [17] it was proved that the Bernstein polynomials of degree n on a triangle, (bin)|i|=n$\begin{array}{} \displaystyle {(b_{\bf{i}}^n)_{\left| {\bf{i}} \right| = n}} \end{array}$ defined by

bin(τ)=n!i0!i1!i2!τ0i0τ1i1τ2i2,|i|=n,$$\begin{array}{} \displaystyle b_{\mathbf{i}}^n(\tau)=\frac{n!}{i_0!i_1!i_2!}\,\tau_0^{i_0}\,\tau_1^{i_1}\,\tau_2^{i_2},\quad |{\mathbf{i}}|=n, \end{array}$$

are AMP and even satisfy stronger monotonicity preserving properties.

Now let us consider the rational Bernstein basis of order n (ϕi)|i|=n given by ϕi=wibin|i|=nwibin$\begin{array}{} \displaystyle {\phi _{\bf{i}}} = \frac{{{w_{\bf{i}}}b_{\bf{i}}^n}}{{{\Sigma _{|{\bf{i}}| = n}}{w_{\bf{i}}}b_{\bf{i}}^n}} \end{array}$, where (wi)|i|=n is a sequence of positive weights. In [6] it was proved that the Bernstein basis on a triangle is the unique rational Bernstein basis which is AMP.

Theorem 6

(see Theorem 2 of [6]) If a rational Bernstein basis on a triangle with positive weights is AMP, then wi = wjfor alli,jsuch that |i| = |j| = n.

Monotonicity preservation of nonrational surfaces defined in rectangular patches

Given a normalized nonnegative system of bivariate functions U=(uij(x,y))0im0jn$\begin{array}{} \displaystyle U = ({u_{ij}}(x,y))_{0 \le i \le m}^{0 \le j \le n} \end{array}$ defined on [a1 , b1] × [a2 , b2] and a sequence of values in ℝ, (cij)0im0jn$\begin{array}{} \displaystyle ({c_{ij}})_{0 \le i \le m}^{0 \le j \le n} \end{array}$, let us consider the corresponding generated bivariate function

F(x,y)=i=0mj=0ncijuij(x,y),(x,y)[a1,b1]×[a2,b2].$$\begin{array}{} \displaystyle F(x,y)=\sum_{i=0}^m\sum_{j=0}^n c_{ij}\,u_{ij}(x,y),\quad (x,y)\in [a_1,b_1]\times [a_2,b_2]. \end{array}$$

Now we shall associate a control net p with the function F. Given two strictly increasing sequences of abscissae

α=(α0,α1,,αm)andβ=(β0,β1,,βn),$$\begin{array}{} \displaystyle \alpha=(\alpha_0,\alpha_1,\ldots,\alpha_m)\quad\hbox{and}\quad\beta=(\beta_0,\beta_1,\ldots,\beta_n), \end{array}$$

we define the control net

p:[α0,αm]×[β0,βn]$$\begin{array}{} \displaystyle p:[\alpha_0,\alpha_m]\times [\beta_0,\beta_n]\rightarrow\mathbb{R} \end{array}$$

to be the unique function which satisfies the interpolation conditions

p(αi,βj)=cijfor all i=0,1,m and j=0,1,,n,$$\begin{array}{} \displaystyle p(\alpha_i,\beta_j)=c_{ij}\quad\hbox{for all } i=0,1\ldots,m \hbox{ and } j=0,1,\ldots,n, \end{array}$$

and is bilinear on each rectangle

Rij=[αi,αi+1]×[βj,βj+1].$$\begin{array}{} \displaystyle R_{ij}=[\alpha_i,\alpha_{i+1}]\times [\beta_j,\beta_{j+1}]. \end{array}$$

As in the triangular case, the control net is used to control the shape of the surface in interactive design. A bivariate function g is increasing in a direction d = (d1, d2) ∈ ℝ2, if

g(x+λd1,y+λd2)g(x,y),λ>0.$$\begin{array}{} \displaystyle g(x + \lambda {d_1},y + \lambda {d_2}) \ge g(x,y),\,\lambda > 0. \end{array}$$

In particular, the control net p can be increasing in a direction d. In [16] Floater and Peña characterized this situation as follows:

Lemma 7

The control net p is increasing in the direction d = (d1,d2) in2if and only if for i = 0,1,...,m − 1 and j = 0,1,...,n − 1,

d1Δ1ci,j+l+d2Δ2ci+k,j0,k,l{0,1},$$\begin{array}{} \displaystyle d_1\,\Delta_1 c_{i,j+l}+d_2\,\Delta_2 c_{i+k,j}\geq 0,\quad k,l\in\{0,1\}, \end{array}$$

where1cij := (ci+1,jcij)/(αi+1αi) and2cij := (ci,j+1cij)/(βj+1βj).

Given a sequence (cij)0im0jn$\begin{array}{} \displaystyle ({c_{ij}})_{0 \le i \le m}^{0 \le j \le n} \end{array}$, Λ1cij := ci+1,jcij for i = 0,1,...,m − 1 and j = 0,1,...,n, and Λ2cij := ci,j+1cij for i = 0,1,...,m and j = 0,1,...,n − 1.

Remark 1

As a consequence of Lemma 7 we have that the control net p is increasing in the X-axis direction d = (1,0) if and only if for i = 0,1,...,m − 1 and j = 0,1,...,n − 1, Λ1cij ≥ 0. Analogously, the control net p is increasing in the Y-axis direction d = (0,1) if and only if for i = 0,1,...,m − 1 and j = 0,1,...,n − 1, Λ2cij ≥ 0

In [16] several concepts of monotonicity preservation for rectangular patches were introduced.

Definition 3

The system U preserves monotonicity with respect to the abscissae α and β if when the control net p of the function F in (8) is increasing in any direction d in ℝ2 then so is F.

The system U preserves axial monotonicity if, for any abscissae α and β , when p is increasing in the direction d = (1,0) or d = (0,1) then so is F.

Now let us consider the particular case of tensor product surfaces. So let us consider two systems of univariate functions U1=(u01,u11,,um1)$\begin{array}{} \displaystyle {U^1} = (u_0^1,u_1^1, \ldots ,u_m^1) \end{array}$ and U2=(u02,u12,,un2)$\begin{array}{} \displaystyle {U^2} = (u_0^2,u_1^2, \ldots ,u_n^2) \end{array}$ defined on [a1,b1] and [a2,b2], respectively. Then we consider the system of tensor-product functions

U=U1U2=(ui1uj2)i=0,1,,mj=0,1,,n$$\begin{array}{} \displaystyle U=U^1\otimes U^2=(u_i^1\cdot u_j^2)_{i=0,1,\ldots,m}^{j=0,1,\ldots,n} \end{array}$$

defined on the rectangle [a1,b1] × [a2,b2]. If the systems U1 and U2 are blending then the system U is also blending. Given cij ∈ ℝ and taking uij=ui1uj2$\begin{array}{} \displaystyle {u_{ij}} = u_i^1 \cdot u_j^2 \end{array}$ in (8), i ∈ {0,1,...,m} and j ∈ {0,1,...,n}, the system U generates the following parametric function:

F(x,y)=i=0mj=0ncijui1(x)uj2(y),(x,y)[a1,b1]×[a2,b2].$$\begin{array}{} \displaystyle F(x,y)=\sum_{i=0}^m\sum_{j=0}^n c_{ij}u_i^1(x)u_j^2(y),\quad (x,y)\in [a_1,b_1]\times [a_2,b_2]. \end{array}$$

The next result characterizes axial monotonicity preservation:

Proposition 8

(Proposition 2.3 of [16]) The blending system U in (9) preserves axial monotonicity if and only if the functions

vi1:=k=imuk1,i=1,,m,andvj2:=k=jnuk2,j=1,,n,$$\begin{array}{} \displaystyle v_i^1:=\sum_{k=i}^m u_k^1,\quad i=1,\ldots,m,\quad\hbox{and}\quad v_j^2:=\sum_{k=j}^n u_k^2,\quad j=1,\ldots,n, \end{array}$$

are increasing.

As a consequence, we can derive the following result.

Corollary 9

If the blending univariate systems U1and U2are monotonicity preserving, then the blending bivariate system U preserves axial monotonicity.

Taking into account that systems of Bernstein polynomials and of B-splines are monotonicity preserving its corresponding tensor products are axially monotonicity preserving.

Proposition 10

The tensor product of Bernstein bases

(bim(x)bjn(y))0im0jn$$\begin{array}{} \displaystyle (b_i^m(x)\cdot b_j^n(y))_{0\leq i\leq m}^{0\leq j\leq n} \end{array}$$

preserves monotonicity axially.

Given two sequence of nodesx=(xi)i=1m+d1+1$\begin{array}{} \displaystyle {\bf{x}} = ({x_i})_{i = 1}^{m + {d_1} + 1} \end{array}$andy=(yj)j=1n+d2+1$\begin{array}{} \displaystyle {\bf{y}} = ({y_j})_{j = 1}^{n + {d_2} + 1} \end{array}$, the tensor product of the corresponding B-spline bases

(Ni,d1,x(x)Nj,d2,y(y))1im1jn$$\begin{array}{} \displaystyle (N_{i,d_1,\mathbf{x}}(x)\cdot N_{j,d_2,\mathbf{y}}(y))_{1\leq i\leq m}^{1\leq j\leq n} \end{array}$$

preserves monotonicity axially.

Monotonicity preservation of rational Bézier surfaces defined in rectangular patches.

Let F be a rational Bézier surface defined as

F(x,y)=i=0mj=0ncijwijbim(x)bjn(y)i=0mj=0nwijbim(x)bjn(y),(x,y)[0,1]×[0,1],$$\begin{array}{} \displaystyle F(x,y)=\sum_{i=0}^m\sum_{j=0}^n c_{ij}\frac{w_{ij}b_i^m(x)b_j^n(y)}{\sum_{i=0}^m\sum_{j=0}^n w_{ij}b_i^m(x)b_j^n(y)},\ \ (x,y)\in [0,1]\times [0,1], \end{array}$$

where (wij)0im0jn$\begin{array}{} \displaystyle ({w_{ij}})_{0 \le i \le m}^{0 \le j \le n} \end{array}$ is a sequence of positive weights and bik(t)$\begin{array}{} \displaystyle b_i^k(t) \end{array}$, i = 0,1,...,k, are the Bernstein polynomials of degree k. In [6] it was proved that rational Bézier surfaces are not, in general, even axially monotonicity preserving. In addition, in that paper a particular case of rational Bézier surfaces was considered, the surfaces

F(x,y)=i=0mj=0ncijwibim(x)i=0mwibim(x)w¯jbjn(y)j=0nw¯jbjn(y),(x,y)[0,1]×[0,1],$$\begin{array}{} \displaystyle F(x,y)=\sum_{i=0}^m\sum_{j=0}^n c_{ij}\frac{w_i b_i^m(x)}{\sum_{i=0}^m w_i b_i^m(x)}\frac{\overline{w}_jb_j^n(y)}{\sum_{j=0}^n\overline{w}_jb_j^n(y)}, \quad (x,y)\in [0,1]\times [0,1], \end{array}$$

generated by the bases formed by the tensor product of univariate rational Bernstein bases

(wibim(x)i=0mwibim(x))i=0m(w¯jbjn(y)j=0nw¯jbjn(y))j=0n,$$\begin{array}{} \displaystyle \left(\frac{w_i b_i^m(x)}{\sum_{i=0}^m w_i b_i^m(x)}\right)_{i=0}^m \otimes \left(\frac{\overline{w}_j b_j^n(y)}{\sum_{j=0}^n \overline{w}_j b_j^n(y)}\right)_{j=0}^n, \end{array}$$

where (wi)i=0m$\begin{array}{} \displaystyle ({w_i})_{i = 0}^m \end{array}$ and (w¯j)j=0n$\begin{array}{} \displaystyle ({\bar w_j})_{j = 0}^n \end{array}$ are two sequences of strictly positive weights. Let us observe that taking wij=wiw¯j$\begin{array}{} \displaystyle {w_{ij}} = {w_i}{\bar w_j} \end{array}$, i = 0,1...,m and j = 0,1...,n, in (10) we obtain the surface in (11). By Corollary 9 and Corollary 5 these rational bases preserve monotonicity axially as it was pointed in [5]. We conjecture that the converse also holds. A particular case of this problem has been considered in [9]. Let us consider the system

B=(wijbim(x)bjn(y)i=0mj=0nwijbimx)bjn(y))0im0jn$$\begin{array}{} \displaystyle B=\left(\frac{w_{ij}b_i^m(x)b_j^n(y)}{\sum_{i=0}^m\sum_{j=0}^n w_{ij}b_i^mx)b_j^n(y)}\right)_{0\leq i\leq m}^{0\leq j\leq n} \end{array}$$

Now we present our conjecture:

Conjecture 11

The system B of (13) is axially monotonicity preserving if and only if it corresponds to the tensor product of two univariate rational Bernstein systems.

If m = n = 1, the surface (10) is called a rational bilinear patch (see [23]) and we shall see that the conjecture holds in this case. Rational bilinear patches have been considered recently in [19] and in [23]. The quotient

W:=w00w11w01w10$$\begin{array}{} \displaystyle W:=\frac{w_{00}w_{11}}{w_{01}w_{10}} \end{array}$$

is called in [23] shape parameter of the rational bilinear patch. In general, it is desirable that W to be sufficiently close to 1, as remarked in page 3 of [23]. If W = 1, it corresponds to the case when the patch exhibits minimal curvature along a diagonal of the control net.

Now we characterize in several ways for the case m = n = 1 the rational bases preserving the axial monotonicity.

Theorem 12

Let us consider the system

B=(wijbi1(x)bj1(y)i=01j=01wijbi1(x)bj1(y))0i10j1$$\begin{array}{} \displaystyle B=\left(\frac{w_{ij}b_i^1(x)b_j^1(y)}{\sum_{i=0}^1\sum_{j=0}^1 w_{ij}b_i^1(x)b_j^1(y)}\right)_{0\leq i\leq 1}^{0\leq j\leq 1} \end{array}$$

and the rational bilinear patch given by (10) with m = n = 1. Then the following properties are equivalent:

(i) B is axially monotonicity preserving.

(ii) The optimal shape parameter W of (14) is 1.

(iii) B can be expressed as in (12) for m = n = 1.

Proof. Let us consider a rational Bézier surface (10) with m = n = 1.

(i) ⇔ (ii). Differentiating the surface respect to x we obtain

F(x,y)x=F1(y)+F2(y)(i=01j=01wijbi1(x)bj1(y))2,$$\begin{array}{} \displaystyle \frac{\partial F(x,y)}{\partial x}=\frac{F_1(y)+F_2(y)}{\left(\sum_{i=0}^1\sum_{j=0}^1 w_{ij}b_i^1(x)b_j^1(y)\right)^2}, \end{array}$$

where

F1(y)=w00w10(Λ1c00)b02(y)+12[w00w11(Λ1c01)+w01w10(Λ1c00)]b12(y)+w01w11(Λ1c01)b22(y),F2(y)=(w00w11w01w10)(Λ2c00)b12(y).$$\begin{array}{} \displaystyle \begin{align*} F_1(y)&=w_{00}w_{10}(\Lambda_1 c_{00})b_0^2(y)\\ &+\frac{1}{2}\left[w_{00}w_{11}(\Lambda_1 c_{01}) +w_{01}w_{10}(\Lambda_1 c_{00})\right]b_1^2(y)\\ &\hspace{0.7cm}+w_{01}w_{11}(\Lambda_1 c_{01})b_2^2(y),\\ F_2(y)&=(w_{00}w_{11}-w_{01}w_{10})(\Lambda_2 c_{00})b_1^2(y). \end{align*} \end{array}$$

By Remark 1, a control net p is increasing in the X-axis direction (1,0) if and only if Λ1cij ≥ 0 for i = 0,1,...,m−1 and j = 0,1,...,n−1. Taking c00 = c10 = c ≠ = 0 and c01 = c11 = 2c we have that Λ1c00 = Λ1c01 = 0 and so the control net is increasing in the X-axis direction. With the previous choice of the coefficients we have that F1(y) = 0 and F2(y)=c(w00w11w01w10)b11(y)$\begin{array}{} \displaystyle {F_2}(y) = c({w_{00}}{w_{11}} - {w_{01}}{w_{10}})b_1^1(y) \end{array}$. Taking into account that (i=01j=01wijbi1(x)bj1(y))2>0$\begin{array}{} \displaystyle {\left( {\sum\nolimits_{i = 0}^1 {} \sum\nolimits_{j = 0}^1 {} {w_{ij}}b_i^1(x)b_j^1(y)} \right)^2} > 0 \end{array}$, F is increasing in the X-axis direction if and only if F2(y)=c(w00w11w01w10)b11(y)0$\begin{array}{} \displaystyle {F_2}(y) = c({w_{00}}{w_{11}} - {w_{01}}{w_{10}})b_1^1(y) \ge 0 \end{array}$ for all (x,y) ∈ [0,1]2. Since c can be any real number F2(y) ≥ 0 if and only if w00w11w01w10 = 0, which is equivalent to rank

rank(w00w01w10w11)=1.$$\begin{array}{} \displaystyle \begin{equation}\label{eq:m} \hbox{rank} \left( \begin{array}{cc} w_{00} & w_{01} \\ w_{10} & w_{11} \end{array} \right) =1. \end{equation} \end{array}$$

Analogously, it can be proved that monotonicity preservation in the Y-axis direction is also equivalent to (16). Finally, (16) is clearly equivalent to (ii).

(ii) ⇔ (iii). Since (ii) is clearly equivalent to (16), it is sufficient to observe that a rank one positive matrix can be written as the product of a positive column vector and a positive row vector:

(w00w01w10w11)=(w0w1)(w¯0w¯1)$$\begin{array}{} \displaystyle \left( \begin{array}{cc} w_{00} & w_{01} \\ w_{10} & w_{11} \end{array} \right) =\left( \begin{array}{cc} w_{0} \\ w_1\end{array} \right) \left( \begin{array}{cc} \overline{w}_{0} & \overline{w}_1\end{array} \right) \end{array}$$

The following corollary is a reformulation of the equivalence of (i) and (iii) in the previous theorem.

Corollary 13

The system B of (15) is axially monotonicity preserving if and only if it corresponds to the tensor product of two univariate rational Bernstein systems, that is, if and only if B = UŪ, where

U=(w0b01(x)i=01wibi1(x),w1b11(x)i=01wibi1(x))andU¯=(w¯0b01(y)i=01w¯ibi1(y),w¯1b11(y)i=01w¯ibi1(y)).$$\begin{array}{} \displaystyle U = \left( {\frac{{{w_0}b_0^1(x)}}{{\Sigma _{i = 0}^1{w_i}b_i^1(x)}},\frac{{{w_1}b_1^1(x)}}{{\Sigma _{i = 0}^1{w_i}b_i^1(x)}}} \right)\quad and\quad \overline U = \left( {\frac{{{{\overline w }_0}b_0^1(y)}}{{\Sigma _{i = 0}^1{{\overline w }_i}b_i^1(y)}},\frac{{{{\overline w }_1}b_1^1(y)}}{{\Sigma _{i = 0}^1{{\overline w }_i}b_i^1(y)}}} \right). \end{array}$$

eISSN:
2444-8656
Langue:
Anglais
Périodicité:
Volume Open
Sujets de la revue:
Life Sciences, other, Mathematics, Applied Mathematics, General Mathematics, Physics