Introduction aux Surfaces implicites Marc Neveu
Primitives implicites surface équipotentielle S T > 0 (isovaleur ou valeur de seuil) : Le volume équipotentiel V délimité par S : – si F(M) > T, M est à l’intérieur de la surface, – si F(M) = T, M appartient à la surface, – si F(M) < T, M est à l’extérieur de la surface. Correspondance entre la fonction de densité et la surface en résultant
Primitives implicites Une primitive implicite à squelette ponctuel est défini à l’aide d’un centre Qi d’une fonction de densité Fi. Si la scène est composée de n + 1 primitives, on peut construire une forme complexe (nommée volume implicite ou surface implicite) = composition de primitives implicites la fonction de densité globale F est définie par : Mélange Union Intersection Exemples : mélange de 2 primitives Différence de 2 primitives
R-fonctions On peut mélanger les surfaces implicites avec les R-fonctions [Pasko] L’union et l’intersection sont définies en fonction d’un paramètre a [0,1] Ex : a =1 R-fonctions « continues »
influence de l’isovaleur
Quelques fonctions de potentiel modèle original (blob) par Blinn Murakami Nishimura Wyvill
habillage de squelettes On associe à chaque objet Bi un rayon d’influence Ri et une fonction de densité Fi : IR3 → IR monotone et décroissante lorsqu’on s’éloigne du squelette Si. La fonction de densité Fi est définie comme la composition de deux fonctions la fonction de distance di : IR3 → IR+, normalisée par le rayon d’influence Ri. la fonction de potentiel fi : IR+ → IR.
Polygonalisation des surfaces implicites approximation polygonale de l’isosurface => Marching Cubes de Lorensen & Cline En 2D : On calcule la valeur de la fonction implicite F aux sommets de la grille carrée englobante (ici par exemple T = 5). L’algorithme trace des segments entre les sommets intérieurs (F>5) et extérieurs (F<5) en interpolant.
Polygonalisation (suite) On a 16 cas (24)à considérer selon l’intériorité des sommets Sans oublier les cas ambigus….
Polygonalisation (suite) En 3D: on a 256 cas (28) qu’on réduit par symétrie à 15 familles Chaque cas est directement repéré par représentation binaire des sommets. Les sommets de 1 à 8 sont pondérés de 1 à 128 (v1 = 1, v2 = 2, v3 = 4, etc.); par ex, le cas 3 correspond au nombre 5 (v1 et v3 positifs, 1 + 4 = 5).
Polygonalisation (suite) Il subsiste des cas ambigus…
Influence de la taille de la grille D’après Paul Bourke