Subversion Repositories gelsvn

Rev

Rev 2 | Rev 89 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 2 Rev 12
Line 1... Line 1...
1
#ifndef __CGLA_MAT2X3F_H
1
#ifndef __CGLA_MAT2X3F_H__
2
#define __CGLA_MAT2X3F_H
2
#define __CGLA_MAT2X3F_H__
3
 
3
 
4
#include "Vec2f.h"
4
#include "Vec2f.h"
5
#include "Vec3f.h"
5
#include "Vec3f.h"
6
#include "ArithMatFloat.h"
6
#include "ArithMatFloat.h"
7
 
7
 
Line 17... Line 17...
17
	public:
17
    public:
18
		/// Construct Mat2x3f from two Vec3f vectors (vectors become rows)
18
      /// Construct Mat2x3f from two Vec3f vectors (vectors become rows)
19
		Mat2x3f(const Vec3f& _a, const Vec3f& _b): 
19
      Mat2x3f(const Vec3f& _a, const Vec3f& _b): 
20
			ArithMatFloat<Vec2f, Vec3f, Mat2x3f, 2> (_a,_b) {}
20
	ArithMatFloat<Vec2f, Vec3f, Mat2x3f, 2> (_a,_b) {}
21
 
21
 
22
		/// Construct 0 matrix.
22
      /// Construct NAN matrix.
23
		Mat2x3f() {}
23
      Mat2x3f() {}
24
 
-
 
25
		/// Construct matrix from array of values.
-
 
26
		Mat2x3f(const float* sa): ArithMatFloat<Vec2f, Vec3f, Mat2x3f, 2> (sa) {}
-
 
27
	};
24
    };
28
 
25
 
-
 
26
 
29
	/**  3x2 float matrix class.
27
  /**  3x2 float matrix class.
30
			 This class is useful for going from plane to 3D coordinates.
28
       This class is useful for going from plane to 3D coordinates.
31
	*/
29
  */
32
	class Mat3x2f: public ArithMatFloat<Vec3f, Vec2f, Mat3x2f, 3>
30
  class Mat3x2f: public ArithMatFloat<Vec3f, Vec2f, Mat3x2f, 3>
33
	{
31
    {
Line 37... Line 35...
37
		/** Construct matrix from three Vec2f vectors which become the 
35
      /** Construct matrix from three Vec2f vectors which become the 
38
				rows of the matrix. */
36
	  rows of the matrix. */
39
		Mat3x2f(const Vec2f& _a, const Vec2f& _b, const Vec2f& _c): 
37
      Mat3x2f(const Vec2f& _a, const Vec2f& _b, const Vec2f& _c): 
40
			ArithMatFloat<Vec3f, Vec2f, Mat3x2f, 3> (_a,_b,_c) {}
38
	ArithMatFloat<Vec3f, Vec2f, Mat3x2f, 3> (_a,_b,_c) {}
41
 
39
 
42
		/// Construct 0 matrix.
40
      /// Construct NAN matrix.
43
		Mat3x2f() {}
41
      Mat3x2f() {}
44
 
-
 
45
		/// Construct matrix from array of values.
-
 
46
		Mat3x2f(const float* sa): ArithMatFloat<Vec3f, Vec2f, Mat3x2f, 3> (sa) {}
-
 
47
 
-
 
48
	};
42
    };
49
 
43
 
50
 
-
 
51
}
44
}
52
#endif
45
#endif