On Fri, 11 Jan 2002 12:14:50 -0000, "Alexandre Bento Freire"
>The problem is that x may be positive and y negative, and z negative.
>That is there one scale per axis
Then you are asking a question that has no well defined answer,
unless you are talking about a pure nonuniform scaling with no
rotation at all. Here's an example that proves it: Reflection in
the xy plane (i.e., a z scale of -1) concatenated with reflection in
the xz-plane (i.e. a y scale of -1) produces exactly the same result
as rotation of 180 degrees about the x axis with no reflections at
>> Find the determinant of the 3x3 non-translation portion of the matrix.
>> This value is:
>> det = (xy*yz - xz*yy)*zx + (xz*yx - xx*yz)*zy + (xx*yy - xy*yx)*zz
>> I think the determinant of the transpose is the same, so it doesn't matter
>> whether you address your matrix by rows first or columns first.
>> The sign of the determinant is the sign of the scale.