Conception et visualisation d'objets

Cours de Christine Kéribin pour le DESS d'Ingéniérie Mathématique d'Orsay

Notes de cours rédigées par Pierre Pansu


On a choisi de présenter les logiciels de CAO en partant de la surface (attentes de l'utilisateur) pour plonger vers le coeur (algorithmes, outils mathématiques).



La XAO (X doit être remplacé par conception, modification, exploration, fabrication...) est vieille d'une trentaine d'années tout au plus. Le terme CAO désignait initialement les outils logiciels qui permettent à l'ordinateur de remplacer la planche à dessin. Le champ d'application de la CAO s'est élargi (d'où le terme XAO). Les logiciels d'aujourd'hui peuvent, en incorporant des règles-métiers, capturer efficacement l'intention de l'utilisateur, et allègent ainsi sa tâche bien au-delà de ce que pouvait faire la planche à dessin.



Un logiciel de CAO se compose



Le modeleur géométrique, c'est la planche à dessin. Son vocabulaire est celui de la géométrie (points, droites, plans, courbes B-splines, surfaces NURBS...) et de la topologie (sommets, arêtes, faces, intérieur/extérieur, union, intersection...). A ce langage de bas niveau, on superpose au chapitre 3 un langage de haut niveau, celui des entités technologiques (features). Chaque feature, un congé ou un chanfrein par exemple, résume une longue suite de commandes et d'opérations à effectuer par le modeleur et la visualisation, et contient des règles en usage dans un métier. Le meilleur moyen de saisir la notion de feature est de pratiquer l'atelier de conception de pièces et d'assemblage mécanique d'un logiciel comme CATIA.



Rentrons dans le détail du fonctionnement d'un modeleur géométrique. Abstraitement, un objet 3D est défini par son bord, formé d'une collection de faces orientées. La partie mathématique du chapitre 4 traite le problème de savoir quand une telle donnée (appelée BRep pour Boundary Representation) est valide, i.e. borde effectivement un solide. La formule d'Euler fournit seulement une condition nécessaire, et on donne une condition nécessaire et suffisante. Sur le plan algorithmique, on détaille la structure de données qui représente un objet virtuel dans ACIS. En plus de la description BRep de l'objet, le modeleur de CATIA maintient au cours de la réalisation de l'objet un arbre des spécifications qui retrace la suite des features employés : il s'agit d'un modèle mixte BRep/CSG. L'un des avantages est la possibilité de revenir en arrière (undo), au prix d'une gestion délicate des mises à jour.



L'opération de base dont est capable un modeleur géométrique est le calcul de l'intersection de deux solides. Au chapitre 5, on décrit l'algorithme dans un cas simple : l'intersection d'un polyèdre avec un plan.



Encore plus profond, on trouve la méthode pour calculer une discrétisation approchée de la courbe d'intersection de deux surfaces. C'est un cas particulier de la méthode de cheminement. Au chapitre 6, on décrit l'algorithme ainsi que des outils pour ajuster les paramètres : initialisation, pas, critère de fin.



Une fois trouvée une suite de points proches de la courbe d'intersection, on peut construire une courbe B-spline qui passe par ces points par interpolation. Cet algorithme, décrit au chapitre 7, se ramène à l'inversion d'une matrice carrée. Il est utile de comprendre la différence entre interpolation et approximation. Une courbe construite par interpolation passe par les points prescrits. Un approximation ne passe pas par les points prescrits, mais minimise seulement l'écart quadratique à ces points. Elle peut avoir moins de points de contrôle qu'il n'y a de points prescrits.



La deuxième fonction essentielle d'un logiciel de CAO est la production de vues de l'objet. Le chapitre 8 contient une brève introduction à la synthèse d'images : perspective, modélisation de la couleur, modèles d'éclairement, lancer de rayon, antialiassage.



Notes de cours détaillées (pdf, 800ko)