第3讲 计算机图形学基础-图形变换
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
平移变换矩阵
式中tx、ty、tz 为平移分量
华中科技大学CAD中心
绕坐标轴的旋转变换:
华中科技大学CAD中心
3.2.2 三维图形组合变换
三维组合变换:与二维组合变换一样,通过对三维基本变换矩阵的组合,可以实现对三 维物体的复杂变换。设坐标P经过n次变换T1,T2,…,Tn到P*,则变换结果为: P * = P T1 T2 … Tn = P T 与二维相同,组合变换时,同样需要注意乘法的顺序。 绕任意轴旋转变换:它是组合变换,过程比较复杂。首先,对物体作平移和绕轴旋转变 换,使得所绕之轴与某一根标准坐标轴重合;然后,绕该标准坐标轴作所需角度的旋 转;最后,通过逆变换使所绕之轴恢复到原来位置。这个过程须由7个基本变换的级联 才能完成。
Q′ x
z
0 0 1 0 1 0 Τ1 = 0 0 1 − x1 − y1 − z1 0 0 0 1
y
变化矩阵为:
o z
x
步骤2: Rx(α),绕X轴旋转α 角,使得轴p1p2落入平面xoz内 y c u b x α a 变化矩阵为:
Τ2
o z
0 0 0 1 0 cos a sin a 0 = 0 − sin a cos a 0 0 0 1 0
华中科技大学CAD中心
二维齐次变换:
二维齐次变换矩阵为:
a 其中2×2阶矩阵 c 基本变换;
1×2阶矩阵
b 可以实现图形的比例、对称、错切、旋转等 d
[l
m] 可以实现图形的平移变换;
q
2×1阶矩阵 [p
]T 可以实现图形的透视变换,
而[s]可以实现图形的全比例变换。 二维点的齐次变换:
华中科技大学CAD中心
绕任意点旋转变换: 平面图形绕任意点C(x,y)旋转θ角需要通过组合变换实现,步骤如下: (1)将旋转中心平移到原点; (2)将图形绕坐标系原点旋转θ角; (3)将旋转中心平移回到原来位置。
组合变换矩阵的顺序 不能颠倒,顺序不 同,则变换的结果亦 不同,如右图:
华中科技大学CAD中心
y
z 1] T
平移
缩放、旋转、错切
整体缩放
透视变换
比例、对称变换矩阵
sx 0 Ts = 0 0
1 0 Tt = 0 t x
0 sy 0 0
0 1 0 ty
0 0 sz 0
0 0 1 tz
0 0 0 1
0 0 0 1
sx,sy,sz>0,沿坐标轴方向作放缩变换; 当sx=1,sy=sz=-1时,相对于x轴中心对称; 当sx=-1,sy=sz=1时,相对于yOz平面对称 当sx=sy=sz=-1时,相对于原点中心对称。
华中科技大学CAD中心
3.2.1 三维图形基本变换
三维几何变换是二维几何变换的扩展,用三维齐次变换矩阵(4×4矩阵)表示,可表示包括 平移变换、比例变换、错切变换、对称变换、绕坐标轴的旋转变换、绕空间任意轴的旋 转变换等。三维齐次变换矩阵如下:
[x '
三维齐次变换矩阵: T=
y ' z ' 1] = [x
0 − sin( −β ) 0 1 0 0 0 cos( −β ) 0 0 0 1
a
v
其中: v = a 2 + b 2 + c 2 = 1, cos β = u / v = u , sin β = a / v = a
cos θ − sin θ 0 0 sin θ cos θ 0 0 0 0 1 0 0 0 0 1
步骤4: Rz(θ),绕Z轴(即P1P2 轴)旋转θ角度 ;
Τ
4
=
步骤5: Ry(β),作步骤3的逆变换T3-1 ; 步骤6: Rx(-α),作步骤2的逆变换T2-1 ; 步骤7: T(x1, y1, z1) ,作步骤1的逆变换 T1-1 。
其组合变换矩阵为:
T = T1• T2• T3• T4• T3-1• T2-1• T1-1 华中科技大学CAD中心
旋转变换举例
对右图字母 T 绕坐标原点进行旋转变换 (旋转60°),则变换后的坐标为:
华中科技大学CAD中心
二维平移变换
a b T = 来实现, c d 但是,若实现平移变换,变换前后的坐标必须满足下面的关系: 上述四种变换都可以通过变换矩阵
x ' = y ' =
x + y +
∆ x ∆ y
式中△x,△y是平移量,应为常数,但是应用前述变换矩阵对点进行变 换,则有:
[x '
y '] = [x
a y] c
b = [ax + cy d
bx + dy ]
上式中的cy,bx均非常量,因此用原来的2×2矩阵无法实现平移变换。 解决方法:将变换矩阵增加一行一列,则可对点进行平移变换
=
x1 x 2 L x 8
y1 y2 L y8
z1 z2 L z8
1 1 L • T 1
式中:T为所要进行的图形变换矩阵
华中科技大学CAD中心
三维形体几何变换示例-2 如右图所示边长为5的立方体饶轴线 l 旋转(-90°),求 图形旋转变换后A、B、C、D点的坐标值。 分析:此例为饶任意轴旋转的简化实例,不需标准的7步 解题步骤: 步1):沿x轴平移图形使l轴与yoz平面重合 步2):饶x轴旋转(45°) 使l轴与y轴(或z轴)重合 步3):图形饶y轴(或z轴)旋转(-90°) 步4):作步2)的逆变换 步5):作步1)的逆变换 (注:仅需要5步,课后自己完成) y
cos θ Tr = − sin θ
由式 [x '
sin θ cos θ
y'] = [x
y ] Tr 可知:
x ' = Rcos (α + θ ) = Rcos αcos θ − Rsin αsin θ = xcos θ − ysin θ y' = Rsin (α + θ ) = Rsin αcos θ + Rcos αsin θ = ycos θ + xsin θ
bx + dy ]
[x '
y '] = [x
y]
a c
b = [ax + cy d
这里[x’,y’]为变换后点的坐标,[x,y]为变换前点的坐标,变换矩阵中a,b,c,d的不同 取值,可以实现各种不同变换,从而达到对图形进行变换的目的 。 二维图形的基本几何变换包括: 比例变换、对称变换、错切变换、旋转变换、平移变换等
华中科技大学CAD中心
本章目的
1.掌握CAD系统中图形变换的原理 2.了解CAD系统中图形的显示流程
华中科技大学CAD中心
3.1 二维图形变换
在工程绘图CAD系统中,二维图形变换是最常用的功能。 二维图形变换可通过矩阵运算来实现,令矩阵 : T = 称T为变换矩阵,有:
a b c d
其中:
u = c2 + b2 , cos α = c / u , sin α = b / u
华中科技大学CAD中心
步骤3: Ry(-β),绕Y轴旋转(-β)角,使p1p2与z轴重合;
y o β z x u
Τ3 变化矩阵为:
cos( − β ) 0 = sin( − β ) 0
l C B x
D A o z
华中科技大学CAD中心
3.2.3 三维图形投影变换
投影变换定义
将三维图形向二维平面上投影生成二维图形表示的过程称为投影变换。 根据视点的远近,投影分为平行投影和透视投影。当投影中心(观察点)与投影平面 之间的距离为无穷远时,为平行投影,否则为透视投影。
[ x′
y′ 1] =
[x
a b y 1 ] c d l m
p q s
华中科技大学CAD中心
3.1.3 二维图形变换汇总表
△
△
华中科技大学CAD中心
华中科技大学CAD中心
平移变换 实例:
二维组合变换:
前面介绍的几种变换可用统一的变换矩阵来实现,称之基本变换。但有些变换仅用一次基 本变换是不够的,必须由两次或多次基本变换组合才能实现。这种由多种基本变换组合而 成的变换称之为组合变换,相应的变换矩阵叫做组合变换矩阵。 设坐标P经过n次变换T1,T2,…,Tn到P*,则变换结果为: P* = PT1T2…Tn = PT 式中,T = T1T2…Tn 为总的变换矩阵,组合变换的目的是将一个变换序列表示为一个变 换矩阵。
齐次变换 几何意义
将Oxy坐标系增加一与x轴和y轴正交的w轴。 在 w = 1 的平面上有点 P1(x,y,1),则当w由0变化 到无穷时,齐次坐标 Pw(xw,yw,w) 将处在由OP1 定义的射线OQ上。二维坐标则是该射线在w=1 平面上的交点,则:
x=
xw y , y= w w w
二维齐次变换表示在 w = 1 平面上点的坐标变换,即 P1 到 P1* 的坐标变换。
华中科技大学CAD中心
y
如右图,设旋转任意轴为p1( x1,y1,z1 ), p2( x2,y2,z2 ) 两点定义的单位矢量(a,b,c),绕轴旋转角度为θ。 P1( x1, y1, z1 ) 可用7个步骤实现: 步骤 1:平移T(-x1,-y1,-z1)使p1点与原点重合
Q
θ o
P2 ( x2, y2, z2 )
1 0 0 [ x′ y′ 1] = [x y 1 ] 0 1 0 = [ x +l y + m 1 ] l m 1
华中科技大学CAD中心
3.1.2 二维图形齐次变换
齐次变换 定义
在平移变换中,将[x y]扩充为[x y 1] 实际上是由二维向量变为三维向量。 这种用三维向量表示二维向量的方法叫做齐次坐标法。进一步推广,用n+1 维向量表示n维向量的方法称之为齐次坐标法。 所谓齐次坐标就是用n+1维向量表示n维向量得到的坐标。对齐次坐标进行坐 标变换称为齐次变换,相应的变换矩阵称为齐次变换矩阵。 设三维空间点P的坐标为(x,y,z),它是唯一的。若用齐次坐标表示时,则为 ( hx, hy, hz, h ),且不唯一。
式中a,d分别为x,y方向上的比例因子
二维对称变换
1)对y轴对称:
- 1 0 Tmy = 0 1
1 T mx = 0 0 - 1
2)对X轴对称:
- 1 0 3)对坐标原点对称: Tmo = 0 - 1
华中科技大学CAD中心
二维旋转变换
在二维空间里,我们规定:图形的旋转是指 绕坐标系原点旋转θ角,且逆时针为正,顺 时针为负,变换矩阵为:
3.1.二维图形变换
3.1.1 二维图形基本变换 3.1.2 图形齐次变换 3.1.3 二维图形变换汇总
3.2.三维图形变换
3.2.1 三维图形基本变换 3.2.2 三维图形组合变换 3.2.3 三维投影变换
3.3.坐标变换及图形显示流程
3.3.1 图形坐标系统及坐标变换 3.3.2 图形观察变换(选学) 3.3.3 图形显示流程(选学)
计算机图形学及CAD技术
讲授: 王启富
华中科技大学CAD中心 办公地点:先进制造大楼西楼B620 联系电话:027-87541974 13307164177 Email:wangqf@hust.edu.cn wangqf@hustcad.com
华中科技大学CAD中心
第3讲 计算机图形学基础 —— 图形变换
y
y
y
y
y
y
(x',y')
(x',y') ty
o
x
o
x
o
x
θ (x,y) (x,y) x o tx
o
x
o
x
华中科技大学CAD中心
3.1.1 二维图形基本变换
二维比例变换
a b 在变换矩阵 T = 中,令 b = c = 0, c d a 0 则比例变换为: Ts = (a , d > 0 ) 0 d
三维形体几何变换示例-1 假定一六面体ABCDEFGH各点的坐标分别为(x 1, y 1, z 1) ,….., (x 8, y 8, z 8), 则经过图形变换后的坐标为:
′ x1 x′ ห้องสมุดไป่ตู้ L x′ 8
′ y1 ′ y2 L ′ y8
′ z1 ′ z2 L ′ z8
1 1 L 1
3.2 三维图形变换
三维几何形体可由一系列点集和这些点集之间的边连接关系来表达。
当一个形体在坐标系中平移、旋转时,只是通过三维图形变换改变点集的坐标位置, 而不改变各点边之间的任何连接关系。 (注:在CAD系统中,三维形体中的边的方程及面的方程都是由点集信息推导出来 的,不直接对边的方程和面的方程进行变换,而是由变换后的新点生成)