![實(shí)驗(yàn)四Bezier曲線生成算法實(shí)現(xiàn)_第1頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/9/11206825-aaf9-470c-b38f-c897508dd9ca/11206825-aaf9-470c-b38f-c897508dd9ca1.gif)
![實(shí)驗(yàn)四Bezier曲線生成算法實(shí)現(xiàn)_第2頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/9/11206825-aaf9-470c-b38f-c897508dd9ca/11206825-aaf9-470c-b38f-c897508dd9ca2.gif)
![實(shí)驗(yàn)四Bezier曲線生成算法實(shí)現(xiàn)_第3頁](http://file2.renrendoc.com/fileroot_temp3/2021-11/9/11206825-aaf9-470c-b38f-c897508dd9ca/11206825-aaf9-470c-b38f-c897508dd9ca3.gif)
版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、計(jì)算機(jī)圖形學(xué)實(shí)驗(yàn)報(bào)告(實(shí)驗(yàn)四 ,.Bezier曲線生成算法實(shí)現(xiàn)一、實(shí)驗(yàn)?zāi)康募耙笕?Bezier曲線及 de Casteljau算法以及 b樣條曲線二、理論基礎(chǔ)詳見教材!三、算法設(shè)計(jì)與分析Bezier 曲線生成算法int degree=3,i,x,y;float t;float coeff_x4=50.0,200.0,200.0,500.0;float coeff_y4=50.0,300.0,50.0,200.0;pDC->MoveTo(coeff_x0,coeff_y0; for(i=1;i<=3;i+ pDC->LineTo(coeff_xi,coeff_yi;for(
2、t=0;t<=1;t+=0.001x=hornbez(degree,coeff_x,t; y=hornbez(degree,coeff_y,t; pDC->SetPixel(x,y,RGB(0,0,0;float CMy2View:hornbez(int degree,float coeff,float tint i,n_choose_i;float fact,t1,aux;t1=1.0-t;fact=1.0;n_choose_i=1;aux=coeff0*t1;for(i=1;ifact =fact*t;n_choose_i=n_choose_i*(degree-i+1/i;au
3、x=(aux+fact*n_choose_i*coeffi*t1;aux=aux+fact*t*coeffdegree;return aux;de Casteljau 算法void CTuView:bezpoint(int degree,int npoints,float *coeff,float points float t,delt;int i;delt=1.0/(floatnpoints;t=0.0;for (i=0;ipointsi=decas(degree,coeff,t;t=t+delt;float CTuView:decas(int degree,float *coeff,flo
4、at t int r,i;float t1;float coeffa10;t1=1.0-t;for (i=0;i<=degree;i+coeffai=coeffi; for(r=1;r<=degree;r+for (i=0;i<=degree-r;i+ coeffai=t1*coeffai+t*coeffai+1;return coeffa0;主函數(shù):void CTuView:OnDraw(CDC* pDCCTuDoc* pDoc = GetDocument(; ASSERT_VALID(pDoc;/ TODO: add draw code for native data h
5、ereint degree=5,npoints=1000,i;float coeffx=10,40,265,300,400,500;float coeffy=20,130,160,90,300,100;float points11000,points21000;for (i=0;ipDC->MoveTo(intcoeffxi,(intcoeffyi;pDC->LineTo (intcoeffxi+1,(intcoeffyi+1;bezpoint(degree,npoints,coeffx,points1;bezpoint(degree,npoints,coeffy,points2;
6、for(i=0;ipDC->SetPixel(intpoints1i,(intpoints2i,RGB(123,123,123;B 樣條曲線void CBView:bsp(int degree,int l,float *coeff,float*knot,int dense,float *points,int *point_numint i,ii;float u;*point_num=0;for(i=degree-1;iif(knoti+1>knoti for(ii=0;iiu=knoti+ii*(knoti+1-knoti/dense; points*point_num=deboo
7、r(degree,coeff,knot,u,i; *point_num=(*point_num+1;float CBView:deboor(int degree,float *coeff,float *knot,float u,int iint k,j;float t1,t2;float coeffa30;for (j=i-degree+1;j<=i+1;j+ coeffaj=coeffj;for (k=1;k<=degree;k+ for(j=i+1;j>=i-degree+k+1;j- t1=(knotj+degree-k-u/(knotj+degree-k-knotj-
8、1; t2=1.0-t1;coeffaj=t1*coeffaj-1+t2*coeffaj;return coeffai+1;主函數(shù):void CBView:OnDraw(CDC* pDCCBDoc* pDoc = GetDocument(; ASSERT_VALID(pDoc;/ TODO: add draw code for native data here int k,n;int degree,i,a;int dense=290,l=5;float coeffx=10,40,265,300,400,500,600;float coeffy=20,130,160,90,300,100,300
9、; float points12000,points22000;float knot=0,0,0,0,0,1,2,2,2,2,2;int *point_num; k=5,n=5;/*n+1 個(gè)點(diǎn) */ degree=5;a=0; point_num=&a;for (i=0;i<6;i+ pDC->MoveTo(intcoeffxi,(intcoeffyi; pDC->LineTo (intcoeffxi+1,(intcoeffyi+1;bsp(degree,l,coeffx,knot,dense,points1,point_num;bsp(degree,l,coeffy,knot,dense,points2,point_num;for(i=0;i<2000;i+pDC->SetPixel(intpoints1i,(intpoints2i,RGB(123,123,12
溫馨提示
- 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)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 總經(jīng)理蔡仲斌在集團(tuán)公司管理提升活動動員大會上的講話
- 2025年碳銨項(xiàng)目可行性研究報(bào)告
- 冷凍魚苗售賣合同范本
- 做飯保姆合同范本
- 債務(wù)轉(zhuǎn)移說明合同范例
- 保潔工人安全合同范本
- 出售照明工廠合同范本
- 公寓房裝修合同范例
- 2025年度金融產(chǎn)品廣告投放代理合同
- 代理股合同范本
- 2025年第六屆全國國家版圖知識競賽測試題庫及答案
- 2025年三方買賣協(xié)議標(biāo)準(zhǔn)版本(2篇)
- 2025年度文化演藝代理合作協(xié)議書4篇
- 【數(shù)學(xué)】2024-2025學(xué)年北師大版數(shù)學(xué)七年級下冊第四章三角形單元測試卷
- 輸變電工程監(jiān)督檢查標(biāo)準(zhǔn)化清單-質(zhì)監(jiān)站檢查
- 2024-2025學(xué)年北京海淀區(qū)高二(上)期末生物試卷(含答案)
- 中國銀行招聘筆試沖刺題2025
- 《小腦梗死護(hù)理查房》課件
- 領(lǐng)導(dǎo)學(xué) 課件全套 孫健 第1-9章 領(lǐng)導(dǎo)要素- 領(lǐng)導(dǎo)力開發(fā)
- 《PC級自動轉(zhuǎn)換開關(guān)電器(ATSE)》
- 數(shù)字電子技術(shù)(武漢科技大學(xué))知到智慧樹章節(jié)測試課后答案2024年秋武漢科技大學(xué)
評論
0/150
提交評論