on de casteljau's algorithm

19
Computer Aided Geometric Design 16 (1999) 587–605 On de Casteljau’s algorithm Wolfgang Boehm * , Andreas Müller 1 Angewandte Geometrie und Computergraphik, Pockelsstrasse 14, Technische Universität, D-38106 Braunschweig, Germany Received October 1998; revised April 1999 Abstract Within the last 20 years de Casteljau’s algorithms became a fundamental tool in CAGD. His idea of control points and his geometric view of polar forms gave an immediate insight to how these tools work and control points are so effective in their applications in car and ship design, in aircraft industry as well as in medical and geological representations. This paper is meant to give some historical remarks and a short introduction to de Casteljau’s powerful and worldwide used method. It also includes simple proofs. 1999 Elsevier Science B.V. All rights reserved. Keywords: Bézier curves; de Casteljau algorithm; Blossoming; Polar forms; Splines; Focal curves Dedicated to Paul de Faget de Casteljau 1. Some historical remarks With the change from desk calculators to programmable computers in the fifties the desire arose to automate the designing and manufacturing process of airplanes, ships and cars. Until then, airplane wings were mostly constructed as ruled surfaces, connecting two given profiles. Airplane fuselages and ship hulls were constructed by composite conic cross sections (Liming, 1944). In ship design these cross sections were blended by the use of flexible wooden beams in full size on the loft. In car design free form curves were used for cross sections, drawn at least in full size on thin aluminium layers in order to avoid any distortion by the change of temperature and humidity. Wooden blocks were carved out to the bottom of these cross sections in order to build models of car parts or of the car itself and for models of the forms, which were later used to prepare moulding machines. Undoubtedly, this procedures required a lot of time. Presented at the University of Bern on December 6, 1997. * Corresponding author. E-mail: [email protected]. 1 E-mail: [email protected]. 0167-8396/99/$ – see front matter 1999 Elsevier Science B.V. All rights reserved. PII:S0167-8396(99)00023-0

Upload: wolfgang-boehm

Post on 02-Jul-2016

221 views

Category:

Documents


8 download

TRANSCRIPT

Page 1: On de Casteljau's algorithm

Computer Aided Geometric Design 16 (1999) 587–605

On de Casteljau’s algorithm✩

Wolfgang Boehm∗, Andreas Müller1

Angewandte Geometrie und Computergraphik, Pockelsstrasse 14, Technische Universität,D-38106 Braunschweig, Germany

Received October 1998; revised April 1999

Abstract

Within the last 20 years de Casteljau’s algorithms became a fundamental tool in CAGD. His ideaof control points and his geometric view of polar forms gave an immediate insight to how thesetools work and control points are so effective in their applications in car and ship design, in aircraftindustry as well as in medical and geological representations. This paper is meant to give somehistorical remarks and a short introduction to de Casteljau’s powerful and worldwide used method.It also includes simple proofs. 1999 Elsevier Science B.V. All rights reserved.

Keywords:Bézier curves; de Casteljau algorithm; Blossoming; Polar forms; Splines; Focal curves

Dedicated to Paul de Faget de Casteljau

1. Some historical remarks

With the change from desk calculators to programmable computers in the fifties thedesire arose to automate the designing and manufacturing process of airplanes, ships andcars. Until then, airplane wings were mostly constructed as ruled surfaces, connecting twogiven profiles. Airplane fuselages and ship hulls were constructed by composite conic crosssections (Liming, 1944). In ship design these cross sections were blended by the use offlexible wooden beams in full size on the loft. In car design free form curves were usedfor cross sections, drawn at least in full size on thin aluminium layers in order to avoidany distortion by the change of temperature and humidity. Wooden blocks were carved outto the bottom of these cross sections in order to build models of car parts or of the caritself and for models of the forms, which were later used to prepare moulding machines.Undoubtedly, this procedures required a lot of time.

✩ Presented at the University of Bern on December 6, 1997.∗ Corresponding author. E-mail: [email protected] E-mail: [email protected].

0167-8396/99/$ – see front matter 1999 Elsevier Science B.V. All rights reserved.PII: S0167-8396(99)00023-0

Page 2: On de Casteljau's algorithm

588 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

Fig. 1. Cross sections of a car body.

Fig. 2. Courbes et surfaces a pôles.

Fig. 3. The intersection of two cylinders and its affine map.

One of the first steps to accelerate the designing procedure of car bodies and to makeit computational were made by Paul de Faget de Casteljau when creating his “courbes etsurfaces a pôles” in 1959 and 1963. He simply iterated affine combinations from polygonsor polygonal nets as illustrated for the cubic case in Fig. 2. Unfortunately, his constructionswere almost kept secret by Citroën Automobile SA in Paris, who was then de Casteljau’semployer (de Casteljau, 1959,1963; Krautter and Parizot, 1971; Boehm, 1976).

Almost at the same time Pierre Bézier at Regie Renault experimented with theintersection of the quarters of two cylinders embedded into a cube, its affine map andits simple approximation by a cubic curve (Vernet, 1971; Bézier, 1988), as illustrated inFig. 3.

Although Bézier initially used the edges of a parallelepipedon in order to determinethe curve (see Bézier’s system UNISURF in this paper ), the vertices – coinciding with

Page 3: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 589

Fig. 4. Bézier◦ and spline• control points.

de Casteljau’s pôles – became known as “Bézier points”. The significance of Bernsteinpolynomials in Bézier’s method was discovered by A.R. Forrest in 1972 (Forrest, 1972).At this time, polynomial approaches were also made by J.C. Ferguson at Boeing AircraftCompany, and, in the seventies, by A.A. Ball of the British Aircraft Corporation and others(for more information see (Faux and Pratt, 1979)). First meetings on the subject were heldat Paris in 1971, Cambridge in 1972, and Salt Lake City 1974 (Bézier, 1971; Browne,1972; Barnhill and Riesenfeld, 1974).

Already in the sixties, Steven A. Coons at MIT contributed an important and very usefulidea to the field of surface design when filling the meshes of an arbitrary net of curvessmoothly by patches (Coons, 1964,1967). However, the task to connect de Casteljau’sor Bézier’s surface patches smooth together was an expensive venture. An importantimprovement was made by Carl de Boor’s algorithm from 1972, introduced into CAGD byRichard Riesenfeld in 1973 (de Boor, 1972; Riesenfeld, 1973). This algorithm allowed torepresent a net of about 450 bicubic Bézier patches, each represented by 16 control points,and more than 4500 connecting and smoothing conditions, by only about 500 spline controlpoints.

Important progress was made by the construction of the Bézier points from splinecontrol points, found in 1977/78 independently by Sablonnière and Boehm (Boehm,1977; Sablonnière, 1978), and by the Oslo algorithm and the knot inserting, found byRiesenfeld and Boehm, respectively, in 1980 (Cohen et al., 1980; Boehm, 1980). However,the most important progress dealing with these curves and surfaces was de Casteljau’sdiscovery of its relation to geometric polar forms in 1985, which allowed a simple butcomplete representation as well as simple proofs of the various algorithms, which havebeen developed within the last twenty years. This principle, also described by L. Ramshawat Palo Alto in 1987, is known as the “Blossoming principle” today (Ramshaw, 1987).The presentation of this part of de Casteljau’s work is the aim of this paper. The paperalso serves as a short historical introduction into the method. For more information see(Prautzsch et al., 1999).

2. De Casteljau’s algorithm

Two fundamental papers,2 the “enveloppe Soleau” in 1959, deposited at the InstitutNational de la Propriété Industrielle in Paris, and a microfiche collection of technical notes,attested by a notary in 1963, contain the following construction:

2 Some pages of these fundamental papers are reproduced at the end of this article (Figs. 17–20).

Page 4: On de Casteljau's algorithm

590 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

Fig. 5. De Casteljau’s algorithm forn= 3.

Given ann-sided polygon in space and a partitiont of unity. Subdividing the polygonlegs in the ratiot : (1− t) gives the vertices of a new,n− 1-sided, polygon. Continuingthis procedure results finally in a point. For varyingt , this point moves on a curve ofordern while the last single polygon side gives its tangent.

This construction, owing to de Casteljau (de Casteljau, 1959; 1963), but first publishedby Krautter and Parizot in 1971, became well known as de Casteljau’s algorithm (Krautterand Parizot, 1971; Boehm, 1977). It is illustrated in Fig. 5.

The given polygon verticesbi are called control points or Bézier points. The subdivisionpointsbri are usually evaluated fromb0

i = bi by iterated affine combinations

br−1i (1− t)+ br−1

i+1 t = briand arranged in a triangular scheme

b0

b1 b10

......

. . .

bn b1n−1 · · · bn0 = b(t).

Using the given pointsbi the resulting polynomial curve can be written as

b(t)= bn0 = · · · =∑

biBni (t),

whereBni (t)=(ni

)(1− t)n−i t i are the well-known Bernstein polynomials.

3. Subdivision and composite curves

The microfiche notes of 1963 also contain the following subdivision theorem, asillustrated in Fig. 6:

In de Casteljau’s construction the left end polygon verticesbi0 control the left part ofthe curve betweenb0 andb(t) and accordingly thebin−i control the right part betweenb(t) andbn.

Page 5: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 591

Fig. 6. Subdividing a Bézier curve and A-frame.

Obviously, the Bernstein polynomialsBni (t) have ani-fold root t = 0 and an(n − i)-fold root t = 1. This leads immediately to the fact that theith derivative of the curve att = 0 or t = 1 does not depend on the control pointsbk or bn−k for k > i, respectively.Combining this with the subdivision theorem above gives Stärk’s A-frame generalization(Stärk, 1976):

Two Bézier curves areCr continuous if the involved control points can be viewed asconstructed by de Casteljau’s algorithm forn= r.The A-frame as shown in Fig. 6 is an example forr = 2, widely used for a simple

construction of cubic splines (Boehm, 1977).

4. Surfaces

Control points were also used by de Casteljau to create surfaces as contained in his notes(de Casteljau, 1963).

On the one hand, given aquadrangularnet of (n+ 1)(m+ 1) control pointsbik and apoints= [s, t], of the unit square, as illustrated in Fig. 7, left, the surface defined by

b(s)=∑∑

bikBmk (s)Bni (t)

can easily be constructed by de Casteljau’s algorithm. First appliedn+1 times to then+1rows of thebik, i = fixed, and then once to the resulting column ofm+ 1 points, or viceversa.

On the other hand, given atriangular net of(n+1)(n+2)/2 control pointsbijk, i+j+k = n, and a pointu= [u,v,w], u+ v +w = 1, of the unit triangle. A triangular surfacepatch as illustrated in Fig. 7, right, can be constructed fromb0

ijk = bijk by iterated affinemaps

brijk = ubr−1(i+1)jk + vbr−1

i(j+1)k +wbr−1ij (k+1), i + j + k + r = n,

(de Casteljau, 1963). The resulting surface can be written as

b(u)= bn000= · · · =∑

bijkBnijk(u),

Page 6: On de Casteljau's algorithm

592 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

Fig. 7. Control nets and surfaces.

Fig. 8. Haase’s construction of a rational curve.

whereBnijk(u)= (n!/i!j !k!)uivjwk are trivariate Bernstein polynomials.Cr continuous composite quadrangular or triangular surfaces are constructed as in the

case of curves with the help of generalizations of a spatial A-frame, see (Stärk, 1976) and(Farin, 1979).

5. Rational curves

For a moment, we should take a look at the rational case, where the homogeneouscoordinates of a pointb(t) are controlled by homogeneous Bézier pointsbi . The procedureof inhomogeneizing gives the rational space curveb(t). In particular, the A-framementioned above passes to a special case of Brianchon’s theorem on conic sections asillustrated in Fig. 8, left. It can be used for the construction of points in a de Casteljau-likescheme:

Given ann-sided polygon and pointsr1i on its legs. Consider the polygon defined by

ther1i . The iterative construction of smaller polygons by the use of Brianchon’s theorem

gives smaller polygons and finally a pointr . Let the given pointsr1i move projectively

on the given legs, then the pointr will move on a rational curve of ordern, while thetangent in the last Brianchon’s construction gives the tangent of the curve atr .

Page 7: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 593

This construction, illustrated in Fig. 8, was already found for planar curves by F. Haase(1870). 113 years later, the role of the pointsr1

i was rediscovered by Farin (1983). Notethat a projectivity is determined by the images of three points.

6. Bézier’s system UNISURF

We should also take a look at Bézier’s fundamental idea (Vernet, 1971; Bézier, 1972),which differs from de Casteljau’s. In order to control the approximation of the curvementioned above, Bézier used the initial vertexa0 and the defining edgesai , i > 0, ofthe defining cube, as illustrated in Fig. 9, left. Then the curve of degreen can be written as

b(t)=∑

aiCni (t),

with basis functionsCni = Bni + · · · + Bnn . This notation allowed a similar simplehandling in the designing process as the use of the verticesbi . It is also easily appliedto quadrangular surface patches as initially used in the package UNISURF by Renault.Unfortunately, the symmetry of de Casteljau’s construction, caused by the symmetry ofBernstein polynomials, as well as the generalization to triangular surfaces was missing.

7. Polar forms

In the early eighties de Casteljau successively changed the parametert in his algorithm,i.e., using the affine combinations

br−1i (1− tr )+ br−1

i+1 tr = bri

with givent1, . . . , tn.The resulting pointbn0, also writtenb(t1 . . . tn), is symmetric in its arguments, i.e., it is

independent of the sequence of thetr , which follows immediately from the A-frame lemmaillustrated in Fig. 10, first used in (Boehm, 1977) and interpreted as Menelaos’ theorem in(Farin, 1993).

Fig. 9. Bézier’s fundamental idea.

Page 8: On de Casteljau's algorithm

594 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

Fig. 10. The A-frame lemma.

Fig. 11. First polar of a cubic curve.

Obviously, the pointb(t1 . . . tn) is affine in its arguments, which means3

b(c . . .)= b(a . . .)(1− t)+ b(b . . .)t, for c= a(1− t)+ bt,and reproduces the polynomial curveb(t) if t1 = · · · = tn = t . These three propertiescharacterize polar forms (Seidel, 1989).

In particular, ift1= · · · = tr = 1 andtr+1= · · · = tn = 0 the pointbn0 falls into the Bézierpointbr . Moreover, iftr+1= · · · = tn = t the pointbn0(t) represents a point of a polynomialcurve of degreen− r, which is controlled by Bézier pointsbr0, · · · ,brn−r as contained intherth column of de Casteljau’s scheme. These curvesbr (t) are not unknown in classicalgeometry, where they are called the “rth osculants” ofb(t), and the coordinate functionsare called “polars” of those ofb(t), which justifies de Casteljau’s term “polar forms” (deCasteljau, 1985; Boehm and Prautzsch, 1994). In 1987 Ramshaw called it the “blossoms”of b(t) (Ramshaw, 1987).

In de Casteljau’s words Stärk’s theorem reads as (de Casteljau, 1985)

Two composite curves of degreen areCr continuous att1, if their kth polar forms att1coincide fork > n− r.Fig. 11 shows the first “polar form att1” of the cubic curve from above.Like for curves with a change in de Casteljau’s algorithms polar forms can easily be

build also for triangular and quadrangular surfaces (de Casteljau, 1985). Note that polar

3 In this formula the dots “. . .” stand for an identical couple of arguments.

Page 9: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 595

forms are unique and do not depend on their polynomial representation and how they arecomputed.

8. Splines

A polynomial curveb(t) does not need to be given by its coefficients or its Bézier pointsbi . Let the curve be given by the points

b(si+1 . . . si+n)= di , i = 0 . . .n,

where for simplicity si < si+1. The given points allow the construction of any pointb(t1 . . . tn) by iterated affine combinations

b(si . . . si+n−k t1 . . . tk−1)(1− αik)+ b(si+1 . . . si+n−k+1t1 . . . tn−k−1)αik

= b(si+1 . . . si+n−kt1 . . . tk),where

αki =tk − si

si+n−k+1− si ,which can immediately be read from the triangular scheme (de Casteljau, 1985)

b(s1 . . . sn)

b(s2 . . . sn+1) b(s2 . . . snt1)...

.... . .

b(sn+1 . . . s2n) b(sn+1 . . . s2n−1t1) . . . b(t1 . . . tn).

Fig. 12 shows an example forn= 3, where “12a” stands forb(s1s2a), etc., to simplifythe notation.

Fig. 12. De Boor’s algorithm and scheme.

Page 10: On de Casteljau's algorithm

596 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

In particular, for ti = sn or sn+1, i = 1 . . .n, one gets the Bézier pointsb0 . . .bnrepresenting the curve betweensn andsn+1.

Consider a second curvec(t) given by c(ui+1 . . .ui+n) = di+1 where ui = si+1.Construct its Bézier pointsc0 . . .cn for the same interval[sn, sn+1] = [un−1, un] as done forb(t) before. It is easy to check that the pointsc1 . . .cn will coincide with the pointsb1 . . .bnwhile, in general,c0 6= b0. That is, both curvesb(t) and c(t) are Cn−1 continuouslyconnected att = sn+1 .

Immediately follows that the scheme above represents the well-known de Booralgorithm, which yields de Casteljau’smain theorem(de Casteljau, 1985):

The pointsb(si+1 . . . si+n), i = 0 . . .n, represent the spline control points ofb(t) forthe knotss1, . . . , s2n.

More complicate examinations can be made for multiple knotssi , where onlysn < sn+1.

9. Oslo algorithm, Knot insertion, and generating Bézier points

The polar form used above and the representation of control points as polar forms atspecial knots simplify Bernstein–Bézier and spline techniques. We will give four exampleswhich demonstrate the power of de Casteljau’s idea.

Let in de Boor’s scheme abovet1 . . . tn denote new knots, including some old one,si .The resulting pointb(t1 . . . tn) represents the spline control point corresponding to thenew knots. Applying this procedure to all sequences ofn new knots gives the fullOsloalgorithm, found by Cohen et al. (1980).

Looking at the first column in de Boor’s scheme above constructed once witht1, itobviously represents the spline control points corresponding to an inserted single new knott1 into the old knotssi . This reflects nothing else but the so-calledinserting algorithm,found by Boehm (1980).

Further, lett = a < sn+1, de Boor’s scheme yields in its last row the points

b(sn+1 . . . s2n) b(asn+1 . . . s2n−1) . . . b(a . . . a).

From these a further scheme fort = b > a yields alln+ 1 Bézier points

b(a . . . a a) b(a . . . a b) . . . b(b . . . b b)

in its upper oblique row which represent the curve betweena andb. This generating theBézier pointsis nothing more than inserting the knotsa andb, bothn times, and improvesthe construction found earlier by Sablonnière and Boehm (Boehm, 1977; Sablonnière,1978). Fig. 13 shows an example forn= 3.

Fig. 13. Generating Bézier points.

Page 11: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 597

Fig. 14. Quadrangular patch on a triangular surface.

Note that the used affine combinations are convex ifsn 6 a < b 6 sn+1. Note also, thatthe used process is reversible to generate spline control points from Bézier points.

Finally, consider a triangular surface

b(u)=∑

bijkBnijk(u),

as defined above and a quadrangle

u= u(s)= a00(1− s)(1− t)+ a10s(1− t)+ a01(1− s)t + a11st

of theu-plane as illustrated in Fig. 14.Insertingu(s) into the polar formb(u . . .u) of b(u) and recalling that a blossom is affine

in each of its arguments yields the Bézier points

bpq =∑

b(aij . . . akl)/(n

p

)(n

q

)of the corresponding tensor product patch, where the sum is to build over all

(np

)(nq

)arrangements of eachn items of theaij with i + · · · + k = p andj + · · · + l = q . Notethat blossoms are symmetric. The point

b11= (3b(a00a00a11)+ 6b(a00a10a01))/9

may serve as an example forn= 3.The given formula specializes a result on the functional composition of Bézier simploids

represented by Tony DeRose (1993).

10. De Casteljau’s focal splines

The A-frame in Haase’s construction can alternatively be viewed in a different way.From classical geometry it is known (Chasles, 1830) that

The intersection of any two tangents of a conic section and both points of contact areseen from a focus of the conic section within equal angles,

Page 12: On de Casteljau's algorithm

598 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

as illustrated in Fig. 15, left. This can be used to construct further tangents of a conicsection, if one of the foci is known, as demonstrated in Fig. 15, right.

Let bi denote the Bézier points of some planar rational curve and letf be a fixed point.In the special case where allbi ,bi+1 are seen fromf within an equal angle, say∆, Haase’sA-frame can be replaced by a focal A-frame with centerf.

More detailed, letβri , bri denote the polar coordinates of Bézier pointsbri . In particular,

let b0i = bi be given andβi+1− βi =∆. Then Haase’s construction can be written as (de

Casteljau, 1994)

βri = βr−1i + τ, and

1

bri= 1

br−1i

sinσ

sin∆+ 1

br−1i+1

sinτ

sin∆, τ + σ =∆.

The points can be arranged in a triangular scheme again, which ends up with the polarcoordinates of the pointbn0 = b(τ ). Obviously, one hasβri+1 − βri = ∆ for all r. Anexample is shown in Fig. 16 forn= 3.

For varyingτ the pointb(τ ) describes a “focal curve” (de Casteljau, 1994), which isrational of degreen in the parametert = sinτ/sinσ . Note that the parametrization is notunique.

Fig. 15. Chasles’ theorem and focal A-frame.

Fig. 16. Focal Bézier curve,n= 3.

Page 13: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 599

Successively the parameterτ may be changed in de Casteljau’s scheme as done before.The resulting pointb(τ1 . . . τn), is called the “blossom” ofb(τ ) at τ1 . . . τn again. Varyingoneτi only, the pointb(τ1 . . . τn) describes a straight line and the points of any two of suchlines are projectively related by equal angles fromf.

The view of blossoms allows a similar fruitful approach to “focal splines” controlledby pointsb(τi . . . τn+i ) and knotsτ1 . . . τ2n as already demonstrated for ordinary splinesabove. The triangular scheme equals the scheme for ordinary splines, while the anglesτ ri , σ

ri ,∆

ri corresponding tobri are directly read from the scheme. Oslo algorithm, knot

insertion and the generation of Bézier points are easily adopted, see (Sánchez-Reyes, 1992;de Casteljau, 1994; Neamtu et al., 1996).

The following theorem may serve as further example for the variety of results (Neamtuet al., 1996):

A polarity with respect to a circle centered atf transforms a focal spline into a rationalgeometric spline with rational offsets.

11. De Casteljau’s recent work

In the last decade, de Casteljau made an excursion to algebra, where he studiedquaternions from a more symmetric perspective (de Casteljau, 1987). In 1987 he won thePrix Seymour Crayfor this work. After coming back to geometry by writing a survey onthe applications of polar forms in the process of smoothing (de Faget de Casteljau, 1990),he came up with his focal splines (de Casteljau, 1994) in 1994.

Most recently, de Casteljau worked on further problems in Euclidean geometry,considering, e.g., the nine-point circle of Euler–Feuerbach, Cartesian ovals, metric dualityand geometrical optics. The interested reader finds other valuable ideas in his books (deCasteljau, 1985, 1987, 1990) as well as in his recent articles (de Faget de Casteljau, 1992,1994, 1995).

Page 14: On de Casteljau's algorithm

600 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

Fig. 17. Paul de Casteljau: Outillage methodes calcul (de Casteljau, 1959, p. 9).

Page 15: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 601

Fig. 18. Paul de Casteljau: Outillage methodes calcul (de Casteljau, 1959, p. 10).

Page 16: On de Casteljau's algorithm

602 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

Fig. 19. Paul de Casteljau: Courbes et surfaces à pôles (de Casteljau, 1963, p. 18).

Page 17: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 603

Fig. 20. Paul de Casteljau: Courbes et surfaces à pôles (de Casteljau, 1963, p. 39).

Page 18: On de Casteljau's algorithm

604 W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605

References

Barnhill, R.E. and Riesenfeld, R.F. (eds.) (1974),Computer Aided Geometric Design, AcademicPress, New York.

Bézier, P. (ed.) (1971), La Commande Numérique, Ingénieurs de l’automobile XLIV, Journal de laSIA, Numéro spécial publié à l’occasion du salon de l’automobile Octobre 1971, Paris, 493–622.

Bézier, P. (1972),Numerical Control, Mathematics and Applications, Wiley, London; See alsoBarnhill, R.E. and Riesenfeld, R.F. (eds.) (1974),Computer Aided Geometric Design, AcademicPress, New York, 127–152.

Bézier, P. (1988), How a simple system was born, in: Farin, G.E., ed.,Curves and Surfaces for CAGD,Academic Press, Boston, 1–12.

Boehm, W. (1976), Parameterdarstellung kubischer und bikubischer Splines, Computing 17, 87–92.Boehm, W. (1977), Über die Konstruktion von B-Spline-Kurven, Computing 18, 161–166.Boehm, W. (1980), Inserting new knots into B-spline curves, Computer-Aided Design 12, 199–291.Boehm, W. and Prautzsch, H. (1994),Geometric Concepts for Geometric Design, AK Peters,

Wellesley, 257, 359 and 361.Browne, L.J.I. (ed.) (1972),Curved Surfaces in Engineering, Computer Methods for Design and

Manufacture, Computer-Aided Design, IPC Science and Technology Press, Guildford.Chasles, M. (1830), Mémoire de géométrie pure sur les propriétés générales des cônes du second

degré, Nouv. Mem. Bruxelles 6, 1–59.Cohen, E., Lyche, T. and Riesenfeld, R. (1980), Discrete B-splines and subdivision techniques in

computer aided geometric design and computer graphics, Comp. Graphics and Image Processing14, 87–111.

Coons, S.A. (1964) and (1967), Surfaces for Computer Aided Design, Technical Reports, MIT, 1964and MIT 1967, see Faux, I.D. and Pratt, M.J. (1979),Computational Geometry for Design andManufacture, Ellis Horwood, Chichester, 198–203 and also Barnhill, R.E. and Riesenfeld, R.F.(eds.) (1974),Computer Aided Geometric Design, Academic Press, New York, 1–16.

de Boor, C. (1972), On calculating with B-splines, J. Approx. Theory 6, 50–62.de Casteljau, P. (1959), Outillage methodes calcul, Enveloppe Soleau 40.040, Institute National de

la Propriété Industrielle, Paris.de Casteljau, P. (1963), Courbes et surfaces à pôles, Microfiche P 4147-1, André Citroën Automobile

SA, Paris, 1–58.de Casteljau, P. (1985),Formes à Pôles, Mathematiques et CAO 2, Hermes Publishing, Paris.de Casteljau, P. (1987),Les Quaternions, Editions Hermès, Paris.de Faget de Casteljau, P. (1990),Le Lissage, Editions Hermès, Paris.de Faget de Casteljau, P. (1992), POLynomials, POLar forms, and InterPOLation, in: Lyche, T. and

Schumaker, L.L., eds.,Mathematical Methods in Computer Aided Geometric Design, Addison-Wesley, 57–68.

de Casteljau, P. (1994), Splines focales, in: Laurent et al., eds.,Curves and Surfaces in GeometricDesign, AK Peters, Wellesley, 91–103.

de Faget de Casteljau, P. (1995), Courbes et profils estétiques contre fonctions orthogonales (histoirevécue), in: Dæhlen et al., eds.,Mathematical Methods for Curves and Surfaces, VanderbiltUniversity Press, 73–82.

DeRose, T.D., Goldman, R.N., Hagen, H. and Mann, S. (1993), Functional composition algorithmsvia blossoming, ACM Trans. on Graphics 12 (2), 113–135.

Farin, G.E. (1979), Subsplines über Dreiecken, Ph.D. Thesis, Technische Universität Braunschweig.Farin, G.E. (1983), Algorithms for rational Bézier curves, Computer-Aided Design 15, 73–77.Farin, G.E. (1993),Curves and Surfaces for CAGD, Academic Press, Boston.

Page 19: On de Casteljau's algorithm

W. Boehm, A. Müller / Computer Aided Geometric Design 16 (1999) 587–605 605

Faux, I.D. and Pratt, M.J. (1979),Computational Geometry for Design and Manufacture, EllisHorwood, Chichester.

Forrest, A.R. (1972), Interactive interpolation and approximation by Bézier polynomials, ComputerJ. 15, 71–70; reprinted (1990) in Computer-Aided Design 22, 527–537.

Haase, J.C.F. (1870), Zur Theorie der ebenen Curvenn-ter Ordnung mit(n− 1)(n− 2)/2 Doppel-und Rückkehrpunkten, Math. Ann. 2, 515–548.

Krautter, J. and Parizot, S. (1971), Systeme d’aide à la définition et à l’usinage des surfaces decarosserie, in: Bézier, P., ed. (1971), La Commande Numérique, Ingénieurs de l’AutomobileXLIV, Journal de la SIA, Numéro spécial publié à l’occasion du salon de l’automobile Octobre1971, Paris, 581–586.

Liming, R.A. (1944),Practical Analytic Geometry with Applications to Aircraft, MacMillan, NewYork.

Neamtu, M., Pottmann, H. and Schumaker, L.L. (1996), Homogeneous splines and rational curveswith rational offsets, Technische Universität Wien, Institut für Geometrie, Technical Report Nr.29.

Prautzsch, H., Boehm, W. and Paluszny, M. (1999),Bernstein–Bézier and Spline Techniques,Springer, Berlin, to appear.

Ramshaw, L. (1987), Blossoming: A connect-the-dot approach to splines, Technical Report, DigitalSystems Research Center, Palo Alto, CA.

Riesenfeld, R.F. (1973), Applications of B-spline approximation to geometric problems of computeraided design, Ph.D. Thesis, Syracuse University, See also Barnhill, R.E. and Riesenfeld, R.F. (eds.)(1974),Computer Aided Geometric Design, Academic Press, New York, 95–126.

Sablonnière, P. (1978), Spline and Bézier polygons associated with a polynomial spline curve,Computer-Aided Design 10, 257–261.

Sánchez-Reyes, J. (1992), Single-valued spline curves in polar coordinates, Computer-Aided Design6 (24), 307–315.

Seidel, H.-P. (1989), Polynome, Splines und symmetrische rekursive Algorithmen im ComputerAided Geometric Design, Habilitationsschrift, Universität Tubingen.

Stärk, E. (1976), Mehrfach differenzierbare Bézierkurven und Bézierflächen, Ph.D. Thesis, Technis-che Universität Braunschweig.

Vernet, M.D. (1971), Expression mathématique des formes—System UNISURF, in: Bézier, P., ed.(1971), La Commande Numérique, Ingénieurs de l’Automobile XLIV, Journal de la SIA, Numérospécial publié à l’occasion du salon de l’automobile Octobre 1971, Paris, 509–520; see alsoBarnhill, R.E. and Riesenfeld, R.F. (eds.) (1974),Computer Aided Geometric Design, AcademicPress, New York, 127–152.