• Aucun résultat trouvé

Surfaces de subdivision

Dans le document Modélisation géométrique (Page 158-176)

C

offset

(u) = C (u) + R.N (u)

S

offset

(u, v) = S(u, v) + R.N (u, v)

315

Quatrième partie Maillages et

Surfaces de subdivision

Modélisation Géométrique 317

Maillages – Triangulation Modélisation sur des triangles

317

Généralités

Un maillage recouvre de nombreuses réalités fortement dépendantes de l'application

– Différentes formes de maillage

Triangles, quadrangles, hexagones, … Tétraèdres, cubes, …

– Différentes propriétés

Homogène, régulier, conforme, …

– Différentes applications

• Discrétisation pour le calcul (éléments finis, équations aux dérivées partielles)

• Approximation (d'objets plus complexes)

• Pavage de zones (planes, surfaciques, volumiques)

• Modèle en soi : surfaces de subdivision, …

Tous les objets virtuels qui vous entourent relève d'un maillage

Modélisation Géométrique 319

Généralités

Une grande diversité de problèmes

De nombreux points communs

– Ce sont eux qui sont intéressants en dehors d'une application donnée

Un maillage – Des points

– Des arêtes liant les points – Des figures géométriques

Liant les arêtes pour faire des faces planes

Liant les faces pour créer des objets géométriques (tétraèdres, cubes, simplexes, …)

Des relations de voisinage et donc des structures de données décrivant l'ensemble

319

Généralités

Une première grande différence : l'origine des points

Les points sont donnés, mesurés, …

– Le maillage doit s'appuyer uniquement sur ces points

Cas de la modélisation géométrique

Les maillages de calcul

– L'utilisateur discrétise une structure donnée, un volume – Il peut mettre un point où il le souhaite

En respectant la géométrie de la structure ou de l'espace En respectant la logique de la physique ou de la mécanique

– Offre plus de facilité pour le choix des mailles

Modélisation Géométrique 321

Quelques définitions

• k-simplexe : dans un espace de dimension n, un k-simplexe (k<=n) est l'enveloppe convexe de k+1 points indépendants

– O-simplexe : 1 point

– 1-simplexe : segment ou arête – 2-simplexe : triangle

– 3-simplexe : tétraèdre

321

Quelques définitions

Recouvrement (simplicial) : S un ensemble de points de le domaine borné par l'enveloppe convexe de S, est un

recouvrement au moyen de simplexes Ti (en nombre fini) – L'ensemble des sommets de est exactement S

Complexe-simplicial: recouvrement simplicial où deux simplexes n'ont pas d'intersection ou se coupent suivant une p-face (p<k)

– Intersection : vide, 1 point, 1 arête, 1 triangle, ….

Une triangulation est un 2-complexe simplicial – Tout peut se traiter en dimension k

Ω=Ti

Toi≠ ∅

ToiToj=∅ i j

k, Ω Γ

Γ

Modélisation Géométrique 323

Quelques définitions

Vite un exemple !

• On parle aussi de triangulation conforme ou non conforme

Une triangulation est en ensemble de triangles dont – la réunion recouvre le domaine

– L'intersection de 2 triangles est vide, un point ou une arête

• Un triangulation est un graphe planaire ayant un maximum d'arêtes

323

Triangulation

• Une triangulation s'appuie sur des 2-simplexes

3D : tétraédrisation ou 3-complexe-simplicial

– On obtient une triangulation de la peau de l'objet en prenant les triangles du bord : Il s'agit d'une triangulation surfacique

• La triangulation s'appuie sur l'enveloppe convexe – Triangulation non contrainte

• Si la frontière est imposée on parle de triangulation contrainte

Ω

?

Modélisation Géométrique 325

Triangulation

• C'est la seule forme géométrique permettant de recouvrir n'importe quel domaine

– généralisable aux simplexes

• On explique en 2D et « on généralise » – Tout ne se généralise pas « facilement » – Perte de certaines propriétés

• Propriété fondamentale

– Il n'y a pas unicité de la triangulation

– Toutes les triangulations d'un même domaine

• Même nombre de triangles

• Même nombre de côtés

325

Triangulation: dénombrement

N points du plan, Nknombre de points sur l'enveloppe convexe

– Démonstration par récurrence

N=3

Vrai à l'ordre N, ajout du point N+1 – Point à l'intérieur de l'enveloppe

– Modification de l'enveloppe convexe

Toute triangulation de compte :

• Nt= 2(N-1) –Nktriangles

• Nc= 3(N-1) – Nkcôtés

Ω

Ω

k points

Modélisation Géométrique 327

Triangulation: dénombrement

• Ordre de grandeur : N points, de l'ordre de 2N triangles

Dénombrement : généralisation NFpoints frontaliers

NFEfrontières externes (composantes connexes) NFIfrontières internes (trous)

• Nt= 2(N+NFI-NFE) –NFtriangles

• Nc= 3(N+NFI-NFE) – NFcôtés

NF= (5+3+4) + (4+5) = 21 (=N) NFE=2, NFI=3

Nt= 23 Nc=45 327

Triangulation de Delaunay

LA triangulation utilisée !

– Se gère aussi avec des simplexes en dimensions supérieures

Critère intuitif de choix

Critère objectif – Rapport h/r

– Critère de qualité d'une triangulation

– Intervient dans la majoration des erreurs d'interpolation

Intérêt des triangles équilatéraux !

ou ?

Modélisation Géométrique 329

Triangulation de Delaunay

Définition :

La triangulation de Delaunay est la triangulation qui maximise le minimum des angles de tous les triangles

– Critères précédents ….

Triangulation unique sauf en cas de 4 points (ou plus) cocycliques

– Les plus petits angles interceptent les mêmes arcs …

Différents moyens d'obtention :

– Ils sont équivalents (Lawson 1977) a1

a'1

a'2

a2

a'3

a3

a4

a'4

329

Triangulation de Delaunay et diagramme de Voronoï

Voronoï : mathématicien russe de la fin du 19esiècle – Idée de partitionnement déjà utilisée par Descartes

Ensemble de n points Pidu plan P(généralisable en dimensions supérieures)

Polygone de Voronoï de Pi: ensemble des points du plan P plus proche de Pique de tous les autres points Pj(i≠j)

Diagramme de Voronoï : partitionnement réalisé par l'ensemble des polygones de Voronoï

Vi=

{

P∈ Π,∀j{1,...,n},i j,d(P,Pi)d(P,Pj

}

Pi Pj

Vi=

i≠j Eij

Vi d'intérieur non vide ViVj est soit vide

réduite à un point

réduite à une demi - droite ou un segment

Eij

Modélisation Géométrique 331

Triangulation de Delaunay et diagramme de Voronoï

Si on relie les points voisins, on obtient la triangulation de Delaunay de l'enveloppe convexe des points Pi

En prenant les médiatrices des triangles, on retrouve le diagramme de Voronoï. 3 médiatrices concourantes (centre du cercle circonscrit au triangle), sauf si 4 points

cocycliques (ou plus). Problèmes duaux

331

Triangulation de Delaunay et échange d'arêtes

On parle souvent de « flip »

Critère local du min-max de l'angle

angles min

Conduit à la triangulation de Delaunay Répéter

flip-possible = faux

Pour toutes les paires de triangles ayant un côté commun Critère min-max

Si (échange d'arêtes) alors flip-possible = vrai Finsi

Finpour

Modélisation Géométrique 333

Triangulation de Delaunay et critère du cercle

Critères de la sphère en 3d

Le cercle circonscrit de chaque triangle ne doit contenir aucun sommet de la triangulation

– Autre définition de la triangulation de Delaunay

Origine

a=b

a b

a<b

a b

a>b a

b

333

Triangulation de Delaunay et critère du cercle

Maximise l'angle le plus petit

Attention, critère théorique simple

En pratique, test très délicat pour les cas limites : dedans, sur ou dehors ?

– Seule partie de la triangulation travaillant sur des réels – Important travaux sur la robustesse de la procédure

a<b a

b

a>b

a b

a>b a

b

Modélisation Géométrique 335

Plus de 3 points cocycliques

Plus de 3 médiatrices concourantes

Plus les points sont régulièrement espacés, plus il peut y avoir de points cocycliques !!!

– Démarche inadaptée ?

Triangulation de Delaunay et dégénérescence

335

Diviser pour régner

Construction en n.log(n) du diagramme de Voronoï

Subdivision récursive de l'ensemble des points – 2 parties « égales »

– Recherche des 2 diagrammes – Fusion des 2 diagrammes

• Intersections bien ordonnées de médiatrices

– Fin de la division : ensemble de 2 ou 3 points

Nécessite évidemment un tri des points – A étudier en fonction de la valeur de n

Optimal

– Si bien écrit …

Triangulation de Delaunay et algorithmes

Modélisation Géométrique 337

• Séparation en 2

• Construction récursive des 2 diagrammes

Triangulation de Delaunay et algorithmes

337

• Partir du bas (points bas des 2 enveloppes convexes)

• Remonter la suite des médiatrices jusqu'aux points hauts des enveloppes convexes)

Triangulation de Delaunay et algorithmes

Modélisation Géométrique 339

Algorithme d'insertion de Watson (1981)

• Initialiser la triangulation avec un triangle fictif

• Trianguler en insérant les points 1 par 1 dans la triangulation – Nouvelle triangulation intérieure au triangle

• Supprimer toutes les connexions avec le triangle fictif

• Obtention de la triangulation de l'enveloppe convexe

Triangulation de Delaunay et algorithmes

339

Algorithme d'insertion : insertion d'un point

• Soit Ti-1. Insertion du point Pi

• Recherche du polygone d'insertion du point Pi

– Réunion des triangles ne respectant par le critère du cercle – Polygone étoilé par rapport à Pi

Triangulation de Delaunay et algorithmes

Ti-1

Modélisation Géométrique 341

Triangulation de Delaunay et algorithmes

Algorithme d'insertion : insertion d'un point

• Polygone d'insertion du point Pi

– Polygone étoilé par rapport à Pi

– Suppression des arêtes internes – remplacement par les arêtes issues de Pi

• Obtention de Ti

Ti

341

Frontières intérieures

Contraindre la triangulation à s'appuyer sur une ligne qui pourrait disparaître suivant la discrétisation

– Respecter une ligne connue de crête ou de ravin

– Permettre d'imposer une condition le long d'une ligne fixée

Ex : créer un modèle C1avec une ligne C0

Perte locale du caractère Delaunay – Delaunay sous contraintes

– Swap (ou flip) d'arêtes

Triangulation de Delaunay et contraintes

Modélisation Géométrique 343

DCEL (Doubly-Connected Edge List)

Il faut pouvoir

– Changer de triangle en tournant autour d'un point, le long d'une arête – Passer d'une arête à l'autre, ….

Une liste de points – 3 réels par point

Une liste de triangles – Trois pointeurs

Une information de voisinage

– Deux sommets d'un même triangle sont voisins – 1 voisinage = 1 paire de voisins

Rappel : n points àde l'ordre de 2n triangles

Structure de données

343

DCEL (Doubly-Connected Edge List)

Structure de données

Voisinage suivant autour de V2 (sens trigo) Voisinage suivant autour de V1 (sens trigo) Triangle de droite ou 0

Triangle de gauche ou 0 Pointeurs vers la liste de points

Il faut rentrer dans la DCEL : chaque point pointe sur un voisinage

Une faiblesse :

ne fonctionne que pour les surfaces orientables

Dans le cas contraire, il faut prendre un modèle arêtes ailées

Modélisation Géométrique 345

Maillage sur un exemple

345

Lara Croft

dfgfd

Modélisation Géométrique 347

Lara Croft

La réalité

347

D'où viennent les points ?

Rarement donnés à la main ! – Machine à mesurer 3D

• Très précis mais très lent – Les scanners laser

• Rapide, lignes de points

• Masse importante de données

• Bruit

– La photogrammétrie

• Matériel économique, mais traitements lourds

• Masse importante de données

• Bruit important

Beaucoup trop de points – Beaucoup de bruit

Modélisation Géométrique 349

Les enjeux sur les triangulations

Triangulations surfaciques

Compresser

Réparer

Connecter

Importance des courbures discrètes

349

Surfaces de subdivision

Modélisation Géométrique 351

Introduction

Une surface de subdivision – Maillage initial

• Régulier ou irrégulier

– Des règles de subdivision

• Compatibles avec le maillage

• Nouveau maillage avec plus de points

• Conservation de points ou non

– Tend vers une surface de plus en plus « lisse »

– Les schémas utilisés convergent vers une surface continue

– Apparition en 1978 (Catmull-Clark) – Véritables avancées dans les années 90-95 351

Introduction

Un ensemble organisé de points (organized) points

Une simple formule pour calculer un nouveau ensemble de points

Une texture sur le maillage – C'est (presque) tout …

i i i

i

f S S S

Dans le document Modélisation géométrique (Page 158-176)

Documents relatifs