130 likes | 252 Views
Surfaces bicubiques de Hermite. Tiré de Michael E. Mortenson, Geometric Modeling. Wiley, 1997, 523p. Forme algébrique des surfaces bicubiques de Hermite. P. u, v [0, 1]. Sous forme matricielle, on obtient :. P = U t A V où U t = [ u 3 u 2 u 1], V t = [ v 3 v 2 v 1],
E N D
Surfaces bicubiquesde Hermite Tiré de Michael E. Mortenson, Geometric Modeling. Wiley, 1997, 523p.
Forme algébrique des surfaces bicubiques de Hermite P u, v [0, 1] Sous forme matricielle, on obtient : P = Ut A V où Ut = [u3 u2 u 1], Vt = [v3 v2 v 1], a33 a32 a31 a30 A = a23 a22 a21 a20 a13 a12 a11 a10 a03 a02 a01 a00 Chacun des aij possède 3 coordonnées aijx, aijy et aijz ce qui donne au total 16 x 3=48 coefficients scalaires algébriques et A est en fait une matrice 4 x 4 x 3. Cette représentation est inappropriée pour l’animateur : on ne peut lui demander de définir une telle surface en fixant ces 48 coefficients algébriques.
Forme géométrique des surfaces bicubiques de Hermite Notation : Puv P(u, v) PuuvP(u, v) u u = u v = v PvuvP(u, v) v u = u v = v Puvuv2P(u, v) u v u = u v = v La surface est définie à partir de : ses 4 courbes frontières : les sommets P(0,0), P(0,1), P(1,0) et P(1,1), les vecteurs tangents aux 4 sommets Pu00, Pu01, Pu10 et Pu11, Pv00, Pv01, Pv10 et Pv11, des vecteurs de torsion aux 4 sommets : Puv00, Puv01, Puv10 et Puv11.
Forme géométrique des surfaces bicubiques de Hermite C’est une surface délimitée par 4 courbes de Hermite de degré 3 : • P(u, 0) Pu0 = [P00 P10 Pu00 Pu10] M U P(u, 1) Pu1 = [P01 P11 Pu01 Pu11] M U • P(0, v) P0v = [P00 P01 Pv00 Pv01] M V P(1, v) P1v = [P10 P11 Pv10 Pv11] M V. La fixation de l'un des 2 paramètres donne une courbe de Hermite de degré 3 en fonction de l'autre paramètre. La surface est donc constituée d'un réseau de 2 familles de courbes de Hermite de telle sorte qu'une seule courbe de chacune des 2 familles passe par chaque point P(u, v). Les vecteurs tangents à la surface en un point P(ui, vj) sont donnés par: PuuivjP(u, v) u u = ui v = vj Ceci constitue un plan tangent à la surface. PvuivjP(u, v) v u = ui v = vj
Surfaces paramétriques de degré 3 La formulation géométrique matricielle est donnée par Michael E. Mortenson : P(u, v) = Ut Mt B M V avec M = où 2 –3 0 1 -2 3 0 0 1 -2 1 0 1 -1 0 0 Ut = [u3 u2 u 1], Vt = [v3 v2 v 1], P(u,0) P(u,1) P(0,v) P(1,v) = B Il s’ensuit que : A = Mt B M ou encore B = (Mt) -1 A M-1
Calcul de Pu(u, v) et Pv(u, v) 0 6 -6 0 0 -6 6 0 0 3 -4 1 0 3 -2 0 Ut = [u3 u2 u 1], Vt = [v3 v2 v 1], Pu(u, v) = UtNtB M V avec N = Pv(u, v) = UtMtB N V Puv(u, v) = UtNtB N V Il s’ensuit que : • Pu(0, v) Pu0v = [Pu00 Pu01 Puv00 Puv01] M V • Pu(1, v) Pu1v = [Pu10 Pu11 Puv10 Puv11] M V • Pv(u, 0) Pvu0 = [Pv00 Pv10 Puv00 Puv10] M U • Pv(u, 1) Pvu1 = [Pv01 Pv11 Puv01 Puv11] M U. P(u,0) P(u,1) Pv(u,0) Pv(u,1) P(0,v) P(1,v) = B Pu(0,v) Pu(1,v)
Calcul d’une courbe intermédiaire P(u, v) Calcul de P(u, 0) Pu0 = [P00 P10 Pu00 Pu10] M U et P(u, 1) Pu1 = [P01 P11 Pu01 Pu11] M U. 1. • Calcul de Pv(u, 0) Pvu0 = [Pv00 Pv10 Puv00 Puv10] M U • Pv(u, 1) Pvu1 = [Pv01 Pv11 Puv01 Puv11] M U. 2. P(u, v) Puv = [P(u, 0)P(u, 1) Pv(u, 0)Pv(u, 1)] M V.
Subdivision exacte d’une surface bicubique en 9 sous-surfaces bicubiques vl w = 1 Nouvelle surface Q de Hermite vk w = 0
Subdivision exacte d’une surface bicubique en 9 sous-surfaces bicubiques Passage de [ui, uj] x [vk, vl] à [0, 1] x [0, 1] Reparamétrisation Q00 = Pik Q10 = Pjk Q01 = Pil Q11 = Pjl Qt00 = (uj - ui) Puik Qw00 = (vl - vk) Pvik Qt10 = (uj - ui) Pujk Qw10 = (vl - vk) Pvjk Qt01 = (uj - ui) Puil Qw01 = (vl - vk) Pvil Qt11 = (uj - ui) Pujl Qw11 = (vl - vk) Pvjl Qtw00 = (uj - ui) (vl - vk) Puvik Qtw10 = (uj - ui) (vl - vk) Puvjk Qtw01 = (uj - ui) (vl - vk) Puvil Qtw11 = (uj - ui) (vl - vk) Puvjl
Vecteur normal à la surface Propriétés des surfaces bicubiques Soit P(u, v) une telle surface, le vecteur normal unitaire à la surface P(u, v) au point (u, v) est de la forme suivante: N(u, v) = (Pu x Pv) / || Pu x Pv || où Pu x Pv = (puy pvz - pvy puz ) (puz pvx - pux pvz ) (pux pvy - puy pvx ) avec Pu= (pux , pvy , puz ) et Pv= (pvx , pvy , pvz ).
Surfaces bicubiques particulières Surface plane définie à l’aide d’un point Q et de 2 vecteurs r et s | | au plan Cette surface plane a la forme suivante: P(u,v) = Q + u r + v s, u,v [0,1] où Q Q + s s s B = Q+r Q+r+s s s r r 0 0 r r 0 0
Surfaces bicubiques particulières Surface cylindrique Un segment de droite Q0Q1 se déplace sur la courbe de Hermite P(u), u [0,1] tout en conservant une direction constante: P(u) + v (Q1 - Q0) u,v [0,1]avec P(0) = Q0. Q0 Q1 Q1- Q0 Q1- Q0 B = P(1) P(1) + Q1- Q0 Q1- Q0 Q1- Q0 pu0 pu0 0 0 pu1 pu1 0 0 segment
Surfaces bicubiques particulières Surface guidée Il s’agit de joindre 2 courbes de Hermite P(u) et Q(u) par le segment de droite P(u) – Q(u) pour tout u dans [0,1]. P(0) Q(0) Q(0) – P(0) Q(0) – P(0) B = P(1) Q(1) Q(1) – P(1) Q(1) – P(1) Pu0 Qu0 0 0 Pu1 Qu1 0 0 Cas spécial : Lorsque les 2 courbes de Hermite sont des segments de droite, nous avons un paraboloïde hyperbolique.