Documente Academic
Documente Profesional
Documente Cultură
M.RADOUANI@ensam-umi.ac.ma
1- Introduction
La CFAO (Conception et Fabrication Assistes par Ordinateurs) permet de regrouper autour
dun modle informatique toutes les donnes dun projet ayant trait la conception-
fabrication, daccder slectivement ces donnes et de les transcrire sous une forme
directement comprhensible par les intervenants.
La modlisation de carreaux de surface est traite dans le cas de la dfinition utilisant les
polynmes de Bzier. Les problmes de raccordement dlments de surface, de continuit et
dintersection sont traits dans le cas gnral des dfinitions polynomiales.
M.RADOUANI@ensam-umi.ac.ma
linterpolation et lapproximation dans lesquelles la courbe est plus ou moins
astreinte passer par des points Mi de coordonnes (xi, yi, zi) connues ;
la cration de formes pour laquelle des contraintes ne sont imposes quen quelques
points particuliers.
Dans le cas le plus strict, on connat un ensemble de n+1 points et on cherche dterminer les
coefficients du polynme Pn de degr n passant exactement par tous ces points.
La mthode des polynmes de Lagrange apporte une solution lgante mais ds que le
nombre de points de passage oblig augmente, des oscillations peuvent apparatre, en
particulier dans les zones extrmes (figure 1).
Pour remdier cet inconvnient, on peut imposer des contraintes telles que, par exemple,
minimiser une fonctionnelle comme dans la mthode Spline.
Page 2 CFAO
Modlisation de courbes et de surfaces
Si le passage de la courbe par lensemble des points donns nest pas impratif, le but
recherch tant plutt un lissage , on peut :
soit chercher un polynme Pr de degr r infrieur n passant au mieux parmi
les points. Cest ce que lon fait manuellement en traant une courbe qui doit traduire
le rsultat de mesures exprimentales (figure 2) ;
soit chercher une approximation par une succession darcs de courbe de degr peu
lev (2, 3 ou 4), la continuit entre deux arcs successifs tant assure jusqu un
ordre donn. La mthode de Riesenfeld apporte une solution ce problme.
M.RADOUANI@ensam-umi.ac.ma
I
Page 3 CFAO
Modlisation de courbes et de surfaces
2- Polynmes exacts
2.1- Polynmes de Lagrange
Une courbe de lespace R3 tant obtenue par combinaison de courbes de R2, il est plus simple
de raisonner dans le plan XY.
(x0, y0) ; (x1, y1) ; ... ; (xi, yi) ; ... ; (xn, yn)
Les n+1 coefficients inconnus ak sont obtenus par rsolution du systme linaire de n+1
inconnues donnes par [2]. Cette mthode directe ncessite linversion dune matrice numrique,
ce qui conduit si elle est mal configure des rsultats errons.
M.RADOUANI@ensam-umi.ac.ma
En effet, soit :
Dans [u] chaque ligne est compose des puissances successives 0, 1, ..., k, ...,n dune valeur
particulire xi du support dapproximation ; chaque colonne est constitue de toutes les valeurs
du support dapproximation une mme puissance k.
La matrice [u] tant construite sur un support dapproximation, a priori quelconque, le calcul
numrique de son inverse peut conduire des rsultats errons dus des erreurs de chute.
Page 4 CFAO
Modlisation de courbes et de surfaces
lintermdiaire des polynmes de Lagrange Li(x) de degr n :
Permettant ainsi Pn(x) de prendre les valeurs yo, y1, ..., yi, ..., yn lorsque x prend les valeurs
successives xo, x1, ..., xi, ..., xn. La construction des polynmes Li(x) est trs simple. Les coefficients
des polynmes Li(x) ne dpendent que des valeurs xi du support dapproximation :
En combinant les coefficients dune mme puissance de x des diffrents polynmes L i(x),
M.RADOUANI@ensam-umi.ac.ma
associs aux valeurs yi, on retrouve les coefficients ak du polynme Pn(x) mis sous la forme [1].
Remarques :
Page 5 CFAO
Modlisation de courbes et de surfaces
de la poutre . Ce principe de trac est (ou tait) utilis par les dessinateurs avec laide
dune latte mince, appele SPLINE en anglais, ce qui a donn le nom aux fonctions obtenues
par minimisation dune fonctionnelle mme lorsque q est diffrent de 2.
____ Lagrange
_ _ _ Spline
M.RADOUANI@ensam-umi.ac.ma
Figure 3. Interpolation de 28 points
Pour une valeur choisie de q 2, on peut montrer que les fonctions S(x) ayant les
caractristiques suivantes sont solution :
a- S(x) est un polynme de degr (q-1) dans les intervalles [a, xo[ et ]xn, b] (figure 5) ;
b- S(x) est un polynme de degr (2q-1) dans chaque intervalle ]xi, xi+1[ pour i = 0, 1,
2, ..., n-1 ;
(x-xi)+ = 0 si x xi
= (x-xi) si x xi [10]
Page 6 CFAO
Modlisation de courbes et de surfaces
Puis on crit que la solution est de degr q-1 dans ]xn, b]. Ainsi, la solution est de la forme :
q1
S (x) = j=0 j . xj + ni=0 Pi (x) [11]
Les inconnues sont les q coefficients j et les n+1 coefficients di. Pour les dterminer, on dispose
des n+1 quations :
M.RADOUANI@ensam-umi.ac.ma
yi, ordonnes des points de passage oblig.
Lexpression de S(x) obtenue en rsolvant [12] et [13] assure aussi une continuit jusqu lordre
(2q-2) en chaque point xi ; et la drive suivante, dordre (2q-1), prsente une discontinuit
de valeur di. Toute modification des xi et des yi entrane une nouvelle dtermination des
coefficients j et di. Il nexiste pas de fonctions Spline prdtermines .
Remarque :
Diffrentes mthodes existent pour dterminer les fonctions Spline, en tenant compte, non
seulement de points de passage oblig, mais aussi de directions de tangente en certains points.
3- Approximation
3.1- Approximation par un polynme de degr infrieur
On dispose de n+1 couples de valeurs xi, yi. On cherche un polynme Pr (x) de degr r < n
passant au mieux parmi les points. Cest le choix dun critre appropri qui traduit la notion
subjective de passer au mieux parmi les points (figure 2).
Le critre le plus utilis consiste minimiser la somme Q des carrs des carts i :
Page 7 CFAO
Modlisation de courbes et de surfaces
Pr (x) = a0 + a1 . x ... + ar . xr
sont obtenus par rsolution du systme de r+1 quations, obtenus par :
Q / aj = 0 pour j = 0, 1, ..., r
ni=0 xij i = 0
On peut raisonner directement dans lespace R3 grce lutilisation dune notation vectorielle
et lemploi de fonctions paramtriques, le paramtre u variant sur [0, 1] (figure 3).
S1
U=0
Si
S0 U=1 Sn
M.RADOUANI@ensam-umi.ac.ma
P(u)
P (u) reprsente le vecteur dcrivant un arc de courbe, lorsque u varie dans [0, 1]. Les points
sont dfinis par des vecteurs Si. Quel que soit le nombre de points, Riesenfeld propose une
approximation constitue dune succession darcs de courbe, chacun de degr m<<n, construit
sur m+1 points Si et deux arcs de courbe successifs utilisent m points communs, la continuit
entre eux est assure jusqu lordre m-1.
Le premier arc va ainsi tre dfini par les m+1 premiers sommets Si moduls chacun par une
fonction relle de u, note Rim (u), tel que :
= m
i=0 R m (u) . Si
i pour u [0, 1] [14]
Pour larc suivant, lindice des sommets Si est incrment dune unit :
Page 8 CFAO
Modlisation de courbes et de surfaces
Pm2 (u) = m
i=0 R m (u) . Si+1
i pour u [0, 1]
et ainsi de suite.
Les fonctions Rim (u), fonctions de Riesenfeld, assurent une continuit dordre m-1 entre deux
arcs successifs, en leur point commun, lextrmit de lun dfinie pour u = 1 et lorigine de
lautre dfinie pour u = 0, soit :
d(q) Pm1 (1) / duq = d(q) Pm2 (0) / duq pour q = 0, 1, 2, ..., m-1 [15]
m
i=0 R m (u) = 1
i
M.RADOUANI@ensam-umi.ac.ma
Les figures 4 et 5 prsentent quelques familles de fonctions de Riesenfeld et les interpolations
correspondantes.
Remarques
Pour chaque valeur de m, on obtient une famille de m+1 fonctions rpondant la question.
Ces fonctions sont prdtermines et indpendantes des points, ou sommets S i, ce qui est
nouveau par rapport aux mthodes prcdentes. Lutilisation dune telle mthode ne ncessite
donc aucune dtermination pralable.
1 1
R12
R13 R23
2/3
1/2
R02 R22
1/6
R03 R33
0 0
u=0 u=1 u=0 u=1
Page 9 CFAO
Modlisation de courbes et de surfaces
Figure 5. Interpolations des familles de fonctions de Riesenfeld (n=2)
4- Cration de formes
4.1- Historique
M.RADOUANI@ensam-umi.ac.ma
Pour la cration de formes, lide est de mettre la disposition des oprateurs, un outil
permettant de numriser la courbe aussitt son esquisse, partir de quelques points
caractristiques tels que : position de lorigine (u = 0) et de lextrmit (u = 1), directions des
tangentes en ces points par exemple.
Une des premires approches a t propose par J. Ferguson sous forme dun polynme
coefficients vectoriels :
La position de lorigine de la courbe est donne par le vecteur 0 et celle de lextrmit par
la somme gomtrique des vecteurs :
P(1) = 0 + 1 + 2 + 3
Ce principe a t repris par P. Bzier et son quipe en associant aux vecteurs 0, 1, ..., i
non pas les simples puissances successives de u : u0, u1, ..., ui dun paramtre u, mais des
Page 10 CFAO
Modlisation de courbes et de surfaces
fonctions f0 (u), f1 (u), ..., fi (u) qui vont tre parfaitement et totalement dtermines par un
ensemble de contraintes gomtriques imposes aux vecteurs i.
4.2- Mthode UNISURF
2.2.1- Polynmes de Bzier
Une courbe est dfinie par une expression paramtrique vectorielle (figure 6), chaque vecteur
i est modul par une fonction fi (u) du paramtre u, avec u[0, 1], telle que :
U=0 i
M.RADOUANI@ensam-umi.ac.ma
z
0 U=1
n
y
o
et dune faon gnrale, la drive kime ne dpend que des k vecteurs significatifs 1,
2 , ..., k, ce qui impose f in(k) (0) = 0 pour i = k+1, k+2, ..., n.
Page 11 CFAO
Modlisation de courbes et de surfaces
La drive seconde ne dpende que de n et n-1, soit f in (1) = 0 sauf pour i = n et i = n-1 ;
M.RADOUANI@ensam-umi.ac.ma
Lutilisation de ces conditions permettent la dtermination de familles de fonctions. On peut les
calculer directement par lexpression :
Page 12 CFAO
Modlisation de courbes et de surfaces
1 Polynmes de Bzier : n =3
fo = 1
f1
f1 = u3 3 u2 +3u
f2 = 2 u3 + 3 u2
f2 f3 = u3
f3
1 Polynmes de Bzier : n = 4
f1 fo = 1
f1 = u4 + 4 u3 6 u2 +4u
f2 f2 = 3 u4 8 u3 + 6 u2
f3 = 3 u4 + 4 u3
M.RADOUANI@ensam-umi.ac.ma
f3
f4 = u4
f4
1 Polynmes de Bzier : n = 5
f1 fo = 1
f1 = u5 5 u4 + 10 u3 10 u2 +5u
f2
f2 = 4 u5 + 15 u4 20 u3 + 10 u2
f3
f3 = 6 u5 15 u4 + 10 u3
f4 f4 = 4 u5 + 5 u4
f5 = u5
f5
Autre expression : f in (u) = [(-u)i / (i-1)!] . [di-1 n (u) / dui-1] avec n = [(1 - u)n 1] / u
ni=1 f in (u) = n . u
Page 13 CFAO
Modlisation de courbes et de surfaces
Cette relation met en vidence lunicit de la courbe, paramtre en u ou 1-u, construite sur le
mme polygone caractristique mais dcrite dans un sens ou dans lautre.
Lexpression de dpart, utilisant les i , peut se mettre sous dautres formes plus appropries,
soit pour le calcul numrique [18.10] soit mettant en vidence directement les coordonnes S i
des extrmits des vecteurs i [18.20] appels sommets caractristiques :
M.RADOUANI@ensam-umi.ac.ma
avec [b]n = [b0, b1, ..., bi, ..., bn]T [u] = [u0, u1, u2, ..., un]
Ce vecteur [b]n peut tre obtenu partir des vecteurs i et des coefficients xki des fonctions
de Bzier (relation [19]) :
avec
1 0 0 --- --- 0 u0 0
0 x11 0 --- --- 0 u1 1
0 x21 x22 --- --- 0 u2 2
[X]n = --- --- --- --- --- --- --- et []n = ---
--- --- --- --- --- --- --- ---
0 xn1 xn2 --- --- xnn un n
--- ---
f 0n f 1n f 2n --- --- f nn
Chaque colonne de la matrice [X]n est compose des coefficients des puissances successives
du paramtre u, des fonctions successives f 0n, f 1n, ..., f in, ..., f nn. Chaque ligne est compose
des coefficients xki relatifs aux termes de mme puissance uk, pour k variant de 0 n. On
remarquera que [X]n est triangulaire infrieure.
Page 14 CFAO
Modlisation de courbes et de surfaces
ce qui met en vidence que toute courbe dfinie par un polynme peut se mettre sous la forme
UNISURF et rciproquement.
Dans lexpression [18], on peut exprimer les vecteurs i par les composantes Si donnant les
sommets du polygone caractristiques :
i
S i-1 Si
M.RADOUANI@ensam-umi.ac.ma
y
o
Les fonctions Bin (u) = Cin . ui . (1 u)n-i sont les fonctions de Bernstein, aussi appeles fonctions
Mlange , dont on donne quelques exemples de reprsentation.
La formulation utilisant les fonctions de Bernstein est bien adapte pour la modification dune
courbe. En effet, si le sommet Sk est dplac de la quantit Sk, la nouvelle courbe a pour
expression :
La dformation est porte par le vecteur Sk, damplitude module par la fonction de
Bernstein associe Bkn (u).
Page 15 CFAO
Modlisation de courbes et de surfaces
1 Polynmes de Bernstein : n =3
B0
Bo = u3 + 3 u2 3u +1
B1
B1 = 3 u3 6 u2 +3u
B2
B2 = 3 u3 + 3 u2
B3
B3 = u3
1 Polynmes de Bernstein : n = 4
B0
Bo = u4 4 u3 + 6 u2 4u +1
B1
B2
B1 = 4 u4 + 12 u3 12 u2 +4u
B2 = 6 u4 12 u3 + 6 u2
M.RADOUANI@ensam-umi.ac.ma
B3
B4 B3 = + 4 u3
4 u4
B4 = u4
1 Polynmes de Bernstein : n = 5
B0
B1
Bo = u5 +5u4 10u3 +10u2 5u +1
B2 B1 = +5u5 20u4 +30u3 20u2 +5u
B3
B2 = 10u5 +30u4 30u3 +10u2
B4
B5 B3 = 10u5 20u4 +10u3
B4 = 5u5 +5u4
B5 = u5
Vecteur nodal T = [t0, t1, ... ti, ... tk] suite de nombres rels.
Page 16 CFAO
Modlisation de courbes et de surfaces
Exemples : t = [0, 1, 2, 3, 4] nuds simples
m, Ni,m (t) = [(t ti) / (ti+m ti)] . Ni,m-1 (t) + [(ti+m+1 t) / (ti+m+1 ti+1)] . Ni+1,m-1 (t)
convention 0/0 = 0
Exemple : T = [0, 1, 2, 3]
M.RADOUANI@ensam-umi.ac.ma
On a m=0 N0,0 (t) = 1 pour t [0 , 1[
N1,0 (t) = 1 pour t [1 , 2[
N2,0 (t) = 1 pour t [2 , 3[
Reprsentations :
t
0 1 2 3 0 1 2 3
Page 17 CFAO
Modlisation de courbes et de surfaces
avec changement de variable t = ti +u
Exemple : T = [ 0, 1, 2, 3, 4]
M.RADOUANI@ensam-umi.ac.ma
1
N0,3 (t)
0,5
R23 R13
R33 R03
0
0 1 2 3 4
u u
0 1 0 1
Exemple : T = [0, 0, 0, 0, 1, 1, 1, 1]
Page 18 CFAO
Modlisation de courbes et de surfaces
B03 B33
B13 B23
u
0 1
0 t 2/5 1
M.RADOUANI@ensam-umi.ac.ma
N3,2 (t) = 0 N3,2 (t) = 25/9 (t-2/5)2
1
B03 B33
B13 B23
u
0 1
S1
t=2/5
S2
P(t)
S0
t=0
t=0
S3
Page 19 CFAO
Modlisation de courbes et de surfaces
Lalgorithme de De Casteljau est bas sur l'ide suivante : u [0, 1], dans la figure ci-dessous,
u = 0,4. Le point 10 appartient la polyligne [01], le point 11 appartient la polyligne [12],
, et le point 14 appartient la polyligne [45].
Les nouveaux points sont en bleu et numrots 1i. La position du point 10 est dtermine par :
M.RADOUANI@ensam-umi.ac.ma
u = 010/01 = 111/12 = 212/23 =313/34 = = 0,4
Page 20 CFAO