Bobo.Bobo

05-23-2004, 12:12 AM

Hi,

I have couple implementations of matrix multiplication and I found that there are 2 ways of doing it:

I tried to do something like that:

matrix.identity();

matrix.translate(1, 2, 3);

matrix.rotate(axis, angle);

and then I have 2 diffrent results. One of them changed the values 1, 2, 3 in 'translation' positions ([0,3], [1,3], [2,3]) and the second haven't. When I changed order of operations in one implementation (first rotation after that translation) the results were the same.

What's going on? In one implementation I've to first rotate then translate and in the second I've to translate and after that rotate.

I have couple implementations of matrix multiplication and I found that there are 2 ways of doing it:

I tried to do something like that:

matrix.identity();

matrix.translate(1, 2, 3);

matrix.rotate(axis, angle);

and then I have 2 diffrent results. One of them changed the values 1, 2, 3 in 'translation' positions ([0,3], [1,3], [2,3]) and the second haven't. When I changed order of operations in one implementation (first rotation after that translation) the results were the same.

What's going on? In one implementation I've to first rotate then translate and in the second I've to translate and after that rotate.