Elsevier

Computers & Graphics

Volume 90, August 2020, Pages 84-94
Computers & Graphics

Special Section on SMI 2020
Curve guided T-spline skinning for surface and solid generation

https://doi.org/10.1016/j.cag.2020.05.021Get rights and content

Highlights

  • A T-spline skinning method is developed for high quality surface and solid generation.

  • Guiding curves are introduced to improve the quality of the skinned curves and solids.

  • LSPIA method is employed to ensure the fitting accuracy and the stability of iterations.

Abstract

Skinning is an essential technology in geometric modeling. Unlike non-uniform rational B-spline (NURBS) skinning, T-spline skinning does not require knot compatibility of the given cross-sections, and avoids superfluous of control points. In this study, we present a curve guided T-spline (CGTS) skinning method for surface and solid generation of high quality, which interpolates the given cross-sections. Guiding curves and least squares progressive and iterative approximation (LSPIA) method are involved in the CGTS skinning. Specifically, the guiding curves provide a visually pleasing shape for the skinned surface and solid, and the LSPIA method simplifies the iterative procedure, ensures the fitting accuracy, and shape preservation. On one hand, the CGTS surface skinning generates a visually pleasing and fairing skinned T-spline surface, which avoids the wiggle and crease problems. On the other hand, the CGTS solid skinning with optimization generates a trivariate T-spline solid with high quality. To meet the requirement of isogeometric analysis (IGA) for the skinned T-spline solid, an optimization approach is employed in the solid skinning to improve the quality of the skinned T-spline solid. Finally, the experimental examples presented in this paper demonstrate the effectiveness and efficiency of the CGTS skinning method.

Introduction

Surface skinning, also known as lofting, is a process of constructing a surface from a set of cross-sections [1], which has been widely used in shipbuilding, automobile, and aviation industry [2]. The lofting can be traced back to the period of manual design. In the early works of hull design, designers usually took sample points on each cross-section of the hull, and subsequently, either interpolated or approximated the sample points by non-uniform rational B-spline (NURBS) curves, called cross-sections. Therefore, a surface is constructed by skinning the cross-sections.

As NURBS surface is becoming an industry standard for representing freeform shapes, it is a common process to generate skinned NURBS surfaces [3] from a set of cross-sections. Usually, the cross-sections represented by NURBS have different degrees and independent knot vectors. To solve the incompatibility, degree elevation and knot insertion are employed [4], resulting in the explosion of knots and control points.

Sederberg et al. [5] presented T-spline as a generalization of NURBS, giving more flexibility in representing complex surface shapes with fewer control points than NURBS surfaces. Therefore, some T-spline surface skinning methods are developed to overcome the knot compatibility problem. However, wiggles will appear on the skinned surface if common knots between the adjacent curves are too few [6], and creases are unavoidably generated by the improved T-spline surface skinning method [7].

In this study, a curve guided T-spline (CGTS) skinning method for surface and solid generation of high quality is presented, thus overcoming the knot compatibility problem and interpolating all the given cross-sections. The CGTS surface skinning method is implemented by the following operations. First, an initial T-mesh is constructed by inserting intermediate cross-sections to the given cross-sections. In order to determine the best positions for the control points of the intermediate cross-sections, guiding curves are introduced to provide a fair shape of the given cross-sections along the longitudinal direction. Subsequently, some data points are sampled uniformly on the guiding curves, which are fitted with the skinned T-spline surface by several rounds of least squares progressive and iterative approximation (LSPIA) [8], [9]. Meanwhile, the control points of the T-spline surface are updated after each rounds of LSPIA, according to the interpolated conditions, which guarantees that the skinned surface interpolates the given cross-sections. Finally, a visually pleasing and fairing skinned T-spline surface is generated, avoiding the wiggle and crease problems. The CGTS solid skinning method is implemented similarly by interpolating the given cross-sectional T-spline surfaces. Furthermore, we adopt an optimization approach to improve the quality of the skinned T-spline solid. To summarize, the main contributions of this study are as follows:

  • Guiding curves are applied for providing a visually pleasing shape for the skinned surface and solid.

  • LSPIA method ensures the fitting accuracy and the stability of iterations.

  • CGTS skinning method interpolating the given cross-sections for high quality surface and solid generation is proposed.

The remainder of this paper is organized as follows. In Section 1.1, we review related work on the surface skinning, solid modeling and iterative fitting. In Section 2, preliminaries on T-splines and T-spline surface skinning are introduced. The CGTS surface skinning method with high fairness is presented in Section 3. The CGTS solid skinning method with optimization is described in Section 4. In Section 5, some experimental examples are illustrated to demonstrate the effectiveness and efficiency of the CGTS skinning method. Finally, Section 6 concludes the paper.

Surface skinning: In general, surface skinning methods are mainly classified into two categories, namely approximation methods [4], [10], [11], [12] and interpolation methods [1], [3], [6], [7], [13]. The approximation methods can approximate the skinned surface within given error bounds. The given curves can be rebuilt within the error bounds, and the explosion of the control points can be removed. The interpolation methods usually are applied when generating an interpolatory skinned surface.

As a generalization of NURBS surfaces, a T-spline surface permits T-junctions in its T-mesh, which enables local refinement[5]. Numerous T-spline surface skinning methods were proposed to overcome the knot compatibility problem [6], [7], [12], [14]. Yang and Zheng [12] presented an approximate T-spline skinning method, which fitting the input rows of data points within a prescribed tolerance. An interpolation T-spline skinning method was developed by Nasri et al. [6] by inserting an intermediate cross-section between the given cross-sections. However, the wiggle problem will appear if common knots between the adjacent curves are too few. The surface skinning method was extended to periodic T-spline in semi-NURBS form by Li et al. [14], who addressed the wiggle problem and reduced the wiggle effect using 4-point interpolatory subdivision scheme [15] to derive the intermediate cross-sections. Oh et al. [7] provided a fundamental solution to avoid wiggles by adding two intermediate cross-sections, while major crease problem occurs on the skinned surface. Engleitner and Jüttler [13] applied the framework of patchwork B-splines to the construction of interpolated skinned surfaces, which not only reduces the resulting data volume but also limits the propagation of derivative discontinuities.

Solid modeling: NURBS and T-spline solid modeling methods are developed mainly for producing the three-dimensional physical domain in isogeometric analysis (IGA) [16]. Specifically, Zhang et al. [17] introduced a skeleton-based method of generating NURBS solids through analyzing arterial blood flow in IGA. A cylinder-like trivariate B-spline solid was generated through harmonic-function-based volumetric parameterization [18]. Aigner et al. [19] presented a variational framework for generating NURBS solid by parameterizing a swept volume based on the given boundary conditions and guiding curves. Optimization approaches have been developed for filling boundary-represented models to produce trivariate B-spline solids with positive Jacobian value [20], [21]. Moreover, Lin et al. [22] presented a discrete volume parameterization method for tetrahedral mesh models and an iterative fitting algorithm for trivariate B-spline solids generation. The method was improved [23], [24] by applying pillow operation and geometric optimization to guarantee the generated B-spline solids with positive Jacobian value.

Due to the flexibility of T-splines in representing complex shapes with fewer control points than NURBS, T-spline solid modeling methods have been intensively studied. Escobar et al. [25] constructed T-spline solids using fitting triangular mesh models with zero-genus. Moreover, a mapping-based rational T-spline solid construction method was presented for zero-genus topology as well [26]. Wang et al. [27] proposed a method of constructing T-spline solids using boundary triangulations with an arbitrary genus topology by polycube mapping.

Iterative fitting: The progressive-iterative approximation (PIA) was first proposed in Refs. [28], [29], which is an iterative fitting method with explicit geometric meanings, advancing the handling of the geometric problems in the field of geometric design. In Ref. [30], the PIA method was proved to be convergent for NURBS. A local format of the PIA method was developed in [31]. Subsequently, the PIA format was extended to subdivision surface fitting [32]. To avoid the limitation of the PIA method that the number of the control points must be equal to that of the data points, some extended iterative fitting formats were developed to approximate the given data points, namely, extended PIA (EPIA) [33] and LSPIA [8], [9].

Section snippets

Preliminaries

Preliminaries on T-spline, LSPIA with T-splines and T-spline surface skinning are introduced in this section.

CGTS surface skinning with high fairness

Unlike the approximate T-spline skinning method proposed by Yang and Zheng [12], the given cross-sections can be interpolated by the proposed CGTS skinning method in this study. The whole algorithm for the CGTS surface skinning method is illustrated in Algorithm 1. Specifically, given a set of ordered cross-sections as input, a series of isoparametric points are sampled on the given cross-sections. By linearly interpolating the isoparametric points along the longitudinal direction, some linear

CGTS solid skinning with optimization

With the advent of isogeometric analysis (IGA), which is a numerical analysis method based on spline theory, creating spline solids efficiently for IGA is becoming an urgent problem in the field of solid modeling. In this study, the CGTS solid skinning method is developed. Given a set of ordered cross-sectional surfaces, and skinning them with T-splines, a trivariate T-spline solid can be generated, which interpolates the given T-spline surfaces. Furthermore, due to the fact the Jacobian value

Implementation, results and discussions

The CGTS skinning method is implemented using the C++ programming language and tested on a PC with a 3.60 GHz i7-4790 CPU and 16 GB RAM. In this section, some examples are presented, and implementation details are discussed.

Conclusion

In this study, we have presented a CGTS surface skinning method with high fairness to interpolate the given cross-sections. The wiggles and creases appearing in the skinning surfaces using Nasri’s and Oh’s skinning methods can be removed. The introduced guiding curves in the developed method provide a visually pleasing shape for the skinned surface. The LSPIA method not only simplifies the iterative process in Oh’s skinning method, but also ensures the fitting accuracy and stability of

CRediT authorship contribution statement

Chuanfeng Hu: Methodology, Software, Resources, Writing - original draft, Visualization, Project administration. Jiaming Ai: Software, Validation, Investigation, Data curation. Hongwei Lin: Conceptualization, Writing - review & editing, Supervision, Funding acquisition.

Declaration of Competing Interest

The authors declare that they have no known competing financial interests or personal relationships that could have appeared to influence the work reported in this paper.

Acknowledgments

This paper is supported by the National Natural Science Foundation of China under Grant Nos. 61872316 and 61932018.

References (36)

Cited by (7)

  • Hyperpower least squares progressive iterative approximation

    2023, Journal of Computational and Applied Mathematics
    Citation Excerpt :

    However, these classical methods lead to relatively slowly convergent GIMs. Since the rate of convergence is important in complex applications (e.g., fitting large data sets [6], mesh and solid generation [14,15], etc.), many attempts have been made to accelerate GIMs. The weighted progressive iterative approximation (WPIA) method [16] uses the modified Richardson iteration method [12].

View all citing articles on Scopus
View full text