B-スプライン曲線とは? わかりやすく解説

Weblio 辞書 > 同じ種類の言葉 > 学問 > 学術 > 曲線 > B-スプライン曲線の意味・解説 

B-スプライン曲線

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2025/11/10 23:53 UTC 版)

B-スプライン曲線と制御点の例

B-スプライン曲線 Bスプラインきょくせん: B-spline curve)は、与えられた複数の制御点とノットから定義される滑らかな曲線である。

区分多項式により表現されているため、一部を変更しても曲線全体に影響は及ばない等の性質がある。ベジェ曲線とともに、コンピュータグラフィックスの世界で広く利用されている。なお、B-splineはBasis spline(Basis=基底)の省略形である。曲線は必ずしも制御点を通らない。

定義

パラメータ

B-スプライン三角形配列

上の図は、

一様ノットベクトルに対する基底関数と曲線の例(n=3, m=9)

開一様ノットベクトル

開一様ノットベクトル かいいちようノットベクトル: open uniform knot vector)はベクトルの両端がそれぞれB-スプラインの次数だけ重複しているノットベクトルである[11][10] 一様間隔ノットベクトル いちようかんかくノットベクトル: uniformly-spaced knot vector)とも[12][13]。 開一様ノットベクトルは次の手順で作られる:

  • 最初の
    開一様ノットベクトルに対する基底関数と曲線の例(n=3, m=9)

    非一様ノットベクトル

    非一様ノットベクトル ひいちようノットベクトル: non-uniform knot vector)はノットが不規則に配置されたノットベクトルである[14][15]

    ノットベクトルの性質

    • ノット数が
      closed B-スプラインの例

      一様B-スプライン曲線

      一様ノットベクトルで定義されるB-スプライン曲線を一様(uniform)B-スプライン曲線と呼ぶ。

      行列形式

      一様2次B-スプライン曲線

      一様なノットにおける2次B-スプライン曲線において、B-スプライン基底関数は次のようになる。

      ベジェ曲線への変換例

      開一様3次B-スプライン曲線の制御点変換行列 の場合、以下のとおり。[16]

      の場合、以下のとおり。

      連続性

      ノットベクトルの途中に重なりが含まれない場合、n次のB-スプライン曲線は回微分可能である[18]。 したがい、一様2次B-スプライン曲線はC1連続、一様3次B-スプライン曲線はC2連続である。 開一様B-スプライン曲線は、ノットベクトルに重なりが含まれるが、重なりがノットベクトルの途中ではなく端にあるため、同様である。

      あるいは、カーブセグメント単位で連続性を求めることもできる。以下は3次B-スプライン曲線の連続性を求めた例である。[16]

      • カーブセグメントは の3次関数で2回微分可能であり、C2連続である。
      • カーブセグメント間の連続性は、以下の通りセグメントの終点と次のセグメントの始点の基底関数を比較することで求める;

      なので、

      であれば であり、C0連続を判定できる。
      同様に、1次微分、2次微分についてC1連続、C2連続を判定できる。

      一様3次B-スプライン曲線の場合、

      である。1次微分については

      である。2次微分については

      である。したがい、一様3次B-スプライン曲線はC2連続である。

      開一様3次B-スプライン曲線の場合;

      判定

      したがい、C0連続以上である。1次微分については

      判定

      したがい、C1連続以上である。2次微分については

      判定

      したがい、開一様3次B-スプライン曲線はC2連続である。

      面積

      パラメトリック関数で表される開いた曲線の面積は、ガウスグリーンの定理で求めることができる[19]
      一様2次B-スプライン曲線の行列形式をあてはめると、曲線の始点と終点および原点で囲まれた領域の面積は次のようになる。

      一様3次B-スプライン曲線の行列形式をあてはめると、曲線の始点と終点および原点で囲まれた領域の面積は次のようになる。

      原点に対し制御点が反時計回りの並びの場合、面積は正の値、時計回りの並びの場合、面積は負の値になる。閉包を構成する各カーブセグメントの面積を合計することにより、閉包と原点の間の領域の面積がキャンセルされ、閉包のみの面積を求めることができる。

      有理B-スプライン

      有理B-スプラインは各制御点に重みを付けた物。詳細はNURBS(非一様有理B-スプライン)を参照。

      B-スプライン曲面

      方向に 次で 方向に 次のB-スプライン曲面(B-spline surface)は以下のように表される[20]

      .

      ノットや基底関数は曲線と同じ。制御点の個数は 個。

      脚注

      出典

      1. ^ de Boor, p. 132
      2. ^ 実装例のFortran副プログラムBSPLVBのコメントに "DIVISION BY ZERO WILL RESULT IF T(LEFT)=T(LEFT+1)" と記載されている。 de Boor, p. 134
      3. ^ Fussy - B-スプライン曲線
      4. ^ "セグメントの区切りとなるパラメータの値を定義した数値(ノット)" 三谷 2020 より引用。
      5. ^ B-spline Basis Functions: Definition - CS3621 Introduction to Computing with Geometry Notes
      6. ^ "ノットベクトル ... ノット ... の列" 三谷 2020 より引用。
      7. ^ "Bスプラインの形を決めるもの ... ノット列の値は単純増加" 三谷 2020 より引用。
      8. ^ "ノットベクトル ti が一定の間隔で存在する → 一様" 三谷 2020 より引用。
      9. ^ a b "ノットベクトルには、次の3つの型がある。... ノットベクトルが等差数列になっている場合の一様なノットベクトル(uniform knot vector)" 谷口 2000, p. 241 より引用。
      10. ^ a b B-splines - Advanced Graphics and HCI
      11. ^ "ノットベクトルには、次の3つの型がある。...ノットベクトルが両端で階数だけ重複している場合の開一様ノットベクトル(open uniform)" 三谷 2020 より引用。
      12. ^ a b Knot Vector Generation - CS3621 Introduction to Computing with Geometry Notes
      13. ^ Knot Vector Generation for B-Spline Interpolation - Wolfram Demonstrations Project
      14. ^ "ノットベクトルには、次の3つの型がある。...非一様ノットベクトル(non-uniform knot vector)" 谷口 2000, p. 241 より引用。
      15. ^ "ノットベクトル ... ノットの間隔を変更すると「非一様」になる" 三谷 2020 より引用。
      16. ^ a b c 実装技術者向けB-スプライン曲線入門”. Qiita. 2025年11月10日閲覧。
      17. ^ Cohen, Elaine; Riesenfeld, Richard F. (1982). “General Matrix Representations for Bezier and B-spline Curves”. Computers in Industry 3: 13-15. 
      18. ^ de Boor, p. 138.
      19. ^ 高校数学の美しい物語 - ガウスグリーンの定理の入試への応用
      20. ^ B-spline Surfaces: Construction - CS3621 Introduction to Computing with Geometry Notes

      参考文献

      関連項目

      外部リンク


B-スプライン曲線

出典: フリー百科事典『ウィキペディア(Wikipedia)』 (2022/08/06 06:47 UTC 版)

スプライン曲線」の記事における「B-スプライン曲線」の解説

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

※この「B-スプライン曲線」の解説は、「スプライン曲線」の解説の一部です。
「B-スプライン曲線」を含む「スプライン曲線」の記事については、「スプライン曲線」の概要を参照ください。

ウィキペディア小見出し辞書の「B-スプライン曲線」の項目はプログラムで機械的に意味や本文を生成しているため、不適切な項目が含まれていることもあります。ご了承くださいませ。 お問い合わせ



B-スプライン曲線と同じ種類の言葉


英和和英テキスト翻訳>> Weblio翻訳
英語⇒日本語日本語⇒英語
  

辞書ショートカット

すべての辞書の索引

「B-スプライン曲線」の関連用語

B-スプライン曲線のお隣キーワード
検索ランキング

   

英語⇒日本語
日本語⇒英語
   



B-スプライン曲線のページの著作権
Weblio 辞書 情報提供元は 参加元一覧 にて確認できます。

   
ウィキペディアウィキペディア
All text is available under the terms of the GNU Free Documentation License.
この記事は、ウィキペディアのB-スプライン曲線 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。 Weblio辞書に掲載されているウィキペディアの記事も、全てGNU Free Documentation Licenseの元に提供されております。
ウィキペディアウィキペディア
Text is available under GNU Free Documentation License (GFDL).
Weblio辞書に掲載されている「ウィキペディア小見出し辞書」の記事は、Wikipediaのスプライン曲線 (改訂履歴)の記事を複製、再配布したものにあたり、GNU Free Documentation Licenseというライセンスの下で提供されています。

©2025 GRAS Group, Inc.RSS