Vous êtes sur la page 1sur 51

1

Gomtrie Algorithmique
Plan du cours
z
Introduction
z
Arrangements dans le plan
z
Triangulation de polygones
z
Diagrammes de Vorono
z
Triangulation de Delaunay
z
Recherche/localisation
z
Arbres de partition binaire
2
Gomtrie Algorithmique
Triangulation de Delaunay
z
Algorithmes de construction d'une triangulation
de Delaunay
Deux approches
1- onstruction d'une triangulation pour un ensemble
de points donn!s
z
onstruction du diagramme de Vorono puis " dualisation #
z
Algorithme ad-hoc incr!mentaux ou non
$- %es points sont calcul!s au &ur et ' mesure de la
construction de la triangulation
z
(!n!ration de maillage / adaptation de maillage
z
Algorithme n!cessairement incr!mentaux
3
Gomtrie Algorithmique
Triangulation de Delaunay
z
)rincipe des algorithmes incr!mentaux de
construction d'une triangulation de Delaunay
z
Insertion d'un point p
n
dans une triangulation ' n1 points
- Trou*er l'entit! contenant le nou*eau point
- Ins!rer le point
- +odi&ier la triangulation pour garder le caract,re " de Delaunay #
de celle ci
Il existe deux algorithmes *oisins -!.ui*alents puis.ue la triangulation
de Delaunay est uni.ue/
z
%a0son 1 edge s0apping
(arantit une triangulation *alide ' toute !tape de l'algorithme2
z
3o0yer-4atson 1 trou*er tous les triangles dont le centre circonscrit
contient le nou*eau point5 d!truire ces triangles et reconstruire la ca*it!2
Incon*!nient 6 possible de construire des ca*it!s non !toil!es -*oire non
connexes/ si les calculs sont &aits en pr!cision &inie2
4
Gomtrie Algorithmique
Triangulation de Delaunay
z
Recherche de l'entit! contenant le point 1 c& suite du
cours -localisation/
z
Insertion du point dans la triangulation
as 1 6 le point p
n
est situ! dans un triangle T
i

- %es nou*elles ar7tes rouges sont n!cessairement l!gales2
T
i
P
n
T
i1
T
i2
T
i3
5
Gomtrie Algorithmique
Triangulation de Delaunay
z
Insertion du point dans la triangulation
as $ 6 le point p
n
est situ! sur une ar7te a
k

- %es nou*elles ar7tes rouges sont n!cessairement l!gales2
- 8u'en est il des autres -en particulier les *ertes/ 9
a
k
P
n
a
k1
a
k2
T
i
T
j
T
j2
T
j1
T
i2
T
i1
6
Gomtrie Algorithmique
Triangulation de Delaunay
z
+odi&ier la triangulation pour garder le caract,re " de
Delaunay # de celle ci
z
Re*ient ' l!galiser toute ar7te .ui de*ient ill!gale suite ' l'insertion
du nou*eau sommet dans la triangulation
z
8uelles sont ces ar7tes 9
z
e sont potentiellement toutes celles pour les.uelles de nou*eaux
triangles *oisins sont apparus -ici en *ert/
z
Toutes les autres ar7tes -noires/ sont pour le moment l!gales5 car leurs
*oisins sont identi.ues2
z
Il &aut donc tester ces ar7tes
*ertes pour *oir si elles sont
l!gales5 et les l!galiser le cas
!ch!ant par retournements
d'ar7tes2
z
%ors d'un retournement d'ar7te5
il &aut *!ri&ier si les ar7tes *oisines
d'un triangle d!truit sont encore
l!gales 222
7
Gomtrie Algorithmique
Triangulation de Delaunay
8
Gomtrie Algorithmique
Triangulation de Delaunay
9
Gomtrie Algorithmique
Triangulation de Delaunay
z
Algorithme global
InserePoint(p
r
,T)
Entree:unpointp
r
insereretunetriangulationdeDelaunay
Sortie:triangulationdeDelaunaycontenantpr.
{
Trouver le triangle T
i
(p
i
,p
j
,p
k
) contenant p
r
Si p
r
est l'intrieur !e T
i
{
"ou#er T
i
en 3 et a$outer les ar%tes entre p
r
et p
i
,p
j
et p
k
&egalise'rete(p
r
,p
i
p
j
,T)
&egalise'rete(p
r
,p
j
p
k
,T)
&egalise'rete(p
r
,p
k
p
i
,T)
(
Sinon (p
r
est sur une arete , p
i
p
j
#ar e)e*#le, p
k
et p
l
sont les !eu) #oints o##oses p
i
p
j
)
{
"ou#er les !eu) triangles voisins !e p
i
p
j
en 4 et inserer les aretes entre p
r
!'une #art et p
i
,p
j
,p
k
,p
l
+!'autre #art
&egalise'rete(p
r
,p
i
p
l
,T) , &egalise'rete(p
r
,p
l
p
j
,T) ,
&egalise'rete(p
r
,p
j
p
k
,T) , &egalise'rete(p
r
,p
k
p
i
,T) ,
(
(
1-
Gomtrie Algorithmique
Triangulation de Delaunay
z
%!galisation d'une ar7te
LegaliseArete(p
r
,p
i
p
j
,T)
{
Si (p
i
p
j
) est une ar%te illgale
{
Soit p
i
p
j
p
k
le triangle a!$acent p
r
p
i
p
j
au travers !e l'ar%te p
i
p
j
.etourner l'arete p
i
p
j
en la re*#lacant #ar p
r
p
k
&egalise'rete(p
r
,p
i
p
k
,T)
&egalise'rete(p
r
,p
k
p
j
,T)
(
(
11
Gomtrie Algorithmique
Triangulation de Delaunay
z
)reu*e .ue l'algorithme est correct
Il &aut prou*er .u'aucune ar7te ill!gale ne reste apr,s l'insertion du
sommet p
r
2
z
:n peut noter .ue 6
- ha.ue nou*elle ar7te cr!!e est reli!e ' p
r
- ;ne ar7te ne peut de*enir ill!gale .ue lors.ue un triangle *oisin
est modi&i! -par l'insertion de p
r
ou par retournement d'ar7te /1 ainsi
elle sera trait!e ult!rieurement lors de la r!cursion
- ha.ue nou*elle ar7te cr!!e est n!cessairement l!gale et &ait
partie du graphe de Delaunay -preu*e ci 1 apr,s/
8<D2
12
Gomtrie Algorithmique
Triangulation de Delaunay
z
%es nou*elles ar7tes appartiennent ' la triangulation de Delaunay
as de l'insertion du point p
r
2
onsid!rer les ar7tes p
r
p
i
5 p
r
p
j
et p
r
p
k
2 omme p
r
p
j
p
k
est un triangle
datant d'a*ant l'insertion de p
r
5 son cercle circonscrit C ne contient
aucun autre point .ue p
r
2 =n diminuant la taille de C5 on peut &aire
passer un cercle C' par p
r
et p
i
contenu dans C2 Il ne contient alors
aucun point2 ela impli.ue .ue p
r
p
i
&ait partie de la triangulation de
Delaunay -et par permutation il en est de m7me a*ec p
r
p
j
et p
r
p
k
/2
z
)reu*e identi.ue si p
r
est
sur une ar7te2
p
r
p
j
p
i
C
p
k
C'
13
Gomtrie Algorithmique
Triangulation de Delaunay
z
)reu*e identi.ue si p
r
est
sur une ar7te2
p
r
p
j
p
i
p
l
C
p
k
C'
14
Gomtrie Algorithmique
Triangulation de Delaunay
z
%es nou*elles ar7tes appartiennent ' la triangulation de Delaunay
as du retournement d'une ar7te suite ' l'insertion de p
r
:n remplace une ar7te p
i
p
j
par une ar7te p
r
p
l
2 omme p
i
p
j
p
l
est un
triangle datant d'a*ant l'a>out de p
r
5 son cercle circonscrit C ne
contient .ue p
r
- et si il ne contenait pas p
r
5 alors p
i
p
j
serait l!gale/2 Il
est alors possible de trou*er un autre cercle C' passant par p
r
et p
l
5
contenu dans C5 donc ne contenant aucun point2 eci prou*e .ue
p
r
p
l
&ait bien partie de la triangulation de Delaunay2
p
r
p
j
p
i
p
l
C
p
k
C'
15
Gomtrie Algorithmique
Triangulation de Delaunay
z
8u'en est il de l'initialisation 9
z
:n part d'une triangulation tri*iale comprenant un des sommets
situ!s sur l'en*eloppe con*exe et deux sommets &icti&s
z
Ils sont situ!s loin des autres points -en particulier5 ils ne doi*ent 7tre
contenus dans aucun cercle circonscrit ' des triangles de la
triangulation &inale/
z
:n ne peut les !loigner arbitrairement -pour des raisons num!ri.ues/
P
i >0
p
-
p
/2
p
/1
16
Gomtrie Algorithmique
Triangulation de Delaunay
z
:n ne *a en &ait )A? assigner de coordonn!es ' p
/1
et p
/2
5 mais
modi&ier tous les tests impli.uant ces points de &a@on ' ce .u'ils se
comportent comme si ils !taient situ!s ' l'in&ini2
z
?oit le classement sui*ant 6 p est au dessus de q si y
p
0y
q
ou si y
p
1y
q
et
x
q
0x
p
2
z
?oient l
/1
et l
/2
deux lignes -c& dessin/2 p
/1
est sur l
/1
et tel .ue l'ordre induit
par le classement est le m7me .ue l'ordre selon un classement dans le
sens horaire autour de p
/1
2 p
/2
est sur l
/2
et tel .ue l'ordre induit autour de
p
/2
est antihoraire 1 pour tous les points p
i
=T p
/1
P
i >0
p
-
p
/1
l
/1
l
/2
p
/2
17
Gomtrie Algorithmique
Triangulation de Delaunay
z
%a triangulation de Delaunay de {p
/2
,p
/1
,p
-
2 p
n
( est la triangulation
de {p
-
2 p
n
( a*ec les ar7tes >oignant la partie droite de l'en*eloppe
con*exe ' p
/1
et la partie gauche ' p
/2
ainsi .ue p
/2
p
/1
2
z
;ne &ois la triangulation construite5 il su&&it de retirer tous les
triangles connect!s ' p
/2
et p
/1
2
P
i >0
p
-
p
/1
l
/1
l
/2
p
/2
18
Gomtrie Algorithmique
Triangulation de Delaunay
z
+odi&ication du test de l!galit!
z
?oit p
i
p
j
une ar7te dont on *eut sa*oir si elle est l!gale2 %es points
situ!s de part et d'autre de cette ar7te sont p
k
et p
l
2
1 - ?i p
i
p
j
est une ar7te du triangle p
-
p
/1
p
/2
s& alors elle est l!gale2
$ - %es indices i,j,k,l sont tous non n!gati&s 6 cas classi.ue
A - Dans les autres cas5 p
i
p
j
est l!gale ssi *in(k,l)3*in(i,j)2
=xplication 6
Aa - ?i un seul de i,j,k,l est n!gati&5 alors l'ar7te >oignant deux points
d'indices positi&s est la seule l!gale5 soit ij5 soit kl2
Ab - ?i deux indices de i,j,k,l sont n!gati&s5 alors n!cessairement ceux ci
sont r!partis entre (i,j) et (k,l) -sinon on est dans le cas 15 noter .ue
dans tous les cas l'indice r>- du point ins!r! &ait partie de i,j,k,l/
Alors5 l'ar7te l!gale est celle contenant p
/1
-logi.ue car on a d!cid! .ue
p
/2
!tait plac! de telle &a@on .ue aucun cercle circonscrit de la
triangulation ne le contienne5 y compris des triangles &orm!s a*ec p
/1
/
19
Gomtrie Algorithmique
Triangulation de Delaunay
z
)er&ormance de l'algorithme est en nlogn -:ptimal/
z
A condition .ue la per&ormance de la recherche du triangle
contenant un point soit en log n -c& cours prochain/
2-
Gomtrie Algorithmique
Triangulation de Delaunay
z
%'algorithme pr!c!dent permet de trianguler
l'en*eloppe con*exe d'un ensemble de points2
:n dispose sou*ent d'une discr!tisation des contours
d'un polygone -possiblement non con*exe5 et
possiblement trou!/
z
:n doit alors &aire apparaBtre exceptionnellement certaines ar7tes
dans la triangulation &inale5 et celles ci ne sont pas &orc!ment
l!gales2
4
21
Gomtrie Algorithmique
Triangulation de Delaunay
z
%'algorithme pr!c!dent permet de trianguler
l'en*eloppe con*exe d'un ensemble de points2
:n dispose sou*ent d'une discr!tisation des contours
d'un polygone -possiblement non con*exe5 et
possiblement trou!/
z
:n doit alors &aire apparaBtre exceptionnellement certaines ar7tes
dans la triangulation &inale5 et celles ci ne sont pas &orc!ment
l!gales2
4
22
Gomtrie Algorithmique
Triangulation de Delaunay
z
;ne triangulation dans la.uelle certaines ar7tes sont
&orc!es est une triangulation contrainte2
z
?i elle respecte le crit,re " contraint # de la sph,re *ide5 en ce sens
.ue la sph,re circonscrite ' tout triangle p
i
p
j
p
k
ne contient aucun
point *isible depuis p
i
5 p
j
et p
k
5 alors c'est une
Triangulation de Delaunay ontrainte2
z
D!&inition de la *isibilit! 6 deux points a et b sont *isibles si le
segment ab n'intersecte aucune ar7te contrainte2
23
Gomtrie Algorithmique
Triangulation de Delaunay
z
omment imposer ' une triangulation de Delaunay de
respecter certaines ar7tes 9
z
Algorithme 6
D!terminer l'ensemble des triangles intersectant l'ar7te a5 les
supprimer5 et conser*er le pseudo-polygone .ui les englobe2
a
24
Gomtrie Algorithmique
Triangulation de Delaunay
z
ouper le pseudo-polygone en deux parties par l'ar7te a2 elle ci &ait
n!cessairement partie de l'en*eloppe con*exe des deux parties2
z
Coter .ue les ar7tes des deux polygones sont &orc!ment l!gales et
&ont partie de la triangulation de Delaunay des sommets2
z
)reu*e 6 elles !taient l!gales et l'on a retir! des sommets5 elles restent
donc l!gales2 De plus5 l'ar7te a &ait n!cessairement partie elle aussi de
la triangulation de Delaunay car elle est sur l'en*eloppe con*exe des
sommets2
25
Gomtrie Algorithmique
Triangulation de Delaunay
z
Trianguler cha.ue pseudo-polygone s!par!ment et rassembler cela
dans la triangulation de d!part2
z
Coter .ue les pseudo-polygones ne sont pas con*exes et .u'il se
peut .ue des triangles " ext!rieurs # apparaissent2 eux ci doi*ent
7tre !limin!s2
26
Gomtrie Algorithmique
Triangulation de Delaunay
z
(!n!ration de maillage
z
:n suppose connue une triangulation de Delaunay d'un contour
donn!
%e but ici est de g!n!rer des sommets suppl!mentaires a&in .ue la
triangulation respecte certains crit,res
z
Taille des triangles
z
Aspect de &orme
z
:D ins!rer ces points suppl!mentaires dans la triangulation 9
z
Id!e 6 pro&iter du &ait .ue l'on dispose ' l'!tape n/1 d'une triangulation
contrainte *alide2
z
:n peut mesurer un crit,re selon les triangles ou les ar7tes de la
triangulation5 et ins!rer un sommet >udicieusement a&in d'am!liorer
localement ce crit,re
z
Il &aut re&aire la triangulation du *oisinage ' l'aide de l'algorithme de
retournement d'ar7te de %a0son ' cha.ue insertion2
z
Il existe des ar7te in*iolables -contours impos!s/ donc on doit modi&ier
l'algorithme de %a0son de &a@on ' interdire l'in*ersion de ces ar7tes2
27
Gomtrie Algorithmique
Triangulation de Delaunay
z
%!galisation d'une ar7te -a*ec contraintes/
LegaliseArete(p
r
,p
i
p
j
,T)
{
Si (p
i
p
j
) est une ar%te illgale 5 6u'elle n'est #as une contrainte
{
Soit p
i
p
j
p
k
le triangle a!$acent p
r
p
i
p
j
au travers !e l'ar%te p
i
p
j
.etourner l'arete p
i
p
j
en la re*#lacant #ar p
r
p
k
&egalise'rete(p
r
,p
i
p
k
,T)
&egalise'rete(p
r
,p
k
p
j
,T)
(
(
28
Gomtrie Algorithmique
Triangulation de Delaunay
z
?trat!gies de placement de nou*eaux sommets
z
(rille r!guli,re
z
%es sommets ext!rieurs
sont ignor!s
h
S+7+ 89en : ' surve; o< =nstructure! >es? @eneration Tec?nolog;, 7
t?
A>., 1998
29
Gomtrie Algorithmique
Triangulation de Delaunay
z
entrode
:n ins,re des sommets >us.u'' ce .ue les longueurs d'ar7tes soient
con*enables
l
3-
Gomtrie Algorithmique
Triangulation de Delaunay
z
entre du cercle circonscrit -)2 he05 E2 Ruppert5 E2 ?he0chuF/
l'ordre d'insertion est bas! sur l'angle minimal d'un triangle5 on
ins,re >us.u'' ce .ue l'angle minimal soit sup!rieur ' une *aleur -en
principe AGH/
z
:n peut prou*er .ue cela se
termine pour tout angle in&!rieur
' $G2I H -c& E2 Ruppert5 1JJK/
en prati.ue cela marche >us.ue
L AA2MH -c& E2 ?he0chuF5 1JJN/

7i* .u##ert, A Delaunay Refinement Algrithm fr quality !"Dimen#inal $e#h %eneratin


7ournal o< 'lgorit?*s 18(3)B548/585,1995
31
Gomtrie Algorithmique
Triangulation de Delaunay
z
)ar a*ance de &ront -D2%2 +arcum O 1JJK/
:n ins,re des sommets depuis le bord en maintenant une structure
pour le &ront2 %a position des sommets est id!ale ->us.u'' ce .ue les
les &ronts se rencontrent/
' C
"
32
Gomtrie Algorithmique
Triangulation de Delaunay
z
+ilieu du segment du diagramme de Vorono reliant les centre des
cercles circonscrit de deux triangles *oisins2 -?2 Rebay5 1JJA/
33
Gomtrie Algorithmique
Triangulation de Delaunay
z
%e long d'ar7tes existantes - il &aut *!ri&ier .ue des sommets sur des
ar7tes *oisines ne sont pas trop proches
-)2%2 (eorge5 1JJ1/
h
34
Gomtrie Algorithmique
Triangulation de Delaunay
z
)ro>et 1
Trianguler -mailler/ un domaine correspondant ' une sur&ace AD
-&l,che/ 5 a*ec une taille impos!e constante2
)articularit!s 6
z
alculs dans un espace
param!tri.ue -la notion de
distance n'est pas tri*iale P/
z
R!&lexion sur la notion de
triangulation de Delaunay
dans cet espace
z
;tiliser la m!thode delaunay
&rontale2
u
&
35
Gomtrie Algorithmique
Triangulation de Delaunay
z
;ne sur&ace se repr!sente sous cette &orme 6
u,& sont deux param,tres r!els
z
:n obtient tous les points de la sur&ace
en &aisant *arier u et &2
z
%a param!trisation n'est pas uni.ue P
z
%es param,tres peu*ent 7tre born!s -limite la sur&ace/

P(u , &)=

x= f ( u , &)
y=g (u , &)
'=h(u , &)
x
y
'
u,&
u(cste
&(cste
36
Gomtrie Algorithmique
Triangulation de Delaunay
z
:n peut d!&inir une courbe sur la sur&ace
=space param!tri.ue =space ambiant
x
y
'
t
u(cste
&(cste

P(u , &)B

x= f (u , &)
y=g (u , &)
'=h(u , &)

I(t ) B

x= f (u(t ) , &(t ))
y=g (u(t ) , & (t ))
'=h( u(t ) , &(t ))

I
u&
(t )B

u=u(t )
&=&(t )
37
Gomtrie Algorithmique
Triangulation de Delaunay
z
(!om!trie di&&!rentielle pour les sur&aces
param!tri.ues
z
)osition P 6
z
Vecteurs tangents unitaires T
u
et T
v
6
z
es *ecteurs ne sont pas perpendiculaires P

T
u
(u , &)=
P
u

P
u

1
=
P
u
P
u


T
v
(u , &)=
P
&

P
&

1
=
P
v
P
v

P(u , &)=

x (u , &)
y( u , &)
'(u , &)
|

P
u
=

P
u

P
uv
=

2

P
u&

38
Gomtrie Algorithmique
Triangulation de Delaunay
z
Vecteur normal ) 6
) (u , &)=
)rm(u , &)
)rm(u , &)
avec )rm(u , &)=T
u
T
v
ou P
u
P
v
u

,&
u(cste
&(cste
T
u
T
v
)
39
Gomtrie Algorithmique
Triangulation de Delaunay
z
Aire d'une sur&ace
z
1
,re
&orme &ondamentale
Autre notation de l'aire d'une sur&ace
*u P
u
*& P
v
*+
A=

+
*+
*+=*uP
u
*&P
v
=P
u
P
v
*u*&
a

b
2
=(aa)(

b)(a

b)
2
A=

D
.
(egf
2
) *u*&
A!entit !e &agrange
*+=
.
( e gf
2
) *u*& avec e=P
u
P
u
, f =P
u
P
&
, g=P
&
P
&
4-
Gomtrie Algorithmique
Triangulation de Delaunay
z
alcul de la longueur d'une courbe sur une sur&ace

I
u&
(t )B

u=u(t )
&=&(t )

I( t )B

x= f (u(t ) , &( t ))
y=g (u(t ) , &(t ))
'=h( u(t ) , & (t ))
I
'
=
*P(u(t ) , & (t ))
*t
u
'
=
*u(t )
*t

P(u , &)B

x=f (u , &)
y=g (u , &)
'=h(u , &)
P
u
=
P(u , &)
u
P
v
=
P(u , &)
&
* I
u&
(t )=
(
*u
*&
)
=
(
u
'
*t
&
'
*t
)
41
Gomtrie Algorithmique
Triangulation de Delaunay
,=

a
b

I
'
(t )*t =

a
b
.

I
'
( t )
2
*t
I
'
(t )=u
'
(t ) P
u
(u(t ) , & (t ))+&
'
( t ) P
v
(u( t ) , & (t ))
I
'
(t )
2
=e u
'
(t )
2
+2 f u
'
( t ) &
'
( t )+g &
'
(t )
2
avec e=P
u
P
u
, f =P
u
P
&
, g=P
&
P
&
z
alcul de la longueur d'une courbe sur une sur&ace
42
Gomtrie Algorithmique
Triangulation de Delaunay
z
?i on pose
ce .ui re*ient ' 6
- on a /5 on a en &ait une &orme .uadrati.ue 6
*#=
.
e u
'
(t )
2
+2 f u
'
(t ) &
'
(t )+g &
'
(t )
2
*t
,=

#( a)
#(b)
*#=#( b)#(a)
*#=
.
e *u
2
+2 f *u*&+g *&
2
-u
'
(t )
2
+2 .u
'
(t ) &
'
(t )+%&
'
(t )
2
=( u
'
(t ) &
'
(t ))
(
- .
. %
)
(
u
'
(t )
&
'
( t )
)
,=

a
b
.
( u
'
(t ) &
'
(t ))
(
e f
f g
)
(
u
'
( t )
&
'
(t )
)
*t
43
Gomtrie Algorithmique
Triangulation de Delaunay
z
%a 1
,re
&orme &ondamentale est l'application
z
'est une &orme bilin!aire sym!tri.ue .ui permet de " mesurer # des
distances r!elles ' partir de *ariations dans l'espace param!tri.ue222
z %a matrice >
1
est la repr!sentation du tenseur m!tri.ue2
z
Angle " r!el # entre deux courbes s!cantes sur une sur&ace
param!tri.ue 6

1
( * I
1
u&
, * I
2
u&
)=
(
*u
1
*&
1
)
(
e f
f g
)
(
*u
2
*&
2
)
=
(
*u
1
*&
1
)
>
1
(
*u
2
*&
2
)
,=

a
b
.

1
(* I
u&
, * I
u&
) *t
cos o=

1
(* I
1
u&
, * I
2
u&
)
.

1
(* I
1
u&
, * I
1
u&
)
1
( * I
2
u&
, * I
2
u&
)
A=

D
.
*et >
1
*u*&
avec e=P
u
P
u
, f =P
u
P
&
, g=P
&
P
&
44
Gomtrie Algorithmique
Triangulation de Delaunay
z
Re*enons ' nos moutons PPP
z
Dans notre cas5 on *a mesurer les distances le long de segments de
droites -les ar7tes/2
es segments sont d!&inis dans l'espace param!tri.ue -u5*/5 et
munis d'une param!trisation -e2g2 t compris entre G et 1/
%eur longueur se calcule a*ec la &ormule sui*ante 6
z
?i le tenseur m!tri.ue est constant5 on peut &aire disparaBtre
l'int!grale et ainsi simpli&ier 6
a
#
(t )=(1t )p
-
#
+tp
1
#
,( a)=

-
1
.
(
p
1
#
p
-
#
)
T
(
e f
f g
)
(
p
1
#
p
-
#
)
*t
,=

a
b
.
( u
'
(t ) &
'
(t ))
(
e f
f g
)
(
u
'
( t )
&
'
(t )
)
*t
,( a)=
.
(
p
1
#
p
-
#
)
T
(
e f
f g
)
(
p
1
#
p
-
#
)
45
Gomtrie Algorithmique
Triangulation de Delaunay
z
Test de la l!galit! d'une ar7te
Re*ient ' d!terminer la courbe situ!e ' une distance constante d'un
point - le " centre #/ et passant par trois points -dont le point ins!r!/
z
Dans le cas g!n!ral5 c'est extr7mement coQteux5 car le tenseur
m!tri.ue est *ariable2
z
?i celui ci est constant5 alors la courbe est une ellipse222
z
:n &ait un changement de coordonn!es T -consiste en une rotation
et une mise ' l'!chelle/ pour ramener le tout dans un plan ou les
mesures sont euclidiennes5 en utilisant le tenseur m!tri.ue222
u
&
u'
&'
T
p
r
#
p
r
p
46
Gomtrie Algorithmique
Triangulation de Delaunay
z
D!&inition de la trans&ormation T
:n d!sire .ue les mesures se &assent dans un espace euclidien '
d!terminer2 Dans cet espace5 les coordonn!es sont et et le
tenseur m!tri.ue est l'identit! A2
)osons 5 alors il *ient
:n a donc et 2 Ici5 7 est la matrice de
trans&ormation de T5 ou matrice jacobienne2
,( a)=
.
(
p
1
#
p
-
#
)
T
(
e f
f g
)
(
p
1
#
p
-
#
)
=
.
(
p
1
#
p
-
#
)
T
>
1
(
p
1
#
p
-
#
)
,( a)=
.
( p
1
#
p
-
#
)
T
>
1
( p
1
#
p
-
#
)=
.
( p
1
p
p
-
p
)
T
A ( p
1
p
p
-
p
)
p
-
p
p
1
p
>
1
=7
T
7
,( a)=
.
( p
1
#
p
-
#
)
T
7
T
7( p
1
#
p
-
#
)=
.
( p
1
#
p
-
#
)
T
7
T
A7 ( p
1
#
p
-
#
)
=
.
( 7p
1
#
7p
-
#
)
T
A( 7p
1
#
7p
-
#
)=
.
( p
1
p
p
-
p
)
T
A ( p
1
p
p
-
p
)
p
-
p
=7 p
-
#
p
1
p
=7 p
1
#
47
Gomtrie Algorithmique
Triangulation de Delaunay
z
alcul de 72
7 d!pend de R scalaires ind!pendants5 or5 >
1
est sym!tri.ue et
dispose de seulement A degr!s de libert!s2 %e syst,me est
donc sous d!termin!2 :n doit trou*er une *aleur de 7 satis&aisante2
z
Il existe une d!composition naturelle d'une matrice > en un produit
de deux matrices transpos!es5 c'est la d!composition de holesFy
.ui existe tou>ours si la matrice > est d!&inie positi*e2
>1S
T
+S a*ec S Smatrice triangulaire sup!rieure2
:n a donc 6
z
)our d!terminer si un cercle contient un point donn!5 on *a donc utiliser
cette matrice 7 pour trans&ormer les coordonn!es de tous les points -R/ 2
Il est >udicieux de ramener toutes les coordonn!es ' des *ariations
autour d'un point 5 par exemple le point ins!r! p
r
-.ui est alors l'origine
du rep,re/
>
1
=7
T
7
>
1
=
(
e f
f g
)
=+
T
+=
(
#
1
-
#
3
#
2
)

(
#
1
#
3
- #
2
)
=
(
#
1
2
#
1
#
3
#
1
#
3
#
2
2
)
S=
(
.
e
f
.
e
-
.
g
)
=7
48
Gomtrie Algorithmique
Triangulation de Delaunay
z
=n d!&initi*e5
Cou*elles coordonn!es 6
Dans ces coordonn!es5 le test sur la l!galit! de l'ar7te est classi.ue2
u
&
u'
&'
p
r
#
p
r
p
7=
(
.
e
f
.
e
-
.
g
)
p
i
#
p
i
p
avec e=P
u
P
u
, f =P
u
P
&
, g=P
&
P
&
p
i
p
=/( p
i
#
p
r
#
)
49
Gomtrie Algorithmique
Triangulation de Delaunay
z
D!&inition de la sur&ace support
?oient P
-
2 P
4
K points de contrTle5 et C
-
2 C
4
K coe&&icients entiers2
%a courbe C(&) est d!&inie par 6
%a sur&ace de r!*olution +(u,&) est alors d!&inie par 6
P
0
=

-
15
75
, P
1
=

-
15
37+5
, P
2
=

-
45
5
, P
3
=

-
45
27+5
, P
4
=

-
-
75
C
0
=1 , C
1
=4 , C
2
=6 , C
3
=4 , C
4
=1
C( &)=

i=-
4
C
i
(1&)
i
&
(4i)
P
i
=
(
C
x
( &) ( -)
C
y
( &)
C
'
(&)
)
+ (u , &)=

R(u)C(&)=
(
C
x
(&)cos(u)C
y
(&)sin(u)
C
x
(&)sin(u)+C
y
( &)cos(u)
C
'
( &)
)
5-
Gomtrie Algorithmique
Triangulation de Delaunay
z
D!&inition du polygone simpli&i! ' " trianguler # dans
l'espace param!tri.ue de la sur&ace +(u,&)
- 2
2
1-

1-
4
1-

1-

1-

1-
4
1-
4
1-
2
1-
1/ 2
1/ 4
1/ 4
-
1
u
&
3ord correspondant ' un point -singulier/
3
o
r
d

p
!
r
i
o
d
i
.
u
e

-
s
e

r
e
c
o
l
l
e

s
u
r

l
e

b
o
r
d

u
1
-

/
3ord ou*ert
51
Gomtrie Algorithmique
Triangulation de Delaunay
z
)ro>et $
z
" Am!lioration # d'une triangulation sur&aci.ue
z
Triangles les plus !.uilat!raux
z
Triangles de taille uni&orme
z
Ra&&inement / d!cimation