• Aucun résultat trouvé

4.3 Modèles déformables

4.3.4 Modèles combinés

D’autres approches de modèles déformables peuvent être retrouvées dans la littérature. Leur principale contrainte est de garder un bon compromis entre réalisme de la simulation et interactivité. Plusieurs méthodes partent des modèles géométriques en introduisant des

considérations physiques plus réalistes [Mons01], d’autres se basent sur des modèles pure-ment physiques avec des considérations simplificatrices permettant d’accélérer le calcul.

Avec l’addition de quelques propriétés physiques aux modèles descriptifs ou géomé-triques, le réalisme augmente sans un incrément considérable en temps de calcul. Les mo-dèles de cathéters en interaction avec les vaisseaux, par exemple, utilisent une énergie asso-ciée à la forme (torsion) pour calculer une solution analytique [Alde02]. Terzopoulos, Waters et Platt [Terz90] [Terz87] ont été les premiers à combiner les modèles déformables géomé-triques avec la théorie de l’élasticité dans les techniques d’animation et synthèse d’images. Kass [Kass97] intègre également dans l’animation par ordinateur, des courbes, surfaces et solides qui répondent à des forces externes selon des considérations physiques.

4.3.4.1 ChainMail - Relaxation élastique

Cette approche, proposée par Gibson et al.[Gibs97a], constitue un des exemples de si-mulation du comportement mécanique qui prend en considération des lois géométriques et physiques. Elle consiste à calculer les déformations en deux étapes : la première vise à obtenir une forme approximée de la déformation de façon rapide par propagation locale d’une perturbation (algorithme de ChainMail). La forme d’un objet calculée par ChainMail ne présente pas une configuration d’énergie minimale. Un processus de relaxation élastique par minimisation de l’énergie entre les éléments liés est donc nécessaire pour calculer sa forme finale en repos.

Le processus de modélisation de la structure déformable passe par la construction d’une représentation et la définition de contraintes géométriques reprise dans la suite. En se réfé-rant au schéma générique de la relation modélisation-simulation (cf. section 2.2.1), les entités basiques impliquées dans la proposition de Gibson sont d’un côté, le modèle (linked volumes), qui est construit à partir d’une représentation volumique où l’on définit des contraintes géo-métriques, et d’un autre côté leurs simulateurs (ChainMail et Relaxation élastique) (figure 4.6).

Structure déformable Cadre Expérimental

Modélisation : - Représentation(volumique) - Définition contraintes géom.

Simulation linked-volume Relax. élastique ChainMail Simulateurs

FIG. 4.6: Relation modélisation-simulation pour l’approche ChainMail- Relaxation élastique (cf. section 2.2.1).

Représentation

Les structures à déformer sont considérées comme des objets volumiques [Gibs98], consti-tués par un ensemble d’éléments 3D régulièrement disposés. Un élément peut être lié à six de ses voisins (figure 4.7) [Gibs99], avec lesquels des lois de configuration géométrique ou mécanique sont établies. Lorsqu’un élément change de position, il transmet à ses voisins l’information concernant son nouvel état pour que ceux-ci actualisent leur position et que la structure se mette à jour globalement.

Avec ce type de représentation volumique, appelée "volumes liés" (linked volumes) par Gibson, des déformations en 1D, 2D ou 3D ainsi que des coupures ou déchirures à l’inté-rieur même d’une structure peuvent être modélisées. Dans cette configuration, un élément est connecté à ses six voisins (haut, bas, droite, gauche, face, derrière). Une structure est re-présentée par plusieurs éléments dans une grille 3D où chacun contient des informations du matériau auquel il appartient.

Element

Liens

Voisins

FIG. 4.7: Volume lié (linked volume) constitué de plusieurs éléments liés (linked elements). cha-cun des nœds est connecté a ses six voisins.

Définition de contraintes géométriques

Le comportement des éléments liés est déterminé par un ensemble de propriétés géo-métriques qui symbolisent des caractéristiques physiques des objets (tension, compression, etc.). Prenons l’exemple 2D pour illustrer comment les contraintes géométriques sont éta-blies entre voisins. Un élément individuel qui a des voisins sur les axes & et ' possède certaines propriétés qui définissent une région de proximité admise pour ses voisins (figure 4.8).

Pour les voisins sur l’axe X (droite et gauche), deux types de contraintes existent : - Les distances minimale et maximale admises sur l’axe X : dMinX et dMaxX, qui repré-sentent les propriétés de tension et compression du matériau.

- Les distances minimale et maximale de déplacement sur l’axe Y : dMaxHorzdY. qui représentent les propriétés de cisaillement.

Les contraintes pour les voisins sur l’axe Y (en-haut et en-bas), dMinY, dMaxY et

dMax-VertdX, sont définies de façon analogue.

Les contributions des éléments liés se combinent et définissent les contraintes géomé-triques globales du matériau simulé (figure 4.9).

x y dMaxX dMinX dMinY dMaxY dMaxVertdX dMaxVertdX dMaxHorzdY dMaxHorzdY

FIG. 4.8: Contraintes appartenant à un élément individuel d’après [Schi98].

distanceX

(a) Position de re-pos (valable). distanceX (b) Compres-sion maximale. distanceX (c) Tension maximale.

FIG. 4.9: Configurations valables entre voisins qui déterminent la rigidité du matériau dans

la direction X. a) Position de repos. b) Compression maximale, (#)*+&  () 

()& 

 ()&

. c) Tension maximale, (#)*+& # #& 

 #&

.

Les paramètres pour un élément ( #&, ()&, #', ()', etc.) peuvent être définis selon un critère qui intègre la rigidité du matériau et le comportement mécanique. Permettre plus ou moins de déplacement dans un sens que dans un autre peut favoriser, au regard des propriétés mécaniques, un comportement de cisaillement ou d’étirement des structures.

La violation des contraintes d’un élément par rapport à un autre est calculée selon les distances maximales ou minimales admises (figure 4.10).

(,,)&  (#)*+& #& (4.19)

D’une façon générale la valeur de la contrainte en 3D est calculée selon l’équation 4.20.

$(,,)  (,,)&   (,,)'   (,,)- (4.20)

distanceX dViolContrX

FIG. 4.10: Représentation de la violation de la contrainte entre deux éléments dans l’axe X

(,,)&.

ChainMail

L’algorithme de ChainMail a été appelé de cette façon par similitude avec le comporte-ment d’un ensemble de chaînons liés. Les contraintes géométriques définies entre les élé-ments de l’objet déterminent que chaque élément doit rester entre deux positions, minimale et maximale par rapport à ses voisins. Une perturbation se produit lorsqu’un des éléments est déplacé et viole ces contraintes. Des règles de traitement de la perturbation sont établies pour qu’elle soit propagée à travers tout le système grâce aux liens et aux contraintes géo-métriques. Les éléments concernés doivent se déplacer afin de trouver une nouvelle confi-guration qui satisfasse à nouveau les contraintes.

La première version de ChainMail proposée par Gibson est très rapide car chaque élé-ment n’est considéré qu’une seule fois et ne peut perturber qu’un seul de ses voisins dans chacune des listes associées (perturbations droite-gauche et gauche-droite en 1D). Cepen-dant, cette implémentation n’a pas la capacité de simuler les déformations des objets non-homogènes. Une amélioration qui permet la gestion des structures non-homogènes a été introduite par Schill, Gibson et al. (Enhanced ChainMail) [Schi98] pour la simulation d’une vitrectomie [Schi98]. La configuration des éléments volumiques est gardée, mais la diffé-rence est l’utilisation d’une seule liste d’éléments candidats à être déplacés. Le processus démarre lorsqu’un élément initial, appelé sponsor, est déplacé vers une nouvelle position (perturbation). Tous ses voisins sont alors introduits dans la liste triée selon l’amplitude de la violation des contraintes géométriques. De cette manière, l’élément dont la violation de contrainte est maximale sera le premier à être traité. Ce traitement consiste à le déplacer de façon à satisfaire les contraintes géométriques de son sponsor. La perturbation doit être pro-pagée de telle sorte que les nœuds du maillage soient modifiés selon l’ordre chronologique suivant le principe de causalité. Le processus s’achève lorsqu’il n’y a plus d’éléments dans la liste. La figure 4.11 montre les itérations successives après une perturbation introduite en déplaçant l’élément 1 vers la gauche.

Des modifications ont été réalisées par Park et al. [Park02] pour permettre la récupéra-tion de la forme initiale des objets élastiques, en conservant l’énergie résiduelle de déforma-tion. Ils introduisent une analogie avec un modèle électrique equivalent (force-tension) afin de calculer des forces de retour simulant des interactions haptiques plus réalistes. Dans leur représentation, la force de retour de l’objet déformé est proportionnelle à la somme des dis-tances de tous les éléments qui ont été déplacés (mémoire de déformation). Une extension

Dist. Max Dist. Max Dist. Max Dist. Max Dist. Max Configuration Initiale Perturbation Configuration Finale 1 2 3 4 5 Perturbation Itération 0

FIG. 4.11: Exemple de propagation d’une perturbation. Le premier élément est éloigné et tous les autres répondent successivement afin de satisfaire les contraintes géométriques. à des grilles arbitraires en 2D et 3D a été proposé récemment par Li et al. [Li03], pour des volumes homogènes.

Relaxation élastique

L’algorithme de ChainMail produit la déformation de tout le volume pour satisfaire seulement des contraintes géométriques entre les éléments, mais la nouvelle disposition ne garantit pas une configuration d’énergie globale minimale, notamment lorsqu’il s’agit de tissus élastiques qui essaient de récupérer leur forme initiale. Selon les relations contrainte-déformation, il existe une distance entre éléments liés qui représente une position de repos de la structure. Après l’exécution du ChainMail il s’avère nécessaire d’utiliser une méthode de déformation complémentaire qui cherche à minimiser l’énergie de l’objet. Un cas particu-lier de relaxation élastique est proposé par Gibson [Gibs99]. L’énergie de l’objet est donnée par une fonction qui dépend des distances entre éléments. L’algorithme proposé est inspiré du modèle masses-ressorts dans lequel on considère un facteur d’amortissement très élevé. La position de chaque élément est ajustée séquentiellement en plusieurs itérations en fonc-tion de celle des voisins (Equafonc-tion 4.21) :

!.!/          !     .  .   !     /  /   (4.21)         )#*0+ ) ,(+ (),) .        .)1# .)0#

/        / )#(è+ / )#*+ (),)

 indique si le voisin existe, et, . et / sont les longueurs de liens initiaux pour les paires gauche-droite, bas-haut et arrière-face.

Le processus de relaxation élastique peut être réalisé autrement, par exemple avec un modèle de type masses-ressorts. Il peut être utilisé pour calculer les forces qui vont faire évoluer le volume vers une configuration optimale. En effet, la relaxation élastique pourrait intégrer des considérations physiques plus proches de la structure, c’est à dire associer des paramètres élastiques à la déformation.