次の方法で共有


Graphics.DrawClosedCurve メソッド

Point 構造体の配列で定義された、閉じたカーディナル スプラインを描画します。

オーバーロードの一覧

Point 構造体の配列で定義された、閉じたカーディナル スプラインを描画します。

[Visual Basic] Overloads Public Sub DrawClosedCurve(Pen, Point())

[C#] public void DrawClosedCurve(Pen, Point[]);

[C++] public: void DrawClosedCurve(Pen*, Point[]);

[JScript] public function DrawClosedCurve(Pen, Point[]);

PointF 構造体の配列で定義された、閉じたカーディナル スプラインを描画します。

[Visual Basic] Overloads Public Sub DrawClosedCurve(Pen, PointF())

[C#] public void DrawClosedCurve(Pen, PointF[]);

[C++] public: void DrawClosedCurve(Pen*, PointF[]);

[JScript] public function DrawClosedCurve(Pen, PointF[]);

指定したテンションを使用して、 Point 構造体の配列で定義された、閉じたカーディナル スプラインを描画します。

[Visual Basic] Overloads Public Sub DrawClosedCurve(Pen, Point(), Single, FillMode)

[C#] public void DrawClosedCurve(Pen, Point[], float, FillMode);

[C++] public: void DrawClosedCurve(Pen*, Point[], float, FillMode);

[JScript] public function DrawClosedCurve(Pen, Point[], float, FillMode);

指定したテンションを使用して、 PointF 構造体の配列で定義された、閉じたカーディナル スプラインを描画します。

[Visual Basic] Overloads Public Sub DrawClosedCurve(Pen, PointF(), Single, FillMode)

[C#] public void DrawClosedCurve(Pen, PointF[], float, FillMode);

[C++] public: void DrawClosedCurve(Pen*, PointF[], float, FillMode);

[JScript] public function DrawClosedCurve(Pen, PointF[], float, FillMode);

使用例

[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 Paint イベント ハンドラのパラメータである PaintEventArgs e が必要です。このコードは次のアクションを実行します。

  • 赤と緑のペンを作成します。
  • 曲線を定義する 7 つの点を作成します。
  • 7 つの点の間に 7 つの赤い直線を描画して、多角形を作成します。
  • テンション設定と塗りつぶしモード設定を作成します。
  • 7 つの点を通過する、閉じた緑の曲線を描画します。

[Visual Basic, C#] このメソッドは、1.0 のテンションを使用し、塗りつぶしモードを FillMode.Alternate に設定します。

[Visual Basic, C#] メモ   ここでは、DrawClosedCurve のオーバーロード形式のうちの 1 つだけについて、使用例を示します。その他の例については、各オーバーロード形式のトピックを参照してください。

 
Public Sub DrawClosedCurvePointFTension(e As PaintEventArgs)
' Create pens.
Dim redPen As New Pen(Color.Red, 3)
Dim greenPen As New Pen(Color.Green, 3)
' Create points that define curve.
Dim point1 As New PointF(50F, 50F)
Dim point2 As New PointF(100F, 25F)
Dim point3 As New PointF(200F, 5F)
Dim point4 As New PointF(250F, 50F)
Dim point5 As New PointF(300F, 100F)
Dim point6 As New PointF(350F, 200F)
Dim point7 As New PointF(250F, 250F)
Dim curvePoints As PointF() =  {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Create tension and fill mode.
Dim tension As Single = 1F
Dim aFillMode As FillMode = FillMode.Alternate
' Draw closed curve to screen.
e.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, _
aFillMode)
End Sub
        
[C#] 
public void DrawClosedCurvePointFTension(PaintEventArgs e)
{
// Create pens.
Pen redPen   = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
PointF point1 = new PointF( 50.0F,  50.0F);
PointF point2 = new PointF(100.0F,  25.0F);
PointF point3 = new PointF(200.0F,   5.0F);
PointF point4 = new PointF(250.0F,  50.0F);
PointF point5 = new PointF(300.0F, 100.0F);
PointF point6 = new PointF(350.0F, 200.0F);
PointF point7 = new PointF(250.0F, 250.0F);
PointF[] curvePoints =
{
point1,
point2,
point3,
point4,
point5,
point6,
point7
};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Create tension and fill mode.
float tension = 1.0F;
FillMode aFillMode = FillMode.Alternate;
// Draw closed curve to screen.
e.Graphics.DrawClosedCurve(greenPen, curvePoints, tension, aFillMode);
}
        

[C++, JScript] C++ および JScript のサンプルはありません。Visual Basic および C# のサンプルを表示するには、このページの左上隅にある言語のフィルタ ボタン 言語のフィルタ をクリックします。

参照

Graphics クラス | Graphics メンバ | System.Drawing 名前空間