이 설명서는 보관되지만 유지 되지 않습니다.

Graphics.DrawClosedCurve 메서드 (Pen, Point[], Single, FillMode)

업데이트: 2007년 11월

지정된 장력을 사용하여 Point 구조체의 배열에 의해 정의되는 닫힌 카디널 스플라인을 그립니다.

네임스페이스:  System.Drawing
어셈블리:  System.Drawing(System.Drawing.dll)

public void DrawClosedCurve(
	Pen pen,
	Point[] points,
	float tension,
	FillMode fillmode
)
public void DrawClosedCurve(
	Pen pen,
	Point[] points,
	float tension,
	FillMode fillmode
)
public function DrawClosedCurve(
	pen : Pen, 
	points : Point[], 
	tension : float, 
	fillmode : FillMode
)

매개 변수

pen
형식: System.Drawing.Pen

곡선의 색, 너비 및 높이를 결정하는 Pen입니다.

points
형식: System.Drawing.Point[]

스플라인을 정의하는 Point 구조체의 배열입니다.

tension
형식: System.Single

곡선의 장력을 지정하는 0.0F 보다 크거나 같은 값입니다.

fillmode
형식: System.Drawing.Drawing2D.FillMode

곡선이 채워지는 방법을 결정하는 FillMode 열거형의 멤버입니다. 이 매개 변수는 필수이지만 무시됩니다.

예외상황
ArgumentNullException

pennull인 경우

- 또는 -

pointsnull인 경우

이 메서드는 배열의 각 점을 연결하는 닫힌 카디널 스플라인을 그립니다. 마지막 점이 첫째 점과 일치하지 않는 경우, 추가 곡선 세그먼트가 마지막 점에서 첫째 점으로 추가되어 스플라인을 닫습니다.

점의 배열은 네 개 이상의 Point 구조체를 포함해야 합니다.

tension 매개 변수는 스플라인의 모양을 결정합니다. tension 매개 변수의 값이 0.0F이면, 이 메서드는 점들을 연결할 직선 세그먼트를 그립니다. 일반적으로 tension 매개 변수는 1.0F 보다 작거나 같습니다. 1.0F 가 넘는 값은 예외적인 결과를 만듭니다.

다음 코드 예제는 Windows Forms에 적용되며, 여기에는 Paint 이벤트 처리기의 매개 변수인 PaintEventArgse가 필요합니다. 이 코드는 다음 작업을 수행합니다.

  • 빨강 펜과 녹색 펜을 만듭니다.

  • 곡선을 정의하는 일곱 개의 점을 만듭니다.

  • 다각형을 만드는 일곱 개의 점 사이에 일곱 개의 빨간 직선을 그립니다.

  • 장력을 만들고 모드 설정을 채웁니다.

  • 일곱 개의 점을 연결하여 녹색의 폐곡선을 그립니다.

메서드는 1.0의 장력을 사용하고, 채우기 모드를 FillMode.Alternate로 설정합니다.

private void DrawClosedCurvePointTension(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);

    // 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);
}


Windows Vista, Windows XP SP2, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP Starter Edition, Windows Server 2003, Windows Server 2000 SP4, Windows Millennium Edition, Windows 98

.NET Framework 및 .NET Compact Framework에서 모든 플랫폼의 전체 버전을 지원하지는 않습니다. 지원되는 버전의 목록을 보려면 .NET Framework 시스템 요구 사항을 참조하십시오.

.NET Framework

3.5, 3.0, 2.0, 1.1, 1.0에서 지원
표시: