基于matlab的bezier样条在曲线曲面造型中的应用

基于matlab的bezier样条在曲线曲面造型中的应用

ID:31180587

大小:109.00 KB

页数:6页

时间:2019-01-07

基于matlab的bezier样条在曲线曲面造型中的应用_第1页
基于matlab的bezier样条在曲线曲面造型中的应用_第2页
基于matlab的bezier样条在曲线曲面造型中的应用_第3页
基于matlab的bezier样条在曲线曲面造型中的应用_第4页
基于matlab的bezier样条在曲线曲面造型中的应用_第5页
资源描述:

《基于matlab的bezier样条在曲线曲面造型中的应用》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库

1、基于MATLAB的Bezier样条在曲线曲面造型中的应用  摘要:Bezier样条作为曲线曲面造型技术的一个重要分支被广泛运用于CAD/CAM技术。以MATLAB为程序平台,以Bezier样条为理论基础,首先设计出绘制曲线曲面的程序算法,进而通过算法编写出可实际操作的程序,最后用实例进行验证。其中更实现了对曲线的拟合以及将设计得到的曲面数据输入逆向工程软件imageware,从而达到利用造型成果其进行更加复杂的造型构造的目的。  关键词:Bezier样条;MATLAB;imageware  Bezier曲线起源于20世纪60年代晚期,著名的法国数学家皮耶尔

2、?Bezier运用数学方法为雷诺公司的汽车制造业研究出一种矢量绘制曲线的方法。这种方法的巧妙之处在于它是利用控制矢量点位置的变动从而改变曲线的形态。现代设计师大部分都是在计算机上进行设计,而在过去并没有发明手写板的时候,设计师们很难用鼠标绘制理想的曲线。Bezier样条的出现大大改变了这种困境,让设计师们通过输入控制点坐标,从而很容易地得到所需要的曲线。  MATLAB是美国MathWorks公司出品的一款商业数学软件,主要包括MATLAB和Simulink两大部分,是一种编程语言和数值计算环境。和其他数学类科技应用软件相比,MATLAB无论在数值计算还是

3、图形处理上都占有很大优势。本文主要讨论的就是运用Bezier样条原理在MATLAB上实现曲线拟合以及曲线曲面造型。6  一、Bezier曲线造型  1.Bezier曲线理论原理  在空间中设定n+1个点p0,…pn,则下列参数曲线为n次Bezier曲线:  P(t)=■PiJi,n(t),0≤t≤1  式中Ji,n(t)是伯恩斯坦基函数,即  Ji,n(t)=Cinti(1-t)n-i  Cin=■,i=0,……,n  以三次Bezier曲线为例,如果p0、p1、p2、p3是空间中的四个点,那么三次多项式曲线  p3(t)=■PiB3,t(t)  可用矩阵

4、表示如下:  P(t)=[t3t2t1]-13-313-630-33001000P0P1P2P3  式中Bi是第i个Bezier多项式,被称为三次Bezier曲线包含了控制点p0,…p3。  2.Bezier曲线造型程序设计  在实际拟合造型的操作中,更为复杂的图形往往由多种曲线构成,它们的复杂程度和拐点个数各不相同。按照上面的思路,则每遇到一种曲线就需要编写一个程序,这显然是麻烦而不切实际的。为了实现造型目的,需要编写一种不受函数次数限制的程序,以适应所有的曲线情况。6  通过构造参数点坐标矩阵,以伯恩斯坦基函数为基础而非某个特定次数的Bezier函数,

5、用for循环实现i从0到n(输入控制点个数)的伯恩斯坦基函数的叠加,得到参数t以1/m为步长从0到1变化时曲线上m个点的坐标并填入坐标矩阵,最后连接这些坐标点得到曲线,从而达到不受函数次数限制的目的。根据上述思路编写了以下程序:  ■  这样,当输入不同个数的参数点,就可以得到不同次数的曲线。  当需要对曲线进行拟合的时候,只知道曲线情况,而不知道控制点的坐标,则需要通过曲线上的点对其进行反求。根据Bezier曲线的矩阵形式以及伯恩斯坦基函数可以很容易写出数值方法反求控制点坐标的程序。  3.Bezier曲线造型应用  首先在坐标纸上设计出需要的图案。  

6、■  根据曲线实际情况(复杂程度、拐点个数、曲率大小等)将曲线分段并选择坐标点,通过对上文编写得到的反求控制点程序以及曲线造型程序的结合使用,最终可以在MATLAB上得到下面这幅拟合度很高的图案(因为造型过程较为繁琐复杂,本文省略中间造型程序)。  ■  二、Bezier曲面造型  1.Bezier曲面理论原理  先给出一条以u为参数的m次Bezier曲线:  P=■PiBi,m(u),0≤u≤1(1)  式中Bi,m(u)为伯恩斯坦基函数。6  让p的(m+1)个控制点分别沿着空间的(m+1)条曲线运动,而这些曲线都是以w为参数的n次Bezier曲线: 

7、 Pi=■Pi,jBi,n(w),0≤w≤1(2)  将方程(2)代入方程(1),得到Bezier曲面的表达式  P(u,w)=P=■■Pi,jBi,m(u)Bj,n(w)0≤u,0≤w≤1(3)  将Bezier曲面方程(3)改写成矩阵形式  P(u,w)=B0,m(u)B1,m(u)…Bm,m(u)?  P0,0P0,1…P0,nP1,0P1,1…P1,nPm,0Pm,1…Pm,nB0,n(w)B1,n(w)Bm,n(w)0≤u,w≤1(4)  把方程(4)用幂基的形式表示出来,表示为:  P(u,w)=[U][Mm][p][Mn]T[W]0≤u,w≤

8、1(5)  式中,[U]=[umum-1…u1];[W]=[wnw

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。