Approximation de surfaces d´eveloppables pour la mod´elisation
d’objets 3D
Gilles LAURENT (MMIS MCS - 2A Ensimag)
Mai 2012
R´esum´e
Nous consid´erons le probl`eme suivant : construire une surface d´eveloppable 3D quand on connait
uniquement son bord. Nous cr´eons pour cela un maillage `a partir d’une discr´etisation de la
courbe du bord, et nous modifions les points inerieurs `a l’aide d’une m´ethode d’optimisation
pour rendre le maillage d´eveloppable. Apr`es plusieurs subdivisions, le maillage obtenu est proche
d’une surface d´eveloppable.
1 Introduction
Une surface d´eveloppable est une surface qui peut ˆetre mise `a plat sans distorsion de la surface.
Il est tr`es peu probable qu’une surface prise au hasard ait la propri´et´e d’ˆetre d´eveloppable. Or
de telles surfaces mod´elisent parfaitement les tissus, le cuir et les m´etaux par exemple. Elles
pr´esentent donc un int´erˆet tout particulier pour ces domaines de l’industrie, notamment en
m´etallurgie o`u l’on d´eforme les tˆoles de m´etal pour former par exemple la coque d’un bateau.
Notre travail a ´et´e motiv´e par le fait de reconstruire une surface d´eveloppable `a partir de la
seule connaissance des bords de la surface. En effet, dans l’article [8], les chercheurs ont `a
leur disposition des capteurs sous formes de bandes qu’ils disposent sur une voile. Ils essayent
ensuite d’interpoler la surface inerieure en utilisant un minimum de capteurs (ceux-ci ´etant tr`es
chers) et en ne connaissant que la courbe du bord de la voile. Or la voile ´etant un tissu, elle
est d´eveloppable. Ainsi, en interpolant la surface int´erieure tout en respectant la propri´et´e de
d´eveloppabilit´e, on cherche une mod´elisation proche de la r´ealit´e.
Nous d´ecrivons dans cet article une m´ethode pour interpoler une surface `a partir des courbes
du bord, avec la contrainte que la surface obtenue soit d´eveloppable.
Travaux existants
Une surface est d´eveloppable si sa courbure de Gauss est partout ´egale `a z´ero. L’approximation
de telles surfaces par des maillages a d´ej`a ´et´e trait´ee dans des articles connexes, o`u les maillages
sont localement approces par des surfaces r´egl´ees d´eveloppables [4, 7, 16] (des morceaux de
cylindres, de cˆones). Dans ces m´ethodes, on transforme des maillages de mani`ere locale. Dans
le mˆeme ordre d’id´ees, dans l’article [10], on segmente un maillage de mani`ere `a ce que les
diff´erentes parties approchent des surfaces coniques (donc d´eveloppables), et on tente ensuite
de tranformer localement le maillage en v´eritable conique. Nous ne pouvons malheureusement
utiliser ces approches locales que sur des formes bien particuli`eres.
D’autres approches travaillent sur une transformation globale du maillage, nous avons moins de
contraintes sur les maillages que l’on peut optimiser. La courbure de Gauss est alors discr´etis´ee
en chaque point, puis l’on r´esout un syst`eme afin de rendre le maillage globalement d´eveloppable
[18]. C’est principalement sur cette id´ee que nous travaillons dans cet article.
2 D´efinitions, notations
Nous allons pr´esenter dans cette section les notions de maillage d´eveloppable et de maillage
laplacien. Le sch´ema de l’algorithme pr´esene utilisera ces deux notions.
1
2.1 Maillage d´eveloppable
On dit qu’un maillage M est d´eveloppable si on peut l’aplatir, i.e. le transformer en un maillage
D du plan, sans que la surface subisse de distorsion. Sans perte de g´en´eralit´e, on peut se
contenter d’´etudier les maillages qui sont des triangulations. Dans l’article [12] on d´efinit la
notion de developpablit´e discr`ete. Dans cet article, nous prendrons les notations suivantes :
Figure 1: Illustration de l’angle int´erieur du maillage (cf [17])
Notation
M={P, E, F }un maillage.
P={viR3, i V}, l’ensemble des points qui forment le maillage.
Vl’ensemble des indices des points du maillage.
E={(i, j)N2}l’ensemble des arˆetes du maillage.
Fl’ensemble des faces du maillage. On consid`erera dans la suite que toutes les faces sont
des triangles. Notre maillage sera donc une triangulation.
Vint ={itel que j, (i, j)E(i, j) appartient `a exactement deux faces de F},
l’ensemble des indices des points int´erieurs `a M.
Vbord =VrVint, l’ensemble des indices des points du bord du maillage.
N(vi) = {jtel que (i, j)E}, l’ensemble des indices des points premiers voisins de vi
dans M.
• N(vp) = {(i, p, j)N3tel que le triangle 4vivpvjF}, l’ensemble des faces adjacentes
`a vp.
D´efinition 1 On note pour tout pVint,
θ(vp) = X
(i,p,j)∈N (vp)
\vivpvi+1
On dira que θ(vp) est l’angle du point vpsur le maillage M.
Propri´et´e 1 Un maillage est d´eveloppable, si et seulement si en tout point pVint,θ(vp)=2π.
En effet on dit qu’un maillage Mest d´eveloppable si et seulement si on peut trouver une
d´eformation isom´etrique de R3dans R2. Les triangles du maillage applati sont donc semblables
2
aux triangles de Met ainsi la valeur des angles est pr´eserv´ee. Or les angles des points inerieurs
d’un maillage plan sont tous ´egaux `a 2π. Donc les angles des points inerieurs de Msont tous
´egaux `a 2π.
Nous n’avons ici qu’une condition n´ecessaire[18]. Pour avoir la r´eciproque il suffit que le maillage
soit topologiquement ´equivalent `a un disque, i.e. qu’il ne poss`ede pas de trou et ne se replie pas
sur lui-mˆeme.
Propri´et´e 2 Un maillage topologiquement ´equivalent `a un disque est d´eveloppable si et seule-
ment si pVint,θ(vp) = 2π.
Pour rendre nos maillages d´eveloppables, il nous suffira donc d’annuler en tout point du maillage
la valeur de θ2π.
Courbure de Gauss discr`ete r´eelle
La courbure de Gauss discr`ete en un point vpn’est pas exactement ´egale `a θ(vp). En effet pour
un maillage hexagonal (voir Figure 3)[2], on a :
D´efinition 2 Pour tout vp, p Vint on appelle
K6(vp) = 3 2πθ(vp)
Aire(N(vp))
La courbure de Gauss discr`ete au point vp, pour un maillage 6-r´egulier.
O`u Aire(N(vp)) repr´esente l’aire des triangles contenus dans le premier voisinage de vp.
D´efinition 3 On dit qu’une surface est d´eveloppable si sa courbure de Gauss est nulle en
chacun de ses points.
Ainsi la courbure de Gauss d´epend fortement de la taille du maillage, car si les mailles sont
petites, 1
Aire(N(vp)) deviendra tr`es grand. Il peut donc y avoir une diff´erence d’´echelle impor-
tante entre θ(vp)2πet K6(vp). Il faudra alors bien diff´erencier le fait de minimiser la valeur
de θ(vp)2πou bien minimiser la valeur de K6(vp).
2.2 Maillage laplacien
Un maillage est dit laplacien si chacun de ses points est le barycentre de ses voisins, ce qui a
donc un effet r´egularisant sur les points du maillage. A partir de cette interpr´etaion g´eometrique
et d’apr`es les articles [13, 9], on peut donner la d´efinition suivante pour un maillage laplacien :
D´efinition 2 On dit qu’un maillage est laplacien si,
viM, vi1
|N(vi)|X
vjN(vi)
vj= 0 (1)
o`u |N(vi)|est le cardinal de l’ensemble N(vi).
On peut ´egalement traduire cette relation sous la forme matricielle suivante :
En notant,
Li,j =
1si(i=j)
1
|N(vi)|si(jN(vi))
0sinon
(2)
3
et (xp)p, (yp)p, (zp)p, les coordonn´ees respectives des points (vp)p, l’´equation (1) devient ´equivalente
`a Lx= 0
Ly= 0
Lz= 0
(3)
On appelle alors Ll’op´erateur Laplacien.
Propri´et´e 3 Pour un maillage dont chacun des points est connexe, le rang de Lest n1
o`u nest le nombre de points du maillage. Lest quant `a elle une matrice de dimension nn.
En effet,
si on note (xp)pRn, le vecteur colonne des abscisses des points vp, et
˜
Li,j =
|N(vi)|si i=j
1 si jN(vi)
0 sinon
Alors
Lx= 0 ˜
Lx= 0
Par ailleurs, ˜
Lest sym´etrique et l’on a :
xRn,xT˜
Lx=X
(i,j)E
(xixj)2
Ainsi,
xRn,0 = ˜
Lx
0 = xT˜
Lx
0 = P(i,j)E(xixj)2
0 = (xixj),(i, j)ε
0 = xix0,i
donc ker ˜
Lvect(ξ) o`u ξ= (1,...,1)T.
R´eciproquement ξker ˜
Ldonc ker ˜
L=vect(ξ).
Ainsi L, qui est de mˆeme rang que ˜
L, est de rang n1.
Ainsi, nous avons un degr´e de libert´e pour rendre un maillage laplacien et d´eveloppable.
3 Algorithme de d´eveloppabilit´e
L’algorithme que nous avons cr´e est un algorithme it´eratif qui, `a chaque it´eration, subdivise le
maillage puis l’optimise pour le rendre d´eveloppable.
Pour r´ealiser l’´etape d’optimisation, nous nous inspirons des r´esultats d´ecrits dans les articles
[18, 17]. Celle-ci se base principalement sur la m´ethode de Newton pour annuler une fonction.
Or nous savons que cette m´ethode ne fonctionne que si l’on poss`ede une donn´ee initiale proche
de la solution finale. L’algorithme que nous proposons fournit donc un moyen d’obtenir ce
“bon” maillage initial sans perdre en performance. En effet il est tr`es facile de transformer des
maillages de petite taille en maillages d´eveloppables, car les matrices entrant en jeu s’inversent
`a moindre coˆut. Nous avons donc effectu´e cette d´emarche it´erative dans l’espoir de trouver des
maillages d´eveloppables de plus en plus grands. Ainsi, au d´ebut de chaque it´eration, le maillage
initial est le meilleur possible et la m´ethode Newton converge donc plus vite.
3.1 Principe de l’algorithme
L’algorithme part d’une courbe qui est le bord du maillage que l’on souhaite rendre d´eveloppable.
On cr´ee un premier maillage au centre.
4
On d´eplace ensuite les points du centre pour rendre le maillage le plus proche possible d’une
surface d´eveloppable.
Cela peut se traduire de la fa¸con suivante :
Nous voulons que la surface finale soit d´eveloppable.
Nous voulons que la surface soit le plus lisse possible, on essaye donc d’obtenir un maillage
laplacien.
Nous voulons que la surface soit assez proche de la surface initiale.
Nous obtenons alors un maillage proche d’une surface d´eveloppable.
Dans un second temps, on subdivise le maillage, et on obtient un nouveau maillage initial.
On r´eit`ere les ´etapes pr´ec´edentes.
3.2 Obtention du maillage initial
Figure 2: Cr´eation d’un patch de Coons, de dimension 25 25, `a partir de quatre courbes issues
de la surface d’un cˆone
Afin d’obtenir un premier maillage nous coupons la courbe initiale en quatre courbes P1, P2,
Q1 et Q2 (Figure 2) et nous appliquons sur ces quatre courbes un patch de Coons[6]. Le maillage
obtenu de cette facon est un maillage r´egulier. De plus pour effectuer notre triangulation, nous
consid`ererons le fait que chaque point a un premier voisinage hexagonal (Figure 3). Choisir
un tel maillage nous permet d’assurer que la courbure de Gauss discr`ete converge, au fur et `a
mesure des subdivisions, vers la courbure de Gauss de la surface lisse limite [2].
5
1 / 16 100%
La catégorie de ce document est-elle correcte?
Merci pour votre participation!

Faire une suggestion

Avez-vous trouvé des erreurs dans linterface ou les textes ? Ou savez-vous comment améliorer linterface utilisateur de StudyLib ? Nhésitez pas à envoyer vos suggestions. Cest très important pour nous !