matrix列的颠倒
设要将matrix
abc
| a1 b1 c1 |
| a2 b2 c2 |
| a3 b3 c3 |
变为
| a1 c1 b1 |
| a2 c2 b2 |
| a3 c3 b3 |
现在先假设需要左乘特定的matrix,现在我们假设它为:
xyz
| x1 y1 z1 |
| x2 y2 z2 |
| x3 y3 z3 |
这样由前面日志的推导有:
xyz*abc的值为:
| a1*x1+a2*y1+a3*z1 b1*x1+b2*y1+b3*z1 c1*x1+c2*y1+c3*z1 |
| a1*x2+a2*y2+a3*z2 b1*x2+b2*y2+b3*z2 c1*x2+c2*y2+c3*z2 |
| a1*x3+a2*y3+a3*z3 b1*x3+b2*y3+b3*z3 c1*x3+c2*y3+c3*z3 |
通过将这个与所要求的matrix的行列比较:
这时可以发现无论x,y,z取什么样的值,都没有办法达到目的???
假设这里需要右乘xyz,有:
abc*xyz的值为:
| a1*x1+b1*x2+c1*x3 a1*y1+b1*y2+c1*y3 a1*z1+b1*z2+c1*z3 |
| a2*x1+b2*x2+c2*x3 a2*y1+b2*y2+c2*y3 a2*z1+b2*z2+c2*z3 |
| a3*x1+b3*x2+c3*x3 a3*y1+b3*y2+c3*y3 a3*z1+b3*z2+c3*z3 |
两者相比较可以得到
| a1*1+b1*0+c1*0 a1*0+b1*0+c1*1 a1*0+b1*1+c1*0 |
| a2*1+b2*0+c2*0 a2*0+b2*0+c2*1 a2*0+b2*1+c2*0 |
| a3*1+b3*0+c3*0 a3*0+b3*0+c3*1 a3*0+b3*1+c3*0 |
注意这里x,y,z的方向为;
从而可以确定右乘的matrix为:
|1 0 0|
|0 0 1|
|0 1 0|
从而可以发现结果是对的;
思维:这里不仅存在着上篇日志中同样的思维,另外的是为什么这里必须要右乘特定matrix???