Versatile Design of Changing Mesh Topologies
for Surgery Simulation
Barbara Andr´ e and Herv´ e Delingette
INRIA Sophia Antipolis, Asclepios Research Project,
2004 route des Lucioles BP 93, 06902 Sophia Antipolis Cedex, France
Abstract. In the context of surgery simulation, this paper presents a
generic and efficient solution to handle topological changes on deformable
meshes under real-time constraints implemented in the SOFA  plat-
form. The proposed design is based on a simulation tree gathering soft-
ware components acting on a mesh. The mesh topology is described by
a topological component which also provides algorithms for performing
topological changes (cutting, refinement). An important aspect of the
design is that mesh related data is not centralized in the mesh data
structure but stored in each dedicated component. Furthermore, topo-
logical changes are handled in a transparent way for the user through
a mechanism of propagation of topological events from the topological
components toward other components. Finally, the previous concepts
have been extended to provide multiple topologies for the same degrees
of freedom. Examples of cataract surgery simulation based on this ver-
satile design are shown.
Key words: Mesh Topology, Topological Change,
Real-Time Simulation, User-defined Data Structure
While mesh geometry describes where mesh vertices are located in space, mesh
topology tells how vertices are connected to each other by edges, triangles or any
type of mesh element. Both information are required on a computational mesh
to perform mesh visualization, mechanical modeling, collision detection, haptic
rendering, scalar or vectorial field description.
Since topological changes are essential for surgery simulators, a common dif-
ficulty when designing those simulators is to ensure that the visual, mechanical,
haptic and collision behavior of all meshes stay valid and consistent upon any
This paper proposes a framework to handle topological changes in a modular
and versatile way. Our approach is modular since each software component (colli-
sion detection, mechanical solver...) may be written with little knowledge about
the nature of other components. It is versatile because any type of topological
changes can be handled with the proposed design.
2Versatile Design of Changing Mesh Topologies for Surgery Simulation
The proposed framework has been implemented in SOFA , which is an
Open source C++ platform for the real-time modeling of deformable structures,
particularly for medical simulation and planning. While there exists several other
simulation platforms, to the best of our knowledge most of them do not ex-
plicitely handle topological changes [3,2] or do so for only a limited type of
meshes or mechanical behaviors .
Our objective to keep a modular design implies that mesh related information
(such as mechanical or visual properties) is not centralized in the mesh data
structure (as done using the CGAL  library) but is stored in the software
components that are using this information. Furthermore, we manage an efficient
and direct storage of information into arrays despite the renumbering of elements
that occur during topological changes.
The SOFA framework is based on the integration of multiple simulation
components that are associated to one or several objects. These components
include Solvers, Degrees of Freedom (containing vertex positions), Mechanical
Force Fields, Mappings, Mass or Constraints. They are considered as the leaves
of a simulation tree, which describes the scene and whose internal nodes separate
hierarchical levels of modeling the scene objects (e.g. Behavior Model, Collision
Model, Visual Model). Fig. 1 shows one example of a simulation tree associated
to a SOFA scene with a cylinder mesh. Note that some components may interact
together and need to be synchronized. Information flow is carried on by visitors
that traverse the simulation tree to propagate spatial positions top down and
forces bottom up.
Fig.1. Simulation Tree associated to a SOFA scene with a cylinder mesh: the cylinder
is both modeled as a tetrahedral volume (2ndlevel) and as a triangular surface (3rd
level). The lower model corresponds to the visible part of the mesh. The Mechanical
Object component contains the mesh Degrees of Freedom. The dotted arrows indicates
dependencies for two types of Mapping components, the Topological Mapping will be
presented in Section 5.
Versatile Design of Changing Mesh Topologies for Surgery Simulation9
Fig.7. SOFA scene to simulate the cataract surgery: the patient’s eye is held open by
a lid speculum to be easily accessed.
Fig.8. (Left) The upper triangular surface modeling the capsule is cut and deforms as
a membrane. (Right) Once the capsule is cut and teared off, some tetrahedral volume
of the lens is removed.
1. Cgal : Computational geometry algorithms library, http://www.cgal.org.
2. Gipsi : General physical simulation interface, http://gipsi.case.edu.
3. Opentissue, http://www.opentissue.org.
4. Sofa : Simulation open framework architecture, http://www.sofa-framework.org.
5. Springs, http://spring.stanford.edu.
6. M. Agus, E. Gobbetti, G. Pintore, G. Zanetti, and A. Zorcolo. Real-time cataract
surgery simulation for training. In Eurographics Italian Chapter Conference, Con-
ference held in Catania, Italy, 2006. Eurographics Association.
7. J. Allard, S. Cotin, F. Faure, P.-J. Bensoussan, F. Poyer, C. Duriez, H. Delingette,
and L. Grisoni. Sofa – an open source framework for medical simulation.
Medicine Meets Virtual Reality (MMVR’15), Long Beach, USA, February 2007.
8. C. Forest, H. Delingette, and N. Ayache. Removing tetrahedra from manifold
tetrahedralisation : application to real-time surgical simulation. Medical Image
Analysis, 9(2):113–122, April 2005.
9. N. Molino, Z. Bao, and R. Fedkiw. A virtual node algorithm for changing mesh
topology during simulation. ACM Transactions on Graphics, 23(3):385–392, Aug.
10. M. Nesme, Y. Payan, and F. Faure. Efficient, physically plausible finite elements.
In J. Dingliana and F. Ganovelli, editors, Eurographics (short papers), august 2005.