次の方法で共有


Graphics.DrawClosedCurve メソッド (Pen, Point )

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

Overloads Public Sub DrawClosedCurve( _
   ByVal pen As Pen, _   ByVal points() As Point _)
[C#]
public void DrawClosedCurve(Penpen,Point[] points);
[C++]
public: void DrawClosedCurve(Pen* pen,Pointpoints[]);
[JScript]
public function DrawClosedCurve(
   pen : Pen,points : Point[]);

パラメータ

  • pen
    曲線の色、幅、および高さを決定する Pen オブジェクト。
  • points
    スプラインを定義する Point 構造体の配列。

戻り値

このメソッドは値を返しません。

解説

このメソッドは、配列の各点を通過する閉じたカーディナル スプラインを描画します。最後の点と最初の点が一致しない場合は、図形を閉じるために最後の点と最初の点を結ぶ曲線の線分が追加されます。

点の配列には、4 つ以上の Point 構造体を含める必要があります。

このメソッドは既定のテンションである 0.5 を使用します。

使用例

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

  • 赤と緑のペンを作成します。
  • 曲線を定義する 7 つの点を作成します。
  • 7 つの点の間に 7 つの赤い直線を描画して、閉じた多角形を作成します。
  • 7 つの点を通過する、閉じた緑の曲線を描画します。

[Visual Basic, C#] このメソッドは、既定のテンションである 0.5 を使用します。

 
Public Sub DrawClosedCurvePoint(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 Point(50, 50)
Dim point2 As New Point(100, 25)
Dim point3 As New Point(200, 5)
Dim point4 As New Point(250, 50)
Dim point5 As New Point(300, 100)
Dim point6 As New Point(350, 200)
Dim point7 As New Point(250, 250)
Dim curvePoints As Point() =  {point1, point2, point3, point4, _
point5, point6, point7}
' Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints)
' Draw closed curve to screen.
e.Graphics.DrawClosedCurve(greenPen, curvePoints)
End Sub
        
[C#] 
public void DrawClosedCurvePoint(PaintEventArgs e)
{
// Create pens.
Pen redPen   = new Pen(Color.Red, 3);
Pen greenPen = new Pen(Color.Green, 3);
// Create points that define curve.
Point point1 = new Point( 50,  50);
Point point2 = new Point(100,  25);
Point point3 = new Point(200,   5);
Point point4 = new Point(250,  50);
Point point5 = new Point(300, 100);
Point point6 = new Point(350, 200);
Point point7 = new Point(250, 250);
Point[] curvePoints =
{
point1,
point2,
point3,
point4,
point5,
point6,
point7
};
// Draw lines between original points to screen.
e.Graphics.DrawLines(redPen, curvePoints);
// Draw closed curve to screen.
e.Graphics.DrawClosedCurve(greenPen, curvePoints);
}
        

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

必要条件

プラットフォーム: Windows 98, Windows NT 4.0, Windows Millennium Edition, Windows 2000, Windows XP Home Edition, Windows XP Professional, Windows Server 2003 ファミリ

参照

Graphics クラス | Graphics メンバ | System.Drawing 名前空間 | Graphics.DrawClosedCurve オーバーロードの一覧