1、最新版Bzier曲线的细分技术毕业设计本科毕业设计(2013届)题 目Bzier曲线的细分技术学 院计算机学院专 业计算机科学与技术班 级学 号学生郭佳远指导教师余正生完成日期2013年6月 诚 信 承 诺我谨在此承诺:本人所写的毕业论文Bzier曲线的细分技术均系本人独立完成,没有抄袭行为,凡涉及其他作者的观点和材料,均作了注释,若有不实,后果由本人承担。 承诺人(签名): 年 月 日摘 要 本毕业设计主要设计Bzier曲线的细分技术。Bzier曲线在曲线曲面工程设计中是一种比较常用的曲线,它在线面造型及线面重构中发挥着重要作用。Bzier 曲线的显著特性是“刚性”有余,“柔性”不足。为了增
2、加曲线的“柔性”,往往采用升阶的方法,通过增加新控制顶点来加强对曲线修改的灵活性。但是如果一旦移动新生成的控制顶点,曲线次数也随之增加,有时在对曲线进行修改时,不希望改编曲线的整体次数,此时就需要对曲线进行细分。我们希望从一个控制多边形出发,按照我们事先选取的细分规则,在给定的控制多边形中插入新的顶点,再连接这些新的顶点得到新的控制多边形,所得到的新的控制多边形是初始控制多边形的加细。不断的重复上述过程,随着细分的不断进行,控制多边形就被逐渐加细,其极限状态为一条曲线,称为递归细分曲线 。在完成毕业设计的过程中,我们首先在理论上对我们的问题进行数学分析与证明,然后对解决问题的算法进行实现,并在
3、文中通过样例来支持本毕业设计研究结论的有效性。关键词:计算机辅助几何设计; Bzier曲线;deCasjau算法; 细分曲线ABSTRACT The main aim of this thesis is to devise Bzier curves subdivision techniques. Bzier curve is a relatively common curve in the engineering design of curves and surfaces, It plays an important role at online face shape and line and
4、 plane reconstruction. The Bzier curves notable features is the rigid more than flexible. In order to increase the flexible of the curve, we often adopt the method of Ascending Order, By adding new control points to enhance the flexibility of the curve changes. But if mobile newly generated control
5、vertices, the curve frequency and also increases, sometimes to modify the curve, we do not want the overall frequency and adaptation curve, then we need to curve refinements. We , Selected in advance in accordance with our rules segments, insert a new vertex in the given control polygon, and then co
6、nnect these new vertices to the new control polygon obtained new control polygon is the refinement of the initial control polygon. Constantly repeat the process, as the breakdown of the ongoing control polygon gradually increase the fine, the ultimate status of a curve, known as recursive subdivisio
7、n curve. During our working process, we firstly proved our algorithm mathematically, then implemented our algorithm by programs, and supported our method with some real samples.Key words:Computer aided geometric design; Bzier curves; deCasjau algorithm; subdivision curve1 引言1.1 课题的背景和研究意义 随着计算机技术的发展
8、和普及,计算机辅助设计与制造技术(CAD(Computer Aided Design)CAM(Computer Aided Manufacture)得到了迅猛的发展,他们推动了许多领域的设计革命,CADCAM技术的发展和应用水平已经成为衡量一个国家现代化水平的重要标志之一。而计算机辅助几何设计(Computer Aided Geometry Design,简称CADG)是CADCAM的理论基础和关键技术,一旦CAGD中有一种新的几何造型出现,往往就能很快地应用到CADCAM系统中。早期是由数学放样和外形设计的实际需要,作为样条函数及函数逼近论等在飞机、汽车、船舶制造中的实际应用而发展起来的。现
9、在,它已与许多学科有了紧密联系,成为一门新兴的交叉学科和边缘学科。CAGD主要研究在计算机图像系统的环境下对曲面信息的表示、逼近、分析和综合。现在,越来越多的科研人员从事这方面的研究,并取得了瞩目的成果。其应用的范围已从最初的飞机、汽车以及船舶制造业发展到建筑设计、生物工程、医疗卫生事业、航天材料、电子工程、服装设计、多媒体技术、动画制作等各个技术领域。随着计算机图形显示对于真实性、实时性和交互性的日益增强,图形工业和制造工业迈向一体化、信息化和网络化步伐的日益加快,CAGD得到了飞速的发展。它经历了从离散到连续,再从连续到离散的发展过程。但是,当细分(Subdivision)技术出现以后,这
10、种造型方法得到了很大的改进,人们可以直接从离散到离散,减少了过去的建立连续函数的那个环节。细分算法的由来最早可以追溯到1956年de Rahm.G提出的割角(Cutting Corner)思想。其思想是通过对折线角点进行切割生成光滑曲线。1974年,Chaikin提出了类似的生成曲线的细分方法。1978年,Catmull和Clark提出了著名的Catmull-Clark细分模式,标志着细分方法正式成为曲面建模的手段。80年代末到90年代初期,出现了许多著名的细分方法,如1987年Dyn提出四点法曲线插值模式及六点法曲线插值模式,1991年Dyn又提出Binary细分模式,稳定细分模式Cavar
11、etta 1991,Loop模式Loop 1987,蝶形模式Dyn 1990等。在细分曲线造型方面,引入均差细分、生成多项式、生成函数等概念描述细分过程,关于细分模式的收敛性、连续性分析已有了系统的研究成果。90年代中期至今是细分技术的发展期。这一阶段出现了一些新的细分方法,也有一些方法是对老方法进行改进。在细分曲线造型方面,蔡志杰对非均匀有序控制顶点时的四点法及变参数四点法的收敛性和连续性进行了分析;骆岩林研究了生成曲线的有理稳定细分方法;丁友东提出了非线性四点插值细分法;金建荣提出了非均匀四点插值细分法,生成的曲线达到G连续。2002年,Hassan提出了Ternary四点插值细分法,生成
12、了曲线达到G连续。近些年提出的细分模式还有:Ivrissimtzis等Ivrissimtzis 2004的模式;PetersPeters 2003的4-3模式;JenaJena 2002基于三角样条的细分算法;2001年李桂清提出了细分等。1.2 论文的研究内容及主要工作我们希望从一个控制多边形出发,按照我们事先选取的细分规则,在给定的控制多边形中插入新的顶点,再连接这些新的顶点得到新的控制多边形,所得到的新的控制多边形是初始控制多边形的加细。不断的重复上述过程,随着细分的不断进行,控制多边形就被逐渐加细,其极限状态为一条曲线,称为递归细分曲线 。在完成毕业设计的过程中,我们首先在理论上对我们
13、的问题进行数学分析与证明,然后对解决问题的算法进行实现,并在文中通过样例来支持本毕业设计研究结论的有效性。首先,我们要掌握掌握Bzier曲线的定义式,和控制点的选择,熟悉Bzier曲线的性质。然后,对Bzier曲线的De Casjau定义进行数学推导,证明由n+1个控制顶点定义的n次Bzier曲线可以被定义为由前后n个控制顶点决定的两个n-1次Bzier曲线和线性组合起来。考虑到实际设计的应用需求,我们将Bzier曲线的形式进行描述,在为造型设计带来方便的同时,统一描述了整张造型曲面的数学形式,便于数学证明的同时也为程序语言表达提供了方便。在具体的实现过程中,我们先编程实现Bzier曲线,并在
14、低次曲线情形产生一些示例。然后编程实现Bzier曲线的细分技术,并能产生直观的可视化效果图。本毕业设计能够显著简化Bzier曲线的设计过程,为现实生产设计带来了方便。1.3 论文的结构全文一共7章,按照整个对Bzier曲线和Bzier曲线细分技术研究过程来安排章节间的逻辑结构。第1章是前言部分,主要介绍课题的背景和研究意义,并介绍了研究过程中需要完成的主要工作。第2章介绍了参数曲线与参数曲面的简单预备知识,为之后的证明引入必要的基本的定理与结论。第3章是本文的核心章节,Bzier曲线细分技术的生成算法,并给出了本算法的若干实例以支持本算法的正确性。 第4章主要介绍了OpenGl开发环境的插件开
15、发与其他功能对本文算法的支持。第5章介绍了Bzier曲线细分技术生成算法以及该算法在OpenGl开发环境下的具体实现过程和详细代码。第6章给出了对本项目的后续开发与维护进行了介绍。第7章为全文的总结。2 预备知识2.1 Bernstein 多项式 定义:设f是0,1上的函数,,约定=1.称0,1上的多项式函数 为f的第n个Bernstein 多项式。应当将视为一个映射,它把0,1上的函数映射为0,1上的多项式函数。称为第n个Bernstein算子。2.2 Bzier曲线2.2.1 Bzier曲线的定义 或定义在任意区间a,b,即 , 表示n次Bzier曲线,(i=1,2,.,n)表示控制点,其中表示k次Bernstein基函数,k为控制多边形的顶点的序号, ,且 2.2.1 Bzier曲线的性质性质 1 Bzier曲线的递推关系: 性质 2 端点性质: (1) Bzier曲线以为起点,以为终点; (2) Bzier曲线与首末边相切,即 性质 3 对称性:将Bzier曲线多边形顺序取反,定义同一条曲线,仅曲线方向取反。即性质 4 凸包性质: 一个点集的凸包被定义为由该点集的元素形成的所有的凸组合的集合。可以这样来想象确定平面上点集的凸包:在点集的每一个元素位置上打上钉子,然后用一根封闭的橡皮绳套在所有钉子的外面,橡皮
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1