La modlisation Modlisation de surfaces courbes et dobjets
La modélisation
Modélisation de surfaces, courbes et d’objets naturels § La plupart des objets que l’on désire construire ont des propriétés de courbure. Il est possible de les approximer par des polygones ou par des polynôme de 03 eme degrés.
La modélisation de surface courbes et objets naturels Il existe trois types de surfaces de ce genre : Les surfaces par balayage ; les cônes, les cylindres et les surfaces de révolutions •
La modélisation de surfaces, courbes et d’objets naturels Les surfaces paramétriques données par leurs équations Y=Y(U, V) Z=Z(U, V);
La modélisation de surfaces, courbes et d’objets naturels Les surfaces libres elles permettent le plus facilement de modeliser des objets compliqués; les surfaces de Coons , les surfaces de Bézier, les surfaces B - splines et les surfaces b - splines Surface de Bézier Surface de Coons
La modélisation de surfaces, courbes et d’objets naturels • Les surfaces peuvent être obtenues en les déformant à l’aide de déformations particulières ; les FFD. Il est aussi souvent utile de considérer des structures solides: CSG , B-Rep. Pour modéliser les objets de la nature, il est utile d’utiliser des modèles et des méthodes très différentes; les fonctions implicites et les fractales
1. La représentation par balayage Ces représentations sont basées sur le déplacement d'une région (génératrice) le long d'une courbe (directrice) : les surfaces par balayage translationnel , les surfaces par balayage rotationnel et les surfaces par balayage conique •
1. La représentation par balayage 1. Par balayage translationnel ; Ils sont à l'origine des formations de cylindres. Plan de sommet P 1 d P 0 t Plan de base
1. La représentation par balayage 2. Par balayage rotationnel; surface de révolution Faire tourner une région 2 D autour d’un axe 3. Par balayage conique; Consiste en un déplacement d'une région 2 D avec une transformation d'échelle
2. Surfaces données par leur équations Paramétrique Et Implicite 1. Courbes et surfaces cartésiennes explicites: en 2 D une courbe : y = f(x) ou en 3 D une surface : z = g(x, y) p. e. z = 3 x 2+ 4 y 2 - 2 xy + 5 x + 6 y - 7 2. Courbes et surfaces cartésiennes implicites: en 2 D une courbe: F(x, y) = 0 ou en 3 D une surface G(x, y, z) = 0 p. e. la sphère: (x - a)2+ (y - b)2+ (z - c)2= 0 le plan : ax + by + cz + d = 0 3. Courbes et surfaces paramétriques: courbes: C(t) x = f 1(t) y = f 2(t) z = f 3(t) surfaces: S(u, v) x = g 1(u, v) y = g 2(u, v) z = g 3(u, v)
2. Les surfaces données par leur équations Paramétrique Et Implicite Paramétrique Implicite r θ x(θ ) = r cos θ F(x, y) = x 2+ y 2 - r 2= 0 y(θ ) = r sin θ
3. Les surfaces de forme libres Dans des applications réelles : - Une trajectoire est définie par une courbe - Un objet réel est défini comme une surface lisse
3. Les surfaces de forme libres Une courbe ou une surface est généralement donnée par un ensemble de points 3 D. Représentation par un ensemble de portion élémentaire de surface (carreau ou patch), définis par le type de la surface support et les équations des quatre courbes frontières.
3. Les surfaces de forme libres Propriétés souhaitées : 1. Un bon comportement aux dérivées premières (points de raccordement des carreaux). 2. Un bon comportement aux dérivées secondes (courbure des surfaces) 3. Une modification aisée de l’allure des surfaces (modifier un point ne change pas toute la courbe) 4. Un calcul rapide (interactivité)
3. Les surfaces de forme libres Les approximations; la courbe ou la surface est définie par les points, mais ne passe pas nécessairement par eux. Ce sont les ajustement et les méthodes de points de contrôle, Approximations de Bézier, Approximations B – spline, Approximation s ß- spline Les interpolations; la courbe ou la surface passe par les points, Surface de Coons
3. 1. Les surfaces de Coons • • • Cette méthode, créée par Coons en 1964. Construire une surface S(U, V) à partir de 4 courbes P(U, 0), P(U, 1), P(0, V) et P(1, V) selon la formule suivante: S(U, V) = P(U, 0)*F 0(V) + P(U, 1)*F 1(V) + P(0, V)*F 0(U) + P(1, V)*F 1(U)- P(0, 0)*F 0(U)*F 0(V) P(0, 1)*F 0(U)*F 1(V) - P(1, 0)*F 1(U)*F 0(V)- P(1, 1)*F 1(U)*F 1(V) Les fonction Fi sont des fonctions qui doivent être choisies adéquatement. Les plus simples sont: F 0(U) = 1 - U et F 1(U) = U
3. 1. Les surfaces de Coons
3. 1. Les surfaces de Coons Exemple de surface de Coons avec 4 x 4 = 16 points de contrôle y P 30 P 21 P 32 P 23 P 11 P 10 P 01 P 00 z P 33 P 22 P 13 P 02 P 03 x P 31
3. 1. Les surfaces de Coons Rendu : - Conversion en polygones plans. - Retrouve tous les algorithmes connus pour le rendu de polygone. - Contrôle de la précision de la subdivision.
3. 1. Les surfaces de Coons Augmenter le nombre de polygones (maillage plus fin) pour mieux approximer la surface : § § Diminue l’erreur de représentation (+) § Matériel (hardware) déjà disponible pour des polygones (+) § Augmente l’espace mémoire (-) § Augmente le temps requis pour le rendu (calcul de l'image) (-) § Augmente le nombre de points à manipuler pour modifier la surface (-)
3. 2. Les courbes de Bézier • • Quatre points P 0, P 1, P 2 et P 3 définissent une courbe de Bézier La courbe se trace en partant du point P 0, en se dirigeant vers P 1 et en arrivant au point P 3 selon la direction P 2 -P 3. La courbe ne passe ni par P 1 ni par P 2 : ces points sont simplement là pour donner une information de direction. La distance entre P 0 et P 1 détermine la « longueur » du déplacement dans la direction de P 1 avant de tourner vers P 3.
3. 2. Les courbes de Bézier - Le premier et le dernier nœud sont colloqués. - La courbe est tangente au premier segment et au dernier du polygone de contrôle. - Représentation de la courbe est constituée de points seulement et ne comprend pas les vecteurs tangents de façon explicite. - Le degré des polynômes est toujours n-1 n = nombre de points
3. 2. Les courbes de Bézier : PS ou TRUE TYPE Définition des polices Postscript et True. Type : Bézier degré 2
3. 2. Les surfaces de Bézier (3 D) la surface est calculée à partir d'une grille de M*N points de contrôle. Où U et V sont compris entre 0 et 1 et les Bij sont les polynomes de Bernstein: Bin(U) = n!/(i!*(n - i)!)*Ui*(1 - U) n- i Bjm(V) = m!/(j!*(m- j)!)*Vj*(1 - V) m- j
3. 2. Les surfaces de Bézier (3 D)
3. 2. Les surfaces de Bézier (3 D) Les surfaces de Bézier sont toujours incluses à l'intérieur du polygone de contrôle :
3. 2. Les surfaces de Bézier (3 D) Entre chaque points de contrôle, on divise les patches en polygones pour assurer un meilleur rendu. Le nombre de polygones dans la surface augmente le réalisme de la surface.
3. 2. Les surfaces de Bézier - exemple
3. 2. Les surfaces de Bézier Points de contrôle et déformations Le déplacement d'un point de contrôle modifie la surface mais conserve le lissage (aspect continu) de celle-ci; Le contrôle est global
3. 2. Les surfaces de Bézier La complexité de calcul Si on augmente le nombre de points de contrôle , la complexité augmente
3. 3. Les surfaces B-Spline Ces surfaces remédient en grande partie aux défauts des surfaces de Bézier; leur formulation est d'ailleurs assez proche de la formulation des surfaces de Bézier. Elles fournissent un contrôle local sur la courbe le déplacement d'un point déforme la zone d'influence du point car la fonction est nulle sur les intervalles éloignés.
3. 3. Les surfaces B-spline- exemple
3. 4. Les surfaces NURBS Non-Uniform Rational B-Splines On introduit une coordonnée homogène supplémentaire pour chaque point de contrôle. On définit une nouvelle classe de courbes qui sont une généralisation des B-Splines, et qui permettent de représenter de façon exacte les coniques.
3. 4. Les surfaces NURBS Rôle Des Coordonnées Homogènes: Courbes Rationnelles Les coordonnées homogènes de chaque point de contrôle Pk sont (xk, yk, wk). [ x y z t ] <=> [ x/t y/t z/t ] On a ainsi une possibilité supplémentaire de contrôle en modifiant les poids wk ; • wk>1 donne une courbe plus proche de Pk • wk<1 donne une courbe moins proche de Pk Et on a les 2 cas limites : • wk=0, le point de contrôle Pk n'a plus d'influence • wk ∞ la courbe passe par Pk
4. Les FFD “Free form deformation” Les FFDs de base : Une technique pour déformer librement les objets géométriques: Des figures planes, des quadriques, des surfaces paramétriques ou des surfaces implicites.
4. Les FFD “Free form deformation” Physiquement : Elles sont appliquées à un parallélépipède (boîte) imaginaire fait de plastic transparent et flexible, et dans lequel se trouve l’objet à déformer. Les objets sont aussi considérés comme flexibles de telle manière à ce qu’ils puissent se déformer en même temps que la boîte qui les entoure
4. Les FFD “Free form deformation” Mathématiquement : Pour tout point X(s, t, u) à l’intérieur du parallélépède , 0<s<1, 0<t<1, 0<u<1, on spécifie la déformation en déplaçant le ou les points de contrôle Pijkde leur position de repos. La nouvelle position X' (après déformation) d’un point X se calcule ainsi: X' = Pijk Bil(s ) Bjm(t ) Bkn( u) Où Bil( s), Bjm(t ), Bkn( u) sont les polynômes de Bernstein définis comme: Bil( s) = (il)(1 - s )l –i si, Bjm( t) = (jm)(1 - t )m –j tj, Bkn( u) = (kn)(1 - u )n –k uk
4. Les FFD Rationnels Extension des FFDs de base: Une des extensions (utilisée pour l’animation de visage) consiste à inclure des fonctions de base rationnelles dans la formulation des déformations. Les fonctions de base rationnelles permettent la pondération des points de contrôle dans la grille du parallélépipède par des poids Wijk
4. Les FFD Rationnels
4. Les FFD Rationnels Avantage: Donner un degré de liberté supplémentaire lors de la manipulation des déformations en permettant de changer les poids des points de contrôle. les poids à chaque point de contrôle valent 1, les déformations sont équivalentes aux FFD de base. Les fonctions de base rationnelles permettent la pondération des points de contrôle dans la grille du parallélépipède par des poids Wijk
5. Représentation d’objets solides Le rôle des solides en synthèse d’image: La génération de solides ou volumes est très importante dans le domaine de la Conception Assistée par Ordinateur (CAO). Comment considérer une pièce mécanique ou un pont du point de vue purement surface alors qu'il faut être capable de faire des ouvertures ou de combiner les volumes?
5. Représentation d’objets solides Le rôle des solides en synthèse d’image: Pour cette raison, la géométrie des solides a été développée. Elle repose principalement sur deux types de représentation: Constructive Solid Geometry (CSG ) et les modèles frontaliers (B-Rep).
5. Représentation d’objets solides Les éléments de volumes Les objets solides sont représentés à l’intérieur d’un cube ( une matrice tridimensionnelle) • Les solides sont représentés par une listes de voxels (éléments de volume).
5. Représentation d’objets solides Les éléments de volumes Le voxel ( pixel + une profondeur): • Sont des cellules spatiales occupées par le solide; ce sont généralement des cubes de taille fixe réparties selon une grille. • En général, le solide est défini par la liste des coordonnées des centres des cellules. Les voxels contiennent des informations sur: La couleur, les matériaux, les caractéristiques optiques, la texture, la physique, la géométrie, …. .
5. Représentation d’objets solides Comparaison représentation surfacique et volumique Représentation Surfacique • Les objets sont représentés par des images surfaciques, ils sont définis à l’aide des pixels • Elle nécessite moins d’espace mémoires ( KO). Représentation Volumique • Les objets sont définis à l’intérieur d’un cube ( une matrice tridimensionnelle). • Elle nécessite une très grande capacité de mémoire ( GO).
5. Représentation d’objets solides Avantages et Inconvénients de la représentation volumique Avantages : • Une représentation très riche : beaucoup de détails sur l’objet la couleur, le matériel, la texture, la physique de l’objet , ……. • La facilité de validation • La simplicité d’accès à un point donné • L’unicité spatiale assurée Inconvénients : • Il n’existe pas une structure entre les différentes parties de l’objet. • Elle nécessite une très grande capacité de mémoire ( milliers de GO). • Il est impossible de représenter des objets complexes
5. Représentation d’objets solides Quadtree / Octree La principale méthode de décomposition en cellules est l'octree qui est une généralisation des quadtrees. Un quadtree est une représentation d'un objet 2 D basée sur la subdivision récursive d'un carré en 4 carrés de même taille (quadrants)
5. Représentation d’objets solides Quadtree 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 4 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). Deux réalisations sont possibles: Matrice binaire de dimension N, où log 2 N est le niveau maximum de récursion nécessaire dans la décomposition (coûteux en mémoire). Arbre quadratique dont les nœuds correspondent aux quadrants.
5. Représentation d’objets solides Quadtree La décomposition en quadrants Arbre quadratique
5. Représentation d’objets solides Quadtree Matrice quadratique La décomposition en quadrants
5. Représentation d’objets solides Octree L'octree est donc une extension du quadtree à trois dimensions pour encoder des solides. Une région cubique est récursivement subdivisée en 8 octants (régions cubiques)
5. Représentation d’objets solides Octree
5. Représentation d’objets solides Constructive solid geometry (CSG) • CSG : combinaison de primitives géométriques • Les solides sont représentés par des opérations booléennes (Union, intersection et différence ) entre des primitives géométriques: cube, cône, cylindre, sphère, torre • On utilise des arbres binaires, avec un objet à chaque feuille et un opérateur à chaque nœud non - terminal
5. Représentation d’objets solides Constructive solid geometry (CSG) La grammaire peut être décrite ainsi: <arbre CSG> : : = <primitive> | <arbre CSG> <opérateur ensembliste> <arbre CSG>| <arbre CSG> <mouvement rigide> <paramètres de mouvement> + +
5. Représentation d’objets solides Constructive solid geometry (CSG)
5. Représentation d’objets solides Constructive solid geometry (CSG)
5. Représentation d’objets solides Boundary Representation(B-Rep) • Un solide est représenté par sa frontière (faces, arêtes et sommets); • Le volume est borné par la surface. • Les faces sont représentées en termes d'arêtes et de sommets. Scène Polyèdre (objet) Face arrête Sommet
5. Représentation d’objets solides Boundary Representation(B-Rep)
5. Représentation d’objets solides CSG / B-Rep
6. Surfaces Implicites et metaballs Surface implicite Une surface implicite est une surface consistant en un ensemble de points satisfaisant la fonction implicite arbitraire f telle que f(p) = 0. •
6. Surfaces Implicites et metaballs • L’application d’une fonction de potentiel sur un point (x, y, z) ; Un metaball • La grandeur du potentiel délimite la grandeur de l’objet;
6. Surfaces Implicites et metaballs • Mélange des primitives; • Modélisation intuitive et interactive à l’aide de squelettes
7. Les fractals • Les mécanismes de réécriture • Permettant de décrire de nombreux phénomènes de croissance et de développement dont ceux que l’on rencontre dans la nature
7. Les fractals • La technique de base • Consiste à partir d’un élément initial ou d’une configuration initiale et successivement remplacer des parties en fonction de règles Les fractals, les IFs , les automates cellulaires, et les L-systèmes
7. Les fractals • La géométrie fractale: • Comment modéliser les objets naturels comme les côtes marines, les montagnes, les galaxies, les nuages…… avec la géométrie d’Euclude? • Impossible , à cause des formes irrégulières du monde réel
7. Les fractals • La géométrie fractale: • Combien mesure la côte de Bretagne : - Cela dépend de l'échelle de la mesure -La longueur augmente quand on observe de plus près - La côte n'est pas une succession de courbe ou de segments - Sa dimension n'est pas égale à 1 • Solution: Mandelbrot (1975, 1977, 1982) a étudié la structure de ces objets naturels complexes et a réussi à les décrire à l'aide d'une nouvelle géométrie; la géométrie fractale.
7. Les fractals • Les caractéristiques des objets fractals • Un objet avec une exacte auto-similitude : -Chaque petite portion, lorsqu'elle est agrandie, reproduit exactement une plus grande portion. - En fait, les objets de la nature sont rarement auto-semblables; ils possèdent la propriété d'auto-similitude statistique.
7. Les fractals • La géométrie fractale: • Dimension fractale : Introduction des structures fractionnaires qui occupent l’espace entre : Les points (0 dimension), les lignes ( 1 dimension), les plans( 2 dimensions) et les volumes ( 03 dimensions)
7. Les fractals • La géométrie fractale: • Une ligne fractale : est une ligne avec plusieurs cassures : courbe fractale • Les courbes de Von Kouche
7. Les fractals • La géométrie fractale: • Les courbes de Von Kouche • La dimension de la courbe est calculée selon La formule suivante : N: nombre de parties divisées et semblables - Si la configuration initiale = une ligne : m=01 - Si la configuration initiale = une courbe : m=02 - Si la configuration initiale = un volume : m=03
7. Les fractals
7. Les fractals • La géométrie fractale: • Une surface fractale :
8. Les L-systèmes • Les mécanismes de réécriture • On part donc d'un objet initial (axiome) et d'un ensemble de productions ou règles de réécriture • Tout sera exprimé avec une grammaire a ab (signifie que a est remplacé par ab) b a (signifie que b est remplacé par a) : : =
8. Les L-systèmes • Les mécanismes de réécriture
Résumé • Les modèles surfaciques : Surface de forme libre , Surface par balayage, surface paramétrique • Les modèles volumiques: CSG, B-Rep, énumération spatiale (objets solides); fonctions implicites • Les modèles ni surfaciques ni volumiques : L-systèmes (utilisent les règles de production), les fractales = une forme+ un générateur
Résumé • Pour modéliser 1. être humain : Surface de forme libre 2. Un terrain : fractal 3. Un arbre : fractal 4. Voiture = CSG + Surface de forme libre 5. Eléphant : Surface implicite
- Slides: 76