AnalyseNotion · Glossaire
Risensfeld (polynômes de)
Les polynômes de Riesenfeld, ou polynômes B-splines généralisés, sont des polynômes par morceaux définis par récurrence, utilisés en modélisation géométrique et en approximation. Ils généralisent les B-splines classiques. Leur raffinement permet d'insérer des nœuds et d'enrichir la représentation d'une courbe sans en modifier le tracé, principe essentiel en CAO.
Sommaire
Ce que vous allez apprendre
- Relier fonctions de base, points de contrôle et courbe B-spline.
- Calculer les cinq points de contrôle obtenus après l'insertion du nœud 0,5.
- Vérifier sur une équation et une figure que le tracé reste identique.
- Distinguer insertion d'un nœud et interpolation d'un point de la courbe.
En clair
Imaginez une courbe guidée par quatre points. On ajoute un repère à mi-chemin sur son paramètre : le tracé ne bouge pas, mais sa description gagne un point de contrôle. Dans l'illustration, le nouveau polygone de contrôle épouse plus étroitement la courbe.
Ce raffinement repose sur des polynômes par morceaux calculés par récurrence. Chacun n'agit que sur une zone limitée, reste positif ou nul et participe avec les autres à un total égal à 1.
Définition
Les polynômes de Riesenfeld sont ici les fonctions de base polynomiales par morceaux associées à une suite non décroissante de nœuds. Le paramètre est noté u, les nœuds sont notés ti et le degré est noté p. Au degré 0, la fonction Ni,0 vaut 1 sur l'intervalle allant de ti inclus à ti+1 exclu, et 0 ailleurs ; la valeur à l'extrémité droite du domaine se définit par continuité. Pour les degrés supérieurs, deux fonctions du degré précédent sont combinées par la récurrence suivante ; un quotient dont le dénominateur est nul est pris égal à 0 :
Avec des points de contrôle Pi, la courbe B-spline C est la somme des points pondérés par ces fonctions. Sur le domaine paramétrique usuel, les poids sont positifs ou nuls et leur somme vaut 1. Leur support limité donne le contrôle local. L'insertion d'un nœud recalcule les points de contrôle par combinaisons affines : la suite de nœuds et le polygone changent, mais la fonction C et son tracé restent exactement les mêmes.
Un exemple, pas à pas
Raffinons une B-spline quadratique plane. Les données sont : le degré p = 2 ; les points P0 = (0 ; 0), P1 = (1 ; 2), P2 = (3 ; 2) et P3 = (4 ; 0) ; le vecteur de nœuds (0, 0, 0, 1, 2, 2, 2) ; le nouveau nœud u = 0,5.
1. Les points extrêmes ne changent pas : Q0 = P0 = (0 ; 0), Q3 = P2 = (3 ; 2) et Q4 = P3 = (4 ; 0).
2. Entre P0 et P1, le coefficient vaut (0,5 − 0) ÷ (1 − 0) = 0,5. Ainsi Q1 = 0,5P0 + 0,5P1 = (0,5 ; 1).
3. Entre P1 et P2, le coefficient vaut (0,5 − 0) ÷ (2 − 0) = 0,25. Ainsi Q2 = 0,75P1 + 0,25P2 = (1,5 ; 2).
4. Le vecteur raffiné est (0, 0, 0, 0,5, 1, 2, 2, 2). Avant comme après l'insertion, la courbe est donnée, pour 0 ≤ u ≤ 2, par :
Le contrôle est refaisable au nœud inséré : C(0,5) = (1 ; 1,5) dans les deux représentations. La figure compare les deux polygones de contrôle et superpose à chacun le même tracé rouge.
En pratique
En CAO, on insère un nœud pour disposer de davantage de points de contrôle sans altérer le profil déjà validé. Le geste est utile avant une retouche locale ou une découpe du calcul en portions plus fines.
Pour évaluer ou afficher une courbe, le raffinement fournit une représentation plus détaillée du même objet. Si le but est au contraire de modifier la forme, il faut déplacer les nouveaux points après l'insertion.
Une courbe de Bézier unique convient à un seul arc gouverné globalement. Le raffinement B-spline est préférable lorsque plusieurs portions et un contrôle local doivent être conservés.
À ne pas confondre
Il faut distinguer les fonctions de base et la courbe B-spline. Les premières sont des polynômes par morceaux qui fournissent les poids ; la seconde est leur combinaison avec des points de contrôle. Sans points Pi, on calcule des poids, pas une courbe géométrique.
L'insertion d'un nœud n'est pas une interpolation d'un nouveau point de la courbe. Dans l'exemple, le nœud 0,5 fait passer le polygone de quatre à cinq points de contrôle ; plusieurs points de la nouvelle représentation, notamment Q1 et Q2, sont recalculés. Le point C(0,5) = (1 ; 1,5), lui, appartient au tracé. Ces positions ne coïncident pas.
Limites et pièges
Des nœuds répétés produisent des dénominateurs nuls dans la récurrence. Le terme correspondant doit alors être pris égal à 0 ; effectuer littéralement la division rendrait le calcul indéfini.
Insérer un nœud ne rend pas la courbe plus lisse et n'en change pas la forme. Si le tracé bouge immédiatement après l'insertion, les nouveaux points de contrôle ou leurs coefficients ont été mal calculés.
Le raffinement augmente la taille de la représentation : dans l'exemple, quatre points de contrôle deviennent cinq après une seule insertion. Répéter l'opération sans besoin local alourdit donc les données sans ajouter de nouvelle géométrie.
La définition par intervalles semi-ouverts exclut leur borne droite. Au dernier nœud du domaine, il faut prendre la valeur limite de la courbe ; appliquer mécaniquement le seul test « borne gauche incluse, borne droite exclue » donnerait à tort des poids tous nuls.
Pour aller plus loin
La fiche B-Spline reprend la construction d'une courbe à partir de points de contrôle, d'un degré et de fonctions de base.
Le Vecteur noeud précise comment les nœuds découpent le domaine paramétrique et règlent le support des fonctions de base.
La spline cubique prolonge l'étude des polynômes par morceaux en se concentrant sur le degré 3 et les raccordements.
Explorez les mathématiques autrement
Retrouvez nos magazines, podcasts et jeux pour explorer les mathématiques autrement.
Découvrir les offres
