UNIVERSITÉ DE BOURGOGNE U.F.R. SCIENCES ET TECHNIQUE

Dimension: px
Commencer à balayer dès la page:

Download "UNIVERSITÉ DE BOURGOGNE U.F.R. SCIENCES ET TECHNIQUE"

Transcription

1 UNIVERSITÉ DE BOURGOGNE U.F.R. SCIENCES ET TECHNIQUE Mémoire présenté par Sebti Foufou en vue de l obtention de l Habilitation à Diriger des Recherches de l Université de Bourgogne - Dijon OUTILS POUR LA MODELISATION GEOMETRIQUE ET LA MODELISATION DE PRODUITS Soutenue publiquement le 8 juillet 2005 devant le jury composé de : Kadi Bouatouche Professeur à l Université Rennes 1 Rapporteur Abdelaziz Bouras Professeur à l Université Lyon 2 Rapporteur Marc Daniel Professeur à l Université de la Méditerranée Rapporteur Francis Schmitt Professeur à l ENST de Paris Rapporteur Bernard Péroche Professeur à l Université Lyon 1 Président Michael J. Pratt Professeur Emérite de Rensselaer Polytechnic Institute, Examinateur Newyork, Etats-Unis et Cranfield University, Angleterre Marc Neveu Professeur à l Université de Bourgogne Examinateur Frédéric Truchetet Professeur à l Université de Bourgogne Examinateur

2

3 A ma femme et mes deux enfants, à mes parents

4

5 Remerciements Je remercie très chaleureusement Francis Schmitt, Kadi Bouatouche, Marc Daniel et Abdelaziz Bouras d avoir accepté de me consacrer du temps et de porter leurs jugements experts sur ce travail. Je tiens également à exprimer toute ma gratitude à Mike Pratt pour avoir eu l amabilité de juger ce travail en tant qu examinateur. Enfin, un grand merci à Bernard Péroche qui m a fait le plaisir de présider le jury de cette habilitation à diriger les recherches. Ils ont apporté de multiples éclairages sur ce travail. C est un grand honneur qu ils m ont fait. Je tiens à remercier Marc Neveu pour m avoir accueilli au sein de son équipe dès mon recrutement en tant que maître de conférences et pour la confiance qu il m a témoignée depuis bientôt 7 ans. Ses encouragements et ses conseils aussi bien pour l enseignement que pour la recherche sont très précieux. Je veux lui exprimer ici ma profonde gratitude. Je voudrais exprimer ici mes sincères remerciements à Frédéric Truchetet avec qui j ai eu une collaboration très fructueuse. Il a su partager avec moi son expérience et ses compétences à travers le coencadrement de deux thèses. Ces encouragements et son dynamisme ont joué un rôle déterminant dans ce travail. Je lui suis très reconnaissant. Un grand merci à Dominique Michelucci et Dominique Faudot pour les merveilleuses années que nous avons passées au sein de l équipe synthèse d images, pour les nombreuses discussions très intéressantes que nous avons eues et pour nos collaborations passées et futures. Je remercie très chaleureusement mes collègues du National Institute of Standards and Technology, Maryland, Etat-Unis, et plus particulièrement Steven Ray, directeur de la division MSID et Ram D. Sriram, responsable du groupe de recherche sur la modélisation de produits, pour la confiance qu ils m ont témoigné en m invitant dans leur laboratoire. Mes remerciements particuliers vont également aux professeurs Steven J. Fenves, Rachuri Sudarsan et Subrahmanian Eswaren, et au Dr. X. F. Zha avec qui je viens de passer 12 mois de travail riche et très agréable. Le travail présenté dans ce mémoire est en partie le résultat des recherches de plusieurs doctorants que j ai coencadrés : Lionel Garnier le cyclideman, Michael Roy et ses maillages, Yohan Fougerolle et ses R-Fonctions et supershapes. A tous, je souhaite leur adresser mes remerciements d avoir réalisé ces travaux avec beaucoup d enthousiasmes et d avoir relevé avec succès les défais que je leur lançais. J espère leur avoir apporté au moins autant qu ils m ont apporté. Je remercie les collègues du département IEM, de l UFR sciences et techniques et de l IUT de Dijon avec qui je travaille et je partage les problèmes et les plaisirs quotidiens. Enfin, je ne saurais suffisamment remercier ma femme, pour son soutien de tous les jours, pour sa patience et son aide précieuses. Mes remerciements vont bien sur à mes parents et à mes amis qui sont toujours présents. i

6

7 Résumé Ce rapport d HDR décrit mes activités de recherche dans les deux thématiques de modélisation géométrique de surfaces d objets 3D et de modélisation des données de produits manufacturiers. Dans le contexte de la modélisation de scènes réelles numérisées ou de l image de synthèse, où on parle souvent d objets 3D, l élément clef de la représentation est la géométrie, et le but est de trouver la surface ou le maillage qui représente le plus fidèlement possible la forme de l objet considéré. Dans le contexte de la CAO, où on parle plutôt de produits, la géométrie est importante certes, mais la représentation doit absolument être complétée par d autres données non géométriques, dites données de conception, relatives aux besoins, aux spécifications techniques, aux matériaux, à la décomposition fonctionnelle du produit, etc. La partie modélisation géométrique est structurée autour des trois axes suivants : (i) Modélisation à base de cyclides de Dupin et des supercyclides. (ii) Comparaison et analyse multirésolution de maillages triangulaires multi-attributs. (iii) Combinaison de surfaces pour la représentation d objets 3D. Pour construire cette combinaison, les CdD ont été utilisées pour la jointure des quadriques, les intersections des surfaces de subdivision pour évaluer les opérations booléennes, et les R-fonctions pour fusionner plusieurs surfaces algébriques. La partie modélisation de cycle de vie de produit a été développée lors de mes séjours au NIST (Maryland, Etats-Unis) dans le but de développer de nouvelles approches pour la gestion des phases du cycle de vie du produit. Cette activité inclue les recherches sur les normes pour le PLM et sur la représentation en UML de modèles génériques -Core Product Model (CPM) et Open Assembly Model (OAM)- pour modéliser et échanger les données produit ; ainsi que sur l utilisation des représentations formelles (sous forme d ontologies) pour l intégration et la conformité des normes en fabrication. iii

8

9 Abstract This report presents my research activities on geometric modelling of surfaces representing 3D shapes and product lifecycle management (PLM). In the context of image synthesis and real scenes modelling, where we are mostly dealing with 3D objects, the key element of any representation is the geometry and the goal is to find the surface or the mesh that faithfully represents the considered shape. In the context of CAD, where we are mostly dealing with products, geometry is of course important, but the representation has to be completed by other non geometric data called design data which concerns customer needs, technical specification, material, functional decomposition etc. The geometric modelling part of this report is structured around the following three axes : (i) Surface modelling based on Dupin cyclides and supercyclides. (ii) Comparison and mutiresolution analysis of multi-attributes triangular meshes. (iii) Combining of surfaces for 3D objects representations. Dupin cyclides are used for the blending of quadrics ; Intersection of subdivision surfaces is used to evaluate Boolean operations ; and R-functions are used to merge algebraic surfaces. The product lifecycle modelling (PLM) part of this report is developed during my work, as guest researcher at NIST (Maryland, USA), on the development of new approaches for PLM support. This activity includes researches on standards that support PLM applications ; UML representation of generic models -Core Product Model (CPM) and Open Assembly Model(OAM)- to represent and exchange product data ; and the use of formal representations (ontologies) for standards integrations and standards conformances in manufacturing. v

10

11 Table des matières 1 Introduction Mes recherches en modélisation géométrique Mes recherches en modélisation de produits Structure du document Cyclides de Dupin Introduction Définitions et propriétés générales des CdD Les supercyclides Lignes de courbure et cercles principaux des CdD Lignes de courbure Cercles principaux des CdD Détermination des paramètres de la CdD à partir de deux cercles principaux Conversion des CdD en carreaux de Bézier Amélioration de l algorithme de Pratt Algorithme barycentrique Algorithme à base des propriétés de Ueda et des barycentres Comparaison des algorithmes de conversion des CdD en Bézier Conversion d un carreau de CdD en anneau Conversion de toute une CdD Conclusion Analyse Multirésolution Introduction vii

12 viii TABLE DES MATIÈRES 3.2 Mesure de déviation et comparaison de maillages Algorithmes de simplification et mesures d erreurs Comparaison de maillages Mesure de déviation d attribut Applications Mise en œuvre Résultats Représentation en niveaux de détails de modèles 3D Analyse multirésolution de maillages Schémas d analyse multirésolution proposés Analyse multirésolution interpolante Analyse multirésolution approximante Quelques résultats expérimentaux Applications de l analyse multirésolution Segmentation Reconstruction et simplification adaptatives Visualisation adaptative Débruitage Conclusion Combinaison de surfaces Introduction Jointure des surfaces quadriques par les cyclides de Dupin Détermination des bornes de la CdD utile lors de jointures Jointures surfaces de révolution-plans Jointure entre quadriques de révolution Exemples d objets modélisés par mélange CdD/quadriques Combinaison de surfaces de subdivision par intersection Algorithme naïf Algorithme de voisinage Algorithme utilisant un graphe biparti

13 TABLE DES MATIÈRES ix Comparaison des trois algorithmes Combinaison des surfaces algébriques par les R-fonctions Introduction Superquadriques et supershapes R-fonctions Modélisation Reconstruction de Surfaces Contraintes géométriques pour la combinaison et la modélisation de surfaces Conclusion Modélisation de produits Introduction Outils pour le PLM Le CPM : un modèle de base pour représenter les données de conception L OAM : une extension du CPM pour représenter les données d assemblage Une typologie de normes pour le cycle de vie du produit Intégration sémantique de normes Conclusion Publications, encadrements Liste des publications Encadrements de thèses Encadrements de stages de DEA Collaborations Internationales Perspectives 125 Bibliographie 129 Annexe 143

14

15 Table des figures 2.1 Exemples de cyclide de Dupin. La partie noire est un carreau de CdD délimité par quatre lignes de courbure circulaires Cercles de courbure d une CdD. (a) lignes de courbure obtenues avec θ constant. (b) lignes de courbure obtenues avec ψ constant Intersections communes des plans contenant les cercles de courbure avec θ constant Intersections communes des plans contenant les cercles de courbure avec ψ constant Cercles principaux d une CdD. (a) CdD en anneau. (b) CdD à croissant externe. (c) CdD à croissant interne Coupe d une CdD par le plan de symétrie P y d équation (y = 0). (a) CdD en anneau ou à croissant externe. (b) CdD à croissant interne Demis-CdD délimitées par le plan de symétrie P y d équation (y = 0). (a) CdD en anneau. (b) CdD à croissant externe. (c) CdD à croissant interne Conversion d un morceau de CdD en un carreau de Bézier. (a) le carreau de CdD. (b) le carreau de Bézier correspondant Conversion d un carreau de CdD en carreau de Bézier. (a) Carreau de CdD à convertir. (b) résultat de l algorithme de Pratt. (c) résultat avec poids positifs Conversion d une CdD en plusieurs carreaux de Bézier avec tous les poids positifs. (a) la CdD à convertir. (b) conversion en seize carreaux de Bézier. (c) conversion en neuf carreaux de Bézier Conversion d un carreau de CdD en un carreau de Bézier après une reparamétrisationaffine de la CdD, changement de c en c. (a) le carreau de CdD à convertir. (b) le carreau de Bézier obtenu et son polyèdre de contrôle Conversion d un carreau de CdD en carreau de Bézier quasi-standard en utilisant l algorithme 1. Les poids sont positifs le long des lignes de courbure. (a) le carreau de CdD à convertir. (b) le carreau de Bézier quasi-standard résultant de la conversion avec son polyèdre de contrôle Conversion d un morceau de CdD en carreaux de Bézier en utilisant l algorithme 1. Les poids sont négatifs le long des lignes de courbure avec ψ constant et θ 1 = π. (a) et (b) deux vues de la CdD. (c) le carreau de Bézier obtenu et son polyèdre de contrôle. 19 xi

16 xii TABLE DES FIGURES 2.14 Conversion d une CdD en quatre carreaux de Bézier quasi-standard. (a) la CdD à convertir. (b) et (c) les quatre carreaux de Bézier quasi-standard résultants Exemples de conversions de carreaux de CdD en Bézier. (a) carreau d une CdD à croissant interne. (b) carreau d une CdD à croissant externe Exemples de conversion d un carreau d une CdD en carreau de Bézier avec des poids positifs et deux lignes de courbure obtenues avec π Exemples de conversion d un carreau d une CdD en anneau en un carreau de Bézier. (a) la CdD, le carreau de Bézier et son polyèdre de contrôle. (b) deux quarts du carreau de Bézier, obtenu par un des algorithmes reposant sur les propriétés barycentriques, et son polyèdre de contrôle. (c) deux quarts du carreau de Bézier, obtenu par un des algorithmes reposant sur la méthode de M. Pratt, et son polyèdre de contrôle Exemples de conversion d une CdD en quatre carreaux de Bézier en utilisant l algorithme barycentrique. (a) la CdD. (b) 4 carreaux de Bézier obtenus avec θ 0 et θ 1 symétriques par rapport à 0. (c) 4 carreaux de Bézier obtenus avec ψ 0 et ψ 1 symétriques par rapport à π Exemples de conversion d une CdD en carreaux de Bézier en utilisant l algorithme de Pratt et ses deux variantes. (a) 4 carreaux de Bézier, algorithme de Pratt et sa première variante. (b) 6 carreaux de Bézier, algorithme de Pratt et sa deuxième variante. (c) 9 carreaux de Bézier, variante 1 de l algorithme de Pratt Exemples de conversion d une CdD en anneau en carreaux de Bézier en utilisant l algorithme à base de Ueda et de barycentres. (a) 4 carreaux de Bézier. (b) 9 carreaux de Bézier. (c) 16 carreaux de Bézier Mesure de déviation d attribut Discrétisation d une face Échelle de couleurs pour la mesure de déviations Comparaison de la mesure de déviation d attribut et la distance de Cohen Comparaison de trois algorithmes de simplification Comparaison visuelle de la déviation géométrique Comparaison visuelle de la déviation des normales Comparaison numérique de la déviation moyenne géométrique Comparaison numérique de la déviation moyenne des normales Histogramme de la déviation géométrique Histogramme de la déviation des normales Suppression d un sommet Contraction d arête et séparation de sommet

17 TABLE DES FIGURES xiii 3.14 Analyse interpolante Analyse approximante Schéma de décomposition de l analyse interpolante Schéma de reconstruction de l analyse interpolante Schéma de décomposition de l analyse approximante Schéma de reconstruction de l analyse approximante Reconstruction approximante Analyse multirésolution du modèle "Waterneck" Analyse des attributs de couleur du modèle "Terre" Analyse multirésolution du modèle Swirl Histogrammes des coefficients de détail Segmentation des détails du modèle "Fandisk" Schéma de reconstruction adaptative Modèle de terrain comportant plusieurs niveaux de résolution Simplification adaptative du modèle "Bunny" Visualisation adaptative du modèle "Buddha" Débruitage d un modèle CAO bruité artificiellement Exemple d opérations booléennes Présentation du problème de la détermination de la partie utile de la CdD lors d une opération de jointure (entre un plan et un cylindre de révolution) Coupe de la construction par le plan P y de la jointure entre un plan et une surface de révolution par une CdD. (a) construction de type poteau. (b) construction de type récipient Exemples de jointure surfaces de révolution plan. (a) Ellipsoïde de révolution. (b) Cone de révolution, la CdD obtenue est une CdD en anneau. (c) Hyperboloïde de révolution à une nappe, CdD à croissant interne. (d) Tore ; la jointure est faite sur le trou du tore. (e) Caténoïde ; CdD à croissant externe. (f) Pseudosphère. (g) Cylindre Jointure entre un cône et une sphère. (a) par deux CdD. (b) par deux CdD et un cylindre de révolution Coupe de la construction d une jointure G 1 entre un cylindre et une sphère Trois exemples d une CdD effectuant une jointure G 1 entre une sphère et un cylindre de révolution, construction de la Figure 4.6(a). (a) et (b) CdD en anneau. (c) CdD à croissant interne

18 xiv TABLE DES FIGURES 4.8 Schéma de construction de deux courbes rationnelles quadratiques de Bézier modélisant des arcs de cercle tangents aux génératrices d un cône de révolution et d un cylindre de révolution Jointure G 1 entre un cône de révolution et un cylindre de révolution par une CdD. (a) un pavillon de phonographe. (b) un chapeau d amazone. (c) un filet qui transporte un cône Exemples de jointures G 1 entre un cône de révolution et une sphère par deux CdD Exemples de jointure G 1 entre un cône de révolution et une sphère par deux CdD et un cylindre. (a) et (b) deux CdD en anneau. (c) et (d) une CdD en anneau (cône-cylindre), une CdD à croissant interne (sphère-cylindre) Une lampe de chevet Antenne parabolique portable pour réception satellite Le modèle d Eurographics 2004 : Hugo Le modèle d Eurographics 2004 modélisé par des surfaces de révolution : cylindres, cônes, sphères, ellipsoïdes et CdD Tête de Hugo modélisée par des surfaces de révolution : cylindres, cônes, sphères ou ellipsoïdes et CdD. (a) coupe de la construction du crâne au bonnet. (b) coupe de la construction du cou au crâne. (c) rendu 3D Courbes d intersections à des niveaux de subdivision successifs Deux cas d intersection face/face voisinage V 1 (F) et 2-voisinage V 2 (F), ainsi que leurs subdivisions W 1 (F) et W 2 (F) Courbe d intersection au premier niveau avec les faces en intersection Faces en intersection. (a) 1-Voisinage V 1 (I i ). (b) 1-Voisinage de la subdivision W 1 (I i ) Intersection au niveau 1. (a) la courbe obtenue. (b) les faces participant à l intersection Voisinage, subdivision et courbe d intersection au niveau Exemple de faces très éloignées Exemple de construction d un graphe où F i et G i sont respectivement des éléments de I 1 et de I Construction du graphe biparti initial Etape 1 : Récupération des 1-voisinages V 1 (F i ) et V 1 (G k ) Etape 2 : Obtention des W 1 (F i ) et de W 1 (G k ) par subdivision partielle de V 1 (F i ) et V 1 (G k ) Construction du nouveau graphe biparti à l aide des couples de faces en intersection de W 1 (F i ) et de W 1 (G k )

19 TABLE DES FIGURES xv 4.30 Comparaison du nombre de tests à effectuer pour les différents algorithmes dans le cas de l intersection de deux surfaces de 12 faces au niveau initial Graphes des données de la Figure Comparaison du temps de calcul pour les trois algorithmes sur des maillages initiaux de 12 faces Graphes des données de la Figure Exemples de superquadriques (en haut) et supershapes (en bas) Supershapes. (a) Interprétation géométrique. (b) L intensité du champs scalaire généré pour une section plane z = const en utilisant l équation (4.6) Example of 3D supershapes with m a natural number. (a) m = 3, M = 6, n 1 = N 1 = 1000, n 2 = n 3 = 1980 N 2 = N 3 = 390. (b) m = 5, M = 6, n i = 100, N i = 10, i = 1, 2, 3. (c) m = 8, M = 4, n 1 = 1.5, n 2 = 3.5, n 3 = 1, N i = 100, i = 1, 2, 3. (d) m = M = 8, n 1 = N 1 = 100, n 2 = n 3 = N 2 = N 3 = Un exemple d objet. (a) Diagramme de Venn. (b) quadrants booléens Fonctions de mélange et exemple d union de deux disques. Intensité des R-disjonctions (a) R α=1 (x, y) = max(x, y), (b) R m=2 0 (x, y) et (c) R p=4 (x, y) sur l intervalle [ 1, 1] 2. En bleu la fonction est minimum et maximum en rouge sur cet intervalle. En noir est représentée la courbe R (x, y) = 0. Intensité de la fonction implicite correspondant à l union de deux disques d équations f 1 (x, y) et f 2 (x, y) en utilisant respectivement (d) R α=1 ( f 1 (x, y), f 2 (x, y)) = max( f 1 (x, y), f 2 (x, y)), (e) R m=2 0 ( f 1 (x, y), f 2 (x, y)) et (f) R p=4 ( f 1 (x, y), f 2 (x, y)) Déformations. (a) De gauche à droite : supershape mise à l échelle, pincement, vrille, torsion et combinaison des quatre déformations. (b) Exemple de déformation appliquée à la racine d un arbre CSG représentant un boulon Schéma général de l algorithme qui calcule les opérations booléennes Détection et découpage des faces intersectantes. (a) Séquence de faces traversées par une courbe d intersection. (b) Sur un segment paramétrique, l approximation d un point d intersection I + ou I dépend de l opération booléenne Exemple de pièce mécanique I : 24 supershapes et 21 opérations booléennes. (a) Modèle CAO, (b) Représentation par supershapes, (c) Intensité de la fonction implicite en utilisant R p=2 -fonctions Exemple de pièce mécanique II : 54 supershapes et 31 opérations booléennes. (a) Modèle CAO, (b) Représentation par supershapes, (c) Intensité de la fonction implicite en utilisant R p=2 -fonctions Pont arrière de camion : modèle CAO (gauche) et sa représentation par supershapes (droite) Evolution d une supershape reconstruite à partir d un nuage de synthèse. (a) Objet initial. (b) Résultat après 1 itération (c) Résultat après 5 itérations

20 xvi TABLE DES FIGURES 4.46 Modèle "Waterneck", maillage, surface reconstruite, et erreur de reconstruction. Le modèle original est composé 134k faces. (a) Maillage segmenté manuellement en 9 parts. (b) Représentation par supershapes. (c) Mesure d erreur (bleu pour l erreur minimum et rouge pour l erreur maximum Le cycle de vie du produit Diagramme de classes du CPM Le type complexe Artifact du schéma XML du CPM Exemple de contraintes de consistance dans le schéma XML correspondant au CPM Le système d engrenage planétaire L élément Artifact représentant le système d engrenage planétaire L élément Behavior associé au système d engrenage planétaire L élément Function associé au système d engrenage planétaire Diagramme de classes de l OAM L assemblage planet-gear-carrier Diagramme d instances pour l assemblage planet-gear-carrier Diagramme d instances pour l assemblage planet-gear-carrier avec la notion d usage Les relations entre les normes et le PLM Trois exemples de codes. Haut : code, conforme à l ISO 1832, pour une plaquette. Milieu : code, conforme à l ISO 5608, pour un porte-outil. Bas : Code de porte-outil donné par un fournisseur, la première partie du code est conforme à la norme, mais la deuxième partie est propre à ce fournisseur Axiomes de base pour décrire les angles des outils de coupe Définition des formes des plaquettes Définition des styles des porte-outils Les axiomes de la relation de montage Exemples de requêtes

21 Liste des tableaux 2.1 Coordonnées des points de contrôle et des poids de la Figure Poids des carreaux de Bézier de la Figure Les deux derniers poids ont été aussi normalisés par rapport à w 00 afin de faciliter les comparaisons Ressemblances et différences entre les algorithmes de conversion de CdD en carreaux de Bézier Résultats numériques du logiciel MeshDev Détails de l antenne satellite Primitives utilisées (CdD et quadriques de révolution) pour modéliser Hugo xvii

22

23 Chapitre 1 Introduction Après une thèse, soutenue en Juillet 1997 au laboratoire LIGIM de l Université Claude Bernard Lyon I sur l étude des intersections de surfaces paramétriques en algèbre des solides, j ai été nommé en septembre 1998 au poste de maître de conférences à l Université de Bourgogne à Dijon et rattaché au Laboratoire Electronique, Informatique et Image (LE2I). J ai intégré l équipe synthèse d images dirigée par le Professeur Marc Neveu. Les thèmes de recherche de ma nouvelle équipe concernaient principalement la modélisation surfacique, les déformations sous contraintes de formes libres et la reconstruction 3D. Depuis, j ai beaucoup travaillé avec les membres de cette équipe, mais aussi avec le Professeur Frédéric Truchetet de l équipe de traitement du signal du Creusot. Dans ce contexte, j ai travaillé sur des problèmes de représentation 3D et de modélisation de surfaces. En Juillet-Août 2002, j ai été invité par le docteur Ram D. Sriram dans son groupe de recherche sur la modélisation de produits à l Institut National des Standards et de la Technologie (NIST), Maryland, Etats-Unis. Durant ce court séjour j ai été séduit par la thématique de modélisation de produits : j ai pris connaissance de l importance des données et des connaissances non géométriques dans la Conception Assistée par Ordinateur (CAO) et l intérêt d une modélisation fine et minutieuse de ces données. Ce court séjour s est ainsi poursuivi par des séjours de recherche plus longs (5 mois en 2004 et 12 mois en 2005) pendant lesquels j ai travaillé sur la représentation des données de conception, la représentation des données d assemblage, et l utilisation des ontologies pour l intégrations des normes. Je classifie ainsi mes activités de recherche dans deux thématiques complémentaires : la modélisation géométrique de surfaces d objets 3D et la modélisation des données de produits manufacturiers. Dans le contexte de la modélisation de scènes réelles numérisées ou de l image de synthèse, où on parle souvent d objets 3D, l élément clef de la représentation est la géométrie, et le but est de trouver la surface ou le maillage qui représente le plus fidèlement possible la forme de l objet considéré. Dans le contexte de la CAO, où on parle plutôt de produits, la géométrie est importante certes, mais la représentation doit absolument être complétée par d autres données non géométriques, dites données de conception, relatives aux besoins, aux spécifications techniques, aux matériaux, à la décomposition fonctionnelle du produit, etc. Laboratoire d informatique graphique, d images et de modélisation. Actuellement partie du laboratoire LIRIS 1

24 2 Chapitre 1. Introduction 1.1 Mes recherches en modélisation géométrique Apparue au début des années 1970, la modélisation géométrique s intéresse à la représentation des objets solides. Les deux approches principalement utilisées en modélisation géométrique sont connues sous les noms de CSG (Constructive Solid Geometry) et B-Rep (Boundary Representation). Dans le modèle CSG, un objet est représenté comme une composition booléenne d objets plus simples appelés primitives, où la surface de l objet et son intérieur sont implicitement définis. Le modèle B- Rep représente un objet comme une surface orientée composée d un ensemble de sommets, faces et arêtes. Les avantages et inconvénients inhérents à ces deux méthodes ont été présentés et discutés par Requicha [188, 139] et Hoffmann [84]. La représentation CSG permet de combiner des primitives implicites de manière simple, naturelle et efficace. Malheureusement, les représentations implicites ne permettent pas d évaluer directement et exactement les sommets nécessaires à la représentation de la surface. Les algorithmes de polygonisation de surface, tels que les Marching Cubes, ne fournissent qu une approximation de la surface et le traitement des arêtes vives nécessite des algorithmes spécialisés [126, 190]. Par opposition, les représentations paramétriques telles que les surfaces de Bézier, les NURBS (Non Uniform Rational B-Splines) ou les surfaces de subdivision permettent de calculer directement et exactement les points de la surface, mais en contrepartie, les calculs d intériorité ou d extériorité nécessitent des opérations coûteuses devant être évaluées sur l ensemble des éléments d un objet (faces, sommets et arêtes) ; de plus ils posent des problèmes de robustesse. Mon activité de recherche en modélisation géométrique s est construite principalement autour des trois axes suivants : Modélisation à base de cyclides de Dupin (CdD) : cet axe concerne l étude des propriétés des CdD, et leur utilisation pour la représentation d objets 3D. Comparaison et analyse multirésolution de maillages : cet axe concerne les maillages triangulaires multi-attributs. Nous avons proposé une nouvelle méthode pour comparer et caractériser la différence entre deux maillages, ainsi que deux schémas d analyse multirésolution pour faire une manipulation multi-échelles de maillages. Combinaison de surfaces : cet axe concerne la combinaison de plusieurs primitives pour obtenir la surface représentant un objet 3D. Pour construire cette combinaison, les CdD ont été utilisées pour la jointure des quadriques, les intersections des surfaces de subdivision pour évaluer les opérations booléennes, et les R-fonctions pour fusionner plusieurs surfaces algébriques. Comment je suis venu aux cyclides de Dupin? Comme suite à mes travaux de thèse sur le calcul des intersections de surfaces en algèbre des solides, je cherchais un moyen plus naturel pour résoudre le problème récurrent de l intersection de surfaces. L utilisation de surfaces ayant à la fois une représentation implicite et une représentation paramétrique me semble adéquat. Lors de ma rencontre avec le professeur Mike Pratt en 1999 dans une conférence en Floride, j ai été séduit par son discours sur les cyclides de Dupin et leurs propriétés intéressantes pour la modélisation géométrique. Les cyclides de Dupin (CdD) sont des surfaces algébriques non sphériques proposées pour la première fois par le mathématicien Français Charles Pierre Dupin au début du 19 e siècle. Les CdD possèdent à

25 1.1. Mes recherches en modélisation géométrique 3 la fois une représentation paramétrique et une représentation implicite de degré 4 (donc pas de complexité particulière pour calculer leurs intersections). Elles ont des lignes de courbures circulaires et des cercles principaux qui permettent de déterminer les paramètres de la surface. Nous avons analysé les propriétés des CdD et proposé des algorithmes pour leur conversion en surfaces biquadratiques de Bézier et pour les utiliser dans le raccordement des quadriques et la modélisation d objets 3D. Ce thème a été développé dans le cadre de la thèse de Lionel Garnier, soutenue en décembre 2004, que j ai codirigée avec le Professeur Marc Neveu. Comparaison et analyse multirésolution de maillages Les techniques d acquisition ou de conception des modèles 3D (modeleurs, scanners, capteurs, etc.) produisent généralement des ensembles de données très denses contenant à la fois des attributs géométriques et des attributs d apparence. Les attributs géométriques décrivent la forme et les dimensions de l objet et incluent les données relatives à l ensemble de points sur la surface de l objet modélisé. Les attributs d apparence contiennent des informations décrivant l aspect extérieur de l objet tel que les couleurs, les textures, les motifs, etc. Nous avons proposé une méthode pour mesurer la qualité de simplification d un maillage. La mesure est effectuée par comparaison entre le maillage original et sa représentation simplifiée. Nous nous sommes également intéressés à l analyse multirésolution de ces maillages et nous avons proposé deux schémas d analyse multirésolution qui permettent une gestion complète de tous les attributs représentant un modèle 3D. Ces schémas sont basés sur un opérateur de relaxation capable de traiter les attributs géométriques ainsi que les attributs d apparence. Nous avons utilisé ces schémas multirésolution dans diverses applications, notamment pour la visualisation adaptative et le débruitage de modèles numériques. Ce thème a été développé dans le cadre de la thèse de Michael Roy, soutenue en décembre 2004, que j ai codirigée avec le Professeur Frédéric Truchetet. Combinaison de surfaces Avec Lionel Garnier nous avons proposé plusieurs algorithmes pour utiliser les CdD dans les opérations de jointure de surfaces notamment pour les jointures des quadriques de révolution et nous avons montré à travers plusieurs exemples comment ces jointures peuvent aider dans la représentation d objets 3D. Les lignes de courbures circulaires des CdD et la possibilité de d obtenir les paramètres d une CdD à partir de ses cercles principaux sont les deux propriétés importantes des CdD qui facilitent les calculs des carreaux de CdD joignant deux surfaces quadriques. Les courbes rationnelles biquadratiques de Bézier ont été utilisées pour modéliser les cercles principaux des CdD de jointure. Dans le cadre de la thèse de Sandrine Lanquetin, encadrée par le Professeur Marc Neveu et soutenue en septembre 2004, j ai contribué essentiellement sur l aspect intersection et opérations booléennes entre des objets représentés par des surfaces de subdivision. Le calcul d intersection, qui est une opération fondamentale pour réaliser des opérations booléennes, peut s avérer lourd et complexe dans le cas de surfaces de subdivision car le nombre de faces participant à l intersection et nécessitant une évaluation s accroît considérablement d un niveau de subdivision à un autre. Dans nos expérimentations, nous n avons considéré que les surfaces obtenues par le schéma de subdivision de Loop et nous

26 4 Chapitre 1. Introduction avons proposé et comparé trois algorithmes de calcul différents. Etant donné deux objets (représentés par deux surfaces de subdivision), ces algorithmes commencent par déterminer les faces en position d intersection puis procèdent à l évaluation de cette intersection. Actuellement, dans le cadre d une collaboration avec le laboratoire IRIS de l Université du Tennessee, Etats-Unis, je codirige avec le Professeur Frédéric Truchetet la thèse de Yohan Fougerolle. Dans ce travail, nous nous sommes intéressés à la reconstruction de surfaces à partir de nuages de points 3D. Le processus complet que nous envisageons de développer se décompose en trois étapes : (i) une étape de segmentation pour décomposer le nuage de points en K-partitions où chaque partition peut faire l objet d une approximation par une surface unique (une superquadrique, une supershape ou autre). (ii) une étape de reconstruction pour calculer la surface d approximation pour chaque partition obtenue précédemment. (iii) une étape de raccordement pour joindre les différentes surfaces résultantes de l étape deux et déterminer les équations paramétrique et implicite de la surface globale. Ce travail est encore en cours de réalisation. Nos premières résultats sur ce thème ont donné lieu à une méthode basée sur les R-fonctions pour faire des opérations booléennes entre plusieurs primitives algébriques. Les primitives combinées sont des supershapes et le résultat est l équation implicite et/ou paramétrique d une seule surface (une approximation de l objet). L utilisation d autres primitives telles que les quadriques et les cyclides de Dupin peut également être envisagée. 1.2 Mes recherches en modélisation de produits Cette thématique a été développée lors de mes séjours au NIST dans le but de mettre en place un ensemble d outils pour le développement des applications de gestion des phases du cycle de vie du produit. Dans ce cadre nous avons : Procédé à la révision d un modèle générique de gestion de produit, dit Core Product Model (CPM). Nous avons complété ce modèle, afin de représenter plus de données, et proposé des implantations avec les langages Java, XML et OWL. Etudié l utilisation combinée du CPM et de l une de ses extensions, dite Open Assembly Model (OAM), pour modéliser et échanger les informations générées pendant la phase de conception d un objet manufacturier. Identifié une typologie de normes sur lesquelles les applications PLM peuvent s appuyer pour la représentation, la visualisation et l échange de données. Etudié l utilisation des représentations formelles (sous forme d ontologies) pour l intégration des normes (interprétation des règles, extraction des données, tests de conformité, etc.). Nous avons proposé une ontologie, définie sous forme d un ensemble de règles et d axiomes écrits en langauge KIF, pour l intégration de deux normes en fabrication. National Institute of Standards and Technology, Gaithersburg, Maryland, Etats-Unis Dans la littérature, la thématique de gestion du cycle de vie du produit est souvent référencée par l acronyme PLM (Product Lifecycle Management). J utiliserai ainsi cet acronyme tout le long de ce document.

27 1.3. Structure du document Structure du document Ce rapport décrit mes activités de recherche dans les deux thématiques citées précédemment : modélisation géométrique et modélisation de cycle de vie du produit. Il est structuré en 7 chapitres et une annexe. Chapitre 2 : Ce chapitre est dédié à l étude des cyclides de Dupin (CdD) et les algorithmes de conversions des CdD en carreaux de Bézier. Après une brève revue bibliographique, la section 2.2 donne la définition et les propriétés générales de ces surfaces. Ensuite, la section 2.3 introduit les supercyclides comme une généralisation des DdD. Les propriétés importantes des lignes de courbure et des cercles principaux des CdD, ainsi que la détermination des paramètres de la CdD à partir de ses deux cercles principaux sont détaillées dans la section 2.4. Je parle de la conversion des CdD en carreaux de Bézier rationnels biquadratiques et je présente les algorithmes de conversion que nous avons adoptés ou développés dans la section 2.5. Ce chapitre se termine par une comparaison des différents algorithmes présentés. Chapitre 3 : Ce chapitre présente nos travaux sur les maillages triangulaires. La section 3.2 présente le lien entre les algorithmes de simplification de maillages et la mesure d erreur de simplification ; il décrit notre algorithme de comparaison de maillages et présente la mesure de déviation d attributs sur laquelle cet algorithme s appuie. La section 3.3 présente les résultats de l application de cet algorithme pour mesurer la qualité de quelques méthodes de simplification. La section 3.4 introduit la notion de représentation en niveaux de détails de modèles 3D et passe en revue les principales méthodes de représentation en niveaux de détails proposées dans la littérature. La section 3.5 est consacrée à l analyse multirésolution de maillages. Les deux schémas d analyse multirésolution que nous avons développés sont présentés après une brève revue des différentes approches multirésolution existantes. Ce chapitre se termine en montrant l utilité des deux schémas proposés à travers de nombreuses applications tel que la visualisation adaptative et le débruitage de modèles numériques. Chapitre 4 : Ce chapitre présente nos travaux sur les jointures et les combinaisons de surfaces. La section 4.2 décrit l utilisation des CdD pour la jointure des surfaces quadriques, montre plusieurs cas de jointure, et donne quelques exemples d objets modélisés par une combinaison des CdD et des quadriques. Notre approche pour la combinaison de surfaces de subdivision par calcul d intersection est présentée dans la section 4.3. Trois différents algorithmes de calcul d intersection seront présentés et comparés. La section 4.4 est consacrée à la combinaison des surfaces algébriques par les R-fonctions ; elle commence par présenter les R-fonctions et les surfaces supershapes, puis montre comment utiliser les R-fonctions pour assurer des opérations booléennes de type CSG entre objets représentés par des supershapes. Ce chapitre se termine en discutant quelques exemples d applications. Chapitre 5 : Ce chapitre décrit nos travaux sur la modélisation de produits et essentiellement le développement de modèles pour la représentation des données non géométriques caractérisant le cycle de vie du produit. Après une analyse des besoins en modélisation de ces données dans l introduction, la section 5.2 présente deux modèles de données (le CPM, et l OAM) et donne une typologie des différentes normes pouvant soutenir les applications de gestion de cycle de vie du produit. La section 5.3 présente un travail, encore en cours, sur l utilisation des ontologies pour capturer la sémantique contenue dans les normes de fabrication, elle discute une ontologie développée pour faciliter l intégration de la norme ISO 5608, pour les codes des porte-outils, et la norme ISO 1832 pour les codes des plaquettes de coupe en usinage.

28 6 Chapitre 1. Introduction Chapitre 6 : Ce chapitre donne la liste de mes publications, présente les encadrements de thèses et de stages de DEA auxquels j ai participé, et résume mes collaborations internationales. Chapitre 7 : Le document se termine par une présentation des perspectives de nos recherches à la fois en modélisation géométrique et en modélisation de produits. Annexe : Cette annexe contient des copies des articles les plus représentatifs de nos travaux.

29 Chapitre 2 Modélisation à base des cyclides de Dupin Ce chapitre présente les propriétés générales des CdD (équations, cercles principaux, cercles de courbures, etc.) et donne les algorithmes de conversion des CdD en surfaces rationnelles biquadratiques de Bézier. L utilisation des CdD pour la jointure des quadriques de révolution sera présentée dans le chapitre 4 qui est consacré aux opérations de combinaison de surfaces. 2.1 Introduction En CAO, les objets sont souvent représentés par des surfaces paramétriques de type Bézier, Bspline, NURBS, etc. Cette représentation convient très bien aux tâches de design et de rendu qui sont très courantes dans un système de CAO, mais certaines opérations très importantes sont difficiles à réaliser sur les surfaces paramétriques (vérifier l appartenance d un point p(x, y, z) à la surface, le calcul de l intersection de deux ou plusieurs surfaces paramétriques, etc.). A leur tour les surfaces implicites de faible degré (les quadriques : cône, cylindre, sphère, plan) conviennent mieux à des tâches comme la classification de points et permettent des calculs géométriques rapides et robustes. L utilisation des surfaces implicites de degré plus élevé est cependant très difficile voire impossible, vues les difficultés qu on peut avoir pour contrôler la forme de telles surfaces. Une surface possédant les avantages des deux représentations constitue certainement un outil de modélisation très puissant, malheureusement la conversion entre les deux représentations n est pas la bonne solution : convertir une surface implicite quelconque en une surface paramétrique n est pas toujours possible. La conversion des surfaces paramétriques en implicites produit des degrés très élevés (la surface implicite qui résulte de l implicitisation d une Bézier de degré 4 est de degré 32). Le mathématicien Français Charles-Pierre Dupin a introduit au début du 19 e siècle des surfaces non sphériques ayant des lignes de courbure circulaires et possédant à la fois une représentation paramétrique et une représentation implicite. Dans son livre, Applications de la Géométrie, publié à Paris en 1822 [45], il a appelé ces surfaces les cyclides. Les cyclides de Dupin (CdD) font partie de la famille des cyclides qui sont des surfaces plus générales possédant la particularité de contenir le cercle à l infini comme ligne double [32, 33]. Au début du 19 e siècle, ces surfaces ont été rencontrées en premier par M. Moutard dans son étude des surfaces anallagmatiques [123]. Durant le reste de ce siècle et le début du 20 e siècle, les propriétés mathématiques des CdD ont été étudiées par d autres mathémati- 7

30 8 Chapitre 2. Cyclides de Dupin ciens [118, 56]. En fonction du degré, on distingue deux types de CdD cubiques (de degré 3) et CdD quartiques (de degré 4). Récemment, une renouveau de ces surfaces a eu lieu. En effet les cyclides de Dupin (CdD) sont à nouveau explorées pour être utilisées en modélisation géométrique. Le fait de posséder un faible degré algébrique et une représentation paramétrique simple confère à ces surfaces à la fois les avantages de la représentation implicite et les avantages de la représentation paramétrique. Avoir un faible degré algébrique permet la mise en place d algorithmes robustes et relativement rapides pour les calculs géométriques (appartenance d un point à la surface, dérivées, tangentes). Avoir une représentation paramétrique permet une édition et une visualisation plus rapides de ces surfaces. Dans ce mémoire, nous n utilisons que les CdD quartiques et les supercyclides quartiques. Le premier qui a pensé à l utilisation de ces surfaces en modélisation géométrique et en CAO fut R. Martin, dans sa thèse, en 1982 [117]. Les propriétés des cyclides ont par la suite été beaucoup étudiées [14, 13, 82, 132, 7, 46, 133], ce qui a permis de montrer l adéquation et l apport de ces surfaces pour la modélisation géométrique [4, 133, 161, 24, 129, 2]. Du point de vue CAO/CFAO, une cyclide est vue comme étant une surface algébrique de faible degré (inférieur ou égal à 4), possédant une forme paramétrique et deux représentations implicites équivalentes [57], facilement compréhensibles (une forme à 3 paramètres) [133]. Pratt et Boehm ont montré dans une série d articles l utilisation de ces surfaces dans les opérations de jointure et de raccordement de surfaces [129, 133, 135, 18]. Chandu et al. ont également proposé d utiliser les cyclides pour obtenir une approximation par morceaux des surfaces de jointure [24]. Srinivas et al. ont montré l utilisation des cyclides dans un processus de modélisation et de composition de surfaces [166]. Gallagher et Piper ont utilisé les cyclides combinées avec des primitives CSG pour engendrer une surface convexe interpolant un nuage de points 3D [67]. Srinivas et al. ont également utilisé les cyclides pour le planning et le contrôle du mouvement [165]. Shene a montré l usage des cyclides pour la jointure de deux cônes [161]. Ce même travail a par la suite été amélioré et généralisé (en se basant sur les calculs des surfaces offsets) pour assurer les jointures de demi-cônes [162]. De plus, il a été montré par plusieurs auteurs comment il est possible de représenter des morceaux de CdD par des carreaux de Bézier [2, 181, 133] ou des NURBS [194]. Cependant, les CdD ne permettaient pas de réaliser des jointures avec des primitives elliptiques. Ainsi, en faisant une analogie avec les superquadriques, Mike Pratt a proposé les supercyclides comme extension des CdD. Une supercyclide est l image d une CdD par une application projective [136, 134]. M. Degen a également généralisé les surfaces de Blutel pour obtenir les surfaces doubles de Blutel qui contiennent les supercyclides [37, 39]. Dans le cadre de de la thèse de Lionel GARNIER [70], nous avons étudié les propriétés de ces surfaces [60, 73], et développé des algorithmes pour : Construire le carreau de CdD qui fait la jointure de deux quadriques [59, 74, 61], Convertir une CdD en plusieurs carreaux biquadratiques de Bézier [72, 71, 62] Utiliser ces surfaces pour la modélisation de formes 3D [59, 61].

31 2.2. Définitions et propriétés générales des CdD Définitions et propriétés générales des CdD Il existe un repère (O, ı 0, j 0, k 0 ), appelé repère de la CdD et O est appelé le centre de la CdD, tel que la CdD admette deux équations implicites équivalentes : F d y (x, y, z) = ( x 2 + y 2 + z 2 µ 2 + b 2) 2 4 (ax cµ) 2 4b 2 y 2 = 0 (2.1) F d z (x, y, z) = ( x 2 + y 2 + z 2 µ 2 b 2) 2 4 (cx aµ) 2 + 4b 2 z 2 = 0 (2.2) où b = a 2 c 2. Ces équations ont été obtenues par Forsyth [57] et aussi par Darboux [33] en explicitant l enveloppe des sphères définissant une CdD. Dans le même repère (O, ı 0, j 0, ) k 0, l équation paramétrique d une CdD est : x (θ, ψ) = µ(c a cos θ cos ψ)+b2 cos θ a c cos θ cos ψ b sin θ (a µ cos ψ) Γ d (θ, ψ) = y (θ, ψ) = a c cos θ cos ψ z (θ, ψ) = b sin ψ (c cos θ µ) a c cos θ cos ψ où θ [0; 2π], ψ [0; 2π]. Ces équations ont été formulées par Forsyth [57] et aussi par Pratt [133]. Selon les différentes valeurs des paramètres a, c et µ, il existe trois grandes familles de CdD dans la littérature, "ring cyclide" ou cyclide en anneau, "horned cyclide" ou cyclide à croissant externe, "spindle cyclide" ou cyclide à croissant interne. Les Figures 2.1 et 2.2 montrent des exemples de CdD. (2.3) Figure 2.1 : Exemples de cyclide de Dupin. La partie noire est un carreau de CdD délimité par quatre lignes de courbure circulaires. Voici une synthèse des différentes propriétés des CdD, les propriétés les plus importantes pour notre travail, particulièrement celle des lignes de courbure et des cercles principaux, seront développées dans la sections 2.4 : Si c = 0, les CdD en anneau ou à croissant interne sont des tores. Si µ = 0 et c 0, la CdD à croissant externe est dite symétrique. Si µ = 0 et c = 0, la CdD à croissant externe est le cercle de centre O et de rayon a dans le plan d équation z = 0 et si a = c = 0, la CdD à croissant interne est la double sphère de centre µ. La définition de Maxwell permet de montrer qu une surface parallèle de paramètre ε à une CdD de paramètres a, c et µ est une CdD de paramètres a, c et µ + ε [14, 2, 162]. Cette propriété a récemment fait redécouvrir ces cyclides pour des applications industrielles [12].

32 10 Chapitre 2. Cyclides de Dupin Une CdD a quatre points doubles dont deux au moins sont imaginaires et conjugués. Si les deux autres sont aussi imaginaires, ils sont conjugués. Ces points sont des ombilics de la CdD. Elle admet deux familles de sphères inscrites dont les centres décrivent deux coniques focales l une de l autre. Elle admet de plus une famille de sphères doublement tangentes dont les centres décrivent une quadrique quelconque et qui est orthogonale à une sphère fixe. Cette sphère est tangente à la quadrique en deux de ses points ombilics. Le lieu géométrique des centres des sphères tangentes à trois sphères fixes est la réunion de deux coniques, appelées coniques confocales orthogonales ou anticoniques ; les foyers de l une sont les sommets de l autre. Les CdD de degré 3 sont appelées cyclides paraboliques et sont des surfaces cubiques sphériques rationnelles. Les déférentes sont deux paraboles confocales. Ces CdD sont obtenues comme images de CdD quartiques par une inversion. Les CdD de degré 4 sont appelées cyclides quartiques ou cyclides ellipto-hyperboliques et sont des surfaces quartiques sphériques rationnelles. Les déférentes sont une ellipse et une hyperbole. Ce sont des surfaces algébriques bisphériques c est-à-dire qu elles contiennent l ombilicale comme ligne double. Une condition nécessaire et suffisante pour qu une surface algébrique soit bisphérique est que le polynôme formé des termes de plus haut degré de son équation cartésienne soit divisible par ( x 2 + y 2 + z 2) 2 et que celui formé des termes de degré n 1 soit divisible par x 2 + y 2 + z 2. Dans la suite, nous ne considèrons que des CdD de degré 4. Nous allons donner les équations implicites de CdD quartiques et montrer que le tore de révolution d une part, l union de deux sphères d autre part, sont deux CdD particulières. 2.3 Les supercyclides Du fait de leurs lignes de courbure circulaires, l utilisation de cyclides de Dupin, pour effectuer des jointures de surfaces qui ne sont pas de révolution, n est pas possible. Afin de proposer une solution, les supercyclides ont été développés comme une généralisation des CdD. E. Blutel a travaillé sur une classe de surfaces générées par une famille simple de coniques qui sont toutes tangentes à un cône quadrique [16]. Les CdD peuvent être générées à l aide de deux familles de cercles qui sont tous tangents à un cône de révolution. W. L. F. Degen, en combinant ces deux propriétés, a défini un nouveau type de surfaces : les surfaces doubles de Blutel [36, 37]. Dans [38], Degen a formulé les équations paramétriques homogènes à l aide de deux couples de trois formes quadratiques linéairement indépendantes ( f, a, b) et (g, c, d) et quatre points A, B, C et D non coplanaires de l espace dont les coordonnées sont homogènes. L équation paramétrique est : M(s, t) = g (t) (a (s) A + b (s) B) + f (s) (c (t) C + d (t) D) Les surfaces doubles de Blutel sont caractérisées par les deux familles de coniques et les plans tangents autour de chaque conique de génération enveloppent un cône ayant son sommet sur l autre ligne [39]. Les surfaces doubles de Blutel proviennent d une variété réglée de dimension 3 de l espace projectif à cinq dimensions et sont obtenues par projection et intersection avec un hyperplan. M. Pratt a par la suite introduit les supercyclides [134] et établit la correspondance de son classement avec celui de Degen [137]. Une supercyclide est alors définie comme l image d une CdD par une

33 2.4. Lignes de courbure et cercles principaux des CdD 11 application projective ou affine. M. Pratt a également comparé les propriétés des CdD et des supercyclides et a relevé que : Le degré de la supercyclide est le degré de la CdD originelle, c est-à-dire 4 pour cette thèse. Les cercles qui sont des lignes de courbure des CdD, se transforment en coniques qui ne sont pas obligatoirement des lignes de courbure. Une CdD est construite à base de cercles et d une inversion. L image d une conique par une inversion n est pas une conique en général, donc cette propriété est perdue. Les lignes de courbure des supercyclides sont des coniques et le long de chaque ligne de courbure, la supercyclide est tangente à un cône. En revanche, la surface parallèle à une supercyclide n est pas une supercyclide. La coplanarité des sommets d un carreau de supercyclide est conservé mais pas l orthogonalité des tangentes aux sommets [136]. S. Allen et D. Dutta ont travaillé sur les jointures de "quadriques à axe" à l aide de supercyclides [3]. Ils ont ainsi montré qu il est possible de joindre deux quadriques par une supercyclide non dégénérée si : (i) L intersection des deux quadriques est une courbe non vide fermée. (ii) La courbe d intersection des deux quadriques s enroule autour de leur axe. Les supercyclides ont également été utilisées par C. K. Shene pour réaliser les jointures cône-plans [160] et par W. Boehm et M. Paluszny pour réaliser une jointure cône-sphère (en utilisant l hypersphère de Moebius) [129]. 2.4 Lignes de courbure et cercles principaux des CdD Lignes de courbure Les lignes de courbure d une CdD sont des cercles tels que θ ou ψ est constant dans la nappe paramétrée (2.3), Figure 2.2. Le long de chaque ligne de courbure de la CdD, l angle entre la normale à la surface et la normale principale à la ligne de courbure est constant. On conjecture que ce sont les seules surfaces ayant une double génération par des cercles, les deux familles de cercles étant orthogonales. (a) (b) Figure 2.2 : Cercles de courbure d une CdD. (a) lignes de courbure obtenues avec θ constant. (b) lignes de courbure obtenues avec ψ constant.

34 12 Chapitre 2. Cyclides de Dupin Pour θ 0 fixé, les deux cercles de courbure, définis par θ 0 et θ 0 + π, se situent dans le plan d équation : a sin (θ 0 ) x b cos (θ 0 ) y = µc sin (θ 0 ) (2.4) La droite θ0, intersection des plans d équation ( x = cµ ) a et (y = 0), est commune à tous ces plans (lorsque l on fait varier θ 0 ), Figure 2.3. (a) (b) Figure 2.3 : Intersections communes des plans contenant les cercles de courbure avec θ constant. Pour ψ 0 fixé, les deux cercles de courbure, définis par ψ 0 et π ψ 0, se situent dans le plan d équation La droite ψ0, intersection des plans d équation ( x = aµ c (lorsque l on fait varier ψ 0 ), Figure 2.4. c sin (ψ 0 ) x bz = µa sin (ψ 0 ) (2.5) ) et (z = 0) est commune à tous ces plans Si la CdD est un tore alors c = 0 et ψ est rejetée à l infini. Sinon, les droites θ et ψ sont sécantes en Ω ( cµ a ; 0; 0) si et seulement si a = c et alors la CdD est l union de deux sphères. Parmi les cercles de courbure d une CdD, quatre cercles (coplanaires deux à deux) jouent un rôle particulier. Ces cercles, appelés cercles principaux, sont les cercles des deux plans de symétrie de la CdD. Nous verrons que la connaissance de deux cercles principaux coplanaires permet de déterminer les trois paramètres a, c et µ de la CdD Cercles principaux des CdD Un tore admet une infinité de plans de symétrie. Une CdD admet deux plans de symétrie orthogonaux entre eux, d équations respectives (y = 0) et (z = 0) dans le repère de la CdD et l intersection de la cyclide avec un de ces plans est l union de deux cercles, chaque cercle étant appelé cercle principal. Pour un tore, les deux cercles sont de même rayon tandis que pour une CdD, les deux cercles sont de rayons différents [46]. Les deux premiers (resp. seconds) cercles principaux sont caractérisés par l équation (2.1) (resp. l équation (2.2)) en imposant y = 0 (resp z = 0). La Figure 2.5 illustre les quatre cercles principaux d une CdD ainsi que les droites θ, ψ et 0, perpendiculaire commune à θ et ψ. Les cercles principaux dans le plan P y (resp. P z ) sont C θ 1 et Cθ 2 (resp. Cψ 1 et Cψ 2 ). j 0 est un vecteur directeur unitaire de ψ et k 0 est un vecteur directeur unitaire de θ.

35 2.4. Lignes de courbure et cercles principaux des CdD 13 (a) (b) Figure 2.4 : Intersections communes des plans contenant les cercles de courbure avec ψ constant. (a) (b) (c) Figure 2.5 : Cercles principaux d une CdD. (a) CdD en anneau. (b) CdD à croissant externe. (c) CdD à croissant interne Détermination des paramètres de la CdD à partir de deux cercles principaux La connaissance de deux des cercles principaux de la CdD permet de déterminer ses trois paramètres a, c et µ. Nous considérons que les paramètres a, c et µ sont positifs car il est toujours possible de se ramener à ce cas en effectuant un changement de variable(s) dans la nappe paramétrée Γ d et en utilisant une transformation affine. Ces paramètres peuvent donc être déterminés à partir de la coupe de la CdD par ses plans de symétrie P y : (y = 0) et P z : (z = 0). La section d une CdD par le plan P y d équation (y = 0) est une ligne de courbure de la cyclide obtenue avec θ = 0 (petit cercle) et θ = π (grand cercle), Figure 2.6. La Figure 2.7 montre des exemples de sections. Les paramètres de la CdD sont donnés par le théorème 1. Un calcul similaire peut être fait pour obtenir les paramètres de la cyclide avec une section par le plan P z d équation (z = 0). Théorème 1 : Détermination des paramètres d une CdD à partir de la coupe par le plan d équation (y = 0). Soit C 1 et C 2 les cercles principaux de la CdD dans le plan d équation (y = 0). Soit O 1 (resp. O 2 ) le centre du cercle C 1 (resp. C 2 ). Soit ρ 1 (resp. ρ 2 ) le rayon du cercle C 1 (resp. C 2 ) avec ρ 1 ρ 2. Le paramètre a est donné par : a = O 1 O 2 /2. Les deux autres paramètres sont solutions du système (ρ 1, ρ 2 ) = (µ + c, µ c ). Pour obtenir une CdD en anneau ou croissant interne nous devons avoir µ > c, et les solutions sont données par : (µ, c) = ((ρ 1 + ρ 2 )/2, (ρ 1 ρ 2 )/2). Pour obtenir une CdD

36 Chapitre 2. Cyclides de Dupin z µ+ c a a µ c O 1 O O 2 x C 1 C 2 (a) (b) Figure 2.6 : Coupe d une CdD par le plan de symétrie P y d équation (y = 0). (a) CdD en anneau ou à croissant externe. (b) CdD à croissant interne. à croissant externe, nous devons avoir µ < c, et les solutions sont données par : (c, µ) = ((ρ 1 + ρ 2 )/2, (ρ 1 ρ 2 )/2). (a) (b) (c) Figure 2.7 : Demis-CdD délimitées par le plan de symétrie P y d équation (y = 0). (a) CdD en anneau. (b) CdD à croissant externe. (c) CdD à croissant interne. 2.5 Conversion des CdD en carreaux de Bézier Les courbes tracées sur un carreau de Bézier rationnel biquadratique, obtenues avec une des variables u ou v constante sont des coniques. Les lignes de courbure des CdD sont des cercles et donc des coniques particulières. Il est donc possible de convertir des carreaux de CdD en carreaux de Bézier. Cette conversion permettra de faciliter l introduction des CdD dans les systèmes de modélisation géométrique qui sont basés sur les surfaces paramétriques (Bézier, Bspline, NURBS). Nous considérons que le carreau de CdD à convertir est délimité par les quatre lignes de courbure, γ θ0 : ψ Γ d (θ 0, ψ), γ θ1 : ψ Γ d (θ 1, ψ), γ ψ0 : θ Γ d (θ, ψ 0 ), γ ψ1 : θ Γ d (θ, ψ 1 ), Figure 2.8, ce calcul revient à trouver les neuf points de contrôle ( ) P i j et les neuf poids ( ) w 0 i, j 2 i j du carreau 0 i, j 2 de Bézier. Après une brève présentation des algorithmes de M. Pratt et K. Ueda [133, 181], je présenterai les deux algorithmes de conversion que nous avons développés et je terminerai la section par une comparaison Seuls les carreaux de Bézier rationnels biquadratiques sont considérés dans ce travail, pour alléger le texte, ils seront référencés par carreau de Bézier. Pareillement les courbes de Bézier rationnelles quadratiques seront référencées par courbes de Bézier.

37 2.5. Conversion des CdD en carreaux de Bézier 15 (a) (b) Figure 2.8 : Conversion d un morceau de CdD en un carreau de Bézier. (a) le carreau de CdD. (b) le carreau de Bézier correspondant. de ces quatres algorithmes. Je ne parlerai que de la conversion de carreaux de CdD en carreaux de Bézier. En effet, pour convertir un carreau de supercyclide en un carreau de Bézier, il suffit de convertir le carreau de CdD dont la supercyclide est issue et de calculer les images des points de contrôle du carreau de Bézier obtenu. L algorithme de conversion proposé par M. Pratt dans [133] permet de déterminer facilement le carreau de Bézier représentant une CdD. Les coordonnées des points de contrôle et les poids sont calculées à partir de l équation paramétrique d une CdD, équation (2.3), en fonction des paramètres de la CdD et des bornes délimitant la partie à convertir, Figure 2.8. Dans cet algorithme, les formules de calcul des points de contrôle du carreau de Bézier sont données en exploitant les relations trigonométriques liant les fonctions sinus et cosinus à la fonction tangente. Dans ces formules, π est une valeur interdite, aussi bien pour θ que pour ψ, ce qui veut dire que le carreau à convertir ne peut pas être limité par une ligne de courbure ayant un paramètre égal à π. Si nous avons θ 0 = 0 et θ 1 = 4 π 3, la discontinuité de la fonction x tan ( x 2) en π modulo 2π fait que les points de contrôle seront calculés comme si nous avions θ 0 = 2π 3 et θ 1 = 0, ce qui ne permet pas d obtenir le carreau désiré. Par exemple, cet algorithme ne peut, pas être utilisé pour la conversion de la CdD resultant d une jointure entre un cylindre de révolution et un plan ; il ne peut pas non plus convertir toute une CdD en quatre carreaux de Bézier. Nous avons amélioré cet algorithme afin de remédier a ce problème [62]. Dans [181], K. Ueda a montré un ensemble de quatre propriétés géométriques très utiles pour la conversion des CdD en carreaux de Bézier : (i) Les quatre coins du carreau de cyclide sont cocycliques. (ii) Les courbes coordonnées sont orthogonales entre elles à chaque sommet du carreau. (iii) Trois poids des sommets peuvent être égaux à 1 (et même les quatre si les quatre sommets forment un rectangle). (iv) Une formule de calcul pour le quatrième poids, qui ne dépend que de la position spatiale des quatre sommets. La deuxième propriété géométrique provient des lignes de courbure circulaires c est-à-dire : P 01 appartient au plan médiateur du segment [P 00, P 02 ], P 21 appartient au plan médiateur du segment [P 20, P 22 ], P 10 appartient au plan médiateur du segment [P 00, P 20 ] et P 12 appartient au plan médiateur du segment [P 22, P 02 ]. En effet, les courbes délimitant le carreau de Bézier sont des courbes de Bézier rationnelles quadratiques et donc le point de contrôle intermédiaire de chaque courbe doit appartenir

38 16 Chapitre 2. Cyclides de Dupin au plan médiateur des deux extrémités. Nous rappelons que ( ) AB AC AD = 0 traduit le fait que les quatre points A, B, C et D sont coplanaires. Nous nous servirons de l algorithme de K. Ueda afin de construire des carreaux de Bézier convertibles en carreaux de cyclides de Dupin. Nous ne pouvons pas finir cette partie sans citer le travail d Albrecht et Degen [2] qui consiste à construire un carreau de Bézier sur un cône de révolution, puis à prendre son image par une inversion afin d obtenir un carreau de Bézier sur une CdD symétrique à croissant externe puis à prendre une surface parallèle afin d obtenir une CdD du type souhaité Amélioration de l algorithme de Pratt La première étape de notre travail sur la conversion a consisté à étudier l algorithme de Pratt, ce qui a permis de révéler une insuffisance de cet algorithme au niveau des valeurs des paramètres délimitant le carreau de CdD à convertir. Pour remédier à cet inconvénient, nous avons proposé deux variantes pour cet algorithme : (i) Variante 1 : modifier légèrement la formule de calcul des poids en ne prenant que des valeurs positives (valeur absolue) [62]. (ii) Variante 2 : faire une "reparamétrisation-affine" en changeant le signe de c et/ou µ et en appliquant une transformation affine à la CdD résultante de ce changement de signe afin d obtenir le carreau de CdD initial [70, chapitre 4]. L apport de la nouvelle façon de calculer le poids sur le résultat de l algorithme de Pratt est illustré par la Figure 2.9. Dans la version initiale, Figure 2.9(b), le carreau de Bézier obtenu par conversion ne représente pas le carreau de CdD initial mais son complément. Cependant, La Figure 2.9(c) montre le bon carreau obtenu en ne considérant que des poids positifs. (a) (b) (c) Figure 2.9 : Conversion d un carreau de CdD en carreau de Bézier. (a) Carreau de CdD à convertir. (b) résultat de l algorithme de Pratt. (c) résultat avec poids positifs. (a) (b) (c) Figure 2.10 : Conversion d une CdD en plusieurs carreaux de Bézier avec tous les poids positifs. (a) la CdD à convertir. (b) conversion en seize carreaux de Bézier. (c) conversion en neuf carreaux de Bézier.

39 2.5. Conversion des CdD en carreaux de Bézier 17 Cette modification de poids a cependant fait apparaître une nouvelle contrainte : nous devons maintenant avoir θ 0 θ 1 < π et ψ 0 ψ 1 < π [70]. Cette contrainte implique que pour chaque variable θ et ψ, nous devons avoir au moins trois valeurs, donc le nombre minimum de carreaux de Bézier permettant de modéliser une CdD est neuf. En tenant compte de ces contraintes, nous obtenons plusieurs conversions possibles : la Figure 2.10 illustre la conversion d une CdD entière en seize et en neuf carreaux de Bézier. (a) (b) Figure 2.11 : Conversion d un carreau de CdD en un carreau de Bézier après une reparamétrisation-affine de la CdD, changement de c en c. (a) le carreau de CdD à convertir. (b) le carreau de Bézier obtenu et son polyèdre de contrôle. La Figure 2.11 illustre la conversion d un carreau de CdD où l un des bords est défini par la ligne de courbure θ 0 = π (les autres bord sont θ 1 = 3π 4, ψ 0 = 2π 3 et ψ 1 = π 4 ), le resultat est obtenu en appliquant l algorithme de Pratt sur la cyclide de Dupin après un reparamétrage affine Algorithme barycentrique Nous avons étudié les propriétés barycentriques des surfaces de Bézier rationnelles biquadratiques afin de trouver une meilleure façon de convertir les CdD en Bézier. Cette étude a donné lieu à un ensemble de propriétés, que nous avons développées dans [62] et dans [70, chapitre 4], et que nous avons utilisées dans l algorithme de conversion 1. La Figure 2.12 illustre deux conversions d un carreau d une CdD en carreau de Bézier quasi-standard. Les poids sont positifs le long des lignes de courbure et w 11 aussi. (a) (b) Figure 2.12 : Conversion d un carreau de CdD en carreau de Bézier quasi-standard en utilisant l algorithme 1. Les poids sont positifs le long des lignes de courbure. (a) le carreau de CdD à convertir. (b) le carreau de Bézier quasi-standard résultant de la conversion avec son polyèdre de contrôle. Nous disons qu une surface de Bézier rationnelle biquadratique S 0 est quasi-standard lorsque les poids des quatre coins sont égaux à 1 i.e. w 00 = w 02 = w 20 = w 22 = 1.

40 18 Chapitre 2. Cyclides de Dupin Algorithme 1 Modélisation d un carreau de CdD par un carreau de Bézier quasi-standard. Données : Une CdD et quatre nombres θ 0, θ 1, ψ 0 et ψ 1. Condition : θ 0 et θ 1 (ou ψ 0 et ψ 1 ) sont symétriques par rapport à 0 ou π. Début 1. La nappe paramétrée Γ de la CdD est donnée par la formule (2.3), les lignes de courbure sont choisies pour θ = θ 0, θ = θ 1, ψ = ψ 0 et ψ = ψ les sommets des carreaux sont P 00 = Γ (θ 0, ϕ 0 ), P 02 = Γ (θ 1, ϕ 0 ), P 20 = Γ (θ 0, ϕ 1 ), P 22 = Γ (θ 1, ϕ 1 ). 3. Déterminer le centre des quatre cercles de courbure en utilisant trois points sur chaque ligne de courbure (dont les deux sommets). 4. Déterminer les points de contrôle P 10, P 01, P 21 et P 12 dans les plans médiateurs respectifs et dans les plans des lignes de courbures correspondants à l aide des tangentes aux cercles. 5. Calculer les poids w 10 et w Calculer les poids w 01 et w Déterminer la première courbe coordonnée γ u qui est RQBC {(P 00 ; P 10 ; P 20 ), w 10 }. Déterminer la seconde courbe coordonnée γ v qui est RQBC {(P 00 ; P 01 ; P 02 ), w 01 }. 8. Trouver θ 2 solution de l équation γ u ( 1 2) = Γ (θ2, ϕ 0 ). Trouver ϕ 2 solution de l équation γ v ( 1 2) = Γ (θ0, ϕ 2 ). Trouver ϕ 3 solution de l équation γ v ( 1 4) = Γ (θ0, ϕ 3 ). 9. Soit G 0 l isobarycentre des points P 00, P 02, P 20, P 22. Soit G 2 le barycentre des points pondérés (P 10, w 10 ), (P 01, w 01 ), (P 12, w 12 ), (P 21, w 21 ). Soit G 1 le barycentre des points pondérés (G 0, 2), (G 2, w). Soit G 3 le barycentre des points pondérés (P 00, 9), (P 20, 9), (P 02, 1), (P 22, 1), (P 01, 6w 01 ), (P 21, 6w 21 ), (P 10, 18w 10 ), (P 12, 2w 12 ). Soit M = Γ (θ 2, ϕ 2 ). Déterminer P 11 intersection des droites (G 1 Γ (θ 2, ϕ 2 )) et (G 3 Γ (θ 2, ϕ 3 )). 10. Déterminer le poids w 11. Fin Sortie : Un carreau de Bézier quasi-standard de points de contrôle ( ) P i j et de poids ( w 0 i, j 2 i j )0 i, j 2 modélisant un carreau de CdD. N.B. : Dans cet algorithme et les algorithmes suivants, RQBC est une abréviation pour Courbes de Bézier Rationnelles Quadratiques.

41 2.5. Conversion des CdD en carreaux de Bézier 19 (a) (b) (c) Figure 2.13 : Conversion d un morceau de CdD en carreaux de Bézier en utilisant l algorithme 1. Les poids sont négatifs le long des lignes de courbure avec ψ constant et θ 1 = π. (a) et (b) deux vues de la CdD. (c) le carreau de Bézier obtenu et son polyèdre de contrôle. La Figure 2.13 illustre deux conversions d un carreau d une CdD en carreau de Bézier quasi-standard et nous avons θ 1 = π, qui était une valeur interdite pour les algorithmes de Pratt. De plus, les poids sont positifs le long des lignes de courbure obtenues avec θ constant, et négatifs le long des lignes de courbure obtenues avec ψ constant. Pour convertir toute une CdD, nous n avons besoin que de quatre carreaux de Bézier et la Figure 2.14 montre deux conversions de la CdD en carreaux de Bézier. Dans la Figure 2.14(b), les bornes des carreaux de la CdD sont θ 0 = π 6, θ 1 = π 6, ψ 0 = 5π 6 et ψ 1 = 7π 6. Dans la Figure 2.14(c), les bornes des carreaux de la CdD sont θ 0 = π 4, θ 1 = π 4, ψ 0 = π et ψ 1 = 2π 3 ). (a) (b) (c) Figure 2.14 : Conversion d une CdD en quatre carreaux de Bézier quasi-standard. (a) la CdD à convertir. (b) et (c) les quatre carreaux de Bézier quasi-standard résultants. Notre algorithme permet de convertir des carreaux de CdD en carreaux de Bézier avec une seule contrainte : une symétrie pour θ ou ψ par rapport à 0 ou π. Comme nous allons convertir des carreaux de CdD effectuant une jointure entre deux surfaces de révolution, cette contrainte n est absolument pas gênante. Mais nous sommes obligés d utiliser des poids négatifs. Nous avons donc proposé un nouvel algorithme de conversion, encore basé sur les propriétés des courbes et des carreaux de Bézier, mais en calculant les poids des sommets du carreau et le point P 11 à la manière de K. Ueda [181] Algorithme à base des propriétés de Ueda et des barycentres Comme pour les algorithmes précédents la détermination des points de contrôle du carreau de Bézier obtenu par conversion d un carreau de CdD ne pose pas de problème. La difficulté est dans le calcul des poids, et en particulier celui de w 11. Grâce au travail de K. Ueda [181], nous connaissons les poids w 00, w 02, w 20 et w 22. Les bords du carreau à convertir sont des cercles, nous pouvons donc déterminer

42 20 Chapitre 2. Cyclides de Dupin les poids w 01, w 10, w 21 et w 12 à partir des points de contrôle et des poids extrémaux. Nous avons donc introduit deux théorèmes permettant le calcul de w 11 [70, chapitre 4]. Algorithme 2 Conversion d un carreau de CdD en un carreau de Bézier. Données : Une CdD, dont l équation paramétrique Γ est définie par la formule (2.3), où les lignes de courbure sont : γ θ0 obtenue pour θ = θ 0, γ θ1 obtenue pour θ = θ 1, γ ψ0 obtenue pour ψ = ψ 0 et γ ψ1 obtenue pour ψ = ψ 1, avec θ 0 θ 1 < π et ψ 0 ψ 1 < π. Début 1. Déterminer les sommets du carreau de Bézier : P 00 = Γ (θ 0, ψ 0 ), P 20 = Γ (θ 1, ψ 0 ), P 22 = Γ (θ 1, ψ 1 ), P 02 = Γ (θ 0, ψ 1 ). 2. Déterminer les poids des sommets du carreau de Bézier : w 00 = w 02 = w 20 = 1 et w 22 = 1 pq. 3. Déterminer M 10 = Γ ( ) θ 0 +θ 1 2, ψ 0 γψ0, M 12 = Γ ( ) θ 0 +θ 1 2, ψ 1 γψ1, M 01 = Γ ( θ 0 ; ψ ) 0+ψ 1 2 γθ0 et M 21 = Γ ( θ 1 ; ψ ) 0+ψ 1 2 γθ1. 4. Déterminer chaque centre des cercles des lignes de courbure, O 10 pour γ ψ0, O 12 pour γ ψ1, O 01 pour γ θ0 et O 21 pour γ θ1. 5. Déterminer P 01 pour que γ v = RQBC {(P 00 ; P 01 ; P 02 )} γ θ0, P 21 pour que RQBC {(P 20 ; P 21 ; P 22 )} γ θ1, P 10 pour que γ u = RQBC {(P 00 ; P 10 ; P 20 )} γ ψ0 et P 12 pour que RQBC {(P 02 ; P 12 ; P 22 )} γ ψ2. 6. Calculer les poids w 01 et w 21 tels que les deux courbes vérifient : RQBC {(P 00 ; P 01 ; P 02 ), (w 00 ; w 01 ; w 02 )} γ θ0 et RQBC {(P 20 ; P 21 ; P 22 ), (w 20 ; w 21 ; w 22 )} γ θ1. 7. Calculer les poids w 10 et w 12 tels que les deux courbes vérifient : RQBC {(P 00 ; P 10 ; P 20 ), (w 00 ; w 10 ; w 20 )} γ ψ0 et RQBC {(P 02 ; P 12 ; P 22 ), (w 02 ; w 12 ; w 22 )} γ ψ1. 8. Trouver θ 2 solution de l équation γ u ( 1 2) = Γ (θ2, ϕ 0 ) et ϕ 2 solution de l équation γ v ( 1 2) = Γ (θ 0, ϕ 2 ). 9. Déterminer P 11 en utilisant la propriété (PG4) donnée par Ueda. 10. Calculer w 11 en utilisant les propriétés barycentriques des carreaux de Bézier. Fin Sortie : Un carreau de Bézier de points de contrôle ( ) P i j et de poids ( ) w 0 i, j 2 i j représentant 0 i, j 2 un carreau de CdD. La nouvelle méthode de conversion résultante de la combinaison des propriétés de K. Ueda et des théorèmes de calcul de poids est présentée dans l algorithme 2. Dans cet algorithme nous n avons aucune restriction sur les paramètres (pas de valeur interdite, pas de contrainte de symétrie) au niveau des bords des carreaux de CdD à convertir. La Figure 2.15 montre la conversion d un carreau de CdD à croissant interne et d un carreau de CdD à croissant externe en carreau de Bézier en utilisant cet algorithme. La Figure 2.16 montre la conversion d un carreau de CdD en un carreau de Bézier en utilisant l algorithme 2 avec deux lignes de courbure de la CdD obtenues avec une valeur de π où tous les poids du carreau de Bézier sont positifs. Les paramètres de la CdD sont a = 15, µ = 7, c = 2 et les lignes de courbure sont obtenues avec θ 0 = 3π 4, θ 1 = π, ψ 0 = π et ψ 1 = 3π 2.

43 2.6. Comparaison des algorithmes de conversion des CdD en Bézier 21 (a) (b) Figure 2.15 : Exemples de conversions de carreaux de CdD en Bézier. (a) carreau d une CdD à croissant interne. (b) carreau d une CdD à croissant externe. w 00 = 1 w 01 0, w 02 = 1 w 10 0, w 11 0, w 12 0, w 20 = 1 w 21 0, w 22 1, Figure 2.16 : Exemples de conversion d un carreau d une CdD en carreau de Bézier avec des poids positifs et deux lignes de courbure obtenues avec π. 2.6 Comparaison des algorithmes de conversion des CdD en Bézier Dans ce paragraphe, deux types de comparaisons sont effectués. Dans une première partie, nous comparons les différents algorithmes de conversion sur un carreau de CdD en anneau. Dans la seconde partie, nous testons ces différents algorithmes lors de la conversion de toute une CdD en anneau Conversion d un carreau de CdD en anneau Les paramètres de la CdD en anneau sont a = 7, µ = 5, c = 3 2 et les bornes de conversion sont θ 0 = π 12, θ 1 = 2π 3, ψ 0 = 3π 4 et ψ 1 = 5π 4. La Figure 2.17 montre la conversion d un carreau de CdD en anneau en un carreau de Bézier ainsi que son polyèdre de contrôle. L image de gauche présente la CdD en anneau et le carreau de Bézier obtenu. L image du centre (resp. de droite) montre, en plus du carreau de la CdD en anneau (en maillage), deux quarts du carreau de Bézier (i.e. (u, v) [ 0, 1 2] 2 [ 1 2, 1] 2 ) obtenu en utilisant un des algorithmes barycentriques (resp. basés sur celui de M. Pratt). Bien que les points de contrôle soient identiques, tableau 2.1, nous avons bien deux carreaux de Bézier distincts en fonction du choix de l algorithme : algorithme 1 ou algorithme 2 d une part et algorithme basé sur la méthode de Pratt (variante 1 ou variante 2) d autre part. Les différences entre les coor-

44 22 Chapitre 2. Cyclides de Dupin (a) (b) (c) Figure 2.17 : Exemples de conversion d un carreau d une CdD en anneau en un carreau de Bézier. (a) la CdD, le carreau de Bézier et son polyèdre de contrôle. (b) deux quarts du carreau de Bézier, obtenu par un des algorithmes reposant sur les propriétés barycentriques, et son polyèdre de contrôle. (c) deux quarts du carreau de Bézier, obtenu par un des algorithmes reposant sur la méthode de M. Pratt, et son polyèdre de contrôle. P 00 P 01 P 02 P 10 P 11 P 12 P 20 P 21 P 22 Algorithme 1 Algorithme 2 Algo. Pratt Algo. Pratt 9, , , , , , , , , , , , , , , 6, , , , , , , , , 4, , , , , , , , , , , , , , , , , , , , , , , , , , , , , , Variante 2 Variante 1 9, , , , , , , , , 9, , , , , , , , , 6, , , , , , , , , 4, , , , , , 9, , , , , , , , , 6, , , , , , , , , 4, , , Table 2.1 : Coordonnées des points de contrôle et des poids de la Figure données proviennent des calculs qui ont été arrondis : ceux-ci sont trop lourds pour laisser les valeurs exactes. En revanche, les valeurs des poids diffèrent énormément en fonction du type de l algorithme utilisé, tableau 2.2. Afin d avoir un élément de comparaison instantané, les valeurs de ces poids ont été modifiées lors de l utilisation des algorithmes basés sur le travail de M. Pratt en normalisant w 00. La constante de proportionnalité entre ces derniers poids (non normalisés) est d environ 5, Les algorithmes 1 et 2 présentent l avantage de conserver la symétrie du parcours des arcs de cercles (courbes coordonnées), lorsque cela est possible, et ne donnent pas plus de poids à un ou plusieurs sommet(s) du carreau contrairement aux algorithmes inspirés du travail de M. Pratt.

45 2.6. Comparaison des algorithmes de conversion des CdD en Bézier 23 Algorithme 1 Algorithme 2 Algo. Pratt Variante 1 Algo. Pratt Variante 2 normalisation brute normalisation brute w w w w w w w w w Table 2.2 : Poids des carreaux de Bézier de la Figure Les deux derniers poids ont été aussi normalisés par rapport à w 00 afin de faciliter les comparaisons. (a) (b) (c) Figure 2.18 : Exemples de conversion d une CdD en quatre carreaux de Bézier en utilisant l algorithme barycentrique. (a) la CdD. (b) 4 carreaux de Bézier obtenus avec θ 0 et θ 1 symétriques par rapport à 0. (c) 4 carreaux de Bézier obtenus avec ψ 0 et ψ 1 symétriques par rapport à π Conversion de toute une CdD Dans ce paragraphe, nous effectuons une comparaison des trois algorithmes présentés dans ce chapitre lorsqu ils sont utilisés pour convertir toute une CdD en carreaux de Bézier. La Figure 2.18 montre la CdD en anneau et deux modélisations de celle-ci par quatre carreaux de Bézier en utilisant l algorithme 1. Les paramètres de la CdD sont a = 9, µ = 5 et c = 2. Dans l image du centre (resp. de droite), les bords des carreaux de Bézier sont obtenus pour θ 0 = π 3, θ 1 = π 3, ψ 0 = 2π 3 et ψ 1 = π 6 (resp. θ 0 = π 6, θ 1 = π 2, ψ 0 = 2π 3 et ψ 1 = 4π 3 ). Nous pouvons modéliser toute la CdD en n utilisant que quatre carreaux avec une contrainte géométrique. De plus, certains poids sont forcément négatifs mais nous n avons besoin que de neuf points de contrôle et seize poids. La Figure 2.19 montre trois conversions de la CdD de la Figure 2.18 en carreaux de Bézier en partant de l algorithme de Pratt. Dans l image de gauche, lorsque nous combinons l algorithme de Pratt et sa deuxième variante (avec trois reparamétrisations-affines), nous pouvons convertir la CdD en quatre carreaux et les bords des carreaux de Bézier sont obtenus avec θ 0 = 3π 4, θ 1 = 7π 6, ψ 0 = 20π 21 et ψ 1 = 3π 2. Dans l image du centre, nous utilisons l algorithme de Pratt et sa première variante, les bords du carreau de Bézier obtenu avec l algorithme de Pratt correspondent aux valeurs θ 0 = 2π 3, θ 1 = 2π 3, ψ 0 = π 2 et ψ 1 = 14π 15. Les bords des carreaux de Bézier obtenus avec la variante 1 de l algorithme

46 24 Chapitre 2. Cyclides de Dupin (a) (b) (c) Figure 2.19 : Exemples de conversion d une CdD en carreaux de Bézier en utilisant l algorithme de Pratt et ses deux variantes. (a) 4 carreaux de Bézier, algorithme de Pratt et sa première variante. (b) 6 carreaux de Bézier, algorithme de Pratt et sa deuxième variante. (c) 9 carreaux de Bézier, variante 1 de l algorithme de Pratt. de Pratt correspondent aux valeurs θ 0 = 2π 3, θ 1 = 0, θ 2 = 2π 3, ψ 0 = π 2, ψ 1 = 0 et ψ 2 = 14π 15. Dans l image de droite, nous n utilisons que la variante 1 de l algorithme de Pratt et le nombre de carreaux est d au moins neuf. Les bords de ces neuf carreaux de Bézier correspondent aux valeurs θ 0 = 0, θ 1 = 3π 4, θ 2 = 7π 6, ψ 0 = π 2, ψ 1 = π 3 et ψ 2 = 7π 6. Dans tous les cas, certaines valeurs pour les bornes sont interdites. (a) (b) (c) Figure 2.20 : Exemples de conversion d une CdD en anneau en carreaux de Bézier en utilisant l algorithme à base de Ueda et de barycentres. (a) 4 carreaux de Bézier. (b) 9 carreaux de Bézier. (c) 16 carreaux de Bézier. La Figure 2.20 montre trois conversions de la CdD de la Figure 2.18 en carreaux de Bézier en partant de l algorithme à base de Ueda et de barycentres. Dans l image de gauche, nous combinons des poids négatifs et positifs afin de n utiliser que quatre carreaux et nous n avons besoin que de neuf points de contrôle et seize poids. Les bords des carreaux de Bézier sont obtenus avec θ 0 = 0, θ 1 = π 2, ψ 0 = π et ψ 1 = π 4. Dans l image du centre (resp. de droite), nous utilisons neuf carreaux de Bézier (res. seize carreaux de Bézier), les bords de ces neuf carreaux de Bézier correspondent aux valeurs θ 0 = π, θ 1 = π 3, θ 2 = π 4, ψ 0 = 0, ψ 1 = 3π 4 et ψ 2 = 4π 3 (resp. θ 0 = π, θ 1 = π 3, θ 2 = π 4, θ 3 = π 2, ψ 0 = 0, ψ 1 = π 3, ψ 2 = 7π 6 et ψ 2 = 3π 2 ). Le tableau 2.3 récapitule les ressemblances et différences entre ces algorithmes.

47 2.7. Conclusion 25 Valeur Contraintes Toute Nombre Algorithmes interdite sur les bornes la CdD de carreaux Pratt π Non Pratt Variante 2 0 Non 4 avec Pratt Pratt Variante 1 π θ 0 θ 1 < π Oui 9 ψ 0 ψ 1 < π 6 avec Pratt θ 0, θ 1 ou ψ 0, ψ 1 Barycentrique symétriques par Oui 4 rapport à 0 ou π Ueda-Barycentrique Oui 9 poids positifs Ueda-Barycentrique Oui 4 poids négatifs Table 2.3 : Ressemblances et différences entre les algorithmes de conversion de CdD en carreaux de Bézier. 2.7 Conclusion L étude des propriétés des cyclides de Dupin a montré, encore une fois, leur adéquation pour la modélisation géométrique. Les algorithmes proposés dans ce chapitre pour la conversion des carreaux de CdD, ou des CdD entières, en carreaux de Bézier sont un argument supplémentaire pour ajouter ces surfaces aux primitives de base de la CAO. Nous avons montré comment convertir, de trois façons différentes, une cyclide de Dupin en carreaux de Bézier rationnels biquadratiques. La première méthode est inspirée directement de l algorithme de Mike Pratt dont nous avons proposé deux variantes : modification du calcul des poids ; modification des signes de certains paramètres de la cyclide de Dupin, modification de la paramétrisation et utilisation d application(s) affine(s). La seconde méthode est tout à fait différente et s appuie sur les propriétés barycentriques des carreaux de Bézier, mais certaines contraintes sur les bords du carreau à convertir sont à respecter. La troisième méthode est une variante de l algorithme précédent et utilise des résultats de K. Ueda. Nous avons également comparé ces trois algorithmes lorsqu ils sont utilisés pour la conversion d un carreau de CdD ou de toute une CdD en carreaux de Bézier. Une conversion à sens unique ne constitue que la moitié du travail, et c est pour cela que nous avons également commencé à réfléchir à la conversion des carreaux de Bézier rationnels biquadratiques en CdD. En partant des propriétés géométriques des cercles de courbure d une cyclide de Dupin, nous avons donné les conditions nécessaires (mais non suffisantes) pour qu un carreau de Bézier rationnel biquadratique soit convertible en cyclide de Dupin (Cette partie de notre travail n est pas encore terminée, elle n est pas présenté dans ce document. De plus amples détails sur cette partie peuvent être trouvés dans la thèse de Lionel Garnier). Nous avons proposé un algorithme de conversion de carreaux de Bézier en tore ou en sphère double (qui sont des CdD particulières) et deux algorithmes de conversion en CdD non particulière. Nous pensons tout de même que la conversion des carreaux de Bézier vers les supercyclides donnera des résultats plus satisfaisants. Nous avons également étudié les propriétés des supercyclides, élaboré une formulation de leurs équations implicite et paramétrique, et défini une sous-classe particulière, dite supercyclides elliptique, que nous avons utilisée pour la jointure des surfaces de révolution à section elliptique.

48

49 Chapitre 3 Comparaison et analyse multirésolution de maillages Ce chapitre présente nos travaux sur les maillages triangulaires irréguliers. Après une brève introduction à la problématique et à la littérature, nous présentons dans la section 3.2 la méthode de comparaison de maillages que nous avons développées. La section 3.4 introduit l analyse multirésolution. La section 3.5 donne les deux schémas d analyse multirésolution que nous avons développés. 3.1 Introduction Les techniques d acquisition ou de conception des modèles 3D (modeleurs, scanners, capteurs, simulateurs, etc.) produisent généralement des ensembles de données très denses contenant à la fois des attributs géométriques et des attributs d apparence. Les attributs géométriques décrivent la forme et les dimensions de l objet et incluent les données relatives à l ensemble de points sur la surface de l objet représenté. Les attributs d apparence contiennent des informations décrivant l aspect extérieur de l objet tel que les couleurs, les textures, les motifs, etc. La taille d un modèle dépend généralement du nombre de sommets et du nombre de faces qui le composent. Il est important de pouvoir représenter ces maillages à un niveau de détail plus faible en supprimant des informations jugées non significatives afin de réduire la taille. Ces dernières années, beaucoup de méthodes de simplification ou de compression, visant à réduire la quantité d informations contenues dans les modèles 3D, ont été proposées. Cette réduction d informations engendre inévitablement une dégradation de la qualité de la représentation. Dans le cadre de la thèse de Michael Roy [143], nous nous sommes intéressés à la comparaison et à l étude multirésolution de maillages. Dans ce cadre, nous avons proposé une méthode pour mesurer la qualité de simplification d un maillage [147]. La mesure est effectuée par comparaison entre le maillage original et sa représentation simplifiée [149]. Nous nous sommes également intéressés à l analyse multirésolution de ces maillages et nous avons proposé deux schémas d analyse multirésolution qui permettent une gestion complète de tous les attributs représentant un modèle 3D [144, 148]. Ces schémas sont basés sur un opérateur de relaxation capable de traiter les attributs géométriques ainsi que les attributs d apparence. Nous avons utilisé ces schémas multirésolution dans 27

50 28 Chapitre 3. Analyse Multirésolution diverses applications, notamment pour la visualisation adaptative et le débruitage de modèles numériques [146, 145]. 3.2 Mesure de déviation et comparaison de maillages Algorithmes de simplification et mesures d erreurs La façon dont est mesurée l erreur pendant et après le processus de simplification peut avoir un impact considérable sur le résultat visuel et l utilité des modèles simplifiés. Pour certains algorithmes, la mesure d erreur peut impliquer des constructions géométriques complexes, et la minimisation de l erreur peut demander la résolution de problèmes algébriques non triviaux. Un très grand nombre de méthodes de simplification de maillages a été publié et différentes mesures d erreur accompagnent ces méthodes et permettent de contrôler le processus de simplification [28]. Luebke et Erikson [114] réalisent une simplification en utilisant une grille hiérarchique sous forme d un octree. L arbre de sommets permet une adaptation des niveaux de détail dynamique et dépendante du point de vue. Cet algorithme rend la méthode de groupement de sommets, [142], encore plus générale en permettant à une simple hiérarchie de réaliser une simplification drastique à travers un environnement complet. Ronfard et Rossignac [141] proposent de mesurer pour chaque contraction d arête potentielle la distance maximale entre le sommet simplifié et chacun de ses plans de support. Il utilisent un plan supplémentaire aux niveaux des bords pour garantir que la mesure ne soit pas supérieure à 3 fois l erreur maximale. La mesure d erreur, nommée quadrique d erreur, proposée par Garland et Heckbert [68] remplace le maximum des carrés des distances sommet-à-plan utilisé précédemment, par la somme des carrés des distances sommet-à-plan : E v = (p.v) 2 = (v T p)(p T v) = v T (pp T ) v = vt Q p v = v T Q v v (3.1) p p planes(v) p Lindstrom et Turk [107, 108] se basent sur la conservation du volume formé par la surface, ainsi la mesure d erreur est relative à ce volume. L algorithme des enveloppes de simplification [30] limite la déviation géométrique maximale entre la surface originale et la surface simplifiée en utilisant deux surfaces d enveloppe interne et externe englobant la surface originale. De nos jours, beaucoup de modèles 3D comprennent non seulement des coordonnées géométriques mais aussi d autres attributs. Les couleurs, normales et coordonnées de texture sont les attributs les plus communs. Différentes approches pour gérer les attributs d apparence sont possibles dans le domaine des quadriques d erreur. Garland et Heckbert [69] proposent l utilisation de quadriques de dimensions supérieures pour gérer et minimiser l erreur de modèles avec attributs. Par exemple, un modèle avec 3 coordonnées de sommet, 3 valeurs de couleur, 3 coordonnées de normale, et 2 coordonnées de texture utiliserait des quadriques opérant dans un espace à 11 dimensions. Ceci est une approche élégante qui étend directement les mécanismes des quadriques dans un espace géométrique aux attributs. Hoppe [88, 90] a proposé une approche différente basée sur les quadriques en séparant l erreur géométrique et l erreur d attribut. Vue la diversité des calculs et des mesures qui contrôlent le fonctionnement des méthodes de simplification, les résultats de l application de ces algorithmes sur un même modèle sont forcement différents p

51 3.2. Mesure de déviation et comparaison de maillages 29 et la ressemblance du modèle simplifié au modèle initial varie en fonction de l algorithme de simplification utilisé. Un outil de comparaison de maillages est alors utile pour caractériser les algorithmes de simplification. La section suivante présente la méthode de comparaison de maillages que nous avons développée. Cette méthode met en évidence les différences locales de la géométrie et des attributs entre deux maillages, et fournit une analyse quantitative de ces différences Comparaison de maillages Différentes méthodes de comparaison de formes ou de maillages ont été proposées [187, 186, 79]. La plus connue est la distance de Hausdorff qui renvoie une comparaison globale entre deux maillages (apparentée à une mesure de ressemblance). Cette méthode ne convient pas pour traiter notre cas car nous désirons déterminer les zones du maillage sensibles à la simplification ; nous devons donc nous baser sur une mesure locale de comparaison. Nous avons proposé une mesure de déviation locale des attributs entre deux maillages. Cette mesure est indépendante du point de vue et du type d attribut. Nous considérons que les attributs sont des vecteurs dans l espace euclidien définis à chaque point du maillage. Donc un point est représenté comme un vecteur composé de n vecteurs attributs (a 1,..., a n ) où a i représente un vecteur attribut. Nous définissons une application f i (p) = a i qui renvoie le vecteur attribut a i associé au point p. Dans cette configuration, la position géométrique est un attribut essentiel des sommets. Les autres attributs sont dits attributs d apparence car ils vont caractériser l aspect ou les composantes physiques du maillage. Parmi ces attributs d apparence, les plus connus sont les normales, les coordonnées de texture et la couleur diffuse. La comparaison de deux maillages que nous proposons repose donc sur la mesure de la différence entre les attributs de chaque maillage Mesure de déviation d attribut Soient une surface S et un point p R 3, la déviation d i (p, S ) de l attribut a i du point p à la surface S est définie par : d i (p, S ) = f i (p) f i (N S (p)) (3.2) avec N S (p) = p le point le plus proche de p sur la surface S et. représentant la norme euclidienne d un vecteur. La déviation d attribut d i (p, S ) est la distance entre l attribut a i du point p et l attribut a i de p sur la surface S. Plusieurs points sur la surface S peuvent être à la même distance du point p. Dans ce cas, la déviation d attribut est la distance minimale entre l attribut a i de p et les attributs a i des plus proches points de p sur S. Le schéma de la mesure de déviation d attribut est présenté en Figure 3.1. Cette mesure permet d évaluer les différences locales entre les attributs de deux maillages. Soient deux maillages M a et M b, leurs surfaces respectives S a et S b, et un ensemble P de points {p j p j S a et j = 1,..., m}, la déviation D i de l attribut a i entre M a P et M b est définie par : D i (M a P, M b ) = {d i (p j, S b ) j = 1,..., m} (3.3) La déviation d attribut entre deux maillages utilise la mesure de déviation donnée par l équation (3.2). Le maillage M a est appelé maillage de référence et il est restreint à un ensemble de points pris sur sa surface qui constituent les points de mesure de la déviation d attribut.

52 30 Chapitre 3. Analyse Multirésolution Figure 3.1 : Schéma de mesure de la déviation d i (p, S ) des attributs a i entre un point p et une surface S. Le point p représente le point le plus proche de p sur la surface S. La mesure de déviation d attribut met en évidence les différences locales entre deux maillages. Notons que cette mesure est guidée par la correspondance géométrique entre deux maillages (point sur une surface le plus proche d un point donné sur l autre surface). Notons aussi que la mesure de déviation d attribut entre deux maillages n est pas symétrique car elle est calculée à partir d un ensemble de points définis sur la surface du maillage de référence. Si les maillages sont intervertis, les résultats peuvent être différents. En pratique nous mesurons les déviations dans les deux sens c est-àdire D i (M a Pa, M b ) et D i (M b Pb, M a ). Les résultats sont souvent différents mais restent toutefois assez proches. Dans le cadre de la mesure de la qualité d un algorithme de simplification de maillages, la mesure de déviation géométrique est la mesure principale, car la simplification d un maillage est essentiellement géométrique. La mesure de la déviation des autres attributs peut être utilisée pour quantifier les modifications d aspect engendrées par la simplification. Après une simplification importante (90% ou plus de faces éliminées), il est normal de noter une importante déviation locale des attributs d apparence. Notons que l équation (3.3) nécessite deux maillages dont un discrétisé par un ensemble de points pris sur sa surface. Ainsi, nous avons la liberté de prendre des points uniquement dans les zones d intérêt. Généralement, les déviations sont mesurées sur l ensemble du maillage de référence. Les points de mesure peuvent donc être les sommets de ce maillage. Une discrétisation plus ou moins fine de la surface du maillage peut être envisagée dans le cas où une plus grande résolution est souhaitée, afin de connaître plus précisément la déviation à l intérieur des faces par exemple. 3.3 Applications Dans cette partie, nous détaillons la mise en œuvre de notre méthode de comparaison de maillage. Ensuite nous présentons des résultats sur la mesure de la qualité de certains algorithmes de simplification Mise en œuvre Comme il a été mentionné dans la partie précédente, notre méthode de comparaison de maillages est basée sur la mesure de déviation d attribut. Pour chaque point donné sur la première surface, nous

53 3.3. Applications 31 trouvons les plus proches voisins sur la seconde surface. Ensuite nous mesurons les déviations entre le point donné et ses plus proches voisins sur la seconde surface. Les performances de l algorithme général dépendent des sous-algorithmes impliqués dans les différentes opérations (recherche des plus proches voisins, discrétisation de faces, etc.). Pour un point donné, ses plus proches voisins sont déterminés efficacement par la distance point-àsurface. Une grille régulière formée de cellules carrées est construite, couvrant la boîte englobant les deux maillages [65, 66]. Chaque cellule contient une liste de tous les sommets inclus à l intérieur et de toutes les faces incluses ou coupant la cellule. Cette technique permet de trouver très rapidement les plus proches voisins d un point donné qui peuvent être des sommets ou des points situés sur une arête ou une face. Nous avons développé un algorithme rapide de discrétisation de faces triangulaires basé sur l algorithme de remplissage de surface (scan conversion) [55, 83]. La discrétisation de faces triangulaires est effectuée dans l espace 3D. Pour conserver une grande précision, nous n effectuons aucune projection 2D. Notre algorithme génère des points uniformément répartis sur une face, Figure 3.2. Figure 3.2 : Schéma de discrétisation d une face triangulaire dans l espace. Comme une face triangulaire est plane, c est un problème 2D. Soit une face f = (A, B, C), un repère local ( u, v) est défini par : AB AC u =. v = AB. (3.4) AC Le repère ( u, v) est défini dans le plan formé par la face f. Les longueurs de u et de v sont fonctions du pas d échantillonnage. Nous générons des lignes de balayage horizontales parallèles au vecteur u et verticales parallèles au vecteur v. Le nombre de lignes de balayage est donné par : n u = AB n v = AC Le nombre de points par ligne de balayage horizontale peut être calculé de façon incrémentale en utilisant la pente de l arête BC. Avec cette technique de discrétisation, les attributs de chaque échantillon sont déterminés de façon incrémentale avec l interpolation de Phong [55]. La technique de discrétisation génère des points uniformément répartis sur les faces. Pour avoir un aspect visuel des déviations mesurées en ces points, nous construisons des images de déviation pour chaque face. Les valeurs de déviation sont codées suivant une échelle de couleurs. Les images construites pour toutes les faces sont ensuite regroupées pour former une texture rectangulaire standard. Nous avons utilisé l algorithme de paquetage proposé par [27] pour construire cette texture. (3.5)

54 32 Chapitre 3. Analyse Multirésolution Nous avons développé un logiciel de comparaison de maillages, appelé MeshDev, disponible en licence GPL [168] sur le Web. Ce logiciel accepte deux maillages en entrée, et retourne des résultats numériques et visuels. Les résultats numériques contiennent les caractéristiques des maillages et les statistiques sur les valeurs de déviation mesurées. Le tableau 3.1 montre un exemple de résultats numériques pouvant être obtenus. La partie de gauche indique les caractéristiques relatives à cet exemple. La partie de droite représente les statistiques sur la déviation des normales mesurée entre les deux maillages. Maillage M a Maillage M b Sommets Faces Aire Déviation Minimum Maximum Moyenne Variance Table 3.1 : Exemple de résultats numériques fournis par le logiciel MeshDev. Les résultats visuels sont obtenus en coloriant le maillage de référence en fonction de la déviation mesurée. La Figure 3.3 représente l échelle de couleurs utilisée pour mettre en évidence les valeurs de déviation mesurées. Dans cette échelle, la couleur bleue représente les déviations minimales, la couleur verte les déviations moyennes et la couleur rouge les déviations maximales. Figure 3.3 : Échelle de couleurs pour la représentation des déviations mesurées Résultats La Figure 3.4 montre des résultats de la mesure des déviations géométriques et des coordonnées de texture. La Figure 3.4(a) représente le maillage initial (3 972 faces). La Figure 3.4(b) représente le maillage simplifié (69 faces) avec une faible déviation de texture. La Figure 3.4(c) représente le maillage simplifié (69 faces) avec de fortes déviations de texture dans certaines régions. La Figure 3.4(d) montre la déviation géométrique mesurée entre le maillage initial et les maillages simplifiés. Les Figures 3.4(e) et 3.4(g) montrent les résultats obtenus par la mesure de distance de Cohen. Dans le cas où la déviation de texture est faible, la mesure de Cohen donne les mêmes résultats visuels que la déviation géométrique. Toutefois, ces deux mesures ne peuvent pas être comparées numériquement. La déviation géométrique est basée sur la distance au point le plus proche, alors que la déviation de Cohen est basée sur la distance au point correspondant. Les Figures 3.4(f) et 3.4(h) montrent les résultats obtenus par notre mesure de déviation d attribut, où les attributs considérés sont les coordonnées de texture. Nous voyons que notre mesure de déviation géométrique n est pas sensible aux distortions de texture comme l est la distance de Cohen. De plus la mesure de déviation d attribut permet de mettre en évidence précisément ces distortions de texture. Pour notre expérimentation, nous avons utilisé trois logiciels de simplification de maillages :

55 3.3. Applications 33 (a) Maillage initial (b) Simplifié (faible dév.) (c) Simplifié (forte dév.) (d) Déviation géométrique (e) Déviation de Cohen en (b) (f) Déviation d attribut en (b) (g) Déviation de Cohen en (c) (h) Déviation d attribut en (c) Figure 3.4 : Comparaison entre la mesure de Cohen [29] en (e) et (g) et notre mesure de déviation d attribut en (f) et (h) (les attributs considérés sont les coordonnées de texture). QSlim : logiciel développé par Michael Garland basé sur une mesure d erreur quadratique [68, 69]. Jade : logiciel développé par Italian Visual Computing Group basé sur une mesure d erreur globale [26]. ProgMesh : logiciel développé par Paralelo basé sur les maillages progressifs de Hugues Hoppe [86]. La Figure 3.5 montre le modèle utilisé pour notre expérimentation (a), et les résultats des trois algorithmes de simplification testés (b)-(d). Le maillage original contient faces et les maillages simplifiés contiennent environ faces. Les Figures 3.6 et 3.7 montrent des résultats visuels de la mesure de déviation obtenus sur un maillage simplifié par les trois logiciels cités précédemment. Les Figures 3.8 à 3.11 montrent des courbes de comparaison des trois algorithmes précédents en termes quelques mesures de déviations. La Figure 3.6 montre les résultats des mesures de déviation géométrique. Sur la Figure 3.6(a), nous remarquons que QSlim génère des déviations faibles sur l ensemble du maillage mais nous constatons qu il y a quelques zones avec des déviations fortes. Sur la Figure 3.6(b), nous remarquons que Jade génère des déviations moyennes sur l ensemble du maillage. Cet algorithme simplifie en maîtrisant les bornes de l erreur globale engendrée. Sur la Figure 3.6(c), nous remarquons que ProgMesh génère des déviations faibles et moyennes sur l ensemble du maillage

56 34 Chapitre 3. Analyse Multirésolution (a) Maillage original (b) QSlim (c) Jade (d) ProgMesh Figure 3.5 : Simplification d un modèle (a) avec trois logiciels de simplification (b)-(d). Le maillage original contient faces et les maillages simplifiés contiennent environ faces. La Figure 3.7 montre les résultats des mesures de déviation des normales. Nous retrouvons les mêmes constatations que précédemment. Sur la Figure 3.7(a), QSlim génère des déviations faibles sur l ensemble du maillage et des déviations élevées dans les zones à fortes courbures. Sur la Figure 3.7(b), Jade génère des déviations moyennes sur l ensemble du maillage. Sur la Figure 3.7(c), ProgMesh ne génère que très peu de déviations fortes. Notez que la représentation visuelle utilisée précédemment est normalisée pour chaque modèle évalué. Ceci permet de bien mettre en évidence tout la plage des valeurs de déviation, mais ne permet pas la comparaison visuelle entre plusieurs modèles (car les couleurs représentent des valeurs de déviations différentes). Il est toutefois possible d utiliser une représentation visuelle normalisée pour un ensemble de modèles permettant une comparaison visuelle globale. Les résultats numériques permettent une comparaison différente mais plus précise entre différents modèles. La Figure 3.8 montre la déviation moyenne géométrique en fonction du nombre de faces pour les trois algorithmes de simplification. Le logiciel QSlim génère toujours une erreur géométrique moyenne plus faible que les deux autres logiciels testés. La Figure 3.9 montre la déviation moyenne des normales. Ces courbes confirment les remarques précédentes. Le logiciel QSlim obtient dans tous les cas la plus faible déviation moyenne. Ce logiciel gère parfaitement les attributs d apparence pendant le processus de simplification et génère de très faibles déviations. La Figure 3.10 montre les histogrammes de la déviation géométrique pour les trois algorithmes de simplification. Ce tracé met en évidence la supériorité des quadriques d erreur (QSlim) en générant une déviation faible et bien maîtrisée. Le logiciel Jade excelle dans sa faculté à conserver une limite d erreur globale. La Figure 3.11 montre les histogrammes de la déviation des normales. Les trois logiciels fournissent des résultats proches. Le logiciel QSlim génère là encore les déviations les plus faibles.

57 3.3. Applications 35 (a) QSlim (b) Jade (c) ProgMesh Figure 3.6 : Mesure de déviation géométrique pour trois algorithmes de simplification différents. (a) QSlim (b) Jade (c) ProgMesh Figure 3.7 : Mesure de déviation des normales pour trois algorithmes de simplification différents.

58 36 Chapitre 3. Analyse Multirésolution QSlim Jade ProgMesh Déviation moyenne géométrique Pourcentage de simplification Figure 3.8 : Comparaison de la déviation moyenne géométrique de trois algorithmes de simplification de maillages QSlim Jade ProgMesh Déviation moyenne des normales Pourcentage de simplification Figure 3.9 : Comparaison de la déviation moyenne des normales de trois algorithmes de simplification de maillages.

59 3.3. Applications QSlim Jade ProgMesh 200 Nombre de sommets Déviation géométrique Figure 3.10 : Histogramme de la déviation géométrique de trois algorithmes de simplification de maillages QSlim Jade ProgMesh 12 Nombre de sommets Déviation des normales Figure 3.11 : Histogramme de la déviation des normales de trois algorithmes de simplification de maillages.

60 38 Chapitre 3. Analyse Multirésolution 3.4 Représentation en niveaux de détails de modèles 3D Les outils d acquisition et de reconstruction de modèles 3D produisent des maillages ayant une haute résolution incluant une très grande quantité d informations, ce qui donne à ces maillages une taille très importante qui empêche une manipulation temps réel. Afin de faciliter cette manipulation, il est donc important de représenter ces maillages à des niveaux de détails plus faibles en supprimant des informations jugées non significatives. Une méthode de représentation en niveaux de détails doit aussi permettre une navigation facile et non coûteuse entre les différents niveaux : du modèle initial (niveau haute résolution) au niveau bas résolution et vice-versa. Elle se base donc sur deux opérateurs : (i) un opérateur de simplification pour supprimer des sommets et des faces d un maillage et (ii) un opérateur de subdivision pour ajouter des sommets et des faces à un maillage. Figure 3.12 : L opérateur de suppression de sommet. Plusieurs opérateurs de simplification ont été proposés dans la littérature. Il sont principalement basés sur deux types de stratégies : (i) Suppression de sommets qui consiste à supprimer un sommet puis à retrianguler le maillage pour fermer le trou resultant de la suppression [156], Figure (ii) Contraction d arête qui consiste à contracter une arête (v a, v b ) en un seul sommet v n. Ceci entraîne la suppression de l arête (v a, v b ) ainsi que les faces contiguës à cette arête, Figure Hoppe fût le premier à proposer l opérateur de contraction d arête pour la simplification de maillage [89]. Ce type d opérateur a largement été utilisé depuis sous plusieurs variantes [86, 192, 87, 5, 80]. Dans la simplification dépendantes du point de vue les parties non visibles de l objet sont considérablement simplifiées, voire même supprimées, pour accélérer le calcul du rendu. Un seul objet peut ainsi contenir plusieurs niveaux de détails [192, 87, 114]. Figure 3.13 : Une contraction d arête et sa séparation inverse de sommet.

61 3.5. Analyse multirésolution de maillages 39 Dans une représentation en niveaux de détails, la subdivision constitue le processus inverse de la simplification ; à partir d un modèle basse résolution et en suivant des règles de raffinement, la subdivision joute progressivement des détails à un modèle afin de créer un modèle haute résolution. Un schéma de subdivision est composé de deux étapes : (i) une étape de raffinement qui agit sur la topologie du maillage en insérant de nouveaux sommets et en mettant à jour les information de connectivité, et (ii) une étape de lissage qui agit uniquement sur la géométrie en déplaçant les sommets ; ce lissage peut être fait par interpolation (lissage interpolant) ou par approximation (lissage approximant). Le schémas de subdivision qui a reçu le plus d intérêt dans le domaine de l informatique graphique est celui de Loop [110] qui manipule des maillages triangulaires. Le schéma de subdivision "papillon" (butterfly subdivision) est un schéma interpolant : les sommets du maillage initial ne sont pas repositionnés durant la phase de lissage [47]. Les schémas de subdivision papillon et de Loop utilisent la règle de raffinement quaternaire (où chaque face est divisée en quatre sous-faces). Dans le schéma de subdivision proposé par Kobbelt [100], appelé 3-subdivision, les nouveaux sommets ne sont plus insérés sur les arêtes mais sur les faces. D autre méthodes adaptées aux maillages quadrangulaires ont été présentées mais ne sont pas traitées dans notre étude [23, 44]. Plus de détails sur les schémas de subdivision et les algorithmes de simplification peuvent être consultés dans [143]. 3.5 Analyse multirésolution de maillages Après une brève introduction à l analyse multirésolution, cette section présente les deux schémas d analyse multirésolution, adaptés aux maillages irréguliers avec attributs d apparence, que nous avons développés et appliqués pour obtenir une visualisation en niveaux de détails, et un filtrage adaptatif de modèles numériques. L analyse multirésolution représente un ensemble de données selon plusieurs niveaux de détail, et permet de procéder à une analyse spectrale de ces données [115, 116]. Les données en entrée sont décomposées en une séquence de : (i) approximations et (ii) coefficients de détails. Les approximations représentent les données initiales avec différents niveaux de résolution. Les coefficients de détails représentent la perte d informations dûe aux approximations. L analyse multirésolution est fondée sur la théorie des ondelettes et a été largement utilisée en informatique graphique dans les dernières années, [170] est une bonne introduction. Lounsbery [111, 112] fut le premier à faire le lien entre la transformée en ondelette et les surfaces de subdivision. Il a proposé une technique permettant de construire une représentation multirésolution pour les maillages semi-réguliers. La méthode de Schröder et Sweldens [155] s appuie sur la méthode du lifting scheme [176] et sur les travaux de Lounsbery [111] pour déterminer des bases d ondelettes sphériques [31]. Chaque point est dans un premier temps repositionné sur une sphère géodésique. Un voisinage à plusieurs niveaux est introduit permettant la construction de bases d ondelettes. Bonneau [20] présente une méthode pour appliquer les ondelettes à des maillages irréguliers. Il définit deux opérateurs : un opérateur de lissage pour calculer le maillage à un niveau de résolution plus bas et un opérateur d erreur qui détermine la différence entre le maillage d approximation et celui de départ. Bonneau généralise ainsi les fonctions de Haar pour l analyse multirésolution de maillages irréguliers. Cette analyse a l avantage de gérer les attributs d apparence, mais elle reste limitée aux maillages planaires ou sphériques [75]. Daubechies [34] et Guskov [81] s appuient sur la généralisation des schémas de subdivision pour proposer la construction des ondelettes de seconde génération sur les maillages irréguliers. Les algorithmes de subdivision sont rapides et créent naturellement des

62 40 Chapitre 3. Analyse Multirésolution structures multirésolutions qui peuvent permettre le développement de fonctions d échelle et d ondelette. Les auteurs proposent un schéma de subdivision non-uniforme construit à partir d un opérateur de relaxation non-uniforme et d un procédé de sous et sur échantillonnage déterminé à partir de l algorithme des maillages progressifs [86]. Valette [184] reprend le schéma d analyse de Lounsbery et propose d assouplir la règle de subdivision quaternaire, ainsi chaque face peut être subdivisée en 4, 3, 2 ou 1 sous-faces. Cette méthode applique l analyse multirésolution de Lounsbery directement sur les maillages irréguliers, évitant ainsi les étapes de r lage. Le constat que nous avons établi [143, chapitre 4] à propos de l analyse multirésolution des maillages 3D à l aide de la transformée en ondelette est que cette analyse ne permet pas de retrouver toutes les propriétés connues de cette transformée appliquée aux images 2D. La principale différence provient de l échantillonnage irrégulier des points du maillage dans l espace. Les méthodes mises en œuvre pour transformer un maillage irrégulier en maillage semi-régulier et régulier introduisent des erreurs dans les échelles de haute résolution [48]. D autre part, les filtres développés sont très contraignants : ils sont calculés pour une subdivision quaternaire. L analyse ne porte alors que sur la géométrie. Les ondelettes sphériques peuvent s appliquer à toute fonction définie sur une sphère. Les méthodes qui définissent un schéma d analyse directement sur un maillage irrégulier s appuient sur des représentations hiérarchiques pour définir la règle de sous-échantillonnage et de sur-échantillonnage. L analyse de Bonneau généralise les ondelettes de Haar sur les maillages définis dans un domaine planaire ou sphérique. La transformée de Guskov s appuie sur un schéma de subdivision par relaxation de surface permettant des applications comme le filtrage de surface. Le schéma de Guskov est basé sur la décomposition des maillages progressifs, ainsi cette méthode ne fait pas apparaître clairement de niveaux de résolution caractéristiques, liés par exemple à une notion d échelle globale. La transformée de Valette requiert un processus de simplification complexe limité par des règles de subdivision. Seules les méthodes travaillant dans le domaine sphérique (Schröder et Bonneau) supportent les attributs d apparence Schémas d analyse multirésolution proposés Nous avons proposé deux schémas d analyse multirésolution de maillages irréguliers avec attributs d apparences : (i) Le premier schéma réalise une analyse multirésolution interpolante. Les processus de décomposition et de reconstruction de ce schéma sont présentés en Figure Ce schéma réalise une transformée en ondelette basée sur le lifting scheme. (ii) Le second schéma proposé permet de réaliser une analyse multirésolution approximante. Le processus de décomposition et de reconstruction de ce schéma est présenté en Figure Ce schéma crée une représentation sur-complète engendrant des coefficients de détail supplémentaires et permettant plus d applications que le schéma interpolant (comme le filtrage ou la modélisation multi-échelle). Figure 3.14 : Schéma d analyse multirésolution interpolante de maillages irréguliers.

63 3.5. Analyse multirésolution de maillages 41 Figure 3.15 : Schéma d analyse multirésolution approximante de maillages irréguliers. Dans ces deux schémas, la décomposition en niveaux de résolution est effectuée par une méthode de sous-échantillonnage global basée sur les maillages progressifs et l algorithme de simplification indépendant introduit par De Floriani [54] et Xia [191]. L opération inverse (la reconstruction) est effectuée par une méthode de sur-échantillonnage global basée sur une insertion de sommets suivie d une relaxation qui modifie les positions des sommets insérés. Le sous-échantillonnage global est le premier ingrédient de notre schéma d analyse multirésolution de maillage irrégulier. Nous utilisons l algorithme indépendant (voir section 3.4) et l opération de contraction de demi-arête pour créer un maillage sous-échantillonné en supprimant un ensemble indépendant de sommets (i.e. des sommets qui ne sont pas connectés par une arête). Cette technique a été proposée par Kobbelt [101] pour obtenir des performances optimales avec son algorithme de lissage multi-échelle. Le sous-échantillonnage global conduit à sélectionner un ensemble indépendant de sommets, appelés sommets impairs, qui sont supprimés par des opérations de contraction de demi-arête. Les sommets restants sont appelés sommets pairs. L opération inverse (i.e. le sur-échantillonnage global) requise pour la reconstruction multirésolution ré-insère les sommets précédemment supprimés pour créer un maillage topologiquement identique au maillage initial. La méthode initiale des maillages progressifs reconstruit toujours le maillage original. Afin de créer une approximation lisse du maillage original, nous séparons chaque étape du raffinement des maillages progressifs en une opération topologique (insertion du sommet) et une opération géométrique (positionnement du sommet). Dans notre approche de sur-échantillonnage global, seule l opération topologique est utilisée. L opération géométrique, permettant de créer une approximation lisse du maillage original, est réalisée par une opération de relaxation. La relaxation de surface a été largement appliquée au lissage de surfaces, elle s appuie sur un processus de diffusion [178, 99, 40]. Dans notre approche multirésolution, nous utilisons la relaxation pour prédire la position des sommets supprimés d un niveau de résolution au suivant. Plus précisément, nous cherchons à ce que la position des sommets prédits soit la plus proche de la position des sommets du maillage initial. Nous avons utilisé l opérateur de relaxation de géométrie, appelé relaxation de courbure, proposé dans [154] et nous l avons étendu pour la relaxation des autre attributs [143, chapitre 4].

64 42 Chapitre 3. Analyse Multirésolution Analyse multirésolution interpolante Nous avons maintenant les outils nécessaires pour construire un schéma d analyse multirésolution : le sous/sur-échantillonnage global crée les niveaux de détail, et l opération de relaxation prédit les sommets et calcule les coefficients de détail entre deux niveaux successifs. Les méthodes d analyse multirésolution classique (e.g. transformée en ondelette) ne peuvent être appliquées sur les maillages que sous certaines conditions (e.g. surface de subdivision, surface dans le domaine sphérique ou planaire). Pour le moment, l application de la transformée en ondelettes aux maillages irréguliers semble encore difficile [34]. Sweldens [177] a proposé le lifting scheme permettant l application de l analyse multirésolution aux données irrégulièrement échantillonnées. En nous basant sur les travaux de Sweldens, nous proposons une méthode d analyse multirésolution adaptée aux maillages irréguliers contenant des attributs. Cette méthode permet de décomposer un maillage en une série de niveaux de détail, et de calculer les coefficients de détail pour les attributs. Le processus de décomposition et de reconstruction sont présentés ci-après, les opérations nécessaires à la réalisation de ces deux processus ne seront cependant pas détaillées. Processus de décomposition : Lors de la décomposition d un niveau de détail d un maillage, on prend en entrée un maillage fin M l et on obtient en sortie un maillage d approximation M l+1 et un ensemble de coefficients de détail D l+1. Le schéma de décomposition multirésolution de maillages est présenté en Figure Figure 3.16 : Schéma de décomposition de l analyse multirésolution interpolante de maillages irréguliers avec attributs. La décomposition est effectuée en quatre étapes : 1. Sélection des sommets pairs et impairs (opérateur S ) 2. Relaxation des attributs des sommets impairs (opérateur R) 3. Calcul des coefficients de détail des attributs des sommets impairs (opérateur ) 4. Suppression des sommets impairs (opérateur ) En partant d un maillage fin M l, deux groupes de sommets (pairs et impairs) sont définis par l opérateur de séparation S. Les sommets impairs I l+1 sont désignés pour être supprimés, et les sommets pairs P l+1 restent pour créer le maillage grossier M +1 qui approche le maillage fin M l. Les vecteurs attributs des sommets impairs sont prédits par l opérateur de relaxation R, et sont soustraits aux vecteurs attributs des sommets impairs originaux pour obtenir les coefficients de détail D l+1. La dernière étape est la suppression des sommets impairs du maillage original en utilisant l opérateur de souséchantillonnage pour créer le maillage d approximation M l+1.

65 3.5. Analyse multirésolution de maillages 43 Processus de reconstruction : Lors de la reconstruction d un niveau de détail d un maillage, on prend en entrée un maillage d approximation M l+1 et un ensemble de coefficient de détail D l+1, et on obtient en sortie un maillage fin M l exactement reconstruit. Le schéma de reconstruction multirésolution de maillages est présenté en Figure Figure 3.17 : Schéma de reconstruction de l analyse multirésolution interpolante de maillages irréguliers avec attributs. La reconstruction est effectuée en quatre étapes : 1. Insertion topologique des sommets impairs (opérateur ) 2. Relaxation des attributs des sommets impairs (opérateur R) 3. Reconstruction des attributs des sommets impairs (opérateur +) 4. Fusion des attributs reconstruits avec le maillage sur-échantillonné (opérateur F) Le schéma de reconstruction est simplement le schéma inverse de la décomposition. En partant d un maillage grossier M l+1, les sommets impairs sont ré-insérés grâce à l opérateur de sur-échantillonnage. Les sommets impairs sont prédits en utilisant l opérateur de relaxation R, et exactement reconstruits en ajoutant les coefficients de détail D l+1. La dernière étape est la fusion des sommets impairs reconstruits et du maillage sur-échantillonné qui est effectuée en utilisant l opérateur de fusion F Analyse multirésolution approximante Nous désirons maintenant étendre le schéma précédent à un schéma approximant. Guskov et al. ont proposé un schéma approximant basé sur la pyramide de Burt-Adelson [81, 22]. Cet algorithme a l avantage de permettre des applications de filtrage et de modélisation multi-échelle. L inconvénient du schéma de Guskov est qu il ne définit pas de niveaux de résolution distincts mais une suite continue de niveaux de détail (comme les maillages progressifs). De plus, Guskov utilise un opérateur de relaxation nécessitant un support étendu et une paramétrisation locale. Ainsi, en nous basant sur les travaux de Guskov et notre schéma interpolant d analyse, nous proposons un nouveau schéma approximant d analyse multirésolution de maillages. Processus de décomposition Le schéma de décomposition est illustré en Figure 3.18, et peut être décomposé en trois étapes : 1. Relaxation des attributs de surface (opérateur R) 2. Calcul des coefficients de détail (opérateur )

66 44 Chapitre 3. Analyse Multirésolution Figure 3.18 : Schéma de décomposition de l analyse multirésolution approximante de maillages irréguliers avec attributs. 3. Sous-échantillonnage du maillage (opérateur ) La première étape de la décomposition est le calcul des attributs relaxés pour tous les sommets du maillage. Ensuite, les coefficients de détail D l+1 sont calculés comme la différence entre les attributs des sommets du maillage original M l et les attributs du maillage relaxé M l. Finalement, le maillage est sous-échantillonné pour créer le maillage grossier M l+1. On définit deux groupes de sommets : les sommets impairs I l+1 qui sont supprimés pour créer le maillage, et les sommets pairs P l+1 qui restent pour créer le maillage grossier M l+1. Notons que les sommets pairs sont inchangés durant une étape de décomposition, et le maillage grossier est une version sous-échantillonnée du maillage fin V l+1 V l. Un maillage est représenté comme un couple M = (V, K) où V est un ensemble de sommets représentant la géométrie et les attributs d apparence du maillage, et où K est un complexe simplicial représentant la topologie du maillage. Durant la première étape de relaxation des attributs de surface, tous les attributs a l i,k de tous les sommets vl i du maillage Ml = (V, K) sont relaxés par l opérateur de relaxation R pour former un nouveau maillage relaxé M l = (Ṽ, K) : ã l i,k = R(al i,k ). (3.6) Le nouveau maillage relaxé M l est composé des attributs relaxés ã l i,k des nouveaux sommets ṽl i Ṽl. Les coefficients λ l i, j calculés pendant la relaxation doivent être conservés pour être ré-utilisés durant le processus de reconstruction. Les coefficients de détail D l+1 = {d l+1 i } sont calculés comme la différence entre les attributs du maillage original et les attributs du maillage relaxé : d l+1 i,k = al i,k ãl i,k. (3.7) Nous calculons donc un vecteur de détail d l+1 i,k pour chaque vecteur attribut al i,k de chaque sommet vl i. Ceci permet donc une analyse complète de tous les attributs du maillage, et aussi une reconstruction exacte du maillage et de ses attributs. La dernière étape de la décomposition est le sous-échantillonnage du maillage. Les sommets impairs sont supprimés en utilisant des opérations de contraction de demi-arête. Les sommets restants composent le maillage grossier en sortie du schéma de décomposition. Il est important d étiqueter les sommets et d enregistrer les opérations des contractions effectuées et les étiquettes qui pourront être ré-utilisés durant le processus de reconstruction. Nous verrons que le processus de reconstruction proposé requiert d appliquer l opérateur de relaxation en premier sur les sommets impairs et ensuite sur les sommets pairs dans le but d assurer une représentation lisse de la surface.

67 3.5. Analyse multirésolution de maillages 45 Processus de reconstruction Le schéma de reconstruction est illustré en Figure 3.19, et peut être décomposé en cinq étapes : 1. Sur-échantillonnage du maillage (opérateur ) 2. Relaxation des attributs des sommets impairs (opérateur R i ) 3. Reconstruction des attributs des sommets impairs (premier opérateur +) 4. Relaxation des attributs des sommets pairs (opérateur R p ) 5. Reconstruction des attributs des sommets pairs (second opérateur +) Figure 3.19 : Schéma de reconstruction de l analyse multirésolution approximante de maillages irréguliers avec attributs. A partir d un maillage grossier M l+1 et d un ensemble de coefficients de détail D l+1, les sommets impairs sont ré-insérés topologiquement en utilisant l opérateur de sur-échantillonnage (une série d opérations de séparation de sommet). Les attributs des sommets impairs sont prédits en utilisant l opérateur de relaxation R i, et sont ensuite exactement reconstruits en ajoutant les coefficients de détail correspondants D l+1 pour créer un maillage intermédiaire M = ( M l, K l ) : â l i,k = R(al i,k ) + dl 1 i,k (3.8) Notons que dans cette phase la relaxation n est effectuée que pour les sommets impairs. Notons aussi que le maillage intermédiaire M l a la même topologie K l que le maillage fin M l. Puis, dans une dernière étape, les sommets pairs du maillage intermédiaire M l sont relaxés et exactement reconstruits en ajoutant les coefficients de détail correspondants : a l i,n = R(âl i,n ) + dl 1 i,n (3.9) La relaxation des sommets pairs après la reconstruction des sommets impairs est essentielle pour obtenir une représentation lisse de la surface. Ce schéma conduit à une analyse multirésolution approximante du maillage [81, 34]. Il est toutefois possible de créer un schéma interpolant en omettant l étape de reconstruction des sommets pairs Quelques résultats expérimentaux La Figure 3.20 montre les effets de la reconstruction approximante d un plan irrégulier, Figure 3.20(a). Les résultats ont été obtenus en décomposant le maillage vers un niveau basse résolution puis en

68 46 Chapitre 3. Analyse Multirésolution mettant un sommet à 1, Figure 3.20(b). Le maillage est reconstruit en mettant tous les coefficients de détail à 0, Figure 3.20(d). En comparant ce résultat avec celui du schéma interpolant, Figure 3.20(c), nous voyons que le schéma approximant produit une surface lisse permettant des applications de filtrage. Le schéma approximant nécessite donc de calculer des coefficients de détail pour tous les sommets du maillage à chaque échelle, ce qui conduit à une analyse sur-complète [81]. (a) (b) (c) (d) Figure 3.20 : Reconstruction approximante. En partant d un plan irrégulier (a), le maillage est décomposé jusqu à un maillage de base, et un sommet est mis à 1 (b). Ensuite les coefficients de détail sont mis à 0, le maillage est reconstruit en utilisant le schéma interpolant (c) et en utilisant le schéma approximant (d). Nos méthodes d analyse multirésolution de maillages génèrent des niveaux de résolution distincts. La ligne du haut de la Figure 3.21 montre un objet numérisé et différents niveaux de détail engendrés par nos schémas d analyse multirésolution. Nos schémas d analyse multirésolution sont basés sur les opérations de contraction d arête et de séparation de sommet ; nous disposons ainsi de tous les avantages des maillages progressifs (voir section 3.4). Il est donc facile de passer d un niveau de résolution à un autre en appliquant une série de contractions d arête ou de séparations de sommet préablement définies durant le processus de décomposition. La ligne du bas de la Figure 3.21 montre une représentation en pseudo-couleurs de la longueur des vecteurs de détail de l analyse géométrique du modèle "Waterneck". Nous remarquons que les vecteurs de détail sont plus grands dans les zones de fortes courbures. Dans ces zones l opérateur de relaxation n arrive pas à prédire la surface, ce qui indique une zone où les caractéristiques de la surface sont importantes. Nous remarquons aussi que les détails dans les niveaux les plus fins dépendent de la forme des faces du maillage. Ce "bruit" topologique disparaît ensuite dans les niveaux plus grossiers. La Figure 3.22 montre l analyse multirésolution du modèle "Terre". La rangée du haut montre différents niveaux de résolution du modèle, et la rangée du bas montre une représentation en pseudocouleurs de la longueur des vecteurs de détail pour l analyse des attributs de couleur. Ce modèle est une sphère avec des attributs de couleur représentant l élévation de la surface de la Terre à partir

69 3.5. Analyse multirésolution de maillages 47 (a) Niveau 0 ( faces) (b) Niveau 5 ( faces) (c) Niveau 10 (3.714 faces) (d) Niveau 15 (746 faces) (e) Niveau 20 (150 faces) (f) Niveau 0 (g) Niveau 5 (h) Niveau 10 (i) Niveau 15 (j) Niveau 20 Figure 3.21 : Analyse multirésolution géométrique d un modèle 3D. La rangée du haut montre les différents niveaux de détail. La représentation en fil de fer du maillage est montrée en rouge sur la partie gauche de chaque modèle. La rangée du bas représente en pseudo-couleurs les coefficients de détail associés à chaque échelle. des données ETOPO5. Nous remarquons que les vecteurs de détail de l analyse de couleur sont plus grands dans les zones de transition ou de forte variation de la couleur. L analyse multirésolution des attributs de couleur met en évidence les caractéristiques de ces attributs (e.g. les bords de côte). La Figure 3.23 montre l analyse des attributs du modèle "Swirl", Figure 3.23(a). Les résultats pseudocolorés de l analyse géométrique, Figure 3.23(b), des normales, Figure 3.23(c), et des couleurs, Figure 3.23(d), sont montrés. Sur ces figures, les couleurs représentent la longueur des vecteurs de détail du premier niveau de résolution (bleu correspond à la longueur minimale, vert à la longueur moyenne, et rouge à la longueur maximale). Les vecteurs détail de couleur sont nuls dans les zones homogènes de couleur. L analyse des couleurs met en évidence les caractéristiques importantes des couleurs du maillage. De même, l analyse géométrique montre les caractéristiques de la géométrie du maillage. Notons que les longueurs des vecteurs de détail géométrique ont une répartition en forme de losange car l analyse géométrique dépend de la topologie du maillage (i.e. dépendante de la forme des faces triangulaires). Ainsi cette analyse révèle aussi les caractéristiques de la topologie du maillage analysé. L analyse des normales montrent que les longueurs des vecteurs détails varient en fonction de la courbure de la surface, et que cet analyse n est pas dépendante de la topologie.

70 48 Chapitre 3. Analyse Multirésolution (a) Niveau 0 (b) Niveau 5 (c) Niveau 10 (d) Niveau 15 (e) Niveau 0 (f) Niveau 5 (g) Niveau 10 (h) Niveau 15 Figure 3.22 : Analyse multirésolution des attributs de couleur du modèle "Terre". La rangée du haut montre différents niveaux de résolution du modèle, et la rangée du bas montre une représentation en pseudo-couleurs de la longueur des vecteurs de détail pour l analyse des attributs de couleur. Ce modèle est une sphère avec des attributs de couleur représentant l élévation de la surface de la Terre à partir des données ETOPO5. L analyse multirésolution des attributs de couleur met en évidence leurs caractéristiques. (a) (b) (c) (d) Figure 3.23 : Analyse multirésolution du modèle "Swirl" (a). L analyse de la géométrie (b) et des normales (c) donnent des informations sur la géométrie de la surface. L analyse de la couleur (d) met en évidence les transitions des couleurs sur la surface. La Figure 3.24 montre les histogrammes des coefficients de détail géométrique (norme des vecteurs de détail) pour les quatre premiers niveaux de résolution et pour différents modèles. La distribution des coefficients de détail géométrique a un pic à zéro avec une longue queue. Le pic à zéro est produit par les régions lisses des modèles, tandis que la queue est créée par les arêtes vives. Il est possible de donner un signe arbitraire aux coefficients de détails, par exemple en prenant le signe du produit scalaire entre le vecteur de détail géométrique et la normale à un sommet donné (i.e. signe positif pour une région concave et signe négatif pour une région convexe). Il est alors possible de modéliser la distribution des coefficients de détail géométrique comme un mélange de fonctions gaussiennes (Gaussian

71 3.6. Applications de l analyse multirésolution 49 Scale Mixture) [131]. La distribution des coefficients de détail des autres attributs est beaucoup plus variable et dépend du type d attribut et surtout du modèle Level 0 Isis Venus Santa Horse Bunny Level 1 Isis Venus Santa Horse Bunny Nombre de sommets Nombre de sommets Longueur du vecteur de détail géométrique Longueur du vecteur de détail géométrique (a) Niveau 0 (b) Niveau 1 Nombre de sommets Level 2 Isis Venus Santa Horse Bunny Nombre de sommets Level 3 Isis Venus Santa Horse Bunny Longueur du vecteur de détail géométrique (c) Niveau Longueur du vecteur de détail géométrique (d) Niveau 3 Figure 3.24 : Histogrammes des longueurs des vecteurs de détail géométrique pour les quatre premiers niveaux de résolution et pour différents modèles. 3.6 Applications de l analyse multirésolution Nous avons utilisé les schémas d analyse multirésolution pour : (i) La segmentation des vecteurs de détail des modèles et la détection du bruit impulsionnel généré par un de nos scanners 3D. (ii) La construction et simplification adaptative de modèles. (iii) La visualisation adaptative dépendant du point de vue. (iv) Le filtrage de surface et le débruitage de la géométrie et des attributs de surfaces. Dans cette section nous présentons quelques exemples d applications de ces schémas sur des modèles créés avec des scanners 3D à partir d objets ou de scènes réels.

72 50 Chapitre 3. Analyse Multirésolution Segmentation La segmentation des vecteurs de détail obtenus par l analyse multirésolution permet la localisation de zones d intérêt du maillage. Dans un grand nombre de cas, on peut admettre que les zones d intérêt correspondent à de fortes variations pour les détails dans les niveaux où la résolution est fine et à des transitions plus grossières lorsque le niveau d échelle diminue [180]. La segmentation des vecteurs de détail peut mettre en évidence les régions du maillage où les discontinuités de la géométrie ou des attributs du maillage sont assez élevées. La Figure 3.25 montre la segmentation de la longueur des vecteurs de détail géométrique du modèle "Fandisk" à l échelle la plus fine. Les sommets ayant un vecteur de détail géométrique avec une longueur supérieure à un seuil τ sont coloriés en orange, les autres en bleu. La segmentation des détails géométriques met en évidence les arêtes anguleuses de ce modèle CAO. Dans ce cas, l opération de segmentation peut être assimilée à une détection d arête assez voisine de la détection de contour en imagerie 2D traditionnelle. Il est cependant difficile de proposer une méthode de segmentation capable de fournir des résultats pertinents sur tous les types de maillage. Il est préférable que les algorithmes de segmentation soient développés spécifiquement pour une application donnée [91, 128]. (a) (b) (c) Figure 3.25 : Segmentation des détails du modèle "Fandisk". (a) Modèle original. (b) Représentation en pseudo-couleur de la longueur des vecteurs de détail géométrique pour le premier niveau de résolution. (c) Segmentation des détails géométriques pour la mise en évidence des arêtes anguleuses du modèle Reconstruction et simplification adaptatives Dans une analyse multirésolution de maillages, les vecteurs de détail sont représentatifs des caractéristiques locales du maillage analysé. Il est alors intéressant d utiliser ces vecteurs de détail durant le processus de reconstruction pour ne conserver que les sommets dits "pertinents". Nous avons proposé un schéma de reconstruction adaptative permettant la simplification et la visualisation de maillages dépendantes des vecteurs de détail, la méthode est basée sur le schéma interpolant

73 3.6. Applications de l analyse multirésolution 51 Figure 3.26 : Schéma de reconstruction adaptative pour l analyse multirésolution interpolante. Ce schéma fait intervenir un paramètre externe τ permettant la segmentation des vecteurs de détail et ainsi la sélection des sommets pertinents. Les sommets ayant un vecteur de détail avec une longueur inférieure à ce paramètre sont jugés non pertinents, et ne sont pas ré-insérés dans le maillage reconstruit. d analyse d analyse multirésolution de maillage. Nous introduisons un seuil τ permettant de segmenter les vecteurs de détail et ainsi de sélectionner les sommets pertinents qui vont être ré-insérés dans le maillage reconstruit. Tous les sommets ayant un vecteur de détail avec une longueur inférieure à τ ne sont pas ré-insérés dans le maillage et sont ainsi supprimés du maillage final. Le schéma de reconstruction adaptative pour l analyse interpolante est présenté en Figure Figure 3.27 : Modèle de terrain comportant plusieurs niveaux de résolution. Cet exemple illustre l aptitude du schéma d analyse multirésolution à la reconstruction adaptative d un modèle.

74 52 Chapitre 3. Analyse Multirésolution La Figure 3.27 illustre un modèle reconstruit où différentes parties du modèle sont à différents niveaux de résolution. La partie droite du modèle est à la résolution la plus fine (niveau 0), la partie centrale au niveau trois, et la partie gauche au niveau de résolution cinq. (a) faces (b) faces (τ = ) (c) faces (τ = 0.001) (d) faces (τ = 0.002) Figure 3.28 : Simplification adaptative du modèle "Bunny" pour différentes valeurs du seuil τ. Dans cet exemple, le modèle est simplifié en fonction des vecteurs de détail géométrique. La Figure 3.28 montre un exemple de simplification adaptative du modèle "Bunny" pour différentes valeurs du seuil τ. Dans cet exemple, seuls les vecteurs de détail géométrique sont considérés. La simplification adaptative permet de conserver les zones du modèle à fortes courbures Visualisation adaptative Le raffinement dépendant du point de vue de maillage étend la simplification dynamique de maillage en utilisant des critères dépendants du point de vue pour sélectionner le niveau de détail le plus approprié pour la vue courante. Pour construire notre schéma de maillage multirésolution dépendant du point de vue, nous effectuons en premier la suppression des faces non visibles (cachées ou en dehors du point de vue). Ensuite nous remplaçons la mesure d erreur dans l espace-écran, utilisée dans les méthodes classiques, par le schéma de reconstruction adaptative vu précédemment, Figure La liste des sommets actifs est triée en fonction de la longueur des vecteurs de détail et de chaque type d attribut. Ensuite le nouveau maillage raffiné est reconstruit en insérant des sommets dont le vecteur

75 3.6. Applications de l analyse multirésolution 53 de détail à une norme supérieure à un seuil donné. Ce seuil peut être un paramètre fixé par l utilisateur ou une valeur calculée dynamiquement en fonction de la vitesse d affichage. Cette dernière méthode assure une vitesse d affichage constante tout en conservant les caractéristiques importantes du modèle visualisé. Pour éviter la construction d un maillage dégénéré, nous devons tester le voisinage des sommets nouvellement activés dans la hiérachie. La reconstruction adaptative peut être guidée par l utilisateur dans le cas où le modèle comporte beaucoup d attributs. L utilisateur peut activer ou désactiver certains attributs durant le processus de visualisation et reconstruction du modèle (les attributs géométriques, c est-à-dire la position des sommets, ne peuvent être désactivés). La Figure 3.29 montre un exemple de modèle visualisé en fonction du point de vue et des détails de l analyse multirésolution. Le modèle initial numérisé à l Université de Stanford contient sommets et faces. La Figure 3.29(a) montre le modèle visualisé uniquement en fonction des critères dépendants du point de vue. Les Figures 3.29(b) et 3.29(c) montrent le modèle visualisé en fonction du point de vue et des détails géométriques. Ces figures montrent le résultat pour différentes valeurs du seuil (plus le seuil est élevé, plus la résolution est faible). Nous voyons que les caractéristiques géométriques importantes du modèle sont conservées (telles que les régions à fortes courbures) Débruitage Dans le cadre de l analyse multirésolution de maillages irréguliers, un coefficient de détail est représenté par un vecteur d. Ce vecteur est de dimension trois pour les attributs géométriques et de couleurs, mais il peut être de dimension quelconque suivant la nature de l attribut. Nous avons donc étendu la règle du soft thresholding [42, 43] pour un vecteur de dimension quelconque afin de pouvoir débruiter tous les attributs d un maillage [143]. La Figure 3.30 montre un modèle CAO bruité artificiellement par un bruit gaussien avec différentes valeurs de variance σ 2 n. Dans cette expérimentation, les modèles ont été débruités par quatre méthodes différentes : laplacien uniforme [99], flux de courbure [40], filtrage bilatéral [53], et notre méthode de soft thresholding. Les deux premières méthodes sont uniformes, et elles lissent intégralement le maillage. Les deux dernières méthodes sont anisotropes et tentent de conserver les caractéristiques importantes du maillage (e.g. arêtes vives).

76 54 Chapitre 3. Analyse Multirésolution (a) τ=0 ( sommets) (b) τ= ( sommets) (c) τ= (9.293 sommets) (d) τ= (point de vue) Figure 3.29 : Visualisation dépendante du point de vue et des détails géométriques du modèle "Buddha". Le modèle est visualisé avec un point de vue (d) avec différentes valeurs du seuil des détails (a)-(c).

77 3.6. Applications de l analyse multirésolution 55 (a) Modèle original (b) σ 2 n = 25 (c) σ 2 n = 50 (d) Laplacien uniforme (σ 2 n = 25) (e) Flux de courbure (σ 2 n = 25) (f) Filtrage bilatéral (σ 2 n = 25) (g) Soft thresholding (σ 2 n = 25) (h) Laplacien uniforme (σ 2 n = 50) (i) Flux de courbure (σ 2 n = 50) (j) Filtrage bilatéral (σ 2 n = 50) (k) Soft thresholding (σ 2 n = 50) Figure 3.30 : Débruitage avec différentes méthodes d un modèle CAO bruité artificiellement par un bruit gaussien.

78 56 Chapitre 3. Analyse Multirésolution 3.7 Conclusion Ce chapitre a résumé nos travaux sur la comparaison et l analyse multirésolution de maillages irréguliers multi-attributs. La mesure de déviation proposée permet d estimer les différences locales entre les attributs de deux maillages. Elle est à la base d une méthode de comparaison de maillages qui peut être utilisée à la fois pour mesurer l erreur locale (relative à une région donnée) ou globale. La simplification d un maillage étant essentiellement géométrique, la mesure de déviation géométrique est donc la plus importante. La mesure de déviation des autres attributs permet d estimer les modifications de l apparence d un maillage après simplification. Notre méthode autorise donc une comparaison complète entre deux modèles. Les deux schémas proposés pour l analyse multirésolution de maillages irréguliers avec attributs permettent l analyse des attributs à travers les échelles. Le premier schéma, basé sur le lifting scheme de Sweldens, réalise une analyse multirésolution interpolante. Le second schéma, basé sur l analyse de Guskov, réalise une analyse multirésolution approximante. Ces deux schémas gèrent tous les attributs associés aux sommets ce qui assure une analyse multirésolution du maillage dans son intégralité. Ils reposent sur la prédiction des sommets qui a pour objectif de capturer les détails perdus lors du passage d un niveau de résolution au suivant. La prédiction est basée sur une opération de relaxation de surface, qui modifie la position des sommets d un maillage pour minimiser une fonction d énergie dépendante de la courbure de la surface. Un opérateur de relaxation a été proposé et généralisé aux attributs d apparence. Nous avons montré l apport de nos schémas d analyse multirésolution de maillages à travers des applications incluant la simplification adaptative, la détection de bruit impulsionnel, la visualisation adaptative et le débruitage d attributs. Notre méthode de simplification adaptative génère toujours une erreur moyenne de simplification supérieure à celle obtenue par des algorithmes de simplification spécialisés : ceci est dû au souséchantillonnage effectué à l aide de l algorithme indépendant de simplification. L avantage de notre méthode de simplification adaptative est qu elle ne nécessite de calculer qu une seule fois la décomposition multirésolution du modèle. En d autres termes, la modification du seuil τ nécessite uniquement d appliquer le schéma de reconstruction montré précédemment, permettant ainsi des résultats très rapides (contrairement à une simplification classique nécessitant d appliquer l algorithme de simplification intégralement à chaque fois). Cette propriété permet ainsi des simplification adaptative et dynamique dédiées à la visualisation et aussi la préparation à des algorithmes de compression. Ces applications nous ont montré l importance des coefficients de détail de l analyse multirésolution et la nécessité de gérer les attributs d apparence.

79 Chapitre 4 Modélisation 3D par combinaison de surfaces Ce chapitre décrit nos travaux sur la jointure des quadriques par les cyclides de Dupin, ainsi que les opérations booléennes entre les surfaces de subdivision et entre les surfaces algébriques (supershapes). 4.1 Introduction L une des bases de la modélisation géométrique est la combinaison de plusieurs primitives pour obtenir la représentation de l objet considéré. On distingue deux approches pour faire cette combinaison : (i) le calcul des opérations booléennes, comme dans les arbres de Géométrie Constructive des Soldes (CSG), où un objet est généré par combinaison de plusieurs opérations booléennes (intersection, union, différence) entre des primitives élémentaires [102, 85] ; les primitives peuvent être des formes simples (cube, cylindre, tore, etc.) ou des formes plus complexes construites à l aide d un ensemble de primitives simples ou générées par des surfaces plus compliquées. (ii) les opérations de jointure de deux ou plusieurs surfaces disjointes afin de construire une seule surface (comme dans la modélisation d objets par leur surface de bord (B-Rep)) [85]. Nos avons étudié la combinaison de surfaces suivant trois angles différents et en utilisant divers types de surfacs : Combinaison de surfaces quadriques par jointures avec les cyclides de Dupin. Travail réalisé dans le cadre de la thèse de Lionel Garnier [70]. Combinaison de surfaces de subdivision par calculs d intersections et opérations booléennes. Travail réalisé dans le cadre de la thèse de Sandrine Lanquetin [103]. Combinaison de surfaces algébriques (notamment des supershapes) par les R-fonctions. Ce travail est en cours dans le cadre de la thèse de Yohan Fougerolle. La Figure 4.1 montre un exemple d opérations booléennes pouvant être effectuées sur des objets simples [106]. De façon générale, une opération booléenne se déroule en deux étapes : (ii) Calcul des courbes d intersection entre les surfaces des deux primitives impliquées dans l opération. Des points 57

80 58 Chapitre 4. Combinaison de surfaces Figure 4.1 : Exemple d opérations booléennes. d intersection sont trouvés, classés puis connectés pour approcher la courbe d intersection. (ii) Conservation des parties des primitives nécessaires à la construction de la surface de l objet résultant selon l opération booléenne envisagée. 4.2 Jointure des surfaces quadriques par les cyclides de Dupin Les Cyclides de Dupin (CdD) ont été présentées dans le chapitre 2, cette section donne un résumé de nos travaux sur l utilisation des CdD pour la jointure de deux surfaces de révolution et aussi pour la jointure d une surface de révolution avec un plan [70, chapitre 4]. Les jointures obtenues dans le cadre de ce travail sont toutes de type G 1 -continue. Plusieurs algorithmes ont été proposés pour calculer ces jointures. Comme il est possible de déterminer tous les paramètres d une CdD à partir de ses cercles principaux, le calcul d un carreau de CdD joignant deux surfaces peut être fait en 3 étapes principales : Calculer les cercles principaux de la CdD qui seront tangents aux deux surface à joindre. Déterminer les paramètres de la CdD à partir des cercles principaux. Délimiter la CdD pour ne garder que la partie utile à la jointure. D autres étapes secondaires (e.g. transformations, expression de toutes les primitives dans un même repère, etc.) sont parfois nécessaires afin faciliter les calculs. Les algorithmes de jointure proposés utilisent deux démarches différentes : Une démarche algébrique, où les cercles principaux de la surface de jointure (un carreau de CdD) sont calculés à partir des équations des deux surfaces à joindre. Un algorithme pour determiner la jointure cone-sphère à été proposé et testé. Une démarche géométrique, où les cercles principaux de la CdD de jointure sont modélisées par des courbes de Bézier rationnelles quadriques. Plusieurs algorithmes basés sur ce principe ont été proposés pour les jointures entre deux surfaces de révolution et les jointure entre une surface de révolution et un plan.

81 4.2. Jointure des surfaces quadriques par les cyclides de Dupin 59 Dans cette deuxième démarche, nous devons construire deux arcs de cercles (qui sont les arcs de cercles principaux de la CdD) tangents aux primitives à joindre et pour chaque arc de cercle nous n avons donc besoin que de trois points : les deux extrémités et un point qui va déterminer les deux tangentes en ces points. Nous avons donc utilisé les courbes de Bézier rationnelles quadriques pour modéliser ces arcs de cercles et avons proposé deux types de jointures : surfaces de révolution-plan, quadriques de révolution-cylindres de révolution. Ainsi, pour effectuer une jointure entre deux quadriques, il suffit alors d effectuer deux jointures quadrique-cylindre. Ce cylindre est commun et peut être réduit à un cercle. Dans ce cas nous obtenons une jointure avec deux CdD. Les sections suivantes présentent quelques exemples d algorithmes avec les résultats obtenus. La dernière section montre comment utiliser ces différentes jointures pour modéliser des formes complètes Détermination des bornes de la CdD utile lors de jointures Lors d une opération de jointure, en utilisant une CdD, nous devons souvent ne garder qu une partie de la CdD, appelée partie utile. La Figure 4.2 illustre ce problème lors d une jointure entre un cylindre de Figure 4.2 : Présentation du problème de la détermination de la partie utile de la CdD lors d une opération de jointure (entre un plan et un cylindre de révolution). révolution et un plan. En fait, toute la partie grillagée de la CdD est inutile et les bornes de visualisation sont [0; 2π] [ 0; π 2]. La partie utile de la CdD est alors délimitée par deux cercles, communs à la CdD et à chacune des deux surfaces à joindre. Lorsque l on utilise des surfaces autres qu un plan ou un cylindre, les bornes de visualisation de la CdD ne sont pas connues d avance et nous devons donc les déterminer à partir d un point sur chacun des cercles précités. Le théorème 2 permet de déterminer la valeur θ de la CdD lorsque l on connaît un point M 1 de celle-ci et la valeur ψ 0 définissant la ligne de courbure à laquelle appartient ce point. Théorème 2 : Détermination des bornes d une CdD avec ψ 0 constant. Soit M 1 (X 1 ; Y 1 ; Z 1 ) un point de la CdD tel que b 0, c est-à-dire a c. Nous cherchons θ tel que : µ (c a cos θ cos ψ 0 ) + b 2 cos θ = X 1 a c cos θ cos ψ 0 b sin θ (a µ cos ψ 0 ) = Y 1 (4.1) a c cos θ cos ψ 0 b sin ψ 0 (c cos θ µ) = Z 1 a c cos θ cos ψ 0

82 60 Chapitre 4. Combinaison de surfaces 1. Premier cas : X 1 a µc = 0 (a) Premier sous-cas : a µ cos ψ 0 = 0 Le point M 1 appartient à un cercle singulier d une CdDI donc on ne peut pas déterminer θ. (b) Second sous-cas : a µ cos ψ 0 0 si b (a µ cos ψ 0 ) Y 1 a > 0 on a θ π 2 [2π] sinon on a θ π 2 [2π]. 2. Second cas : X 1 a µc 0 Si b (a µ cos ψ 0 ) Y 1 a > 0 on a θ π 2 [2π] sinon on a θ π 2 [2π]. (a) Premier sous-cas : a µ cos ψ 0 = 0 Le point M 1 appartient à un cercle singulier d une CdDI donc on ne peut pas déterminer θ. (b) Second sous-cas : a µ cos ψ 0 0 θ est solution de : cos θ = sin θ = ax 1 µc b 2 + (X 1 c µa) cos ψ 0 by 1 b 2 + (X 1 c µa) cos ψ 0 De façon analogue, nous pouvons déterminer la valeur ψ de la CdD lorsque l on connaît un point M 1 de celle-ci et la valeur θ 0 définissant la ligne de courbure à laquelle appartient ce point [70, chapitre 3] Jointures surfaces de révolution-plans Ce paragraphe donne l algorithme de calcul d une jointure G 1 entre une surface de révolution algébrique ou non algébrique et un plan et montre des exemples de résultats obtenus pour la jointure d un plan avec des quadriques de révolution, des tores et même deux surfaces non algébriques : la caténoïde et la pseudosphère. Deux types de jointures sont possibles : Construction de type poteau : Les cercles principaux de la CdD sont calculés à l extérieur de la surface de révolution. Construction de type récipient : Les cercles principaux de la CdD sont calculés à l l intérieur de la surface de révolution. La Figure 4.3 permet d illustrer cet algorithme en effectuant une coupe par le plan de symétrie P y. La Figure 4.3(a) montre la construction de type poteau, alors que la Figure 4.3(b) montre la construction de type récipient, et la surface de révolution choisie pour l illustration est un cône de révolution C. Les étapes de ce calcul sont données par l algorithme 3. Seules les étapes 1 et 5 de cet algorithme demandent une intervention humaine. La Figure 4.4 montre quelques exemples de résultats. Les jointures montrés par les Figures 4.4(a), 4.4(b), 4.4(d) et 4.4(g) sont de type poteau. Ceux montrés par les Figures 4.4(c), 4.4(e) et 4.4(f) sont de type récipient.

83 4.2. Jointure des surfaces quadriques par les cyclides de Dupin 61 Algorithme 3 Construction d une CdD effectuant une jointure G 1 entre une surface de révolution et un plan. Données : Une surface de révolution S d axe et un plan P. Le plan est en dessous de la surface. Sy est la section de la surface S par le plan de construction P y. Début 1. Choix de B 1 sur S. 2. Détermination de B 2, symétrique de B 1 par rapport à. 3. Détermination des tangentes respectives T B1 et T B2 à Sy en B 1 et B Détermination de C 1 (resp. C 2 ), intersection du plan P et de T B1 (resp. T B2 ). 5. Choix de A 1 dans le plan P tel que A 1 C 1 = C 1 B Détermination de A 2 dans le plan P tel que A 2 C 2 = C 2 B 2 par la proposition : Si A 1 [C 1 C 2 ) alors A 2 [C 2 C 1 ) sinon A 2 [C 2 C 1 ). 7. Détermination des centres O 1 (resp. O 2 ) et des rayons ρ 1 (resp. ρ 2 ) modélisés par une RQBC {(B 1 ; C 1 ; A 1 )} (resp. RQBC {(B 2 ; C 2 ; A 2 )}), intersection de la droite (B 1 B 2 ) et de la médiatrice du segment [A 1 B 1 ] (resp. [A 2 B 2 ]). 8. Détermination des isométries (translation, rotation, symétrie par rapport à un plan) pour exprimer la CdD dans le repère de la scène. 9. Détermination ψ 0 tel que {Γ (θ, ψ 0 ), θ [0; 2π]} soit le cercle d intersection entre la CdD et la surface de révolution. { Γ ( θ, π 2), θ [0; 2π] } est le cercle d intersection entre la CdD et le plan. Fin Sortie : La partie utile d une CdD effectuant la jointure G 1 entre une surface de révolution et un plan. z C C 1 µ+ c =ρ O 1 01 O d= a d= a 01 I 1 01 B 1 B 2 01 O 2 01 I 2 γ γ A C C 2 A C2 µ c =ρ 2 01 x B µ+ c =ρ γ I O C A 1 1 d=a C 1 C O z d=a 1 µ c =ρ O 2 I A C 2 C 01 B 01 2 γ 2 x (a) (b) Figure 4.3 : Coupe de la construction par le plan P y de la jointure entre un plan et une surface de révolution par une CdD. (a) construction de type poteau. (b) construction de type récipient.

84 62 Chapitre 4. Combinaison de surfaces (a) (b) (c) (d) (e) (f) (g) Figure 4.4 : Exemples de jointure surfaces de révolution plan. (a) Ellipsoïde de révolution. (b) Cone de révolution, la CdD obtenue est une CdD en anneau. (c) Hyperboloïde de révolution à une nappe, CdD à croissant interne. (d) Tore ; la jointure est faite sur le trou du tore. (e) Caténoïde ; CdD à croissant externe. (f) Pseudosphère. (g) Cylindre Jointure entre quadriques de révolution La jointure des quatre quadriques de révolution usuelles (le cône, la sphère, le cylindre et l hyperboloïde) entre elles nécessite le développement de dix constructions : quatre pour le cône (cône-{cône, sphère, cylindre, hyperboloïde}), trois pour la sphère (sphère-{sphère, cylindre, hyperboloïde}), deux pour le cylindre (cylindre-{cylindre, hyperboloïde}), une pour l hyperboloïde (hyperboloïde-hyperboloïde). Pour réduire le nombre de cas de figures, nous avons décomposé ce problème en deux sous problèmes de jointure entre quadriques et cylindres. La surface de jointure résultante se compose dans ce cas de trois carreaux différents : deux CdD et un cylindre. Le nombre de constructions qu il faut développer est ainsi réduit à quatre constructions cylindre-{cône, sphère, cylindre, hyperboloïde}. Le choix s est porté sur le cylindre car sa jointure avec une CdD ne pose pas trop de problème et l on peut réduire ce cylindre à un cercle (cercle d intersection des deux CdD) [59]. Nous avons illustré ce principe à travers le calcul de la jointure G 1 entre un cône et une sphère qui est ainsi considérée comme l union de deux jointures : sphère-cercle (ou cylindre) et cône-cercle (ou cylindre), Figure 4.5. a. Jointure sphère-cylindre de révolution Nous devons commencer par trouver deux cercles tangents à une génératrice du cylindre et tangent au grand cercle de la sphère. Une méthode de calcul des ces cercles est détaillée dans [70, chapitre 3]. La détermination de la CdD de jointure se fera par la suite dans le plan P y, déterminé par deux

85 4.2. Jointure des surfaces quadriques par les cyclides de Dupin 63 Figure 4.5 : Jointure entre un cône et une sphère. (a) par deux CdD. (b) par deux CdD et un cylindre de révolution. génératrices, symétriques par rapport à l axe du cylindre, et le centre Ω du cercle C, une section de la construction est montrée dans la Figure 4.6 et les étapes de calcul sont énumérées dans l algorithme 4. G 2 2 B 2 C 2 F 2 A 2 G 1 r B C Ω 2 F A 2 A 1 r Ω 1 B 1 C 1 F 1 G 2 A 1 G 1 1 B 1 C 1 F 1 (a) (b) Figure 4.6 : Coupe de la construction d une jointure G 1 entre un cylindre et une sphère. L étape 5 de l algorithme 4 détermine le type de la construction : G 1 P 1 correspond à la Figure 4.6(a), G 1 P 2 correspond à la Figure 4.6(b). Seules deux interventions humaines sont nécessaires : choix du point B 1 sur une des génératrices du cylindre, étape 2 ; choix du point G 1, étape 5. La Figure 4.7 montre quelques exemples de résultats obtenus. (a) (b) (c) Figure 4.7 : Trois exemples d une CdD effectuant une jointure G 1 entre une sphère et un cylindre de révolution, construction de la Figure 4.6(a). (a) et (b) CdD en anneau. (c) CdD à croissant interne.

86 64 Chapitre 4. Combinaison de surfaces Algorithme 4 Une CdD effectuant une jointure G 1 entre une sphère et un cylindre de révolution. Données : Une sphère de centre Ω, de rayon r et un cylindre de révolution d axe. Précondition : il existe deux génératrices du cylindre 1 et 2, symétriques par rapport à, telles que Ω appartienne au plan P y engendré par 1 et 2. Notation : P 1 (resp. P 2 ) est le demi-plan de frontière contenant B 1 (resp. B 2 ). Début 1. Déterminer C, grand cercle (de la sphère) de centre Ω et de rayon r dans le plan P y. 2. Choisir B 1 sur Déterminer B 2 sur 2, symétrique de B 1 par rapport à. 4. Dans P y, la droite détermine deux demi-plans, P 1 et P 2 tels que 1 P 1 et 2 P Choisir le point G 1, intersection de C et de la perpendiculaire à 1 passant par Ω. 6. Déterminer G 2, symétrique de G 1 par rapport à Ω. 7. Pour i [[1; 2]], construire F i, puis A i et C i. 8. Pour i [[1; 2]], déterminer le centre O i et le rayon ρ i du cercle principal C i dont un arc de cercle est déterminé par RQBC {(B i ; C i ; A i ), f w (B i ; C i ; A i )}. 9. Déterminer les paramètres de la CdD. 10. Si G i P 1, ψ 0 = 0 sinon ψ 0 = π. 11. Déterminer la borne ψ 1 de la CdD de telle façon que le cercle de courbure de la CdD défini par θ Γ (θ; ψ 1 ) soit un cercle de la sphère. Fin Résultat : Une CdD effectuant une jointure G 1 entre une sphère et un cylindre de révolution. L espace paramétrique de visualisation de la CdD est [0; 2π] [ ψ 0 ; ψ 1 ]. b. Jointure cône-cylindre Pour construire la CdD qui effectue la jointure entre un cylindre de révolution d axe, de rayon R, et un cône de révolution d axe, on se positionne dans la configurations suivante : Le plan de construction est P y et on se donne deux droites parallèles 1 et 2 qui sont deux génératrices du cylindre et deux droites sécantes 1 et 2 qui sont deux génératrices du cône, Figure 4.8, toutes coplanaires et situées dans le plan P y : y = 0. Pour obtenir une généralisation du problème, les droites 1 et 2 seraient deux tangentes à la quadrique. Une condition nécessaire pour effectuer une jointure entre un cône de révolution et un cylindre de révolution est que leurs axes soient coplanaires ce qui est équivalent à dire que et sont sécantes. Deux méthodes différentes ont été proposées pour déterminer les courbes de Bézier représentant les cercles tangents aux génératrices du cone et du cylindre [70, chapitre 3]. Une section de la construction est représentée par la Figure 4.8. Les étapes du calcul de la CdD de jointure sont données par l algorithme 5. Plus de détails concernant ce calcul peuvent être trouvé dans [59]. La Figure 4.9 montre trois exemples d objets (un pavillon de phonographe, un chapeau d amazone et un filet qui transporte un cône) modélisés à l aide des jointures cône-cylindre avec notre algorithme.

87 4.2. Jointure des surfaces quadriques par les cyclides de Dupin 65 Figure 4.8 : Schéma de construction de deux courbes rationnelles quadratiques de Bézier modélisant des arcs de cercle tangents aux génératrices d un cône de révolution et d un cylindre de révolution. Algorithme 5 Une CdD effectuant une jointure G 1 entre un cône de révolution et un cylindre de révolution. Données : Un cône de sommet S d axe et un cylindre de révolution d axe. Précondition : (i) il existe deux génératrices du cylindre 1 et 2, symétriques par rapport à, deux génératrices du cône 1 et 2, symétriques par rapport à, telles que ces quatre génératrices soient coplanaires. (ii) Il existe une bissectrice 3 de l angle les droites,, 3 et 4 soient sécantes en un point Ω. Notation : s D est la réflexion d axe D. Début ( ) 2 ; 1 et une bissectrice 4 de l angle 1. Déterminer les points C 1 et C 2 tels que {C 1 } = 1, 1 et {C 2} = 2, Choisir A 1 appartenant à, 1 et différent de C Déterminer B 1 = s 4 (A 1 ). 4. Déterminer B 2 = s (B 1 ). 5. Déterminer A 2 = s 3 (B 2 ). ( ) 2 ; 1 telles que 6. Pour i [[1; 2]], déterminer le centre O i et le rayon ρ i du cercle principal C i dont un arc de cercle est déterminé par RQBC {(B i ; C i ; A i ), f w (B i ; C i ; A i )}. 7. Déterminer les paramètres de la CdD. 8. Si A 1 est à l intérieur du cylindre alors ψ 0 = π sinon ψ 0 = Déterminer la borne ψ 1 de la CdD de telle façon que le cercle de courbure de la CdD défini par θ Γ (θ; ψ 1 ) soit un cercle du cône. Fin Résultat : Une CdD effectuant une jointure G 1 entre un cône de révolution et un cylindre de révolution. L espace paramétrique de visualisation de la CdD est [0; 2π] [ ψ 0 ; ψ 1 ]. c. Jointure cône-sphère Nous pouvons maintenant combiner les algorithmes 4 et 5 des paragraphes précédents pour effectuer une jointure G 1 entre un cône de révolution et une sphère par deux CdD. Nous pouvons choisir

88 66 Chapitre 4. Combinaison de surfaces (a) (b) (c) Figure 4.9 : Jointure G 1 entre un cône de révolution et un cylindre de révolution par une CdD. (a) un pavillon de phonographe. (b) un chapeau d amazone. (c) un filet qui transporte un cône. d intercaler ou non un cylindre de révolution entre les deux CdD. Quelques exemples montrant les résultats de cette combinaison sont donnés dans les Figures 4.10 et On constate sur ces figures qu il est possible d insérer un cylindre entre les CdD pour faire varier le résultat et ainsi obtenir des constructions différentes à partir d un même cône et d une même sphère. (a) (b) (c) (d) Figure 4.10 : Exemples de jointures G 1 entre un cône de révolution et une sphère par deux CdD. La Figure 4.11 montre une autre flexibilité de cette méthode de jointure : nous pouvons utiliser une CdD en anneau pour le raccord avec le cône et une CdD à croissant interne pour le raccord avec la sphère Exemples d objets modélisés par mélange CdD/quadriques Une lampe de chevet La Figure 4.12 montre une lampe de chevet constituée d un prisme pour le socle, d un cylindre de révolution pour la douille, d un cône de révolution pour l abat-jour, d une CdD pour la jointure G 1 prisme-cylindre, de trois morceaux d une CdD pour la jointure G 1 entre le cône et la CdD précédente. La Figure 4.12(a) ne montre que deux des trois supports de l abat-jour et la moitié de l abat-jour.

89 4.2. Jointure des surfaces quadriques par les cyclides de Dupin 67 (a) (b) (c) (d) Figure 4.11 : Exemples de jointure G 1 entre un cône de révolution et une sphère par deux CdD et un cylindre. (a) et (b) deux CdD en anneau. (c) et (d) une CdD en anneau (cône-cylindre), une CdD à croissant interne (sphère-cylindre). (a) (b) Figure 4.12 : Une lampe de chevet. Une antenne satellite L antenne satellite, Figure 4.13, est un assemblage de trois parties : l antenne physique, le système de décodage, la manette de réglage pour recevoir les ondes du satellite. L antenne physique est constituée d un paraboloïde de révolution S 1, d un socle S 2 et d une CdD S 3 pour effectuer une jointure G 1 entre S 1 et S 2. Le système de décodage est constitué d un ellipsoïde de révolution S 4 (tête de lecture), d un cylindre de révolution S 5 (tige qui soutient la tête de lecture) et d une CdD S 6 pour effectuer une jointure G 1 entre S 4 et S 5. La jointure entre l antenne physique et le système de décodage est de type G 1 et est réalisée par la CdD S 7. La manette de réglage est constituée d une sphère S 8 (bouton), d un cylindre de révolution S 9 (tige) et d une CdD S 10 pour effectuer une jointure G 1 entre S 8 et S 9. Le tableau 4.1 donne les détails des surfaces utilisées pour modéliser une antenne satellite. Concernant les CdD, nous donnons les trois paramètres a, µ et c. Les quatre nappes paramétrées des cyclides sont

90 68 Chapitre 4. Combinaison de surfaces (a) (b) Figure 4.13 : Antenne parabolique portable pour réception satellite. Surfaces Nom Paramètres Localisation Parallélépipède S 2 m = 0, 35, p = 1, 5 socle Paraboloïde S 1 a = 1, p = 2 antenne CdD S 3 (a; µ; c) (1, 05; 0, 83; 0, 182) antenne-socle Ellipsoïde S 4 a = 0, 35, c = 0, 0875 tête de réception Cylindre S 5 a = 0, 1, h = 0, tige de la tête CdD S 6 (a; µ; c) (0, 29; 0, 2; 0) tige-tête CdD S 7 (a; µ; c) (0, 23; 0, 13; 0) antenne-tige Sphère S 8 a = c = 0, 125 Bouton de la manette Cylindre S 9 a = 0, 05, h = 0, 29 tige de la manette CdD S 10 (a; µ; c) (1, 26; 1, 21; 0) tige manette-bouton Table 4.1 : Détails de l antenne satellite définies sur [0; 2π] I ψ où I ψ = [ 1, 2; π 2] pour S 3, I ψ = [ 1, 33; 0] pour S 6, I ψ = [0; 1, 7] pour S 7, I ψ = [0; 0, 34] pour S 10. Hugo, la mascotte d Eurographics 2004 Nous finissons ce chapitre en montrant comment utiliser des quadriques de révolution (cône, ellipsoïde, cylindre) et des CdD pour modéliser un objet très compliqué. Nous avons choisi de recréer un robot en nous inspirant de la mascotte d Eurographics 2004 : Hugo, réalisé par Laurence Boissieux c INRIA 2003, Figure Nous n utilisons aucun maillage mais seulement les primitives précitées et des transformations géométriques. Les quadriques servent à modéliser les différentes parties du robot et les CdD permettent d effectuer des raccordements G 1 entre les différentes quadriques. Primitives utilisées : Pour modéliser tout le robot, nous utilisons sept sphères (pompon, poignet, coude, clavicule, hanche, genou et fesses), un hémisphère (pied), sept ellipsoïdes de révolution (oreille, oeil, extrémités des cinq doigts), quatorze cylindres (deux pour la tige du bonnet, un pour la tête, le cou, la tige de l oreille, le bras, l avant-bras, la cuisse, le mollet, les cinq bases des doigts), cinq cônes

91 4.2. Jointure des surfaces quadriques par les cyclides de Dupin 69 Figure 4.14 : Le modèle d Eurographics 2004 : Hugo. (le crâne, le menton, les épaules, le corps, le haut du bassin), dix-neuf CdD en anneau pour effectuer les jointures G 1, deux CdD à croissant externe pour la bouche, une CdD à croissant interne pour le nez. Nous utilisons donc quatre-vingt-sept primitives. Les seuls raccords de type G 0 sont :cylindre de la tête - { cylindre de l oreille, ellipsoïde de révolution de l oeil, CdD à croissant interne du nez, CdD à croissant externe de la bouche}, sphère du poignet - cylindres des cinq doigts, sphère de l épaule - corps, sphères de la hanche - bas du dos (sphère du coccyx, cône du bassin, CdD de jointure entre les cônes du bassin et du corps). Toutes les autres jointures sont de type G 1. Hormis le premier avantage qui est l obtention de raccordement de type G 1 en utilisant des concepts simples de géométrie plane sans se soucier des problèmes de paramétrisation, de correspondance entre plans tangents, le second gros avantage de l utilisation des primitives pour modéliser un tel objet est le peu de calcul à effectuer pour animer l objet. Seul le calcul des transformations géométriques est à effectuer, les primitives ne changeant pas. Par exemple, lorsque le robot lève le bras droit et baisse le bras gauche pour obtenir la figure de droite, nous ne changeons que deux valeurs qui sont l angle des deux rotations épaule - bras. Le principe de construction est le même pour tout le robot, nous ne détaillons donc que la construction de la tête. Détails de la construction de la tête d Hugo : Certaines jointures sont de type G 0 et d autres sont de type G 1. Les jointures de type G 0 sont : cylindre de l oreille - cylindre de la tête ; ellipsoïdes des yeux - cylindre de la tête ; CdD à croissant externe de la bouche - cylindre de la tête ; CdD à croissant interne - cylindre de la tête. Toutes les autres jointures sont de type G 1 et sont obtenues en utilisant des courbes de Bézier, Figure Tous les axes des cylindres et des cônes sont dans le même plan P y auquel appartient également le centre de la sphère du pompon. Le schéma de la Figure 4.16 est fait dans ce plan. Les segments [A 0 A 1 ] et [B 0 B 1 ] sont sur deux génératrices du cylindre du cou. Les segments [A 3 A 4 ] et [B 3 B 4 ] sont sur deux génératrices du cône du menton. A 2 (resp. B 2 ) est l intersection entre les génératrices (A 0 A 1 ) (resp. (B 0 B 1 )) du cylindre et (A 3 A 4 ) (resp. (B 3 B 4 )) du cône

92 70 Chapitre 4. Combinaison de surfaces (a) (b) Figure 4.15 : Le modèle d Eurographics 2004 modélisé par des surfaces de révolution : cylindres, cônes, sphères, ellipsoïdes et CdD. tels que A 3 A 2 = A 2 A 1 et B 3 B 2 = B 2 B 1. En utilisant les courbes de Bézier, on construit un arc de cercle de centre O 0 (resp. I 0 ) d extrémités A 1 et A 3 (resp. B 1 et B 3 ) tel que les tangentes en ces points soient les génératrices du cylindre et du cône. A partir de ces deux arcs de cercles, on détermine les cercles principaux des CdD, puis les paramètres de cette CdD et on obtient ainsi une jointure G 1 continue entre un cylindre et un cône par une seule primitive : une CdD. On réitère le principe tout le long de la construction. Pour la jointure entre les deux cylindres du bonnet, points A 13, A 14, A 15 et B 13, B 14, B 15, on utilise le plan P z de symétrie de la CdD pour déterminer les paramètres de celles-ci. En résumé, pour modéliser la tête de Hugo, nous avons besoin de deux ellipsoïdes (un pour les oreilles et un pour les yeux), cinq cylindres (cou, tête, tiges du bonnet et tige des oreilles), une sphère (le pompon), deux cônes (crâne et menton), deux CdD à croissant externe pour la bouche, une CdD à croissant interne pour le nez, sept CdD en anneau pour effectuer les jointures de type G : pompon - tige supérieure du bonnet ; les deux tiges du bonnet ; tige inférieure du bonnet - crâne ; crâne - tête ; tête - menton ; menton - cou et enfin oreille - tige de l oreille. Comparaisons des volumes mémoires des deux robots : Le tableau 4.2 récapitule les primitives utilisées pour modéliser Hugo. Dans notre robot, le nombre total de nombres flottants est : = 659

93 4.3. Combinaison de surfaces de subdivision par intersection 71 (a) (b) (c) Figure 4.16 : Tête de Hugo modélisée par des surfaces de révolution : cylindres, cônes, sphères ou ellipsoïdes et CdD. (a) coupe de la construction du crâne au bonnet. (b) coupe de la construction du cou au crâne. (c) rendu 3D. tandis que le modèle d eurographics utilise triangles, ce qui nécessite environ nombres flottants. Primitive Nombre Taille Où pompon, 2 poignets, 2 coudes, Sphère clavicules, 2 hanches, 2 genoux, 2 pieds, fesses Cône 5 5 crâne, menton, corps, bassin, épaule Ellipsoïde oreilles, 2 yeux, 10 phalanges cou, tête, 2 tiges du bonnet, Cylindre tiges des oreilles, 10 doigts, 2 bras, 2 avant-bras, 2 cuisses, 2 mollets, CdD lèvres (CdD à croissant externe), 1 nez (CdD à croissant interne), 27 jointures (CdD en anneau) Table 4.2 : Primitives utilisées (CdD et quadriques de révolution) pour modéliser Hugo. 4.3 Combinaison de surfaces de subdivision par intersection En modélisation géométrique, le calcul des intersections de surfaces est un problème récurrent et fondamental, largement étudié pour les surfaces algébriques et paramétriques [19, 130, 1]. Selon les algorithmes impliqués dans les différentes tâches fondamentales, les méthodes de calcul d intersections peuvent être classées parmi les cinq catégories principales suivantes. (i) Les méthodes analytiques [25, 130], lorsqu une des surface est exprimée sous forme implicite et l autre sous forme paramétrique. (ii) Les méthodes de discrétisation réduisent le problème d intersection surface/surface à un ensemble de problèmes d intersection courbe/surface [10]. (iii) Les méthodes de suivi nécessitent de connaître au moins un point de la courbe d intersection, appelé point de départ, pour générer une suite de points sur la courbe d intersection en exploitant les propriétés géométriques locales des surfaces en intersection [6]. (iv) Les méthodes de subdivision utilisent le raffinement des surfaces pour trouver une approximation polygonale des courbes d intersection. La fiabilité de ces méthodes dépend du niveau

94 72 Chapitre 4. Combinaison de surfaces de subdivision et des différents outils utilisés pour contrôler l arbre de subdivision. (v) Les méthodes mixtes combinent plusieurs des méthodes présentées ci-dessus. C est dans le cadre des méthodes de subdivision que nous avons effectué nos développements [103]. Les surfaces de subdivision sont définies par un maillage basse résolution ou grossier et un ensemble de règle de raffinement [23, 44, 110, 100, 185]. Ces règles sont composées de règles géométriques déterminant les positions des nouveaux points de contrôle à partir des positions des anciens et de règles topologiques qui décrivent la procédure de raffinement de la connectivité du polyèdre de contrôle et de ce fait les propriétés de la surface. L application de ces règles génère une suite de maillages de résolution croissante M 1,..., M i de points de contrôle qui converge vers une surface lisse M appelée surface limite. Cette surface limite (e.g. B-spline ou Box-spline), est topologiquement similaire au réseau de contrôle initial. Pour réaliser des opérations booléennes et combiner des objets modélisés par des surfaces de subdivision, nous avons commencé par étudier les intersections entre ces surfaces [106, 104, 105]. Pour des raisons pratiques nous nous sommes limités aux surfaces de subdivision issues de la subdivision de Loop [110], mais les algorithmes que nous avons proposés s adaptent facilement aux autres surfaces de subdivisons. La subdivision de Loop s appliquant uniquement sur des maillages triangulaires, Elle permet de travailler sur des faces triangulaires, et par conséquent planes. (a) (b) (c) (d) Figure 4.17 : Courbes d intersections à des niveaux de subdivision successifs. Nous avons étudié et comparé trois algorithmes de calcul d intersection. Comme une surface de subdivision est représentée par un maillage, le calcul des courbes polygonales d intersection se fait naturellement en calculant les intersections entre chaque face d une des surfaces et toutes les faces de l autre. Au niveau initial, cette méthode, dite naïve, est incontournable et la complexité, qui est en O (n m) avec n et m respectivement le nombre de faces des deux surfaces, n est généralement pas très élevée. La complexité est multipliée par un facteur 16 à chaque itération, les calculs sont donc vite très lourds, Figure Pour les réduire, il est intéressant d utiliser les propriétés des surfaces de subdivision. Le second algorithme se base sur le voisinage des faces en intersection. Le troisième algorithme utilise la notion de graphe biparti. Pour appliquer les deux derniers algorithmes, il est nécessaire de connaître les courbes d intersection au premier niveau. Elles seront donc calculées à l aide de l algorithme naïf. La principale différence entre l algorithme de voisinage et celui de graphe repose sur les ensembles de faces considérés. Le premier considère un ensemble de faces par objet constitué des faces en intersection et de leurs voisines alors que le second fait intervenir plusieurs sous ensembles de l ensemble précédent par l intermédiaire d un graphe biparti.

95 4.3. Combinaison de surfaces de subdivision par intersection Algorithme naïf Le calcul des courbes d intersection s effectue en plusieurs étapes. Tout d abord, les faces des deux surfaces sont répertoriées en deux catégories : les faces en intersection et les autres. Seuls les couples de faces en intersection sont considérés dans la suite de l algorithme. L intersection face/face est calculée pour obtenir les points d intersection qui seront ensuite triés et reliés par des segments de manière à obtenir des approximations linéaires par morceaux des courbes d intersection. L étape de détection des intersections entre deux faces est une étape préliminaire qui consiste à utiliser les tests de collision des boites englobantes des faces des deux maillages pour faire un premier filtrage qui éliminera les faces clairement disjointes de toute investigation future. Ensuite, les intersections de toutes les faces restantes vont être calculées. La complexité de l algorithme devient O (m 1 n 1 ) avec m 1 et n 1 respectivement inférieurs aux nombre de faces m et n des surfaces S 1 et S 2. Plusieurs méthodes peuvent être envisagées pour calculer les points d intersection entre deux faces. Dans [125], O Brien et Manocha calculent l intersection l intersection des plans support des faces puis prennent la restriction aux faces. Ils sont donc obligés de distinguer deux cas : le cas où les deux points d intersection appartiennent aux segments d une même face et le cas où ils sont portés par des segments de faces différentes, Figure (a) (b) Figure 4.18 : Deux cas d intersection face/face. Une autre solution consiste à calculer les intersections de tous les segments d une face avec l autre face. L intersection droite plan est tout d abord calculée. L équation de la droite étant écrite sous forme barycentrique, la restriction au segment s effectue en vérifiant que la valeur du paramètre est dans l intervalle [0, 1]. Ensuite il ne reste plus qu à vérifier l appartenance du point d intersection à la face, ce qui se fait aisément en comparant l aire de la face avec la somme des aires des triangles formés par le point d intersection et les sommets de la face. C est cette seconde méthode que nous avons choisi d implanter. La dernière étape est le tri des points d intersection et l évaluation de la courbe polygonale d intersection. Le tri peut être facilement réalisé grâce à la structure du point d intersection qui stocke les coordonnées du point, les faces de chaque objet à l origine de ce point et l arête qui porte ce point. Ainsi les extrémités des segments d intersection correspondent aux points d intersection contenant deux faces identiques. Ensuite, les segments sont reliés entre eux en utilisant la structure d arêtesailées.

96 74 Chapitre 4. Combinaison de surfaces Algorithme de voisinage La complexité algorithmique de l algorithme de base croit très rapidement et les calculs deviennent vite très lourds (ils sont multipliés par 16 à chaque itération). D après les propriétés locales des surfaces de subdivision, il parait naturel d utiliser le voisinage des faces en intersection à un niveau de subdivision donné pour déterminer les faces en intersection au niveau suivant. Dans cette section, un algorithme reposant sur le voisinage est présenté afin de réduire cette complexité. Le calcul de l intersection au niveau initial pour cet algorithme se fait à l aide de l algorithme de base. Les faces en intersection des deux surfaces sont donc connues par la suite. La Figure 4.20 représente la courbe d intersection et les faces en intersection au niveau initial. Figure 4.19 : 1-voisinage V 1 (F) et 2-voisinage V 2 (F), ainsi que leurs subdivisions W 1 (F) et W 2 (F). La Figure 4.19 illustre les termes de 1-voisinage et de 2-voisinage qui seront utilisés dans cet algorithme. Le 1-voisinage V 1 (F) d une face F contient cette face et toutes les faces voisines de cette face par au moins un sommet V 1 (F) = {F} {F i / s S (F) S (F i )} où S (F) est l ensemble des sommets incidents à la face F. Le 2-voisinage V 2 (F) est en fait le 1-voisinage de V 1 (F) : V 2 (F) = {V 1 (F i ) /F i V 1 (F)}. L ensemble des faces obtenues par une subdivision du 1-voisinage de F est noté W 2 (F) : W 2 (F) = {F i /F i Loop (V 1 (F))}. W 1 (F) est un sous-ensemble de faces de W 2 (F) restreint aux faces ayant un sommet commun avec l une des sous faces résultant de la subdivision de F, W 1 (F) = {F i /F i Loop (V 1 (F)) & s S (Loop (F)) S (F i )} où S (Loop (F)) est l ensemble des sommets obtenus par la subdivision de F. Figure 4.20 : Courbe d intersection au premier niveau avec les faces en intersection. Soit I i l ensemble des faces participant à l intersection de la surface S i. La première étape de cet algorithme consiste à récupérer le 1-voisinage V 1 (I i ). Rappelons que ce 1-voisinage contient l ensemble

97 4.3. Combinaison de surfaces de subdivision par intersection 75 I i ainsi que toutes les faces voisines aux faces de I i par un sommet. Les ensembles V 1 (I 1 ) et V 1 (I 2 ) sont représentés par la Figure 4.21(a). Puis les ensembles V 1 (I i ) sont subdivisés en appliquant le principe de Loop. Lors de cette étape de raffinement, le 1-voisinage des ensembles V 1 (I i ) est conservé. En effet, pour obtenir une subdivision correcte du 1-voisinage en entier, le 2-voisinage serait nécessaire. Sur la Figure 4.21(a), les faces obtenues par subdivision de I i sont représentées en foncé et celles du 1-voisinage en clair sur la Figure 4.21(b). (a) (b) Figure 4.21 : Faces en intersection. (a) 1-Voisinage V 1 (I i ). (b) 1-Voisinage de la subdivision W 1 (I i ). On conserve également le 2-voisinage V 2 (I i ) de I i afin de calculer correctement le 2-voisinage W 2 (I i ) de l ensemble des sous faces des faces I i obtenu par la subdivision de Loop. En effet, dans certains cas, il est nécessaire d avoir les faces de W 2 (I i ) en mémoire pour récupérer le voisinage en entier au niveau suivant. Ensuite, l algorithme de base est à nouveau utilisé pour tester les intersections entre W 1 (I 1 ) et W 1 (I 2 ). Les courbes d intersection obtenues au niveau suivant peuvent être tracées (Figure 4.22). (a) (b) Figure 4.22 : Intersection au niveau 1. (a) la courbe obtenue. (b) les faces participant à l intersection. Pour récupérer les courbes d intersection à une niveau de subdivision n, il suffit d appliquer n fois ce processus. La Figure 4.23 montre les résultats obtenus au niveau 2. De gauche à droite, on a : les 1-voisinages V 1 (I i ), les 1-voisinages de la subdivision W 1 (I i ), les faces de W 1 (I i ) en intersection et la courbe d intersection.

98 76 Chapitre 4. Combinaison de surfaces (a) (b) (c) (d) Figure 4.23 : Voisinage, subdivision et courbe d intersection au niveau 2. Cet algorithme réduit de manière significative le nombre de faces intervenant dans le calcul d intersection, il est par conséquent beaucoup plus rapide que l algorithme de base Algorithme utilisant un graphe biparti Ce troisième algorithme repose sur l utilisation d un graphe biparti ; il permet de réduire le nombre d intersections à tester. Un graphe biparti est un graphe dans lequel : Les sommets sont répartis en deux groupes I 1 et I 2. Dans notre algorithme, ces groupes seront respectivement formés par les faces intersectantes de chaque surface. Chaque arête a une de ses extrémités dans chacun de ces groupes. Dans notre cas, une arête symbolisera la présence d une intersection entre deux faces. Aucune arête ne peut relier deux sommets d un même groupe. Figure 4.24 : Exemple de faces très éloignées. Cet algorithme vise à utiliser davantage les propriétés locales des surfaces de subdivision. En effet, dans l algorithme de voisinage, on ne prend pas en compte les résultats du niveau de subdivision précédent pour éviter certaines tests d intersection. Par exemple, considérons 2 faces F 1 et F 2 d une première surface S 1 coupant la seconde surface S 2. Ces deux faces peuvent être très éloignées l une de l autre (Figure 4.24). Au niveau de subdivision suivant, les faces de S 2 qui coupent F 1 ainsi que

99 4.3. Combinaison de surfaces de subdivision par intersection 77 leur voisinage ne coupent pas F 2. Le même raisonnement vaut pour les faces de S 2 coupant F 2 et qui ne coupent pas F 1. Le graphe biparti permet de prendre en compte cette propriété de localité. (a) (b) Figure 4.25 : Exemple de construction d un graphe où F i et G i sont respectivement des éléments de I 1 et de I 2. Dans l exemple présenté sur la Figure 4.25, on construit le graphe d intersection d une bande (40 faces) avec un lapin (694 faces). Les faces intersectantes de la bande sont appelées de gauche à droite F 1 à F 4 et celle du lapin G 1 à G 5, Figure 4.25(a). Les nœuds de la première partie du graphe, disposés en colonne, représentent les faces de l objet 1 (la bande) et ceux de la seconde partie représentent les faces de l objet 2 (le lapin). Les faces de l objet 1 qui coupent l objet 2 sont reliées par des arêtes, Figure 4.25(b). Une fois ce graphe constitué, les voisinages des faces des 2 objets sont ajoutés au graphe. L intersection de chaque face de V 1 (I 1 ) avec toutes les faces de V 1 (I 2 ) n est plus testée : l idée de l algorithme consiste à calculer seulement les intersections entre des sous-groupes de ces ensembles. En effet, à chaque face intersectante F i de la surface S 1, le graphe d intersection (graphe biparti) fait correspondre certaines faces G i de la surface S 2 en intersection avec cette face, on va donc calculer uniquement les intersections entre les V 1 (F i ) et V 1 (G k ) reliés par une arête. L entrée de cet algorithme est un graphe biparti G ( 0 I1 0, I0 2, E0) où I1 0 et I0 2 sont les ensembles de sommets du graphe (faces intersectantes) et E 0 est l ensemble des arêtes (couples de faces en intersection). Sa sortie est également un graphe biparti G ( 1 I1 1, I1 2, E1) représentent les couples de faces en intersection au niveau suivant de subdivision. L algorithme opère en 4 étapes consécutives de la façon suivante : 1. Pour chaque nœud du graphe, les 1-voisinages des faces F i de l objet 1 et des faces G k de l objet 2 sont récupérés, ils sont respectivement notés V 1 (F i ) et V 1 (G k ). 2. Les V 1 (F i ), F i I 1 et V 1 (G k ), G k I 2 sont ensuite subdivisés partiellement de manière à conserver uniquement le 1-voisinage de la subdivision de F i et de G k notés W 1 (F i ) et W 1 (G k ) respectivement. 3. L algorithme de base est utilisé pour déterminer les couples de faces intersectantes entre W 1 (F i ) et W 1 (G k ).

100 78 Chapitre 4. Combinaison de surfaces (a) (b) Figure 4.26 : Construction du graphe biparti initial. 4. Le nouveau graphe biparti G 1 ( I 1 1, I1 2, E1) est construit à l aide de ces nouveaux couples de faces intersectantes. Figure 4.27 : Etape 1 : Récupération des 1-voisinages V 1 (F i ) et V 1 (G k ). L application de cet algorithme sur un exemple simple est montrée à travers les Figures 4.26 à Pour réduire le nombre de sommets du graphe, cette fois on considère l intersection du lapin (694 faces) avec une plus petite bande (10 faces). Ces Figures illustrent successivement la construction du graphe biparti initial, l étape 1 de récupération du voisinage, l étape 2 de subdivision partielle, l étape 3 de détermination des couples de faces en intersection et l étape 4 de construction du nouveau graphe d intersection.

101 4.3. Combinaison de surfaces de subdivision par intersection 79 Figure 4.28 : Etape 2 : Obtention des W 1 (F i ) et de W 1 (G k ) par subdivision partielle de V 1 (F i ) et V 1 (G k ). (a) (b) Figure 4.29 : Construction du nouveau graphe biparti à l aide des couples de faces en intersection de W 1 (F i ) et de W 1 (G k ).

102 80 Chapitre 4. Combinaison de surfaces Comparaison des trois algorithmes L algorithme du graphe biparti est celui qui permet de réduire au maximum le nombre de tests d intersection comme l illustrent les Figures 4.30 et Pour des surfaces comprenant peu de faces, par exemple au niveau 1 ou 2, le nombre de tests d intersection à effectuer dans le cadre des algorithmes de voisinage et du graphe biparti sont semblables. L algorithme de voisinage est alors plus rapide, Figures 4.32 et 4.33, puisqu il ne nécessite pas la construction du graphe biparti. Figure 4.30 : Comparaison du nombre de tests à effectuer pour les différents algorithmes dans le cas de l intersection de deux surfaces de 12 faces au niveau initial. Figure 4.31 : Graphes des données de la Figure L utilisation des boites englobantes des objets est justifiée pour chacun des algorithmes car des surfaces de subdivision peuvent être en intersection à un niveau de subdivision et ne plus l être au niveau suivant. De même, les boites englobantes des faces permettent pour les trois algorithmes d effectuer une détection des faces éventuellement en intersection et ainsi d éviter des calculs d intersection inutiles. Le problème inhérent au voisinage est exactement le même dans les algorithmes de voisinage et du graphe biparti. En effet, le voisinage choisi est suffisant dans la plupart des cas, mais il subsiste des

103 4.3. Combinaison de surfaces de subdivision par intersection 81 Figure 4.32 : Comparaison du temps de calcul pour les trois algorithmes sur des maillages initiaux de 12 faces. Figure 4.33 : Graphes des données de la Figure 4.32.

104 82 Chapitre 4. Combinaison de surfaces exceptions pour lesquelles ce voisinage n est pas suffisant. Une justification plus théorique de la taille du voisinage est nécessaire afin de déterminer les cas pour lesquelles le voisinage doit être étendu. 4.4 Combinaison des surfaces algébriques par les R-fonctions Cette section présente notre travail sur les opérations booléennes entre surfaces algébriques pour la reconstruction 3D, nous considérons que le nuage de points initial est décomposé en un ensemble de régions et que chaque région est approchée par une primitive surfacique et nous procédons à la combinaison des différentes primitives pour obtenir une représentation globale du nuage de points Introduction Dans un cadre de modélisation de type CSG, nous proposons de combiner des primitives, connues sous le nom de Les supershapes, présentées sont introduites par Gielis [76, 77] comme une extension des superquadriques, ayant une représentation à la fois paramétrique et implicite, par des fonctions de mélange, plus connues sous le nom de R-fonctions. Les représentations implicites des primitives sont combinées en une seule fonction implicite par l utilisation des R-fonctions. La surface de l objet résultant est ensuite directement et exactement évaluée en utilisant la représentation paramétrique de chaque supershape. Si tous les sommets générés par cette méthode appartiennent à l ensemble des points de l espace pour lesquels la fonction implicite résultante est nulle, les points représentant les courbes d intersections entre les primitives ne peuvent qu être approchés à une précision fixée par l utilisateur. Outre la modélisation d objets réels, composés pour les plus complexes de plusieurs centaines de supershapes, nous avons également exploité cette représentation dans le domaine de la reconstruction de surfaces à partir d objets synthétiques ou réels [64] Superquadriques et supershapes Les superquadriques, introduites par Alan Barr [11], ont été largement utilisées dans de nombreuses applications incluant l imagerie médicale, la vision par ordinateur, la modélisation ou la reconstruction de surfaces. Beaucoup d efforts ont été dédiés à l extension de leurs degrés de liberté : Löffelmann et al. s intéressent à la paramétrisation [109], DeCarlo et al. combinent de multiples modèles [35], et des déformations libres (FFD) sont utilisées par Bardinet et al. [8, 9]. Nous rappelons ci-après brièvement les principales caractéristiques des superquadriques avant d introduire leur extension par les supershapes de Gielis. La Figure présente quelques exemples de superquadriques (partie haute) et de supershapes (partie basse). L extension aux superquadriques 3D est obtenue par le produit sphérique de deux superquadriques 2D par : S x (θ, φ) ( ) S y (θ, φ) = gx (θ) g S z (θ, φ) y (θ) ( ) hx (φ) = h y (φ) Une superquadrique est paramétriquement définie par : g x (θ) h x (φ) g y (θ) h x (φ) h y (φ)

105 4.4. Combinaison des surfaces algébriques par les R-fonctions 83 Figure 4.34 : Exemples de superquadriques (en haut) et supershapes (en bas). x(η, ω) a 1 cos ε 1 η cos ε 2 ω y(η, ω) = a 2 cos ε 1 η sin ε 2 ω z(η, ω) a 3 sin ε 1 η (4.2) Une formulation implicite peut être déduite de la précédente représentation et est définie par : ( x F(x, y, z) a 1 ) 2 ε2 + ( y a 2 ) 2 ε2 ε 2 ε 1 ( ) 2 z ε1 + = 1 (4.3) a 3 Les supershapes ont récemment été introduites par Gielis [76, 77] comme une extension des superquadriques. Dérivant de la formulation des superellipses, le terme mφ 4, m R+, est introduit pour contrôler le nombre de symétries. A la place d un unique coefficient de forme, trois coefficients notés n 1, n 2 et n 3 sont désormais considérés. En coordonnées polaires, le rayon r(θ) d un superpolygone est défini par : r (θ) = 1 n 1 1 a cos ( ) mθ n b sin (, (4.4) ) mθ n 3 4 avec a, b et n i R +, et m R +. Les paramètres a > 0 et b > 0 contrôlent les dimensions du polygone, m 0 correspond au nombre de symétries et peut également être vu comme le nombre de fois où le plan réel est "plié" en secteurs. Si m est un entier naturel, la courbe générée est fermée et non auto-intersectante, ce qui permet de représenter l ensemble des polygones réguliers en utilisant les coefficients de formes proposés par Gielis. L extension aux supershapes 3D est effectuée par le produit sphérique de deux superpolygones de manière similaire aux superquadriques. Puisque nous nous intéressons aux objets solides non autointersectants, le paramètre m est considéré comme un entier naturel. Une supershape 3D est définie

106 84 Chapitre 4. Combinaison de surfaces paramétriquement par : x(θ, φ) r 1 (θ)r 2 (φ) cos θ cos φ y(θ, φ) = r 1 (θ)r 2 (φ) sin θ cos φ z(θ, φ) r 2 (φ) sin φ (4.5) avec π θ < π et π 2 φ π 2. Une supershape unitaire (a = b = 1) est donc définie par 6 coefficients de formes notés {n 1, n 2, n 3, N 1, N 2, N 3 }, où les n i et N i représentent les coefficients de forme utilisés dans les expressions r 1 (θ) et r 2 (φ) respectivement. Dans [77], deux fonctions de distance sont proposées pour les supershapes : l idée des auteurs consiste à projeter un point considéré sur les plans orthogonaux supportant les deux polygones générateurs, puis à évaluer séparément pour chaque projeté sa distance au polygone générateur. Nous proposons deux fonctions implicites, la première étant directement déduite de la représentation paramétrique des supershapes présentée par l équation (4.5), la seconde étant basée sur la notion de distance radiale. L avantage de ces deux formulations est d obtenir une seule valeur signée pour un point donné de l espace et de pouvoir décrire implicitement l intérieur, l extérieur ou la surface d une supershape 3D. La première representation implicite, déduite de la représentation paramétrique de manière similaire aux superquadriques, est définie par : F (x, y, z) = 1 x2 +y 2 +r 2 1 (θ)z2 r 2 1 (θ)r2 2 (φ) (4.6) Pour la seconde formulation implicite, basée sur la notion de distance radiale, nous exprimons une fonction du rapport t = OI, I représentant l intersection de la surface de la supershape et de la demi droite [OP) : OI F (x, y, z) = 1 OP = 1 t OI x = y 2 + z 2 r1 2 (θ) r2 2 (φ) cos2 φ + r2 2 (φ) sin2 φ = 1 1 r 2 (φ) x 2 + y 2 + z 2 cos 2 φ ( r1 2 (θ) 1) + 1 (4.7) Quand t = 1, le point P réside sur la surface (t < 1 et t > 1 représentant respectivement l intérieur et l extérieur de la supershape). Il est important de remarquer que les angles θ, φ ne correspondent pas exactement aux traditionnelles coordonnées sphériques. En fait, il est facile de vérifier que pour un couple (θ, φ), les coordonnées sphériques (R = cte, θ, φ) et les coordonnées de supershapes (R = f (θ, φ), θ, φ) sont équivalentes seulement pour r 1 (θ) = 1. Pour un point de l espace P(x, y, z), exprimé dans le repère canonique, et une supershape unitaire, i.e. (a = b = 1 pour les deux superpolygones générateurs), les angles θ et φ sont définis par : θ = θ (x, y) φ = φ (x, y, z, n 1, n 2, n 3 ) = arctan ( ) y x = arctan ( zr 1 (θ) sin(θ) y = arctan ( zr 1 (θ) cos(θ) x ) ) (4.8)

107 4.4. Combinaison des surfaces algébriques par les R-fonctions 85 Il est à noter que φ est non seulement fonction des coordonnées (x, y, z) du point P, mais également des 3 coefficients de forme utilisés dans r 1. Pour déterminer θ et φ, il faut résoudre l équation I(θ, φ) = tp, c est à dire trouver θ et φ tels que les points I, P et O soient alignés comme l illustre la Figure 4.35(a). Les supershapes peuvent être représentées à la fois par leur forme paramétrique et une forme implicite, ce qui signifie que la forme paramétrique peut être directement utilisée pour générer exactement les solutions de la forme implicite. Comme I est un point de la surface, ses coordonnées vérifient l équation (4.5). On peut voir que P y P x = I y I x = tan θ, ce qui nous donne l angle θ. Une fois θ connu, le rayon r 1 du premier superpolygon générateur peut être évalué. En utilisant une idée similaire, i.e. en exprimant la quantité tan φ dans l équation (4.5), on déduit P zr 1 (θ) sin θ P y = I zr 1 (θ) sin θ I y = tan φ, ce qui nous donne les valeurs de θ et φ définies dans l équation (4.8). Les formes semi-développées en fonction des coordonnées (x, y, z) des deux représentations implicites sont donc définies par : et F (x, y, z) = 1 r 2 1 ( ( x 2 +y 2 +r1 2 arctan y )) x z 2 ( ( ( ( )) (4.9) arctan y x)) r 2 zr1(arctan( 2 arctan y x)) sin(arctan( y x)) 1 F (x, y, z) =1 ( )) zr1(arctan( r 2 (arctan y x)) sin(arctan( y x)) y (4.10) x 2 + y 2 + z ( 2 )) zr1(arctan( cos (arctan 2 y x)) sin(arctan( y ( ( ( x)) y r 2 1 arctan y )) ) x y (a) (b) Figure 4.35 : Supershapes. (a) Interprétation géométrique. (b) L intensité du champs scalaire généré pour une section plane z = const en utilisant l équation (4.6). En d autres termes, pour un point P(x, y, z), nous évaluons d abord les angles θ et φ puis les rayons r 1 et r 2 qui sont ensuite utilisés dans les fonctions définies par les équations (4.6) ou (4.7). La raison pour laquelle nous considérons m comme un entier naturel apparaît désormais clairement : avec m rationnel, la surface serait toujours fermée, mais elle serait auto-intersectante, ce qui impliquerait l existence de multiples points d intersection entre la surface et la demi-droite [OP). La Figure 4.35(b) illustre l intensité du champ scalaire pour un plan z = const en utilisant la première forme implicite. La Figure 4.36 présente plusieurs exemples de supershapes pour des jeux de paramètres différents.

108 86 Chapitre 4. Combinaison de surfaces (a) (b) (c) (d) Figure 4.36 : Example of 3D supershapes with m a natural number. (a) m = 3, M = 6, n 1 = N 1 = 1000, n 2 = n 3 = 1980 N 2 = N 3 = 390. (b) m = 5, M = 6, n i = 100, N i = 10, i = 1, 2, 3. (c) m = 8, M = 4, n 1 = 1.5, n 2 = 3.5, n 3 = 1, N i = 100, i = 1, 2, 3. (d) m = M = 8, n 1 = N 1 = 100, n 2 = n 3 = N 2 = N 3 = R-fonctions La théorie des R-fonctions a été introduite par V.L. Rvachev à la fin des années soixante [151]. Initialement écrite en russe, les principaux passages ont été traduits en anglais par Shapiro [157]. Une R-fonction est une fonction à valeur réelle caractérisée par une propriété qui est complètement déterminée par la propriété correspondante de ses arguments (telle que le signe ou encore l appartenance à un intervalle). En particulier, certaines fonctions réelles à variables réelles possèdent la propriété que leur signe est complètement déterminé par le signe de leurs arguments. Par exemple, le signe de la fonction f (x) = xy est complètement déterminé par le signe de ses arguments alors que pour la fonction f (x) = sin(xy), non seulement les signes des arguments, mais également leurs amplitudes influencent le signe de la fonction. Nous nous intéressons plus spécifiquement aux applications de la théorie des R-fonctions pour résoudre le problème inverse de géométrie analytique. Résoudre le problème au sens général signifie que n importe quel objet clos peut-être décrit par une seule équation analytique f = 0 ou bien inégalité f 0, vérifiée seulement sur la surface ou l intérieur de l objet respectivement. De plus, la fonction résultante doit être différentiable un certain nombre de fois. Dans [152, 153], Rvachev démontre qu en combinant algèbre booléenne et plus généralement algèbre à n valeurs avec un ensemble de fonctions légèrement plus riche que les polynômes, le problème inverse de géométrie analytique peut être résolu en général. (a) (b) Figure 4.37 : Un exemple d objet. (a) Diagramme de Venn. (b) quadrants booléens.

109 4.4. Combinaison des surfaces algébriques par les R-fonctions 87 Pour présenter les R-fonctions, commençons par le diagramme de la Figure 4.37(a). Nous désirons représenter l objet D, en bleu sur la Figure 4.37(a). D peut être décrit par la fonction booléenne suivante, appliquée à tous les points de chaque disque C O, C A et C B, de centres respectifs O, A et B : D = C O (C A C B ). (4.11) Nous pouvons introduire le prédicat suivant pour faire correspondre une variable réelle x à une variable booléenne : S (x) = 1 (1 + signe (x)), x 0 (4.12) 2 Puisque nous considérons une logique binaire exclusive, le cas du zéro doit être traité spécifiquement, c est à dire qu il doit appartenir à l un ou l autre des intervalles. Nous renvoyons le lecteur intéressé à la section 1.6 de [157] à propos des discussions sur l appartenance du zéro à l une ou l autre des partitions de l axe réel. Soient les inégalités ω O (x, y) 0, ω A (x, y) 0 et ω B (x, y) 0 décrivant l intérieur des disques C O, C A et C B respectivement. Par substitution de ces inégalités dans l équation (4.11) et en utilisant le prédicat (4.12), nous obtenons l équation prédicat suivante : F(S (ω O (x, y)), S (ω A (x, y)), S (ω B (x, y))) = 1, (4.13a) ou, sur notre exemple, avec F et S fonctions booléennes. S (ω O (x, y)) (S (ω A (x, y)) S (ω B (x, y))) = 1, (4.13b) Cette équation prédicat définit le même domaine que (4.11). En utilisant (4.12), nous pouvons maintenant introduire le concept de R-fonction. Tout point (x, y) non dégénéré du plan (i.e. avec au moins une coordonnée non nulle) peut être mis en correspondance avec un ensemble de variables booléennes {X, Y} par : X = S (x), Y = S (y). Il existe quatre combinaisons différentes de deux variables booléennes (i.e. les couples (0,0), (0,1), (1,0) et (1,1)) comme l illustre la Figure 4.37(b). Une fonction f (x, y) ayant un signe constant dans chaque quadrant est appelée R-fonction, c est à dire : S ( f (x, y)) = F = const. avec F une variable booléenne. La Figure 4.37(b) représente les différents cas possibles définissant une variable booléenne F du plan réel, et illustre que le signe d une R-fonction est défini par le signe de ses arguments. Nous pouvons donc écrire : S ( f (x, y)) = F(S (x), S (y)). En tant que variable binaire, le signe peut être traité comme une variable booléenne. La théorie des R- fonctions permet de construire des fonctions représentant exactement n importe quelle forme fermée. De plus, de la même manière que toute fonction logique peut être exprimée en utilisant seulement trois axiomes,, and, toute R-fonction peut être représentée par composition des trois R-fonctions correspondantes, i.e. R-conjonction, R-disjonction et R-négation. Par soucis de clarté et de simplicité, nous utiliserons la notation pour désigner l opération de R- conjonction et + pour désigner l opération de R-disjonction. La R-négation correspond à la fonction opposée x x. Les trois majeures branches de R-fonctions introduites par Rvachev sont notées R α, R m 0 et R p. Une illustration de la R-disjonction de deux disques, utilisant ces trois fonctions, est présentée en Figure Les Figures 4.38(a), 4.38(b) et 4.38(c) illustrent l intensité de la fonction de mélange sur l intervalle [ 1, 1] 2. Le maximum de la fonction est représenté en rouge, le minimum en bleu. Sur chaque figure, les points du plan tels que f (x, y) = 0 sont en noir. Sur les Figures 4.38(a),

110 88 Chapitre 4. Combinaison de surfaces 4.38(b) et 4.38(c), on voit donc apparaître la frontière séparant les sous-espaces où la fonction est de signe opposé. Sur notre exemple, la fonction de mélange est négative sur le carré paramétrique [ 1, 0] 2 (en bas à gauche sur les trois premières figures) et positive ailleurs, ce qui correspond à un OU logique : x 0 ou y 0. Les Figures 4.38(d), 4.38(e) et 4.38(f) illustrent l intensité de la fonction implicite correspondant à l union de deux disques. Dans ce cas, la surface de l objet résultant, correspondant sur notre exemple aux points du plan tels que F(x, y) = R ( f 1 (x, y), f 2 (x, y)) = 0, est représentée en noir, le maximum de la fonction en rouge (intérieur) et le minimum en bleu (extérieur). (a) (b) (c) (d) (e) (f) Figure 4.38 : Fonctions de mélange et exemple d union de deux disques. Intensité des R-disjonctions (a) R α=1 (x, y) = max(x, y), (b) R m=2 0 (x, y) et (c) R p=4 (x, y) sur l intervalle [ 1, 1] 2. En bleu la fonction est minimum et maximum en rouge sur cet intervalle. En noir est représentée la courbe R (x, y) = 0. Intensité de la fonction implicite correspondant à l union de deux disques d équations f 1 (x, y) et f 2 (x, y) en utilisant respectivement (d) R α=1 ( f 1 (x, y), f 2 (x, y)) = max( f 1 (x, y), f 2 (x, y)), (e) R m=2 0 ( f 1 (x, y), f 2 (x, y)) et (f) R p=4 ( f 1 (x, y), f 2 (x, y)) Propriétés de R α R α : ( ) 1 x + y ± x 1 + α 2 + y 2 2αxy (4.14) Où α( f 1, f 2 ) est une fonction symétrique choisie arbitrairement telle que 1 < α( f 1, f 2 ) 1. Choisir α( f 1, f 2 ) = 1 conduit à la plus simple et populaire branche de R-fonctions : R-conjonction min(x, y) et R-disjonction max(x, y). Malheureusement, ces deux fonctions ne sont pas différentiables le long de la ligne x = y.

111 4.4. Combinaison des surfaces algébriques par les R-fonctions 89 Propriétés des R m 0 et R p Pour éviter la perte de différentiabilité le long de la ligne x = y, deux autres branches de R-fonctions R m 0 et R p sont présentées par Rvachev : R m 0 : (x + y ± x 2 + y 2 ) (x 2 + y 2) m 2 (4.15) Le paramètre m est un entier pair positif. Shapiro a démontré dans [158] que R m 0 est m fois partout différentiable. Malheureusement, R m 0 n est pas normalisée. La R-fonction R p, normalisée et différentiable partout sauf pour le point x = y = 0, est définie par pour tout entier p pair positif. R p : x + y ± ( x p + y p) 1 p (4.16) R-functions N-aires Les R-fonctions R α, R m 0 et R p ne prennent en compte que deux arguments. Rvachev propose les R- conjonction and R-disjonction N-aires pour prendre en compte un nombre d arguments supérieur à deux. Le paramètre m est un entier et correspond à celui utilisé pour la R-fonction R m. i=n (m) i=1 x i n n ( 1) m xi m (x i x i ) + xi m (x i + x i ) (4.17a) i=1 i=1 i=n (m) i=1 x i n i=1 x m i n (x i + x i ) xi m ( 1) m ( x i x i ) (4.17b) i= Modélisation Notre approche est caractérisée par l utilisation de primitives (supershapes) pouvant être représentées explicitement et paramétriquement et leur combinaison implicite par R-fonction. L emploi de fonction implicite permet de diminuer considérablement la complexité des test d inclusion intérieur/extérieur à chaque étape de l algorithme. Dans le même temps, la forme paramétrique permet de générer directement et exactement les points appartenant à la surface de chaque supershape et permet de préserver les arêtes vives de la surface finale. Une surface peut être représentée comme l ensemble des points de l espace où une fonction est constante, généralement nulle par convention. Le lien avec la modélisation géométrique apparaît clairement en remarquant qu une fonction implicite peut être utilisée comme fonction caractéristique pour déterminer l appartenance d un point à l intérieur, l extérieur ou à la surface d un objet. Notre approche s inscrit dans le cadre de l approche CSG où un objet complexe est représenté comme une composition booléenne d objets de plus simple nature, appelés primitives. La représentation prend donc la forme d un arbre où les nœuds intermédiaires correspondent aux opérations booléennes et les feuilles aux primitives. L objet final est obtenu en évaluant la racine de l arbre CSG par parcours infixe.

112 90 Chapitre 4. Combinaison de surfaces (a) (b) Figure 4.39 : Déformations. (a) De gauche à droite : supershape mise à l échelle, pincement, vrille, torsion et combinaison des quatre déformations. (b) Exemple de déformation appliquée à la racine d un arbre CSG représentant un boulon. Initialement, les primitives considérées sont des supershapes, mais pour permettre de modéliser un plus large champ d objets, nous avons également considéré des déformations globales à chaque nœud de l arbre. Avant d évaluer le résultat d un nœud de l arbre, il convient donc d inverser les transformations successives qui lui ont été appliquées pour se ramener dans le référentiel canonique. Déformations Les déformations de mise à l échelle, de pincement linéaire, de vrille et torsion peuvent être appliquées comme l illustre la Figure 4.39(a). Sans perte de généralité, nous pouvons écrire l équation implicite d une surface déformée par : F(P can ) = F ( D 1 (P) ) (4.18) où D 1 représente la transformation inverse pour ramener P à P can exprimé dans le référentiel canonique. Dans notre cas, D est composé des usuelles transformations comme les rotations et translations, mais également des quatres déformations précédentes. De plus, les déformations ne sont pas uniquement appliquées aux primitives de l arbre CSG mais peuvent être appliquées à tous ses nœuds comme l illustre la Figure 4.39(b) où une vrille et une torsion sont appliquées directement à la racine. Ces quatre déformations sont appliquées dans l ordre suivant : De f = T orsion Vrille Pincement Echelle Pincement linéaire Le pincement linéaire permet principalement de générer des objets de forme conique ou prismatique : pour un point P(x, y, z), x et y sont dilatés ou contractés en fonction de leur altitude z et des coefficients k x et k y, coefficients de pincement le long des axes O x et O y respectivement. Le pincement linéaire est défini par : ( ) kx X = + 1 x a 3 ( ) ky Y = + 1 y a 3 Z = z

113 4.4. Combinaison des surfaces algébriques par les R-fonctions 91 Vrille, ou torsion axiale La vrille, ou torsion axiale, peut être vue comme une rotation autour d un axe passant par le point de coordonnées (O x, O y ), parallèle à l axe (Oz) et d angle proportionnel à l altitude z. La vrille permet de générer des objets de forme hélicoïdale et est définie par Avec θ = f (z) = X = (x O x ) cos θ (y O y ) sin θ Y = (x O x ) sin θ (y O y ) cos θ Z = z z Zmin Zmax Zmin et O centre de rotation de coordonnées (O x, O y ). Torsion avec r = X = x + (R r) cos α Y = y + (R r) sin α ( ) 1 Z = k r sin (z k) ( x 2 + y 2 cos α arctan y ) x R = 1 k ( 1 k r ) cos(z k) k représente la courbure de l objet et α l angle de rotation du plan de courbure. Algorithme de calcul des opérations booléennes Nous nous intéressons aux details des deux principales opérations effectuées pour évaluer chaque nœud intermédiaire : le marquage des sommets dans un premier temps, puis le découpage des surfaces des deux sous-arbres gauches et droits avant leur fusion pour obtenir l objet final. L algorithme à appliquer à chaque nœud est représenté par la Figure La première étape évalue les sommets des maillages à conserver en fonction de l opération booléenne. La fonction implicite correspondante de chaque sous-arbre (fonction implicite de la supershape pour une feuille ou bien R-fonction pour les nœuds intermédiaires) est évaluée à chaque sommet de l autre sous-arbre. Son signe permet de déterminer quels sont les sommets situés à l intérieur ou à l extérieur de l objet. Un sommet appartenant exactement à la surface de l objet a une fonction nulle. Une fois les tests intériorité/extériorité effectué, il reste à détecter les faces intersectantes entre les deux maillages pour déterminer les portions des deux maillages à conserver. Une face intersectante, c est à dire traversant la surface de l autre objet, est caractérisée par un changement de signe de la fonction implicite le long de ses arêtes, comme présenté en Figure 4.41(a). Les problèmes de détection d intersections

114 92 Chapitre 4. Combinaison de surfaces Figure 4.40 : Schéma général de l algorithme qui calcule les opérations booléennes (a) (b) Figure 4.41 : Détection et découpage des faces intersectantes. (a) Séquence de faces traversées par une courbe d intersection. (b) Sur un segment paramétrique, l approximation d un point d intersection I + ou I dépend de l opération booléenne. sont classiques dans le cadre des opérations booléennes entre solides. Malheureusement, déterminer exactement les courbes d intersections, c est à dire les changements de signe de la fonction implicite, équivaut à résoudre explicitement l équation arbre gauche = arbre droit, ce qui n est pas possible dans le cadre général. Il convient donc d approcher ces courbes d intersection à une precision souhaitée comme l illustre la Figure 4.41(b). En pratique, ne disposant pas d une telle solution, nous évaluons non seulement la fonction implicite aux sommets des maillages, mais également le long de leurs arêtes. La complexité de l évaluation de la fonction implicite est constante et ne dépend pas du nombre de faces considérées. Cet avantage, dû à la représentation implicite des deux objets, permet donc d évaluer un échantillonnage des arêtes pour y détecter un éventuel changement de signe. Dans les cas où de multiples changement de signes sont détectés le long d une arête, les deux faces partageant cette arête sont subdivisées pour garantir un seul changement de signe par arête au maximum. Après cette étape, les faces intersectantes entre les deux maillages sont déterminées et vont être utilisées au cours du découpage des maillages le long des courbes d intersection. Les approximations des points d intersection sont évaluées par dichotomie le long des bords des faces traversant la surface avec une précision fixée par l utilisateur comme l illustre la Figure 4.41(b). La précision de l approximation des points d intersection est contrôlée par le paramètre ε, un second paramètre noté δ permet de contrôler la densité des points le long des courbes d intersection. Une fois les approximations des courbes d intersection déterminées, les faces intersectantes des deux maillages sont découpées le long de ces courbes. La dernière opération avant d obtenir le maillage final consiste à fusionner les

115 4.4. Combinaison des surfaces algébriques par les R-fonctions 93 (a) (b) (c) Figure 4.42 : Exemple de pièce mécanique I : 24 supershapes et 21 opérations booléennes. (a) Modèle CAO, (b) Représentation par supershapes, (c) Intensité de la fonction implicite en utilisant R p=2 -fonctions. (a) (b) (c) Figure 4.43 : Exemple de pièce mécanique II : 54 supershapes et 31 opérations booléennes. (a) Modèle CAO, (b) Représentation par supershapes, (c) Intensité de la fonction implicite en utilisant R p=2 - fonctions. deux maillages le long des courbes d intersection. Nous renvoyons le lecteur intéressé à [15] pour la technique utilisée. Les Figures 4.42, 4.43 et 4.44, illustrent l application de notre algorithme pour représenter un objet complexe inspiré du maillage CAO d un pont arrière de camion. L arbre CSG pour représenter un tel maillage est composé de plusieurs centaines de nœuds : 235 supershapes combinées par 238 opération booléennes. Les Figures 4.42 et 4.43 présentent deux sous parties issues du modèle CAO et leur représentation par supershapes. Les Figures 4.42(c) et 4.43(c) illustrent l intensité de la fonction implicite correspondante. Sur la surface des deux objets, la fonction implicite est nulle (en bleu), à l intérieur de l objet, la fonction est positive, son maximum étant en rouge Reconstruction de Surfaces Comme nous pouvons désormais représenter des objets solides comme composition booléenne de supershapes, nous nous intéressons aux différentes techniques pour reconstruire une surface implicite à partir de données provenant de numérisations 3D d objets réels. Notre objectif est de combiner les supershapes reconstruites à partir de nuages de points pré-segmentés provenant du nuage complet à reconstruire. A chaque sous-partie reconstruite correspond une équation

116 94 Chapitre 4. Combinaison de surfaces Figure 4.44 : Pont arrière de camion : modèle CAO (gauche) et sa représentation par supershapes (droite). implicite de supershape qui va être combinée en utilisant les R-fonctions. L équation implicite finale est utilisée pour définir une métrique d erreur pour notre reconstruction. Pour réduire les dimensions de l espace des paramètres à reconstruire, nous ne considérons plus que les déformations appliquées aux supershapes. La Figure 4.46 illustre chacune de ces trois étapes. Les superquadriques ont été largement utilisées en reconstruction de surface [8, 9, 35, 98, 97]. Dans la plupart des cas, les méthodes d optimisation telles que Levenberg-Marquardt sont utilisées pour retrouver les paramètres d une superquadrique à partir d un nuage de points. Les paramètres d une supershapes sont notés Λ = {D, T, R, n i, N i }, i = 1, 2, 3. D représente les déformations, T les translations et R les rotations. Différentes fonctions de coût ont été proposées dans la littérature, Gross et al. [78] proposent une fonction de coût basée sur la notion de distance radiale, Solina et al. [163] proposent la fonction suivante : F (Λ) = N ( f ε 1 (P i ) 1 ) 2 i=1 (4.19) où f représente la fonction implicite d une superquadrique et ε 1 son premier coefficient de forme. Nous considérons l ensemble des paramètres Λ à reconstruire en minimisant la fonction F (Λ) = a 1 a 2 a 3 n f 2 (P i ) (4.20) i avec a 1, a 2 et a 3 coefficients d échelle. Cette formulation a l avantage de permettre de reconstruire des supershapes à partir de données partiellement incomplètes en considérant des primitives de volume minimal. Notre technique est similaire à celle utilisée pour les superquadriques, sauf pour les deux paramètres m 1 and m 2, contrôlant le nombre de symétries des polygones générateurs, qui sont déterminés géométriquement avant le processus d optimisation. Nous renvoyons le lecteur intéressé à [175, 159] pour de plus amples explications sur les détections de symétries. Une fois les paramètres m 1 et m 2 estimés, les autres coefficients sont determinés en utilisant la méthode de Levenberg-Marquardt. La Figure 4.45 présente une illustration de l évolution de la supershape reconstruite à différentes itérations. L objet initial, comme pour les superquadriques, est une ellipse (n 1 = n 2 = n 3 = 2 pour les deux superpolygones générateurs). Une fois toutes les supershapes reconstruites, nous appliquons notre algorithme de modélisation pour ob-

117 4.4. Combinaison des surfaces algébriques par les R-fonctions 95 tenir le maillage représentant la surface implicite définie par l union de toutes les supershapes comme présenté en Figure 4.46(b). (a) (b) (c) Figure 4.45 : Evolution d une supershape reconstruite à partir d un nuage de synthèse. (a) Objet initial. (b) Résultat après 1 itération (c) Résultat après 5 itérations. Si le procédé converge rapidement sur des données de synthèse, la convergence devient plus lente sur des données réelles bruitées. Le procédé peut également être piégé dans un minimum local si les données sont trop bruitées ou incomplètes. Un exemple de convergence vers un minimum local peut être observé sur la Figure 4.46(c). Le nuage de point représentant le boulon supérieur gauche (en marron sur la figure) est trop bruité et incomplet pour être précisément reconstruit, même en initialisant manuellement la plupart des paramètres tels que les dimensions et le positionnement. (a) (b) (c) Figure 4.46 : Modèle "Waterneck", maillage, surface reconstruite, et erreur de reconstruction. Le modèle original est composé 134k faces. (a) Maillage segmenté manuellement en 9 parts. (b) Représentation par supershapes. (c) Mesure d erreur (bleu pour l erreur minimum et rouge pour l erreur maximum.

118 96 Chapitre 4. Combinaison de surfaces 4.5 Contraintes géométriques pour la combinaison et la modélisation de surfaces Dans le cadre de la thèse de David Ménegaux, que je codirige avec le Professeur Dominique Michelucci, nous nous intéressons à l utilisation des contraintes géométriques pour la construction et le raccordement de surfaces algébriques. La thèse est encore en cours, les premiers tests réalisés sur les courbes algébriques ont donné des résultats prometteurs [119]. Des contraintes telles que points multiples d une courbe, raccordement de plusieurs morceaux de courbes ont été testées. Avec le Professeur Dominique Michelucci nous avons également étudié comment exprimer les contraintes géométriques de façon intrinsèque (indépendamment de tout repère de coordonnées) en utilisant les déterminants de Cayley-Menger [122] et en utilisant les fonctions noyaux (kernel functions) [121]. Plus récemment nous avons proposé une méthode simple et fiable pour détecter les dépendances dans un système de contraintes [63]. Le lecteur intéressé peut avoir de plus amples détails sur ce travail en se rapportant à [122, 121, 63]. 4.6 Conclusion La combinaison de surfaces est une opération indispensable en modélisation géométrique. Les trois approches présentées montrent qu il restent encore des efforts à faire pour résoudre complètement ce problème. Trouver une méthode générale qui s applique à tous les types de surfaces n est pas vraiment possible, les algorithmes proposés dépendent beaucoup de la nature des surfaces manipulées. Les cyclides de Dupin semblent bien convenir pour les jointures et les combinaisons des quadriques. L utilisation des courbes rationnelles quadratiques de Bézier pour exprimer les cercles principaux de la cyclide a facilité cette jointure (La CdD est construite à l aide de deux triplets de points). Cependant, beaucoup de travail reste à faire pour étendre leur utilisation aux autres surfaces. Nous pensons notamment à l étude des supercyclides et à l utilisation de carreaux de supercyclides pour la modélisation surface complexes. L idée d utiliser la courbe d intersection de deux surfaces au premier niveau de subdivision pour calculer l intersection aux niveaux supérieurs peut être mieux concrétisée par la définition d un schéma de subdivision qui combine les schémas des deux surfaces et qui permet de subdiviser la courbe d intersection au premier niveau pour trouver la courbe aux niveaux supérieurs. Une autre possibilité serait de calculer la courbe d intersection à un niveau de subdivision très élevé et utiliser une analyse multirésolution pour naviguer entre les différents niveaux. Nous pouvons, dans ce cas, nous baser sur le travail de Michael Roy et utiliser les schémas de multirésolution qu il a développé. Le reste du travail de Yohan Fougerolle a pour objectif d utiliser la méthode proposée pour la combinaison de surfaces algébriques (supershapes) dans une démarche de reconstruction 3D. Nous avons illustré le potentiel de notre approche à représenter des objets complexes comme le modèle CAO d un pont arrière de camion où plusieurs centaines d opérations booléennes sont effectuées sur plusieurs centaines de supershapes.

119 Chapitre 5 Modélisation de produits Ce chapitre décrit nos activités de recherche sur le développement de modèles pour la représentation des informations, géométriques et/ou non géométriques, caractérisant le cycle de vie du produit (Product Lifecycle Management - PLM). Ces recherches sont le résultat d une collaboration avec l Institut National des Standards et de la Technologie (NIST), qui se situe à Gaithersburg dans l état du MAryland, Etats-Unis. 5.1 Introduction L évolution des outils de la gestion informatisée des données relatives au développement de produits a connu trois générations. La première génération concerne les systèmes de CAO/CFAO qui sont devenus des outils inévitables pour définir le modèle géométrique et les procédés de fabrication d un produit. Ces systèmes offrent des solutions riches et très techniques pour une conception fine et détaillée. Le développement continu des produits et les quantités importantes de données générées par ce développement a donné naissance à la deuxième génération : il s agit des systèmes de gestion des données produits (product data management (PDM)). Les systèmes de PDM permettent de gérer, de mettre à jour et de contrôler la validité des informations qui sont initialement essentiellement géométriques ou en relation avec la géométrie. L émergence du concept de l entreprise étendue a vite montré les limites des PDM en faisant apparaître un besoin vital à gérer les autres données relatives aux différentes ressources de l entreprise, à la clientèle, aux chaînes logistiques, etc. Ce besoin a donné lieu à la troisième génération de systèmes, qui inclut une grande variété d outils (Enterprise Resource Planning (ERP), Customer Relationship Management (CRM), Supply Chain Management (SCM), etc.). Bien que ces applications ont considérablement facilité et amélioré les communications et l échange de données entre tous les acteurs du cycle de vie du produit, elles se sont avérées insuffisantes en ce qui concerne l aide à l innovation et à la créativité au sein de l entreprise, et ceci pour les deux raisons suivantes : (i) Ces outils se sont concentrés sur les activités annexes et non pas sur l amélioration des composants de base de l activité d obtention des produits (lien entre modèles CAO et gammes d usinage, optimisation des paramètres de fabrication, etc.). (ii) Ces outils ont tendances à se baser sur des modèles de données fortement structurés, ce qui n est pas le cas des environnements de développement de produit qui sont souvent submergés par des flux d informations importants et non structurés. 97

120 98 Chapitre 5. Modélisation de produits La nouvelle génération d applications de gestion de produit se base sur une nouvelle stratégie, dites Product Lifecycle Management (PLM), qui vise à prendre en considération tout ce qui concerne le produit (données, coûts, paramètres, acteurs, etc.) tout le long de son cycle de vie, et donc fournir un support de gestion et de développement du produit de sa première conceptualisation à son démantèlement ou son recyclage. PRODUCT USE: WARRANTY EXPERIENCE MAINTENANCE RECORD DISPOSAL: RECOVERY RECYCLING IDEATION: MARKET RESEARCH USER FEEDBACK INNOVATION CONCEPTUALIZATION MANUFACTURING: PLANNING SUPPLY CHAIN CREATION DISTRIBUTION DESIGN ORGANIZATION: PEOPLE INFORMATION INFRASTRUCTURE KNOWLEDGE DESIGN EVALUATION: ANALYSIS SIMULATION PERFORMANCE EVALUATION QUALITY EVALUATION DETAILED DESIGN: PRODUCT PROCESS Figure 5.1 : Le cycle de vie du produit. CONCEPTUAL DESIGN: PRODUCT PROCESS Notre vision du cycle de vie du produit est illustrée par la Figure 5.1. Les nœuds sur le bord du cercle représentent les phases principales dans le cycle de vie : conceptualisation, organization des ressources, conception, analyse, simulation et vérification, fabrication et distribution, performances d utilisation et les feed-back des clients. Les liens entre ces nœuds symbolisent la transition des données d une phase à une autre. Les liens intérieurs symbolisent les différents feed-back entre différentes phases, ces liens créent des boucles donnant lieu aux réexamens, aux nouvelles conceptions et donc aux améliorations successives du produit. Les données manipulées par les systèmes de CAO traditionnels sont, généralement, géométriques, mais l évolution grandissante des produits exige de gérer un flux de données de plus en plus important et hétérogène (contenant des données géométriques et non géométriques). Le besoin de gérer les données non géométriques est plus ressenti dans le monde interconnecté d aujourd hui. En effet, les facilités offertes par les réseaux rendent la fabrication de ces produits de plus en plus distribuée dans le temps et dans l espace. Des équipes distantes travaillent, en parallèle, pour la réalisation des différentes parties composant un même produit. Pour une meilleure synchronisation des tâches et des objectifs, ces équipes ont besoin d échanger les données relatives aux modèles de CAO, mais aussi les autres données relatives à la formalisation du besoin client, aux spécifications et décompositions

121 5.2. Outils pour le PLM 99 fonctionnelles, à l analyse de conception, aux plans de fabrication, etc., une nouvelle génération de systèmes de CAO est donc nécessaire pour capturer et gérer le large spectre d informations générées et utilisées tout le long du cycle de vie du produit et pour garantir des échanges sans perte de ces données entre les différents acteurs [140]. Le NIST a proposé un modèle générique, dit Core Product Model (CPM) [52], qui contient les éléments fondamentaux pour représenter tout produit. Le CPM a été conçu comme une représentation des informations relatives au développement de produits et peut être vu comme une base pour le développement de la nouvelle génération d outils de CAO. Ce modèle fournit une représentation de produits manufacturiers (artifacts) contenant une large variété de concepts d ingénierie de produits au delà de la géométrie. Cette représentation inclut les notions de forme, fonction, comportement, matériaux, décompositions physiques et fonctionnelles, la mise en correspondance entre la fonction et la forme ainsi que plusieurs relations entre ces différents concepts. La première version du CPM a été publiée par le Professeur Steve Fenves en 2002 [52], le modèle luimême est représenté comme un diagramme de classe largement influencé par le schéma relationnel. Avec Steve Fenves et les autres collègues du NIST nous avons procédé à une révision du CPM pour proposer une nouvelle version (CPM2) dans laquelle le modèle a été enrichi par de nouvelles classes et formalisé différemment pour être représenté sous forme d un diagramme UML [51, 58]. Avec Nicolas Bouillon, dans le cadre de son stage de DEA, nous avons également proposé un schéma XML et une implantation Java pour le CPM2. La pluspart des produits manufacturiers qui nous entourent sont des assemblages de plusieurs composants. Ainsi, la capture et la représentation des données d assemblage font donc parti des éléments de base de la modélisation produits. Une extension du CPM, dite Open Assembly Model (OAM), pour la gestion de ces assemblages avait été proposée [173]. L OAM décrit les composants et leurs relations dans un assemblage. Il s appuie sur la norme d échange de données STEP [93, 95, 96] pour l extraction des informations géométriques, les autres informations relatives au fonctions, formes, comportement, ajustement, etc. sont créées (saisies) directement dans le modèle. Nous avons étudié l utilisation combinée du CPM et de l OAM pour modéliser et échanger le flux d informations générées pendant toutes les phases de la conception d un objet manufacturier. L exemple étudié a montré la capacité de ces deux modèles combinés à assurer une intégration parfaite des informations décrivant l objet [171, 172]. La section 5.2 résume le CPM2 et montre comment le combiner avec l OAM pour capturer les données de conception. Elle discute également une typologie des normes sur lesquelles les systèmes de gestion des phases du cycle de vie du produit, dits PLM, peuvent s appuyer. La section 5.3 résume notre travail sur l utilisation des ontologies pour l intégration de normes et montre comme exemple l intégration de deux normes dans la phase de fabrication d un produit. 5.2 Outils pour le PLM Le CPM : un modèle de base pour représenter les données de conception Le CPM est un diagramme de classe UML centré autour de la classe Artifact qui représente le produit, Figure 5.2. On constate quatre categories de classes : des classes abstraites (comme CoreProductModel, CommonCoreObject) qui fournissent la couche de base du modèle, des classes ordinaires qui re-

122 100 Chapitre 5. Modélisation de produits présentent des entités réelles (comme Artifact, Form, Feature), des classes décrivant des associations entre entités (CommonCoreRelationship) et les classes d utilité générale (Information, ProcessInformation, Rational) qui sont utilisées par les autres classes. CoreProductModel CommonCoreRelationship +ccrelationship CommonCoreObject 0..* associatedcco +requiredproperty +hasrequirement Trace Usage 0..* 0..* +constraint CoreProperty 0..* CoreEntity Requirement +decomposedinto 1 Specification Constraint 0..* Behavior 1..* +containedin 1 +entityassociation 0..* 1 +constrainedproperty +associatedentity 0..* +hasbehavior +BehaviorOfartifact +satisfies 1 1..* +specifies EntityAssociation 0..* +featureofartifact 1 Artifact Feature +hasfeature +formofartifact subartifactof Port functionoffeature +functionofartifact * +subartifacts +formoffeature +issourceof +isdestinationof Geometry +hasform +hasfunction +hasoutputflow +featurehasform +featurehasfunction +hasinputflow {or} {or} 0..* 0..* 0..* 0..* 0..* 0..* Material Form Function Flow 1..* +hasgeometry 1..* 1 +hasmaterial +materialofform 1 TransferFunction 0..* +inputflow 1 +sourceof 1 0..* +ouputflow +geometryofform +destinationof Figure 5.2 : Diagramme de classes du CPM2 L élément fondamental qui fait du CPM2 un support pour les applications orientées PLM est le fait que la description d un produit (un artifact) est structurée autour des trois concepts clefs suivants : Fonction représente ce que l artifact est supposé faire (i.e. le comportement souhaité). Forme représente la solution (un modèle CAO) trouvée pour le problème spécifié par la fonction. Dans le CPM2, les caractéristiques physiques d un artifact sont représentées en terme de sa géométrie sous forme d un modèle CAO classique.

123 5.2. Outils pour le PLM 101 Comportement représente comment l artifact accomplit sa fonction. Ce comportement observé est souvent évalué et analysé pour vérifier que l artifact assure bien sa fonction. A titre d exemples je présenterai, dans le paragraphe suivant, les classes Artifact, Feature, Specification et Requirement avant de montrer comment utiliser le CPM2 pour modéliser les informations de conception d un objet manufacturier avec une illustration en utilisant le langage XML et ses schémas comme moyens de description. Artifact est la classe principale du CPM2. Elle représente une entité distincte dans un produit, que ce soit un composant, une partie, un sous-assemblage ou un assemblage. Toutes ces entités peuvent être représentées et interconnectées à travers les liens sous-artifact et sous-artifact-de modélisés par une relation réflexive sur la classe Artifact (relation ayant les rôles subartifacts/subartifactof ). Une forme caractéristique (la classe Feature) est une partie de la forme physique d un artifact, destinée à assurer une fonction particulière. Selon sa fonction une forme caractéristique est dite de conception, d analyse, de fabrication, etc. Une spécification (la classe Specification) est une description dérivée des besoins clients et/ou des besoins d ingénierie, elle représente l ensemble des données pertinentes pour la conception d un artifact et incorpore les besoins spécifiques que la fonction, la forme, la géométrie et les matériaux d un artifact doivent satisfaire. Un besoin (la classe Requirement) est un élément particulier de la spécification d un artifact qui détermine un des aspects de sa fonction, de sa forme, de sa géométrie ou de ces matériaux. Implantation XML du CPM2 Plusieurs publications récentes ont montré le rôle que XML peut jouer dans une représentation sémantique des données de produits. Lubell et al.. [113] considèrent STEP, XML et UML comme trois technologies très complémentaires pour représenter et échanger les données de produits. Dans [140], Rezayat présente les bases d un système de gestion de données de produits et discute pourquoi XML doit être la base sur laquelle le système s appuie. Mervyn et al.. présentent une approche pour le développement d applications distribuées pour la capture et la gestion des données lors de la conception et la fabrication de produits où un schéma XML a été conçu pour contenir les données de produits dans un format compressé afin d assurer une meilleure portabilité des données [120]. Un ensemble de vocabulaire XML pour déployer les données de produits sur Internet a également été proposé par W.C. Burkett dans [21]. En vue de l importance d XML pour les applications de modélisation produits, nous avons procédé à une implantation du CPM2 en XML schéma [58, 51]. La Figure 5.3 montre le type complexe correspondant à la classe Artifact du CPM2. Le type listofxxx représente un ensemble de chaînes de caractères. (e.g., dans artifact, l élément hasfeature est un ensemble de chaînes de caractères. Chaque chaîne de caractère correspond à l élément name de l une des formes caractéristiques de l artifact). Un exemple de contraintes d intégrité est donné par la Figure 5.4. Exemple : Représentation des données d un système d engrenage planétaire avec le CPM2 L exemple du système d engrenage planétaire considéré ici a été présenté en détail dans [173]. Il a été utilisé pour illustrer la représentation des artifacts et leurs relations d assemblage à l aide de l OAM [173, 174]. Ici j utilise cet exemple pour montrer comment le CPM2 représente les informations de

124 102 Chapitre 5. Modélisation de produits <xsd:complextype name="artifact"> <xsd:complexcontent> <xsd:extension base="coreentity"> <xsd:sequence> <xsd:element name="hasbehavior" type="listofbehaviors" minoccurs="0"/> <xsd:element name="hasfunction" type="listoffunctions" minoccurs="0"/> <xsd:element name="hasform" type="listofforms" minoccurs="0"/> <xsd:element name="satisfies" type="xsd:string" minoccurs="1"/> <xsd:element name="hasfeature" type="listoffeatures" minoccurs="0"/> <xsd:element name="subartifacts" type="listofartifacts" minoccurs="0"/> <xsd:element name="subartifactof" type="xsd:string" minoccurs="0"/> <xsd:element name="hasinputflow" type="listofflows" minoccurs="0"/> <xsd:element name="hasoutputflow" type="listofflows" minoccurs="0"/> </xsd:sequence> </xsd:extension> </xsd:complexcontent> </xsd:complextype>. Figure 5.3 : Le type complexe Artifact du schéma XML du CPM2 <xsd:key name="pkspec"> <xsd:selector xpath="cpm:specification"/> <xsd:field xpath="cpm:name"/> </xsd:key> <!-- Elements that shall reference a specification name --> <xsd:keyref name="specref" refer="pkspec"> <xsd:selector xpath="cpm:artifact"/> <xsd:field xpath="cpm:satisfies"/> </xsd:keyref> <xsd:keyref name="spec1fref" refer="pkspec"> <xsd:selector xpath="cpm:requirement"/> <xsd:field xpath="cpm:containedin"/> </xsd:keyref> Figure 5.4 : Exemple de contraintes de consistance dans le schéma XML correspondant au CPM2

125 5.2. Outils pour le PLM 103 conception relatives à un produit et nous ne nous sommes intéressés qu aux données importantes du point de vue conception. Planetary Gear 8 Screws Output housing Input Housing Ring Gear Sun Gear Planet Gear Carrier Figure 5.5 : Le système d engrenage planétaire La Figure 5.5 montre les composants du système d engrenage planétaire. Ce système est composé des 13 sous-artifacts qui sont indiqués en bas de la figure. Les informations qui concernent la fonction, la forme, le comportement et les spécifications de ces sous-artifacts ne sont pas représentées dans ce document [51]. La Figure 5.6 montre l élément XML qui décrit le système d engrenage planétaire, de la Figure 5.5, comme un artifact. On observe les sous-éléments suivants : information : Une brève documentation sur le système représenté. behaviors : La liste des éléments qui décrivent le comportement su système. functions, forms, features : Trois listes dont les éléments donnent les noms des fonctions, des formes, et des formes caractéristiques du système. satisfies : Indique le nom de l élément specification que l artifact doit satisfaire. Dans l exemple complet présenté dans [51], cette spécification est aussi décomposée en une liste de besoins en terme de forme, de vitesse d entrée, vitesse de sortie, etc. subartifacts : La liste des noms des sous-artifacts qui composent l artifact principal (le système d engrenage planétaire) : planetgearcarrier, sungear, ringgear, inputhousing, outputhousing et screw1,...,screw8. Les Figures 5.7 et 5.8 montrent respectivement les définitions des éléments behavior et function de l artifact précédent à travers les éléments pgsbehavior et pgsfunction. Le contenu des sous-éléments artifcat et functionofartifact des éléments behavior et function sont les noms des artifacts auxquels ces derniers appartiennent. Comme ce contenu est le même pour les deux sous-éléments on comprend que les éléments behavior et function font partie d un même élément artifact, il s agit de l artifact principal qui décrit le système d engrenage planétaire.

126 104 Chapitre 5. Modélisation de produits <artifact> <name>planetarygearsystem</name> <information> <description> The PlanetaryGearSystem for changing speed rotation </description> <documentation> This is an assembly of 13 different subartifacts and subassemblies </documentation> </information> <behaviors> <thebehavior name="pgsbehavior"/> </behaviors> <functions> <thefunction name="changespeedofrotation"/> </functions> <forms> <theform name="cylindricalform"/> </forms> <satisfies>pgsspecification</satisfies> <features> <thefeature name="fasteningholes"/> <thefeature name="outputshafthole"/> </features> <subartifacts> <theartifact name = "planetgearcarrier"/> <theartifact name = "sungear"/> <theartifact name = "ringgear"/> <theartifact name = "inputhousing"/> <theartifact name = "outputhousing"/> <theartifact name = "screw1"/>... <theartifact name = "screw8"/> </subartifacts> </artifact> Figure 5.6 : L élément Artifact représentant le système d engrenage planétaire <behavior> <name>pgsbehavior</name> <information> <description>the behavior of the planetary gear system after assembly analysis and validation </description> <properties> <property name="speedratio">3.0:1</property> <property name="torqueout">6.78 N.m</property> </properties> </information> <artifact>planetarygearsystem</artifact> </behavior> Figure 5.7 : L élément Behavior associé au système d engrenage planétaire

127 5.2. Outils pour le PLM 105 <function> <name>changespeedofrotation</name> <information> <description>the main function of theplanetarygearsystem. It provides adequate and variable speed for all possible operations </description> <properties> <property name="input">rotational energy</property> <property name="output">rotational energy</property> <property name="speedin">1800rpm</property> <property name="speedout">tbd</property> <property name="torquein">2.26 N.m</property> <property name="torqueout">tbd</property> </properties> </information> <functionofartifact>planetarygearsystem</functionofartifact> </function> Figure 5.8 : L élément Function associé au système d engrenage planétaire L OAM : une extension du CPM pour représenter les données d assemblage L OAM est un modèle UML défini comme une extension du CPM pour représenter les données d assemblage et pour faciliter leurs échanges. Le schéma principal de ce modèle est montré sur la Figure 5.9. Le schéma intègre des informations sur les relations d assemblage, à travers la classe AssemblyAssociation, et la structure des composants à travers les relations part-of. Un Assembly est une composition de plusieurs sous-assemblages ou parties (Part). La classe Part représente un composant non decomposable. L AssemblyAssociation est une agrégation d une ou plusieurs ArtifactAssociation. De cette classe héritent les classes PositionOrientation, RelativeMotion et Connection. Une autre classe clef de l OAM est la classe OAMFeature qui décrit une forme caractéristique participant à une association d assemblage à travers la classe AssemblyFeatureAssociation. Les contraintes d assemblage et les ajustements sont gérés respectivement par les classes ParametricAssemblyConstraint et Tolerance. Les mécanismes de mouvement sont représentés par la classe KinematicPair. Chacune de ces classes possède une ou plusieurs classes descendantes plus spécialisées. L OAM est assez large pour être couvert par ces deux paragraphes, pour de plus amples précisions sur le modèle, le lecteur peut se reporter à [173, 174]. Dans [171, 172], nous avons montré comment le CPM et l OAM peuvent être utilisés conjointement pour capturer les informations de conception, nous avons également proposé une mise à jour de l OAM en rajoutant la notion d usage de l UML2 [127] au modèle. En effet nous avons constaté que le modèle représente de façon redondante les specifications des sous-assemblages, des parties et des associations d artifacts utilisés plusieurs fois. Cette redondance peut générer une incohérence si les données correspondant à un même élément utilisé plusieurs fois ne sont pas les mêmes. Nous avons montré l apport de cette mise à jour à travers l exemple des Figures 5.10, 5.11 et Les éléments de la Figure 5.10 composent un assemblage qui fait partie du système d engrenage planétaire qui a servi à expliquer l OAM dans [173]. Cet assemblage est composé d un sous-assemblage, dit porteur-planétaire (planet-carrier), et de trois autres parties, dits engrenage planétaires (planet gears). Tout d abord les trois goupilles (planet gear pins) sont assemblées avec le l arbre de sortie

128 106 Chapitre 5. Modélisation de produits Artifact (from CoreProductModel) Connector DesignRationale (from Rationale) Assembly Part Feature (from CoreProductModel) EntityAssociation (from CoreProductModel) OAMFeature AssemblyAssociation Tolerance (from Tolerance) AssemblyFeature CompositeFeature ArtifactAssociation AssemblyFeature Association AssemblyFeatureAssoci ationrepresentation PositionOrientation Connection RelativeMotion ParametricAsse mblyconstraint KinematicPath FixedConnection MovableConnection IntermittentConnection KinematicPair Figure 5.9 : Diagramme de classes de l OAM Planet Gear Planet Gear Pin Output Shaft Figure 5.10 : L assemblage planet-gear-carrier.

129 5.2. Outils pour le PLM 107 (output shaft) pour former le sous-assemblage planet-carrier. Ensuite, le bout de chaque planet gear pin est assemblé avec un planet gear pour former l assemblage dit planet-gear-carrier. outputshaft:artifact fc1:artifactassociation fc2:artifactassociation fc3:artifactassociation pin1:artifact pin2:artifact pin3:artifact mc1:artifactassociation mc2:artifactassociation mc3:artifactassociation gear1:artifact gear2:artifact gear3:artifact Figure 5.11 : Diagramme d instances pour l assemblage planet-gear-carrier. La Figure 5.11 montre le diagramme UML d instances pour l assemblage complet au niveau des associations entre artifacts. La décomposition de ces associations en AssemblyFeatureAssociation et AssemblyFeatureAssociationRepresentation n est pas montrée dans ce diagramme. Dans cet assemblage, les trois planet gear pins sont supposés être identiques, mais quand on observe la Figure 5.11 rien nous ne indique que nous utilisons trois éléments identiques i.e. ayant les mêmes valeurs d attributs. Il n y a aucun moyen d être sûr que ces trois éléments ont la même longueur, le même rayon et sont fait d un même matériau. La même constatation peut être faite pour les trois planet gears qui sont supposés identiques, mais le diagramme d instances ne peut pas montrer cela. L utilisation de la notion d usage résout ce problème. Nous utilisons un artifact générique "pin" réutilisable pour les pins. Dans l assemblage planet-gear-carrier, cet artifact générique joue trois rôles différents pin1, pin2 et pin3 représentés comme trois instances de la classe ArtifactUsage. Ceci implique que les trois pins sont copies d un même artifact réutilisable. De façon similaire un seul artifact générique "gear" joue trois différents rôles : gear1, gear2 et gear3 représentés comme trois instances de la classe ArtifactAssociationUsage pour associer les couples gear-pin Une typologie de normes pour le cycle de vie du produit Dans une récente étude, nous avons analysé l état actuel des technologies de traitement de l information et les différentes normes existantes pour montrer le soutien que ces technologies peuvent apporter à la modélisation du cycle de vie du produit [50, 49]. Cette étude nous a permis d identifier un ensemble de normes et d analyser comment les accommoder pour soutenir le PLM et assurer une meilleure gestion des données et des connaissances relatives aux différentes phases du cycle de vie du produit. Pour mettre en place une application PLM, nous avons besoin de passer de l échange de données produit à l échange des informations produit et éventuellement à l échange des connaissances produit. Dans un futur proche, les différents acteurs impliqués dans la fabrication d un produit auront besoin d échanger, sur le Web, pas seulement des données de conception du produit, mais aussi les connaissances relatives à leurs processus de fabrication. Pour cela nous avons besoin d assurer à la fois une

130 108 Chapitre 5. Modélisation de produits uses uses pin2: ArtifactAssociation uses pin:artifact associates uses uses uses pin1:artifactusage pin2:artifactusage pin3:artifactusage associates gearpin1: ArtifactAssociationUsage associates used_in used_in used_in gearpin3: ArtifactAssociationUsage gearpin2: ArtifactAssociationUsage used_in used_in PlanetGearCarrier: Assembly used_in used_in used_in used_in associates associates gear1:artifactusage Gear2:ArtifactUsage Gear3:ArtifactUsage associates uses uses uses gear:artifact Figure 5.12 : Diagramme d instances pour l assemblage planet-gear-carrier avec la notion d usage. interopérabilité syntaxique et sémantique entre les divers systèmes utilisés, ceci ne peut être fait qu à l aide d un ensemble cohérent de normes. Nous avons identifié cet ensemble et nous avons classé les normes pertinentes pour le PLM en plusieurs catégories. Normes de contenu Ces normes décrivent un type particulier de données ; l exemple parfait est la norme STEP qui décrit la structure, la géométrie et les informations concernant les différentes parties d un produit [93, 95, 96, 138]. Les modèles de données représentant les concepts de fonction, assemblage, comportement, etc. sont fondamentaux pour capturer le développement et l évolution d un produit. Les efforts du NIST ont abouti à la définition du CPM, un modèle générique qui contient les éléments fondamentaux pour représenter tout produit, et de l OAM, qui est une extension du CPM pour gérer les données d assemblage [52, 51, 173, 174]. Ces deux modèles peuvent servir de base pour des nouvelles normes de description de contenu. PSL [124] est le moyen pour décrire les processus de fabrication. PSL se base sur une logique du premier ordre pour faire cette description. SysML est un autre effort conduit par OMG (Object Management Group) pour l extension de l UML vers la représentation des données et des systèmes d ingénierie [17]. SysML re-utilise un sous-ensemble de diagrammes UML avec de nouveaux diagrammes et schémas appropriés pour les systèmes d ingénierie.

131 5.2. Outils pour le PLM 109 Le groupe de travail ManTIS Task Force de l OMG aborde la conception, la planification et la fabrication de produits, ainsi que les systèmes industriels utilisés dans la fabrication et le contrôle de processus [167, 179]. Normes de modélisation d informations Les principales normes de modélisation des informations sont EXPRESS, UML, RDF et OWL. Plusieurs autres normes, issues de l XML, ont été proposées pour subvenir aux besoins des industriels, des organismes de normalisation et des développeurs de logiciels : ebxml, BizTalk, cxml, CML, BSML, MathML, MatML, etc. Normes pour les ontologies Le terme ontologie a longuement été utilisé par la communauté d intelligence artificielle et a été défini de plusieurs façons [164]. De nos jours, l usage des ontologies a été étendu à des domaines très variés pour apporter plus de sémantiques aux concepts et leurs relations. Plusieurs languages de modélisation riches en sémantique, basé sur différentes formes de logique, ont été proposés par le W3C autour du web sémantique. KIF, DAML, OIL, RDF, OWL sont des exemples de langages qui permettent de raisonner sur les informations représentées et donc de construire des ontologies pour les domaines considérés [189]. Normes pour l échange d informations Plusieurs efforts ont été conduits pour définir des règles d échange d informations. EDI, XML, SOAP sont des exemples de normes d échange de données. Des versions spécialisées de ces normes ont également été proposées : STEPml est une spécification XML basée sur le modèle de contenu de la norme STEP [96, 169, 138]. Le PDML (Product Data Markup Language), PLM XML, BPML et ebxml sont d autres exemples de normes d échange pour des domaines variés [183]. Normes pour la visualisation Les vendeurs d outils de CAO ont tous proposé des interfaces graphiques conviviales pour la manipulation des modèles 3D. OpenGL est considéré comme le standard de facto pour la production de graphiques et d images couleurs de haute qualité. VRML et son successeur X3D sont deux normes Internet, inspirées de XML, pour le rendu des graphiques 3D. U3D, JTOpen, JTFormat sont d autres exemples d outils visant à simplifier la transformation des données 3D complexes dans un format facile à compresser, facile à échanger et à visualiser [182]. Plusieurs autres outils (les réseaux de Petri, le diagramme Entités Relations, les diagrammes SADT, les diagrammes PERT, etc.) peuvent être utilisés pour organiser et faciliter la visualisation des autres données de produits.

132 110 Chapitre 5. Modélisation de produits Comment faire fonctionner toutes ces normes ensemble? Malgré les nombreux efforts de normalisation et les diverses normes résultantes de ces efforts, il n est pas encore clair comment toutes ces normes peuvent collaborer pour jouer un role essentiel pour la mise en place des systèmes de PLM. Product Engineering CAD/CAE/CAM Users STEPml, PDML, PDX Web Services ProcessEngineering CAPP/ MES ecommerce Internet Auctions SemanticLayer (OWL/RDF/XML) DAML Enterpriseoperation ERP/SCM PSL BizTalk,ebXML,BPML, cxml... RosattaNet, SCOR Interface Layer (XML/RDF/Java) Content Layer Agents XrML, ORDL, DRM, IPR Content Management Security Digital RightsManagement Visualization JX3D, U3D, JTOpen Design Database JDBC/ODBC/XSQL Databaseserver ArchivalDesign Repository PRODUCT USE Future MANUFACTURING DESIGN EVALUATION DISPOSAL DETAILED DESIGN IDEATION CONCEPTUAL DESIGN DESIGN ORGANIZATION Current MANUFACTURING PRODUCT USE DISPOSAL IDEATION DESIGN ORGANIZATION DESIGN EVALUATION DETAILED DESIGN CONCEPTUAL DESIGN Figure 5.13 : Les relations entre les normes et le PLM La Figure 5.13 montrent comment toutes les normes évoquées dans les sections précédentes peuvent s assemble pour supporter les systèmes de PLM. Faire converger plusieurs normes vers un même objectif n est pas une tache facile et ne peut être achevée que dans un environnement ouvert impliquant tous les acteurs (concepteurs, développeurs, vendeurs, industriels, utilisateurs, etc.). 5.3 Intégration sémantique de normes Dans le domaine de la fabrication, le rôle des normes est de définir les concepts, relations et données définissant les ressources, les équipements et les procédures manufacturiers. Ces normes sont supposées être des références précises et claires que les opérateurs doivent consulter pour éviter toute confusion. Cependant, le manque de sémantique associée aux informations définies par ces normes

133 5.3. Intégration sémantique de normes 111 pousse les opérateurs à recourir le plus souvent à leurs connaissances implicites et à leurs expériences personnelles. Dans le cadre d un vaste programme visant à mettre en place les bases d un système de fabrication intelligent (smart machining system), nous avons commencé à regarder l intégration de deux normes très utiles dans le domaine de fabrication par usinage ; Il s agit de l ISO 5608 [94], pour les codes des porte-outils, et l ISO 1832 pour les codes des plaquettes de coupe [92]. Ces deux normes sont utilisées pour représenter les propriétés des outils de coupe par tournage, comme la longueur des outils, la longueur de l arête de coupe, les tolérances, etc. La relation de montage entre une plaquette et un porte-outil ne peut être vérifiée que si certaines parties des deux codes correspondent. Nous avons commencé par définir une ontologie, sous la forme d un ensemble de règles en logique du premier ordre (implanté en Prolog), visant à apporter une représentation plus sémantique aux deux normes considérées. Un premier article décrivant la démarche utilisée a été soumis au Journal of Computing and Information Science in Engineering [41]. Un outil de coupe est l assemblage d une plaquette de coupe et d un porte-outil qui sont les deux composantes principales à sélectionner et à assembler pour créer un outil et ainsi assurer une coupe conforme à la géométrie souhaitée. La relation de montage sert à vérifier si une plaquette peut être montée sur un porte-outil. Un porte-outil peut porter plusieurs type de plaquettes. L analyse des codes correspondant à ces composants permet de vérifier cette relation. Dans le contexte de ce travail, l intégration signifie comment combiner les informations codées dans les deux normes et les utiliser pour faciliter la prise de décision (e.g. la sélection d un porte-outil). Les objectifs de ce travail, ne se limitent donc pas à la vérification de codes, et peuvent être résumés en : Etant donné un code, vérifier sa conformité par rapport à la norme ISO 5608 ou à la norme ISO 1832, le décoder et vérifier la sémantique qui se cache derrière les différents symboles du code. Représenter la relation de montage et répondre à toutes les requêtes la concernant. Etant donné une gamme d usinage, décrite en PSL (Process Specification Language, [124]), faire une sélection automatique des outils de coupe (plaquette et porte-outil) qui peuvent être utilisés pour le réaliser. La Figure 5.14 montre des exemples de codes et indique la sémantique qui se cache derrière chaque symbole du code (e.g. le symbole 1 représente la forme de la plaquette). La plaquette et le porte-outil codés dans la figure peuvent être montés ensemble car les symboles C, N, 16 et R correspondent dans les deux codes. Un ensemble de propositions logiques a été élaboré pour définir les codes et les concepts fondamentaux du domaine tel que le porte-outil, la plaquette de coupe, l arête de coupe, l angle de direction d arête (tcea - tool cutting edge angle), l angle inclus (ia - included angle), l angle de coupe secondaire (tmcea - tool minor cutting edge angle). L ontologie proposée est structurée en 3 modules : 1. Module 1 : Contient les propositions concernant les concepts et les relations fondamentaux du domaine d outils de coupe 2. Module 2 : Une représentation formelle de la sémantique de chaque symbole du code. Dans notre réalisation nous nous sommes limités à la description de la forme de la plaquette (1 er symbole du code) et du style du porte-outil (3 e symbole du code), mais la démarche s étend facilement aux autres symboles. 3. Module 3 : L ensemble de règles et de contraintes utilisées pour sélectionner la plaquette et le porte-outil adéquats en fonction de l opération de coupe à réaliser.

134 112 Chapitre 5. Modélisation de produits Figure 5.14 : Trois exemples de codes. Haut : code, conforme à l ISO 1832, pour une plaquette. Milieu : code, conforme à l ISO 5608, pour un porte-outil. Bas : Code de porte-outil donné par un fournisseur, la première partie du code est conforme à la norme, mais la deuxième partie est propre à ce fournisseur. En s appuyant sur cette structure, les requêtes d integration et de conformité peuvent être spécifiées. Le reste de cette section présente quelques exemples de propositions et montre comment répondre aux requêtes de montage et/ou de conformité. De plus amples détails sur chaque module peuvent être consultés dans [41]. La Figure 5.15 montre quelques axiomes pour décrire les angles définis par les outils de coupe. L axiome (1) spécifie qu un outil de coupe est composé d une plaquette et d un porte-outil. Les prédicats insert et toolholder utilisés dans cet axiome sont considérés comme primitives de base de notre implantation actuelle et seront définis dans les développements futurs de ce travail. Pour un outil de coupe, trois angles importants doivent être considérés : l angle de coupe représenté par le prédicat tcea, l angle inclus représenté par le prédicat ia et l angle de coupe secondaire représenté par le prédicat tmcea. L axiome (2) définit tcea comme étant l angle inclus entre l arête de coupe et l axe qui indique où placer la matière à couper (feed direction). L axiome (3) définit ia comme étant l angle entre l arête de coupe et l arête secondaire de l outil. L axiome (4) définit tmcea comme étant l angle entre l arête secondaire de l outil et l axe qui indique où placer la matière à couper. Comme pour les prédicats insert et toolholder, les prédicats cuttingedge, feeddirection et AngleBetween sont considérés comme primitives de base de notre implantation actuelle. La Figure 5.16 montre les axiomes qui décrivent la forme d une plaquette dans un code. L axiome (5) établit le lien entre le premier symbole du code désigné par le prédicat ISO , et la forme d une plaquette désignée par le prédicat insertshape. L axiome (6) présente la forme de plaquette comme une propriété de la plaquette et indique que cette forme doit inclure des connaissances sur le nombre

135 5.3. Intégration sémantique de normes 113 (forall (?x?y) (implies (turningtool?x?y ) ( and (toolholder?x) (insert?y ) (1) (mounting?x?y))) ) (forall (?x?y?w ) (iff (tcea?x?y?w) (exists (?v?z) (and (turningtool?x?y) (cuttingedge?x?y?z) (2) (feeddirection?x?y?v) (anglebetween?z?v?w)))) ) (forall (?x?y?w) (iff (ia?x?y?w) (exists?z?v) (and (turningtool?x?y) (cuttingedge?x?y?z) (3) (minorcuttingedge?x?y?v) (anglebetween?v?z?w)))) ) (forall (?x?v?y) (iff (tmcea?x?y?v) (exists (?w?z) (and (turningtool?x?y ) (minorcuttingedge?x?y?w) (4) (feeddirection?x?y?z) (anglebetween?z?w?v)))) ) Figure 5.15 : Axiomes de base pour décrire les angles des outils de coupe. (forall (?x?y) (implies (ISO ?x?y) (and (insertshape?x?y) (5) (insert?x))) ) (forall (?x?y) (implies (ISO ?x?y) (exists (?u?v?w) (and (numbercuttingedges?x?u) (6) (insert-ia?x?v) (descriptionshape?x?w)))) ) (forall (?x?y) (implies (ISO ?x?y) (or (and (Insert-ia?x 80)(InsertShape?x C)) (7) (and (Insert-ia?x 55)(InsertShape?x D)) (and (Insert-ia?x 75)(InsertShape?x E)) (and (Insert-ia?x 120)(InsertShape?x H)))) ) Figure 5.16 : Définition des formes des plaquettes.

136 114 Chapitre 5. Modélisation de produits d arêtes de coupe, sur l angle inclus et sur la description de la forme. L axiome (7) précise les valeurs que peut prendre l angle inclus, il sera utilisé dans les tests de conformité. (forall (?x?y) (implies (ISO ?x?y) (and (toolstyle?x?y) (8) (toolholder?x))) ) (forall (?w) (implies (toolholder?w) (exists (?x?y?z) (and (toolholder-tcea?w?x) (shanktype?w?y) (9) (cuttingprocess?w?z) (toolstyle?w?x?y?z)))) ) (forall (?x?y) (implies (ISO ?x?y) (or (requires sidecutting?x) (requires endcutting?x) (10) (and (requires sidecutting?x) (requires endcutting?x)))) ) Figure 5.17 : Définition des styles des porte-outils. La Figure 5.17 montre les axiomes qui décrivent le style dans le code d un porte-outil. La Figure 5.18 donne les axiomes qui représentent la relation de montage. L axiome (13) spécifie la règle à respecter entre les trois angles de l outil tmcea, ia et tcea. Cette règle joue un rôle central dans les réponses aux requêtes. L axiome (14) spécifie la relation entre l angle inclus de la plaquette (insert-ia) et l angle inclus de l outil de coupe (ia). L axiome (15) spécifie la relation entre toolholder-tcea du porte-outil et tcea de la plaquette. Des exemples de requêtes sont donnés par la Figure La requête (r1) permet de déterminer s il existe des porte-outils et des plaquettes qui peuvent être montés ensemble pour composer un outil ayant un angle de coupe supérieur à 110 et pouvant couper une pièce avec un angle minimal de 90. Les requêtes (r2) et (r3) sont deux exemples de requêtes qu on peut utiliser pour verifier la conformité aux deux normes. (r2) vérifie si un angle inclus ia de 80 est conforme à la norme ISO 1832, et retourne la forme de la plaquette qui satisfait la requête. (r3) retourne les porte-outils qui peuvent réaliser une opération de charcutage et dont le style est D. Plus récemment, avec l aide de ma collègue Nadine Cullot, de Laurent Deshayes et de quatre de nos étudiants de DESS, nous avons développé une application XML, avec interface Java, pour la gestion des codes des plaquettes et des porte-outils. Des schémas XML ont été mis en place pour les deux normes et pour les deux types de codes, et toutes les informations contenues dans ces normes ont été converties en XML. Cette application servira pour faire des comparaisons avec l approche basée sur les ontologies.

137 5.3. Intégration sémantique de normes 115 (forall (?x?z) (iff (mounting?x?z) (forall (?v?w?y) (implies (and (tcea?x?v) (13) (ia?z?w) (=?v (180 - w - y)) (tmcea?x?z?v)))) ) (forall (?x?y?u?v) (implies (and (turningtool?x?y) (insert-ia?y?u) (14) (ia?x?y?v)) (=?v?w) ) (forall (?x?y?u?v) (implies (and (turningtool?x?y) (toolholder-tcea?x?u) (tcea?x?y?v)) (=?u?v)) ) Figure 5.18 : Les axiomes de la relation de montage. (exists (?x?y?z) (and (toolholder?x) (insert?y) (feature?z) (mouting?x?y ) (minanglevalue?z 90) (tcea?x?t) (< t 110)) ) (exists (?x?y ) (and (insert?x) (insert-ia?x 82) (insertshape?x?y)) ) (exists (?x ) (and (toolholder?x) (toolstyle?x D) (requires sidecutting?x)) ) (r1) (r2) (r3) Figure 5.19 : Exemples de requêtes.

138 116 Chapitre 5. Modélisation de produits 5.4 Conclusion Pour atteindre l objectif d une gestion intégrée, complète et performante de toutes les données du cycle de vie du produit les applications de PLM doivent s appuyer sur des outils et des modèles de données capables de capturer, de représenter ces données et de les échanger entre les différents acteurs intervenants dans toutes les phases du cycle de vie du produit. De ce fait, la gestion des données du produit est un moyen fondamental dans toute activité de collaboration autour du produit. Les modèles de gestion actuels sont, dans la majorité, structurés et orientés pour capturer ces données dans la phase de conception (création et échange des modèles CAO) et ne peuvent être utilisés dans les phases préliminaires de l élaboration du produit. Les deux modèles de données développés au NIST et présentés dans ce chapitre constituent une première base pour la définition des modèles de données adéquats pour soutenir le PLM. Le CPM fournit un modèle de base pour la gestion produit, ce modèle est simple, générique, non-propriétaire, indépendant de tout processus de développement de produit, non lié à un domaine particulier, facile à étendre vers des domaines spécifiques et capable de capturer une large part du flux de données partagées tout le long du cycle de vie du produit. L OAM peut représenter la fonction, la forme et le comportement des assemblages, ainsi que les relations hiérarchiques entre les différents composants. Il fournit également un moyen pour capturer les ajustements et les mécanismes de mouvement. L intégration, la fusion et la vérification des données créées ou modifiées pendant les différentes phases du cycle de vie est aussi une fonctionnalité importante dans un système de PLM. A travers l ontologie que nous avons développée pour l intégration des normes ISO 5608 et 1832, nous avons montré comment une approche formelle basée sur la logique du premier ordre peut aider à combiner des données en provenance de plusieurs normes et à valider ces données par rapport aux règles et contraintes contenues dans les normes. Les ontologies permettent de définir, sans ambiguïté, les règles et les concepts relatifs à un domaine, ce qui permet d éviter tous les problèmes et les incohérences qui peuvent surgir suite à des conflits sémantiques ou à des erreurs d interprétation. L utilisation des ontologies dans les applications de PLM ne peut que renforcer les capacités de ces applications à intégrer et à assurer la validité des données de produit. Les normes sont un autre élément fondamental auquel les systèmes de PLM sont étroitement liés. Des fonctionnalités comme la création, la modélisation, la visualisation et l échange des données produit ne peuvent être assurées sans l aide des normes comme UML, STEP, XML, PSL, etc. La typologie des normes pour le PLM présentée dans ce chapitre n est qu un premier pas vers l identification d un noyau de normes dont les applications PLM ne peuvent se séparer.

139 Chapitre 6 Liste des travaux et encadrements Ce chapitre donne la liste de mes publications, présente les encadrements de thèses et de stages de DEA auxquels j ai participé, et résume mes collaborations internationales. 6.1 Liste des publications Thèse S. Foufou. Contribution à l algorithmique des intersections de surfaces en algèbre des volumes, Thèse de doctorat, LIGIM, Université Claude Bernard Lyon 1, (Juillet 1997). Directeur de thèse : Professeur Jean Marc Brun. Publications dans des revues internationales 1. Y. Fougerolle, A. Grikob, S. Foufou, F. Truchetet, and M. A. Abidi. Boolean operations on supershapes using R-functions. IEEE Transaction on Visualization and Computer Graphics, To appear. 2. S. Eswaran, R. Sudarsan, S. Fenves, S. Foufou, and R. D. Sriram. Product lifecyle management : a chalange in supporting the product design and manufacturing in a networked economy. International Journal of Product Lifecycle Management, Inderscience Publishers, To appear. 3. R. Sudarsan, M. Baysal, U. Roy, S. Foufou, C. Bock, S. Eswaren, K. Lyons, and R. D. Sriram. Information models for product representation : Core and assembly models. International Journal of Product Development, Inderscience Publishers, To appear. 4. M. Roy, S. Foufou, and F. Truchetet. Mesh comparison using attribute deviation metric. International Journal of Image and Graphics, 4(1) : , S. Foufou and L. Garnier. Dupin cyclide blends between quadric surfaces for shape modeling. Computer Graphics Forum 117

140 118 Chapitre 6. Publications, encadrements [Special issue for EUROGRAPHICS 04, Grenoble, France, Aug Sept. 3, 2004], 23(3) : , S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. Deux algorithmes d intersection de surfaces de subdivision. Revue Internationale de CFAO et d informatique graphique, 18(2) : , M. Roy, F. Nicolier, S. Foufou, and F. Truchetet. Mesure de déviation d attributs pour la comparaison de maillages. Revue Internationale de CFAO et d informatique graphique, 17(3-4) : , L. Garnier, S. Foufou, and M. Neveu. Jointure G1-continue entre un cône et une sphère. Revue Internationale de CFAO et d informatique graphique, 17(3-4) : , Publications comme chapitres de livres édités 1. S. Foufou and L. Garnier. Implicit equations of supercyclides. In M. Neamtu and E.W. Saff, editors, Advances in Constructive Approximation [Proc. Book of the International Conference on Advances in Constructive Approximation, Nashville, TN, USA, May 2003], pages Nashboro Press, Nashville, TN, USA, S. Foufou, L. Garnier, and M. Neveu. Blending of surfaces of revolution and planes by Dupin cyclides. In M.L. Lucian and M. Neamtu, editors, Geometric Modeling and Computing [Proc. book of the 8th SIAM Conference on Geometric Design and Computing, Seattle, USA, Nov. 2003]. Nashboro Press, Nashville, TN, USA, Publications dans des conférences internationales avec comité de lecture 1. M. Roy, S. Foufou, A. Koschan, F. Truchetet, and M. Abidi. Multiresolution analysis for irregular meshes with appearance attributes. In Proceedings of IEEE ICIP, Genova, Italy, September To appear. 2. S. Foufou, L. Garnier, and M. Pratt. Conversion of Dupin cyclide patches into rational biquadratic Bézier form. In Proceedings of Mathematics of Surfaces XI International Conference, Lecture Notes in Computer Science, University of Loughborough, UK, September Springer. To appear. 3. S. Foufou, S. Fenves, C. Bock, R. Sudarsan, and R.D. Sriram. Semantic implementation of the CPM2 using XML. In Proceedings of the PLM 05 International Conference on Product Lifecycle Management, Lyon, France, July Inderscience Publishers. To appear. 4. S. Eswaran, R. Sudarsan, S. Fenves, S. Foufou, and R.D. Sriram. Challenges in supporting product design and manufacturing in a networked economy : A PLM perspective. In Proceedings of the PLM 05 International Conference on Product Lifecycle Management, Lyon, France, July Inderscience Publishers. To appear. 5. S. Foufou, D. Michelucci, and J.-P. Jurzak. Numerical decomposition of geometric constraints. In Proceedings de ACM Symposium on Solid and Physical Modeling, MIT, Cambridge, MA, USA, May ACM Press. To appear.

141 6.1. Liste des publications M. Roy, S. Foufou, and F. Truchetet. Denoising 3D models using soft thresholding. In Proceedings of SPIE Optics East Conference on Wavelet Applications in Industrial Processing, Philadelphia, USA, October M. Roy, S. Foufou, and F. Truchetet. Multiresolution analysis for irregular meshes with appearance attributes. In Proceedings of International Conference on Computer Vision and Graphics, Varsaw, Pologne, September X. F. Zha, S. Foufou, R. Sudarsan, and R. D. Sriram. Analysis and evaluation for STEP-based electro-mechanical assemblies : An integrated fuzzy ahp approach. In Proceedings of DETC ASME Design Engineering Technical Conference, Salt Lake City, Utah, USA, 28 Sep.-2 Oct L. Garnier and S. Foufou. 3D representation of liposomes using Dupin cyclides. In Proceedings of the 1st int l conference on Complex Systems, Intelligence and Modern Technology Applications, pages , Cherbourg, France, September D. Michelucci and S. Foufou. Using Cayley-Menger determinants for geometric constraint solving. In Proceedings de ACM Symposium on Solid Modeling and Applications, Genova, Italy, June ACM Press. 11. L. Garnier, S. Foufou, and D. Michelucci. Conversion of quadrics into rational biquadratic Bézier patches. In Proceedings of isicad : Constraint-based Approaches and Methods of Mathematical Modelling for Intelligent CAD/CAM/CAE systems : From Methods to Applications, Novosibirsk, Russia, June D. Michelucci and S. Foufou. Kernel functions give intrinsic formulations of geometric constraints. In Proceedings of isi- CAD : Constraint-based Approaches and Methods of Mathematical Modelling for Intelligent CAD/CAM/CAE systems : From Methods to Applications, Novosibirsk, Russia, June M. Roy, S. Foufou, A. Koschan, F. Truchetet, and M. Abidi. Multiresolution analysis for irregular meshes. In Proceedings of SPIE International Symposium on Photonics Technologies for Robotics, Automation, and Manufacturing (Photonics East), volume 5266, Providence, RI, USA, October S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. A graph based algorithm for intersection of subdivision surfaces. In Kenneth Tan Kumar, Gavrilova and L Ecuyer, editors, Lecture Notes in Computer Science 2669, Proceedings of the ICCSA 03, pages , Montreal, Canada, May Springer-Verlag. 15. L. Garnier, S. Foufou, and M. Neveu. From Dupin cyclides to scaled cyclides. In Journal of WSCG : Proceedings of the 11th International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision, volume 11, pages , Plzen, Czech Republic, February S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. Computing subdivision surface intersection. In Poster proceedings of the International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision, pages 73-76, Plzen, Czech Republic, February M. Roy, F. Nicolier, S. Foufou, F. Truchetet, A. Koschan, and M. Abidi. Assessment of mesh simplification algorithm quality. In Proceedings of SPIE Electronic Imaging, volume 4661, pages , San Jose, USA, January 2002.

142 120 Chapitre 6. Publications, encadrements 18. L. Garnier, S. Foufou, and M. Neveu. Jointure de deux quadriques par une surface à base de courbes Hermitiennes. In Proceedings of the 7th Maghrebian Conference on Computer Science, pages , Annaba, Algeria, May M. Roy, S. Foufou, and F. Truchetet. Generic attribute deviation metric for assessing mesh simplification algorithm quality. In Proceedings of IEEE International Conference on Image Processing (ICIP), pages , Rochester, USA, September A. Dipanda and S. Foufou. Improving Bspline approximations using genetic algorithms. In Proceedings of the 2nd Int l Conference IEEE ISSPIT02, pages , Marrakech, Morocco, December Publications dans des conférences et des rencontres nationales 1. D. Ménegaux, D. Michelucci, and S. Foufou. Modélisation de surfaces algébriques par contraintes géométriques. In Actes des 17 e journées AFIG, pages 23-32, Poitiers, France, November L. Garnier and S. Foufou. Détermination des équations implicites d une supercyclide. In Actes des journées GTMG, pages , Aix-en-Provence, France, March L. Garnier, S. Foufou, and M. Neveu. Conversion de cyclides de Dupin en carreaux de Bézier rationnels biquadriques. In Actes des 15 e journées AFIG, pages , Lyon, France, December L. Garnier, S. Foufou, and M. Neveu. Jointure entre un plan et un cylindre elliptique par des supercyclides. In Actes des journées GTMG, pages 16-25, Nantes, France, March S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. Deux algorithmes d intersection de surfaces de subdivision. In Actes des 15 e journées AFIG, pages , Lyon, France, December S. Lanquetin, S. Foufou, and M. Neveu. Intersection des surfaces de subdivision. In Actes des journées GTMG, pages 86-95, Nantes, France, March L. Garnier, M. Neveu, and S. Foufou. Jointure d un cône et d une sphère par une cyclide de Dupin. In Actes des 14 e journées AFIG, pages , Limoges, France, November M. Roy, F. Nicolier, S. Foufou, and F. Truchetet. Mesure de la qualité des algorithmes de simplification de maillages. In Actes des 14 e Journées AFIG, pages , Limoges, France, November Rapports de recherche 1. S. Eswaran, R. Sudarsan, S. Fenves, S. Foufou, and R. D. Sriram. Product lifecyle management support : a challenge in supporting the product design and manufacturing in a networked economy. Technical Report NISTIR 7211, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, 2005.

143 6.2. Encadrements de thèses S. Fenves, S. Foufou, C. Bock, N. Bouillon, R. Sudarsan, and R. D. Sriram. CPM2 : A revised core product model for representing design information. Technical Report NISTIR 7185, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, R. Sudarsan, M. Baysal, U. Roy, S. Foufou, C. Bock, S. Eswaren, K. Lyons, and R. D. Sriram. Information models for product representation : Core and assembly models. Technical Report NISTIR 7173, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, Articles soumis à des revues internationales 1. D. Michelucci and S. Foufou. Reliable tracing of strange attractors. Revue : International Journal of Computational Geometry and Applications. Date de soumission : 15 Mai S. Foufou and L. Garnier. Obtention of Implicit Equations of Supercyclides and Definition of Scaled Supercyclides. Revue : Machine, Vision and Graphics. Date de soumission : 30 Juin K.-E. Melkemi, M. Batouche, and S. Foufou. A MultiAgent System Approach for image Segmentation using Hybrid Genetic Algorithm- Extremal optimization Heuristics. Revue : Pattern Recognition Letters, Special Issue on Evolutionary Computer Vision and Image Understanding. Date de soumission : 30 Juin L. Deshayes, M. Gruninger, and S. Foufou. Standards Integration Using Ontologies. Revue : Journal of Computing and Information Science in Engineering. Date de soumission : 18 Février R. Sudarsan, Y. H. Han, S. Foufou, S. C. Feng, U. Roy, F. Wang, R. D. Sriram, and K. Lyons. A Model for Capturing Product Assembly Information. Revue : Journal of Computing and Information Science in Engineering. Date de soumission : 1 Février X. F. Zha and S. Foufou and R. Sudarsan and R.D. Sriram. Analysis and Evaluation for STEP-Based Electro-Mechanical Assemblies. Revue : Journal of Computing and Information Science in Engineering. Date de soumission : 13 Mai Encadrements de thèses J ai co-encadré avec les Professeurs Frédéric Truchetet et Marc Neveu deux thèses soutenues en décembre Actuellement je co-encadre trois autres thèses : une avec le Professeur Dominique Michelucci et deux avec le Professeur Frédéric Truchetet. Les détails de ces co-encadrements sont

144 122 Chapitre 6. Publications, encadrements donnés ci-après. Le conseil scientifique de l Université de Bourgogne a donné son accord pour les quatre premiers co-encadrements. 1. Michael Roy Titre : Comparaison et analyse multirésolution de maillages irréguliers avec attributs d apparence. Première inscription : Septembre Date de soutenance : 16 Décembre Directeur de thèse : Professeur Frédéric Truchetet. Type de financement : Allocation-Moniteur et bourse du ministère de l Education Nationale. Position actuelle : ATER à l IUT d Auxerre, candidat pour les postes de maître de conférences. 2. Lionel Garnier Titre : Utilisation des cyclides de Dupin pour la modélisation et la représentation d objets 3D. Première inscription : Septembre Date de soutenance : 10 Décembre Directeur de thèse : Professeur Marc Neveu. Type de financement : Sans financement. Position actuelle : Professeur certifie de mathématique à l école des applications militaires de l énergie atomique de Cherbourg, candidat pour les postes de maître de conférences 3. Yohan Fougerolle Titre : Utilisation des R-fonctions pour la reconstruction 3D. Première inscription : Septembre Date de soutenance : Décembre 2005 (prévue). Directeur de thèse : Professeur Frédéric Truchetet. Type de financement : Allocation de recherche accordée par le laboratoire IRIS, Université du Tennessee, Etats Unis. 4. David Ménegaux Titre : Modélisation de surfaces implicites et paramétriques en utilisant les contraintes géométriques Première inscription : Septembre Date de soutenance : Décembre 2006 (prévue). Directeur de thèse : Professeur Dominique Michelucci. Type de financement : Allocation-Moniteur et bourse du ministère de l Education Nationale. 5. Sophie Voisin Titre : Manipulation des masses de points 3D Première inscription : Septembre Date de soutenance : Fin 2007 (prévue). Directeur de thèse : Professeur Frédéric Truchetet Type de financement : Allocation de recherche accordée par le laboratoire IRIS, Université du Tennessee, Etats Unis. 6.3 Encadrements de stages de DEA 1. Reveau Donatien (DEA Informatique et Instrumentation de l Image, Dijon). Titre : Jointure entre deux demi-cônes à l aide des cyclides de Dupin. Période : Mars - Juin 2001.

145 6.4. Collaborations Internationales Yohan Fougerolle (DEA Informatique et Instrumentation de l Image, Dijon). Titre : Intersection des surfaces de subdivision. Période : Mars - Juin Jean Baptiste Etienney (DEA Informatique et Instrumentation de l Image, Dijon). Titre : Simulation des voies de déplacement d un véhicule pour une conduite automatique. Période : Mars - Septembre Stage effectué à la Division des systèmes intelligents au NIST, Gaithersburg, Etats-Unis en collaboration avec Elena Messina (elena.mesina@nist.gov). 4. Nicolas Bouillon (Elève en dernière année d ingénieur à Université de Technologie Belfort- Montbéliard et DEA d informatique et productique de l Université de Franche-comté, Besançon). Titre : XML et RDF pour la représentation de produits. Période : Février - Juin Wanjing Li (DEA Informatique et Instrumentation de l Image, Dijon). Titre : Fouille et comparaison de formes en CAO. Période : Mars - Juin Collaborations Internationales Collaboration avec l Institut National des Standards et de la Technologie (NIST), Maryland, Etats-Unis Je suis actuellement en délégation dans le laboratoire MEL du NIST pour un séjour d une durée totale de 20 mois. Je travaille dans la division d integration des systèmes de fabrication (Manufacturing Systems Integration Division-MSID) sur des problèmes liés a la modélisation de produits telles que la modélisation des assemblages [174, 193], la définition de modèles de données pour la capture et la gestion du cycle de vie d un produit manufacturier [172, 174], et l utilisation des ontologies pour l intégration de normes dans le domaine de la fabrication [41]. Collaboration avec Mike Pratt, Professeur Emérite de Rensselaer Polytechnic Institute, Troy, Newyork, Etats-Unis et Cranfield University, Angleterre Avec Lionel Garnier, nous avons développé le thème de l utilisation des cyclides de Dupin en modélisation géométrique en collaboration avec le Professeur Mike Pratt qui est l un des premiers chercheurs ayant abordé ce thème (il est auteur de plusieurs publications sur la théorie des cyclides de Dupin et des supercyclides). Nos différents échanges avec lui ont considérablement contribué à l avancement de nos travaux. Mike Pratt a visité notre laboratoire LE2i à deux reprises : en Mars 2003 pour animer un séminaire dans le cadre du PPF STIC et en Décembre 2004 en tant que rapporteur de la thèse de Lionel Garnier. En plus de l aide et des conseils très bénéfiques que Mike Pratt nous a apportés pendant la thèse de Lionel, cette collaboration a donné lieu à un article qui a été accepté pour publication dans une conférence internationale [62], ainsi qu à d autres possibilités de publications dans l avenir.

146 124 Chapitre 6. Publications, encadrements Collaboration avec le laboratoire IRIS, Université du Tennessee, Etats-Unis Les thèses de Michael Roy et Yohan Fougerolle ont fait l objet d une collaboration avec le laboratoire IRIS de l Université du Tennessee, Etats-Unis. Cette collaboration a été initiée par mon collègue le Professeur Frédéric Truchetet en 1999 et a permis de faire bénéficier quatre de nos thésards de bourses pour longs séjours dans le laboratoire IRIS. Le séjour de Michael Roy, d une durée d un an, a été très bénéfique pour lui sur le plan linguistique et sur le plan de l avancement de sa thèse, qui a donné lieu à plusieurs publications communes avec les collègues de l IRIS [150, 144, 145]. Yohan Fougerolle, qui a commencé sa thèse en septembre 2002, et Sophie Voisin qui a commencé sa thèse en septembre 2004, sont actuellement en séjour de recherche dans le laboratoire IRIS.

147 Chapitre 7 Perspectives de recherche Poursuivre l étude de la modélisation des surfaces, et chercher de meilleurs moyens pour la conception intégrée et le PLM sont nos deux perspectives de recherche. Modélisation et combinaison de surfaces pour la CAO Les algorithmes de représentation et de manipulation de géométrie en CAO relèvent de plusieurs domaines mathématiques comme l algèbre, la géométrie différentielle, la topologie, l analyse et la théorie des approximations. A titre d exemples, on peut citer les problèmes : de calcul des courbes définies par les intersections de surfaces, de construction de carreaux de jointure entre plusieurs surfaces avec une continuité de tangentes ou de courbures, de construction d approximations, respectant un certain nombre de contraintes, dans la limites d une marge d erreurs raisonnable. L absence de solutions rigoureuses et fiables pour ces problèmes a longtemps handicapé le fonctionnement des systèmes de CAO. Même si la CAO s est très largement développée ces 25 dernières années, des problèmes fondamentaux, comme ceux identifiés plus haut, n ont pas encore été complètement résolus, mais contournés par recours à différentes heuristiques. Dans ce cadre, nos perspectives de recherche seront orientées vers les trois thèmes suivants : (i) Modélisation à base de surfaces algébriques. (ii) Modélisation par contraintes géométriques. (iii) Comparaison et appariement de formes et de surfaces. a. Modélisation à base de surfaces algébriques Les surfaces paramétriques comme les NURBS, les Bsplines et les Béziers sont les briques de base de la plupart des systèmes de CAO. Ces surfaces sont préférées aux surfaces algébriques parce qu elles offrent aux concepteurs un mécanisme pratique et intuitif pour contrôler la forme de la surface en déplaçant les points de contrôle ou en modifiant les poids associés à ces points. A quelques exceptions près, les seules surfaces algébriques utilisées en CAO sont les quadriques. Deux raisons expliquent, à notre avis, cette utilisation restreinte : (i) Les surfaces algébriques, ou les interfaces disponibles actuellement pour les définir, offrent moins de liberté de modélisation que les surfaces paramétriques. (ii) De part sa formalisation, une surface paramétrique est limitée (en fonction des intervalles des paramètres 125

148 126 Chapitre 7. Perspectives la surface couvre à un carreau spécifique), alors qu une surface algébrique n est pas implicitement limitée et il faut fournir un moyen pour la délimiter à un carreau ayant des frontières spécifiques. Les cyclides de Dupin de degré quatre constituent un bon compromis entre les deux points précédents. Ces surfaces apportent un confort et une facilité lors de la modélisation et leur représentation paramétrique permet de les limiter facilement à des carreaux particuliers. Malgré les nombreuses propriétés géométriques et différentielles intéressantes pour la modélisation, il faut encore mettre en place les outils mathématiques et algorithmiques pour faciliter et encourager l usage de ces surfaces en CAO. Le développement des points suivants va dans le sens de cet usage : Mettre en place un mécanisme pour pouvoir contrôler et ajuster la forme représentée par une combinaison de carreaux de cyclides de Dupin, de façon similaire aux points de contrôle des surfaces paramétriques. Etablir un ensemble de règles de subdivision qui permettent de converger vers un carreau de cyclide de Dupin à partir d un maillage. La coplanarité des cercles principaux peut faciliter cela. Affiner la construction des carreaux de Bézier rationnels biquadratiques convertibles en cyclides de Dupin ou en supercyclides. Donner les conditions nécessaires et suffisantes permettant la construction d un carreau de Bézier rationnel biquadratique convertible en un carreau de cyclide de Dupin. Les supercyclides, dont nous avons défini les supercyclides elliptiques comme une sous-classe particulière, constituent un autre type de surfaces algébriques intéressantes pour la modélisation. Il serait intéressant d étudier la combinaison de carreaux de supercyclides pour la représentation de formes complexes dans les futurs développements de nos travaux sur ces surfaces. Les résultats obtenus par mélange de supershapes avec les R-fonctions semblent prometteurs. Cependant, le grand nombre de paramètres (22 paramètres) intervenant dans la définition, le positionnement et la déformation des supershapes rend difficile l optimisation des approximations obtenues surtout qu une mauvaise segmentation peut induire une importante erreur de reconstruction locale. Il serait donc intéressant de considérer l optimisation de la R-fonction globale, composée de l union de toutes les supershapes, en utilisant le nuage de points dans sa totalité. b. Modélisation par contraintes géométriques Le traitement de nombreux problèmes de modélisation géométrique ne peut se faire que par la satisfaction simultanée de plusieurs critères à travers la résolution d un système de contraintes géométriques. Les solveurs de ces systèmes sont des modules indispensables dans tout modeleur de CAO où des contraintes d incidence, de raccordement, de tangence, de tolérance, de mouvement, etc. sont utilisées pour imposer les relations spatiales et topologiques entre les surfaces reconstruites. Nous pensons orienter nos recherches dans cette thématique vers les points suivants : Détection des dépendances cachées entre plusieurs contraintes. Détection des incohérences (présence de contraintes contradictoires). Utilisation des outils issus de la théorie des graphes pour développer des algorithmes de manipulation et de résolution de contraintes géométriques.

149 127 c. Comparaison et appariement de formes Les logiciels de CAO et les outils d acquisition 3D ont facilité la construction de modèles 3D ; ceci a donné lieu à des collections d objets 3D, dites entrepôts de conception ou bases de données de modèles 3D. Dans une entreprise, les composants d un objet manufacturier sont souvent conçus en modifiant des composants préexistants. Se pose alors la question de retrouver les pièces ressemblant à une pièce donnée ; la réponse nécessite la comparaison des modèles géométriques des pièces en question. La détermination de la similarité entre deux objets 3D, référencée dans la littérature par appariement de formes, est une tâche fondamentale pour la gestion de base de données 3D et nécessite des techniques de traitement très spécifiques (appariement de graphes, méthodes statistiques de classification, techniques de regroupement, etc.). Le nombre de modèles de solides va toujours croissant, dans toute entreprise d ingénierie, le stockage, l extraction et la comparaison de ces modèles constituent par conséquent de vrais problèmes pour ces entreprises, d autant plus que les avancées considérables de la communauté scientifique pour la gestion de base de données (BD) multimédia que ce soit en image, en audio ou en vidéo restent mal adaptées à la gestion des BD de modèles de solides. Les données de CAO et les modèles de solides possèdent des exigences et des contraintes autres que celles des BD classiques et des BD multimédia. Au problème du manque d une méthode fiable pour la comparaison des modèles CAO, s ajoutent deux autres spécificités pour les BD de modèles de solides : Les éléments, i.e. les solides, à gérer ont de très larges données individuelles et peuvent venir de disciplines diverses. La détermination de critères d accès uniques pour ces bases est donc non triviale. Les études qui nous intéressent dans ce thème sont : Développer de nouvelles approches pour le partitionnement et la structuration de grandes BD de modèles de solides et d objets mécaniques afin de les intégrer dans un schéma global d indexation, de recherche et d extraction. Ce partitionnement sera fait en utilisant des méthodes statistiques qui fourniront pour chaque modèle étudié une signature sous forme de vecteur, de matrice ou de graphe. Mettre en place des algorithmes, basés sur l appariement de graphe et/ou des métriques en haute dimension, pour la recherche de similarités entre modèles. Gestion du cycle de vie du produit L émergence du PLM, comme une stratégie globale pour la gestion de toutes les données du cycle de vie du produit, a fait apparaître de nouveaux défis pour maîtriser la création, l échange et le contrôle des données dans l entreprise étendue. Les fonctionnalités de base du PLM englobe la gestion : des besoins du client, de la conception de produit intégrée, des chaînes logistiques, de projets et d aide à la décision et des données. Nos perspectives de recherche dans ce contexte concernent les fonctionnalités de gestion de la conception intégrée et de gestion de données. En effet, dans un environnement de développement de produit, les différents acteurs sont souvent submergés par des flux d informations importants et non structurés en provenance de plusieurs sources. Il est donc primordial : (i) de filtrer ces données, (ii) de les structurer, (iii) de les intégrer et les contrôler pour éviter les incohérences, et (iv) de canaliser les échanges entre les différentes acteurs pour éviter qu ils ne soient submergés par des informations non pertinentes.

150 128 Chapitre 7. Perspectives En ce qui concerne la gestion des données, les objectifs suivants seront visés : Poursuivre nos travaux sur l élaboration des modèles de données en complétant le CPM et l OAM et en proposant de nouvelles extensions du CPM pour d autres domaines. Etudier et montrer le rôle des normes existantes (STEP, PSL, etc.) pour la capture, la structuration et l échange des données, et le cas échéant montrer le besoin de nouvelles normes. Développer des ontologies pour l intégration et l échange de données. Montrer comment les nouvelles technologies issues du Web sémantique peuvent être utilisées pour améliorer l interopérabilité et l échange d informations produit. Proposer des interfaces et des mécanismes d extraction sélective des données pour pouvoir fournir des vues multiples d un même ensemble de données. Par exemple, dans un contexte de modélisation d assemblages l opérateur chargé de vérifier l assemblabilité des différents composants n a souvent besoin que de la structure hiérarchique de l assemblage et de l ordre dans lequel les composants doivent être assemblés. Pour ne pas le surcharger avec les détails inutiles des différentes parties, l interface doit lui fournir une vue simplifiée de chaque partie. Dans un environnement de conception intégrée, les activités de compositions des modèles CAO sont distribuées et parallélisées entre plusieurs opérateurs. Dans la plupart des cas, la coordination de ces différentes activités se fait par de nombreux échanges sous forme de va-et-vient à travers le réseau Internet. Pour pouvoir transmettre et manipuler la géométrie de ces modèles 3D de façon interactive sur le réseau, plusieurs formats ont été proposés (VRML, X3D, W3D, MPEG-4, etc.). Nous pensons que la combinaison des nouvelles technologies de traitement de l information et des outils d analyse multirésolution et de visualisation peut apporter une solution dans ce contexte.

151 Bibliographie [1] Abdel-Malek and H. J. K., Yeh. Determining intersection curves between surfaces of two solids. Computer Aided Design, 28 : , [2] G. Albrecht and W. Degen. Construction of Bézier rectangles and triangles on the symetric Dupin horn cyclide by means of inversion. Computer Aided Geometric Design, 14(4) : , [3] S. Allen and D. Dutta. Supercyclides and blending. Computer Aided Geometric Design, 14(7) : , [4] G. Aumann. Curvature continuous connections of cones and cylinders. Computer-aided Design, 27(4) : , [5] C. Bajaj, V. Pascucci, and G. Zhuang. Progressive compression and transmission of arbitrary triangular meshes. In Proceedings of IEEE Visualization, pages , [6] C. L. Bajaj, C. M. Hoffmann, J. E. Hopcroft, and R. E. Lynch. Tracing surface intersections. Computer Aided Geometric Design, 5 : , [7] T. Banchoff. The spherical two-piece property and tight surfaces in spheres. J. Diff. Geometry, 4 : , [8] E. Bardinet, L. D. Cohen, and N. Ayache. Fitting of iso-surfaces using superquadrics and freeform deformations. In Proc. of International Conference on Pattern Recognition (ICPR), pages 79 83, [9] E. Bardinet, L. D. Cohen, and N. Ayache. Superquadrics and free-form deformations : A global model to fit and track 3D medical data. In Proc. of CVRMed, pages , [10] R. E. Barnhill, G. Farin, M. Jordan, and B. R Piper. Surface / surface intersection. Computer Aided Geometric Design, 4 :3 16, [11] A. H. Barr. Global and local deformation of solid primitives. Computer Graphics, 18(3) :21 30, [12] J.L Bauchat, A.L. Defretin, and P. Martin. Interaction entre la modélisation mathématique et l usinage des surfaces complexes. Réflexions autour des cyclides de Dupin. In APMEP 02, [13] M. Berger. Géométrie 2, volume 5. Cedic-Nathan, 2ème edition,

152 130 BIBLIOGRAPHIE [14] M. Berger and B. Gostiaux. Géométrie différentielle : variétés, courbes et surfaces. PUF, 2ème edition, avril [15] H. Biermann, D. Kristjansson, and D. Zorin. Approximate boolean operations on free-form solids. In Proc. of SIGGRAPH 01, pages , [16] E. Blutel. Recherches sur les surfaces qui sont en même temps lieux de coniques et enveloppes de cônes du second degrée. Ann Sci. Ecole Norm. Super., 3(7) : , [17] C. Bock. Systems engineering in product lifecycle. International Journal of Product Developement, Special issue on Product Lifecycle Management, [18] W. Boehm. On cyclides in geometric modeling. Computer Aided Geometric Design, 7(1-4) : , June [19] E. Boender. A survey of intersection algorithms for curved surfaces. Computer & Graphics, 15 :99 115, [20] G.-P. Bonneau. Multiresolution analysis on irregular surface meshes. IEEE Transactions on Visualization and Computer Graphics, 4(4) : , [21] W. C. Burkett. Product data markup language : a new paradigm for product data exchange and integration. Computer Aided Design, 33(7) : , [22] P. Burt and E. Adelson. The laplacian pyramid as a compact image code. IEEE Transactions on Communications, 31(4) : , [23] E. Catmull and J. Clark. Recursively generated B-spline surfaces on arbitrary topological meshes. Computer-Aided Design, 10(6) : , [24] V. Chandru, D. Dutta, and C. M. Hoffmann. Variable radius blending using Dupin cyclides. Technical Report CSD TR 851, Purdue University, January [25] V. Chandru and B. S. Kochar. Geometric Modeling : Algorithms and NEW Trends, chapter Analytic Techniques for Geometric Intersection Problems, pages SIAM, PA. Philadelphia, [26] A. Ciampalini, P. Cignoni, C. Montani, and R. Scopigno. Multiresolution decimation based on global error. The Visual Computer, 13(5) : , [27] P. Cignoni, C. Montani, C. Rocchini, R. Scopigno, and M. Tarini. Preserving attribute values on simplified mesches by re-sampling detail textures. The Visual Computer, 15(10) : , [28] P. Cignoni, C. Rocchini, and R. Scopigno. A comparison of mesh simplification algorithms. Computer and Graphics, 22(1) :37 54, [29] J. Cohen, M. Olano, and D. Manocha. Appearance-preserving simplification. In Proceedings of ACM SIGGRAPH, pages , [30] J. Cohen, A. Varshney, D. Manocha, G. Turk, H. Weber, P. Agarwal, F. Books, and W. Wright. Simplification envelopes. In Proceedings of ACM SIGGRAPH, pages , 1996.

153 BIBLIOGRAPHIE 131 [31] S. Dahlke, W. Dahmen, E. Schmitt, and I. Weinreich. Multirésolution analysis and wavelets on s2 and s3. Technical report, Institut für Geometrie und angewandete Mathematik, RWTH Aachen, [32] G. Darboux. Leçons sur la Théorie Générale des Surfaces, volume 1. Gauthier-Villars, [33] G. Darboux. Principes de géométrie analytique. Gauthier-Villars, [34] I. Daubechies, I. Guskov, P. Schröder, and W. Sweldens. Wavelets on irregular point sets. Philosophical Transactions of the Royal Society, 357(1760) : , [35] D. DeCarlo and D. Metaxas. Shape evolution with structural and topological changes using blending. IEEE Transactions on Pattern Analysis and Machine Intelligence, 20 : , [36] W. L. F. Degen. Surfaces with a conjugate net of conics in projective space. Tensor, N.S, 39 : , [37] W. L. F. Degen. Die zweifachen blutelschen kegelschnittflächen. Manuscripta Mathematica, 55 :9 38, [38] W. L. F. Degen. Generalized Cyclides for Use in CAGD. In A. Bowyer, editor, The Mathematics of Surfaces IV, pages , Oxford, Clarendon Press. [39] W. L. F. Degen. On the origin of supercyclides. In Robert Cripps, editor, Proceedings of the 8th IMA Conference on the Mathematics of Surfaces (IMA-98), volume VIII of Mathematics of Surfaces, pages , Winchester, UK, September Information Geometers. [40] M. Desbrun, M. Meyer, P. Schröder, and A.H. Barr. Implicit fairing of irregular meshes using diffusion and curvature flow. In Proceedings of ACM SIGGRAPH, pages , [41] L. Deshayes, M. Gruninger, and S. Foufou. Standards integration using ontologies. Journal of Computing and Information Science in Engineering, Under review. [42] D. Donoho. De-noising by soft-thresholding. IEEE Transactions on Information Theory, 41(3) : , [43] D. Donoho and I. Johnstone. Adapting to unknown smoothness via wavelet shrinkage. Journal of the American Statistical Association, 90(432) : , [44] D. Doo and M. Sabin. Behavior of recursive division surfaces near extraordinary points. Computer-Aided Design, 10(6) : , [45] C. P. Dupin. Application de Géométrie et de Méchanique à la Marine, aux Ponts et Chaussées, etc. Bachelier, Paris, [46] D. Dutta, R. R. Martin, and M. J. Pratt. Cyclides in surface and solid modeling. IEEE Computer Graphics and Applications, 13(1) :53 59, January [47] N. Dyn, D. Levin, and J. Gregory. A butterfly subdivision scheme for surface interpolation with tension control. ACM Transaction on Graphics, 9(2) : , 1990.

154 132 BIBLIOGRAPHIE [48] M. Eck, T. DeRose, T. Duchamp, H. Hoppe, M. Lounsbery, and W. Stuelze. Multiresolution analysis of arbitrary meshes. In Proceedings of ACM SIGGRAPH, pages , [49] S. Eswaran, R. Sudarsan, S. Fenves, S. Foufou, and R.D. Sriram. Product lifecyle management : a chalange in supporting the product design and manufacturing in a networked economy. International Journal of Product Lifecycle Management, To appear. [50] S. Eswaran, R. Sudarsan, S. Fenves, S. Foufou, and R.D. Sriram. Product lifecyle management support : a chalange in supporting the product design and manufacturing in a networked economy. Technical Report NISTIR 7211, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, [51] S. Fenves, S. Foufou, C. Bock, N. Bouillon, R. Sudarsan, and R. D. Sriram. CPM2 : A revised core product model for representing design information. Technical Report NISTIR 7185, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, [52] S. J. Fenves. A core product model for representing design information. Technical Report NISTIR 6736, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, April [53] S. Fleishman, I. Drori, and D. Cohen-Or. Bilateral mesh denoising. In Proceedings of ACM SIGGRAPH, pages , [54] L. De Floriani, P. Magillo, and E. Puppo. Building and traversing a surface at variable resolution. In Proceedings of IEEE Visualization, pages , [55] J. Foley, A. Van Dam, S. Feiner, and J. Hughes. Computer Graphics : Principle and Pratice. Addison-Wesley, second edition, [56] A. Forest. Curves and Surfaces for Computer-Aided Design. PhD thesis, University of Cambridge, [57] A. R. Forsyth. Lecture on Differential Geometry of Curves and Surfaces. Cambridge University Press, [58] S. Foufou, S. Fenves, C. Bock, R. Sudarsan, and R.D. Sriram. Semantic implementation of the cpm2 using xml. In Proceedings of the PLM 05 International Conference on Product Lifecycle Management, Lyon, France, July Inderscience Publishers. To Appear. [59] S. Foufou and L. Garnier. Dupin cyclide blends between quadric surfaces for shape modeling. Computer Graphics Forum [Special issue for EUROGRAPHICS 04, Grenoble, France, Aug Sept. 3, 2004], 23(3) : , [60] S. Foufou and L. Garnier. Implicit equations of supercyclides. In M. Neamtu and E.W. Saff, editors, Advances in Constructive Approximation [Proc. Book of the International Conference on Advances in Constructive Approximation, Nashville, TN, USA, May 2003], pages Nashboro Press, Nashville, TN, USA, [61] S. Foufou, L. Garnier, and M. Neveu. Blending of surfaces of revolution and planes by Dupin cyclides. In M.L. Lucian and M. Neamtu, editors, Geometric Modeling and Computing [Proc. book of the 8th SIAM Conference on Geometric Design and Computing, Seattle, USA, Nov. 2003]. Nashboro Press, Nashville, TN, USA, 2004.

155 BIBLIOGRAPHIE 133 [62] S. Foufou, L. Garnier, and M. Pratt. Conversion of Dupin cyclide patches into rational biquadratic Bézier form. In Proceedings of Mathematics of Surfaces XI International Conference, Lecture Notes in Computer Science, University of Loughborough, UK, September Springer. To appear. [63] S. Foufou, D. Michelucci, and J.-P. Jurzak. Numerical decomposition of geometric constraints. In Proceedings de ACM Symposium on Solid and Physical Modeling, MIT, Cambridge, MA, USA, May ACM Press. To appear. [64] Y. Fougerolle, A. Grikob, S. Foufou, F. Truchetet, and M. Abidi. Boolean operations on supershapes using R-functions. IEEE Transaction on Visualization and Computer Graphics, To appear. [65] W.R. Franklin and V. Akman. Adaptative grid for polyhedral visibility in object space. Computer Journal, 31(1) :56 60, [66] W.R. Franklin, M. Kankanhalli, and C. Narayanaswami. Geometric computing and uniform grid technique. Computer Aided Design, 21(7) : , [67] T. Gallagher and B. Piper. Convexity preserving surface interpolation. In N.S. Sapidis, editor, Designing Fair Curves and Surfaces : Shape Quality in Geometric Modeling and Computer- Aided Design, pages , Philadelphia, USA, SIAM. [68] M. Garland and P. Heckbert. Surface simplification using quadric error metrics. In Proceedings of ACM SIGGRAPH, pages , [69] M. Garland and P. Heckbert. Simplifying surfaces with color and texture using quadric error metrics. In Proceedings of IEEE Visualization, pages , [70] L. Garnier. Utilisation des cyclides de Dupin quartiques et des supercyclides quartiques en modélisation géométrique. PhD thesis, Université de Bourgogne, Dijon, France, December [71] L. Garnier, S. Foufou, and D. Michelucci. Conversion of quadrics into rational biquadratic Bézier patches. In Proceedings of isicad : Constraint-based Approaches and Methods of Mathematical Modelling for Intelligent CAD/CAM/CAE systems : From Methods to Applications, Novosibirsk, Russia, June [72] L. Garnier, S. Foufou, and M. Neveu. Conversion de cyclides de Dupin en carreaux de Bézier rationnels biquadriques. In Actes des 15 emes journées AFIG, pages , Lyon, France, December [73] L. Garnier, S. Foufou, and M. Neveu. From Dupin cyclides to scaled cyclides. In Journal of WSCG : Proceedings of the 11 th International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision, volume 11, pages , Plzen, Czech Republic, February [74] L. Garnier, S. Foufou, and M. Neveu. Jointure G 1 -continue entre un cône et une sphère. Revue Internationale de CFAO et d informatique graphique, 17(3 4) : , [75] A. Gerussi. Analyse multrésolution non emboîtée : applications à la visualisation scientifique. Thèse de doctorat, Université Joseph Fourier, Grenoble 1, 2000.

156 134 BIBLIOGRAPHIE [76] J. Gielis. A generic geometric transformation that unifies a wide range of natural and abstract shapes. American Journal of Botany, 90 : , [77] J. Gielis, B. Beirinckx, and E. Bastiaens. Superquadrics with rational and irrational symmetry, Symposium on Solid Modeling and Applications. [78] A. Gross and T. Boult. Error of fit measures for recovering parametric solids. In Proc. Internat. Conf. Computer Vision, pages , [79] A. Guéziec. Meshsweeper : Dynamic point-to-polygonal-mesh distance and applications. IEEE Visualization and Computer Graphics, 7(1) :47 61, [80] A. Guéziec, G. Taubin, B. Horn, and F. Lazarus. A framework for streaming geometry in VRML. IEEE Visualization and Computer Graphics, 19(2), [81] I. Guskov, W. Sweldens, and P. Schröder. Multiresolution signal processing for meshes. In Proceedings of ACM SIGGRAPH, pages , [82] J. Hebda. Manifolds admitting taut hyperspheres. Pacific J. Math., 97 : , [83] P. Heckbert. Generic convex polygon scan conversion and clipping. In Andrew S. Glassner, editor, Graphics Gems I, pages Academic Press, [84] C. M. Hoffmann. Geometric and Solid Modeling : An Introduction. Morgan Kaufmann Publishers Inc., [85] C. M. Hoffmann. Geometric and Solid Modeling : An Introduction. Morgan Kaufmann, [86] H. Hoppe. Progressive meshes. In Proceedings of ACM SIGGRAPH, pages , [87] H. Hoppe. View-dependent refinement of progressive meshes. In Proceedings of ACM SIG- GRAPH, pages , [88] H. Hoppe. New quadric metric for simplifying meshes with appearance attributes. In Proceedings of IEEE Visualization, pages 59 66, [89] H. Hoppe, T. DeRose, T. Duchamp, J. McDonald, and W. Stuetzle. Mesh optimization. In Proceedings of ACM SIGGRAPH, pages 19 26, [90] H. Hoppe and S. Marschner. Efficient minimization of new quadric metric for simplifying meshes with appearance attributes. Technical Report MSR-TR , Microsoft Research, [91] A. Hubeli and M. Gross. Multiresolution feature extraction from unstructured meshes. In Proceedings of IEEE Visualization, pages , [92] ISO. ISO 1832, Indexable Inserts for cutting tools - Designation, ISO, [93] ISO. Industrial automation systems and integration-product data representation and exchange, ISO International Organization for Standardization (ISO), Geneva, Switzerland, the ISO catalogue is online at http :// CatalogueListsearch on for a listing of published parts of the standard.

157 BIBLIOGRAPHIE 135 [94] ISO. ISO 5608, Turning and copying tool holders and cartridges for indexable inserts - Designation, [95] Owen J. STEP : an introduction. Information Geometers, Winchester, UK, [96] Pratt M. J. Introduction to ISO the STEP standard for product data exchange. Journal of Computing and Information Science in Engineering, 1(1) : , [97] A. Jakli c, A. Leonardis, and F. Solina. Segmentation and recovery of superquadrics. Kluwer Academic Publisher, Dordrecht, [98] A. Jakli c and F. Solina. Moments of superellipsoids and their application to range image registration. IEEE Transactions on Systems, Man, and Cybernetics, 33(4) : , [99] L. Kobbelt. Discrete fairing. In Proceedings of IMA Conference on the Mathematics of Surfaces, pages , [100] L. Kobbelt. 3-subdivision. In Proceedings of ACM SIGGRAPH, pages , [101] L. Kobbelt, J. Vorsatz, and H.-P. Seidel. Multiresolution hierarchies on unstructured triangle meshes. Computational Geometry : Theory and Applications, 14(1-3) :5 24, [102] S. Krishnan, A. Narkhede, and D. Manocha. Boole : A system to compute boolean combinations of sculptured solids. Technical report, Department of Computer Science, University of North Carolina, [103] S. Lanquetin. Etude des surfaces de subdivision : intersection, precision et profondeur de subdivision. PhD thesis, Université de Bourgogne, Dijon, France, September [104] S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. Computing subdivision surface intersection. In Poster proceedings of the International Conference in Central Europe on Computer Graphics, Visualization and Computer Vision, pages 73 76, Plzen, Czech Republic, February [105] S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. Deux algorithmes d intersection de surfaces de subdivision. Revue Internationale de CFAO et d informatique graphique, 18(2) : , [106] S. Lanquetin, S. Foufou, H. Kheddouci, and M. Neveu. A graph based algorithm for intersection of subdivision surfaces. In Kenneth Tan Kumar, Gavrilova and L Ecuyer, editors, Lecture Notes in Computer Science 2669, Proceedings of the ICCSA 03, pages , Montreal, Canada, May Springer-Verlag. [107] P. Lindstrom and G. Turk. Fast and memory efficient polygonal simplification. In Proceedings of IEEE Visualization, pages , [108] P. Lindstrom and G. Turk. Evaluation of memoryless simplification. IEEE Transactions on Visualization and Computer Graphics, 5(2) :98 115, [109] H. Löffelmann and E. Gröller. Parameterizing superquadrics. In Proc. of WSCG 95, pages , 1995.

158 136 BIBLIOGRAPHIE [110] C. Loop. Smooth subdivision surfaces based on triangles. Master s thesis, University of Utah, [111] M. Lounsbery. Multiresolution Analysis for Surfaces of Arbitrary Topological Type. PhD thesis, University of Washington, USA, [112] M. Lounsbery, T. DeRose, and J. Warren. Multiresolution analysis for surfaces of arbitrary topological type. ACM Transactions on Graphics, 16(1) :34 73, [113] J. Lubbell, R.S. Peak, V. Srinivasan, and S.C. Waterbury. STEP, XML, and UML : Complementary technologies. In Proceedings of DETC ASME Design Engineering Technical Conference, Salt Lake City, Utah, USA, 28 Sept.-2 Oct [114] D. Luebke and C. Erikson. View-dependent simplification of arbitrary polygonal environments. In Proceedings of ACM SIGGRAPH, pages , [115] S. Mallat. A theory for multiresolution signal decomposition : the wavelet representation. IEEE Transaction on Pattern Analysis and Machine Intelligence, 11(7) : , [116] S. Mallat. A Wavelet Tour of Signal Processing. Academic Press, second edition, [117] R. R. Martin. Principal patches for computational geometry. PhD thesis, Engineering Department, Cambridge University, [118] J. C. Maxwell. On the cyclide. Quarterly Journal of Pure and Applied Mathematics, pages , [119] D. Ménegaux, D. Michelucci, and S. Foufou. Modélisation de surfaces algébriques par contraintes géométriques. In Actes des 17 emes journées AFIG, pages 23 32, Poitiers, France, November [120] F. Mervyn, A. Senthil Kumar, S. H. Bok, and A. Y. C. Nee. Developing distributed applications for integrated product and process design. Computer Aided Design, 36(8) : , [121] D. Michelucci and S. Foufou. Kernel functions give intrinsic formulations of geometric constraints. In Proceedings of isicad : Constraint-based Approaches and Methods of Mathematical Modelling for Intelligent CAD/CAM/CAE systems : From Methods to Applications, Novosibirsk, Russia, June [122] D. Michelucci and S. Foufou. Using Cayley-Menger determinants for geometric constraint solving. In Proceedings de ACM Symposium on Solid Modeling and Applications, Genova, Italy, June ACM Press. [123] Moutard. Annales de Mathématiques. Bulletin de la société Philomatique et compte rendu de l Académie, [124] NIST. Process Specification Language [125] D. A. O Brien and D. Manocha. Calculating intersection curve approximations for subdivision surfaces. http :// [126] Y. Ohtake, A. Belyaev, and A. Pasko. Dynamic mesh optimization for polygonized implicit surfaces with sharp features. The Visual Computer, 19(2-3) : , 2003.

159 BIBLIOGRAPHIE 137 [127] OMG. UML 2.0 Superstructure Specification, [128] D. Page, A. Koschan, and M. Abidi. Perception-based 3d triangle mesh segmentation using fast marching watersheds. In Proceedings of IEEE International Conference on Computer Vision and Pattern Recognition, pages 27 32, [129] M. Paluszny and W. Boehm. General cyclides. Computer Aided Geometric Design, 15(7) : , [130] N. M. Patrikalakis. Surface-to-surface intersections. IEEE Computer Graphics & Applications, 13 :89 95, [131] J. Peng, V. Strela, and D. Zorin. A simple algorithm for surface denoising. In Proceedings of IEEE Visualization, pages , [132] U. Pinkall. Dupin hypersurfaces. Math. Ann., 270(3) : , [133] M. J. Pratt. Cyclides in computer aided geometric design. Computer Aided Geometric Design, 7(1-4) : , [134] M. J. Pratt. Dupin cyclides and supercyclides. In G. Mullineux, editor, Proceedings of the 6th IMA Conference on the Mathematics of Surfaces (IMA-94), pages 43 66, Brunel University, September Oxford University Press. [135] M. J. Pratt. Cyclides in computer aided geometric design II. Computer Aided Geometric Design, 12(2) : , [136] M. J. Pratt. Quartic supercyclides I : Basic theory. Computer Aided Geometric Design, 14(7) : , [137] M. J. Pratt. Quartic supercyclides II : Special and degenerate cases. Computer Aided Geometric Design, [138] M. J. Pratt, B. D. Anderson, and T. Ranger. Towards the standardized exchange of parameterized feature-based CAD models. Computer Aided Design, To appear. [139] A. A. G. Requicha. Representations for rigid solids : Theory, methods, and systems. ACM Comput. Surv., 12(4) : , [140] M. Rezayat. Knowledge-based product development using XML and KCs. Computer Aided Design, 32 : , [141] R. Ronfard and J. Rossignac. Full-range approximation of triangulated polyhedra. In Proceedings of Eurographics, pages 67 76, [142] J. Rossignac and P. Borrel. Multi-resolution 3d approximations for rendering complex scenes. In Geometric Modeling in Computer Graphics, pages , [143] M. Roy. Comparaison et Analyse Multirésolution de Maillages Irréguliers avec Attributs d Apparence. PhD thesis, Université de Bourgogne, Le Creusot, France, December 2004.

160 138 BIBLIOGRAPHIE [144] M. Roy, S. Foufou, A. Koschan, F. Truchetet, and M. Abidi. Multiresolution analysis for irregular meshes. In Proceedings of SPIE International Symposium on Photonics Technologies for Robotics, Automation, and Manufacturing (Photonics East), volume 5266, Providence, RI, USA, October [145] M. Roy, S. Foufou, A. Koschan, F. Truchetet, and M. Abidi. Multiresolution analysis for irregular meshes with appearance attributes. In Proceedings of IEEE ICIP, Genova, Italy, September To appear. [146] M. Roy, S. Foufou, and F. Truchetet. Denoising 3d models using soft thresholding. In Proceedings of SPIE Optics East Conference on Wavelet Applications in Industrial Processing, Philadelphia, USA, October [147] M. Roy, S. Foufou, and F. Truchetet. Mesh comparison using attribute deviation metric. International Journal of Image and Graphics, 4(1) : , [148] M. Roy, S. Foufou, and F. Truchetet. Multiresolution analysis for irregular meshes with appearance attributes. In Proceedings of International Conference on Computer Vision and Graphics, Varsaw, Pologne, September [149] M. Roy, F. Nicolier, S. Foufou, and F. Truchetet. Mesure de déviation d attributs pour la comparaison de maillages. Revue Internationale de CFAO et d informatique graphique, 17(3-4) : , [150] M. Roy, F. Nicolier, S. Foufou, F. Truchetet, A. Koschan, and M. Abidi. Assessment of mesh simplification algorithm quality. In Proceedings of SPIE Electronic Imaging, volume 4661, pages , San Jose, USA, January [151] V. L. Rvachev. Geometric Applications of Logic Algebra. Naukova Dumka, In Russian. [152] V. L. Rvachev. Methods of Logic Algebra in Mathematical Physics. Naukova Dumka, In Russian. [153] V. L. Rvachev. Theory of R-functions and some applications. Naukova Dumka, In Russian. [154] R. Schneider and L. Kobbelt. Geometric fairing of irregular meshes for freeform surface design. Computer Aided Geometric Design, 18(4) : , [155] P. Schröder and W. Sweldens. Spherical wavelets : efficiently representing function on the sphere. In Proceedings of ACM SIGGRAPH, pages , [156] W.J. Schroeder, J.A. Zarge, and W.E. Lorensen. Decimation of triangle meshes. In Proceedings of ACM SIGGRAPH, pages 65 70, [157] V. Shapiro. Theory of R-functions and applications : A primer. Technical Report TR , Computer Science Department, Cornell University, Ithaca, NY, [158] V. Shapiro and I. Tsukanov. Implicit functions with guaranteed differential properties. In Symposium on Solid Modeling and Applications, pages , 1999.

161 BIBLIOGRAPHIE 139 [159] D. Shen, H.H.S. Ip, K.K.T Cheung, and E.K. Teoh. Symmetry detection by generalized complex (GC) moments : a close-form solution. IEEE Pattern Analysis And Machine Intelligence, 21(5) : , [160] C. K. Shene. Blending with affine and projective Dupin cyclides. Computer Aided Geometric Design, 5(1 2) : , [161] C. K. Shene. Blending two cones with Dupin cyclides. Computer Aided Geometric Design, 15(7) : , [162] C. K. Shene. Do blending and offsetting commute for Dupin cyclides. Computer Aided Geometric Design, 17(9) : , [163] F. Solina and R. Bajcsy. Recovery of parametric models from range images : The case for superquadrics with global deformations. The Visual Computer, 12(2) : , [164] J. F. Sowa. Knowledge representation, Logical, Phisical and Computational Foundations. Brooks/Cole, [165] Y. L. Srinivas and D. Dutta. Rational parametric representation of parabolic cyclide : Formulation and applications. Computer Aided Geometric Design, 12(6) : , ISSN [166] Y. L. Srinivas, K. P. Vinod Kumar, and D. Dutta. Surface design using cyclide patches. Computer-aided Design, 28(4) : , [167] Ram D. Sriram. Standards for the Collaborative Design Enterprise, Response to Object Management Group s (OMG) Mfg DTG RFI # 4, [168] R. Stallman. Free Software, Free Society : Selected Essays of Richard M. Stallman. GNU Press, [169] STEPml. STEP Markup Language. http ://stepml.org/, [170] E. J. Stollnitz, T. D. DeRose, and D. H. Salesin. Wavelets for Computer Graphics : Theory and Applications. Morgan Kaufmann, [171] R. Sudarsan, M. Baysal, U. Roy, S. Foufou C. Bock, S. Eswaren, K. Lyons, and R. D. Sriram. Information models for product representation : Core and assembly models. Technical Report NISTIR 7173, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, [172] R. Sudarsan, M. Baysal, U. Roy, S. Foufou, C. Bock, S. Eswaren, K. Lyons, and R.D. Sriram. Information models for product representation : Core and assembly models. International Journal of Product Development, To appear. [173] R. Sudarsan, Y. H. Han, S. C. Feng, U. Roy, F. Wang, R. D. Sriram, and K. W. Lyons. Objectoriented representation of electro-mechanical assemblies using UML. Technical Report NIS- TIR 7057, National Institute of Standards and Technology, Gaithersburg, MD 20899, USA, 2003.

162 140 BIBLIOGRAPHIE [174] R. Sudarsan, Y.-H. Han, S. Foufou, S.-C. Feng, U. Roy, F. Wang, R.D. Sriram, and K. Lyons. A model for capturing product assembly information. Journal of Computing and Information Science in Engineering, Under review. [175] C. Sun and J. Sherrah. 3D symmetry detection using the extended gaussian image. IEEE Pattern Analysis And Machine Intelligence, 19(2) : , [176] W. Sweldens. Construction and Applications of Wavelets in Numerical Analysis. PhD thesis, Department of Computer Science, Katholieke Universiteit Leuven, Belgium, [177] W. Sweldens. The lifting scheme : A construction of second generation wavelets. SIAM Journal on Mathematical Analysis, 29(2) : , [178] G. Taubin. A signal processing approach to fair surface design. In Proceedings of ACM SIG- GRAPH, pages , [179] Manufacturing Technology and Industrial Systems Task Force Request for Information #1. Knowledge-based engineering (KBE) product and process engineering working group (PPE WG). http :// [180] M. Toubin. Caractérisation et simplification de modèles numériques de scènes réelles par approche multirésolution dans un contexte multi-capteurs. Thèse de doctorat, Université de Bourgogne, [181] K. Ueda. Normalized Cyclide Bézier Patches. In M. Daehlen, T. Lyche, and L.L. Schumaker, editors, Mathematical Methods for Curves and Surfaces, pages , Nashville, USA, Vanderbilt University Press. Proc. of the International Conference on Math. Methods in CAGD, Ulvik, Norway, June 16-21, [182] UGS. JTOpen. http :// [183] UGS. PLM XML. http :// [184] S. Valette and R. Prost. Wavelet-based multiresolution analysis of irregular surface meshes. IEEE Transactions on Visualization and Computer Graphics, 10(2) : , [185] L. Vehlo and D. Zorin. 4-8 subdivision. Computer Aided Geometric Design, 18 : , [186] R. C. Veltkamp. Shape matching : Similarity measures and algorithms. Technical Report UU- CS , Utrecht University, [187] R. C. Veltkamp and M. Hagedoorn. State-of-the-art in shape matching. Technical Report UU-CS , Utrecht University, [188] H. B. Voelcker and A. A. G. Requicha. Research in solid modeling at the University of Rochester : In L. Piegl, editor, Fundamental Developments in Computer-Aided Modeling, Academic Press, London, [189] W3C. World wide web consortium [190] B. Wyvill and K. van Overveld. Polygonization of Implicit Surfaces with Constructive Solid Geometry. Journal of Shape Modelling, 2(4) : , 1996.

163 BIBLIOGRAPHIE 141 [191] J. Xia, J. El-Sana, and A. Varshney. Adaptive real-time level-of-detail-based rendering for polygonal models. IEEE Transactions on Visualization and Computer Graphics, 3(2) : , [192] J. Xia and A. Varshney. Dynamic view-dependent simplification for polygonal models. In Proceedings of IEEE Visualization, pages , [193] X. F. Zha, S. Foufou, R. Sudarsan, and R.D. Sriram. Analysis and evaluation for step-based electro-mechanical assemblies. Journal of Computing and Information Science in Engineering, Under review. [194] X. Zhou and W. Strasser. A NURBS approach to cyclides. Computers In Industry, 19(2) : , 1992.

164

165 Annexe : Copies d articles Dans cette Annexe, j insère des copies des articles les plus représentatifs de nos travaux. Un ou deux articles sont inclus pour chaque chapitre dans l ordre suivant : 1. S. Foufou, L. Garnier, and M. Pratt. Conversion of Dupin cyclide patches into rational biquadratic Bézier form. In Proceedings of Mathematics of Surfaces XI International Conference, Lecture Notes in Computer Science, University of Loughborough, UK, September Springer. To appear. 2. S. Foufou and L. Garnier. Dupin cyclide blends between quadric surfaces for shape modeling. Computer Graphics Forum [Special issue for EUROGRAPHICS 04, Grenoble, France, Aug Sept. 3, 2004], 23(3) : , M. Roy, S. Foufou, and F. Truchetet. Mesh comparison using attribute deviation metric. International Journal of Image and Graphics, 4(1) : , M. Roy, S. Foufou, A. Koschan, F. Truchetet, and M. Abidi. Multiresolution analysis for irregular meshes with appearance attributes. In Proceedings of IEEE ICIP, Genova, Italy, September To appear. 5. Y. Fougerolle, A. Grikob, S. Foufou, F. Truchetet, and M. A. Abidi. Boolean operations on supershapes using R-functions. IEEE Transaction on Visualization and Computer Graphics, To appear. 6. S. Foufou, S. Fenves, C. Bock, R. Sudarsan, and R.D. Sriram. Semantic implementation of the CPM2 using XML. In Proceedings of the PLM 05 International Conference on Product Lifecycle Management, Lyon, France, July Inderscience Publishers. To appear. 7. S. Eswaran, R. Sudarsan, S. Fenves, S. Foufou, and R. D. Sriram. Product lifecyle management : a chalange in supporting the product design and manufacturing in a networked economy. International Journal of Product Lifecycle Management, Inderscience Publishers. To appear. 143

166 Conversion of Dupin cyclide patches into rational biquadratic Bézier form Sebti Foufou 1, Lionel Garnier 1, and Michael J. Pratt 2 1 LE2I, UMR CNRS 5158, UFR Sciences, Université de Bourgogne, BP 47870, Dijon Cedex, France sfoufou@u-bourgogne.fr, lgarnier@u-bourgogne.fr 2 LMR Systems, 21 High Street, Carlton, Bedford, MK43 7LA, UK mike@lmr.clara.co.uk Abstract. This paper uses the symmetry properties of circles and Bernstein polynomials to establish a series of interesting barycentric properties of rational biquadratic Bézier patches. A robust algorithm is presented, based on these properties, for the conversion of Dupin cyclide patches into Bézier form. A set of conversion examples illustrates the use of this algorithm. 1 Introduction Rational Biquadratic Bézier Surfaces (RBBSs) are tensor product parametric surfaces widely used in the first generation of computer graphics applications and geometric modelling systems. Good introductions to RBBSs may be found in [1 4]. Dupin cyclide surfaces represent a family of ringed surfaces, i.e., surfaces generated by a circle of variable radius sweeping through space [5 7]. It is possible to formulate them either as algebraic or parametric surfaces. In recent decades, the interest of several authors in these surfaces relates to their potential value in the development of CAGD tools [8, 9]. Also, cyclide intersections and the use of cyclides as blending surfaces have been investigated [10, 11]. The primary aim of this paper is to prove a series of useful properties of RBBSs, called barycentric properties, and to show how they can be used to convert cyclide patches into RBBSs. Section 2 gives background information concerning Rational Quadratic Bézier Curves (RQBCs) and RBBSs, introduces the Dupin cyclides, and discusses an algorithm for conversion of Dupin cyclide patches to RBBSs. Section 3 shows the use of RQBCs to represent circular arcs. Section 4 states and proves a set of new barycentric properties of RBBSs. Section 5 uses these properties to define a robust new algorithm for the conversion of Dupin cyclides into RBBSs, and illustrates some of the conversion results obtained. Section 6 presents our conclusions and suggests directions for future work.

167 2 2 Background 2.1 Rational quadratic Bézier curves and surfaces A Rational Quadratic Bézier Curve (RQBC) is a second degree parametric curve defined by: ( 2 ) 1 OM(t) = w i B i (t) OP i, t [0, 1] (1) 2 i=0 w i B i (t) i=0 where B i (t) are quadratic Bernstein polynomials defined as: B 0 (t) = (1 t) 2, B 1 (t) = 2t (1 t) and B 2 (t) = t 2, and for i {0, 1, 2}, w i are weights associated with the control points P i. For a standard RQBC w 0 and w 2 are equal to 1, while w 1 can be used to control the type of conic defined by the curve. Rational Biquadratic Bézier Surfaces (RBBSs) are defined by a tensor product of two RQBCs by: OM (u, v) = 2 i=0 j=0 1 2 w ij B i (u) B j (v) 2 2 i=0 j=0 w ij B i (u) B j (v) OP ij (2) More details on Bézier curves and surfaces can be found in [12, 4]. 2.2 Dupin cyclides Non-degenerate Dupin cyclides can be characterized by either of the following two equivalent implicit equations: ( x 2 + y 2 + z 2 µ 2 + b 2) 2 = 4 (ax cµ) 2 + 4b 2 y 2 (3) ( x 2 + y 2 + z 2 µ 2 b 2) 2 = 4 (cx aµ) 2 4b 2 z 2 (4) Parameters a, b and c are related by c 2 = a 2 b 2. The parameter a is always greater than or equal to c. Parameters a, c and µ determine the type of the cyclide. When c < µ a it is a ring cyclide, when 0 < µ c it is a horned cyclide, and when µ > a it is a spindle cyclide. The parametric form is represented by equation (5), where parameters θ and ψ satisfy (0 θ, ψ 2π): x(θ, ψ) = µ(c a cos θ cos ψ) + b2 cos θ a c cos θ cos ψ y(θ, ψ) = z(θ, ψ) = b sin θ (a µ cos ψ) a c cos θ cos ψ b sin ψ (c cos θ µ) a c cos θ cos ψ These are the most important properties of Dupin cyclide surfaces: (5)

168 3 Simple mathematical representation in either implicit or parametric form. Circular lines of curvature. These lines of curvature correspond to isoparametric lines of constant θ or ψ. The angle between the surface normal and the principal normal on the lines of curvature is also constant. Each cyclide has two perpendicular planes of symmetry. The intersections of a cyclide with its planes of symmetry are two pairs of circles called the principal circles. These are the lines of curvature of the cyclide for which ψ = 0, ψ = π, θ = 0 or θ = π. In the parametric form, knowledge of the four principal circles allows the computation of the parameters a, c, and µ. The curvature line and tangent cone properties given above make it easy to use Dupin cyclides to create blends between other cyclide surfaces, including the important special cases of circular cylinders, circular cones, spheres and toruses. 2.3 Conversion of Dupin cyclides to RBBSs If a RBBS is parameterized in terms of u and v, its isoparametric curves are conics. Lines of curvature of Dupin cyclides are circles, which are particular cases of conics. It is thus possible to convert a Dupin cyclide patch into an RBBS. In the rest of this paper, the Dupin cyclide patch to be converted will be referred to as a cyclide patch. It is assumed to be delimited by the curvature lines corresponding to parameter values (θ 0, θ 1, ψ 0, ψ 1 ). A conversion algorithm of the type discussed was proposed in [5]. The control points and their associated weights were determined from the parametric equation of the Dupin cyclide (equation (5)) by the following method: 1. The parameter transformations θ R (π + 2πZ), cos θ = 1 tan2 U 2 tan U 1 + tan 2, sin θ = U 1 + tan 2 U where U = tan(θ/2), together with corresponding expressions for cos ψ and sin ψ in terms of V = tan(ψ/2), were used to obtain rational quadratic forms for the three coordinates in terms of U, V. 2. A linear reparametrization was now applied to obtain a representation in terms of u, v such that u, v [0, 1]. 3. The common denominator of the resulting scalar-valued rational biquadratics in u and v was reformulated in terms of the quadratic Bernstein basis functions. The resulting coefficients of those basis functions were identified with the weights w ij in the denominator of equation (2). 4. Finally, with the weights known, the numerators of the three rational biquadratics were similarly reformulated. This gave the coordinates of the patch control points, expressed in terms of the defining constants of the particular cyclide, a, c, µ, together with the bounding parameter values of the original cyclide patch. (6)

169 4 Fig. 1. Conversion of a Dupin cyclide patch (left) to RBBS (right) using Pratt s original algorithm. Figure 1 shows an example of the conversion of a Dupin cyclide patch into a RBBS using this algorithm. A problem with this algorithm is that the function tan is discontinuous, not being defined for values π 2 + πz. This has the results that 1. for certain choices of patch boundary the reparametrization functions are not defined (though these special cases could be identified and appropriate limiting values used); 2. more importantly, the algorithm gives incorrect results when π ]θ 0, θ 1 [ or when π ]ψ 0, ψ 1 [. Fig. 2. Incorrect conversion. Left, the cyclide patch. Middle, the resulting RBBS representing the complementary patch, not the intended one. Right, the correct corresponding RBBS Figure 2 illustrates a case of erroneous results from this algorithm. The cyclide patch (left subfigure) is defined by a = 6, µ = 3, c = 2, θ 0 = π 4, θ 1 = 5π 6, ψ 0 = 2π 3 and ψ 1 = 4π 3. To obtain the RBBS of the right subfigure, that correctly represents the cyclide patch of the left subfigure, we used a new variant of this algorithm obtained by taking the absolute value of the weights as calculated by Pratt s original formula, i.e., w ij = a (1 + G i ) (1 + H j ) c (1 G i ) (1 H j ) (7) In this formula, the variables G i and H j are intermediate values computed from tan of θ 0 /2, θ 1 /2, ψ 0 /2 and ψ 1 /2 (see [5] for further details).

170 5 Fig. 3. Conversion of a whole Dupin cyclide into a set of RBBSs As we have seen, the boundary parameter values θ 0, θ 1, ψ 0 and ψ 1, together with the values of a, c and µ, can be used to determine control points and weights of the RBBS. If θ 0 = 0 and θ 1 = 4π 3, the computed control points calculated by the variant algorithm incorrectly correspond to the patch delimited by θ 0 = 2π 3 and θ 1 = 0. We must therefore require θ 0 θ 1 < π and ψ 0 ψ 1 < π. Taking this constraint into consideration gives several possibilities for conversion of a complete Dupin cyclide. Figure 3 left illustrates a Dupin cyclide converted into 9 RBBSs using this new variant of the algorithm. Combined use of both the original and the variant algorithm allows to decrease the number of RBBSs to 6, which is believed to be the minimal number of RBBSs necessary for the representation of a complete Dupin cyclide (Figure 3 right). Fig. 4. Conversion of a cyclide patch. Left, the cyclide patch. Middle, the RBBS given by Pratt s algorithm. Right, the RBBS given by the variant of Pratt s algorithm. The new variant of this algorithm makes it possible to convert a whole Dupin cyclide into a set of RBBSs, but it is still not possible to convert a cyclide patch delimited by a curve obtained with one of the parameters equal to π. Moreover, having only positive weights is not enough to work correctly for certain cases where some control points need to have negative weights. Figure 4 shows a case where the original algorithm works correctly (the middle subfigure) while the new variant fails (the right subfigure). The cyclide patch is defined by a = 6, c = 2, µ = 3, θ 0 = π 3, θ 1 = π 2, ψ 0 = 0 and ψ 1 = π 2. The output of the new variant is completely wrong: Border curve C is the complement, on the circle, of the border curve C of the cyclide patch. This is due to the fact

171 6 that w 10 is positive while it should be negative to model the border curve C. The same problem occurs for w 11. Fig. 5. A conversion example where both Pratt s algorithm and its variant fail. Another conversion example is given in Figure 5. Parameters defining the cyclide patch are a = 6, c = 2, µ = 3, θ 0 = 2π 3, θ 1 = 4π 3, ψ 0 = 5π 6 and ψ 1 = 3π 2. The original algorithm gives exactly the complement of the cyclide patch: the corner points are those of the cyclide patch while thr delimiting curves are the complements, on the circle, of the curves defining the cyclide patch. On the other hand, the RBBS obtained by the new variant of this algorithm (right subfigure) has the same corner points and border curves as the cyclide patch, but the central control point P 11 is not correct; the weight w 11 should be negative, while the new variant gives only positive weights. A less problematic conversion algorithm, based on barycentric properties of RBBSs and geometric properties of Dupin cyclides is proposed in section 5. 3 Modeling circular arcs using RQBCs RQBCs can be used to model conics. Three control points and a scalar value (the weight of the middle control point) are enough to define an arc of a conic. In this section, we give some results on the expression of circular arcs using RQBC. Theorem 1 shows how to define a circle from two points and two tangents on these points. Theorem 2 presents how to compute the middle control point of the RQBC that represents a given circular arc. Theorem 3 shows how to compute the weight of the middle control point of the RQBC that represents a given circular arc. Figure 6 shows the modeling of circular arcs using RQBC. This is the geometric construction used for Theorems 1, 2 and 3. C(O 0, R) is a circle of centre O 0 and radius R. Segments [P 0 P 1 ] and [P 2 P 1 ] are tangents to the circle at points P 0 and P 2. I 1 is the midpoint of segment [P 0 P 2 ]. P is the median plane of segment [P 0 P 2 ]. Theorem 1. Circle from two points and tangents at these points. If the circle C(O 0, R) exists then P 1 P and P 1 / [P 0 P 2 ]. The radius is R = O 0 P 0 and the centre O 0 is given by formula: P P 1 O 0 = t 0P1 I 1 t 0 = 0P 2 1 I 1 P (8) 1 P 0 P 1

172 7 Fig. 6. Modeling circular arcs by RQBC In the plane determined by C, the geometric angle P 0 O 0 P 2 is less than π, this means that if we take a parametrization γ of the circle in terms of cosine and sine such as P 0 = γ (θ 0 ), P 2 = γ (θ 1 ), we have θ 0 θ 1 < π. Theorem 2. Computing control point P 1 when the centre of the circle is known. The RQBC is the arc of the circle C passing through P 0 and P 2. In this case, the control point P 1 satisfies: I 1 P 1 = t 1 O 0 I 1 t 1 = O 0 P 0 I 1 P 0 O 0 P (9) 0 O 0 I 1 Theorem 3. Computing the weight w 1. The RQBC defined by control points P 0, P 1 and P 2 and the weight w 1 is a circular arc if and only if the following condition hold: 1 + w 1 R = O 0 I 1 + w 1 O 0 P 1 (10) The RQBC defines the smaller arc of the circle if: It defines the larger arc of the circle if: w 1 = O 0I 1 R R O 0 P 1 = O 0I 1 O 0 P 0 O 0 P 0 O 0 P 1 > 0 (11) w 1 = O 0I 1 + R R + O 0 P 1 = O 0I 1 + O 0 P 0 O 0 P 0 + O 0 P 1 < 0 (12) Proofs of these three theorems can be easily obtained by combining properties of RQBC with those of the circle and scalar product. 4 Barycentric properties of RBBSs Let S 0 be a Rational Biquadratic Bézier Surface (RBBS) defined according to formula (2) by control points (P ij ) 0 i,j 2 and weights (w ij ) 0 i,j 2 with w 00 =

173 8 w 02 = w 20 = w 22 = 1. In order to model surfaces with spherical curvatures by surface S 0, we should have the following constraints on control points: P 01 belongs to the median plane of [P 00 P 02 ], P 10 belongs to the median plane of [P 00 P 20 ], P 21 belongs to the median plane of [P 20 P 22 ] and P 12 belongs to the median plane of [P 02 P 22 ]. The position of control point P 11 is less obvious than the positions of the others. The following four theorems prove that P 11 belongs to three particular lines. A set of interesting barycentric properties of RBBSs that helps in the construction of these lines are given and proved. Theorem 4. Let I 0, J 0, I 2 and J 2 be respectively the midpoints of the segments [P 00 P 02 ], [P 00 P 20 ], [P 20 P 22 ] and [P 02 P 22 ]. We have the following four relations: ( OM 0, 1 ) = 2 ( OM 1, 1 ) = 2 ( ) 1 OM 2, 0 = ( ) 1 OM 2, 1 = 1 ( ) OI0 + w 01 OP w 01 1 ( ) OI2 + w 21 OP w 21 1 ( ) OJ0 + w 10 OP w 10 1 ( ) OJ2 + w 12 OP w 12 (13) (14) Proof. In order to prove the result (13) for points OM (0, 1 ) and OM (1, 1 ), let 2 2 us recall ( that B 0 (0) = 1, B 1 (0) = B 2 (0) = 0, B 2 (1) = 1, B 1 (1) = B 0 (1) = 0, B 1 1 2) = 1 2, B ( 1 ( 0 2) = 1 ) B2 2 = 1 4, and if I is the midpoint of a segment [AB], then for every point O we have OA + OB = 2OI. By Formula (2), the point OM (0, 1 ) on the RBBS is: 2 ( OM 0, 1 ) = ( ) 1 w ij B i (0) B j OP ij ) = i=0 j=0 2 ( ) 1 w 0j B j OP 0j 2 j=0 2 ) ( ( 1 1 w ij B i (0) B j w 0j B j 2 2 i=0 j=0 j=0 1 ( w00 = w 00 OP 4 + w w w 01 OP 01 + w ) 02 OP ( 1 1 ( = w OP 00 + ) OP 02 + w ) 01 OP ( 1 1 = w OI 0 + w ) 01 OP ( 2 1 = OI ) 1 + w w 01OP 01 1 ( ) = OI0 + w 01 OP w 01

174 9 On the other hand, point OM (1, 1 ) on the RBBS is: 2 ( OM 1, 1 ) = 2 2 i=0 j=0 2 ( ) 1 w ij B i (1) B j OP ij ) = = = i=0 j=0 1 2 ( ) 1 w 2j B j 2 j=0 1 w w21 1 w ij B i (1) B j ( w w ( ( ) 1 w 2j B j OP 2j 2 j=0 ( w20 OP 20 + w 21 OP 21 + w ) 22 OP w ) 21 OP ( OP 20 + ) OP 22 ( 1 1 = w OI 2 + w ) 21 OP ( 2 1 = OI 2 + w ) 21 OP 21 = 1 + w ( ) OI2 + w 21 OP w 21 Result (14) of OM ( 1, 0) and OM ( 1, 1) can be proved in a similar way. 2 2 Theorem 5. Let G 0 be the isobarycentre of points P 00, P 02, P 20, P 22 and G 2 the barycentre of weighted points (P 10, w 10 ), (P 01, w 01 ), (P 12, w 12 ), (P 21, w 21 ). We define the value w = w 01 + w 10 + w 12 + w 21 and G 1 as the barycentre of the weighted points (G 0, 2) and (G 2, w). The point M ( 1 2, 1 2) satisfies the two following formulas: ( 1 OM 2, 1 ) 1 ( = (2 + w) ) OG 1 + 2w 11 OP 11 (15) w + 2w 11 ( 1 w 11 M 2, 1 ) P 11 = 2 + w ( 1 M 2 2 2, 1 ) G 1 (16) 2 From the last formula we deduce that P 11 belongs to the line ( M ( 1 2, 1 2) G1 ). Proof. Evaluating equation (2) of the RBBSs at the point OM ( 1 2, 1 2 ) gives: ( 1 OM 2, 1 ) = 2 2 i=0 j=0 2 ( ) ( ) 1 1 w ij B i B j OP ij i=0 j=0 2 ( 1 w ij B i 2 ) ( ) 1 B j 2

175 10 First, let us consider the denominator of this fraction: 2 2 ( ) ( ) ( 1 w ij B i B j = B i = = i=0 j=0 w w w i=0 w w w w 00+w 02+w 20+w w01+w10+w21+w = w 00 + w 02 + w 20 + w = 2 + w + 2w ) (wi0 4 + w i1 2 + w i2 4 w w w w w 01 + w 10 + w 21 + w 12 8 Second, the numerator can be similarly expressed as: 2 ( 1 B i 2 i=0 w 00 ) (wi0 4 OP i0 + w i1 OP i1 + w ) i2 OP i2 = w 11 4 OP 00 + w 01 OP 01 + w 02 OP 02 + w 10 OP 10 + w 11 OP w 12 OP 12 + w i0 OP 20 + w 21 OP 21 + w 22 OP 22 ( = OP OP OP ) OP ( w01 OP 01 + w 10 OP 10 + w 12 OP 12 + w ) 21 OP 21 + w 11 OP = 1 OG 0 + w OG 2 + w 11 OP We may then write: ( 1 OM 2, 1 ) ( 1 1 = 2 2+w+2w 11 OG 0 + w OG 2 + w ) 11 OP ( 8 1 = OG 0 + w OG 2 + w ) 11 OP w + 2w ( = 2 OG 0 + w ) OG 2 + 2w 11 OP w + 2w 11 1 ( = (2 + w) ) OG 1 + 2w 11 OP w + 2w 11 which proves the result (15). This latter is valid for any point O so it is valid for the point M ( 1 2, ( 2) 1. Hence, substituting O by M 1 2, 2) 1 in (15) gives: ( 1 (2 + w + 2w 11 ) M 2, 1 ) ( 1 M 2 2, 1 ) = 2 ( 1 (2 + w) M 2, 1 ) ( 1 G 1 + 2w 11 M 2 2, 1 ) P 11 2 )

176 Consequently, we have: 0 = (2 + w) M ( 1 2, 1 2 ) G 1 + 2w 11 M ( 1 2, 1 2 ) P 11. Hence: w 11 M ( 1, 1) P = 2 + w M ( 1 2 2, 1) G 2 1 Theorem 6. Let G 3 be the barycentre of weighted points (P 00, 9), (P 20, 9), (P 02, 1), (P 22, 1), (P 01, 6w 01 ), (P 21, 6w 21 ), (P 10, 18w 10 ), (P 12, 2w 12 ), and W 1 = w w w w 21. The point M ( 1 2, 4) 1 satisfies the two following formulas: ( 1 OM 2, 1 ) ( ) 1 = 4 W 1+12w 11 W 1 OG w 11 OP 11 (17) ( 1 (W w 11 ) G 3 M 2, 1 ) = 12w 11 G 3 P 11 (18) 4 From the last formula we deduce that P 11 belongs to the line ( G 3 M ( 1 2, 4)) 1. Proof. Before starting the proof of result (17) for point ( B 1 0 4) = 9 16, B ( ) OM ( 1 2, 1 4 = ) = 3 8 and B 2 ( i=0 j=0 ) = ( ) ( ) 1 1 w ij B i B j 2 4 The denominator can be easily reduced to: 2 2 ( ) ( ) ( 1 w ij B i B j = B i i=0 j=0 i=0 11 OM ( 1, 1 ), recall that 2 4. By formula (2) we have: 2 i=0 j=0 2 ( ) ( ) 1 1 w ij B i B j OP ij 2 4 ) ( 9wi w i w ) i2 16 = 9w w 20 + w 02 + w w w w 10 + w w = w w w 10 + w w = W w Using this result and expanding the numerator gives the required proof: ( 1 OM 2, 1 ) ( 64 9 = OP w 01 OP 01 + w ) 02 OP W w ( OP w 11 OP w ) 02 OP W w ( 64 9 OP w 21 OP ) OP 22 W w ( ) = W 1 OG w 11 OP 11 W w 11

177 12 From these results we deduce: ( 1 (W w 11 ) G 3 M 2, 1 ) 4 which is the result (18) = 12w 11 G 3 P 11 Theorem 7. Let G 4 be the barycentre of weighted points (P 00, 9), (P 20, 1), (P 02, 9), (P 22, 1), (P 10, 6w 10 ), (P 12, 6w 12 ), (P 01, 18w 01 ), (P 21, 2w 21 ), and W 2 = w w w w 12. The point M ( 1 4, 2) 1 satisfies the two following formulas: ) ( 1 4, 1 2 ( ) 1 OM = W 2+12w 11 W 2 OG w 11 OP 11 ( 1 (W w 11 ) G 4 M 4, 1 ) 2 (19) = 12w 11 G 4 P 11 (20) From the last formula we deduce that P 11 belongs to the line ( G 4 M ( 1 4, 1 2)). Proof. The results (19) and (20) can be proved in the same way as (17) and (18) or (15) and (16). 5 A new Dupin cyclide to RBBS conversion algorithm In this section we propose a new algorithm (Algorithm 1) for converting a Dupin cyclide patch or a whole Dupin cyclide into RBBS form. The algorithm is based on the barycentric properties of RBBSs given by the theorems of Sections 3 and 4. The goal is to develop a conversion method that exploits and keeps circular symmetries along the isoparametric curves of Dupin cyclides. These latter are not surfaces of revolution, so, in step six of this algorithm, we have to be sure that lines (G 1 Γ (θ 2, ψ 2 )), (G 3 Γ (θ 2, ψ 3 )) and (G 4 Γ (θ 3, ψ 2 )) have the same point of intersection. This is true provided that θ 0 and θ 1 (or ψ 0 and ψ 1 ) are symmetrical compared to 0 or π on the trigonometric circle. A set of conversion examples is presented in the following sections. Algorithm 1 Given: A Dupin cyclide defined by a parametric map Γ, and a patch on this cyclide delimited by parameter values: θ 0, θ 1, ψ 0 and ψ 1 with θ 0 θ 1 < π and ψ 0 ψ 1 < π. These values also define four (circular) curvature lines on the Dupin cyclide Find: The representation of this patch as a RBBS S over [0, 1] [0, 1], defined by nine control points P ij and nine weights w ij, 0 i, j < 2. Weights w ij will be equal to one except w 10, w 01, w 21, w 12 and w 11, which can be either positive or negative. Procedure:

178 13 1. Obtain corner control points directly by: P 00 = Γ (θ 0, ψ 0 ), P 02 = Γ (θ 1, ψ 0 ), P 20 = Γ (θ 0, ψ 1 ), P 22 = Γ (θ 1, ψ 1 ). 2. Find centres of the four circles of curvature using a point on each line of curvature. 3. Find control points P 01, P 10, P 12 and P 21 on the median planes of curvature lines using equation (9) of Theorem Calculate weights w 10, w 01, w 21 and w 12 using equations (11) or (12) of Theorem Consider two RQBC γ u and γ v defined on the borders of the region to be converted. Control points and the weight of γ u are P 00, P 10, P 20 and w 10. Those of γ v are P 00, P 01, P 02 and w 01. Find θ 2 and θ 3 solutions of equations γ u ( 1 2 ) = Γ (θ 2, ψ 0 ) and γ u ( 1 4 ) = Γ (θ 3, ψ 0 ). Find ψ 2 and ψ 3 solutions of equations γ v ( 1 2 ) = Γ (θ 0, ψ 2 ) and γ v ( 1 4 ) = Γ (θ 0, ψ 3 ). 6. Compute the last control point P 11 as the intersection of lines (G 1 Γ (θ 2, ψ 2 )) and (G 3 Γ (θ 2, ψ 3 )). Constructions of G 1 and G 3 are given in Theorems 5 and Compute weight w 11, using equation (16) of Theorem Conversion examples Figure 7 illustrates the conversions of two Dupin cyclide patches into RBBSs using the proposed algorithm. For the first example (the upper subfigures), we obtained a standard RBBS having only positive weights. For the second one (the lower subfigures), in which the cyclide patch is delimited by ψ 1 = π, we obtained a RBBS with positive and negative weights. These are positive along curvature lines with θ constant, and negative along curvature lines with ψ constant. Fig. 7. Conversion of two cyclide patches into RBBSs. Upper, the result is a standard RBBS having only positive weights. Lower, the result is a RBBS with positive and negative weights

179 Comparison of conversion algorithms To make a significant comparison of the various algorithms for converting Dupin cyclides to RBBS form (Pratt s original algorithm, the new variant of the Pratt s algorithm and the barycentric algorithm), we have used the following criteria: Entire cyclide: whether it is possible or not to convert a whole Dupin cyclide into a set of RBBSs. Number of RBBSs: The minimum number of RBBSs needed to represent a whole Dupin cyclide. Parameter constraints: what are the constraints on parameters θ 0, θ 1, ψ 0 and ψ 1? Prohibited values: Are there particular prohibited values for parameters θ 0, θ 1, ψ 0 and ψ 1? Pratt s Variant of Barycentric algorithm Pratt s algorithm algorithm Entire cyclide no yes yes Number of RBBSs / 9 4 (θ 0, θ 1) or (ψ 0, ψ 1) θ0 θ 1 < π Geometric constraints no symmetrical ψ 0 ψ 1 < π compared to 0 or π. Prohibited value π π no Table 1. Comparison between Pratt s algorithm, its variant and the barycentric algorithm. Table 1 summarizes this comparison. One can note that to convert a whole Dupin cyclide we need: Only four RBBSs if the new algorithm is used, nine RBBSs if the Pratt s algorithm is used, and six RBBSs if the Pratt s algorithm and its variant are combined and used. Figure 8 shows this difference in the number of resulting RBBSs. Dupin cyclides are very useful for blending quadric surfaces [8, 13 15]. To show conversion of a blending Dupin cyclide we applied the method proposed in [8] to construct the blending cyclide of the left subfigure of Figure 9 and converted it to RBBSs by the three conversion algorithms discussed in this paper. We note here that conversion showed in the middle subfigure can be obtained either by the new algorithm or by a combination of Pratt s algorithm and its variant; two RBBSs are enough to ensure a correct conversion. On the other hand, Pratt s algorithm gives conversion showed on the right subfigure. Although in this case, the minimal number of RBBSs is three, the surfaces obtained here have only positive weights so they lie completely inside their control polyhedron. Another case where the new algorithm is better than both of others is shown by Figure 10. The cyclide patch (left subfigure) is the one of Figure 5 where Pratt s

180 15 Fig. 8. Comparison of conversion algorithms. Upper left, the cyclide to be converted. Upper right, result of the new algorithm: only four RBBSs are necessary. Lower left, result of the combination of Pratt s algorithm and its variant, six RBBSs are necessary. Lower right, result of the variant of Pratt s algorithm, nine RBBSs are necessary. Fig. 9. Conversion of cylinder/plane blending Dupin cyclide. Left, the blending cyclide. Middle, conversion into two RBBSs. Right, conversion into three RBBSs algorithm and its variant have given incorrect conversions. The new algorithm exactly reproduces the original cyclide patch (Figure 10 right). Another advantage of the new algorithm is the possibility of converting a Dupin cyclide patch delimited by a curvature line corresponding to a parameter value of π, which is not feasible either with Pratt s algorithm or its variant. This is shown in Figure 11 where the cyclide patch to be converted is a blending surface of a cylinder and a plane. Horizontally, it is delimited, on the cylinder side by ψ 1 = π 2 and on the plane side by ψ 0 = π. Neither Pratt s algorithm nor its variant can be used to achieve this conversion. Two samples of possible conversions, using the barycentric algorithm, are given on subfigures 11 middle and 11 right. 5.3 A complete case study As control points of RBBSs resulting from conversion may be far removed from the patches themselves, it is often difficult to draw the control polygon on figures

181 16 Fig. 10. Another conversion result. The new algorithm gives exact conversion (right subfigure), while other algorithms fail (see Figure 5. ) Fig. 11. Conversion of cylinder/plane blending Dupin cyclide where neither Pratt s algorithm nor its variant can be applied. Left, the blending cyclide. Middle and right, two examples of possible conversions that show these RBBSs. So, in this section we give more details concerning the conversion of the cyclide patch of Figure 5 left, and the RBBSs given by the conversion algorithms. Parameters defining the cyclide patch are a = 6, c = 2, µ = 3, θ 0 = 2π 3, θ 1 = 4π 3, ψ 0 = 5π 6 and ψ 1 = 3π 2. Table 2 gives control points and weights of RBBSs of Figure 5 middle and Figure 10 right. This table shows how computed control points differ from one algorithm to another. A value of 1 is an exact value, whereas a value of is a rounded of value. The only difference between Pratt s algorithm and its variant is the fact that negative weights become positive. On the other hand, weights computed using our algorithm are smaller than those given by Pratt s algorithm; moreover, the new algorithm gives exact values for corner control points, unlike the other algorithms. [Points;Weights] Pratt s algorithm barycentric algorithm [P 00; w 00] [( 3.466; 8.206; 2.204); ] [( 3.466; 8.206; 2.204), 1] [P 01; w 01] [( 5.995; ; 5.302); ] [( 5.995; ; 5.302); 0.384] [P 02; w 02] [( 1.667; 4.899; 3.771); ] [( 1.667; 4.899; 3.771); 1] [P 10; w 10] [( ; 0.191; 7.807); ] [( ; 0.422; 7.807); 0.247] [P 11; w 11] [( ; 0.682; ); 5.072] [( ; 0; ); 0.042] [P 12; w 12] [( 9.667; 0.566; 6.600); ] [( 9.667; 0.117; 6.600); 0.500] [P 20; w 20] [( 3.466; 8.205; 2.204); ] [( 3.466; 8.205; 2.204); 1] [P 21; w 21] [( 5.995; ; 5.302); ] [( 5.995; ; 5.302); 0.384] [P 22; w 22] [( 1.667; 4.899; 3.771); ] [( 1.667; 4.899; 3.771); 1] Table 2. Comparison of control points obtained with Pratt s algorithm and barycentric algorithm.

182 17 6 Conclusion In this paper, we have have used the symmetry properties of circles and Bernstein polynomials to prove seven theorems concerning barycentric properties of RBBSs. These properties have been employed in a new algorithm for the conversion of Dupin cyclides to RBBSs. Several examples of the use of the algorithm have been given. In future it is proposed to extend the algorithm for the conversion of supercyclides (affine or projective transformations of Dupin cyclides) to RBBSs. References 1. Piegl, L., Tiller, W.: A menagerie of rational B-spline circles. IEEE Computer Graphics and Applications 9 (1989) Forrest, A.R.: Curves and Surfaces for Computer-Aided Design. PhD thesis, University of Cambridge, UK (1968) 3. Demengel, G., Pouget, J.: Mathématiques des Courbes et des Surfaces: Modèles de Bézier, des B-Splines et des NURBS. Volume 1. Ellipse (1998) 4. Hoschek, J., Lasser, D.: Fundamentals of Computer Aided Geometric Design. A.K.Peters, Wellesley, MA. (1993) 5. Pratt, M.J.: Cyclides in computer aided geometric design. Computer Aided Geometric Design 7 (1990) Chandru, V., Dutta, D., Hoffmann, C.M.: Variable radius blending using Dupin cyclides. In Wozny, M., Turner, J.U., Preiss, K., eds.: Geometric Modelling for Product Engineering, North-Holland Publ. Co. (1990) (Proc. IFIP/NSF Workshop on Geometric Modelling, Rensselaerville, NY, Sept 1988). 7. Degen, W.L.F.: Generalized cyclides for use in CAGD. In Bowyer, A., ed.: Computer-Aided Surface Geometry and Design, Oxford University Press (1994) (Proc. 4th IMA Conference on the Mathematics of Surfaces, Bath, UK, Sept. 1990). 8. Pratt, M.J.: Cyclides in computer aided geometric design II. Computer Aided Geometric Design 12 (1995) Dutta, D., Martin, R.R., Pratt, M.J.: Cyclides in surface and solid modeling. IEEE Computer Graphics and Applications 13 (1993) Paluszny, M., Boehm, W.: General cyclides. Computer Aided Geometric Design 15 (1998) Shene, C.: Blending two cones with Dupin cyclides. Computer Aided Geometric Design 15 (1998) Farin, G.: Curves And Surfaces. 3 edn. Academic Press (1993) 13. Aumann, G.: Curvature continuous connections of cones and cylinders. Computeraided Design 27 (1995) Shene, C.: Do blending and offsetting commute for Dupin cyclides? Computer Aided Geometric Design 17 (2000) Wallner, J., Pottmann, H.: Rational blending surfaces between quadrics. Computer Aided Geometric Design 14 (1997)

183 EUROGRAPHICS 2004 / M.-P. Cani and M. Slater (Guest Editors) Volume 23 (2004), Number 3 Dupin Cyclide Blends Between Quadric Surfaces for Shape Modeling Sebti Foufou and Lionel Garnier LE2I, UMR CNRS 5158, UFR Sciences, Université de Bourgogne, BP 47870, Dijon Cedex, France sfoufou@u-bourgogne.fr, lgarnier@u-bourgogne.fr Abstract We introduce a novel method to define Dupin cyclide blends between quadric primitives. Dupin cyclides are nonspherical algebraic surfaces discovered by French mathematician Pierre-Charles Dupin at the beginning of the 19th century. As a Dupin cyclide can be fully characterized by its principal circles, we have focussed our study on how to determine principal circles tangent to both quadrics being blended. This ensures that the Dupin cyclide we are constructing constitutes a G 1 blend. We use the Rational Quadratic Bézier Curve (RQBC) representation of circular arcs to model the principal circles, so the construction of each circle is reduced to the determination of the three control points of the RQBC representing the circle. In this work, we regard the blending of two quadric primitives A and B as two complementary blending operations: primitive A-cylinder and cylinder-primitive B; two Dupin cyclides and a cylinder are then defined for each blending operation. In general the cylinder is not useful and may be reduced to a simple circle. A complete shape design example is presented to illustrate the modeling of Eurographics 04 Hugo using a limited number of quadrics combined using Dupin cyclide blends. Categories and Subject Descriptors (according to ACM CCS): I.3.5 [Computer Graphics]: Computational Geometry and Object Modeling 1. Introduction Dupin cyclides are non-spherical algebraic surfaces discovered by French mathematician Pierre-Charles Dupin at the beginning of the 19th century [Dup22]. These surfaces have an essential property: all their curvature lines are circular. R. Martin, in his 1982 PhD thesis, is the first author who thought of using use these surfaces in CAD/CAM and geometric modeling [Mar82], using cyclides in the formulation of his principal patches. Afterwards, Dupin cyclides gained a lot of attention, and their algebraic and geometric properties have been studied in depth by many authors [BG92, Ber78, Heb81, Pin85, Ban70, DMP93, Pra97] which has allowed to see the adequacy and the contribution of these surfaces to geometric modeling. Currently guest researcher at the National Institute of Standards and Technology, Gaithersburg, MD 20899, USA. sfoufou@nist.gov From the CAD/CAM point of view, a cyclide is an algebraic surface of low degree having an easy to understand parametric representation (with 3 parameters) as well as two equivalent implicit equations [Pra97, For12]. Their low degree algebraic equation and simple parametric representation give cyclides advantages of both implicit and parametric formulations. The low algebraic degree allows the development of robust and quick geometric computation algorithms (point on surface, derivatives, tangents, lines of curvatures, etc.). The parametric form allows easy editing and quick visualization of these surfaces. Another important point that marks the beauty of Dupin cyclides is their well-established conversions to other parametric surfaces such as Bézier, Bspline, or NURBS [Pra97, Boe90, AD96, Deg94, ZS92, SD95]. This conversion of Dupin cyclides into rational quadric Bézier patches bridges the gap between these two modeling tools c The Eurographics Association and Blackwell Publishing Published by Blackwell Publishing, 9600 Garsington Road, Oxford OX4 2DQ, UK and 350 Main Street, Malden, MA 02148, USA.

184 S. Foufou & L. Garnier / Quadrics blending by Dupin cyclides and may accelerate the introduction of cyclides into geometric modeling systems based on classical parametric surfaces. This papers introduces a novel method to define Dupin cyclide blends between quadric surfaces. As it is well established that the construction of a Dupin cyclide is totally dependant on its principal circles, we have focussed our attention on how to determine principal circles tangent to both quadrics being blended. This ensures that the Dupin cyclide we are constructing constitutes a G 1 blend. We use the Rational Quadratic Bézier Curves (RQBCs) representation of circular arcs to model the principal circles, so the construction of each and every circle is reduced to the determination of the three control points of the RQBC representing the circle. For short, in the rest of this paper we refer to Dupin cyclides as cyclides. In this work, we regard the blending of two quadric primitives A and B as two complementary blending operations primitive A-cylinder and cylinder-primitive B, two Dupin cyclides and a cylinder are then defined for each blending operation. In general the cylinder is not useful and may be reduced to a simple circle. By proceeding this way we aim at increasing the flexibility of quadric combination for shape design and limiting the number of particular blends; for example, a complete combination of four quadric primitives (cylinder, cone, sphere and hyperboloid) requires the definition of ten variants of the blending algorithm, while employing our approach requires only four variants (cylinder-cylinder, cylinder-cone, cylinder-sphere and cylinder-hyperboloid). The paper is organized as follows. Section 2 reviews some necessary material needed in the rest of the paper. Definitions of cyclides, Dupin cyclides, RQBCs together with the representation of circular arcs using RQBCs. Sections 3, 4, 5 and 6 describe our quadric-quadric blending algorithm. For lack of place, only a subset of blending cases is considered: cylinder-cyclide (Sec. 3), cylinder-cone (Sec. 4), cylindersphere (Sec. 5) and cone-sphere (Sec. 6). A complete shape design example is presented in section 7: it illustrates the modeling of the Eurographics 04 Hugo using a limited number of quadrics combined with Dupin cyclide blends. The last section concludes with a discussion of this work s contribution and of suggested perspectives for future research. 2. Background 2.1. The cyclide surfaces Anallagmatic surfaces are surfaces invariant by at least one inversion. They are the envelope surfaces of a moving sphere, which is orthogonal to a given fixed sphere (called the directrix sphere), and the centres of which lie on a given quadric surface [Dar73, Dar17]. Moutard proved in 1804 that cyclides are a special kind of anallagmatic surfaces: they are invariant by five inversions [Mou04]. Two equivalent implicit equations characterize the cyclides of degree 4: r (x,y,z) 4 + 2P 1 (x,y,z) r (x,y,z) 2 + P 2 (x,y,z) = 0 (1) ( r (x,y,z) 2 + P 1 (x,y,z)) 2 = P 2 (x,y,z) (2) where P 1 is an homogeneous polynomial of degree 1, P 2 and P 2 are polynomials of degree 2 and r (x,y,z) = x 2 + y 2 + z 2. Cyclides of degree 3 are the images of cyclides of degree 4 by an inversion. Dupin cyclides are a special kind of cyclides: their spine curve is a conic curve, instead of a quadric surface [Dar73, Dar17] Dupin cyclides It is possible to define Dupin cyclides in various equivalent ways: Liouville showed that a Dupin cyclide is the image of a circular cone, a circular cylinder or a torus under an inversion; A Dupin cyclide is the envelope of spheres centered on a given conic and orthogonal to a given fixed sphere, called sphere of inversion: the latter is centered on the focal axis of the cyclide [Dar73, Dar17]; A Dupin cyclide is the envelope surface of a set of spheres, the centers M of which lies on a given conic with focus F, and the radius R of which is such that the distance FM + R is a given constant (this definition is due to Maxwell); A Dupin cyclide is the envelope surface of the spheres tangent to three given fixed spheres [Dup22]. Dupin cyclides of degree 4 depend on three independent parameters a, c and µ with a 2 > c 2. It is convenient to define b = a 2 c 2. Dupin cyclides have a parametric equation: x(θ;ψ) = µ(c acosθ cosψ) + b2 cosθ a ccosθ cosψ bsinθ (a µcosψ) y(θ;ψ) = (3) a ccosθ cosψ bsinψ (ccosθ µ) z(θ;ψ) = a ccosθ cosψ where (θ;ψ) [0;2π] 2, and two implicit equations: ( x 2 + y 2 + z 2 µ 2 + b 2) 2 4(ax cµ) 2 4b 2 y 2 = 0 (4) ( x 2 + y 2 + z 2 µ 2 b 2) 2 4(cx aµ) 2 + 4b 2 z 2 = 0 (5) Implicit equations were obtained by Darboux [Dar17] early in the last century by computing the implicit equation of the envelope of the spheres defining the Dupin cyclide. The same results are also given by Forsyth [For12]. According to the parameter values, there are three kinds of Dupin cyclides: ring cyclide, horned cyclide and spindle cyclide. Figure 1 shows examples of half Dupin cyclides. A Dupin cyclide admits two symmetry planes P y : (y = 0) and P z : (z = 0). The section of a Dupin cyclide by one of these two planes is the union of two circles called principal circles. Two of these principal circles are sufficient to determine the three parameters a, c and µ, and thus to define the Dupin cyclide. Figure 2 shows the two principal circles of a c The Eurographics Association and Blackwell Publishing 2004.

185 S. Foufou & L. Garnier / Quadrics blending by Dupin cyclides Figure 1: The three types of Dupin cyclides. Left: ring cyclide 0 c < µ a. Middle: horned cyclide 0 < µ c < a. Right: spindle cyclide 0 c a < µ. Figure 2: Cut of a Dupin cyclide by its symmetry plane P y : (y = 0). Dupin cyclide in plane P y. Only a part of principal circles is useful for blending: the useful arc will be represented as a RQBC in standard form. For example, to obtain parameters of the ring Dupin cyclide of Figure 2, we have: a = O 1O 2, µ = ρ 1 + ρ 2 and c = ρ 1 ρ 2 (6) where O i,ρ i, i = {1,2} are centers and radii of the principal circles. The curvature lines of Dupin cyclides are circles, obtained with θ or ψ constant [Pra90]. The blends with Dupin cyclides are made along lines of curvature [DMP93]: each blended surface meets the blending Dupin cyclide along lines of curvature. For more details regarding properties of Dupin cyclides, see [Pin85, CDH88, CDH89, BG92, Pra94, Pra95, She00] Dupin cyclides and quadrics blending The literature concerning the use of Dupin cyclides for the blending of quadric primitives is relatively rich, a great number of authors addressed this problem. The circular curvature lines property of Dupin cyclides facilitates the construction of the cyclide (or the portion of a cyclide) for the blending of two circular quadric primitives. Chandru et al. [CDH89] offer to use Dupin cyclides to compute variable radius blends and define an approximation strategy that can be applied in case of complex explicit construction of blends. Degen [Deg94] defines generalized cyclides as a new class of cyclides having more degrees of freedom than classical cyclides, and gives a universal representation of these surfaces and discusses the general conditions for the blending of a given surface with a generalized cyclide. Pratt [Pra90, Pra95] shows how to make piecewise cyclide blending surfaces, and extends the symmetric cyclide blends to include asymmetric problems, the particular case of the computation of double cyclide blends between two cones is given as an example of possible blending applications. Aumann [Aum95] investigates curvature continuous blending of cones and cylinders using normal ringed surfaces which are generated, like cyclides, by a circle of variable radius sweeping through space. Allen and Dutta [AD98] present a method to generate nonsingular transition surfaces between natural quadrics using either Dupin cyclides or parabolic cyclides, necessary and sufficient conditions for the existence of the cyclide transition surface are given. Also, Allen and Dutta [AD97a, AD97b] studied a special type of blends called pure blends. Paluszny and Boehm [PB98] study the joining of quadrics and propose to work in the 4-space. So, the joining of two cones, in 3-space, is reduced to the construction of a piecewise conic, in the 4-space, that satisfies two specific conditions. Shene [She98] shows how one can use cyclides to define the blending surface of two cones. Later on, the author makes use of offset surfaces to improve and generalize this work in order to compute the blending surface of two randomly positioned half cones [She00]. We consider the blending of two quadrics differently, by computing two Dupin cyclide blends and connecting them through an intermediary cylinder that can be reduced to the intersection circle between the two Dupin cyclide blends. This intermediary cylinder is used in the same way as the use of an intermediate sphere is proposed in [DMP93] and an intermediate cone is used in [Pra95] Rational Quadric Bézier Curves Rational Quadric Bézier Curves (RQBC) are the parametric curves defined by: OM(t) = w 0B 0 (t) OP 0 + w 1 B 1 (t) OP 1 + w 2 B 2 (t) OP 2 w 0 B 0 (t) + w 1 B 1 (t) + w 0 B 2 (t) where B i (t) are Bernstein polynomials of degree 2 and parameter t [0;1]. Line segment (P 0 P 1 ) is the tangent to the curve at point P 0, while line segment (P 2 P 1 ) is the tangent to the curve at point P 2. RQBCs can be used to represent conics; taking w 0 = w 2 = 1 and w 1 = w > 0, simplifies this representation and the value of w determines the nature of the represented conic: the curve is an arc of ellipse if 0 < w < 1, an arc of parabola if w = 1, an arc of hyperbola if w > 1. More details on Bézier curves and surfaces can be found in Farin [Far97] and in Hoschek and Lasser [HL93]. The symmetry property of Bernstein polynomials given by: (7) i [0;2]], t [0;1], B i (t) = B 2 i (1 t) (8) is essential for the representation of circular arcs since it ensures the symmetry of geometric constructions. c The Eurographics Association and Blackwell Publishing 2004.

186 S. Foufou & L. Garnier / Quadrics blending by Dupin cyclides 2.5. Arc of circle determined by RQBC In this section, we show the representation of arcs of circles using RQBC. This representation will be used to define the principal circles of the blending Dupin cyclide. Let P 0 and P 2 be two given points and P 1 a point of the perpendicular bisector of line segment (P 0 P 2 ) such that P 1 does not belong to this segment. There is a unique circle passing through P 0 and P 2 and tangent to (P 0 P 1 ) at P 0 and tangent to (P 2 P 1 ) at P 2 (Figure 3). The center O 0 of this circle is characterized by the control points of the RQBC and is given by: Figure 4: Cylinder-Dupin cyclide blending. P P 1 O 0 = t 0P1 I 1 t 0 = 0 P1 2 I 1 P 1 (9) P 0 P 1 where I 1 is the middle point of the line segment [P 0 P 2 ]. Figure 5: A cylinder-dupin cyclide blend Computation of principal circles Figure 3: Modeling circular arcs using RQBCs. 3. Cylinder-Dupin cyclide blending Let be the axis of the cylinder and C 0 a circle on the cylinder. Let B 0 and B 1 be two distinct points on C 0 and coplanar with (see Figure 4 left). To construct a Dupin cyclide having G 1 continuity with the cylinder, we have to determine its two principal circles (Figure 4 right) such that: These circles are tangent to the cylinder s generatrices at points B 0 and B 1. These circles may be defined either at the inner side or at the outer side of the cylinder. Centers of these circles pertain to line (B 0 B 1 ). We use equation (6) to compute the cyclide parameters a,µ and c. The trimming value for parameter ψ is π in the case of inner circles and 0 in the case of outer circles, while parameter θ [0;2π]. Figure 5 shows an example of Dupin cyclide constructed to be G 1 continuous with a cylinder. Let 1, 2 and be three coplanar lines. 1 and 2 are parallel and define the two generatrices of a cylinder of axis (see Figure 6). Let 1, 2 and be three coplanar lines, in the same plane as lines 1, 2 and. 1 and 2 are secant and define the two generatrices of a cone of axis. Consider the following relations: S = 1 2, C 1 = 1 1 and C 2 = 2 2. In order to represent circles C 1 (O 1,ρ 1 ) and C 2 (O 2,ρ 2 ) using rational quadric Bézier curves we need to compute four control points B 1 1, A 1 1, B 2 2 and A 2 2, such that A 1 C 1 = B 1 C 1 and A 2 C 2 = B 2 C 2. We note that, by definition, points B 1 and B 2 are symmetrical according to, while points A 1 and A 2 are symmetrical according to. 4. Cylinder-cone blending To construct a G 1 cyclide blend between a cone and a cylinder, we need to compute the cyclide s two principal circles C 1 (O 1,ρ 1 ) and C 2 (O 2,ρ 2 ), such that each circle is tangent to both generatrices of the cone and the cylinder through their lines of curvature. Figure 6: Construction used for cylinder-cone blending. A necessary condition on the computation of these points is that lines, 4, 3 and must be concurrent at point Ω. The computation can be done as follows: c The Eurographics Association and Blackwell Publishing 2004.

187 S. Foufou & L. Garnier / Quadrics blending by Dupin cyclides Compute 4 the bisector of ( 1 ; ) 1 and 3 the bisector of ( 2 ; ) 2 (see Figure 6). Define an application s D (p) that gives point p symmetrical to a given point p according to an axis D. Choose any point A 1 1, Other points are the result of the following transformations: B 1 = s 4 (A 1 ), B 2 = s (B 1 ) and A 2 = s 3 (B 2 ). A 1 = s (A 2 ) iff s s 3 s s 2 is the identity application (a rotation of angle 0 centered at Ω). The Dupin cyclide principal circles C 1 (O 1,ρ 1 ) and C 2 (O 2,ρ 2 ) can now be obtained using formula (9) Examples From the principal circles, it is easy to construct the Dupin cyclide blend between the cylinder and the cone. We have only to determine value ψ 1 delimiting the Dupin cyclide from the cone side, which means: find the value ψ 1 such that Γ(θ;ψ 1 ) of equation (3) is a circle on the cone. the generatrices of the cylinder and C is one of the main circles of the sphere. In this construction we consider that the main circle of the sphere and the cylinder axis are coplanar Computation of the principal circles Let be a line segment and C a circle, we look for a circle tangent to and to C as well, that amounts to computing the three control points A,B and C of the rational quadratic Bézier curve that models the circle, points B and C pertain to, while point A pertains to C such that AB = AC and (AC) (AΩ) (Figure 9). Algorithm (1) details the computation of these points. Algorithm 1 Obtaining Bézier control points for a G 1 - continuous circular arc blend between a straight line and a circle Given: A straight line, a circle C, of radius r and center Ω, and a point B. 1. Build F the image of Ω by the orthogonal projection of axis 2. G is one of the intersection between (FΩ) and C 3. A is in the intersection between (GB) and C 4. C is the intersection between and the tangent to C at point A Result : AC = BC, C, A C and (AΩ) (AC). Figure 7: Cone-cylinder spindle Dupin cyclide blends. Figures 7 and 8 show a set of examples of constructed Dupin cyclide blends. Blends of Figure 7 are trimmed spindle Dupin cyclides, while those of Figure 8 are trimmed ring Dupin cyclides. B α C β A π 2 γ γ r G F Ω B α Ω r π γ 2 γ G β γ C F A Figure 9: Circle tangent to a circle and a line segment. To prove the computation of points A,B and C, let us consider the two possible cases depicted in Figure 9. Figure 8: Cone-cylinder ring Dupin cyclide blends. 5. Cylinder-sphere blending In this case, we regard the computation of the principal circles of the Dupin cyclide as a double computation of a circle tangent to a line segment and a circle C, where is one of On Figure 9 left, we have BAG = 180 and (CA) (ΩA) so BAC + ΩAG = 90. Triangle BFG is right-angled and A [BG] so FBA + ÂGΩ = 90. ΩAG is an isosceles triangle in Ω so ΩAG = ÂGΩ = γ, which implies α = FBA = BAC = β and then BAC is an isosceles triangle in C, so BC = CA. On Figure 9 right, we have ÂGΩ = BGF because these angles are opposite by the vertex. BFG is a right-angled triangle so α + γ = 90. ΩAG is an isosceles triangle in Ω so ΩAG = ÂGΩ = γ. ΩAC = 90 and ΩAC = ΩAB + BAC = β+γ so β+γ = 90. As α+γ = 90, we have α = β so BAC is an isosceles triangle in C and then BC = CA. c The Eurographics Association and Blackwell Publishing 2004.

188 S. Foufou & L. Garnier / Quadrics blending by Dupin cyclides Computing principal circles of the Dupin cyclide blend is now straightforward (Figure 10), we only have to apply the above computations of A,B and C twice with the two generatrices of the cylinder and the main circles of the sphere to obtain the necessary control points A 1, C 1 et B 1 for the first circle and A 2, C 2 et B 2 for the second one. Constructions of Figure 10 are made in the plane determined by the axes of the cylinder and the center of the main circle of the sphere. Algorithm (2) indicates how these computations are are done. G2 2 B 2 C 2 F 2 Figure 12: Sphere-cylinder blending using spindle Dupin cyclides. A2 G 1 B2 C2 r Ω F2 2 1 B 1 C F1 1 A 2 A 1 r Ω G 2 6. Cone-sphere blending A 1 G 1 1 B 1 C 1 F 1 Figure 10: Constructions for cylinder-sphere blending. Ω R C ρ 1 Algorithm 2 Principal circles of Dupin cyclide blends between a cylinder and a sphere. Given: A cylinder with axis and two generatrices 1 and 2, a sphere with a main circle C(Ω,r), and two points B 1 1 and B 2 2, such that [B 1 B 2 ] is perpendicular to. 1. The axis determines two half-planes, P 1 and P 2 such that 1 P 1 and 2 P 2 2. For i {1,2}, find points G 1 P i and G 2 P 3 i and then compute points F i, A i, C i in P i Result: A 1, C 1 and B 1 are control points of the blending circle on one side, and A 2, C 2 and B 2 are control points of the blending circle on the other side. Dupin cyclide blend can now be constructed taking these circles as principal circles Examples From the principal circles we proceed in the same way as for the examples of subsection 4.2 to compute Dupin cyclide blends (construct and trim the surface). Figure 11: Sphere-cylinder blending using ring Dupin cyclides. Figures 11 and 12 show four examples of blends between a cylinder and a sphere by ring and spindle Dupin cyclides. C 1 O 1 1 C 1 C 2 2 ρ 2 O 2 D 1 D 2 Figure 13: Construction used for cone-sphere blending. The cylinder defined by 1 and 2 is introduced to simplify the operation. The use of the blending methods developed in sections 4 and 5 allows an easy computing of cone-sphere blends. We decompose this operation into two sub-operations: conecylinder and cylinder-sphere. The same cylinder is used for both sub-operations (see Figure 13) and is generally reduced to a circle (the common intersection of the two Dupin cyclide blends). This novel method of cone-sphere blends computation is applied on the examples of figure 14, shown results give an idea of the different possible combinations one can do. Each one of the cone-sphere blending algorithms proposed in [Pra90, DMP93, GFN03] give a blend composed of one single cyclide as we can see on the top-left sub-figure of figure 14, parameters of the resulting cyclide are: a 10.23, µ 7.04, c The blend obtained using our algorithm may be composed of either two cyclides or two cyclides and a cylinder. In the first case, the cyclides have G 1 continuity trough their circle of intersection (see the topright sub-figure of figure 14). Parameters of the cyclide on the cone side are: a 14.1, µ 11.79, c 6.09, while parameters of the cyclide on the sphere side are: a 8.09, µ 5.77, c In the other case, each cyclide has a G 1 continuity with the cylinder. In the bottom sub-figures of figure 14, we construct the cylinder by changing only the parameters of the cyclide on the sphere side, we have: a 7.24, C 2 c The Eurographics Association and Blackwell Publishing 2004.

Curriculum Vitae. Qualifié aux fonctions de Professeurs des universités en sections 27 et 61.

Curriculum Vitae. Qualifié aux fonctions de Professeurs des universités en sections 27 et 61. Curriculum Vitae Sebti FOUFOU Maître de conférences, section 27, depuis sept. 98 Laboratoire LE2i, UFR Sciences et Techniques, Université de Bourgogne, BP 47870, 21078 Dijon, France 40 ans, Marié, 3 enfants,

Plus en détail

Analyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57

Analyse de la vidéo. Chapitre 4.1 - La modélisation pour le suivi d objet. 10 mars 2015. Chapitre 4.1 - La modélisation d objet 1 / 57 Analyse de la vidéo Chapitre 4.1 - La modélisation pour le suivi d objet 10 mars 2015 Chapitre 4.1 - La modélisation d objet 1 / 57 La représentation d objets Plan de la présentation 1 La représentation

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de Lyon/Université Claude Bernard Lyon 1/Université

Plus en détail

ANALYSE CATIA V5. 14/02/2011 Daniel Geffroy IUT GMP Le Mans

ANALYSE CATIA V5. 14/02/2011 Daniel Geffroy IUT GMP Le Mans ANALYSE CATIA V5 1 GSA Generative Structural Analysis 2 Modèle géométrique volumique Post traitement Pré traitement Maillage Conditions aux limites 3 Ouverture du module Choix du type d analyse 4 Calcul

Plus en détail

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007

Vision industrielle et télédétection - Détection d ellipses. Guillaume Martinez 17 décembre 2007 Vision industrielle et télédétection - Détection d ellipses Guillaume Martinez 17 décembre 2007 1 Table des matières 1 Le projet 3 1.1 Objectif................................ 3 1.2 Les choix techniques.........................

Plus en détail

Big Data et Graphes : Quelques pistes de recherche

Big Data et Graphes : Quelques pistes de recherche Big Data et Graphes : Quelques pistes de recherche Hamamache Kheddouci http://liris.cnrs.fr/hamamache.kheddouci Laboratoire d'informatique en Image et Systèmes d'information LIRIS UMR 5205 CNRS/INSA de

Plus en détail

Object Removal by Exemplar-Based Inpainting

Object Removal by Exemplar-Based Inpainting Object Removal by Exemplar-Based Inpainting Kévin Polisano A partir d un article de A. Criminisi, P. Pérez & H. K. Toyama 14/02/2013 Kévin Polisano Object Removal by Exemplar-Based Inpainting 14/02/2013

Plus en détail

Université de Bangui. Modélisons en UML

Université de Bangui. Modélisons en UML Université de Bangui CRM Modélisons en UML Ce cours a été possible grâce à l initiative d Apollinaire MOLAYE qui m a contacté pour vous faire bénéficier de mes connaissances en nouvelles technologies et

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Module : Analyse 03 Chapitre 00 : Fonctions de plusieurs variables Généralités et Rappels des notions topologiques dans : Qu est- ce que?: Mathématiquement, n étant un entier non nul, on définit comme

Plus en détail

Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante.

Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante. Sujet 1 : Diagnostique du Syndrome de l apnée du sommeil par des techniques d analyse discriminante. Objectifs et formulation du sujet Le syndrome de l apnée du sommeil (SAS) est un problème de santé publique

Plus en détail

modélisation solide et dessin technique

modélisation solide et dessin technique CHAPITRE 1 modélisation solide et dessin technique Les sciences graphiques regroupent un ensemble de techniques graphiques utilisées quotidiennement par les ingénieurs pour exprimer des idées, concevoir

Plus en détail

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION

Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Sciences de Gestion Spécialité : SYSTÈMES D INFORMATION DE GESTION Classe de terminale de la série Sciences et Technologie du Management et de la Gestion Préambule Présentation Les technologies de l information

Plus en détail

Utilisation d informations visuelles dynamiques en asservissement visuel Armel Crétual IRISA, projet TEMIS puis VISTA L asservissement visuel géométrique Principe : Réalisation d une tâche robotique par

Plus en détail

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4)

FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4) FONCTIONS DE PLUSIEURS VARIABLES (Outils Mathématiques 4) Bernard Le Stum Université de Rennes 1 Version du 13 mars 2009 Table des matières 1 Fonctions partielles, courbes de niveau 1 2 Limites et continuité

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme?

Exercices Alternatifs. Quelqu un aurait-il vu passer un polynôme? Exercices Alternatifs Quelqu un aurait-il vu passer un polynôme? c 2004 Frédéric Le Roux, François Béguin (copyleft LDL : Licence pour Documents Libres). Sources et figures: polynome-lagrange/. Version

Plus en détail

Fonctions de plusieurs variables

Fonctions de plusieurs variables Maths MP Exercices Fonctions de plusieurs variables Les indications ne sont ici que pour être consultées après le T (pour les exercices non traités). Avant et pendant le T, tenez bon et n allez pas les

Plus en détail

données en connaissance et en actions?

données en connaissance et en actions? 1 Partie 2 : Présentation de la plateforme SPSS Modeler : Comment transformer vos données en connaissance et en actions? SPSS Modeler : l atelier de data mining Large gamme de techniques d analyse (algorithmes)

Plus en détail

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique

SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique SOCLE COMMUN - La Compétence 3 Les principaux éléments de mathématiques et la culture scientifique et technologique DOMAINE P3.C3.D1. Pratiquer une démarche scientifique et technologique, résoudre des

Plus en détail

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION

REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION REMOTE DATA ACQUISITION OF EMBEDDED SYSTEMS USING INTERNET TECHNOLOGIES: A ROLE-BASED GENERIC SYSTEM SPECIFICATION THÈSE N O 2388 (2001) PRÉSENTÉE AU DÉPARTEMENT D'INFORMATIQUE ÉCOLE POLYTECHNIQUE FÉDÉRALE

Plus en détail

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE»

MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE» MODELISATION UN ATELIER DE MODELISATION «RATIONAL ROSE» Du cours Modélisation Semi -Formelle de Système d Information Du Professeur Jean-Pierre GIRAUDIN Décembre. 2002 1 Table de matière Partie 1...2 1.1

Plus en détail

Résolution d équations non linéaires

Résolution d équations non linéaires Analyse Numérique Résolution d équations non linéaires Said EL HAJJI et Touria GHEMIRES Université Mohammed V - Agdal. Faculté des Sciences Département de Mathématiques. Laboratoire de Mathématiques, Informatique

Plus en détail

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR

Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Reconstruction de bâtiments en 3D à partir de nuages de points LIDAR Mickaël Bergem 25 juin 2014 Maillages et applications 1 Table des matières Introduction 3 1 La modélisation numérique de milieux urbains

Plus en détail

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes.

Sujet proposé par Yves M. LEROY. Cet examen se compose d un exercice et de deux problèmes. Ces trois parties sont indépendantes. Promotion X 004 COURS D ANALYSE DES STRUCTURES MÉCANIQUES PAR LA MÉTHODE DES ELEMENTS FINIS (MEC 568) contrôle non classant (7 mars 007, heures) Documents autorisés : polycopié ; documents et notes de

Plus en détail

Les algorithmes de base du graphisme

Les algorithmes de base du graphisme Les algorithmes de base du graphisme Table des matières 1 Traçage 2 1.1 Segments de droites......................... 2 1.1.1 Algorithmes simples.................... 3 1.1.2 Algorithmes de Bresenham (1965).............

Plus en détail

Une méthode d apprentissage pour la composition de services web

Une méthode d apprentissage pour la composition de services web Une méthode d apprentissage pour la composition de services web Soufiene Lajmi * Chirine Ghedira ** Khaled Ghedira * * Laboratoire SOIE (ENSI) University of Manouba, Manouba 2010, Tunisia Soufiene.lajmi@ensi.rnu.tn,

Plus en détail

Synthèse d'images I. Venceslas BIRI IGM Université de Marne La

Synthèse d'images I. Venceslas BIRI IGM Université de Marne La Synthèse d'images I Venceslas BIRI IGM Université de Marne La La synthèse d'images II. Rendu & Affichage 1. Introduction Venceslas BIRI IGM Université de Marne La Introduction Objectif Réaliser une image

Plus en détail

Calculer avec Sage. Revision : 417 du 1 er juillet 2010

Calculer avec Sage. Revision : 417 du 1 er juillet 2010 Calculer avec Sage Alexandre Casamayou Guillaume Connan Thierry Dumont Laurent Fousse François Maltey Matthias Meulien Marc Mezzarobba Clément Pernet Nicolas Thiéry Paul Zimmermann Revision : 417 du 1

Plus en détail

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE

COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE COURS EULER: PROGRAMME DE LA PREMIÈRE ANNÉE Le cours de la première année concerne les sujets de 9ème et 10ème années scolaires. Il y a bien sûr des différences puisque nous commençons par exemple par

Plus en détail

Modélisation 3D par le modèle de turbulence k-ε standard de la position de la tête sur la force de résistance rencontrée par les nageurs.

Modélisation 3D par le modèle de turbulence k-ε standard de la position de la tête sur la force de résistance rencontrée par les nageurs. Modélisation 3D par le modèle de turbulence k-ε standard de la position de la tête sur la force de résistance rencontrée par les nageurs. H. ZAÏDI a, S. FOHANNO a, R. TAÏAR b, G. POLIDORI a a Laboratoire

Plus en détail

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies

Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Projet de traitement d'image - SI 381 reconstitution 3D d'intérieur à partir de photographies Régis Boulet Charlie Demené Alexis Guyot Balthazar Neveu Guillaume Tartavel Sommaire Sommaire... 1 Structure

Plus en détail

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude

INF 1250 INTRODUCTION AUX BASES DE DONNÉES. Guide d étude INF 1250 INTRODUCTION AUX BASES DE DONNÉES Guide d étude Sous la direction de Olga Mariño Télé-université Montréal (Québec) 2011 INF 1250 Introduction aux bases de données 2 INTRODUCTION Le Guide d étude

Plus en détail

Formats 3D Critères d utilisation dans les échanges Frédéric CHAMBOLLE PSA Peugeot Citroën Direction des Systèmes d Information

Formats 3D Critères d utilisation dans les échanges Frédéric CHAMBOLLE PSA Peugeot Citroën Direction des Systèmes d Information Formats 3D Critères d utilisation dans les échanges Frédéric CHAMBOLLE PSA Peugeot Citroën Direction des Systèmes d Information Atelier Ingénierie GALIA 30 novembre 2010 Introduction Les travaux de ce

Plus en détail

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories :

L analyse d images regroupe plusieurs disciplines que l on classe en deux catégories : La vision nous permet de percevoir et d interpreter le monde qui nous entoure. La vision artificielle a pour but de reproduire certaines fonctionnalités de la vision humaine au travers de l analyse d images.

Plus en détail

Traitement bas-niveau

Traitement bas-niveau Plan Introduction L approche contour (frontière) Introduction Objectifs Les traitements ont pour but d extraire l information utile et pertinente contenue dans l image en regard de l application considérée.

Plus en détail

Forthcoming Database

Forthcoming Database DISS.ETH NO. 15802 Forthcoming Database A Framework Approach for Data Visualization Applications A dissertation submitted to the SWISS FEDERAL INSTITUTE OF TECHNOLOGY ZURICH for the degree of Doctor of

Plus en détail

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test

Grandes lignes ASTRÉE. Logiciels critiques. Outils de certification classiques. Inspection manuelle. Definition. Test Grandes lignes Analyseur Statique de logiciels Temps RÉel Embarqués École Polytechnique École Normale Supérieure Mercredi 18 juillet 2005 1 Présentation d 2 Cadre théorique de l interprétation abstraite

Plus en détail

Deux disques dans un carré

Deux disques dans un carré Deux disques dans un carré Table des matières 1 Fiche résumé 2 2 Fiche élève Seconde - version 1 3 2.1 Le problème............................................... 3 2.2 Construction de la figure avec geogebra...............................

Plus en détail

An Ontology-Based Approach for Closed-Loop Product Lifecycle Management

An Ontology-Based Approach for Closed-Loop Product Lifecycle Management An Ontology-Based Approach for Closed-Loop Product Lifecycle Management THÈSE N O 4823 (2010) PRÉSENTÉE LE 15 OCTOBRE 2010 À LA FACULTÉ SCIENCES ET TECHNIQUES DE L'INGÉNIEUR LABORATOIRE DES OUTILS INFORMATIQUES

Plus en détail

Nomination persistante dans un modèle paramétrique. Identification non-ambiguë et appariement générique d entités topologiques.

Nomination persistante dans un modèle paramétrique. Identification non-ambiguë et appariement générique d entités topologiques. E cole N ationale S upérieure de M écanique et d A érotechnique Ecole Doctorale des Sciences Pour l Ingénieur Université de Poitiers THESE pour l obtention du grade de DOCTEUR DE L UNIVERSITE DE POITIERS

Plus en détail

physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178

physicien diplômé EPFZ originaire de France présentée acceptée sur proposition Thèse no. 7178 Thèse no. 7178 PROBLEMES D'OPTIMISATION DANS LES SYSTEMES DE CHAUFFAGE A DISTANCE présentée à l'ecole POLYTECHNIQUE FEDERALE DE ZURICH pour l'obtention du titre de Docteur es sciences naturelles par Alain

Plus en détail

Hervé Couturier EVP, SAP Technology Development

Hervé Couturier EVP, SAP Technology Development Hervé Couturier EVP, SAP Technology Development Hervé Biausser Directeur de l Ecole Centrale Paris Bernard Liautaud Fondateur de Business Objects Questions à: Hervé Couturier Hervé Biausser Bernard Liautaud

Plus en détail

Filtrage stochastique non linéaire par la théorie de représentation des martingales

Filtrage stochastique non linéaire par la théorie de représentation des martingales Filtrage stochastique non linéaire par la théorie de représentation des martingales Adriana Climescu-Haulica Laboratoire de Modélisation et Calcul Institut d Informatique et Mathématiques Appliquées de

Plus en détail

Introduction au maillage pour le calcul scientifique

Introduction au maillage pour le calcul scientifique Introduction au maillage pour le calcul scientifique CEA DAM Île-de-France, Bruyères-le-Châtel franck.ledoux@cea.fr Présentation adaptée du tutorial de Steve Owen, Sandia National Laboratories, Albuquerque,

Plus en détail

Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands.

Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands. Catalogue des connaissances de base en mathématiques dispensées dans les gymnases, lycées et collèges romands. Pourquoi un autre catalogue en Suisse romande Historique En 1990, la CRUS (Conférences des

Plus en détail

Programmation linéaire

Programmation linéaire 1 Programmation linéaire 1. Le problème, un exemple. 2. Le cas b = 0 3. Théorème de dualité 4. L algorithme du simplexe 5. Problèmes équivalents 6. Complexité de l Algorithme 2 Position du problème Soit

Plus en détail

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/

Information utiles. cinzia.digiusto@gmail.com. webpage : Google+ : http://www.ibisc.univ-evry.fr/ digiusto/ Systèmes de gestion de bases de données Introduction Université d Evry Val d Essonne, IBISC utiles email : cinzia.digiusto@gmail.com webpage : http://www.ibisc.univ-evry.fr/ digiusto/ Google+ : https://plus.google.com/u/0/b/103572780965897723237/

Plus en détail

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN

LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN LES OUTILS D ALIMENTATION DU REFERENTIEL DE DB-MAIN Les contenues de ce document sont la propriété exclusive de la société REVER. Ils ne sont transmis qu à titre d information et ne peuvent en aucun cas

Plus en détail

Calcul intégral élémentaire en plusieurs variables

Calcul intégral élémentaire en plusieurs variables Calcul intégral élémentaire en plusieurs variables PC*2 2 septembre 2009 Avant-propos À part le théorème de Fubini qui sera démontré dans le cours sur les intégrales à paramètres et qui ne semble pas explicitement

Plus en détail

Exemple d application en CFD : Coefficient de traînée d un cylindre

Exemple d application en CFD : Coefficient de traînée d un cylindre Exemple d application en CFD : Coefficient de traînée d un cylindre 1 Démarche générale Avec Gambit Création d une géométrie Maillage Définition des conditions aux limites Avec Fluent 3D Choix des équations

Plus en détail

TUTORIAL 1 ETUDE D UN MODELE SIMPLIFIE DE PORTIQUE PLAN ARTICULE

TUTORIAL 1 ETUDE D UN MODELE SIMPLIFIE DE PORTIQUE PLAN ARTICULE TUTORIAL 1 ETUDE D UN MODELE SIMPLIFIE DE PORTIQUE PLAN ARTICULE L'objectif de ce tutorial est de décrire les différentes étapes dans CASTOR Concept / FEM permettant d'effectuer l'analyse statique d'une

Plus en détail

Correction du Baccalauréat S Amérique du Nord mai 2007

Correction du Baccalauréat S Amérique du Nord mai 2007 Correction du Baccalauréat S Amérique du Nord mai 7 EXERCICE points. Le plan (P) a une pour équation cartésienne : x+y z+ =. Les coordonnées de H vérifient cette équation donc H appartient à (P) et A n

Plus en détail

Chapitre 2 : Caractéristiques du mouvement d un solide

Chapitre 2 : Caractéristiques du mouvement d un solide Chapitre 2 : Caractéristiques du mouvement d un solide I Rappels : Référentiel : Le mouvement d un corps est décris par rapport à un corps de référence et dépend du choix de ce corps. Ce corps de référence

Plus en détail

UNE EXPERIENCE, EN COURS PREPARATOIRE, POUR FAIRE ORGANISER DE L INFORMATION EN TABLEAU

UNE EXPERIENCE, EN COURS PREPARATOIRE, POUR FAIRE ORGANISER DE L INFORMATION EN TABLEAU Odile VERBAERE UNE EXPERIENCE, EN COURS PREPARATOIRE, POUR FAIRE ORGANISER DE L INFORMATION EN TABLEAU Résumé : Cet article présente une réflexion sur une activité de construction de tableau, y compris

Plus en détail

CAPTEURS - CHAINES DE MESURES

CAPTEURS - CHAINES DE MESURES CAPTEURS - CHAINES DE MESURES Pierre BONNET Pierre Bonnet Master GSI - Capteurs Chaînes de Mesures 1 Plan du Cours Propriétés générales des capteurs Notion de mesure Notion de capteur: principes, classes,

Plus en détail

Méthodologie de conception des Systèmes d Aide à l Exploitation des Simulateurs d Entraînement

Méthodologie de conception des Systèmes d Aide à l Exploitation des Simulateurs d Entraînement Méthodologie de conception des Systèmes d Aide à l Exploitation des Simulateurs d Entraînement Michelle Joab LIP6 Systèmes d Aide à la Décision et à la Formation (SYSDEF) Université Pierre-et-Marie Curie

Plus en détail

Paramétrage quasi-optimal de l intersection de deux quadriques : théorie, algorithmes et implantation

Paramétrage quasi-optimal de l intersection de deux quadriques : théorie, algorithmes et implantation Paramétrage quasi-optimal de l intersection de deux quadriques : théorie, algorithmes et implantation Laurent Dupont To cite this version: Laurent Dupont. Paramétrage quasi-optimal de l intersection de

Plus en détail

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique

Objectifs. Clustering. Principe. Applications. Applications. Cartes de crédits. Remarques. Biologie, Génomique Objectifs Clustering On ne sait pas ce qu on veut trouver : on laisse l algorithme nous proposer un modèle. On pense qu il existe des similarités entre les exemples. Qui se ressemble s assemble p. /55

Plus en détail

Détection de têtes dans un nuage de points 3D à l aide d un modèle de mélange sphérique

Détection de têtes dans un nuage de points 3D à l aide d un modèle de mélange sphérique Détection de têtes dans un nuage de points 3D à l aide d un modèle de mélange sphérique Denis Brazey & Bruno Portier 2 Société Prynɛl, RD974 290 Corpeau, France denis.brazey@insa-rouen.fr 2 Normandie Université,

Plus en détail

Systèmes d information et bases de données (niveau 1)

Systèmes d information et bases de données (niveau 1) Systèmes d information et bases de données (niveau 1) Cours N 1 Violaine Prince Plan du cours 1. Bibliographie 2. Introduction aux bases de données 3. Les modèles 1. Hiérarchique 2. Réseau 3. Relationnel

Plus en détail

MEMOIRE POUR UNE HABILITATION A DIRIGER DES RECHERCHES

MEMOIRE POUR UNE HABILITATION A DIRIGER DES RECHERCHES UNIVERSITE DE BOURGOGNE MEMOIRE POUR UNE HABILITATION A DIRIGER DES RECHERCHES Discipline : Sciences de Gestion Matière : Finance Candidate : Aurélie SANNAJUST Fonction : Maître de Conférences à l Université

Plus en détail

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language

Cycle de vie du logiciel. Unified Modeling Language UML. UML: définition. Développement Logiciel. Salima Hassas. Unified Modeling Language Unified Modeling Language UML Salima Hassas Version Cycle de vie du logiciel Client Besoins Déploiement Analyse Test Conception Cours sur la base des transparents de : Gioavanna Di Marzo Serugendo et Frédéric

Plus en détail

Éditorial. Tangente ÉDUCATION. Scratch, AlgoBox, Python. Trimestriel - n 15 - janvier 2011 Numéro spécial 16 activités TICE pour le lycée

Éditorial. Tangente ÉDUCATION. Scratch, AlgoBox, Python. Trimestriel - n 15 - janvier 2011 Numéro spécial 16 activités TICE pour le lycée Tangente ÉDUCATION Trimestriel - n 15 - janvier 2011 Numéro spécial 16 activités TICE pour le lycée et leurs programmes dans les trois langages les plus utilisés : Scratch, AlgoBox, Python Python Éditorial

Plus en détail

F1C1/ Analyse. El Hadji Malick DIA

F1C1/ Analyse. El Hadji Malick DIA F1C1/ Analyse Présenté par : El Hadji Malick DIA dia.elmalick1@gmail.com Description sommaire du cours Porte sur l analyse réelle propose des outils de travail sur des éléments de topologie élémentaire

Plus en détail

Détection des points d intérêt et Segmentation des images RGB-D. Présentée par : Bilal Tawbe. Semaine de la recherche de l UQO

Détection des points d intérêt et Segmentation des images RGB-D. Présentée par : Bilal Tawbe. Semaine de la recherche de l UQO Détection des points d intérêt et Segmentation des images RGB-D Présentée par : Bilal Tawbe Semaine de la recherche de l UQO 25 Mars 2015 1. Introduction Les méthodes de détection de points d intérêt ont

Plus en détail

Echantillonnage Non uniforme

Echantillonnage Non uniforme Echantillonnage Non uniforme Marie CHABERT IRIT/INP-ENSEEIHT/ ENSEEIHT/TéSASA Patrice MICHEL et Bernard LACAZE TéSA 1 Plan Introduction Echantillonnage uniforme Echantillonnage irrégulier Comparaison Cas

Plus en détail

Mini projet n 1 DOSSIER DE CONCEPTION Clef USB

Mini projet n 1 DOSSIER DE CONCEPTION Clef USB Mini projet n 1 DOSSIER DE CONCEPTION Clef USB Dossier de conception 1/21 1. PRESENTATION GENERALE DU MINI PROJET 1.1 Contexte de l étude Situation existante avec un problème. Présentation de l objectif

Plus en détail

ÉTUDE DE L EFFICACITÉ DE GÉOGRILLES POUR PRÉVENIR L EFFONDREMENT LOCAL D UNE CHAUSSÉE

ÉTUDE DE L EFFICACITÉ DE GÉOGRILLES POUR PRÉVENIR L EFFONDREMENT LOCAL D UNE CHAUSSÉE ÉTUDE DE L EFFICACITÉ DE GÉOGRILLES POUR PRÉVENIR L EFFONDREMENT LOCAL D UNE CHAUSSÉE ANALYSIS OF THE EFFICIENCY OF GEOGRIDS TO PREVENT A LOCAL COLLAPSE OF A ROAD Céline BOURDEAU et Daniel BILLAUX Itasca

Plus en détail

Conception intégrée assistée par ordinateur

Conception intégrée assistée par ordinateur Conception intégrée assistée par ordinateur par Mounib MEKHILEF Maître de conférences en Productique à la faculté des sciences de Bourges Responsable de recherche au laboratoire Productique de l École

Plus en détail

IFT2255 : Génie logiciel

IFT2255 : Génie logiciel IFT2255 : Génie logiciel Chapitre 6 - Analyse orientée objets Section 1. Introduction à UML Julie Vachon et Houari Sahraoui 6.1. Introduction à UML 1. Vers une approche orientée objet 2. Introduction ti

Plus en détail

Chafa Azzedine - Faculté de Physique U.S.T.H.B 1

Chafa Azzedine - Faculté de Physique U.S.T.H.B 1 Chafa Azzedine - Faculté de Physique U.S.T.H.B 1 Définition: La cinématique est une branche de la mécanique qui étudie les mouements des corps dans l espace en fonction du temps indépendamment des causes

Plus en détail

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU

$SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU $SSOLFDWLRQGXNULJHDJHSRXUOD FDOLEUDWLRQPRWHXU Fabien FIGUERES fabien.figueres@mpsa.com 0RWVFOpV : Krigeage, plans d expériences space-filling, points de validations, calibration moteur. 5pVXPp Dans le

Plus en détail

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé

Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé Baccalauréat ES Polynésie (spécialité) 10 septembre 2014 Corrigé A. P. M. E. P. Exercice 1 5 points 1. Réponse d. : 1 e Le coefficient directeur de la tangente est négatif et n est manifestement pas 2e

Plus en détail

Logiciel Libre Cours 3 Fondements: Génie Logiciel

Logiciel Libre Cours 3 Fondements: Génie Logiciel Logiciel Libre Cours 3 Fondements: Génie Logiciel Stefano Zacchiroli zack@pps.univ-paris-diderot.fr Laboratoire PPS, Université Paris Diderot 2013 2014 URL http://upsilon.cc/zack/teaching/1314/freesoftware/

Plus en détail

F411 - Courbes Paramétrées, Polaires

F411 - Courbes Paramétrées, Polaires 1/43 Courbes Paramétrées Courbes polaires Longueur d un arc, Courbure F411 - Courbes Paramétrées, Polaires Michel Fournié michel.fournie@iut-tlse3.fr http://www.math.univ-toulouse.fr/ fournie/ Année 2012/2013

Plus en détail

Le Crédit-bail mobilier dans les procédures collectives

Le Crédit-bail mobilier dans les procédures collectives Aimé Diaka Le Crédit-bail mobilier dans les procédures collectives Publibook Retrouvez notre catalogue sur le site des Éditions Publibook : http://www.publibook.com Ce texte publié par les Éditions Publibook

Plus en détail

VISUALISATION DE NUAGES DE POINTS

VISUALISATION DE NUAGES DE POINTS ARNAUD BLETTERER MULTI-RÉSOLUTION 1/16 VISUALISATION DE NUAGES DE POINTS MULTI-RÉSOLUTION AU TRAVERS DE CARTES DE PROFONDEUR Arnaud Bletterer Université de Nice Sophia Antipolis Laboratoire I3S - Cintoo

Plus en détail

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1

La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La Licence Mathématiques et Economie-MASS Université de Sciences Sociales de Toulouse 1 La licence Mathématiques et Economie-MASS de l Université des Sciences Sociales de Toulouse propose sur les trois

Plus en détail

Chp. 4. Minimisation d une fonction d une variable

Chp. 4. Minimisation d une fonction d une variable Chp. 4. Minimisation d une fonction d une variable Avertissement! Dans tout ce chapître, I désigne un intervalle de IR. 4.1 Fonctions convexes d une variable Définition 9 Une fonction ϕ, partout définie

Plus en détail

Baccalauréat ES/L Amérique du Sud 21 novembre 2013

Baccalauréat ES/L Amérique du Sud 21 novembre 2013 Baccalauréat ES/L Amérique du Sud 21 novembre 2013 A. P. M. E. P. EXERCICE 1 Commun à tous les candidats 5 points Une entreprise informatique produit et vend des clés USB. La vente de ces clés est réalisée

Plus en détail

3 Approximation de solutions d équations

3 Approximation de solutions d équations 3 Approximation de solutions d équations Une équation scalaire a la forme générale f(x) =0où f est une fonction de IR dans IR. Un système de n équations à n inconnues peut aussi se mettre sous une telle

Plus en détail

Conception architecturale et modélisation déclarative

Conception architecturale et modélisation déclarative Conception architecturale et modélisation déclarative Gérard HEGRON CERMA UMR CNRS 1563 École d Architecture de Nantes Rue Massenet, BP 81931 44 319 Nantes cedex 3 gerard.hegron@cerma.archi.fr Résumé Les

Plus en détail

Utilisation de l ingénierie des modèles pour la conception collaborative de produits mécaniques

Utilisation de l ingénierie des modèles pour la conception collaborative de produits mécaniques Utilisation de l ingénierie des modèles pour la conception collaborative de produits mécaniques Mathias Kleiner Laboratoire des Sciences de l Information et des Systèmes (LSIS) - UMR CNRS 7296 Projet Ingenierie

Plus en détail

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/

Souad EL Bernoussi. Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Recherche opérationnelle Les démonstrations et les exemples seront traités en cours Souad EL Bernoussi Groupe d Analyse Numérique et Optimisation Rabat http ://www.fsr.ac.ma/ano/ Table des matières 1 Programmation

Plus en détail

Préparer un état de l art

Préparer un état de l art Préparer un état de l art Khalil DRIRA LAAS-CNRS, Toulouse Unité de recherche ReDCAD École Nationale d ingénieurs de Sfax Étude de l état de l art? Une étude ciblée, approfondie et critique des travaux

Plus en détail

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite.

Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Rational ClearCase or ClearCase MultiSite Version 7.0.1 Quick Start Guide This guide is intended to get you started with Rational ClearCase or Rational ClearCase MultiSite. Product Overview IBM Rational

Plus en détail

Table des matières. I Mise à niveau 11. Préface

Table des matières. I Mise à niveau 11. Préface Table des matières Préface v I Mise à niveau 11 1 Bases du calcul commercial 13 1.1 Alphabet grec...................................... 13 1.2 Symboles mathématiques............................... 14 1.3

Plus en détail

Reconnaissance de visages 2.5D par fusion des indices de texture et de profondeur ICI 12/12/12

Reconnaissance de visages 2.5D par fusion des indices de texture et de profondeur ICI 12/12/12 Reconnaissance de visages 2.5D par fusion des indices de texture et de profondeur ICI 12/12/12 2 Discrimination Invariance Expressions faciales Age Pose Eclairage 11/12/2012 3 Personne Inconnue Identité

Plus en détail

Formats d images. 1 Introduction

Formats d images. 1 Introduction Formats d images 1 Introduction Lorsque nous utilisons un ordinateur ou un smartphone l écran constitue un élément principal de l interaction avec la machine. Les images sont donc au cœur de l utilisation

Plus en détail

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que

De même, le périmètre P d un cercle de rayon 1 vaut P = 2π (par définition de π). Mais, on peut démontrer (difficilement!) que Introduction. On suppose connus les ensembles N (des entiers naturels), Z des entiers relatifs et Q (des nombres rationnels). On s est rendu compte, depuis l antiquité, que l on ne peut pas tout mesurer

Plus en détail

Développement d un interpréteur OCL pour une machine virtuelle UML.

Développement d un interpréteur OCL pour une machine virtuelle UML. ObjeXion Software Prototyping made easy SA au capital de 500 000 F Siret 421 565 565 00015 APE 722Z Téléphone : 03 89 35 70 75 Télécopie : 03 89 35 70 76 L embarcadère 5, rue Gutemberg 68 800 Vieux-Thann,

Plus en détail

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par.

THÈSE. présentée à TÉLÉCOM PARISTECH. pour obtenir le grade de. DOCTEUR de TÉLÉCOM PARISTECH. Mention Informatique et Réseaux. par. École Doctorale d Informatique, Télécommunications et Électronique de Paris THÈSE présentée à TÉLÉCOM PARISTECH pour obtenir le grade de DOCTEUR de TÉLÉCOM PARISTECH Mention Informatique et Réseaux par

Plus en détail

Bases de Données. Plan

Bases de Données. Plan Université Mohammed V- Agdal Ecole Mohammadia d'ingénieurs Rabat Bases de Données Mr N.EL FADDOULI 2014-2015 Plan Généralités: Définition de Bases de Données Le modèle relationnel Algèbre relationnelle

Plus en détail

Ingénierie et gestion des connaissances

Ingénierie et gestion des connaissances Master Web Intelligence ICM Option Informatique Ingénierie et gestion des connaissances Philippe BEAUNE Philippe.Beaune@emse.fr 18 novembre 2008 Passer en revue quelques idées fondatrices de l ingénierie

Plus en détail

Présentation du Modèle de Référence pour les Bibliothèques FRBR

Présentation du Modèle de Référence pour les Bibliothèques FRBR Submitted on: 03.08.2015 Présentation du Modèle de Référence pour les Bibliothèques FRBR French translation of the original paper: Introducing the FRBR Library Reference Model. Traduit par : Mélanie Roche,

Plus en détail

Principe de symétrisation pour la construction d un test adaptatif

Principe de symétrisation pour la construction d un test adaptatif Principe de symétrisation pour la construction d un test adaptatif Cécile Durot 1 & Yves Rozenholc 2 1 UFR SEGMI, Université Paris Ouest Nanterre La Défense, France, cecile.durot@gmail.com 2 Université

Plus en détail

Rappels sur les suites - Algorithme

Rappels sur les suites - Algorithme DERNIÈRE IMPRESSION LE 14 septembre 2015 à 12:36 Rappels sur les suites - Algorithme Table des matières 1 Suite : généralités 2 1.1 Déition................................. 2 1.2 Exemples de suites............................

Plus en détail

Génie Logiciel avec Ada. 4 février 2013

Génie Logiciel avec Ada. 4 février 2013 Génie Logiciel 4 février 2013 Plan I. Généralités II. Structures linéaires III. Exceptions IV. Structures arborescentes V. Dictionnaires I. Principes II. Notions propres à la POO I. Principes Chapitre

Plus en détail

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15

MapReduce. Malo Jaffré, Pablo Rauzy. 16 avril 2010 ENS. Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 MapReduce Malo Jaffré, Pablo Rauzy ENS 16 avril 2010 Malo Jaffré, Pablo Rauzy (ENS) MapReduce 16 avril 2010 1 / 15 Qu est ce que c est? Conceptuellement Données MapReduce est un framework de calcul distribué

Plus en détail

Once the installation is complete, you can delete the temporary Zip files..

Once the installation is complete, you can delete the temporary Zip files.. Sommaire Installation... 2 After the download... 2 From a CD... 2 Access codes... 2 DirectX Compatibility... 2 Using the program... 2 Structure... 4 Lier une structure à une autre... 4 Personnaliser une

Plus en détail