I think I found bugs in transform(AffineTransform3D trans) :
-calculation is done in 2D although we are in 3D
(coefficients m2? and m?3 are not calculated) ;
-it does not fulfil "line by column" algorithm,
for instance :
double n00 = m00 * trans.m00 + m10 * trans.m01;
should be :
double n00 = m00 * trans.m00 + m01 * trans.m10 + m02 * trans.m20;
Same problems in preConcatenate(AffineTransform3D trans).
Regards,
Bernard
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
thanks for reporting! I have fixed this, the new version is available from the subversion repository. I have also changed the method signature (returns a new transform instead of changing the local version).
regards,
David
If you would like to refer to this comment somewhere else in this project, copy and paste the following link:
Hi David,
I think I found bugs in transform(AffineTransform3D trans) :
-calculation is done in 2D although we are in 3D
(coefficients m2? and m?3 are not calculated) ;
-it does not fulfil "line by column" algorithm,
for instance :
double n00 = m00 * trans.m00 + m10 * trans.m01;
should be :
double n00 = m00 * trans.m00 + m01 * trans.m10 + m02 * trans.m20;
Same problems in preConcatenate(AffineTransform3D trans).
Regards,
Bernard
Hi Bernard,
thanks for reporting! I have fixed this, the new version is available from the subversion repository. I have also changed the method signature (returns a new transform instead of changing the local version).
regards,
David