当前位置:
文档之家› 计算机图形学基础教程课件之附录(第二版)(孙家广 胡事民编著)
计算机图形学基础教程课件之附录(第二版)(孙家广 胡事民编著)
(6) 矩阵的逆
对于一个n×n的方阵A,如果存在一个n×n 的方阵B,使得AB=BA=In,则称B是A的逆, 记为B=A-1,同时A则被称为非奇异矩阵。
矩阵的逆是相互的,A同样也可记为B=A-1, B也是一个非奇异矩阵。
任何非奇异矩阵有且只有一个逆矩阵。
(7) 矩阵运算的基本性质 ① 矩阵加法适合交换律与结合律 A+B=B+A A+(B+C)=(A+B)+C ② 数乘矩阵适合分配律与结合律 α(A+B)=αA+αB α(A·B)=(αA)·B=A·αB
i jk
V1 V2 x1 y1 z1 y1z2 y2 z1,z1x2 z2 x1,x1 y2 x2 y1
x2 y2 z2
叉积满足反交换律和分配律 V1×V2=-V2×V1
V1×(V2+V3)=V1×V2+V1×V3
A.2 矩阵运算
设有一个m行n列矩阵A:
a11 a12 a1n
d vyb vyt vyb wyb wyt wyb
用矩阵表示为:
xv a 0 bxw
yv
0
c
d
y
w
1 0 0 1 1
B.2 二维图形的几何变换
用齐次坐标表示点的变换将非常方便,因 此在附录B中所有的几何变换都将采用齐次 坐标进行运算。
二维齐次坐标变换的矩阵的形式是:
a b c
d
e
f
g h i
这个矩阵每一个元素都是有特殊含义的。
其中
a d
b e
可以对图形进行缩放、旋转、
对称、错切等变换;
c f
是对图形进行平移变换;
[g h]是对图形作投影变换;
[i]则是对图形整体进行缩放变换。
x
y
0
sy
0
y
sy
y
S (sx ,
sy
) y
1 0 0 11 1
1
(3) 旋转变换
在直角坐标平面中,将二维图形绕原点旋 转θ角的变换形式如下:
x cos
y
sin
。 aik bk j
k 1
下面用一个简单的例子来说明。设A为2×3 的矩阵,B为3×2的矩阵,则两者的乘积为:
C
A
B
a11 a21
a12 a22
a13 a23
b11 b21 b31
b12
b22
b32
a11b11 a21b11
a12b21 a22b21
④ 关于(xf, yf)点的缩放变换 缩放、旋转变换都与参考点有关,上面进
行的各种变换都是以原点为参考点的。
如果相对某个一般的参考点(xf, yf)作缩放、 旋转变换,相当于将该点移到坐标原点处, 然后进行缩放、旋转变换,最后将(xf, yf)点 移回原来的位置。
1 0
sin cos
0
0x x cos y sin
x
0 y
x s in
y
cos
R( )
y
11
1
1
逆时针旋转θ取正值;
顺时针旋转θ为负值。
(4) 对称变换
x a b 0x ax by
③ 当b=d=0,a=e=-1时,有x´=-x, y´=-y,产生与原点对称的图形;
④ 当b=d=1,a=e=0时,有x´=y,y´=x,产生 与直线y=x对称的图形;
⑤ 当 b=d= - 1 , a=e=0 时 , 有 x´= - y , y´=-x,产生与直线y=-x对称的图形。
(5) 错切变换
y
d
e
0 y dx ey
1 0 0 11 1
对称变换其实只是a,b,d,e取0,1等特殊 值产生的一些特殊效果。
① 当b=d=0,a=-1,e=1时,有x´=-x, y´=y,产生与y轴对称的图形;
② 当b=d=0,a=1,e=-1时,有x´=x, y´=-y,产生与x轴对称的图形;
0
sin2 c os 2
0
0 c os1
0
s
in
1
1 0
cos(2 1)
s
in(
2
1 )
0
sin(2 1) cos(2 1)
0
sin1 0 cos1 0
0 1
0
0 R(2 1)
1
a13b31 a23b31
a11b12 a12b22 a13b32
a21b12
a22b22
a23b32
(4) 单位矩阵 对于一个n×n的矩阵,如果它的对角线上
的各个元素均为1,其余元素都为0,则该 矩阵称为单位矩阵,记为In。对于任意m×n 的矩阵,恒有:
Am×n·In = Am×n Im ·Am×n = Am×n
附录B 图形的几何变换
B.1 窗口区到视图区的坐标变换
实际的窗口区与视图区大小往往不一样, 要在视图区正确地显示形体,必须将其从 窗口区变换到视图区。
( xv,yv)
由比例关系,两者的变换公式为:
vxr vxl xv vxl wxr wxl (xw wxl)
yv
vyb
vyt wyt
vyb wyb
(yw
wyb)
( xv,yv)
可以简单地将两者的关系表示为: xv a xw b
yv c yw d
其中:
a vxr vxl wxr wxl
c vyt vyb wyt wyb
b vxl vxr vxl wxl wxr wxl
显然一个向量的齐次表示是不惟一的,齐 次坐标的h取不同的值都表示的是同一个点, 比如齐次坐标[8,4,2]、[4,2,1]表示的都是二 维点[2,1]。
齐次坐标的优点:
① 它提供了用矩阵运算把二维、三维甚至 高维空间中的一个点集,从一个坐标系变 换到另一个坐标系的有效方法。
② 它可以表示无穷远的点。n+1维的齐次 坐标中如果h=0,实际上就表示了n维空间 的一个无穷远点。对于齐次坐标[a,b,h],保 持a,b不变,h→0的过程就表示了在二维坐 标系中的一个点,沿直线ax+by=0逐渐走向 无穷远处的过程。
1
t
y
2
0
1
t
y1
0 0 1 0 0 1
1 0 tx2 tx1
0
1
ty2
t
y1
T
(t x 2
tx1, t y2
t y1 )
0 0 1
② 复合缩放 两次连续的缩放相当于将缩放操作相乘:
sx2 0 0sx1
S (sx2 , s y2 ) S (sx1, s y1 )
V1·V2=V2·V1 V1·(V2+V3)=V1·V2+V1·V3
(5) 两个矢量的叉积 叉积V1×V2是一个向量,而且满足:
① |V1×V2|=|V1||V2| sinθ,即以V1和V2为邻 边所构成的平行四边形的面积。
② V1×V2垂直于V1和V2。 ③ V1,V2,V1×V2构成右手系。
用坐标表示为:
0
sy2
0
0
0 0 1 0
sx2 sx1
0
0
0 s y2 s y1
0
0 0 sy1 0 0 1
0 0 S (sx2 sx1, s y2 sy1) 1
③ 复合旋转
两次连续的旋转相当于将两次的旋转角度 相加:
c os 2 R(2 ) R(1) sin2
(2) 矢量倍乘 αV1=(αx1, αy1, αz1)
(3) 两个矢量之和 V1+V2=(x1, y1, z1)+(x2, y2, z2)=(x1+x2, y1+y2, z1+z2)
(4) 两个矢量的点积 V1·V2=|V1||V2| cosθ=x1x2+y1y2+z1z2
其中,θ为两相量之间的夹角。 点积满足交换律和分配律:
ka11 ka12 ka1n
kA
k
a21
k a22
k
a2
n
kam1 kam2
k
amn
(3) 矩阵的乘法运算
只有当前一矩阵的列数等于后一矩阵的行 数时两个矩阵才能相乘:
Cm×n= Am×p·Bp×n
矩阵C中的每个元素
Cij
p
Amn
a21
a22
a2n
am1
am2
amn
其中(ai1, ai2, ai3, …, ain)被称为第i(1≤i≤n)个行 向量,(a1j, a2j, a3j, …, amj)T被称为第j(1≤j≤m) 个列向量。
(1) 矩阵的加法运算
设两个矩阵A和B都是m×n的,把它们对应 位置的元素相加而得到的矩阵叫做A、B的 和,记为A+B