版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、實驗一 實驗一 種子填充算法 種子填充算法實驗?zāi)康模?實驗?zāi)康模赫莆辗N子填充算法的思想,掌握隊列的使用,掌握基于隊列的四連通區(qū)域填充算法。實驗內(nèi)容: 實驗內(nèi)容:對于任意給定的多邊形,在屏幕上顯示該多邊形,根據(jù)給定的多邊形區(qū)域內(nèi)種子,對多邊形區(qū)域進(jìn)行填充。多邊形區(qū)域為四連通區(qū)域,要求采用鏈隊存儲種子點。實驗原理: 實驗原理:種子填充算法采用的邊界定義是區(qū)域邊界上所有像素均具有某個特定的顏色值,區(qū)域內(nèi)部所有像素均不取這一特定顏色,而邊界外的
2、像素則可以具有和邊界相同的顏色值。程序從(x,y)開始,先檢測該點的顏色,如果它與邊界色和填充色均不相同,就用填充色填充該點,然后檢測相鄰位置,以確定它們是否邊界色和填充色,若不是,就填充該相鄰點。這個過程延續(xù)到已經(jīng)檢測完邊界范圍內(nèi)的所有像素為止。 實驗步驟: 實驗步驟:(1) 隊列結(jié)構(gòu)定義種子堆棧的結(jié)構(gòu)和隊列結(jié)構(gòu),并定義相應(yīng)變量。(2) 確定多邊形頂點坐標(biāo)在 Initial 函數(shù)中對頂點序列進(jìn)行賦值。(3) 生成多邊形即將由頂點序列所
3、定義的多邊形顯示出來,也就實現(xiàn)了多邊形的邊界定義。(4) 填充多邊形區(qū)域1) 確定初始種子點可以交互給出,例中直接給出。用指定的非填充顏色填充該像素,以標(biāo)出初始種子點,同時將該點送入種子隊列。2) 如果,種子隊列非空,從隊尾取出種子。3) 判斷種子是否為邊界色或填充色,如果不是填充該點,將該種子送入隊列。4) 判斷該點的四個相鄰像素是否為邊界色或填充色,如果不是,填充該像素,同時將該點送入種子隊列。5) 重復(fù)步驟 2),3),4)實驗效
4、果: 實驗效果:public:void Initial( POINT *pts, int ptn); //對多邊形頂點序列進(jìn)行賦值void EdgeMark(POINT v1, POINT v2, COLORREF bcolor); //繪制該多邊形void QSeedFill( int ptn, POINT *pts, POINT seed, COLORREF fcolor, COLORREF bcolor); //
5、 多邊形填充主函數(shù)void QueueSeedFill( POINT seed, COLORREF fcolor, COLORREF bcolor); //某一種子的// 填充函數(shù)int Empty(); // 判斷種子隊列非空void Enqueue( POINT pt); //種子入隊POINT Dequeue(); //種子出隊LinkQueue q; // 隊列變量virtual ~CSeedFillView()
6、;#ifdef _DEBUGvirtual void AssertValid() const;virtual void Dump(CDumpContext#endifprotected:// Generated message map functionsprotected://{{AFX_MSG(CSeedFillView)// NOTE - the ClassWizard will add and remove member func
7、tions here.// DO NOT EDIT what you see in these blocks of generated code !//}}AFX_MSGDECLARE_MESSAGE_MAP()};#ifndef _DEBUG // debug version in SeedFillView.cppinline CSeedFillDoc* CSeedFillView::GetDocument(){ return
8、 (CSeedFillDoc*)m_pDocument; }#endif///////////////////////////////////////////////////////////////////////////////{{AFX_INSERT_LOCATION}}// Microsoft Visual C++ will insert additional declarations immediately before the
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 眾賞文庫僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 1.1種子發(fā)芽實驗(一)使用教案
- 一、4種子的萌發(fā)
- 一種緩沖材料自動填充結(jié)構(gòu)材料
- 一種子空間辨識對權(quán)重矩陣加權(quán)平均新方法.pdf
- 一種基于種子點區(qū)域生長的彩色圖象分割算法.pdf
- 10種子發(fā)芽了
- 10種子發(fā)芽了
- 一種結(jié)合NCP函數(shù)的濾子SQP算法的研究.pdf
- 9種子萌發(fā)201314
- 一種新的結(jié)合NCP函數(shù)的SQP濾子算法.pdf
- 一種修正牛頓算法.pdf
- 一種具有全局收斂性的NCP函數(shù)濾子算法.pdf
- 一種基于子頁的固態(tài)存儲FTL性能優(yōu)化算法的研究.pdf
- OFDM系統(tǒng)中一種基于子空間盲信道估計的改進(jìn)算法.pdf
- 一種電路設(shè)計子圖搜索算法的研究與實現(xiàn).pdf
- 一種VANET區(qū)域補償算法.pdf
- 一種拓展的文化算法.pdf
- 一種HMM的學(xué)習(xí)算法.pdf
- 一種改進(jìn)的CELP算法.pdf
- 一種新的顏色量化算法
評論
0/150
提交評論