Discrete Comput Geom 8:417 427 (1992) GeometryDiscrete & Computational f 1992Sprmger-Verlag New York |nc

Subdivision Algorithms and the Kernel of a *

R. J. Gardner 1 and M. Kallay 2

Department of Mathematics, Western Washington University, Bellingham, WA 98225-9063, USA

2 Electronic Data Systems Corporation, C4 Technology West, Suite 300, 13555 SE 36th Street, Bellevue, WA 98006, USA

Abstract. The kernel K of a convex polyhedron Po, as defined by L. Fejes T6th, is the limit of the sequence (P.), where P. is the convex hull of the of the edges of P._ ~. The boundary OK of the convex body K is investigated. It is shown that ~K contains no two-dimensional faces and that ~3K need not belong to C 2. The connection with similar algorithms from CAD (computer aided design) is explained and utilized.

I. Introduction

Suppose Po is a planar convex . A sequence (P.) of can be defined by letting P. be the polygon of P._,; that is, the convex hull of the midpoints of all the edges of P._ ,, It can be shown lim. P. = {Co}, where % is the of Po (and of all the polygons P.). Much more interesting is the beautiful result that the sequence {~2.Pz.}, where ~2. are suitable scaling factors, converges to an affinely regular polygon. (This theorem, attributed in [9] to Neumann, was actually discovered earlier by Darboux [5]; it has been rediscovered many times (see p. 322 of [9]).) Moreover, apart from its aesthetic appeal, there is an important application, since the result is a central ingredient in the solution of Hammer's X-ray problem [i0]. Several generalizations of the midpoint process in R z have been studied (e.g., [2] and [12]), but here we are concerned with the three-dimensional analogue proposed by Fejes T6th in [13]. If Po is a convex polyhedron in R 3, P. is defined exactly as above. In this case, however, lira. P. = K(Po), where K is a convex body

* R. J. Gardner was supported in part by a von Humboldt fellowship. 418 R.J. Gardner and M. Kallay in R 3 called the kernel of Po. To see this, observe that since the midpoint algorithm in R 2 preserves , the set of all centroids of facets of the polyhedra P, lies in the boundary OK of K. As a preliminary example, the reader may check that if Po is a regular tetrahedron, then Pt is a regular octahedron, and P2 is a ; and if Po is a , P~ is again a cuboctahedron, yielding the interesting fact that all these polyhedra have the same kernel (up to homothety). Fejes T6th asked what can be said about the structure of 0K. As far as we know, nothing is yet known. From examples the impression that, as n increases, the size of the facets of P, should decrease (and so their number should be unbounded), is obtained. We confirm this in Theorem 4, and deduce (Corollary 6) that 0K contains no facets (two-dimensional faces). We also show that OK need not belong to C 2 (Theorem 8). The obvious questions, whether 0K is strictly convex or smooth, remain unanswered (the latter was also posed by Fejes T6th in [13]). However, our results are evidence for the intriguing conjecture, suggested by Zamfirescu, that the kernel is in some sense a "typical" convex body. Indeed, Klee showed that most convex bodies, in the sense of Baire category, are strictly convex and have a smooth boundary, and Gruber proved that most do not have a boundary belonging to C 2 (see [14] and the references given there). We have a second motivation in this note, namely, to draw the attention of mathematicians to the connection between Fejes T6th's problem and some work in CAD (computer aided design). In CAD, processes called subdivision algorithms are sometimes used to model curves or surfaces. It has been found efficient to store a finite set of points, edges, and facets, and then generate new ones by some algorithm, formulated so that successive iterations converge to a limiting curve or surface, preferably smooth. Several such algorithms have been suggested, and in some of these the midpoint operation or a similar one plays a role. We discuss two of these algorithms in Section 4, and apply one of them to Fejes T6th's problem. This is a planar algorithm which was, in fact, considered by de Rham long before CAD existed. Its analysis is quite complicated, and de Rham devoted several papers to it. The proof of Theorem 8 of Section 4 indicates that the midpoint operation in three dimensions is actually analogous to de Rham's algorithm, rather than to the planar midpoint algorithm. Furthermore, the convex hull operation in three dimensions can create new edges in a way that is not easy to foresee. All this suggests that a full solution of Zamfirescu's conjecture may be difficult to obtain. We thank David Levin for a careful reading of the manuscript which revealed a flaw in our previous version of Theorem 8.

2. Definitions

If E is a set, we denote by d(E), dE, int E, and relint E, the diameter, boundary, interior, and relative interior of E, respectively. Suppose P is an m-dimensional convex in R". Let M(P) be the midpoint polytope of P, i.e., the m-dimensional polytope in R" formed by taking the convex Subdivision Algorithms and the Kernel of a Polyhedron 419 hull of the midpoints of the edges of P. We write M"(P) for M(M"- ~(P)), n = 2, 3..... where MI(P) = M(P). If Po is a convex polyhedron in R 3, let P. = M(P._ 1) for n = 1, 2 ..... Write K = lim, P,. Then K = K(Po) is called the kernel of Po (see [13]). If K is the kernel of P0, we define the centroid set C(K) of K by C(K)= {x: x is a centroid of a facet of some P,, n E N}. Suppose F is a facet, i.e., a two-dimensional , of the polyhedron P.. If there is a facet G of P._ ~ such that F = M(G), we say that F is of type I. Now suppose F is a facet of P, which has the following property: there is a vertex v of P.-x such that each vertex w of F is the midpoint of some of P,_ ~ with v as one endpoint. Then we call F a type 2 facet of P,. For each n, we let

6. = max{d(F): F is a facet of P,} and

6~,2) = max{d(F): F is a type 2 facet of P.}.

As is usual, we denote by C k the class of curves (or surfaces) whose every point has a relative neighborhood which is the range of an open set in R (or R 2, respectively) under a k-times continuously differentiable mapping. Smooth means belonging to C ~.

3. The Kernel Has No Facets

Lemma 1. For each n, every facet of P. is either of type 1 or of type 2.

Proof Let F be a facet of P.. Let proj~ denote the orthogonal projection onto a plane 11 orthogonal to F, and let h be the line in H containing proj~ F. If proj, P._ 1 lies on one side of h, it is easy to see that F must be a type 1 facet of P,. Suppose, then, that h n int(proj~ P,-1) 4: ~. By our choice of 11, proj, P, lies on one side of h. Let E be the open half-plane in 11 on the other side of h, If two or more vertices of P._ 1 project into E, there is an edge of P,_ 1 whose midpoint projects into E, contradicting E n proj~ P. = ~. Therefore a unique vertex v of P._I projects into E. It follows that each vertex of F must be the midpoint of an edge of P,_ 1 which has v as one endpoint, and so F is of type 2. []

Lemma 2. For each n, 6. < 6._ 1.

Proof If F is a facet of P, of type 1, then F = M(G) for some facet G of P._ 1. The diameter d(G) is the distance between some pair of vertices of G, and F contains none of these vertices. Therefore d(F) < d(G) < 6._ ~. 420 R.J. Gardner and M, Kallay

Suppose F is a type 2 facet of P.. Let v be the vertex of P._ ~ from the definition. Let {wi} be the vertices of F and, for each i, let e i be the edge of P._ ~ containing v and w~. Finally, let G~ be any facet of P._ ~ containing e~. Then

d(F) < ½ max,4{d(e,) + d(e)} < ½ maxi4{d(Gi) + d(Gj)} < ½"26._1 = fin-l, and the lemma follows. []

Remark 3. We do not know if there is a c < 1, depending on Po, such that 6, < c6,_ 1 for each n. On the other hand, given c < 1, there is a Po with 6~ > C6o. To see this, let H be a regular hexagon in the xy-plane centered at the origin, and for e > 0 let Po(e)= cony{(0, 0, _+~), H}, i.e., a regular double over H, Then, given c < 1, we can choose e small enough so that for Po(e) we have 6~2~ > c6 o. More elaborate examples show that, given c < 1 and n > 1, there is a Po with 6tn2) > c6 o.

Theorem 4. 6. --, O.

Proof Suppose the sequence (6.) does not converge to zero. Since 6. < 6._ 1 by I,emma 2, we have 6. ~ a > 0 and 6. > a for all n. Therefore there are sequences (ut.1~) and (u~.2~), where u(.I~ and a~.2) are vertices of the same facet F. of P., such that 6. = d(F.) = Ilut.1) - Ut.2)tl --* a. Suppose there is an no such that F. is of type 1 for n > n 0. For each n "_ no, there is a least integer k. such that there are facets G~"~ of P~ with F. = G~ ) and G~I = M(G~")), k. < i _< n - 1. Suppose there is an m such that k. _< m for all n >_ no. Then each F., n _> no, is descended from some facet of some P~, 0 _< i < m, via the midpoint operation. However, there are only finitely many such facets, and for each one successive midpoint polygons converge to its centroid. Therefore, for sufficiently large n, we must have d(F.) < a, which contradicts 6. > a. Thus k. --. as n --. ~. Let F'. = G~k"]. Then F'. is not of type 1, so by Lemma 1 it must be of type 2. Also, d(F.) < d(F'.) <_ 6k., SO d(F'.) ~ a. From the above it follows that we can assume there is a subsequence S of N, such that F. is of type 2 for n ~ S and d(F.) ~ a as n ~ ~ through S. Choose a subsequence T of S such that the line segments s. = Jut. 1), u~.2)] converge in the Hausdorff metric to a line segment s = [u tl), u tz)] of length a in OK, where K is the kernel of Po, as n --* on through T. Let t be the line containing s. For each n e T, there are vertices vt.°, 1 _< i _< 3, of P._ 1 such that u~~) --- ~(vtO + v~+ 1)), and e~.i) = [vt.°, v~.~+ 1~] is an edge of P._ 1, i = 1, 2. By taking a further subsequence if necessary, we may suppose that et.:) is the longer of these edges, i.e., d(e~z)) = c,,cl(e,,"~oh , for some c. < 1. Let 9. be the angle between e~,1~ and e~.2~. Then

[d(F.)] 2 = ~([d(et.1))] 2 + [d(e~2))] 2 - 2d(et.t))d(et. 2)) cos a.), Subdivision Algorithms and the Kernel of a Polyllearon 421 giving d(et. 1~) = ct.d(F.), where

0~n (1 + c 2 - 2c. cos 9.) 1/2"

Now ~. > 1, so d(F.) ~ d(et. 1~) <_ 6._ 1 for n e T. Thus ct. ~ 1, as n ~ ~ through T. This implies that c.--, 1 and 9.--* rt, as n ~ ~ through T. It follows that v~il ~ v Ill as n --* ~ through T, where v") lies in t c~ ~K, 1 _< i _< 3, 4[vtl~ - u(2) H = IIvIz~ - vt3~l[ = a, and vt2~ is the midpoint of s. The edges et.1) of P._ 1 converge to the segment Iv ~1), v t2~] of length a. Each e~.1J belongs to a facet of type 1 or type 2. In either case there are vertices wt.~) of P._ z, 1 _< i < 3, such that yr.i) = ~wt.° + •,~. li+ 1~1, andf~i) = rw,)~-., -.w .+ 1~] is an edge of Pn_2, i = 1, 2. Now the argument above shows that w~.~ ~ w "~, where w ") lies in t c~ c~K, 1 < i < 3, I[wtl~ -- w(2)][ = Ilwt2) - w~3)l[ = a, and w t2) = u tl~ is the midpoint of [v ~lJ, v~2)]. Hence IIw~1) - P(3)[I = 5a/2. Replacing e~.1) by ftl~ and repeating the argument yields a point x ~3) in t c~ OK with ltw~1) - x~3)ll = 3a, and so on. We deduce that OK contains line segments of arbitrary length, which is impossible. []

Corollary 5. The centroid set C(K) is dense in OK.

Proof. Let 6 > 0 and x e 0K be given. There is an n o such that, for each n > n o, there is a point x. e 0P. with Ilx - x.tl < 6/2• By Theorem 4 there is an n I > n o such that 6. < 6/2 for each n >_ n 1. If x. e F,, where F. is a facet of P., and c. is the centroid of F., we have

tin- c.II ~ !Ix- x.II + llx.- c.[I 6 6 <_-+ -=6 2 2

for n > nl, as required• []

Corollary 6. OK contains no facets.

Proof. Suppose D is a facet in OK. Then there is a c ~ C(K) with c ~ relint D, by Corollary 5. For some n, c is the centroid of a facet F. of P.. Then D c F.. However, if H is the plane containing F., then P. c~ H ---} {c}, a contradiction. []

4. Subdivision Algorithms

We begin by describing a planar algorithm studied by de Rham, which we then apply to obtain information about the kernel of a polyhedron. Let Qo be a planar convex polygon with vertices qo,..., q.- 1. (We always take the indices of qi modulo n.) On the edge [qi, qi+~], consider the points q'2i and 422 R.J. Gardner and M, Kallay q'z,+l which divide the edge into three segments, [q~,q'zl], [q'2i, q'zi+l], and [q~+ 1, qi+ 1], in the proportions ill, a, and flz, respectively, where fll + cc + f12 = I. The points q'i, i = 0 ..... 2n - 1, form the vertices of a polygon Q~. The process may be repeated, with the same proportions, to obtain a sequence (Q.) of polygons. Then Q = lira, Q, is a convex body in R 2. Let Yi = ft.]a, i = 1, 2. De Rham's interest in the limiting curve 0Q stems from the surprising fact that, for all but a single pair of values of the parameters ),i, (?Q has singular properties. In a series of papers (see, for example, [6]) he showed that if Yi -< 1, i = 1, 2 (which includes the case where each side of the polygon Q, is trisected), then OQ is smooth, but if ~ > 1, i = 1, 2, then OQ has no tangent at a countable dense subset of ¢3Q; further, unless ~'1 = Y2 = ½, no subarc of OQ belongs to C 2. In contrast to this is the special case "t~ = 72 = ½- Here it can be shown (e.g., Section 2 of [3]) that t3Q is a continuously differentiable curve consisting of a finite union of parabolic arcs, each joining adjacent midpoints of the sides of the original polygon Qo- This was also known to de Rham, but in the CAD literature it is called Chaikin's algorithm (see [4], [11], or [3]), since until recently it was not realized that de Rham has priority. We need the following result concerning this algorithm.

Lemma 7. Let Qo be a planar convex polygon with vertices q~, i = 0 .... , n - 1, and let Q be the limiting convex body obtained from Qo by Chaikin's algorithm. Then OQ belongs to C 2 if and only if [qi-l, qi+2] is parallel to [ql, qi+l] for i=0 ..... n- I.

Proof It is known (see p. 120 of [3]) that c~Q is a finite union of parabolic arcs given by p,(t) = (½qi-1 -- q, + ½qi+O t2 + (qi- q,-1)t + ~q,-,.1 + q,)

for 0 <_ t _< 1, i = 0 .... , n -- 1. The arc p,

p;(1) = q,+l - q, = p;+ 1(0),

i = 0,..., n - 1, which shows that OQ belongs to C 1. Also, p~'(t) is constant, and the curvature at pi(t) is the length of the vector

p~(t) x PI' lp;(t)13 '

i = 0 ..... n - 1. Using p'~(1) = p'~+ l(0), we see that 0Q belongs to C 2 if and only if

p',(1) x p~' = p~0) x pT+ or pi(1) x (p','+ 1 - p~') = 0, Subdivision Algorithms and the Kernel of a Polyhedron 423 i = 0 ..... n -- t. This is equivalent to the condition that p[+ 1 - P~ is parallel to p~(1), i = 0 ..... n - 1. Since

Pi+l" - p7 = (qi - 2qi+, + qi+2) (qi-t -- 2qi + qi+l) = (qi+2 -- qr-,) + 3(qi -- qi+,) = (qi+z -- ql- 1) -- 3p'i(1), this reduces to the condition that qi+2-qi-1 is parallel to q~+l-q~, i = 0 ..... n - 1, as required. []

Theorem 8. There exists a polyhedron Po such that the boundary of the kernel of Po does not belong to C 2.

Proof Let Qo be an in the xy-plane in R 3 which is not a parallelo- gram. To ease our description, we also assume that Qo is not a trapezium, though this is not actually necessary. Suppose qi, 0 _< i _< 3, are the vertices of Qo- The polyhedron Po is the right cylinder with vertices (q~, _+ 1), 0 _< i _< 3. We need to follow Fejes T6th's algorithm through several steps. Let Ri be the rectangular facet of Po with vertices (qi, + l) and (q~+ 1, -+ 1). Note that each P, will be symmetric about the xy-plane. For our purposes, it will suffice to fix i and consider at the nth stage of the algorithm the facet M"(R~) of P, and the set ,~'](P,) of facets of P, which meet both M"(R~) and the open half-space {(x, y, z): z > 0}. The facet M(RI) of PI is a parallelogram, and the set ~+(P1) consists of the n-gon M(Q 0 x {1}) and two , Si and Si+~, with one vertex at qi, qi+t, respectively (see Fig. 1). The facet M2(Ri) of P2 is rectangular. Two rectangles, R~ 1), R[ 2), each of which share a vertical edge with ME(Ri), are contained in ~i+(P2). The latter also contains two triangles, S~ 1} and S[ 2}, which have an edge in common

l I 1 |

t t

I 1 1 I I ! I I I I I I I I

Fig. 1 424 R.J. Gardner and M. Kallay

/ / ¢(~) / / "'~ M(5',+~)

] x ,/ \ ~"x.-~ .... J---p-, / i

t \ ! ! ' Ix ,-'I ~ ~ /1 ,

I/ I ".11 !

,' "'---LJ \ ,'L 'J I __ ,\ ,-~ \ \ /

o(t) ", / R C2) it/ \/ + M~ ( R+) Fig. 2 with M2(Ri) and M2(Qo X {1}), respectively. Finally, ~+(P2) contains the two triangles M(SI) and M(Si+ 1). We also assume without loss of generality that SI 1) and M(SI) meet in an edge (see Fig. 2). The key observation here is that one edge of M(Si) is parallel to one diagonal of M2(Ri), and one edge of M(Si+ 1) is parallel to the other diagonal. This parallelism produces two trapezoidal facets at the next stage. The following facets comprise ~+(P3) (see Fig. 3). Firstly, the three parallelo- grams M3(RI), M(R!I)), and M(R~2~); two trapeziums, T/and T~+ 1, which share an edge with M3(R+) and with M2(Si), M2(Si+ t), respectively; a S'~, which has

^i(sy ~) ,',.'++I:+,>~ \ .~+- ^-'I+'+?> _,~' ', "L I~ --7", ~,,+c~,+,~

Fig, 3 Subdivision Algorithms and the Kernel of a Polyhedron 425

7",' s','

i// \ M(.;+~) 1// \\\ //// \x\ ii I I \\\~,\ \\\\\ ~//kl) x / / \ z" \ / \\\ t I

x%\ / / / \\\ \/ 11[ M~(R~,~) ",,." M~(ff?) )

Fig. 4

common edges with M(SII~), M(S~2)), and Ti+l; and the triangle M(S~I~). Note that the latter has a horizontal edge, which is parallel to the horizontal diagonal of Ma(RI); this results in a trapezium at the next stage. The next iteration produces the facets in ~+(P4), which form a configuration (see Fig. 4) that is preserved by alternate steps of the algorithm. We have the rectangles M4(Ri), M2(R~I)), and MZ(R~2~); two parallelograms, M(T~) and M(T/+ i); a trapezium T;, which has common edges with M4(RI) and M(T/); and a triangle S'i', which meets both T'i and M(T/+ 1) in an edge. The parallelograms M(T/) and M(T/+ 1) each have a diagonal which is parallel to a diagonal of M4(Ri). Using this fact it is easy to see that ~+(P6), and by induction, ,~+(P2n), for n >_ 3, also contains three rectangles, two parallelograms, a trapezium, and a triangle, in the same configuration. In particular, the rectangles MEn(Ri) , M En- 2(R!t)), and M En- 2(R!2)) are facets of P2n, and their centroids lie in the boundary of the kernel of Po- The intersections of these rectangles with the xy-plane form three consecutive edges of the polygon Qn obtained from Qo by Chaikin's algorithm; namely, the edge whose midpoint is ~(q~ + qi+l), together with the adjacent edge on either side. The midpoints of these edges, which are precisely the centroids of the just-mentioned rectangular facets of P2n, lie in the limiting curve ~Q obtained from Qo by Chaikin's algorithm. It follows that the kernel K(P0) contains two sequences of points in the xy-plane, each converging to ~(qi + qi+ 1)" One of these sequences belongs to the parabolic arc of OQ with endpoints ~(q~-i + qi) and ~(q~ + q~+l), and the other to the parabolic arc of OQ with endpoints ~qi + qi+ t) and ~(qi+ 1 + qi+2). Our assump- tions on Qo imply, by Lemma 7 and its proof, that the intersection of the boundary of K(Po) with the xy-plane does not belong to C 2. Therefore the boundary of K(Po) itself is not in C 2. []

Chaikin's algorithm--de Rham's with 7t = ~2 = ~---motivated several algo- rithms in R 3. For example, the Doo algorithm in [7], following earlier work of 426 R.J. Gardner and M. Kallay

Catmull and Clark, "smoothes" a polyhedron by an iteration very similar in spirit to Fejes T6th's algorithm. For a convex polyhedron Po, the Doo algorithm proceeds as follows. If F is a facet of Po, a new facet is formed by joining, by line segments, the midpoints of the line segments whose endpoints are the centroid of F and a vertex of F. If F is an m-gon, the new facet is also an m-gon, called a type F facet. Suppose F 1 and F 2 are facets of Po with an edge e in common. If G1 and G2 are the corresponding new type F facets, then G t and G2 each have an edge parallel to e and of length half that of e. Joining the corresponding endpoints of these edges by line segments, we obtain a parallelogram. Such parallelograms will also be new facets, called type E (for edge) facets. Finally, suppose v is a vertex of Po. For each facet F of Po with v as a vertex, there is a new type F facet G contained in F. Facet G has a vertex vv at the midpoint of the line segment joining the centroid of F with v. We consider the set of points vp for such F to be the vertices of a new "facet," which however will not in general be planar. We call these new "facets" type V. In this way a new "polyhedron" Px is defined. We now iterate this con- struction--using all facets, planar or not--to obtain a sequence (P,,) of "poly- hedra." The limiting body H we call the Doo kernel of Po- Although this algorithm is more complicated to describe than Fejes T6th's, the analysis of OH is in some ways easier, since its construction does not employ the rather unpredictable convex hull operation. For example, the type F and type V facets at each stage are surrounded by a carpet of type E facets (parallelograms). In the CAD literature some efforts have been made to determine the smoothness properties of OH and the boundaries of kernels of other algorithms (see [1], [7], [8], and Section 4 of [3]). Our final result, however, shows that the Doo kernel suffers from the disadvantage that it does not preserve convexity.

Theorem 9. There is a convex polyhedron whose Doo kernel is not convex.

Proof Let Po be a convex polyhedron with the following properties: (i) Po c~ {(x, y, z): z > 0} is the pyramid with vertices (0, 0, 1), (+ 1, 0, 0), and (0, ___ 1, 0). (ii) The segments [(0, 1, 0), (1, 0, 0)] and [(0, - 1, 0), (- 1, 0, 0)] are edges, so that there are two triangular facets, T 1 and Tz, above the first and third quadrants in the xy-plane. (iii) The two facets containing (0, 0, 1) above the second and fourth quadrants are hexagons, H a and H2, which extend below the xy-plane and are such that H2 is the reflection of H a in the z-axis. (iv) The lowest facet of Po is horizontal and has its centroid, b say, on the z-axis. Suppose that ti is the centroid of T~ and h i is the centroid of Hi for i = 1, 2. The type V "facet" of P1 corresponding to the vertex v = (0, 0, 1) of Po has four vertices, at ½(tl + v), ~(h~ + v), i= 1, 2. The centroid of this "facet" is c-~ (v/2) + (tl + t2 + hi + h2)/8. Our assumptions (i)-(iii) above imply that c lies on the z-axis, and it is clear that c # b. Now, for i = 1, 2, t~ lies in the boundary OH of the Doo kernel H of Po. If H Subdivision Algorithms and lhe Kernel of a Polyhedron 427

is convex, the point p at the intersection of It 1, t2] and the z-axis belongs to H and has positive z-coordinate. However, both b and c belong to OH, and by choosing H i sufficiently long we may ensure that c has a negative z-coordinate, as does b. This is impossible, so H cannot be convex. []

References

[I] A. A. Ball and D. J. T. Storry. Conditions for tangent plane continuity over recursively generated B-spline surfaces. ACM Trans. Graphics, 7:83-102, 1988. [2] M. Bourdeau and S. Dubuc. L'it6ration de Fejes TSth sur un polygone. J. Geom., 6:65 75, t975. [3] A. S. Caveretta and C. A. Micchelli. The design of curves and surfaces by subdivision algorithms. In Mathematical Methods in Computer Aided Design, T. Lyche and L. L Schumaker, eds., pp. 115-153. Academic Press, New York, 1989. [4] G. M. Chaikin. An algorithm for high speed curve generation. Comput. Graphics Image Process., 3:346~349, 1974. [5] M. G. Darboux, Sur un probl6me de g6om6trie 616mentaire. Bull, Sci. Math., 2:298-304, 1878. [6] G. de Rham. Sur les courbes limites de polygones obtenus par trisection. L'Enseign. Math., 5:729-747, 1959. [7] D. W. H. Doo. A subdivision algorithm for smoothing down irregular shaped . In Proceedings: Interactive Techniques in Computer Aided Design, Bologna, 1978, pp. 157-165. [8] D. Doo and M. Sabin. Behaviour of recursive division surfaces near extraordinary points. Comput. Aided Design, t0:356--360, 1978. [9] J. C. Fischer, D. Ruoff, and J. Shilleto. Polygons and polynomials. In The Geometric Vein, C. Davis, B. Griinbaum, and F. A. Sherk, eds., pp. 321 333. Springer-Verlag, New York, 1981. [10] R.J. Gardner and P. McMullen. On Hammer's x-ray problem. J. London Math. Soc., 21 : 171-175, t980. I11] R. F. Reisenfetd. On Chaikin's algorithm. Comput. Graphics.lma#e Process., 4:304-310, 1975. [12] G. Fejes T6th. Iteration processes leading to a regular polygon (in Hungarian). Mat. Lapok, 23:135-141, 1972. (Math. Rev., 49, #¢3683.) [13] L. Fejes Tbth. Sequences of polyhedra. Amer. Math. Monthly, 88:145-146, 1981. [14] T. Zamfirescu. Nearly all convex surfaces are smooth and strictly convex. Monatsh. Math., 103:57-62, 1987.

Received December 14, 1990, and in revised form October 21, 1991.