G1 interpolation of mesh curves

G1 interpolation of mesh curves

G interpolation of mesh curves Qijin Liu and T C Sun The paper studies the interpolation of mesh curves by a G 1 smooth surface of rectangular B~zier...

764KB Sizes 1 Downloads 105 Views

G interpolation of mesh curves Qijin Liu and T C Sun

The paper studies the interpolation of mesh curves by a G 1 smooth surface of rectangular B~zier patches. Two methods are presented, using (a) B~zier patches of degree 6 x 6, and (b) B~zier patches of degree 4 x 4. In the first case, the twists are decoupled, and the algorithm is local. In the second case, the patches are of lower degree, but the algorithm is global. In both cases, the algorithms are stable. Keywords: l~zier patches, l~zier surfaces, G l continuity

A well known problem in CAD/CAMis the fitting of smooth surfaces to any given mesh curves. Various approaches have been proposed 1-1s. One approach was outlined by B6zier 1'2, and made more precise by Sarraga 15A6 (and see also References 13 and 14, by Peters). Their approach was to interpolate cubic mesh curves without derivative information. In this paper, we improve on the work of Sarraga ~5 and Peters taA*. We study the G ~ smoothness condition between neighbouring rectangular B6zier patches where the boundaries are cubic B6zier curves and each vertex has four incident curves with tangents forming an ×, i.e. they are pairwise-collinear (see Figure 1). In Reference 15, the surface patches are of degree 3 x 6. It seems a little unnatural to use the unsymmetrical degree 3 x 6 patches, and thus Sarraga's results are not very satisfactory. In References 13 and 14, the surface patches are of degree 4 x 4, which is the lowest degree possible for cubic mesh curves to be interpolated smoothly. However, Peters did not spell out how to handle the limit numerically. In this paper, we propose two algorithms. In the first algorithm, we use surface patches of degree 6 x 6. The surfaces that we have constructed seem to be better than Sarraga's because our patch degrees are symmetrical, and one of our patch degrees is higher, and so we have more degrees of freedom in the design of the surfaces. In the second

algorithm, we use surface patches of degree 4 x 4. We have succeeded in eliminating denominators in some of the formulae which could be small and cause large roundoff errors. The organization of the remaining part of the paper is as follows. We present in the second section the basic equation that guarantees the G 1 smooth connection between two patches. In the third section, we derive the formulae to compute the B6zier control points for the case of degree 6 x 6. In the fourth section, we derive the formulae for the case of degree 4 x 4. Finally, in the fifth section, we give several examples, and make some concluding remarks.

PRELIMINARIES

Throughout this paper, we shall use the notation BT(u)= ( ~ ) u i ( 1 - u ) "-i and c~i+Jf c~q f = Six c~JY

for any bivariate function f ( x , y). The following lemma for the computation of the product of two B6zier curves is used below in this paper. The proof is easy, and it is omitted. Lemrna 1:

i=0

j=O

k=O

where

Department of Mathematics, Wayne State University, Detroit, MI 48202, USA Paper received." 28 May 1993. Revised." 12 October 1993 0010-448519410410259-09 © 1994 Butterworth-Heinemann Ltd Computer-Aided Design Volume 26 Number 4 April 1994

259

G 1 interpolation of mesh curves: Q Liu and T C Sun

4

since 6 x 6 patches provide us with an ample number of degrees of freedom in our design, it is reasonable for us to make all the transversal tangents along the boundary collinear. This forces ? -=0. Therefore, Equation I becomes

3

1 Figure 1

Four incident tangents at corner point are pairwisc-collinear

~¢(t)d1oP(O, t) + fl(t)aoI Q(t, O)= 0

(3)

If we differentiate Equation 3 at t=0, we obtain the following for the twists:

Q

T T

p

0~(0)~11 P(0, 0) + fl(0)~ t 1Q(0, 0) = - ~'(0)dt oP(0, 0 ) - ff(0)~o, Q(0, 0)

tl *-- t/ Figure 2

U

-"+

Orientation of two neighbouring patches

The following lemma establishes the G ~ continuity between two neighbouring patches. We follow the convention of Sarraga~ 5 on the orientation of the patches (see Figure 2).

Lemma 2: Suppose that P(u, v) and Q(u, v) are two smooth surface patches with a common boundary. The two patches are (G t) smooth along the common boundary /ff there exist functions ~, fl and ? such that, for each t, a(t)aloP(O, t)+[3(t)dolQ(t, o)+?(t)~oQ(t, o ) = o

To decouple the above equation from the boundary conditions at the two ends, we use cubic polynomials as ~t and fl, with a'(0)=ff(0)=0 and ~'(1)=ff(1)=0. With this choice of 0t and fl, it seems that the choice of degree 6 x 6 polynomials at P and Q is the lowest degree possible that makes the algorithm local (decoupled), and the designed surfaces smooth and symmetrical. eomumm bomdary

Constrmimm ~ Let 6

6

P(u, v)= E E Pi/B6(u)Be](v) (1)

i=Oj=O

6

dloP(O, t) x dloQ(t, 0 ) 5 0

6

Q(u, v)= E ~ QijB~(u)B~j(v) i=O j = O

(2)

and

where u, veE0, 1] (see Figure 3). Let

~t(t)~(t)> 0 3

Remark." •



Equation 1 ensures a common tangent plane, and Equation 2 guarantees regularity and proper orientation. If P(u, v) and Q(u, v) are polynomials, then a, fl and ? are polynomials up to a common factor.

(See Reference 13 for details.) We shall assume in the following that

~,B~(t)

~o=~1, ~2 =~s

/~(t)= ~ piB~(t)

/~o=pl,/~2=/~3

~(t)= ~ i=0

3 i=O

where t e [0, 1]. If u~=Pti-Poi and vi=Q,-Qio, then it is easy to verify that 6

OloP(O, t)=6 )-"

u~B~(t)

j=O

• • •

all the patches are rectangular, the boundary curves are cubic B6zier polynomials, the four tangents of the incident curves at each comer point form an X, i.e. are pairwise-collinear.

PATCHES OF DEGREE 6 x 6 Motivation

and 6

OotQ(t, 0)=6 2 riB6(t) i=0

Using Lemma 1 and the independence of B6zier polynomials, we derive, from Equation 3,

~,[ct,ut_i+fl,vt_,](~)(6_)=O

i=o Since, by our assumption, the four tangents at the endpoint of any boundary are pairwise-eollinear, and

260

Computer-Aided Design Volume 26 Number 4 April 1994

where 1=0, 1..... 9.

1 i

(4)

G 1 interpolation of mesh curves: Q Liu and T C Sun

.,°

Figure 3 Constraints along common boundary

Expanding Equations 4 for l = 0, 1. . . . . 9, we have the following ten equations.

(5)

~ouo+#oVo = 0 6(aoUt + #oVl) + 3(aiUo +

#llio) = 0

15(~u2+ #oV2)+18(alul + #lvO+ 3(a2Uo+#2Vo)=O

(6) (7)

20(OtoU3+ #003) 4- 45(OtlU2+ #iV2) + 18(~t2Ul+ #2Vl) 4- ¢t3UO4- #31)0= 0

Twist constraints

It follows from Equations 5 and 6 that a d u l - u o ) +

#o(Vl-Vo)=O. Now consider a vertex with four patches /~, k = 1, 2, 3, 4, around it. Let ~k and #k be the coefficients for the boundary between patches pk and pk+ I, and let tk=Pkl -- loIVk__,lOVk__~00"vkThen, we have the following twist equation: /,.,!

(8)

15(aou4 + #or4) + 60(OilU3 + #103) + 45(0¢2U24- #21)2)

4- 6(Og3Ul4- #31)1)= 0

,,o

o\/,,]/o,

4

o//,q_/o

o

(9)

~o

o

o

~l\t,I

(15)

\ot

15(0~3U2 "4"fl31)2)"4"60(0[2U3 + fl21)3)4" 45(OtlU4 4" fit/34) + 6(~u5 + #@5) = 0

(10)

20(cX3u3 + #31)3)4" 45(¢t2u4 4" #2v4) 4" 18(¢glU54- #1o5) 4" ¢¢0u64- #006 ----0

(11)

15(~3U4 4" #31)4)4" 18(t~t2U54" #21)5)4" 3(tXlU6+ #11)6)----.O

(12)

6(Ot3U5 4- #3P5) 4- 3(Ot2U6 + #21)6)"= 0

(13)

~3U6 4" #3V6 = 0

(14)

It is well known that the rank of this coefficient matrix is 3, and so there exist nonzero solutions for the twists 13-~s

Remainiag constraints Using Equations 5, 6, 13 and 14, and the fact that ~ - - ~ l , ~2=a3, ~o=#1 and #2=#3, we can simplify Equations

Computer-Aided Design Volume 26 Number 4 April 1994

261

G ~ interpolation of mesh curves: Q Liu and T C Sun

7-12 as follows:

u3 ~

1 • oU2 +//or2 = - :

3

//3b2-flob5

(16)

(53u0 +//3130)

/)4--

9 2 g0N3 -1-//0/)3 = -- ~ (g3Ul +//3/)1) "1-g (53U0 "+"//3130)

5ob6-53b 3

//3b3-//066

3

(18)

16

0t3U2 +//3132 q.-3(0~OU4 -1-floV4) m --2- (0t0U5 +//0/)5) 3

8 - ~ (~u6 +//or6) 9

2

= -- ~ (50U5 "]-//005) "+"g (50U6 "1"//006)

1 g3U4 -1-//3/)4 = -- ~ (50U6 -[-//01)6)

In these solutions, the denominator 6 might be very small or even zero, and so it can produce unstable computation. However, when 6 = 0, all the numerators in the solutions are zero, and the 6 in the denominator can be cancelled to make the algorithm stable. Using the fact that 5oUo+//oVo = 0 and ~oU~+//or1 = 0, and the symmetrical part for u5, vs, u6, v6, we have

53U0 +//3/)0 = 6130/50~ 53Ul -[-//3/)1 -- 6/)1/0~0, 0q)U6+//0/)6 = -(19)

6v6/ot3, ~oU5+ fl0V5= 6Us/f13. By

factoring out a c o m m o n factor 6 from all the bs, we obtain

(20)

(21)

6

3

250

6

3

2//o

1//o

2l/0 ~P3

(22)

2 1 -- g (50U 5 Jr"//01)5) + ~ (O~OU6 +//0/)6)

/)4 ~--"~

+9//3 u 2//3 u0 10//0 1 5//0

/)3--

262

(24)

//3bl-//ob4 6

(25)

0q)bs-~3b2 6

(26)

(31) (32)

(33)

~)~3

--5~33

5~0

(34)

(35)

Note that in Equations 30-35, u2, u3, u4 and v2, v3,/)4 are now all free of the factor 6. Hence, the computation is stable.

Implementation The implementation can be divided into the following steps: •



Computer-Aided Design Volume 26 Number 4 April 1994

D

1 g0 /)0--t--153/)6

6 3 u _[_2//0U __I//0U .~._1~3U6 U4~--'~U5--~ 6 5 //3 1 5 //3 0 5 //0

(23)

Let 6 =50//3--~3//0, which is the system determinant of pairs of Equations 16, 17 and 20-23, and which geometrically contains the ratio of the distances of the first control points of the two neighbouring patches. Let b~. . . . . b6 denote the right-hand sides of Equations 16, 17 and 20-23. Note that b~. . . . . b6 are all determined by data from the given mesh curves. We can solve these equations for u2, v2, u3,/)3, u4,/)4 in terms of bl, ..., b6.

U2 --

1//3

(30)

3

Ot3U2+ //3/)2"=--~(53Ul "q-//3/)l)--~ (53Uo-k //3/)O)

6

550

550

6 /)5--3 /)6-.k2 0tO/)1

5ob4"53b!

53

9 50/)5 _ 2 ~_._oov6 + 9 53/)1 _ 2 53 70

9 //0

/)2 =

1 50V6+1~3 Vo

/)3=i-653

3 OCoU4-[-//0/)4 -~"~ (50U5 -["//0/)5) -- g (50U6 "b//0/)6)

3

vs-

U2~---~Ul --~ Uo"}--~~31g5--~-~3 U6"~~ ~o UO

It follows from Equations 18 and 19 that

--2 (#3U 1-[- f13/)1) -[- 1 (Ct3Uo+//300)

(29)

3

16

50U4 -[- fl0134-'[-3(g3U2 +//3132) = --2" (53Ul "["//3/)1) -- ~ (0~3UOq- f13/)O)

(28)

(17) u4=

53U3 "[-//3/)3

127)

Find the coefficient 5s and fls using Equation 5, In our implementation, we use % = [Iv01[ and flo = Iluoll. Since Uo and v0 are in opposite directions this way, we make 5(t)fl(t) > O. Solve the system of Equation 15 for the twists. Since it has one degree of freedom, we can solve it by minimizing the deviation from the twists of bilinear Coons blending.

G ~ interpolation of mesh curves: Q Liu and T C Sun

• •

Constraints along common boundary

For the remaining control points next to each common boundary, use Equations 30-35. The nine undecided interior control points can either be determined interactively, or be obtained through a Coons blending.

Given two neighbouring patches (see 4

Figure 4)

4

i=O j = O

PATCHES OF DEGREE

4x 4

4

4

e(u, v)-- i=O E j =EO

Motivation

where u, v e [0, 1]. Suppose that their common boundary is

In general, the tangent ratios at the two endpoints of the common boundary between two adjacent patches are unequal. This means that, in Equation 1, 0t and/~ must be nonconstant. We have used cubic polynomials for and/ff for the 6 × 6 case in the third section. However, the simplest choice is to use linear functions for 0t and/~. It is easy to see that bicubic patches are not, in this case, sufficient to interpolate cubic boundaries smoothly, and so the next possible choice is biquartic (4 × 4) patches. With 4 x 4 patches and cubic boundary curves, to balance the degrees of the polynomials in Equation 1, we must use cubic polynomials for ~.

3

e(0, t)= Q(t, O)= ~, qiB3(t) i=0

Write c~= qi - qi- l. Let a(t) = ct0(l - t) + a i t,//(t) = flo(1 - t) +/~1 t and 3 =

i=0

iB (0

V4

~J

=It

R,

7=

Figure 4

Neighbouring patches

Computer-Aided Design Volume 26 Number 4 April 1994

263

G ~ interpolation of mesh curves: Q Liu and T C Sun

where t~ [0, 1]. We can assume that , 0 = , 3 = 0 , because tangents at the corner points are pairwise-collinear, and so we only need to determine 7t and ,2. Let u~=Pi~-Po~ and v~=Q,-Q~o. Then, it is easy to verify that

for k = 1, 2, 3, 4. In matrix form, we have (~

fl~ 0

( c t;

3,1

Bl

Ol/w,/

no 0/|':/ = - 4 3,7 nT//w2/ 0 ~3 f13/lt31 t [13 0 ~3 3,31]tWs]

4

4.

C~,oV(O,t)=4 ~ u~B~(t)

0 /it, l

\~

0

0

~<41tt4i

\3¢

[14

0

~<41\w4i

j=O

(43)

Since the matrix on the left-hand side has a rank of 3, for this equation to have solutions, we must have some constraints on the coefficient 7s. After some row operations on the two matrices in Equation 43, and using ~o1~8ao~o= ~ we obtain

and 4.

doiQ(t, 0)=4 ~ v,B~i(t) i=O

Using Lemma 1 and the independence of B~zier polynomials, we derive, from Equation 1, 1

i 2 3

C-o

4

)

3

2

'l-iC'+l(l-i)(i) =0

+3 ,~=o

(36)

where l=0, 1. . . . ,5. Expanding Equations 36 for /=0, 1. . . . . 5, we have the following six equations: • oUo+ [1oVo= 0

(37)

16(~oUl + ~0/)1) Jr 4(0~1UOJr ~IUO) Jr 971Cl= 0

(38)

24(Oq)U2+flOV2)+16(~IUl-4-fllvl)Jr 18,iC2+972C 1=0

(39)

16(~.oU3jrflOV3)jr24(~tiU2jrfllV2)Jr971C3Jr 18T2C2=0 (40) 4(~oU4 +/701)4)+ 16(~tlU3 + ~1V3)+ 9,2C3 = 0

(41)

~ l U 4 Jr ill04 .~ 0

(42)

+3~yl']w

444

+/~t3gflgff~o Nfll

4 ~ o [Ot~Ul-~JrfliVl-i](i)(l_i)

(ct2p~

Jr f

O~4

3fl~ff~oy2"~w

3fl~132ffgo73"~

fll~oofl2

^

(44)

Since

~w~+#~w3=0 4w2+#o2W4=0 4w3 +/~oSWl= 0

~4w,+~ow2=0 we have

'~' a~oo floflo[11~o 374 ~•- ~ ~o~o~o-'-~-3 2

1

1

=,/~oPo Po/~l+3PoT~ --~--= 0 3 2

44

(45)

~o'

2 4

1

3

~lflOff~o o4+3ff~oTl + ~ i 413~oofl 2 3floff~o'l=0 1 2 ~o~o ~' ~o' ~o~ 4~o~ 4~o~

Twist constraints

(46) It follows from Equations 37 and 38 that 40eo(Ul- UO)+4flO(Vi--v0)= --elUo--fllVo--~ YiCi

By symmetry, it is enough to consider the last equation. Multiplying the last equation by o ~ / f l ~ and using

4 Now consider a vertex with four patches pk, k = 1, 2, 3, 4, around it. Let ~tk, flk and 7k be the coefficients for the boundary between patches pk and pk+ 1, and let

P~

~4 we obtain

tk = pk I --Prok --Pm+ k Poo k

4

and Wk=Plo-Poo k k . Then, 3ck=4Wk+l, and so we have the following equations for the twists:

40~tk + 4flktk + 1 = 264

k - - f fkl W k + 2 - - 3 ' k w k + --OllWk

1

Computer-Aided Design Volume 26 Number 4 April 1994

~o~ 4 )

\~I

3,1 3, =0

(47)

~-~o) + ~

If the ,s are chosen to satisfy Equation 47, we can solve the twists from any three equations in the system of Equations 43.

G1 interpolation of mesh curves: Q Liu and T C Sun

1~o 6v4+~ ~o72c3_F~ 6 3 3 b2 = . . .6. 0~1 gl g l /)3--~ 72C2--~ 71 c3 (52)

Remaining constraints

We can solve for the remaining two unknowns u2 and /)2 from Equations 39 and 40. Rewriting these two equations as 2 O~oU2 +//01)2 = -- -~

(~,U, -F"//,/)1) - -

2

3 ~

71C2 - -

1//o ~ . 3 //0?2 2 6 3 3 - 6//, ou4+-~ ~ c 3 - 3 ~ u 3 - ~ 72c2-~ 7,c3

3 ~ 72 C'

3

Thus

3

.

02

g,U 2 "F fll/)2 m - - 3 (goU3 "q-//0/)3) -- ~ 71C3 -- ~ ]Y2C2

l~o. 04..1_.~ 0~0 .

6 ~1

Let bl and b2 be the right-hand sides of the above two equations, respectively, and let 6 = ~ f l 1 - ~ ] / / o . The meaning of 6 is similar to that in the third section. We have

v2-

//lbl-//ob2

1//02 u4+~//0

(49)

6

In the above solutions, the denominator 6 might be very small, or even zero. However, in a similar way to that in the third section, we are able to cancel the factor 6 from the denominator. It is easy to derive that

- - c,

#o

(55)

Because of the symmetry of Equations 54 and 55, it is reasonable to choose ~o72- ~ffl =//171 -//0?2. This leads to

~1

C<0+//0

GtOU4"~-flO/)4m'~-lU4

4 ao

(54)

1//2~ Uo+~ fll

0£072-- ~1~'1 = fll~'l--~0~2 =

alUl"l'-fl,/), =

) (~72-~ff0/6

and

~1/d0-1-//1/)0 = - - 6 u0

1 ~,6

OCO

?S/c3/° 3c2+

(48)

~.ob2-~1b1

_1~' . __VO+~ ~' Vl

Ogl 133-6 0~0

+ (3g -0- c3- 3

U2

(53)

/)o

9 ~,~1

671 ~+//o

6?2

- - - -

~1 +//~

Substituting these back into Equations 54 and 55, we see that 6 disappears from the formulae for computing u2 and v2. Therefore, our algorithm is stable.

6

- - c1"~'--Ol 16 ao ~.o

O~lU,.~..//,/), = 1 -fl,6 - Uo 9 -//171 c l - 6 -u,4 //o 16 flo flo Implementation 1 ~o6 g0U3 q'- #0/)3 = ~ - - /)4

a] 1

//06

~¢'oU3q-//0133=--4t--l-

9 Gto)'2 6 -C3 -- - - /)3

16 a, u4

The implementation can be carried out as follows:

~1



9 //0?2 -c3 + 6 -u3 16 t , //1

37. In our implementation, we use ~o= IIvoll and //o = [Juoll. Since uo and Vo are in opposite directions

It follows that we have



. 3 awl

~ OVo+-~T o C,--32 =0 6 V,--~3 71C2--~3 ~'2Cl b 1 = ~1 0~0 _

1//1 6Uo+

6//0

~fl, ~071cl

Step 1: Find the coefficient as and fls using Equation

(50)

2 6 3 3 71c2-~72cl + 3 flOU,--~





(51)

this way, we make ~(t)//(t)> O. Step 2: Determine the ?s using Equation 47 and ?2/?1 = (0~14"//1)/(~0 -I- *80). Step 3: Solve the system of Equations 43 for the twists. Since it has one degree of freedom, we can solve it by minimizing the deviation from the twists of bilinear Coons blending. Step 4: For the remaing control points next to each common boundary, use Equations 54 and 55.

Computer-Aided Design Volume 26 Number 4 April 1994

265

G1 interpolation of mesh curves: Q Liu and T C Sun

Step 5: The undecided interior control points at the centre can be either determined interactively, or obtained through a Coons blending. CONCLUSION AND EXAMPLES We have implemented our algorithms on a Sun Spare II, an HP 9000 Series 700, and a Silicon Graphics IRIS with wireframe and shaded displays. To test our algorithms, a set of data was designed by Dr R Sarraga in which some of the &s are either zero or nearly zero. The original boundary mesh curves are shown in Figure 5, and the wireframes of the interpolated surfaces of degree 4 x 4 and 6 x 6 are shown in Figures 6 and 7, respectively. The displays of the surfaces are attractive, and the computational errors are very small. In our test, the angles between any two tangents of neighbouring patches at common boundary points are of magnitude 10-13 using double-precision arithmetic on an HP 720.

ACKNOWLEDGEMENTS The authors would like to express their special thanks to Dr R Sarraga for his constant encouragement, stimulating suggestions, and permission to use his data. The authors would also like to thank Dr Jorg Peters for his helpful comments and suggestions.

Figure 5

266

Original boundary mesh curves

Computer-Aided Design Volume 26 Number 4 April 1994

Figure 6 Wireframe of interpolated surface of degree 4 x 4

Figure 7 Wireframe of interpolated surface of degree 6 x 6

G 1 interpolation of mesh curves: Q Liu and T C Sun

REFERENCES 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16

B6zier, P E 'Essai de d6finition num6rique des courbes et des surfaces exp6rimentaies' Doctoral Dissertation Universit6 Pierre et Marie Curie, France (1977) B6zier, P E The Mathematical Basis of the UNISURF CAD System Butterworths, UK (1986) Coons, A 'Surfaces for computer aided design of space forms' Report MAC-TR-41 Project MAC, Massachusetts Institute of Technology, USA (1967) Du, W-H and Schmitt, F J M 'On the G 1 continuity of piecewise B6zier surfaces: a review with new results' Comput.-Aided Des. Vol 22 (1990) pp 556-573 Gregory, J A 'Smooth interpolation without twist constraints' in Barnhill, R E and Riesenfeld, R F (Eds.) Computer Aided Geometric Design Academic Press, USA (1974) Liu, D 'A geometric condition for smoothness between adjacent Bezier surface patches' Acta Math. Appl. Sinica Vol 9 (1986) pp 432-442 Liu, D and Hoschek, J 'GC ~ continuity conditions between adjacent rectangular and triangular Bezier surface patches' Comput.-Aided Des. Vol 21 (1989) pp 194-200 Nielson, F M 'The side-vertex method for interpolation in triangles' J. Approx. Theory Vol 25 (1979) pp 318-336 Peters, J 'Local generalized Hermite interpolation by quartic C 2 space curves' ACM TOG Vol 8 (1989) pp 235-242 Peters, J 'Local smooth surface interpolation: a classification' Comput. Aided Geom. Des. Vol 7 (1990) pp 191-195 Peters, J 'Local cubic and bicubic C ~ surface interpolation with linearly varying boundary normal' Comput. Aided Geom. Des. Vol 7 (1990) pp 499-516 Peters, J 'Smooth mesh interpolation with cubic patches' Comput.-Aided Des. Vol 22 (1990) pp 109-120 Peters, J 'Smooth interpolation of a mesh of curves' Construct. Approx. Vol 7 (1991) pp 221-246 Peters, J 'Fitting smooth parametric surfaces to 3D data' CMS Technical Report 91-2 (1989) Sarraga, R F 'G ~ interpolation of generally unrestricted cubic Bezier curves' Comput. Aided Geom. Des. Vol 4 (1987) pp 23-39 Sarraga, R F 'Errata: G ~ interpolation of generally unrestricted cubic Bezier curves' Comput. Aided Geom. Des. Vol 6 (1989) pp 167-171

17 18

Shirman, L A and S&:luin, C H 'Local surface interpolation with Bezier patches' Comput. Aided Geom. Des. Vol 4 (1987) pp 279-295 Shirrnan, L A and S~quin, C H 'Local surface interpolation with shape parameters between adjoining Gregory patches' Comput. Aided Geom. Des. Vol 7 (1990) pp 375-388

BIBLIOGRAPHY Farin, G Curves and Surfaces for Computer Aided Geometric Design Academic Press, USA (1990)

)ijin Liu received a BS in computational ~athematics in 1982, and an MS in rpplied mathematics in 1985 from 7uazhong University of Science and "echnology, China. He is a software 'ngineer at Ford Motor Company, and PhD student. His research interests ~clude surface design, computational nathematics, computer graphics and mage processing.

T C San received a BS in engineering flora Taiwan University in 1957, and a PhD in applied mathematics from Brown University, USA, in 1963. He is a professor of mathematics. His research interests include probability and statistics, surface design and computational mathematics.

Computer-Aided Design Volume 26 Number 4 April 1994

267