计算机图形学ppt课件第八章自由曲线曲面
合集下载
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
其性质见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)处进 行线性插值的结果。
2、升阶后的新的特征多边形在老的特征多边形的凸 包内。
3、升阶后的新的特征多边形更逼近Bezier曲线。
C1连续(一阶参数连续)—两相邻曲线段的连接点处 有相同的一阶导数。
C2连续(二阶参数连续)—两相邻曲线段的连接点处 有相同的一阶导数和二阶导数。
§8.2 贝叶斯(Bezier)曲线
1、Bezier曲线定义 给定空间n+1个点P0,P1,……,Pn,称下列参数曲线为n 次的Bezier 曲线。
n
C(u) Pi Bi,n (u),0 u 1 i0
For(i=0;i<=n-k;i++) Q[i]=(1.0-u)*Q[i]+u*Q[i+1];
C=Q[0]; }
§8.2 贝叶斯(Bezier)曲线
Bezier曲线几何作图
利用De Casteljau算法可以计算参数u处的曲线点: 1、根据给定的参数u,在控制多边形的每条边上确定一分割点,
使分割后的线段之比为u:(1-u),得到分割点为
DeCasteljau(P,n,u,C) {/*Compute point on a Bezier curve using DeCasteljau algorithm*/ /*input:P,n,u*/ /*Output: C(a point)*/ For(i=0;i<=n;i++)
Q[i]=P[i]; For(k=1;k<=n;k++)
§8.1 曲线和曲面的表示
经过曲面上某点M(u,v)的切平面的法矢量为
i jk N Su (u, v) Sv (u, v) xu yu zu
xv yv zv
§8.1 曲线和曲面的表示
插值、逼近和拟合
型值点 指通过测量或计算得到的曲线或曲面上少量描述几何 形状的数据点。
控制点 指用来控制或调整曲线曲面形状的特殊点。
§8.2 贝叶斯(Bezier)曲线
P1
P11
P2
P01
P02
P03
P12
P21
P0
P3
图8.5 Bezier 曲线的几何作图法
§8.2 贝叶斯(Bezier)曲线
Bezier曲线分割 几何作图法中计算得到的同时也将原Bezier曲线分 为两个子曲线段。Bezier曲线分割是指给定两个参 数1]上值由0两点u1 C(uu21)、1 C,(u求2)所原界Be定zie的r曲那线段C子(u曲),u线属段于的[0, 控制顶点。
P1
P2
Q3
P3 Q0
P0
Q1
Q2
图8.7 Bezier曲线的拼接
§8.2 贝叶斯(Bezier)曲线
有理Bezier曲线
n
Bi,n (u)i Pi n
P(u)
i0 n
Ri,n (u)Pi
Bi,n (u)i i0
i0
与Bezier曲线相比,除了可以调节有理Bezier曲线的控制顶点外, 还可以调节其权因子的大小来改变曲线的形状,因此具有更强 的造型功能。
插值和逼近 插值设计方法要求建立的曲线曲面数学模型严格 通过已知的每一个型点。而逼近设计方法只是近似的接近已知 的型值点。
拟合 指在曲线曲面的设计过程中,用插值或逼近的方法使生 成的曲线曲面达到某些设计要求。
§8.1 曲线和曲面的表示
曲线段间的连续性定义
C0连续(0阶参数连续)—前一段曲线的终点与后一段 曲线的起点相同。
设垂直于T和N的单位矢量为B,称B为法线单位矢量或副法线单
位矢量
B(s) T(s) N(s)
由切线和主法线确定的平面称为密切平面,有主法线和副法线
组成的平面称为法平面,由切线和副法线构成的平面称为从 切面。
§8.1 曲线和曲面的表示
曲面的切矢和法矢
空间曲面采用双参数表示:
S S(u, v) [x(u, v), y(u, v), z(u, v)]
Pi1 (1 u)Pi uPi1, i 0,1,2,..., n 1
由此组成一个边数为(n-1)的新多边形。 2、用相同方法对该多边形再次分割,得到分割点Pi2,i 0,1,2,..., n 2
形成另一个新多边形。
3、到按所相求同的的点过即程为分所割求n-的1次u处后的,曲得线到点两。个顶点P0n、1 P1n,1 再分割得
Bezier曲面的微分
nm
n1 m
u
S (u, v)
u
i0
Pi, j Bi,n (u)Bj,m (v)
性质
1、端点
P0,0 S(0,0), P0,m S(0,1)
2、边界曲线 Pn,0 S(1,0), Pn,m S(1,1)
S(0,v), S(u,0), S(1,v), S(u,1)为四条Bezier曲线
3、端点的切平面
4、端点的法线方向
5、凸包性
6、几何不变性
7、变差递减性
§8.3 贝叶斯(Bezier)曲面
§8.1 曲线和曲面的表示
位置矢量
空间一点A,从原点O到A的连线OA表示的矢量。
曲线的表示形式
空间一点的位置矢量有3个坐标分量,而空间曲线则是 空间动点运动的轨迹,即空间矢量端点运动形成的矢量曲 线,矢量方程为
参数方程为
c c(u) [x(u), y(u), z(u)]
x x(u)
y
y(u)
c c(s) [x(s), y(s), z(s)]
§8.1 曲线和曲面的表示
曲线的法矢量
设曲线自然参数方程为c=c(s),曲线的切矢为单位矢量,记
为
•
T (s) c(s)
因为(T(s))2=1,对左式求导,得到
•
2T (s) •T (s) 0
说明T(s)与
.
T
(s)垂直,由于
.
T
(s)
不是单位矢量,可以认为
•
T(s) k(s) • N(s)
其中单位矢量N(s)为主法线单位矢量,简称为主法矢,N(s)总
是指向曲线凹入的方向。K(s)为一标量系数,称为曲线的曲
率,而
••
C
(s)
•
T
(s)
称为曲率矢量,其模就是曲线曲率
••
| C(s) | k(s)
§8.1 曲线和曲面的表示
记 (s) 1/ k(s), (s) 称为曲率半径。
Bezier曲线的De Casteliau算法
给定三维空间点P0、P1……Pn以及一维标量参数u,假定:
Pir (u) (1 u)Pir1(u) uPir11(u) 并且 Pi0 (u) Pi 那么 P0n (u)即为Bezier曲线上参数u处的点:
§8.2 贝叶斯(Bezier)曲线
Bezier曲线的De Casteliau算法
z z(u)
§8.1 曲线和曲面的表示
曲线的参数表示优点
有更大的自由度来控制曲线或曲面形状 可对参数曲线曲面方程直接进行几何变换,而不需要
对曲线曲面每个数据点进行几何变换 可处理斜率无穷大的情况 对变量个数不限,便于将低维空间中的曲线曲面扩展
到高维空间 便于采用规格化的参数变量 t [0,1] 易于用矢量和矩阵表示几何分量,简化计算
P2
C(u) (1 u)3 p0 3u(1 u)2 p1 3u2 (1 u) p2 u3 p3
1 3 3 1P0
C(u)
[u3,u2 ,u,1]
3
6
3
0
P1
P(u)
3 3
1
0
0 0
0 0
P2 P3
P0
P3
图8.3 三次Bezier曲线
§8.2 贝叶斯(Bezier)曲线
§8.2 贝叶斯(Bezier)曲线
Bezier曲线的拼接
m
P(u) Pi Bi,m (u), u [0,1] i0 n
Q(w) Pj Bj,n (w), w [0,1] j0
P' (1) m(Pm Pm1) Q' (0) n(Q1 Q0 )
P' (1) Q' (0)
m
Q1 Q0 n (Pm Pm1)
C(u) (1 u)2 p0 2u(1 u) p1 u2 p2 Q1
1 2 1P0
P(u)
C(u) [u2,u,1] 2
2
0
P1
1 0 0P2 P0
Q2 P2
图8.3 二次Bezier曲线
§8.2 贝叶斯(Bezier)曲线
Bezier曲线矩阵表示
➢ 三次Bezier曲线源自P1当u为常数时,上式变成单参数v的矢函数,它是曲面上的空间 曲线,称它为v线,同理v为常数时,则称为u线。
将矢函数S(u,v)对u求导,得切矢量
S u
lim
u 0
S (u
u) S(u) u
[xu (u, v),
yu (u, v), zu (u, v)]
切矢的方向指向参数u增长的方向,同理可求对v的切矢量。
§8.2 贝叶斯(Bezier)曲线
Bezier曲线矩阵表示
➢ 一次Bezier曲线
C(u) (1 u) p0 up1
P0
C(u)
1
[u,1]
1
1P0
0
P1
P1
u
图8.2 一次Bezier曲线
§8.2 贝叶斯(Bezier)曲线
Bezier曲线矩阵表示
P1
➢ 二次Bezier曲线
§8.2 贝叶斯(Bezier)曲线
求Bezier曲线的控制顶点
已知Bezier曲线上给定参数处的位置矢量和参数阶次,利用 Bezier曲线定义和端点特性,可列出一组方程,求解方程组, 可得到相应的控制顶点。 例:已知三次Bezier曲线四个点为Q0(120,0), Q1(45,0), Q2(0,45), Q0(0,120)对应参数u分别为0,1/3,2/3,1 解:三次Bezier曲线展开
§8.1 曲线和曲面的表示
曲线的矢函数求导
c(u) c(u u) c(u)
c(u) c(u u) c(u)
u
u
c(u) dc(u)
c'(u) lim
u0 u
du
又设r(u)=[x(u),y(u),z(u)],因为
c(u u) c(u) [ x(u u) x(u) , y(u u) y(u) , z(u u) z(u)]
P1
P2
P0
P3
图8.1 Bezier曲线
§8.2 贝叶斯(Bezier)曲线
Bernstein基函数性质
➢ 非负性 ➢ 规范性 ➢ 对称性 ➢ 递推性 ➢ 端点性 ➢ 最大性 ➢ 可导性 ➢ 升阶公式 ➢ 分割性 ➢ 积分性
§8.2 贝叶斯(Bezier)曲线
Bezier曲线性质
➢ 端点性 ➢ 端点切矢量 ➢ 端点曲率 ➢ 对称性 ➢ 几何不变性 ➢ 凸包性 ➢ 变差缩减性
§8.2 贝叶斯(Bezier)曲线
Bezier曲线的升阶
有时为了便于Bezier曲线修改,需要增加控制顶点 提高灵活性,而不改变原曲线形状,即将n次的 Bezier曲线升级为n+1次的Bezier曲线,即
n
n 1
P(u) Pi Bi,n (u) Pi'Bi,n1(u)
i0
i0
将左边乘[u+(1-u)],然后比较 ui (1 u)n1i 的系
c(u) (1 u)3 P0 3u(1 u)2 P1 3u2 (1 u)P2 u3P3
Q0 P0 Q1 (8 / 27)P0 (4 / 9)P1 (2 / 9)P2 (1/ 27)P3 Q2 (1/ 27)P0 (2 / 9)P1 (4 / 9)P2 (8 / 27)P3 Q3 P3