ArticlePDF Available

Growth Simulation of Digestive System Using Function Representation and Skeleton Dynamics.


Abstract and Figures

The embryologists found the realistic human organ models and animations of development necessary for their studies. The main idea of this paper is a methodology producing a realistic animation of development by combining the L-system growth model with a physical model. The skeleton of a digestive system is a line skeleton with a tree structure. Therefore, its growth in length can be simulated by an algebraic L-system which controls the growth of skeleton segments. The global deformations of the skeleton due to the gravity and the lack of space in abdominal cavity are simulated by a dynamics of skeleton segments. The movements that have no physical reasons such as looping are implemented by external forces applied on links controlling the organ movement in space. The convolution surfaces generated by skeletons define the final shape for growth animation. The entire system consists of two steps: First, the actual number of skeleton segments and the length of each skeleton segment is calculated from growth functions, second, the skeleton deformation in space is updated based on dynamics.
Content may be subject to copyright.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
International Journal of Shape Modeling
World Scientific Publishing Company
Computer Graphics Laboratory, Software Department, The University of Aizu
Ikki-machi, Aizuwakamatsu-shi, Fukushima, 965 8580 Japan
Received (Day Month Year)
Revised (Day Month Year)
Accepted (Day Month Year)
Communicated by (xxxxxxxxxx)
The embryologists found the realistic human organ models and animations of develop-
ment necessary for their studies. The main idea of this paper is a methodology producing
a realistic animation of development by combining the L-system growth model with a
physical model. The skeleton of a digestive system is a line skeleton with a tree struc-
ture. Therefore, its growth in length can be simulated by an algebraic L-system which
controls the growth of skeleton segments. The global deformations of the skeleton due
to the gravity and the lack of space in abdominal cavity are simulated by a dynamics
of skeleton segments. The movements that have no physical reasons such as looping
are implemented by external forces applied on links controlling the organ movement in
space. The convolution surfaces generated by skeletons define the final shape for growth
animation. The entire system consists of two steps: First, the actual number of skeleton
segments and the length of each skeleton segment is calculated from growth functions,
second, the skeleton deformation in space is updated based on dynamics.
Keywords: Functional representation; Growth animation; Artificial life.
1991 Mathematics Subject Classification: 22E46, 53C35, 57S20
1. Introduction
The shape and structure of a human embryo digestive system change significantly
over a short period of time. It bends, twists and creates many loops during the
development. Embryologists therefore strive to visualize the movement and shape
changes over time. In this paper we will discuss how to model the outer shape and
the shape metamorphosis during the growth of some human embryo organs, partic-
ularly in the digestive system. Controlling the shape metamorphosis between two
On leave from Department of Computer Graphics and Image Processing, Faculty of Mathematics,
Physics and Computer Science, Comenius University, Bratislava, Slovakia.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
2Roman ˇ
mesh objects become a problem when they have different topology and geometry.
To create the realistic-looking human organ models and to generate the animations
demonstrating the growth process require an appropriate methodology. The aim of
this paper is to present a methodology based on the functional representation and
convolution surfaces 1,2.
Durikoviˇc et al. 3have developed a system in which organs and the environ-
ment are separate processes, information from each being transmitted using com-
munication modules. The methodology, which is based on algebraic L-systems, was
demonstrated on a growth model of human embryo stomach. Method requires set-
ting many initial parameters, not an easy task to do for the complex growth motions
and bindings of a digestive system. The proposed work in this paper significantly
decreases the effort required to design of L-systems which can simulate the dynamic
growth of a digestive system.
Using implicit surfaces generated by skeletons for growth animation of smooth
surfaces seems to be a very good idea, since they can be stored in a very compact
Semi-automatic reconstruction methods based on implicit iso-surfaces generated
by skeletons that can be used for noisy scattered points of medical organs were
studied by Tsingos et al. 4. The basic idea of their method is the minimization of
the distance between the data point and iso-surfaces, during a series of skeleton
refinements. Their skeleton consists of disconnected data points while we would
prefer a continuous skeleton which suites the animation purposes better.
Several attempts have been made using computer graphics to visualise biological
growth. Methods for modeling botanical trees were developed to generate natural
tree images 5,6. These methods directly model the growth process using statistical
data, such as the angle between trunk and branch. An L-system formalism was
proposed by Lindenmayer 7, and the method has been used as a general framework
for plant modeling. An L-system with several extensions was extensively described
by Prusinkiewicz and Lindenmayer 8, and the extensions allow for such factors as
context-sensitivity, random variations, and branch cutting. An expansion of the L-
system to handle the interaction between plants and their environment has also been
developed 9,10. A recently proposed method considers the plant and its environment
as two separate models with information flowing between them in both directions 11.
Another interesting extension of L-systems is a behavioural L-system capable of
animation the autonomous actors by external tactile and behavioral forces 12.
What are our requirements for the growth animation? First, the object should be
capable of animating in other words it should have a control skeleton with intuitive
shape representation during the growth. Second, shape changes and movements
should be smooth i.e. shape function as well as the skeleton elongations and de-
formations should have a continuous first derivative. Lastly, the movement should
correspond to real growth as is assumed by the community of embryologists.
The L-system is an excellent method for modeling botanical growth, as demon-
strated in many publications 13,11. However, the method cannot be directly applied
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 3
to human organ development. Trees or plants monotonically increase their length
and thickness of branches. In contrast, the growth process of human organs is more
complicated. In the early stages of human organ development, a number of signif-
icant changes occur, making it very difficult to simulate organ growth. Generally,
organs have no tree structure and their growth is not a monotone process. For ex-
ample, in stomach and intestine development, different combinations of rotation,
bending and twisting take place. These difficulties are unique to the modeling of
human organ growth; they are not encountered in the modeling of tree or plant
growth. Although, attempts to bend the plant leaves and apexes have been made
in plant formation 14, they do not allow the bending transformation of the entire
plant structure.
We propose a method that takes the advantage of positional changes in time to
efficiently control the growth of organ skeleton. To simulate the complex bends of
small and large intestines we propose to use the spring model of a skeleton. The rest
length of each spring increases (decreases) according to the growth functions. The
dynamic simulation then determines the current position of each skeleton segment
(spring) in space while taking into account the space constraints and user-defined
external forces. This approach gives the user ability to control such growth move-
ments which cannot be explained by the physical dynamics of neighboring organs.
The structure of the paper is as follows. First, we describe the biological and
physiological development of the intestine system. Section 3, defines the skeleton,
describes the skeleton growth based on L-systems and defines the growth functions.
Next section describes the skeleton dynamics using a spring model. Section 5, shows
how to create the shape from skeleton using the skeleton-based convolution cylin-
ders. Function representation is used to handle the blending of physiological parts.
Next, section show the results followed by conclusions.
2. Biological Development of the Intestine System
Development of the midgut is a complicated series of events generally involving
three phases herniation, reduction and fixation 15.
(i) Herniation. The development of the primary intestinal loop is characterized by
rapid elongation. As a result of the rapid growth and expansion of the liver,
the abdominal cavity temporarily becomes too small to contain all the intestinal
loops, and they enter the extraembryonic coelom. Coinciding with growth in
length, the primary intestinal loop rotates counterclockwise approximately 90,
shown in left of Fig. 1.
(ii) Reduct ion. The intestine returns rapidly to the abdomen at 9 weeks while con-
tinuing to rotate about remaining 180, as shown at the center of Fig. 1. The
large intestine likewise grows considerably in length and it descends on the right
side of the abdominal cavity.
(iii) Fixation. At the beginning of the 6th month and continuing until after birth, the
colon comes to adopt its final position, shown on the right of Fig. 1.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
4Roman ˇ
loops of small
Fig. 1. The major development stages of fetal gut at 28 (herniation), 70 (reduction), and 120
(fixation) days of development.
2.1. Physiological Development of the Intestine System
Every organ is built up from a huge number of cells, each growing with different
properties, such as speed and direction of growth. Since, it is not worth of effort to
simulate the entire organ as a cellular structure we have to reduce the number of cells
without compromising to any great degree such organ properties as volume, surface
area, topology, speed of growth in specific areas, and the like. To approximate
the shape of an organ while considering the speed and direction of cell growth
at the same time, we group the entire set of cells into a number of cylindrical
bunches (clusters). Thus, the skeleton of the organ is defined by a chain of linear
segments passing through the cluster centers, see Fig. 2. Organ growth can then
be modeled by the growth of the line skeleton, and variations in shape thickness
during the growth process can be captured by variations in cylinder size. When a
cylinder changed in size, it was understood that the organ cells grew in the directions
emanating from the cluster center. Similarly, when the skeleton segment underwent
changes in length, it was understood that the cells included in two adjoined clusters
grew in directions parallel to this segment.
Taking into account the above statements, the organs were divided into physio-
logical parts having different speed and direction of growth to suite the animation
purposes. The physiological parts of the intestine system are shown in Fig. 3 and
marked I, II and III for stomach, marked IV for small intestine, marked VII for
large intestine, marked V for appendix, and marked VI for vitteline duct.
2.2. Measurements of Shape Changes
Several statistical measurements have been made to specify the shape changes which
serve as a starting point for the design of growth functions. Measurements should
be taken for every physiological part, shown in Fig. 3, at every major developmental
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 5
Fig. 2. Skeleton of the organ and the clusters.
Fig. 3. Physiological parts represented with line skeleton.
stage. We obtained several photographs of mouse and human embryos from Medical
School of Hiroshima University, Japan. The atlas of embryology 15 contains hand-
drawn pictures and photographs of human embryo organs ordered by age. For the
purpose of this study the human embryo models with age from range of 28 - 113
days were used. The pictures were scanned, stored in binary form and measured.
Both the drawing of chain skeletons and measuring of photographs were done by
hand. While refering to Langman’s embryology 15 we collected data that are shown
in Table 1. For each available embryo age (developmental stage) of large intestine its
mean thickness and skeleton length are listed. Statistical data for a human embryo
stomach have already been summarized by ˇ
Durikoviˇc et al.3.
The organs, at this preprocessing stage, were divided into physiological parts
having different speeds and directions of growth to suite the animation purposes.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
6Roman ˇ
Table 1. Shape measurements of large intestine, physiological part no. IV.
Embryo age (day) Length (mm) Thickness (mm)
28 2.76 0.30 herniation
49 15.58 0.45
58 19.49 0.52
70 21.77 0.61 reduction
83 24.04 0.82
113 28.62 1.00 fixation
3. Skeleton
The topology of the digestive system is expressed by a tree structure and the devel-
opment of the tree-like structure can be easily modeled with an algebraic L-system
14,3. An L-system formalism was proposed by Lindenmayer 7, and the method has
been used as a general framework for plant modeling. The L-systems are extended
to by introducing continuous global time control over the productions, stochas-
tic rules for the capture of small variations, and explicit functions of time used to
describe continuous aspects of model behavior, in addition to differential equations.
In some cases it is convenient to describe continuous behavior of the model using
explicit functions of time rather then differential equations. For example, global
shape transformations varying over time require a large and complicated system of
differential equations, while only few explicit functions of time are sufficient for the
description of these transformations.
3.1. L-system and Turtle Graphics
L-system is a rewriting system based on an alphabet,anaxiom and a set of rewriting
rules or productions that rewrites the modules according to the production rules at
each iteration step. The rewriting process is initiated by an axiom, for example
The production that A(x) should be changed to the module B(x+ 1) with support-
ing branch A(x) and condition x<4 is represented as
p1:A(x):x<4B(x+ 1)[A(x)].
Consequently, the first derivation step may have the form:
A(1)B(3) B(2)[A(1)]B(3).
Modules in the derived string can be related to structural elements in the growing
form. To create a graphical model, the derived string of modules is scanned sequen-
tially and modules are interpreted as commands to a turtle. At any point within
the string, the turtle state is characterized by a position Pand a coordinate system
Hthat indicates the turtle’s up,theleft, and the heading direction, see
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 7
Fig. 4. The coordinates of these vectors can be accessed using query modules of the
form ?U(x, y, z). Some modules have reserved meaning, for example modules +(θ)
and &(θ) rotate the turtle counter-clockwise around vector Uand L, respectively.
Fig. 4. Local coordinate system (
H) and the rotation syntax.
3.2. Skeleton Growth
From now on we will assume that the line segment from skeleton can be represented
by a module Fwith two parameters land τ, which indicate its current length and
local time. The following L-system table in Fig. 5 shows an example of the growth
of a line skeleton with omitted branches. It describes the behavior of the apical
segment. Segments will grow within the local time interval [τs
e]. The growth
table Skeleton {
F(l, τ ):
if l<l
th &τ[τs
solve dl
dt =glmax,p (l),
dt =1 (a)
if l=lth &τ[τs
produce F(kl, τ )F((1 k)l, τ)(b)
Fig. 5. L-system table controlling the elongation of skeleton.
of segments causes the first order continuity of the entire skeleton length. Upon
reaching the threshold length lth, the segment subdivides into segment Fof length
kl and a shorter apex with length (1 k)l, given by production Fig. 5b. The logistic
growth function glmax,p(l) describes the increasing length of segment according to
a global time t(see Fig. 5a).
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
8Roman ˇ
The recursive application of L-system results in a string of symbols where each
symbol represents a linear skeleton segment and parameters determine its length.
The total number of symbols is the same as that of skeleton segments.
3.3. Skeleton Global Bending
Let us consider the problem of global bending of a tubular shape defined by its
central skeleton during its growth over time t.Letsdenote the arc-length distance
of a skeleton point from the origin of this skeleton then the skeleton at time tican be
approximated by a parametric curve Pi(s), Pi:R+→R
3. In our implementation
we used a cubic interpolation spline with the global parameter s.
Assuming that several key skeletons for a given time ticks t=t0,...,t
known and that they are approximated with curves Piwe can define the function
P(s, T ) that will interpolate the set of curves Piin time domain. We can use the
cubic interpolative spline for this step, too.
Thus function P(s, t):R+×R
3defines the shape of a skeleton along
the spatial coordinate sat time t. The explicit function Pcan then be used in
the L-system in such a way that the heading direction His always identical to the
tangent vector of parametric curve P(s, T ) for given sand T.
The following L-system table in Fig. 6 shows an example of the skeleton bending
according to the explicit function of time. The initial structure consists of apex A
defined in axiom. The parameter sof the apex represents the current position of
the turtle, measured in arc-length distance from the origin, parameters tand τare
the global system time and age of the module, respectively. The production rule
(a) creates an organ axis as a sequence of cylindrical segments of length ∆s.Apex
grows in length and generates segments Fwith length ∆sduring the time interval
e]. The process will stop when the actual length sof all segments is equal to
the length lof the skeleton parametric curve. Rotation modules +ΩUand &ΩL
in this production depend on current turtle position and global time t, they are
followed by the query modules ?Land ?Ufor future calculation of angles.
Production rule (a) from SkeletonBending table in Fig. 6 will be repeated re-
cursively till local time is equal to τewhile table AngleCalculation will run as a
last step just before the graphical representation. Here the rotation angles are cal-
culated from the tangent vector of function Pat turtle position sand time t(line
b). Projection of tangent vector on to the current turtle Uvector gives the rotation
angle around Laxis after conversion to radians (lines c and d). Similar idea is used
for module &ΩUgiving rotation around axis U, see Fig. 7.
After application of both tables the turtle heading direction His always in
the direction of the tangent vector to the arc-length parametric curve of function
P(s, T ) at current time T. Parameter ∆sshould be set such that we have enough
cylindrical segments to approximated the high curvature bends.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 9
table SkeletonBending {
Axiom: A(0,0,0)
A(s, t, τ ):
if sl&τ[τs
produce +ΩU(s,t)?L(lx,l
z)F(∆s, τ )A(s,t)
table AngleCalculation {
#define K=57.29 /* radians to degrees */
&ΩL(s, t)>?U(ux,u
∂x (s, t),P
∂y (s, t),P
∂z (s,t)) /* tangent vector */ (b)
produce &(∆ΩL)(d)
+ΩU(s, t)>?L(lx,l
∂x (s, t),P
∂y (s, t),P
∂z (s, t)) /* tangent vector */
produce +(∆ΩU)
Fig. 6. L-system table controlling the bending of skeleton in time.
t’ s=l
Fig. 7. Framing the skeleton curves with ∆ΩUaround axis Uand angle ∆ΩLaround axis L.
3.4. Growth Functions
Continuous processes such as the elongation of skeleton segments, and growth of
cell clusters, over time can easily be described by the growth functions. Growth
functions can be then included into algebraic L-systems as explicit functions or
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
10 Roman ˇ
differential equations. Growth is often slow initially, accelerating near the maximum
stage, slowing again and eventually terminating. A popular example of the growth
function 16 is the logistic function which is a solution to the following differential
∂t =p1r
rmax rgrmax,p (r).(1)
Logistic function monotonically increases from initial value r0to rmax with growth
rates of zero at start and end of time interval [T0,T]. It is an Sshape function with
a steep controlled by a parameter p.
It is well-known when the developmental processes begin and terminate in the
case of normal development of organs, their growth follows specific time intervals
for different individuals quite accurately, making the use of growth functions with
explicit dependence on time reasonable for the biological modeling of organ growth.
Therefore, the growth function is designed such that it approximates the collected
statistical measurements from Table 1.
Length. We assume that skeleton elongation is given by the logistic function,
in other words it is a solution of first order differential equation Eq. 1, see Fig. 5a.
Next, we need to find the initial condition and parameters rmax,pof function g
such that the solution of Eq. 1 approximates the measured data with the smallest
error. The length of a large intestine is found by numerical fitting as a function l(t)
which is a solution of the following differential equation
∂t =1
where g28.62,0.07(l) is the logistic function and l(28) = 2.76 is the initial condition.
The initial condition means that the length of large intestine at the time of its
creation is 2.76 mm. Left graph in Fig. 8 shows the growth function l(t). Since, the
maximum number of skeleton segments corresponding to the large intestine is N,
the growth per segment is given after dividing by N.
Similarly, the growth functions are derived for each physiological part of our
digestive system. All growth functions defined by differential equations are calcu-
lated by Euler explicit integration on fly during the recursive derivation of L-system
string that models the skeleton growth.
4. Skeleton Dynamics
The L-system will calculate the number of segments their length, orientation and
thickness but it cannot solve the problem of self collision. The problem, discussed
herein, is for a given number of segments with given initial position, length and
thickness to find the position and orientation of skeleton segments in space due
to constraints. The dynamics of the spring system in the external force field can
be used to find the global deformation of the skeleton due to the gravity. The
dynamic system uses the damped spring forces with predefined rest length of a
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 11
0 20 40 60 80 100 120
t [days]
length [mm]
0 20 40 60 80 100 120
t [days]
width s [mm]
Fig. 8. Graphs of growth functions. Left) Total length of large intestine in time. Right) Change of
width parameter sin time, see Eq. 6.
Reference shape from
Spring model Shape
Displacement forces
Fig. 9. Two linear segments represented as spring system with thickness.
spring, spring forces minimizing the shape changes from the initial reference shape,
bending forces, collision response forces, and external forces such as gravity force
and user interaction force, see Fig. 9. The definitions of all the forces used in our
system can be found in 17 . The proposed dynamic system tend to minimize its
bending energy and the resulting shape will be close to the initial shape.
Space constraints applied on a spring system can handle the deformations due
to the lack of space in abdominal cavity and self collision. The collision is han-
dled by considering the thickness of each segment calculated by the L-system. The
other known movements can be implemented by external forces applied on springs
controlling the organ movement in space. For example, the looping during the her-
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
12 Roman ˇ
niation shown in first row in Fig. 12 can not be simulated just with space constraints
it should be defined manually as external force defined in a script before the simu-
lation process.
The size of the abdominal cavity grows during the organs’ growth. The cavity
growth is modelled by key frame animation where the key shapes are modelled for
six developmental stages of the embryo.
The entire system consists of two steps: First, the actual length of skeleton
segment is calculated from L-system with growth functions, second, the skeleton
deformation in space is updated based on spring dynamics. From the above discus-
sion we know that the L-system with growth functions will give us the string of
skeleton segments with length parameter and the rotation modules representing the
segment orientation in space. The skeleton dynamics is interconnected with growth
functions as follows:
First, we make a turtle representation and create a spring corresponding to each
line segment. Initial length and rest length of all springs is equal to the length of
a segment calculated by L-system. This way we created the initial physical model
with the spring equation of motion described in 17.
Second, the user predefined movements and space constrains are added into the
spring system.
Third, the spring dynamics is recalculated using a simple explicit Euler inte-
gration method. After few steps of numerical integration we get the springs rested
with the updated length and position due to the external forces.
Fourth, after an optimum has been found we must pass the new length and
orientation of each segment back to the L-system string. After inserting new pa-
rameters in the L-system we can run the derivation step of the L-system again and
the whole process repeats.
A single derivation step of the string by L-system is followed by 10 minimization
steps of the spring model. The physical parameters of the springs such as stiffness
and damping are fixed, as well as size of simulation step. The user normally needs
to control the process by the growth functions while he can correct the process by
the external force.
5. Shape Representation for Growth Animation
The polygonal models can not capture the development of such complex process as
the growth of the digestive system. So far, we have created the skeletons of different
physiological parts, we need to blend them together to get the smooth shapes. Even
though, the convolution surfaces provide nice blending between several parts of
organs, the control of the blend shape is very limited. The functional representation
is a tool that generalizes the set theoretical operations and generates full range of
shapes from simple object union to smooth blending. The animation of such surfaces
follow the changes smoothly, even if the topology changes. Because of this advantage
the functional representation is an excellent tool when the shapes to be modelled
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 13
are from the natural world. We discuss herein the shape modeling based on skeleton
calculated from dynamic simulation and L-system growth.
5.1. Function representation
The following material is a reiteration from 1,2. Let us consider closed subsets of
3-dimensional Euclidian space E3with the definition:
where fis a real continuous function defined on E3. The above inequality is called
a function representation (F-rep) of a geometric object and function fis called
the defining function. In three-dimensional case the boundary of such a geometric
object is called implicit surface. The set of points Xi(x1,x
3)E3,i=0, ..., N
associated with Eq.(3) can be classified as follows:
f(Xi)>0ifXiis inside the object,
f(Xi)=0 ifXiis on the boundary of the object,(4)
f(Xi)<0ifXiis outside the object.
5.1.1. Blending Union Operation
Intuitively the blending union operation between two initial objects from the set of
function representations is a gluing operation. It allows us to control the gluing type
in the wide range of shapes from pure set-theoretic union to convolution like sum-
mation of terms. After blending union operation between two subjects defined by
functions f1and f2the resulting blended object has the following defining function:
where the absolute value a0defines the total displacement of the bending surfaces
from two initial surfaces. The values a0>0anda1=a2>0 are proportional to
the distance between blending surface and the original surfaces defined by f1and
f2, respectively.
5.1.2. Skeleton based Defining Function
Convolution-based implicit modeling primitives developed in 18 were incorporated
in Hyper-Fun project 19. Let us consider from now on the defining function given
by the convolution operator between a line skeleton segment and a kernel 18,20 , i.e.
the convolution cylinder defined as
(1 + s2r2(v))2dv T, (6)
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
14 Roman ˇ
where r=d(X, ri(v)) is the distance from the point XE3to the nearest point
on the skeleton primitive ri(v). The coefficient scontrols the width of the kernel.
The integration is performed over the volume, Viof the skeleton primitive. The
kernel function under the integral allows analytical calculation of field function
fi(X) defined by skeleton line segment.
A convolution surface is implicitly defined by a potential function fobtained
via convolution operator between a kernel and all the points of a skeleton. The
convolution surface thus obtained defines a tubular shape.
5.1.3. Plus Operation between Convolution Cylinders
Convolution surfaces build from complex skeletons can be evaluated individually by
adding the local defining functions for each primitive, because convolution operator
is linear. With Nskeleton primitives the above statement can be written as the
following modeling equation in an implicit form:
where fiis the defining function of convolution cylinder with i-th skeleton primitive
and Tis the iso-potential threshold value, see central image of Fig. 10.
5.1.4. Blending Union of Convolution Cylinders
The effect of blending union operation is demonstrated by two object primitives
whose skeleton consists of two line segments one vertical and the other one diagonal,
see Fig. 10 left. Note, that the left cylinder has a smaller radius than the one on
right side. Considering four line segments as a single skeleton of geometric primitive
results in the thick shape shown in center image. The right image shows a simple
union operation between two convolution primitives. The sequence of shapes shown
Fig. 10. Union operations. Left: Two skeleton primitives, center: joining the skeletons into a single
one it corresponds to plus operation between convolution cylinders, right: union operation of
convolution surfaces.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 15
Fig. 11. From left the blending union operation using ai=0.01, ai=0.07, ai=0.3, ai=0.5, and
ai=0.7; i=0,1,2.
on Fig. 11 are the blending union operations between two parallel geometric primi-
tives. The geometric primitives and their skeletons do not change but the blending
parameters used to blend them are different for each image. In orderer from left
side the used parameters are ai=0.01, ai=0.07, ai=0.3, ai=0.5, and ai=0.7,
respectively for i=0,1,2.
Parameter aican be used to localize the blending operations therefore, in the
case where the shape and size of geometric primitives must be preserved the blend-
ing union operation with different parameters a0,a1,anda2is a good choice. On
the other hand when the blending shape is the main concern the convolution plus
operation should be used, according to our experience. When both the shape of ge-
ometric primitives and that of blending are important the small values of blending
union parameters along with the localization of the blending area is a good choice.
The F-rep blending union operation has similar advantages as simple convolution
union with respect to minimizing unwanted bulges.
5.2. Shape from Skeleton
The measured organ models discussed in Sec. 2 were divided into physiological
parts, at preprocessing stage, having different speed and direction of growth to
suit the animation purposes. A single physiological part has the shape defined by
the skeleton based F-rep. The skeleton of the physiological part is calculated from
L-system and the dynamic system.
We represent the smooth shape of the digestive system in a compact way by
piecewise linear skeleton and locally defined convolution cylinders along each linear
segment of a skeleton. Thus, the resulting smooth tubular surface is represented by
a real function as the blend union operation between many convolution cylinders.
The shape of a convolution surface can be varied in several ways: by varying the
skeleton, by varying the thickness of convolution cylinders with parameter sfrom
Eq. 6, and by the iso-potential threshold value T. For example, the small and large
intestines monotonically increase their thickness which can be modeled with the
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
16 Roman ˇ
monotonically decreasing parameter sas seen for the six developmental stages of
intestine in Table 2.
Table 2. Convolution parameters for thickness of small and large intestine.
Embryo age (day) Small Large
sTs T
28 0.45 0.2 0.69 0.25
49 0.42 0.2 0.67 0.25
58 0.40 0.2 0.63 0.25
70 0.35 0.2 0.60 0.25
83 0.32 0.2 0.57 0.25
113 0.29 0.2 0.54 0.25
Thickness. As was already mentioned, the increasing thickness of convolution
cylinders distributed along the skeleton segments is given by monotonically de-
creasing the width parameter sin time as shown in Table 2. We will transform
the solution of Eq. 8, ˆs, that monotonically increases from 0.01 to 0.16 over the
time interval [28,120] into a monotonically decreasing function sby Eq. 9, where
smax =0.7:
∂t =g0.16,0.003s),ˆs(28) = 0.01 (8)
s(t)=smax ˆs(t).(9)
Function s(t) is the growth function controlling the thickness of large intestine with
a good approximation of data from Table 1. The graph of the growth function over
the time is shown on right of Fig. 8.
6. Results
The largest (oldest) model of our digestive system has about 900 springs while
running 10 iteration steps of the Euler integration method during the dynamic
simulation, the simulation for this model on a Celeron 1.3GHz takes less then 3s.
Please, note that most time consuming step is the parsing of long L-system strings,
requiring 20 min for the digestive model of 120 days old embryo.
Shown in Fig. 12 are several frames from a generated animation simulating
digestive growth based on the proposed L-system using the above growth functions.
The environment forces and self collision were handled by the spring representation
of results obtained from L-system. The shape of the digestive system shown in
this figure undergoes global bending transformation and deformations resulting
from gravity, animator intervention (looping process), and collision. Some of the
intermediate shapes in Fig. 12 have disjoined elements due to aliasing in the implicit
polygonizer that has difficulties to find a mesh for long thin structures.
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 17
7. Conclusions
We have presented a method for simulation of the growth of human embryo diges-
tive system. The method uses the shape calculated based on F-rep using iso-surfaces
generated by skeleton segments, which provides a smooth and compact representa-
tion of the surface usable for complex animations. We propose a method in which
the organ growth and global bends are separate processes. The differential growth
functions are introduced for an algebraic L-system which efficiently control the
elongation of skeleton segments. The skeleton representation is transformed into
the spring model within the physical environment which allows us to model the
global bending of intestine colon, by user definition of external forces, and collision
The user can guide the growth animation by the direct introduction of con-
straints or by growth parameters, thus benefiting from his initial knowledge of the
growth motion. All F-rep models that are different on each animation frame have
been rendered with a POV-Ray 21 ray tracing program and the F-rep polygonizer
developed by international group under HyperFun project 2,19.
Other organs can be modelled with this system as well, the simplest examples
being the tree-like structure organs. Unfortunately, the development of the blood
vessels and nervous system is not understood very well by embryologists. Never-
theless, we are using this current system to model the human embryo brain and its
growth. In the future we plan to use this methods to model the growth of human
embryo heart. This system is not limited to tree like structures. With the trivial
extension of the L-system to parse the cycles in the skeleton we can model the
loops, too. A possible extension, currently under development, is to use the skele-
tons consisting of triangular patches which should give us the opportunity to define
the flat shapes like pillow.
Author wishes to thank the embryologists Prof. Mineo Yasuda and Dr. Akinao G.
Sato for their advice and for providing the sample data. The author would like
to thank the reviewers for their valuable comments that helped to improve the
paper and to Silvester Czanner from Comenius University, Slovakia for rendering
the images with POVRay ray-tracing program programmed by POVRay Team.
This research was sponsored by grants from the Fukushima Prefectural Foundation
in Japan for the Advancement of Science and Education.
1. A. Pasko, V. Adzhiev, A. Sourin and V, Savchenko, “Function representation in geo-
metric modelling: concepts, implementation and applications”, The Visual Computer.
11:8 (1995) 429–444.
2. V. Adzhiev, R. Cartwright, E. Fasett, A. Ossipov, A. Pasko, V. Savchenko, “Hyper-Fun
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
18 Roman ˇ
Fig. 12. Development of a human embryo digestive system with proposed method taking into ac-
count the skeleton dynamics and growth functions in algebraic L-system. Function representation
is used to define a smooth shape. Indicated stages from left to right represent 28, 34, 40, 49, 52,
58, 64, 70, 76, 79, 83, 94, 101, 107, 110, and 113 days of animation sequence.
project: a framework for collaborative multidimensional F-rep modelling”, Proceedings
of Implicit Surfaces 99, Workshop, Bordeaux, France, September 13-15. (1999) 59–69.
3. R. ˇ
Durikoviˇc, K. Kaneda and H.Yamashita, “Animation of biological organ growth
based on L-systems”, Computer Graphics Forum. 17:3 (1998) 1–13.
4. N. Tsingos, E. Bittar and M. Gascuel, “Implicit Surfaces for Semi-Automatic Medical
Organ Reconstruction”, Computer Graphics: Developments in Virtual Environments
(Proceedings of C om puter Graphics International 95, May 1995 UK). (1995) 3–15.
5. M. Aono and T. L. Kunii, “Botanical tree image generation”, IEEE Computer Graphics
and Applications. 4:5 (1984) 10–34.
6. J. Bloomenthal, “odeling the mighty maple”, ACM Computer Graphics. 19:3 (1985)
7. A. Lindenmayer, “Mathematical models for cellular interaction in development, Parts
IandII,Journal of Theoretical Biology,18 (1968) 280–315.
8. P. Prusinkiewicz and A. Lindenmayer, “The algorithmic beauty of plants”, Springer-
Ver l ag, New York . (1990).
9. C. M. Liddell and D. Hansenr, “Visualizing complex biological interactions in the soil
ecosystem”, The Journal of Visualization and Computer Animation,4(1993) 3–12.
10. Przemyslaw Prusinkiewicz and M. James and R. Mˇech, “Synthetic topiary”, Proceed-
ings of SIGGRAPH 94, In Computer Graphics Proceedings, Annual Conference Se ries,
ACM SIGGRAPH. (1994) 351–358.
11. P. Prusinkiewicz and M. S. Hammel and E. Mjolsness, “Animation of Plant Devel-
November 26, 2003 19:5 WSPC/INSTRUCTION FILE ws-ijsmDurikovic
Growth Simulation using Function Representation 19
opment”, Proceedi ngs of SIGGRAPH 93, In Computer Graphics Proceedings, An nual
Conference Series, ACM SIGGRAPH. (1993) 351–360.
12. H. Noser and D. Thalmann, “The animation of autonomous actors based on produc-
tion rules”, Proceedings Com puter An imation’96, Genev a, Switzerlan d, IEEE Com-
puter Society Press. (1996) 47–57.
13. F. David Fracchia and Przemyslaw Prusinkiewicz and Martin J. M. de Boer, “Vi-
sualization of the Development of Multicellular Structures”, Proceedings of Graphics
Interface ’90. (1990) 267–277.
14. R. Mˇech and P. Prusinkiewicz, “Visual models of plants interacting with their envi-
ronment”, Computer Graphics (SIGGRAPH ’96 Proceedings), Ne w Or leans, LA, ACM
SIGGRAPH. (1996) 397–410.
15. T. W. Sadler, “Langman’s medical embryology, 7th edition”, Williams & Wilkins,
New York. (1995).
16. L. Edelstein-Keshet, “Mathematical models in biology”, McGraw-Hill Science, New
Yor k . (1988).
17. A. M. Witkin, “An introduction to physically based modeling”, Computer Graphics
(SIGGRAPH’94 Tutorials), Orlando, Florida, ACM SIGGRAPH. (1994) 449–456.
18. J. McCormack and A. Sherstyuk, “Creating and Rendering Convolution Surfaces”,
Computer Graphics Forum. 17:2 (1998) 113–120.
19. WEB page: “HyperFun Project”, (2003).
20. A. Sherstyuk, “Interactive Shape Design with Convolution surface”, Proceedin g of
Shape Modeling and Applications, Aizu-Wakamatsu, Japan. (1999) 56–65.
21. WEB page: “POV-Ray, the Persistence of Vision Ray-tracer”, (2003).
... The topology of the digestive system is expressed by a tree structure and the development of the tree-like structure can be easily modeled with an algebraic L-system [12,13]. An L-system formalism was proposed by Lindenmayer [14], and the method has been used as a general framework for plant modeling. ...
... The details of the L-system tables have been described by Durikovic [13]. He has described the skeleton elongation, the global bending of the skeleton parts, dynamics of skeleton structures, and growth functions. ...
Full-text available
The growth of the organs of human embryo is changing significantly over a short period of time in the mother body. The shape of the human organs is organic and has many folds that are difficult to model or animate with conventional techniques. Convolution surface and function representation are a good choice in modelling such organs as human embryo stomach and brain. Two approaches are proposed for animating the organ growth: First, uses a simple line segment skeleton demonstrated on a stomach model and the other method uses a tubular skeleton calculated automatically from a 2D object outline. The growth speed varies with the position within the organ and thus the model is divided into multiple geometric primitives that are later glued by a blending operation. Animation of both the embryo stomach and brain organs is shown.
... They use a similar approach to study other organs' growth, such as for the stomach and the intestine [47]. They combine the MA with an L-system (typically used to model plants) to capture the topology of the entire digestive system represented as a tree structure [46]. Jeulin et al. study the growth of kidneys' ureteric trees modeled by a 3D MA in a population of mouses. ...
Full-text available
We conclude the book by covering a wide spectrum of applications of medial symmetries of shape from the infinitely large toward the infinitely small. Our journey starts with a dynamic model of the formation and evolution of galaxies. We move on to the description of geographical information at the scale of regions of planet Earth. Next is the representation of cities, buildings, and archaeological artifacts, followed by the perception of gardens and the generation of virtual plants. Having reached the scale of human activities, we consider the perception and generation of artistic creations, the study of motion and the generation of animated virtual objects, and the representation of geometrically complex systems in machining, metal forging and object design. We then move inside the human body itself with applications in medical imaging and biology, followed by the representation of molecular structures. Our final stop is to consider the abstract scale of the perception of visual information.
One of the most important elements needed for effective training in Virtual Reality (VR) is the generation of variable scenarios. Without this, trainees quickly become familiar with a scene and the natural variations encountered in real-life situations cannot be reproduced. Generating such models in VR-based applications is difficult, but with the increase in computational power (allowing for larger and more finely-detailed virtual environments) there is an increasing demand for improved methods for model acquisition, enhancement, optimization and adaptation. The field of medicine lends itself very well to VR-based training particularly in the area of surgery. In this book Matthias Harders examines the main components needed when defining effective scenarios: scene geometry organ appearance biomechanical parameters providing an extensive overview of related work and introducing specific solutions in detail. With plenty of examples to show the outcome and performance of the methods presented in the book, this will be an essential resource for all those involved in generating training scenarios in medical education, as well as in VR-based training in general.
Conference Paper
This chapter discusses the implicit surfaces for semiautomatic medical organ reconstruction. A new method for reconstruction with implicit surfaces generated by skeletons is presented. Local control on the reconstructed shape due to a local field function, which enables the definition of local energy terms associated with each skeleton is described. This leads to a much more efficient skeleton subdivision process, since one gets a robust criterion telling which skeleton should be divided next. The knowledge of the normal vectors at the data points is not needed. The method works as a semiautomatic process and the user can visualize the data, initially position some skeletons due to an interactive implicit surfaces editor, and further optimize the process by specifying several reconstruction windows, that slightly overlap, and where surface reconstruction follows a local criterion. It is found that if needed, different precisions of reconstruction can be defined in each window. The shapes to reconstruct can be of any topology and geometry, and for instance include holes and branchings. The reconstruction experiments from noisy medical data, for which scattered points are arranged in nonuniform repartition, are shown.
Langman's Medical Embryology covers embryology for medical, nursing, and health professions students with a strong clinical emphasis. The text is highly valued as a teaching and learning resource for its clinical correlation boxes, summaries, problems to solve, illustrations and clinical images, and clear, concise writing style all of which make the subject matter accessible to students and relevant to instructors. Online material includes Simbryo an animation program showing processes, organs, and systems developing in human embryos as well as review questions and full text online. A separate Faculty Image Bank and PowerPoint presentations are also available."
This paper presents a simulation-based method for the animation of the development of cellular layers. The neighborhood relations between the cells are determined using a simulated developmental process, expressed by the formalism of map L-systems. The cell shapes result from mechanical cell interactions. Two types of forces are considered: the osmotic pressure and the tension of cell walls. The animation consists of periods of continuous growth separated by instantaneous cell divisions. The method is illustrated using the fern gametophyte Microsorium linguaeforme.
Scientific visualization is proving very promising for the study of biological interactions at the organismal level in porous opaque media. We present our research in visualizing and modelling fungal and plant root development and interactions in the soil. Because the dynamic biological properties of the soil ecosystem can be observed in only the crudest fashion, we emphasize the fundamental link between visualization and modelling. Our research focuses along the parallel lines of imaging actual phenomena and of modelling these same phenomena. Many soil organisms, such as plants and fungi, exist predominately in a vegetative state which is highly branched, non-random and non-homogeneous. This structure itself is important to dynamic process such as parasitism of one organism by another, yet due to the opacity of soil, structure is difficult to observe and dynamic interactions are impossible to observe. The modelling of growth patterns and interactions of fungi and plant roots with the concomitant use of visualization and rigorous model validation provides the best method to build a working concept, which is faithful to the spatial organization of the real world. We hypothesize that the genetic determinants controlling growth and interactions operate both inside and outside the soil environment. We conclude that visualization provides a means by which spatial extrapolation of laboratory observations may be made to the real world, providing both model validation and a means to build mechanistically-based hypotheses about different types of dynamic phenomena in the soil ecosystem, which can be tested in the field.
Conference Paper
Interaction with the environment is a key factor affecting the devel- opment of plants and plant ecosystems. In this paper we introduce a modeling framework that makes it possible to simulate and visualize a wide range of interactions at the level of plant architecture. This framework extends the formalism of Lindenmayer systems with constructs needed to model bi-directional information exchange be- tween plants and their environment. We illustrate the proposed framework with models and simulations that capture the develop- ment of tree branches limited by collisions, the colonizing growth of clonal plants competing for space in favorable areas, the interaction between roots competing for water in the soil, and the competition within and between trees for access to light. Computer animation and visualization techniques make it possible to better understand the modeled processes and lead to realistic images of plants within their environmental context.