1. 程式人生 > >【計算機圖形學】圖元的區域填充之矩形的區域填充

【計算機圖形學】圖元的區域填充之矩形的區域填充

相關資料來源於網路,侵刪歉。
如果文章中存在錯誤,請下方評論告知我,謝謝!


矩形的區域填充

前提
矩形的頂點座標均為整數。

我們簡單地實現一下,思路是在矩形內逐行逐列點亮每個畫素,如圖。

typedef struct{
	int xmin, xmax;
	int ymin, ymax;
}Rectangle;

void FillRectangle(Rectangle *rect, int color){
	int x, y;
	for(y=rect->ymin;y<=rect->ymax;y++)
	for(x=rect->xmin;x<=rect->xmax;x++)
		WritePixel(x,y,color);
}

注意到矩形的邊緣也點亮了。那麼對於下面這種情況,共享邊界應該點亮哪種顏色呢?

我們規定,選擇左邊和上邊的,即左閉右開,下閉上開。這個規定同樣適用於多邊形、直線的交點等。