スプライン曲線(スプラインきょくせん、英語: spline curve)とは、スプラインを使用して表現された曲線のこと。スプラインとは区分多項式(区分的に定義された多項式)の事。数学的な背景や曲線あてはめのようなモデルの推定といった側面もあるが、図学造形デザインで使われることが多い。

由来 編集

 
スプライン

由来であるスプラインは、製図などに用いられる一種の自在定規で、しなやかで弾力のある細長い板。平面上の通過すべき点でたわみを支えると、それらを結ぶ滑らかな曲線が得られる。これは弾性エネルギーを最小にする曲線で、数学的には三次スプライン曲線となる。スプラインは雲形定規と同様、整った補間曲線を手作業で得るために使われ、その操作は、対象となる線を、定規に沿う小曲線の集合に分けて、その部分ごとに線を引く。

1次スプライン曲線 編集

1次スプライン曲線は、線形補間であり、折れ線グラフである。

高次のスプライン曲線 編集

 
7区間からなる3次スプライン曲線の例

※コンピュータグラフィックス等では、ここで述べる伝統的なスプラインに沿った手法ではなく、次節のB-スプライン曲線を指すことが多いので、そちらを参照のこと。

一般にN個(N≧3)の制御点がある時、その全てを通るN-1次多項式により一括の多項式補間が可能であるが、ルンゲ現象をはじめとする不都合を伴う。

これに対し、より低次の多項式により、対象線を区間ごとに近似/補間する方法が考えられる。すなわち、各制御点ごとの前後数点からの近似による小曲線要素の集団が一本に連なった曲線が、スプライン曲線である。すべての制御点を通る一本のスプライン曲線を得る操作をスプライン補間(en:Spline interpolation)と呼び、有限要素法などに応用されている[1]

N次スプライン」の「N」は、多項式の最高次元数である。また、由来であるスプラインは、曲率の2乗積分が最小となるような3次曲線と考えられ、その意味で特に3次スプライン曲線[2]が典型的かつ代表的なものと言える。

算出方法 編集

N次のスプライン曲線について、その区間ごと多項式の0次からN-1次までの各微係数を隣接区間に対して接続点上で同値とする。これにより全体で連続した関数/曲線とみなされる(滑らかな関数の記事も参照)。接続先の無い端点については、微係数を0とするといった処理がとられる。以上をもって全多項式の係数が一意に定まる。実際の係数算出は連立方程式を解くもので、多重対角行列問題に帰着する。

B-スプライン曲線 編集

コンピュータグラフィックス等では、こちらのほうが専ら多用されている。B-スプライン曲線は、前節までで述べたような(伝統的な)スプラインとは異なり、制御点を必ずしも通らないスプライン曲線である。「ベジェ曲線とB-スプライン曲線」といったように対比される場合、3次B-スプライン曲線のことが多い(ベジェ曲線もスプライン曲線の一種と言えなくもないが)。また、端の制御点が曲線の端点でもあるような場合は、端の制御点(制御ノット)を多重ノットとした、一種の非一様B-スプライン曲線である(NURBSの記事も参照)。

有理B-スプライン 編集

NURBS(非一様有理B-スプライン)は、B-スプライン曲線をさらに一般化したもので、CADツール等ではNURBSがサポートされていることが多い。

脚注 編集

  1. ^ 山本哲朗『数値解析入門』(増訂版)サイエンス社〈サイエンスライブラリ 現代数学への入門 14〉、2003年6月。ISBN 4-7819-1038-6 
  2. ^ Wolfram MathWorld, Cubic Spline

関連項目 編集