B-spline


En el subcampo matemático del análisis numérico , un B-spline o spline base es una función spline que tiene un soporte mínimo con respecto a un grado , suavidad y partición de dominio dados. Cualquier función spline de un grado dado se puede expresar como una combinación lineal de B-splines de ese grado. Los B-splines cardinales tienen nudos que son equidistantes entre sí. Los B-splines se pueden utilizar para el ajuste de curvas y la diferenciación numérica de datos experimentales.

En el diseño asistido por computadora y gráficos por computadora , las funciones spline se construyen como combinaciones lineales de B-splines con un conjunto de puntos de control.

El término "B-spline" fue acuñado por Isaac Jacob Schoenberg [1] y es la abreviatura de base spline. [2] Una función spline de orden es una función polinomial por partes de grado en una variable . Los lugares donde se unen las piezas se conocen como nudos. La propiedad clave de las funciones spline es que ellas y sus derivadas pueden ser continuas, dependiendo de las multiplicidades de los nodos.

Las B-splines de orden son funciones base para funciones spline del mismo orden definidas sobre los mismos nodos, lo que significa que todas las posibles funciones spline se pueden construir a partir de una combinación lineal de B-splines, y solo hay una combinación única para cada función spline. . [3]

Un spline de orden es una función polinomial por partes de grado en una variable . Los valores de donde se encuentran las piezas del polinomio se conocen como nudos, se denotan y clasifican en orden no decreciente. Cuando los nudos son distintos, las primeras derivadas de las piezas del polinomio son continuas en cada nudo. Cuando los nudos son coincidentes, solo las primeras derivadas de la spline son continuas a lo largo de ese nudo.

Para una secuencia dada de nudos, existe, hasta un factor de escala, una spline única que satisface


Curva spline dibujada como una suma ponderada de B-splines con puntos de control/polígono de control y curvas de componente marcadas
B-spline cuadrático cardinal con vector de nudo (0, 0, 0, 1, 2, 3, 3, 3) y puntos de control (0, 0, 1, 0, 0), y su primera derivada
B-spline cúbico cardinal con vector de nudo (−2, −2, −2, −2, −1, 0, 1, 2, 2, 2, 2) y puntos de control (0, 0, 0, 6, 0, 0, 0), y su primera derivada
B-spline cuartico cardinal con vector de nudo (0, 0, 0, 0, 0, 1, 2, 3, 4, 5, 5, 5, 5, 5) y puntos de control (0, 0, 0, 0, 1) , 0, 0, 0, 0), y sus derivadas primera y segunda
Curva NURBS – curva polinomial definida en coordenadas homogéneas (azul) y su proyección en el plano – curva racional (rojo)