計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)

計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)

ID:15215782

大?。?.69 MB

頁(yè)數(shù):6頁(yè)

時(shí)間:2018-08-02

計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)_第1頁(yè)
計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)_第2頁(yè)
計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)_第3頁(yè)
計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)_第4頁(yè)
計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)_第5頁(yè)
資源描述:

《計(jì)算機(jī)圖形學(xué)(中點(diǎn)畫圓)》由會(huì)員上傳分享,免費(fèi)在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫(kù)。

1、西北師范大學(xué)計(jì)算機(jī)科學(xué)與工程學(xué)院學(xué)生實(shí)驗(yàn)報(bào)告學(xué)號(hào)專業(yè)計(jì)算機(jī)科學(xué)與技術(shù)班級(jí)師范(1)班姓名課程名稱圖形學(xué)課程類型實(shí)驗(yàn)名稱實(shí)驗(yàn)二中點(diǎn)畫圓實(shí)驗(yàn)?zāi)康模?.了解畫圓法的基本思想;?2.掌握畫圓法的基本步驟。二、實(shí)驗(yàn)原理1、判別式是中點(diǎn)畫線法的關(guān)鍵,(0<=k<=1)判別式是為了判斷下一個(gè)點(diǎn)是在當(dāng)前點(diǎn)正右邊還是右上方,是和中點(diǎn)比較的結(jié)果。d的含義下一個(gè)點(diǎn)到中點(diǎn)的垂直距離,它的正負(fù)可以做下一個(gè)位置的判斷。初值:d?=?2*a?+?b,增量:上一個(gè)點(diǎn)d>=0,則d+2*a,上一個(gè)點(diǎn)d<=0,則d+2*(a+b)。2、中點(diǎn)法是利用將中點(diǎn)坐標(biāo)代入到判別式中,通過判斷得到點(diǎn)的

2、位置(僅有兩種情況)。圓有很好的對(duì)稱性,八對(duì)稱性(其實(shí)是n對(duì)稱性),只要求出右上方的八分之一部分就可以得到整個(gè)圓弧上的坐標(biāo),顯然,判別式值小于0,中點(diǎn)在圓內(nèi),取正右方的點(diǎn),d+2x+3;判別式大于等于0,中點(diǎn)在圓外或圓上,取右下方的點(diǎn),d+2(x-y)+5;??d的初值,將(1,R-0.5)代入判別式,=1.25?-?R。為了提高效率,我們轉(zhuǎn)化為整數(shù)運(yùn)算,e?=?d?-?0.25?=?1?-?R。x++?直到?x>y。3、中點(diǎn)畫圓法是利用圓心在坐標(biāo)原點(diǎn)(0,0),半徑為R(圓的方程X^2+Y^2=R^2),將每個(gè)像素的中點(diǎn)坐標(biāo)代入圓的方程得到d,再通過d

3、的值來(lái)確定中點(diǎn)與圓的位置。中點(diǎn)畫圓法繪出的只是一個(gè)完整圓弧的八分之一,然后根據(jù)圓良好的對(duì)稱性,繪出和參考點(diǎn)對(duì)稱的另外七個(gè)點(diǎn),再用中點(diǎn)畫圓法,以生成的這幾個(gè)點(diǎn)為基礎(chǔ),繪出其它七段圓弧,構(gòu)成一個(gè)完整的園。這七個(gè)點(diǎn)的坐標(biāo)分別為:(x0+x,y0-y,c),(x0+x,y0+y,c),?(x0-x,y0-y,c),?(x0-x,y0+y,c),(x0-y,y0-x,c),(x0-y,y0+x,c),?(x0+y,y0+x,c),?(x0+y,y0-x,c)。?找到和參考點(diǎn)對(duì)稱的另外幾個(gè)點(diǎn),再在中點(diǎn)繪制圓弧的定義函數(shù)中調(diào)用,繪制另外的幾段圓弧。三、實(shí)驗(yàn)代碼及截圖代

4、碼:#include#includeMidpointCircle(intxc,intyc,intr,intcolor){intx=0,y=r,d=1-r;WholeCircle(xc,yc,x,y,color);while(x<=y){if(d<0){d+=2*x+3;x++;}else{d+=2*(x-y)+5;x++;y--;WholeCircle(xc,yc,x,y,color);}}}WholeCircle(intxc,intyc,intx,inty,intcolor){putpixel(xc+x,yc+

5、y,color);putpixel(xc-x,yc+y,color);putpixel(xc+x,yc-y,color);putpixel(xc-x,yc-y,color);putpixel(xc+y,yc+x,color);putpixel(xc-y,yc+x,color);putpixel(xc+y,yc-x,color);putpixel(xc-y,yc-x,color);}intmain(){intgdriver=DETECT,gmode;initgraph(&gdriver,&gmode,"");MidpointCircle(300,250,2

6、00,5);getch();closegraph();}實(shí)驗(yàn)結(jié)果:實(shí)驗(yàn)總結(jié):通過本次實(shí)驗(yàn)本人掌握常用圖形程序設(shè)計(jì)和編程實(shí)現(xiàn)貝塞爾曲線算法,得出相應(yīng)的輸出圖形;希望在能為以后的學(xué)習(xí)打下基礎(chǔ)。實(shí)驗(yàn)評(píng)語(yǔ):實(shí)驗(yàn)成績(jī)教師簽名

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁(yè),下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動(dòng)畫的文件,查看預(yù)覽時(shí)可能會(huì)顯示錯(cuò)亂或異常,文件下載后無(wú)此問題,請(qǐng)放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫(kù)負(fù)責(zé)整理代發(fā)布。如果您對(duì)本文檔版權(quán)有爭(zhēng)議請(qǐng)及時(shí)聯(lián)系客服。
3. 下載前請(qǐng)仔細(xì)閱讀文檔內(nèi)容,確認(rèn)文檔內(nèi)容符合您的需求后進(jìn)行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時(shí)可能由于網(wǎng)絡(luò)波動(dòng)等原因無(wú)法下載或下載錯(cuò)誤,付費(fèi)完成后未能成功下載的用戶請(qǐng)聯(lián)系客服處理。