Matrix and Quaternion FAQ

signa111 pts0 comments

Matrix and Quaternion FAQ

The Matrix and Quaternions FAQ

Version 1.21 30th November 2003<br>Please mail feedback to matrix_faq@j3d.org<br>with a subject starting with MATRIX-FAQ<br>(otherwise my spam filter will simply kill your message).<br>Any additional suggestions or related questions are welcome.<br>Just send E-mail to the above address.<br>The latest copy of this FAQ can be found at the following web page:

http://www.j3d.org/matrix_faq/matrfaq_latest.html<br>Feel free to distribute or copy this FAQ as you please.

Contributions

Introduction I1: Steve ?????<br>Correction to Q55 until Q59:<br>Andreas Junghanns<br>Correction to Q50: Morten Ofstad<br>Note to Q39: Tom Nuydens<br>Corrections to Q29 and Q37: Eric Reiss<br>Clarification to Q56: Duncan Murdoch<br>Clarification to Q37: Ron Avitzur<br>Correction to Q1: Mona Wong<br>Corrections to Q36 and Q37: Eric Reiss<br>Improvement to Q34 and Q38: Jon Watte<br>Warning and alternative to Q58 and Q59: Paul Pedriana<br>Correction (and optimization [Lee]) to Q53: Eleanor Groundwater and Lee Morgan<br>Improvement to Q39: jhunpingco<br>Corrections to Q11 and optimization to Q12: Gordon<br>Corrections to Q54 to Q60: Eleanor Groundwater<br>Corrections and improvements to Q23 and Q24: Ben Houston<br>Addition to Q39: Jon Watte<br>Correction to Q61: Adam D. Moss<br>Addition of Q63: Mike Cline<br>Addition of I2: Jacob Marner<br>Correction to Q38 and inception of I2: Armin M�ller<br>Addition of Q60: Pablo Figueroa<br>Correntions and additions to Q14, Q16, Q21 and Q34: Tronster Hartley<br>Correction to Q12 and Q54: Frank DJ<br>Correction to Q34: Robert Funnell

History<br>I (Andreas) tried to find "hexapod@(no-spam)netcom.com" who seemed to have maintained<br>this for a while, but the site at netcom.com doesn't exist anymore,<br>emails bounce. Since I (and colleques) wasted quite some time figuring out<br>what was wrong with some of the algorithms given in the earlier versions of<br>this document, I decided to correct it and put it back on the web.<br>The formerly given sites for the location of these documents do<br>not exist anymore:<br>ftp://ftp.netcom.com/pub/he/hexapod/index.html<br>http://www.glue.umd.edu/~rsrodger<br>Versions, dates and links to local copies (so you can compare):<br>matrfaq_1.02.html: Version 1.2 2nd September 1997<br>matrfaq_1.04.html: Version 1.4 26th December 1998<br>matrfaq_1.06.html: Version 1.6 30th September 2000<br>matrfaq_1.07.html: Version 1.7 20th December 2000<br>matrfaq_1.08.html: Version 1.8 21th December 2000<br>matrfaq_1.09.html: Version 1.9 16th January 2001<br>matrfaq_1.10.html: Version 1.10 30th January 2001<br>matrfaq_1.11.html: Version 1.11 9th February 2001<br>matrfaq_1.12.html: Version 1.12 26th March 2001<br>matrfaq_1.13.html: Version 1.13 20th July 2001<br>matrfaq_1.14.html: Version 1.14 17th August 2001<br>matrfaq_1.15.html: Version 1.15 20th August 2001<br>matrfaq_1.16.html: Version 1.16 2nd October 2001<br>matrfaq_1.17.html: Version 1.17 30th November 2001<br>matrfaq_1.18.html: Version 1.18 27th January 2002<br>matrfaq_1.19.html: Version 1.19 20th March 2002<br>matrfaq_1.20.html: Version 1.20 31st January 2002<br>matrfaq_1.21.html: Version 1.21 30th November 2003

Please refrain from asking me math questions. I am only maintaining this FAQ<br>and have very little knowledge about the subject. But, if you have a<br>question that is not answered by this FAQ and later happen to find the<br>answer and believe it to be relevant for this FAQ (or its readers), please<br>send all relevant information, hopefully in a pre-digested form, to me to<br>be included here. Thanks!<br>If you prefer to appear as "anonymous" in the contributions list, let me<br>know, otherwise I'll just put you down with whatever name I can gather from<br>your email header.

Introduction<br>I1. Important note relating to OpenGL and this document<br>I2. Important note with respect to normalized inputs

Questions

BASICS<br>Q1. What is a matrix?<br>Q2. What is the order of a matrix?<br>Q3. How do I represent a matrix using the C/C++ programming languages?<br>Q4. What are the advantages of using matrices?<br>Q5. How do matrices relate to coordinate systems?

ARITHMETIC<br>Q6. What is the identity matrix?<br>Q7. What is the major diagonal matrix of a matrix?<br>Q8. What is the transpose of a matrix?<br>Q9. How do I add two matrices together?<br>Q10. How do I subtract two matrices?<br>Q11. How do I multiply two matrices together?<br>Q12. How do I square or raise a matrix to a power?<br>Q13. How do I multiply one or more vectors by a matrix?

DETERMINANTS AND INVERSES<br>Q14. What is the determinant of a matrix?<br>Q15. How do I calculate the determinant of a matrix?<br>Q16. What are Isotropic and Anisotropic matrices?<br>Q17. What is the inverse of a matrix?<br>Q18. How do I calculate the inverse of an arbitary matrix?<br>Q19. How do I calculate the inverse of an identity matrix?<br>Q20. How do I calculate the inverse of a rotation matrix?<br>Q21. How do I calculate the inverse of a matrix using Kramer's rule?<br>Q22. How do I calculate the inverse of a 2x2 matrix?<br>Q23. How do I calculate the inverse of a 3x3 matrix?<br>Q24. How do I calculate the inverse of a 4x4 matrix?<br>Q25. How do I calculate the inverse of a matrix using linear...

matrix html version matrfaq_1 calculate inverse

Related Articles