La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

1 CHAPITRE IV OBJETS ÉLÉMENTAIRES DANS LESPACE À TROIS DIMENSIONS.

Présentations similaires


Présentation au sujet: "1 CHAPITRE IV OBJETS ÉLÉMENTAIRES DANS LESPACE À TROIS DIMENSIONS."— Transcription de la présentation:

1 1 CHAPITRE IV OBJETS ÉLÉMENTAIRES DANS LESPACE À TROIS DIMENSIONS

2 2 TRIANGLE Il est défini par ses 3 sommets p 1, p 2, p 3. L'équation du plan qui coïncide avec ce triangle est: [(p 2 - p 1 ) x (p 3 - p 1 )] * (P - p 1 ) = 0. où P est un point quelconque du plan. L'aire du triangle est égale à ||(p 2 - p 1 ) x (p 3 - p 1 )|| / 2. S(u, v) = u p 1 + (1 – u) {p 2 v + (1 – v) p 3 },u, v [0, 1]. OBJETS ÉLÉMENTAIRES Considérons les principales classes de surfaces ou volumes simples utilisées en modélisation géométrique et en infographie. p1p1 p2p2 p3p3 p 2 v + (1 – v) p 3 S(u, v) Espace normalisé

3 3 CERCLE Il est défini par son centre C, son rayon R et le vecteur normal N au plan du cercle. Hypothèse : le cercle est centré à l'origine. L'équation du plan du cercle est:N. P = 0 où P est un point quelconque du plan. On recherche donc l'intersection de ce plan avec la sphère de centre 0 et de rayon r dont l'équation est: x 2 + y 2 + z 2 = r 2. On obtient donc: (N = (n 1, n 2, n 3 ), P = (x, y, z)) (n n 2 2 ) y 2 + (n n 3 2 )z n 2 n 3 y z = n 1 2 r 2 où n 1 0 Hypothèse : le cercle est différent de l'origine. Effectuer une translation de C des points satisfaisant l'équation précédente.

4 4 POLYGONES Un polygone est une figure fermée formée d'une suite de points appelés "sommets " reliés par des segments appelés "arêtes". Les sommets sont distincts et les arêtes ne se croisent pas. L'ensemble des sommets font partie d'un même plan. Un polygone est défini à partir de ses sommets P 0, P 1, P 2,..., P N-1.

5 5 POLYGONES CONVEXES Un polygone où chaque paire de points à l'intérieur du polygone implique que le segment de droite les reliant se trouve aussi complètement à l'intérieur du polygone. ouinon POLYGONES MONOTONES Un polygone possédant 2 sommets extrêmes dans une direction donnée, reliés par 2 chaînes monotones dans cette direction. La direction x est choisie.

6 6 POLYGONES EN SPIRALE Un polygone dont le contour contient uniquement une sous-chaîne concave. POLYGONES EN ÉTOILE Un polygone possédant un sommet visible de tous les autres sommets.

7 7 POLYÈDRES Une figure fermée bornée où chaque face est un polygone. typedef Liste Polyedre;(* liste de polygones 3D *) Le type liste représente une liste doublement chaînée. POLYGONES -Comment vérifier que nous sommes en présence dun polygone ? -Déterminer si un polygone est convexe, monotone, en spirale ou en étoile ? -Vérifier si un point appartient ou non à un polygone ? -Calculer lintersection entre 2 polygones, entre une droite et un polygone, entre un plan et un polygone, etc.

8 8 SURFACES DE RÉVOLUTION Appliquer une rotation à une courbe autour d'un axe quelconque dans l'espace 3D : soientla courbe génératrice C(u), u [0,1], l'axe de rotation d, la transformation T Z faisant coïncider l'axe de rotation à l'axe des z, la transformation inverse T -1 Z, la transformation T de rotation d'un angle autour de l'axe des z, on obtient : S(u, ) = T -1 Z T T Z C(u),u [0, 1], [0, 2 ]. La courbe génératrice C(u) est quelconque; nous pouvons utiliser une spline cubique, une courbe de Bézier ou une courbe B-Spline par exemple. C(u) | | d C(u) est un segment de droite Ex.

9 9 SURFACES DE RÉVOLUTION Ex. C(u) | | d C(u) est un segment de droite C(u) et d sont coplanaires.

10 10 SURFACES DE BALAYAGE Déplacement d'une droite, d'un polygone ou d'une courbe quelconque le long d'une courbe dans l'espace à 3 dimensions. Surfaces cylindriques Déplacement d'une droite de direction w constante (génératrice) sappuyant sur une courbe fixe C(u) (directrice) C(u) + w,u [0,1],. C(u) w N(u, ) = d C(u)x w d u

11 11 SURFACES DE BALAYAGE Déplacement d'une droite, d'un polygone ou d'une courbe quelconque le long d'une courbe dans l'espace à 3 dimensions. Surfaces coniques Déplacement d'une droite (génératrice) sappuyant sur une courbe fixe C(u) (directrice) tout en passant par un point fixe P. S(u, ) = P + (C(u) - P),u [0,1],. P C(u) N(u, ) = d C(u) x (C(u) - P) d u

12 12 SURFACES DE BALAYAGE Déplacement d'une droite, d'un polygone ou d'une courbe quelconque le long d'une courbe dans l'espace à 3 dimensions. Surfaces conoïdes Déplacement d'une droite (génératrice) sappuyant sur une courbe fixe C(u), u [0,1], et une droite fixe D: : a + d, tout en restant | | à un plan dont la normale est N. C(u) + {a + d - C(u)},u [0,1],. où = [C(u) * N - a * N] / (d * N). D C(u) Le plan est | | à a + d - C(u) (a + d - C(u)) N N * (a + d - C(u)) = 0 = [C(u) * N - a * N] / (d * N).

13 13 SURFACES BILINÉAIRES Une surface bilinéaire est construite à partir de 4 sommets P, Q, R et W. Chaque point sur la surface est obtenu par interpolation linéaire entre 2 points sur des frontières opposées: S(u, v) = (1-u) (1-v) P +(1-u)v Q + u(1-v) R + u v W,u, v [0,1]. Si les 4 sommets sont dans un même plan, la surface en question est un quadrilatère. N(u, v) = S(u, v) x S(u, v) u v où S(u, v) = v (W – Q) + (1 – v) (R – P), u S(u, v) = u (W – R) + (1 – u) (Q – P). v

14 14 SURFACES BILINÉAIRES S(u, v) = (1-u) (1-v) P +(1-u)v Q + u(1-v) R + u v W,u, v [0,1]. On peut subdiviser S en 4 sous-surfaces bilinéaires avec les sommets suivants : I :P, S(0, ½), S(½, 0) et S(½, ½). II :S(0, ½), Q, S(½, ½) et S(½, 1). III :S(½, 0), S(½, ½), R et S(1, ½). IV :S(½, ½), S(½, 1), S(1, ½) et W. Cette subdivision est exacte. Considérons par exemple la sous-surface I notée A(u, v): A(u, v)= (1-u) (1-v) P +(1-u)v S(0, ½) + u(1-v) S(½, 0) + u v S(½, ½), = (1-u) (1-v) P + (1-u)v {½ P + ½Q} + u(1-v) {½ P + ½ R} + u v {¼ P + ¼ Q + ¼ R + ¼ W} = {(1-u) (1-v) + ½ (1-u)v + ½ (1-v)u + ¼ u v } P + {½ (1-u)v + ¼ u v} Q + {½ u(1-v) + ¼ u v} R + {¼ u v} W = {1 - ½ v - ½ u + ¼ u v } P + {½ v - ¼ u v} Q + {½ u - ¼ u v} R + {¼ u v} W = S(½ u, ½ v)

15 15 SURFACES GUIDÉES Elle est obtenue par interpolation linéaire de 2 courbes P(v) et Q(v): S(u, v) = (1-u) P(v) + u Q(v),u, v [0,1]. Nous pouvons remarquer que S(0,v) = P(v) et S(1,v) = Q(v). De plus, nous avons: S(0,0) = P(0), S(1,1) = Q(1), S(0,1) = P(1) et S(1,0) = Q(0), les extrémités des 2 courbes.

16 16 SURFACES DE COONS LINÉAIRES En considérant les 4 courbes frontières C 1 (u), C 2 (u), C 3 (v) et C 4 (v), on peut imaginer simplement la somme de 2 surfaces guidées: S(u, v) = (1-v) C 1 (u) + v C 2 (u) + (1-u) C 3 (v) + u C 4 (v) u, v [0,1]. où C 1 (0) C 3 (0), C 3 (1) C 2 (0), C 2 (1) C 4 (1) et C 1 (1) C 4 (0). C 1 (u) C 2 (u) C 4 (v) C 3 (v) Après examen, on voit que : S(0, 0) = 2 C 1 (0), S(0, 1) = 2 C 2 (0), S(1, 0) = 2 C 4 (0), S(1, 1) = 2 C 4 (1), S(0, v) = (1-v) C 1 (0) + v C 2 (0) + C 3 (v) S(1, v) = (1-v) C 1 (1) + v C 2 (1) + C 4 (v) S(u, 0) = C 1 (u) + (1-u) C 3 (0) + u C 4 (0) S(u, 1) = C 2 (u) + (1-u) C 3 (1) + u C 4 (1). Ceci est dû à la duplication des 4 sommets.

17 17 SURFACES DE COONS LINÉAIRES Pour corriger cet état de fait, nous considérons plutôt: S(u,v) =(1-v) C 1 (u) + v C 2 (u) + (1-u) C 3 (v) + u C 4 (v) - C 1 (0) (1-u)(1-v) – C 2 (0)(1-u)v -C 4 (0) u(1-v) – C 4 (1) u v,u, v [0,1] oùS(0, 0) = C 1 (0), S(0, 1) = C 2 (0), S(1, 0) = C 4 (0), S(1, 1) = C 4 (1), S(0, v) = C 3 (v), S(1, v) = C 4 (v), S(u, 0) = C 1 (u), S(u, 1) = C 2 (u).

18 18 SURFACES DE COONS LINÉAIRES

19 19 Maillage polygonal Jusquà maintenant, nous avons considéré des surfaces qui peuvent être décrites analytiquement. Dans bien des applications, une description analytique est absente. Pensons à la représentation dune automobile ou dun paquebot. La surface dun objet peut alors être représentée approximativement par un ensemble de polygones. Même si nous possédons des surfaces décrites analytiquement comme par ex., des surfaces paramétriques, il est facile de construire un maillage triangulaire approximant chaque surface à partir des points suivants de la surface : {S(u, v) | u = 0,, 2, …, 1; v = 0,, 2, …, 1} et cela facilite lapplication des algorithmes daffichage.

20 20 Maillage polygonal Calcul de la normale en chacun des sommets des facettes dun maillage triangulaire. la normale en chacun des sommets dune facette triangulaire est la même et correspond à la normale au plan du triangle. la normale en un sommet dune facette triangulaire est la moyenne des normales des plans des triangles ayant ce sommet en commun. la normale en un sommet dune facette triangulaire est la normale à la surface en ce point. TROIS FAÇONS DIFFÉRENTES :

21 21 Exercice # 1 Fonction booléenne qui retourne TRUE si un point P appartient à un polygone. FALSE autrement. On peut supposer que le polygone est dans le plan X°Y. Construisons une demi-droite issue de P qui intercepte le polygone sans intercepter ces sommets. Calculer m # dintersections entre cette demi-droite et les arêtes du polygone. Si m est impairealors retourne TRUE sinon retourne FALSE. m = 4. P

22 22 Exercice # 2 Fonction booléenne qui retourne TRUE si un polygone est convexe. FALSE autrement. Soient P 0, P 1, P 2, …, P n-1 les sommets dun polygone, testez le signe de la coordonnée en z du vecteur : (P i - P i-1 ) x (P i+1 - P i ), i = 1, 2, …, n avec P n P 0 et P n+1 P 1. Si le signe est le même pour tout i = 1, 2, …, n alors retourner TRUE sinon retourner FALSE. Note :Le polygone est dans le plan X°Y; la coordonnée en z des sommets est nulle.

23 23 Exercice # 3 Considérons un plan dont le vecteur normal est N et la distance de lorigine au plan est d, et un triangle 3D non dégénéré dont les sommets sont resp. Q, R et S. Lintersection de ces 2 objets donne lieu à plusieurs situations. Dans chacune delles, indiquez comment nous pouvons identifier les surfaces résultantes et comment nous pouvons déterminer quelle situation sapplique. Léquation du plan est : N* P + d = 0. 1er cas :Surface résultante Triangle QRS Condition : N * Q + d = 0,N * R + d = 0,N * S + d = 0. 2ième cas :Surface résultante aucune Condition :N * Q + d < 0,N * R + d < 0,N * S + d < 0 ou encore N * Q + d > 0,N * R + d > 0,N * S + d > 0.

24 24 Exercice # 3 (suite) 3ième cas :Surface résultante 1 point Si la surface résultante est un point alors il sagit dun des 3 sommets du triangle disons Q. Conditions :N * Q + d = 0, (N * R + d < 0,N * S + d < 0) ou (N * R + d > 0,N* S + d > 0). Des conditions semblables peuvent être fournies lorsque le point résultant est R ou S. 4ième cas :Surface résultante 1 segment de droite (i)La surface résultante est une arête du triangle, disons QR. Condition : N * Q + d = 0,N * R + d = 0,N * S + d 0. Des conditions semblables peuvent être fournies lorsque la surface résultante est RS ou QS. Q R

25 25 Exercice # 3 (suite) (ii) La surface résultante est un segment de droite dont lune des extrémités est un sommet du triangle, disons Q. Condition :N * Q + d = 0, (N * R + d 0)ou (N * R + d >0,N* S + d < 0). Pour trouver lautre extrémité du segment résultant, il sagit de calculer [0, 1] tel que R + (S - R) fait partie du plan N * P + d = 0. Une démarche semblable peut être effectuée lorsque le sommet du triangle appartenant au plan est R ou S. Q R S

26 26 Exercice # 3 (fin) (iii) la surface résultante est un segment de droite : aucun des sommets du triangle ne fait partie du plan et il existe au moins un sommet du triangle de chaque côté du plan (supposons que R et S sont de part et dautre du plan). Condition :N * Q + d 0,N * R + d 0,N * S + d 0 lun des 3 termes est négatif et lun des trois termes est positif. Pour calculer lintersection entre chaque arête du triangle (dont les extrémités sont de part et dautre du plan) et le plan, on peut procéder comme en (ii). Q R S


Télécharger ppt "1 CHAPITRE IV OBJETS ÉLÉMENTAIRES DANS LESPACE À TROIS DIMENSIONS."

Présentations similaires


Annonces Google