LCIN4U73 Bases géométriques de l’imagerie 4. Modèles de représentation de solides
4.1 Modélisation des solides Au moins cinq approches différentes pour la modélisation des solides : Familles de primitives Composition arborescente Génération par balayage Représentation par frontière Énumération spatiale Le choix d’un formalisme de représentation dépend à la fois de l’application visée et de la forme attendue du modèle
Familles de primitives solides Chaque objet est décrit par le nom de la famille à laquelle il appartient et par un ensemble de paramètres qui spécifient ses dimensions Exemple : objet appartenant à la famille PRISME. Chaque élément de cette famille est caracterisé par trois paramètres : le nombre N d’arêtes de la base, le rayon R du cercle qui contient les sommets de la base et la hauteur H Principal inconvénient : il n’existe pas de moyen de composition de solides de différentes familles, ce qui rend impossible la construction d’objets complexes à partir de solides simples.
Composition arborescente de solides Ce formalisme est un des plus répandus actuellement. Il est généralement nommé par l’acronyme CSG, qui vient de son nom en anglais, Constructive Solid Geometry On dispose dans ce modèle d’un ensemble de primitives solides (parallélépipèdes, sphères, cylindres, cônes, …), chaque famille ayant des paramètres spécifiant ses dimensions On dispose ces éléments dans l’espace à l’aide de transformations géométriques (translations et rotations) et d’un ensemble d’opérateurs de composition permettant de combiner des solides de base
Composition arborescente de solides La représentation interne de l’objet construit suivant cette méthode est un arbre binaire (nommé arbre CSG)
Composition arborescente de solides Attention à ne pas construire des solides inconsistants !
Génération de solides par balayage (sweeping) Dans cette méthode les solides sont générés par le mouvement d’un objet dans l’espace Le solide est représenté par deux éléments : un objet et la trajectoire le long de laquelle cet objet se déplace.
Représentation par frontière (Boundary representation - B-rep) Cette approche représente le solide par sa surface extérieure, qui est la frontière entre l’intérieur et l’extérieur du solide.
Énumération spatiale Un solide est représenté par une liste de cellules occupées dans l’espace par l’objet Ces cellules, appelées voxels (volume elements) sont des cubes de taille fixe représentés par les coordonnées d’un point (ex : le centre du cube) Cette représentation permet de réaliser facilement des opérations booléennes. Elle ne constitue qu’une approximation plus ou moins grossière du solide suivant la taille du voxel utilisé Plus la précision est grande, plus la taille occupée en mémoire est importante
Énumération spatiale Amélioration intéressante : utilisation d’arbres octaux (octrees) qui permettent de représenter les objets par une succession hiérarchique de cubes de taille variable
Énumération spatiale Exemple d’octree
Synthèse Parmi ces modèles : Certains s’adaptent bien à la création interactive d’objets (primitives solides, CSG et balayage) Certains s’adaptent bien à la visualisation d’objets (B-rep) Certains se prêtent bien au calcul de propriétés physiques (énumération spatiale) et opérations booléennes (énumération spatiale et CSG) Il est possible d’élargir le domaine de représentation des solides en utilisant des solutions hybrides qui combinent ces différentes approches
Synthèse Conversions possibles entre les différents modèles
4.2 Introduction à Google Sketchup Sketchup est un logiciel de modélisation 3D orienté vers l’architecture Créé par la société Last Software qui collabore avec Google pour permettre de créer des immeubles en 3D dans Google Earth Racheté par Google en 2006 Existe en deux versions : Google Sketchup gratuit Google Sketchup pro (+ de formats d’export et animations)
Principe “Sketch” = esquisse : création de formes rapides directement en 3D (non adapté au dessin technique pour machines outils) Utilise les représentations B-rep et par balayage Principe d’inférence Compatible avec Google Earth
Outil extrude
Boîte de contrôle des valeurs
Outil offset
Outil Follow me (génération de solide par balayage)
Inférence Inférence ponctuelle
Inférence Inférence linéaire
Copie Outil Move puis CTRL+click gauche
Copie Copie multiple : x après la copie x5
Copie Copie multiple : / après la copie /5
Les composants Plusieurs primitives peuvent être regroupées en un seul composant qui est un objet sketchup indépendant, nommé, éditable, exportable (en particulier sur 3D warehouse) et pouvant être importé dans d’autres scènes
Les composants Les modifications faites sur une instance d’un composant sont automatiquement appliquées sur toutes les autres instances du même composant On peut créer des composants à l’intérieur d’un composant
Les composants Les compsants en cours d’édition apparaissent de manière plus visible
Composants et calques
Composants téléchargeables
Outil “Adapter une photo” Rappel : la projection perspective Albrecht Durer, Instructions pour mesurer (Le dessinateur de la femme couchée), 1527
Outil “Adapter une photo” X x (centre optique) f (distance focale) Z Le point (X,Y,Z) est exprimé dans le repère caméra (plan image) x f = X Z (Thalès !) x f = X Z
Outil “Adapter une photo” Point de fuite Pour les droites
Outil “Adapter une photo” Pour les droites Point de fuite
Outil “Adapter une photo” Point de fuite (Masaccio, La Trinité, 1427)
Outil “Adapter une photo” Utilisation de deux points de fuite de directions orthogonales Point de fuite Point de fuite f Origine
Outil “Adapter une photo” Point de fuite Ligne d’horizon Point de fuite