作者blackchicke (我要加油)
看板GameDesign
标题[请益] 想请教Ogre内的SVD函式
时间Wed Mar 3 02:38:20 2010
这两天一直在试Ogre::Matrix3内的SVD函式,看它的API的用法是
void Ogre::Matrix3::SingularValueDecomposition ( Matrix3 & rkL,
Vector3 & rkS,
Matrix3 & rkR
) const
於是我就试了一下这个函式用法(程式码如下)
Matrix3 *ma = new Matrix3(4.0f,0.0f,0.0f
,3.0f,-5.0f,0.0f
,0.0f,0.0f,1.0f);
Matrix3 R;
Matrix3 L;
Vector3 S;
ma->SingularValueDecomposition(L , S , R);
想说这样出来L,S,R的结果就会是我的SVD内的V,S,U....可是出来的结果一直都不对
因为我这边有上述矩阵分解的答案了, 想请问有用过Ogre的SVD函式分解的人
是我的函式用法错误吗??还是这个函式不是用来作SVD的(那它函式名称何必写
SingularValueDecomposition...>.<)
希望版上的大家给我一些指引,我卡很久了真的不知道问题出在哪里,先谢谢大家了^^
顺便附上V,S,U的正确答案
V = 0.7071 -0.7071 0 S = 6.3245 0 0
0.7071 0.7071 0 0 3.1622 0
0 0 1 0 0 1
U = 0.4472 0.8944 0
0.8944 -0.4472 0
0 0 1
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 115.43.152.88
1F:推 LPH66:Ogre做出来的答案是多少? 03/03 02:57