FillMode Enumeration

Definition

Gibt an, wie das Innere eines geschlossenen Pfades ausgefüllt wird.

public enum class FillMode
public enum FillMode
type FillMode = 
Public Enum FillMode
Vererbung
FillMode

Felder

Alternate 0

Gibt den Füllmodus "abwechselnd" an.

Winding 1

Gibt den Füllmodus "gewunden" an.

Beispiele

Im folgenden Beispiel wird ein Pfad erstellt, der eine offene Figur (einen Bogen) und eine geschlossene Figur (eine Ellipse) aufweist. Die FillPath-Methode füllt den Pfad gemäß dem Standardmäßigen Füllmodus aus, der Alternate ist. In der folgenden Abbildung ist das Ergebnis des Beispielcodes dargestellt. Beachten Sie, dass der Pfad (gemäß Alternate) ausgefüllt wird, als ob die geöffnete Abbildung durch eine gerade Linie von ihrem Endpunkt bis zu ihrem Ausgangspunkt geschlossen würde.

Füllen Des offenen

Das folgende Beispiel ist für die Verwendung mit Windows Forms konzipiert und erfordert PaintEventArgse, was ein Parameter des Paint Ereignishandlers ist.

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)

Hinweise

Eine Anwendung füllt das Innere eines Pfads mit einem von zwei Füllmodi aus: alternativ oder wickeln. Der Modus bestimmt, wie das Innere einer geschlossenen Figur gefüllt und beschnitten werden soll.

Der Standardmodus ist Alternate. Um das Innere geschlossener Figuren im alternativen Modus zu bestimmen, zeichnen Sie eine Linie von jedem beliebigen Startpunkt im Pfad bis zu einem Punkt, der offensichtlich außerhalb des Pfads liegt. Wenn die Linie eine ungerade Anzahl von Pfadsegmenten kreuzt, befindet sich der Ausgangspunkt innerhalb des geschlossenen Bereichs und ist daher Teil des Füll- oder Beschneidungsbereichs. Eine gerade Anzahl von Kreuzungen bedeutet, dass sich der Punkt nicht in einem Bereich befindet, der gefüllt oder beschnitten werden soll. Eine geöffnete Abbildung wird gefüllt oder beschnitten, indem eine Linie verwendet wird, um den letzten Punkt mit dem ersten Punkt der Abbildung zu verbinden.

Der Windungsmodus berücksichtigt die Richtung der Pfadsegmente an jeder Schnittmenge. Es fügt eine für jede Schnittmenge im Uhrzeigersinn hinzu und subtrahiert eine für jede Schnittmenge gegen den Uhrzeigersinn. Wenn das Ergebnis ungleich null ist, wird der Punkt innerhalb des Füll- oder Clipbereichs berücksichtigt. Eine Nullanzahl bedeutet, dass der Punkt außerhalb des Füll- oder Clipbereichs liegt.

Eine Abbildung wird als im Uhrzeigersinn oder gegen den Uhrzeigersinn betrachtet, basierend auf der Reihenfolge, in der die Segmente der Figur gezeichnet werden.

Gilt für:

Weitere Informationen