FR 2769391 A1 19990409 FR 9712546 A 19971008 i PROCEDE DE MODIFICATION DE FORME POUR SYSTEME DE CONCEPTION ASSISTEE PAR ORDINATEUR La présente invention a pour objet un procédé de modifica- tion de forme, destiné à permettre à l'utilisateur d'un système de conception assistée par ordinateur de modifier une forme surfacique et à fournir à l'utilisateur une représenta- tion de la forme modifiée. On utilisera souvent par la suite le terme "surface". I1 est à interpréter de façon générale, comme désignant non seulement une surface proprement dite, mais aussi une forme surfacique définie par morceaux ck- continus ou une peau de vo lume. Pour des raisons constructives ou de style, on peut souhaiter modifier une zone ou la totalité d'une "surface" d'origine, définie par sa topologie, de façon à faire passer la nouvelle forme par un emplacement indiqué par un opérateur (ligne ou points déterminés) et cela en satisfaisant avec une tolérance déterminée la continuité entre la forme de la zone modifiée et le reste de la #surface" d'origine. La précision sera plus élevée en certains points de la frontière o on imposera une coincidence, mais en aucun autre point de la frontière elle ne devra être inférieure à une valeur prédéterminée. Pour respecter cette dernière condition, on pourra augmenter, en cas de besoin, les points situés sur la frontière o le critère de continuité est respecté de façon rigoureuse, à la quantification près, jusqu'à ce que le degré de précision souhaité soit respecte pour tous les points intermédiaires. La continuité recherchée peut être d'ordre zéro (continuité généralement désignée par G0 et correspondant simplement à une contrainte de passage), d'ordre 1 (donnant à la zone modifiée le même plan tangent que le reste de la "surface", le long de côtés de la frontière), d'ordre 2 (c'est-à- dire respectant les courbures normales le long de côtés de la frontière), voire même d'ordre k supérieur. Dans certains cas on peut aussi vouloir des déchirures partielles entre la partie modifiée et le reste de la "surface" (une telle déchirure étant par extension dite continuité d'ordre -1). Le problème du maintien de la continuité se pose aussi dans des applications différentes, comme: - le raccordement de deux "surfaces" existantes, disjointes ou non, par une "surface", - le remplissage d'un trou d'une "surface" prédéfinie. Mais la finalité est alors très différente de celle envisagée par la présente invention. Celle-ci vise à fournir un procédé utilisable quel que soit le nombre de côtés curvilignes de la zone et donc quel que soit le nombre de sommets de la frontière, que cette frontière soit ou non ouverte (cf. figures lA, lB, 1C, 1D), pour modifier une zone de "surface" pré-existante. Pour cela, l'invention peut utiliser une approche qu'on peut qualifier de "dessin commandé par l'objectif", c'est-à- dire la recherche d'une forme optimale satisfaisant des contraintes. Dans le cas présent: - les contraintes sont celles à respecter le long de côtés de la frontière et celles (de même nature) situées en des emplacements qui doivent être contenus dans la zone déformée, - l'objectif à atteindre est une "minimisation" de la déformation. Dans ce but, l'invention propose notamment un procédé de modification de forme permettant de générer un modèle surfaci- que par déformation d'une zone d'une "surface" d'origine en respectant une continuité d'ordre prédéterminé le long de la frontière de la zone, ladite déformation tendant à respecter une contrainte donnée à l'intérieur du modèle, procédé suivant lequel: - on définit la frontière d'origine, les contraintes de continuité à respecter par le modèle le long de la frontière, une loi de direction de déformations pour l'ensemble de la zone et les contraintes à l'intérieur du modèle, c'est- à-dire de la zone à l'état déformé, - on définit le modèle comme le résultat de l'application, à la zone d'origine, d'une déformation simulant celle d'une plaque plane mince infinie "généralisée" en équilibre, soumise à l'ensemble des contraintes relatives imposées. Par exemple, une continuité d'ordre 0 et 1 le long d'un côté de la frontière se traduira par le fait que la plaque restera plane le long de ce côté. Le terme "généralisé" est à interpréter comme désignant un comportement allant, du point de vue de la mécanique, au-delà de celui d'une plaque mince réelle soumise à des actions mécaniques (forces ou moments) tendant à la déformer. La généralisation se fait sur les actions mécaniques et sur l'expression de "l'énergie" à minimiser. Dans le cas de contraintes à la frontière d'ordre GO, ces contraintes peuvent être considérées, dans une analogie mécanique, comme l'exigence d'une distribution de forces le long de la frontière. Dans le cas de contraintes d'ordre G1, l'analogie avec une plaque revient à l'application, le long de la frontière, de moments ayant une distribution déterminée, s'ajoutant à la distribution des forces. En revanche, il n'y a pas d'analogie en matière de déformation des matériaux au- delà d'une contrainte d'ordre G1. Souvent les contraintes internes à respecter seront géométriques. Par exemple, et de façon non exhaustive: on peut imposer au modèle surfacique de passer par un ou des points déterminés ou par une courbe déterminée; on peut également lui imposer d'avoir en un point déterminé, un plan tangent de direction déterminée. Plus généralement, la contrainte interne peut être constituée par la définition d'un point et/ou d'une courbe: 5. par lesquels doit passer le modèle, et/ou pour lesquels le plan tangent et/ou la nappe oscula- trice peuvent être imposés, et/ou pour lesquels les courbures normales et/ou la quadri- que osculatrice peuvent être imposées. De façon générale, le modèle pourra être défini par recherche du minimum d'une énergie de la forme: () = ()2 (1) Dans cette formule: R2 désigne l'espace paramétrique à deux dimensions sur lequel est projetée la frontière, V est l'opérateur du gradient, m est un exposant qui permet de satisfaire l'ordre de la continuité recherchée, * désigne la fonction de déformation. Le calcul de minimisation doit s'effectuer en respectant également les contraintes de continuité le long de chacun des côtés de la zone à déformer. La frontière peut être fermée ou débouchante. Dans la formule (1) ci-dessus, le cas m = 1 a une interpré- tation physique: la fonction E(O) définit l'énergie linéaire d'une membrane horizontale infinie soumise à une contrainte uniforme, lorsque le champ de déplacement vertical est *. Dans le cas m = 2, E(O) définit l'énergie linéaire de flexion élastique d'une plaque fine infinie horizontale, ayant un coefficient de Poisson nul, dont le champ de déplacement vertical est *. Le cas m = 3 n'a pas de sens physique déterminé mais repré- sente une solution qui provoque des variations très progressi- ves, souvent particulièrement satisfaisantes du point de vue de l'esthétique notamment versus l'évolution des reflets de lumière sur la "surface" modifiée. Les caractéristiques ci-dessus ainsi que d'autres apparaî- tront mieux à la lecture de la description, qui suit, d'un mode particulier de réalisation, donné à titre d'exemple non limitatif. La description se réfère aux dessins qui l'accompa- gnent, dans lesquels: - les figures lA, 1B, 1C, 1D montrent des déformations possibles d'une "surface"; - la figure 2 est une représentation schématique de la déformation, dans un seul plan parallèle à la direction de déformation, montrant les paramètres qui interviennent; - la figure 3 est un schéma montrant une distribution possible des forces à l'équilibre permettant le calcul de la zone déformée dans le cas de contraintes GO le long de la frontière; - la figure 4 est un synoptique de principe montrant les opérations effectuées pour la détermination des déformations. - Les figures lA et 1B montrent un exemple d'application de l'invention. La zone 10 de la figure 1A, délimitée par cinq côtés curvilignes et ayant autant de sommets, doit être déformée pour l'amener jusqu'au point A, en respectant une continuité G1 (indiquée par les flèches doubles). Cela signifie que les plans tangents à la "surface" d'origine le long de la frontière doivent rester des plans tangents à la fois à la zone déformée et au reste de la "surface" d'origine (figure lB). Dans le cas illustré sur les figures lA et lB, la zone à déformer est fermée. Mais l'invention est également applicable à une zone débouchante (voir les figures 1C et 1D). De plus, en demandant une contrainte G-1 par exemple sur l'un des côtés montrés en figure 1A, une "déchirure" pourrait apparaître entre la zone déformée et le reste de la "surface". On décrira maintenant, en faisant référence à la figure 2, les principes mis en oeuvre par l'invention en ne considérant qu'une seule tranche de la "surface" à modifier, parallèle à la direction d de déformation choisie, en supposant dans ce cas qu'il n'existe qu'une seule direction d de déformation. Les contours quelconques définissant la zone à modifier se projettent parallèlement à d sur un plan perpendiculaire I et constituent un domaine plan DII(X,Y) sur lequel on pourra définir la loi de déformation d(X,Y). Dans ce cas d correspond à * dans la formule (1). Les coordonnées planes X et Y, correspondent à des coordonnées (u,v) de la forme initiale de la zone à déformer. En général, les côtés curvilignes de la zone seront définis sous une forme approximée par des équa- tions paramétriques polynomiales (ou rationnelles), choisies de façon à assurer la précision requise. Dans le plan parallèle à d montré en figure 2, c'est la zone FDH de la forme globale F incluse dans DI qui sera modifiée pour donner -FDI. La forme finale modifiée sera obtenue par recollage de -FDi et de la restriction (F-FDII). FDH est exprimé, en vue du calcul, dans le système d'axes du plan de DII sous la forme: XDII(u,v), YDU(u,v), FDII(u,v). On aura alors: -FDI(uv) = Approximation[FD(uv)+d(XDI(uv),YDI(UV))] Dans le cas illustré sur la figure 2, on a adopté comme contraintes externes le fait que la loi de déformation doit conserver les courbures normales au long de la frontière (continuité G2). Une contrainte interne est introduite par exemple à l'aide des dispositifs d'interaction homme - ordinateur tels une souris, une boule dite "space bail" ou toute autre poignée de manipulation sur un écran; elle peut être le fait que la zone déformée passe par un point -FDII(uO, vO) o la direction du plan tangent initial est conservé. Dans ce cas, il faut que les dérivées partielles en (u0,v0) remplissent les condi- tions: ad/au = 0 ad/av = 0 Cette condition est imposée avant les approximations nécessaires, comme on verra ci-dessous. Ces approximations se font sur le plus petit rectangle plan contenant DU dans le plan de projection. Avant de faire référence à une définition mathématique des lois de déformation, il peut être utile de fournir une explication fondée sur la déformation élastique d'une plaque plane mince infinie en équilibre soumise à une distribution de forces ou de moments généralisés le long des frontières d'un domaine pour respecter des contraintes de continuité. Lorsque la contrainte G est d'ordre k (recherche d'une continuité Gk), la forme modifiée résultera avantageusement de la recherche d'un minimum de l'énergie d'ordre m = k+2. La solution sous forme d'une représentation polynomiale (admissible par la plupart des systèmes de conception et fabrication assistées par ordinateur) sera obtenue par une approximation, puisque la solution optimale théorique fait intervenir des logarithmes. Il est essentiel de garder en mémoire que la déformation d(X,Y) est celle d'une plaque initialement plane et infinie, et non pas celle d'une plaque ayant la forme d'origine, dans l'analogie mathématique. Sur la figure 3, on a montré, à titre d'exemple, une distribution de forces correspondant à une déformation particulière, avec une contrainte de passage le long des côtés du domaine. Plus généralement, et comme on l'a vu plus haut, la démarche, qui permettra de déterminer la forme en respectant les contraintes externes (contraintes de bord) et internes (par exemple passage par un emplacement déterminé) sera constituée par la recherche de la déformation correspondant au minimum de l'énergie E() donnée par la formule (1). Cette démarche peut constituer une extrapolation et une adaptation de celle décrite dans l'article "An Aesthetic Preserving Algorithm for Accuracy Incompatible Modelers Data Exchange" par G. Durand, A. Leutier et A. Massabo, IDMME, 1996. La figure 4 montre les fonctions à réaliser dans la mise en oeuvre du procédé. Certaines de ces fonctions sont simple- ment optionnelles et la plupart sont déjà réalisées par des modules logiciels disponibles. Les paramètres d'entrée, fournis par un opérateur, comportent au moins: l'identification des contours de la zone à modifier, pouvant être introduite par exemple par pointage sur un écran ou sous forme de coordonnées, - la direction de déformation d choisie (ou la loi de direction dans le cas variable), - les contraintes à respecter sur les contours, - enfin, les caractéristiques de forme que doit respecter le modèle de déformation (contraintes internes). Un premier module logiciel 12 peut être prévu pour vérifier la cohérence entre au moins la forme recherchée, la direction de déformation d, et les contours à respecter. Dans certains cas en effet, une déformation suivant la direction d seule peut ne pas permettre de respecter les contraintes internes imposées au modèle. Une fois cette cohérence vérifiée, la forme est traitée par un module 14 qui en donne une projection parallèle à la direction d (sur le plan I de la figure 2). La projection sur le plan H des contours, suivant la direction d, est elle aussi déterminée par un module 16. Un autre module 18 calcule la projection de la forme sur le plan Il. Les déformations d(X,Y) sont calculées par un module 20 qui applique un algorithme du type "plaque mince infinie élasti- que", mentionné plus haut, en respectant les contraintes relatives. Cet algorithme est appliqué dans le plan I, c'est- à-dire à partir d'une forme plane, et non pas dans l'espace 3D; les déformations ainsi obtenues sont appliquées à la "surface" d'origine dans la zone retenue. Enfin, une opération de recollage est effectuée par le module 28 entre le modèle calculé et la forme de la surface" restante calculée au préalable dans un module 30 par suppres- sion de la zone modifiée. On sera amené à respecter des critères de précision quant au raccordement de la forme modifiée avec la "surface" restante ou du raccordement des tronçons de la forme modifiée entre eux. Dans ce cas, les paramètres introduits comportent des indications de précision, tenant compte de la continuité interne initiale de la forme à modifier. Le problème du respect de la précision se pose en particu- lier lorsque la "surface" à modifier comporte plusieurs éléments surfaciques se raccordant suivant des lignes qui ne concordent (notamment à cause d'approximations antérieures) qu'avec une précision limitée. Dans ce cas, le recollage devra être effectué après approximation en respectant les contrain- tes de précision. L'approximation peut être faite soit sur la forme déformée, soit sur la déformation. PREVEND I CATI ON S 1. Procédé de pr odict-ion d' une imaae oar modif icatinn d'une forme d'une zone d'une "surface" d'orig:ne en respectant une continuité d'ordre prédéterminé le long de la frontière de la zone, la déformation tendant à respecter une contrainte donnée à l'intérieur du modèle, procédé suivant lequel: on définit la frontière d'origine, les contraintes de continuité le long n de la frontière, une loi de direction de déformation pour l'ensemble de la zone et des contraintes internes à la zone à l'état déformé et on définit un modèle surfacique comme le résultat de l'application, à la zone d'origine, d'une déforma- tion définie comme la déformation élastique d'une plaque plane l: mince infinie généralisée en équilibre soumise à l'ensemble des contraintes imposées internes et à la frontière. 2. Procdé selo!n la revend ication, caractérisé en ce qu'on introdulit, en tant que contraintes internes, l'équation d'un point ou d'une courbe par laquelle doit passer la zone r déformée. 3. Procédé selon la revendication 1 ou 2, caractérisé en ce qu'on définit le modèle par recherche du minimum d'une énergie de la forme: E (%) = f(, l)2 2c, o R2 désigne l'espace paramétrique à deux dimensions sur lequel est projetée la frontière, V est l'opérateur du gradient, 3o m est un exposant qui permet de satisfaire l'ordre de la contcnuit- recherchée, désigne la fonction de déformation. 4. Procédé selon la revendication 1, 2 ou 3, caractérisé en ce qu'on adopte une même direction de déformation pour tous les points de - a z,!-e. 5. Procédé selon l'une quelconque des revendications précé- -e:--s ciracr $1'i A: ce que - la, r,_ne interne est cc:..l _ee par la d6>f-ntiori d'un po.it eE,/ou d'une courbe: par lesquels doit passer le modèle, et/ou Opour lesquels le plan tangent et/ou la nappe oscula- trice peuvent être imposés, et/ou pour lesquels les courbures normales et/ou la quadri- que osculatrice peuvent être imposées.