B-스플라인 곡선 (B-spline curve)은 주어진 여러 개의 점에서 정의되는 매끄러운 곡선이다. 각 구간별로 별도의 다항식으로 표현되기 때문에 일부의 제어점을 변경해도 전체 곡선에는 영향을 미치지 않는 성질이있다. 베지어 곡선과 함께 컴퓨터 그래픽 분야에서 널리 이용된다. B-spline은 Basis spline (Basis = 기저)의 약어로서, 기본적으로 곡선은 제어점을 통과하지 않는다.
정의
제어점을 Pi이라 하면, n차의 B-spline곡선은
.
으로 표현된다. 여기서 ti은 마디(knot)라고 불리는m개의 실수이다.
![{\displaystyle t_{0}\leq t_{1}\leq \cdots \leq t_{m-1}}](https://wikimedia.org/api/rest_v1/media/math/render/svg/d528e69030597d7c12f92a3d7c08952618bf0fe4)
또한 bi,n은B-스플라인 기저함수(B-spline basis function)이고 de Boor Cox의 점화식에 의해 다음과 같이 정의된다.
![{\displaystyle b_{j,0}(t):=\left\{{\begin{matrix}1&\mathrm {if} \quad t_{j}\leq t<t_{j+1}\\0&\mathrm {otherwise} \end{matrix}}\right.,\qquad j=0,\ldots ,m{-}2}](https://wikimedia.org/api/rest_v1/media/math/render/svg/88e6d73002904e7b933cf141ed4edc9d43dc0bf2)
![{\displaystyle b_{j,n}(t):={\frac {t-t_{j}}{t_{j+n}-t_{j}}}b_{j,n-1}(t)+{\frac {t_{j+n+1}-t}{t_{j+n+1}-t_{j+1}}}b_{j+1,n-1}(t),\qquad j=0,\ldots ,m{-}n{-}2.}](https://wikimedia.org/api/rest_v1/media/math/render/svg/2687d4a85a5b0ec51e4f0f0913193467aaa77858)
같이 보기