0% found this document useful (0 votes)
25 views

Morphological Modeling and Deformation of 3D Objects: by Samuel Boivin, André Gagalowicz and Youichi Horry

This document describes morphological modeling and deformation techniques for 3D objects that preserve volume. It presents fusion and difference operators that combine objects while keeping total volume constant. Fusion adds volumes, while difference subtracts them. These are used to create deformation tools that attract, repel or separate objects. Examples deform a sphere into five spheres or simulate clay fusion. The techniques allow animating incompressible objects like liquids or modeling compressible objects like cells.

Uploaded by

Cyrille Lamassé
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
25 views

Morphological Modeling and Deformation of 3D Objects: by Samuel Boivin, André Gagalowicz and Youichi Horry

This document describes morphological modeling and deformation techniques for 3D objects that preserve volume. It presents fusion and difference operators that combine objects while keeping total volume constant. Fusion adds volumes, while difference subtracts them. These are used to create deformation tools that attract, repel or separate objects. Examples deform a sphere into five spheres or simulate clay fusion. The techniques allow animating incompressible objects like liquids or modeling compressible objects like cells.

Uploaded by

Cyrille Lamassé
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 25

Morphological Modeling and Deformation

of 3D Objects
by
Samuel Boivin*, André Gagalowicz* and Youichi Horry**

*Mirages Project, I.N.R.I.A. Rocquencourt,

Domaine de Voluceau, 78153 Le Chesnay Cedex, France

{Samuel.Boivin|Andre.Gagalowicz}@inria.fr,

** Hitachi, Central Research Laboratory,

1-280 Higashi-Koigakubo, Kokubunji-shi, Tokyo 185 Japan

[email protected]

ABSTRACT

This paper describes a new set of techniques based upon laws of object composition for
the modeling and animation of deformable objects. They present some similarities with

logical or morphological operations. This method is unique because the volume of the
merged object is held constant with respect to its constituents. Composition from two

objects is allowed for general shapes which may have very different topologies. These
techniques are applied towards shapes which are approximated by a polyhedral

description. When integrated into a modeler, they can be used as modeling tools,

animation tools, deformation tools or even morphing tools depending on how they are
handled. One of the advantages of these tools is that the user may easily deduce the
procedure to follow in order to obtain a given result.

1 INTRODUCTION
Deformable objects are useful to make striking animations (i.e. human form merged

with a creature’s body, liquids, many solid objects...). In the real world, such objects
may be considered as incompressible. Animators of 2D cel animations are always taking
care of volume conservation in their drawings. Many techniques were proposed for
modeling and animating such 3D deformable objects [1, 3, 4, 10, 11, 13, 14, 15, 17], but

1
they are not designed to control volume conservation. On the other hand, non
deformable objects (i.e. robots, mechanical ones...) are rather easy to animate; we have
just to translate and rotate the parts of the objects. In this paper, we propose a new
method which is able to model and animate deformable objects. We keep the total

volume of the objects constant (i.e. we suppose that they are incompressible).
Volume preserving deformations could be convenient in the design of packaging
containers which must have a precise volume such as perfume bottles and could provide

relatively a simple tool for animating objects such as limbs and prostethic devices which
can be deformed while bending. These tools could also be useful in industrial design
where one could explore the variety of deformations possible on a fixed volume of raw

material. It produces a clay modeler in essence (see figure 0) which could be used as
such in a graphical modeling system.

The techniques presented can easily be generalized to mass conservation by using

appropriate normalization factors for the combined objects. Volume control during
object deformation could also have applications in biology for the qualitative

visualization of models such as cell division (mitosis) and cell fusion (lymphocyte
function).

One can conserve volume but it is also easy to allow a tunable degree of
incompressibility simply be changing Eq (1) to include an extra scaling factor . This way,

one can control the degree of stretching which could be useful in the development of

compressible models that could be used for visualizing cardiac function, etc...

Figure 0: Fusion of two natural clay shapes (top) and simulation of this fusion using our techhnique
(bottom)

2
1.1 Previous Work
Many techniques have been already developed to create and animate complex objects.

Using the composition of simple primitives, more complex objects can be obtained; for
example using metaballs ([19], [22], [23]) or CSG ([20], [24], [25]). Surfaces of smooth
shapes can be generated by patches such as B-splines ([3], [1]). They can be
approximated by a vertex/edge/facet network which allows them to be mixed with

surfaces obtained by other methods. By moving control points of the patches, surfaces
can be readily animated. Implicit surfaces are another way to create and animate smooth

shapes. They can simulate smooth fusions between objects([13], [14], [15]). A different
manner of constructing a complex shape is to deform a preexisting one with a given

deformation tool (Free-Form Deformations [11], [4]). Then, the tool can be animated
(Animated Free-Form Deformation [8]). Interesting animated shapes may also be

obtained through the metamorphosis from one shape to another one ([7], [10], [21]) or
by using composition laws between two shapes. As an example, in reference 9, the

Minkovski sum between two object shapes is computed.

Another technique which is closely related to this work allows the composition of two
interpenetrating shapes when one of the objects is a star-shaped [16].

1.2 Current Approach

We introduce what we call “morphological” modeling operators. The two basic

morphological modeling operators consist of the “fusion” and the “difference” operators
which correspond to erosion and dilation in mathematical morphology. The fusion

operator generates an object with a volume which is equal to the sum of the volumes of
two input objects. The difference operator generates an object with a volume which is
equal to the difference between the volumes of the two. Using a combination of both
operators, we demonstrate how to deform objects while keeping their volume constant.
These new deformation tools are called morphological deformation operators. One goal

is to easily animate deformable objects. To achieve this, we use preexisting 3D shapes


and animate (i.e. translate and rotate) them. Then at each frame we dispose of the

3
locations of the various objects that we compose by any combination of morphological
modeling operators. Various applications of the volume preverving operators are shown
in Figures 1-6.

On Figure 1, we show the composition of two shapes, the result of which, called fusion,
is such that the result object contains the union of A and B, and has a volume equal to
the sum of volume of A and B. This shape seems more appealing than the union of the

two objects ( left of Figure 1).

Figure 1:
1 Fusion of two toruses (the two input toruses are shown respectively in
green and red, and the result of fusion in blue)

On Figure 2, the difference between A and B is such that the result volume is equal to
the difference of the two volumes, and contains the logical difference between A and B.

Figure 2: Difference between Object A (green) and Object B (red), presented in blue

4
On Figure 3, object B (in red) is used to deform object A (green) is such a way that the
volume of A remains constant, but the deformation produced is monitored by the shape
of B.

Figure 3:
: Attraction of Object A (green) by Object B (red), shown in blue

On Figure 4, object B is used to repell object A, but the deformation produced, once
again, does not change the volume of A.

Figure 4:
: Repulsion of Object A (green) by Object B (red), shown in blue

5
On Figure 5, object B is filled up by a part of the volume of A, and then separated from
A. The resulting volume of A is equal to the difference between the original volume of A
and the volume of B.

Figure 5: Separation of Object A (green) by Object B (red), in blue

Figure 6 presents several images corresponding to the morphing of a single sphere onto a
set of five disjoint spheres (very different topology). Morphing is performed
automatically in 3D, and the volume of the morphed object varies linearly during the
sequence.

Figure 6: 3D Morphing from a single sphere to five ones

Let us give now a more precise definition of these various operators, presented above.

! the fusion
the fusion of two objects is such that the fused objects have a volume equal to the sum of
the two initial volumes (close to a logical union in CSG).

6
! the difference
The difference between two objects produces another one which has a volume equal to
the difference between the two former volumes (negative volumes are allowed,
corresponding to their existence in a negative world as in Astrophysics). This difference
is close to what we obtain when we compute the intersection between two objects and
suppress it from them. More precisely, when we consider the difference between A and
B, we suppose that A has a positive mass, B, a negative one; if they come to contact, the
mass of the smallest object is anihilated by the corresponding one of the other object so
that these two parts dissappear. What remains is the signed difference between the two.

Based upon these two fundamental operators which can be also related to the dilation
and the erosion in mathematical morphology, we invented new operators which are
volume invariant deformation operators : given an object shape, they can easily change
this shape while keeping its volume constant:

! the repulsion
the repulsion operator uses a shape B to deform a shape A in such a way that the A
shape gets pushed away by B . One gets such effects when modeling clay while pushing
a rigid object B inside the clay mass of A.

! the attraction
the attraction operator, on the contrary, uses a shape B to allure the shape of A towards
B. One would get such a shape starting from a clay object (shape A) and pushing it
(possibly partially) with your thumb inside a mold having a shape B .

! the separation
the separation operator corresponds to the case when you cut the part of shape A that
you used to fill up the B shape (possibly partially) in the attraction manipulation, from its
main part. This way, you finish with two parts, one contained in B and the rest of A that
was not used.

Now, how can we do this? The outline of the current procedure is as follows.
In section 2, we describe the morphological modeling operators which consist of the
fusion operator and the difference operator . We shall show two forms of the difference
operator which are denoted by the subscripts -inf and -sup respectively. It is also possible
to construct other difference operators which would behave between the two limits

obtained by those two. In section 3, the detail of the fusion operation is described.
As it is the fondamental operator (all others are deduced from that one), we will describe

7
it in more details when compared to the others. In section 4, after introducing negative
volumes, the detail of the difference operator is shown. In section 5, we demonstrate the
performance of combinations of these modeling operators. Conclusions and future
research directions are summerized in section 6. Some properties of the morphological

modeling operators are given in Appendix.

2 MORPHOLOGICAL MODELING OPERATORS

We propose the following modeling operators which are applied to objects A


and B:
- the fusion of A and B (denoted by A B)
- the difference between A and B (denoted by A B)

The fusion and the difference operators do not commute. The result of the fusion
between shapes A and B is such that it contains both A and B and has a volume which is

equal to the volume of A plus the volume of B.


We propose two versions of the difference operator, the difference-inf : between A and
B (denoted by A inf B) and the difference-sup : between A and B (denoted by A sup B).

Both operate such that the volume obtained is equal to the difference between the two
volumes. The specific properties of inf and sup will be discussed in section 4. On the

basis of these three modeling operators we define the following deformation operators :

- the repulsion of A by B (denoted by AB), AB = (A B) B


- the attraction of A by B (denoted by A B), A B = (A infB) B

- the separation of A by B (denoted by A|B), A|B = (A supB) B

The repulsion, attraction and separation operators are all idempotent :


(AB) B = AB
(A B)B = AB

(A|B)|B = A|B
and have some similarities with the "opening" (AB) and "closing" (A B and A|B) operators

used in mathematical morphology [17] which lead us to call our approach


"morphological".

8
3 THE FUSION OPERATOR
3.1 Outline of The Method
Let A and B be three-dimensional objects. Our aim is to create an object C such that :

- C contains A and B
- the volume of C is equal to the volume of A plus the volume of B
We suppose that each input object is a regular closed surface (otherwise, we cannot
define its volume) and is described by a set of vertices and facets (polyhedral

approximation). The fused object C has the same description. There are no constraints on
the geometry or topolgy of A or B. They can have sharp edges and holes (this property
differs from implicit function modeling).

The fused object C contains A Υ B . The difference between the volume of

A Υ B and the volume A B is equal to that of A Ι B . The fused object C is the union

of A Υ B and of a layer which covers A Υ B , the volume of the layer being equal to

A Ι B . In 3.2, we introduce the fusion center which drives the direction from where the
volume of A Ι B will be transported to the surface of A Υ B . Such transport is done by

scanning the 3D space around a fusion center H (see below).

Starting from objects A and B (Figure 1 : green object and red object), the steps leading
to fused object C are listed below:
(1) First, we scan the 3D space around the fusion center. We then deform
objects A and B, as shown in Figure 9 , to accomodate the transported
volume. Their surfaces will be used to construct fused object C by simply
computing the logical union between deformed A and B (discussed in section
3.3).

(2) Next, we construct the intersection curve(s) between deformed objects A


and B.
(3) Then, we triangulate the parts of intersecting polygons of deformed A
(B), corresponding to the outside of deformed B (A). We replace the
intersecting polygons by these triangles. The polygons of deformed A and B
which are outside the intersection are simply merged into this shape. The

9
complete surface of fused object C is thus obtained as shown in Figure 1:
blue object (discussed in section 3.5 ).

3.2 The Fusion Center


Volume preserving fusion can be expressed in boolean operations as, the
volume of A Υ B increased by the volume of A Ι B . The main idea is that we transport
the shared volume A Ι B to the periphery of A Υ B . The fusion center H drives the
direction from which the shared volume will be transported. The concept of a fusion
center is similar to that of [16]. In the current work we can position H anywhere in the
3D space while in [16] it should be inside A Ι B . The shape of the fused object depends
heavily on H so that it is, in fact, a very powerful tool. This is illustrated in Figure 7. An
application of this effect is presented in figure 8 where a human head corresponds to
object A. We put an ellipsoid B inside A and put H on the right of B so that the face gets
an inflated left cheek exactly as when you do it yourself when inflating air in your mouth
and orient it with your muscles (here with H); if H is put on the left of B, it is the right
cheek which becomes inflated (see top right of Figure 8). If you put it behind B, it is the
mouth and the bottom of the face which becomes now inflated (see bottom left of Figure
8). Another interesting effect is produced on bottom right of Figure 8 by replacing the
ellipsoid by a parallepipedron.You may put the ellipsoid out of the face with a small
inclusion inside the mouth to have the face blow a balloon out of her cheek. So , here
with the simple play on H (you may move also B a bit in order to produce a perfect
aspect) you may obtain an interesting animation. In order to feel better the possibilities
offered by the H displacement, we show in the 2D case in figure 7, a variety of ways in
which volume can be distributed around the surface. The volume which is triggered by H
is shown in yellow and the deformation produced on A and/or B is colored in green. The
result of the fusion is the total outside shape. When H is set in the intersection, the excess
of volume is spread out all over the union of A and B, which makes a much smoother
result. When it is set outside the intersection, it permits to produce sharp edges and
deform only a part of the union between A and B in a controled manner. Due to this
enhanced flexibiilty the operator should be more accurately written by H. However

10
for simplicity we shall simply refer to the operator as .

Figure 7: Influence of the position of the fusion center H on the displacement of volume of A Ι B

(yellow) at the periphery of A Υ B (green).

Figure 8: Possibilities offered by manipulations of H

11
3.3 Interval Composition and Construction of the Surface

Figure 9: Example of how the shared volume A Ι B is locally transported to the outside

of A Υ B (from [16]). See formula (1).

The surface of the fused object can be obtained as follows:


We scan the 3D space around H by infinitesimal cones in spherical coordinates (θ, φ); the
volume of A Ι B is transported to the closest free space available outside of A Υ B as
illustrated in Figure 9.
In spherical coordinates around H, the volume of a cone of height ρ(θ, φ) is equal to 1/3
ρ3 δθδφ. The cone of height ρ1(θ, φ) belonging to A Ι B and ρ2(θ, φ) belonging to B (or

A) , will produce a local fusion of A and B which brings the fused surface to ρ(θ, φ) such
that:

Previous work [16], started from a simple object (i.e. tetrahedron) which includes H
inside, formula (1) was applied for each vertex. Each vertex was then displaced to the
point at a distance of ρ(θ, φ) from H in direction (θ, φ). Polygons of the object were then
subdivided and formula (1) was applied for the adapted vertices again. This procedure
was continued until the curvature becomes larger than a given threshold. This technique
required that the fusion center H should be inside A Ι B and the objects should be star-
shaped. The resultant number of polygons and vertices obtained depended on the
threshold controling the curvature.

12
These restrictions can be avoided by deforming the input graphs of A and B, which
allows to keep the control of the surface obtained. We compute the deformation of A by
B, the deformation of B by A. The result of the fusion is locally ( among the two
possibilities, for each tube) the solution which contains the other one. It is thus, the
union of deformed A and deformed B.
The procedure is : draw a ray starting from H and hitting each vertex V of
object A, determine all intersecting intervals with A and B , as it is done in conventional
ray tracing [25]. This is illustrated in Figure 10. At the point where the ray is exiting the
volume modify its location due to the transport of volume between the objects via
Equation (1). Volume is transported as follows. First, compute A Υ B (light blue),
A Ι B (yellow) and the free space A Υ B (purple) between the vertex V and the fusion
center H. For illustration purposes we will not consider what is outside location V even
if there are still other A and(or) B intervals due to complex folding of the objects and we
assume that the space is empty after location V. In other words the vextex V denotes the
outmost vertex of our demonstration object.
The volume of each A Ι B interval is transported to the nearest available free
space interval located between itself and V. If the volume of free space is smaller than
that of A Ι B (case of (b) in Figure 10), the free space is occupied and the difference
between the volume of A Ι B and the free space is transported to the next available free
space, and this procedure is iterated until all the volume of A Ι B is placed.
Finally, when all intersection intervals have been treated, we determine the
displacement of the vextex V to V’ which is such that the interval VV’ corresponds to
the amount of volume of the intersection A Ι B which has still not been placed in the
available free space between H and V. If the ray is getting IN the volume at location V,
do not move point V. The same operation is then performed similarily for all vertices of
B.
Remark: if the space after location V is occupied by A intervals and VV’ intersects
some of them, the case will be treated by the self-intersection procedure explained below.
If the deformation of B locally passes V’ (for example, if a B interval goes further than
V, and is containing V), V’ will be simply deleted later by the computation of the union

13
of deformed A and deformed B.
Figure 10 shows two examples of interval composition in the
fusion case. The result of such a fusion is shown in Figure 1, when

all rays were treated.

A: interval occupied by object A (in green) along the ray

B: interval occupied by object B (in red) along the ray

U: interval occupied by A Υ B (light blue)

F: interval occupied by free space (purple)

S: interval occupied by shared volume ( A Ι B )

T: Transport of the shared volume in the free space

C: fused object (dark blue)

Figure 10: Two examples of interval composition in the case of the fusion operator.

Shaded triangles denote surfaces at which the ray from H exits volume A (green) and

volume B(red). V is the vertex of A which is considered and the only one which will be

displaced. We also show the displacement of V to V' . In case (a) the shared volume is

smaller than the free space. In case (b) it is bigger than the free space; the difference

between the shared volume and the volume of free space already used is transported to the

next available free space interval.

In general we keep the same graph for A and B, but simply the locations of the
vertices are displaced. An exception occurs when there are self-intersections. Self-
intersections are possible as we deal with general surfaces as illustrated in figure
11. The problem of self-intersection is solved using the intersection procedure

14
explained in 3.4 (for A intersecting B). We compute the intersection curves and
produce the modified graph of A (or B), which includes this curve, and delete all
inside polygons of A (or B).

(a) (b) (c) (d)

Figure 11. Procedure used in the case of self-intersection.

(a) input object A and B,

(b) positioning of B and H around A for a future fusion

(c) deformation of A and B showing the connected outside surface (in A)

(d) internal polygons of the self-intersection volume are eliminated

It is interesting to note that the fusion of A and B can have a topology which differs
drastically from those of A and B.

3.4 Construction of the Intersection Between Deformed A and B

Figure 12. One level of subdivision of an intersecting triangle (red) and corresponding

subdivision for neighboring ones (green).

Object C is the union of deformed A and deformed B. The technique used is classical,
and based upon [20], [24].

15
In order to obtain a more precise fusion, refining the intersection zone might be useful.
We first subdivide the intersecting triangles. In order to avoid T-junctions (which break
the closed surface property), the neighboring triangles should be also subdivided. It is
done for the three possible schemes shown in Figure 12.

4 DIFFERENCE OPERATOR
We now propose a type of "dual" operator to fusion: given two shapes A and B,
we construct a shape C = A B such that the volume of C is equal to the volume of A
minus the volume of B. In order to do so, we authorize negative volumes (masses) with
the assumption (as in astrophysics) that negative and positive mass cannot coexist in the
same portion of space. As for the fusion case, the operation is performed with respect to
a center of fusion/difference H.
- If A and B do not intersect, then A B is simply A (with positive volume) and B
with negative volume.
- If B is inside A, it is simply the logical operator (A – B).
- If A and B intersect, we propose two different operators A infB and A supB

(which perform both the same operation in the two former situations).

The properties of inf and sup are such that:


-The result of A infB is the closest to B when the volume of the result is positive,

and the furthest from A when the volume of the result is negative (as illustrated
in Figure 13).
-The result of A supB is the furthest from B when the volume of the result is

positive and the closest to A when the volume of the result is negative (as
illustrated in Figure 15).
As in the fusion case, we consider small cones around H. Having considered
volume constraints, we have to solve mainly a 1D interval composition operation. We
describe the interval composition of the difference operators in sections 4.1 and 4.2 . The
3D result is obtained by applying the former interval compositions and by using the
proper boolean operation on the deformed objects in a similar manner to the fusion case.

16
4.1 Difference Operator A infB

The property of the inf operator is that the result of A infB is the closest to B

(which has a negative weight) when the volume of A is bigger than the volume of B, that
is, when the result is a positive volume. In the other case (the volume of A smaller than
the volume of B) the result obtained is the furthest from A, which also means that it is
the closest to B (algebrically).
The interval composition depending on the relative sign and positions of A and B
(there are 5 cases) is presented in Figure 13. The bars represent the intervals occupied
by A or B, and the results are shown as light blue(positive) or green(negative) intervals.
On the left, the A interval is bigger than the B interval and the result is a positive interval.
When A and B intersect, the interval A Ι B is set to zero. The rest (or part of the rest)

of the B volume and the similar A part (annihilated by B) are presented in red. On the
right of Figure 13, we treat the case when A interval is smaller than B interval; we use
the same procedure and the same color conventions. The result is presented in green
(negative volume). Figure 14 presents the result of this composition in the 2D case.

Figure 13: Interval composition rule for the construction of A infB. Positive results are

shown in blue, negative one in green. The red parts are those of A and B which were mutually

destroyed. The white parts are the parts of A or B which were either destroyed as intersecting

parts or remained untouched. The result is the closest to B when interval of A is bigger than

that of B, and furthest from A when interval of A is smaller than B.

17
Figure 14: 2D results of A infB composition.

We have to point out that in cases (1) and (5) of Figure 13, the volume transfer is
performed (in red), though A and B intervals are disconnected, but we know that
globally A volume and B volume intersect (difference with the first case of the previous
paragraph).
A infB can be visualized either when the result is positive (case of volume of A bigger

than volume of B) but also when it is negative (volume of A smaller than volume of B):
we simply visualize it in a dual (negative) subspace, so that both cases are useful for
object modeling.

4.2 Difference Operator A sup B

We are once again in the case when A and B intersect globally. This other
difference operator is such that the result of A supB is the furthest from B when volume

A is bigger than B, and closest to A when the volume of A is smaller than B (which also
means that it is the furthest from B algebraically). Figure 16 shows a 2D result of the
A sup B composition similarly to Figure 14 for A infB. The interval composition is

presented in Figure 15 (we use the same color conventions as in Figure 13) . We can
verify that the interval results are different from those of Figure 13.

18
Figure 15. Interval composition rules for the construction of A sup B. The result is the

furthest from B when the interval of A is bigger than that of B, and closest to A when the

interval of A is smaller than B.

Figure 16: 2D results of the A sup B composition.

5. OBJECT DEFORMATION BY OPERATOR COMBINATIONS


It is possible to use the three former operators , inf, sup to produce new

shape deformations which have the properties of keeping the volume constant.

5.1 The Repulsion Operator (A B) B

Given a center of composition H (as before) we define the repulsion of A by B


B
(denoted by A ) by the following operator:
B
A = (A B) B
19
As A B contains B, there is only one type of difference, which is obtained by a logical
operation. It is clear that the volume of AB is equal to that of A. The behavior of a
repulsion operator is visualized in Figure 4 (input objects (red and green) and result
(blue)). Note that the repulsion operator works independently of the choice of the type
of subtraction operator (therefore no subscript is listed above).
The behaviour of the repulsion operator can be described by the effect produced
by a hard tool B which is crushed on a piece of clay of shape A. The clay deforms itself
around the tool B. This behaviour is obtained for any shapes A and B.
The graph of the repulsion surface result is simply obtained from the graph of
A B where outside triangles of B are replaced by inside ones, inside ones by outside
ones and intersection between A and B done similarily as in A B.

5.2 The Attraction Operator (A inf B) B

The attraction of A by B (denoted by AB) is :


AB = (A inf B) B
The volume of AB is also equal to that of A. Here again, B is a deformation tool which

attracts the volume of A to itself (depending on H). An example of attraction is shown in


Figure 3 (input objects (red and green) and result (blue)).

5.3 The Separation Operator (A sup B) B

The separation of A by B (denoted by A|B) is :


A | B = (A sup B) B

B attracts the shape of A so strongly that it pulls a part of volume of A out of it. We
believe that this operator has a lot of potential in order to model cell divisions as in
genetics. An example of separation operator is produced in Figure 5.

5.4 Volume Preserving 3D Morphing

We want to produce the metamorphosis of object A to object B. As before, this


operation is performed relative to a morphing center H. We often choose H as being the
center of gravity of both A and B. If the volume of A is not equal to the volume of B

20
(suppose volume of A is bigger than volume of B), we first compute a similarity factors:

V A − VB
s=3 where V A is the volume of A and V B the volume of B
VA
and we perform the similarity of center H and facter s on A so that the volume of A
becomes the same as that of B. (We use the same basic idea as in [9, 10]).
Then we apply the fusion operation to :
C(t) = ((1 - t) 1/3 * A) ((t)1/3 * B) (2)
and we vary t from 0 to 1 (as in [16]).
This operation is such that the volume of C(t) is always equal to the volume of A
(normalized) or B. The important difference with [16] is that we can apply this morphing
for any pair of A and B shapes (see Figure 6).
If we do not normalize the objects, 3D morphing using (2) is such that the volume of
C(t) varies linearly from that of A (t=0) to that of B(t=1).

6 CONCLUSIONS AND FUTURE WORK

We proposed a new set of functions allowing modeling and animation of


deformable objects. The functions are quite easy to use. We first define a composition
center and choose two input objects. The composition is then performed automatically. It
is possible to produce animations while moving the composition center and/or the input
objects. Since the functions keep the global volume of the objects constant, resulting
animations produce an impression of realism even when the shapes of input objects are
simple.
The functions presented here require about 20 seconds (1000 polygons, 500
vertices for each input object) of CPU time to be computed on a Silicon Graphics
Maximum Impact (R10000) and about 1 minute on a Power Macintosh
(PPC604/132MHz).
Of course, a lot of work has still to be done. First, using various combinations
of morphological operators seems to be powerful. Taking into account material
properties (diffuse, ambient, specular, transparency etc.) is also important. Texture fusion

21
might also be challenging. Another direction of extension of our work is to consider not
only a composition center H, but also many of them, describing a line, a curve, or even a
surface.

REFERENCES

[1] D.R.Forsey, R.H.Bartels. "Hierarchical B-Spline Refinement" Proc. SIGGRAPH '88


(Atlanta, Georgia, Aug 1-5, 1988). In Computer Graphics Proceedings, 22, pp. 205-212.
[2] P.Borrel, D.Bechmann. "Deformation of n-Dimensional Objects" In Symposium on
Solid Modeling Foundations and CAD/CAM Applications, pp. 351-369, June 1991.
[3] B.S.Cobb. "Design of Sculptured Surfaces Using the B-Spline Representation" PhD
thesis, University of Utah, June 1984.
[4] S.Coquillart. "EFFD: A Sculpturing Tool for 3D Geometric Modeling" Proc.
SIGGRAPH '90 (Dallas, Texas, Aug 6-10, 1990). In Computer Graphics Proceedings,
24, pp. 187-196.
[5] T.W.Sederberg, E.Greenwood. "A Physically Based Approach to 2D Shape
Blending" Proc. SIGGRAPH '92 (Chicago, Illinois, July 26-31, 1992). In Computer
Graphics Proceedings, 26, pp. 25-34.
[6] C.Hoffmann, J.Hopcroft. "The Potential Method for Blending Surfaces and Corners"
In G.Farin editor, Geometric Modeling: Algorithms and New Trends, pp. 347-365,
SIAM, Philadelphia, 1987.
[7] J.F.Hughes. "Scheduled Fourier Volume Morphing" Proc. SIGGRAPH '92 (Chicago,
Illinois, July 26-31, 1992). In Computer Graphics Proceedings, 26, pp. 43-46.
[8] S.Coquillart, P.Jancene. "Animated free-form deformation: An interactive animation
technique" Proc. SIGGRAPH '91 (Las Vegas, Jul 28 - Aug 2, 1991). In Computer
Graphics Proceedings, 25, pp. 23-26.
[9] A.Kaul, J.Rossignac. "Solid-interpolating Deformations: Construction and Animation
of PIPs" In Proc. Eurographics '91, pp. 493-505, September 1991.
[10] J.R.Kent, W.E.Carlson, R.E.Parent. "Shape Transformation for Polyhedral
Objects"Proc. SIGGRAPH '92 (Chicago, Illinois, July 26-31, 1992). In Computer

22
Graphics Proceedings, 26, pp. 47-54.
[11] T.W.Sederberg, S.R.Parry. "Free-Form Deformation of Solid Geometric Models"
Proc. SIGGRAPH '86 (Dallas, Texas, Aug 18-22, 1986) In Computer Graphics
Proceedings, 20, pp. 151-160.
[12] R.Szeliski, D.Tonnesen. "Surface Modeling with Oriented Particle Systems" Proc.
SIGGRAPH '92 (Chicago, Illinois, July 26-31, 1992). In Computer Graphics
Proceedings, 26, pp. 185-194.
[13] B.Wyvill, C.McPheeters. "Animating Soft Objects" In The Visual Computer,
volume 2, pp. 235-242, 1986.
[14] B.Wyvill, J.Bloomenthal, T.Beier, J.Blinn, A.Rockwood. "Modeling and Animating
with Implicit Surfaces" In Siggraph Course Notes, volume 23, 1990.
[15] G.Wyvill, C.McPheeters, B.Wyvill. "Data Structure for Soft Objects" In The Visual
Computer, volume 2, pp. 235-242, Springer Verlag 1986.
[16] P.Decaudin, A.Gagalowicz. "Fusion of 3D shapes" In Fifth Eurographics Workshop
on Animation and Simulation, Oslo, Norway, September 1994.
[17] J.Serra, “Image Analysis and Mathematical Morphology”, Academic Press, New
York 1982.
[18] E. L. Lloyd, "On Triangulations of a Set of Points in the Plane", Proc. 18th Annu.
IEEE Sympos. Found. Comput. Sci., pp.228-240, 1977.
[19] T. Nishita and E. Nakamae, "A Method for Displaying Metaballs by using Bezier
Clipping, Computer Graphics Forum, "Eurographics '94 Conference issue", volume 13,
Eurographics, Basil Blackwell Ltd, pp.271-280.
[20] C.M.Hoffmann, "Geometric and Solid Modeling. An Introduction", Morgan
Kaufmann, California, 1989.
[21] A.Lerios, C.D.Garfinkle, M.Levoy "Feature-Based Volume Metamorphosis", Proc.
SIGGRAPH '95 (LosAngeles, California, Aug 6-11, 1995). In Computer Graphics
Proceedings, pp.449-456.
[22] Takushi Fujita and Katsuhiko Hirota and Kouichi Murakami, "Representation of
Splashing Water Using Metaball Model (in Japanese)", Fujitsu volume 41, pp.159-165,
1990

23
[23] Jianhua Shen and Daniel Thalmann, "Interactive Shape Design Using Metaballs and
Splines", Implicit Surfaces '95, 1995.
[24] D.H.Laidlaw, W.B.Trumbore, J.F.Hughes, "Constructive Solid Geometry for
Polyhedral Objects", Proc. SIGGRAPH'86 (Dallas, Texas, Aug 18-22), pp.161-170.
[25] S.D.Roth, "Ray Casting for Modeling Solids", Computer Graphics and Image
Processing volume 18, pp.109-144, 1982.
[26] K.Weiler, P.Atherton, “Hidden Surface Removal Using Polygon Area Sorting”,
Computer Graphics volume 11, pp.214, 1977.

24
Appendix: Relation Between A inf B and A sup B

It happens that both operators are dual (as erosion and dilatation in
mathematical
morphology). If we take the dual of A inf B, that we denote A inf B, (it corresponds to
simply changing the sign of the volume), we see that A inf B, when B < A, (and when
the sign of the result is changed) corresponds exactly to the case B sup A, A < B.
Similarily A inf B, A < B corresponds to B sup A, B < A (compare Figures 13 and 15).

This way we obtain the very interesting duality relations:

A inf B=B sup A

A sup B=B inf A

The dual of a shape (sign volume inversion) can be also interpreted as shape (as there
is no difference between inf and sup), so that we have :

A inf B=B sup A


A sup B=B inf A

These relations mainly express the fact that if you visualize a negative volume coming
from the difference between two shapes A and B, this volume looks the same as the
positive volume of B minus A.

25

You might also like