GDI+ 中的區域
區域是輸出裝置顯示區域的一部分。 區域可以是簡單 (單一矩形) 或複雜 (多邊形和封閉曲線的組合)。 下圖顯示兩個區域:一個是從矩形所建構,另一個是從路徑所建構。
使用區域
區域通常用於裁剪及點擊測試。 裁剪牽涉到將繪圖限制為顯示區域的特定區域,通常是需要更新的部分。 點擊測試牽涉到檢查,以判斷在按下滑鼠按鈕時,游標是否位於畫面的特定區域中。
您可以從矩形或路徑建構區域。 您也可以結合現有的區域來建立複雜的區域。 Region 類別提供下列結合區域的方法:Intersect、Union、Xor、Exclude 和 Complement。
兩個區域的交集是屬於這兩個區域的所有點集合。 聯集是屬於一個和/或另一個區域的所有點集合。 區域補充是一組非位於區域中的所有點。 下圖顯示上圖所示兩個區域的交集和聯集。
套用至一組區域的 Xor 方法會產生區域,其中包含屬於一個區域或另一個區域 (但非同時包含兩者) 的所有點。 套用至一組區域的 Exclude 方法會產生區域,其中包含第一個區域但非位於第二個區域中的所有點。 下圖顯示將 Xor 和 Exclude 方法套用至本主題開頭所示兩個區域所產生的區域。
若要填滿區域,您需要 Graphics 物件、Brush 物件和 Region 物件。 Graphics 物件會提供 FillRegion 方法,而 Brush 物件會儲存填滿的屬性,例如色彩或圖樣。 下列範例會以純色填滿區域。
myGraphics.FillRegion(mySolidBrush, myRegion);
myGraphics.FillRegion(mySolidBrush, myRegion)