計算機輔助設計教程-曲線與曲面基礎知識_第1頁
計算機輔助設計教程-曲線與曲面基礎知識_第2頁
計算機輔助設計教程-曲線與曲面基礎知識_第3頁
計算機輔助設計教程-曲線與曲面基礎知識_第4頁
計算機輔助設計教程-曲線與曲面基礎知識_第5頁
已閱讀5頁,還剩95頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

王朔Email:shwang@2018.9計算機機輔助助建筑筑設計計第二講講:曲曲線及及曲面面基礎礎計算機機輔助助設計計課程程簡介介計算機機圖形形學的的相關關知識識圖形繪繪制、、圖形形變換換、曲曲線/曲面、、圖形形渲染染……Rhino軟件及及Grasshopper參數化化設計計BIM及軟件件應用用(Revit)課程主主要內內容::計算機機圖形形學部部分簡簡介::計算機機圖形形學的的研究究內容容龐雜雜而繁繁多,,凡是是與計計算機機繪圖圖相關關的內內容都都是圖圖形學學研究究的對對象。。本講義義選取取有助助于建建筑專專業同同學理理解及及掌握握計算算機輔輔助設設計相相關概概念和和應用用的知知識加加以介介紹。。為什么么講述述計算算機圖圖形學學知識識:類比::模型-視圖-控制器器(MVC模式))計算機機圖形形學=表示+繪制+交互基本的的計算算機繪繪圖知知識::1、各類類繪圖圖軟件件:AutoCAD,SketchUP,Rhino,3DSMax,Photoshops等。2、專用用的繪繪圖語語言及及開發發包::OpenGL、DirectX3D等。3、基于于PARASOLID、Acis幾何引引擎的的商商業CAD軟件。。3、各類類開發發語言言提供供的簡簡單繪繪圖功功能。。位圖(光柵圖圖像)圖形(矢量圖圖)基礎知知識::位圖(光柵圖圖像)光柵圖圖像(Image)與圖形形(Graphics,Shape,矢量圖圖)對一個個視域域中的的光強強變化化以有有限的的精度度進行行抽樣樣,會會產生生連續續強度度表面面的一一種近近似。。在計計算機機存儲儲器中中可以以用整整數的的陣列列表示示,其其中每每一個個整數數表示示一個個亮度度。用用這種種方法法編碼碼和存存儲的的圖像像稱為為位映映射圖圖像((bitmappedimage)。圖片來來源:《數字設設計媒媒體》WilliamJ.Mitchell著王王國泉泉霍霍新民民譯清清華華大學學出版版社CBitmapb;CDCd;b.LoadBitmap(IDB_BITMAP1);d.CreateCompatibleDC(pDC);d.SelectObject(&b);pDC->BitBlt(0,0,768,432,&d,1,1,SRCCOPY);unsignedk;for(inti=1;i<100;i=i+5)for(intj=1;j<100;j=j+5){k=pDC->GetPixel(i,j);chars[32];sprintf_s(s,"%d",k);pDC->TextOutW(i*15,j*5+500,CString(s));}1_3_BMP圖形(Graphics,Shape)矢量圖圖圖像可可能會會被看看成是是不同同光強強和色色彩的的點的的集合合,而而對于于設計計師而而言,,他們們一般般會創創建高高度結結構化化形式式的圖圖,并并把他他們看看成是是諸如如直線線,圓圓弧、、封閉閉多邊邊形這這樣一一些幾幾何實實體的的集合合。在在工程程制圖圖中,,會使使用直直尺和和圓規規一類類的繪繪圖工工具精精確的的畫出出幾何何實體體,并并通過過幾何何制圖圖的方方法精精確的的確定定他們們的關關系。。同樣樣,計計算機機圖形形軟件件提供供了特特定的的精確確處理理和準準確表表示幾幾何實實體的的工具具。圖片來源源:《數字設計計媒體》WilliamJ.Mitchell著王國國泉霍霍新民譯譯清華華大學出出版社使用CDC類函數繪繪制基本本的圖形形(不使用用任何軟軟件工具具,直接接寫一個個運行程程序)1、繪制一一個簡單單的矩形形DrawRectangleDoc*pDoc=GetDocument();ASSERT_VALID(pDoc);if(!pDoc)Return;CPenmyPen;myPen.CreatePen(PS_SOLID,10,RGB(255,40,0));pDC->SelectObject(myPen);intw=500;inth=300;pDC->MoveTo(50,50);pDC->LineTo(50+w,50);pDC->LineTo(50+w,50+h);pDC->LineTo(50,50+h);pDC->LineTo(50,50);1-1DrawRectangle//TODO:adddrawcodefornativedatahereCPenmyPen;myPen.CreatePen(PS_SOLID,10,RGB(255,40,0));pDC->SelectObject(myPen);pDC->Ellipse(30,20,500,300);voidCMy1_2_MouseLineView::OnLButtonDown(UINTnFlags,CPointpoint){//TODO:Addyourmessagehandlercodehereand/orcalldefaultm_StartPoint=point;CView::OnLButtonDown(nFlags,point);}voidCMy1_2_MouseLineView::OnLButtonUp(UINTnFlags,CPointpoint){//TODO:Addyourmessagehandlercodehereand/orcalldefaultCPenmyPen;myPen.CreatePen(PS_SOLID,5,RGB(255,40,0));CClientDCdc(this);dc.SelectObject(myPen);dc.MoveTo(m_StartPoint);dc.LineTo(point);CView::OnLButtonUp(nFlags,point);}for(inti=0;i<628*2;i++){inty=100*sin(float(i)/100);pDC->SetPixel(i,y+120,0);//pDC->Ellipse(i-r,y-r+120,i+r,y+r+120);Sleep(10);}voidDrawCurve(doublep[3],CDC*pDC,intp_x,intp_y){doubler=150.0,h=3;doublex[628],y[628],z[628],xe[628],ye[628],ze[628],xs[628],ys[628],zs=200,a,b,c,u,v;intm=0;a=p[0];b=p[1];c=p[2];u=sqrt(a*a+b*b+c*c);v=sqrt(a*a+b*b);for(doublet=0;t<62.8;t=t+0.1){x[m]=r*cos(t);y[m]=r*sin(t);z[m]=h*t;m++;}xe[0]=-b/v*x[0]+a/v*y[0];ye[0]=-a*c/(u*v)*x[0]-b*c/(u*v)*y[0]+v/u*z[0];ze[0]=-a/u*x[0]-b/u*y[0]-c/u*z[0]+u;xs[0]=xe[0]*zs/ze[0]+p_x;ys[0]=ye[0]*zs/ze[0]+p_y;pDC->MoveTo(xs[0],ys[0]);//pDC->Ellipse(xs[0],ys[0],xs[0]+100,xs[0]+100);for(inti=1;i<628;i++){xe[i]=-b/v*x[i]+a/v*y[i];ye[i]=-a*c/(u*v)*x[i]-b*c/(u*v)*y[i]+v/u*z[i];ze[i]=-a/u*x[i]-b/u*y[i]-c/u*z[i]+u;xs[i]=xe[i]*zs/ze[i]+p_x;ys[i]=ye[i]*zs/ze[i]+p_y;pDC->LineTo(int(xs[i]),int(ys[i]));}}在工業設設計中遇遇到的形形狀,一一般可以以分為兩兩類:(1)定形形形狀(第第一類形形狀),,通常有平平面、二二次曲面面或其他他規則曲曲面所構構成。(2)自由形形狀(第第二類形形狀),,一般來說說,包含含了自由由曲線和和自由曲曲面,設設計時通通常由給給定的一一系列型型值點來來定義期期形狀,,某些復復雜的零零件及汽汽車、飛飛機的外外形曲面面均屬于于這類形形狀。一般來說說用常規規的三視視圖的方方法,對對第一類類形狀是是適合的的,但是是將三維維形狀在在二維平平面上描描述進行行形狀信信息的傳傳遞,即即使采用用多面視視圖及其其它的表表達方法法,對某某些形狀狀來說,,也仍然然是難于于做好的的。第二類形形狀所包包含的信信息更多多,用傳傳統的工工程圖學學的方法法有一定定的困難難,在CAGD中則是用用數學方方法來定定義、描描述及傳傳遞形狀狀信息[Hu1987]。[Hu1987]胡瑞安主主編.計算機輔輔助幾何何設計[M].華中工學學院出版版社.1987PrototypeofthedesigntheClay&SculptureStudioDesign入口及玻玻璃幕墻墻調整方方案2入口及玻玻璃幕墻墻調整方方案2入口細布布(方案案2)入口室內內效果MuseumofContemporaryArt&PlanningExhibitionArchitecturebyCoopHimmelb(l)au生成式設設計(generativecomponents)來源:Pedit_Spline.dwg內插曲線線擬合曲線線?Mathematicalrepresentationofphysicalsplines?C2continuous?Interpolateallcontrolpoints?HaveGlobalcontrol(nolocalcontrol)NaturalSplines樣條函數數是美國國數學家家I.J.Shoenberg于1946年提出的的,但當當時并未未引起人人們的重重視。直直到60年代,人人們才開開始認識識到樣條條函數在在數據擬擬合、函函數逼近近、數值值微分與與積分等等重要作作用,并并廣泛的的用于汽汽車、航航空、造造船等行行業的幾幾何外形形設計[]。最初,樣樣條曲線線都是借借助于物物理樣條條得到的的,放樣樣員把富富有彈性性的細木木條(或有機玻玻璃條),用壓鐵鐵固定在在曲線應應該通過過的給定定型值點點處,樣樣條做自自然彎曲曲所繪制制出來的的曲線就就是樣條條曲線。。樣條曲曲線不僅僅通過各各有序型型值點,,并且在在各型值值點處的的一階和和二階導導數連續續,也即即該曲線線具有連連續的、、曲率變變化均勻勻的特點點。Splines?Popularizedinlate1960sinUSAutoindustry(GM)–R.Riesenfeld(1972)–W.Gordon?Origin:thethinwoodormetalstripsusedinbuilding/shipconstruction?Goal:defineacurveasasetofpiecewisesimplepolynomialfunctionsconnectedtogetherSplines樣條PierreBezierforhisfundamentalcontributionRobinForrestforhisinsightBillGordonforhismathematicalcontributionsCarldeBoorandMauriceCoxfortheCox-deBooralgorithmSteveCoonsforhismathematicalgeniusRichRiesenfeldforB-splinesElaineCohen,TomLycheandRichRiesenfeldfortheOsloAlgorithmsLewieKnappforrationalB-splinesKenVersprieforNURBSDr.PierreB′′ezier.B′′ezierwasanengineerwiththeRenaultcarcompanyandsetoutintheearly1960’’stodevelopacurveformulationwhichwouldlenditselftoshapedesign.貝塞爾曲曲線于1962年,由法法國工程程師皮埃埃爾·貝塞爾((PierreBézier)所廣泛泛發表,,他運用用貝塞爾爾曲線來來為汽車車的主體體進行設設計。貝貝塞爾曲曲線最初初由PauldeCasteljau(保爾·德·卡斯特里里奧)于1959年運用deCasteljau算法開發發,以穩穩定數值值的方法法求出貝貝塞爾曲曲線。Bezier曲線和曲曲面Bezier曲線定義給出型值值點P0,P1,…,Pn,它們所所確定的的n次Bezier曲線是::涉及到的的0!及00,按約定定均為1。當n=1時是Bernstein多項式,,調和函數數在n=2時在n=3時①②③④Bezier曲線幾何何作圖方方法兩個控制制點(LinearBezierSpline)只有兩個個控制點點P、Q的Bezier曲線是什什么樣子子的?不不難想像像是線段段PQ,如下圖圖:所以由控控制點P、Q產生的Bezier曲線的方方程是::C(u)=(1-u)P+uQ0<=u<=1曲線上參參數為u的點是通通過P和Q的線性組組合得到到的。Bezier二次曲線線(QuadraticBezierSpline)如果想得得到一條條彎曲的的曲線,,兩個控控制點是是不夠的的,加上上一個控控制點R,那么由由控制點點P、Q和R生成的Bezier曲線又是是什么樣樣子的了了?假設生成成的曲線線為C(u),其中0<=u<=1,對應于于某個特特定的u,C(u)如何計算算出來了了?我們先在在PQ上求一點點A(u)A(u)=(1-u)P+uQ在QR上求一點點B(u)B(u)=(1-u)Q+uR再在生成成的線段段上求C(u)C(u)=(1-u)A(u)+uB(u)對應于下下圖,用用這種迭迭代的方方法求出出的點C(u)就是Bezier曲線上參參數為u的點!將A(u)和B(u)的公式代代入C(u)得到:C(u)=(1-u)A(u)+uB(u)=(1-u)[(1-u)P+uQ]+u[(1-u)Q+uR]=(1-u)^2P+2u(1-u)Q+u^2R(0<=u<=1)上面的公公式給出出了從三三個控制制點P、Q和R,求取參參數u對于的曲曲線上點點的方法法,如果果u=0,則C(0)=P;如果u=1,則C(1)=R,說明曲曲線通過過P和R,與上圖圖的觀察察是一致致的;如果有四四個控制制點P、Q、R和S,給定一一個參數數值u,0<=u<=1,如何求求u對應的Bezier曲線上的的點?還還是用上上述迭代代的方法法,最后后得到的的方程是是:C(u)=(1-u)^3P+3u(1-u)^2Q+3u^2(1-u)R+u^3S繪制出來來的曲線線如下圖圖所示::Bezier曲線(CubicBezierSpline)deCasteljau算法描述述Bezier曲面若在空間間給定(m+1)(n十1)個控制點點,Vij,i=0,1,…,m,j=0,1,…,n,令上式曲面為為m×n次的Bezier曲面當m=n=1,公式成為為:設v00,v01,v10,v11四點依次是是(0,0,0),(1,0,0),(0,1,0),(0,0,1),則可得得P1,1(u,w)的坐標形形式的參參數方程程為:消去參數數,就得得馬鞍面方程:當m=n=3,曲面成成為:Bezier曲線的次次數(degree)是有控控制點的的個數決決定的((n+1個控制點點),如如果增加加曲線的的變化就就需要在在這個曲曲線的附附近增加加控制點點,這會會增加曲曲線的次次數。也可以把把不同的的Bezier曲線連接接起來,,只要第第一條曲曲線的尾尾端與第第二條曲曲線的首首端連接接起來并并具有相相同的切切線方向向,至少少可以獲獲得G1的連續性性。B-Spline需要一系系列的控控制點,,一系列列的節點點和一系系列的系系數,每每個系數數對應一一個控制制點,從從而構造造一系列列的曲線線段連接接在一起起,滿足足某個連連續條件件。Hermite曲線Hermite曲線Hermite曲線為給給定兩端端點及兩兩端點切切向量所所得的三三次曲線線。已知曲線線的兩個個端點坐坐標P0、P1,和端點點處的切切線R0、R1,確定的的一條曲曲線。令:則:給定邊界界條件::結論:只只要給定定Gh,就可以以在[0,1]范圍內求求出Q(t),即可繪繪制出Hermite曲線,對對于不同同的初始始條件,,Gh是不同的的,而T、Mh均是相同同的。Hermite.gh曲線與曲曲面基礎礎知識\B_Spline_Grasshopper\Bezier01_3P.gh曲線與曲曲面基礎礎知識\B_Spline_Grasshopper\Bezier01_4P.ghB樣條曲線線B樣條曲線線(構造造具有局局部性的的調和函函數)給定n+1個控制點點P0,P1,…,Pn,它們所所確定的的p階B樣條曲線線是:其中Ni,p(u)遞歸定義義如下::這里u0,u1,…,un+p,是一個個非遞減的序列,,稱為節節點,(u0,u1,…,un+p)稱為節點向量量。定義中中可能出出現,,這這時約定定為0。貝塞爾基基函數用用作權重重。B-樣條基函函數也一一樣,但但更復雜雜。但是是它有兩兩條貝塞塞爾基函函數所沒沒有的特特性,即即(1)定義域被被節點細細分(subdivided);(2)基函數不不是在整整個區間間非零。。實際上上,每個個B樣條基函函數在附附近一個個子區間間非零,,因此,,B-樣條基函函數具有有局部支撐撐性。1)設U是m+1個非遞遞減數的的集合,,u0<=u1<=u2<=u3<=…<=um,u0稱為節點點(knots),集合合U稱為節點點向量((Knotsvector),半開開區間[ui,ui+1)稱為第i個節點區區間。2)節點可可以被認認為是分分隔點,,區間[u0,um]被細分為為節點區區間,所所有的B樣條基函函數被定定義在[u0,um]上。3)為了定定義B-Spline基函數,,還需要要一個參參數,基基函數的的次數((degree),第i個P次的B-Spline基函數記記為Ni,p(u)。Cox-deBoor遞歸公式式Cox-deBoor遞歸公式式U={0,1,2,3}1)0次基函數數是N0,0(u)=1在[0,1),在其它它區間是是0;N1,0(u)=1在[1,2)上,在其其它區間間是0;N2,0(u)=1在[2,3)上,其它它區間是是0。為了計算算Ni,1(u),需要Ni,0(u)和Ni+1,0(u)。因此,,我們可可以計算算N0,1(u),N1,1(u),N2,1(u),N3,1(u)等等。所所有這些些Ni,1(u)寫在第三三列。一一旦所有有Ni,1(u)計算完畢畢,我們們可以計計算Ni,2(u)并將其放放在第四四列。繼繼續這個個過程直直到所有有需要的的Ni,p(u)的計算完完畢。例:現在計算算N0,1(u)和N1,1(u)。要計算算N0,1(u),因為i=0和p=1,從定義義出發有有因為u0=0,u1=1和u2=2,上式變為為因為N0,0(u)在[0,1)上非零且且N1,0(u)在[1,2)上非零,,如果u在[0,1),只有N0,0(u)對N0,1(u)有貢獻。。因此,,如果u在[0,1)上,N0,1(u)是u,N0,0(u)=u。而如果果u在[1,2)上,N0,1(u)是(2-u),N1,0(u)=(2-u)。相似的的計算得得到N1,1(u)=(u–1)N1,0(u)+(3-u)N2,0(u),如果u在[1,2)上,而N1,1(u)=u-1,如如果u在[2,3)上,N1,1(u)=3––u。下圖圖中,,黑色色和紅紅色線線分別別是N0,1(u)和N1,1(u)。注意意N0,1(u)在[0,1)和[1,2)上是非非零的的,N1,1(u)在[1,2)和[2,3)上是非非零的的。一旦獲獲得N0,1(u)和N1,1(u),可以以計算算N0,2(u)。由定定義得得到下下式:代入節節點值值得到到注意N0,1(u)在[0,1)和[1,2)上非零零而N1,1(u)在[1,2)和[2,3)上非零零。因因此,,我們們有三三種情情況要要考慮慮:1.u在[0,1)上:2.u在[1,2)上3.u在[2,3)上2.u在[1,2)上:這種情情況,,N0,1(u)和N1,1(u)都對N0,2(u)有貢獻獻。因因此N0,1(u)=2-u且N1,1(u)=u-1在[1,2)上,得到1.u在[0,1)上:這種情情況,,只有有N0,1(u)對N0,2(u)的值有有貢獻獻。因因此,,N0,1(u)是u,得到3.u在[2,3)上:這種情情況,,只有有N1,1(u)對N0,2(u)有貢獻獻。因因此N1,1(u)=3-u在[2,3)上,得得到,曲線與與曲面面基礎礎知識識\B_Spline_Grasshopper\B_Spline01.ghfor(intj=0;j<N;j++){if(_u>=ui&_u<=ui1){_result=1;}else{_result=0;}resultList.Add(_result);_u=_u+step;}A=resultList;for(intj=0;j<N;j++){_result=(_u-ui)/(ui2-ui)*_N01[j]+(ui3-_u)/(ui3-ui1)*_N11[j];resultList.Add(_result);_u=_u+step;}A=resultList;帶重復復度的的節點點如果ui是重復復度k的節點點(即ui=ui+1=...=ui+k-1),那么節節點區區間[ui,ui+1),[ui+1,ui+2),...,[ui+k-2,ui+k-1)不存在在,結結果是是,Ni,0(u),Ni+1,0(u),...,Ni+k-1,0(u)都是零零函數數。u0

u1

u2

u3

u4

u5

u6

u7

u8

u9

0000.30.50.50.6111計算Ni,0(u)。注注意因因為m=9且p=0(0次基函函數),我們有有n=m-p-1=8。如下下表所所示,,只有有四個個0次非零零基函函數::N2,0(u),N3,0(u),N5,0(u)和N6,0(u).

基函數

范圍

方程

備注

N0,0(u)所有

u

0因為

[u0,u1)=[0,0)不存在N1,0(u)所有

u

0因為

[u1,u2)=[0,0)不存在N2,0(u)[0,0.3)1

N3,0(u)[0.3,0.5)1

N4,0(u)所有

u

0因為

[u4,u5)=[0.5,0.5)不存在N5,0(u)[0.5,0.6)1

N6,0(u)[0.6,1)1

N7,0(u)所有

u

0因為

[u7,u8)=[1,1)不存在N8,0(u)所有

u

0因為

[u8,u9)=[1,1)不存在繼續計計算1次基函函數。。因為為p為1,n=m-p-1=7.下表顯顯示了了結果果:基

N0,1(u)所有

u

0N1,1(u)[0,0.3)1-(10/3)u

N2,1(u)[0,0.3)(10/3)u

[0.3,0.5)2.5(1-2u)N3,1(u)[0.3,0.5)5u-1.5N4,1(u)[0.5,0.6)6-10u

N5,1(u)[0.5,0.6)10u-5[0.6,1)2.5(1-u)N6,1(u)[0.6,1)2.5u-1.5N7,1(u)所有

u

0計算所所有的的Ni,2(u)。因為為p=2,我們有有n=m-p-1=6。下表表包含含了所所有的的Ni,2(u):

N0,2(u)[0,0.3)(1-(10/3)u)2N1,2(u)[0,0.3)(20/3)(u-(8/3)u2)[0.3,0.5)2.5(1-2u)2

N2,2(u)[0,0.3)(20/3)u2

[0.3,0.5)-3.75+25u-35u2

N3,2(u)[0.3,0.5)(5u-1.5)2

[0.5,0.6)(6-10u)2

N4,2(u)[0.5,0.6)20(-2+7u-6u2)[0.6,1)5(1-u)2

N5,2(u)[0.5,0.6)12.5(2u-1)2

[0.6,1)2.5(-4+11.5u-7.5u2)N6,2(u)[0.6,1)2.5(9-30u+25u2)在節點點0.5(2)處,因因為它它的重重復度度是2且這些些基函函數的的次數數是2,基函數數N3,2(u)在0.5(2)處是C0連續的的。這這就是是為什什么N3,2(u)在0.5(2)處有個個尖銳銳的角角。對對不在在兩個個端點點處的的節點點,例例如0.3,保持了了C1連續性性因為為它們們都是是簡單單節點點。曲線與與曲面面基礎礎知識識\B_Spline_Grasshopper\b-Spline_BaseFunction02.gh1.Ni,p(u)是一個個在u上的p次多項項式2.非負性性--對所有有的i,p和u,Ni,p(u)是非負負的3.局部支支撐((LocalSupport)--Ni,p(u)是在[ui,ui+p+1)上的非非零多多項式式。。4.在任一一區間間[ui,ui+1),最多有有p+1個p次的基基函數數非零零,即即:Ni-p,p(u),Ni-p+1,p(u),Ni-p+2,p(u),...,和Ni,p(u)5.單位分分解((PartitionofUnity)--所有非非零的的p次基函函數在在區間間[ui,ui+1)上的和和(sum)是1。6.如果節節點數數是m+1,基函數數的次次數是是p,而p次基函函數的的數目目是n+1,,那么么m=n+p+1。7.基函數數Ni,p(u)是p次多項項式的的復合合曲線線,連連接點點在[ui,ui+p+1)上的節節點處處。8.在一個個有重重復度度k的節點點處,,基函函數Ni,p(u)是Cp-k連續的的。增增加加重復復度減減小連連續性性的層層次((level),增增加次次數增增加連連續性性。上上述2次基函函數N0,2(u)在節點點2和3處是C1連續的的,因因為它它們是是簡單單節點點。NURBS(Non-UniformRationalB-Splines):DefinitionNURBS曲線可可以由由任意意數量量的控控制點點來定定義((就是是說,,任何何大于于3的數)),這這樣反反過來來就意意味著著這整整個曲曲線是是由很很多相相連的的片段段所組組成的的。下下面的的圖釋釋展示示了一一個有有10個控制制點的的D3曲線。。所有有獨立立的片片段都都給予予了一一個不不同的的顏色色。你你可以以看到到,每每一個個片段段都有有一個個非常常簡單單的形形狀;;一個個你可可以看看作近近似于于一條條傳統統的4點貝塞塞爾曲曲線的的形狀狀。片段與與片段段之間間的小小圓圈圈代表表著這這個曲曲線的的節點點向量量。這這條D3曲線擁擁有10個控制制點和和12個節點點(0~11)。這這并非非一個個巧合合,節節點的的數量量直接接取決決于點點的數數量和和度數數:K=P+(D-1)非均勻勻有理理B樣條曲曲線(NURBS),是一一種用用途廣廣泛的的樣條條曲線線,它它不僅僅能夠夠用于于描述述自由由曲線線和曲曲面,,而且且還提提供了了包括括能精精確表表達圓錐曲曲線曲面在在內各各種幾幾何體體的統統一表表達式式。自自1983年,SDRC公司成成功地地將NURBS模型應應用在在它的的實體體造型型軟件件中,,NURBS已經成成為計計算機機輔助助設計計及計計算機機輔助助制造造的幾幾何造造型基基礎,,得到到了廣廣泛應應用。。NURBSaresimplyanotherfaceofB-splinecurves.ConsidercontrolpointsPwi=(wixi,wiyi,wizi,wi).Thispointhasfourcomponentsandcanbeconsideredasapointinthefour-dimensionalspace,and,consequently,C(u)belowbecomesaB-splinecurveinthefour-dimensionalspace:曲線的的連續續性((Continuity)樣條曲曲線是是由多多項式式曲線線段連連接而而成的的曲線線,在在具體體的應應用中中,要要求連連接線線段的的連接接處滿滿足特特定的的連續續性條條件,,來保保證曲曲線整整體的的光順。組合參參數曲曲線在在連接接處具具有直直到n階的連連續導導矢,,這類類光順順性稱稱之為為Cn或n階參數數連續續性((parametriccontinuity);幾何連連續性性(geometriccontinuity)是指指組合合曲線線在連連接處處滿足足不同同于Cn的某一一組約約束條條件稱稱之為為具有有n階的幾幾何連連續性性,簡簡稱為為Gn。曲線的的連續續性((Continuity)(1)0階連續續兩個相相鄰線線段S1(t1)和S2(t2)在連接接處的的位置置連續續,即即S1(1)=S2(0)。記為為C0連續。。(2)1階連續續相鄰的

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論