第四章_图形变换的矩阵方法(已排).
复杂图形变换步骤及方法解析
复杂图形变换步骤及方法解析结合缩放矩阵和其他矩阵实现更复杂的图形变换是计算机图形学中的一项重要技术。
这种技术通常涉及多个变换矩阵的级联(即矩阵乘法),以同时实现缩放、旋转、平移等多种变换效果。
以下是如何结合缩放矩阵和其他矩阵实现更复杂图形变换的步骤和方法:一、理解基本变换矩阵首先,需要理解并掌握基本的变换矩阵,包括缩放矩阵、旋转矩阵和平移矩阵。
●●[cosθsinθ0−sinθcosθ0 001]●二、确定变换顺序由于矩阵乘法不满足交换律,因此变换的顺序很重要。
通常的变换顺序是先缩放、再旋转、最后平移,但这并不是绝对的,具体取决于所需的变换效果。
三、构建组合变换矩阵将缩放矩阵、旋转矩阵和平移矩阵按照确定的顺序相乘,得到组合变换矩阵。
这个矩阵将同时包含缩放、旋转和平移三种变换的效果。
四、应用组合变换矩阵将组合变换矩阵与表示图形顶点的齐次坐标相乘,得到变换后的新坐标。
这一步骤通常是在图形渲染管线的顶点着色器阶段完成的。
五、示例假设有一个二维图形,需要将其先缩放2倍(在x和y方向上),然后绕原点旋转45度,最后沿x轴平移10个单位。
可以按照以下步骤构建组合变换矩阵并应用它:1.S=[200 020 001]2.3.T=[1010 010 001]4.M=T∙R∙S5.应用组合变换矩阵:将M与图形的顶点坐标相乘,得到变换后的新坐标。
六、注意事项●变换顺序对结果有影响,应根据实际需求确定。
●在进行组合变换时,应确保变换矩阵的维度匹配。
●在实际应用中,可能还需要考虑图形的中心点或特定点作为变换的基准点,这时可能需要先对图形进行平移以将基准点移动到原点,再进行缩放和旋转,最后平移回原位置。
计算机图形学第4章图形变换
反射变换
总结词
反射变换是将图形关于某一平面进行镜像反射的变换。
详细描述
反射变换可以通过指定一个法向量和反射平面来实现。法向量垂直于反射平面,指向反射方向。在二 维空间中,反射变换可以将图形关于x轴或y轴进行镜像反射;在三维空间中,反射变换可以将图形关 于某一平面进行镜像反射。
03
复合图形变换
组合变换
01
02
03
04
组合变换是指将多个基本图形 变换组合在一起,形成一个复
杂的变换过程。
组合变换可以通过将多个变换 矩阵相乘来实现,最终得到一
个复合变换矩阵。
组合变换可以应用于各种图形 变换场景,如旋转、缩放、平
移、倾斜等。
组合变换需要注意变换的顺序 和矩阵的乘法顺序,不同的顺 序可能导致不同的变换结果。
矩阵变换
矩阵变换是指通过矩阵运算对图形进 行变换的方法。
常见的矩阵变换包括平移矩阵、旋转 矩阵、缩放矩阵和倾斜矩阵等。
矩阵变换可以通过将变换矩阵与图形 顶点坐标相乘来实现,得到变换后的 新坐标。
矩阵变换具有数学表达式的简洁性和 可操作性,是计算机图形学中常用的 图形变换方法之一。
仿射变换
仿射变换是指保持图形中点与 点之间的线性关系不变的变换。
05
应用实例
游戏中的图形变换
角色动画
通过图形变换技术,游戏中的角 色可以完成各种复杂的动作,如
跑、跳、攻击等。
场景变换
游戏中的场景可以通过图形变换 技术实现动态的缩放、旋转和平 移,为玩家提供更加丰富的视觉
体验。
特效制作
图形变换技术还可以用于制作游 戏中的特效,如爆炸、火焰、水
流等,提升游戏的视觉效果。
THANKS
计算机图形学 第4章 图形变换
=
s x1 s x 2 0 0
0 s y1 s y 2 0
0 0 1
(3) 复合旋转。
cos 1 sin 1 0 cos 2 sin 2 Tr Tr1 ·r 2 sin 1 cos 1 0 sin 2 cos 2 T 0 0 1 0 0 cos(1 2 ) sin(1 2 ) 0 sin(1 2 ) cos(1 2 ) 0 0 0 1
4.对称变换 设图形上的点P(x, y)在x轴和y轴方向分别作变换,结 果生成新的点坐标P‘(x’, y‘),则
x ax by y dx ey
用齐次坐标和矩阵形式可表示为
a d 0 x y 1 x y 1 b e 0 [ax by dx ey 1] 0 0 1 a d 0
y dx y
用齐次坐标和矩阵表示为
1 d 0 [x' y' 1] = [x y 1]· =[x +by dx +y 1] b 1 0 0 0 1
错切变换矩阵为 K2 =
1 d 0 b 1 0 0 0 1
错切变换如图4-7所示。
图4-2 窗口与视图变换
4.2 图形的几何变换
图形变换一般是指对图形的几何信息经过几何变 换后产生新的图形。图形变换既可以看做是坐标系不 动而图形变动,变动后的图形在坐标系中的坐标值发 生变化;也可以看做图形不动而坐标系变动,变动后 该图形在新的坐标系下具有新的坐标值,本节所讨论 的几何变换属于前一种。 对于图形采用齐次坐标表示,可以方便地用变换 矩阵实现对图形的变换。假设二维图形变换前的一点 坐标为[x y 1],变换后为[x' y' 1];三维图形变换前的 一点坐标为[x y z 1],变换后为[x' y' z' 1]。
计算机图形学第4章图形变换(2)课件
图形绕空间任意轴旋转的总变换矩阵是 H = T·Rx·Ry·Rz·Ry-1·Rx-1·T -1
4.3.5 三维对称变换
三维对称变换可以是关于给定对称轴的或者 是关于给定对称平面的变换。三维对称矩阵的建 立类似于二维的。关于给定对称轴的对称变换等 价于绕此轴旋转180°,可以直接使用已讨论过 的相对于轴线的旋转变换公式。关于给定对称平 面的对称变换其最简单的是对称于坐标平面的变 换。当对称平面是坐标平面时(x-y,或x-z,y-z), 可以将此变换看成是左手系和右手系之间的转换。
符合下面形式:
x'=axxx+axyy+bx y'=ayxx+ayyy+by
变换的坐标x'和y'都是原始坐标x和y的线性函数。 参数aij和bk是由变换类型确定的常数。仿射变换 具有平行线转换成平行线和有限点映射到有限点 的一般特性。
平移、比例、旋转、对称和错切变换是二维仿 射变换的特例,任何常用的二维仿射变换总可表 示为这五种变换的组合。
三维变换的处理过程是什么?
(1)取景变换和规范化视见体变换; (2)三维剪取; (3)投影变换; (4)二维观察变换。
为使剪取处理简单和规范化(即单位化),需要 利用坐标变换将视见体规范化。视见体为世界空 间中将被裁剪出来并投影到视图平面的那一部分 定出边界。 二、三维剪取,其作用是仅保留在视见体内的物体 部分并对它生产图形显示。
三、投影变换将,视见体内的三维物体描述变换成 投影平面上的二维图形描述。
四、二维观察变换将投影平面上矩形窗内的图形 变换到显示器(或规范化)坐标中的视口内。
同样,在使用中用户也要求能控制显示图形 在显示屏上的位置和大小,我们把在显示器坐标 系中规定的显示图形区域称为视口。
计算机数学-图形变换的矩阵方法
其:b~错切系数。 bx~沿y方向地错切量(y坐
标沿y方向地移动量)。
bx>零,沿+y方向错切(移动); bx<零,沿-y方向错切(移动); b=零即bx=零,不错切(恒等变换)。
AD′
C
A
B
C′
B′
变换特点: ①变换后点地x坐标不变,y
坐标移了bx;
②行于y轴地直线变换后仍 行于y轴;
③行于x轴地直线变换后,x= 零地点不动(不动点),x≠零地点沿 y方向移了bx,形成与x轴夹角为θ 地直线,且 tgθ=bx / x=b。
如,(二,三)地齐次坐标为(二,三,一),(四,六, 二),(-二,-三,-一),(一零,一五,五),…...,一个点地齐次 坐标不是唯一地.
三.五.二 普通坐标与齐次坐标互相转换
◆ 把面一点普通坐标(x,y)转换成齐次坐标: x,y乘以同一个非零数h,加上第三个分量h,即(hx,hy,h).
(x,y) 普通坐标
不同地语义,在同一环境也可以有不同地解读,最常见地包括: Ø (一)表示一个线变换; Ø (二)表示列向量或行向量地集合(多个对象); Ø (三)表示子矩阵地集合。矩阵作为一个整体对应地是线变换语义。比
如要实现图形旋转,数学上地作法就是用旋转变换矩阵按矩阵乘法规则乘
以图形矩阵,就能实现所要图形旋转效果了。
移变换矩阵增加一行,扩充为三阶方阵,
输出点地坐标就是三维向量,这样输入坐标与输出坐 标形式相同。
采用齐次坐标描述点,就能使得移,缩放,对称,旋转与错切变换矩阵 统一成。
形如称为二D直角坐标系地齐次变换矩阵。其左上角 地二阶方阵在变换功能上对图形行放缩,旋转,对 称,错切,左下角矩阵对图形行投影,右上角矩阵对 图形行移,右下角地对图形整体行伸缩变换。
计算机数学-图形变换的矩阵方法
3.2 图形变换与矩阵乘法
变换
Ø
人是三维空间里的对象,人可以在三维空间里运动,移动位置就
是对象的运动。所以,程序员眼中的“空间”是一个容纳运动的对象 集合,即构成“空间”的要素为对象、对象的运动。空间对象的运动 称为变换,变换规定了对应空间的运动。数学上是如何表示空间对象 和空间变换呢?
Ø 在线性代数中,用向量表示一个对象,矩阵表示什么呢?矩阵在不同的 环境中有不同的语义,在同一环境中也可以有不同的解读,最常见的包 括:
若有Pa=b,我们就说P将向量a变换到向量b。从这个角 度看,“变换”和“乘法”是等价的,进行坐标变换等价于 执行相应的矩阵乘法运算,图形变换可以通过对表示图 形的坐标矩阵进行乘法运算来实现。
可见,向量和矩阵的运算是计算机图形处理技术的数学基础。
3.3图形基本变换
3.3.1 平移变换
3.3.2 以坐标原点为基准点的缩放变换
我们分析了“变换”与“乘法”是等价的。利用向量、矩阵做图形变换的 工具,通过向量乘以变换矩阵来实现坐标变换,接下来,关键问题就是构 造图形变换矩阵了。
3.4.2 基本图形变换矩阵
图形变换
缩放变换 旋转变换
变换矩阵
翻 折 变 换
错 切 变 换
变换方程的矩阵形式
课堂练习 3.4 1、点的坐标为行向量和列向量不同形式时,变换矩阵相同吗?与方程 组中系数矩阵有什么关系?表一中,若点的坐标为行向量形式,写出 各种变换的矩阵方程。 2、用矩阵方法计算下列图形变换 (1)将点(2,1)的横坐标伸长到原来的3倍
标沿x方向的移动量)。
cy>0,沿+x方向错切(移动); cy<0,沿-x方向错切(移动); c=0即cy=0,不错切(恒等变换)。
图形变换的矩阵方法
例:设矩形ABCD相应旳矩阵为
A B C
0 2 2
0
0
1.5
设θ=30°
D 0 1.5
D′ D
C′ C
B′
A′A
B
T
cos 30 sin 30
sin 30 cos 30
0.866 0.5 0.5 0.866
旋转变换后旳矩阵为
0
1.732
0.982
0 A
1
B
2.299 C
0.75 1.299 D
3
3
B
二、图形变换
3 1 C
是指对图形进行平移、旋转、缩放、投影(透视)等 变换。
图形变换旳实质是变化图形旳各个顶点旳坐标。
4
所以,图形变换能够经过对表达图形坐标旳矩阵进 行运算来实现,称为矩阵变换法。
矩阵变换法旳一般形式:
原来的
图形顶点 坐标矩阵
变换 ·矩阵
=
变换后的 图形顶点 坐标矩阵
x1 y1
x2
xn
y2
a ·c
yn
n2
b
d
=
22
x2
xn
y2
yn
n2
6
设二维平面旳一种点坐标为[x y],对其进行矩阵变换:
x
y
a c
b
d
ax
cy
bx dy
变换后该点旳坐标为:
x y
ax bx
cy dy
经过对变换矩阵 T 中各元素旳不同取值,能够实现多 种不同旳二维基本变换。
1
xm2
xmn
该向量集合实际上就是一种矩阵。
假如这些点代表一种空间图形旳顶点,也就是说, 我们能够用矩阵来描述(表达)空间中旳图形。x1 y1 对源自二维空间,用x2y2
图形变换的矩阵方法
§1 概述
1
x11 x 21 xm1
x12 x 22
xm 2
x1 n x2n x mn
该向量集合实际上就是一个矩阵。 如果这些点代表一个空间图形的顶点,也就是说, 我们可以用矩阵来描述(表示)空间中的图形。
x1 x 2 对于二维空间,用 xn
y1 y2 yn
2
B (3,3)
A (1,1)
C(3,1)
表示图形( 其中xi yi是顶点坐标)。
二、图形变换 是指对图形进行平移、旋转、缩放、投影(透视)等 变换。 图形变换的实质是改变图形的各个顶点的坐标。
1 1 A 3 3 例:如图所示的△ABC,用矩阵表示为 B 3 1 C
因此,图形变换可以通过对表示图形坐标的矩阵进 行运算来实现,称为矩阵变换法。 矩阵变换法的一般形式:
x ax a 0 y ax by 即 y dy 0 d
11 ㈡对称变换 包括三类:对坐标轴的对称变换,对直线的对称变换, 对坐标原点的对称变换。 ⒈对坐标轴的对称变换 A C ⑴对x轴的对称变换
㈠比例变换(缩放变换)
6
x
其中,a为x方向的缩放因子,d为y方向的缩放因子。 根据a、d取值的不同,分为几种情况: ⒈当a=d,图形沿x方向和y方向等比例缩放 ⑴当a=d>1,图形沿x、y方向等比例放大 例:设△ABC对应的矩阵为
A 0 0 B 1 2 C 2 1
C′
C
图形变换方法及应用
因此有:
注意:此矩阵从表面上看,与绕z轴和x轴的变换矩阵符号上有所不同。
物体分别绕x、y、z轴旋转θ、φ、ψ角后,其转换矩阵为:
2.2.3变换的合并
1.平移
假设点P的坐标为X、Y,而Tx、Ty是该点沿x轴和y轴的平移量,X'Y'为平移后点P'的坐标。
则平移变换公式为:
X'=X+Tx
Y'=Y+Ty
2.旋转
如图2所示,点P(x,y)绕原点旋转θ角,设逆时针为正。其点的坐标关系相当于点P不动,而坐标轴顺时针转动θ角,如图3。
由图3得旋转的变换公式:
X'=X*COSθ- Y*SINθ
Y'=X*SINθ+ Y*COSθ
3.比例
比例变换又称缩放。其作用是把图形放大或缩小。
变换公式为:
X'=X*Sx
Y'=Y*Sy
其意义为点P(x,y)相对于坐标原点,其x坐标值缩放Sx倍,y坐标值缩放Sy倍。
2.1.2二维图形变换矩阵
平面坐标系中的点的坐标值可用行向量[x y]表示,前面讲的各种变换都可以表达位矩阵形式,不同的变换的矩阵有不同的元素构成。
和二维变换相同,一个任意复杂的三维变换都可由基本变换合并而成。即:
式中T=T1*T2*T3……Tn即为合并后的变换矩阵。
3.公差的灵敏度分析
3.1公差的灵敏度分析概念
在任意一个零部件中,通常有一组基准点和若干个控制点,而基准点在X、Y、Z个方向上的变化对控制点的影响是不同的;即其灵敏度是不同的。
其分析方法有多种,如:ቤተ መጻሕፍቲ ባይዱ
OpenGL完全教程 第四章 矩阵变换
OpenGL完全教程 第四章 矩阵变换作者:何咏 日期:2006-2-3 20:52:21 点击:3468如需转载本文,请声明作者及出处。
第四章 矩阵变换通过前三章的学习,我们知道了如何使用OpenGL在3D空间中绘制基本图元,并把使用图元组成模型。
然而,在我们绘制完一个物体或一个场景之后,我们总希望从多个角度观察这个物体,或者在场景中走动。
这时,我们需要OpenGL的另一个功能:变换。
OpenGL为我们提供了许多方面和类型的变换。
你可以对投影方式进行变换,也可以对物体/模型 进行变换。
你可以改变自己的位置和方向,也可以改变物体的大小和角度。
学习本章内容,你将了解:•OpenGL中变换的种类•使用矩阵描述一个变换•基本变换•定义和使用自己的变换4.1 OpenGL中的变换变换(Transform),可以使3D空间中的物体投影到2D平面上。
使用变换,你可以移动、旋转、缩放甚至弯曲一个物体。
然而变换并没有直接修改顶点数据,取而代之,变换修改了坐标系。
如果旋转一个坐标系,然后再在 旋转后的坐标系里绘图,绘制后的图形就好像被旋转了。
在基本OpenGL渲染流程中,将进行以下变换:视图变换 :用于指定观察者的位置和方向;模型视图变换:移动和变换场景中的模型;投影变换 :对视见空间进行裁剪和扭曲;视见区变换:对最终输出进行缩放。
4.1.1 视图变换在一个场景中,我们希望改变观察者的位置和观察角度。
用于改变观察者方位和角度的变换,就是视图变换。
默认情况下(没有执行任何变换时),观察者位于点(0,0,0),且视线朝着-Z方向。
也就是说,只有在z<0的地方绘图,才有可能被观察到。
4.1.2 模型视图变换此变换用于移动和旋转场景中的物体。
使用模型视图变换完全可以代替视图变换。
道理是很简单的:比如你想使用视图变换将观察者向-Z轴移动10个单位,此时场景中所有的物体都向+Z轴移动了10个单位。
这跟你直接使用模型视图变换将场景中所有物体向+Z方向移动10个单位的效果是完全一样的。
图形变换的矩阵方法91页PPT
谢谢!
91
图形变换的矩阵方法
61、辍学如磨刀之石,不见其损,日 有所亏 。 62、奇文共欣赞,疑义相与析。
63、暧暧远人村,依依墟里烟,狗吠 深巷中 ,鸡鸣 桑树颠 。 64、一生复能几,倏如流电惊。舒适、愉快,这是不可能的,因为人类必须具备一种能应付逆境的态度。——卢梭
▪
27、只有把抱怨环境的心情,化为上进的力量,才是成功的保证。——罗曼·罗兰
▪
28、知之者不如好之者,好之者不如乐之者。——孔子
▪
29、勇猛、大胆和坚定的决心能够抵得上武器的精良。——达·芬奇
▪
30、意志是一个强壮的盲人,倚靠在明眼的跛子肩上。——叔本华
CAD 3-图形变换的矩阵方法
§3-2 二维图形变换
四、旋转变换
Y P’
θ
x = ρ ⋅ cos ϕ y = ρ ⋅ sin ϕ
P
ϕ
O X
x′ = ρ ⋅ cos(ϕ + θ ) y′ = ρ ⋅ sin(ϕ + θ )
14
7
§3-2 二维图形变换
四、旋转变换
x′ = ρ ⋅ (cos ϕ cosθ − sin ϕ sin θ ) = x cosθ − y sin θ y ′ = ρ ⋅ (sin ϕ cosθ + cos ϕ sin θ ) = x sin θ + y cosθ
第三章
§3-1 §3-2 §3-3 §3-4 §3-5
图形变换的矩阵方法
坐标系与图形变换 二维图形变换 三维图形变换 三维图形变换的应用 窗口视图变换
1
§3-1 坐标系与图形变换
一、计算机图形学中的坐标系统
1.
造型坐标系(MC, Modeling Coordinate System)
•
右手,三维,有量纲,连续,无限 右手,三维,有量纲,连续,无限 左手,二维,有量纲,离散,有限 左手,二维,无量纲,连续,有限 [0, 1]
r (Tn ⋅ L (T3 ⋅ (T2 ⋅ (T1 ⋅ P) ) ) L )
r (Tn LT3 ⋅ T2 ⋅ T1 ) ⋅ P
18
9
§3-3 三维图形变换
一、概述
1.
三维空间点的齐次坐标形式
P ⇒ ( x, y, z ,1)
a d T = h l
2.
用于行向量的矩阵运算
b e i m c f j n p q r s
第四章--图像的几何变换
7 9 10 11 12 13 15 16 17 18 25 27 28 29 30 31 33 34 35 36
i=[1,6], j=[1,6]. x=[1,6*06]=[1,4], y=[1,6*0.75=[1,5]. x=[1/0.6,2/0.6,3/0.6,4/0.6]=[i2,i3,i5,i6], y=[1/0.75,2/0.75,3/0.75,4/0.75,5/0.75]=[j1,j3,j4,j5,j6].
素值的填充是不连续的。 因此可以采用插值填充的方法来解决。
4.1.3.3 图像旋转的后处理
最简单的方法是行插值(列插值)方法
1. 找出当前行的最小和最大的 非背景点的坐标,记作:
(i,k1)、(i,k2)。
4.1.3.3 图像旋转的后处理
2. 在(k1,k2)范围内进行插值, 插值的方法是:空点的像素 值等于前一点的像素值。
•注意:平移后的景物与原图像相同,但“画 布”一定是扩大了。否则就会丢失信息。
4.1.2 图像的镜像
镜像分为水平镜像和垂直镜像
水平镜像计算公式如下(图像大小为M*N):
x' y'
x
(水平镜#39; x
平移:
y
''
y '
N
1
N
1
y
123 1
2
3
-1 -2 -3 1
2
3
N 3
图像的旋转计算公式如下: x' x cos y sin y' x sin y cos
• 这个计算公式计算出的值为小数,而坐标值为正整数。 • 这个计算公式计算的结果值所在范围与原来的值所在 的范围不同。
• 因此需要前期处理:扩大画布,取整处理,平移处理
4-图形变换
x ax by
*
y cx dy
*
P PT
*
P x
y
P x
*
*
y
*
a c T b d
Fundamental of Mechanic CAD
机械CAD基础
Raymond Ding ©
2 图形变换的矩阵表示 Transformation matrix
D 平移变换 move
x x x
*
x ax by x
*
y y y
*
y cx dy y
*
a T b x
c d
y
0 0 1
P x
y 1
*
P x
*
y
*
1
P PT
*
Fundamental of Mechanic CAD
cos T T1 T2 T3 sin x0 (1 cos ) y0 sin
0 cos 0 x0 sin y0 (1 cos ) 1
Fundamental of Mechanic CAD
sin
机械CAD基础
◆两个常见的应用:正投影和轴测投影
Fundamental of Mechanic CAD
机械CAD基础
Raymond Ding ©
T H A N K S
for your attention
Fundamental of Mechanic CAD
6 图形变换的应用 application
正投影变换
俯视图
主视图
图形的变换
通过图形变换实现游戏物体之间的 碰撞检测,提高游戏的真实感和交 互性。
04
变换矩阵的实现
平移矩阵
矩阵形式
[1 0 Tx]
描述
将图形在x轴上向右移动Tx个单位
旋转变换矩阵
矩阵形式
[cosθ -sinθ Tx]
描述
以原点为中心,顺时针旋转θ角度
缩放矩阵
矩阵形式
[sx sy 0]
描述
图形的变换
xx年xx月xx日
目录
• 变换的基本概念 • 图形变换的方法 • 图形变换的应用 • 变换矩阵的实现 • 图形变换的优化 • 图形的组合变换
01
变换的基本概念
变换的定义
图形变换是指在几何空间中,将一个图形按照某种规则或规 律移动、旋转或缩放,从而得到另一个图形的过程。
图形变换是几何学中的一个基本概念,是计算机图形学、机 器人视觉等领域的基础。
三维图形的变换
三维图形的变换需要使用三维 矩阵来表示变换。
包括旋转、缩放、移动等操作 ,与二维图形的变换类似。
可以使用齐次坐标系来表示三 维图形的变换。
THANKS
谢谢您的观看
变换的等价性
对于两个给定的图形,存在多种不 同的变换方式可以将它们相互还原 。
02
图形变换的方法
平移变换
总结词
将图形沿着某一方向移动一定距离
详细描述
平移变换是一种基本的图形变换方法,它将图形沿着水平、垂直或斜向方向 移动一定距离。平移变换不改变图形的形状和大小,只改变其位置。
旋转变换
总结词
将图形绕某一中心点旋转一定角度
以方便计算和表示。
极坐标系
对于需要关注角度和长度的图 形,如圆或螺旋线等,可采用 极坐标系进行表示和计算。
计算机图形学04-图形几何变换
a21 a22 ...
a2n
... ...
...
am1 am2 ...
amn
其中,aij称为矩阵A的第i行第j列元素
7
第4章:图形几何变换
1 • 二维几何变换 2 • 三维几何变换 3 • 图形几何变换的模式
Computer Graphics
8
§4.1 二维几何变换
1.二维平面上点的表示法 一对坐标(x, y)
3. 将图形从原点平移到P(m, n)
1 0 0
T3
0
1
0
m n 1
26
§4.1.2 二维复合变换
绕平面上任意点 p(m,n)的二维旋转变换的总变换矩阵
T= T1*T2*T3
=
1 0
0 0 cos sin 0 1 0 0
1
0 sin
cos
0
0
1
0
m n 1 0
0 1 m n 1
(5)错切变换
错切变换可以修改三维物体的形状
1 b c 0
d 1 f 0
g h 1 0
0 0 0 1
x' x dy gz,d, g 0关于x轴方向有错切。
y'
y
bx
T
a 0
0
d
{
// translate to screen centre ( 400,300)
p[i].x = p[i].x-400; p[i].y = 300-p[i].y;
p[i].x = p[i].x*sdlg.m_ScaleX;
p[i].y = p[i].y*sdlg.m_ScaleY;
// restore the original coordinate.
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
4. Sx Sy,图形产生了畸形图形沿两个坐标轴方向作非均匀 比例变换。
x '
y '
x
y
Sx 0 0 Sy
Sx =1, Sy>1
4
图形变化:原有图形放大或缩小的变换
参数值:主对角线上元素至少有一个不为1,次对角线上元素全为0。
4.1.2
对称变换
y y (x,y) x (x,-y) y=x
(-x,y) (-x,-y)
O
(x,y)
O
x (x',y')
y
(x,y)
O (x',y')
x y=-x
5
1.关于x轴的对称变换
x'
x'
y' x
y' x y
第4章 图形变换的矩阵方法
要求: 1.掌握各种图形变换的变换矩阵。 2.掌握图形变换矩阵的一般形式。 3.掌握齐次坐标表示法。 一般来说,图形从输入到输出贯串着各种变换。被描述的对象 所处的环境和显示屏幕的环境是很不同的,不仅位置不同,大多数 情况下,尺寸也很不相同。这就要求协调二者的关系。此外,三维 的图形要在二维的图纸或屏幕上表示出来要通过投影变换。为了从 不同的方向去观察对象,要求能对对象作旋转变换,放大缩小和平 移变换更是经常要用的。绘图过程中还要用窗口来规定要显示的内 容,用视区来规定在屏幕上或图纸上显示的位置。本章学习实现上 述功能的算法。 计算机产生图形的过程大致可分为三步: 图形输入 图形处理 图形输出
如:二维点[x y] 用 [X Y H]表示 如:空间点[x y z] 用 [X Y Z H]表示 H可以任意选取, 齐次坐标与普通坐标之间是一一对应关系。 如二维平面上的一点[3,4], 用齐次坐标表示为[3,4,1] 通常将H=1的齐次坐标称为
沿y轴方向的错切变换
x'
y' x
(1)变换过程中,点的y坐标保持不变,而x坐标值发生线性变化;
1 0 y x cy c 1
y
(2)平行于X轴的线段变换后仍平行于X轴;
(3)平行于Y轴的线段变换后错切成与Y轴成角的直线段 (4)X轴上的点在变换过程中保持不变,其余点在变换后都平移了一段距离。
8
4.1.4ຫໍສະໝຸດ 绕坐标原点的旋转变换x' OP cos( )
OP(cos cos sin sin ) x cos y sin
y' OP sin( )
OP(sin cos cos sin )
x sin y cos
1 0 如变换矩阵改为: 0 1 则点的坐标(x,y) l m
P’=P*T= x
(x,y,1)
y
1 0 1 0 1 = x l l m
ym
1
10
4.1.6
齐次坐标与变换通式
它是用一个n+1维向量表示一个n维向量的方法
1 y x 1 0
5.关于坐标原点的对称变换
x'
y' x
1 0 y x y 0 1
6
4.1.3
错切变换
(x,y)
(1)沿X轴方向错切 (2)沿Y轴方向错切
(x',y') (x,y)
(x',y')
沿x轴方向的错切变换 1.沿X轴方向的错切变换
2
几何变换
投影变换
4.1 二维图形变换
1.二维平面上点的表示法 2. 图形变换的矩阵表示 改变顶点坐标, 也就是对向量的变换,向量运算必须用矩阵运算来实现。 设: 点P(x,y) 矩阵表达方法 变换矩阵 点P ’(x’, y’) 其数学表达方法 一对坐标(x,y) 一个向量[x y]
x ' ax cy
7
2. 沿Y轴方向的错切变换
x'
y' x
1 b y x cy 0 1
y
(1)变换过程中,点的x坐标保持不变,而y坐标值发生线性变化;
(2)平行于Y轴的线段变换后仍平行于Y轴; (3)平行于X轴的线段变换后错切成与X轴成角的直线段 (4)Y轴上的点在变换过程中保持不变,其余点在变换后都平 移了一段距离。
y ' bx dy;
变换后的位置矢量矩阵
x'
y' x
a b y ax cy bx dy c d
3
位置矢量矩阵
4.1.1
比例变换
y
(x,y)
就是将图形放大或缩小的变换方法。 x’=Sx* x 变换式为: y’=Sy* y
(x',y')
O
x
讨论: 1. Sx =Sy=1,点的位置、图形形状不变,又称恒等变换
1 0 y x 0 1
1 0 1 x 0 1
y
y
2.关于y轴的对称变换
3.关于45度平分线的对称变换
x'
y' x
y' x
0 1 y y 1 0
y 0
x
4.关于-45度平分线的对称变换 x'
其矩阵表示法:
x'
cos sin y' [ x y] sin cos x cos y sin x sin y cos
9
4.1.5
平移变换
m x 1
y (x',y') O (x,y) x
1 x’=x+l 变换过程为: 变换矩阵为 y’=y+m l y
计算机对图形数据进行处理,就是图形处理。
图形变换 --- 就是要变换图形的几何关系(即改变顶点坐标), 同时保持图形的原拓扑关系不变.
1
线框图的变换——通常以点变换为基础,把图形的顶点作一系列
的几何变换后,连接新的顶点系列即可产生新的图形。 用参数方程描述的图形的变换——通过参数方程作几何变换实现。
我们在这只讨论图形拓扑关系不变的几何变换。重点讨论线框图
的变换。 图形变换 几何变换 又称坐标变换:它是将点集的坐标变换达到改变位 置、形状 投影变换 变位变换 :旋转、 镜像、 周分布、 阵列、 基本变换 变形变换 :比例、 错切 组合变换 :上述变换的连续实施 由于显示器和绘 正投影变换 :三面正投影图、 轴测图 图机只能用二维空间 来表示图形,要显示 中心变换 :透视图 三维图形就要用投影 斜投影变换 :斜轴测图 方式来降低其维数。