K-ary Implicit Blends with Increasing or Decreasing Blend Ranges for Level Blend Surfaces

This paper develops four new families of C continuous k-ary boolean set blends, which can blend more than 2 objects in a single blend operation and furthermore can also be used as a new primitive in sequential blends, i.e. blend on blend, for implicit surface modeling. Especially, two of them have increasing and decreasing blend ranges for level blend surfaces in Zero implicit surface f(x,y,z)0 and the other two have increasing and decreasing blend ranges in Function Representation f(x,y,z)0. In addition, they can also simulate constant blend ranges. By applying the proposed blends into sequential blends, shape control on the transition of a blend’s subsequent blend surface is offered, and a blend with a sharp transition is also allowed to have a smooth subsequent blend surface.


I. INTRODUCTION
In implicit surface modeling, a primitive implicit object (surface) is defined as a 0-level surface of a defining function f(x,y,z) by f(x,y,z)=0 in [1].When viewed as a solid, the object is represented by f(x,y,z)0, called zero implicit surface denoted as ZRep, or by f(x,y,z)0, called Function Representation [2] as FRep.ZRep and FRep have their own advantages and have different boolean set blends used to construct a complex object from primitive surfaces, such as planes, ellipsoids, super-ellipsoids and skeletal primitives, etc.An implicit blend, denoted as f=B k (f 1 ,...,f k )=0, is able to connect primitives f i (x,y,z), i=1,..,k, by automatically generated transitions tangent to surfaces to smooth out unwanted or sharp edges and creases.
Existing blends for ZRep and FRep in the literature are reviewed as follows:  C 0 continuity Max and Min functions [3] give pure union and intersection with C 0 continuity only and hence generate non-smooth surfaces with sharp edges and corners in blends.
 High-degree continuity R-functions and their extensions [2] gives binary union and intersection blends with C n , n>1, continuity and so can generate blending surface of high-order smoothness in FRep.

 Blend with blend range parameters
This kind of blends provides each primitive a range parameter to delimit a primitive's blending region so that the transition can be generated locally without deforming the entire primitive and with an adjustable size.Regarding this, binary blends were proposed in [4]- [7], which generate transitions of conic [6], elliptic [5], [6] and super-elliptic [7] shapes.
 Blend containing blend range parameters and C 1 continuity for generating sequential blends This kind of blends not only provides range parameters to generate adjustable transitions locally, but also can be used to create sequential blends with overlapping blend regions.Regarding this kind of blends, for ZRep binary blends were developed including elliptic blend in [8] and super-elliptic [9]; in addition, k-ary super-elliptic blends in [7], [10] can blend more than two primitives in a single blending operation.As for FRep, binary blend were proposed in [2], [11], bounding blend in [11] especially can limit a blend within specified bounding solids.Furthermore, sequential and successive compositions of blends, i.e. blend in a blend, are usually organized using a Constructive solid geometry (CSG) tree together with deformation or affine transform operations, as in [12].Unwanted bulges or blends can be avoided using gradient-based variable range methods as in [5], [9], [13].
In sequential blends B 2 (B k (f 1 ,...,f k ), f k+1 )=0 with range parameters r 1 ,… and r k for primitives f 1 ,..., and f k in B k , the transition of the blend surface between B k (f 1 ,...,f k ) and f k+1 is composed of the intersection curves of level surfaces B k (f 1 ,...,f k )=l and f k+1 =l, lR.This implies that the shape change of level blend surfaces B k (f 1 ,...,f k )=l, lR, influences the shape of the subsequent blend surface of B k (f 1 ,...,f k )=0 with other primitives in later blends.
Regarding the shapes of level blend surfaces B k (f 1 ,...,f k )=l , lR, they always change because blend ranges of primitives f 1 ,..., and f k in each B k (f 1 ,...,f k )=l change as l varies.This means that the range change of primitives f 1 ,..., and f k in B k (f 1 ,...,f k )=l also influences the shape of B k (f 1 ,...,f k )'s subsequent blends when B k is used as a primitive in other blends.
The primitives' range changes of existing blends are reviewed as follows:  In ZRep, binary blends B k (f 1 ,f 2 )=l in [8], [9] have increasing ranges by lr 1 and lr 2 ; k-ary blends B k (f 1 ,..., f k )=l in [10] have increasing ranges by lr 1 ,… and lr k and those in [7] have constant ranges by r 1 ,… and r k for every level blend surfaces. In FRep, binary blend with increasing ranges was developed in [11].The range change of primitives in a blend's level surfaces deeply influences a blend's subsequent blend surface.However, most existing blends offer increasing ranges for their level blend surfaces.So, this paper extends the scale method [7]

II. RELATED WORKS OF IMPLICIT SURFACES
This section defines implicit surfaces and review existing implicit blends with C 1 continuity for generating sequential blends.

A. Zero Implicit Surface
In ZRep [7], a primitive surface (solid) is defined as a 0-level-surafce (a half space) of a defining function f(x,y,z):R 3 R by: Surface: {(x,y,z)R 3 | f(x,y,z)=0}, or Solid: {(x,y,z)R 3 | f(x,y,z)0} which is denoted as f i (x,y,z)0 or f i 0 in the following.f i >0 is the outside of the solid and -f i 0 the complement of f i 0.

B. Function Representation
In FRep [2], [11], a primitive surface (solid) is defined using a defining function f(x,y,z):R 3 R by the point set: which is denoted as f i (x,y,z)0 or f i 0 for short.f i <0 is the outside, and -f i 0 the complement of f i 0.
A defining function f(x,y,z) is given using a distance function D(x,y,z) by ZRep: f(x,y,z)=D(x,y,z)-1 and FRep: f(x,y,z)=1-D(x,y,z) D(x,y,z):R 3 [0, ] determines a surface's shape.In the literature, existing D(x,y,z) includes the following:  Planes: where  means dot product, v is a unit normal vector toward the plane, a>0 controls the shortest Euclidean distance from the plane to the origin.
 Super-ellipsoids: where parameters a, b and c decide the axial lengths of axes x, y, and z of the shape f(x,y,z)=1 [14].

D(x,y,z)=d/I d
where d is the shortest Euclidean distance of (x,y,z) to a given skeleton: a point, line segment, polygon or solid skeleton, and I d is a specified influential radius [15].In addition, sweep and spherical-product surfaces can be found in [16], [17].
 Difference blend, denoted as .., and f k for ZRep and FRep, respectively, and they can be obtained from an intersection blend by

D. Blends with Range Parameters for FRep
Existing blends with range parameters for generating sequential blends in FRep are reviewed below: 1) Pure union and Intersection with zero-valued ranges [1] B Uk (x 1 ,...,x k )=Max(x 1 ,...,x k ) and which are C 0 continuous and generate non-smooth surfaces as in Figs.1(a) and (c).
2) Bounded blending Bounded blends [11] are extended from R functions by adding a displacement function disp, and they offer binary union and intersection operators on f 1 (x,y,z)0 and f 2 (x,y,z)0 with range parameters r 1 and r 2 for FRep by where a 0 , r 1 and r 2 are set greater than 0. In (1), B U2 (f 1 , f 2 ) and B I2 (f 1 , f 2 ) does not behave like Max(f 1 , f 2 ) and Min(f 1 , f 2 ) in non-blending regions and hence f 1 and f 2 change properties after blending.Besides, the range change of f 1 and f 2 in level surfaces B U2 (f 1 , f 2 )=l and B I2 (f 1 , f 2 )=l, l>0, are not easy to predict.

E. Blends with Range Parameters for ZRep
Existing blends with range parameters for generating sequential blends in ZRep are reviewed below: 1) Pure union and Intersection with zero-valued ranges [1]:

2) K-ary blends with constant ranges
As stated in [7], given an existing union operator ] +  on f i 0 with range parameters r i , i=1,...,k, whose 2D shape H 2 (x 1 ,x 2 )=0 is like the red curve in Fig. 3, then a union operator B Uk :R k R with range parameters r i and C 1 continuity everywhere for ZRep can be developed by where h p T -1 (0) and ] +  with p>1 and r i >0, i=1,...,k.
In addition, the due forms of (2) provide intersection and difference operators B Ik and B Dk :R k R for ZRep by Difference: Equations ( 2) and (3) can also be used as intersection and union operators, respectively, for FRep.
As indicated from 2D level blending curves D 2 (x 1 ,x 2 )=l, l>0, in Fig. 3, all level blend surfaces B Uk (x 1 ,…, x k )=l and B Ik (x 1 ,…, x k )=l always have constant ranges r i for primitives f i in added-material and in subtracted-material blends in B Uk (f 1 ,…, f k ) and B Ik (f 1 ,…, f k ).

III. BLENDS WITH INCREASING OR DECREASING RANGES FOR ZREP
Since the range change of primitives f 1 ,…, and f k of level blend surface B k (x 1 ,...,x k )=l, lR, influence the subsequent blend's shape of B k (f 1 ,...,f k ) with other primitives in a later blend, this section extends the scale method and then present a generalized method to develop Boolean set blends that have increasing or decreasing ranges for primitives f 1 ,…, and f k in level blend's surfaces B k (f 1 ,...,f k )=l for ZRep.The generalized method includes four steps as follows: Step (1): Choose a base surface H k (x 1 ,…,x k )=0 from an existing union operator H k (x 1 ,…,x k )=0 in ZRep with range parameters r 1 ,…, and r k .For example, H 2 (x 1 ,x 2 )=0 is defined piecewise by a union of an arc-shaped curve H r (x 1 ,x 2 )=0, tangent to Min((x 1 ,x 2 )=0 at (1, 1+r 2 ) and (1+r 1 , 1), and the curve Min((x 1 ,x 2 )=0, as in Fig. 4(a).Step (2): Obtain two base surfaces from H k by with ranges r a1 ,…, and r ak and with ranges r s1 ,…, and r sk . Step Level curves B AS2 (x 1 ,x 2 )=l, lR, are displayed in Fig. 4(b), where B A2 (x 1 ,x 2 )=l, l>0, is located in region Min(x 1 ,x 2 )>0 and -B S2 (-x 1 ,-x 2 )=l, l<0, in Min(x 1 ,x 2 )0.

A. Boolean Set Blends with Increasing Ranges for ZRep
Based on B ASk in ( 4  Difference B DDk derived from ( 8):

IV. BLENDS WITH INCREASING OR DECREASING RANGES FOR FREP
In fact, all boolean set blends B k (f 1 ,...,f k ) for ZRep in Section III can be used to derive new blends for FRep according to the following transforms.

A. Blends with Increasing Range for FRep
Transform (1): Union and intersection with decreasing ranges in ZRep can be used as intersection and union, respectively, with increasing ranges for FRep.
It follows that Eqs. ( 7)-( 8) offer a new family of Boolean set blends for FRep with increasing ranges as follows:  Union B FIUk derived from (8): whose B FIUk =l have increasing ranges (N-l)r a1 , …, and (N-l)r ak as l decreases from N, and all ranges are 0 when l=N, as shown in Fig. 6(b).

A. Binary B A2 and B S2
As in Fig. 4(a), let H 2 (x 1 ,x 2 ) in (4) be represented piecewise by the union of Min(x 1 ,x 2 )=0 and H r (x 1 ,x 2 )=0: with a curvature parameter p and blending range parameters r 1 and r 2 and -<p<r 2 r 1 .Thus, H a2 is given by the union of Min( As a result,

B. K-ary B Ak and B Sk
To blend more than two objects simultaneously, successive compositions of binary blends are needed.However, this can also be achieved in a single k-ary blend presented below.
Let H k =0 in (4) be given by ] +   − 1 = 0 Then H ak and H bk with a curvature parameter p i and a range parameter r i = r ai and r si for each primitive f i , i=1 to k, are obtained by  VI.APPLICATIONS Some applications of ( 5)-( 12) created from ( 13) and ( 14) are described below: 1) Shape control of the transition of the subsequent blend of a blend with constant, increasing and decreasing blend ranges.8) and ( 6) are used to define the cube in Fig. 8(a), respectively, the shapes of the transitions of the three cubes from left to right have different shapes because of constant, decreasing and increasing ranges of them.Fig. 8(d) displays similar results of the transitions except the cube in Fig. 8(a) is replaced with the ellipsoid in Fig. 8(c).
2) Allowing blends with sharp transitions or edges to have smooth subsequent blends by using blends that have increasing range in ( 5)-( 6) and ( 9)-( 10) and setting N0.Blends with sharp transitions might need to be obtained which can be generated from blends B k (f 1 ,…,f k ) with r i 0, i=1,...,k, like Min or Max do.Because all of their level blend surfaces are non-smooth, their subsequent blend surfaces are also non-smooth, too, as shown from the pointed region in Fig. 9(c).However, if blending operators that have level surfaces like that in Fig. 4(b), such as in ( 5)-( 6) and ( 9)-( 10) with r i >0, i=1,...,k, and N0, are used instead, then a blend surface with sharp edges is also allowed to have a smooth subsequent blend surface, as shown on the pointed region in Fig. 9(d).As a result, by using these Boolean set blends above to define a blend in blend,  Shape control on the shape of the transition of a blend's subsequent blend is allowed. A blend surface with sharp transition is also allowed to have a smooth subsequent blend in sequential blends.
and then develops:  Two new families of k-ary Boolean set blends for ZRep: f(x,y,z)0: one has linearly increasing ranges (N+l)r 1 ,…, and (N+l)r k and the other decreasing ranges (N-l)r 1 ,…, and (N-l)r k , respectively, for primitives f 1 ,..., and f k in level blend surfaces B k (f 1 ,..., f k )=l, l>0, as l increases. Two new families of k-ary Boolean set blends for FRep: f(x,y,z)0: one has linearly increasing ranges (N-l)r 1 ,…, and (N-l)r k and the other decreasing ranges (N+l) r 1 ,…, and (N+l)r k , respectively, for primitives f 1 ,..., and f k in level blend surfaces B k (f 1 ,...,f k )=l, l<0, as l decreases. In the above, if r 1 ,… and r k are set r 1 /N,… and r k /N, then ranges for primitives f 1 ,..., and f k in B k (f 1 ,...,f k )=0 are always r 1 ,… and r k , and those in B k (f 1 ,...,f k )=l become like (N+l)/Nr 1 ,…, and (N+l)/Nr k , where N determines the change rate.As N gets bigger and bigger, they approximate constant ranges.The remainder of this paper is organized as follows.Section II defines implicit surface and introduces related works.Sections III and IV present the proposed blends for ZRep and FRep.Section V proposes differentiable blends.Applications of the proposed blends are presented in Section VI.Conclusion is given in Section VII.

Figure 2 .
Figure 2. (a)-(b).Unions of two cylinders by BU2(f1,f2)0.(c)-(d).Intersections of 3 pairs of parallel planes by BI3(f1,f2,f3)0.In (a) and (c), sharp edges are incurred because of using Min and Max blends; in (b) and (d) sharp edges are removed because of using union and intersection blends with range parameters in Section II.E.
) and H sk = H k (1-x 1 , …, 1-x k ) Therefore, B Ak and B Sk of B Ask are given by   = { ℎ  ( 1 , … ,   ) ( 1 , … ,   ) > 0 ℎ (13) where h p T -1 (0), T(h)= ∑ [(1 +   −   ℎ ⁄ >0 and p i >1, i=1,...,k;   = { ℎ  ( 1 , … ,   ) ( 1 , … ,   ) > 0 ℎ (14) where h p T -1 (0), T(h)= ∑ [(  ℎ ⁄ − 1 +   )/   =1 ] +   -1, and 0<r si 1 and p i >1, i=1,...,k.C. Parameter Settings of N, r 1 , …, and r k In the following, unions in ZRep are described and the others can be applied similarly.Union B IUk =l in (5) has increasing ranges by (N+l)r a1 , …, and (N+l)r ak , and union B DUk =l in (7) decreasing ranges by (N-l)r s1 , …, and (N-l)r sk .Thus,  Setting r ai of B IUk with r ai /N, i=1 to k ensures that union blending surface B IUk (f 1 ,…,f k )=0 with l=0 always has the same blend ranges r a1 ,…, and r ak whatever N is set. Setting r si of B DUk by r si /N, i=1 to k ensures that union blending surface B DUk (f 1 ,…,f k )=0 with l=0 always has the same blend ranges r s1 ,…, and r sk whatever N is set. Setting N= of B IUk and B DUk enables that blend ranges of level surfaces B IUk =l and B DUk =l, (N+l)/N and (N-l)/N, approach zeros.That is, they almost have constant ranges r a1 ,…, and r ak and r s1 ,…, and r a as N is close to .And the rate of range changes decreases as N increases.For example, B IU2 =l with N=1 has increasing ranges as shown in Fig. 7(a); but its change rate is reduced by set N=4 as shown in Fig. 7(b).In fact, all these above also apply to the boolean set blends in (9)-(12) for FRep.

Figure 9 .
Figure 9. (a).A cube with sharp transition defined from an intersection blends of 3 pairs of parallel planes by f4=BI3(f1,f2,f3)0; because ranges are set by ri=0.01,i=1, 2 and 3 and hence it has sharp edges.(b).A cube. (c).Union of (a) and (b), where non-smooth subsequent blends are incurred because BI3 in (3) is used to define f4.(d).Union of (a) and (b) where smooth subsequent blends are obtained because BII3 in (6) with ri=1, i=1, 2 and 3, and N=0.01 is used to define f4.VII.CONCLUSION In Zero implicit surface or Function representation (ZRep and FRep), most of the existing blends for them have constant or increasing blending ranges for their level blend surfaces.To make the range change of level blend surfaces more diverse, this paper have developed four families of new boolean set blends, including union, intersection and difference blends.They are C 1 continuous everywhere, provide range parameters and behave like Max and Min in non-blend regions.Consequently, they can create sequential blends with overlapping blend regions and primitives deform locally.In addition, primitives of their level blend surfaces have:  Increasing blend ranges for ZRep,  Decreasing blend ranges for ZRep,  Nearly constant blend ranges for ZRep,  Increasing blend ranges for FRep,  Decreasing blend ranges for FRep,  Nearly constant blend ranges for FRep.As a result, by using these Boolean set blends above to define a blend in blend,  Shape control on the shape of the transition of a blend's subsequent blend is allowed. A blend surface with sharp transition is also allowed to have a smooth subsequent blend in sequential blends.