版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、 計(jì)算機(jī)科學(xué)系實(shí)驗(yàn)報(bào)告 (首頁)課程名稱 計(jì)算機(jī)圖形學(xué) 班 級(jí) 實(shí)驗(yàn)名稱 計(jì)算機(jī)圖形學(xué)綜合實(shí)驗(yàn) (二) 指導(dǎo)教師 姓名 學(xué) 號(hào) 日 期 2011年11月16日 一、實(shí)驗(yàn)?zāi)康?畫餅分圖2區(qū)域著色二、實(shí)驗(yàn)設(shè)備與環(huán)境Windows XP操作系統(tǒng)、Visual C+6.0三、算法說明、程序清單及運(yùn)行結(jié)果畫餅分圖算法說明用到了畫圓和直線的算法思想,將兩者結(jié)合起來,分別畫一個(gè)圓和兩條直線,長度為半徑。畫餅分圖源程序:void CMyView:OnPiegraph() / TODO: Add your command handler code here/先畫一個(gè)圓 CDC* pDC=GetDC(); int
2、 xc=200,yc=200,radius=100,c=RGB(0,0,255); int x1=0,y1=radius,p=3-2*radius; while(x1SetPixel(xc+x1,yc+y1,c); pDC-SetPixel(xc-x1,yc+y1,c); pDC-SetPixel(xc+x1,yc-y1,c); pDC-SetPixel(xc-x1,yc-y1,c); pDC-SetPixel(xc+y1,yc+x1,c); pDC-SetPixel(xc-y1,yc+x1,c); pDC-SetPixel(xc+y1,yc-x1,c); pDC-SetPixel(xc-y1
3、,yc-x1,c); if(pSetPixel(xc+x1,yc+y1,c); pDC-SetPixel(xc-x1,yc+y1,c); pDC-SetPixel(xc+x1,yc-y1,c); pDC-SetPixel(xc-x1,yc-y1,c); pDC-SetPixel(xc+y1,yc+x1,c); pDC-SetPixel(xc-y1,yc+x1,c); pDC-SetPixel(xc+y1,yc-x1,c); pDC-SetPixel(xc-y1,yc-x1,c);/畫一條直線,作為圓的半徑 int x3=100,y3=200,x4=200,y4=300;int i,s1,s2,
4、interchange;int x,y,deltax,deltay,f,temp;x=200;y=200;deltax=abs(x4-x3); deltay=abs(y4-y3); if(x4-x3=0)s1=1;else s1=1;if(y4-y3=0)s2=-1;else s2=-1;if(deltaydeltax)temp=deltax;deltax=deltay;deltay=temp;interchange=1;else interchange=0;f=2*deltay-deltax; pDC-SetPixel(x,y,c);for(i=1;i=0)if(interchange=1)
5、x+=s1; else y+=s2; pDC-SetPixel(x,y,c);f=f-2*deltax;else if(interchange=1)y+=s2;else x+=s1;f=f+2*deltay;/再畫一條半徑 int x5=100,y5=300,x6=200,y6=400;int j,s3,s4,interchange1;x=200;y=200;deltax=abs(x6-x5); deltay=abs(y6-y5); if(x6-x5=0)s3=1;else s3=-1;if(y6-y5=0)s4=1;else s4=-1;if(deltaydeltax)temp=deltax
6、;deltax=deltay;deltay=temp;interchange=1;else interchange=0;f=2*deltay-deltax; pDC-SetPixel(x,y,c);for(i=1;i=0)if(interchange=1)x+=s3; else y+=s4; pDC-SetPixel(x,y,c);f=f-2*deltax;else if(interchange=1)y+=s4;else x+=s3;f=f+2*deltay;實(shí)驗(yàn)結(jié)果抓圖區(qū)域著色算法說明1、 在VC中用MFC生成一個(gè)窗口。2、在該窗口的CSaoMiaoView類中添加ScanLineFill4
7、()函數(shù)。 3、在OnDraw函數(shù)中調(diào)用ScanLineFill4 ()函數(shù)。4、調(diào)試運(yùn)行。編程與代碼oldcolor = RGB(0,255,0),newcolor = RGB(255,0,0);void CSaoMiaoView:ScanLineFill4(int x,int y,COLORREF oldcolor,COLORREF newcolor)int xl,xr,i;CClientDC dc(this);HDC hdc = dc.GetSafeHdc();bool spanNeedFill;Seed pt;m_LinkStack.SetEmpty();pt.x = x;pt.y =
8、 y;m_LinkStack.push(pt);while(!m_LinkStack.IsEmpty()m_LinkStack.pop(pt);y = pt.y;x = pt.x;while(:GetPixel(hdc,x,y) = oldcolor)SetPixel(hdc,x,y,newcolor);x+;xr = x-1;x = pt.x-1;while(:GetPixel(hdc,x,y) = oldcolor)SetPixel(hdc,x,y,newcolor);x-;xl = x+1;x = xl;y = y+1;while(xxr)spanNeedFill=FALSE;while
9、(:GetPixel(hdc,x,y)=oldcolor)spanNeedFill = TRUE;x+;if(spanNeedFill)pt.x = x-1;pt.y = y;m_LinkStack.push(pt);spanNeedFill = FALSE;while(:GetPixel(hdc,x,y)!=oldcolor & xxr)x+;x = xl;y = y-2;while(xxr)spanNeedFill =FALSE;while(:GetPixel(hdc,x,y)=oldcolor)spanNeedFill = TRUE;x+;if(spanNeedFill)pt.x = x-1;pt.y = y;m_LinkStack.push(pt);spanNeedFill
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025機(jī)器買賣合同
- 2025資金托管合同范本資金托管協(xié)議書
- 2025進(jìn)料加工貿(mào)易合同
- 二零二五年度企業(yè)法人股東退出合同3篇
- 二零二五年度景區(qū)保潔員勞動(dòng)合同3篇
- 2025年度兼職協(xié)議書-企業(yè)數(shù)據(jù)分析師兼職服務(wù)協(xié)議3篇
- 2025年度養(yǎng)牛產(chǎn)業(yè)養(yǎng)殖廢棄物綜合利用合作合同3篇
- 二零二五年度綠色建筑經(jīng)營權(quán)承包管理協(xié)議書3篇
- 2025年度退股投資者關(guān)系維護(hù)協(xié)議3篇
- 二零二五年度農(nóng)村自建房農(nóng)村自建房施工安全責(zé)任合同
- 初中七年級(jí)數(shù)學(xué)運(yùn)算能力培養(yǎng)策略(課件)
- 北京市東城區(qū)2023-2024學(xué)年高二上學(xué)期期末考試+英語 含答案
- 服裝廠安全教育培訓(xùn)規(guī)章制度
- 車輛修理廠自查自糾整改方案及總結(jié)報(bào)告
- 2024版成人腦室外引流護(hù)理TCNAS 42─20241
- 湖北省八校2025屆高二生物第一學(xué)期期末質(zhì)量檢測模擬試題含解析
- 人教版八年級(jí)音樂上冊(cè) 第一單元 《拉起手》 教案
- 《馬克思主義基本原理》學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 期末測試卷(試題)-2024-2025學(xué)年人教PEP版(2024)英語三年級(jí)上冊(cè)
- 《旅游大數(shù)據(jù)》-課程教學(xué)大綱
- 工藝以及質(zhì)量保證措施,工程實(shí)施的重點(diǎn)、難點(diǎn)分析和解決方案
評(píng)論
0/150
提交評(píng)論