SEARCH

SEARCH BY CITATION

Keywords:

  • subdivision;
  • B-spline;
  • multiple knot;
  • crease;
  • NURBS;
  • I.3.5[Computer Graphics]: Computational Geometry and Object Modelling—Curve;
  • surface;
  • solid and object representations

Abstract

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

We deal with subdivision schemes based on arbitrary degree B-splines. We focus on extraordinary knots which exhibit various levels of complexity in terms of both valency and multiplicity of knot lines emanating from such knots. The purpose of truncated multiple knot lines is to model creases which fair out. Our construction supports any degree and any knot line multiplicity and provides a modelling framework familiar to users used to B-splines and NURBS systems.

1. Introduction

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

We demonstrate how creases can be added to Cashman's non-uniform rational B-spline (NURBS)-compatible subdivision [Cas10]. We produce creases that are mathematically similar to creases in NURBS surfaces, but with the additional feature that they can start and stop at arbitrary knots, fairing out smoothly to normal surface. Our creases are different in character from DeRose's creases [DKT98], which are for Catmull-Clark (degree 3) subdivision surfaces [CC78], and our creases are applicable to subdivision surfaces of any degree, not just those of degree three.

NURBS surfaces and subdivision surfaces are two of the principal surface representations used in industry. NURBS is industry-standard in CAD. Subdivision surfaces are widely used in 3D computer animation. Both can be considered to be different types of generalization of tensor-product uniform B-splines. NURBS generalizes to non-uniform knot spacing and to rational functions via weights, providing such features as perfect circular cross-sections, but maintains the constraint that the control mesh must be a rectangular array of control vertices. Subdivision surfaces generalize to arbitrary topology, but typically maintain the constraint that the underlying foundation is uniform. Practical subdivision surfaces are either quadratic (degree 2) or cubic (degree 3). NURBS surfaces can be of any degree, with commercial systems offering degrees up to above 20.

Cashman [CADS09; Cas10] developed NURBS-compatible subdivision, which provided a subdivision mechanism for a true superset of NURBS for arbitrary odd degree. That is, it is a generalization of non-uniform tensor-product B-splines. Therefore, any odd-degree NURBS can be represented in Cashman's formulation, with the advantage of arbitrary topology.

Our work considers creases in surfaces. Creases are an important modelling ingredient. Standard subdivision surfaces are smooth everywhere. It is known that using an everywhere smooth surface to model sharp features results in poor geometric fit and unwanted undulations [HDD*94].

We introduce a further generalization of Cashman's subdivision framework that supports modelling with creases (Figure 1). Our approach is based both on Cashman's subdivision framework [Cas10] and on arbitrary degree T-constructions, e.g. [Fin08; DLP13].

image

Figure 1. From left: the control mesh of a car model (inspired by Pixar's Cars). Extraordinary vertices are marked by cyan bullets. Edges corresponding to multiple knot lines are shown in green (double) and red (triple). The limit surface with creases and a close-up showing a vanishing feature running into an extraordinary point of valency 3.

Download figure to PowerPoint

Traditional subdivision surfaces are a generalization of uniform tensor product B-splines [CC78]. Cashman's surfaces are a generalization of non-uniform tensor product B-splines [Cas10]. Creases in subdivision surfaces based on non-uniform tensor product B-splines can be achieved by three methods:

  • by making control vertices coalesce,
  • by modifying subdivision rules,
  • by allowing knot lines to be multiple.

We investigate the third approach. It exposes limitations in Cashman's framework. Cashman's framework allows multiple knot lines, provided that the crease propagates across the entire mesh, from one boundary to another (or, equivalently, forms a closed loop). This is a significant limitation. Our construction, by contrast, allows multiple knot lines to terminate at any knot, rather than just at a boundary. The corresponding discontinuity in the surface then fairs out smoothly as shown in Figure 1. This extends the capability of Cashman's framework, enabling a wider range of surfaces to be modelled. Our construction yields subdivision surfaces of any degree.

2. Related Work

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

Our work is not the first to consider the addition of creases to subdivision surfaces. Semi-sharp creases, introduced by DeRose et al. [DKT98], provide an elegant algorithmic approach. DeRose's idea is to use crease rules for the first few subdivision steps and then switch to normal rules. This allows for edges with a range of visual sharpness. DeRose's method could, in principle, generalize to any degree. However, the actual implementation supports degree three only and it is far from obvious how to handle extraordinary regions with creases for higher degrees. This is owing to the fact that the number of stencils increases quadratically with degree and linearly with valency at extraordinary vertices and faces.

Other examples of modifying rules of Catmull-Clark subdivision include fine level feature editing [KS99; BMZB02] and normal control [BLZ00]. DeRose's idea [DKT98] has also been used for surface fitting with semi-sharp features [LD09].

Early attempts at bivariate non-uniform subdivision for arbitrary topology include Sederberg's NURSS [SZSS98]. While successful, only degrees two and three are supported and there are no continuity guarantees when multiple knot lines are present.

Müller [MRF06; MFR*10] introduced a new variant of Catmull-Clark which allows for varying knot intervals. Direct evaluation of the limit surface is also available. Müller's schemes recreate Catmull-Clark patches in neighbourhoods of extraordinary vertices. Therefore, multiple knot lines, which are supported in regular regions, cannot influence extraordinary regions, unlike our method which can support multiple truncated knot lines that terminate at an extraordinary knot.

More recently, Huang and Wang [HW11] extended Doo-Sabin subdivision to the non-uniform case, including double knot lines. This construction is limited to degree two only and lacks a complete continuity analysis.

Cashman's ‘NURBS-compatible subdivision' [CADS09; Cas10] is a bivariate generalization of his own univariate refine-and-smooth formulation [CDS09]. Cashman's framework allows multiple knot lines, but not in extraordinary regions. More precisely, a multiple knot line cannot run through or terminate at an extraordinary knot. Also, multiple knot lines (just as single knot lines) need to run across the whole surface along a strip of quads and can terminate only at the boundary. These shortcomings motivated our research.

Our contribution is related to so-called T-constructions (see Section 'Truncated Multiple Knot Lines'), which include T-splines [SZBN03], hierarchical B-splines [FB88; VGJS11], truncated B-splines [GJS12], LR B-splines [DLP13] and T-meshes [DCL*08]. However, our approach is different: we do not consider T-constructions but rather we first consider subdivision rules in the vicinity of a truncated knot line and from this we are able to deduce subdivision rules for the neighbourhoods of knots of arbitrary valency and complexity.

3. Our Contribution

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

The purpose of our truncated multiple knot lines is to model creases (discontinuities of certain derivatives in general) which fair out. We

  • can make multiple knot lines stop at any knot,
  • make creases fair out smoothly,
  • support any degree and multiplicity,
  • can combine our construction with tuning for bounded curvature, for good Gaussian curvature behaviour, and potentially other tuning approaches,
  • provide a modelling framework familiar to users used to B-splines and NURBS systems,
  • can introduce new freedoms automatically using knot insertion.

Note that our creases can terminate at any point corresponding to a knot, whether extraordinary or not, thus we can even produce creases that run part way across what would otherwise be a normal NURBS patch; e.g. Figure 3(c)–(f).

As we show below, the presence of truncated multiple knot lines causes the interplay between the knot mesh and the control mesh to become non-trivial: they do not have the same connectivity even for odd degrees (this also applies to T-constructions). This makes the investigation of subdivision more challenging. Our approach provides one solution to this disparity.

To provide a good understanding of our contribution, we first explain the different types of extraordinary knots that can arise in a general mesh (Section 'A Characterization of Extraordinary Knots'). We then introduce the simplest non-trivial extraordinary knot as a worked example of knot line truncation at an extraordinary knot (Section 'Truncated Multiple Knot Lines') leading to subdivision rules for extraordinary vertices and faces of this type (Section 'Subdivision at a Knot of Type inline image'). We generalize this example to rules for extraordinary knots at which any type of multiple knot line terminates (Section 'General Configurations'). Having presented the new work discursively (Sections 'Truncated Multiple Knot Lines'-'General Configurations'), we summarize it more rigorously (Section 'Summary of Subdivision Algorithm'). Continuity of our surfaces is discussed in Section 'Conclusions and Future Work'.

4. A Characterization of Extraordinary Knots

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

Traditionally, when dealing with generalizations of tensor-product splines, a vertex within the control mesh is called ordinary if it has valency 4 and extraordinary if it has valency other than 4 (and analogously for faces). This terminology breaks down when multiple and truncated knot lines are present. In order to avoid the terminology problem, we focus on the knot mesh, i.e. the partitioning of the parameter space (a manifold in general) with respect to knot lines, instead of the control mesh. A vertex in the knot mesh is called a knot and its valency is equal to the number of knot lines emanating from it, counted without multiplicities.

In our figures, knot meshes are depicted in grey, control meshes and their vertices are depicted in black (e.g. see Figure 5). We also note that we associate control vertices with their Greville abscissae [Gre67] or their generalization, the natural configuration [BS88].

To classify knots, we introduce the following notation. Let inline image be a knot of valency inline image in a knot mesh and let inline image be multiplicities of knot lines emanating from inline image, ordered anticlockwise. Then, the type of inline image is described as inline image; see Figure 2. For instance, the type of a knot in a tensor-product scenario with all knot lines single is described as inline image. Moreover, any knot whose incident knot lines do not correspond to a tensor-product scenario will be called an extraordinary knot, EK for short, and marked by a cyan square □.

image

Figure 2. Some knot meshes with various levels of complexity (multiple knot lines are depicted by lines close together): (a) the simplest situation, (b) a tensor product situation with a double knot line in only one direction, (c) still tensor product but with double knot lines in both directions, (d) a conventional extraordinary knot with single knot lines and (e) with double knot lines. In these two cases, we can use Fourier partitioning to analyse the situation. In the last four cases (f–i), we cannot use Fourier simplification, and in (h) and (i) we cannot even use mirror symmetry. We emphasise that, except for tensor product scenarios, all multiple knot lines are truncated at the extraordinary knot, not running through it. EKs are marked by a cyan square.

Download figure to PowerPoint

Thus, Figures 2(a)–(c) show ordinary knots while Figure 2(f) shows an EK. Note that a knot of valency 4 at which a multiple knot line terminates is extraordinary (e.g. Figure 2 f). These considerations are independent of the degree of a particular scheme, both odd and even degrees are covered.

The simplest situation is shown in Figure 2(a), i.e. a tensor-product structure with single knot lines. Figures 2(b) and (c) depict other tensor-product scenarios, this time with one and two double knot lines, respectively.

The simplest non-trivial situation is shown in Figure 2(d). Subdivision at EKs of type inline image with any valency was considered for the first time by Catmull and Clark [CC78] and Doo and Sabin [DS78] for degrees two and three. A generalization of these schemes to any odd degree and non-uniform knot spacings was introduced by Cashman [Cas10] and termed ‘NURBS-compatible subdivision’.

However, even this general framework does not handle multiple knot lines at extraordinary knots; see Figure 2(e). This issue was addressed previously by us [KSD13] for degree three and any valency at a knot of type inline image. We remark that the situations considered so far are either trivial (Figures 2 a–c) or exhibit an n-fold symmetry (Figures 2 d and e), which significantly simplifies their investigation. We now extend this work to cover the more challenging cases. Note that all multiple knot lines that are not in a tensor product configuration have to terminate at the corresponding extraordinary knot—they cannot pass through it.

5. Truncated Multiple Knot Lines

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

We start our investigation by looking at one of the simplest scenarios without n-fold symmetry, namely inline image, bi-degree three; see Figure 2(f). To approach this, consider first the tensor-product scenario of Figure 3(a). If we let one of the horizontal knot lines become a double knot line, we obtain the situation depicted in Figure 3(b), i.e. we still did not leave the tensor-product world. We can understand this in terms of knot insertion and basis function splitting.

image

Figure 3. Truncated multiple knot lines for degree 3. The truncation occurs at the knot shown in cyan in (c)–(f). Its basis function support is shown in blue in (d). Note that for everywhere far enough to the right in (e), the configuration becomes that of (a), far enough to the left that of (b). A triple knot line truncation scenario is depicted in (f). In order to emphasise the knot line structure (grey), the outer part of the control mesh (black) is omitted.

Download figure to PowerPoint

Suppose now that we truncate the double knot line at the cyan knot in Figure 3(c), keeping the left-hand side of the knot line double and making the right-hand side single. If we split the basis function corresponding to the cyan knot, due to the support of the function (shown in blue in Figure 3 d), the double knot line would propagate (in red) beyond the cyan knot. Thus, in order to truncate the knot line at the cyan knot, its corresponding basis function must not be split and by the same argument the same applies also to the left neighbour of the cyan knot. This behaviour has been observed also in the context of arbitrary degree T-splines [Fin08] and similar T-constructions.

We thus obtain the configuration depicted in Figure 3(e) for a knot of type inline image, with a truncated double knot line and bi-degree three. Figure 3(f) shows a similar situation, inline image, this time with a truncated triple knot line. For a general degree d, only those basis functions whose support (with width equal to inline image) is completely crossed by the multiple knot line can be split and therefore only at some offset from the extraordinary knot does an irregularity in the control mesh appear. For odd degree d, this appears at an offset of inline image. This applies also to even degrees, even though their knot mesh—control mesh correspondence is different; see Figure 5, left. In the limit, as we subdivide, the irregularity converges on the EK; for even degrees, an extraordinary control face converges to a point over the EK.

In T-constructions, truncated knot lines create T-junctions. By contrast, in our approach, we get a region where the mesh transitions from multiple knot line to single knot line. This is shown by the black dashed lines; see Figures 3(e) and (f).

Now that we understand the configuration of control vertices corresponding to the vicinity of an extraordinary knot, we can proceed to derive subdivision rules for these control vertices.

6. Subdivision at a Knot of Type inline image

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

Let us look first at the situation in the vicinity of inline image as this example aids understanding of more complex scenarios. Since our approach generalizes straightforwardly to higher degrees, we explain it here for degrees two and three only.

In a subdivision step, we insert a knot line into the middle of every non-zero knot interval. We use stencils to explain how we subdivide at inline image, as it makes the example easier to comprehend. Control vertices are marked as shown in Figure 4.

image

Figure 4. Colour coding of old and new control vertices appearing in a subdivision step using stencils.

Download figure to PowerPoint

As we see in Figure 5, the natural configuration of the black control vertices is not tensor product due to the presence of inline image. Thus, stencils for some of the new control vertices do not have a tensor product structure. For example, the new red control vertex in Figure 6, left, cannot be computed using a tensor product stencil. However, we can use knot insertion (Figure 6, middle) to compute a new, yellow, control vertex, which we call a ghost control vertex. The ghost vertex turns the local configuration into a tensor product one. The new red control vertex is then computed using a tensor product stencil; see Figure 6, right.

image

Figure 5. Natural configurations for bi-degree 2 (left) and bi-degree 3 (right) for inline image: knot lines (grey), control vertices (black) and ghost control vertices (yellow) created by knot insertion (marked by arrows).

Download figure to PowerPoint

image

Figure 6. The stencil of the red control vertex; an example for degree 2, cf. Figure 5, left. Left: the original configuration. Middle: knot insertion introduces a ghost control vertex (yellow). Right: the new tensor-product stencil for the red control vertex.

Download figure to PowerPoint

Similarly, Figure 7 depicts an analogous procedure for a new red control vertex in the vicinity of inline image, this time for degree 3. Knot insertion introduces two ghost control vertices (yellow), which then contribute to forming a tensor product stencil; see Figure 7, right.

image

Figure 7. The stencil of the red control vertex; an example for degree 3, cf. Figure 5, right. Left: the original configuration. Middle: knot insertion introduces ghost control vertices (yellow). Right: the new tensor-product stencil for the red control vertex.

Download figure to PowerPoint

By this strategy, every new control vertex can be computed using a tensor product stencil. All the required ghost control vertices (created by knot insertion) are shown in yellow in Figure 5 for degrees 2 and 3. Ghost control vertices are created solely for the purpose of this subdivision step, they do not themselves appear in the subdivided mesh.

Since only knot insertion is used to compute the ghost control vertices, our construction works for any degree d. Observe that the configuration of control vertices is invariant under refinement. This means that our subdivision schemes are stationary. Armed with the understanding of valency four scenarios, we now move on to more complicated ones.

7. General Configurations

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

We now consider situations at extraordinary knots of arbitrary valency, where one or several multiple knot lines terminate.

7.1. One multiple knot line at an extraordinary knot

First, we address situations when only one knot line is multiple and all other knot lines are single. Consider the extraordinary knot inline image for degree three; see Figure 8, top. Since the EK itself does not influence the splitting of basis functions along the double knot line, the configuration of control vertices is analogous to that of inline image, cf. Figure 5, right.

image

Figure 8. An extraordinary knot of type inline image and the corresponding configuration of control vertices for degree three. Bottom: a subdivision step using tensor product stencils. New control vertices with stencils influenced by ghost control vertices (yellow) are shown in red, the standard ones are in blue.

Download figure to PowerPoint

Further, for example in the cubic (degree 3) case, all new control vertices can be computed using tensor product stencils, with one exception, the new control vertex corresponding to the EK itself (cyan). This special control vertex can, however, be obtained in terms of its one ring neighbourhood using the original Catmull-Clark weights, or better, weights chosen by eigenanalysis that give bounded curvature [ADS06; Cas10]. Stencils of these vertices will be called extraordinary stencils.

For higher degrees, knot insertion, computation of ghost vertices and conversion to tensor product stencils all work in the same fashion as described above. The only difference is, since support width increases with degree, that more vertices with extraordinary stencils emerge; see the green vertices in Figure 9 for a degree five scheme. For degree d, the green vertices form an r-ring neighbourhood of the new extraordinary vertex or face (in the new control mesh) corresponding to the EK, with inline image. Namely for low degrees

  • display math(1)

inline image means that there are no green vertices present. The new positions of the green vertices are computed using Cashman's non-uniform refine and smooth algorithm [CADS09].

image

Figure 9. The distribution of new control vertices at inline image for degree 5. Notice that green and red vertices are well separated.

Download figure to PowerPoint

We now show that the colour assignment introduced in Figure 4 is well defined, i.e. that no new control vertex can be simultaneously red (depend on ghost vertices) and green (have an extraordinary stencil). As we have already seen, the valency influences the configuration of control vertices in a straightforward way. Moreover, in situations with only one multiple knot line, the actual multiplicity does not influence the separation of new red and green vertices. Consequently, it is sufficient to focus only on the configuration at inline image for degree d.

The support width of a standard, univariate, degree d B-spline basis function is inline image. The above claim then follows from the width of stencils for new vertex vertices (those new vertices that correspond to old vertices) and new edge vertices (those new vertices that correspond to the centres of old edges)—see Figure 10—and from the fact that the centre of the last basis function split occurs at the distance of inline image from the extraordinary knot. Consequently, all the new red vertices along a knot line of multiplicity m form a rectangle of d vertices along the knot line times inline image vertices across it.

image

Figure 10. Pascal's triangle and the derivation of univariate stencils (each row must be divided by 2d). For odd degrees, new vertex-vertex stencils are shown in bold. Their size is equal to inline image. Even degree stencils are of size inline image.

Download figure to PowerPoint

For odd degree schemes, there is a column of new blue vertices (see Figure 8, bottom, and Figure 9) separating new red and green ones. For even degree schemes, this column is not present.

7.2. Several multiple knot lines meeting at an extraordinary knot

We next address the question of mutual interference of multiple knot lines along several (or all) rays at an extraordinary knot. We note that the multiple knot lines are all truncated at the EK, not running through it.

It is easy to observe that if multiple knot lines do not occur along adjacent rays (e.g. inline image), then the approach of the previous section applies to each of the rays independently. Moreover, the valency of an EK plays no significant role in this investigation. Therefore, it suffices to investigate only the case of inline image for degree d.

Consider the situation of Figure 11, i.e. inline image for degree three. The configuration of control vertices in the vicinity of the new red vertex is not a tensor product one. Similarly to the approach in Section 'Subdivision at a Knot of Type inline image', we compute ghost vertices (yellow) using knot insertion; only this time, the knot insertion needs to act along both truncated multiple knot lines. Nevertheless, as standard B-spline theory tells us, the sequence in which knots are inserted does not matter and the control vertex in dark yellow is unique for all degrees. This vertex then, along with some of the other ghost and old vertices, forms a tensor product stencil of the new red vertex.

image

Figure 11. Control mesh configuration at inline image for degree 3. Bright yellow vertices are computed using knot insertion in one direction only, whereas dark yellow marks a vertex created by knot insertion in two directions. The nine vertices contributing to the tensor product stencil of the red vertex lie on the pink rectangle.

Download figure to PowerPoint

Our approach using knot insertion and ghost vertices generalizes to any degree and any type of extraordinary knots. An example with inline image and inline image is shown in Figure 12, cf. Figure 1. More examples are shown in Figures 13-15.

image

Figure 12. The car model of Figure 1. Due to symmetry, only a half of the control mesh is shown. Extraordinary vertices, two each of inline image and inline image, are marked by cyan bullets. Edges corresponding to multiple knot lines are shown in green (double) and red (triple). From left: Original mesh with edges marked by multiplicity and the resulting control mesh after knot insertion. New control vertices have been moved to capture the desired shape. Right: Two steps of cubic refinement of the control mesh.

Download figure to PowerPoint

image

Figure 13. A cube-corner example of inline image at degree 2. Knot line multiplicity three creates a discontinuity controlled by the vertices incident with the blue edges of the control mesh (left). The extraordinary face is shown in cyan. Right: Gaussian curvature (discrete estimation) of the limit surface and its reflection lines.

Download figure to PowerPoint

image

Figure 14. A symmetric example of inline image, degree 3. Note that knot lines of multiplicity 4 allow us to create discontinuities in the surface. Nevertheless, C1 continuity at the extraordinary knot is preserved.

Download figure to PowerPoint

image

Figure 15. An example of inline image, degree 3. The extraordinary vertex is marked by a cyan bullet. Edges corresponding to multiple knot lines are shown in green (double) and red (triple).

Download figure to PowerPoint

8. Summary of Subdivision Algorithm

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

Having presented our approach to subdivision with multiple knot lines in detail in Sections 'Truncated Multiple Knot Lines''General Configurations', we now summarize its most important steps:

(1) Control mesh design: The input is a degree d and a quadrilateral subdivision control mesh inline image (extraordinary faces are allowed if d is even). The user (or an automated system in case of surface fitting with features) marks sequences of edges (or strips of faces if d is even) by desired knot line multiplicity; see Figure 12, top left. B-spline knot insertion then automatically introduces new control vertices, which the user is free to modify (see Figure 12, top right), resulting in a marked mesh inline image.

(2) Topological step: Mesh inline image is subdivided topologically into inline image depending on its EKs (e.g. Figure 9). No positions are computed at this step. Each new control vertex of inline image is assigned a colour according to Figure 4: colour every vertex blue; colour the vertices of the r-ring neighbourhood (1) of the new (extraordinary) vertex or face green; colour red the vertices in the rectangular region of size inline image along each knot line of multiplicity m; see Figure 9.

(3) Geometric step: Ghost control vertices are computed using knot insertion where required by new red control vertices. Then, the positions of new blue and red control vertices are computed using standard tensor product degree d B-spline stencils acting on inline image. The positions of new green control vertices are computed using Cashman's non-uniform refine-and-smooth algorithm [CADS09]. This procedure assigns new positions to all control vertices of inline image; see Figure 12, bottom left. The multiplicity marking of inline image is inherited by inline image in a straightforward fashion, analogously to subdivision with creases [DKT98].

Repeating Steps 2 and 3 gives a stationary subdivision scheme. The resulting limit surface has features (discontinuities) at the desired places, as marked in Step 1.

9. Discussion

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

We now address continuity of our surfaces, bounded curvature, exact evaluation and compare to semi-sharp creases of [DKT98].

9.1. Continuity

The standard approach to continuity analysis of subdivision schemes is via spline rings [PR08], see Figure 16. However, our new scheme is based on an existing one, so the continuity of that scheme applies everywhere except along the crease lines that we have added to the surface. Our additions are explicitly designed to model sharp creases, places at which continuity is reduced. Therefore, our continuity analysis is straightforward.

image

Figure 16. A part of the spline ring for degree three at inline image. Control vertices influencing the dark red region are shown in orange.

Download figure to PowerPoint

In the symmetric, unmodified case with all knot lines single the limit surface is C1 continuous at extraordinary knots of any valency inline image and for degrees inline image, and inline image everywhere else [Cas10]. At a desired crease, knot insertion of a truncated knot line raises its multiplicity to d, but does not change the surface. Only when the user moves the newly created control points out of their knot-inserted configuration does the continuity along the truncated knot line drop to C0 and a crease is created. This crease then fairs out into the original surface at extraordinary points. These points form transitions between the C0 crease and the inline image continuous surface. Thus, the continuity at the extraordinary point itself is at least C0. Our numerical verification of sufficient conditions for C1 continuity for low degrees, valencies, and knot line multiplicities (e.g. the configurations shown in Figures 16 and 17) suggests that C1 continuity is preserved at extraordinary knots of any type.

image

Figure 17. A basis function for degree 3 with inline image (cyan) at the boundary of its support (outlined in black).

Download figure to PowerPoint

9.2. Bounded curvature

Tuning for bounded curvature is a useful additional feature for subdivision schemes, previously adopted for Catmull-Clark [ADS06] and Cashman's method [Cas10]. Our new method is compatible with such tuning methods. Tuning is based on multipliers that modify the weight of an extraordinary vertex in three types of stencil:

  • contributions to the extraordinary vertex itself,
  • contributions to edge-connected vertices,
  • contributions to face-connected vertices.

These multipliers affect only the 1-ring neighbourhood of an extraordinary vertex in the new control mesh. Thus, the tuning of Cashman [Cas10] for bounded curvature and the tuning of Augsdörfer [ADS06] for good curvature behaviour are both compatible with our approach.

Two simple examples with bounded curvature tuning [Cas10] are shown in Figure 18. Bounded curvature solutions for even degree schemes remain a topic for future research [Cas10, Section 6.4].

image

Figure 18. Two examples with extraordinary knots. Bounded curvature solutions of [Cas10] have been used. Top: inline image, degree 5. Bottom: inline image, degree 7.

Download figure to PowerPoint

9.3. Exact evaluation

An important ingredient for some applications, such as analysis, is exact evaluation [Sta98; NLG12; NLMD12]. In the non-uniform case, Cashman's framework requires selective knot insertion to create uniform regions around EKs. In our, uniform case, this stage is not necessary and Stam's approach [Sta98] can be applied, because multiple knot lines influence the evaluation of tensor product B-spline patches in a straightforward way. As for the EKs themselves, we note that truncated multiple knot lines do not alter the limit point and limit normal stencils at EKs of any type compared to Cashman's scheme; see Figure 17. Thus these limit stencils can be computed from the eigenrows (right eigenvectors) of the subdivision matrix.

9.4. Comparison

Since our method applies to arbitrary degree subdivision, it is difficult to compare it with existing techniques, which only apply to degrees two and three. Figure 19 shows a similar configuration to Figure 1, using DeRose's creases in place of our method. Because our method automatically introduces more degrees of freedom at the creases (Figure 1), DeRose's method is unable to achieve the level of control of our method. Figure 19 is therefore the closest approximation to our results. The red creases (C0 in our method) are hard straight creases in DeRose's method. The green creases (C1 in our method) are C2 regions of high curvature in DeRose's method. Our creases fair out smoothly into C2 surface, whereas DeRose's creases terminate abruptly at the extraordinary points.

image

Figure 19. Sharp creases (red) and semi-sharp creases (green, sharpness equal to two) on a car model (cf. Figure 1) created by semi-sharp crease rules of [DKT98].

Download figure to PowerPoint

10. Conclusions and Future Work

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References

We have presented a subdivision framework which allows modelling with sharp features. It is based on Cashman's NURBS-compatible subdivision framework and addresses the important questions how to make a multiple knot line stop and how to model features without making control vertices coalesce.

In future research, we would like to focus on the following shortcomings and extensions:

  • The current minimal separation of EKs supported is at least a tensor product basis function support width.
  • Can we combine our approach with the refine and smooth algorithm of Cashman [Cas10] to allow arbitrary (non-uniform) knot intervals?
  • Can we extend our framework to support knot lines of multiplicity zero, e.g. inline image? This would enable modelling with ‘T-junctions’ at extraordinary knots and would be a step towards bringing T-splines and Cashman's framework together.
  • A complete n-fold symmetry can be forced by knot insertion. We did not pursue this as it introduces unnecessarily many ghost control vertices.
  • Can we require a discontinuity (multiple knot line) to stop abruptly at an extraordinary knot, i.e. without letting it fair out, or let the discontinuity to run (smoothly) through it (as in tensor product scenarios)?
  • Our approach can be adapted to work for any other surface subdivision scheme based on B-splines, e.g. [ZS01; HW11], since basically only knot insertion is required to be supported.

References

  1. Top of page
  2. Abstract
  3. 1. Introduction
  4. 2. Related Work
  5. 3. Our Contribution
  6. 4. A Characterization of Extraordinary Knots
  7. 5. Truncated Multiple Knot Lines
  8. 6. Subdivision at a Knot of Type inline image
  9. 7. General Configurations
  10. 8. Summary of Subdivision Algorithm
  11. 9. Discussion
  12. 10. Conclusions and Future Work
  13. Acknowledgement
  14. References
  • [ADS06]Augsdörfer U. H., Dodgson N. A., Sabin M. A.: Tuning subdivision by minimising Gaussian curvature variation near extraordinary vertices. Computer Graphics Forum 25, 3 (2006), 263272.
  • [BLZ00]Biermann H., Levin A., Zorin D.: Piecewise smooth subdivision surfaces with normal control. In Proceedings of the 27th Annual Conference on Computer Graphics and Interactive Techniques (2000), SIGGRAPH'00, pp. 113120.
  • [BMZB02]Biermann H., Martin I. M., Zorin D., Bernardini F.: Sharp features on multiresolution subdivision surfaces. Graphical Models 64, 2 (March 2002), 6177.
  • [BS88]Ball A., Storry D.: Conditions for tangent plane continuity over recursively generated B-spline surfaces. ACM Transactions on Graphics 7, 2 (1988), 83108.
  • [CADS09]Cashman T. J., Augsdörfer U. H., Dodgson N. A., Sabin M. A.: NURBS with extraordinary points: High-degree, non-uniform, rational subdivision schemes. In Proceedings of the ACM SIGGRAPH 2009 Papers (2009), pp. 46:146:9.
  • [Cas10]Cashman T. J.: NURBS-Compatible Subdivision Surfaces. Tech. Rep. UCAM-CL-TR-773, PhD thesis, University of Cambridge, Computer Laboratory, March 2010.
  • [CC78]Catmull E., Clark J.: Recursively generated B-spline surfaces on arbitrary topological meshes. Computer-Aided Design 10, 6 (1978), 350355.
  • [CDS09]Cashman T. J., Dodgson N. A., Sabin M. A.: A symmetric, non-uniform, refine and smooth subdivision algorithm for general degree B-splines. Computer Aided Geometric Design 26, 1 (2009), 94104.
  • [DCL*08]Deng J., Chen F., Li X., Hu C., Tong W., Yang Z., Feng Y.: Polynomial splines over hierarchical T-meshes. Graphical Models 70, 4 (2008), 7686.
  • [DKT98]DeRose T., Kass M., Truong T.: Subdivision surfaces in character animation. In Proceedings of the 25th Annual Conference on Computer Graphics and Interactive Techniques (1998), ACM SIGGRAPH '98, pp. 8594.
  • [DLP13]Dokken T., Lyche T., Pettersen K. F.: Polynomial splines over locally refined box-partitions. Computer Aided Geometric Design 30, 3 (2013), 331356.
  • [DS78]Doo D., Sabin M.: Behaviour of recursive division surfaces near extraordinary points. Computer-Aided Design 10, 6 (1978), 356360.
  • [FB88]Forsey D. R., Bartels R. H.: Hierarchical B-spline refinement. In Proceedings of the 15th Annual Conference on Computer Graphics and Interactive Techniques (1988), ACM SIGGRAPH '88, pp. 205212.
  • [Fin08]Finnigan G. T.: Arbitrary Degree T-Splines. Master's thesis, Brigham Young University, USA, 2008.
  • [GJS12]Giannelli C., Jüttler B., Speleers H.: THB-splines: the truncated basis for hierarchical splines. Computer Aided Geometric Design 29, 7 (Oct. 2012), 485498.
  • [Gre67]Greville T.: On the normalization of the B-splines and the location of the nodes for the case of unequally spaced knots. In Inequalities. O. Shisha (Ed.). Academic Press, New York, 1967.
  • [HDD*94]Hoppe H., DeRose T., Duchamp T., Halstead M., Jin H., McDonald J., Schweitzer J., Stuetzle W.: Piecewise smooth surface reconstruction. In Proceedings of the 21st Annual Conference on Computer Graphics and Interactive Techniques (1994), SIGGRAPH '94, pp. 295302.
  • [HW11]Huang Z., Wang G.: Non-uniform recursive Doo-Sabin surfaces. Computer-Aided Design 43, 11 (2011), 15271533.
  • [KS99]Khodakovsky A., Schröder P.: Fine level feature editing for subdivision surfaces. In Proceedings of the Fifth ACM Symposium on Solid Modeling and Applications (SMA '99) (1999), pp. 203211.
  • [KSD13]Kosinka J., Sabin M. A., Dodgson N. A.: Cubic subdivision schemes with double knots. Computer Aided Geometric Design 30, 1 (2013), 4557.
  • [LD09]Lavoué G., Dupont F.: Semi-sharp subdivision surface fitting based on feature lines approximation. Computers and Graphics 33, 2 (2009), 151161.
  • [MFR*10]Müller K., Fünfzig C., Reusche L., Hansford D., Farin G., Hagen H.: DINUS: Double insertion, nonuniform, stationary subdivision surfaces. ACM Transactions on Graphics 29 (July 2010), 25:125:21.
  • [MRF06]Müller K., Reusche L., Fellner D.: Extended subdivision surfaces: Building a bridge between NURBS and Catmull-Clark surfaces. ACM Transactions on Graphics 25 (April 2006), 268292.
  • [NLG12]Nießner M., Loop C. T., Greiner G.: Efficient evaluation of semi-smooth creases in Catmull-Clark subdivision surfaces. In Eurographics (Short Papers) (2012), pp. 4144.
  • [NLMD12]Nießner M., Loop C., Meyer M., Derose T.: Feature-adaptive GPU rendering of catmull-clark subdivision surfaces. ACM Transactions on Graphics 31, 1 (Feb. 2012), 6:16:11.
  • [PR08]Peters J., Reif U.: Subdivision Surfaces. Springer Publishing Company, Incorporated, Berlin, 2008. ISBN: 978-3-540-76405-2.
  • [Sta98]Stam J.: Exact evaluation of Catmull-Clark subdivision surfaces at arbitrary parameter values. In Proceedings of the 25th Annual Conference on Computer Graphics and Interactive techniques (1998), ACM SIGGRAPH '98, pp. 395404.
  • [SZBN03]Sederberg T. W., Zheng J., Bakenov A., Nasri A.: T-splines and T-NURCCs. ACM Transactions on Graphics 22 (2003), 477484.
  • [SZSS98]Sederberg T. W., Zheng J., Sewell D., Sabin M.: Non-uniform recursive subdivision surfaces. In Proceedings of the 25th Annual Conference on Computer Graphics and Interactive Techniques (1998), ACM SIGGRAPH '98, pp. 387394.
  • [VGJS11]Vuong A.-V., Giannelli C., Jüttler B., Simeon B.: A hierarchical approach to adaptive local refinement in isogeometric analysis. Computer Methods in Applied Mechanics and Engineering 200, 49–52 (2011), 35543567.
  • [ZS01]Zorin D., Schröder P.: A unified framework for primal/dual quadrilateral subdivision schemes. Computer Aided Geometric Design 18, 5 (2001), 429454.