Maillage de surfaces de genre zéro sans bordSujet proposé par Steve OudotSteve.Oudot[at]inria.fr Difficulté : difficile (***). |
Figure 1: Maillage d'une surface connexe de genre zéro sans bord.
Pour mailler S2, on peut se contenter de mailler le disque unité D dans le plan, puis de remonter les sommets du maillage sur la demi-sphère supérieure par une projection Π. Le choix de Π sera discuté en partie 3. Le maillage de S2 est obtenu en recollant le maillage de la demi-sphère supérieure avec son symétrique par rapport au plan horizontal. Il faut pour cela que les bords des deux maillages concordent dans 3, ce qui peut être assuré en choisissant une projection Π qui laisse le bord du maillage de D dans le plan horizontal. Notre approche consistera à faire en sorte que les sommets du bord du maillage de D se trouvent sur le bord C de D, puis à choisir une fonction Π qui laisse C invariant.
À noter que la triangulation de Delaunay de E existe toujours, et qu'elle est unique si les points de E sont en position générale, i.e. si trois points quelconques ne sont jamais alignés sur le bord de l'enveloppe convexe de E, et si quatre points quelconques ne sont jamais sur un même cercle vide d'autres points de E. Cette hypothèse de généricité sera supposée vérifiée tout au long du projet.
OFF | |
nSommets nFaces 0 | |
x0 y0 z0 | ## Coordonnées du premier point |
x1 y1 z1 | ## Coordonnées du deuxième point |
⋯ | |
xn−1 yn−1 zn−1 | ## Coordonnées du dernier point |
3 p1 p2 p3 | ## 3 pour face triangulaire, suivi des indices (entre 0 et n−1) |
3 q1 q2 q3 | ## des trois sommets du triangle |
⋯ |
Πs: (x , y)↦ | ⎛ ⎜ ⎜ ⎝ |
|
, |
|
, |
|
⎞ ⎟ ⎟ ⎠ |
⎧ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎨ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎪ ⎩ |
|
Pour générer un maillage uniforme de S, il faut compenser l'étirement lié à Φ ∘ Πs dans le calcul de la fonction de densité ϱ. D'après la formule (1), l'étirement en un point dépend généralement de la direction dans laquelle on regarde. Le cas de la projection stéréographique était simple puisque cette dernière a un étirement isotrope en tout point de D. En revanche, le cas général d'un étirement anisotrope est problématique puisqu'on ne sait pas quelle direction privilégier. Pour s'en sortir, on ne considérera que la composante isotrope de l'étirement, qui est un scalaire. Cette approximation donne d'assez bons résultats en pratique, comme le montre la figure 4.
∇ r = |
|
|
θ + |
|
|
ϕ |
∇ r⊥ = − |
|
|
θ + |
|
|
ϕ |
Ce document a été traduit de LATEX par HEVEA