计算机图形学--第八讲 图形的三维几何变换
计算机形学几何变换基础知识全面解析

计算机形学几何变换基础知识全面解析计算机形学几何变换是计算机图形学中一项非常重要的技术,它可以对图像进行平移、旋转、缩放等变换操作,从而实现图像的变形和动画效果。
本文将全面解析计算机形学几何变换的基础知识,包括变换的概念、常见的变换操作及其数学原理等内容。
一、概念介绍计算机形学几何变换是指通过一定的数学变换方法,改变图像或对象的形状、大小和位置。
常用的几何变换包括平移、旋转、缩放和错切等。
以下将逐个介绍这些变换操作的原理及应用。
二、平移变换平移变换是指将一个对象沿着指定方向平行移动一定的距离。
平移变换可以通过对对象中的每个顶点坐标进行相同平移量的加减操作来实现。
设对象的原始坐标为(x,y),平移量为(tx,ty),则平移变换后的新坐标为(x+tx,y+ty)。
三、旋转变换旋转变换是指将一个对象绕着指定的旋转中心点按照一定角度进行旋转。
旋转变换可以通过将对象中的每个顶点坐标绕旋转中心点进行相应角度的旋转来实现。
设对象的原始坐标为(x,y),旋转角度为θ,旋转中心点为(cx,cy),则旋转变换后的新坐标为:x' = (x-cx)*cosθ - (y-cy)*sinθ + cxy' = (x-cx)*sinθ + (y-cy)*cosθ + cy四、缩放变换缩放变换是指将一个对象的大小按照一定比例进行缩放。
缩放变换可以通过将对象中的每个顶点坐标按照指定比例进行缩放来实现。
设对象的原始坐标为(x,y),缩放比例为(sx,sy),缩放中心点为(cx,cy),则缩放变换后的新坐标为:x' = (x-cx)*sx + cxy' = (y-cy)*sy + cy五、错切变换错切变换是指将一个对象的各个顶点坐标按照一定的错切因子进行变换。
错切变换可以分为水平错切和垂直错切两种形式。
水平错切变换可以通过将对象中的每个顶点的y坐标按照指定的错切因子进行变换来实现;垂直错切变换则是将对象中的每个顶点的x坐标按照指定的错切因子进行变换。
三维图形变换

三维图形变换是在二维方法基础上增加了对z坐标的考虑得到的。
与二维变换类似,引入齐次坐标表示,即:三维空间中某点的变换可以表示成点的齐次坐标与四阶的三维变换矩阵相乘。
一、平移变换二.比例变换例如:对长方体进行比例变换,三、旋转变换跟二维的相同四、对称变换有关于坐标平面、坐标轴的对称变换(1)关于坐标平面的对称绕哪个面变换,那个面不变变换矩阵为:其它均类似(2)关于坐标轴变换6.2 投影变换投影变换就是把三维物体投射到投影面上得到二维平面图形两种投影法的本质区别在于:透视投影的投影中心到投影面之间的距离是有限的;而另一个的距离是无限的。
一、中心(透视)投影特点:投影线均通过投影中心,物体的投影视图由计算投影线与观察平面交点而得在投影中心相对投影面确定的情况下,空间的一个点在投影面上只存在唯一一个投影。
透视投影生成真实感视图,但不保证相关比例。
二、平行投影1、把透视投影的中心移至无穷远处,则各投影线称为相互平行的直线,这种投影2、分为正投影和斜投影3、特点:保持物体的有关比例不变三、平面集合投影的分类6.3 三视图一、1、根据投影面与坐标轴的夹角可分为两类:三视图和正轴侧图。
当投影面与某一坐标轴垂直时,得到的投影为三视图,这是投影方向与这个坐标轴的方向一致;否则,得到的投影为正轴侧图2、三视图包括主、侧、俯视图三种,投影面分别于x/y/z轴垂直3、优点:反映形体的实际尺寸,工程制图中常用三视图来测量形体间的距离、角度以及相互位置关系。
4、缺点:三视图上只有物体一个面的投影,只有将三个图放在一起,才能综合物体的空间形状二、三视图的计算1>确定三维物体上个点的位置坐标2>引入齐次坐标,求出所做变换相应的变换矩阵3>将所做变换用矩阵表示,通过运算求得三维物体上各点经变换后的点坐标值4>由变换后得到的二维点绘出三维物体投影后的三视图三、1>主视图:将三维物体xoz面(又称v面)做垂直投影,得到主视图2>俯视图:将三维物体xoy面(又称h面)做垂直投影,得到俯视图为了让其与主视图在一个平面内,让俯视图绕x轴旋转90°。
三维变换

投影线
投影面
A A'
投影中心
B'
B
A'
投影中心在
无穷远处
B'
A B
平行投影
•正投影与斜投影
6.3.2 正投影——三视图的形成
• 将三个投影面画在一个平面上:
(1)V面投影图保持不变(称正投影面,主视图); (2)H面绕OX轴向下翻转90度(称水平投影面,俯视图); (3)W面绕OZ轴向后翻转90度(称侧投影面,左视图); (4)省去投影面的边框和投影轴。见下页。
(x’, y’, z’)
(x’’, y’’, z’’)
1 2
(x, y, z)
x
z
6.2.2 三维几何变换
• 旋转变换
– 绕y轴
y
cos 0 sin 0
Ry
(
)
0
sin
1
0
cos
0 0
0 0 0 1
(x’, y’,
z’)
(x, y, z)
x
z
6.2.2 三维几何变换
• 旋转变换
– 绕z轴
cos
A B
D
x
C
图1
P(2,-2,0)
Y
C(0,2,0)
y
A(2,0,0)
B(2,2,0)
X
图2
随堂练习
4. 假定空间直线AB两端点坐标为A(0,0,0)B(2,2,2),
试写出绕AB轴旋转30度的三维复合变换矩阵。(问:
方向数为??)
Y
1) (毋需)
2)AB绕X轴旋转α角,使之落到ZX平面上;
3)将AB绕Y轴旋转β角,使之与Z轴重合;
数学8三维变换与投影

uz ' u (uz1',uz2 ',uz3')
uy
'
|
u u
ux ux
|
(uy1', uy2
',uy3')
ux ' uy 'uz ' (ux1',ux2 ',ux3')
则所需复合矩阵为
u x1 ' R uy1'
u0z1 '
ux2 ' ux3' 0 uy2 ' uy3 ' 0
uz2 ' 0
x' cos 0 sin 0 x
y'
0
1
0
0
y
z' sin 0 cos 0 z
1
0
0
0
1
1
沿 y 轴 Ry ( )
x' 1 0
0
y'
0
cos
sin
z' 0 sin cos
1
0
0
0
沿 x 轴 Rx ( )
0 x0y0 z11
x' cos sin 0 0 x
b/d c/d
0 0
0 0
0 1
R Ry ( ) Rx ()
d 0 a 0
Ry
(
)
0 a
1 0
0 d
0 0
0 0 0 1
M T 1 Rx ()1 Ry ( )1 Rz ( ) Ry ( ) Rx () T
2020/5/10
12
旋转(二)
得到复合矩阵 R Ry ( ) Rx () 的更快的方法是利用正交矩阵的乘积仍然是正交
计算机图形学--第八讲 图形的三维几何变换

3
变换通式
空间点[x y z] 的四维齐次坐标 [X Y Z H]表示
三维空间点的变换为 [x y z 1] T = [x’ y’ z’ 1]
变换前点的坐标 三维图形的变换矩阵
变换后点的坐标
三维图形变换矩阵通式为4 x 4 方阵
a b c p
T = d
e
5.关于Y轴对称
特点: y 值不变,zx坐标符号改变
[x y z 1] T = [-x y -z 1]
6.关于Z轴对称
特点: z值不变,xy坐标符号改变
[x y z 1] T = [-x -y z 1]
5.3 图形的三维几何变换—三维基本变换(13)
对称变换示意图
17
5.3 图形的三维几何变换—三维基本变换(14)
(x’, y’, z’)
x = xcos −ysin
y = xsin +ycos
z = z
矩阵运算的表达式为
z
cos sin 0 0
x
y
z 1 = x
y
z
1
−
sin
0
cos
0
0
0
1 0
0
0 0 1
y
(x, y, z)
x
10
5.4 图形的三维几何变换-三维基本变换(7)
绕X轴旋转
与二维图形的组合变换一样, 三维立体图形也可通过 三维基本变换矩阵, 按一定顺序依次相乘而得到一个 组合矩阵(称级联), 完成组合变换。
三维组合平移、组合旋转和组合比例变换与二维组合 平移、组合旋转和组合比例变换具有类似的规律。
19
5.3 图形的三维几何变换—三维复合变换(2)
计算机形学三维几何变换

计算机形学三维几何变换计算机形学是计算机科学中的一个重要分支,主要研究计算机图形学中的各类图形的数学描述方法和计算机图形学技术的应用。
其中,三维几何变换是计算机形学中的一项重要内容。
本文将介绍三维几何变换的概念、常见的三维几何变换操作以及其在计算机图形学中的应用。
一、概述三维几何变换是指对三维空间中的图形进行平移、旋转、缩放等操作,从而改变图形的位置和形状的过程。
三维几何变换是计算机图形学中非常常用的操作,可以实现物体的移动、旋转、缩放等效果。
二、三维几何变换的操作1. 平移(Translation)平移是指将图形沿指定的轴方向移动一定距离。
平移操作可以简单地理解为将图形的每一个顶点坐标向指定方向移动相同距离。
平移操作的数学表达式为:\[T(x,y,z) = (x + dx, y + dy, z + dz)\]其中,(x,y,z)表示原始顶点坐标,(dx,dy,dz)表示沿(x,y,z)轴平移的距离。
2. 旋转(Rotation)旋转是指将图形绕指定轴进行旋转。
旋转操作可以用欧拉角、四元数、矩阵等多种方式进行计算。
旋转操作的数学表达式为:\[R(x,y,z) = M(x,y,z)\]其中,(x,y,z)表示旋转前的坐标,M表示旋转变换矩阵。
旋转变换矩阵的计算方式有很多,最常见的是使用旋转角度和旋转轴来计算旋转矩阵。
3. 缩放(Scaling)缩放是指将图形沿各个轴向相应的方向按比例进行扩大或缩小。
缩放操作可以用不同的比例因子对每个顶点坐标进行缩放计算。
缩放操作的数学表达式为:\[S(x,y,z) = (sx, sy, sz)(x,y,z)\]其中,(x,y,z)表示原始顶点坐标,(sx,sy,sz)表示在x轴、y轴和z轴方向的缩放比例。
4. 其他变换操作除了平移、旋转和缩放之外,三维几何变换还可以包括倾斜、翻转、剪切等其他操作。
这些操作都是通过对图形的顶点坐标进行适当的数学计算而实现。
三、三维几何变换的应用三维几何变换在计算机图形学中有广泛的应用。
三维几何变换

三维几何变换利用3×3矩阵,可以实现部分三维变换,如绕X轴、Y轴、Z 轴旋转的变换矩阵为Tx=[1 0 0 ][0 cosθ sinθ][0 -sinθ cosθ]Ty=[cosθ 0 -sinθ][ 0 1 0 ][sinθ 0 cosθ]Tx=[cosθ sinθ 0 ][-sinθ cosθ 0][ 0 0 1]但是,利用齐次坐标变换更方便。
三维空间点[X Y Z]用四维齐次坐标表示为[X Y Z]或[X’Y’ Z’ H],因此三维空间点的变换可写为[X Y Z H]T=[X’ Y’ Z’H]=[X’/H Y’/H Z’/H1]=[X’ Y’ Z’ 1]式中T为变换矩阵,与二维变换矩阵对应,三维变换矩阵为4×4方阵,即T=[a b c|p][d e f|q][h i j|r][-------|-][l m n|s]=[3×3|3×1][----|----][1×3|1×1]此方阵也可以分为4个部分,由二维变换可知,其中3×3矩阵起比例变换,映射变换,错切变换和旋转变换的作用,1×3矩阵起平移变换的作用,3×1矩阵起透视变换的作用,而1×2矩阵起比例变换的作用,下面通过具体图例说明各部分算子的作用,也就是基本三维几何变换。
1、三维比例变换在3×3矩阵中,主对角线上算子a、e、j控制比例变换,令其他算子为零,则三维点[X Y Z]的比例变换写为[X Y Z 1]·S=[X Y Z 1][[a 0 0 0][0 e 0 0][0 0 j 0][0 0 0 1]]=[aX eY jZ 1]=[X* Y* Z* 1]由上式可知,a、e、j分别控制X、Y、Z的比例变换,若令a=e=j=1,则算子S可使整个图形按同一比例放大或缩小。
[X Y Z 1][[1 0 0 0][0 1 0 0][0 0 1 0][0 0 0 1]]=[X Y Z S]=[X/S Y/S Z/S 1]=[X* Y* Z* 1]上式中,若S>1,则整个图形缩小;若S<1,则整个图形放大。
计算机形学中的几何变换与投影算法基础

计算机形学中的几何变换与投影算法基础在计算机图形学中,几何变换与投影算法是实现三维对象表示、变换和可视化的基础。
通过对三维空间中的对象进行变换和投影,可以将其呈现在二维平面上,从而实现更直观的可视化效果。
本文将介绍计算机形学中的几何变换和投影算法的基本概念和应用。
一、几何变换几何变换是指通过对三维对象进行平移、旋转、缩放等操作,改变其在空间中的位置和形状。
在计算机图形学中,常用的几何变换包括平移、旋转、缩放和剪切。
1. 平移平移是指将对象沿着指定方向移动一定的距离。
在计算机图形学中,平移变换可以通过将对象的每个顶点坐标增加一个平移向量来实现。
平移变换公式如下:[x'] = [1 0 0 tx] [x][y'] [0 1 0 ty] [y][z'] [0 0 1 tz] [z][1 ] [0 0 0 1] [1]其中,(tx, ty, tz)表示平移向量。
通过对对象的每个顶点应用上述变换矩阵,可以实现平移效果。
2. 旋转旋转是指将对象绕指定轴进行旋转。
在计算机图形学中,常用的旋转有绕X轴、Y轴和Z轴旋转。
旋转变换可以通过将对象的每个顶点坐标乘以一个旋转矩阵来实现。
旋转变换矩阵的形式如下:[x'] = [1 0 0 0] [x][y'] [0 cosθ -sinθ 0] [y][z'] [0 sinθ cosθ 0] [z][1 ] [0 0 0 1] [1]其中,θ表示旋转角度。
通过对对象的每个顶点应用上述变换矩阵,可以实现旋转效果。
3. 缩放缩放是指改变对象的尺寸大小。
在计算机图形学中,缩放变换可以通过将对象的每个顶点坐标乘以一个缩放因子来实现。
缩放因子分别作用于X、Y和Z轴的坐标,从而改变对象在各个轴上的尺寸。
缩放变换公式如下:[x'] = [sx 0 0 0] [x][y'] [0 sy 0 0] [y][z'] [0 0 sz 0] [z][1 ] [0 0 0 1] [1]其中,(sx, sy, sz)表示缩放因子。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
23
5.4 图形的三维几何变换—复合变换()
在ZOX 平面上绕Y轴旋转使l与Z轴重合 d n12 n22 n32 1
cos v v
d
sin
n1 d
n1
v
n
R
y
n
v
24
5.4 图形的三维几何变换—复合变换()
Step2:绕Z轴旋转
cos
sin 0 0
Rz
(
)
sin
0
cos
0
同样,我们用齐次坐标来表示三维几何变换矩阵
3
变换通式
空间点[x y z] 的四维齐次坐标 [X Y Z H]表示
三维空间点的变换为 [x y z 1] T = [x’ y’ z’ 1]
变换前点的坐标 三维图形的变换矩阵
变换后点的坐标
三维图形变换矩阵通式为4 x 4 方阵
a b c p
T d
e
f
0 0 1 0 0 0 0 1
5.3 图形的三维几何变换—三维基本变换(12)
反射(对称)变换:关于平面对称
4.关于X轴对称
特点:x 值不变,yz坐标符号改变
[x y z 1] T = [x -y -z 1]
5.关于Y轴对称
特点: y 值不变,zx坐标符号改变
[x y z 1] T = [-x y -z 1]
28
感谢各位同学观看!
29
三维组合平移、组合旋转和组合比例变换与二维组合 平移、组合旋转和组合比例变换具有类似的规律。
19
5.3 图形的三维几何变换—三维复合变换(2)
(1)以P为参考点的比例变换
20
5.3 图形的三维几何变换—三维复合变换(4)
(2)关于任意轴线的三维旋转
直线的单位方向向量n: n n1 n2 n3 n n12 n22 n32 1
将下图的空间四面体连续进行如下变换。写出复合变换矩阵,变 换后图形各点的规范化齐次坐标。 (1)关于点P整体放大2倍 (2)关于Y轴进行对称变换
27
第八讲 作业(2)
2.给定空间任一点P(x,y,z)及任一平面Q: ax+by+cz+d=0,求P对Q的对称点P* (x*,y*,z*)的变换
矩阵。
y y’ y
[x y z 1] T = [x+Tx y+Ty z+Tz 1]
z’ z
z
x x’ x
5
5.3 图形的三维几何变换—三维基本变换(2)
例:一单位立方体,现将它沿x方向移动3单位,y方向移动2单 位,z方向移动3.5单位。
1 0 0 0 T 0 1 0 0
0 0 1 0 3 2 3.5 1
[x y z 1] T = [x y z s]=[x/s y/s z/s 1]
② 轴向比例变换
a 0 0 0
y
T 0 e 0 0
0 0 j 0
0 0 0 1
x
z
[x y z 1] T = [ax ey jz 1]=[x’ y’ z’ 1]
若a=e=j,,则图形三方向的缩放比例相同 若aej,,则图形将产生类似变形
绕任意轴旋转
图 绕任意轴P1P2旋转的前4个步骤
5.3 图形的三维几何变换—三维基本变换(11)
反射(对称)变换:关于平面对称
1 0 0 0
1.对OXY平面的反射
特点:x y 值不变,z坐标符号改变
T 0 1 0 0 0 0 1 0
[x y z 1] T = [x y -z 1]
0 0 0 1
z = zcos xsin
矩阵运算的表达式为
z
cos 0 sin 0
x
y z 1 x
y
z
1
0
sin
1 0
0
cos
0 0
0
0
0 1
y
(x, y, z)
x
12
5.3 图形的三维几何变换—三维基本变换(9)
绕三维坐标轴的旋转变换 绕Y轴旋转90°。
13
5.4 图形的三维几何变换--三维基本变换(10)
5.3 图形的三维几何变换—三维基本变换(4)
绕三维坐标轴的旋转变换
绕Z轴的二维旋转很容易推广到三维:
x' xcos ysin y' xsin y cos
z' z
cos sin 0 0
T sin cos 0 0 0 0 1 0
0
0 0 1
即绕Z轴旋转 角
Z坐标不变 X、Y坐标发生变化
2.对YOZ平面的反射
特点:z y 值不变,x坐标符号改变
[x y z 1] T = [-x y z 1]
1 0 0 0
T
0
1 0 0
0 0 1 0
0
0 0 1
3.对XOZ平面的反射
特点:x z值不变,y坐标符号改变
[x y z 1] T = [x -y z 1]
1 0 0 0 T 0 1 0 0
x = xcos ysin
y = xsin +ycos
z = z
矩阵运算的表达式为
z
cos sin 0 0
x
y
z
1 x
y
z
1
sin
cos
0
0
0
0 1 0
0
0
0 1
y
(x, y, z)
x
10
5.4 图形的三维几何变换-三维基本变换(7)
绕X轴旋转
x = x
y = ycos zsin z = ysin +zcos
基本思想:因任意轴不是坐标轴,应设法旋转该轴,使之与 某一坐标轴重合,然后进行旋转变换,最后按逆过程,恢复 该轴的原始位置。
21
5.3 图形的三维几何变换—三维复合变换(5)
(2)关于任意轴线的三维旋转 Step1:作变换让l与z轴重合。
(1a) 平移,使l 过原点(平移) (1b)绕x轴旋转使l位于 ZOX 平面(绕x轴旋转) (1c)绕y轴旋转使得l 与Z轴重合 (绕y轴旋转)
任课教师: 李陶深教授 tshli@
1
1 变换的数学基础 2 计算机图形处理的过程 3 图形的二维几何变换 4 图形的三维几何变换 5 形体的投影变换
2
5.3 图形的三维几何变换—复合二维变换(10)
三维几何变换可由二维几何变换扩展而来,包括: ►三维平移 ►三维旋转 ►三维比例缩放等
x' x dy gz,d, g 0关于x轴方向有错切
y'
y
bx
hz,b,
h
0关于y轴方向有错切
z'
z cx
f y,c,
f
0关于z轴方向有错切
18
5.3 图形的三维几何变换—三维复合变换(1)
与二维图形的组合变换一样, 三维立体图形也可通过 三维基本变换矩阵, 按一定顺序依次相乘而得到一个 组合矩阵(称级联), 完成组合变换。
y
(x, y, z)
(x’, y’, z’)Leabharlann x矩阵运算的表达式为
z
1 0 0 0
x y z 1 x y z 1 0 cos sin 0
0 sin cos 0
0
0
0 1
11
5.4 图形的三维几何变换-三维基本变换(8)
绕Y轴旋转
(x’, y’, z’)
x = zsin +xcos
y = y
q
h i j r
l
m
n
s
a b c 3x3
d
e
f
h i j
[l m n] 1 x 3
[p q r]T
[s]1x1
比例、反射、旋转、错切
平移 投影变换 总体比例变换
5.3 图形的三维几何变换—三维基本变换(1)
平移变换:
指空间的立体从一个位置移动到另一位置时,其形 状、大小都不发生变换的变换。
6
5.3 图形的三维几何变换—三维基本变换(3)
相对于原点的缩放变换
变换矩阵主对角线上 的元素a、e、j、s的作用是
1 T 0
0 1
0 0
0 0
是图形产生比例变换。
0 0 1 0
① 全比例变换
0
0
0
s
0<S<1,为图形整体放大
S>1,为图形整体缩小 S<0,为对称变换+比例变换 S=1,为恒等变换
0 1
0
0
0
0 0 1
25
5.4 图形的三维几何变换—复合变换()
Step3:旋转轴复位回 原来位置
v 0 n1 0
Ry
(
)
0
n01
1 0 0
0 v 0
0 0 1
1
0
Rx
(
)
0
0
0 n3
v n2
v 0
0 n2
v n3
v 0
0 0
0 1
26
第八讲的作业(1)
1. 已知三角形ABC的各个顶点坐标分别为A(1,2), B(5,2), C(3,5),相 对于直线y-x-1=0作对称变换,请写出变换的步骤和每一步的变换 矩阵。
绕另外两个坐标轴旋转变换公式可由上式坐标参数x,y, z循环替换而得到,即 x y z x
Y
Z
X
X Z
Y X
Z Y
5.3 图形的三维几何变换—三维基本变换(5)
绕三维坐标轴的旋转变换
绕坐标轴的逆时针旋转为正旋转。
9
5.4 图形的三维几何变换-三维基本变换(6)