我在坐标系B
中有一组3D点,我想围绕坐标系的每个轴旋转和缩放特定角度theta
和某个比例因子scale
{ {1}}然后将它们转换为不同的坐标系B
。我知道A
转换会将坐标系4x4
中的点转换为坐标系B
。
例如,
我有一个转换矩阵
A
目前,我使用Tr = [0.0065,0.9999,-0.0106,-5.0682
-0.0105,-0.0105,-0.9999,1.7843
-0.9999,0.0066,0.0105,8.6412
0.0000,0.0000,0.0000,1.0000]
将坐标系Tr
中的3D点转换为B
。
但是,我想修改A
(通过乘以额外的矩阵),以便在转换为Tr
之后,点会被A
旋转并缩放,theta
关于每个轴坐标系“B”。
知道这是否可行?
答案 0 :(得分:3)
T_scale = [scale_x 0 0 0
0 scale_y 0 0
0 0 scale_z 0
0 0 0 1]
T_i(theta) = [R_i(theta) [0; 0; 0]
[0 0 0] 1 ]
T = Tr * T_scale * T_z(theta_z) * T_y(theta_y) * T_x(theta_x)
定义的R_i(theta)
答案 1 :(得分:0)
如果您有A
和B
的4×4转换矩阵
| R_A t_A | | R_B t_B |
T_A = | | T_B = | |
| 0 1 | | 0 1 |
然后从A -> B
T_AB = inv(T_B)*T_A
这被解释为本地 - >全局A
后跟全局 - >本地B
。