Cours différents modes de modélisation d’objets 3D, tutoriel & guide de travaux pratiques en pdf.
Différents modes de modélisation
La modélisation d’objets 3D peut été traitée par de nombreuses méthodes, chacune d’entre elles étant bien adapter à un domaine d’application bien précis.
Il existe deux principaux types de modèles, on a les modèles par frontières et modèles volumiques.
Modèles frontières
Comme leur nom l’indique les modèles frontières représentent les frontières des objets.
Il existe deux types de modèles frontières : le fil de fer et le Boundary Representation (BR ou Brep).
Fil de fer
Ce type de modèle permet de représenter uniquement le contour des objets. Les objets sont représentés à partir d’un ensemble de segments de droite reliés éventuellement par leurs extrémités.
Ce modèle est simple, il facilite les transformations de base et de visualisation. Permet à peu près d’avoir une représentation géométrique globale de l’objet. Cependant sa capacité de modélisation est très limitée (faible degré de réalisme), et le calcul de certaines mesures de l’objet peut être difficile ou impossible par manque d’informations sur l’objet. [1]
Il peut y avoir ambiguïté-dans l’interprétation de la représentation ou donner lieu à un modèle impossible.
Figure I.1 : plusieurs interprétations d’un même objet.
Bien que toujours utilisé à des fins architecturales, pour des objets simples, il présente le problème de poser des ambiguïtés en représentation 3D. [6]
Modèles à partir de surfaces frontières (Brep)
Ce modèle est une extension du modèle Fil de fer, il a été introduit afin de régler les problèmes d’ambiguïté dans le modèle filaire en introduisant la notion de face.
Il ne fournit pas d’information quant à l’intérieur de l’objet. L’ensemble des facettes forme une figure fermée. Ces facettes ne s’interceptent pas sauf à des arêtes ou sommets communs. Le nombre de facettes peut être élevé.
Le modèle Brep permet d’effectuer facilement une visualisation du solide et les opérations complexes tel que le calcul du volume d’un solide, appartenance d’un point au Solide. Cependant il ne fournit qu’une approximation de la surface du solide, et la construction de ce dernier est longue et fastidieuse car il faut Construire et agencer manuellement tous les éléments : Faces, Arêtes, Sommets, en plus du risque d’erreur topologique (ex. : oubli d’une arête) et la difficulté de revenir en arrière dans la conception du solide sans oublier une grande quantité d’informations à stocker.
Figure I.3 : le modèle Brep.
Modèles volumiques
Il existe deux types de modèles volumiques:
Les modèles de composition.
Les modèles de décomposition.
Modèles de composition (constructifs)
Ils considèrent les solides comme des ensembles de points 3D.
Débutent avec des ensembles simples qui peuvent être représentés directement à l’aide de primitives (quadriques, polyèdres, etc.). Des objets plus complexes sont obtenus en combinant des ensembles simples entre eux à l’aide d’opérations ensemblistes.
Modèles CSG (constructive solid geometry)
Il s’agit de manipuler des objets élémentaires bornés : polyèdre, cylindre, sphère, etc.
Pour ce qui est des primitives non élémentaires, l’usager doit spécifier uniquement le système de référence de l’objet. On met à la disposition de l’usager un nombre fini de primitives simples dont la grandeur, la forme, la position et l’orientation sont définies par ce dernier.
L’opération de modélisation est simplifiée; l’animateur doit spécifier seulement l’arbre de construction. Aucune ambiguïté dans le modèle; cela donne lieu à des objets valides.
Cependant il est incomplet car il nécessite des algorithmes pour évaluer l’arbre de construction. Lorsque l’arbre CSG est mal balancé, les algorithmes proposés sont inefficaces. Il est difficile de construire un modèle CSG pour décrire des objets complexes n’intégrant aucune propriété géométrique, par exemple : la représentation d’un visage humain, L’évaluation de l’arbre de construction peut exiger des temps de calculs importants.
Primitive instancing
La modélisation appelée « primitive instancing » utilise des primitives complexes paramétrables.
C’est une modélisation qui peut être employée dans des domaines bien précis où les objets peuvent se regrouper par type. Dans ce cas, c’est une alternative trés intéressante
1 ⇔le cube associé représente une sous-région du solide,
0 ⇔le cube ne fait pas partie du solide.
au CSG par exemple la figure ci-dessous présente plusieurs bâtiments définis par leur longueur, le nombre de cheminées et de fenêtres.
Figure I.4 : plusieurs bâtiments définis avec primitive instancing.
Modèle de décomposition (descriptifs)
Ces modèles décrivent l’espace utilisé au moyen d’un ensemble de volumes contigus et sans intersection.
C’est un mode de représentation de solides par partitionnement spatial où chaque solide est décomposé en un ensemble de solides adjacents, sans intersection, qui sont plus primitifs que le solide original, bien que nécessairement du même type.
Les objets sont représentés comme un ensemble d’objets ou cellules élémentaires : nous en distinguons deux méthodes : l’énumération exhaustive des cellules élémentaires, et la subdivision irrégulière d’une région dont l’objet à modéliser fait partie.
Énumération exhaustive des cellules élémentaires
· Model Voxel
Les voxels2 sont des cellules spatiales occupées par le solide : en général des cubes de taille fixe repartis selon une grille, le solide est défini par la liste des coordonnées des centres des cellules.
Chaque cube peut être défini uniquement à partir d’un de ses sommets. En associant à chaque objet une région régulière dont l’objet fait partie, l’objet est représenté à partir d’un tableau binaire 3D.
Le modèle Voxel permet de construire facilement et efficacement de nouveaux objets à l’aide d’opérations ensemblistes en se basant sur ces tableaux binaires, et d’évaluer efficacement différentes mesures de l’objet.
Ce modèle est une représentation approximative de l’objet à moins que celui-ci ne coïncide exactement avec la grille ce qui est rarement le cas. On peut réduire la taille des voxels afin d’augmenter la précision de la représentation du solide.
Cela exige une quantité d’espace mémoire imposante. Cette approche ne peut être exploitée directement : pour construire un objet, on ne peut exiger l’énumération de l’ensemble de ces cellules.
Subdivision irrégulière d’une région dont l’objet à modéliser fait partie
Les techniques d’énumération spatiale sont simples, générales et permettent de développer une grande variété d’algorithmes. Mais elles exigent une grande quantité d’espaces mémoires et une représentation très approximative des solides.
Les cubes élémentaires voisins d’un cube faisant partie de l’objet ont de bonnes chances d’en faire partie aussi. Pour remédier à cet inconvénient, nous nous basons sur le principe suivant:
Le nombre de cubes nécessaires pour représenter un objet devrait dépendre de la surface de l’objet et non du volume de l’objet.
La principale méthode basée sur ce principe est l’Octree qui est une généralisation des Quadtrees.
· QUADTREE
Un quadtree est une représentation d’un objet 2D basée sur la subdivision récursive d’un carré en quatre carrés de même taille (quadrants). A chaque stade du processus récursif, deux cas sont possibles :
L’objet ne recouvre pas complètement le quadrant; il est alors subdivisé en quatre nouveaux carrés
Le quadrant est plein ou vide; la subdivision est alors stoppée et le quadrant est marqué comme “plein” (1) ou “vide” (0).