两个坐标系matlab之间的三维变换矩阵

时间:2017-09-14 14:10:31

标签: 3d transformation

我有一个坐标系A

示例:系统A的3个主矢量方向是:

e0=  [0.3898  -0.0910   0.9164]    
e1=  [0.6392   0.7431  -0.1981]
e2=  [-0.6629  0.6630   0.3478]

而且,我有一个带有三个单位矢量的笛卡尔坐标系B:

   nx=[1 0 0];  
   ny=[0 1 0]; 
   nz=[0 0 1]

如何在两个坐标系A和A之间找到变换矩阵C. B? enter image description here

1 个答案:

答案 0 :(得分:0)

你的基础向量形成了一个旋转矩阵,它提供了基础A中的点到规范基础的直接变换(例如,基础A中的[1,0,0]对应于规范坐标中的e0)。

A=[e0' e1' e2'];
Pcan=(A*P')';

或使用转置规则

Pcan=P*A';