版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、CAD/g技术实验报告学院:学赛:机电工程学院 姓名::机电10-01班 学承:高延良学号:541002010111实验三 贝齐尔(Bezier )曲线曲面的生成方法实验类型:综合型、目的与任务目的:通过学生上机,了解贝齐尔(Bezier)曲线德卡斯特里奥的递推算法 和贝齐尔(Bezier)曲线的几何作图法。任务:熟悉线框建模、表面建模的基本方法。二、内容、要求与安排方式1、实验内容与要求:贝齐尔(Bezier)曲线曲面的德卡斯特里奥的递推算法P (t) =EBi,n(t)Q (i)和几何作图法;要求用熟悉的编程语言编制、调试和运行程序,并打印程序清单和输出结果。2、实验安排方式:课外编写好程
2、序清单,按自然班统一安排上机。三、实验步骤1、熟悉贝齐尔(Bezier)的贝齐尔基函数和贝齐尔的性质2、贝齐尔(Bezier)曲线的德卡斯特里奥的递推算法;3、贝齐尔(Bezier)曲线的几何作图法;4、贝齐尔(Bezier)曲线的德卡斯特里奥的递推算法;5、贝齐尔(Bezier)曲线的几何作图法。6、对几何作图法绘制出图,对德卡斯特里奥的递推算法编出程序。四、实验要求在规定的时间内完成上机任务。必须实验前进行复习和预习实验内容。在熟悉命令过程中,注意相似命令在操作中的区别。指定图形完成后,需经指导教师认可后,方可关闭计算机。完成实验报告一份。五、试验具体内容1, Bezier曲线的描述在空间
3、给定n + 1个点P0 ,P1 ,P2 , ,Pn ,称下列参数曲线为n次的Bezier曲 线。P(t) = 6nt = 0PiJ i ,n (t) , 0 Wt W1其中J i ,n (t)是Bernstein基函数,即B i ,n (t) = n ! / i !(n - i) *t(1-t);i = 0 ,n一般称折线P0P1P2 -Pn为曲线P(t)的控制多边形;称点P0 ,P1 ,P2 ,Pn为 P(t)的控制顶点。在空间曲线的情况下,曲线P(t) = (x(t) ,y(t) ,z (t)和控制顶点 Pi = (Xi ,Yi ,Zi)的关系用分量写出即为:X(t) = 6ni = 0X
4、iJ i ,n (t)Y(t) = 6ni = 0YiJ i ,n (t)Z(t) = 6ni = 0ZiJ i ,n (t)当t在区间0,1上变动时,就产生了 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 Wt W1Bezier曲线的性质Bezier曲线具有以下性质:当t = 0时,P(0) = P0 ,故P0决定曲线的起点,当t = 1时,P(1) = Pn ,故Pn决定曲 线的终点
5、。Bezier曲线的起点、终点与相应的特征多边形的起点、终点重合。 Bezier曲线P(t)在P0点与边P0P1相切,在Pn点与边Pn- 1Pn相切。Bezier曲线P(t)位于其控制顶点P0 ,P1 ,P2,,Pn的凸包之内。Bezier曲线P(t)具有几何不变性。Bezier曲线P(t)具有变差缩减性。Bezier 曲线的 de Casteljau 算法Paul de Casteljau发现了一个Bezier曲线非常有趣的特性,任何的Bezier曲 线都能很容易地分成两个同样阶次的Bezier曲线。如图1所示,当P0 ,P2固定,引入参数t,令P0P10P10P1P1P11P11P2P10
6、P20P20P11的比值为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当t从0变到1时,它表示了由P0、P1、P2三个控制顶点形成的一条二次 Bezier曲线。并且表明:这个二次Bezier曲线P02可以定义为分别由前两个顶点 (P0 ,P1)和后两个顶点(P1 ,P2)决定的一次Bezier曲线的线性组合。依次类推,
7、由四个控制点定义的三次Bezier曲线P03可被定义为分别由(P0 ,P1 ,P2)和 (P1 ,P2 ,P3)确定的二条二次Bezier曲线的线性组合,由(n + 1)个控制点Pi (i = 0 ,1 ,n)定义的n次Bezier曲线P0n可被定义为分别由前、后n个控制点定 义的两条(n - 1)次Bezier曲线P0n- 1与P1n- 1的线性组合:Pn0 = (1 - t) Pn- 10 + tPn- 11 t e 0 ,1 由此得到Bezier曲线的递推计算公式:Pki = Pik = 0(1 - t)Pk- 1i + tPk- 1i+1 k = 1 ,2 ,n ,i = 0 ,1 ,
8、n - k这便是de Casteljau算法。用这一递推公式,在给定参数下,求Bezier曲线上 一点P (t)非常有效。上式中:Pi0 = Pi是定义Bezier曲线的控制点,P0n即为曲 线P(t)上具有参数t的点。这一算法可通过简单的几何作图来实现,给定参数t e 0 ,1 ,把定义域分成长度为t : (1 - t)的两段。依次对原始控制多边形每一边执 行同样的定比分割,所得分点就是第一级递推生成的中间顶点Pi1 (i = 0 ,1 ,n- 1),对这些中间顶点构成的控制多边形再执行同样的定比分割,得第二级中间顶点 Pi2 (i = 0 ,1 ,n - 2)。重复进行下去,直到n级递推得
9、到一个中间顶点P0n即为所求曲线上的点P(t)。当t = 1/ 2时,从(2)式可知,求Pik只需进行加法和除2运 算,在计算机内除2运算只需右移1位,计算速度快。所以通常取t = 1/ 2最方便, 即每次求得Bezier曲线的中点。如图2所示,有0 ,1 ,2 ,3四个控制点,计算每条线的中点01 ,12 ,23,再得中点 012 ,123,最后得到的中点0123即在曲线上。四个控制点0 ,01 ,012 ,0123又定义 了左边的曲线,四个控制点0123 ,123 ,23 ,3又定义了右边的曲线,重复对左右的两条曲线再进行定比分割,多次进行定比分割后,就可以用直线段代替曲线段3 。PiPl
10、P.图2 de Casteljau算法的几何作图(t = 1/ 2)六、贝齐尔(Bezier)曲线德卡斯特里奥的递推算法程序清单#include#includevoid 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(%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(+);七、运行结果八,MATLAB曲面生成程序:th,r=meshgrid(0:5:360)*pi/180,0:.05:1); % 在极坐标系下设置一个 73X21 的网格矩阵,一X,Y=pol2cart(t
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 购销合同贷款申请技巧分享
- 二年级品德与生活上册 爱护我们的生活环境教案3 北师大版
- 八年级历史上册 第六单元 中华民族的抗日战争第18课 从九一八事变到西安事变教案 新人教版
- 2024-2025学年高中物理 第一章 机械振动 2 单摆教案 教科版选修3-4
- 2023四年级数学上册 1 大数的认识第5课时 将整万数改写成用“万”作单位的数教案 新人教版
- 北京中南红星足球学校九年级化学上册 第三单元 课题1 分子和原子教学设计 (新版)新人教版
- 坐班合同协议书范本(2篇)
- 租的民房租房合同(2篇)
- 装修管理费合同(2篇)
- 浮选 课件 演示
- 呼吸衰竭课件
- 部编版五年级上册道德与法治《期中考试试卷》(附答案解析)
- 透水性材料施工技术方案
- 机械加工车间低压配电系统及车间变电所设计【精选文档】
- 危重患者护理质量检查月度分析总结
- 砌体结构承载力计算
- 医院科室质量与安全管理记录本精选
- 好饿的小蛇(绘本修改版)
- 4微笑着承受一切
- 叉车活塞连杆组的快速更换技巧
- 接种率监测与评价ppt课件
评论
0/150
提交评论