找回密码
 注册
Simdroid-非首页
查看: 57|回复: 0

到底是程序的问题还是思路的问题呢?

[复制链接]
发表于 2011-1-27 23:43:09 | 显示全部楼层 |阅读模式 来自 美国
昨天想起之前考虑过标准正交基和旋转变换矩阵的问题,所以编了一个小程序,如下:
BRP = eul2r(pi/6,pi/4,pi/3);
L1P = [-0.866;0;-0.5]; L2P = [0;0;-1];
L1B = BRP*L1P; L2B = BRP*L2P;
B = Ortho_basis(L1B,L2B);
P = Ortho_basis(L1P,L2P);
R = B1*inv(P);

function A = Ortho_basis(a1,a2)
    beta1 = a1;
    beta2 = a2-(dot(a2,beta1)/dot(beta1,beta1))*beta1;
    a1 = beta1/norm(beta1);
    a2 = beta2/norm(beta2);
    a3 = cross(a1,a2);
    A = [a1';a2';a3'];
end
本意是想给定一个欧拉旋转矩阵BRP和P坐标系中两个单位向量L1P和L2P
将这两个单位向量经BRP旋转变换后得到在B坐标系中相应的单位向量L1B=BRP*L1P和L2B=BRP*L2P,
然后想通过L1P与L1B,L2P与L2B,这两对向量之间的关系反求出其欧拉旋转变换矩阵R,
反求思路是由L1P和L2P得出P坐标系中的标准正交基P,由L1B和L2B得出B坐标系中的标准正交基B,然后由R*P=B     R=B*inv(P)算出R

如果这个思路没问题的话,应该是R=BRP的吧,但是为什么我得出的R不等于BRP呢?
请教下高手,是我的程序有错误,还是利用标准正交基来求欧拉旋转变换矩阵的思路就不对呢?
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Simapps系列直播

Archiver|小黑屋|联系我们|仿真互动网 ( 京ICP备15048925号-7 )

GMT+8, 2024-10-6 13:22 , Processed in 0.033142 second(s), 12 queries , Gzip On, MemCache On.

Powered by Discuz! X3.5 Licensed

© 2001-2024 Discuz! Team.

快速回复 返回顶部 返回列表