Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 55

MODELISATION 3D

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 102


 Graphe de scène

 Modèles 3D
 Modèle filaire
 Modèles surfaciques

 Modèles volumiques

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 103


Graphe de scène
Utile pour la modélisation d’une scène complexe.

Permettant de présenter toutes ses entités (objets, caméras,


sources de lumière) ainsi que leurs transformations.

Il permet ainsi de modéliser un objet complexe par exemple un


personnage 3D ainsi que son animation.

Plusieurs APIs travaillent avec ce concept telles que : Three.js,


Java 3D, etc.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 104


Graphe de scène

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 105


Modèles 3D
Modèle 3D:
◦ Une représentation abstraite ou ensemble d’objets organisés pour
représenter une scène à afficher.

◦ Un objet du modèle est une approximation de l’élément modélisé.

◦ Graphiquement, un objet est soit :

◦ Un ensemble de polygones (polyèdres).

◦ Polygone: série de points généralement sur un seul plan (appelée


facette).

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 106


Modèles 3D
◦ Des surfaces ou des courbes calculées par une méthode particulière
(Exemples : Beziers, splines, fractales).

◦ Un assemblage hiérarchique d’objets canoniques (Exemples : sphère,


cube, cône, etc.).

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 107


Modèles 3D
◦ Outre les objets (aspect, organisation, comportement), un
modèle est généralement complété par :
◦ La position de la caméra, son orientation, le cadrage, les champs de vision.

◦ La description de différents phénomènes complémentaires tels que


l’éclairage, l’ombrage, le brouillard, la transparence, le lissage.

◦ Les textures (procédés de remplissage de polygones).

◦ Les données "pixel", les polices.

◦ Etc.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 108


Modèles 3D
Modèle géométrique 3D

Modèle filaire Modèles surfaciques Modèles volumiques

Modèle Modèle Modèle Modèle de


B-Rep CSG Octree
polyédrique implicite paramétrique subdivision

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 109


Modèle filaire
Appelé aussi: linéique, de treillis ou fil de fer.

Utilise les mêmes entités géométriques que le 2D, en y ajoutant la


troisième dimension: points et lignes.

L'objet est décrit par ses sommets (points) et ses arêtes (lignes reliant
les sommets).

Les objets en fil de fer sont constitués d’éléments filiformes, tels que
des segments de droite ou des courbes.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 110


Modèle filaire
Limite

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 111


Modèles surfaciques
L’objet est constitué d’un ensemble de morceaux de surface (ou
carreaux) définis par le type de surface support (son enveloppe) et la
description de ses bords (contours: surfaces frontières).

Gère les intersections de surfaces et applique des règles de contrôle


topologique (ouvert/fermé, intérieur/extérieur) pour « créer » des
objets.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 112


Modèles surfaciques
Types de représentation:
◦ Paramétrique:
◦ Par surfaces planes: utilisées au début de l’apparition de SI.

◦ Convertir même les objets non plans en un ensemble des carreaux plans.

◦ Risque d’avoir des surfaces non lisses.

◦ Par surfaces gauches ou paramétrées: utilisées depuis les années 70.

◦ Modéliser des objets complexes tels que les carrosseries de voiture, les ailes d’avion, etc.

◦ Exemples: surfaces de Bézier, de Coons, B-splines, Beta-splines, NURBS (B-spline rationnelle non uniforme).

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 113


Modèles surfaciques
◦ Fonctionnelle :
◦ L’application à une forme ou une courbe 2D un modificateur 3D

◦ Exemples: révolution, torsion, balayage, extrusion, …

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 114


Modèles surfaciques
Représentation paramétrique
Représentation d’objets et de formes par la représentation de leurs
surfaces frontières.

Les grandes catégories de modèles de cette représentation:


◦ Modèles polyédriques

◦ Modèles implicites

◦ Modèles paramétriques

◦ Modèles de subdivision

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 115


Modèles surfaciques
Représentation paramétrique
Modèle polyédrique
◦ Appelé aussi maillage.

◦ Une représentation discrète de la surface d’un objet ou d’une forme.

◦ Cette architecture se décompose en éléments finis appelés sommets, arêtes


et faces.
◦ Face: polygonale et construite à partir de plusieurs arêtes.

◦ Peut être quadrangulaire.

◦ Généralement choisie comme étant un triangle.

◦ Arête: l’association de deux sommets.

◦ Ensemble connecté de polygones (triangles/rectangles).

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 116


Modèles surfaciques
Représentation paramétrique
Modèle implicite
◦ Définie par une fonction potentiel qui change de signe lorsque l’on
traverse la surface (on passe de l’intérieur à l’extérieur).

◦ La surface est définie comme étant l’ensemble des points qui


annulent la fonction potentiel (notion d’iso-surface).
◦ C-à-d, chaque point de cette surface possède une équation de la forme suivante :
F(x, y, z)=0

◦ Exemples: Plan, sphère, cylindre, tore, blobs.


◦ Pour une sphère de rayon R et de centre C(x0, y0, z0):

F (x, y, z) = (x - x0)2 + (y - y0)2 + (z - z0)2 - R2=0


PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 117
Modèles surfaciques
Représentation paramétrique X=F1(paramètres)
Y=F2(paramètres)
Modèle paramétrique Z=F3(paramètres)
◦ Utilise des fonctions pour décrire des courbes et des surfaces.

◦ Les propriétés de continuité sont identifiées grâce à une analyse


différentielle des fonctions mises en œuvre.

◦ Les fonctions les plus utilisées: les polynômes pour leur caractère lisse.

◦ Pour cette surface, chaque coordonnée d’un point est paramétrée par une
fonction explicite.

◦ Exemples: Plan, sphère, cylindre, tore, surface de balayage.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 118


Modèles surfaciques
Représentation paramétrique
Pour une sphère de rayon de centre C(0, 0, 0):

Inversement:

est l’angle par rapport à X:


est l’angle par rapport au plan XY :

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 119


Modèles surfaciques
Représentation paramétrique
Modèle de subdivision
◦ Il s’agit de l’application des opérations de raffinement du maillage par l’ajout
ou la modification de sommets.

◦ Chaque opération est conditionnée par des règles de subdivision appelées


schémas de subdivision.

◦ Les propriétés de schémas de subdivision:


◦ Localité : la position d’un nouveau sommet à insérer dans un maillage, se calcule à
partir d’un nombre fini de sommets identifiés par le schéma de subdivision.

◦ Valence d’un sommet: le nombre de sommets auxquels il est connecté.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 120


Modèles surfaciques
Représentation paramétrique
◦ Exemple de maillage raffiné:

◦ Exemples de schémas de subdivision

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 121


Modèles surfaciques
Représentation fonctionnelle
Révolution
Extrusion généralisée

Extrusion simple

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 122


Modèles surfaciques
Représentation fonctionnelle
Balayage

Torsion

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 123


Modèles volumiques
Appelés aussi modèles solides.

Modélisation volumique:
◦ La modélisation la plus complète car elle englobe les deux précédentes.

◦ Permet la représentation dans l'espace, avec la notion de matière.

Plusieurs types:
◦ B-Rep

◦ CSG

◦ Octree

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 124


Modèles volumiques
Représentation B-Rep

Représentation par frontières


◦ B-Rep: Boundary Representation.

◦ Représentation d’un objet par un découpage de sa frontière en un nombre


fini de faces (une portion de surface) selon deux méthodes:

◦ Représentation par les frontières approchée par facettes


planes.

◦ Représentation par les frontières « précises ».

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 125


Modèles volumiques
Représentation B-Rep
◦ Exemple 1: cylindre

◦ Exemple 2: objet composé

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 126


Modèles volumiques
Représentation B-Rep

◦ Cette représentation comprend deux types d’informations:

◦ Géométrie (ou information métrique): dimensions actuelles des


entités composant le modèle de l’objet.

◦ Topologie (ou structure combinatoire): connectivité et


associativité entre les entités, renvoi à la notion de «voisinage»
des entités.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 127


Modèles volumiques
Représentation B-Rep
◦ Exemple: différence entre géométrie et topologie

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 128


Modèles volumiques
Représentation B-Rep
◦ Exemple: informations topologiques

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 129


Modèles volumiques
Représentation CSG
Géométrie constructive:
◦ CSG: Constructive Solid Geometry.

◦ Un objet CSG est le résultat d’opérations ensemblistes sur des


primitives solides de base.

◦ La représentation interne (structure de données) d’un solide CSG est


un arbre binaire où chaque nœud non terminal est une opération
ensembliste et les feuilles sont des primitives solides.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 130


Modèles volumiques
Représentation CSG

◦ Dans un arbre de construction binaire:


◦ Les feuilles représentent des primitives solides.
◦ Les nœuds représentent le résultat:
◦ d’opérations booléennes régularisées (union, intersection, etc.)

◦ de transformations géométriques (rotation, symétrie, etc.)

◦ Un nœud ne peut avoir plus de deux enfants et plus d’un parent.


◦ La racine correspond au seul nœud n’ayant pas de parents:
Objet final.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 131


Modèles volumiques
Représentation CSG

◦ Exemples:

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 132


Modèles volumiques
Représentation Octree
Arbre octal:
◦ Octree: Octal Tree.

◦ La scène à représenter est supposée contenue dans un volume cubique


(univers) dont la dimension est une puissance de 2.

◦ Voxel: cube élémentaire de côté unité.


◦ Les voxels composants un objet sont caractérisés par leurs dimensions et leurs
positions à l’intérieur de l’univers (par exemple les coordonnées d’un coin).

◦ Décrire une scène revient à fournir une liste des voxels pleins, c-à-d contenant
de la matière (par opposition aux voxels vides).

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 133


Modèles volumiques
Représentation Octree
◦ La construction d’un arbre octal répond aux règles suivantes :
◦ le processus commence en prenant l’univers comme point de départ: racine de l’arbre est
l’univers.

◦ Si l’univers est entièrement plein ou entièrement vide, l’arbre octal est réduit à l’univers.

◦ Si l’univers n’est ni entièrement plein, ni entièrement vide, on le divise en huit sous-espaces


identiques, de côté moitié de celui de l’univers d’origine.

◦ On étudie les huit voxels obtenus, de manière à déterminer s’ils sont entièrement vides ou
entièrement pleins ; pour chaque voxel se trouvant dans la situation recherchée, l’analyse est
finie; les autres sont de nouveau divisés en huit.

◦ Le processus s’arrête lorsque tous les voxels étudiés se sont révélés entièrement pleins ou vides
ou lorsque, à force de diviser, on atteint des voxels de côté unité.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 134


Modèles volumiques
Représentation Octree
◦ L’information portée par un nœud est : vide, plein ou divisé.

◦ Exemple:

◦ Remarque:

◦ Un nœud vide est représenté par

◦ Un nœud plein est représenté par

◦ Un nœud divisé est représenté par

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 135


8

7
5
6

4
1 3
2

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 136


Application 1
1. Comment peut-t-on obtenir ces objets?

2. Un cube est décrit en 3 niveaux par un arbre octal comporte


combien de voxels au maximum ?

3. Le modèle solide ci-dessous a-t-il été construit à l’aide d’un


modeleur CSG ou d’un modeleur B-Rep ?

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 137


Application 2 - BRep
1. Représenter ces deux objets en utilisant les facettes planes et les
facettes précises.

2. Déterminer leurs graphes d’adjacence.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 138


Application 3 - CSG
Représenter les arbres CSG des objets suivants :

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 139


Application 4 - Octree
Donner les arbres octaux des objets suivants:

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 140


Application 5
Ecrire un progamme WebGL permettant de dessiner un
cube dont les faces sont de couleurs différentes.

Face avant: rouge


Face arrière: vert
Face dessous: bleu
Face dessus: jaune
Face droite: magenta
Face gauche: cyan

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 141


Application 6
Ecrire un programme WebGL permettant de dessiner une
sphère orange.

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 142


P1+1 P2+1

P1 P2

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 143


Pour une sphère de rayon de centre C(0, 0, 0):

est l’angle par rapport à X:


est l’angle par rapport au plan XY :

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 144


Corrigé - Application 1
Y

+ révolution autour
de l’axe Y

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 145


C
Ellipse + extrusion
généralisée en utilisant la
courbe C

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 146


Corrigé - Application 2

Facettes Planes 12+N facettes 2 facettes triangulaires


rectangulaires 3 facettes rectangulaires

12 facettes 2 facettes triangulaires


Facettes précises
rectangulaires 3 facettes rectangulaires
1 face cylindrique
PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 147
S1
A3 A1
S3 F4
S2
A2
F3 A5
F2
A6 F1 A4
S4
A9 A8
F5
S6 S5 Objet 2
A7

F1 F2 F3 F4 F5

A1 A2 A3 A4 A5 A6 A7 A8 A9

S1 S2 S3 S4 S5 S6

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 148


Corrigé - Application 3
-

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 149


U

-
-
-
-

+Extrusion simple

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 150


-

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 151


ᴜ -

- -

PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 152


PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 153
PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 154
PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 155
PROGRAMMATION GRAPHIQUE 2D-3D - AMEL TILOUCHE - MDW4 156

Vous aimerez peut-être aussi