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

Visualisation de surfaces décrites analytiquement.

Présentations similaires


Présentation au sujet: "Visualisation de surfaces décrites analytiquement."— Transcription de la présentation:

1 Visualisation de surfaces décrites analytiquement

2 2 Visualisation de la fonction y = F(x, z) PRINCIPE DE BASE On fixe une coordonnée, par exemple X = X max, correspondant à la coordonnée X la plus proche de lobservateur. On introduit la notion de crête supérieure et inférieure pour déterminer les parties visibles à chaque étape; initialement, ces 2 crêtes correspondent à la section de surface y = F(x max, z). x z y X = X max - Y = 0 X = X max Y = 0

3 3 Visualisation de la fonction y = F(x, z) On affiche la section de surface correspondant à X = X max. X X max. X X max - ( > 0 fixé) À laide des crêtes supérieure et inférieure courantes, on génère les parties visibles de la section y = F(X, z); puis, on les affiche. Mise à jour des crêtes. Si X X min alors réitérez. Note : A)Chaque section est décomposée en sous-sections. Les parties visibles dune sous-section sont celles au-dessus de la crête supérieure ou au-dessous de la crête inférieure

4 4 Visualisation de la fonction y = F(x, z) B)Distinction entre les algorithmes -mode de représentation des 2 lignes de crête; -processus de mise à jour des crêtes. Algorithme de Williamson 1 crête :une suite de segments de droite(u i, v i ) - (u i+1, v i+1 ),i=1, 2, …, N u i < u i+1 Chaque sous-section dune section de surface y = F(x, z) est un segment de droite. Le processus de mise à jour des crêtes et de calcul des parties visibles se ramène à la comparaison dune sous-section dune section de surface avec chaque crête.

5 5 Comparaison entre le segment courant et la crête supérieure Soit (a, b) - (c, d) où a < c, le segment courant, Déterminer le segment dont les extrémités (u j, v j ) et (u j+1, v j+1 ) sont telles que u j a < u j+1. Posons pa = ordonnée du point dintersection entre la droite verticale u = a et le segment (u j, v j ) - (u j+1, v j+1 ). u j < a pa < b (a, b) (a, pa) (u j, v j ) (u j+1, v j+1 )

6 6 Comparaison entre le segment courant et la crête supérieure (a, b) (a, pa) (u j, v j ) (u j+1, v j+1 ) point dintersection (e, f) entre les 2 segments (e, f) 3 cas :(e, f) = (u j+1, v j+1 ) (e, f) = (c, d) (e, f) (c, d) point dintersection (e, f) entre les 2 segments (a, b) (a, pa) (u j, v j ) (u j+1, v j+1 ) (c, d) c u j+1

7 7 Comparaison entre le segment courant et la crête supérieure (a, b) (a, pa) (u j, v j ) (u j+1, v j+1 ) (c, d) c > u j+1 pa = b pa > b u j > a

8 8 Algorithme de Wright 1 crête 1 vecteur dont la longueur dépend de la résolution dune machine « virtuelle » fixée par lutilisateur. Chaque élément contient la hauteur maximale (minimale) atteinte pour labscisse correspondante. Chaque sous-section dune section de surface est un segment de droite discrétisé en considérant sa projection sur la crête. PARTIES VISIBLES Une liste de pointsCoûteux en mémoire Dépendance avec la machine Voici les caractéristiques de la liste de points : ……….NNVVVVVNNNNNNVVVVVVVNN……. Segment de droite V : visible N : non visible

9 9 Algorithme de Butland BUT : Réduire les exigences en mémoire des algorithmes précédents. PROCÉDÉ : On visualise la surface par bandes dégales largeurs Réduction de la dimension des crêtes Mise à jour des crêtes simplifiée RESTRICTION : Projection en parallèle orthographique 2 vues possibles : A)Vue de côté (direction de projection plan X°Y) z x Bande Pour chaque bande i = 0, 1, 2, …, m-1 déterminez les parties visibles des segments (x i, g(x i,z j )) - (x i+1, g(x i+1,z j )) (x i, g(x i,z j-1 )) - (x i+1, g(x i+1,z j )) j (x i, z j, F(x i,z j )),i = 0, 1, 2, …, m; j = 0, 1, 2, …, n où g(x, z) = F(x, z) cos x - z sin x x : un angle de rotation autour de laxe des x Soit la grille de points

10 10 Algorithme de Butland B)Vue en coin On considère la même grille de points. z x pos_x pos_z On effectue une rotation autour de laxe des y dun angle : = arctg pos_x / pos_z afin que lobservateur soit situé dans le même axe que les bandes. De plus, la rotation se fait par rapport au centre de la grille afin de ne pas déplacer la surface. On peut aussi effectuer une rotation autour de laxe des x. Bande Le calcul des parties visibles se fait aussi bande par bande.

11 11 Comparaison des algorithmes Lalgorithme de Williamson est très lent; il peut être remplacé par celui de Wright. Lalgorithme de Butland est très rapide mais contraignant. Ce sont 3 modes daffichage en « fil de fer ». Pour pallier à cet inconvénient, on peut approximer la surface par un ensemble de triangles à laide de la grille de points : (x i, z j, F(x i,z j )),i = 0, 1, 2, …, m; j = 0, 1, 2, …, n Il sagit ensuite dopter pour un algorithme délimination des parties cachées dans le cas dune scène de triangles 3D.


Télécharger ppt "Visualisation de surfaces décrites analytiquement."

Présentations similaires


Annonces Google