distance function operations for developing new field .... erosion and dilation operations of...
TRANSCRIPT
Abstract—In soft object modeling, primitive soft objects can
be used to construct a complex soft object by performing
addition operations only. This is because a primitive soft object
is defined as the iso-surface of a field function which is a
composition of a potential function and a distance function. In
fact, the distance function determines the shape of a soft object.
To deform the shape of a primitive soft object, this paper
proposes dilation and erosion operations, which can be viewed
as distance function operations because they perform on the
distance function of a primitive soft object to be deformed and a
chosen dilating or eroding distance function. Thus, dilation
operation can be used to dilate a primitive soft object through
the chosen dilating distance function, and erosion operation can
be used to erode a primitive soft object through the chosen
eroding distance function. Briefly, these two operations can
deform the iso-surface of an existing distance function and then
can be applied as a new distance function to define a new field
function.
Index Terms—Field functions, distance functions, soft
objects.
I. INTRODUCTION
In implicit surfaces, primitive implicit surfaces are defined
each as an iso-surface of a defining function. A complex
implicit surface is created by smoothly connecting primitive
surfaces via blending operations [1], [2]. Among different
representations of implicit surfaces [3], [4], [5], soft object
modeling especially can blend primitive soft objects easily by
soft blending [4], [5] which performs addition operations
only. This is because field functions are used as defining
functions and the value of a field function is designed to be
decreasing from 1 to 0. More precisely, a field function is
defined as a composition of a potential function and a
distance function. Potential functions majorly ensure a field
function to be decreasing and controls the softness affect of
soft blending such as those in [4], [5], [6], [7], and the one in
[7] particularly offers blending range control. Distance
function controls the shape of a primitive soft object.
Existing distance functions include spheres [5],
super-ellipsoids [6], [8], super-quadrics [3], generalized
distance functions [9], skeletal primitives [10], and sweep
objects [11].
Regarding existing distance functions, most of the
researches focus directly on developing new distance
functions with new shapes of iso-surfaces. However,
different from their developing methods, this paper proposes
a new method to develop a new distance function by
Manuscript received August 20, 2012; revised September 15, 2012.
Pi-Chung Hsu is with the Department. of Information Management,
Shu-Te University, Kaohsiung, Taiwan (e-mail: [email protected]).
deforming the iso-surface of a distance function via another
distance function via newly developed distance function
operations on the above two distance functions. That is, this
paper develops distance function operations and then existing
distance functions are applied into them to create a new
distance function for generating a new field function with
deformed iso-surfaces. These distance function operations
are described as follows:
Erosion operation to erode the distance function of a soft
object by an eroding distance function:
When applied as a new distance function to deform a soft
object, it can be used to shrink a soft object with different
magnitudes for different directions determined by the
eroding distance function, and it also offers a parameter to
control the degree to which a soft object can be shrunk.
Dilation operation to dilate the distance function of a soft
object by a dilating distance function:
When applied as a new distance function to deform a soft
object, it can be used to enlarge a soft object with different
magnitudes for different directions controlled by the dilating
distance function, and it also offers a parameter to control the
degree to which a soft object can be enlarged.
The remainder of this paper is organized as follows.
Section II reviews soft object modeling. Section III
introduces erosion and dilation operations. Conclusion is
given in Section IV.
II. SOFT OBJECT MODELING
This section presents some definitions about soft objects
and implicit surfaces.
A. Field Functions
Let a field function be denoted as fi(x, y, z):R3R+ where
R+ [0, ]. Then, a primitive soft object is represented as the
point set
{(x,y,z)R3| fi(x,y,z)=0.5, i=1,2,…,}
In the following, the symbol fi(x, y, z)=0.5 denotes a soft
object or its surface for short. To enable that fi(x, y, z)=0.5,
i=1, 2,…, can be blended by summation operation, a fi(x, y, z)
is usually defined as (P。di)(x,y,z) and is written by
fi(x,y,z)=(P。di)(x,y,z)= P(di(x,y,z)). (1)
In Eq. (1), P(d), called potential function, must decrease
from 1 to 0 as d increases from 0 to 1 and P(0.5)=0.5, such as
Eq. (2) in [6]:
P(d)=
15.0))45.1(75.0/()1(
5.0))45.4(/()3(1222
222
ddssd
ddssd , (2)
Distance Function Operations for Developing New Field
Functions in Soft Object Modeling
Pi-Chung Hsu
International Journal of Computer and Communication Engineering, Vol. 2, No. 2, March 2013
179
where parameter s controls the softness affect. Fig. 1(a) shows
the shape of p=P(d) of Eq. (2) in d-p plane.
As for di(x, y, z), it is called distance function and is
required to map R3 into [0, ]. In fact, it controls the shape
and size of a soft object fi(x, y, z)=0.5. In addition, di(x, y, z) is
usually defined by using a closed surface di(x, y, z)=1 as
influential region and is calculated by
di(x,y,z)= r / Rd = oIoX / , (3)
where Rd = oI is called the influential radius of (x, y, z),
which is the distance from the origin to the intersecting point
of the vector X=(x, y, z) with the influential region di(x, y,
z)=1 as show= oI n in Fig. 1(b), and r= oX is (x2+y2+z2)0.5.
Subscript d symbolizes that Rd is the influential radius of di(x,
y, z)=1 as the influential region. Due to P(0.5)=0.5, the shape
of a soft object fi(x, y, z)=(P。di)(x, y, z)=0.5 is like the shape
of di(x, y, z) =0.5, and consequently a soft object fi(x, y, z)=0.5
is viewed as the influential region di(x, y, z)=1 scaled overall
by 0.5. Thus, one can say that the size and shape of di(x, y,
z)=1 determines the shape and size of a soft object fi(x, y,
z)=0.5. Some famous distance functions are listed as follows:
0.2 0.4 0.6 0.8 1
d
0.2
0.4
0.6
0.8
1
P
(a)
(b)
Fig. 1. (a). The shape p=P(d) in Eq. (2), which becomes concave downward
and upward gradually as softness parameter s increases. (b). The influential
region di(x,y,z) =1, solid line, and the shape fi(x,y,z)=0.5, i.e. di(x,y,z)=0.5,
dotted line.
Superellipsoids:
d(x,y,z)=(|x/a|p+|y/b|p+|z/c|p)1/p . (4)
Superquadrics [3]:
d(x,y,z)=((|x/a| p1+|y/b| p1) p2/ p1+|z/c| p2)1/p2 . (5)
B. Blending Operations
Blending operations play a very important role in creating
a complex soft object because they can smoothly connect k
primitive soft objects fi(x, y, z)=0.5, i=1,2,…,k via a blending
operator Bk(x1,...,xk):R+k R+ . Precisely, they are written by
{(x, y, z)R3 | Bk(f1(x, y, z),...,fk(x, y, z))=0.5}.
Many blending operations have been developed and they
include:
Soft blending [4, 5]:
Bk(x1,…,xk)=x1+x2+…+xk,
Super-ellipsoidal union [12]:
Bk(x1,…,xk)=(x1p+…+xk
p)1/p ,
Super-ellipsoidal intersection [12]:
Bk(x1,…,xk)=(x1-p +…+xk
-p)-1/p.
Besides, sequential blending operations are also allowed
and they can be represented as a CSG tree [13]. Fig. 2
displays a wheel created from a union of two cylinders and a
toroid.
C. Ray-Linear Functions
As shown in Eq. (3), a distance function is required to be
rewritten by using influential radii. This subsection presents a
theorem to check to see if a function is able to fulfill this
requirement. Now, as stated in [14], the following definition
is introduced first.
Fig. 2. A wheel created from a union of two cylinders and a toroid.
Definition 1: A function f(x, y, z):R3R+ is called
non-negative ray-linear if f(ax, ay, az)=af(x, y, z) holds for
any (x, y, z)R3 and a R+. For compactness, “ray-linear” is
used to stand for “non-negative ray-linear”. Based on
Definition 1, Theorem 1 was proposed in [1] and is listed
below.
Theorem 1: If f(x, y, z):RnR+ is ray-linear, then f(x, y, z)
can be reformulated as r/Rf, where r=||(x, y, z)|| and Rf is the
distance from the origin to the intersecting point of the vector
(x, y, z) with the influential region f(x, y, z)=1.
According to Theorem 1, we obtain that one can adopt
ray-linear f(x, y ,z) as a distance function because it can be
rewritten by r/Rf. Thus, based on Theorem 1, Theorem 2 is
described below for helping check to see if a blending
operation Bk(f1(x, y, z),..., fk(x, y, z)) can be a distance
function.
Theorem 2: If fi(x, y, z):R3R+, i=1,...,k, all are ray- linear
and operator Bk(x1,...,xk):R+kR+ is ray-linear, then operation
Bk(f1(x, y, z),...,fk(x, y, z)) is ray-linear and is a distance
function, too.
International Journal of Computer and Communication Engineering, Vol. 2, No. 2, March 2013
180
III. EROSION AND DILATION OPERATIONS OF DISTANCE
FUNCTIONS
This section explains why and how erosion and dilation
operations can be used to deform a soft object.
A. Erosion Operation
Let d(x, y, z) and T(x, y, z) both be ray-linear distance
functions, and surfaces d(x, y, z)=1 and T(x, y, z)=1 both be
closed and satisfy the condition:
{(x, y, z)R3|d(x, y, z)=1}{(x, y, z)R3|T(x, y, z)=1}.
Thus, an operation of d(x, y, z) an T(x, y, z), denoted as
(dT)(x, y, z) and called erosion operation, is given by
(dT)(x, y, z) = (d(x, y, z)-n - T(x, y, z)-n)1/-n (6)
= Br2(d(x, y, z), T(x, y, z)),
Br2(x1, x2)=(x1-n - x2
-n) 1/-n,
where T(x,y,z) is called eroding function and n1. It is trivial
to show Br2(x1, x2) in Eq. (6) is ray-linear. Since d(x,y,z),
T(x,y,z) and Br2(x1,x2) all are ray-linear, it follows from
Theorem 2 that (dT)(x,y,z) is ray-linear, too and so (d
T)(x,y,z) can be rewritten as (dT)(x,y,z)=r/RdT. This means
that (dT)(x,y,z) in Eq. (6) can be used as a new distance
function to define a new soft object by
(P。(dT)) (x, y, z)=0.5
In fact, (P。(dT)) (x, y, z)=0.5 is viewed as (P。d) (x, y,
z)= 0.5 eroded by the influential radii of T(x, y, z)=0.5. This is
explained as follows. Due to d(x, y, z)=r/Rd and T(x, y,
z)=r/RT from Theorem 1, putting r/Rd and r/RT intoEq. (6)
yields
(dT)(x, y, z)= r / (Rdn -RT
n)1/n, (7)
i.e. (dT)(x, y, z)= d( Rd / (Rdn -RT
n)1/n (x, y, z) ).
From Eq. (7), the shape (dT)(x, y, z)=1 can be viewed as
the shape d(x, y, z)=1 scaled overall with an individual
scaling factor Rd /(Rdn-RT
n)1/n for every point (x, y, z) in all
directions. In fact, scale factor Rd /(Rdn-RT
n)1/n is different for
different (x, y, z) and depends on RT of T(x, y, z)=1 and Rd of
d(x, y ,z)=1. Since the value of Rd /(Rdn-RT
n)1/n is always
greater than 1, operation (dT) (x, y, z) causes reduction in
size on the deformed surface d(X)=1. From Eq. (7), it is also
obtained that influential radius RdT becomes (Rdn-RT
n)1/n after
(dT)(x, y, z). Depending on parameter n, influential radii
RdT are discussed as follows:
In the case that when n=1, (dT) (x, y, z) becomes r/(Rd
-RT), which means the influential radius is reduced to (Rd -RT).
As a result, the surface (dT) (x, y, z)=1 is like the surface
d(x,y,z)=1 where every point (x, y, z) is moved RT inwards to
the origin along the vector [x, y, z] and every (x, y, z) have
different RT. This implies that the surface (dT) (x, y, z)=1 is
like the surface d(x, y, z)=1 eroded (subtracted) by the
influential radii RT of T(x, y, z)=1, which determines the
erosion extent. For example, let d(x, y, z) be (|x/35|2+|y/35|2+
|z/35|2)1/2 and a eroding function T(x, y, z) be a super-
ellipsoid (|x/5|2 +|y/5|2+|z/15|2)1/2. Then, when n=1, the soft
object (P。(d T))(x, y, z)=0.5 in Fig. 3(c) can be viewed as
the sphere (P。d) (x, y, z)=0.5 in Fig. 3(a) eroded by the
object T(x, y, z)= 0.5 in Fig. 3(b).
As n increases from 1 to , influential radius RdT increases
from (Rd -RT) to Rd
. Thus, the erosion effect caused by T(x, y,
z) decreases as n increases. Therefore, the surface (dT)(x, y,
z)=1 dilates from the surface (d(x, y, z)-1-T(x, y, z)-1)-1 =1 to
the surface d(x, y, z)=1 while n increases from 1 to . This is
demonstrated in Fig. 3(d), which follows the example in Fig.
3. Fig. 3(d) shows the soft objects of (P。(dT)) (x, y, z) =0.5
with n set 1, 1.3, 1.7, and 2.5, respectively, for the objects
from left to right.
Consider other cases as shown in Fig. (4) that when d(x, y,
z)=(|x/35|2+|y/35|2+|z/35|2)1/2, T1(x, y, z)=(|x/5|2+|y/15|2+|z
/15|2)1/2 and T2(x, y, z)=((|x/10|7+|y/10|7)2/7+|z/25|2)1/2, then the
erosions of (P。(dT1)) (x, y, z)=0.5 and (P。(dT2)) (x, y,
z)= 0.5 are shown in Figs. 4(d)-(e).
In addition, when the shape of T(x, y, z)=1 is asymmetric,
then the shape of (P。(dT)) (x, y, z)=0.5 can be asymmetric.
As shown in Fig. 5, the asymmetric super-ellipsoid in Fig.
5(b) is used as T(x, y, z)=1 and the sphere in Fig. 5(a) as d(x, y,
z)=1, so the shape of (P。(dT)) (x, y, z)=0.5 is asymmetric
shown in Fig. 5(d). On the contrary, Fig. 5(e) is symmetric in
two of the polar areas because the symmetric super-ellipsoid
in Fig. 5(c) is used as T(x, y, z)=1 instead.
(a) (b) (c)
(d)
Fig. 3. (a). A soft object (P。d) (x, y, z)=0.5 before erosion. (b). An eroding
object T(x, y, z)=1. (c). The erosion of the sphere in (a) by the object in (b)
defined by (P。(dT)) (x, y, z)=0.5. (d). The soft objects of that in (c) with n
in (dT) (x, y, z) is set 1, 1.3, 1.7, and 2.5, respectively, for the objects from
left to right.
(a) (b) (c)
(d) (e)
Fig. 4. The erosions of the sphere in (a) by the disk and the super-ellipsoid in
(b) and (c) generate the two-ball object and the four-ball object respectively
in (d) and (e).
International Journal of Computer and Communication Engineering, Vol. 2, No. 2, March 2013
181
(a) (b) (c)
(d)
(e)
Fig. 5. (a). The shape of d(x, y, z)=0.5: a sphere. (b). The shape of T(x, y,
z)=0.5: an asymmetric super-ellipsoid. (c). The shape of T(x, y, z)=0.5: a
symmetric super-ellipsoid. (d). Soft objects (P。d) (x, y, z)=0.5 with an
asymmetric concave shape because the object in (b) is used as T(x, y, z)=1,
where the left one’s surface is transparent. (e). Soft objects (P。d) (x, y, z)
=0.5 with two symmetric concave polar areas because the object in (c) is used
as T(x, y, z)=1, where the left one’s surface is transparent.
B. Dilation Operation
Let d(x, y, z) and T(x, y, z) be ray-linear distance functions,
and d(x, y, z)=1 and T(x, y, z) =1 both are closed surfaces.
Thus, an operation of d(x, y, z) an T(x, y, z), denoted as (dT)
(x, y, z) and called dilation operation, is given by
(dT)(x, y, z)=(d(x, y, z)-n +T(x, y, z)-n)1/-n (8)
=Br2(d(x, y, z),T(x, y, z))
Br2(x1, x2)=(x1-n + x2
-n) 1/-n
where T(x, y, z) is called dilating function and n1. It is trivial
to show Br2(x1, x2) in Eq. (8) is ray-linear. It follows from
Theorem 1 that (dT) (x, y, z) is also ray-linear since d(x, y,
z), T(x, y z, z) and Br2(x1, x2) all are ray-linear. As a result, (d
T) (x, y, z) can be reformulated as (dT) (x, y, z)=r/RdT. This
means that (dT) (x, y, z) in Eq. (8) can be used as a new
distance function to define a new soft object by
(P。(dT)) (x, y, z)=0.5
Described geometrically, (P 。 (dT)) (x, y, z)=0.5 is
viewed as (P。d) (x, y, z)=0.5 dilated by the influential radii
of the surface T(x, y, z)=0.5. This is proved as follows.
Substituting r/Rd and r/RT for d(x, y, z) and T(x, y, z) in Eq. (8)
yields
(dT)(x, y, z) = r / (Rdn +RT
n)1/n (9)
i.e. (dT)(x, y, z) = d(Rd /(Rdn + RT
n)1/n (x, y, z))
Eq. (9) implies that the shape (dT)(x, y, z)=1 can be
viewed as the shape d(x, y, z)=1 scaled overall with an
individual scaling factor Rd /(Rdn +RT
n)1/n for every point (x, y,
z) in all directions. In fact, scale factor Rd /(Rdn+RT
n)1/n is
different for different (x, y, z) and depends on RT of T(x, y,
z)=1 and Rd of d(x, y, z)=1. Since the value of Rd /(Rdn +RT
n)1/n
is always less than 1, (dT)(x, y, z) =1 causes enlargement in
size of the deformed object d(x, y, z)=1. Eq. (9) indicates that
RdT=(Rdn +RT
n)1/n, that is, the influential radius is raised to
(Rdn+RT
n)1/n after (dT)(x, y, z). Some characteristics of (dT)
(x, y, z) are described by varying the parameter n as follows.
n=1, (dT) (x, y, z) becomes r/(Rd +RT). This
means for any (x, y, z)R3, the influential radius raises to (Rd
+RT). Contrary to (dT)(x, y, z)=1, the surface (dT)(x, y,
z)=1 is like the surface d(x, y, z)=1 where every point (x, y, z)
is moved RT outwards from the origin along the vector [x, y, z]
and every (x, y, z) in different directions have different RT.
This implies that the surface (dT)(x, y, z)=1 is like the
surface d(x, y, z)=1 dilated by the influential radii RT of T(x, y,
z)=1, which determines the dilation extent.
2 n increases from 1 to , the influential radius RdT
decreases from (Rd+RT) to Rd . Consequently, the dilation
effect caused by T(x, y, z) decreases as n increases. Hence, the
surface (dT)(x, y, z)=1 shrinks from the surface (d(x, y, z)-1+
T(x, y, z)-1)-1=1 to the surface d(x, y, z)=1, while n increase
from 1 to . For example, let d(x, y,
z)=(|x/25|2+|y/25|2+|z/25|2)1/2 and T(x, y,
z)=(|x/4|1.1+|y/4|1.1+|z/16|1.1)1/1.1. Thus, the dilation (P 。
(dT))(x, y, z)=0.5 of a sphere by the prism-shaped object in
Fig. 6(b) with n=1, 1.4, 1.8, 2.6 and 5.2, is shown in Fig. 6(c),
where the last object is almost like the original sphere in Fig.
6(a).
(a) (b)
(c)
Fig. 6. The dilation (P。(dT))(x, y, z)=0.5 of the sphere in (a) by the
prism-like object in (b) with n=1, 1.4, 1.8, 2.6, and 5.2, respectively, for the
objects from left to right in (c).
C. Erosion after Dilation Operation
Let d(x, y, z), TE(x, y, z) and TD(x, y, z) be ray-linear
distance functions, then a erosion after dilation operation in
Subsections III A-B above is defined by using TE(x, y, z) and
TD(x, y, z) as a eroding and a dilating functions, and is written
by
(P。((dTD)TE))(x,y,z)=0.5.
Consider the example about the latter one where d(x, y, z)
is (|x/20|2+|y/20|2+|z/20|2)1/2, and TD(x, y, z) is
((|x/5|2+|y/5|2)1.5/2 +|z/15|1.5)1/1.5 to dilate d(x,y,z) around z-axis.
The shapes (P。d)(x, y, z)=0.5 and TD(x,y,z)=0.5 are shown
by the first two object in Fig. 7(a), and the dilation of (P。
(dTD))(x, y, z)= 0.5 is shown in Fig. 7(b), which is larger
than the original one in Fig. 7(a). Thus, to keep unchanged
the region (|x/5|2+ |y/5|2)1/2=0.5 around (P。(dTD))(x, y,
z)=0.5, we can use ((|x/5|2+|y/5 |2)1.5/2+|z/5 |1.5)1/1.5 as TE(x, y, z),
the third object in Fig. 12(a), to restore the size of (P。
International Journal of Computer and Communication Engineering, Vol. 2, No. 2, March 2013
1) When
) As
(dTD))(x, y, z)=0.5 by (P。((dTD) TE))(x, y, z)=0.5. This
is shown in Fig. 7(c) and the resulting shape of (P 。
((dTD)TE))(x, y, z) =0.5 has more similar size around the
region (|x/5|2+|y/5|2)1/2=0.5 to the original soft object (P。
d)(x, y, z)=0.5 in Fig.7(a) , compared to that in Fig. 7(b).
(a)
(b) (c)
Fig. 7. (a) The shapes of (P。d) (x, y, z)=0.5, TE(x, y, z)=0.5 and TD(x, y,
z)=0.5 from left to right, respectively. (b) The dilation (P。(dTD)) (x, y,
z)=0.5. (c) The erosion after dilation (P。((dTD)TE))(x, y, z)=0.5.
IV. CONCLUSION
In soft object modeling, the distance function of a field
function determines the shape and size of primitive soft
objects. To develop distance functions with new shapes,
unlike most of the existing researches focusing directly on
developing new ones with new shapes of iso-surfaces, this
paper has developed a new method that creates a new
distance function by deforming the iso-surface of the distance
function of a soft object via a ray-linear distance function and
hence the soft object is also deformed. More precisely, this
paper has developed the following distance function
operations:
Erosion distance function operation: It is an operation on
the distance function of a soft object intended for
deformation and an eroding distance function. It can erode
the distance function of a soft object with the eroding
distance function, which controls the extent to which every
point in all direction of the soft object can be shrunk.
Dilation distance function operation: It is an operation on
the distance function of a soft object intended for
deformation and a dilating distance function. It can dilate the
distance function of a soft object with the dilating distance
function, which controls the extent to which every point in all
direction of the soft object can be enlarged.
Thus, based on the two operations, one can freely choose
two of any existing point-based distance functions and then
develop a new distance function and a new field function for
a new soft object with a more diverse shape.
ACKNOWLEDGMENT
The author would like to thank National Science Council
of Taiwan for the support of Project No. NSC 101-2221-E-
366-012.
REFERENCES
[1] P.-C. Hsu and C. Lee, “The scale method for blending operations in
functionally based constructive geometry,” Computer Graphics Forum,
vol. 22, no 2, pp. 143-158, 2003.
[2] Q. Li, “Smooth piecewise polynomial blending operations for implicit
shaped,” Computer Graphics Forum, vol. 26, no 2, pp. 143-158, 2007.
[3] A. H. Barr, “Superquadrics,” IEEE Computer Graphics and
Applications, vol. 1, no 1, pp. 11-23, 1981.
[4] J. F. Blinn, “A generalization of algebraic surface drawing,” ACM
Trans. on Graphics, vol. 1, no 3, pp. 235-256, 1982.
[5] G. Wyvill, C. McPheeters, and B. Wyvill, “Data structure for soft
objects,” The Visual Computer, vol.2, no 4, pp. 227-234, 1986.
[6] C. Blanc and C. Schlick, “Extended field functions for soft objects,” in
Implicit surfaces’95, pp. 21-32, April 1995.
[7] P.-C. Hsu and C. Lee, “Field functions for blending range controls on
soft objects,” Computer Graphics Forum, vol. 22, no 3, pp. 233-242,
2003.
[8] C. Blanc and C. Schlick, “Ratioquadrics: An alternative model to
superquadrics”, The Visual Computer, vol. 12, pp. 420-428, 1996.
[9] E. Akleman and J. Chen, “Generalized distance functions,” in Proc.
Shape Modeling International '99, pp. 72-79, 1999.
[10] J. Bloomenthal and B. Wyvill, “Interactive techniques for implicit
modeling,” in SIGGRAPH Computer Graphics, vol. 24, no 2, pp.
109-116, 1990.
[11] B. Crespin, C. Blanc, and C. Schlick, “Implicit sweep objects,” in
Eurographics’96, vol.15, no 3, pp. 165-175, 1996.
[12] A. Ricii, “A constructive geometry for computer graphics,” The
Computer Journal, vol.16, no 2, pp. 157-160, May 1973.
[13] B. Wyvill, A Guy, and E Galin, “Extending the CSG tree: Warping,
blending and boolean operations in an implicit surface modeling
systems,” in Proc. Implicit Surfaces’98, pp. 128-136, 1998.
[14] E. Akleman, “Interactive construction of smoothly blended star solids,”
in Graphical Interface’96, pp. 159-167, May 1996.
International Journal of Computer and Communication Engineering, Vol. 2, No. 2, March 2013
183