freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

多邊形填充ppt課件(編輯修改稿)

2025-02-10 13:43 本頁面
 

【文章內(nèi)容簡介】 } 有效邊表類 桶表與邊表桶表與邊表 從有效邊表的建立過程可以看出,有效邊表給出了掃描線與有效邊交點坐標(biāo)的計算方法,但是并沒有給出新邊出現(xiàn)的位置坐標(biāo)。為了確定在哪條掃描線上插入了新邊,就需要構(gòu)造一個邊表( edge table, ET),用以存放掃描線上多邊形各條邊出現(xiàn)的信息。因為水平邊的1/k為 ∞ ,并且水平邊本身就是掃描線,在建立邊表時可以不予考慮。( 1)桶表是按照掃描線順序管理邊出現(xiàn)情況的一個數(shù)據(jù)結(jié)構(gòu)。首先,構(gòu)造一個縱向掃描線鏈表,鏈表的長度為多邊形所占有的最大掃描線數(shù),鏈表的每個結(jié)點稱為桶( bucket),對應(yīng)多邊形覆蓋的每一條掃描線。class CBucket {public:CBucket()。virtual ~CBucket()。public:int ScanLine。 //掃描線CAET *p。 //桶上的邊表指針CBucket *next。}。桶類( 2)將每條邊的信息鏈入與該邊最小 y坐標(biāo)( ymin)相對應(yīng)的桶處。也就是說,若某邊的較低端點為 ymin,則該邊就存放在相應(yīng)的掃描線桶中。( 3)對于每一條掃描線,如果新增多條邊,則按x|ymin坐標(biāo)遞增的順序存放在一個鏈表中,若 x|ymin 相等,則按照 1/k由小到大排序,這樣就形成邊表。邊表結(jié)點邊表示例示例多邊形 邊緣填充算法邊緣填充算法 填充原理填充原理 邊緣填充算法是先求出多邊形的每條邊與掃描線的交點,然后將交點右側(cè)的所有像素顏色全部取為補(bǔ)色(或反色)。按任意順序處理完多邊形的所有邊后,就完成了多邊形的填充任務(wù)。邊緣填充算法利用了圖像處理中的求 “補(bǔ) ”或求 “反 ”的概念,對于黑白圖像,求補(bǔ)就是把 RGB(1,1,1)(白色)的像素置為RGB(0,0,0)(黑色),反之亦然;對于彩色圖像,求補(bǔ)就是將背景色置為填充色,反之亦然。求補(bǔ)的一條基本性質(zhì)是一個像素求補(bǔ)兩次就恢復(fù)為原色。如果多邊形內(nèi)部的像素被求補(bǔ)偶數(shù)次,保持原色,如果被求補(bǔ)奇數(shù)次,顯示填充色。 假定邊的順序為 E0、 E E E E E5和 E6。這里,邊的順序并不影響填充結(jié)果,只是方便編寫循環(huán)結(jié)構(gòu)而已。填充過程如圖所示。邊緣填充算法定義示例多邊形P0( x0, y0)P1( x1, y1)E0E1E2E3 E4E5E6 填充過程填充過程 邊緣填充算法原理 void CTestView::FillPolygon(CDC *pDC) {COLORREF BClr=RGB(255,255,255)。//背景色COLORREF FClr=GetClr。//填充色int ymin,ymax。//邊的最小 y值與最大 y值double x,y,k。//x,y當(dāng)前點, k斜率的倒數(shù)for(int i=0。i7。i++)//循環(huán)多邊形所有邊{int j=(i+1)%7。k=(P[i].xP[j].x)/(P[i].yP[j].y)。//計算 1/kif(P[i].yP[j].y)//得到每條邊 y的最大值與最小值{ymin=Round(P[i].y)。ymax=Round(P[j].y)。x=P[i].x。//得到 x|ymin}else{ymin=Round(P[j].y)。ymax=Round
點擊復(fù)制文檔內(nèi)容
教學(xué)課件相關(guān)推薦
文庫吧 www.dybbs8.com
備案圖片鄂ICP備17016276號-1