Title: Prsentation PowerPoint
1(No Transcript)
2Deux fa
ç
ons
de
d
é
finir
un
Cercle
Implicite
Param
é
trique
Fgt0
F0
u
Flt0
x(u) r
cos
(u)
F(x,y) x
²
y
²
-
r
²
y(u) r sin (u)
2
-
3Repr
é
sentations d
une
Courbe
Explicite y y(x)
Ce doit
ê
tre une fonction (x
-
gty) limitation importante
Param
é
trique (x,y) (x(u),y(u))
Facile
à
sp
é
cifier, modifier, contr
ô
ler
variable u suppl
é
mentaire,
cach
é
e
, le
param
è
tre
Implicite f(x,y) 0
y peut
ê
tre une fonction
multivalu
é
e
de x
Difficile
à
sp
é
cifier, modifier, contr
ô
ler
3
-
4Repr
é
sentations
des
Surface
s
S
urface
p
aram
é
t
ri
que
x(u,v), y(u,v), z(u,v)
e
x
. plan,
sph
è
re,
cylindr
e
,
tor
e
, surface
bicubi
que
, surface
de
bala
y
age
Les
f
o
nctions
param
é
tri
ques
permettent d
it
é
r
er
sur la
surface
en
incr
é
ment
ant
u
et
v
dans des boucles imbriqu
é
es
Pratique pour r
é
aliser des maillages polygonaux
, etc
T
errible
p
o
u
r
les
intersections ray
on/
surface,
int
é
riorit
é
point
-
bo
r
d, etc
S
urface
i
mplicit
e
F(x,y,z) 0
e
x
. plan,
sph
è
re,
cylindr
e
,
quadri
que
,
tor
e
, blob
s
T
errible
pour it
é
rer sur la
surface
Pratique pour les
intersections,
le
morphing
S
urface
de s
ubdivision
D
é
fin
i
e
par un maillage de
co
ntr
ô
l
e
et une
subdivision recursive
Pratique pour l
a
conception
interactive
4
-
5Mod
é
li
satio
n
Param
é
tri
que
-
Plan
Pourquoi des
polyn
ô
m
e
s
par morceaux
,
pourquoi des
cubi
que
s?
C
o
ur
b
es
Splines
de
Hermite
Splines
de
Bezier
Splines
de
Catmull
-
Rom
Splines
Natur
e
l
les
Cubi
ques
B
-
Splines
NURBS
Surfaces
5
-
6Construction de
C
o
ur
b
es
On sait maintenant repr
é
senter des courbes
Mais comment les
construire
?
O
bjectifs
de construction pour une courbe lisse
flexible,
é
lastique
Utilisation de
points
par lesquels elle doit passer
(points
de
contr
ô
le
)
Les dessinateurs
u
tilisaient
de tels
é
l
é
ments pour construire
des courbes planes
(pivots) pour maintenir une latte fine nomm
é
e
poids
spline
Les
p
ivots
sont
plac
é
s
aux points o
ù
la courbe doit passer
,
et
l
é
lasticit
é
de la latte produit une courbe lisse
la
cour
b
e
final
e
est trac
é
e sur papier
Comment d
é
finir cela
math
é
mati
quement
?
6
-
7Interpolation
Polyn
ô
mial
e
u
n
polyn
ô
m
e de degr
é
n
interpole une courbe en
n1 points
Ex
e
mple
interpoler 3
points
par une courbe du second degr
é
x(u) au
2
bu
c
(u
, x
), (u
, x
), (u
, x
)
points
de
contr
ô
l
e
à
interpol
er
1
1
2
2
3
3
(a, b, c)
R
é
soudre pour trouver les
coefficients
3
é
qu
ation
s linéaires, 3
inconnue
s
Interpolation
de
Lagrange
Le
r
é
sult
at
est une
c
o
ur
be
trop sinueuse
Modifier un point de contr
ô
le affecte toute la courbe
(non
local)
On veut
Des
polyn
ô
mes
de
fai
b
le degr
é
Une courbe lisse gt m
inimi
s
e
r les zigzags
Bonne
approch
e
simul
er
un fil
é
lastique
7
-
8Splines
Polyn
ô
m
e
s par Morceaux
Un fil
é
lastique
(
sous
contraint
e
s)
minimise son
é
nergie de flexion
L
é
nergie de flexion s
approxime
par l
int
é
gral
e
de la courbure au
carr
é
Minimi
ser
cela et
l
a courbe aura l
air r
é
elle
La
d
é
riv
é
e
seconde
approxi
me la courbure
Intuitive
ment
essayer d
avoir une courbure nulle partout
Si i
m
possible
,
distribu
er
les courbures le plus
uniform
é
ment
possible
Une
spline
est un
plusieurs p
olyn
ô
mes
de bas
polyn
ô
me
par morceaux
degr
é
pour
interpol
er
les
points
de contr
ô
le
Les polyn
ô
mes c
ubi
ques
sont les plus courants
Minimi
sent la
d
é
riv
é
e
seconde
Polyn
ô
mes de plus faible degr
é
qui
interpol
ent
2
points
avec un
gradient
d
é
fini en chaque
point
la
C
1
continuit
é
est
possible
8
-
9Polyn
ô
mes
par Morceaux
Spline
plusieurs petits morceaux assembl
é
s
Assemblage
correct
Continu
it
é
de
Continu
it
é
de
position
Continu
it
é
de
position
et du
vect
eur
position
,
de
tangent
tangen
ce
,
et de
c
o
ur
b
ure
9
-
10C
o
ur
b
es
Cubi
ques
Polyn
ô
me cubique
x(u) au
3
bu
2
cud
ua
avec
u
, a
T
u
3
u
2
u 1
a b c d
T
rois
cubi
ques
,
u
n
pour chaque
coord
onn
é
e
x(u) a
u
3
b
u
2
c
u
d
x
x
x
x
y(u) a
u
3
b
u
2
c
u
d
y
y
y
y
z(u) a
u
3
b
u
2
c
u
d
z
z
z
z
Matriciellement
O
u
simpl
ement
x
uA
10
-
11Visuali
ser
les
C
o
ur
b
es
Param
é
tri
ques
Vues des fonctions
x(u), y(u), z(u)
Vue p
aram
é
tri
que
c
o
ur
b
e
3D
,
sans mentionner
u
d
une courbe
comment d
é
compose
r
Param
é
tri
s
ation
une courbe 3D donn
é
e en
f
o
nctions
x(u), y(u), z(u).
Il y a une infinit
é
de
param
é
tri
s
ations
possibles
!
lente
,
rapide
,
à
vitesse
continu
e
o
u
discontinu
e
,
trigonom
é
trique ou inverse
En particulier
u peut repr
é
senter la longueur
d
ar
c
(
mais tr
è
s difficile
à
calculer exactement
)
11
-
12Polyn
ô
mes
Lin
é
a
i
r
es par Morceaux
interpolation
lin
é
aire
p1
p2
u
Chaque
segment
est
de la forme
1
-
u
p
(
u
)
u
p
(
1
)
p
1
2
u
0
1
2 fonctions de base
12
-
13Pour les c
ubi
que
s,
4
fo
nctions
de b
as
e
4 F
o
nctions
de Base
u
Chaque
spline
de
Hermite
est une
combination
lin
é
aire
(
un m
é
lange
)
de ces
4 f
o
nctions
13
-
14Pourquoi celles
-
l
à
?
Ce sont les seules fonctions de base cubiques qui
v
é
rifient
Ouais
!
On a trouv
é
un moyen de
sp
é
cifier
les extr
é
mit
é
s et les
pentes aux extr
é
mit
é
s
!
14
-
15U
n
petit dessin
Splines
de
Hermite
Cubi
ques
15
-
16Composition des
C
o
ur
b
es
de
Hermite
spline
compos
é
e de
Hermite
Chaque morceau
est une courbe
cubi
que de
Hermite
S
p
é
cif
ier
la
position
et le vecteur t
angent
à
chaque
joint
Les morceaux sont compos
é
s pour interpoler les positions et les
tangen
t
es
C1
continuit
é
Etant
donn
é
e
une
list
e
de
points
et
tangent
e
s,
on peut
construire une
cubi
que par morceaux qui
passe
en tout
point
en c
alcula
n
t
la
cubiq
u
e de
Hermite
pour chaque
morceau
Les
points
par les
q
uels
passe la courbe sont les
joints
ou
points nodaux
16
-
17Calcul des
Splines
de
Hermite
(
1)
4
contraint
e
s
position
et
vect
eu
r tangent
aux
extr
é
mit
é
s de l
interval
le
0,1
x(0) x
1
x(1) x
2
x
(0) x
constantes
1
x
(1) x
2
Hyp
une
form
e
cubi
que
x(u) au
3
bu
2
cud
4 inconnues
a, b, c, d
17
-
18Calcul des
Splines
de
Hermite
(
2
)
Puisque
x(u) au
3
bu
2
cud,
sa
d
é
riv
é
e
e
s
t
x
(u) 3au
2
2buc
Les 4
contraint
e
s
donnent 4
é
quations
lin
é
a
i
r
es
x(0) x
d
1
x(1) x
abcd
2
x
(0) x
c
1
x
(1) x
3a2bc
2
On
r
é
soud
en
a, b, c, d
x
x
x
x
x
x
x
x
x
x
a2
-
2
, b
-
3
3
-
2
-
, c
, d
1
2
1
2
1
2
1
2
1
1
Ou plus simplement,
matriciellement
18
-
19Splines
de
Hermite
Notation
Matri
cielle
vect
eu
r
de
contrôl
e
bas
e
coefficients
spline
R
é
soudre en
coefficients
spline
Vect
eu
r
de
contrôl
e
bas
e
coefficients
spline
19
-
20Equation
des
Spline
s
de
Hermite
Cubi
ques
20
-
21C
o
ur
b
es
de
Bezier
Variant
e du m
ê
me jeu
Au lieu des extr
é
mit
é
s et tangentes, 4 points de contr
ô
le
points P1
et
P4
sur la courbe
points P2
et
P3
hors de la c
o
urbe
X(0) P1, X(1) P4,
X'(0) 3(P2
-
P1), X'(1) 3(P4
-
P3)
Variant
e
de la
spline
de
Hermite
Matrice de
bas
e
d
é
riv
é
e
de celle de
Hermite
Propri
é
t
é
de l
enveloppe c
onvex
e
c
o
ur
b
e cont
enue
dans
l
envelopppe
convex
e
des
points
de contr
ô
le
Don
n
e une
s
é
rie
de
points
plus uniforme que
Hermite
Le
facte
u
r d
é
chelle
(3)
e
s
t
cho
i
s
i pour que la
vitesse
soit
approximativement constante
21
-
22de
Hermite
à
Bezier
A la place des extr
é
mit
é
s et tangentes, 4 points de contr
ô
le
X(0) P1, X(1) P4,
X'(0) 3(P2
-
P1), X'(1) 3(P4
-
P3)
vect
eu
r
de
vect
eu
r
contr
ô
l
e de
d
e
contr
ô
l
e de
Bezier
à
Hermite
Hermite
Bezier
22
-
23Bezier
fo
r
me ma
tri
cielle
Vect
eu
r
de
Bas
e de
Hermite
Bezier
à
Contr
ô
l
e de
Bezier
Hermite
Vect
eu
r
de
bas
e de
Bezier
Contr
ô
l
e de
Bezier
23
-
24Fonctions
de
Bas
e de
Bezier
Connues sous le nom de polyn
ô
mes de
Bernstein
d
ord
re
4
ou de
degr
é
3
Non
n
é
gati
ves
, s
omme
é
gale
à
1
La courbe est enti
è
rement incluse dans l
enveloppe convexe des points
de contr
ô
le
!
24
-
25Splines
Non
-
Uniforme
s
La
s
é
quence
nodale
est
l
espacement param
é
trique des
n
uds (on dit aussi
vecteur nodal
)
.
Jusqu
à
pr
é
sent
s
é
quence
nodale
uniform
e
u
dans
0,1
pour chaque morceau de la
spline
.
Diff
é
rent
s
vecteurs nodaux donnent
diff
é
rent
es
matrices
de
bas
e
(
donc pas de matrices
.
).
Les t
angent
e
s
sont mises
à
l
é
chelle
,
cela donne un contr
ô
le
de la
tension
Une
c
o
ur
b
e
peut
ê
tre vue comme une
trajecto
ire
les
tangent
e
s
sont des vitesses
Chaque morceau a des fonctions de base diff
é
rentes
!
Avantages
R
é
duction de la
continuit
é
par
duplicati
o
n
de
noeuds
On peut ajouter un
d
é
tail
à
l
a c
o
ur
b
e
sans changer
global
ement
les
valeurs nodales
36
-
26F
o
nctions
de M
é
lange de
Bezier
25
-
27Subdivision des
c
o
ur
b
es
de
Bezier
Chaque moiti
é
est une courbe de
Bezier
!
Il est facile de tracer une courbe par
subdivision
26
-
28, p
i2
27
-
29Matri
ce des
Spline
s
de
Catmull
-
Rom
vect
eu
r
de
contr
ô
l
e
bas
e
CR
Coefficients
des
spline
s
Calcul
é
e comme pour
Hermite
et
Bezier
s
est un param
è
tre de
tension
souvent
s1/2
28
-
30Splines
avec plus de
Continuit
é
?
Jus
q
u
à
pr
é
sent
,
seulement la
C
continuit
é
.
1
Comment avoir la
C
2
continuité
aux joints
?
R
é
ponses p
ossible
s
Pol
y
n
ô
mes de plus haut degr
é
degr
é
4
quarti
que
,
degr
é
5
quinti
que
,
mais chers en
calcul et parfois instables
Abandonner le
contr
ô
le
à
splines
natur
elles
cubi
ques
Un
change
ment d
un
point
de contr
ô
le
affect
e la courbe
en
t
i
è
re
s
Abandonner
l
interpolation
B
-
splines
cubi
ques
à
La
co
ur
b
e
passe pr
è
s, mais pas par, les
points
de contr
ô
le
29
-
31Splines
Natur
el
le
s
Cubi
ques
30
-
32Interpolation, Continuité et Contrôle Local
Hermite
/
Catmull
-
Rom/
Bezier
(et autres variétés)
Interpolent les points de contrôle
Contrôle local
Pas de C2 continuité pour les cubiques
Splines naturelles
Interpolent les points de contrôle
Pas de contrôle local le déplacement dun point
affecte toute la courbe
-
C2 continuité pour les cubiques
En résumé
On ne peut obtenir les 3 en même temps Quelle
tristesse !
-
32
-
33B
-
Splines
Pas d
interpolation
la
c
o
ur
b
e
passe
pr
è
s
des
points
de contr
ô
le
à
g
é
n
é
r
er interactivement
(
difficile de pr
é
voir o
ù
sera la
courbe
)
La
co
ur
b
e
suit la r
è
gle de l
enveloppe
convex
e
C2
continuit
é
et
contr
ô
l
e
local
compensen
t
la
perte de l
interpolation
33
-
34Bas
e
s B
-
Spline
Il y a
3 points
de contr
ô
le de plus que de
morceaux de
spline
34
-
35Compar
a
ison
des
Splines
Cubi
ques
Type
P
oints
de
Contr
ô
le
Continuit
é
Interpolation
Hermite
2 points, 2
pentes
C1
O
Bezier
4 points
C1
O
Catmull
-
Rom 4 points
partag
é
s
C1
O
Natur
el
l
e
n points
partag
é
s
C2
O
B
-
Splines
4 points
partag
é
s
C2
N
35
-
36Two Types of Continuity
Continuité Paramétrique C
k
x(u), y(u), z(u) individuellement continues
jusquà la kième dérivée
(valeur, pente, 2e dérivée, )
Important pour les animations (paramètre temps).
Continuité Géometrique G
k
La courbe en xyz (independamment de u) continue
jusquà la kième dérivée
(position, tangente, courbure,
)
Important si le paramètre est formel.
Une courbe peut être C
k
k
et pas G
et vice versa!
Trouvez des exemples!
37
-
37-
Reductionde la continuité des B Splines
Duplication des points de contrôle
Sans duplic.
-
C
2
, G
2
1 duplic.
-
C
2
, G
1
2 duplic.
-
C
2
, G
0
? segments
3 duplic.
-
C
2
, G
0
Duplication des nuds (généralement meilleur)
Pas de duplic.
-
C
2
, G
2
1 duplic.
-
C
1
, G
1
2 duplic.
-
C
, G
0
0
3 duplic.
-
courbe discontinue
38
-
38Courbes Rationelles Cubiques
Problèmes des
cubiques
Coniques impossibles (cercles, ellipses)
preuve écrire x(u) rcos(u) comme une cubique
est impossible
Pas INVARIANTE suivant les transfos en
perspective
La projection dune cubique nest pas une cubique
Q pourquoi est ce un probleme?
-
A on ne peut projeter les pts de ctrl on doit
projeter toute la courbe
Solution coordonnées homogènes
Definir 4cubiques X(u), Y(u) Z(u) et W(u)
La courbe est alorsx(u) X(u)/W(u) etc
La courbe est une fonction rationnelle
Non-Uniform Rational BSplines (NURBS) très
utilisées en CFAO
-
39
-
39Tracer des
C
o
ur
b
es Spline
s (1)
Les m
atri
ces de base permettent d
é
crire un
code
pour tracer tout
type
de
spline
Method
e
1
brut
al
e
Calcu
l
e
r
les
coefficients
Pour chaque morceau cubique
,
faire varier
de
à
(
par pas constant
)
u
0
1
M
ultipl
ier
u par la
matri
ce pour trouver le point sur la courbe
Tracer le segment de droite depuis le dernier
point au point cou
rant
Pourquoi n
est ce pas tr
è
s bon
?
Espacements constants en
u
¹
Espacements constants en
u
e
spacements constants en
x
La longueur d
un segment varie sur la courbe
Si on borne cette longueur
t
r
o
p
long
on voit les morceaux de la
c
o
ur
b
e
t
r
o
p
court
la
c
o
ur
b
e
est longue
à
tracer
40
-
40Tracer des
C
o
ur
b
es Spline
s (2)
M
é
thod
e
2 subdivision r
é
cursive
faire varier le pas pour tracer des
petits segments
Subdivide(u0,u1,
maxlinelength
)
umid
(u0 u1)/2
x0 F(u0)
x1 F(u1)
if x1
-
x0 gt
maxlinelength
Subdivide(u0,
umid
,line)
Subdivide(
umid
,u1,line)
else
drawline
(x0,x1)
Variant
e
de la
M
é
thod
e
2
-
subdivi
sion
bas
é
ed
sur la courbure
re
m
place
r
condition
du
if
par un
crit
è
re de lin
é
arit
é
Tracer moins de
seg
m
ents
dans les r
é
gions
plates
de la courbe
M
é
thod
e
3 diff
é
rences
f
inies
r
é
arrange
r les
terms
pour
é
limin
er
les redondances
41
-
41Surfaces
Bicubi
ques
Pour
repr
é
sent
er
des
surfaces
on utilise des
f
o
nctions
bicubi
ques
x(u,v), y(u,v), z(u,v)
sont des
poly
n
ô
mes en
u
et
v
16 term
e
s
pour combiner les puissances de
u
et
v
x
(u,v) a
u
3
v
3
a
u
3
v
2
a
11
12
44
Une
surface
bicubi
que
est
repr
é
sent
é
e
par u
n
e
matri
ce
4x4
A
Connu comme
produ
i
t
tensor
iel
de
surface
42
-
42Des
C
o
ur
b
es
aux
Surfaces
Les
surfaces
b
icubi
ques
se comportent comme des
c
o
ur
b
es spline
points
de
control
e
et
matrices
de
bas
e
16
paramet
r
es
de
control
e
(points
et
/o
u
d
é
riv
é
es
)
Calculer les
coefficients (
avec un
tensor
de
ran
g
-
4
tableau
4x4x4x4!!!)
La s
ym
é
tr
ie
en
u
et
v
r
é
duit ce
tens
eur
à
2
copies
d
une matrice
r
é
guli
è
re
B
est la matrice de base
, P
la matrice de valeurs de contr
ô
le
Visualisation d
une surface de base
4 bas
e
s
cubi
que
s
en
u
et
4
en
v (
mme base ou bases diff
é
rentes
)
16 surfaces
de
bas
e
en
multipl
iant
chaque paire de
cubi
que
s
La
surface
b
icubi
que
est une somme pond
é
r
é
e des
surfaces
de base
La s
urface
est l
assemblage des morceaux de surface (
patches
)
43
-
43v
u
44E
n
r
é
sum
é
...
r
é
sum
é
Les cubiques par morceaux suffisent en g
é
n
é
ral
D
é
fin
ir
des
conditions
sur les courbes et leur
continuit
é
R
é
so
udre
un
syst
è
m
e lin
é
aire
si
uniform
e
,
matri
ce de base
constante
si
non
uniform
e
,
faire varier les u pour modifier la
tension
Se rappeler
Prop
ri
é
t
é
s
de base
(conditions, prop
ri
é
t
é
s
pour
cha
q
ue
spline
)
Formule g
é
n
é
rique
m
atricielle
pour les cubiques
uniform
es
x(u)
uBG
Suivant la d
é
finition calculer une matrice de base
Comment passer des courbes aux surfaces
44
-