




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認(rèn)領(lǐng)
文檔簡介
1、Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系計計 算算 機機 圖圖 形形 學(xué)學(xué) Computer GraphicsComputer Graphics翟瑞芳翟瑞芳Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系解決的問題:解決的問題:繪出圓心在原點,半徑為繪出圓心在原點,半徑為整數(shù)整數(shù)R的圓的圓x2+y2=R2。Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系(y,x)(-y,x)(-x,y)(-x,-y)(-y,-x)(y,-x)(x,-y)八分法畫圓八分法畫圓Designed by Ruifang
2、ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系解決問題:解決問題: 只要掃描轉(zhuǎn)換八分之一圓弧,就可以求出整個圓只要掃描轉(zhuǎn)換八分之一圓弧,就可以求出整個圓弧的象素集弧的象素集1/8圓弧圓弧Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系 解決方法解決方法中點畫圓中點畫圓Bresenhem算法算法Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系 X2 + Y2 = R2Y = Round(Sqrt(R2 - X2))在一定范圍內(nèi),每給定一在一定范圍內(nèi),每給定一X值,可得一值,可得一Y值。值。當(dāng)當(dāng)X取整數(shù)時,取整數(shù)時,Y須取整。須取整。缺點:浮點運
3、算,開方,缺點:浮點運算,開方,取整,不均勻。取整,不均勻。yx算法原理算法原理:利用其函數(shù)方程,直接離散計算。利用其函數(shù)方程,直接離散計算。Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系圓的圓的極坐標(biāo)方程極坐標(biāo)方程為:為: sincosRyRx)sin( )cos()( 11111iiiiiiRroundyRroundx為一固定角度步長Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系簡單方程產(chǎn)生圓弧的方法計算復(fù)雜,簡單方程產(chǎn)生圓弧的方法計算復(fù)雜,效率極低。效率極低。Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機
4、科學(xué)與技術(shù)系構(gòu)造函數(shù)構(gòu)造函數(shù)F(x,y)=x2+y2-R2。 對于圓上的點,有對于圓上的點,有F(x,y)=0; 對于圓外的點,對于圓外的點, F(x,y)0; 而對于圓內(nèi)的點,而對于圓內(nèi)的點,F(xiàn)(x,y)0時,下一點取時,下一點取 Pd(xi +1,yi-1)。構(gòu)造判別式:構(gòu)造判別式:222)5 . 0() 1()5 . 0, 1(),(RyxyxFyxFdiiiiMMDesigned by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系誤差項的遞推(誤差項的遞推(d0) 2222)5 . 0()2( )5 . 0, 2(RyxyxFdiiii32)5 . 0(32) 1()5 .
5、0() 11(12222222iiiiiixdRyxxRyxdd0的情況的情況Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系2222)5 . 1()2( )5 . 1, 2(RyxyxFdiiii5)(25)(2)5 . 0() 1(1)5 . 0(2)5 . 0(32) 1() 15 . 0() 11(1222222222iiiiiiiiiiiiyxdyxyxRyyxxRyxd誤差項的遞推(誤差項的遞推(d0) d0的情況的情況Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系判別式的初始值判別式的初始值RRRRFyxFd25. 1
6、 )5 . 0(1 )5 . 0, 1 ()5 . 0, 1(22000Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系改進:改進:用用d-0.25d-0.25代替代替d d,此時有:,此時有:Rddyxdddxddiii125. 05)(225. 0320025. 0025. 0ddddDesigned by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系算法步驟:算法步驟:1. 輸入圓的半徑輸入圓的半徑R。2. 計算初始值計算初始值d=1.25-R、x=0、y=R。3. 繪制點繪制點(x,y)及其在八分圓中的另外七個對稱點。及其在八分圓中的另外七個對稱
7、點。4.判斷判斷d的符號。若的符號。若d0,則先將,則先將d更新為更新為d+2x+3, 再將再將(x,y)更更新為新為(x+1,y);否則先將;否則先將d更新為更新為d+2(x-y)+5,再將,再將(x,y)更新更新為為(x+1,y-1)。5. 當(dāng)當(dāng)xy時,重復(fù)步驟時,重復(fù)步驟3和和4。否則結(jié)束。否則結(jié)束。Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系 MidpointCircle(int r, int color) int x,y; float d; x=0; y=r; d=1.25-r; drawpixel(x,y,color); while(xy) if(
8、d0) d+ = 2*x+3; x+ elsed+ = 2*(x-y) + 5; x+;y-; Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系算法步驟算法步驟1.輸入圓的半徑輸入圓的半徑R。2.計算初始值計算初始值d=1-R、x=0、y=R。3.繪制點繪制點(x,y)及其在八分圓中的另外七個對稱點。及其在八分圓中的另外七個對稱點。4.判斷判斷d的符號。的符號。若若d0,則先將則先將d更新為更新為d+2x+3,再將再將(x,y)更新為更新為(x+1,y);否則先將否則先將d更新為更新為d+2(x-y)+5,再將再將(x,y)更新為更新為(x+1,y-1)。5.當(dāng)當(dāng)
9、x F(xi,yi) 向右向右- 向圓外向圓外Pi在圓外時在圓外時- F(xi,yi)0 - 向下向下- 向圓內(nèi)向圓內(nèi)Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系即求得即求得Pi點后選擇下一個象素點點后選擇下一個象素點Pi+1的規(guī)則為:的規(guī)則為:當(dāng)當(dāng)F(xi,yi) 0 取取xi+1 = xi+1,yi+1 = yi;當(dāng)當(dāng)F(xi,yi) 0 取取xi+1 = xi, yi+1 = yi - 1;這樣用于表示圓弧的點均在圓弧附近,且使這樣用于表示圓弧的點均在圓弧附近,且使F(xi,yi) 時正時負(fù),故稱正負(fù)法。時正時負(fù),故稱正負(fù)法。 快速計算的關(guān)鍵是快速計算的
10、關(guān)鍵是F(xi,yi) 的計算,能否采用增的計算,能否采用增量算法?量算法?Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系若若F(xi,yi) 已知,計算已知,計算F(xi+1,yi+1) 可分可分兩種情況:兩種情況:1、F(xi,yi)0- xi+1 = xi+1,yi+1 = yi; - F(xi+1,yi+1)= (xi+1 )2 +(yi+1 )2 -R2 - = (xi+1)2+ yi2 -R2 = F(xi,yi) +2xi +12、 F(xi,yi)0- xi+1 = xi,yi+1 = yi -1; - F(xi+1,yi+1)= (xi+1 )
11、2 +(yi+1 )2 -R2 - = xi2+(yi 1)2-R2 = F(xi,yi) - 2yi +13、初始值:略初始值:略Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系1. 橢圓的特征橢圓的特征bax xy y圖 5-14 長 半 軸 為 a, 短 半 軸 為 b的 標(biāo) 準(zhǔn) 橢 圓( (x x, ,y y) )( (x x, ,- -y y) )( (- -x x, ,- -y y) )( (- -x x, ,y y) )Designed by Ruifang ZHAI華中農(nóng)
12、業(yè)大學(xué)計算機科學(xué)與技術(shù)系0),(222222bayaxbyxF 對于橢圓上的點,有對于橢圓上的點,有F(x,y)=0F(x,y)=0; 對于橢圓外的點,對于橢圓外的點,F(xiàn)(x,y)0F(x,y)0; 對于橢圓內(nèi)的點,對于橢圓內(nèi)的點,F(xiàn)(x,y)0F(x,y)00,取,取P Pd d(x(xi i+1,y+1,yi i-1)-1)p p( (x xi i, ,y yi i) )p pu u( (x xi i+ +1 1, ,y yi i) )p pd d( (x xi i+ +1 1, ,y yi i- -1 1) )M M( (x xi i+ +1 1, ,y yi i- -0 0. .5 5
13、) ) 上上半半部部分分橢橢圓圓弧弧的的繪繪制制原原理理Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系誤差項的遞推誤差項的遞推 d10:)x(bd )x(bba).(ya)(xb ba).(ya)(xb).,yF(xdiiiiiiii32325015025022122222222222221Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系) 22() 32 ( ) 22() 32 () 5 . 0() 1( ) 5 . 1() 2() 5 . 1, 2(221222222222222221iiiiiiiiiiyaxbdyaxbbay
14、axbbayaxbyxFd誤差項的遞推誤差項的遞推 d10:Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系判別式的初始值判別式的初始值 )25. 0( )5 . 0()5 . 0, 1 (22222220babbababbFdDesigned by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系p p( (x xi i, ,y yi i) )p pl l( (x xi i, ,y yi i- -1 1) )p pr r( (x xi i+ +1 1, ,y yi i- -1 1) )M M( (x xi i+ +1 1, ,y yi i- -0 0. .
15、5 5) )5-19 下半部分橢圓弧的繪制原理再來推導(dǎo)橢圓弧下半部分的繪制公式再來推導(dǎo)橢圓弧下半部分的繪制公式Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系判別式判別式 2222222) 1() 5 . 0() 1, 5 . 0(bayaxbyxFdiiii 若若d20,取,取Pl(xi,yi-1) 若若d20,取,取Pr(xi+1,yi-1)p p( (x xi i, ,y yi i) )p pl l( (x xi i, ,y yi i- -1 1) )p pr r( (x xi i+ +1 1, ,y yi i- -1 1) )M M( (x xi i+ +
16、1 1, ,y yi i- -0 0. .5 5) )5-19 下半部分橢圓弧的繪制原理Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系誤差項的遞推誤差項的遞推 d20:)y(ad )y(aba)(ya)(xb ba)(ya)(xb),yF(xdiiiiiiii323215 . 025 . 025 . 0 2222222222222222Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系d20: ) 32() 22( ) 32() 22() 1() 5 . 0( ) 2() 5 . 1() 2, 5 . 1(22222222222222
17、2222iiiiiiiiiiyaxbdyaxbbayaxbbayaxbyxFd( (b b) ) d d = =0 0的的情情況況P Px xi ix xi i+ +2 2x xi i+ +1 1y yi i- -1 1y yi iy yi i- -2 2Designed by Ruifang ZHAI華中農(nóng)業(yè)大學(xué)計算機科學(xué)與技術(shù)系注意:注意: 上半部分的終止判別上半部分的終止判別 下半部分誤差項的初值下半部分誤差項的初值 算法步驟:算法步驟:1. 輸入橢圓的長半軸輸入橢圓的長半軸a和短半軸和短半軸b。2. 計算初始值計算初始值d=b2+a2(-b+0.25)、x=0、y=b。3. 繪制點繪制點(x,y)及其在四分象限上的另外三個對稱點。及其在四分象限上的另外三個對稱點。Des
溫馨提示
- 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. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025屆天津市濱海新區(qū)大港油田一中高二化學(xué)第二學(xué)期期末考試模擬試題含解析
- 2025年中國玻璃清洗干燥機行業(yè)市場運營狀況及投資戰(zhàn)略決策報告
- 中國農(nóng)林業(yè)機器用充氣橡膠輪胎市場供需格局及未來發(fā)展趨勢報告
- 2025年中國阻燃電線電纜行業(yè)市場調(diào)研分析及投資戰(zhàn)略咨詢報告
- 2025年圖書出版項目深度研究分析報告
- 復(fù)合材系列粘合劑融資投資立項項目可行性研究報告(齊魯咨詢)
- 2025年中國嵌入式爐灶底殼行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告
- 河北省卓越聯(lián)盟2025年高一下化學(xué)期末預(yù)測試題含解析
- 2019-2025年中國龍蝦養(yǎng)殖行業(yè)發(fā)展?jié)摿Ψ治黾巴顿Y方向研究報告
- 中國皮革數(shù)控沖孔機行業(yè)市場發(fā)展前景及發(fā)展趨勢與投資戰(zhàn)略研究報告(2024-2030)
- 2024屆江蘇省南京市燕子磯中學(xué)化學(xué)高一第二學(xué)期期末聯(lián)考試題含解析
- 醫(yī)養(yǎng)結(jié)合康復(fù)中心項目可行性研究報告
- 員工身心健康情況排查表
- 金融科技相關(guān)項目實施方案
- 基于STC89C52的智能煙霧檢測報警系統(tǒng)論文
- 危險化學(xué)品安全管理課件
- 23秋國家開放大學(xué)《液壓氣動技術(shù)》形考任務(wù)1-3參考答案
- 機械制造工藝學(xué)課程設(shè)計-張緊輪支架
- 21ZJ111 變形縫建筑構(gòu)造
- 暨南大學(xué)視聽說聽力材料part 2 A文章
- 2023年成都市成華區(qū)數(shù)學(xué)六年級第二學(xué)期期末教學(xué)質(zhì)量檢測模擬試題含解析
評論
0/150
提交評論