cours-fiches
14 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres
14 pages
Français
Le téléchargement nécessite un accès à la bibliothèque YouScribe
Tout savoir sur nos offres

Description

Courbes de B´ezierBase de Bernstein de degr´e nFonctions de base des polynomes de degr´e n :n!n i i n i i n iB (t) = C t (1−t) = t (1−t) ∀t∈ [0,1] et 0≤i≤ni n i!(n−i)!Courbe de B´ezier ( )nXnCourbeC param´etr´ee polynomiale de degr´e n :C = P(t) = PB (t),t∈ [0,1]i ii=0{P ,P ,...,P } polygone de controˆle de la courbeC0 1 n( ) nX u−a u−anC = P(u) = PB ,u∈ [a,b] :t = ∈ [0,1]i ib−a b−ai=0Quelques propri´et´es g´eom´etriquesP2P3 = P(b)P1 P’(b)MP’’(b)P’(b) = c(P3−P2)P’’(b) = k(P3−2 P2+P1) = 2 k(M−P2)avec M = (P3+P1)/2P0 = P(a)El´evation de degr´ei n+1−iP = P + P pour 0≤i≤n+1i i 1 in+1 n+1Courbe [P ,P ,...,P ] = Courbe [P ,P ,...,P ]0 1 n 0 1 n+1P1P1P = ( 4P )/4 =P P =0 0 0 P0 0P = ( 1P + 3P )/41 0 1P = ( 2P + 2P )/42 1 2 P2P =PP = ( 3P + 1P )/43 2 3 3 4P = ( 4P )/4 =P4 3 3P P3 21Algorithme de De CasteljauDonn´ees : Polygone de controˆle{P ,P ,...,P } et t∈]0,1[0 1 n(1) P =P pour 0≤i≤n0,i i(2) P = (1−t)P +tP pour 0≤i≤n−j et 1≤j≤nj,i j 1,i j 1,i+1P = PP 2 0,2P = P 1,11 0,1P : P0 0,0PP 2,01,0P : P P1 0,1 2,0P P1,0P 2,11,1 P3,0P : P P2 0,2 n−1,0PP 1,2n,0Pn−1,1P = PP = P 3 0,3P : Pn−1 0,n−1 0 0,0P1,n−1P : Pn 0,n 0 t 1(a) P =P(t)n,0(b1){P ,P ,...,P } ={P } :0,0 1,0 n,0 i,0 0inpolygone de controˆle de la partie de la courbeC correspondant a` s∈ [0,t](b2){P ,P ,...,P } ={P } :0,n 1,n 1 n,0 i,n i 0inpolygone de controˆle de la partie de la courbeC correspondant a` s∈ [t,1](c) Subdivisions successives : convergence ...

Informations

Publié par
Nombre de lectures 22
Langue Français
Poids de l'ouvrage 1 Mo

Extrait

Courbes de B´ezier
Base de Bernstein de degr´e n
Fonctions de base des polynomes de degr´e n :
n!n i i n i i n iB (t) = C t (1−t) = t (1−t) ∀t∈ [0,1] et 0≤i≤ni n i!(n−i)!
Courbe de B´ezier
( )
nX
nCourbeC param´etr´ee polynomiale de degr´e n :C = P(t) = PB (t),t∈ [0,1]i i
i=0
{P ,P ,...,P } polygone de controˆle de la courbeC0 1 n( ) nX u−a u−a
nC = P(u) = PB ,u∈ [a,b] :t = ∈ [0,1]i i
b−a b−a
i=0
Quelques propri´et´es g´eom´etriques
P2
P3 = P(b)
P1 P’(b)
M
P’’(b)
P’(b) = c(P3−P2)
P’’(b) = k(P3−2 P2+P1) = 2 k(M−P2)
avec M = (P3+P1)/2
P0 = P(a)
El´evation de degr´e
i n+1−i
P = P + P pour 0≤i≤n+1i i 1 i
n+1 n+1
Courbe [P ,P ,...,P ] = Courbe [P ,P ,...,P ]0 1 n 0 1 n+1
P
1
P
1
P = ( 4P )/4 =P P =0 0 0 P
0 0
P = ( 1P + 3P )/41 0 1
P = ( 2P + 2P )/42 1 2 P
2
P =PP = ( 3P + 1P )/43 2 3 3 4
P = ( 4P )/4 =P4 3 3
P P
3 2
1Algorithme de De Casteljau
Donn´ees : Polygone de controˆle{P ,P ,...,P } et t∈]0,1[0 1 n
(1) P =P pour 0≤i≤n0,i i
(2) P = (1−t)P +tP pour 0≤i≤n−j et 1≤j≤nj,i j 1,i j 1,i+1
P = P
P 2 0,2P = P 1,11 0,1P : P0 0,0
PP 2,01,0
P : P P1 0,1 2,0
P P
1,0P 2,11,1 P
3,0
P : P P2 0,2 n−1,0
PP 1,2n,0
Pn−1,1
P = P
P = P 3 0,3P : Pn−1 0,n−1 0 0,0
P1,n−1
P : Pn 0,n 0 t 1
(a) P =P(t)n,0
(b1){P ,P ,...,P } ={P } :0,0 1,0 n,0 i,0 0in
polygone de controˆle de la partie de la courbeC correspondant a` s∈ [0,t]
(b2){P ,P ,...,P } ={P } :0,n 1,n 1 n,0 i,n i 0in
polygone de controˆle de la partie de la courbeC correspondant a` s∈ [t,1]
(c) Subdivisions successives : convergence des polygones de controˆle vers la courbeC
Polygone initial et courbe Subdivision 0 Subdivision 1
Subdivision 2 Subdivision 3 Subdivision 4
2Courbes composites
Mod´elisation de formes complexes
100 100
90 90
80 80
70 70
60 60
50 50
40 40
30 30
20 20
10 10
0 0
0 10 20 30 40 50 60 70 80 90 100 0 10 20 30 40 50 60 70 80 90 100
Une seule courbe de B´ezier (degr´e 9) Plusieurs courbes de B´ezier (degr´e 3)
Raccordement de courbes de B´ezier
nX t−an[P ,P ,...,P ] → C ={P(t) = PB ,t∈ [a,b]}0 1 n 1 i i
b−a
i=0 a<b<c :nX t−bn[Q ,Q ,...,Q ] → C ={Q(t) = QB ,t∈ [b,c]}0 1 n 2 i i c−b
i=0
r b−a r c−b1 2
r =b−a, r =c−b, λ = = , 1−λ = =1 2
r +r c−a r +r c−a1 2 1 2
10 Raccordement CRaccordement C
0Raccordement C +P(b) =Q(b)⇒ P =Qn 0
0 0P (b) =Q(b)⇒ P = (1−λ)P +λQn n 1 1
2Raccordement C
1Raccordement C +
00 00 1 λ λP (b) =Q (b)⇒ D =P + (P −P ) =Q + (Q −Q )n 1 n 1 n 2 1 1 2λ 1 λ

P = (1−λ)P + λDn 1 n 2⇐⇒
Q = (1−λ)D + λQ1 2
D Q D Q Q
2 λ 1 1−λ 2
1−λ 1−λ
P P = Q2 λ 3 0
λ
Q Q
3 3
P P
1 1
P P
0 0
λ 1−λ
a b c
3Diff´erentes structures de contrˆole
2Exemple de 3 courbes de B´ezier cubiques d´efinies sur [0,1], [1,2] et [2,3] et avec un raccordement C
entre elles
2
D = P DD D5 3 52 2
1
0 1 P
P = P 1
3 0
2
D = P D
0 4 2 4
P
2
1 2P P
2 1 2 1P = P
3 0
0
0 D = P D
D = P 0 0 D 0D D1 1 13 3
Structure B´ezier composite Structure de De Boor
B-splines
Base B-spline
Donn´ees : noeuds (abscisses) t avec t <ti i i+1
Ordre 1 (degr´e d = 0) Ordre k > 1 (degr´e d> 0)8( t−t t −ti i+kk 1 k 1< N (t)+ N (t) si t∈ [t,t [1 si t∈ [t,t [ i i+ki i+1 i i+11 k t −t t −tN (t) = N (t) = i+k 1 i i+k i+1i i :0 sinon 0 sinon
Cas noeuds ´equidistants
1.0 1.0 1.0 1.0 1.0
0.9 0.9 0.9 0.9 0.9
0.8 0.8 0.8 0.8 0.8
0.7 0.7 0.7 0.7 0.7
0.6 0.6 0.6 0.6 0.6
0.5 0.5 0.5 0.5 0.5
0.4 0.4 0.4 0.4 0.4
0.3 0.3 0.3 0.3 0.3
0.2 0.2 0.2 0.2 0.2
0.1 0.1 0.1 0.1 0.1
0.0 0.0 0.0 0.0 0.0
k = 1 k = 2 k = 3 k = 4 k = 5
Cas noeuds quelconques
1.0 1.0 1.0 1.0 1.0
0.9 0.9 0.9 0.9 0.9
0.8 0.8 0.8 0.8 0.8
0.7 0.7 0.7 0.7 0.7
0.6 0.6 0.6 0.6 0.6
0.5 0.5 0.5 0.5 0.5
0.4 0.4 0.4 0.4 0.4
0.3 0.3 0.3 0.3 0.3
0.2 0.2 0.2 0.2 0.2
0.1 0.1 0.1 0.1 0.1
0.0 0.0 0.0 0.0 0.0
k = 1 k = 2 k = 3 k = 4 k = 5
Base B-spline p´eriodique
Donn´ees : n+1 noeuds (abscisses) t <t <···<t0 1 n
P´eriode T =t −t → t =t +pTn 0 i+p n i
4Base B-spline avec noeuds confondus
Donn´ees : noeuds (abscisses) t avec t ≤ti i i+1
Ordre k > 1
8
t−t t −ti i+k> k 1 k 1 N (t) + N (t) si t∈ [t,t [,t >t et t >ti i+k i+k 1 i i+k i+1> i i+1 t −t t −t> i+k 1 i i+k i+1> t −ti+k< k 1N (t) si t∈ [t,t [,t =t et t >ti i+k i+k 1 i i+k i+1k i+1N (t) = t −ti+k i+1i > t−t i k 1> N (t) si t∈ [t,t [,t >t et t =ti i+k i+k 1 i i+k i+1> i> t −ti+k 1 i>:
0 sinon
Base B-spline d’ordre k sur un intervalle born´e [a,b]
a =t =t =··· =t <t <···<t <t =t =··· =t =b1 2 k k+1 k+n 1 k+n k+n+1 n+2k 1
kn intervalles et n+k−1 fonctions de base Ni
1.0
0.9
0.8
0.7
0.6
0.5
0.4
0.3
0.2
0.1
0.0
Algorithme de DeBoor-Cox
Donn´ees : Points de controˆle D et noeuds associ´es t , une valeur t, k ordre de la B-splinei i
(1) trouver l’indice r tel que t∈ [t ,t [r r+1
(2) A =D pour 1≤i≤k0,i r+i k
t−tr+i k+j
(3) A = (1−λ)A +λA avec λ = pour 1≤i≤k−j et 1≤j≤k−1j,i j 1,i j 1,i+1
t −tr+i r+i k+j
→ le point de la courbe B-Spline correspondant au param`etre t est Ak 1,1
Exemple avec k = 4
A
1,2
A0,2
A
0,3
AA 3,1 A2,1 2,2
A A1,1 1,3
D D
r−3 r−3D D
r rA0,1
At t t t t t 0,4r r+1 r r+1
5Insertion de noeuds
Donn´ees : Points de controˆle D et noeuds associ´es t , un noeud suppl´ementaire t, k ordre de lai i
B-spline
(1) trouver l’indice r tel que t∈ [t ,t [r r+1
(2) A =D pour 1≤i≤k0,i r+i k
t−tr+i k+1
(3) A = (1−λ)A +λA avec λ = pour 1≤i≤k−11,i 0,i 0,i+1
t −tr+i r+i k+1
→ le polygone de controˆle correspondant a` ...,t ,t ,t,t ,t ,... estr 1 r r+1 r+2
...,D ,D ,A ,...,A ,D ,D ,...r k r k+1 1,1 1,k 1 r r+1
A1,1
DD r−k+1r−k+1 A1,k−1
DD D rD r r−kr−k
Subdivision
Polygone initial et courbe Polygone apr`es 1 subdivision
Polygone apr`es 2 subdivisions Polygone apr`es 3 subdivisions
6Surfaces produit tensoriel
Cas g´en´eral
( )
m nXX
SurfaceS = P(u,v) = C f (u)g (v), u∈I = [u ,u ], v∈J = [v ,v ]i,j i j min max min max
i=1 j=1
0 10 1
C C ... C g (v)1,1 1,2 1,n 1
B CB C C C ... C g (v)2,1 2,2 2,n 2B CB C
P(u,v) = f (u) f (u) ... f (u) B CB C1 2 m . . . ... . . . .@ A@ A.. . . .
C C ... C g (v)m,1 m,2 m,n n
C ={P(u,v), v∈J} courbe `a u constantu
C ={P(u,v), u∈I} courbe a` v constantv
v rectangle I x J carreau S
v
max
Cu
Cv
v
min u
u u
min max
Carreau de B´ezier
( )
m nXX
m nSurfaceS = P(u,v)= P B (u)B (v), u∈ [0,1], v∈ [0,1] cas polynomiali,j i j
i=0 j=0
( )P Pm n m nω P B (u)B (v)i,j i,j i ji=0 j=0P PSurfaceS = P(u,v)= , u∈ [0,1], v∈ [0,1] cas rationnelm n m nω B (u)B (v)i,j i ji=0 j=0
poly`edre de controˆle :{P }i,j 0im,0jn
( + poids associ´es{ω } pour le cas rationnel )i,j 0im,0jn
P
0,4
C u=0 C v=1
P
3,4
P
0,0 C u=1
C v=0
P
3,0
Carreau de B´ezier de degr´e 3 en u et degr´e 4 en v
7Propri´et´es (similaires aux courbes de B´ezier)
S ∈ conv({P })i,j
P(0,0) =P , P(1,0) =P , P(0,1) =P , P(1,1) =P0,0 m,0 0,n m,n
m 1 nXX∂P(u,v)
0 m 1 nP (u,v) = = m (P −P )B (u)B (v)i+1,j i,ju i j∂u
i=0 j=0
m n 1XX∂P(u,v)0 m n 1P (u,v) = = n (P −P )B (u)B (v)i,j+1 i,jv i j∂v
i=0 j=0
m 1 n 12 XX∂ P(u,v)00 m 1 n 1P (u,v) = = mn (P −P −P +P )B (u)B (v)i+1,j+1 i+1,j i,j+1 i,juv i j
∂u∂v
i=0 j=0
0 0P (0,0) =m (P −P ) P (0,0) =n (P −P )1,0 0,0 0,1 0,0u v
00P (0,0) =mn (P −P −P +P ) (vecteur twist en (0,0))1,1 1,0 0,1 0,0uv
Evaluation
P P P P
0,4 1,4 2,4 3,4
Q (v) Q (v) Q (v) Q (v)
0 1 2 3
Q (v) Q (v) Q (v) Q (v)
0 1 2 3
P(u,v)
P P P P
0,0 1,0 2,0 3,0
1) Evaluation suivant v 2) Evaluation suivant u
Subdivision
R
i,jP
i,j
Q
i,j
Subdivision suivant
le second paramètre
Subdivision suivant Subdivision suivant
le premier paramètre le premier paramètre
U
i,j
Q
i,j
VR S i,ji,j i,j
Subdivision suivant T
i,jle second paramètre
8Carreau NURBS
8 9
M NXX> >m n> > ω D N (u)N (v)i,j i,j i j> >< =
i=1 j=1
SurfaceS = P(u,v) =
M N> >XX> >> >m nω N (u)N (v)> i,j >i j: ;
i=1 j=1
ordre m (degr´e du =m−1) en u ordre n (degr´e dv =n−1) en v
vecteur de noeuds en u : u ,u ,...,u vecteur de noeuds en v : v ,v ,...,v0 1 nu 0 1 nv
grille de M×N points D et poids ω (M =nu+du, N =nv +dv)i,j i,j
Passage `a la forme B´ezier
D Q1,7 1,7
D Q5,7 7,7
D Q1,1 1,1
D Q5,1 7,1
P 1,13
P 7,13
P 1,1
P 7,1
Surface de r´evolution
z
GCv
R(v)
Z(v)
y
x O
R´evolution d’une courbe plane (g´en´eratrice)G Surface de r

  • Univers Univers
  • Ebooks Ebooks
  • Livres audio Livres audio
  • Presse Presse
  • Podcasts Podcasts
  • BD BD
  • Documents Documents