La présentation est en train de télécharger. S'il vous plaît, attendez

La présentation est en train de télécharger. S'il vous plaît, attendez

Cours GPA445 Conception assistée par ordinateur Courbes complexes Par Antoine Brière-Côté, ing.jr, M.Ing. Génie de la production automatisée École de technologie.

Présentations similaires


Présentation au sujet: "Cours GPA445 Conception assistée par ordinateur Courbes complexes Par Antoine Brière-Côté, ing.jr, M.Ing. Génie de la production automatisée École de technologie."— Transcription de la présentation:

1 Cours GPA445 Conception assistée par ordinateur Courbes complexes Par Antoine Brière-Côté, ing.jr, M.Ing. Génie de la production automatisée École de technologie supérieure adapté de Louis Rivest, ing., Ph.D. et de Roland Maranzana, Dr.Ing. Été 2013

2 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 2 Thèmes abordés Rappel sur la représentation paramétrique Points-clés et contraintes Interpolation et approximation Courbes polynomiales cubiques Interpolation de Lagrange Interpolation de Hermite Courbes de Bézier Algorithme de De Casteljau Courbe Spline Courbe B-Spline (aperçu) Chapitre 7 notes de cours ©A.B.Côté, adapté de L.Rivest & R.Maranzana

3 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Forme paramétrique générale dune courbe en 3D: où x(u), y(u) et z(u) sont les composants de chaque point de la courbe évaluée en u dans lintervalle [u 0,u 1 ]. Forme réduite en 2D: Figure: a, b, c et d, des valeurs discrètes du paramètre u telles que u 0 < a < b < c < d < u 1. Courbes complexes 3 Représentation paramétrique ©A.B.Côté, adapté de L.Rivest & R.Maranzana y x

4 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure La dérivé première en u dune courbe paramétrique donne lensemble des vecteurs tangents: où x(u), y(u) et z(u) sont les composants de chaque vecteurs tangents de la courbe évaluée en u dans lintervalle [u 0,u 1 ]. Courbes complexes 4 Représentation paramétrique ©A.B.Côté, adapté de L.Rivest & R.Maranzana y x

5 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales Les courbes analytiques sont insuffisantes pour répondre aux exigences de conception géométrique des pièces mécaniques: Carrosseries de voitures, Coques de navire, Fuselages et ailes daéronefs, On doit avoir recours aux courbes complexes ou « synthétiques » lorsquune courbe est dabord représenté par une collection de points de contrôle. Objectif: construire une courbe lisse qui interpole ou approxime un ensemble ordonné de points de contrôle. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 5 Pales dhélices, Semelles de chaussures, Bouteilles de toute sorte, etc.

6 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales La forme générale déquation paramétrique des courbes complexes est la forme polynomiale: a i sont des vecteurs de coefficients… … de dimension 2 pour une courbe dans lespace 2D, … de dimension 3 pour une courbe dans lespace 3D; u i sont les fonctions de base, définies sur un domaine limité; Une équation polynomiale de degré n (degré du monôme le plus élevé) représente une courbe de degré n. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 6

7 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Une courbe unique de degré n permet dinterpoler ou dapproximer n + 1 points de contrôle; Exemple: Linterpolation de 2 points donne une droite, représentée par un polynôme de degré 1; Courbes polynomiales ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 7 y x

8 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales Pour construire une courbe à laide dun ensemble ordonné de N points de contrôle, on peut… Construire une seule courbe utilisant tous les points; le degré de la courbe est donc dépendant du nombre de points (N – 1). Construire plusieurs segments consécutifs de courbes de degré imposé n utilisant chacun un sous-ensemble de n + 1 points de contrôle. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 8 Courbe uniqueCourbe par segments

9 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales Les courbes (polynômes) de degré élevé ne sont habituellement pas utilisés en CAO, car: Elles ont tendance à osciller de manière indésirable au voisinage des points de contrôle; Elles accaparent énormément de ressources de calcul dun ordinateur; Leurs représentations internes nest pas concise; i.e., occupent inutilement beaucoup despace mémoire. En CAO, on utilise la définition de courbes par morceaux à laide de segments des courbes polynomiales de degré 3. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 9

10 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Exemple: Construction d'une courbe par des arcs de cercle C'est le principe des courbes définies par morceaux; Des conditions de tangence donne une pente continue et dérivable en tout point; Cette méthode est utilisée pour définir des trajectoires d'outils en fabrication assistée par ordinateur (FAO). Courbes polynomiales ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 10

11 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes Différentes exigences de continuité des profils peuvent être spécifiées dans la conception des pièces mécaniques: Aérodynamisme dun fuselage ou dune aile; Fluidité de mouvement dun galet parcourant une came; etc. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 11 https://upload.wikimedia.org/wikipedia/commons/d/d3/Came1.gif

12 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes Lordre de continuité prend de limportance lorsque les courbes complexes sont définies par segments; Le plus petit ordre de continuité spécifié à un point de jonctions de deux segments définit lordre de continuité de la courbe résultante; On distingue la continuité géométrique de la continuité paramétrique: Continuité géométrique (G x ): continuité ou « aspect lisse » de la courbe résultante; Continuité paramétrique (C x ): continuité dans le traçage de la courbe, dans le déplacement de la particule. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 12

13 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes G 0 : Continuité géométrique dordre 0 Deux segments de courbes forment une courbe continue G 0 si celle-ci est ininterrompue au point de jonction; Appelée aussi continuité de position; Correspond à une courbe tracée sans lever le crayon… Soit P 1 (u) et P 2 (u) définies sur u [0,1]; P 1 (1) étant le point darrivée de P 1, et P 2 (0) étant le point de départ de P 2 ; P 1 et P 2 sont continues G 0 si P 1 (1) = P 2 (0). ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 13 pentes ou tangentes

14 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes G 1 : Continuité géométrique dordre 1 Deux segments de courbes forment une courbe continue G 1 si la pente au point de jonction est la même pour les deux segments; Appelée aussi continuité de pente ou tangence; On fait correspondre la direction des vecteurs tangents. Soit P 1 (u) et P 2 (u) définies sur u [0,1]; P 1 (1) étant la tangente en P 1 (1) (départ), P 2 (0) étant la tangente en P 2 (0) (fin); P 1 et P 2 sont continues G 1 si ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 14 pente

15 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes C 1 : Continuité paramétrique dordre 1 G 1 correspond à la continuité de la direction du vecteur tangent; C 1 implique G 1 ET la continuité de la grandeur du vecteur tangent; Correspond au tracé dune courbe lisse sans changement brusque de vitesse; On fait correspondre les dérivées premières au point de jonction. Soit P 1 (u) et P 2 (u) définies sur u [0,1]; P 1 (1) étant la tangente en P 1 (1) (départ), P 2 (0) étant la tangente en P 2 (0) (fin); P 1 et P 2 sont continues C 1 si ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 15 pente

16 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes G 2 : Continuité géométrique dordre 2 Deux segments de courbes forment une courbe continue G 2 si le centre de courbure au point de jonction est le même pour les deux segments; Appelée aussi continuité de courbure; Pour P(u) = [ x(u) y(u) ], le rayon de courbure ρ(u) est défini par léquation: ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 16 pente centre de courbure

17 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Ordre de continuité des courbes C 2 : Continuité paramétrique dordre 2 Deux segments de courbes forment une courbe continue C 2 si leurs dérivées secondes respectives au point de jonction sont égales; Correspond au déplacement sans secousse dun particule dont la vitesse et laccélération (tangentielle et normale) varient graduellement. En somme… En modélisation, on sintéresse surtout à continuité géométrique. En analyse, la continuité paramétrique peut être une condition nécessaire aux calculs basés sur la géométrie. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 17

18 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Interpolation et approximation Définition d'une courbe en fonction d'un ensemble de points: Interpolation Approximation ou lissage Interpolation: La courbe passe exactement par les points; Le degré de la courbe dépend du nombre de points de contrôle (et d'autres conditions éventuellement); Le nombre de points doit rester faible pour limiter le degré de la courbe; Approximation: Déterminer une courbe qui décrit au mieux un ensemble de points; Ces points sont souvent de nature expérimentale (numérisation). ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 18

19 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Interpolation et approximation Approximation (suite) La courbe d'approximation peut être contrainte de diverses manières: Limiter le degré de la courbe; Limiter l'erreur maximale tolérée (ex.: moindre carré); Appropriée lorsque le nombre de points est élevé; Remplacement d'une courbe dont l'équation est inconnue ou mal adaptée au traitement numérique; Exprimer différentes types de courbes sous une forme unifiée; Passage points -> courbes ? ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 19

20 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 20 Interpolation et approximation Influence des points sur la courbe: Cas 1: courbe interpole les points, 2 pts: droites, 3 pts: coniques (ex. arc de cercle), 4 pts: polynôme cubique; Cas 2: Courbe approxime les points, Modifiable globalement; Cas 3 Courbe approxime les points, Modifiable localement; Le comportement dune courbe au déplacement dun point dépend de son type de courbe. Adapté du cours GMC405, Prof. Alain Desrochers McMahon p1 p0 p3 p2 p5 p0 p1 p2 p3 p4 p5 p0 p1 p2 p3 p4 ©A.B.Côté, adapté de L.Rivest & R.Maranzana

21 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Équation paramétrique polynomiale de degré 3: (représentation algébrique) (représentation vectorielle) 2 équations algébriques, u ϵ [0,1] (3 éq. en 3D), 8 inconnus a i, b i, c i, d i avec i = 1, 2; Fixer ou modifier les valeurs des coefficients algébriques a i, b i, c i, d i ne permet pas de contrôler facilement la forme de la courbe; Contraintes géométriques, G, pour définir la courbe de degré 3: Lagrange: 4 points interpolés correspondant à 4 valeurs de u; Hermite: 2 points extrémités et 2 vecteurs tangents en ces points. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 21

22 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Interpolation de Lagrange (2D) Soit les équations du polynôme : Linterpolation de Lagrange utilise quatre points (P 0 à P 3 ); On obtient donc un système de huit équations correspondant aux coordonnées x et y de chaque point; La résolution fournit les valeurs des paramètres a i, b i, c i et d i. p1 p0 p3 p2 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 22

23 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Interpolation de Lagrange (suite) Exemple: Déterminer l'équation polynômiale cubique de la courbe passant par les 4 points suivants: u 0 = 0; P 0 = P(u 0 ) = (0, 0) u 1 = 0,33;P 1 = P(u 1 ) = (1, 1) u 2 = 0,66; P 2 = P(u 2 ) = (2, 0) u 3 = 1;P 3 = P(u 3 ) = (3, 1) Trouver a x, b x, c x, d x et a y, b y, c y, d y … Courbes polynomiales cubiques x y P1P1 P2P2 P3P3 P0P0 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 23

24 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Interpolation de Lagrange (suite) Exemple en 2D: Expression matricielle… Résolution matricielle… Courbes polynomiales cubiques x y P1P1 P2P2 P3P3 P0P0 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 24

25 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Interpolation de Lagrange (fin) Inconvénients principaux: Le degré de la courbe est directement lié au nombre de points interpolés (n+1) points = degré n; Dans le cas dune seule courbe, plus il y a de points, plus il y a des oscillations indésirables dans la courbe. Démo… (http://www.math.ucla.edu/~baker/java/hoefer/TwoDemos.htm)Démo Dans le cas dune courbe par segments, on contrôle difficilement les conditions aux limites des segments, donc la continuité de la courbe résultante. Courbes polynomiales cubiques ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 25

26 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Interpolation de Hermite (2D) Soit les équations du polynôme : Linterpolation de Hermite utilise deux points P 0 et P 1 et leurs pentes respectives P 0 et P 1 pour déterminer les 8 inconnues. p0' p1' p0p1 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 26

27 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Interpolation de Hermite (suite) La pente de la courbe p sobtient en dérivant l'équation p(u) par rapport à u: En appliquant les conditions frontières P 0, P 1, P 0 et P 1, on obtient un système de quatre équations vectorielles et quatre vecteurs inconnus: ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 27

28 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Interpolation de Hermite (suite) Le contrôle de la courbe est plus intuitif à partir des points limites P 0 et P 1, et des vecteurs tangents P 0 et P 1; Ce système est donc remanié pour extraire les k i, ce qui donne: Léquation originale de P(u) peut finalement être réécrite : ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 28

29 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Interpolation de Hermite (suite) Sous forme matricielle… M H : Matrice des coefficients de Hermite; G H : Vecteur des contraintes géométriques de Hermite. MHMH GHGH ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 29

30 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure u 10 Courbes polynomiales cubiques Interpolation de Hermite (suite) Léquation obtenue est la somme de quatre fonctions en u multipliées par les conditions frontières P 0, P 1, P 0 et P 1 : Ces fonctions s'appellent les fonctions dinfluence (blending functions) Leur représentation graphique est illustrée ici… (P 1 ) 3u 2 - 2u 3 (P 0 ) 1 - 3u 2 + 2u 3 (P 0) u - 2u 2 + u 3 (P 1) -u 2 + u 3 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 30

31 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes polynomiales cubiques Interpolation de Hermite (suite) Les fonctions dinfluence ou fonctions de base sont un concept fondamental en CAO; Elles seront appliquées à dautres types de courbes; Ces fonctions représentent le long de lintervalle de u, linfluence respective des conditions frontières : Points de départ et d'arrivée, Vecteurs tangents, ou pentes, aux points de départ et darrivée. Exercice: Déterminer l'équation polynômiale cubique pour les contraintes de Hermite suivantes: P 0 = (1,1) ; P 1 = (2,3) ; P 0 = (1,1) ; P 1 = (1,1) ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 31

32 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 32 Courbes polynomiales cubiques Interpolation de Hermite (suite) Effet de la variation de la grandeur du vecteur P 0: Figure 11.14, Foley ©A.B.Côté, adapté de L.Rivest & R.Maranzana P0'P0' P1'P1' y(u) x(u) P1P1 P0P0

33 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 33 Courbes polynomiales cubiques Interpolation de Hermite (suite) Effet de la variation de direction du vecteur P 0: Figure 11.15, Foley ©A.B.Côté, adapté de L.Rivest & R.Maranzana y(u) x(u) P0'P0' P1'P1' P1P1 P0P0

34 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 34 Courbes polynomiales cubiques Jonction de deux courbes de lHermite Les deux courbes doivent avoir un point commun = G 0 (C 0 ): Mortenson P 1 (0) P 1 (1) P 2 (1) P 1 u (0) P 1 u (1) P 2 u (0) P 2 u (1) 1 2 G 1 = [P 1 (0) P 1 (1) P 1 u (0) P 1 u (1)] T G 2 = [P 2 (0) P 2 (1) P 2 u (0) P 2 u (1)] T = P 2 (0) ©A.B.Côté, adapté de L.Rivest & R.Maranzana

35 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 35 Courbes polynomiales cubiques Jonction de deux courbes de lHermite (suite) Les vecteurs de tangence au point commun ont… La même direction (G 1 ); Les mêmes direction et grandeur (C 1 ); Mortenson P 1 u (0) P 2 u (0) P 2 u (1) G 1 = [P 1 (0) P 1 (1) P 1 u (0) P 1 u (1)] T G 2 = [P 2 (0) P 2 (1) P 2 u (0) P 2 u (1)] T = P 2 (0) = P 1 u (1) 1 2 P 1 (0) P 1 (1) P 2 (1) ©A.B.Côté, adapté de L.Rivest & R.Maranzana

36 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 36 Courbes polynomiales cubiques Jonction de deux courbes de lHermite (suite) Conditions de continuité G 1 aux 2 extrémités du segment 2; Mortenson ©A.B.Côté, adapté de L.Rivest & R.Maranzana

37 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 37 Courbes polynomiales cubiques Jonction de deux courbes de lHermite (suite) Vecteur géométrique du segment 2: Équation générale pour G 1 au segment i: Mortenson Conditions requises pour continuité C 1 ? ©A.B.Côté, adapté de L.Rivest & R.Maranzana

38 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 38 Courbes de Bézier Introduction Pierre Bézier, ingénieur chez Renault; Initialement pour la définition de panneaux de carrosserie; Vise à fournir un moyen intuitif pour définir courbes 3D… Pas de tangente à spécifier, contrairement à lHermite; Utilisation dun polygone de contrôle; 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. Adapté du cours GMC405, Prof. Alain Desrochers ©A.B.Côté, adapté de L.Rivest & R.Maranzana

39 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure 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: P 0 et P 3 de Bézier équivalent à P 0 et P 1 de Hermite; P 1 et P 2 de Bézier sont définis comme étant au tiers de la longueur des vecteurs de tangence P 0 et P 1 de Hermite; Ici, la proportion du tiers correspond à linverse du degré du polynôme (1/n). Les vecteurs tangents en P 0 et P 3 peuvent alors sécrire : P 0 = 3(P 1 - P 0 ) P 3 = 3(P 3 - P 2 ) Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 39

40 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure 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): Courbes de Bézier P0P0 P1P1 P 1 P 0 P0P0 P1P1 P2P2 P3P3 HermiteBézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 40

41 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure u 10 Courbes de Bézier Définition mathématique (courbe polynomiale cubique) Substitution dans la forme finale du polynôme de Hermite : On obtient: Fonctions dinfluence correspondantes: (P 0 ) 1 - 3u + 3u 2 - u 3 (P 3 ) u 3 (P 1 ) 3u - 6u 2 + 3u 3 (P 2 ) 3u 2 - 3u 3 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 41

42 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes de Bézier Représentation matricielle (courbe polynomiale cubique) Léquation obtenue peut être exprimée sous forme matricielle: M B : Matrice des coefficients de Bézier; G B : Vecteur des contraintes géométriques de Bézier. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 42 MBMB GBGB

43 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Formulation générale de Bézier-Bernstein (degré n) Fonction dinfluence : fonction polynomiale de Bernstein: Ces fonctions peuvent être représentée graphiquement comme précédemment par (n + 1) courbes. Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 43

44 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes de Bézier Caractéristiques principales des courbes de Bézier La courbe passe par les premier et dernier points; La dérivée n ième de la courbe au point de départ ou darrivée dépend des (n + 1) points voisins du polygone; Dérivée première : La courbe est tangente aux vecteurs formés par les 2 premiers et les 2 derniers points; Propriété intéressante pour raccorder des courbes de Bézier avec des contraintes de continuité; Pour tous les autres points intermédiaires, la courbe adoucit la forme du polygone en atténuant ses variations; La courbe se situe toujours à lintérieur de lenveloppe convexe formée par le polygone de contrôle. ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 44

45 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Caractéristiques principales des courbes de Bézier (suite) La même courbe est générée en inversant lordre des points dans le polynôme de contrôle Exemple numérique: Courbes de Bézier P 3 (1,1) P 2 (3,3) P 1 (5,3) P 0 (6,2) P 0 (1,1) P 1 (3,3) P 2 (5,3) P 3 (6,2) ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 45

46 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes de Bézier Caractéristiques principales des courbes de Bézier (suite) Effet du déplacement dun 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: P 0 (0,0) P 1 (0,1) P 2 (1,1) P 2 (2,1) P 3 (1,0) ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 46

47 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure 1 point en P i 2 points en P i 3 points en P i n = 3 Caractéristiques principales des courbes de Bézier (suite) Un point du polygone de contrôle peut être un point double ou triple ou même équivalent à n points; Effet dattirance lorsquun point du polygone de contrôle est un… Point simple, Point double, Point triple; Le degré du polynôme augmente! Courbes de Bézier n = 2 n = 4 PnPn P0P0 PiPi ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 47

48 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Caractéristiques principales des courbes de Bézier (suite) Courbe fermé: G 0 : Premier et dernier points coïncidents; G 1 : ET points adjacents colinéaires; C 1 : …? Courbes de Bézier P0P0 P1P1 P2P2 P3P3 P4P4 P5P5 P6P6 P0P0 P1P1 P2P2 P3P3 P4P4 P5P5 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 48

49 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure 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é G 1 à la jonction de deux segments de courbe de Bézier: Dernier point du polygone j = 1 er 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. 5 pts Degré 4 4 pts Degré 3 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 49

50 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes de Bézier Une courbe de Bézier est modifiable globalement. Modification d'un point du polygone Courbe modifiée globalement ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 50

51 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Caractéristiques principales des courbes de Bézier (fin) Lorsque la courbe à représenter devient complexe (beaucoup de points), le degré de la courbe augmente; En modifiant un point de contrôle du polygone, toute la courbe est affectée; Lorsque le degré du polynôme augmente, la courbe peut osciller; La charge de calcul augmente avec le degré de la courbe; Compromis: courbes complexes représentées par plusieurs courbes de Bézier de degré moindre; Inconvénients: l'édition de la courbe par segments tout en maintenant la continuité G 1 aux jonctions est pénible; Les limitations des courbes de Béziers proviennent de ses fonctions dinfluence (blending functions). Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 51

52 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Exercice: Polygone de contrôle P 0 (0, 0) P 1 (0.3, 1) P 2 (0.6, 0.8) P 3 (1, 0) 1. Déterminer léquation de la courbe de Bézier suivant la formulation de Bernstein. 2. Tracer la courbe de Bézier avec les points intermédiaires suivants: 2.1) u = ) u = 0.6 Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 52

53 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Solution 1. Formulation de Bernstein: trouver les fonctions dinfluence… Courbe de Bézier passant par 4 points Degré n = 3. Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 53

54 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Solution 1. Équation de Bézier-Bernstein: Équations algébriques paramétriques: Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 54

55 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure y(u)y(u) x(u)x(u) Solution: 2.1) x(0.3) = y(0.3) = ) x(0.6) = y(0.6) = Courbes de Bézier P 0 (0,0) P 1 (0.3,1) P 2 (0.6,0.8) P 3 (1,0) Q(0.3) Q(0.6) ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 55

56 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure 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/(u max -u min ); 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… Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 56

57 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Algorithme de De Casteljau Courbes de Bézier Découpe du polygone de contrôle au paramètre u = 0.5 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 57

58 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Algorithme de De Casteljau Courbes de Bézier Nouveaux segments sous polygone de contrôle ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 58

59 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Algorithme de De Casteljau Courbes de Bézier Découpe du sous polygone de contrôle au paramètre u =0.5 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 59

60 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Algorithme de De Casteljau Courbes de Bézier Nouveau segment sous polygone de contrôle ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 60

61 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Algorithme de De Casteljau Courbes de Bézier Q(0.5) ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 61

62 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Algorithme de De Casteljau 2. Déterminer et tracer les points de la courbe pour u = 0.3 et u = 0.6… Courbes de Bézier u = 0.5u = 0.3u = 0.6 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 62

63 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Exercice (à vous de le faire!) Points de contrôle P 0 (1,1) P 1 (3,4) P 2 (4,2) P 3 (5,3) P 4 (6,0) Quel est le degré de la courbe? Calculer léquation de la courbe de Bézier; Tracer la courbe de Bézier en utilisant lalgorithme de De Casteljau en prenant le point intermédiaire u = 0.5. Courbes de Bézier ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 63

64 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes de Bézier Solution 1) Degré 4 2) B 0,4 = (1 - u) 4 B 1,4 = 4u(1-u) 3 B 2,4 = 6u 2 (1-u) 2 B 3,4 = 4u 3 (1-u) B 4,4 = u 4 P(u) = (1-u) 4 *P 0 + 4u*(1-u) 3 *P 1 + 6u 2 *(1-u) 2 *P 2 + 4u 3 *(1-u)*P 3 + u 4 *P 4 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 64

65 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes de Bézier Solution P 0 (1,1) P 1 (3,4) P 2 (4,2) P 3 (5,3) P 4 (6,0) Découpe du sous polygone de contrôle au paramètre u = 0.5 ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 65

66 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes par morceaux: Une solution aux inconvénients des courbes de Bézier: Les fonctions de base ne doivent pas dépendre du nombre de points de contrôle; La courbe doit être modifiable localement; Principes des courbes par morceaux: Remplacer un polynôme de degré élevé qui passe, ou est contrôlé, par de nombreux points, par plusieurs courbes de degré plus faible, plus faciles à manipuler par l'opérateur et aussi d'un point de vue numérique; Exemple: Au lieu d'une courbe contrainte par 10 points… 9 segments de courbes polynômiales cubiques passant chacune par 2 points et respectant des contraintes de continuité en ces points. Courbe Spline ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 66

67 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Exemple: Courbe par morceaux Problème: L'attribution de la valeur du paramètre u au point P i ; La valeur de u devrait être proportionnelle à la longueur parcourue (Au moment de la construction, la courbe est inconnue!). Courbe Spline Segment 1 Segment i+1 u=u0u=u0 u=u1u=u1 u=uiu=ui u=u i+1 u=unu=un Segment n u=u n-1 S 1 (u); u ϵ [u 0,u 1 ] S i+1 (u); u ϵ [u i,u i+1 ] S n (u); u ϵ [u n-1,u n ] S i (u); u ϵ [u i,u i+1 ]: Une fonction polynômiale de degré m P0P0 P1P1 PiPi P i+1 P n-1 PnPn ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 67

68 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Principes des courbes par morceaux (suite): Les fonctions de base doivent être non nulles uniquement sur une partie limitée de l'espace paramétrique; La partie non nulle de chaque fonction de base est différente; La courbe résultante n'est affectée que par un nombre réduit de points; modifiable localement Courbe composite qui a l'apparence d'une courbe unique; Les segments de courbe ainsi reliés doivent au minimum être des courbes polynomiales cubiques (le plus petit degré qui permet de décrire une courbe en 3D); Le nom Spline est utilisé pour nommer ces courbes: Spline désigne un instrument utilisé historiquement par plusieurs corps de métier pour tracer les courbes complexes (latte ou cerce, en français). Courbe Spline ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 68

69 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 69 Courbe Spline Courbe polynômiale par intervalles; Pour chaque morceau on définit: Ordre ou degré des polynômes, Plage du paramètre, Ordre de continuité aux jonctions; Chaque morceau réuni peut sécrire sous la forme: Avec: ule paramètre de la courbe, f(u)la fonction polynômiale, G i la i ème information géométrique, N i la i ème fonction de base ou dinfluence. ©A.B.Côté, adapté de L.Rivest & R.Maranzana

70 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 70 Courbe Spline Une fonction spline de degré m et dordre de continuité r est une fonction polynomiale par intervalles de degré m, définie par exemple sur n intervalles : Lordre de continuité dune fonction est r si ses (r-1) premières dérivées sont continues; Elle satisfait les conditions de continuité de la j ième dérivée de f aux valeurs nodales: Soit la continuité de f et de ses r-1 premières dérivées aux frontières des intervalles. ©A.B.Côté, adapté de L.Rivest & R.Maranzana

71 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 71 Courbe Spline cubique Les splines cubiques sont des courbes polynômiales par morceaux dont chaque segment est représenté par un polynôme de degré 3; Une façon de représenter un segment de spline cubique est dutiliser comme informations géométriques: La position des points aux deux extrémités, Le vecteur tangent à chaque extrémité;… … LHermite! p 0 p 1 p0p0 p1p1 ©A.B.Côté, adapté de L.Rivest & R.Maranzana

72 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Cette courbe est connue sous le nom de courbe spline cubique à dérivée seconde continue (degré m = 3, ordre r = 3); Soit (n+1) points à interpoler, donc n segments sont nécessaires: Chaque segment possède 4 inconnues, donc 4(n) inconnues à résoudre; Chaque segment passe par le point de départ et d'arrivée, donc 2(n) premières contraintes géométriques (continuité de position, C 0 ); Respecter les pentes en chaque point de connexion, donc (n-1) autres contraintes géométriques (continuité en tangence, C 1 ); Respecter les courbures (en fait simplifié en respectant les dérivés secondes), donc (n-1) autres contraintes (continuité en courbure, C 2 ); Il manquent encore 2 contraintes. Plusieurs solutions sont proposées: Pentes paramétriques nulles aux extrémités (P 1 '(u 0 ) = 0 et P n '(u n ) = 0) Courbures nulles aux extrémités (P 1 ''(u 0 ) =0 et P n ''(u n ) = 0) Les pentes aux extrémités explicitement données (dy/dx: pente géométrique; dy/du et dx/du: pentes paramétriques). Courbe Spline cubique ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 72

73 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Modification globale « atténuée » … En s'éloignant du point modifié, les effets deviennent minimes; Spline cubique: pas de continuité C 3 (r = 3); Continuité C 3 : utilisée pour les profils de came ou des analyses aérodynamiques; Solution: utiliser un polynôme de degré n > 3; Pour un polynôme de degré n, une continuité à la dérivée n-1 servira de contrainte en chaque point. Courbe Spline cubique [McMahon et Browne] Point déplacé ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 73

74 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 74 Courbe B-spline Caractéristiques: Généralisation par segment de lapproche de Bézier; Courbe approximative à variation locale; Pas de limitation sur le nombre de points de contrôle; Le degré de la courbe est indépendant du nombre de points de contrôle; Chaque segment de la courbe possède ses propres fonctions dinfluence («blending functions») dont les valeurs sont non- nulles uniquement pour lintervalle correspondant; La courbe B-spline est contenue à lintérieur de son polygone de contrôle; Elle peut ou non passer par les points aux extrémités. Adapté du cours GMC405, Prof. Alain Desrochers ©A.B.Côté, adapté de L.Rivest & R.Maranzana

75 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbe B-spline Une courbe de Bézier par segment, ou B-spline, est modifiable localement ? Modification d'un point du polygone Courbe modifiée localement ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 75

76 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 76 Courbe B-spline Exemple: Expression matricielle de la forme B-Spline uniforme non-rationnelle dordre K = 4 (degré m = 3): Expression polynômiale de la forme B-Spline uniforme non- rationnelle dordre K = 4 (degré m = 3): Adapté du cours GMC405, Prof. Alain Desrochers ©A.B.Côté, adapté de L.Rivest & R.Maranzana

77 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 77 Courbe B-spline Exemple: B-Spline uniforme non-rationnelle dordre 4, sur (n+1) = 10 points, donc composée de 7 segments (Q 3 à Q 9 ); Foley y(u)y(u) x(u)x(u) P0P0 P1P1 P2P2 P3P3 P4P4 P5P5 P6P6 P7P7 P8P8 P9P9 Q3Q3 Q4Q4 Q5Q5 Q6Q6 Q7Q7 Q8Q8 Q9Q9 Point de contrôle Nœud u3u3 u4u4 u5u5 u6u6 u7u7 u8u8 u9u9 u 10 ©A.B.Côté, adapté de L.Rivest & R.Maranzana

78 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Courbes complexes 78 Courbe B-spline Exemple: Contrôle local dune B-Spline uniforme non-rationnelle dordre 4, sur (n+1) = 9 points, composée de 6 segments (Q 3 à Q 8 ); Foley y(u)y(u) x(u)x(u) P0P0 P1P1 P2P2 P3P3 P5P5 P6P6 P7P7 P8P8 Q3Q3 Q4Q4 Q5Q5 Q6Q6 Q7Q7 Q8Q8 Point de contrôle Nœud P 4 P4P4 Courbe avec P 4 u3u3 u4u4 u9u9 u8u8 ©A.B.Côté, adapté de L.Rivest & R.Maranzana

79 GPA445 - Conception Assistée par Ordinateur École de technologie supérieure Exemple Courbe B-spline non-uniforme non-rationnelle pour n = 5 et K = 3; Fonctions de base (n=5 et K=3). Courbes B-spline p0 p1 p2 p3 p4 p5 p4' N 0,3 (u) N 3,3 (u) N 4,3 (u) N 5,3 (u) N 2,3 (u) N 1,3 (u) ©A.B.Côté, adapté de L.Rivest & R.Maranzana Courbes complexes 79


Télécharger ppt "Cours GPA445 Conception assistée par ordinateur Courbes complexes Par Antoine Brière-Côté, ing.jr, M.Ing. Génie de la production automatisée École de technologie."

Présentations similaires


Annonces Google