计算机辅助几何设计大作业
【VIP专享】计算机辅助几何设计期末作业

为 de Boor 控制点,进而运用 B 样条方法,输出平滑后的曲线。最后综合运用 Bezier 方法及 B 样条方法开展几何设计。 1 Bezier 曲线 1.1 Bezier 曲线的定义
给定 n +1个空间向量 bi (i = 0,1,..., n) ,则 Bezier 曲线段的 n 次参数方程表示
t 从 0 变到 1,第一、二式是两条一次 Bezier 曲线。将第一、二式代入第三式得:
b02 (t ) = (1− t )2 b00 + 2t (1− t ) b10 + t2b20
当 t 从 0 变到 1 时,它表示了由 b00 , b10 , b20 三个控制顶点形成的一条二次 Bezier
( ) 曲线。并且表明:这个二次 Bezier 曲线 b02 (t ) 可以定义为分别由前两个顶点 b00,b10 ( ) 和后两个顶点 b10 ,b20 决定的一次 Bezier 曲线的线性组合。依次类推,由四个控 ( ) ( ) 制点定义的三次 Bezier 曲线 b03 (t ) 可被定义为分别由 b00 , b10 , b20 和 b10 , b20 , b30 确定
3
姓名:
学号:
专业:
不太适合在工程上使用。但使用德卡斯特里奥(de Casteljau)提出的递推算法则简 单得多。
图 3 定比分割 如图 3 所示,设 b00 , b02 , b20 是一条抛物线上顺序三个不同的点。过 b00 和 b20 点的 两切线交于 b10 点,过 b02 点的切线交 b00b10 和 b10b20 于 b01 和 b11 ,则如下比例成立:
p (t ) = (1− t )3 b0 + 3(1− t )2 tb1 + 3(1− t )t2b2 + t3b3
《计算机辅助图形设计》考试大纲及习题含答案

《计算机辅助图形设计》考试大纲及练习学生姓名:学生身份证号:学生准考证号:完成作业时间:机构形象设计试大纲第一部分课程性质与目标一、课程性质与特点计算机辅助图形设计是高等教育自学考试艺术设计类专业的重要技能课程之一,本课程主要介绍了Photoshop设计软件的操作技能与设计方法,在突出视觉表现的基础上,强调技能与设计相结合,体现出它的实践性、目的性与功能性。
通过本课程的学习,考生可以获得应用计算机辅助设计软件进行图形设计的实践能力。
二、课程目标与基本要求学习本课程,目的是使考生全面地了解和掌握设计界面和设计软件的各项功能及其设计运作过程,学会运用辅助设计软件并能与设计结合,更好的表达主题设计思想。
通过本课程的学习,要求考生正确理解计算机辅助设计的作用,明确其应用的范围,熟练掌握Photoshop软件的操作技能与设计方法,为今后的设计实践服务。
三、与本专业其他课程的关系计算机辅助图形设计是艺术设计类专业考生必修的一门课程,它是设计表现的有效工具,通常技能与技法课程在设计课程体系中有着较大比重。
它也是一门与实际生活、创作学习密切相关的艺术设计基础课程。
第二部分考核内容与考核目标第一章概论一、学习目的与要求通过本章学习,使考生在开始利用Photoshop进行创作前初步了解平面设计的基础知识和基本规律。
二、考核知识点与考核目标计算机辅助设计的作用与Photoshop软件(一般)理解:计算机设计识记:Photoshop的功能与使用范围第二章Photoshop CS界面与窗口一、学习目的与要求通过本章学习,了解Photoshop CS中文版的界面组成与工作环境。
二、考核知识点与考核目标Photoshop CS中文版的界面(次重要)识记:Photoshop CS中文版的工作窗口;菜单栏;工具箱;工具选项栏;调板应用:在熟记的基础上较熟练上机练习第三章Photoshop CS设计基础一、学习目的与要求通过本章的学习,熟悉Photoshop CS的操作与运行工具的使用。
计算机辅助工程大作业

CAE(Computer Aided Engineering)是用计算机辅助求解复杂工程和产品结构强度、刚度、屈曲稳定性、动力响应、热传导、三维多体接触、弹塑性等力学性能的分析计算以及结构性能的优化设计等问题的一种近似数值分析方法。
其基本思想是将一个形状复杂的连续体的求解区域分解为有限的形式简单的子区域,即将一个连续体简化为由有限个单元组合的等效组合体;通过将连续体离散化,把求解连续体的场变量(应力、位移、压力和温度等)问题简化为求解有限的单元节点上的场变量值。
此时求解的基本方程将是一个代数方程组,而不是原来描述真实连续体场变量的微分方程组,得到的是近似的数值解,求解的近似程度取决于所采用的单元类型、数量以及对单元的插值函数。
CAE从20世纪60年代初开始在工程上应用到今天,已经历了40多年的发展历史,其理论和算法都经历了从蓬勃发展到日趋成熟的过程,现已成为工程和产品结构分析中(如航空、航天、机械、土木结构等领域)必不可少的数值计算工具,同时也是分析连续力学各类问题的一种重要手段。
随着计算机技术的普及和不断提高,CAE系统的功能和计算精度都有很大提高,各种基于产品数字建模的CAE 系统应运而生,并已成为结构分析和结构优化的重要工具,同时也是计算机辅助4C系统(CAD/CAPP/CAM/CAE)的重要环节。
CAE系统的核心思想是结构的离散化,就是将实际结构离散为有限数目的规则单元组合体,实际结构的物理性能可以用通过对离散体进行分析,得出满足工程精度的近似结果来替代对实际结构的分析,这样可以解决很多实际工程需要解决而理论分析又无法解决的复杂问题。
采用CAD技术来建立CAE的几何模型和物理模型,完成分析数据的输入,通常称此过程为CAE的前处理。
同样,CAE的结果也需要用CAD技术生成形象的图形输出,如生成位移图、应力、温度、压力分布的等值线图,表示应用、温度、压力分布的彩色明暗图,以及随机械载荷和温度载荷变化生成位移、应力、温度、压力等分布的动态显示图,通常称此过程为CAE的后处理。
计算机辅助几何设计大作业

Bezier曲线和B样条曲线的研究高晶英(内蒙古民族大学数学学院,内蒙古通辽028000)摘要:本文简单的介绍了计算机辅助几何设计的历史背景以及计算机辅助几何中的Bezier 曲线和B样条曲线的概念.关键词:计算机辅助几何设计;Bezier曲线;B样条曲线THE RESEARCH OF BEZIER CURVE AND B-SPLINE CURVEGao Jingying(Inner Mongolia University for the Nationalities College of Mathematics, Inner Mongolia Tongliao028000 )Abstract: This paper briefly describes the historic background of computer-aided geometric design and concept of Bezier curve and B-spine curve.Key words: Computer-aided geometric design; Bezier curve; B-spine curve1 引言计算机辅助几何设计(CAGD)主要研究以复杂方式自由变化的曲线曲面,即所谓的自由型曲线曲面,其中参数曲线曲面造型与形状调整是CAGD的一个重要内容。
它起源于汽车制造、飞机、船舶的数学放样和外形设计,随着计算机的出现二产生并迅速发展起来的一门独立的新兴交叉学科。
它与近代数学的许多分支学科,如应用数值分析、逼近论、微分几何、应用计算方法、代数几何学、高等代数、拓扑学、微分方程与偏微分方程、分形学、小波分析等,并与一些应用性较强的现代科技知识相互渗透,如计算几何、实体造型、图形图像学、数据结构、计算机程序语言、机械设计和加工制造等学科,是计算机辅助设计、计算机辅助制造等应用系统设计开发的理论基础。
CAGD主要解决在计算机图像系统的环境下对几何外形信息的计算机表示、逼近以及用计算机控制、分析有关形状信息等问题。
VB语言在CAD上计算机辅助几何设计习题汇编

创建点对象Sub ch4_createpoint()Dim pointobj As AcadPointDim location(0 To 2) As Double'定义点的位置location(0) = 5#: location(1) = 5#: location(2) = 0#'创建点Set pointobj = ThisDrawing.ModelSpace.AddPoint(location) ThisDrawing.SetVariable "PDMODE", 34ThisDrawing.SetVariable "PDSIZE", 1ZoomAllEnd Sub打开图形Sub ch3_opendrawing()Dim dwgname As Stringdwgname = "c:\campus.dwg"If Dir(dwgname) <> "" ThenThisDrawing.Application.Documents.Open dwgname ElseMsgBox "file" & " does not exist."End IfEnd Sub创建多段线Sub Ch4_AddLightWeightPolyline()Dim plineObj As AcadLWPolylineDim points(0 To 5) As Double' 定义二维多段线的点points(0) = 2: points(1) = 4points(2) = 4: points(3) = 2points(4) = 6: points(5) = 4' 在模型空间中创建一个优化多段线对象Set plineObj = ThisDrawing.ModelSpace. _AddLightWeightPolyline(points) ThisDrawing.Application.ZoomAllEnd Sub创建和命名图层Sub ch4_newlayer()' 创建圆Dim circleobj As AcadCircleDim center(0 To 2) As DoubleDim radius As Doublecenter(0) = 2: center(1) = 2: center(2) = 0radius = 1Set circleobj = ThisDrawing.ModelSpace. _AddCircle(center, radius)'创建颜色对象Dim col As New AcadAcCmColorcol.ColorMethod = AutoCAD.acColorMethodForeground'设置图层的颜色Dim laycolor As AcadAcCmColorSet laycolor = AcadApplication.GetInterfaceObject("autocad.accmcolor.16") Call laycolor.SetRGB(122, 199, 25)ThisDrawing.ActiveLayer.turecolor = laycolorcol.ColorMethod = AutoCAD.acColorMethodByLayer'将圆的颜色指定为"随层"'以便圆自动拾取所在图层的'颜色circleobj.color = acByLayercircleobj.UpdateEnd Sub创建面域Sub Ch4_CreateRegion()' 定义保存面域边界' 的数组Dim center(0 To 2) As DoubleDim radius As Doublecenter(0) = 2center(1) = 2center(2) = 0radius = 5#Set curves(0) = ThisDrawing.ModelSpace.AddCircle(center, radius)' 创建面域Dim regionObj As VariantregionObj = ThisDrawing.ModelSpace.AddRegion(curves) ZoomAllEnd Sub创建曲线Sub Ch4_CreateSpline()' 本例在模型空间中创建样条曲线对象。
计算机辅助几何造型实验报告

实验报告一:CAD软件介绍UG(Unigraphics)是Unigraphics Solutions公司推出的集CAD/CAE/CAM 为一体的全三维参数化机械设计平台、是当今世界上最先进的计算机辅助设计、分析和制造软件之一,广泛应用于航空航天、汽车、通用机械、电子等领域。
UG 是一个交互式的计算机辅助设计(CAD),计算机辅助制造(CAM)系统,具备了当今机械加工领域所需的大多数工程设计和制图功能。
UG是一个全三维、双精度的造型系统,使用户几乎能够精确地描述任何几何形体,通过对这些形体的组合,就可以对产品进行设计、分析和制图。
UG自从1990年,进入我国以来,以其强大的功能和工程背景,已经在我国的航空、航天、汽车、模具和家电等领域得到广泛的应用。
尤其UG软件PC版本的推出,为UG在我国的普及起到了良好的推动作用。
实验一曲线造型综合性实验实验内容及结果:1.新建文件名(注意不能有中文名或者是中文目录) spline1.part,选择建模模块,构造型值点:插入(S)—〉基准/点—〉点(P),在点构造器中输入型值点的坐标或者直接用鼠标取点在工具栏空白处点右键选取曲线,并在弹出的工具栏中点取工具条右上角小箭头,将样条,艺术样条选上,/(a)通过极点:1.指定曲线阶次,确定进入下一步。
2.弹出点构造器对话框,选取前面构造的型值点,然后点确定进入下一步。
(b) 通过点的方式构造曲线:1.指定曲线阶次,确定进入下一步2.弹出样条对话框,选取“全部成链“进入下一步。
3.在弹出的“指定点”对话框中选取前面构造的型值点起点和终点,确定进入下一步4.在弹出的对话框中,点确定生成曲线。
(c)拟合5.点击“拟合”后,弹出样条对话框,选取“全部成链“进入下一步。
6.在弹出的“指定点”对话框中选取前面构造的型值点起点和终点,确定进入下一步7.在弹出的对话框中选择拟合方法,修改样条拟合条件,点确定生成曲线。
2.在工具条中选取艺术样条曲线的构造方法:由型值点直接生成样条。
计算机辅助设计大作业

2015—2016 学年第二学期研究生课程考核(读书报告、研究报告)考核科目:计算机辅助设计与制造学生所在院(系):机电工程学院学生所在学科:机械工程姓名:张娜娜学号:1502210093题目:应用三维建模软件构建一个零件模型,描述建模过程。
针对该零件的具体情况(比如相关模型的表示方法、数据结构、显示操作情况等),就涉及到的所学知识进行论述。
问题1. 应用三维建模软件构建一个零件模型,描述建模过程。
针对该零件的具体情况(比如相关模型的表示方法、数据结构、显示操作情况等),就涉及到的所学知识进行论述。
2. 计算机是如何帮助我们完成设计任务的?你了解哪些CAD系统?结合你应用过的软件加以论述。
问题1:应用Pro/E对平口虎钳的固定钳身进行三维建模。
1. 启动Pro/E,新建文件,选择零件设计。
2. 选择俯视基准面,绘制如图1-1所示的截面。
●知识点:由于矩形已经形成了特征,所以经过确定矩形的两个对角点即可确定矩形,完成后修改对应的长宽即可完成草图的绘制。
四叉树。
二维图形是以四叉树的形式存储数据的。
它的基本思想是将平面划分为四个子平面,这些子平面任可以继续划分,通过定义这些平面的“有图形”和“无图形”来描述不同形状的物体。
图1-1 草绘截面图1-2 拉伸的实体3. 退出草图绘制,单击拉伸命令,其参数的设置如图1-2所示。
单击对勾,完成的拉伸实体如图1-2所示。
●知识点:八叉树。
拉伸厚度是以八叉树的形式存储数据的。
八叉树用以描述三维物体,它设想将空间通过三坐标平面XY、XZ、ZX划分为八个子空间。
八叉树中的每一个节点对应着每一个子空间。
图1-3 拉伸草图图1-4 拉伸实体●知识点:参数化设计。
根据自己设计要求,建立约束关系。
4. 在俯视基准面绘制如图1-3所示的截面,完成草图。
选择拉伸命令,设置拉伸深度为30,完成叶片轮廓曲面特征的创建,其效果图如图1-4所示。
●知识点:求和运算。
用前一步建立的模型与刚生成的模型做求和运算获得所需的效果。
《计算机辅助制造》课大作业--编程说明书

《计算机辅助制造》综合作业一、数控车削加工程序编制应用MasterCAM软件编写如下图所示的零件的数控车削加工程序。
1、零件图2、毛坯图该零件车削加工取用的毛坯尺寸为外径60mm,内径15mm,长度135mm的管件。
3、工艺分析序号工步内容刀具号主轴转速(r/min)进给转速(mm/min)背吃刀量(mm)备注1 粗车端面T01 550 100 22 精车端面T01 800 60 0.53 粗车外圆(不含圆弧)T02 550 80 24 粗车R16圆弧面T02 550 80 25 精车外圆T02 800 50 0.56 切外退刀槽T03 350 307 车外螺纹T04 2008 粗镗内孔T05 300 40 19 精镗内孔T05 400 30 0.510 切内退刀槽T06 200 2511 车内螺纹T07 1004、绘制零件轮廓线运用SolidWorks三维造型软件绘制零件草图,并在MasterCAM软件打开以*.IGES格式保存的文件,零件轮廓线如下图所示。
零件轮廓线5、设定工件坐标系(以右端面为例)按键盘上的<F9>键,图形会出现两条棕色的直线,其交点即为当前工件坐标的原点。
工件原点移动的方法:点击菜单<转换>→<平移>,然后全选“图形区域所有线段”按回车确认,在弹出的<平移>对话框中,选择<移动>,<从一点到另一点>,然后选择图形上要平移的点,回车确认。
工件坐标系设定6、机床类型选择及毛坯定义机床类型选择:点击菜单<机床类型>→<车床>→<默认>毛坯定义:在软件页面左侧<操作管理>中,点击<属性>→<材料设置>→<信息内容>,在弹出的<机床组件材料>对话框中,对毛坯进行参数设置。
毛坯参数设置7、刀具路径生成及参数设置(因该零件加工为调头件加工,所以刀具路径分为左右两部分)a、右半部分:1)粗车端面点击<刀具路径>→<车端面>,具体参数设置如下图所示。
计算机辅助几何设计作业1

输出形式:P ������ , ������ ,������
1,2 …,r。������ 沿着 x 轴均匀采样(r 可以取得大些,点
就密些) ,������ 根据拟合出来的函数计算出来,依次连接这些点的 polyline 作为该 拟合函数的图像绘制出来。
作业递交要求: 1. 实现上述四种拟合方法,并进行比较;如果同时画出,四种方法得到的曲线 用不同颜色绘制; 2. 相关 VS 工程、Grasshopper 文件(.gh、.gha)与实验报告。 Deadline:2018 年 9 月 16 日晚
《计算机辅助几何设计》作业 1
2018 年 9 月 11 日
作业要求: Input:已知平面内 n 个点P ������ , ������ ,j Output: 拟合这些点的函数。 要求:实现不同的拟合方法,并进行比较。输入点集可以进行交互式鼠标指 定,或者其他方法生成。 1,2 …,n。
一、插值型拟合方法:
作业目的: 1. 熟悉数据拟合的一般方法;四种方法需要用面向对象的编程思想来写; 2. 初步了解和掌握 Rhino 和 Grasshopper 的使用; 3. 【学习资料】Rhino 和 Grass习。
举例:
【插值 1、2】 : (可以增加按钮进行切换插值 1 或 2 状态 Button 目录下)
二、逼近型拟合方法:
1. 固定幂基函数的最高次数 m (m<n),使用最小二乘法: min������, 其中������ ������ ������ ������ ������ 拟合 P 。
2. 岭回归(Ridge Regression) :对上述最小二乘法误差函数增加������ 正则项,参数������, min(������ ������������ ),其中������ ������ ,
计算机辅助三维设计(CAD)作业.

现在的CAD功能越来越强大,内燃机现代设计方法中虚拟设计几乎可在同一软 件进行如模型设计、计算机辅助制造、有限元分析等。其实就是C A D /CA M / CA E。C A D / C A M / C A E 技术的应用水平是衡量一个国家汽车工业水平的重要 指标之一。汽车工业作为国家支柱产业, 理应成为C A D / C A M / C A E 技术应 用的先锋和大户。国际上, 一些大的汽车生产厂家在C A D / C A M / C A E 技术 应用上取得了显著的成绩,如美国福特汽车公司、美国通用汽车公司、日本三菱 汽车公司、法国雷诺汽车公司以及德国各大汽车公司等。他们把C A D / C A M / C A E 这一先进的科学技术应用于车身设计、发动机设计以及其他零部件设计上, 开发出了先进的汽车产品, 在世界汽车产品市场上占到了主导地位。由于我国的 C A D / C A M /C A E 技术在汽车产品开发中的应用起步较晚, 在深度和广度上 与国外先进水平差距深远。企业在激烈的市场竞争中要想立于不败之地, 就必须 以C A D /CA M / CA E 技术为手段, 大力开发新产品, 使新技术转化为生产力, 推动企业快速发展。 在发动机方面,制造厂家都希望在尽可能短的时期内将产品投放市场, 尤其是与 其它竞争者之前能够开发市场, 获得良好的投资效益。因此, 国外从开始设计到 售出第一台发动机所需的时间, 已由原来的8 年减少到4年甚至更短。
变参数设计:随着计算机技术的迅速发展, 大部分机械C A D 最强大和最富有革 命性的功能是产品的参数化设计, 没有参数化功能的CA D 已经失去了存在和发
计算机辅助几何造型技术作业答案-18页文档资料

r / ( u ) 2 u 3 u 2
抛 物 线 在 u 0 和 u 1点 处 的 切 失 分 别 为
r /(0) 0 0
r / (1) 2 3
抛 物 线 在 u 0 和 u 1点 处 的 切 线 分 别 为
x-0 0
y0 0
x1 y 1
2
3
不存在
x 2 1
y
3
1
2020/4/5
[sin cos ,sin sin , cos ]
2020/4/5
南昌航空大学航制学院
8
P26页第16题
所以过M点的切平面方程为:
n •( R - r0 ) = 0 R为 切 平 面 上 任 意 一 点 位 置 矢 量
即:sin cos (x cos 0 sin 0 ) sin sin ( y sin 0 sin 0 ) cos (z cos ) 0
1 0 0 0 2
1(u)=1 u u2
u303
0 3
1
0
2
2 11/4
任
意
一
点
M
为
:
(
0
0
,
0)
则 : ( , ) sin sin cos sin 0
( , ) cos cos sin sin sin
单 位 法 失 为 :n
( , ) ( , )
( , ) ( , )
[sin 2 cos ,sin 2 sin ,sin cos ] sin
sincos(1a) sinsin(1a) cosac10
P44页第1题
解: (1 )已 知 m 0 m 2 0 , 由已知三个点的坐标值可知:
h i 1, i 1 / 2 , i 1 / 2 ci 0 根 据 m 关 系 式 : 1m 0 2 m 1 1m 2 c1 得 :m1 0 所以该三次样条表达式为:
计算机辅助设计CAD大作业

计算机辅助设计CAD大作业计算机辅助设计CAD期末大作业1.1.11.画图思路1)设置五个图层2)依次将每个图层置为当前图层,画圆环。
2.实验步骤正在重生成模型。
AutoCAD 菜单实用程序已加载。
命令: layer命令: _donut指定圆环的内径<0.5000>: 15指定圆环的外径<1.0000>: 20指定圆环的中心点或<退出>: 50,50指定圆环的中心点或<退出>:命令: layer命令: _donut指定圆环的内径<15.0000>: 15指定圆环的外径<20.0000>: 20指定圆环的中心点或<退出>: 72,50指定圆环的中心点或<退出>: 72,50指定圆环的中心点或<退出>:命令: layer命令: _donut指定圆环的内径<15.0000>: 15指定圆环的外径<20.0000>: 20指定圆环的中心点或<退出>: 94,50指定圆环的中心点或<退出>:命令: layer命令: _donut指定圆环的内径<15.0000>: 15指定圆环的外径<20.0000>: 20指定圆环的中心点或<退出>: 61,42指定圆环的中心点或<退出>:命令: layer命令: _donut指定圆环的内径<15.0000>: 15指定圆环的外径<20.0000>: 20指定圆环的中心点或<退出>: 83,42指定圆环的中心点或<退出>:命令: '_zoom指定窗口的角点,输入比例因子(nX 或nXP),或者[全部(A)/中心(C)/动态(D)/范围(E)/上一个(P)/比例(S)/窗口(W)/对象(O)] <实时>:按Esc 或Enter 键退出,或单击右键显示快捷菜单。
计算机三维设计大作业

计算机三维辅助设计大作业指导书轴系结构仿真设计商跃进编兰州交通大学机电工程学院一. 训练目的熟练掌握三维CAD软件实体建模,虚拟装配和工程图纸模块的应用,了解有限元分析的过程。
二. 训练任务1.造零件(1)计算齿轮参数,参照齿轮的制造工艺,对齿轮的工作图(图1)进行分析,确定其特征组成、特征关系及特征创建顺序,并根据分析结果完成齿轮的实体造型。
(2)参照轴的制造工艺,对轴的工作图(图2)进行分析,确定其特征组成、特征关系及特征创建顺序,并根据分析结果完成轴的实体造型。
(3)对图3中的键、半联轴器、套筒等零件进行特征分析,并据此完成实体造型。
(4)利用ToolBox工具生成轴承(可选轴承尺寸系列:10;大小:6011)。
(注:齿轮宽度按照学号后四位除以100绘制,轴对应部位按此尺寸调整。
)2.装机械(1)分析轴上各零件的装配关系和装配顺序,并完成轴系结构虚拟装配(图3)。
(2)对装配模型进行干涉分析,并生成爆炸图。
3.出图纸(1)绘制轴零件图1张。
(2)绘制轴系结构装配图1张。
(3)绘制轴系结构轴测图(含爆炸图)1张。
(注:图纸直接附在大作业中。
)4.做仿真对轴进行简单的有限元分析。
三. 训练要求编写大作业说明书1份,大于5页.1.格式要求A4纸打印,左侧装订成册。
版面左边距3.0cm,左右边距2.0cm,上下边距2.4cm,小四号字,单倍行间距,图片高度4厘米。
2.结构要求大作业包括以下内容:(1)封面(标题、班级、姓名、学号、指导老师、完成日期。
见附页:封面参考)(2)目录(包括页次)(3)零件造型(零件规划说明与主要建模过程)(4)虚拟装配(装配分析说明与主要装配过程)(5)绘制图纸(分析图纸内容与主要步骤)(6)执行仿真(有限元分析步骤寿命与结果分析)(7)心得体会(大作业--心得,体会&意见,建议)图1 齿轮工作图图2 轴工作图图3 轴系装配示意图附页:封面参考计算机三维辅助设计大作业轴系结构仿真设计班级:姓名:学号:指导教师:完成日期:。
郑州大学计算机辅助设计课程大作业

实验一图形变换要求:用任一种高级语言(如C、C++、Visual C++,Matlab等)编写出3~4种常用的二维、三维图形基本变换程序。
要求在报告中写出具体的调试过程,并附上源程序及相应的图形变换结果。
实验过程:1.确定实验对象、工具及预期目标。
本实验y=x^2为对象,以Matlab为编程工具,实现图形的平移,比例,旋转,对称变换,实验的预期目标是采用Matlab的GUI设计,以交互界面形式完成具体程序的设计。
2.交互界面的设计与程序编辑。
根据功能实现要求拟采用下图界面,界面功能说明: 白色大矩形区域用于图形显示;模态表示当前变换继承于上一变换,及当前变换的初始数据来自于上一变换的结果,非模态表示所有变换的初始数据均来自与开始绘图数据;绘图是用来绘制原始图形,即y=x^2的一部分图形;接下来便是功能实现按钮,变换参数均由用户设定;清空是对程序进行重置,使程序处于初始状态,清空所有操作。
功能实现的主要思想是采用课本上齐次坐标法,将图形数据化,然后利用矩阵运算进行变换。
程序编辑说明:编程时,采用模块化结构,功能之间不相互影响。
编辑程序如下:function varargout = untitled2(varargin)% UNTITLED2 MATLAB code for untitled2.fig% UNTITLED2, by itself, creates a new UNTITLED2 or raises the existing% singleton*.%% H = UNTITLED2 returns the handle to a new UNTITLED2 or the handle to% the existing singleton*.%% UNTITLED2('CALLBACK',hObject,eventData,handles,...) calls the local% function named CALLBACK in UNTITLED2.M with the given input arguments.%% UNTITLED2('Property','Value',...) creates a new UNTITLED2 or raises the% existing singleton*. Starting from the left, property value pairs are% applied to the GUI before untitled2_OpeningFcn gets called. An% unrecognized property name or invalid value makes property application% stop. All inputs are passed to untitled2_OpeningFcn via varargin.%% *See GUI Options on GUIDE's Tools menu. Choose "GUI allows only one% instance to run (singleton)".%% See also: GUIDE, GUIDATA, GUIHANDLES% Edit the above text to modify the response to help untitled2% Last Modified by GUIDE v2.5 27-Dec-2015 22:32:06% Begin initialization code - DO NOT EDITgui_Singleton = 1;gui_State = struct('gui_Name', mfilename, ...'gui_Singleton', gui_Singleton, ...'gui_OpeningFcn', @untitled2_OpeningFcn, ...'gui_OutputFcn', @untitled2_OutputFcn, ...'gui_LayoutFcn', [] , ...'gui_Callback', []);if nargin && ischar(varargin{1})gui_State.gui_Callback = str2func(varargin{1});endif nargout[varargout{1:nargout}] = gui_mainfcn(gui_State, varargin{:}); elsegui_mainfcn(gui_State, varargin{:});end% End initialization code - DO NOT EDIT% --- Executes just before untitled2 is made visible. function untitled2_OpeningFcn(hObject, eventdata, handles, varargin)% This function has no output args, see OutputFcn.% hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % varargin command line arguments to untitled2 (see VARARGIN)% Choose default command line output for untitled2 handles.output = hObject;% Update handles structureguidata(hObject, handles);% UIWAIT makes untitled2 wait for user response (see UIRESUME) % uiwait(handles.figure1);% --- Outputs from this function are returned to the command line.function varargout = untitled2_OutputFcn(hObject, eventdata, handles)% varargout cell array for returning output args (see VARARGOUT); % hObject handle to figure% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Get default command line output from handles structure varargout{1} = handles.output;% --- Executes on button press in pushbutton1.function pushbutton1_Callback(hObject, eventdata, handles) global xglobal yglobal zz=randint(1000,1,[1,1])a=linspace(-2,4,1000)x=a'y=x.^2plot(x,y)axis([-25,25,-25,25])hold on% hObject handle to pushbutton1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --- Executes on button press in pushbutton2.function pushbutton2_Callback(hObject, eventdata, handles) global xglobal yglobal zglobal lglobal ml=str2num(get(handles.edit2,'string'))m=str2num(get(handles.edit3,'string'))C=[x,y,z]*[1,0,0;0,1,0;l,m,1]u=C(:,1);v=C(:,2);plot(u,v)if get(handles.radiobutton5,'Value')x=uy=velseif get(handles.radiobutton6,'Value')endaxis([-25,25,-25,25])% hObject handle to pushbutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --- Executes on button press in pushbutton3.function pushbutton3_Callback(hObject, eventdata, handles) global xglobal yglobal zglobal ss=str2num(get(handles.edit4,'string'))C=[x,y,z]*[1,0,0;0,1,0;0,0,s]u=C(:,1);v=C(:,2);plot(u/s,v/s)if get(handles.radiobutton5,'Value')x=u/sy=v/selseif get(handles.radiobutton6,'Value')endaxis([-25,25,-25,25])% hObject handle to pushbutton3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --- Executes on button press in pushbutton4.function pushbutton4_Callback(hObject, eventdata, handles) global xglobal yglobal zglobal ww=str2num(get(handles.edit5,'string'))C=[x,y,z]*[cos(w),sin(w),0;-sin(w),cos(w),0;0,0,1]u=C(:,1);v=C(:,2);plot(u,v)if get(handles.radiobutton5,'Value')x=uy=velseif get(handles.radiobutton6,'Value')endaxis([-25,25,-25,25])% hObject handle to pushbutton4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --- Executes on button press in pushbutton5.function pushbutton5_Callback(hObject, eventdata, handles) global xglobal yglobal zif get(handles.radiobutton2,'Value')C=[x,y,z]*[1,0,0;0,-1,0;0,0,1];elseif get(handles.radiobutton3,'Value')C=[x,y,z]*[-1,0,0;0,1,0;0,0,1];endu=C(:,1);v=C(:,2);plot(u,v)if get(handles.radiobutton5,'Value')x=uy=velseif get(handles.radiobutton6,'Value')endaxis([-25,25,-25,25])% hObject handle to pushbutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)function edit2_Callback(hObject, eventdata, handles)% hObject handle to edit2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit2 as text % str2double(get(hObject,'String')) returns contents of edit2 as a double% --- Executes during object creation, after setting all properties.function edit2_CreateFcn(hObject, eventdata, handles)% hObject handle to edit2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');endfunction edit3_Callback(hObject, eventdata, handles)% hObject handle to edit3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit3 as text % str2double(get(hObject,'String')) returns contents of edit3 as a double% --- Executes during object creation, after setting all properties.function edit3_CreateFcn(hObject, eventdata, handles)% hObject handle to edit3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');endfunction edit4_Callback(hObject, eventdata, handles)% hObject handle to edit4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit4 as text % str2double(get(hObject,'String')) returns contents of edit4 as a double% --- Executes during object creation, after setting all properties.function edit4_CreateFcn(hObject, eventdata, handles)% hObject handle to edit4 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');endfunction edit5_Callback(hObject, eventdata, handles)% hObject handle to edit5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hints: get(hObject,'String') returns contents of edit5 as text % str2double(get(hObject,'String')) returns contents of edit5 as a double% --- Executes during object creation, after setting all properties.function edit5_CreateFcn(hObject, eventdata, handles)% hObject handle to edit5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% Hint: edit controls usually have a white background on Windows. % See ISPC and COMPUTER.if ispc && isequal(get(hObject,'BackgroundColor'),get(0,'defaultUicontrolBackgroundColor'))set(hObject,'BackgroundColor','white');end% --- Executes on button press in pushbutton7.function pushbutton7_Callback(hObject, eventdata, handles) set(handles.edit2,'string',[])set(handles.edit3,'string',[])set(handles.edit4,'string',[])set(handles.edit5,'string',[])set(handles.radiobutton2,'value',0)set(handles.radiobutton3,'value',0)set(handles.radiobutton5,'value',0);set(handles.radiobutton6,'value',0);cla resetaxis([-25,25,-25,25])% hObject handle to pushbutton7 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% --- Executes on button press in radiobutton2.function radiobutton2_Callback(hObject, eventdata, handles) set(handles.radiobutton2,'value',1);set(handles.radiobutton3,'value',0);% hObject handle to radiobutton2 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,'Value') returns toggle state of radiobutton2% --- Executes on button press in radiobutton3.function radiobutton3_Callback(hObject, eventdata, handles) set(handles.radiobutton3,'value',1);set(handles.radiobutton2,'value',0);% hObject handle to radiobutton3 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA) % Hint: get(hObject,'Value') returns toggle state of radiobutton3% --- Executes during object creation, after setting all properties.function text1_CreateFcn(hObject, eventdata, handles)% hObject handle to text1 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles empty - handles not created until after all CreateFcns called% --- Executes on button press in radiobutton5.function radiobutton5_Callback(hObject, eventdata, handles)set(handles.radiobutton5,'value',1);set(handles.radiobutton6,'value',0);% hObject handle to radiobutton5 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,'Value') returns toggle state of radiobutton5% --- Executes on button press in radiobutton6.function radiobutton6_Callback(hObject, eventdata, handles)set(handles.radiobutton6,'value',1);set(handles.radiobutton5,'value',0);% hObject handle to radiobutton6 (see GCBO)% eventdata reserved - to be defined in a future version of MATLAB% handles structure with handles and user data (see GUIDATA)% Hint: get(hObject,'Value') returns toggle state of radiobutton6在程序的编辑与调试过程中主要遇到的问题主要有整个程序数据的传输,输入数据的采集,程序的重置。
计算机辅助设计大作业(DOC)

2015-16学年二学期研究生课程考核(读书报告、研究报告)考核科目:计算机辅助设计与制造学生所在院(系):机电工程学院学生所在学科:机械制造及其自动化姓名:王永明学号:1502210051题目:应用三维建模软件构建一个零件模型,描述建模过程。
请结合该模型涉及到的课程学习知识(如模型表示方法、数据结构、显示等),针对该零件的具体情况进行论述。
对所论述技术的发展趋势做出讨论。
题目:1.应用三维建模软件构建一个零件模型,描述建模过程。
请结合该模型涉及到的课程学习知识(如模型表示方法、数据结构、显示等),针对该零件的具体情况进行论述。
对所论述技术的发展趋势做出讨论。
2.为什么要使用数据库?数据库的基本原理是什么?尝试用office的组件Access数据库建立一个数据库,结合你的设计过程论述数据库的设计过程。
在UG中建立一个三维模型如下图所示效果预览:建模步骤:第一步、绘制正八边形,内接圆半径为50,如下图所示。
第二步、建立一条起点在原点,长度为30,沿着Z轴的直线,见下图。
第三步、以八边形的两个端点及上步建立直线的顶点为中点建立下图圆弧。
第四步、对圆弧进行修剪,留下四分之一圆弧,见下图。
第五步、运用变换旋转-45°建立同样的圆弧,如下图所示。
第六步、运用曲线组命令建立伞布的曲面,如下图所示。
第七步、将WCS原点移到下图位置,并绘制半径为80的小圆弧。
第八步、以上步建立的曲线为截面进行对称拉伸,拉伸距离为3,见下图。
第九步、运用修剪体命令对伞布进行修剪,效果如下图所示。
第十步、对伞布曲面进行加厚处理,如下图所示。
第十一步、对伞布的边圆弧曲线进行偏置,距离为0.1,见下图。
第十二步、将上步偏置的直线延长1mm,效果如下图。
第十三步、以延长的曲线为导线,利用管道命令建立外径为0.2的伞布支架,见下图。
第十四步、对支架尾部的轮廓曲线偏置0.05,见下图。
第十五步、接着利用拉伸建立支架脚,拉伸距离为1.5,并倒圆,见下图。
交通大学成人本科计算机图形学期末大作业

交通大学成人本科计算机图形学期末大作业As a person, we must have independent thoughts and personality.《计算机图形学》期末大作业学号:姓名:李燕军学习中心:校本部注:将本作业的word文件、最后一题作品的.fla文件和.swf文件一起压缩成一个文件提交一、术语解释(15题×2分= 30分,1-10题英文缩略词要求写出的中文和英文全称,以课程教材范围内为准;11-15题写出概念解释)1、UI:用户界面2、IBR:基于图像的绘制3、VR:Virtual Reality 虚拟现实4、LOD:5、GKS:6、PHIGS:程序员层次交互式7、RSD:光栅扫描显示器8、CAM:Computer Aided Manufacture 计算机辅助制造9、OpenGL:是独立于视窗操作系统或其它操作系统的,亦是网络透明的。
帮助程序员实现在 PC、工作站、超级计算机等硬件设备上的高性能、极具冲击力的高视觉表现力图形处理软件的开发。
10、UCS:user coordinate system用户坐标系描述物体几何模型的坐标系。
有时也称为局域坐标系(local coordinate system LCS)。
用户坐标系也是实数域坐标系。
11、灭点:与平行投影相比透视投影的特点是所有投影线都从空间一点(称为视点或投影中心)投射,离视点近的物体投影大,离视点远的物体投影小,小到极点消失,称为灭点。
12、裁剪:在二维观察中,需要在观察坐标系下根据窗口大小对世界坐标系中的二维图形进行裁剪(clipping),只将位于窗口内的图形变换到视区输出。
13、投影:答:投影就是从投影中心发出射线经过三维物体上的每一点后与投影面相交所形成的交点集合。
14、消隐:真实感图形绘制过程中,由于投影变换失去了深度信息,往往导致图形的二义性。
要消除这类二义性,就必须在绘制时消除被遮挡的不可见的线或面,习惯上称之为消除隐藏线和隐藏面,或简称为消隐,经过消隐得到的投影图称为物体的真实图形15、走样:二、简答题(2题×5分=10分)1、简要说明计算机图形学、图像处理、模式识别三者之间的区别和联系。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
ti , ti 1 , , ti k 1. 那么我们把区间 ti , ti k 1 叫做 N i ,k (t ) 的支撑区间。支撑节点左端节点的下
标就是 N i ,k (t ) 的第一个下标,也就是表示这个 B-样条在参数 t 轴上的位置。相应的曲线方 程 中 的 n 1 个 控 制 顶 点 Pi (i 0,1, , n) , 要 用 到 n 1 个 k 次 B- 样 条 基 函 数
k 1 个顶点有关。
除此之外,这个局部性质也表明,在曲线定义域内,控制顶点 Pi k , Pi k 1 , , Pi 及相应
的 B-样条基函数决定了定义在非零节点区间 t [ti , ti 1 ] 上那一段 k 次 B-样条曲线段,与其 余要素没有关系。于是,往下标下降的方向错一个顶点,即 Pi k 1 , Pi k , , Pi 1 那 k 1 个控 制 顶 点 就 定 义 了 [ui 1 , ui ] 上 的 那 一 段 曲 线 。 往 下 标 增 加 方 向 错 过 一 个 顶 点 , 即
Bezier 曲线有下列的性质: (1)断点插值: P (0) P0 , P (1) P 1. (2)与首边和终边相切: P (0) n( p1 p0 ), P (1) n( Pn Pn 1 ). (3)仿射不变性:即对任何仿射变换 有 P (t )
' '
( P ) B
j
i
j ,k
(t ), t [t i , t i 1]
从上 式可以看 出 B- 样条 曲线的局 部性质 ,也就是 k 次 B- 样条 曲线上定 义域内 参数为 t [ti , ti 1 ] 的一点 P (t ) 不是和所有的顶点有关,而是至多与 P j ( j i k , i k 1, , i ) 这
i 0 i
n
i ,n
(t ).
(4)凸包性: 即 P (t ) 落在由控制多边形生成的凸包内. (5)变差减缩性:即任一条直线与 P (t ) 的交点的个数都不超过该直线与控制多边形交点的 个数. 根据 Bezier 曲线的定义确定的参数方程绘制 Bezier 曲线, 因其计算量过大, 只适合计 算机辅助绘图。 另一方面, 计算机绘制的曲线实际上是由计算出的很密的点连接而成, 而在 工程研究中, 往往需要知道给定的 t 值对应的 Bezier 曲线上的点 P(t)的准确位置。 3 B 样条曲线的研究 早在 1946 年舍恩伯格 (Schoenberg) 提出了关于 B-样条的理论, 但是他的论文直到 1967 年才发表出来。德布尔(De Boor)与考克斯(Cox)在 1972 年分别独立地给出了关于 B样条计算的标准算法。戈登(Gordon)与里森费尔德(Riesenfeld,1974)在研究研究贝齐尔 方法的基础上引入 B-样条方法,使其成为 CAGD 中的一个形状数学描述的基本方法。 B-样条方法保留了大部分的贝齐尔方法的优良性质,同时避免了贝齐尔曲线方法的缺 点,关于曲线形状的局部控制的问题也得到了较好的解决,同时对曲线、曲面间的连接问题 也利用参数连续性得到了基本解决。 B-样条曲线方程可以表示为
N j ,k (t )( j i k , i k 1, , i ) ,其他 k 次 B-样条在该点处均为零。
考察式(1)表示的 B-样条曲线定义的区间 t [ti , ti 1 ] 上那一曲线段,略去其中基函数 取零值的那些项,则可表示为:
ቤተ መጻሕፍቲ ባይዱ
P (t )
j i k
PN
k r
t ti t t 与 i k 1 ,其中,参数 t 把第 i 个 k 次 B- 样条 ti k ti ti k 1 tt i
0 若ti t ti k 1 ,可以看出,非负性也包含在其中了; N i ,k (t ) 0 其他 在节点区间内部它是无限次可微的,在 r 重节点处它是 k r 次可微的,即
Pi k 1 , Pi k 2 , , Pi 1 那 k 1 个控制顶点就定义了 [ui 1 , ui 2 ] 上的一段曲线段。可见增加或减
少一个控制顶点,样条曲线相应增加或减少了一曲线段。 另个方面,变动顶点 Pi 将使曲线方程(1)右端 Pi N i ,k (t ) 那项发生变化。与 Pi 相联系的 基函数 N i ,k (t ) 具有支撑区间 [ti , ti k 1 ]. 它在其支撑区间所含的 k 1 个节点区间上都可能取 得非零值。而且在曲线定义域内,定义在这 k 1 个节点区间上的每段 B-样条曲线段方程里 都含有 Pi N i ,k (t ) 。这样,这些 B-样条曲线部分就都与 Pi 有关,就都受到影响。于是我们得 到:调整第 i 个控制顶点 Pi 不是对整条 B- 样条曲线都有影响,这至多只影响定义在区间
P (t ) PB i i , n (t )
i 0
n
0 t 1
式中 Pi (i 0,1, , n) 为折线多边形的顶点。
Bi ,n (t ) 称伯恩斯坦基函数 Bi ,n (t ) Cni t i (1 t ) n i
i Cn
n! i !(n i )!
(i 0,1, , n )
N i ,k (t ) (i 0,1, , n) , 定义这一组 B-样条基的节点矢量 U [t 0 , t1 , , t n k 1 ] 是它们的支撑
区间所含的节点的并集。 递推公式表明, k 次 B-样条 N i ,k (t ) 可由两个 k 1 次 B-样条 N i ,k 1 (t ) 与 N i 1,k 1 (t ) 递推 得到。其线性组合的系数分别为
(Inner Mongolia University for the Nationalities College of Mathematics, Inner Mongolia Tongliao 028000 )
Abstract: This paper briefly describes the historic background of computer-aided geometric design and concept of Bezier curve and B-spine curve. Key words: Computer-aided geometric design; Bezier curve; B-spine curve 1 引言 计算机辅助几何设计(CAGD)主要研究以复杂方式自由变化的曲线曲面,即所谓的自 由型曲线曲面,其中参数曲线曲面造型与形状调整是 CAGD 的一个重要内容。它起源于汽 车制造、飞机、船舶的数学放样和外形设计,随着计算机的出现二产生并迅速发展起来的一 门独立的新兴交叉学科。它与近代数学的许多分支学科,如应用数值分析、逼近论、微分几 何、应用计算方法、代数几何学、高等代数、拓扑学、微分方程与偏微分方程、分形学、小 波分析等,并与一些应用性较强的现代科技知识相互渗透,如计算几何、实体造型、图形图 像学、数据结构、计算机程序语言、机械设计和加工制造等学科,是计算机辅助设计、计算 机辅助制造等应用系统设计开发的理论基础。CAGD 主要解决在计算机图像系统的环境下 对几何外形信息的计算机表示、逼近以及用计算机控制、分析有关形状信息等问题。随着计 算机技术的飞速发展, 计算机辅助几何设计在近三十年来也得到了飞速发展。 其研究工作开 始于二十世纪六十年代, 在几代学者的共同努力下, 曲线曲面的表示和造型已形成了较为完 备的几何理论体系。CAGD 的造型方法和相关的理论已广泛地应用于其他技术领域,如游 戏动画制作、计算机视觉、工业造型、建筑设计等。 曲线曲面造型理论是 CAGD 和 CG(Computer Graphics: 计算机图形)的重要的内容 之一,即研究用计算机来表示、分析、显示和设计关于曲线曲面的相关问题自上世纪六十年 代由 Coon、Bezier 等大师奠定其理论基础以来,已经取得了长足的发展。 工业产品的外形一般可分为两大类:一类是如平面、圆、圆锥面、柱面、球面、等解析 曲面组成的外形, 许多的机械零件都是归属于这一类, 通过利用画法几何和机械制图就可以 清楚地表示、 传递它内存的形状信息。 第二类通常是不能借助初等解析式来表示的曲面构成, 而是以较为复杂的方式自由变化的曲线曲面, 也就是通常意义下的自由形状的曲线、 曲面构 成,例如轮船、汽车、飞机等零部件外形。CAGD 的主要研究对性是自由形状的曲线、曲 面,CAGD 的首要任务是建立曲线或曲面的数学模型,即利用直观有效的曲线曲面造型设 计技术来对曲线曲面进行恰当的表示、 清晰的显示和快速的处理。 自由曲线曲面通常用参数 方程来表示,相应的曲线或曲面被称为参数曲线或参数曲面。 2 Bezier 曲线的研究 Bezier曲线是以“逼近”为基础, 先勾画折线多边形、然后用光滑的参数曲线去逼近这
P (t ) N i ,k Pi , t k t t n 1, n k .
i 1
n
(1)
其中, {Pi }i 1 R 为控制顶点,
n
3
1 ti t ti 1 N i ,0 (t ) 0 其他 t ti t t N i ,k 1 (t ) i k 1 N i 1,k 1 (t ) N i ,k (t ) t t t t i k i i k 1 t i 0 规定 0 0 N i ,k (t ) 由两个下标,其中第一个下标 i 表示基函数的序号,第二下标 k 表示基函数的
的;
(4)规范性
N
i
i ,k
(t ) 1.
2. B-样条的局部性质 区间 [ti , ti k 1 ] 是 k 次 B-样条 N i ,k (t ) 的支撑区间,B-样条的次数 k 不会影响到它的左端 节点 ti 的下标,但会影响右端节点 ti k 1 的下标,也就是次数 k 会影响到支撑区间包含的节 点区间数(含零长度区间) 。 k 次 B-样条的支撑区间中包含了 k 1 个节点区间。所以在参 数 t 轴 上 任 意 一 个 点 t [ti , ti 1 ] 处 , 就 至 多 只 有 k 1 个 非 零 的 B- 样 条