版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上實(shí)驗(yàn)三 貝齊爾(Bezier)曲線曲面的生成方法 實(shí)驗(yàn)類型:綜合型一、目的與任務(wù)目的:通過學(xué)生上機(jī),了解貝齊爾(Bezier)曲線德卡斯特里奧的遞推算法和貝齊爾(Bezier)曲線的幾何作圖法。任務(wù):熟悉線框建模、表面建模的基本方法。二、內(nèi)容、要求與安排方式1、 實(shí)驗(yàn)內(nèi)容與要求: 貝齊爾(Bezier)曲線曲面的德卡斯特里奧的遞推算法P(t)=Bi,n(t)Q(i)和幾何作圖法; 要求用熟悉的編程語言編制、調(diào)試和運(yùn)行程序,并打印程序清單和輸出結(jié)果。2、實(shí)驗(yàn)安排方式:課外編寫好程序清單,按自然班統(tǒng)一安排上機(jī)。三、實(shí)驗(yàn)步驟 1、熟悉貝齊爾(Bezier)的貝齊爾基函數(shù)和貝
2、齊爾的性質(zhì)2、貝齊爾(Bezier)曲線的德卡斯特里奧的遞推算法;3、貝齊爾(Bezier)曲線的幾何作圖法;4、貝齊爾(Bezier)曲線的德卡斯特里奧的遞推算法;5、貝齊爾(Bezier)曲線的幾何作圖法。6、對幾何作圖法繪制出圖,對德卡斯特里奧的遞推算法編出程序。四、實(shí)驗(yàn)要求 1在規(guī)定的時(shí)間內(nèi)完成上機(jī)任務(wù)。 2必須實(shí)驗(yàn)前進(jìn)行復(fù)習(xí)和預(yù)習(xí)實(shí)驗(yàn)內(nèi)容。 3在熟悉命令過程中,注意相似命令在操作中的區(qū)別。 4指定圖形完成后,需經(jīng)指導(dǎo)教師認(rèn)可后,方可關(guān)閉計(jì)算機(jī)。 5完成實(shí)驗(yàn)報(bào)告一份。五、試驗(yàn)具體內(nèi)容1, Bezier 曲線的描述在空間給定n + 1 個(gè)點(diǎn)P0 ,P1 ,P2 , ,Pn ,稱下列參數(shù)曲
3、線為n 次的Bezier 曲線。P(t) = 6nt = 0PiJ i ,n (t) , 0 t 1其中J i ,n (t) 是Bernstein 基函數(shù),即B i ,n (t) = n !i !(n - i) *t(1-t);i = 0 , ,n一般稱折線P0P1P2 Pn 為曲線P(t) 的控制多邊形;稱點(diǎn)P0 ,P1 ,P2 , ,Pn 為P(t) 的控制頂點(diǎn)。在空間曲線的情況下,曲線P(t) = (x(t) ,y(t) ,z (t) ) 和控制頂點(diǎn)Pi = (Xi ,Yi ,Zi) 的關(guān)系用分量寫出即為:X(t) = 6ni = 0XiJ i ,n (t)Y(t) = 6ni = 0Y
4、iJ i ,n (t)Z(t) = 6ni = 0ZiJ i ,n (t)當(dāng)t 在區(qū)間0 ,1 上變動時(shí),就產(chǎn)生了Bezier 曲線。若只考慮x和y ,就是平面上的Bezier 曲線。以三次Bezier 曲線為例,它可用矩陣形式表示如下:P(t) = t3 t2 t 1- 1 3 - 3 13 - 6 3 0- 3 3 0 01 0 0 0Q(0)Q(1)Q(2)Q(3)0 t 1 2, Bezier 曲線的性質(zhì)Bezier 曲線具有以下性質(zhì):當(dāng)t = 0 時(shí),P(0) = P0 ,故P0 決定曲線的起點(diǎn),當(dāng)t = 1 時(shí),P(1) = Pn ,故Pn 決定曲線的終點(diǎn)。Bezier 曲線的起點(diǎn)
5、、終點(diǎn)與相應(yīng)的特征多邊形的起點(diǎn)、終點(diǎn)重合。Bezier 曲線P(t) 在P0 點(diǎn)與邊P0P1 相切,在Pn點(diǎn)與邊Pn- 1Pn 相切。Bezier 曲線P(t) 位于其控制頂點(diǎn)P0 ,P1 ,P2 ,Pn 的凸包之內(nèi)。Bezier 曲線P(t) 具有幾何不變性。Bezier 曲線P(t) 具有變差縮減性。3, Bezier 曲線的de Casteljau 算法Paul de Casteljau 發(fā)現(xiàn)了一個(gè)Bezier 曲線非常有趣的特性,任何的Bezier 曲線都能很容易地分成兩個(gè)同樣階次的Bezier 曲線。圖1 定比分割如圖1 所示,當(dāng)P0 ,P2 固定,引入?yún)?shù)t ,令P0P10P10P
6、1=P1P11P11P2=P10P20P20P11的比值為t : (1 - t) ,即有:P10= (1 - t) P0 + tP1P11= (1 - t) P1 + tP2P20= (1 - t) P10+ tP11t 從0變到1 ,第一、二式是兩條一次Bezier 曲線。將一、二式代入第三式得:P20= (1 - t) 2P0 + 2t (1 - t) P1 + t2P2當(dāng)t 從0 變到1 時(shí),它表示了由P0 、P1 、P2 三個(gè)控制頂點(diǎn)形成的一條二次Bezier 曲線。并且表明:這個(gè)二次Bezier 曲線P02 可以定義為分別由前兩個(gè)頂點(diǎn)(P0 ,P1) 和后兩個(gè)頂點(diǎn)(P1 ,P2) 決
7、定的一次Bezier 曲線的線性組合。依次類推,由四個(gè)控制點(diǎn)定義的三次Bezier 曲線P03 可被定義為分別由(P0 ,P1 ,P2) 和(P1 ,P2 ,P3) 確定的二條二次Bezier曲線的線性組合,由(n + 1) 個(gè)控制點(diǎn)Pi (i = 0 ,1 ,n) 定義的n 次Bezier 曲線P0n 可被定義為分別由前、后n 個(gè)控制點(diǎn)定義的兩條(n - 1) 次Bezier曲線P0n- 1 與P1n- 1 的線性組合:Pn0 = (1 - t) Pn- 10 + tPn- 11 t 0 ,1 由此得到Bezier 曲線的遞推計(jì)算公式:Pki =Pi k = 0(1 - t)Pk- 1i +
8、 tPk- 1i+1 k = 1 ,2 , ,n ,i = 0 ,1 , ,n - k 這便是de Casteljau 算法。用這一遞推公式,在給定參數(shù)下,求Bezier 曲線上一點(diǎn)P (t) 非常有效。上式中:Pi0 = Pi 是定義Bezier 曲線的控制點(diǎn),P0n 即為曲線P(t) 上具有參數(shù)t 的點(diǎn)。這一算法可通過簡單的幾何作圖來實(shí)現(xiàn),給定參數(shù)t 0 ,1 ,把定義域分成長度為t : (1 - t)的兩段。依次對原始控制多邊形每一邊執(zhí)行同樣的定比分割,所得分點(diǎn)就是第一級遞推生成的中間頂點(diǎn)Pi1 (i = 0 ,1 , ,n - 1) ,對這些中間頂點(diǎn)構(gòu)成的控制多邊形再執(zhí)行同樣的定比分割
9、,得第二級中間頂點(diǎn)Pi2 (i = 0 ,1 , ,n - 2) 。重復(fù)進(jìn)行下去,直到n 級遞推得到一個(gè)中間頂點(diǎn)P0n 即為所求曲線上的點(diǎn)P(t) 。當(dāng)t = 1/ 2 時(shí),從(2) 式可知,求Pik 只需進(jìn)行加法和除2 運(yùn)算,在計(jì)算機(jī)內(nèi)除2 運(yùn)算只需右移1位,計(jì)算速度快。所以通常取t = 1/ 2 最方便,即每次求得Bezier曲線的中點(diǎn)。 如圖2 所示,有0 ,1 ,2 ,3 四個(gè)控制點(diǎn),計(jì)算每條線的中點(diǎn)01 ,12 ,23 ,再得中點(diǎn)012 ,123 ,最后得到的中點(diǎn)0123 即在曲線上。四個(gè)控制點(diǎn)0 ,01 ,012 ,0123 又定義了左邊的曲線, 四個(gè)控制點(diǎn)0123 ,123 ,2
10、3 ,3 又定義了右邊的曲線,重復(fù)對左右的兩條曲線再進(jìn)行定比分割,多次進(jìn)行定比分割后,就可以用直線段代替曲線段3 。圖2 de Casteljau 算法的幾何作圖(t = 1/ 2)六、貝齊爾(Bezier)曲線德卡斯特里奧的遞推算法程序清單#include<stdio.h>#include<math.h>void main()int i,j,k,f,u,d,n,m,w,g,h;char c1;i=0;j=1;k=1;w=1;g=1;h=1;f=1;u=1;d=1;printf(" please input n number:n"); scanf(&
11、quot;%d",&n); for(i=0;i<=n;i+) for(g=1;g<=n;g+) f=f*g;for(h=1;h<=i;h+)u=u*h;for(w=1;w<=(n-i);w+) d=d*w; m=f/u/d; printf("%d",m); f=1;u=1;d=1;for(j=1;j<=i;j+) printf("t"); for(k=1;k<=(n-i);k+)printf("(1-t)"); printf("Q(%d)",i); if(i=n)break;else printf("+"); 七、運(yùn)行結(jié)果八,MATLAB曲面生成程序:th,r=meshgrid(0:5:360)*pi/180,0:.05:1); %在極坐標(biāo)系下設(shè)置一個(gè)73×21的網(wǎng)格矩陣,X,Y=pol2cart(th,r); %
溫馨提示
- 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)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 人工智能在醫(yī)療診斷中的應(yīng)用
- 2024年桂林鐵路醫(yī)院高層次衛(wèi)技人才招聘筆試歷年參考題庫頻考點(diǎn)附帶答案
- 2025年度消防器材售后服務(wù)及維修合同3篇
- 【2021屆備考】2020全國名?;瘜W(xué)試題分類解析匯編(12月):H單元-水溶液中的離子平衡
- 2025年度深圳定制旅游租車服務(wù)合同范本2篇
- 全國2021屆高三英語試題8、9月分類解析:A單元-單項(xiàng)填空(A10情態(tài)動詞與虛擬語氣)
- 場所合法經(jīng)營保證書
- 【智慧測評】2021高考生物(人教版)總復(fù)習(xí)作業(yè):必修3-第3章-植物的激素調(diào)節(jié)-階段質(zhì)量檢測
- 等比數(shù)列的性質(zhì)的經(jīng)典總結(jié)
- 全國固體廢物管理信息系統(tǒng)
- 甘肅蘭州生物制品研究所筆試題庫
- 醫(yī)院改擴(kuò)建工程可行性研究報(bào)告(論證后)
- 2021-2022學(xué)年第二學(xué)期《大學(xué)生職業(yè)發(fā)展與就業(yè)指導(dǎo)2》學(xué)習(xí)通超星期末考試答案章節(jié)答案2024年
- 國家開放大學(xué)電大本科《工程經(jīng)濟(jì)與管理》2023-2024期末試題及答案(試卷代號:1141)
- 給水排水管道工程外觀質(zhì)量檢查記錄
- 2022年國家電力公司火力發(fā)電廠勞動定員標(biāo)準(zhǔn)
- 危險(xiǎn)化學(xué)品水路運(yùn)輸安全管理規(guī)定
- 教育中的心理效應(yīng)
- 考古繪圖(課堂PPT)
- PE管熱熔對接施工方案完整
- 全國各地木材平衡含水率年平均值
評論
0/150
提交評論