• Aucun résultat trouvé

Probl` eme de la nomination persistante

De part leurs structures, les syst`emes param´etriques connaissent bon nombre de probl`e- mes [BB00] : des difficult´es dans l’´echange de sp´ecifications (historiques de mod´elisation) entre deux syst`emes param´etriques diff´erents [SR04, MH05], une r´eduction de la flexibilit´e des syst`emes param´etriques due aux d´ependances fonctionnelles entre op´erations de mod´elisation et le probl`eme de la nomination persistante [MP02] (ou persistent naming en anglais).

Dans le cadre de cette th`ese, nous nous int´eressons au probl`eme de la nomination persistante. Plus pr´ecis´ement, la difficult´e qu’a un syst`eme param´etrique `a identifier les entit´es g´eom´etriques et topologiques r´ef´erenc´ees par la sp´ecification param´etrique, `a maintenir ces r´ef´erences valides lors de la r´e´evaluation et ˆetre assez « souple » pour permettre `a l’utilisateur d’exprimer ses intentions de conception. Identifier les entit´es consiste `a leurs attribuer un nom lors de leurs conception afin d’une part, de pouvoir les utiliser comme param`etres d’autres op´erations de mod´elisation durant la phase de mod´elisation initiale, et, d’autre part de pouvoir les retrouver dans la phase de r´e´evaluation16. Il s’agit de trouver une correspondance (un appariement ou matching en terminologie anglophone) entre les entit´es du mod`ele initial et celles du mod`ele r´e´evalu´e. Pour illustrer ce probl`eme, prenons l’exemple de la figure 2.17.

arrondi d’arete^ e2après l’arrondi

e

1

e

2 initial Modèle

f

1

f

2

f

3

f

4

f

5

f

1

f

2

f

6 Modèle réévalué

e

4

e

3

f

7

f

8

f

10

f

9 e4 3 e et après l’arrondi

bloc extrudé rainure rectangulaire rainure cylindrique

1 2 3 4

1’ 2’ 3’ 4’

Fig. 2.17: Probl`emes d’attribution de noms et d’appariement.

Dans cet exemple, le mod`ele initial est con¸cu au moyen d’une sp´ecification param´etrique com- prenant quatre op´erations de mod´elisation successives. La derni`ere consiste `a arrondir l’arˆete e2

r´esultant de l’intersection de la face du haut du bloc extrud´e avec la face lat´erale de la rainure cylindrique. D`es lors, un des param`etres de l’op´eration d’arrondi, contenu dans la sp´ecification param´etrique, n’est rien d’autre que la r´ef´erence `a l’arˆete e2. Apr`es la quatri`eme ´etape, l’ins-

tance courante de la g´eom´etrie ne contient plus l’arˆete e2 : elle est supprim´ee. Aussi, comment

16

La r´e´evaluation que nous consid´erons consiste `a rejouer le processus de mod´elisation (puisque les op´erations sont sauvegard´ees au niveau de la sp´ecification param´etrique) lorsqu’un certain nombre de param`etres des op´erations de mod´elisation sont modifi´es. Il ne s’agit en aucun cas de la modification de la sp´ecification pa- ram´etrique (changement de l’ordre des op´erations ou le remplacement des op´erations par d’autres) car dans ce cas on parle plutˆot d’´edition du mod`ele param´etrique.

stocker dans la sp´ecification param´etrique une r´ef´erence `a l’arˆete e2 pour l’op´eration d’arrondi,

cette arˆete n’existant plus ? Supposons maintenant que nous nous placions dans un contexte de r´e´evaluation. `A l’´etape 30, l’arˆete initiale e2 est cette fois scind´ee en deux arˆetes e3 et e4. `A

l’´etape 40, le syst`eme ne sait plus quelle(s) est (sont) l’arˆete (les arˆetes) qui doit (doivent) ˆetre arrondie(s). Le probl`eme est donc d’identifier toutes ces arˆetes, puis apparier l’arˆete e2 avec les

arˆetes e3 et e4 (pour appliquer sur chacune l’op´eration d’arrondi) en d´epit des changements to-

pologiques. Le m´ecanisme de nomination doit ˆetre assez puissant pour effectuer un appariement robuste lors de la r´e´evaluation.

Dans les sections suivantes, nous montrerons, la n´ecessit´e de disposer d’une part d’un nom muni d’une structure suffisamment riche pour caract´eriser les entit´es topologiques de fa¸con unique et non ambig¨ue ; et, d’autre part, d’un m´ecanisme d’appariement suffisamment robuste pour mettre en correspondance les entit´es du mod`ele initial et celles du mod`ele r´e´evalu´e (ces en- tit´es pouvant ne pas avoir la mˆeme structure topologique). Nous verrons aussi que la r´esolution de ces probl`emes induit directement la capacit´e d’un syst`eme param´etrique `a exprimer et cap- turer les intentions de conception.

2.2.1 N´ecessit´e d’un nom (1er probl`eme)

Comme nous avons pu le constater dans l’exemple pr´ec´edent, le premier imp´eratif de la nomination, dans tout syst`eme param´etrique, est la n´ecessit´e d’identification des entit´es. En effet, les entit´es topologiques doivent ˆetre caract´eris´ees de fa¸con unique afin qu’elles puissent ˆetre d´esign´ees de fa¸con non ambigu¨e `a partir de la sp´ecification param´etrique. Intuitivement, la premi`ere id´ee qui vient `a l’esprit est d’utiliser un num´ero, un pointeur ou mˆeme le nom de la fonction utilis´ee pour g´en´erer le nom de ces entit´es. Cependant, toutes ces possibilit´es ne sont gu`ere robustes. Dans les deux premiers cas, il suffit que l’entit´e consid´er´ee disparaisse au cours du processus de mod´elisation pour que ce lien devienne obsol`ete. Alors que dans le troisi`eme cas, la structure topologique incidente `a l’entit´e consid´er´ee peut changer et donc la fonction utilis´ee ne peut plus ˆetre appliqu´ee. Cela est d’autant plus vrai qu’un pointeur devient invalide lorsque l’entit´e qu’il d´esigne disparaˆıt comme c’est le cas de l’arˆete e2 `a l’´etape 4 de la figure 2.17.

De plus, comme ´evoqu´e dans la section 2.1.2, une entit´e, dans un mod`ele topologique ou Brep, poss`ede un voisinage topologique et le mod`ele qui la repr´esente organise de fa¸con directe (les graphes d’incidences) ou implicite (les cartes g´en´eralis´ees) la topologie d’un objet en sub- divisant son bord : volume > coque > face > agr´egat d’arˆetes > arˆete > sommet. Chaque op´eration de mod´elisation g´en`ere un nombre non pr´edictible d’entit´es (cons´equence intrins`eque de la d´efinition des mod`eles topologiques et Brep). ´Etant donn´e ce caract`ere al´eatoire et instable de la mod´elisation, il faut que le nom de chaque entit´e contienne des informations suffisament stables pour permettre la r´esolution du probl`eme de la nomination persistante. Comme nous allons le voir, ces informations proviennent principalement des propri´et´es g´eom´etriques et to- pologiques des objets mod´elis´es. De plus, le nom d’une entit´e doit avoir une structure, `a mˆeme de repr´esenter ces informations. Par exemple, dans la figure 2.17, une nomination aussi triviale qu’une num´erotation des arˆetes e2, e3 et e4ne peut ˆetre envisag´ee. En effet, les num´eros attribu´es

`

2.2.2 N´ecessit´e d’un appariement entre noms (2`eme probl`eme)

Lorsque les param`etres des op´erations de mod´elisation sont modifi´es, la structure topologique des objets mod´elis´es peut l´eg`erement ou fortement varier. Il est alors n´ecessaire de d´eterminer dans quelle mesure un mod`ele initial, `a une ´etape particuli`ere, ressemble `a un autre r´e´evalu´e `

a la mˆeme ´etape. En d’autres termes, il est n´ecessaire de savoir si une entit´e du mod`ele initial correspond `a une, plusieurs ou aucune entit´e du mod`ele r´e´evalu´e.

Dans la figure 2.17, et plus particuli`erement `a l’´etape 30, la modification de la position de la rainure cylindrique engendre un changement au niveau de la topologie. Cette modification pose, comme on l’a vu dans la section 2.2, un probl`eme au niveau de l’´etape 40. Pour le r´esoudre, il faut savoir que l’arˆete e2 du mod`ele initial correspond aux arˆetes e3 et e4 dans le mod`ele r´e´evalu´e.

Ce r´esultat particulier ne peut ˆetre donn´e que par un m´ecanisme g´en´eral d’appariement qui prend en compte toutes les cas de correspondance possible. Dans l’exemple pr´ec´edant, les cas en question sont : (1) e2 ↔ e3 et e4; (2) e2↔ e3; (3) e2 ↔ e4; ou enfin (4) e2 ↔ ∅. Ce m´ecanisme

repose sur le processus de caract´erisation pour ´etablir les correspondances recherch´ees.

2.2.3 Capture des intentions de conception (3`eme probl`eme)

Le rejeu automatique d’un processus de mod´elisation dans un syst`eme param´etrique r´epond `

a un besoin certain, exprim´e par l’utilisateur. Pour mener `a bien ce travail, l’id´eal consiste `a capturer l’intention de l’utilisateur pour que le syst`eme sache ce qu’il a `a faire au moment de la r´e´evaluation. Ces intentions peuvent ˆetre simples (par exemple l’arrondi d’une arˆete) mais aussi complexes. Pour illustrer le deuxi`eme cas, prenons l’exemple de la figure 2.18. Dans cet exemple, la sp´ecification param´etrique contient trois op´erations de mod´elisation : construction d’un bloc par extrusion de la face f , ajout d’une protrusion cylindrique et arrondi de l’arˆete situ´ee entre une coque et la protrusion. En fonction de l’arˆete `a arrondir (celle qui se situe entre la face f1.1

et la protrusion, ou bien celle qui se situe entre la coque lat´erale du bloc (montr´ee en gris sur la figure 2.18) et la protrusion), le mod`ele r´e´evalu´e est diff´erent. Dans le premier cas, on obtient le mod`ele de la figure 2.18(b) o`u l’arrondi de l’arˆete disparait car il n’y a plus d’intersection entre la face f1.1 et la protrusion. Dans le second cas, on obtient le mod`ele de la figure 2.18(c) o`u

l’arrondi de l’arˆete est appliqu´e. La raison est que l’intersection entre la coque lat´erale du bloc et la protrusion subsiste toujours mˆeme lorsque cette protrusion est d´eplac´ee sur la face f1.2.

f1.2 1 réévaluationère 2 réévaluationème d’extrusionsens protrusion 1.2 (b) f f arrondi (a) 1.1 f 1.1 f (c) Modèle initial f 1.2 f 1.1

Fig. 2.18: Diff´erence au niveau des intentions de conception. (a) Le mod`ele initial. (b) le mod`ele r´e´evalu´e sans arondi. (c) Le mod`ele r´e´evalu´e avec arondi. La coque lat´erale du bloc extrud´e est constitu´ee de

l’ensemble des faces repr´esent´ees en gris clair sur la figure.

Pour capturer ce type d’intention, les solutions apport´ees pour r´esoudre le probl`eme de la nomination persistante, doivent g´erer la caract´erisation et l’appariement d’entit´es de plus haute

dimension telles que les coques (agr´egats de faces) et les volumes.