图形学中矩阵作用

阅读更多

1:平移 
一个4*4的单位矩阵乘以一个P(x,y,z,1)的行向量,则表示此矩阵向x轴移动了x的单位,向Y轴移动了y个单位,向Z轴移动了z个单位,最后获得移动后的目标矩阵是 
[ 1, 0, 0, 0 ] 
[ 0, 1, 0, 0 ] 
[ 0, 0, 1, 0 ] 
[ x, y,  z, 1 ] 
从中可以看出4*4矩阵N中的N41,N42,N43分别控制其在x轴y轴z轴上的平移单位. 

2:绕x轴旋转 
同理,我们将一个单位矩阵绕Z轴沿顺时针方向进行旋转A角度.则获得目标矩阵是 
[ 1,    0,    0,    0 ] 
[ 0, CosA, SinA,  0 ] 
[ 0, -SinA, CosA, 0] 
[ 0,    0,      0,  1 ] 
从中可见N22,N23,N32,N33是控制矩阵围绕X轴旋转角度的 

3:饶y轴正向旋转B获得目标矩阵为 
[ CosB, 0, -SinB,  0 ] 
[ 0,    1,    0,    0 ] 
[ SinB, 0, CosB, 0] 
[ 0,    0,      0,  1 ] 
从中可见N11,N13,N31,N33是控制矩阵围绕X轴旋转角度的 

4:绕z轴旋转C获得目标矩阵为 
[ CosC, SinC, 0 , 0] 
[ -SinC, CosC, 0 ,  0 ] 
[ 0,    0,    1,    0 ] 
[ 0,    0,      0,  1 ] 
从中可见N11,N12,N21,N22是控制矩阵围绕Y轴旋转角度的 

5:缩放 
我们将一单位矩阵沿X轴缩放X倍,Y轴缩放Y倍,Z轴缩放Z倍,则获得目标矩阵如下 
[ x, 0, 0, 0 ] 
[ 0, y, 0, 0 ] 
[ 0, 0, z, 0 ] 
[ 0, 0, 0, 1] 

 

 

[via http://topic.csdn.net/u/20090522/13/26688392-3685-4f3b-a169-60f18d441014.html]

你可能感兴趣的:(.net,C,C++,C#,HTML)