次の方法で共有


GDI+ でのベジエ スプライン

ベジエ スプラインは、4 つの点、つまり 2 つのエンドポイント (p1 と p2) と 2 つの制御点 (c1 と c2) によって指定される曲線です。 曲線は p1 で開始され、p2 で終了します。 この曲線は制御点を通過しません。しかし、制御点は磁石のような役割を果たし、曲線を特定の方向に引っ張って曲線の曲がり方を制御します。 ベジエ曲線およびそのエンドポイントと制御点を次の図に示します。

ベジエ スプライン

曲線は p1 で開始され、制御点 c1 に向かって移動します。 p1 における曲線の接線は、p1 と c1 を結ぶ直線です。 エンドポイント p2 における接線は、c2 と p2 を結ぶ直線です。

ベジエ スプラインの描画

ベジエ スプラインを描画するには、Graphics クラスのインスタンスと Pen が必要です。 Graphics クラスのインスタンスは DrawBezier メソッドを提供し、Pen は曲線を描画するために使用される線の幅や色などの属性を格納します。 Pen は、引数の 1 つとして DrawBezier メソッドに渡されます。 DrawBezier メソッドに渡される他の引数は、エンドポイントと制御点です。 開始点 (0, 0)、制御点 (40, 20) および (80, 150)、終了点 (100, 10) のベジエ スプラインを描画する例を次に示します。

        myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10)

myGraphics.DrawBezier(myPen, 0, 0, 40, 20, 80, 150, 100, 10);

曲線、制御点、および 2 つの接線を次の図に示します。

ベジエ スプライン

ベジエ スプラインは、自動車業界向けのデザイン用に Pierre Bézier 氏によって開発されました。 それ以降、ベジエ スプラインはコンピューター支援設計のさまざまな用途で利用できることが実証され、フォントのアウトラインの定義にも使用されています。 ベジエ スプラインで作成できるさまざまな図形のいくつかを次の図に示します。

パス

参照

処理手順

方法 : 描画する Graphics オブジェクトを作成する

方法 : ペンを作成する

参照

System.Drawing.Graphics

System.Drawing.Pen

その他の技術情報

直線、曲線、および図形

曲線の作成と描画