Freigeben über


FillMode Enumeration

Definition

Gibt an, wie der Innere eines geschlossenen Pfads gefüllt wird.

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

Felder

Alternate 0

Gibt den alternativen Füllmodus an.

Winding 1

Gibt den Wicklungsmodus an.

Beispiele

Im folgenden Beispiel wird ein Pfad mit einer geöffneten Abbildung (einem Bogen) und einer geschlossenen Abbildung (Ellipse) erstellt. Die FillPath-Methode füllt den Pfad gemäß dem Standardfüllmodus aus, bei dem es sich um "Alternate" handelt. Die folgende Abbildung zeigt die Ausgabe des Beispielcodes. Beachten Sie, dass der Pfad (gemäß Alternative) gefüllt ist, als ob die offene Figur von ihrem Endpunkt bis zum Anfangspunkt durch eine gerade Linie geschlossen wurde.

Füllpfad

Das folgende Beispiel wurde für die Verwendung mit Windows Forms entwickelt und erfordert PaintEventArgse, bei dem es sich um einen Parameter des Paint-Ereignishandlers handelt.

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: alternativ oder wicklung. Der Modus bestimmt, wie das Innere einer geschlossenen Figur gefüllt und beschnitten wird.

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

Der Wicklungsmodus berücksichtigt die Richtung der Pfadsegmente an jeder Schnittmenge. Er addiert eine für jede Schnittmenge im Uhrzeigersinn und subtrahiert eins für jede gegen den Uhrzeigersinn schnittpunkt. Wenn das Ergebnis ungleich Null ist, wird der Punkt innerhalb der Füllung oder des Clipbereichs berücksichtigt. Eine Nullanzahl bedeutet, dass sich der Punkt außerhalb des Füll- oder Clipbereichs befindet.

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

Gilt für:

Weitere Informationen