自由曲线与曲面一
《自由曲线与曲面》PPT课件
7.6 B样条曲线
• Gordon和Riesenfeld于1974年用B样条基函数代替了Bernstein基函数,构造了B样条 曲线。
• 比Bezier曲线更贴近控制多边形,曲线更光滑(很容易产生C2连续性),曲线的次数 可根据需要指定
• 增加了对曲线的局部修改功能,B样条曲线是分段组成的,所以控制多边形的顶点对曲 线的控制灵活而直观。
2.一阶导数
• 将式(7-12)求导,有
n
p' (t) Pi Cni [i t i1 (1 t)ni (n i) t i (1 t)ni1 ] i0 在闭区间〔0,1〕内,将t=0和t=1 代入上式,得到
p' (0) n (P1 P0 ) p' (1) n (Pn Pn1)
可以证明,二次Bezier曲线是一段抛物线。
3.三次Bezier曲线
• 当n=3时,Bezier曲线的控制多边形有四个控制点P0、P1、P2和P3,Bezier曲线 是三次多项式。
3
p(t) Pi Bi,3 (t) (1 t)3 P0 3t(1 t)2 P1 3t 2 (1- t) P2 t3 P3 i0 (t3 3t 2 - 3t 1)P0 (3t 3 6t 2 3t)P1 (3t3 3t 2 ) P2 t3P3
• 通常单一的曲线段或曲面片难以表达复杂的形状,必须将一些曲线段连接成组合曲线, 或将一些曲面片连接成组合曲面,才能描述复杂的形状。
• 为了保证在连接点处平滑过渡,需要满足连续性条件。连续性条件有两种:参数连续 性和几何连续性。
•
参数连续性
• 零阶参数连续性,记作C0,指相 邻两个曲线段在交点处具有相同的 坐标。
菅光宾
数字媒体系
• 7.1 基本概念 • 7.4 Bezier曲线 • 7.5 Bezier曲面 • 7.6 B样条曲线 • 7.7 B样条曲面
《自由曲线与曲面》课件
课件演示流程及时间安排
开场介绍:5分钟 添加标题
自由曲线与曲面的生成方法: 自由曲线与曲面的优化与改
15分钟
进:10分钟
添加标题
添加标题
提问与互动:5分钟 添加标题
添加标题
自由曲线与曲面的基本概念: 10分钟
添加标题
自由曲线与曲面的应用实例: 10分钟
添加标题 总结与展望:5分钟
课件素材及资源获取方式
结论与展望
课件页码及内容安排
• 封面:标题、作者、日期 • 目录:列出所有章节和页码 • 引言:介绍自由曲线与曲面的背景和重要性 • 第一章:自由曲线与曲面的定义和分类 • 第二章:自由曲线与曲面的性质和特征 • 第三章:自由曲线与曲面的表示方法 • 第四章:自由曲线与曲面的应用实例 • 结论:总结自由曲线与曲面的重要性和应用价值 • 参考文献:列出参考的书籍、论文和网站 • 致谢:感谢指导老师和同学的帮助 • 封底:结束语和版权声明
单击此处添加副标题
自由曲线与曲面PPT课件
大纲
汇报人:
目录
01 02 03 04 05 06
添加目录项标题 课件简介 课件内容 课件结构 课件效果 总结评价
01
添加目录项标题
02
课件简介
课件背景
自由曲线与曲面是数学和计算机图形学中的重要概念 课件旨在帮助学生理解自由曲线与曲面的基本概念、性质和应用 课件内容涵盖了自由曲线与曲面的定义、分类、性质、表示方法、计算方法、应用实例等 课件适合数学、计算机科学、工程学等专业的学生和教师使用
课件目的
讲解自由曲线与曲面的生成 方法
介绍自由曲线与曲面的基本 概念和性质
探讨自由曲线与曲面的应用 领域
提高学生理解和应用自由曲 线与曲面的能力
自由曲线曲面的基本原理(上)
自由曲线曲面的基本原理(上)浙江黄岩华日(集团)公司梁建国浙江大学单岩1 前言曲面造型是三维造型中的高级技术,也是逆向造型(三坐标点测绘)的基础。
作为一个高水平的三维造型工程师,有必要了解一些自由曲线和曲面的基本常识,主要是因为:(1)可以帮助了解CAD/CAM软件中曲面造型功能选项的意义,以便正确选择使用;(2)可以帮助处理在曲面造型中遇到的一些问题。
由于自由曲线和自由曲面涉及的较强的几何知识背景,因此一般造型人员往往无法了解其内在的原理,在使用软件中的曲(线)面造型功能时常常是知其然不知其所以然。
从而难以有效提高技术水平。
针对这一问题,本文以直观形象的方式向读者介绍自由曲线(面)的基本原理,并在此基础上对CAD/CAM软件中若干曲面造型功能的使用作一简单说明,使读者初步体会到背景知识对造型技术的促进作用。
2 曲线(面)的参数化表达一般情况下,我们表达曲线(面)的方式有以下三种:(1)显式表达曲线的显式表达为y=f(x),其中x坐标为自变量,y坐标是x坐标的函数。
曲面的显式表达为z=f(x,y)。
在显式表达中,各个坐标之间的关系非常直观明了。
如在曲线表达中,只要确定了自变量x,则y的值可立即得到。
如图1所示的直线和正弦曲线的表达式就是显式的。
曲线的隐式表达为f(x,y)=0,曲面的隐式表达为f(x,y,z)=0。
显然,这里各个坐标之间的关系并不十分直观。
如在曲线的隐式表达中确定其中一个坐标(如x )的值并不一定能轻易地得到另外一个(如y )的值。
图2所示的圆和椭圆曲线的表达式就是隐式的。
图2(3)参数化表达曲线的参数表达为x=f(t);y=g(t)。
曲面的参数表达为x=f(u,v);y=g(u,v);z=g(u,v)。
这时各个坐标变量之间的关系更不明显了,它们是通过一个(t )或几个(u,v )中间变量来间接地确定其间的关系。
这些中间变量就称为参数,它们的取值范围就叫参数域。
显然,所有的显式表达都可以转化为参数表达,如在图1所示的直线表达式中令x=t 则立即可有y=t 。
自由曲线与曲面
11.1 解析曲面 11.2 Bezier曲面 11.3 B样条曲面 11.4 NURBS曲面 11.5 曲面的其它表达 11.6 曲面求交算法
11.1 解析曲面(代数曲面)
代数曲面在造型系统中常见,但远远不能满足复 杂曲面造型的要求
适合构造简单曲面,不能构造自由曲面 不同类型曲面拼接连续性难以保证 不同曲面求交公式不一,程序实现量大 工程设计交互性差
通常样条曲面的求交算法采用离散逼近、迭代求精 与跟踪的方法,求交精度不高,计算量大,速度慢,对 共点、共线、共面难以处理,从而影响布尔运算的效率 和稳定性。
基本的求交算法:
由于计算机内浮点数有误差,求交计算必须引进容差。假定
容差为e,则点被看成是半径为e的球,线被看成是半径为e的圆管, 面被看成是厚度为2e的薄板。
c)然后固定指标i,以第一步求出的n+1条截面曲线的控制顶 点阵列中的第i排即: di,j, j 0,1,, n 为“数据点”,以上一 步求出的跨界切矢曲线的第i个顶点为”端点切矢”,在节点矢 量V上应用曲线反算,分别求出m+3条插值曲线即控制曲线的 B样条控制顶点di.j ,i 0,1,,m 2; j 0,1,,n 2 ,即为所求双
superquadric
superquadric曲面在商用 CAD系统应用相对较少,但 在动画软件中常用
superquadric toroids
(
x
)2/E2
(
y
)2/E2
E2/E1 a
(
z
)2/E1
1
rx
ry
rz
superquadric ellipsoids
(
x
)2/E2
(
y
E2/E1 )2/E2
计算机图形学曲线和曲面
曲线构造方法
判断哪些是插值、哪些是逼近
曲线构造方法
插值法
线性插值:假设给定函数f(x)在两个不同点x1和x2的值,用 线形函数 :y=ax+b,近似代替f(x),称为的线性插值函 数。
插值法
抛物线插值(二次插值):
已知在三个互异点x1,x2,x3的函数值为y1,y2,y3,要求构造 函数 ¢ (x)=ax2+bx+c,使得¢(x)在xi处与f(x)在xi处的值相 等。
曲线曲面概述
自由曲线和曲面发展过程
自由曲线曲面的最早是出现在工作车间,为了获得特殊的曲线,人们 用一根富有弹性的细木条或塑料条(叫做样条),用压铁在几个特殊 的点(控制点)压住样条,样条通过这几个点并且承受压力后就变形 为一条曲线。人们调整不断调整控制点,使样条达到符合设计要求的 形状,则沿样条绘制曲线。
5.1.2 参数样条曲线和曲面的常用术语
在工程设计中,一般多采用低次的参数样条曲线。 这是因为高次参数样条曲线计算费时,其数学模型难于 建立且性能不稳定,即任何一点的几何信息的变化都有 可能引起曲线形状复杂的变化。
因此,实际工作中常采用二次或三次参数样条曲线,如: 二次参数样条曲线: P (t) = A0 + A1t + A2t2 三次参数样条曲线: P (t) = A0 + A1t + A2t2 + A3t3
a3
1 0] a2 a1 a0
三次参数样条曲线
P(k) a3 0 a2 0 a1 0 a0 P(k 1) a3 1 a2 1 a1 1 a0 P '(k) 3a3t2 2a2t a1 a1 P '(k 1) 3a3 2a2 a1
P0 0 0 0 1 a3
自由曲线与曲面
例如,x=r cos , y=r sin 表示圆
x=a cos cos
y=b cos sin
z=c sin
表示椭球面
3
矢量形式:
4
(2) 表示形式的比较 非参数方程的表示有以下缺点: 1) 与坐标轴相关;
2) 会出现斜率为无穷大的情况;
3) 非平面曲线曲面难以用常系数非参数化函 数表示;
得:
2m0+m1=C0 mn-1+2mn=Cn
27
(3) 特别当M0=0或Mn=0时,称为自由端点条件。 此时端点为切点,曲率半径无限大。例如,在曲线 端点出现拐点或与一直线相切时。
在求得所有mi后,分段三次曲线即可由(6-4)确定。 整条三次样条曲线的表达式为: y(x) = yi(x) ( i=1, 2, ... ,n)
, 0 , 1
19
y (u ) y0 F0 (u ) y1 F1 (u ) y G0 (u ) y G1(u )
, 0 , 1
(6-1)
F0 (u ) 1 3u 2 2u 3 其中: F1 (u ) 3u 2 2u 3 G0 (u ) u 2u 2 u 3 G1 (u ) u 2 u 3
imi-1+2mi+ imi+1=ci
( i= 1,2, ..., n-1 )
(6-5)
hi+1 i = hi + hi+1 ci =3(i
, + i
i=1-i
yi-yi-1 hi
yi+1-yi ) hi+1
25
式(6-4)、(6-5)包含m0,m1,…,mn共n+1个未知量, 对应整条曲线的x0、x1,…,xn的n+1型值点,式(65)包含n-1个方程个数,还不足以完全确定这些mi , 须添加两个条件。 这两个条件通常根据对边界节点x0与xn处的附加 要求来提供,故称为端点条件。常见有以下几种:
自由曲线和自由曲面
x x(t)
y
y(t)
(7.1)
z z(t)
为便于计算机处理,曲线上一点常用其位置向量表示,如下所示:
P(t) x(t) y(t) z(t)
(7.2)
通常,通过对参数变量的规格化,使参数 t 在闭区间[0,1]内变化(写成t 0 1),并对此区间内的
参数曲线进行研究。
用参数方程描述自由曲线具有以下优点: ● 所描述的曲线形状与坐标系的选取无关。例如,如果通过一系列型值点拟合一条曲线或由一系列控 制点(或特征点)定义一条曲线,曲线的形状仅取决于这些点本身之间的关系,而与这些点所在的坐标系无 关。
● 规格化的参数变量 t 0 1,使其相应的几何分量是有界的(即表示曲线是有界的),不需要另设
其他参数来定义其边界。
● 有更大的自由度来控制曲线、曲面的形状。如一条二维三次曲线的显式表示为: y a0 a1x a2x2 a3x3
其中只有 4 个系数用来控制此曲线的形状。而该曲线的参数表示为:
1. 点 点是构造曲线和曲面的最基本的几何元素,在曲线和曲面构造中常用的点有型值点、控制点(特征点) 和插值点,如 6.1 节所述。
2. 插值 插值是函数逼近的重要方法。其原理是:
设函数 f (x) 在区间[ a, b ]上有互异的 n 个型值点 f (xi ) ( i 1, 2, 3, , n ),基于这个列表数据,寻求 某个函数(x) 去逼近 f (x) ,使 (xi ) f (xi )( i 1, 2, 3, , n ),则称(x) 为 f (x) 的插值函数, xi 为插值 节点。
● 参数方程中,代数、几何相关和无关的变量是完全分离的,并且不限制变量的个数,便于用户把低 维空间中的曲线或曲面扩展到高维空间。这种变量分离的特点使得人们可以用数学公式去处理几何分量,如 本章随后使用到的调和函数就具有此特点。
自由曲线曲面造型技术
2、简单技术 (插值与拟合)
2.1曲 线 拟 合 问 题 的 提 法
已知一组(二维)数据,即平面上 n个点(xi,yi) i=1,…n, 寻求一个函数(曲线)y=f(x), 使 f(x) 在某种准则下与所 有数据点最为接近,即曲线拟合得最好。
y
+
+
+
+ + (xi +i,yi)
+
+
y=f(x) +
但人们并不安于现状,继续探索新的造型方法。相继 出现了自由变形造型、偏微分方程造型、能量法造型、 小波技术等。这些方法目前还处于深入研究阶段,有 望于21世纪得到广泛的应用。
插值(interpolation)、拟合(fitting)和
逼近(approximation),一直是曲线曲面 造型基本的方法。
问题:给定一批数据点,需确定满足特定要求的曲线或曲面 解决方案: •若要求所求曲线(面)通过所给所有数据点,就是插值问题; •若不要求曲线(面)通过所有数据点,而是要求它反映对象 整体的变化趋势,这就是数据拟合,又称曲线拟合或曲面拟合。
函数插值与曲线拟合都是要根据一组数据构造一个函数作 为近似,由于近似的要求不同,二者的数学方法上是完全不同 的。 实例:下面数据是某次实验所得,希望得到X和 f之间的关系?
4)线性插值
等等
样条插值
比分段线性插值更光滑。
y
a
xi-1 xi
bx
在数学上,光滑程度的定量描述是:函数(曲
线)的k阶导数存在且连续,则称该曲线具有k阶光
滑性。 光滑性的阶次越高,则越光滑。是否存在较低
次的分段多项式达到较高阶光滑性的方法?三次 样条插值就是一个很好的例子。
自由曲线曲面造型技术
自由曲线曲面造型技术
自由曲线曲面造型技术是一种基于自由曲线和曲面的造型设计技术,通过使用计算机辅助设计软件,设计师可以创建出各种复杂的曲线和曲面形状,实现高精度的造型设计。
随着计算机技术和CAD/CAM技术的不断发展,自由曲线曲面造型技术已成为现代工业设计中必不可少的一部分。
它在汽车、飞机、船舶、建筑、家具等领域发挥着重要作用,可以帮助设计师更快速、更准确地实现设计目标。
自由曲线曲面造型技术的主要优点包括:可以快速地进行多样化的设计,能够精确地控制曲线和曲面的形状和大小,可以减少设计过程中的错误和重复工作,可以提高产品的品质和创新性。
在实际应用中,自由曲线曲面造型技术需要设计师具备良好的数学和计算机技能,同时还需要丰富的工程经验和实践能力。
只有将理论知识和实践技能完美结合,才能创造出更加出色的设计作品。
- 1 -。
自由曲线和曲面
第5讲 三维曲面的表示 —孔斯(Coons)曲面
第5讲 三维曲面的表示 —孔斯(Coons)曲面
第5讲 三维曲面的表示 —孔斯(Coons)曲面
第5讲 三维曲面的表示 —孔斯(Coons)曲面
第5讲 三维曲面的表示 —孔斯(Coons)曲面
第6讲 三维曲面的表示 —贝塞尔(Bezier)曲面
第2讲 三次参数样条曲线
第2讲 三次参数样条曲线
第3讲 Bezier曲线
第3讲 Bezier曲线
3.Bezier曲线的性质
第3讲 Bezier曲线
4.Bezier曲线的性质(续)
第3讲 Bezier曲线
5.常用Bezier曲线的矩阵表示
第3讲 Bezier曲线
6.常用Bezier曲线的矩阵表示
第6讲 三维曲面的表示 —贝塞尔(Bezier)曲面
第6讲 三维曲面的表示 —贝塞尔(Bezier)曲面
第6讲 三维曲面的表示 —贝塞尔(Bezier)曲面
第4讲 B样条曲线
1.B样条基函数
第4讲 B样条曲线
2.B样条基函数的性质
第4讲 B样条曲线
3.B样条曲线
第4讲 B样条曲线
4.B样条曲线的性质
第4讲 B样条曲线
5.B样条曲线的性质(续)
第4讲 B样条曲线
第4讲 B样条曲线
第4讲 参数曲线相关概念
第4讲参数曲线相关概念
第4讲参数曲线相关概念
第2讲 三次参数样条曲线
第2讲 三次参数样条曲线
1.Hermite曲线的二阶导数形式
第2讲 三次参数样条曲线
2.三次参数样条曲线 设有点列{Pi}(i=0,1,…,n),用Hermite三次 参数曲线将相邻点连接起来,使得最终的曲线 在已知点处具有连续的二阶导数,该曲线是一 条三次样条曲线。
(计算机图形学)自由曲线曲面
参数连续性,用C 表示 C0连续(0阶参数连续) —— 指曲线相连,前一段曲线的终点
阶数
t=1与后一段曲线的起点t=0相同,即 相邻两段曲线结合点处有相同坐标。
C1连续(一阶参数连续) ——代表两个相邻曲线段的方程在相交
点处有相同的一阶导数(切线)。 (一阶导数反映了曲线对参数 t 的变 化速度)
B2,3(t)ຫໍສະໝຸດ Ot4个基函数
7.2.2 Bernstein基函数及曲线的性质
Bi ,n (t ) n! i i t i (1 t ) ni C n t (1 t ) ni i!(n i)!
t∈〔0,1〕(i=0,1,2……n) ,t∈〔0,1〕
1.非负性: Bi,n (t ) 0
void CTestView::DrawBezier()//绘制Bezier曲线 { CDC *pDC=GetDC(); CPen NewPen,*pOldPen; NewPen.CreatePen(PS_SOLID,1,RGB(0,0,255));//曲线颜色 pOldPen=pDC->SelectObject(&NewPen); pDC->MoveTo(P[0]); for(double t=0.0;t<=1.0;t+=0.01) { double x=0,y=0; for(int i=0;i<=n;i++) { x+=P[i].x*C(n,i)*pow(t,i)*pow(1-t,n-i); y+=P[i].y*C(n,i)*pow(t,i)*pow(1-t,n-i); } pDC->LineTo(Round(x),Round(y)); } pDC->SelectObject(pOldPen); NewPen.DeleteObject(); ReleaseDC(pDC); }
计算机图形学第4章 自由曲线与曲面2
(1) P3 Q0 (2) 0 P3 P2 (Q1 Q0 )
三点共线,且Q1,P2在连接点的异侧
二阶几何连续条件?
自学
21
4.6 Bezier曲线
反求控制顶点
给定n+1个型值点,要求构造一条Bezier曲线通过这些点
Q0 P0 ... 0 n 1 n 1 n (i / n) ... PnCn (i / n) n Qi P0Cn (1 i / n) P 1C n (1 i / n) ... Qn Pn
17
4.6 Bezier曲线
二次Bezier曲线
n=2,抛物线 P(0)=P0,P(1)=P2; P'(0)=2(P1- P0), P'(1)=2(P2- P1) P(1/2)=[P1+ (P0+ P2)/2]/2
P1
P(0.5)
P(0)
P0
M
P2
P(1)
说明二次Bezier曲线在 t=1/2 处的点经过P0P2 上 的中线P1M的中点。
优于Bezier曲线之处:
26
4.7 B样条曲线
三次B样条曲线对三次Bezier曲线进行改进, 它克服了Bezier曲线的不足,同时保留了 Bezier曲线的直观性和凸包性,是一种工程设 计中更常用的拟合曲线。
三次B样条曲线的构造:
由前面可知,三次参数曲线可以表示成: P(t)=F0,3(t)P0 + F1,3(t)P1 + F2,3(t)P2 + F3,3 (t)P3 F0,3(t) ,F1,3(t) ,F2,3(t) ,F3,3 (t)是待定参数 P2 P1 P(t) 由P0,P1,P2,P3确定 Q(s) 由P1,P2,P3,P4确定 P3 P4
自由曲线-自由曲面设计
若令 d k x
n
a
j 0
m
k 0
i k
Si ,
d
k 0
n
i yk xk Ti;则可得方程组: k
j
S i j Ti
这里有m+1个方程,可以解出m+1个系数未知数 a0,a1,…am,代入定义即可求出多项式F(x)逼近已知 的n个型值点;
一组实验数据: x 0 10 20 30 40
多项式拟合最小二乘法
设已知型值点为(xi,yi)(i=1,2,…n),现构造一个 m(m<n-1)次多项式函数y=F(x)逼近这些型值点; 逼近的好坏可用各点偏差的加权平方和来衡量:
(a0 , a1 ,..., am ) d k [ F ( xk ) yk ]2
k 0 n
F ( x) a j x j 使得偏 令F(x)为一个m次多项式,
j 0
m
差平方和 达到极小;
最小二乘法解决逼近问题
根据求极值问题的方法可知,使 (a j ) 达到极小的 a j (j=0,1…,m)必须满足下列方程组:
n m i 2 d k a j xkj y k xk 0 ai k 0 j 0
i 0,1,..... m
1972年,德布尔(de Boor)给出了B样条的标准计算 方法;
1974年,通用汽车公司的戈登(Gordon)和里森费尔 德(Riesenfeld)在B样条理论的基础上,提出了B样 条曲线、曲面;
1975年,美国的佛斯普里尔(Versprill)提出了有理B 样条方法; 80年代后期,美国的皮格尔(Piegl)和蒂勒(Tiller)将 有理B样条发展成非均匀有理B样条(NURBS)方法;
自由曲线和曲面 图形学 孔令德 计算机图形学基础教程 大学课件98页PPT文档
下面用已知条件求出Hermite曲线段的参数方程
11
通常用三次参数方程描述空间一条自由曲 线:
x(t) y(t)
axt3 ayt3
bxt2 byt2
cxt cyt
dx dy
,t∈[0,1]
z(t) azt3 bzt2 czt dz
其中,t为参数,且0<=t<=1时,t=0对应曲线段的起点,t =1时,对应曲线段的终点。
以直线为例:已知直线的起点坐标P1(x1,y1) 和终点坐标P2(x2,y2),直线的显式方程:
yy1yx22 xy11(xx1)
9
直线的隐函数方程表示为:
f(x)yy1y x2 2 x y1 1(xx1)0
直线的参数方程表示为:
yxyx11
(x2 (y2
d
t∈〔0,1〕;
13
7.1.3 拟合和逼近
• 型值点 指通过测量或计算得到的曲线或曲面上少量描述曲线或 曲面几何形状的数据点。
• 控制点
指用来控制或调整曲线(面)形状的特殊点(不一定在曲线上)
• 插值点 求给定型值点之间曲线(面)上的点 要求建立的曲线与曲面数学模型,严格通过已知的每一
自由曲线曲面——
无法用标准方程描述的曲线曲 面,通常由一系列实测数据点 确定。如汽车的外形曲线曲面、 等高线等。
3
图7-1 汽车的曲面
4
7.1 基本概念
7.1.1 样条曲线曲面 7.1.2 曲线曲面的表示形式 7.1.3 拟合和逼近 7.1.4 连续性条件
自由曲线与曲面
2019/7/12
22
其中
称为Cardinal矩阵。 将式子展开写成代数形式为:
P(u)﹦Pk-1(-su3﹢2su2﹣su)﹢Pk((2﹣s)u3 ﹢(s﹣3)u2﹢1)﹢Pk+1((s﹣2)u3 ﹢(3﹣2s)u2﹢su)﹢Pk+2(su3﹣su2)
2019/7/12
23
其中
C0(u)﹦-su3﹢2su2﹣su C1(u)﹦(2﹣s)u3﹢(s﹣3)u2﹢1 C2(u)﹦(s﹣2)u3﹢(3﹣2s)u2﹢su C3(u)﹦su3﹣su2 称为Cardinal样条调和函数。下图是Cardinal样条调和
象Hermite样条曲线一样,Cardinal样条曲线也是
插值分段三次曲线,且边界条件也是限定每段曲线端
点处的一阶导数。与Hermite样条曲线的区别是,在
Cardinal样条曲线中端点处的一阶导数值是由两个相
邻型值点坐标来计算的。
设相邻的四个型值点分别记为Pk-1、Pk、Pk+1、 Pk+2, Cardinal样条插值方法规定Pk、Pk+1 两型值点 间插值多项式的边界条件为:
P(0) ﹦Pk P(1) ﹦Pk+1 P’(0)﹦(1﹣t)(Pk+1﹣Pk-1)/2 P’(1)﹦(1﹣t)(Pk+2﹣Pk)/2 其中t为一可调参数,称为张力参数,可以控制
Cardinal样条曲线型值点间的松紧程度。
2019/7/12
21
记S=(1﹣t)/2,用类似Hermite曲线样条中的方法, 将Cardinal边界条件代入参数方程,可以得到矩阵 表达式:
void Hermit3(HDC hdc,int arry1[2][2],int arry2[2][2],int n,int steps)
计算机图形学04:自由曲线和曲面
切矢量
P( t ) P’( t ) P( t + t) P
y
x
O
P'(t) dP(t) lim P(t t) P(t)
dt
t 0
t
曲线弧长
dP(t) dx(t) 2 dy(t) 2 dz(t) 2
dt
dt dt dt
P1 P0
n
L(n) Pi1Pi i 1
Pn
条 ❖ 80年代,Piegl和Tiller, NURBS方法
参数表示的好处
❖有更大的自由度来控制曲线、曲面的形状
❖ 易于用矢量和矩阵表示几何分量,简化了计算 ❖设计或表示形状更直观,许多参数表示的基函数如
Bernstein基和B样条函数,有明显的几何意义
§1 参数样条曲线
❖ 曲线的三种坐标表示法 ❖ 直角坐标表示
•
M
H
•
0 0
P0
0
1
GH
•
M
H
•T
|t1
GH
•
M
H
•
1 1
P1
1
0
GH
•
M
H
•T
|t0
GH
•
M
H
•
1 0
R0
0
0
GH
•
M
H
•T
|t1
GH
•
MH
•
1 2
R1
3
三次Hermite曲线
▪ 合并1 1 0 0GH•MH
•
0 0
1 1
1 0
1 2
P0
P1
R0
取为
R1 GH
0 1 0 3
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
曲线的分类
规则曲线 自由曲线 随机曲线
1
概 述
研究分支
计算几何
1969 Minsky, Papert提出 1972 A.R.Forrest给出正式定义
CAGD (Computer Aided Geometrical Design)
1974 Barnhill, Riesenfeld, 美国Utah大学的一次国 际会议上提出
矩阵表示
条件
GH M H
GH M H
GH M H
GH M H
1 0 T |t 0 GH M H P0 0 0 1 1 T |t 1 GH M H P 1 1 1 0 1 T |t 0 GH M H R0 0 0 0 1 T |t 1 GH M H R1 2 3
定义--n次多项式曲线
x (t ) x0 x1 t xn t n n y ( t ) y y t y t 0 1 n z (t ) z z t z t n 0 1 n
t [0,1]
17
参数多项式曲线(2/4)
曲线的表示形式
非参数表示
显式表示
y f ( x) z g ( x)
隐式表示
f ( x, y , z ) 0 g ( x, y , z ) 0
8
参数曲线基础(2/6)
参数表示
x x(t ) y y (t ) z z (t )
矢量表示形式
x(t ) x0 y P(t ) y ( t ) 0 z (t ) z0
x1 xn 1 t 记为 y1 yn C T n z1 zn t
t [0,1]
P0+P1基矩阵MT来自P1 P020
三次Hermite曲线(1/7)
定义
给定4个矢量 P0 , P 1 , R0 , R1 ,称满足条件的三 次多项式曲线P(t)为Hermite曲线
P(0) P0 , P(1) P 1 P(0) R0 , P(1) R1
R0 P1
P0
R1
21
三次Hermite曲线(2/7)
2
概 述
研究内容
对几何外形信息的计算机表示 对几何外形信息的分析与综合 对几何外形信息的控制与显示
3
概 述
对形状数学描述的要求?
从计算机对形状处理的角度来看 (1)唯一性
(2)几何不变性
对在不同测量坐标系测得的同一组数据点进行拟合, 用同样的数学方法得到的拟合曲线形状不变。
4
概
(3)易于定界 (4)统一性:
述
统一的数学表示,便于建立统一的数据库 标量函数:平面曲线 y = f(x) 空间曲线 y = f(x) z = g(x) 矢量函数:平面曲线 P(t) = [x(t) y(t)] 空间曲线 P(t) = [x(t) y(t) z(t)]
x x(t ) y y (t ) z z (t ) t [ a, b]
几何矩阵
G G0 G1 Gn
控制顶点 Gi 基矩阵M
M T 确定了一组基函数
19
参数多项式曲线(4/4)
例子—直线段的矩阵表示
P(t ) P0 tP 1 P 0 (1 t ) ( P 0 P 1 )t P0
几何矩阵G
1 1 1 P0 P t [0,1] 1 0 1 t
传统的、严格的连续性 称曲线P = P(t)在 t t0处n阶参数连续,如果 它在 t 0 处n阶左右导数存在,并且满足
d k P(t ) dt k
t t 0
d k P(t ) dt k
t t 0
, k 0,1, n
记号 C n
11
参数曲线基础(5/6)
几何连续性
曲线曲面拟合方法
生成方法
插值
点点通过型值点 插值算法:线性插值、抛物样条插值、Hermite插 值
逼近
提供的是存在误差的实验数据
最小二乘法、回归分析 Bezier曲线、B样条曲线等
16
提供的是构造曲线的轮廓线用的控制点
拟合
参数多项式曲线(1/4)
为什么采用参数多项式曲线
表示最简单 理论和应用最成熟
加权和形式
n P(t ) C T P0 t P t Pn t [0,1] 1
缺点
Pi 没有明显的几何意义 Pi 与曲线的关系不明确,导致曲线的形状控制困难
18
参数多项式曲线(3/4)
矩阵表示
矩阵分解
C GM
P(t ) C T G M T t [0,1]
直观的、易于交互控制的连续性 0阶几何连续
称曲线P=P(t)在 t t0 处0阶几何连续,如果它在 t 0 处位置连续,即 P(t0 ) P(t0 ) 记为 GC 0
1阶几何连续
称曲线P=P(t)在 t t0 处1阶几何连续,如果它在该 处 GC 0 ,并且切矢量方向连续 记为 GC1
i
26
5
概
述
从形状表示与设计的角度来看 (1)丰富的表达能力:表达两类曲线曲面
(2)易于实现光滑连接 (3)形状易于预测、控制和修改 (4)几何意义直观,设计不必考虑其数学表达
6
自由曲线曲面的发展过程
目标:美观,且物理性能最佳
1963年,美国波音飞机公司,Ferguson双三次曲 面片 1964~1967年,美国MIT,Coons双三次曲面片
22
三次Hermite曲线(3/7)
合并
1 0 GH M H 0 0 1 0 0 1 1 1 P0 1 0 2 1 0 3
1
P 1
R0
R1 GH
取为
解
1 0 MH 0 0 1 0 0 1 0 1 1 1 0 1 0 2 1 0 3 0 2 0 3 2 1 2 1 0 1 1
P(t0 ) P(t0 )
0为任一常数
12
参数曲线基础(6/6)
2阶几何连续
称曲线P=P(t)在 t t0处2阶几何连续,如果它在 t 0处
(1) GC
1
B ( t ) B ( t (2)副法矢量方向连续 0 0)
(3)曲率连续
k (t0 ) k (t0 )
23
0 3
三次Hermite曲线(4/7)
基矩阵与基函数(调和函数)
1 0 M H T 0 0 2 1 1 3t 2t 3 G0 (t ) 2 3 G ( t ) 0 3 2 t 3t 2t 1 1 2 1 t 2 t 2t 2 t 3 H 0 (t ) 3 2 3 0 1 1 t t t H1 (t ) 0 3
13
参数表示的好处
有更大的自由度来控制曲线、曲面的形状
易于用矢量和矩阵表示几何分量,简化了计算 设计或表示形状更直观,许多参数表示的基函数 如Bernstein基和B样条函数,有明显的几何意义
14
曲线曲面拟合方法
已知条件的表示方法
一系列有序的离散数据点
型值点 控制点
边界条件 连续性要求
15
1971年,法国雷诺汽车公司,Bezier曲线曲面 1974年,美国通用汽车公司,Cordon和 Riesenfeld, Forrest, B样条曲线曲面 1975年,美国Syracuse大学,Versprille有理B样条 80年代,Piegl和Tiller, NURBS方法
7
参数曲线基础(1/6)
24
三次Hermite曲线(5/7)
形状控制
改变端点位置矢量 P0 , P 1 调节切矢量 R0 , R1 的方向 调节切矢量 R0 , R1 的长度
25
三次Hermite曲线(6/7)
三次参数样条曲线
样条? 曲线的定义
给定参数节点 ti in0 ,型值点 Pi in0 ,求一条 C 2 的分段三次参数曲线 P(t )(t [t0 , tn ]) , 使 P(t ) |t t 。P(t)称为三次参数样条曲线
t [ a, b]
参数的含义
时间,距离,角度,比例等等 规范参数区间[0,1]
9
参数曲线基础(3/6)
参数矢量表示形式
例子:直线段的参数表示
t [0,1]
P P(t ) P0 t ( P1 P0) (1 t ) P0 tP1
10
参数曲线基础(4/6)
参数连续性