Abstract
In this paper, we propose a method for constructing spline surfaces interpolating a B-spline curve network, allowing the presence of free parameters, in order to model the interpolating surface. We provide a constructive algorithm for its generation in the case of biquadratic tensor product B-spline surfaces and bivariate B-spline surfaces on criss-cross triangulations. Finally, we present graphical results.
1. Introduction
When modeling free form shapes, e.g., ship hull forms, it could be more convenient to generate smooth parametric surfaces, interpolating a curve network, instead of using control points. This approach has been studied in the literature from different view points and with different methods, such as blending-function methods [1,2,3,4,5,6], smooth regularly parametrized piecewise polynomial surfaces [7] or subdivision schemes [8,9].
Tensor product B-spline surfaces, despite their limits, due to the parametric domain rectangular topology, can be a good tool in CAGD since they are quite simple to use and not too tightly constrained for the object shape in some cases (see e.g., [10,11] (Chapter 10)). Possible unwanted oscillations can be produced by their high coordinate degree, but they can be successfully avoided by smooth parametric surfaces on triangulations, having a lower total degree [12,13,14].
In this paper, we compare biquadratic tensor product B-spline surfaces and bivariate B-spline surfaces on criss-cross triangulations in order to detect advantages and disadvantages of both constructions. We investigate the degree two because it is the first degree that guarantees continuity and it is computationally simpler with respect to higher degrees. We note that in [10] (Chapter 10) a method based on Gordon surfaces is proposed to construct a tensor product B-spline surface interpolating a curve network. In this case, it is necessary to define three surfaces belonging to different spline spaces to be merged together by the knot refinement algorithm, while the method proposed here is directly based on the knot vectors of the given B-spline curves.
Starting from a so called minimal configuration [15], where a quadratic B-spline curve network is interpolated by a quadratic B-spline surface, whose knots match the curve network knots, we consider a more general approach by introducing some free parameters that provide some degree of freedom in the surface shape and that are obtained by letting some surface knots not satisfying such a match. This means that some surface knots are not network knots. In this regard, we investigate some properties of the obtained surfaces, both biquadratic and quadratic.
The paper is organized as follows.
The B-spline curve network and its compatibility conditions are introduced in Section 2, while the B-spline surface and its existence conditions are presented in Section 3 with an algorithm for its construction.
In Section 4, we present some numerical and graphical results.
2. The Network of B-Spline Curves
Let us denote by , and , , , , two given sets of control points, defining the quadratic B-spline curves
with and , respectively. As in [10] (Chapter 10) and in [15], here we suggest the following compatibility conditions to be satisfied by (1):
- C1.
- all the curves are defined onand all the curves are defined onThe quadratic B-spline functions and , involved in (1) have supports and , respectively [16,17]. We also consider the so called Greville abscissae, given byandto define , pre-image of for all s, and , pre-image of for all r (Figure 1);
Figure 1. Examples of a parametric domain with pre-images of the curve network and its control points (•). In (a) a rectangular partition is shown, in (b) a criss-cross triangulation . - C2.
- there exist parametersandsuch that
Condition C2. is always satisfied by at least a curve network, even if it is supposed to be given. This can be proven following the same logical scheme given in [15]. Indeed, defining the following quantities:
for and , with , and (setting to zero a possible in (3)), since from [18] (Chapter X) and [19] (Section 1.5)
and thanks to the local support property of the B-splines, condition C2. can be written as
Instead, on the boundary of the domain, we obtain
and
Therefore, taking into account that , , it is always possible to construct a curve network satisfying condition C2, because the number of its control points is greater than the number of constraints . Moreover, we remark that the case of minimal configuration is given when and .
3. Construction of the Interpolating B-Spline Surface
Let us consider two possible subdivisions of the parametric domain : a rectangular partition (Figure 1a), based on the knots and a criss-cross triangulation (Figure 1b), obtained by drawing the two diagonals in each rectangle of .
Here, we consider the two spline spaces it is possible to define on such partitions: of all biquadratic tensor product splines, being a bivariate polynomial of coordinate degree 2 in each rectangle of and of all quadratic splines, being a bivariate polynomial of total degree 2 in each triangle of . The first space has a basis defined by the set of B-splines , while the second one is generated by the set of B-splines with octagonal support (Figure 2) [16,17,20,21,22], being its dimension given by .
Figure 2.
Octagonal support of the bivariate quadratic B-spline.
Let be one of the two sets of spanning functions above mentioned. Then the B-spline parametric surface, interpolating the network (1), can be written as follows:
If , then is a tensor product surface, while, if , then is a triangulated surface.
To obtain such a surface, it is enough to compute its control points , , , having pre-images and a way to do it is to consider the network as a set of isoparametric curves of :
In the next theorem, the isoparametric conditions (5) and (6) are translated into new conditions on the ’s.
Theorem 1.
The curve network (1) is a set of isoparametric curves of if, and only if, the following conditions are satisfied:
for all control points in (4).
Proof.
From the Bernstein–Bézier (BB-) coefficients of , , , , [23,24], we get
Remark 1.
From Theorem 1, we can immediately get that
Now, we want to count the number of free parameters, useful to model the surface , i.e., the number of control points in the surface definition that can be arbitrarily chosen. Since and , we suppose and , with .
Theorem 2.
In order to model the surface , the number of free control points in is
Proof.
The number of free parameters (denoted by N) is given by the number of parameters we have to compute (denoted by ) minus the number of constraints given by the interpolation conditions (denoted by ).
is the dimension of the spline space used for the construction of the surface:
From Theorem 1, the number of interpolation conditions is , but, taking into account the redundant conditions at the four corners of the domain and the compatibility conditions C2. for each inner point , for and , then the number of interpolation conditions is
Therefore, we obtain
□
The aim of this section is the construction of the interpolating surface, where the constrained coefficients depend on the control points and of the curve network. From (7) and (8), we can observe that
Therefore, the ’s that are excluded from (7) and (8), i.e., for
are free parameters. The other parameters can be computed depending on them. Moreover, we can notice that (see Figure 3)
Figure 3.
Example of domain for Lemma 1.
- -
- the knots in the partitions U and V not associated to a curve of the network are barriers identifying subdomains in . In each subdomain, we have a minimal configuration;
- -
- the number of subdomains in is equal to ;
- -
- the control point in the left-down corner of each subdomain is identified as a free parameter;
- -
- the control point is always a free parameter.
The following lemma provides the necessary relations for the computations of the constrained control points.
Lemma 1.
If curves (1) are isoparametric curves of the surface (4), then the constrained control points have the following expression:
for , (excluding the free parameters in (17)), with
and , where (see Figure 3)
- -
- is the index of the last barrier before the control point in the direction U, i.e., ;
- -
- is the index of the last barrier before the control point in the direction V, i.e., ;
- -
- α is the number of barriers in the direction U before the control point ;
- -
- β is the number of barriers in the direction V before the control point .
Proof.
Let us consider a domain, as in Figure 3, and the first subdomain, where minimal configuration is present. From (8), we have , , . For , applying it repeatedly, we can write (see Figure 4)
where and .
Figure 4.
Example of path reconstruction in the first subdomain to get starting from .
Then, from (7) it holds for , and similarly, for a general j such that we have
with . Then, substituting (20) in (21) we have:
with
Now, we follow the same scheme in the second subdomain. So, from (8) , , , we are able to obtain
for e with
For the special case of minimal configuration, the expression is simpler and we get lemma 3.1 of [15].
Thus, the surface can be written as follows.
Theorem 3.
Let the B-spline curve network (1) satisfy the compatibility conditions C1. and C2. Then the surface (4) with isoparametric curves (1) is:
where
with defined in (19).
Proof.
The expression (22) follows directly from Theorem 1 and Lemma 1. □
Concerning the behaviour of the generation process, given in (18), we can state the following theorem related to the round-off error growth, showing that such a growth is linear.
Theorem 4.
If the sequence of partitions is A-quasi uniform, i.e., there exists a constant such that , then the round-off error growth is linear.
We omit the proof of the above theorem because it can be obtained by following the same reasoning given in Theorem 3.3 of [15]. If the sequence of partitions is uniform, i.e., , then Theorem 4 holds.
Remark 2.
Although the surface can be written as in Theorem 3, both for the case and for the case , we can note that in the case the number of free parameters is one less than in the case , since in the ’s are linearly dependent, the dependence relationship being [22,25]:
It is possible to write one of the free parameters in (22) depending on the others. In the special case of minimal configuration, we recall that (see [15]) this fact leads to the uniqueness of the interpolating surface . Moreover, if in (22) we consider all equal free parameters, we can use the dependence relationship (23) to obtain a unique surface interpolating the curve network also in the case of non minimal configuration.
4. Numerical Results
In this section we present several applications. We propose comparisons between surfaces interpolating the curve network both in and . Moreover, we highlight, with an example, the behaviour of interpolating surfaces in as pointed out in Remark 2.
4.1. Test 1
In this first example, we show a curve network to be interpolated (Figure 5) and compare tensor product and triangulated surfaces (Figure 6). Here, we consider two subdomains of the parametric domain , being the barrier at knot . As remarked in Section 1, the higher degree of tensor product appears in the higher oscillations.
Figure 5.
A curve network with .
Figure 6.
(a) Tensor product and (b) triangulated surfaces with , and the two free control points and , interpolating the curve network in Figure 5.
4.2. Test 2
Here again, we compare tensor product and triangulated surfaces in three different cases (Figure 7, Figure 8 and Figure 9), for given curve networks.
Figure 7.
(a) Tensor product and (b) triangulated surfaces with , , , being the barriers at knots . The network control points are taken from Test 1 of [26].
Figure 8.
(a) Tensor product and (b) triangulated surfaces with , , , being the barrier at knot . The network control points are taken from Test 3 of [26].
Figure 9.
(a) Tensor product and (b) triangulated surfaces with , , , being the barrier at knot .
4.3. Test 3
In the following example, we show what was noticed in Remark 2: in the case of all equal free control points, we obtain again the uniqueness of the triangulated surface (Figure 10b and Figure 11b), described in [15] for a minimal configuration, while under the same hypothesis tensor product surfaces change their shape (Figure 10a and Figure 11a).
Figure 10.
(a) Tensor product and (b) triangulated surfaces with and the two free control points , being the barrier at knots .
Figure 11.
(a) Tensor product and (b) triangulated surfaces with and the two free control points , being the barrier at knots .
4.4. Test 4
Regarding the choice of the free parameters, it is possible to choose them such that the surface is “smooth”, i.e., the energy of a thin plate described by the surface is minimal, e.g., see [27]. Since in a generic subdomain there is one free parameter, we can extend the method proposed in [15] (Section 4.2) and we can consider the following approximation
of the thin plate energy, with
Then the free parameter can be chosen by minimizing with respect to it. By setting , we obtain
Such a point is the one minimizing . The integrals in (24) can be exactly evaluated by a composite tensor-product Gauss–Legendre quadrature formula with nodes, in the case , and a composite Gaussian cubature on triangular domains (see [28]), implemented by the Matlab function triquad [29], in the case .
An example of the above choice of free parameters is proposed in Figure 12, where, on the left, it is immediately clear its effect on the tensor product surface with respect to the corresponding one in Figure 13.
Figure 12.
(a) Tensor product and (b) triangulated surfaces with , and free control point , obtained by the minimization process (24).
Figure 13.
(a) Tensor product and (b) triangulated surfaces with , and free control point .
4.5. Test 5
In this example, we compare the methods proposed here with another one that produces a Gordon-type biquadratic B-spline surface, [10] (Chapter 10).
In such a method, the surface is written as the Boolean sum of two skinned surfaces, interpolating the curves and given in (1), respectively, and one tensor product surface interpolating the points , given in (2) (for details of the construction see [10] (Chapter 10)). In order to obtain a standard B-spline representation of the resulting surface, it is necessary to make the three surfaces compatible in the B-spline sense (defined on the same knot vectors) by applying the knot refinement algorithm [10].
Given the curve network of Figure 14a, with , , we construct the three surfaces interpolating the network: in Figure 14b, the biquadratic Gordon-type B-spline surface; in Figure 15a, the biquadratic tensor product surface; and in Figure 15b, the quadratic triangulated surface. The free control point for the tensor product surface is determined by the minimization process (24) and we use it also for the triangulated one.
Figure 14.
(a) The curve network with and (b) the Gordon-type surface interpolating it.
Figure 15.
(a) Tensor product and (b) triangulated surfaces interpolating the curve network in Figure 14a.
The shape of the three surfaces is comparable from the graphical point of view, but we note that the Gordon-type surface is not defined on the rectangular partition defined by the curve network knot vectors, due to the knot refinement.
5. Conclusions
In this paper, we generalize the method proposed in [15] for the definition of a B-spline surface interpolating a B-spline curve network by the introduction of free parameters. The cases of biquadratic tensor product and quadratic triangulated surfaces are studied, compared and confirmed by graphical examples. In order to obtain more flexibility in the shape modeling of such surfaces, the possible introduction of double knots in their definition is an interesting topic that we intend to address in a forthcoming paper.
Author Contributions
Conceptualization, P.L. and S.R.; methodology, P.L. and S.R.; software, P.L. and S.R.; validation, P.L. and S.R.; formal analysis, P.L. and S.R.; investigation, P.L. and S.R.; resources, P.L. and S.R.; data curation, P.L. and S.R.; writing—original draft preparation, P.L. and S.R.; writing—review and editing, P.L. and S.R.; visualization, P.L. and S.R.; supervision, P.L. and S.R.; funding acquisition, P.L. and S.R. All authors have read and agreed to the published version of the manuscript.
Funding
This research has been made possible by the contribution granted by CNR in the framework of the Scientific Cooperation Agreement CNR-CNRST (Morocco), under the bilateral agreement n. SAC.AD002.014.032.
Institutional Review Board Statement
Not applicable.
Informed Consent Statement
Not applicable.
Data Availability Statement
The data presented in this study are available on request to the authors.
Acknowledgments
The authors are members of the INdAM Research group GNCS.
Conflicts of Interest
The authors declare no conflict of interest. The funders had no role in the design of the study; in the collection, analyses, or interpretation of data; in the writing of the manuscript, or in the decision to publish the results.
References
- Barnhill, R.E. Blending function interpolation: A survey and some new results. In Numerische Methoden der Approximationstheorie; Collatz, L., Werner, H., Meinardus, G., Eds.; Birkhauser Verlag: Basel, Switzerland, 1976; Volume 3, pp. 43–89. [Google Scholar]
- Bos, L.P.; Grabenstetter, J.E.; Salkauskas, K. Pseudo-tensor product interpolation and blending with families of univariate schemes. Comput. Aided Geom. Des. 1996, 13, 429–440. [Google Scholar] [CrossRef]
- Delvos, J.; Schempp, W. Boolean Methods in Interpolation and Approximation; Longman Scientific and Technical: Harlow, UK, 1989. [Google Scholar]
- Gordon, W.J. Spline blended interpolation through curve networks. J. Math. Mech. 1969, 18, 931–952. [Google Scholar]
- Gordon, W.J. Blending-function methods of bivariate and multivariate interpolation. SIAM Numer. Anal. 1971, 8, 158–177. [Google Scholar] [CrossRef]
- Gordon, W.J. Sculptured surface definition via blending function methods. In Fundamental developments of Computer Aided Geometric Modeling; Piegl, L., Ed.; Academic Press: London, UK, 1993. [Google Scholar]
- Peters, J. Smooth interpolation of a mesh of curves. Constr. Approx. 1991, 7, 221–246. [Google Scholar] [CrossRef]
- Conti, C.; Dyn, N. Blending based Chaikin type subdivision schemes for nets of curves. In Mathematical Methods for Curves and Surfaces; Daehlen, M., Morken, K., Schumaker, L.L., Eds.; Nashboro Press: Brentwood, TN, USA, 2005; pp. 51–68. [Google Scholar]
- Greshake, S.H.; Bronsart, R. Application of subdivision surfaces in ship hull form modeling. Comput.-Aided Des. 2018, 100, 79–92. [Google Scholar] [CrossRef]
- Piegl, L.; Tiller, W. The NURBS Book; Springer: Berlin/Heidelberg, Germany, 1995. [Google Scholar]
- Bouhiri, S.; Lamnii, A.; Lamnii, M.; Zidna, A. A C1 composite spline Hermite interpolant on the sphere. Math. Meth. Appl. Sci 2021, 44, 11376–11391. [Google Scholar] [CrossRef]
- Wang, R.H.; Li, C.J. A kind of multivariate NURBS surfaces. J. Comput. Appl. Math. 2004, 22, 137–144. [Google Scholar]
- Wang, R.H.; Li, C.J. Bivariate cubic spline space and bivariate cubic NURBS surfaces. In Proceedings of the Geometric Modeling and Processing 2004, Beijing, China, 13–15 April 2004; pp. 115–123. [Google Scholar]
- Wang, R.H.; Li, C.J. The multivariate quartic NURBS surfaces. J. Comput. Appl. Math. 2004, 163, 155–164. [Google Scholar]
- Dagnino, C.; Lamberti, P.; Remogna, S. Curve network interpolation by C1 quadratic B-spline surfaces. Comput. Aided Geom. Des. 2015, 40, 26–39. [Google Scholar] [CrossRef] [Green Version]
- Sablonnière, P. On some multivariate quadratic spline quasi-interpolants on bounded domains. In Modern Developments in Multivariate Approximations; Hausmann, W., Ed.; Birkhäuser Verlag: Basel, Switzerland, 2003; Volume 145, pp. 263–278. [Google Scholar]
- Sablonnière, P. Quadratic spline quasi-interpolants on bounded domains of , d = 1, 2, 3. Rend. Sem. Mat. Univ. Pol. Torino 2003, 61, 229–246. [Google Scholar]
- de Boor, C. A Practical Guide to Splines; Revised edition; Springer: Berlin, Germany, 2001. [Google Scholar]
- Chui, C.K. Multivariate Splines; CBMS-NSF Regional Conference Series in Applied Mathematics; SIAM: Philadelphia, PA, USA, 1988; Volume 54. [Google Scholar]
- Chui, C.K.; Wang, R.H. Concerning C1 B-splines on triangulations of non-uniform rectangular partition. Approx. Theory Appl. 1984, 1, 11–18. [Google Scholar]
- Dagnino, C.; Lamberti, P. On the construction of local quadratic spline quasi-interpolants on bounded rectangular domains. J. Comput. Appl. Math. 2008, 221, 367–375. [Google Scholar] [CrossRef] [Green Version]
- Wang, R.H. Multivariate Spline Functions and Their Applications; Science Press: Beijing, China; New York, NY, USA; Kluwer Academic Publishers: Dordrecht, The Netherlands; Boston, MA, USA; London, UK, 2001. [Google Scholar]
- Dagnino, C.; Lamberti, P.; Remogna, S. BB-Coefficients of Unequally Smooth Quadratic B-Splines on Non Uniform Criss-Cross Triangulations. Quaderni Scientifici del Dipartimento di Matematica, Università di Torino, 2008 n. 24. Available online: http://hdl.handle.net/2318/434 (accessed on 4 February 2022).
- Dagnino, C.; Lamberti, P.; Remogna, S. B-spline bases for unequally smooth quadratic spline spaces on non-uniform criss-cross triangulations. Numer. Algorithms 2012, 61, 209–222. [Google Scholar] [CrossRef] [Green Version]
- Wang, R.H.; He, T. The spline spaces with boundary conditions on nonuniform type-2 triangulation. Kexue Tongbao 1985, 30, 858–861. [Google Scholar]
- Conti, C.; Sestini, A. Choosing nodes in parametric blending function interpolation. Comput. Aided Des. 1996, 28, 135–143. [Google Scholar] [CrossRef]
- Hadenfeld, J. Local energy fairing of B-spline surfaces. In Mathematical Methods for Curves and Surfaces: Ulvik, 1994; Daehlen, M., Lyche, T., Schumaker, L.L., Eds.; Vanderbilt Univ. Press: Nashville, TN, USA, 1995; pp. 203–212. [Google Scholar]
- Lyness, J.N.; Cools, R. A survey of numerical cubature over triangles. Proc. Symp. Appl. Math. 1994, 48, 127–150. [Google Scholar]
- von Winckel, G. Matlab Procedure Triquad. Available online: http://www.mathworks.com/matlabcentral/fileexchange/9230-gaussian-quadrature-for-triangles (accessed on 4 February 2022).
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations. |
© 2022 by the authors. Licensee MDPI, Basel, Switzerland. This article is an open access article distributed under the terms and conditions of the Creative Commons Attribution (CC BY) license (https://creativecommons.org/licenses/by/4.0/).