计算机图形学04自由曲线和曲面
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
插值
逼近
自由曲线曲面的发展过程
❖ 目标:美观,且物理性能最佳 ❖ 1963年,美国波音飞机公司,Ferguson双三次曲面
片 ❖ 1964~1967年,美国MIT,Coons双三次曲面片 ❖ 1971年,法国雷诺汽车公司,Bezier曲线曲面 ❖ 1974年,美国通用汽车公司,Cordon和
Riesenfeld, Forrest, B样条曲线曲面 ❖ 1975年,美国Syracuse大学,Versprille有理B样
概述
❖ 标量函数:平面曲线 y = f(x) 空间曲线 y = f(x) z = g(x)
❖ 矢量函数:平面曲线 P(t) = [x(t) y(t)]
空间曲线 P(t) = [x(t) y(t) z(t)]
插值、逼近和拟合
❖ 插值——严格通过已知型值点 ❖ 逼近——近似地地接近已知型值点 ❖ 拟合——以上两种方法统称
P(t) A0 A1t A2t 2
❖ 参数样条曲线术语
P(t) A0 A1t A2t 2 A3t 3
❖ 型值点和控制点
型值点或控制点的个数 = 曲线次数+1
❖ 切线、法线和曲率 切线是一阶导数,曲率是二阶导数
❖ 2. 切线、法线和曲率 ❖ 曲率公式
k lim d
MQ ds
1 参数样条曲线
第四章:自由曲线和曲面
❖ 参数样条曲线 ❖ Bezier曲线 ❖ B样条曲线 ❖ 自由曲面
概述
❖从计算机对形状处理的角度来看
❖ (1)唯一性 ❖ (2)几何不变性:
▪ 对在不同测量坐标系测得的同一组数据点进行 拟合,用同样的数学方法得到的拟合曲线形状 不变。
❖ (3)易于定界 ❖ (4)统一性:
▪ 统一的数学表示,便于建立统一的数据库
切矢量
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
ds dP(t) dt dt
1) 显式: y = f (x) 如 y = sin (x)
2) 隐式: f (x, y) = 0
x2/3 y2/3 R2/3
4x4 3x3 2y2 y x2 (a x) /(a x) 0
x R cos3
y
R
sin
3
参数坐标表达式
§1 参数样条曲线
❖ 极坐标表示
对于任一坐标曲线 (,) 坐标变换关系式:
❖ 定义
▪ 给定4个矢量 P0 , P1, R0, R1 ,称满足条件的三次多项
式曲线P(t)为Hermite曲线
P(0) P0, P(1) P1
P(0) R0, P(1) R1
R0
P0 R1
❖ 矩阵表示
▪ 条件
三次Hermite曲线
1
GH
•
MH
•T
|t 0
GH
•
M
H
•
0 0
P0
0
1
GH
•
M
α
Q
dα
ds α+dα
§1 参数样条曲线
x = x ( t ), y = y ( t ), t [ 0, 1 ] z = z ( t ), 矢量形式: P = P ( t ), t [ 0, 1 ]
P [x(t), y(t), z(t)]T
P ( t ) 的 k 阶导数
d
k P(t) dt k
d k x(t)
dt k
,
d
k y(t) dt k
,
d
k
z
(t
)
T
dt k
,
k
0,1,
§1 参数样条曲线
对 t = t0,若 P’(t0) = [ x’(t0), y’(t0),z’(t0)]T 0, 则称 P(t0)为正则点。 ❖ 正则点的几何意义是什么?
导数的意义是 P对t 的变化率, P’(t0) = 0 意味着 P 在t0处为水平线。
法矢量
法平面 N(s)
切平面
T(s) P(s)
B(s) T (s)为单位矢量 T (s)2 = 1
d[T (s)2 ] 0 T (s) dT (s) T (s) T '(s) 0
ds
ds
N (s) = T’(s) 所以 N (s) 与 T(s) 垂直
曲率
T(s)
T(s +s)
P(s+s)
条 ❖ 80年代,Piegl和Tiller, NURBS方法
参数表示的好处
❖有更大的自由度来控制曲线、曲面的形状
❖ 易于用矢量和矩阵表示几何分量,简化了计算 ❖设计或表示形状更直观,许多参数表示的基函数如
Bernstein基和B样条函数,有明显的几何意义
§1 参数样条曲线
❖ 曲线的三种坐标表示法 ❖ 直角坐标表示
G1
(t
)
H0 H1
(t) (t )
三次Hermite曲线
❖ 形状控制
▪ 改变端点位置矢量P0, P1 ▪ 调节切矢量 R0, R1 的方向 ▪ 调节切矢量 R0, R1 的长度
x cos( )
y
sin(
)
❖ 例:阿基米德螺线:
x cos( )
y
sin(
)
§1 参数样条曲线
❖ 参数坐标表示
x x(t) y y(t)
❖ 例:弹道曲线:
y
x
V0t cos V0t sin
gt
2
பைடு நூலகம்
/
2
§1 参数样条曲线
❖ 二次参数样条曲线或曲面 ❖ 三次参数样条曲线或曲面
MH
0 0
1 1
1 0
1 2
0 0
0 1
3 2
2 1
0 1 0 3
0 0 1
1
三次Hermite曲线
❖ 基矩阵与基函数(调和函数)
1 0 3 2 1 1 3t 2t3 G0 (t)
MH
•T
0 0
0
0 1 0
3 2 1
2
1
1
t
t 2
t 3
t
3t
2 2t3 2t 2 t3 t2 t3
MH
•T
|t1
GH
•
MH
•
1 1
P1
1
0
GH
•
MH
•T
|t0
GH
•
MH
•
1 0
R0
0
0
GH
•
MH
•T
|t1
GH
•
M
H
•
1 2
R1
3
三次Hermite曲线
▪ 合并
1 1 0 0
GH
•
M
H
•
0 0
1 1
1 0
1 2
P0
P1
R0
取为
R1 GH
0 1 0 3
▪解
1 1 0 01 1 0 3 2
P(s)
T(s) R
Q
T(s+s)
k(s) lim lim T dT | P"(s) |
s0 s s0 s
ds
参数连续性和几何连续性
❖ 0阶参数连续性 C 0连续性
▪ 如:折线
❖ 1阶参数连续性 C 1连续性
▪ 如:直线
❖ 2阶参数连续性 C 2连续性
▪ 如:圆、抛物线、双曲线
§3 三次Hermite曲线