- B-spline
-
En mathématiques, une B-spline est une combinaison linéaire de splines positives à support compact minimal. Les B-splines sont la généralisation des courbes de Bézier, elles peuvent être à leur tour généralisées par les NURBS.
Sommaire
Définition
Étant donné m+1 nœuds ti dans [0, 1] avec
une courbe spline de degré n est une courbe paramétrique
composée de fonctions B-splines de degré n
- ,
où les Pi forment un polygone appelé polygone de contrôle ; le nombre de points composant ce polygone est égal à m-n.
Les m-n fonctions B-splines de degré n sont définies par récurrence sur le degré inférieur :
Quand les nœuds sont équidistants, c’est-à-dire quand ils sont en progression arithmétique, les B-splines sont dites « uniformes » : c'est le cas des courbes de Bézier qui sont des B-splines uniformes, dont les nœuds ti (pour i entre 0 et m) forment une suite arithmétique de 0 à 1 avec un pas constant 1/m, et où le degré n de la courbe de Bézier ne peut être supérieur à m).
Par extension, lorsque deux nœuds successifs tj et tj + 1 sont confondus, on pose : cela a pour effet de définir une discontinuité de la tangente, pour le point de la courbe paramétré par une valeur de t, donc d'y créer un sommet d'angle non plat ; toutefois il est souvent plus simple de définir ce « B-spline étendu » comme l'union de deux B-splines définis avec des nœuds distincts, ces splines étant simplement joints par ce sommet commun, sans introduire de difficulté dans l'évaluation paramétrique ci-dessus des B-splines pour certaines valeurs du paramètre t. Mais cela permet de considérer alors tout polygone simple comme un B-spline étendu.
Propriétés
La forme des fonctions de base est déterminée par la position des nœuds.
La courbe est à l'intérieur de l'enveloppe convexe des points de contrôle.
Une B-spline de degré n
- bi,n(t)
est non nulle dans l'intervalle [ti, ti+n+1] :
En d'autres termes, déplacer un point de contrôle ne modifie que localement l'allure de la courbe.
Liens internes
Liens externes
- (en) Splines: A unifying framework for image processing (tutoriel sur les B-splines).
- (en) B-splines of third order on a non-uniform grid (formules de B-splines cubiques).
Wikimedia Foundation. 2010.