矩阵论——三维图形应用

  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

矩阵在计算机三维图形变换中的应用

矩阵在计算机三维图形变换中的应用

摘要:论述如何利用矩阵的变换性质实现计算机的三维图形变换,主要是通过平移、缩放和旋转三种基本变换的组合来实现的,利用矩阵可以是图形处理高速化。

关键词:平移、缩放、旋转

1 引言

三维图形图像的处理,显示和形体构造需要使用三维几何变换,这些变换是通过基本的平移,缩放和旋转组合而成的,每一个变化都可以表示为矩阵变换的形式,通过矩阵的相乘或连续可以构造复杂的变换。

2 矩阵与图形变换

计算机对图形的处理,经常用到各种变换,若用解析式表示坐标变换,计算过程和缩放程序都很复杂,用矩阵表示图形的坐标变换,特别是复合变换就显得比较简单,利用矩阵进行计算,可使图形处理高速化。

事实上,对于一个空间图形,图形上每一个点都对应着唯一的坐标(x,y,z),它的标准化齐次坐标为一个四维的向量。

设T为4 X 4变换矩阵:

其个元素的性质为:a,b,c,d,e,f,g,h,i产生比例,反射,旋转,错位变换,l,m,n

产生沿x轴,y轴,z轴的平等移动。P,q,r产生透视变换,s产生全比例变换。

利用变换矩阵T可以对三维坐标进行各种变换,其基本关系式为:

一般地,对图形对平移变换的变换矩阵为:

其中l,m,n分别沿x轴,y轴,z轴的方向的平移量,其坐标关系式为:

对图形做比例变换矩阵为:

a,e,i分别表示坐标x,y,z的放大率,其坐标关系为:

当a,e,i均等于1时,则变换矩阵为:

T=

1000 0100 0010 000s ⎛⎫ ⎪ ⎪ ⎪ ⎪⎝⎭

这时T产生全比例变换,其中S为整个图形的放大率,当s>1时整个图形缩小,当s<1时整个图形放大。对图形作错移变换的变换矩阵为:

T=

10

10

10 000

d g

b h

c f

s ⎛⎫ ⎪ ⎪ ⎪ ⎪⎝⎭

对图形作关于xoy平面的反射变换的变换矩阵为:

T=

1000 0100 0010 0001⎛⎫ ⎪ ⎪ ⎪

-

⎪⎝⎭

将图形绕x轴旋转角α的变换矩阵为:

T=

1000 0cos sin0 0sin cos0 0001⎛⎫ ⎪

αα

⎪ ⎪-αα

⎪⎝⎭

将图形绕y轴旋转角α的变换矩阵为:

T=

cos0sin0

0100 sin0cos0

0001

α-α

⎛⎫ ⎪ ⎪ ⎪αα

⎪⎝⎭

如果要对图形连续施行几种变换,则它的变换矩阵就是几个相应变换后矩阵的乘积,如对点A(x,y,z)先作比例变换,然后再绕y轴旋转角α,则新旧坐标关系为:

(x,y,z,1)

000

000

000

0001

a

e

i

⎛⎫

⎝⎭

cos0sin0

0100

sin0cos0

0001

α-α

⎛⎫

αα

⎝⎭

=()

*

**1

y

x z

3 利用矩阵进行三维图形变换

设三维孔家那种任意一点的齐次坐标p(x,y,z,1),作三维图形得打的点的齐次坐标为p’(x’,y’,z’,1)可得下面三维图形集合变换矩阵。

3.1 平移变换

平移变换课将指定形体从当前位置移到一个新的位置,而不改变其方向和大小。

式中,D x,D y,D z分别是沿x轴,y轴,z轴方向上的平移量,图1是三维平移变换示意图。

3.2 比例变换

比例缩放变换指定形体的大小,该比例变换以坐标原点为参考点,上式中的分别是沿x轴,y轴,z轴方向上的缩放比例,图2是以坐标原点为参考点的三维比例变换示意图。

如果要以三维空间中的任意一点(x0,y0,z0)为参考点作比例变换,先平移至原点作比例变换后再平移回到点(x0,y0,z0),比例变换矩阵为:

3.3 旋转变换

三维旋转变换是指空间形体绕坐标轴旋转角,旋转的正方向通常按右手定则确定,即右手拇指指向转轴方向,其余四指指向便是旋转角θ的正交(如图3)。旋转变换后形体的大小和形状不发生变化,只是空间位置相对原位置发生了变化。

绕x轴旋转:

,其中θ为图形绕x轴旋转的角度;

绕y轴旋转:

其中θ为图形绕y轴旋转的角度;

绕z轴旋转:

其中θ为图形绕z轴旋转的角度。

4 旋转矩阵

设o-x 1y 1z 1和o-x k y k z k 是以o 为同一原点的不同坐标系,对应的基向量分别为l e

k

e

,则同一矢量可以用两种不同的基表示出来。

,其中

为向

的坐标阵列,右边等式的两边用1e 点乘,得到:,其中A lk

为3X3标量矩阵,定义为:由此式可

以判断,相同元素之间的选择矩阵为三阶单位矩阵,即A ll (A kk )=E ,并且于实际

情况

符合。我们用以下算例来实现旋转阵的应用:

5 三维图形变换的统一矩阵面

计算机绘制物体的投影图,是将三维空间的物体用二维平面上的图形来表示,因此,需要进行图形变换,而进行图形变换行之有效的方法是矩阵机器运算。常用的三维图形变换矩阵有绕z轴的旋转矩阵S1,绕x轴的旋转矩阵S2,平移矩阵S3,向y面的正投影矩阵S4,它们分别为

其中, φ分别为绕z轴和x轴旋转的角度,l,m,n为平移参数

相关文档
最新文档