




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡介
實(shí)體表示與曲面造型第1頁,共106頁,2023年,2月20日,星期六第4章實(shí)體造型與曲線曲面三維實(shí)體表示基礎(chǔ)三維實(shí)體表示方法三次參數(shù)曲線雙三次參數(shù)曲面第2頁,共106頁,2023年,2月20日,星期六實(shí)體造型與曲面造型按照生成方法的不同,造型模型可以分為兩類,一類為實(shí)體造型,是根據(jù)物體的幾何結(jié)構(gòu)和拓?fù)潢P(guān)系等信息定義而成的模型,另一類為自由曲線曲面造型,它是由模擬物體或現(xiàn)象形狀的數(shù)學(xué)模型插值生成的模型。實(shí)體造型方法生成的零件汽車外殼為曲面造型第3頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)大多數(shù)復(fù)雜的圖形需要采用一組由簡單幾何元素構(gòu)成的集合來表示。4.1.1基本幾何元素點(diǎn)是最基本的零維幾何元素。二維空間中的點(diǎn)用二維坐標(biāo)(x,y)來定義,主要表現(xiàn)為孤立點(diǎn)、線段的端點(diǎn)、線段的交點(diǎn)和多邊形的頂點(diǎn);三維空間中的點(diǎn)用三維坐標(biāo)(x,y,z)來表示,主要表現(xiàn)為孤立點(diǎn)、線段的端點(diǎn)、多面體或三維空間多邊形的頂點(diǎn)。第4頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.1基本幾何元素(續(xù))邊是是一維幾何元素。一條邊由其兩個(gè)端點(diǎn)來確定。二維空間中的邊表現(xiàn)為直線段和多邊形的邊。三維空間中的邊主要表現(xiàn)為三維空間線段、三維形體的棱邊或空間多邊形的邊界。折線及自由曲線都是由直線段拼接而成的,但一般不直接用邊來表示,而是用頂點(diǎn)序列來表示。第5頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.1基本幾何元素(續(xù))面是二維幾何元素,包括多邊形和帶孔的區(qū)域。其中后者可以用外環(huán)加內(nèi)環(huán)來組合表示,也可以用簡單多邊形拼接而成。在二維空間中,非自相交的多邊形可以用其頂點(diǎn)序列來表示。在三維空間中,一般要將除三角形外的復(fù)雜多邊形用三角形面片來拼接,以保證一個(gè)小面片內(nèi)的各頂點(diǎn)能處在同一平面內(nèi)。對(duì)于二次曲面和三次曲面,先要按照采樣間隔將曲面離散化為相互拼接的簡單平面片,再進(jìn)行繪制。三維空間中的面片可以計(jì)算法矢量,可用于消隱和生成光照。第6頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.1基本幾何元素(續(xù))
環(huán)是由有向邊順序組成的面的邊界。環(huán)的邊界不能自相交。環(huán)又分為內(nèi)環(huán)和外環(huán),內(nèi)環(huán)用來表示多邊形中的孔,外環(huán)表示多邊形的外部邊界。不包含內(nèi)環(huán)的外環(huán)即可以表示普通多邊形。一般規(guī)定,內(nèi)環(huán)的邊為順時(shí)針排列,外環(huán)的邊為逆時(shí)針排列,因此,無論內(nèi)環(huán)或外環(huán),環(huán)邊的左側(cè)總是面向環(huán)的內(nèi)部。外環(huán)內(nèi)環(huán)第7頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.1基本幾何元素(續(xù))體是三維幾何元素,是由封閉的表面圍成的空間。體可以是簡單體元,也可以是復(fù)雜形體,前者如四面體、三棱柱、圓柱、圓錐、長方體等。第8頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.2幾何信息與拓?fù)湫畔缀涡畔ⅲ脕砻枋鑫矬w的位置和大小。拓?fù)湫畔?,用來描述點(diǎn)、棱邊及面片之間的鄰接關(guān)系,具體表現(xiàn)為棱邊及面片的數(shù)據(jù)結(jié)構(gòu)指向頂點(diǎn)的指針。對(duì)于用空間平面片表示其外部邊界的三維物體(以下簡稱平面物體)而言,其點(diǎn)、邊、面片之間的相互鄰接關(guān)系有9種,即點(diǎn)→點(diǎn)、點(diǎn)→邊、點(diǎn)→面、邊→點(diǎn)、邊→邊、邊→面、面→點(diǎn)、面→邊、面→面。至少需要以上這9種關(guān)系中的2種的組合才能完整地構(gòu)建一個(gè)平面物體,因此共有表示方法(或數(shù)據(jù)結(jié)構(gòu))。若存儲(chǔ)的拓?fù)潢P(guān)系少時(shí),需要存儲(chǔ)空間少,但查找時(shí)間長;當(dāng)存儲(chǔ)的拓?fù)潢P(guān)系多時(shí),占用存儲(chǔ)空間大,但查找速度快。第9頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.3實(shí)體定義要在計(jì)算機(jī)中構(gòu)造一個(gè)物體,就要使這個(gè)物體不具有任何二義性。因此,首先要對(duì)實(shí)體的有效性做一個(gè)明確的定義,據(jù)此來判斷所構(gòu)造的物體是否為有效的實(shí)體。在70年代及以前更早的一段時(shí)期,沒有關(guān)于三維物體表示和構(gòu)造的嚴(yán)密理論,只能依靠人工來檢查物體模型的有效性。當(dāng)模型的復(fù)雜程序提高或?qū)嶓w模型經(jīng)過了其它運(yùn)算和處理后,人工檢查模型的有效性就變得很困難了。第10頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.3實(shí)體定義在70年代及以前更早的一段時(shí)期,沒有關(guān)于三維物體表示和構(gòu)造的嚴(yán)密理論,只能依靠人工來檢查物體模型的有效性。當(dāng)模型的復(fù)雜程序提高或?qū)嶓w模型經(jīng)過了其它運(yùn)算和處理后,人工檢查模型的有效性就變得很困難了。要在計(jì)算機(jī)中構(gòu)造一個(gè)物體,就要使這個(gè)物體不具有任何二義性。因此,首先要對(duì)實(shí)體的有效性做一個(gè)明確的定義,據(jù)此來判斷所構(gòu)造的物體是否為有效的實(shí)體。第11頁,共106頁,2023年,2月20日,星期六4.1三維實(shí)體表示基礎(chǔ)(續(xù))4.1.3實(shí)體定義一個(gè)有效的實(shí)體應(yīng)具有的性質(zhì)如下:(1)剛性。一個(gè)實(shí)體必須有不變的形狀。(2)具有封閉的邊界,根據(jù)其邊界可將空間分為內(nèi)部和外部兩部分。(3)內(nèi)部連通。(4)占據(jù)有限的空間。(5)經(jīng)過集合運(yùn)算后,仍然是有效的實(shí)體。實(shí)體模型是最完善的模型定義,它能夠表達(dá)全部的形狀信息,如物體位置、面積、長度、體積、拓?fù)潢P(guān)聯(lián)等,同時(shí)也定義了物體的并、交、差集合運(yùn)算和歐拉運(yùn)算等。第12頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法4.2.1多邊形表示邊界表示是通過描述實(shí)體的邊界來表示實(shí)體的方法,它是描述實(shí)體的最常用的方法。平面多面體是應(yīng)用最廣泛的實(shí)體表示法(也可以用曲面表示物體的邊界),其邊界為平面多邊形。平面多面體也可以用來近似平滑曲面。第13頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法4.2.1多邊形表示平面多面體主要用頂點(diǎn)的坐標(biāo)來表示幾何信息,用點(diǎn)、邊、多邊形之間的索引關(guān)系來表示拓?fù)湫畔?,便于圖形中信息的查找??梢杂命c(diǎn)、邊、面片三者之間共9種索引關(guān)系來表示平面多面體的拓?fù)潢P(guān)系。第14頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法4.2.2多邊形表示實(shí)體的邊界能夠唯一定義一個(gè)實(shí)體,即一個(gè)實(shí)體是否合法只要對(duì)其邊界的拓?fù)潢P(guān)系進(jìn)行判斷就可以了。實(shí)體的邊界需要滿足以下條件:
(1)每條鄰邊必須要有兩個(gè)已知坐標(biāo)的端點(diǎn);
(2)每條邊只能被兩個(gè)面共享;
(3)每個(gè)頂點(diǎn)至少被三個(gè)面或三個(gè)邊所共享;
第15頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法4.2.2多邊形表示
邊界表示的優(yōu)點(diǎn)在于能夠顯式地表示形體邊界,繪制時(shí)能快速計(jì)算法向和光照效果,算法簡單;在不改變拓?fù)潢P(guān)系的前提下便于局部幾何變換;便于多個(gè)形體做并、交、差等集合運(yùn)算;可用歐拉公式來判斷實(shí)體的有效正則性。第16頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法4.2.2多邊形表示1.歐拉公式簡單多面體是指那些經(jīng)過連續(xù)的幾何形變可以變換為一個(gè)球的多面體,即這種多面體不存在貫穿多面體的孔。設(shè)簡單多面體的頂點(diǎn)數(shù)、邊數(shù)和面數(shù)分別用V、E、F表示,則存在如下關(guān)系:該公式說明了簡單多面體中頂點(diǎn)數(shù)、邊數(shù)及面數(shù)的關(guān)系。它是檢查實(shí)體有效性的一個(gè)必要條件,而不是充分條件。第17頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示(續(xù))
某些圖形可能滿足歐拉公式,但并不符合實(shí)體的定義。V=10,E=15,F(xiàn)=7,顯然滿足歐拉公式。第18頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示(續(xù))
對(duì)于非簡單多面體,以上歐拉公式不再成立,為此引入另外三個(gè)參數(shù):形體表面上的孔數(shù)(H)、穿透多面體的洞數(shù)(G)、獨(dú)立不相連接的多面體數(shù)?,則非簡單多面體能滿足下面的關(guān)系:這是擴(kuò)展以后的歐拉公式,它反映了點(diǎn)、邊、面、孔、洞、體數(shù)目之間的關(guān)系。需要注意的是,擴(kuò)展后的歐拉公式也只能作為檢查實(shí)體有效性的必要條件,不是充分條件。第19頁,共106頁,2023年,2月20日,星期六V=8,E=12,F=6V=5,E=8,F=5V=6,E=12,F=8V=24,E=36,F=15,C=1,G=1,H=3V=16,E=24,F=11,C=1,G=0,H=1第20頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示2.邊界表示的常用數(shù)據(jù)結(jié)構(gòu)下面給出一個(gè)表示三維物體的定義的數(shù)據(jù)結(jié)構(gòu)實(shí)例,該實(shí)例中用到了邊對(duì)點(diǎn)、邊對(duì)面、面對(duì)邊、面對(duì)點(diǎn)四種鄰接關(guān)系。#include<vector>usingnamespacestd;classPoint{intid;//頂點(diǎn)編號(hào),有時(shí)可以不要該成員
intx;//橫坐標(biāo)
inty;//縱坐標(biāo)}vector<Point>Points;//存放Point對(duì)象的動(dòng)態(tài)數(shù)組第21頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示classEdge{intedge_id;//邊的編號(hào),有時(shí)可以不要該成員
intBeginPoint;//為指向Points數(shù)組中對(duì)應(yīng)邊的起點(diǎn)的元素的索引
intEndPoint;//為指向Points數(shù)組中對(duì)應(yīng)邊的終點(diǎn)的元素的索引
intLeftFacet;//為指向Facets數(shù)組中對(duì)應(yīng)此邊左側(cè)鄰面的元素索引
intRightFacet;//為指向Facets數(shù)組中對(duì)應(yīng)此邊右側(cè)鄰面的元素索引}vector<Edge>Edges;//存放Edge對(duì)象的動(dòng)態(tài)數(shù)組第22頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示classFacet{vector<int>vertices;//該面片邊界頂點(diǎn)序列數(shù)組,其元素值為指向Points數(shù)組的指針
//該面片各邊的數(shù)組,其元素值為指向Edges數(shù)組的指針
vector<int>edges;}vector<Facet>Facets;//存放Facet對(duì)象的動(dòng)態(tài)數(shù)組第23頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示(1)翼邊數(shù)據(jù)結(jié)構(gòu)(WingedEdgesStructure)
翼邊數(shù)據(jù)結(jié)構(gòu)最早由美國Stanford大學(xué)的B.G.Baumgart等人提出來的。這種數(shù)據(jù)結(jié)構(gòu)以邊為核心,每條邊的記錄中設(shè)置指向其兩頂點(diǎn)、左右兩個(gè)鄰面、上下左右四條鄰邊的指針(如圖4-3)。而每個(gè)頂點(diǎn)的記錄都設(shè)置指向以它作為端點(diǎn)的某一條邊。每一個(gè)面的記錄設(shè)置指向其一條邊的指針。翼邊數(shù)據(jù)結(jié)構(gòu)便于快速而又簡便地查找圖形中各元素之間的拓?fù)潢P(guān)系,但它的存儲(chǔ)信息量大,存儲(chǔ)內(nèi)容重復(fù)。第24頁,共106頁,2023年,2月20日,星期六棱邊終點(diǎn)左上邊起點(diǎn)左下邊右下邊右上邊左側(cè)多邊形右側(cè)多邊形翼邊數(shù)據(jù)結(jié)構(gòu)第25頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示(2)對(duì)稱數(shù)據(jù)結(jié)構(gòu)(SymmetricalStructure)
對(duì)稱數(shù)據(jù)結(jié)構(gòu)中,顯示地存放了面→邊、邊→面、邊→點(diǎn)、點(diǎn)→邊的4種拓?fù)潢P(guān)系,每個(gè)面記錄中設(shè)置了指向它所有邊的指針,同樣,每條邊記錄中也設(shè)置了指向它兩個(gè)鄰面的指針和兩個(gè)頂點(diǎn)的指針,每個(gè)點(diǎn)設(shè)置以它為端點(diǎn)的所有邊的指針。這種數(shù)據(jù)結(jié)構(gòu)的空間復(fù)雜度為6E,E為實(shí)體中的邊數(shù)。第26頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2多邊形表示(續(xù))(3)半邊數(shù)據(jù)結(jié)構(gòu)(HalfEdgeStructure)是20世紀(jì)80年代提出的一種多面體表示方法。該結(jié)構(gòu)也是以邊為核心,只是每一條邊被表示成拓?fù)湟饬x下的方向相反的兩條“半邊”。半邊數(shù)據(jù)結(jié)構(gòu)在拓?fù)渖鲜怯审w-面-環(huán)-半邊-頂點(diǎn)5個(gè)層次構(gòu)成的層次結(jié)構(gòu),即實(shí)體由多邊形(面)的組合來表示,而多邊形由外環(huán)及內(nèi)環(huán)組合而成,環(huán)又是半邊構(gòu)成的序列,每條半邊又由兩個(gè)頂點(diǎn)構(gòu)成??梢砸?guī)定,所有的外環(huán)均為逆時(shí)針順序,內(nèi)環(huán)均為順時(shí)針順序。“半邊”的使用顯著增強(qiáng)了圖形的拓?fù)鋵傩院蛯哟胃?,使圖形表示和圖元查找十分方便。第27頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.2掃描表示掃描表示法是一種應(yīng)用很廣泛的三維物體表示方法,其基本原理是將空間中的一個(gè)點(diǎn)、一條邊或一個(gè)面沿某一路徑掃描,用得到的掃描軌跡來表示三維物體。掃描表示法需要定義掃描的物體及掃描運(yùn)動(dòng)的軌跡。掃描方法主要有三種:平移掃描、旋轉(zhuǎn)掃描和廣義掃描。平移掃描指物體沿某一直線方向平移一定距離旋轉(zhuǎn)掃描指物體圍繞某一軸線旋轉(zhuǎn)一定角度廣義掃描指物體沿某一空間曲線掃描一定距離第28頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.3構(gòu)造實(shí)體幾何表示構(gòu)造實(shí)體幾何法(ConstructedSolidGeometry,簡稱CSG法)是一種十分常用的實(shí)體構(gòu)造方法。基本思想是將簡單實(shí)體(又稱體素)通過集合運(yùn)算組合成所需要的物體。常用的體素可以通過邊界表示法和掃描表示法生成,如長方體、正四面體、圓柱體、圓錐體、圓臺(tái)體、八面體、輪胎體、球體等。體素還可以由多個(gè)半空間的集合運(yùn)算來表示,半空間指一個(gè)無限大的平面將三維空間分成兩個(gè)無限的區(qū)域。由多個(gè)基本體素集合運(yùn)算得到的實(shí)體也可以作為構(gòu)造更復(fù)雜形體的體素。第29頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.3構(gòu)造實(shí)體幾何表示
CSG法中集合運(yùn)算的實(shí)現(xiàn)過程可以用一棵二叉樹(稱CSG樹)來描述(如圖4-5),二叉樹的葉子結(jié)點(diǎn)表示體素或者幾何變換的參數(shù),非終端結(jié)點(diǎn)表示施加于其子結(jié)點(diǎn)上的實(shí)體集合運(yùn)算或幾何變換。二叉樹的根結(jié)點(diǎn)表示的就是集合運(yùn)算的最終結(jié)果。并平移距離平移差并第30頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))
CSG法的優(yōu)點(diǎn):①覆蓋域廣泛;②輸入方便,可直觀地構(gòu)造復(fù)雜形體;③數(shù)據(jù)結(jié)構(gòu)簡單,數(shù)據(jù)量小,用一棵二叉樹即可表示;④形體的有效性可由實(shí)體集合運(yùn)算得以自動(dòng)保證。
CSG法也有其缺點(diǎn):CSG法中的體素有很多是由參數(shù)和表面方程表示的。用表面方程及參數(shù)表示易于求交點(diǎn),方便了集合運(yùn)算,但運(yùn)算后的中間結(jié)果就很難用方程及參數(shù)表示了,即增加了進(jìn)一步參與集合運(yùn)算的難度。不過,可以將集合運(yùn)算的中間結(jié)果轉(zhuǎn)化為邊界表示,再進(jìn)行集合運(yùn)算和顯示輸出。CSG法中集合運(yùn)算會(huì)破壞原有的點(diǎn)、邊、面的顯式拓?fù)潢P(guān)系。CSG法的體素只是有限的幾種形狀,對(duì)體素不能做局部變形操作,使CSG的表示能力受到限制。第31頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))4.2.4空間細(xì)分表示空間細(xì)分表示法包括體素表示法、八叉樹表示法等。在體素表示法中,實(shí)體所占有的空間被劃分為均勻的小立方體,即小立方體構(gòu)成三維矩陣。小立方體也可以稱作體素(voxel),這里的體素類似于圖像中的像素(pixel)。如果事先給定體素的大小,則可以把體素抽象化為它的中心點(diǎn)。用體素表示的空間也被稱作三維位圖。體素表示法常用于物體的CT或MRI圖像的三維重建。第32頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))下面是基于體素表示的三維重建圖像(來源于VTK軟件)。第33頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))八叉樹表示法是一種層次結(jié)構(gòu)的占有空間計(jì)數(shù)法,由二維圖像壓縮編碼的四叉樹法擴(kuò)展而來,它是對(duì)體素表示法的一種壓縮編碼??梢詫⑽矬w所在空間用一個(gè)立方體來表示。如果該立方體完全被物體占有,則該立方體可表示為“滿”;如果立方體與物體不相交,則該立方體可表示為“空”;如果物體占有立方體的部分空間,則該立方體就等分為8個(gè)小立方體并對(duì)每個(gè)立方體編號(hào),等分后的小立方體繼續(xù)采用上面的規(guī)則編碼為“空”或“滿”,直到立方體的大小達(dá)到最小分辨率為止。第34頁,共106頁,2023年,2月20日,星期六4.2三維實(shí)體表示方法(續(xù))八叉樹模型及八叉樹編碼示意圖第35頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線在工程上經(jīng)常遇到的曲線和曲面有兩種:簡單曲線和曲面,如拋物線、雙曲線、橢圓線等,可以用函數(shù)方程或參數(shù)方程直接給出;自由曲線,形狀較為復(fù)雜,難以用二次方程描述,一般采用二次混合曲線或三次曲線。第36頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線4.3.1基本特性1.曲線的表示形式兩類問題:如何由離散點(diǎn)決定曲線已知自由曲線的形狀(即已知曲線上任意點(diǎn)的坐標(biāo)),如何交互修改,使其滿足要求。以上問題歸結(jié)為三種處理:曲線擬合,即求通過給定點(diǎn)(稱型值點(diǎn))序列的曲線;曲線插值,即在已知曲線方程的基礎(chǔ)上求曲線上所有的點(diǎn)的坐標(biāo);曲線逼近,求出形狀接近給定點(diǎn)(稱控制點(diǎn))列的曲線,曲線可以不通過給定點(diǎn)。要解決這些問題就要確定自由曲線的數(shù)學(xué)表示形式。第37頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))參數(shù)方程是表示曲線或曲面的主要形式,用它表示曲線或曲面具有如下的優(yōu)勢(shì):方程所描述的曲線的形狀本質(zhì)上與坐標(biāo)系無關(guān),即曲線的形狀只決定于給定點(diǎn)列之間的關(guān)系。參數(shù)方程把所有坐標(biāo)分量均作為參數(shù)的函數(shù),使不含坐標(biāo)值的自變量與所有因變量(各坐標(biāo)分量)完全分開。容易確定曲線的邊界。無論曲線有多長,其參數(shù)的區(qū)間都可以固定到一個(gè)范圍,如一般采用規(guī)格化區(qū)間[0,1],其參數(shù)為0或?yàn)?就代表了曲線的邊界。曲線的繪制簡單。當(dāng)參數(shù)t從0變化到1時(shí),由t值求出的點(diǎn)序列組成的連線就是方程代表的曲線。易于變換。對(duì)參數(shù)方程表示的曲線或曲面進(jìn)行幾何變換或投影變換,只需要對(duì)方程的系數(shù)變換即可,計(jì)算量小。易于處理斜率無窮大的情形。非參數(shù)方程用斜率表示曲線的變化率,碰到斜率為無窮大的問題就不好解決;而參數(shù)方程采用切矢量來表示變化率,不會(huì)出現(xiàn)無窮大的情形。第38頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.1基本特性1.曲線的表示形式工程上所用到的曲線一般要求為平滑的樣條曲線。樣條曲線是由多項(xiàng)式曲線段連接而成的曲線,要求相鄰線段的邊界處滿足特定的連續(xù)性條件。0階連續(xù),記為,是指兩個(gè)相鄰線段和在連接處的位置連續(xù)。1階連續(xù),是指相鄰兩個(gè)曲線段和不僅滿足0階連續(xù),而且在連接處的一階導(dǎo)數(shù)成正比。若在連接處方向相同,長度相等,記為,若方向相同,長度不等,記為。2階連續(xù),是指兩個(gè)相鄰曲線段不僅滿足連續(xù),而且滿足條件。記為連續(xù)。當(dāng)二階導(dǎo)數(shù)在連處完全相同時(shí),記為。第39頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.2Hermite曲線
Hermite曲線是通過給定曲線的兩個(gè)端點(diǎn)的位置矢量P0、P1,以及兩個(gè)端點(diǎn)處的切線矢量R0、R1來描述曲線的。1.三次Hermite曲線的參數(shù)方程三維空間中的自由曲線用三次參數(shù)方程表示可以用下面的形式:第40頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))或改寫為矩陣形式為若令,則求對(duì)參數(shù)t的一階導(dǎo)數(shù)得則將t=0和t=1代入、得:第41頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))用矩陣方程表示為則Hermite常數(shù)矩陣Hermite幾何矢量曲線也可表示為第42頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))因?yàn)樯厦娴腝和Gh都是三維空間中的矢量,有x,y,z三個(gè)分量,將式(4-16)表示為分量形式為顯然,只要給定Gh,就可以在0≤t≤1范圍內(nèi)求出Q(t),形成曲線上點(diǎn)的軌跡。T×Mh稱為Hermite基函數(shù)。第43頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))2.三次Hermite曲線的調(diào)和函數(shù)對(duì)于不同的三次Hermite曲線,Hermite幾何矢量不同,但Hermite基函數(shù)都相同。Hermite基函數(shù)的4個(gè)分量稱為調(diào)和函數(shù)。也就是說,Hermite調(diào)和函數(shù)通過對(duì)P0、P1、R0、R1調(diào)和而成為曲線,即第44頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))3.切線矢量對(duì)Hermite曲線形狀的影響如果令Hermite曲線的給定條件中的切線矢量R0和R1、分別為其中,,E0和E1分別為R0、R1的單位矢量。當(dāng)切線矢量的長度k0和k1變化時(shí),曲線的形狀會(huì)受到影響。當(dāng)某一矢量長度大時(shí),Hermite曲線會(huì)隨它延伸程度大,切線矢量就好像在此端點(diǎn)處對(duì)曲線施加的一種力,力越大,曲線受影響越大。第45頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.多條三次Hermite曲線的連接當(dāng)用多段Hermite曲線表示自由曲線時(shí),需要保證曲線的連接性,一般至少要保證連續(xù)。假設(shè)兩條Hermite曲線H1和H2的邊界條件Gh1和Gh2為已知,即
如果要在H1的終點(diǎn)和H2的起點(diǎn)之間再補(bǔ)一條Hermite曲線Hm,使連接處均為G1連續(xù),就要滿足下面的條件:第46頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))于是Hm的Hermite幾何矢量為上面的a,b為正的比例因子。第47頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))5.三次Hermite曲線的繪制在平面上繪制二維Hermite曲線時(shí)首先要確定P0、P1、R0、R1,由于一般情況下給出兩個(gè)端點(diǎn)處的切線矢量有些不太方便,因而限制了它的使用。但可以使用一些簡單的方法給出其端點(diǎn)處的切線矢量。比如若只繪制一段Hermite曲線,可給出4個(gè)點(diǎn)P-1、P0、P1、P2,把P0、P1作為曲線的起點(diǎn)和終點(diǎn),則切線矢量分別為第48頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))若要通過一組型值點(diǎn)繪制Hermite曲線連接而成的樣條曲線,就需要給出所有型值點(diǎn)處的切線矢量,這通常采用“三點(diǎn)法”或“五點(diǎn)法”來解決。這里給出“三點(diǎn)法”的處理過程。假設(shè)點(diǎn)的切線方向與該點(diǎn)的兩個(gè)相鄰點(diǎn)、的連線方向一致,即點(diǎn)處的斜率為:第49頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))而斜率是切線矢量的y分量與x分量之比,即不妨令Rx為某一實(shí)數(shù)(如1.0),則可求出Ry,這樣就確定了一個(gè)點(diǎn)處的切線矢量。另外,需要在型值點(diǎn)序列中的第一個(gè)點(diǎn)P0之前和最后一個(gè)點(diǎn)Pn之后各補(bǔ)充一個(gè)點(diǎn),用來求P0、Pn處的切線矢量。如可令新增的點(diǎn)與原型值點(diǎn)滿足以下的條件:(k為正的比例因子)則第50頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))6.三次Hermite曲線的算法實(shí)例classPoint//點(diǎn)類{Doublex,y;Point(doublevx,doublevy){This.x=vx;This.y=vy;}Pointoperator–(Pointp)//重載運(yùn)算符“-”{ReturnnewPoint(x-p.x,y-p.y);}}第51頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))6.三次Hermite曲線的算法實(shí)例(續(xù))//在p1和p2之間繪制一條Hermite曲線,//p1-p0為p1處的切線矢量,p3-p2為p2處的切線矢量//參數(shù)區(qū)間[0,1]被離散為count份VoidHermiteCurve(Pointp0,Pointp1,Pointp2,Pointp3,intcount){Pointr1,r2;//切線矢量
r1=p1-p0;r2=p3-p2;//調(diào)用重載-doublet=0.0;dt=1.0/count;moveto(p1.x,p2.x);//設(shè)置起點(diǎn)
for(inti=0;i<count;i++){t+=dt;doubleF1,F(xiàn)2,F(xiàn)3,F(xiàn)4;//調(diào)和函數(shù)
F1=2*t*t*t-3*t*t+1;F2=-2*t*t*t+3*t*t;F3=t*t*t-2*t*t+t;F4=t*t*t-t*t;x=p1.x*F1+p2.x*F2+r1.x*F3+r2.x*F4;y=p1.y*F1+p2.y*F2+r1.y*F3+r2.y*F4;lineto(x,y);}}第52頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線Bezier曲線是由法國雷諾汽車公司的Bezier在1971年提出的一種構(gòu)造樣條曲線和曲面的方法。這種方法能夠較直觀地表示給定的條件與曲線形狀的關(guān)系,使用戶可以方便地通過修改參數(shù)來改變曲線的形狀及階次,而且算法較為簡單,易于被用戶接受。Bezier曲線是通過一組多邊形折線的頂點(diǎn)來定義的。如果折線的頂點(diǎn)固定不變,則由其定義的Bezier曲線是唯一的。在折線的各頂點(diǎn)中,只有第一點(diǎn)和最后一點(diǎn)在曲線上且作為曲線的起始處和終止處,其他的點(diǎn)用于控制曲線的形狀及階次。曲線的形狀趨向于多邊形折線的形狀,要修改曲線,只要修改折線的各頂點(diǎn)就可以了。多邊形折線又稱Bezier曲線的控制多邊形,其頂點(diǎn)稱為控制點(diǎn)。第53頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
1.Bezier曲線的定義
Bezier曲線在本質(zhì)上是由調(diào)和函數(shù)根據(jù)控制點(diǎn)插值生成的,其數(shù)學(xué)表示式為如下的參數(shù)方程:這是一個(gè)n次多項(xiàng)式,具有n+1項(xiàng)。其中,Pi(i=0,1,…,n)表示特征多邊形的n+1個(gè)頂點(diǎn)向量;Bi,n(t)為伯恩斯坦(Bernstein)基函數(shù),它的多項(xiàng)式表示為i=1,2,…,n第54頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
1.Bezier曲線的定義
(1)一次Bezier曲線(n=1)一次多項(xiàng)式,有兩個(gè)控制點(diǎn),其數(shù)學(xué)表示及矩陣表示為:顯然,這是一條連接P0、P1的直線段。第55頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
1.Bezier曲線的定義
(2)二次Bezier曲線(n=2)二次多項(xiàng)式,有三個(gè)控制點(diǎn),其數(shù)學(xué)表示如下:由上式的結(jié)果可知,二次Bezier曲線為拋物線,圖形如圖4-11(a)。將上式改寫為矩陣形式:第56頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
1.Bezier曲線的定義
(3)三次Bezier曲線(n=3)三次多項(xiàng)式,有四個(gè)控制點(diǎn),其數(shù)學(xué)表示如下:其矩陣形式為第57頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
1.Bezier曲線的定義上面式中的Bernstein多項(xiàng)式構(gòu)成了三次Bezier曲線的一組基,或稱三次Beizer曲線的調(diào)和函數(shù),即它們是圖中所示的4條曲線。第58頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
2.Bezier曲線的性質(zhì)(1)端點(diǎn)性質(zhì)當(dāng)t=0和t=1時(shí),代入Hermite曲線公式可以得到這說明,Beizer曲線通過特征多邊形的起點(diǎn)和終點(diǎn)。第59頁,共106頁,2023年,2月20日,星期六將Bernstein多項(xiàng)式對(duì)t求導(dǎo),得第60頁,共106頁,2023年,2月20日,星期六當(dāng)t=0時(shí),,其余均為0,故有:當(dāng)t=1時(shí),,其余均為0,故有:對(duì)于三次Bezier曲線,n=3,所以這說明,Bezier曲線在起點(diǎn)、終點(diǎn)與相應(yīng)的控制多邊形相切,且在起點(diǎn)和終點(diǎn)處的切線方向與控制多邊形的第一條邊和最后一條邊的走向一致。第61頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
2.Bezier曲線的性質(zhì)(續(xù))(2)對(duì)稱性由于,如果將控制點(diǎn)的順序顛倒過來,記,則根據(jù)Beizer曲線的定義可推出:這說明,只要保持特征多邊形的頂點(diǎn)位置不變,但順序顛倒,所得新的Beizer曲線形狀不變,只是參數(shù)變化的方向相反。第62頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
2.Bezier曲線的性質(zhì)(續(xù))(3)凸包性由于當(dāng)t∈[0,1]時(shí),Bernstein多項(xiàng)式之和且這說明Bi,n(t)構(gòu)成了Beizer曲線的一組權(quán)函數(shù),所以Bezier曲線一定落在其控制多邊形的凸包之中。第63頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
2.Bezier曲線的性質(zhì)(續(xù))(4)幾何不變性
幾何不變性指Beizer曲線的形狀不隨坐標(biāo)變換而變化的特性。Beizer曲線的形狀只與各控制頂點(diǎn)的相對(duì)位置有關(guān)。因此,在對(duì)Bezier曲線進(jìn)行幾何變換時(shí),不需要對(duì)曲線上的所有點(diǎn)都進(jìn)行處理,只要先對(duì)各控制頂點(diǎn)進(jìn)行幾何變換,然后重新繪制曲線就可以了。第64頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
3.三次Bezier曲線的繪制//繪制由p0,p1,p2,p3確定的Bezier曲線//參數(shù)區(qū)間[0,1]被離散為count份VoidBezierCurve(Pointp0,Pointp1,Pointp2,Pointp3,intcount){doublet=0.0;dt=1.0/count;moveto(p1.x,p2.x);//設(shè)置起點(diǎn)
for(inti=0;i<count;i++){t+=dt;doubleF1,F(xiàn)2,F(xiàn)3,F(xiàn)4;//調(diào)和函數(shù)
doubleu=1.0–t;F1=u*u*u;F2=3*t*u*u;F3=3*t*t*u;F4=t*t*t;x=p0.x*F1+p1.x*F2+p2.x*F3+p3.x*F4;y=p0.y*F1+p1.y*F2+p2.y*F3+p3.y*F4;lineto(x,y);}第65頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
4.離散生成Beizer曲線的deCasteljau算法上面給出的Bezier曲線繪制算法完全是按照調(diào)和函數(shù)的方式寫出的,其運(yùn)算量較大。下面介紹的deCasteljau算法的效率高得多。對(duì)于n次Bezier曲線,t∈[0,1],deCasteljau算法用下面的迭代公式計(jì)算型值點(diǎn)Q(t):可以用數(shù)學(xué)規(guī)納法證明,型值點(diǎn)就是。第66頁,共106頁,2023年,2月20日,星期六對(duì)于三次Bezier曲線,有這個(gè)計(jì)算過程如下圖所示。其中橫向箭頭表示權(quán)重為1-t,斜向下的箭頭表示權(quán)重為t。權(quán)重為1-t權(quán)重為t第67頁,共106頁,2023年,2月20日,星期六根據(jù)該算法的原理還可以手工繪制一段Bezier曲線。如下圖:第68頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.3Bezier曲線(續(xù))
5Beizer曲線的連接假設(shè)兩段三次Bezier曲線S1和S2的控制點(diǎn)分別為P0、P1、P2、P3和Q0、Q1、Q2、Q3,討論滿足連續(xù)的條件。要滿足這個(gè)條件,首先要滿足C0連續(xù),即只要P3和Q0為同一點(diǎn)即可。另外,已知端點(diǎn)處的對(duì)t一階導(dǎo)數(shù)為和,二者成比例即為:比例因子上面表明,P2、P3(Q0)、Q1三點(diǎn)共線第69頁,共106頁,2023年,2月20日,星期六兩段Bezier曲線的連接第70頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線前面學(xué)過的Bezier曲線有幾點(diǎn)不足:Bezier曲線的階次是由特征多邊形的頂點(diǎn)個(gè)數(shù)決定的,n個(gè)控制點(diǎn)產(chǎn)生n-1次的Bezier曲線;由于Bernstein調(diào)和函數(shù)在[0,1]區(qū)間內(nèi)均大于等于0,在[0,1]的區(qū)間內(nèi)修改任何一個(gè)控制點(diǎn)的位置會(huì)對(duì)整個(gè)Bezier曲線的形狀有影響;1972年,deBoor和Cox分別提出了B樣條的計(jì)算方法。1974年,美國通用汽車公司的Gorden和Riesenfeld提出了B樣條曲線和曲面。B樣條曲線除保持了Bezier曲線的直觀性和凸包性等優(yōu)點(diǎn)之外,還可以局部修改,曲線形狀更趨近于特征多邊形。B樣條曲線可以連續(xù)光滑拼接,曲線的階次與頂點(diǎn)數(shù)無關(guān)。第71頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線1B樣條曲線的定義若給定m+n+1個(gè)頂點(diǎn)(m為最大段號(hào),n為階次),則第i段(i=0,1,…,m)、n次等距分割的B樣條曲線函數(shù)為其中,基底函數(shù)Pi+l為定義第i段曲線的特征多邊形的n+1個(gè)頂點(diǎn)。第72頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線
2二次B樣條曲線及其性質(zhì)二次B樣條曲線中,n=2,l=1,2,3,可以得出其中為二次B樣條曲線的3個(gè)調(diào)和函數(shù)。第73頁,共106頁,2023年,2月20日,星期六4.3.4B樣條曲線
2二次B樣條曲線及其性質(zhì)(1)端點(diǎn)位置矢量將t=0和t=1代入二次B樣條曲線公式得這表明二次B樣條曲線的起點(diǎn)在P0P1的中點(diǎn),終點(diǎn)在向量P1P2的中點(diǎn)。4.3三次參數(shù)曲線(續(xù))第74頁,共106頁,2023年,2月20日,星期六4.3.4B樣條曲線
2二次B樣條曲線及其性質(zhì)(2)端點(diǎn)切線矢量由二次B樣條公式對(duì)t求導(dǎo)可得:將t=0和t=1代入得這表明二次B樣條曲線在起點(diǎn)處的切矢量為P0P1,在終點(diǎn)處的切矢量為P1P2。4.3三次參數(shù)曲線(續(xù))第75頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線
3三次B樣條曲線及其性質(zhì)三次B樣條曲線中,n=3,l=1,2,3,4,可以得出其中構(gòu)成了三次B樣條曲線的4個(gè)調(diào)和函數(shù)。第76頁,共106頁,2023年,2月20日,星期六4.3.4B樣條曲線
3三次B樣條曲線及其性質(zhì)用矩陣形式表示為4.3三次參數(shù)曲線(續(xù))第77頁,共106頁,2023年,2月20日,星期六4.3.4B樣條曲線
3三次B樣條曲線及其性質(zhì)(1)端點(diǎn)位置矢量分別將t=0和t=1代入上面的方程,可以得到其中:以上表明,三次B樣條曲線的起點(diǎn)在的1/3處,終點(diǎn)在的1/3處。4.3三次參數(shù)曲線(續(xù))第78頁,共106頁,2023年,2月20日,星期六第79頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線
3三次B樣條曲線及其性質(zhì)(2)端點(diǎn)處切線矢量對(duì)三次B樣條曲線公式求導(dǎo)得:將t=0和t=1代入得以上表明,三次B樣條曲線在起點(diǎn)處的切線矢量平行于P0P2,長度為其一半,終點(diǎn)處的切線矢量平行于P1P3,長度為其一半。第80頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線
3三次B樣條曲線及其性質(zhì)(3)端點(diǎn)處的二階導(dǎo)數(shù)對(duì)三次B樣條曲線公式的一階導(dǎo)數(shù)式繼續(xù)求導(dǎo)得:將t=0和t=1分別代入得其中以上表明,三次B樣條曲線在起點(diǎn)處的二階導(dǎo)數(shù)矢量為的兩倍,終點(diǎn)處的二階導(dǎo)數(shù)矢量為的兩倍.第81頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線
4程序?qū)嵗?/繪制由p0,p1,p2,p3確定的B樣條曲線段//參數(shù)區(qū)間[0,1]被離散為count份VoidB_SpLine(Pointp0,Pointp1,Pointp2,Pointp3,intcount){ doublet=0.0; dt=1.0/count; moveto(p1.x,p2.x);//設(shè)置起點(diǎn)
for(inti=0;i<count;i++){ t+=dt; doubleF1,F(xiàn)2,F(xiàn)3,F(xiàn)4;//調(diào)和函數(shù)
doubleu=1.0–t; F1=-t*t*t+3*t*t–3*t+1;F2=3*t*t*t–6*t*t+4; F3=-3*t*t*t+3*t*t+3*t+1;F4=t*t*t; x=p0.x*F1+p1.x*F2+p2.x*F3+p3.x*F4; y=p0.y*F1+p1.y*F2+p2.y*F3+p3.y*F4; x/=6.0; y/=6.0; lineto(x,y);}}第82頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線5三次B樣條曲線的邊界條件假設(shè)給定一組控制點(diǎn)Pi,要求用三次B樣條曲線擬合,要使曲線能夠通過第一個(gè)控制點(diǎn)P0并切于P0P1,通過最末的控制點(diǎn)Pn并切于Pn-1Pn。解決的辦法是在P0之前和Pn之后各補(bǔ)充一個(gè)點(diǎn)P-1和Pn+1,且保證P-1P0=P0P1和PnPn+1=Pn-1Pn。這是因?yàn)?,?duì)于第i=-1段曲線,當(dāng)t=0時(shí),有顯然與已知條件相符合。第83頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線6反求B樣條曲線的控制點(diǎn)
反求三次B樣條曲線的控制點(diǎn)是指,已知曲線上的一組型值點(diǎn)Qi(i=0,1,…,n),要用一條三次B樣條曲線依次通過這些點(diǎn)。顯然,首要的問題就是找出一組與點(diǎn)列Qi對(duì)應(yīng)的控制點(diǎn)序列Pi(i=0,1,2,…,n,n+1)。假定每個(gè)型值點(diǎn)Qi都是一段B樣條曲線的Qi,3(0)起點(diǎn),而與各控制點(diǎn)的關(guān)系是第84頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線6反求B樣條曲線的控制點(diǎn)
顯然,這是一組聯(lián)立方程,左邊為已知點(diǎn),右邊為待求控制點(diǎn),共有n個(gè)方程。但未知數(shù)為n+2個(gè),因此,仍需補(bǔ)充兩個(gè)條件才有解。比如,補(bǔ)充的兩個(gè)邊界條件分別為:這樣,只剩Pi(i=2,3,…,n-1)共n-2個(gè)未知數(shù),寫出求解控制點(diǎn)的線性方程組(n-2個(gè)方程)為:第85頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線7B樣條曲線與Bezier曲線的相互轉(zhuǎn)換設(shè)一段曲線作為三次Bezier曲線的控制頂點(diǎn)為P0,P1,P2,P3,作為B樣條曲線的控制頂點(diǎn)為R0,R1,R2,R3。三次Bezier曲線的矩陣形式
可簡寫為第86頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線7B樣條曲線與Bezier曲線的相互轉(zhuǎn)換(續(xù))三次B樣條曲線的矩陣形式因二者表示同一條曲線,則有可簡寫為第87頁,共106頁,2023年,2月20日,星期六4.3三次參數(shù)曲線(續(xù))4.3.4B樣條曲線7B樣條曲線與Bezier曲線的相互轉(zhuǎn)換(續(xù))則得到下面的關(guān)系
即即第88頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面自由曲線是由一系列曲線段如Hermite曲線段、Bezier曲線段、B樣條曲線段連接而成的。類似的,空間自由曲面可以由一系列曲面片拼合而成。也就是說,曲面片是曲面的基本單元。每個(gè)曲面片都需要采用雙參數(shù)的函數(shù)表示,即我們可以用三次參數(shù)方程表示曲面片,即這樣的曲面片稱為雙三次曲面片。當(dāng)參數(shù)u固定時(shí),參數(shù)v從0到1變化會(huì)得到一組互不相交的曲線;同理,若參數(shù)v固定,而參數(shù)u從0到1變化會(huì)得到另一組互不相交的曲線。這兩組曲線相交構(gòu)成空間網(wǎng)格,所有交點(diǎn)的集合構(gòu)成了曲面片。第89頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面第90頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面4.4.1Coons曲面三次Coons曲面是以Hermite曲線的形式定義的。在曲面片上,當(dāng)u=i時(shí),從0到1變化會(huì)形成一條Hermite曲線。這條曲線是由Q(i,0)和Q(i,1)及這兩點(diǎn)處的兩個(gè)對(duì)的導(dǎo)數(shù)矢量和確定的,即而Q(i,0)和Q(i,1)只是順著參數(shù)u方向的Hermite曲線。Q(i,0)是由頂點(diǎn)P00、P10及這兩點(diǎn)處對(duì)u求導(dǎo)的切線矢量、確定的,即同理得第91頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面將上面的后兩個(gè)式子代入第一個(gè)式子得:上式中最后兩項(xiàng)對(duì)v求導(dǎo)展開,得第92頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面改為矩陣形式,得其中,于是,Coons曲面可以表示為第93頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面可見,只要給出C矩陣中的16個(gè)向量就可以確定一個(gè)雙三次Coons曲面片,但給出這些參數(shù)難度較大,特別是4個(gè)扭矢,因此不太方便使用。如果令C矩陣中的扭矢為零,則C矩陣變?yōu)檫@樣構(gòu)造起來就容易多了。由這個(gè)矩陣構(gòu)造的曲面片稱為Ferguson曲面片,它能保證在連接邊界上達(dá)到連續(xù),能夠在很多情況下滿足要求。第94頁,共106頁,2023年,2月20日,星期六4.4雙三次參數(shù)曲面4.4.2Bezier曲面與Bezier曲線類似,Bezier曲面片是由特征多面體的頂點(diǎn)決定的。給定(n+1)×(m+1)個(gè)點(diǎn)Pi,j(i=0,1,…,n;j=0,1,…,m),則可以生成一個(gè)次的Bezier曲面片,其表示形式為其中,Pij構(gòu)成了Bezier曲面片的特征多面體
溫馨提示
- 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ì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 續(xù)簽勞動(dòng)合同的合作約定
- 苗木行業(yè)咨詢合同
- 鐵路客運(yùn)服務(wù)補(bǔ)救鐵路旅客運(yùn)輸服務(wù)課件
- 中國人手勢(shì)舞課件
- 中華文化課件底圖
- 個(gè)人道德課件
- 兩個(gè)團(tuán)隊(duì)合并合同
- 服裝訂單合同范本
- 研發(fā)合同保密協(xié)議書范本
- 肇慶市實(shí)驗(yàn)中學(xué)高三上學(xué)期第周物理高效課堂教學(xué)設(shè)計(jì):運(yùn)動(dòng)的合成與分解
- 《探索三角形全等的條件》第一課時(shí)參考課件1 公開課課件
- 企業(yè)年金培訓(xùn)版教學(xué)課件
- 離合器-汽車畢業(yè)設(shè)計(jì)-設(shè)計(jì)說明書
- 健康信息學(xué)中醫(yī)藥學(xué)語言系統(tǒng)語義網(wǎng)絡(luò)框架
- 2023年中考語文一輪復(fù)習(xí)考點(diǎn)梳理+對(duì)點(diǎn)訓(xùn)練(原卷版+解析版)(打包7套)
- 幼兒繪本故事:如果不洗澡
- 2022年《趣味接力跑》教案
- 農(nóng)業(yè)機(jī)械使用與維護(hù)課程標(biāo)準(zhǔn)
- 汽輪機(jī)上缸吊出及翻缸風(fēng)險(xiǎn)分析及管控措施
- 普通高中學(xué)生綜合素質(zhì)檔案填寫樣表
- 管道機(jī)器人畢業(yè)設(shè)計(jì)正文
評(píng)論
0/150
提交評(píng)論