Show
Ignore:
Timestamp:
01/21/08 16:07:56 (1 year ago)
Author:
cneumann
Message:

fixed: getTransform decomposes matrix into correct transformation

parts


The implementation of this functionality is from
Graphics Gems IV, article III.4 "Polar Matrix Decomposition".

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • trunk/Source/Base/Base/OSGMatrix.h

    r666 r1040  
    438438                          const ValueTypeT            c3     ) const; 
    439439 
     440    // helper functions for matrix decomposition 
     441    ValueType norm1_3x3   (void) const; 
     442    ValueType normInf_3x3 (void) const; 
     443     
     444    void adjointT_3x3     (TransformationMatrix       &result) const; 
     445    void polarDecompose   (TransformationMatrix       &Q, 
     446                           TransformationMatrix       &S, 
     447                           ValueType                  &det   ) const; 
     448    void spectralDecompose(TransformationMatrix       &SO, 
     449                           VectorType3f               &k     ) const; 
     450    void decompose        (VectorType3f               &t, 
     451                           ValueType                  &f, 
     452                           QuaternionType             &r, 
     453                           QuaternionType             &so, 
     454                           VectorType3f               &s     ) const; 
     455                           
    440456#ifdef __sgi 
    441457#pragma set woff 1424