In the simulation, virtual tissues has been modeled using the mass-spring method [20]. Other models were also developed for this purpose but this one was chosen for its computational complexity. The tissue is represented as a three-dimensional net of point masses connected each other with springs.

Tissue deformation is based on the dynamics of the masses, and on the elasticity and damping factor of the springs that connect these masses. The law that describes the dynamic of each single point of mass (node) is the Newton law:

In these equations xi represents the displacement of i-th node with respect its position in quiet state, mi is the mass of the point, ci is the damping factor of the i-th node, dij is the distance vector between i-th and j-th points, kij and lij are respectively the stiffness and length of the spring in the quiet state between i-th and j-th

ext

nodes and Fi is the sum of the external forces that acts on the i-th node. Ns is the set

of the nodes directly connected to i-th node with a spring. These equations are discre-

tized and solved iteratively on the computer with a 4th order Range-Kutta method.

Additional springs have been used in order to fix the grid of springs in the virtual space. These springs allow the tissue to resume its original shape when the effect of deformation is removed. Fig. 1 shows the model of the tissue with the mass-spring method. In the intersection point of the springs there are the ideal point masses. Usually, in this kind of modeling masses have infinitesimal size, but PhysX engine does not allow the definition of dimensionless objects. For this reason a box of finite size has been used for the creation of a single tissue element.

Fig. 2. Thread model

Another advantage that comes with the use of a mass-spring model is that a topological modification of the net produce a simple modification of the model equations. For example, the cut of the tissue surface produces a modification of the equations of the only nodes directly connected to those involved in the cut. Anyway this produces also a disadvantage because global modifications are hard to propagate because they require many simulation iterations.

Tissue rendering is obtained using Ogre3D [21]. Ogre3D is a scene oriented, open source 3d graphics engine. It supports only graphical rendering process and is compatible with many library for haptic, sound, etc. rendering and also physics computation. Ogre3D is a cross-platform library and can be used with Windows, Mac OS X and Linux platforms.

In Fig. 2 is shown the model of the thread.

Thread Modelling

The main technique used to model the dynamics of the surgical thread in virtual simulations is known in literature as “follow-the-leader” [22]. With this technique the thread is modeled by means of a chain of cylinders connected by joints that allow to simulate the bending of the thread.

At each step of simulation, when an external force is applied to a cylinder, the new position of this cylinder is calculated, and, using the follow-the-leader approach, the new positions of all cylinders are computed. In addition also the collisions between elements of the thread are detected and the new configuration of the entire thread is displayed.

As for the tissue, also for the thread the PhysX features are exploited in order to manage the dynamics of the thread (calculation of position and collision detection).

To simulate the flexibility of the thread, two adjacent cylinders are connected through a spherical joint, which allows the rotation of the elements relative to each other. A spherical joint, as shown in Fig. 3, is a constrains where two points located on two different rigid bodies must coincide in one point in space; a spherical joint has 3 free DOFs and 3 blocked DOFs. The visual model of the suturing thread is achieved through the rendering of all elements of the chain.

The use of spherical joints could led to strong oscillations when the thread is subjected to strong stretching forces. This is because spherical joints are temporarily disconnected when subjected to strong forces. To reduce this problem we modified the inertial tensor of thread elements to increment the inertia of each element.

Fig. 3. The spherical joint used in order to simulate the flexibility of the thread

Found a mistake? Please highlight the word and press Shift + Enter