資源簡介
從旋轉矩陣計算得到四元數,代碼簡單,內附word說明文檔。如有不當之處還請多多指正。
代碼片段和文件信息
function?[q0?q1?q2?q3]=RMtoFE(T)
%%?Be?sure?T?is?a?rotation?matrix
[m?n]=size(T);
if?(m~=3||n~=3)
????error(‘Wrong?Rotation?matrix‘);
end
E=1.0e-15;
q0=sqrt(T(11)+T(22)+T(33)+1)/2;
%?to?avoid??0?divisor
if?q0
????q1=(T(32)-T(23))/4/q0;
????q2=(T(13)-T(31))/4/q0;
????q3=(T(21)-T(12))/4/q0;
else
????if?(T(12)*T(13))^2+(T(12)*T(23))^2+(T(13)*T(23))^2
????????MidValue=sqrt((T(12)*T(13))^2+(T(12)*T(23))^2+(T(13)*T(23))^2);
????????q1=T(12)*T(13)/MidValue;
????????q2=T(12)*T(23)/MidValue;
????????q3=T(13)*T(13)/MidValue;
????else
????????if?T(12) ????????????if?T(13) ????????????????if?T(11)>1-E
????????????????????q1=1;q3=0;q2=0;
????????????????else
????????????????????q1=0;
????????????????????q3=sqrt((1-T(22))/2);
????????????????
?屬性????????????大小?????日期????時間???名稱
-----------?---------??----------?-----??----
?????文件???????1218??2011-03-09?10:03??旋轉矩陣與四元數\RMtoFE.m
?????文件??????48128??2011-03-09?09:50??旋轉矩陣與四元數\四元數.doc
?????目錄??????????0??2011-03-09?10:08??旋轉矩陣與四元數
-----------?---------??----------?-----??----
????????????????49346????????????????????3
評論
共有 條評論