96
7
•
Courbes de Bézier
7.2 Polynômes de Bernstein
1. Montrer que { B
n
i } i = 0 ,..., n est un système libre de P n .
2. (c)Développer ( x + y )
n
,puis dériverpar rapport à x pour la seconde formule.
7.3 Raccord entreles courbes
1. Utiliser (7.3).
7.4 Contrainte de formes
4. Utiliser (7.2).
8. Utiliser (7.3).
7.5 Déterminationdupolygone de contrôle
1. Utiliser (7.3)et(7.4).
CORRIGÉS DES EXERCICES
7.1 Algorithme de de Casteljau
1. Parrécurrence, àchaque étape r de 0àn , b
r
0 (0) = b 0 de sorte que b
n
(0) = b 0 et de même
b
n
(1) = b n .C’est dire que la courbe part du point b 0 et arrive en b 1 .
2. Pardéfinition une transformation affine w de E conservelebarycentre si bien qu’à chaque
étape r et pour tout t de [0, 1] et tout i de 0àn − r :
w ( b
r
i ( t )) = (1 − t ) w ( b
r − 1
i
( t )) + t w ( b
r − 1
i +1 ( t )).
Donc par récurrence, w ( b
n
( t )) = B ( b 0 ,...,n ; t ) .
➤ Programmation
✞
☎
function C=c_bezier(pc,m)
%mpoints de la courbe ad eterminer,N =n+1 points de controle
t=0:1/(m-1):1;
N=length(pc(1,:));
dim= length(pc(:,1));
tt=ones(dim ,1)*t;
for i= 1:N
b(1:dim ,1:m,i)=pc(:,i)*ones (1,m);
end;
for r=1:N-1
bb=b;
for i=1:N-r
7
•
Courbes de Bézier
7.2 Polynômes de Bernstein
1. Montrer que { B
n
i } i = 0 ,..., n est un système libre de P n .
2. (c)Développer ( x + y )
n
,puis dériverpar rapport à x pour la seconde formule.
7.3 Raccord entreles courbes
1. Utiliser (7.3).
7.4 Contrainte de formes
4. Utiliser (7.2).
8. Utiliser (7.3).
7.5 Déterminationdupolygone de contrôle
1. Utiliser (7.3)et(7.4).
CORRIGÉS DES EXERCICES
7.1 Algorithme de de Casteljau
1. Parrécurrence, àchaque étape r de 0àn , b
r
0 (0) = b 0 de sorte que b
n
(0) = b 0 et de même
b
n
(1) = b n .C’est dire que la courbe part du point b 0 et arrive en b 1 .
2. Pardéfinition une transformation affine w de E conservelebarycentre si bien qu’à chaque
étape r et pour tout t de [0, 1] et tout i de 0àn − r :
w ( b
r
i ( t )) = (1 − t ) w ( b
r − 1
i
( t )) + t w ( b
r − 1
i +1 ( t )).
Donc par récurrence, w ( b
n
( t )) = B ( b 0 ,...,n ; t ) .
➤ Programmation
✞
☎
function C=c_bezier(pc,m)
%mpoints de la courbe ad eterminer,N =n+1 points de controle
t=0:1/(m-1):1;
N=length(pc(1,:));
dim= length(pc(:,1));
tt=ones(dim ,1)*t;
for i= 1:N
b(1:dim ,1:m,i)=pc(:,i)*ones (1,m);
end;
for r=1:N-1
bb=b;
for i=1:N-r
