Dela via


Regioner i GDI+

En region är en del av visningsområdet för en utdataenhet. Regioner kan vara enkla (en enda rektangel) eller komplexa (en kombination av polygoner och slutna kurvor). Följande illustration visar två regioner: en konstruerad av en rektangel och den andra av en bana.

Skärmbild av en region som har skapats från en rektangel och en skärmbild av en region som skapats från en sökväg.

Använda regioner

Regioner används ofta för klippning och träfftestning. Klippning innebär att begränsa ritningen till en viss region i visningsområdet, vanligtvis den del som behöver uppdateras. Träfftestning innebär att kontrollera om markören befinner sig i en viss region på skärmen när en musknapp trycks in.

Du kan skapa en region från en rektangel eller en sökväg. Du kan också skapa komplexa regioner genom att kombinera befintliga regioner. Klassen Region innehåller följande metoder för att kombinera regioner: Intersect, Union, Xor, Excludeoch Complement.

Skärningspunkten mellan två regioner är uppsättningen med alla punkter som hör till båda regionerna. Unionen är uppsättningen med alla punkter som hör till den ena eller den andra eller båda regionerna. Komplementet för en region är uppsättningen med alla punkter som inte finns i regionen. Följande bild visar skärningspunkten och unionen för de två regioner som visas i föregående bild.

Skärmbild av en skärningspunkt och en union av de två regionerna från föregående bild.

Metoden Xor, som tillämpas på ett par regioner, skapar en region som innehåller alla punkter som tillhör den ena eller den andra regionen, men inte båda. Metoden Exclude, som tillämpas på ett par regioner, skapar en region som innehåller alla punkter i den första regionen som inte finns i den andra regionen. Följande bild visar de regioner som är resultatet av att tillämpa metoderna Xor och Exclude på de två regioner som visas i början av det här avsnittet.

Skärmbild av Xor-metodens resultat och resultatet av metoden Exkludera som tillämpas på de två regionerna från föregående bild.

För att fylla en region behöver du ett Graphics objekt, ett Brush-objekt och ett Region objekt. Objektet Graphics innehåller metoden FillRegion och Brush-objektet lagrar attribut för fyllningen, till exempel färg eller mönster. I följande exempel fylls en region med en solid färg.

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

Se även