Bereiche in GDI+

Ein Bereich ist ein Teil des Anzeigebereichs eines Ausgabegeräts. Bereiche können einfach (ein einzelnes Rechteck) oder komplex (eine Kombination aus Polygonen und geschlossenen Kurven) sein. Die folgende Abbildung zeigt zwei Bereiche: einen, der aus einem Rechteck konstruiert wurde, und einen anderen, der aus einem Pfad erstellt wurde.

Screenshot of a region constructed from a rectangle and a screenshot of a region constructed from a path.

Verwenden von Bereichen

Bereiche werden häufig für das Beschneiden und für Treffertests verwendet. Das Beschneiden umfasst das Einschränken des Zeichnens auf einen bestimmten Bereich des Anzeigebereichs, in der Regel auf den Teil, der aktualisiert werden muss. Treffertests umfassen eine Überprüfung, um zu bestimmen, ob sich der Cursor in einem bestimmten Bereich des Bildschirms befindet, wenn eine Maustaste gedrückt wird.

Sie können einen Bereich aus einem Rechteck oder einem Pfad erstellen. Sie können auch komplexe Bereiche erstellen, indem Sie vorhandene Bereiche kombinieren. Die Region-Klasse bietet die folgenden Methoden zum Kombinieren von Bereichen: Intersect, Union, Xor, Exclude und Complement.

Die Schnittmenge zweier Bereiche ist die Gruppe aller Punkte, die zu beiden Bereichen gehören. Die Vereinigungsmenge ist die Gruppe aller Punkte, die zu dem einen oder dem anderen oder zu beiden Bereichen gehören. Das Komplement eines Bereichs ist die Gruppe aller Punkte, die sich nicht in dem Bereich befinden. Die folgende Abbildung zeigt die Schnittmenge und Vereinigungsmenge der beiden Bereiche, die in der vorherigen Abbildung gezeigt wurden.

Screenshot of an intersection and a union of the two regions from the preceding illustration.

Die Xor-Methode, die auf ein Paar von Bereichen angewendet wird, erzeugt einen Bereich, der alle Punkte enthält, die zu dem einen Bereich oder dem anderen gehören, aber nicht zu beiden. Die Exclude-Methode, die auf ein Paar von Bereichen angewendet wird, erzeugt einen Bereich, der alle Punkte im ersten Bereich enthält, die sich nicht im zweiten Bereich befinden. Die folgende Abbildung zeigt die Bereiche, die sich aus der Anwendung der Methoden Xor und Exclude auf die beiden Bereiche ergeben, die am Anfang dieses Themas gezeigt wurden.

Screenshot of the Xor method results and the Exclude method results applied to the two regions from the preceding illustration.

Um einen Bereich zu füllen, benötigen Sie ein Graphics-Objekt, ein Brush-Objekt und ein Region-Objekt. Das Graphics-Objekt stellt die FillRegion-Methode bereit, und das Brush-Objekt speichert Attribute der Füllung, z. B. Farbe oder Muster. Im folgenden Beispiel wird ein Bereich mit einer Volltonfarbe gefüllt.

myGraphics.FillRegion(mySolidBrush, myRegion);
myGraphics.FillRegion(mySolidBrush, myRegion)

Siehe auch