00001
00009 #ifndef TG_MATRIX3
00010 #define TG_MATRIX3
00011
00012 #ifndef PI
00013 #define PI 3.14159265358979323846f
00014 #endif
00015
00016 #include <math.h>
00017
00018 #include <blort/TomGine/tgVector3.h>
00019
00020 namespace TomGine{
00021
00025 class tgMatrix3
00026 {
00027 private:
00028
00029 public:
00030 float m[9];
00031
00032 tgMatrix3();
00033 tgMatrix3(const tgMatrix3 &m);
00034 tgMatrix3(tgVector3 x, tgVector3 y, tgVector3 z);
00035 tgMatrix3(float m0, float m1, float m2,
00036 float m3, float m4, float m5,
00037 float m6, float m7, float m8);
00038
00039 tgMatrix3 operator+(tgMatrix3 v);
00040 tgMatrix3 operator-(tgMatrix3 v);
00041 tgMatrix3 operator*(tgMatrix3 v);
00042 tgMatrix3 operator*(float m);
00043 tgVector3 operator*(tgVector3 v);
00044
00045 void transpose();
00046 };
00047
00048 }
00049
00050
00051 #endif