计算机图形学 第八章 自由曲线和曲面
《自由曲线与曲面》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.1.3 Bezier曲线 Bezier曲线
Q(t ) = [x(t ) = t y ( t ) z ( t )] = T * M B * G B −1 3 − 3 3 −6 3 t 1 * − 3 3 0 0 0 1 1 P 1 P 0 2 * 0 P3 0 P4
G1 g1x G g 2x G = 2 = G3 g 3 x G4 g 4 x g1 y g2 y g3 y g4 y g1z g2z g3z g4z
Q(t ) = [x(t )
G1 g1 x G g 2x G = 2 = G 3 g 3 x G 4 g 4 x
y (t ) z (t )] = t 3
g1 y g2 y g3 y g4 y g1 z g2z g3z g4z
[
t2
m11 m t 1 21 m31 m41
]
m12 m22 m32 m42
m13 m23 m33 m43
m14 G1 m24 G2 m34 G3 m44 G4
5.1.3 Bezier曲线 Bezier曲线
Q(t ) = T * M H * GH = T * M H * ( M HB * GB ) = T * ( M H * M HB ) * GB = T * M B * GB
M B = M H * M HB −1 3 − 3 3 −6 3 = − 3 3 0 0 0 1 1 0 0 0
如何确定曲线的约束条件
Q(t ) = [x(t ) y ( t ) z ( t )] = T * C
拆分 C = M * G
计算机图形学ppt课件第八章自由曲线曲面
其性质见P197
§8.3 贝叶斯(Bezier)曲面
定义 在空间给定(n+1)×(m+1)个点Pi,j (i=0,1…n;j=0,1…m),称下列形式为n×m次Bezier曲 面:
nm
S(u,v)
Pi, j Bi,n (u)Bj,m (v),0 u, v 1
i0 j0
§8.3 贝叶斯(Bezier)曲面
其中 Bi,n (u) 是Bernstein基函数
C C Bi,n (u)
i ui (1 u)ni ,
n
i n! n i!(n i)!
§8.2 贝叶斯(Bezier)曲线
一般称折线P0、P1……Pn为C(u)的控制多边形,称P0、 P1……Pn各点为C(U) 的控制顶点。控制多边形是C(u)的 大致勾画,C(u)是P0、P1……Pn的逼近。
u
u
u
u
§8.1 曲线和曲面的表示
所以 c'(u) [x'(u), y'(u), z'(u)] 矢函数的导矢也是一 个矢函数,因此也有方向和模。当 u 0 ,c(u)/ u 就转变为切线矢量,故又称导矢为切矢。
曲线的自然参数方程 设在空间曲线c(u)上任取一点M0(x0,y0,z0)作为计算 弧长起点,曲线上其他点M(x,y,z)到M0的弧长s作为 曲线方程的参数,这样的方程称为曲线的自然参数 方程,弧长则称为自然参数。
数,得到
Pi '
n
i 1
Pi1
(1
n
i
) 1
Pi
§8.2 贝叶斯(Bezier)曲线
Bezier曲线的升阶 说明:
1、新的控制点是老的特征多边形在参数i/(n+1)处进 行线性插值的结果。
《自由曲线与曲面》课件
课件演示流程及时间安排
开场介绍:5分钟 添加标题
自由曲线与曲面的生成方法: 自由曲线与曲面的优化与改
15分钟
进:10分钟
添加标题
添加标题
提问与互动:5分钟 添加标题
添加标题
自由曲线与曲面的基本概念: 10分钟
添加标题
自由曲线与曲面的应用实例: 10分钟
添加标题 总结与展望:5分钟
课件素材及资源获取方式
结论与展望
课件页码及内容安排
• 封面:标题、作者、日期 • 目录:列出所有章节和页码 • 引言:介绍自由曲线与曲面的背景和重要性 • 第一章:自由曲线与曲面的定义和分类 • 第二章:自由曲线与曲面的性质和特征 • 第三章:自由曲线与曲面的表示方法 • 第四章:自由曲线与曲面的应用实例 • 结论:总结自由曲线与曲面的重要性和应用价值 • 参考文献:列出参考的书籍、论文和网站 • 致谢:感谢指导老师和同学的帮助 • 封底:结束语和版权声明
单击此处添加副标题
自由曲线与曲面PPT课件
大纲
汇报人:
目录
01 02 03 04 05 06
添加目录项标题 课件简介 课件内容 课件结构 课件效果 总结评价
01
添加目录项标题
02
课件简介
课件背景
自由曲线与曲面是数学和计算机图形学中的重要概念 课件旨在帮助学生理解自由曲线与曲面的基本概念、性质和应用 课件内容涵盖了自由曲线与曲面的定义、分类、性质、表示方法、计算方法、应用实例等 课件适合数学、计算机科学、工程学等专业的学生和教师使用
课件目的
讲解自由曲线与曲面的生成 方法
介绍自由曲线与曲面的基本 概念和性质
探讨自由曲线与曲面的应用 领域
提高学生理解和应用自由曲 线与曲面的能力
自由曲线与曲面
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
5_1自由曲线与曲面PPT精品文档29页
记为 GC 1
P(t0)P(t0) 0为任一常数
参数曲线基础(6/6)
2阶几何连续
称曲线P=P(t)在 t t0处2阶几何连续,如果它在 t 0处
(1) GC 1
(2)副法矢量方向连续 B(t0)B(t0)
(3)曲率连续
k(t0)k(t0)
参数表示的好处
有更大的自由度来控制曲线、曲面的形状
易于用矢量和矩阵表示几何分量,简化了计算 设计或表示形状更直观,许多参数表示的基函数 如Bernstein基和B样条函数,有明显的几何意义
(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]
t[0,1]
几何矩阵G
基矩阵MT
P1
P0
P0+P1
三次Hermite曲线(1/7)
定义
给定4个矢量 P0,P1,R0,R1 ,称满足条件的三 次多项式曲线P(t)为Hermite曲线
P(0)P0,P(1)P1 P(0)R0,P(1)R1 R0
P1 P0
R1
三次Hermite曲线(2/7)
矩阵表示
参数曲线基础(1/6)
曲线的表示形
z
g(x)
隐式表示
f (x, y) 0
f
(x,
y,
z)
0
参数曲线基础(2/6)
参数表示
x x(t) y y(t) z z(t)
Bezier曲线及曲面
《自由曲线曲面》课程论文Bezier 曲线与曲面姓名:轩小静 学号:2010113010101、Bezier 曲线的背景给定n +1个数据点,p 0(x 0,y 0),…p n (x n ,y n ),生成一条曲线,使得该曲线与这些点所描述的形状相符。
如果要求曲线通过所有的数据点,则属于插值问题;如果只要求曲线逼近这些数据点,则属于逼近问题。
逼近在计算机图形学中主要用来设计美观的或符合某些美学标准的曲线。
为了解决这个问题,有必要找到一种用小的部分即曲线段构建曲线的方法,来满足设计标准。
当用曲线段拟合曲线f (x )时,可以把曲线表示为许多小线段φi (x )之和,其中φi (x )称为基(混合)函数。
)()(0x a x f i ni i φ∑==这些基(混合)函数是要用于计算和显示的。
因此,经常选择多项式作为基(混合)函数。
0111...)(a x a x a x a x n n n n ++++=--φ几何造型有两个分支:一个是曲线曲面造型(surface modeling ),一个是实体造型(solid modeling );后来随着技术的进步,两个分支逐渐融合在一起。
曲线曲面的造型的算法和概念是几何造型的公共基础,bezier 曲线曲面在几何造型中扮演着一个非常重要的角色。
由于几何外形设计的要求越来越高,传统的曲线曲面表示方法, 已不能满足用户的需求。
1962年,法国雷诺汽车公司的贝塞尔(P.E.Bezier )构造了一种以逼近为基础的参数曲线和曲面的设计方法,并用这种方法完成了一种称为UNISURF 的曲线和曲面设计系统,1972年,该系统被投入了应用。
想法基点是在进行汽车外形设计时,先用折线段勾画出汽车的外形大致轮廓,然后用光滑的参数曲线去逼近这个折线多边形。
这个折线多边形被称为特征多边形。
逼近该特征多边形的曲线被称为Bezier 曲线。
Bezier 方法将函数逼近同几何表示结合起来,使得设计师在计算机上就象使用作图工具一样得心应手。
计算机图形学课件第八章-几何造型简介
32
作业
1.几何造型有哪三种模型?各有什么特点? 2.分析比较CSG法与B-rep法优缺点。
1973年在英国剑桥大学由I· C· Braid等建成了BUILD系统 1973年日本北海道大学公布了TIPS-1系统 1978年,Shape Data的ROMULUS系统问世 1980年 Evans和Sutherland开始将ROMULUS投放市场
目前市场上已有许多商品化的几何造型系统。
国外: AUTOCAD、CATIA、I - DEAS 、Pro/Engineer、
1
第八章 几何造型简介
8.1 概述 8.1.1 几何造型定义 几何造型是计算机及其图形
工具表示描述物体形状,设计几 何形体,模拟物体动态处理过程 的一门综合技术。包括: 1、曲面造型:B样条曲面,Coons 2、实体造型 3、特征造型:面向制造全过程,实现CAD/CAM集成重要手段 三种造型关键是实体造型,后面重点讨论实体造型。
画、边、点之间的拓扑关系
16
8.3.2 边界表示(B-rep)法
2、形体边界表示法 (1)分层表示 将形体面、边、顶点的信息分别记录,建立层与层 之间的关系,其信息包括几何信息和拓扑信息。 (2)翼边结构 以边为核心来组织形体数据
(3)优缺点 优点:可直接用几何体面、边、点来定义数据, 方便图形绘制。 缺点:数据结构复杂,存储量大。
27
8.3.5 分解表示法(D-rep)
先讨论四叉树再讨论八叉树。 1、四叉树
四叉树处理图形基本思想:假定图形由N ×N个像素构成, 且 N= 2m。将图形四等分,划分后可能出现三种情况:
(1)图形不占区域:白色区域,不必再划分;
计算机图形学8(陈永强)
31
8.3.1Bezier曲线的定义
一次Bezier曲线(n=1)
p(t ) Pk BENk ,1 (t ) (1 t ) P0 tP 1
k 0 1
t [0, 1]
32
8.3.1Bezier曲线的定义
二次Bezier曲线(n=2)
2
8.1 基本概念
曲线曲面数学描述的发展
曲线曲面的表示要求
曲线曲面的表示
插值与逼近 连续性条件 样条描述
3
8.1.1曲线曲面数学描述的发展
弗格森双三次曲面片
孔斯双三次曲面片
样条方法
Bezier方法
B样条方法
有理Bezier 非均匀有理B样条方法
22
推导
p(t ) [t
3
t
2
ax b x t 1] cx d x
ay by cy dy
az bz cz dz
[t 3 t 2
a b t 1] T C c d
23
a 0 b 1 C c 0 d 3 2 2 3 3 0 0 0 1
n 2 1
t [0,1]
17
8.1.6样条描述
an x(t ) n p (t ) y (t ) t t 1 a1 z (t ) a0 T C T M S G t [0,1] bn cn b1 c1 b0 c0
0 0 1 Pk 1 1 1 Pk 1 0 1 0 Rk 2 1 0 Rk 1 1 1 Pk 2 1 Pk 1 M h Gh 1 0 Rk 0 0 Rk 1
(计算机图形学)自由曲线曲面
参数连续性,用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); }
计算机图形学曲线和曲面造型ppt课件
• 如果参数曲线有n阶连续的导矢,则称该曲线为Cn或n阶连续。
一般来说,如果曲线连续的阶数越高,那么曲线就越光滑。 在几何上,C0,C1,C2依次表示曲线的位置、切线方向,曲 率连续。
• 对于组合曲线,整条曲线的参数连续性取决于公共连接点的
连续性。如果在公共连接点达到k阶参数连续,则称该曲线
具有Ck或k阶参数连续性。
| | dpk (u)
duk
u u0
dpk (u) duk
u
u
0
k 0,1,, n
12
y
y(u, v)
z z(u, v)
曲面的范围通常用两个参数u和v的变化区间的矩形区域 u1 u u2 , v1 v v2 给出。这种曲面通常叫做矩形域曲面。参数u和v的变化区间一般规范为0,1,
10
矢量方程式为 s s(u,v) (x(u,v), y(u,v), z(u,v))
计算机图形学
第专题
曲线和曲面造型
1
一. 曲面造型的发展
• 曲面造型(Surface Modeling)是计算机辅助几何
设计 (Computer Aided Geometric Design,CAGD) 和计算机图形学(Computer Graphics)的一项重要 内容,主要研究在计算机图形系统中对曲面的表 示、设计、显示和分析。
多样性 特殊性 拓扑结构复杂性 一体化 集成化 网络化
三维数据采样技术 及硬件设备完善
曲 基于网格细分 面 的离散造型 造 型 曲面变形 研 究 曲面重建 的 开 曲面简化 拓 创 曲面转换 新
计算机图形学-自由曲线与曲面
t [0,1]
参数方程的矢量和矩阵表示
矢量表示:
p(t ) at bt ct d
3 2
t 0,1
矩阵表示:
p(t ) t
3
t
2
a b t 1 t 0,1 c d
参数表示的优点
1)点动成线(t可看为时间,曲线是点随时间而动 的轨迹);有更大的自由度控制曲线曲面的形 状; 2)可对参数曲线曲面的方程直接进行几何变换,而 不需要对曲线曲面的每个数据点进行几何变换 3)可以处理斜率无穷大的情况; 4)代数、几何相关和无关的变量是完全分离的,对 变量个数不限,便于将低维空间中的曲线曲面 扩展到高维空间中;
通常,用基函数和控制点信 息来决定一条曲线
参数三次样条曲线几何形式可以简化表示为:
p(t)=F1(t) p0+ F2(t) p1+ F3(t) p’0+ F4(t) p’1
表示该曲线:两点的坐标及其一阶导数+调和函数, t 的取值范围:[0,1]
7.3 三次Hermite样条
定义:假定型值点Pk和Pk+1之间的曲线段为 p(t),t∈[0,1],给定矢量Pk、Pk+1、Rk和Rk+1,则 满足下列条件的三次参数曲线为三次Hermite样 条曲线:
跨入计算机殿堂的入门篇
计算机图形学 施智平
shizhiping@
第七章
我们需要曲线曲面?
Geri
Geri’s model
Geri’s game
3D艺术的神话 PIXAR经典动画短片回顾
Bezier曲线和B样条曲线
Bezier曲面和B样条曲面
自由曲线-自由曲面设计
若令 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)
第八章-2Bezier曲线计算机图形学
Chapter 8 Three-Dimensional Object Representations
贝塞尔曲线曲面(Bézier Curves and Surfaces)
2020/11/19
交通运输学院CAD/CAM研究所
2
Bézier曲线和曲面
法国工程师Bézier使用逼近样条为雷诺汽车公司 设计汽车外形而开发。数学基础简单,容易实现
two points generate a straight line, three points generate a parabola, four points a cubic curve, and so forth.
Байду номын сангаас
Uk
Un-k
重要
试从Bèzier曲线的定义式写出三次Bèzier曲 线的矩阵表示。(本题15分,只写出结果者 得2分) 已知Bezier曲线特征多边形的顶点P0(1,2)、P1 (3,4)、P2(5,6)、P3(7,8),求Bezier曲线 的参数方程P(t)(矩阵表示);计算 t=0.5,曲线 上点P(0.5)
0 0 0
x1
x x
2 3
y1 y2 y3
z1
z2 z3
2020/11/19
交通运输学院CAD/CAM研究所
12
As a rule, a Bézier Curve is a polynomial of degree one less than the number of control points used:
Bk ,n(u ) C(n,k )u k(1 u )n k
C(n, k) 是二项式系数
:
C(n, k) n!
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Chapter 8曲线和曲面
Hermite基函数
⎡t 3 t 2 ⎣ ⎡ 2 −2 1 1 ⎤ ⎢ −3 3 −2 −1⎥ ⎥ t 1⎤ ⎢ ⎦ ⎢0 0 1 0⎥ ⎢ ⎥ 1 0 0 0⎦ ⎣
H(t)
1 0.8
H0(t)
H1(t)
H1 ( t ) = −2t + 3t
3
2
0.4 0.2 0.2
自然三次样条
P4 P5 R5 P2 P3
P 1 R0 P0
Chapter 8曲线和曲面
四种方法中的第三种
34
自然三次样条
不能局部控制(任一点对整条曲线有有影响) 只适应于型值点分布均匀的情况 不好构造……
Chapter 8曲线和曲面
35
三次样条
很多型值点时,都是分段构造 局部修改性很重要……
分而治之
22
Chapter 8曲线和曲面
三次样条
三次Hermite样条 三次自然样条
⎧ x ( t ) = a3t 3 + a2t 2 + a1t + a0 ⎪ ⎪ y ( t ) = b3t 3 + b2t 2 + b1t + b0 ⎨ ⎪ z ( t ) = c3t 3 + c2t 2 + c1t + c0 ⎪ ⎩ p (t ) = ⎡ a3 ⎢a t 1⎤ • ⎢ 2 ⎦ ⎢a 1 ⎢ ⎣ a0 b3 b2 b1 b0 c3 ⎤ c2 ⎥ ⎥ c1 ⎥ ⎥ c0 ⎦
参数连续性
0阶C 0: pi ( ti1 ) = pi +1 t( i +1)0
几何连续性
(
1阶C1:p 'i ( ti1 ) = p 'i +1 t( i +1)0
(
)
0阶G 0: pi ( ti1 ) = pi +1 t( i +1)0
2阶C 2:p ''i ( ti1 ) = p ''i +1 t( i +1)0
4
曲线和曲面
Chapter 8曲线和曲面
5
曲线和曲面
样条曲线曲面 Bezier曲线曲面 B样条曲线曲面 有理样条曲线曲面 ……
•讨论原理 •讨论性质 •……
Chapter 8曲线和曲面
6
目 录
曲线曲面基础 自由曲线
三次样条曲线 Bezier曲线 B样条曲线 有理样条曲线
自由曲面的表示
Chapter 8曲线和曲面
Rk PK +1 Pk Rk
⎡t 3 ⎣
t2
p ( 0 ) = Pk p′ ( 0 ) = Rk
p (1) = Pk +1 p ′ (1) = Rk +1
24
Chapter 8曲线和曲面
三次Hermite样条
⎡ p ( 0 ) ⎤ ⎡ Pk ⎤ ⎡0 ⎢ ⎥ ⎢ ⎥ ⎢1 p (1) ⎥ ⎢ Pk +1 ⎥ ⎢ = =⎢ ⎢ p ' ( 0 ) ⎥ ⎢ Rk ⎥ ⎢0 ⎢ ⎥ ⎢ ⎥ ⎢ ⎢ p ' (1) ⎥ ⎣ Rk +1 ⎦ ⎣ 3 ⎣ ⎦
曲线不一定完全通过 给定的点序列
点:控制点 控制多边形
图8-2 曲线的逼近
逼近8曲线和曲面 Chapter
15
曲线曲面表示方法的性能指标
描 述 性 计算代价 易操作性
Chapter 8曲线和曲面
16
目 录
曲线曲面基础 自由曲线
三次样条曲线 Bezier曲线 B样条曲线 有理样条曲线
自由曲面的表示
Chapter 8曲线和曲面
36
目 录
曲线曲面基础 自由曲线
三次样条曲线 Bezier曲线 B样条曲线 有理样条曲线
自由曲面的表示
Chapter 8曲线和曲面
37
Bezier曲线
逼近曲线 控制方便、直观
控制多边形反应曲线 形状 控制点的数目确定阶 次
由工程师发明的……
Chapter 8曲线和曲面
Chapter 8曲线和曲面
0 1 0 2
0 1 1 1
1⎤ ⎥ 1⎥ ⋅C 0⎥ ⎥ 0⎦
25
三次样条
⎡0 ⎢1 C=⎢ ⎢0 ⎢ ⎣3 0 0 1⎤ ⎥ 1 1 1⎥ 0 1 0⎥ ⎥ 2 1 0⎦
−1
⎡ P ⎤ ⎡2 k ⎢P ⎥ ⎢−3 ⎢ k+1 ⎥ = ⎢ ⋅ ⎢ Rk ⎥ ⎢ 0 ⎢ ⎥ ⎢ ⎣Rk+1⎦ ⎣ 1
Chapter 8曲线和曲面
17
样条描述
⎧ x ( t ) = ant n + ⋅⋅⋅ + a2t 2 + a1t + a0 ⎪ ⎪ y ( t ) = bnt n + ⋅⋅⋅ + b2t 2 + b1t + b0 如何根据已知条 ⎨ ⎪ n 2 件求C? ⎪ z ( t ) = cnt + ⋅⋅⋅ + c2t + c1t + c0 ⎩ p (t ) = ( x (t ) y (t ) z (t )) ⎡ an ⎢ ⋅⋅⋅ ⋅⋅⋅ t 1⎤ ⎢ ⎦ ⎢a 1 ⎢ ⎣ a0 bn cn ⎤ ⋅⋅⋅ ⋅⋅⋅⎥ ⎥ = T ⋅C b1 c1 ⎥ ⎥ b0 c0 ⎦
7
曲线曲面基础
曲线、曲面数学描述的发展 曲线、曲面的表示 连续性条件
Chapter 8曲线和曲面
8
曲线与曲面数学描述的发展
早期:
y = y(x) F(x,y) = 0
现代:
1963年波音公司提出矢函数的方法 1964年,MIT的Conns——孔斯双三次曲面片 Bezier…… ……
Chapter 8曲线和曲面
9
曲线曲面表示的要求
唯一性(给定已知信息,形状唯一) 几何不变性(点相对位置确定,几何形状确定; 不同坐标系;标量函数不具备;) 易于定界(参数方程描述能确定边界) 统一性(统一的数学形式表示不同曲线曲面) 易于实现光滑连接(曲线、曲面片间连接) 几何直观(几何意义明显,易被工程人员接受)
Chapter 8曲线和曲面
23
⎡t 3 ⎣
t2
Chapter 8曲线和曲面
三次Hermite样条
⎧ x ( t ) = a3t 3 + a2t 2 + a1t + a0 ⎪ ⎪ y ( t ) = b3t 3 + b2t 2 + b1t + b0 ⎨ ⎪ z ( t ) = c3t 3 + c2t 2 + c1t + c0 ⎪ ⎩ p (t ) = ⎡ a3 ⎢a t 1⎤ • ⎢ 2 ⎦ ⎢a 1 ⎢ ⎣ a0 b3 b2 b1 b0 c3 ⎤ c2 ⎥ ⎥ c1 ⎥ ⎥ c0 ⎦
Chapter 8曲线和曲面
31
自然三次样条的一段 t∈[0,1]
⎧ x ( t ) = a3t + a2t + a1t + a0 ⎪ ⎪ 3 2 ⎨ y ( t ) = b3t + b2t + b1t + b0 ⎪ 3 2 ⎪ z ( t ) = c3t + c2t + c1t + c0 ⎩
3 2
计算机图形学
第八章:曲线和曲面
王晓华 合肥工业大学,计算机与信息学院
曲线和曲面
Chapter 8曲线和曲面
2
曲线和曲面
直线
圆弧
自 由 曲 线
Chapter 8曲线和曲面
3
曲线和曲面
基本原则:
用一组点表示、记录 曲线
关键问题:
如何“连接”这些点生 成线?
自 由 曲 线
Chapter 8曲线和曲面
Chapter 8曲线和曲面
32
n段自然三次样条
x(t)未知数:4n 可联立的方程数:
内 点:2(n-1) (一内点分别在左右两条曲线上) 一阶导数:n-1(两侧两条曲线在内点上相等) 二阶导数:n-1 P0 ,P1 分别在起点和终点曲线上:2
还少两个方程,有多种方法
Chapter 8曲线和曲面
33
非参数形式
曲线曲面的表示
B(x1,y1)
参数形式
B(x1,y1)
A(x0,y0)
A(x0,y0)
y = kx + b f ( x, y ) = 0;
Chapter 8曲线和曲面
⎧ x = x(t ) , t ∈ [ a, b ] ⎨ ⎩ y = y (t )
曲线曲面的参数表示
⎧ x = x(t ) ⎪ ⎨ y = y (t ) ⎪ z = z (t ) ⎩ t ∈ [a, b] → t ∈ [0,1]
p (t ) = ∑ Pk BEN k ,1 (t ) = (1 − t ) P0 + tP 1
k =0 1
t ∈ [0,1]
Chapter 8曲线和曲面
40
p (t ) = ∑ Pk BEN k , 2 (t )
k =0
2
二次Bezier曲线
2 2
= (1 − t ) P0 + 2t (1 − t ) P + t P2 1 = ( P2 − 2 P + P0 )t 2 + 2( P − P0 )t + P0 1 1
H2(t)
0.4 0.6 0.8 1
t
H 2 ( t ) = t 3 − 2t 2 + t H3 (t ) = t − t
3 2
-0.2
H3(t)
图8-4 Hermite基函数
Chapter 8曲线和曲面
`
H 0 ( t ) = 2t 3 − 3t 2 + 1