다음을 통해 공유


FillMode 열거형

정의

닫힌 경로의 내부를 채우는 방법을 지정합니다.

public enum class FillMode
public enum FillMode
type FillMode = 
Public Enum FillMode
상속
FillMode

필드

Name Description
Alternate 0

대체 채우기 모드를 지정합니다.

Winding 1

구불구불한 채우기 모드를 지정합니다.

예제

다음 예제에서는 하나의 열린 그림(호)과 닫힌 그림(타원)이 있는 경로를 만듭니다. FillPath 메서드는 기본 채우기 모드(Alternate)에 따라 경로를 채웁니다. 다음 그림에서는 예제 코드의 출력을 보여 줍니다. 여는 그림이 끝점에서 시작 지점까지 직선으로 닫힌 것처럼 경로가 채워집니다(대체 항목에 따라).

열린 경로 채우기열린 경로 채우기

다음 예제는 Windows Forms에서 사용하도록 설계되었으며 Paint 이벤트 처리기의 매개 변수인 PaintEventArgse필요합니다.

GraphicsPath path = new GraphicsPath();

// Add an open figure.
path.AddArc(0, 0, 150, 120, 30, 120);

// Add an intrinsically closed figure.
path.AddEllipse(50, 50, 50, 100);

Pen pen = new Pen(Color.FromArgb(128, 0, 0, 255), 5);
SolidBrush brush = new SolidBrush(Color.Red);

// The fill mode is FillMode.Alternate by default.
e.Graphics.FillPath(brush, path);
e.Graphics.DrawPath(pen, path);
Dim path As New GraphicsPath()

' Add an open figure.
path.AddArc(0, 0, 150, 120, 30, 120)

' Add an intrinsically closed figure.
path.AddEllipse(50, 50, 50, 100)

Dim pen As New Pen(Color.FromArgb(128, 0, 0, 255), 5)
Dim brush As New SolidBrush(Color.Red)

' The fill mode is FillMode.Alternate by default.
e.Graphics.FillPath(brush, path)
e.Graphics.DrawPath(pen, path)

설명

애플리케이션은 대체 또는 권선의 두 채우기 모드 중 하나를 사용하여 경로의 내부를 채웁니다. 모드는 닫힌 그림의 내부를 채우고 클리핑하는 방법을 결정합니다.

기본 모드는 Alternate입니다. 대체 모드에서 닫힌 그림의 내부를 확인하려면 경로의 임의의 시작점에서 경로 바깥쪽의 특정 지점으로 선을 그립니다. 선이 홀수의 경로 세그먼트를 교차하는 경우 시작점은 닫힌 영역 내에 있으므로 채우기 또는 클리핑 영역의 일부입니다. 교차점 수가 짝수이면 점이 채워지거나 잘려야 하는 영역에 있지 않습니다. 열린 그림은 마지막 점을 그림의 첫 번째 지점에 연결하는 선을 사용하여 채워지거나 잘립니다.

권선 모드는 각 교집합에서 경로 세그먼트의 방향을 고려합니다. 시계 방향 교집합마다 하나씩 추가하고 시계 반대 방향으로 교차할 때마다 1을 뺍니다. 결과가 0이 아니면 채우기 또는 클립 영역 내에서 점이 고려됩니다. 0 개수는 점이 채우기 또는 클립 영역 밖에 있음을 의미합니다.

그림은 그림의 세그먼트가 그려지는 순서에 따라 시계 방향 또는 시계 반대 방향으로 간주됩니다.

적용 대상

추가 정보