三维坐标变换
三坐标测量软件中最常的变换就是三维坐标变换,因为坐标旋转全靠它了,如果要搞这方面的东西,一定要熟悉坐标变换的,现在就来复习一下吧。
最简单的公式(3d)
空间三维向量:
单位矩阵:
|1 0 0 0|
|0 1 0 0|
|0 0 1 0|
|0 0 0 1|
沿(x,y,z)分别移动(a,b,c), 乘于
|1 0 0 0|
|0 1 0 0|
|0 0 1 0|
|a b c 1|
RotateX=A then mul
|1 0 0 0|
|0 cosA sinA 0|
|0 -sinA cosA 0|
|0 0 0 1|
RotateY=B the mul
|cosB 0 -sinB 0|
|0 1 0 0|
|sinB 0 cosB 0|
|0 0 0 1|
RotateZ=C then mul
|cosC sinC 0 0|
|-sinC cosC 0 0|
|0 0 1 0|
|0 0 0 1|
缩放(u,v,w), then mul
|u 0 0 0|
|0 v 0 0|
|0 0 w 0|
|0 0 0 1|
有一个点 它的局部坐标是(X、Y、Z)
我们把4×4矩阵的最后一行信息提取出来 它为(X Y Z 1)
我们要得到它在世界坐标(x、y、z) 那么
(x、y、z)=(X、Y、Z)×世界矩阵 (变换矩阵)
最终 我得到了我需要的结论:
B的世界坐标=B的局部坐标×B的世界矩阵
进行简单的换算就能得到:
B的局部坐标=B的世界坐标×B的世界逆矩阵
