add MatrixCross

Revision:
5:93948a9bbde2
Parent:
3:48754fe86e08
Child:
6:aa5e94cddb3f
--- a/MatrixMath.h	Sun Oct 30 04:48:15 2011 +0000
+++ b/MatrixMath.h	Sun Oct 30 19:21:30 2011 +0000
@@ -1,28 +1,25 @@
 /**
+ * @brief  Version 0.9
  * @file   MatrixMath.h
  * @author Ernesto Palacios
  *
  * Created on 15 de septiembre de 2011, 09:44 AM.
  *
- *  Develop Under  GPL v3.0 License
- *  http://www.gnu.org/licenses/gpl-3.0.html
+ * Develop Under  GPL v3.0 License
+ * http://www.gnu.org/licenses/gpl-3.0.html
  *
  */
 
-#ifndef    MATRIXMATH_H
-#define    MATRIXMATH_H
+#ifndef  MATRIXMATH_H
+#define  MATRIXMATH_H
 
 #include "mbed.h"
 #include "Matrix.h"
 
 
 /**
- * @brief This class provides STATIC methods to perform operations over
- * Matrix Objects
- * version 0.9.
- *
- * Methods will be added as neccesary.
- *
+ * @brief This class provides STATIC methods to perform operations 
+ *        over Matrix Objects, version 0.9.
  */
 class MatrixMath{
 public:
@@ -31,14 +28,14 @@
     /**@brief
      * Transposes Matrix, return new Object.
      * @param Mat matrix to calculate
-     * @return the determinant
+     * @return Transposed Matrix
      */
     static Matrix Transpose( const Matrix& Mat );
 
 
     /**@brief
-     * Calculate the inverse of a nxn Matrix BUT check first if the determinant
-     * is != 0. Same matrix will be return if Det( Mat ) == 0.
+     * Calculate the inverse of a [n,n] Matrix BUT you check first if 
+     * the determinant is != 0, Same matrix will be return if Det( Mat ) == 0.
      * @param Mat matrix to calcute inverse.
      * @return Matrix Inverse
      */
@@ -46,20 +43,23 @@
 
 
     /**@brief
-     * Creates an identity Matrix, n x n.
+     * Creates an identity [n,n] Matrix
      * @param Rows Number of Rowns and Columns
-     * @return Identity Matrix of dimensions Rows x Rows
+     * @return Identity Matrix of dimensions [Rows,Rows]
      */
     static Matrix Eye( int Rows );
+    
 
     /**@brief
      * Returns the dot Product of any two same leght vectors.
-     * In this case a vector is defined as a [1,n] Matrix.
+     * In this case a vector is defined as a [1,n] or [n,1] Matrix.
+     * Very Flexible Function.
      * @param leftM First Vector
      * @param rightM Second Vector
      * @return Dot Product or Scalar Product.
      */    
     static float dot( const Matrix& leftM, const Matrix& rightM );
+    
 
     /**@brief Calculates the determinant of a Matrix.
      * @param Mat matrix to calculate.
@@ -87,14 +87,14 @@
 
 
     /**@brief
-     * Calculates the Rotation Matrix Transform along 'y' axis in radians.
+     * Calculates the Rotation Matrix Transform along 'z' axis in radians.
      * @param radians rotation angle.
-     * @return Rotation Matrix[4,4] along 'y' axis.
+     * @return Rotation Matrix[4,4] along 'z' axis.
      */
     static Matrix RotZ( float radians );
 
     /**@brief
-     * Calculates the Translation Matrix to coordenates, (x' y' z')
+     * Calculates the Translation Matrix to coordenates (x' y' z').
      * @param x axis translation
      * @param y axis translation
      * @param z axis translation