Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 336900

Summary: Matrix determinant algorithm is possibly wrong
Product: z_Archived Reporter: Kristian Duske <kristian.duske>
Component: Gef3dAssignee: Project Inbox <gef3d.draw3d-inbox>
Status: CLOSED INVALID QA Contact:
Severity: normal    
Priority: P3 CC: developer
Version: unspecified   
Target Milestone: ---   
Hardware: PC   
OS: All   
Whiteboard:

Description Kristian Duske CLA 2011-02-11 02:37:52 EST
I am not sure, but I think the Math3DMatrix4f#determinant(IMatrix4f) method is wrong. It does not seem to develop the determinant after row 1, as it says in the comment. The determinants of the the comatrices are wrong (they seem to be calculated by the Sarrus method for 2x2 matrices instead of 3x3).
Comment 1 Jens Von Pilgrim CLA 2011-02-11 06:41:49 EST
Added long documentation on how the determinant is calculated, also implemented some tests. Seems as if everything works correctly. Renamed the local variables (and changed some signs) to make the algorithm clearer, however it worked correctly.

(I suggest to add a price for this bug: a cocktail at Becketts Kopf, what you think ;-) )