Courbe de Bézier

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 39

Université de Sousse

École nationale d'ingénieurs de Sousse


Département de Génie Mécanique

Modélisation avancée en CAO

Mlaouhi ibrahim 1
Courbes d’approximation:
Courbes de Bézier
Utilité et découverte des courbes de Bézier
❑ C'est dans le domaine de la CAO que les courbes de Bézier ont été inventées et plus
précisément dans l'industrie automobile (1962) : initialement pour la définition de
panneaux de carrosserie.
Inventeur: Pierre Bézier Ingénieur chez Renault
❑ Dans les années 1960, les machines a commandes numériques sont apparues, il fallait
donc décrire les formes (comme les courbes de carrosserie) avec des équations
mathématiques.

❑ La première solution était d'interpoler linéairement un grand nombre de points. Cette


méthode a de nombreux inconvénients :
• Pour la machine, il y a beaucoup de paramètres.
• Il est impossible d'agrandir (mais aussi de translater, de déformer, . . . ) une
partie d'une pièce sans rajouter de points supplémentaires.
• Placer des points n'est pas intuitif pour les designers.
• Il est très fastidieux de modifier la courbe.

Mlaouhi ibrahim 2
Courbes d’approximation:
Courbes de Bézier

❑ L'idée révolutionnaire des courbes de Bézier est l'utilisation de points de


contrôle et non de points d'interpolation. Cela veut dire que la courbe ne passe
pas par les points donnés mais les approche. Les courbes de Bézier ne sont
donc pas des interpolations mais des approximations.

❑ Il y a plusieurs avantages a cela :

▪ La courbe est stable, il est facile de déformer la courbe sans résultats


inattendus.
▪ Il est facile de modifier la courbe, il ne faut que modifier les points de
contrôle qui sont peu nombreux.
▪ Le placement des points de contrôle est relativement évident.
▪ Il est plus facile d'avoir une courbe naturelle, fluide, non brusquée avec des
points de contrôle qu'avec des points d'interpolation.
▪ Garder les avantages du modèle numérique (agrandissement, déformation,
etc.).

Mlaouhi ibrahim 3
Courbes d’approximation:
Courbes de Bézier
Caractéristiques
La courbe de Bézier développée par l’ingénieur Pierre Bézier chez
Renault.
– Visant à fournir un moyen plus intuitif que les courbes de
Hermite pour la définition de courbes 3D (pas de valeurs de
pentes à spécifier).
– Utilisation d’un polygone de contrôle an lieu des points et des
pentes de la courbe de Hermite.
– Approximation du polygone par un polynôme dont le degré est
un de moins que le nombre de sommets du polygone.
Exemple : pour un polygone à quatre sommets, on choisira un polynôme cubique
(degré trois).

Mlaouhi ibrahim 4
Courbes d’approximation:
Courbes de Bézier
Caractéristiques

Les courbes de Bézier sont utilisées dans de très nombreuses


applications :

• commandes de machines numériques ;

• programmes de dessin vectoriel (segments courbes) ;

• polices True-type ;

• morphing : déformation d’images

Mlaouhi ibrahim 5
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier
Courbe de Bézier de degré 1

On considère deux points A et B et soit M(t) le barycentre de (A, 1 − t)(B, t).


• si t = 0 alors M est en A;
• si t = 0, 5 alors M est au milieu de [AB] ;
• si t = 1 alors M est en B.
Quand t parcourt l’intervalle [0, 1], il est clair que le point M(t) décrit tout le segment [AB].

Le segment [AB] est la courbe de Bézier de degré 1 avec points de contrôle A et B.


Les polynômes 1 − t et t sont les polynômes ou poids de Bernstein de degré 1.

Mlaouhi ibrahim 6
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier
Courbe de Bézier de degré 2
Construisons une autre courbe en rajoutant une 2ème étape à ce qui précède :
1ère étape : 2 courbes de Bézier de degré 1 :
• Soit M1(t) le barycentre de (A, 1 − t)(B, t) ; M1(t) décrit [AB].
• Soit M2(t) le barycentre de (B, 1 − t)(C, t) ; M2(t) décrit [BC].

2ème étape :
• Soit M(t) le barycentre de (M1, 1 − t)(M2, t).
On fait décrire à t le segment [0; 1].

M1 parcourt alors [AB] et M2 parcourt alors [BC]. Le point M décrit lui la courbe ci-dessus.

Mlaouhi ibrahim 7
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier
Courbe de Bézier de degré 2

➢M(t) décrit alors une courbe de degré 2 qui, par définition, commence en A et se finit en C, et a pour
tangentes (AB) en A et (BC) en C.

➢ En tout point M, la tangente à la courbe est le segment [M1M2].

➢ M(t) se situe à la même proportion du segment [M1M2] que M1 par rapport au segment [AB] ou M2
par rapport au segment [BC].

Mlaouhi ibrahim 8
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier
Schéma pyramidal de Casteljau, permet de résumer la construction itérative des
barycentres qui a été faite.

M1(t) le barycentre de (A, 1− t) (B, t) ; M1(t) décrit [AB].


M2(t) le barycentre de (B, 1− t) (C, t) ; M2(t) décrit [BC].
M(t) le barycentre de (M1, 1− t) (M2, t).
Ainsi, en prenant le point O comme origine, on obtient :
les propriétés d’association du le schéma
barycentre condensé de Bernstein

M1(t)

M2(t)

Mlaouhi ibrahim 9
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier
Courbe de Bézier de degré 2

Ainsi, en prenant le point O comme origine, on obtient :

ce qui se traduit sur les coordonnées par :

M(t) décrit la courbe de Bézier de degré 2 avec 3 points de contrôle A, B et C.


Les polynômes (1 − t)2, 2t(1 − t) et t2 sont les polynômes - poids de Bernstein de degré 2.

Mlaouhi ibrahim 10
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier

Courbe de Bézier de degré 3


Construisons une autre courbe en rajoutant une 3ème étape à ce qui précède :

1ère étape : 3 courbes de Bézier de degré 1 :

• Soit M1(t) le barycentre de (A, 1 − t)(B, t) ;


• Soit M2(t) le barycentre de (B, 1 − t)(C, t) ;
• Soit M3(t) le barycentre de (C, 1 − t)(D, t).

2ème étape : 2 courbes de Bézier de degré 2 :

• Soit N1(t) le barycentre de (M1, 1 − t)(M2, t) ;


• Soit N2(t) le barycentre de (M2, 1 − t)(M3, t).

3ème étape : 1 courbe de Bézier de degré 3 :


• Soit M(t) le barycentre de (N1, 1 − t)(N2, t) ;

Mlaouhi ibrahim 11
Courbes d’approximation:
Courbes de Bézier
Exemples progressifs de courbes de Bézier
Schéma pyramidal de Casteljau Schéma condensé de Berstein

En prenant le point O comme origine, on obtient :

La représentation paramétrique de la courbe est donc :

Mlaouhi ibrahim 12
Courbes de Bézier
Intérêt de courbes de Bézier
– Utilisation d’un polygone de contrôle;
– Pas de tangente à spécifier, contrairement à l’Hermite;
– Approximation du polygone par un polynôme dont le degré (n) est
un de moins que le nombre de sommets (n+1);
• Ex: pour polygone à quatre sommets, polynôme cubique.

Mlaouhi ibrahim 13
Courbes de Bézier
• Définition mathématique (courbe polynomiale cubique)
– Courbe polynomiale cubique de Bézier -> Polygone à 4 points.
– Correspondance des sommets du polygone de Bézier avec les
paramètres de la courbe de Hermite:
• P0 et P3 de Bézier équivalent à P0 et P1 de Hermite;
• P1 et P2 de Bézier sont définis comme étant au tiers de la
longueur des vecteurs de tangence P0’ et P1’ de Hermite;
–Ici, la proportion du tiers correspond à l’inverse du degré du
polynôme (1/n).
• Les vecteurs tangents en P0 et P3 peuvent alors s’écrire :
→P0’ = 3(P1 - P0)
→P3’ = 3(P3 - P2)
Mlaouhi ibrahim 14
Courbes de Bézier

• Définition mathématique (courbe polynomiale cubique)


– Correspondance des sommets du polygone de Bézier avec les
paramètres de la courbe de Hermite (suite):

P0’

P1 P2

P3

P0 P1 P0

P1’

Hermite Bézier
Mlaouhi ibrahim 15
Courbes de Bézier

• Définition mathématique (courbe polynomiale cubique)


– Substitution dans la forme finale du polynôme de Hermite :
P(u) = P0 (1 − 3u2 + 2u3 ) + P1 (3u2 − 2u3 ) + P0 '(u − 2u2 + u3 ) + P1 '(−u2 + u3 )
P0  P0 ; P1  P3 ; P0 '  3(P1 − P0 ) ; P1 '  3(P3 − P2 )

– On obtient:
Q(u) = P0 (1 − 3u + 3u2 − u3 ) + P1 (3u − 6u2 + 3u3 ) + P2 (3u2 − 3u3 ) + P3 (u3 )

(P3) u3
– Fonctions d’influence (P0) 1 - 3u + 3u2 - u3

correspondantes:
(P1) 3u - 6u2 + 3u3 (P2) 3u2 - 3u3

0 1 u
Mlaouhi ibrahim 16
Courbes de Bézier

• Représentation matricielle (courbe polynomiale cubique)


– L’équation obtenue peut être exprimée sous forme matricielle:
Q(u) = P0 (1 − 3u + 3u2 − u3 ) + P1 (3u − 6u2 + 3u3 ) + P2 (3u2 − 3u3 ) + P3 (u3 )

Q (u) = UMB GB
 −1 3 −3 1  P0 
 3 −6 3  
0  P1 
Q (u) = u3 u2 u1 1 
 −3 3 0 0  P2 
  
1 0 0 0  P3 

MB GB

MB : Matrice des coefficients de Bézier;


GB : Vecteur des contraintes géométriques de Bézier.

Mlaouhi ibrahim 17
Courbes de Bézier

Mlaouhi ibrahim 18
Courbes de Bézier

Mlaouhi ibrahim 19
Courbes de Bézier

n
 n! 
p(u) = Q (u) =   n−i
u (1 − u) Pi 
i

i = 0  i !(n − i )! 

Mlaouhi ibrahim 20
Courbes de Bézier

• Formulation générale de Bézier-Bernstein (degré n)


n
 n! 
Q (u) =   u i (1 − u)n −i Pi 
i = 0  i !(n − i )! 

– Fonction d’influence : fonction polynomiale de Bernstein:


n!
Bi ,n (u) = u i (1 − u)n−i avec u [0,1]
i !(n − i)!

– Ces fonctions peuvent être représentée graphiquement comme


précédemment par (n + 1) courbes.

Mlaouhi ibrahim 21
Courbes de Bézier

Mlaouhi ibrahim
22
Courbes de Bézier

Mlaouhi ibrahim 23
Courbes de Bézier

Mlaouhi ibrahim 24
Courbes de Bézier

• Caractéristiques principales des courbes de Bézier (suite)


– La même courbe est générée en inversant l’ordre des points dans le
polynôme de contrôle
• Exemple numérique:

P1(3,3) P2(5,3) P2(3,3) P1(5,3)

P3(6,2) P0(6,2)

P0(1,1) P3(1,1)

Mlaouhi ibrahim 25
Courbes de Bézier

• Caractéristiques principales des courbes de Bézier (suite)


• Effet du déplacement d’un point du polygone de contrôle;
• Courbe principalement affectée dans la région autour des
points où le paramètre u prend la valeur i/n;
• Courbe à déformation globale:

P1(0,1) P2(1,1) P2(2,1)

P0(0,0) P3(1,0)

Mlaouhi ibrahim 26
Courbes de Bézier

• Jonction des courbes de Bézier


– Lorsque plusieurs points sont approximés par plusieurs courbes de
Bézier de degré(s) inférieur(s);
– On assure une continuité G1 à la jonction de deux segments de
courbe de Bézier:
• Dernier point du polygone j = 1er point du polygone j + 1;
• Points précédent, commun et suivant colinéaires;
– 2 segments de courbe de Bézier consécutifs peuvent être de degrés
différents. 4 pts → Degré 3

5 pts → Degré 4

Mlaouhi ibrahim 27
Courbes de Bézier

Exercice 1:
Soit les points Pi (x(u), y(u)) du Polygone de contrôle.
P0 (0, 0) P1 (0.3, 1) P2 (0.6, 0.8) P3 (1, 0)
1. Déterminer l’équation de la courbe de Bézier suivant la formulation de
Bernstein.
n!
Bi ,n (u) = u i (1 − u)n−i avec u [0,1] et i = 0... n
i !(n − i)!
Calculer 𝐵0,3 (𝑢) , 𝐵1,3 (𝑢) , 𝐵2,3 (𝑢) 𝑒𝑡 𝐵3,3 (𝑢൯

2. Tracer la courbe de Bézier avec les points intermédiaires suivants:


2.1) u = 0.3
2.2) u = 0.6

Mlaouhi ibrahim 28
Courbes de Bézier

• Solution
1. Formulation de Bernstein: trouver les fonctions d’influence…
n!
Bi ,n (u) = u i (1 − u)n−i avec u [0,1]
i !(n − i)!
Courbe de Bézier passant par 4 points ➔ Degré n = 3.
3!
i = 0) B0,3 (u) = u 0 (1 − u)3−0 = (1 − u)3 = 1 − 3u + 3u2 − u3
0!(3 − 0)!
3! 3−1 3!
i = 1) B1,3 (u) = u (1 − u) = u(1 − u)2 = 3u3 − 6u2 + 3u
1

1!(3 − 1)! 2!
3! 3 −2 3! 2
i = 2) B2,3 (u) = u (1 − u) = u (1 − u) = 3u2 − 3u3
2

2!(3 − 2)! 2!
3!
i = 3) B3,3 (u) = u3 (1 − u)3−3 = u3
3!(3 − 3)!
Mlaouhi ibrahim 29
Courbes de Bézier

• Solution
1. Équation de Bézier-Bernstein:
n
Q (u) =  Bi ,nPi avec u [0,1]
i =0

= P0 (1 − 3u + 3u2 − u3 ) + P1 (3u − 6u2 + 3u3 ) + P2 (3u2 − 3u3 ) + P3 (u3 )


=  x(u) y(u)
Équations algébriques paramétriques:

x(u) = (0)(1 − 3u + 3u2 − u3 ) + (0.3)(3u − 6u2 + 3u 3 ) + (0.6)(3u2 − 3u 3 ) + (1)(u 3 )


= 0.9u + 0.1u3
y(u) = (0)(1 − 3u + 3u2 − u3 ) + (1)(3u − 6u2 + 3u 3 ) + (0.8)(3u2 − 3u 3 ) + (0)(u 3 )
= 3u − 3.6u2 + 0.6u3

Mlaouhi ibrahim 30
Courbes de Bézier

• Solution: y(u)
P1(0.3,1)

2.1)
– x(0.3) = 0.2727 P2(0.6,0.8)

– y(0.3) = 0.5922
Q(0.6)
2.2)
Q(0.3)
– x(0.6) = 0.5616
– y(0.6) = 0.6336

P3(1,0)

P0(0,0) x(u)

Mlaouhi ibrahim 31
Courbes de Bézier
• Astuce pour le tracé des courbes de Bézier:
➔ Algorithme de De Casteljau
1. Découpe des segments de droites du polygone selon le rapport
u
(umax − umin )
2. Tracé de nouveaux segments
de droite reliant les nouveaux
points obtenus sous le polygone
de contrôle;
3. Découpe des nouveaux
segments…
4. Répéter jusqu’à obtention du
dernier point.
Exemple: Déterminer le point
sur la courbe pour u = 0.5…

Mlaouhi ibrahim 32
Courbes de Bézier

• Algorithme de De Casteljau

Découpe du
polygone de contrôle
au paramètre
u = 0.5

Mlaouhi ibrahim 33
Courbes de Bézier

• Algorithme de De Casteljau

Nouveaux
segments sous Q(0.5)
polygone de
contrôle

Mlaouhi ibrahim 34
Courbes de Bézier
• Algorithme de De Casteljau
2. Déterminer et tracer les points de la courbe pour
u = 0.3 et u = 0.6…

u = 0.3 u = 0.5 u = 0.6

Mlaouhi ibrahim 35
Courbes de Bézier
4 Points de contrôle

5 Points de contrôle

Mlaouhi ibrahim 36
Courbes de Bézier

Exercice.2
Soit les points Pi (x(u), y(u)) de contrôle

P0(1,1) P1(3,4) P2(4,2) P3(5,3) P4(6,0)

1. Quel est le degré de la courbe?


2. Calculer l’équation de la courbe de Bézier;
3. Tracer la courbe de Bézier en utilisant l’algorithme de De
Casteljau en prenant le point intermédiaire u = 0.5.

Mlaouhi ibrahim 37
• Solution
1) Degré 4
2) B0,4 = (1 - u)4
B1,4 = 4u(1-u)3
B2,4 = 6u2(1-u)2
B3,4 = 4u3(1-u)
B4,4 = u4

P(u) = (1-u)4*P0 + 4u*(1-u)3*P1 + 6u2*(1-u)2*P2 + 4u3*(1-u)*P3 + u4*P4

Mlaouhi ibrahim 38
• Solution P1(3,4)

P3(5,3)

P2(4,2)

Découpe du sous
P0(1,1) polygone de
contrôle au
paramètre u = 0.5
P4(6,0)

Mlaouhi ibrahim 39

Vous aimerez peut-être aussi