程序课程设计报告Bezier曲线
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
程序课程设计报告
2012年7月11日
Bezier方法与吉祥物图案设计专业:信息与计算科学
班级:信10-1
吉祥物文洛克的设计
题目: Bezier方法与吉祥物图案设计组长:石玮lun
组员:张益、李天宇
指导教师:张彩霞
时间:19周——21周
摘要:
本文对Bezier曲线及其性质进行研究,利用Matlab软件对吉祥物——文洛克进行Sobel算子边缘提取工作,之后进行找点,通过Matlab描点绘制吉祥物——文洛克的边缘。在众多的课题中,我们一眼就挑中了这个课题,因为我们觉得这项课题可能非常有意思,经过我们深入的研究,发现贝赛尔曲线很适合用来在电脑上绘制图形,用起来非常方便。
贝塞尔曲线是计算机图形图像造型的基本工具,是图形造型运用得最多的基本线条之一。阐述了Bezier方法在绘图上的应用, Bezier 曲线具有良好的几何性质,能简洁、完美地描述和表达曲面。Abstract:
In this paper, the Bezier curve and the nature of the study, use of Matlab software on the rock-mascot Sobel operator edge extraction work, after find some, through the Matlab draw some draw the edge of rock-the mascot. In many of the topic, we immediately singled out on the subject, because we feel that the subject may be very interesting, through our in-depth research, found beisaier curve is used to draw on the graphics on a computer, use rise very convenient.
Bezier computer graphics image is the basic tool modelling, is using the most graphic modelling is one of the basic line. Describes the method of drawing in Bezier application, Bezier
curve has good geometrical properties, can concise, perfect
to describe and express surface.
关键词: Bezier曲线造型边缘提取曲面 Sobel算子
Keywords:Bezier curve modeling Edge extraction curved surface Sobel operator
1.引言
曲线的表示是计算机图形学的重要内容,它是描述物体的外形,建立所画对象的数学模型的有力工具。1962年,法国雷诺汽车公司的工程师P.E.Bezier构造了一种以逼近为基础的参数曲线和曲面设计方法,以这种方法为主完成了一个称为UNISURE的曲线和曲面设计系统,并1972年在公司投入使用。Bezier方法将函数逼近同几何表示结合起来,使得设计师在工程设计中能比较直观地意识到所给条件与设计出的曲线之间的关系,能方便地通过控制输入参数来改变曲线的形状。
本文首先Bezier曲线的造型问题做进一步研究,接下来对吉祥物——文洛克进行边缘提取,利用坐标纸描点,生成一系列的点集{P i},再用Matlab画出每一条逼近曲线。
Bezier曲线具有良好的几何性质,能简洁、完美地描述和表达自由曲线曲面,在CADPCAM技术中得到广泛的应用。本课题研究的是Bezier方法与吉祥物图案设计,本课题研究的意义是为了论证Bezier曲线具有良好的几何性质,能简洁、完美地描述和表达曲面。本课题研究的整体框架是基于Matlab软件与Bezier算法得以画出图像的边缘。对图像实际问题做简单处理。
贝塞尔曲线是计算机图形图像造型的基本工具,是图形造型运用得最多的基本线条之一。它通过控制曲线上的四个点(起始点、终止点以及两个相互分离的中间点)来创造、编辑图形。其中起重要作用
的是位于曲线中央的控制线。这条线是虚拟的,中间与贝塞尔曲线交叉,两端是控制端点。移动两端的端点时贝塞尔曲线改变曲线的曲率(弯曲的程度);移动中间点(也就是移动虚拟的控制线)时,贝塞尔曲线在起始点和终止点锁定的情况下做均匀移动。
曲线是由锚点来控制的,
锚点的类型有
1.平滑点:有两个相关联的控制手柄,改变一个手柄的角度另一个也会变化,改变一个手柄的长度不影响另一个。这样我们就可以通过把一个平滑点的一个手柄的长度拖动为0,就是把手柄的端点拖到锚点上使其重合,来创建一个组合角点。平滑点的作用是沿路径引导路径,不会严重或突然改变路径。可以在需要比较平滑的曲线处加平滑点然后拖动平滑点的控制手柄来进一步控制曲线走向。
2.直角点:两条直线的交点,它不存在控制手柄,只能通过改变它的位置来调整直线的一些走向。
3.曲线角点:两条不同的曲线段在一个角交汇处的锚点。这样的锚点也是有两个控制手柄,但是之间没有任何联系,它们分别控制曲线角点两边的不同的两条曲线。注意:可能有人会觉得画不出两条曲线连在一起,更不要说产生控制两条曲线的曲线角点了。我们可以在一条曲线中间加一个锚点,这是产生的是一个平滑点,然后拖动其中一个手柄时按住alt键或者用转锚点类型
的工具,打破两个手柄的联系,这样你就成功的创建了一个曲线角点。
4.组合角点:是曲线和直线的焦点,只有一条控制曲的手柄。组合角点是如何创建的在上面已经讲过了。
2.课题中涉及的算法的基本思想或基本原理 (1)一次贝济埃曲线
曲线形状仅与特征多边形各顶点P 1有关。 当n=1时,方程式为:
P (t )=(1-t )P 0+tP 1 (0<=t <=1)
表示一条连接P 0和P 1的直线段。 (2) 二次贝济埃曲线 当n=2时,
P (t )=(1-t )2P 0+2t (1-t )P 1+t 2P 2
可整理为:
()()02
121-211-220100P P t t t P P ⎛⎫⎛⎫
⎪⎪= ⎪⎪ ⎪⎪⎝⎭⎝⎭
二次贝济埃曲线为抛物线。 (3) 三次贝济埃曲线 当n=3时,
P (t )=(1-t )3P 0+3t (1-t )2P 1+3t 2(1-t )P 2+t 3P 3
可整理为: