这个坐标变换公式是由条件的,其中的三个转角参数必须足够小,这样才能省略一些高阶小量。- ~1 v) E% x a6 u
楼上的各位提到了空间解析几何。当然,空间解析几何里面肯定是有的,而且是很基础的,基础到甚至直接给出公式。但可惜,普通的工科学生一般不学这门科,所以这对于楼主来说其实并没有太多实质性的帮助。
4 l; `4 V/ B9 u& N( e( x6 P 其实,利用我们工科学的基本的线代知识,是可以求出上述公式的。我想给楼主提示几个要点:% p5 _" [5 G2 w7 V' j# r$ H& R
(1)将坐标变换分成4步,首先是平移,然后是分别绕X、Y、Z的旋转。
" o) e! U$ `( r- b9 C; _8 h* W (2)对于每一步,写出坐标的变换公式。对于平移,坐标变换只是简单的加减。对于旋转,则牵涉到旧坐标在新坐标上的投影。
! z+ g/ M0 A, j, E1 b* _ 比 如,当绕Z轴旋转时,就有X1=X0×cos(theta)-Y0×sin(theta)。其余类似。6 h( w" s. M8 ^/ K) b0 {% G; p
(3)将每一步的坐标变换公式,改写成矩阵形式,得到变换矩阵。因为矩阵的实质就是线性变换。坐标变换可是矩阵的拿手绝活。; D1 s% { S0 E# A2 y% C3 \
(4)将每个变换矩阵相乘,考虑到转角较小,省略高阶小量,就能得到你需要的公式。
8 b0 E& l* E5 U' o/ s, v 楼主不妨花个半个小时试一下,顺便复习一下自己的大学数学知识。' G; v% ?, g2 p$ g! F4 B
) J1 h# F5 J/ W b3 v |