Hello Michael,
On 2014-08-15 14:09, Michael Raab wrote:
> If I try to decompose 2 Matrices which are nearly the same I get a
> result scale vector that has switch axis. Here's an example:
> Matrix 1:
> 1.040 -1.040 0.000 0.000
> 0.707 0.707 0.000 0.000
> 0.000 0.000 1.000 0.000
> 0.000 0.000 0.000 1.000
> Result 1:
> Rotation 0, 0, 45
> Scale 1.47031, 1, 1
> Scale Orientation 0, 0, -0.382683, 0.92388
> Matrix 2:
> 1.046 -1.046 0.000 0.000
> 0.707 0.707 0.000 0.000
> 0.000 0.000 1.000 0.000
> 0.000 0.000 0.000 1.000
> Result 2:
> Rotation: 0, 0, 45
> Scale: 1, 1.47986, 1
> Scale Orientation: 0, 0, 0.382683, 0.92388
> Has someone an explanation for this?
assuming that recombining this back into matrices yields the starting
matrices (i.e. it is not a bug in the decomposition) this would be
caused by a degree of freedom in the algorithm.
I can think of the following options:
- figure out where this degree of freedom is and make choose the scale
orientation more consistently.
- can you use a ComponentTransform instead of a plain Transform and only
modify the individual components. That would make the decomposed form
the canonical representation and only build the matrix from those.
- can you make assumptions about the matrix, e.g. is it composed from
translation, rotation, and (uniform) scale only?
Cheers,
Carsten
------------------------------------------------------------------------------
_______________________________________________
Opensg-users mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/opensg-users