+ All Categories
Home > Documents > Transfinite surface interpolation with interior control

Transfinite surface interpolation with interior control

Date post: 27-Nov-2016
Category:
Upload: alyn
View: 226 times
Download: 1 times
Share this document with a friend
10
Transfinite surface interpolation with interior control Tamás Várady a,, Péter Salvi a , Alyn Rockwood b a Budapest University of Technology and Economics, Magyar tudósok körútja 2, H-1117 Budapest, Hungary b King Abdullah University of Science and Technology, 4700 KAUST, Thuwal 23955-6900, Saudi Arabia article info Article history: Available online 28 March 2012 Keywords: Curve network-based design Transfinite surface interpolation Blending functions Interior shape control abstract There are various techniques to design complex free-form shapes with general topology. In contrast to the approaches based on trimmed surfaces and control polyhedra, in curve net- work-based design feature curves can be directly created and edited in 3D. Multi-sided patches interpolate this curve network with slopes given by associated tangent ribbons. The patches are smoothly connected and yield a natural and predictable surface model. This paper focuses on special design techniques to adjust the interior of transfinite patches when further shape control is needed. While the boundary constraints are retained, addi- tional vertices, curves and even interior control surfaces are supplemented to gain more design freedom. The main idea is to apply different distance-based blending functions with special parameterizations over non-regular, n-sided domains. This concept can be naturally extended to create one- and two-sided patches as well. Shape variations will be demon- strated by a few simple examples. Ó 2012 Elsevier Inc. All rights reserved. 1. Introduction Creating complex free-form objects, composed of smoothly connected surface patches is a fundamental goal in Computer Aided Geometric Design. While the majority of such patches are four-sided, almost all industrial objects contain general n-sided regions that need to be inserted into some arrangement of quadrilaterals. The standard technique to create general topological surfaces is based on trimmed quadrilaterals. First a se- quence of surface intersections is performed, followed by operations to stitch together trimmed components and/or insert connecting surfaces, such as fillets. Typically, only tolerance-based G 1 or G 2 continuity can be achieved. One particular difficulty is that curves are not ‘‘uniform’’, so trimming curves and the associated cross-tangent constraints cannot be directly manipulated as with the ori- ginal boundaries of the quadrilaterals. An alternative approach is driven by general topology control polyhedra using recursive subdivision or surface splines [3]; these yield a set of smoothly connected quad- rilaterals combined with n-sided surface patches. Difficul- ties of this approach include the ‘‘ab initio’’ creation of good control polyhedra and the lack of straightforward operations to directly interpolate and edit prescribed free-form curves and tangential constraints. Curve network-based design is a third approach, where a collection of feature curves is created and each curve is directly editable. The input is often a collection of manu- ally drawn sketch curves. The curve network defines a set of so-called ribbons, which are smoothly interpolated by multi-sided patches (transfinite interpolation). The shape of these patches can be locally adjusted. This prop- erty is an advantage and a disadvantage at the same time: global fairing of curve networks is possible, but methods for global fairing of general topology surface models are not known. In order to focus on shape concepts and aesthetic requirements, a high level of design flexibility is needed. While the interpolating patches are supposed to yield a natural blend between the boundaries, their interior is not uniquely defined. In this paper new techniques are proposed that extend the capabilities of conventional 1524-0703/$ - see front matter Ó 2012 Elsevier Inc. All rights reserved. http://dx.doi.org/10.1016/j.gmod.2012.03.003 Corresponding author. Fax: +36 1 463 2204. E-mail address: [email protected] (T. Várady). Graphical Models 74 (2012) 311–320 Contents lists available at SciVerse ScienceDirect Graphical Models journal homepage: www.elsevier.com/locate/gmod
Transcript
Page 1: Transfinite surface interpolation with interior control

Graphical Models 74 (2012) 311–320

Contents lists available at SciVerse ScienceDirect

Graphical Models

journal homepage: www.elsevier .com/locate /gmod

Transfinite surface interpolation with interior control

Tamás Várady a,⇑, Péter Salvi a, Alyn Rockwood b

a Budapest University of Technology and Economics, Magyar tudósok körútja 2, H-1117 Budapest, Hungaryb King Abdullah University of Science and Technology, 4700 KAUST, Thuwal 23955-6900, Saudi Arabia

a r t i c l e i n f o

Article history:Available online 28 March 2012

Keywords:Curve network-based designTransfinite surface interpolationBlending functionsInterior shape control

1524-0703/$ - see front matter � 2012 Elsevier Inchttp://dx.doi.org/10.1016/j.gmod.2012.03.003

⇑ Corresponding author. Fax: +36 1 463 2204.E-mail address: [email protected] (T. Várady).

a b s t r a c t

There are various techniques to design complex free-form shapes with general topology. Incontrast to the approaches based on trimmed surfaces and control polyhedra, in curve net-work-based design feature curves can be directly created and edited in 3D. Multi-sidedpatches interpolate this curve network with slopes given by associated tangent ribbons.The patches are smoothly connected and yield a natural and predictable surface model.This paper focuses on special design techniques to adjust the interior of transfinite patcheswhen further shape control is needed. While the boundary constraints are retained, addi-tional vertices, curves and even interior control surfaces are supplemented to gain moredesign freedom. The main idea is to apply different distance-based blending functions withspecial parameterizations over non-regular, n-sided domains. This concept can be naturallyextended to create one- and two-sided patches as well. Shape variations will be demon-strated by a few simple examples.

� 2012 Elsevier Inc. All rights reserved.

1. Introduction

Creating complex free-form objects, composed ofsmoothly connected surface patches is a fundamental goalin Computer Aided Geometric Design. While the majorityof such patches are four-sided, almost all industrial objectscontain general n-sided regions that need to be insertedinto some arrangement of quadrilaterals.

The standard technique to create general topologicalsurfaces is based on trimmed quadrilaterals. First a se-quence of surface intersections is performed, followed byoperations to stitch together trimmed components and/orinsert connecting surfaces, such as fillets. Typically, onlytolerance-based G1 or G2 continuity can be achieved. Oneparticular difficulty is that curves are not ‘‘uniform’’, sotrimming curves and the associated cross-tangentconstraints cannot be directly manipulated as with the ori-ginal boundaries of the quadrilaterals.

An alternative approach is driven by general topologycontrol polyhedra using recursive subdivision or surface

. All rights reserved.

splines [3]; these yield a set of smoothly connected quad-rilaterals combined with n-sided surface patches. Difficul-ties of this approach include the ‘‘ab initio’’ creation ofgood control polyhedra and the lack of straightforwardoperations to directly interpolate and edit prescribedfree-form curves and tangential constraints.

Curve network-based design is a third approach, wherea collection of feature curves is created and each curve isdirectly editable. The input is often a collection of manu-ally drawn sketch curves. The curve network defines aset of so-called ribbons, which are smoothly interpolatedby multi-sided patches (transfinite interpolation). Theshape of these patches can be locally adjusted. This prop-erty is an advantage and a disadvantage at the same time:global fairing of curve networks is possible, but methodsfor global fairing of general topology surface models arenot known.

In order to focus on shape concepts and aestheticrequirements, a high level of design flexibility is needed.While the interpolating patches are supposed to yield anatural blend between the boundaries, their interior isnot uniquely defined. In this paper new techniques areproposed that extend the capabilities of conventional

Page 2: Transfinite surface interpolation with interior control

312 T. Várady et al. / Graphical Models 74 (2012) 311–320

transfinite interpolation. These provide additional controlfor the interior, and offer further degrees of freedom toperfect the shapes while the initial boundary constraintsare retained.

Transfinite surface interpolation is a classical area ofCAGD. Its origin goes back to the late 1960s, when Coonsformulated his Boolean sum surface [2]. This was followedby Gordon’s generalization to interpolate a rectangularnetwork of curves [4]. In the next two decades, severalpapers were published, first on triangular patches (seesummary in [3]), and later on genuine n-sided patches,including the pioneering work of Gregory and Charrot[1,5], Sabin [12,13], Kato [7], Várady [16], and Plowmanand Charrot [11]. The alternatives of creating n-sidedtransfinite patches with different blending functions anddifferent parameterizations have been recently publishedin a companion paper by the current authors [18]. Asdiscussed, transfinite patches may blend together cornerinterpolants or side interpolants, however, there exists athird approach, that generalizes Coons’ original Booleansum concept using side interpolants and corner correctionterms [14].

The outline of this paper is as follows. In Section 2 webriefly revisit transfinite surface interpolation using tan-gential ribbons; this will be the basis of the subsequentdiscussions. In Section 3 we introduce the notion of auxil-iary vertices and curves to adjust the shape interior, whilein Section 4 the application of so-called interior surfaceswill be discussed. Section 5 is devoted to describe one-and two-sided patches. Finally, examples and suggestionsfor future work conclude the paper.

2. Transfinite patches with ribbons

The boundary constraints of transfinite patches arecomputed from a curve network. In this section we revisitour companion paper [18] and briefly present a particulartransfinite scheme out of the many, that blends togetherribbon surfaces. Our discussion will be based on thisscheme. Nevertheless, the following ideas can be expandedfor other types of interpolants and parameterizationschemes, as well.

2.1. Curve networks

In the classical paper of Nielson [9] a minimum normnetwork of cubic arcs were created over a planar triangulardomain; in the paper of Moreton and Sequin [8] verticesand prescribed normals were interpolated by an optimizedcurve network. In our context the curve network is explic-itly defined by the user, and one of the crucial tasks is toprovide proper cross-derivative constraints for the individ-ual surface patches. These are defined by the constructionin an automatic manner. Space limitation prevents us togive a detailed description here, but we present the mainsteps of an algorithm that provides G1 continuity betweenthe adjacent patches.

The curves are cubic B-splines, and for each vertex ofthe network there exists a normal vector. For each curvewe generate a Rotation Minimizing Frame (or a normal

fence in our terminology), that interpolates the normalsat the vertices and has the well-known property of mini-mizing the torsion of the local frame along the curve[19]. If needed, additional normals can also be specifiedby the user to adjust the shape of the normal fence. Thecross-derivatives are computed edge by edge; a ribbonfor a given patch boundary is forced to be perpendiculareverywhere to the normal fence and at the two corners itinterpolates the derivatives of the neighboring ‘‘left’’ and‘‘right’’ boundaries. In this way, if patch A and B are bothperpendicular to the normal fence, G1 continuity is auto-matically satisfied. A sequence of curves, fences, ribbonsand patches is shown later in Section 6.

For the patch formulation used in this paper ribbonswith incompatible twists cause no problem, since the ap-plied blending functions behave as Gregory’s twists atthe corners (see later). At the same time it is possible tocreate twist compatible ribbons by requesting that a com-mon surface curvature is also associated with the verticesof the network (see Peters [10]). These types of networksare dominated by T-nodes and X-nodes (see e.g. Fig. 15),for which it is easy to determine surface curvatures. Forgeneral n-valent vertex configurations the best surfacecurvature can only be set in a least-squares sense, whichmay lead to some minor perturbation of the incomingcurves (see Várady and Hermann [17]). Networks thatmatch not only normal vectors, but surface curvatures aswell, produce more pleasing surface models.

Our n-sided patch is defined over a non-regular, convexpolygonal domain as a convex combination of ribbonsurfaces:

Sðu;vÞ ¼Xn

i¼1

Riðsi;diÞliðd1; . . . ; dnÞ:

The polygonal domain is defined in the (u,v) plane, andthe sides of the polygon, Ci, correspond to the individualpatch boundaries in 3D.

Ribbon surfaces are parametric surfaces with their localparameters si and di, given as

Riðsi; diÞ ¼ PiðsiÞ þ diTiðsiÞ:

Pi(si) is the boundary curve along the ith side, and Ti(si)is the cross-tangent function associated with the boundary.The local parameters of a ribbon depend on u and v; si = -si(u,v) is the side parameter, and di = di(u,v) is the distanceparameter, that represents some distance measure.Roughly speaking, di is 0 on the i-th side and increases ina monotonic way as we move inwards.

2.2. Blending functions

The ribbons are weighted by special blending functionsli(d1, . . . ,dn) defined over the full domain. Let Dn

i1;i2;...;in de-note

Qni–i1;i2;...;ind2

i . Then

liðd1; . . . ;dnÞ ¼Dn

iPnj¼1Dn

j

:

li is equal to 1 along side i, and 0 for the remaining n � 1sides. For all domain points the li-s have the partition ofunity property. A blending function is shown in Fig. 1.

Page 3: Transfinite surface interpolation with interior control

T. Várady et al. / Graphical Models 74 (2012) 311–320 313

These types of blending functions are singular at the cornerpoints. For example, there is a jump betweenl1(0,d2, . . . ,dn�1,e) = 1 and l1(e,d2, . . . ,dn�1,0) = 0. This sin-gularity vanishes when two adjacent blending functionsare added at a given corner:

limdi�1!0;di!0

li�1ðd1; d2; . . . ;dnÞ þ liðd1;d2; . . . ;dnÞ ¼ 1:

These blending functions ensure that the ribbons willbe reproduced along the sides. For simplicity’s sake, wetake an arbitrary point on the ith boundary and evaluatethe contribution of the ith ribbon as a function of di only,i.e., bSiðdiÞ ¼ bRiðdiÞl̂iðdiÞ. In order to interpolate the posi-tional data, l̂ið0Þ must be equal to 1. The cross-derivativecan be written as bS0iðdiÞ ¼ bR0iðdiÞl̂iðdiÞ þ bRiðdiÞl̂0iðdiÞ, so inorder to reproduce the tangential data, l̂0ið0Þ must be 0.These requirements correspond to the properties statedabove. For G1-continuous cross-derivative constraints, itis sufficient to use quadratic terms; for G2 constraints cubicterms are needed. It can easily be shown, that this alsoguarantees that the effect of the other boundaries and theircross-derivative functions will vanish on the ith side.

Take an example, for n = 4, i = 1,

l1ðd1; d2; d3; d4Þ ¼d2

2d23d2

4

d21d2

2d23 þ d2

2d23d2

4 þ d23d2

4d21 þ d2

4d21d2

2

;

i.e., if d1 = 0, then l1 = 1; if d2 = 0 or d3 = 0 or d4 = 0, thenl1 = 0.

Note: an equivalent, but computationally more efficientformula can be used to evaluate the blending functions atthe interior points of the domain:

liðd1; . . . ;dnÞ ¼d�2

iPnj¼1d�2

j

:

Fig. 1. Blending function with contours.

This expression is singular on the sides, and there theoriginal formula must be used, or the value of the curvesubstituted as they will be the same.

2.3. Domain

Our goal is to determine an appropriate non-regularconvex domain based on the given loop of 3D boundarycurves. This was found to be a useful enhancement with re-spect to formerly suggested transfinite schemes, that helpsto avoid undesirable shape artifacts when the lengths ofthe boundaries significantly differ. The sides and the anglesof the domain are denoted by li and ai, respectively. Thearc-lengths of the given 3D boundary curves are denotedby Li, and the angles between the end tangents of the(i � 1)th and ith boundaries by /i. We seek to minimizethe squared deviation of the chord lengths and the anglesPðli � clengthLiÞ2 þ

Pðai � cangle/iÞ

2, where clength and cangle

are properly chosen constants. This is a non-linear prob-lem, but the following simple heuristic method was foundto be satisfactory in practice.

First we normalize the angles to satisfy the necessaryangle criterion for the n-sided domain polygon, i.e., letcangle ¼ ðn� 2Þp=

P/i, then ai = cangle/i. Now take the poly-

gon sides in a sequence retaining the angles, which willlikely yield an open polyline, having a difference vector ebetween the first and the last points. In order to improvethis, we fix the very first point, and modify the next onessequentially, first by 1

n e, then by in e (Fig. 2). As a result,

we obtain a closed polygon, where both the chord lengthsand the angles are distorted only to a small extent. Thistechnique is known as edge-tweaking and has been usedearlier in [15].

2.4. Parameterization

A critical part of transfinite schemes is parameteriza-tion. It helps define the shape of the patch and its

Fig. 2. Length/angle-based convex polygonal domain.

Page 4: Transfinite surface interpolation with interior control

314 T. Várady et al. / Graphical Models 74 (2012) 311–320

differential properties along the sides. Having a given pointin the domain (i) we need to determine n corresponding 3Ddata points on the n individual interpolants and (ii) com-bine these by the corresponding blending functions. Theribbon mapping (u,v) ? (si,di) produces local ribbon coor-dinates to be substituted into Ri(si,di); and (u,v) ? di pro-duces n distance values to compute the weights of theblending functions li = li(d1, . . . ,dn).

In [18] a method called central line sweep was sug-gested, that ensures a balanced distribution of the iso-parameter lines of the individual ribbons, and its computa-tion is reasonably simple. The sweep lines run from the leftedge Ci�1 to the right edge Ci+1 of the domain polygon insuch a way, that the middle line of the ribbon is mappedonto a line that connects the midpoint of side i and the cen-ter point of the domain c = (cu,cv), see Fig. 3. This methodhelps to avoid skewed parameterizations and producesbetter results than the classical radial line sweep ofGregory et al. [5].

So having a parameterizing function r(s,d), the s = 0.5constant parameter line must contain the center point,i.e., for some unknown dc parameter value r(0.5,dc) = c.Without loss of generality, we deal with the local parame-ters of side 1 and for simplicity’s sake we position the cor-ner p1 at the origin, and place p2 on the u-axis. A linear byquadratic map is introduced:

rðs;dÞ ¼ p2sþ ½w1ð1� sÞ2 þ 2w12ð1� sÞsþw2s2�d; ð1Þ

where vectors w1, w12, w2 define the direction of thesweep. Not only the parameter value (dc), but the vectorw12 ¼ wu

12;wv12

� �is also unknown. To simplify our calcula-

tion, we require that wv12 ¼ 0:5 wv

1 þwv2

� �. On the midline s

is 0.5, so at the center

cv ¼ 0:25 wv1 þ 2wv

12 þwv2

� �dc;

thus dc ¼ 2cv= wv1 þwv

2

� �. From the other coordinate

equation

cu ¼ pu20:5þ 0:25 wu

1 þ 2wu12 þwu

2

� �dc;

so we can express the missing u component of w12. Havingthe three direction vectors defined, we can determine(s0,d0) for any domain point (u0,v0). Express d0 from Eq.

Fig. 3. Computing the central line sweep parameterization.

1, then solving the quadratic equation for s0 we obtainthe required local coordinates of the sweep line:

d0 ¼u0 � pu

2s0

wu1ð1� s0Þ2 þ 2wu

12ð1� s0Þs0 þwu2s2

0

¼ v0

wv1ð1� s0Þ þwv

2 s0:

The central sweep line parameterization is depicted inFig. 4, where the sweep lines are shown for the shorttop-right edge.

In the next sections we will discuss how the interior ofthese patches can be modified by various techniques. Wedo not go into details of ribbon construction here; just as-sume that the ribbons were computed from the given 3Dcurve network, and they guarantee tangent plane continu-ity across the common boundaries of adjacent patches, andfor each patch twist compatibility at the corners issatisfied.

3. Simple shape modifications

3.1. Adjusting ribbons

In curve network-based design, feature curves are thebasic entities to define a shape, but the interior of thepatches are not uniquely defined, and ribbons can providefurther shape control. Assume that the boundaries and thecross-tangent directions are given. The most straightfor-ward editing operation is to set the magnitudes of the rib-bons, as these balance how much the surface patch is‘‘glued’’ to the ribbons in the vicinity of the boundaries,and where the convex combination starts to dominate aswe are moving inwards. The simplest solution is to multi-ply the direction terms by wi scalar values or scalar repa-rameterization functions, then

Riðsi; diÞ ¼ PiðsiÞ þ diwiðsiÞTiðsiÞ:

Adjusting simultaneously the magnitude of the ribbonsyields a global change affecting the ‘‘fullness’’ of the patch,as shown in Fig. 5a and b. Modifying the width of an indi-vidual ribbon creates a local effect as shown in Fig. 6. Herea better curvature distribution is obtained by narrowing

Fig. 4. Sweep lines in a five-sided domain.

Page 5: Transfinite surface interpolation with interior control

Fig. 5. Adjusting fullness for a six-sided patch (spider lines, shaded).

T. Várady et al. / Graphical Models 74 (2012) 311–320 315

the top-right ribbon. The latter example illustrates that rib-bon width multipliers can support fairing procedures, aswell. This is going to be the subject of another publication;here we just note that by means of the ribbon widths it ispossible to optimize fairness energies not only for individ-ual patches, but for collections of adjacent patches as well.

3.2. Auxiliary vertices and curves

While we wish to preserve the basic interpolatory nat-ure of curve network-based design, it is possible to assignfurther entities to the interior of the patch and provideshape control directly, where it is needed. Think of liftingcertain interior vertices or prescribe interior feature curveswhile the external ribbon constraints are retained. Recallthat in Section 2, the only property of the blending func-tions was that the ith blend is 1 on the ith boundary and0 on all other boundaries. By definition, an auxiliary ele-ment has an image within the domain, and a distance mea-sure can be defined, which guarantees that it becomes zeroon the image of the auxiliary element. Then the corre-sponding blending function will be 1 there and will vanishelsewhere. This also means that the patch equation needs

to be modified, and n + k entities will be blended together(k denotes the number of the auxiliary elements). Theblending functions li will also change and instead of theDn

i terms, now Dnþki will be used combining n + k distance

values.This concept is illustrated by two simple examples. In

the first, an auxiliary vertex has been chosen on the sur-face, which defined its parametric position. Lifting the ver-tex and creating a circular ribbon around it determines thelocal properties of the modified surface; see Fig. 7a and b.The circular ribbon is given as Ri(si,di) = Pi + diwiTi(si); Pi isthe center point, Ni is the normal vector, wi is the weightto set the magnitude of the ribbon. Ti(si) represents a rotat-ing line which is always perpendicular to Ni, and is definedby an angular parameter si in the domain (si 2 [0,2p]). Theother parameter di gives the distance from the image of Pi

in the domain.The distribution of the blending functions are illustrated

in Fig. 8, where the ‘‘strength’’ of the blends is shown. Theblack curves show the areas, where the influence of theith blend is more than 90%, the white curves show whenthe influence between the ith and jth blends is equal, thusproviding a Voronoi-like structure in the domain.

Page 6: Transfinite surface interpolation with interior control

Fig. 6. Ribbon modification of a five-sided patch.

Fig. 7. Snapping a five-sided patch to an auxiliary vertex.

Fig. 8. Blending function distributions in the domain.

316 T. Várady et al. / Graphical Models 74 (2012) 311–320

The second example shows an auxiliary curve. Initially,the curve is also defined on the surface, in order to obtainits parametric image in the domain. Its equation can begiven as

Riðsi; diÞ ¼ PiðsiÞ � diwiðsiÞTiðsiÞ:

A point in the domain will lie either on the ‘‘left’’ or‘‘right’’ side of the image of the auxiliary curve, this willdetermine the sign of Ti.

After lifting the points of the curve a new profile is cre-ated (Fig. 9a). As we snap the surface onto it, the interiorwill change (Fig. 9b). By adjusting the width of the associ-ated ribbon the strength of the lifting effect can becontrolled.

4. Interior patches

In the previous section we have introduced auxiliaryvertices and curves. We have increased the number ofinterpolants, but used the same family of blending func-tions with n + k terms. Now we are going to introduce aso-called interior surface Sint(u,v), which is defined overthe same domain and serves to modify the interior of theoriginal S(u,v). Here we are going to apply alternativeblending functions. Let

S�ðu;vÞ ¼Xn

i¼1

Riðsi; diÞmiðd1; . . . ;dnÞ þ Sintðu;vÞm0ðd1; . . . ; dnÞ:

We use the notations of Section 2 with the additionalterm of Dn

0 ¼Q

j¼1;nd2j . Then the blending functions are

defined as

miðd1; . . . ;dnÞ ¼Dn

iXj

Dnj þwDn

0

; i ¼ 1; . . . ;n;

and

m0ðd1; . . . ; dnÞ ¼wDn

0Xj

Dnj þwDn

0

:

Here w is a positive constant characterizing the blend fam-ily, this will be set later. As it can be seen, the side blendshave an extended denominator, which will not change thebasic properties, i.e., mi = 1 on the ith side and 0 on theother sides. The new blending function m0 is 0 on each side,

Page 7: Transfinite surface interpolation with interior control

Fig. 9. Snapping a six-sided patch to an auxiliary curve.

Fig. 10. Reshaping the interior of a six-sided patch.

T. Várady et al. / Graphical Models 74 (2012) 311–320 317

which means the interior surface will have no effect on theboundaries.

At a given point, the above surface equation can be for-mulated in another way:

S�ðu; vÞ ¼ aSðu;vÞ þ ð1� aÞSintðu; vÞ; ð2Þ

where

a ¼P

jDnjP

jDnj þwDn

0:

This expression reproduces S along the edges and givesa weighted average of the original and the interior surfaceinside the patch. We define the constant w by means of a.Take a domain point c as center point; this is where theweighted average is prescribed. At point c let us evaluateall distances, thus we obtain constant terms

Ecj ¼ Dn

j ðd1;d2; . . . ;dnÞ; j ¼ 1; . . . ; n:

Then a ¼P

jEc

jPjEc

j þwEc0

and w ¼ð1�aÞ

PjEc

j

wEc0

. After dividing by Ec0

we obtain an alternative expression of w ¼P

j1�ad2

j, where

the non-zero distances dj are determined by c.a = 0.5 will average the original and the interior surface

at the center point. If we want to interpolate the interiorsurface at c and tightly approximate it in the vicinity of c,

another surface, called the auxiliary surface Saux(u,v),needs to be used in Eq. 2 above. Let us assume that

Sintðu;vÞ ¼ aSðu;vÞ þ ð1� aÞSauxðu;vÞ

then

Sauxðu;vÞ ¼Sintðu; vÞ � aSðu;vÞ

1� a

For example, at a = 0.5

Sauxðu;vÞ ¼ 2 � Sintðu; vÞ � Sðu; vÞ:

(Note, that instead of linear blending by a, Hermite func-tions can also be used.)

Page 8: Transfinite surface interpolation with interior control

Fig. 11. One-sided patch example ‘‘cap’’.

Fig. 12. Computing a two-sided domain.

Fig. 13. Sweep lines in a parametric domain.

Fig. 14. Two-sided patch example.

318 T. Várady et al. / Graphical Models 74 (2012) 311–320

The parametric assignment of S and Sint can be realizedin a projective sense, as earlier. Imagine that we havealready computed the surface S; then any point on the

interior surface with parameters (u⁄,v⁄) can be projectedback to S, which will yield a parameter pair (u,v) for creat-ing a parametric assignment to combining the points of thetwo surface entities. The effect of using interior surfaces isdemonstrated in Fig. 10. The first one shows the input: apatch to be modified and the interior surface used forshape adjustment. The second picture shows the averagingeffect, while the third one illustrates how we can repro-duce the interior surface using a corresponding auxiliarysurface. In both cases the original boundary constraintsare retained.

Page 9: Transfinite surface interpolation with interior control

T. Várady et al. / Graphical Models 74 (2012) 311–320 319

5. One- and two-sided patches

In practical curve network-based design, one- and two-sided patches often occur. These also must interpolate theboundaries and match the ribbon surfaces determined bythe network. Fortunately, sweep line parameterizationand distance-based blending can be applied in a similarway as before.

5.1. One-sided patches

Take a closed curve r(t) and a center point c in 3D andassociate an additional ribbon with it. Let us use a circleas domain with radial sweep lines. We apply the samesolution as for auxiliary points in Section 2 combiningthe two ribbons by simple blending functions of the type

liðd1;d2Þ ¼d2

j

d21 þ d2

2

; i; j 2 f1;2g; i – j; ð3Þ

where d1 and d2 represent the distances in the domainfrom the perimeter circle and from the center point,respectively. As an example, Fig. 11a shows the definingribbons and the corresponding cap-like surface patch.Fig. 11b shows the curvature map of the surface togetherwith spider-like constant parameter lines drawn on thesurface in 3D.

Fig. 15. Creation of a

One interesting issue is to find a good location for thecenter. In the majority of cases this will be set by the user,however, setting a good default may be necessary. Onesimple heuristic is to optimize the angles between theimaginary 3D sweep lines and the tangents at sampleddata points on the boundary, i.e.,X

i

ðhc � rðtiÞ; _rðtiÞiÞ2 þxjc � rðtiÞj2 ¼min :

The second term is needed to control the sum of thechord lengths between the center point and the points ofthe boundary; without this, the minimum found by the re-lated system of equations would push the center point infi-nitely far from the closed boundary curve. The constant xcan be manually adjusted.

5.2. Two-sided patches

The domain of the two-sided patch is bounded by twoparabolic arcs. As it was written in Section 2, we searchfor a domain that mimics simultaneously the 3D angles be-tween the two given boundary curves and their arclengths. Fig. 12 shows a simple, heuristic solution using aquadrangle. We inherit the 3D angles denoted by a andb, and define the parabolas in such a way, that theirapproximate arc lengths are proportional to the 3D bound-aries. The arc length of a parabolic arc is estimated by

dolphin model.

Page 10: Transfinite surface interpolation with interior control

320 T. Várady et al. / Graphical Models 74 (2012) 311–320

2li + di, as shown in the figure, and simple algebra deter-mines the missing parameters. Having the domain, sweeplines are created by connecting the parabolas with theopposite corners of the quadrangle (see one set inFig. 13). Then normalized distances measured on thesweep lines yield the distance parameters, which are usedfor the same type of blending functions as above in Eq. 3 tocombine the two ribbons. A simple example is depicted inFig. 14a and b.

6. Curve network based design, an example

The following example illustrates the process of curvenetwork-based design. The original input curves were pro-vided by Cindy Grimm (Washington University, see [6]);the transfinite surface patches were generated by a proto-type system called Sketches, developed by ShapEx Ltd.,Budapest.

Fig. 15a shows the 3D network which is a collection ofcubic B-splines. The network is dominated by T-nodesand X-nodes. Fig. 15b illustrates RMF-based normal fencesthat interpolate the normal vectors computed at the verti-ces and provide a smooth normal vector function betweenthem. The ribbons are perpendicular to the correspondingfences, thus smooth connection between the adjacentpatches is guaranteed (15c). In this model there are two2-sided, four 3-sided, four 4-sided, two 5-sided and two6-sided patches (15d). In Fig. 15c the red curve representsan auxiliary curve that helped to perfect the interior ofthe two 6-sided patches on the top part. The last picturewith contouring (15e) illustrates G1 continuity betweenthe adjacent patches.

7. Conclusion, future work

In this work we revitalize curve network-based design.In contrast to control polyhedra-based approximatingtechniques, here the emphasis was placed on interpolation,using network of curves, ribbons associated with thesecurves and various techniques that support perfectingand fairing the interior of shapes. In addition to adjustingthe widths of ribbons, additional entities — auxiliary verti-ces, curves and interior surfaces — were combined, apply-ing variations of distance-based blending functionsborrowed from transfinite patch interpolation.

Curve network-based design is a challenging paradigm,but there is plenty of space for future research. The auto-matic generation of compatible G2 ribbons for transfinitesurfaces is a necessary step forward; non-convex domainswould also be useful. Although local surface interpolationhas its fundamental advantages, it is a deficiency thatthere is no global energy to affect the overall smoothnessof the surface models. The approach is highly sensitive tothe fairness of the constituting curves and ribbons, sofairing is particularly important. Optimizing the widths ofthe ribbons for balanced curvature distributions andapproximating measured data within a loop of curves arealso interesting topics for the future.

Acknowledgements

Special thanks are due to the anonymous reviewers fortheir suggestions to enhance the paper. This work was par-tially supported by the scientific program ‘‘Development ofquality-oriented and harmonized R + D + I strategy andfunctional model at the Budapest University of Technologyand Economics’’ (UMFT-TÁMOP-4.2.1/B-09/1/KMR-2010-0002) and a grant by the Hungarian Scientific ResearchFund (No. 101845). Some images of this paper were gener-ated by the Sketches system developed by ShapEx Ltd.,Budapest; the contribution of György Karikó is highlyappreciated. The authors acknowledge support from theGeometric Modeling and Scientific Visualization ResearchCenter of KAUST, Saudi-Arabia.

References

[1] P. Charrot, J.A. Gregory, A pentagonal surface patch for computeraided geometric design, Computer Aided Geometric Design 1 (1)(1984) 87–94.

[2] S.A. Coons, Surfaces for Computer-Aided Design of Space Forms,Tech. rep., Massachusetts Institute of Technology, Cambridge, MA,USA, 1967.

[3] G. Farin, Curves and Surfaces for CAGD: A Practical Guide, 5th ed.,Morgan Kaufman Publishers Inc., San Francisco, CA, USA, 2002.

[4] W.J. Gordon, Spline blended surface interpolation through curvenetworks, Journal of Mathematics and Mechanics 18 (10) (1969)931–952.

[5] J.A. Gregory, n-Sided surface patches, in: The Mathematics ofSurfaces, Oxford University Press, USA, 1986.

[6] C. Grimm, P. Joshi, Just Draw it! a 3D Sketching System, Tech. Rep.2012-4, Washington University, St. Louis, 2012.

[7] K. Kato, Generation of n-sided surface patches with holes, Computer-Aided Design 23 (10) (1991) 676–683.

[8] H. Moreton, C. Séquin, Surface design with minimum energynetworks, in: Proceedings of the First ACM Symposium on SolidModeling Foundations and CAD/CAM Applications, SMA ’91, ACM,New York, NY, USA, 1991.

[9] G.M. Nielson, A method for interpolating scattered data based upon aminimum norm network, Mathematics of Computation 40 (161)(1983) 253–271.

[10] J. Peters, Joining smooth patches around a vertex to form a Ck

surface, Computer Aided Geometric Design 9 (1992) 387–411.[11] D. Plowman, P. Charrot, A practical implementation of vertex blend

surfaces using an n-sided patch, in: Proceedings of the 6th IMAConference on the Mathematics of Surfaces, Clarendon Press, NewYork, NY, USA, 1996.

[12] M. Sabin, Non-rectangular surfaces patches suitable for inclusion ina B-spline surface, in: Eurographics ’83, North Holland, 1983.

[13] M. Sabin, Some negative results in n sided patches, Computer-AidedDesign 18 (1) (1986) 38–44.

[14] P. Salvi, Fair Curves and Surfaces, Ph.D. Thesis, Eötvös LorándUniversity, Budapest, 2012.

[15] T.W. Sederberg, P. Gao, G. Wang, H. Mu, 2-D shape blending: anintrinsic solution to the vertex path problem, in: Proceedings of the20th annual conference on Computer graphics and interactivetechniques, SIGGRAPH ’93, ACM, New York, NY, USA, 1993.

[16] T. Varady, Overlap patches: a new scheme for interpolating curvenetworks with n-sided regions, Computer Aided Geometric Design 8(1) (1991) 7–27.

[17] T. Várady, T. Hermann, Best fit surface curvature at vertices oftopologically irregular curve networks, in: Proceedings of the 6thIMA Conference on the Mathematics of Surfaces, Clarendon Press,New York, NY, USA, 1996.

[18] T. Várady, A. Rockwood, P. Salvi, Transfinite surface interpolationover irregular n-sided domains, Computer Aided Design 43 (2011)1330–1340.

[19] W. Wang, B. Jüttler, D. Zheng, Y. Liu, Computation of rotationminimizing frames, ACM Transaction on Graphics 27 (2) (2008) 1–2:18.


Recommended