7
EI.SEVIER Computer Aided Geometric Design 16 (1999) 77 83 COMPUTER AIDED GEOMETRIC DESIGN Current experience with transfinite interpolation Marshall Walker York Um'retwio; Atkinson College, Del)arlment o/Computer Sciem'e cmd Matlu'nlalic~, 4700 Keele SD'{'~'I, North York, Ontario, Canada M3,1 IP3 Received March 1997; revised May 1998 Abstract Gordon methods for transfinite interpolation may be extended so as to allow interpolation of derivative information at arbitrary mesh lines. These results are reviewed and applications and examples are presented. © 1999 Elsevier Science B.V. All rights reserved. 1. Introduction This paper discusses some current experience with the problem of constructing a suitable surface which interpolates a given rectangular mesh in R 3. The problem is of central importance to the field of geometric modeling and has numerous application. Instead of building surfaces as conglomerates of individual patches, as was and still is common practice, Gordon (1968, 1969a, 1969b), introduced a technique whereby certain methods of univariate polynomial spline interpolation are extended so as to allow a rectangular mesh to be interpolated as a single surface. For a number reasons, which include the inability to assign derivative values at arbitrary mesh points, reliance on a scheme of cardinal interpolation, and lack of local control, Gordon methods seem to have fallen by the wayside. Although the Gordon methods dispense with the difficulty of having to specil3 large amounts of data for each surface patch, they provide no good methods to specify lhis same data should it be essential. The present papers builds on the results of (Walker. 1998) in which the Gordon methods are extended so as to avoid some disadvantage. In particular it is shown in (Walker, 1998) that any two univariate interpolation schemes may be extended to a bivariate mesh interpolation method, according to the method set out by Gordon. In the case of univariate schemes based on cardinal polynomial blending functions of odd degree, the result is known and appears in (Gordon, 1968). The general result is very simply proved, and. although perhaps part of the folklore of CAGD, it has not appear and is important in that 0167-8396/99/$ -- see front matter © 1999 Elsevier Science B.V. All rights rcserxed. Pll: St) 167-8396198 )00033-8

Current experience with transfinite interpolation

Embed Size (px)

Citation preview

Page 1: Current experience with transfinite interpolation

EI.SEVIER Computer Aided Geometric Design 16 (1999) 77 83

COMPUTER AIDED

GEOMETRIC DESIGN

Current experience with transfinite interpolation

Marshall Walker York Um'retwio; Atkinson College, Del)arlment o/Computer Sciem'e cmd Matlu'nlalic~,

4700 Keele SD'{'~'I, North York, Ontario, Canada M3,1 IP3

Received March 1997; revised May 1998

Abstract

Gordon methods for transfinite interpolation may be extended so as to allow interpolation of derivative information at arbitrary mesh lines. These results are reviewed and applications and examples are presented. © 1999 Elsevier Science B.V. All rights reserved.

1. I n t r o d u c t i o n

This paper discusses some current experience with the problem of constructing a suitable surface which interpolates a given rectangular mesh in R 3. The problem is of central importance to the field of geometric modeling and has numerous application. Instead of building surfaces as conglomerates of individual patches, as was and still is common practice, Gordon (1968, 1969a, 1969b), introduced a technique whereby certain methods of univariate polynomial spline interpolation are extended so as to allow a rectangular mesh to be interpolated as a single surface. For a number reasons, which include the inability to assign derivative values at arbitrary mesh points, reliance on a scheme of cardinal interpolation, and lack of local control, Gordon methods seem to have fallen by the wayside. Although the Gordon methods dispense with the difficulty of having to specil3 large amounts of data for each surface patch, they provide no good methods to specify lhis same data should it be essential.

The present papers builds on the results of (Walker. 1998) in which the Gordon methods are extended so as to avoid some disadvantage. In particular it is shown in (Walker, 1998) that any two univariate interpolation schemes may be extended to a bivariate mesh interpolation method, according to the method set out by Gordon. In the case of univariate schemes based on cardinal polynomial blending functions of odd degree, the result is known and appears in (Gordon, 1968). The general result is very simply proved, and. although perhaps part of the folklore of CAGD, it has not appear and is important in that

0167-8396/99/$ -- see front matter © 1999 Elsevier Science B.V. All rights rcserxed. Pll: St) 167-8396198 )00033-8

Page 2: Current experience with transfinite interpolation

78 M. Walker /Compu te r Aided Geometric" Design 16 (1999) 7 ~ 8 3

it opens the door to an investigation of bivariate interpolation schemes based on various univariate, perhaps non-polynomial , methods.

Also in (Walker, 1998), it was shown that with the extended Gordon methods it is possible to construct surfaces which interpolate not only the given mesh but also prescribed derivatives of arbitrary order in directions across mesh lines. Unlike the previous, this result

has no reflection in any of the literature surrounding Gordon 's work In this paper, we report on experience applying the above results. In Section 2, definitions

and notation are introduced together with a review of the results in (Walker, 1998) for the sake of completeness. In Section 3, two applications are discussed, assigning tangent values across mesh lines and the G k attachment of one surface along a mesh line to a curve in another.

2. Preliminaries

Defini t ion 1. Given strictly increasing sequences of real numbers uo < U l < " '" < /Am and

V 0 < V 1 < " ' " < Vn, if

n 17

U = U [ u 0 , b/m] x {1)j} and V = U{b / i} × [P0, Yn], j =0 i =0

we refer to the set U U V as a domain mesh. A rectangular parametric mesh is a function f: U U V --+ R 3. For such a parametric mesh an interpolating surface is considered to be an extension of f to the rectangle [u0, Um] x [v0, v,,] - namely, a function

q : [uo , b/m] X [VO, Un]---> ]I~ 3 such that qJxur = f .

Definition 2. Given a strictly increasing sequence to < tl < . . . < tr, an associated uni- variate interpolation scheme is a function h : [to, tr] x (R3) r+l ~ R 3 with the property

that

h(ti, Po, P1 . . . . . P r ) : P i , O<~i<~r.

Given a parametric mesh f: U U V ---> R 3 and univariate interpolation schemes

h i : [b/0, b/m] × (]I~3) m ~ ~3 and h2: [v o, Vn] × (R3) n --+ R 3,

define extensions ql :[uo, urn] x [vo, vn] --+ R 3, q2 :[u0, urn] x [vo, vn] --+ R 3, and q3 :[uo, urn] × [vo, vn]-+ ~3 by

q l (u , v) = hl

q2(u, v) = h2

q3 (u, v) = h 2

q4(u, v) = hi

(u, f(uo, v) . . . . . f(Um, v) ),

. . . . . f ( . ,

(v, q! (u, vo) . . . . . ql (u, Vn)),

(U, q2(u0, V) . . . . . q2(Um, V)).

and

Page 3: Current experience with transfinite interpolation

M. Walker / Computer Aided Geometric Design 16 (1999) 77-83 79

Theorem 3. I f ~ : [ u 0 , Um] x [v0, v,,] ~ R 3 and /~:[uo, um] × [vo; v,,] ---, R 3 are f imc t ions with the properO' that ~(u , v) + / 3 ( u , v) = 1, then the. / imct ion q : [uo, u,,, I × [vo, v,, ] ---, R ? def ined by

q = qt + q2 -- (otq3 + flq4)

interpolates the mesh f: U U V - + R 3.

In the context of Theorem 3, suppose we are given an integer k, a mesh point (u , . v). 0 ~< r ~< m, a ne ighborhood W of (ur, v) together with funct ions

o i : W (3 {u,.} × Iv0, vz,] --+ R 3, I ~< i ~< k,

which define des i red derivat ives across the mesh line {u,-} × Iv0, v,,]. For

0 : I . o . . , , , l × Iv0. v,,] ~ [vo. v,,] x (R:~)"

defined by

O(u, v) = (u, f(uo, v) . . . . . f(um, v)) ,

we then have the fo l lowing theorem.

Theorem 4. l f t h e surface q = ql + q2 - (etq3 + jSq4) is such that: • or(u, v) = 1 , f o r (u, v) ~ W, • ('¢)ihl(X)/Oui)lx=~t(,,r,V) : o - i (v ) , f o r 1 <, i <~ k, 0 <~ r <~ m,

~{u,} x Iv0, v~]), then

Oiq- (u,., v) = a i ( v ) , f o r (Ur, v) ¢ W N ({u,.} x [vo, v,,l). 'Oil t

and (u,., v) ~ W f3

3. Appl icat ions and examples

Using preced ing results, if f : U U V --~ R 3 is a paramet r ic mesh as descr ibed in Defini t ion 1, it is poss ib le to construct an in terpola t ing surface q whose derivat ives across a sequence of paral le l mesh l ines interpolate prescr ibed values. In the case of a s ingle mesh line f({u,.} x [vo, vn]), 0 ~< r ~< m, and some choice of a posi t ive integer k, it is desi red to be able to assign d e r i v a t i v e s (Oiq/'c)ui)(ur, v), t;o <~ v <~ Vn and 1 -~ i ~< k, accord ing to the values of specif ied funct ions Or i : [ l )0 / t )n ] ~ R 3, where O'i ( t ' j ) = ( o i f / o l d i ) ( l t r , ~)j ).

for 0 ~< j ~< n. The task of const ruct ing the surface q, accord ing to the requi rements of Theo rem 4, then reduces to that of choos ing an appropr ia te univariate interpolat ion method. In the examples below, Figs. 1 and 2, the mesh being in terpola ted consists , f rom front to back, of a t r igonometr ic curve, an exponent ia l curve, a s traight line, and a parabola . F rom let) to r ight connect ing curves are po lynomia l spl ines which satisfy (Of/Ou)(uo, v i) = (1 ,0 , 0), 0 ~< j ~< 5, in the case of Fig. 1 and (Of/?)u)(uo, v j ) = (2, 0, 3), 0 ~< j ~< 5. for Fig. 2. Choos ing k = 1, for Figs. 1 and 2, manipu la t ion of the der ivat ives (Oq/Ou)(uo, v) was achieved by sett ing ~ = 1 and choos ing a : [v0, v,,] --~ ]R 3 so that ~7(v) = (1 ,0 , 0) and ty(v) = (2, 0, 3), respect ively. The univariate in terpolat ion method h l was chosen to be a

Page 4: Current experience with transfinite interpolation

80 M. Walker / Computer Aided Geometric Design 16 (1999) 77-83

Z

Y Fig. I. The red curves front to back are: a trigonometric curve, an exponential curve, a straight line, and a parabola. From left to right they are polynomial splines. The blue surface interpolates the red mesh in such a way that partial derivatives in the x direction along the front edge all have value (1,0, 0).

Fig. 2. The same as Fig. 1 with the exception that partial derivatives in the x direction across the leading edge now have value (2, 0, 3).

form of C a t m u l l - R o m interpolat ion consis t ing of a B-spl ine b lending local interpolat ing po lynomia l funct ions each possessing derivatives equal to o (v) at the points (u0, v). The interpolat ion method h2 was l ikewise chosen to be C a t m u l l - R o m in t e rpo la t ion - -bu t with no restrictions on derivatives of local interpolat ing functions.

Page 5: Current experience with transfinite interpolation

M. Walker / Computer AMed Geometric Design 16 (1999) 77-83 S 1

~q

.v.a,'

Fig. 3. A cylinder with radius scalloped with trigonometric variation together with a mesh of curves to guide the attachment of another such surface.

3.1. At taching surfaces

The techniques above may be used to attach two parametric surfaces with G k continuity in such a way that one is attached along a mesh line f({u,.} x Iv0, v,,]), 0 ~ r <~ m, m a curve in another. Following Gregory (1988), let D be a compact region of the plane homeomorphic to a closed disk, p : D -+ R 3 be a C k continuous parametric surface, and s ~ : [a, b] --+ D be a C k continuous curve in the domain of p. Given a domain mesh U U V, as in Definition 1, let )v : [v0, v,,] -+ [a, b] be a C ~ continuous change of variable function with L'(s) ~ 0, for s c [v0, vn], and define El :[vo, v,,] --+ D by Ej = ,~ o ;v. For 0 <~ r <~ m, let E2 ' [vo , vn] --+ U U V be defined by E2(s) = (u~,s) . For W a suitable neighborhood of Ez([v0, vn]), let ~o : W -+ R 2 be a C k diffeomorphism such that for s ~ [v0, v,,], E l ( s ) = ~o(E2(s)). According to (Gregory, 1988) Lemma 5.2, a surface q: [u0, urn] x [vo, v,,] --+ R 3 is connected with G k continuity to the surface p : D --+ IR ~ so that the'. mesh line q(E2 (s)) is jo ined to the curve p(c,o(E2(s))), provided that for derivatives in the u-direction,

i)iq(x) -- 3ip(q~(x)): x=E,t,-~' 0 ~ i ~< k. 'Oil i x=Ezf.v) 0 bit .

In order to guarantee that this condition is satisfied, let q be as constructed in Theorem 4 and choose the univariate interpolation method hi so that

3ih--I !x)'3ui x:,;o<E~l.r~): : OiP(~(x))otti Ix=~o E,._ . ' , 0 ~ i ~ k.

In Figs. 3 and 4, we see how two cylinders, each scalloped according to a trigonometric variation of the radius, may be attached. In Fig. 5 a cylinder is attached to the example occurring in Fig. 2. In each of these examples, the univariate interpolation scheme hi was chosen to consist of a Hermite segment in the region of attachment and CatmulI -Rom interpolatory segments elsewhere; the interpolation scheme h2 was chosen to consist only of Ca tmul l -Rom segments.

Page 6: Current experience with transfinite interpolation

82 M. Walker / Computer Aided Geometric Design 16 (1999) 7~83

Fig. 4. A second scalloped cylinder attached with G ! continuity to the first in such a way that it interpolates the curves in Fig. 3.

Fig. 5. A cylinder attached with G 1 continuity to the surface of Fig. 2.

References

Gordon, W. (1968), Blending-function methods of bivariate and multivariate interpolation and approximation, Technical Report GMR834, General Motors Research Laboratories, Warren Michigan.

Gordon, W. (1969a), Free-form surface interpolation through curve networks, Technical Report GMR-921, General Motors Research Laboratories, Warren Michigan.

Gordon, W. (1969b), Spline-blended surface interpolation through curve networks, J. Math. Mech. 18, 71-87.

Page 7: Current experience with transfinite interpolation

M. Walker/Computer Aided Geometric Design 16 (1999) 77-83 83

Gregory, J.A. (1988), Continuity, in: Lyche, T. and Schumaker, L.L., eds., Mathematical Methods in Computer Aided Geometric Design, Academic Press, New York, 353-372.

Walker, M. (1998), Adding constraints to Gordonesque surfaces, in: Daehlen, M., Lyche, T., Schumaker, L.L., eds., Mathematical for Curves and Su(aces 1I, Vanderbilt University Press, Nashville, TN.