calculating with box splines

14
Computer Aided Geometric Design 1 (1984) 149-162 149 North-Holland Calculating with box splines * Wolfgang BOEHM Technische Unioersitaet Braunschweig~ D-3300 Braunschweig, F.R. Germany Received April 1984 Abstract. Box splines are multivariate splines over regular grids. Two recursion formulas for box splines are developed: (1) a Mansfield-de Boor-like expression of box splines as linear combinations of box splines of lower degree and (2) a deBoor-like reduction of the net of box spline control points. The ideas follow those from the paper by deBoor in 1972. The proofs are geometrical and simple. Keywords. Multivariate splines, recursion formulas, algorithms. 1. History In 1972 Mansfield, de Boor, and Cox independently developed a recursion formula for univariate B-splines. Also in 1972 from this recursion de Boor developed the dual recursion of the net of B-spline control points [de Boor '72]. since this time theory and practice of univariate splines have found a wide propagation [de Boor '78]. Besides this,in the last few years the theory of multivariate splines has undergone a rapid development [de Boor, H~llig '82; Dahmen, Micchelli '83]. As well, in the last two years a more geometric approach led to new impressive results: particularly on the algorithm of de Casteljau [Dahmen, Micchelli '83 b] and various subdivision algorithms for the control nets of multi- variate splines [Boehm '83; Pr~utzsch '84]. 2. Box splines The geometrical definition of a spline was already given by Schoenberg in 1966: A spline function is the 'loss of intensity' of parallel light beams passing through a polyhedron of an affine space d '~ onto an affine space ~¢r, and the usual 'shadow' is the support of the spline. Note that, in this model the 'light beams' must be of dimension m - r. In particular, the (in some way normalized) loss of light by passing through a simplex is called a 'simplex spline', but the loss of light by passing through a parallelepiped, casting its shadow onto a regular grid of ~¢r, is called a 'box spline'. Fig. 1 shows this generation in the simple case of a bivariate linear box spline. In general, a box spline is a piecewise polynomial of degree d = m - r, and of continuity class C m-s-l, where s = rain(b: any b vectors of bl,... ,bin span0~ ¢~ } [see Dahmen, MiccheUi '83b], the b/are defined later. It is reasonable to replace the projection by a more general affine map/-/. * This paper was presented in part by the author on February 2, 1984 at Technische Hochschule Darmstadt, F.R. Germany. 0167-8396/84/$3.00 © 1984, Elsevier Science Publishers B.V. (North-Holland)

Upload: wolfgang-boehm

Post on 21-Jun-2016

218 views

Category:

Documents


2 download

TRANSCRIPT

Page 1: Calculating with box splines

Computer Aided Geometric Design 1 (1984) 149-162 149 North-Holland

Calculating with box splines *

Wolfgang BOEHM

Technische Unioersitaet Braunschweig~ D-3300 Braunschweig, F.R. Germany

Received April 1984

Abstract. Box splines are multivariate splines over regular grids. Two recursion formulas for box splines are developed: (1) a Mansfield-de Boor-like expression of box splines as linear combinations of box splines of lower degree and (2) a deBoor-like reduction of the net of box spline control points. The ideas follow those from the paper by deBoor in 1972. The proofs are geometrical and simple.

Keywords. Multivariate splines, recursion formulas, algorithms.

1. History

In 1972 Mansfield, de Boor, and Cox independently developed a recursion formula for univariate B-splines. Also in 1972 from this recursion de Boor developed the dual recursion of the net of B-spline control points [de Boor '72]. since this time theory and practice of univariate splines have found a wide propagation [de Boor '78].

Besides this , in the last few years the theory of multivariate splines has undergone a rapid development [de Boor, H~llig '82; Dahmen, Micchelli '83]. As well, in the last two years a more geometric approach led to new impressive results: particularly on the algorithm of de Casteljau [Dahmen, Micchelli '83 b] and various subdivision algorithms for the control nets of multi- variate splines [Boehm '83; Pr~utzsch '84].

2. Box splines

The geometrical definition of a spline was already given by Schoenberg in 1966: A spline function is the 'loss of intensity' of parallel light beams passing through a polyhedron of an affine space d '~ onto an affine space ~¢r, and the usual 'shadow' is the support of the spline. Note that, in this model the 'light beams' must be of dimension m - r.

In particular, the (in some way normalized) loss of light by passing through a simplex is called a 'simplex spline', but the loss of light by passing through a parallelepiped, casting its shadow onto a regular grid of ~¢r, is called a 'box spline'. Fig. 1 shows this generation in the simple case of a bivariate linear box spline. In general, a box spline is a piecewise polynomial of degree d = m - r, and of continuity class C m-s-l, where

s = ra in(b: any b vectors of b l , . . . ,bin span0~ ¢~ }

[see Dahmen, MiccheUi '83b], the b/are defined later. It is reasonable to replace the projection by a more general affine map/-/ .

* This paper was presented in part by the author on February 2, 1984 at Technische Hochschule Darmstadt, F.R. Germany.

0167-8396/84/$3.00 © 1984, Elsevier Science Publishers B.V. (North-Holland)

Page 2: Calculating with box splines

150 W. B o e h m / Calculat ing with b o x spl ines

3. Some analytic geometry

A box B of~Cm is defined by all points

y = a + a l a 1 4- . - • q- OLmam, Olj e [0, 1],

where a is a box vertex and the aj are linearly independent vectors corresponding to the edges of the box. Vertex a and vectors aj form an affine system of .~ ¢m.

An affine m a p / 7 of~¢ m o n t o ~ r is defined by the image of an affine system of~Cm i n t o d r : Let b be the image of a, and let bj be the image of aj. Thus the 'shadow' of the box b is given by all points 1

x = b + a l b l + . ' ' q- O t mbm, o t j e [ 0 , 1 ] .

All points y of ,~ ¢m that have the same image x form a 'fibre' X of the m a p / 7 . This fibre is given by all solutions aj of the linear system

alb 1+ " ' + a r a b m= x - b

and forms an affine subspace of dimension m - r = d. For all x ~ ¢ r the set of fibres forms a parallel bundle corresponding to the set of parallel light beams.

If additionally aj ~ [0, 1], one obtains all points of the intersection X n B of the fibre and the box. By Schoenberg's definition one finally obtains the desired box spline

M ( B ) = v o l ( X • B ) / v o l U,

where U is any fixed d-dimensional unit box parallel to X. =

Y

A ' box B

' I 0

H / ' , I f i b r e X

I I

A b ~2

s u p p o r t o f M ( B )

Fig. 1. The genera t ion of a box spline.

1 Cons ide r y, a , a j , o r x, b, bj, for the present as rows of affine coordina tes or coordinate differences in any fixed sys tem of ~¢'~ or ~ ¢ r respectively. In par t icular 0 denotes a row of zeroes.

2 Le t c, c 1 . . . . . c a be a n affine system of ~ a , such that any po in t z f rom ~¢d has a un ique representa t ion Z ~ c + ~1cl + - - • + ~fdea. T h e volume of a po lyhedron P is def ined by vol P = fz ~ p d~l" "" d~a- I t depends on the aff ine system, bu t i t is mul t ip l ied by a cons tan t only, if one changes the system. Because of this, the ratios of two paral le l vo lumes are aff inely invar iant .

Page 3: Calculating with box splines

W. Boehm / Calculating with box splines 151

This funct ion depends on x, it vanishes outside of the support and its generat ion is affinely invariant.

4. Regular grids

The vector bj are not independent , they are restricted to coincide with some edges of a regular grid: let u 1 . . . . , u , be n (~< m) vectors defining these edges, such that the grid points are described by

i = b + i l u I + • • • + i , u , , i j = integers,

as shown in Fig. 2. In general this representat ion is not unique: natural ly, the u l , . . . , u , span the d r, thus there

are r linear independent u k, say ul . . . . . u r. If one expresses all o ther uj in terms of these u k, one gets the unique (normalized) representat ion

i = b + k l u 1 + • • • + k r u r , k j = integers,

for the points of the grids under consideration, i.e. one can assume e.g. ir+~ . . . . . i , = 0 above. For more details and more general grids see [Dahmen, Micchelli '83; de Boor, Hoellig '82].

5. Splitting the affine map

Since the b i coincide with some u j, together with b they span the grid or a subgrid as well. Let p ) be the n u m b e r of a i having the same image uj, thus Pl + " " " + P , -- m, and let p be the number of non-vanishingpj , see fig. 3. For our fur ther considerat ions we shall split up the affine map into one mapping, H 1, that leaves a fixed and maps those a i having the same image uj into the same edge aj , and a subsequent mapping, / - /2 , ° n t o ~ r - /-~1 maps the box B into a subface

a

aml I I

r/ McB, A ~ / ' , / \ \ ,,

Fig. 2. Box spline and regular grid.

Page 4: Calculating with box splines

152 1~. Boehm / Calculating with box splines

B* of B tha t spans an affine s p a c e d p. After a renumbering of the a j the box B* is defined by

the points

y * = a + f l l a l + . . . + fl~a,, , f lk ~ [ 0 , Pk],

and has 'edge lengths' Pk, as shown in Fig. 3. Note that flk is the sum of those a i whose a i fall onto u j , and that Pk = 0 yields flk = 0.

6. Translates of box splines

N o w we consider a family of parallel boxes of ~ m wi th varying origins

i * = a + i l a 1 + . . . ina , , , ik = integers,

where i k = 0 i fp~ = 0, such that i* ~ ¢ P . Their aff ine images fall on to the grid as well and form translates of the original box spline

corresponding to i = 0. We deno te them by

Mr(x)=MP,, "po(x), l 1 ) . . . ) l n

where the Pk are defined as above. The row p is called the 'order ' , the row i is called the ' locat ion ' or the 'origin' , m - r = d is the 'degree' of Mr . In the univariate case, where r = 1, this order coincides with the usual one. Note that this nota t ion is unique for n = r only. In fact, we have

M r ( # ) = Mr+s(#),

where j is the row J l , - . . ,J, and Jk are integer solutions of

j i b 1 + . . . + j , b n = 0, wherejk = 0 i fpk = 0.

Thus it is possible to make n - r of the i k vanish, say ir+ 1 . . . . . i , = 0.

Ap

LI r v v

X *

3"

Fig. 3. Second mapping, (r = 2, p = 2, 1, 3, p= 3).

Page 5: Calculating with box splines

W. Boehm / Calculating with box spfines 153

These normalized indices correspond to a subfamily of boxes with origins

i* = a + i la 1 + • • • + ira r, i/, = integers.

This subfamily covers a subset of ~¢m: an infinite paral lelepiped V, def ined by the points

R f o r / = 1 . . . . , r ,

a i ~ [0 ,1 ] f o r i = r + l , . . . , m .

This parallelepiped V intersects the fibres X of the map /7 in equally shaped finite parallelepipeds. So one can use the volume of these intersect ions as a unit for measuring the volume of the intersection of any parallel fibre with any box of the family, as ment ioned in Section 3. As a result of this affine 'normal iza t ion ' the sum of all box splines of fixed order will be 1, independent of x.

In the special case of p = r, the box spline will be a tensor product spline; if addit ionally m = r, i.e. r of the Pk equal 1, while all o ther pj vanish, the box spline

M r ( x ) = ( 1 , if ai ~ [0, 1), 0, otherwise,

x = i + a , bl + "" + Otrbr, m = r,

is of degree m - r = 0 and will be a 'desk', as shown in Fig. 4, for n = 3, m = r = 2. Note aiso that in order to facilitate the normal izat ion process for these simple box splines we use an open interval for the a k here.

Note finally that if more than n - r of the pj vanish, i.e. p < r, the image of the box does not span ~ r , this box spline will degenerate, so that we can think of it as vanishing identically over ..q~ r.

7. The recursion of box splines

Now we consider a box B of .~ ¢m generat ing a box spline M ( B ) as above. We denote the face aj = 0 of the box by Bj and the opposi te face a / = 1 by Bj. These faces are boxes also, but of dimension m - 1, generating box splines M ( B j ) and M ( B j ) of degree (m - 1) - r.

Let y be a point of d m, for simplicity inside B. One can subdivide the box B into 2m pyramids Pj and ~ , with y as a c o m m o n vertex, with bases Bj and Bj, and with 'heights ' aj and 1 - aj. The intersection B G X of the box B with the fibre X conta ining y is thus subdivided in up to 2m pyramids Sj and ~. of d imension m - r.

Considering their volumes and the defini t ion of normal ized box splines above one gets by some geometrical observations as shown in the appendix

m

M ( B ) = m--r1 j ~ l ( O t j M ( B j ) + ( l _ e t j ) n ( ~ j ) ) ( , )

/ / 1

b_M L / L / Fig. 4. Box spline of degree 0, (m = r = 2).

Page 6: Calculating with box splines

154 W. Boehm / Calculating with box splines

where the % are affine coordinates o f y as above. Note that aj depends on x as well as on M ( B ) etc. This formula was first developed by de Boor and Hoellig in 1982 by analytic observation [de Boor, Hoellig '82].

if a i and aj fall onto the same u k one has M ( B i ) = M ( B j ) and M(Bi) = M(Bj) . So one can add oti and %, and so on. Finally one gets with the abbreviations

Pl . . . . ,Pk-- 1, . . . ,pn = P - - k a n d i l , . . . , i ~ + 1 , . . . , i n = i+ k n

M r ( x ) = ~ E ( f l k M f - k ( x ) + ( P k - - fl~)Mf+-kk(x)), ( * *) m - - r k = l

where fl~ are affine coordinates of y* as above. In the univariate case, r = 1, this formula coincides with that found by Mansfield, de Boor

and Cox in 1972 (for uniform knots). As there, the above formula can be used to calculate

M r ( x )

step by step from box splines of degree 0, i.e. from the desks of Fig. 4. Note that M >~ 0 only, if x inside the support of M.

8. Positive weights

For any given x the flk are not unique: all pointsy* o f ~ ¢p that have the same image x form a fibre X* of the map/72 . This fibre is given by all solutions flj of the linear system

fllbl + . . . flnbn = x - b, flj= O if pj = O,

and forms an affine subspace of dimension p - r. If additionally y* lies inside or on the boundary of B* all coefficients flk and Pk - flk in the

recursion formula (* * ) will be non-negative. This choice of flk ensures convex linear combina- tions and will be annotated by

fl~ ( B ) = f lk , f .

9. Linear combinations of box splines

Any linear combination

SP(x) = E d r M f ( x ) all i=i*

of translates M f of a box spline M~' of fixed order p is a spline of degree d = m - r belonging to at least the same continuity class C m-s-1 as the box splines. The coefficients d f are called 'control points' or 'de Boor points'.

With the natural ordering of the M f as translates of one box spline and using normalized i = i* the control points are also ordered naturally by i and thus form the so called 'control net'. As a generalization of a result of Greville for univariate splines it is useful to position these points above the center of the support of the corresponding spline.

If p ~ r the translates M f -k are not linearly independent: by passing on to another member y* of the fibre X*, i.e. adding solutions x k of

Xlb 1 + " ' " + x n b n = O

Page 7: Calculating with box splines

IV. Boehm / Calculating with box splines 155

to the ilk, one does not influence the relation (* * ), such that n

E ( M f - k ( x ) - = o k = l

at all x. Al though the translates of a box spline span a linear space they do not fo rm a basis, i.e. the coefficients of any linear combina t ion are not unique and so the control net is not unique either.

Moreover, there are different types of box splines of the same degree but different in order, i.e. in the componen t Pk of p. Each type m a y be linearly combined and possesses its own natural ly ordered control net.

After calculating the M p ( x ) ( that do not vanish at x) by the recursion formula ( * * ), the sum SP(x) , i.e. the spline funct ion at x, can easily be determined by means of a dot product .

10. The recursion algorithm

We write down a simple program for the evaluation of SP(x ) by the recursive calculat ion of all box splines M r ( x ) that do not vanish at x. For a simple nota t ion we denote the set of integer points q of the 'cube' 0 ~< qj ~ p j but excluding the points with [q[ = ql + " " " + qn < r by QP.

Algorithm Set q = p . For all: i f x ~ support M f calculate M r ( x ) by "recursion M " "'recursion g ": i f q q~ Qp or i f x q~ support M q then set M~( x) = O, else ifkll = r then set M q ( x ) = 1, else i f not calculated before then calculate flk q, ( X ) and calculate M~( x ) by the recursion formula (* *). Calculate the Mq,'( x ), needed by (* *), by "" recursion M " . End " recursion M "' Set S P ( x ) = )- '~dfMl'(x), where the summation is over all i with M r ( x ) + O.

i

11. Reduction of the control net

To calculate SP(x ) one can also express the box splines of the l inear combina t ion by box splines of lower degree using the recursion formula (* *). Collecting like terms one gets in general p new control nets of box splines of degree (m - 1) - r, each having control points

dr - k = " k---- 1 . . . . , p . m - - r

Note that the fie of the recursion formula depend on the order p and the locat ion i, so it is necessary to replace the flk by flk,f here.

Let us now consider linear combinat ions of more than one kind of box spline of the same degree (m + 1) - r, belonging to the same grid. Each type is represented by its own control net. Using the recursion formula (* * ) we can express these different types of box splines by box splines of degree m - r, and ask for the corresponding control nets. By collecting like terms as

Page 8: Calculating with box splines

156 W. Boehm / Calculating with box splines

before one gets

1 E (flk,P +kdp+k +(Pk--flk,P-+kkdiP-+kk))" ( * * * ) d ~ ' - m + l - r k=l

In the univariate case, n = 1, this formula coincides with that found by de Boor in 1972 (for un i fo rm knots).

Thus in analogy to the a lgor i thm of de Boor the above formula can be used to reduce a linear combina t ion SP(x) step by step to a linear combina t ion of box splines M q of degree 0, i.e. to

S P ( x ) = E d ~ . l ,

where qk = 0 or 1, I ql ---- r, and the summat ion is over all j with x ~ support M~. N o t e that the d q = dq(x) are polynomials of degree m - r in x now. Note also that the

in te rmedia te d r are not points in the trivial geometr ic sense, but weighted points (or differences of points).

12. The reduction algorithm

We write down a recursive algori thm for the calculation of a spline SP(x) at x by the reduct ion of the net of control points de:

Algorithm Calculate all j with x ~ support Mj q, where Iq[ = r. Calculate Se( x) = ~ j d q, where Iql-- r. Calculate the d q by "'reduction d': "'reduction d" : i f q q~ Qp then set d q = 0 else if not calculated before then calculate fl~k,i and calculate d~ by the recursion formula ( * . *). Calculate the d q', needed by ( * . * ), by "'reduction d". End "reduction d'"

13. Multivariate tensor product splines

In the special case where the regular grid i is the direct sum of two (or more) grids, i.e. if

i= il + i 2,

i l = b + i l u 1+ . . . +irUr,

i 2 ----- 0 + J l V l + - - " q-JsVs,

and analogously x = x I + x 2 etc, the corresponding box splines degenerate to tensor product box splines: Let N/~l(xl) and NiP2(x2) be the box splines corresponding to the grids i 1 and i 2 such that

Mf(x)= N,f'(xl). f2(x2). Then

dfMf(x) i

• i l + i 2 i 1

g2

d 2(xl)

Page 9: Calculating with box splines

W. Boehm / Calculating with box splines 157

So one can split up the reduction of the control net into two steps: (1) a reduct ion with respect to the grid il , at all points of the grid i 2 (that influence M F ( x ) ) , and (2) a reduct ion of the resulting net d~ 2 (x 1 ).

EXAMPLES

The described constructions are general, i.e. they comprise all kinds of mult ivariate box splines over uni form grids. For a better understanding we give two simple (but no t trivial) examples:

14. Triangular prismatic box splines

We consider a grid of ~3

i = b + i lu I + j l v l +j2v2 +j3v3,

where v 3 = v 1 + v 2. This grid is formed by triangular prisms as shown in Fig. 5. It is the direct sum of a linear grid i I and a triangular grid i 2, and so the box spline scheme is the tensor product of a univariate and a triangular scheme.The figure also gives the natural ordering of the points d f of the control net of any spline of order p.

One can use the reduction formula for this net to calculate the spline at a po in t x. But since the resulting box spline is a tensor product box spline, it is more efficient to split up the reduction: First one calculates the points at x 1 of univariate splines that are defined by the control points d f for any fixed i 2. Thus one gets one triangular net of points d~=(Xl), then one calculates the point at x 2 of the corresponding triangular spline defined by the control points

15. Bivariate triangular splines

As a second example we consider the simple yet instructive bivariate splines over a triangular grid, where r = 2 and n = 3, first considered in C A G D by Sabin [Sabin '77].

,ltA Fig. 5. Triangular prismatic grid.

Page 10: Calculating with box splines

158 l~. Boehm / Calculating with box splines

A regular t r iangular grid of ~¢2 is descr ibed by three directions u 1, u2, and u 3 = ul + u2 together wi th a po in t b. Using b , u 1, u 2 as a global aff ine system o f ~ '2 a grid po in t i is uniquely def ined by

i = b + i lu i + i2u 2, ij = integers

and the loca l /~ , of a general po in t x o f ~ ¢2 with respect to i are uniquely def ined by

X = X + f l l U l + f12U2.

C o m p o n e n t s in u 3 direct ion m a y easily be d is t r ibuted among the other direct ions by using

14 3 ~-~ i/1 q- Id 2. The recurs ion fo rmula (* • ) of t r iangular box splines consists of six terms, all together with

their suppor t s i l lustrated by an exp los ion drawing in Fig. 6 (all equally shaped regions are to be t ransla ted to the center one). F o r m o r e general i ty we set/33 :g 0. Evidently, add ing x, x, - x to ill , f12, f13 does no t cont r ibute to M l ' ( x ) . N o t e that m = P l +P2 + P 3 and d = m - 2.

Let us n o w focus our a t ten t ion on the local normal iza t ion of the /3 k with respect to M r . In

• •

/%/%Ax/V "X /M:::::

\ / P 3

(P3 T r~3

i • P2~,/ ~/ ~/ V M : : : : " M :::'?

° , °+1 : °

Fig. 6. Recursion of a tr iangular box spline.

P3

P~ ~3 o y* 0 / ~

Pl i B,

Fig. 7. Normalizat ion of local coordinates.

Page 11: Calculating with box splines

IV. Boehm / Calculating with box splines 159

the general case f13 ~ R we set

fl2e, i = f 1 2 - ~ ~ w h e r e x = m i n ( f l l , f12, P3 - f13)- #~,= #~ + ,,)

Tha t means geometrically: Take y* as a point of the visible surface of the box B* as shown in Fig. 7. This geometrical normalizat ion ensures the condit ions discussed in Section 8.

012 022

/ .o/ / ~ ' ; \ / " \ / / ' \ / / 0 ~ \ / - \/":.,~o//',k~,l/',,,,~1 ~

22O ° ( , ~ ) " .

( 4 )

m= 1 2 3 4 5 6

Fig. 8. Natural ordering of the q's.

113 0

/ , 212 Fig. 9. The q ' s corresponding to the box

splines of Fig. 6.

Page 12: Calculating with box splines

160 W. Boehm / Calculating with box splines

Fig. 8 shows the set QJ' of points q for p = 2, 2, 2. The q ' s that correspond to tensor product splines are denoted by smaller numbers.

The numbers qlq2 + q2q3 + q3ql of box splines of order q not vanishing a priori at x are added in brackets. Note that all points q with q~ + q2 + q3 = m lie in a plane. Fig. 9 shows the q ' s corresponding to the box splines of Fig. 6.

The reduction formula for the de Boor points has up to six termes and is illustrated in Fig. 10. We have abbreviated m - 1 by c and shortened the rows i and p by -, -, • etc.

16. The use of barycentric coordinates

Evidently, box splines are strongly connected with the idea of affine space. Especially, if the d~' are (weighted) points, so are the SV(x). Thus the given construct ion is invariant under affine transformations of ~¢r.

Nevertheless, splines over triangles are described naturally by barycentric coordinates [see e.g. Farin '79]. These coordinates are strongly related to affine coordinates and can be viewed as their symmetric form. We expect that a symmetric approach to triangular splines can simplify some of the given general constructions [see e.g. Boehm et al. '84].

d -,.,.+1 ,.,.-I

• ,.+1,. ~ d'+l'"" d *~°-ls, ° 1'°9°

. . . . 1 :.. +(p=-p= ,._1 . , . ,

1 °~ T(P3-~3 ""+1)

67 • +1,.,./ ±c(Pl- 1.-1,.,.

/

d . ° °

1 ~ °~°~*+1 a -,-, •

~~ .,.÷1,. 2 i - ~°

d °~°~*+1 °~ .~ °

d .+1,.,. ° - 1 ~ ° ,

Fig. 10. Reduct ion of a triangular de Boor net.

d ° ~ - + 1 ~ ° • ~ •

Page 13: Calculating with box splines

W. Boehm / Calculating with box spfines 161

A P P E N D I X

We shall now prove de Boor's formula ( * ) for box splines. The idea of the proof was a l ready given in Section 7.

17. A geometric proof of the reeursion formula

Let y be any point of the fibre X of x as above. The box B is split into pyramids Pj. and fo rmed by the box faces Bj and Bj and the vertex y. Thus

M ( B ) = M ( P , ) + . -" + M(Pm) + M(fil) + ' ' ' + M(P, , ) ,

where M ( P j ) = vol X(3 P j /vo l U. Note that Sj = Xc3 Pj is fo rmed by the intersection X¢3 Bj and the vertex y, see Fig. 11.

N o w it is sufficient to prove

1 M ( P , ~ ) - - - a , ~ M ( B m ) , r < m .

m - - r

(1) In the case of X N B m = 0 one has M(Bm) = 0 as well as M(P,,) = O. (2) In the case of X t~ B m ~ 0 we assume first that

(a) b, ba,... ,bm_ 1 do not s p a n ~ or. Then M(Bm) = 0 by definition, while M(Pm) = 0 since y lies in the subspace that is spanned by B m.

(b) b, b a . . . . ,bin-1 span t h e ~ or. We can assume t h a t ~ ¢r is spanned by b, b 1 . . . . ,b r. We will change the affine system of ~¢ m into one that is defined by the vertex a and the edges a 1 , - - ' , a r and vectors er+~,... ,era that span the direction of the fibre X. Thus y can be wri t ten as

y = a q- cae 1 -t- • • • + q , n e m ,

where the rows e i are related to the rows a j (in matrix notat ion) by [: l I r Ol[ill m [T IEa] ,.

A m

a, y a ~ p y r a m i d P,.

face B,. ~: Im_ I

fibre X A' , bl i

Fig. 11. The pyramid P,,,.

Page 14: Calculating with box splines

162 W. Boehm / Calculating with box splines

E k is the (k, k)-unit-matrix, T is a suitable (d, n)-matrix, d -- m - r is the degree, and O is a null-matrix. Hence the rows of affine coordinates a i and Ej are related by

[Er I1 O ] [Oil,''',"ml= ['I,.--,'mll-__-~-FZ; -

Note that

ai----ei, i = 1 , . . . , r ,

a j = cj, j = r + l , . . . , m .

The infinite paralldepiped V formed by the family of translates of B is described by

R fo r j = 1 . . . . . r,

c j ~ [0 ,1] f o r j = r + l , . . . , m .

Using the simple volume dement

de,+1" "" d c , - a d%,

the intersection U = Xf3 V of this epiped and the fibre X of any x has volume 1. Hence M ( B ) equals the euclidean volume of X t~ B.

Let us now consider the face B m described by et,,, = c,, = 0. In analogy to M ( B ) and using the volume element

d~r+ 1 - - - d~m_ 1

M(B,,) equals the volume of X N B,,. But, by the fact that both volume elements are euclidean, we know that the pyramid formed by the base B m and the vertex y has the volume

1 M ( P m ) = era" M ( B , . ) . m - - F

Note that if r = m the corresponding box splines are of degree 0 and cannot be reduced.

References

Boehm, W. (1983), Subdividing multivariate splines, Computeraided Design 15, 345-352. Boehrn, W., Farin, G and Kahmarm, J. (1984), A survey of curve and surface methods in CAGD, Computer Aided

Geometric Design 1, 1-60. de Boor, C. (1972), On calculating with B-splines, J. Approx. Theory 6, 50-62. de Boor, C. (1978), A practical guide to splines, Springer, New York. de Boor, C. and Hoellig, K. (1982), B-splines from parallelepipeds, MRC Report $2320, Madison-Wisconsin. Dahmen, W. and Micchelti, Ch. (1983a), Multivariate splines - a new constructive approach, in: Barnhill, R. and

Boehrn, W., eds., Surfaces in CAGD, North-Holland, Amsterdam. Dahmen, W. and Micchelli, Ch. (1983b), Translates of multivariate splines, Linear Algebra Appl. 52/53, 217-234. Farin, G. (1979), Subsplines ueber Dreiecken, Dissertation Techn. Univ. Braunschweig, F.R. Germany. Prautzsch, H. (1984), Unterteilungsalgorithmen multivariater Splines - ein geometrischer Zugang, Dissertation Techn.

Univ. Braunschweig, F.R. Germany. Sabin, M.A. (1977), The use of piecewise forms for the numerical representation of shapes, dissertation Hungarian

Academy of Science, Budapest.

Supplement

Some more important algorithms for the calculating with multivariate splines can be found in: Boehm, W. (1984), Multivariate spline algorithms, in: Gregory, J.A., ed., Mathematics of Surfaces, Proceedings of an

I.M.A.-conference held at University of Manchester, U.K., at September 17-19, 1984, Oxford University Press.