GraphicsPath.AddClosedCurve メソッド (Point , Single)
パスに閉じた曲線を追加します。曲線は配列内の各点を結ぶため、カーディナル スプライン曲線を使用します。
Overloads Public Sub AddClosedCurve( _
ByVal points() As Point, _ ByVal tension As Single _)
[C#]
public void AddClosedCurve(Point[] points,floattension);
[C++]
public: void AddClosedCurve(Pointpoints[],floattension);
[JScript]
public function AddClosedCurve(
points : Point[],tension : float);
パラメータ
- points
曲線を定義する複数の点を表す Point 構造体の配列。 - tension
曲線が点の間で湾曲する度合いを指定する 0 ~ 1 の値。0 が最小 (急な曲線) で、1 の場合に最も滑らかな曲線になります。
解説
必要に応じて、元の点を維持する必要があります。元の点は内部で 3 次ベジエ制御点に変換されるため、元の点を返す機構はありません。 points 配列内の最初の点と最後の点が同じではない場合、曲線はこれらの 2 つの点を結ぶことによって閉じられます。
使用例
[Visual Basic, C#] 次の例は、Windows フォームでの使用を意図してデザインされており、 OnPaint イベントのオブジェクトである PaintEventArgs e が必要です。このコードは次のアクションを実行します。
- (カーディナル スプラインを表す) 6 点の配列を作成します。
- パスを作成し、そのパスに閉じた (終了点から開始点へ閉じられた) カーディナル スプライン曲線を追加します。
- 画面にパスを描画します。
[Visual Basic, C#] テンションは 0.5 が使用されます。
Public Sub AddClosedCurveExample(e As PaintEventArgs)
' Creates a symetrical, closed curve.
Dim myArray As Point() = {New Point(20, 100), New Point(40, 150), _
New Point(60, 125), New Point(40, 100), New Point(60, 75), _
New Point(40, 50)}
Dim myPath As New GraphicsPath()
myPath.AddClosedCurve(myArray, 0.5F)
Dim myPen As New Pen(Color.Black, 2)
e.Graphics.DrawPath(myPen, myPath)
End Sub
[C#]
private void AddClosedCurveExample(PaintEventArgs e)
{
// Creates a symetrical, closed curve.
Point[] myArray =
{
new Point(20,100),
new Point(40,150),
new Point(60,125),
new Point(40,100),
new Point(60,75),
new Point(40,50)
};
// Create a new path and add curve.
GraphicsPath myPath = new GraphicsPath();
myPath.AddClosedCurve(myArray, .5f);
Pen myPen = new Pen(Color.Black, 2);
// Draw the path to screen.
e.Graphics.DrawPath(myPen, myPath);
}
[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 ファミリ
参照
GraphicsPath クラス | GraphicsPath メンバ | System.Drawing.Drawing2D 名前空間 | GraphicsPath.AddClosedCurve オーバーロードの一覧