Index: trunk/src/lib/Makefile.am
===================================================================
--- trunk/src/lib/Makefile.am	(revision 5672)
+++ trunk/src/lib/Makefile.am	(revision 5673)
@@ -17,5 +17,5 @@
                             shell/libORXshell.a
 
-#libORXlibs_a_LIBDADD =      gui/gtk_gui/libORXgui.a \
+#libORXlibs_a_LIBDADD =     gui/gtk_gui/libORXgui.a \
                             gui/gl_gui/libORXglgui.a \
                             graphics/importer/libORXimporter.a \
@@ -42,4 +42,5 @@
                         util/executor/executor.cc \
                         math/vector.cc \
+                        math/matrix.cc \
                         math/curve.cc
 
@@ -59,4 +60,5 @@
                         util/multi_type.h \
                         util/executor/executor.h \
+                        math/matrix.h \
                         math/vector.h \
                         math/curve.h
Index: trunk/src/lib/Makefile.in
===================================================================
--- trunk/src/lib/Makefile.in	(revision 5672)
+++ trunk/src/lib/Makefile.in	(revision 5673)
@@ -58,5 +58,6 @@
 	ini_parser.$(OBJEXT) substring.$(OBJEXT) color.$(OBJEXT) \
 	helper_functions.$(OBJEXT) multi_type.$(OBJEXT) \
-	executor.$(OBJEXT) vector.$(OBJEXT) curve.$(OBJEXT)
+	executor.$(OBJEXT) vector.$(OBJEXT) matrix.$(OBJEXT) \
+	curve.$(OBJEXT)
 libORXlibs_a_OBJECTS = $(am_libORXlibs_a_OBJECTS)
 DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
@@ -215,5 +216,5 @@
 #                            shell/libORXshell.a
 
-#libORXlibs_a_LIBDADD =      gui/gtk_gui/libORXgui.a \
+#libORXlibs_a_LIBDADD =     gui/gtk_gui/libORXgui.a \
 #                            gui/gl_gui/libORXglgui.a \
 #                            graphics/importer/libORXimporter.a \
@@ -239,4 +240,5 @@
                         util/executor/executor.cc \
                         math/vector.cc \
+                        math/matrix.cc \
                         math/curve.cc
 
@@ -256,4 +258,5 @@
                         util/multi_type.h \
                         util/executor/executor.h \
+                        math/matrix.h \
                         math/vector.h \
                         math/curve.h
@@ -324,4 +327,5 @@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/helper_functions.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/ini_parser.Po@am__quote@
+@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/matrix.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/multi_type.Po@am__quote@
 @AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/null_parent.Po@am__quote@
@@ -521,4 +525,18 @@
 @AMDEP_TRUE@@am__fastdepCXX_FALSE@	$(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
 @am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o vector.obj `if test -f 'math/vector.cc'; then $(CYGPATH_W) 'math/vector.cc'; else $(CYGPATH_W) '$(srcdir)/math/vector.cc'; fi`
+
+matrix.o: math/matrix.cc
+@am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT matrix.o -MD -MP -MF "$(DEPDIR)/matrix.Tpo" -c -o matrix.o `test -f 'math/matrix.cc' || echo '$(srcdir)/'`math/matrix.cc; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/matrix.Tpo" "$(DEPDIR)/matrix.Po"; else rm -f "$(DEPDIR)/matrix.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='math/matrix.cc' object='matrix.o' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o matrix.o `test -f 'math/matrix.cc' || echo '$(srcdir)/'`math/matrix.cc
+
+matrix.obj: math/matrix.cc
+@am__fastdepCXX_TRUE@	if $(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -MT matrix.obj -MD -MP -MF "$(DEPDIR)/matrix.Tpo" -c -o matrix.obj `if test -f 'math/matrix.cc'; then $(CYGPATH_W) 'math/matrix.cc'; else $(CYGPATH_W) '$(srcdir)/math/matrix.cc'; fi`; \
+@am__fastdepCXX_TRUE@	then mv -f "$(DEPDIR)/matrix.Tpo" "$(DEPDIR)/matrix.Po"; else rm -f "$(DEPDIR)/matrix.Tpo"; exit 1; fi
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	source='math/matrix.cc' object='matrix.obj' libtool=no @AMDEPBACKSLASH@
+@AMDEP_TRUE@@am__fastdepCXX_FALSE@	DEPDIR=$(DEPDIR) $(CXXDEPMODE) $(depcomp) @AMDEPBACKSLASH@
+@am__fastdepCXX_FALSE@	$(CXX) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(AM_CXXFLAGS) $(CXXFLAGS) -c -o matrix.obj `if test -f 'math/matrix.cc'; then $(CYGPATH_W) 'math/matrix.cc'; else $(CYGPATH_W) '$(srcdir)/math/matrix.cc'; fi`
 
 curve.o: math/curve.cc
Index: trunk/src/lib/math/matrix.cc
===================================================================
--- trunk/src/lib/math/matrix.cc	(revision 5672)
+++ trunk/src/lib/math/matrix.cc	(revision 5673)
@@ -1,6 +1,20 @@
+/*
+   orxonox - the future of 3D-vertical-scrollers
+
+   Copyright (C) 2004 orx
+
+   This program is free software; you can redistribute it and/or modify
+   it under the terms of the GNU General Public License as published by
+   the Free Software Foundation; either version 2, or (at your option)
+   any later version.
+
+### File Specific:
+   main-programmer: Benjamin Grauer
+   co-programmer: Patrick Boenzli
+*/
+#include "matrix.h"
 
 #include <stdio.h>
 #include <math.h>
-#include "matrix.h"
 
 
Index: trunk/src/lib/math/matrix.h
===================================================================
--- trunk/src/lib/math/matrix.h	(revision 5672)
+++ trunk/src/lib/math/matrix.h	(revision 5673)
@@ -1,17 +1,9 @@
+/*!
+ * @file matrix.h
+ * @brief Definition of a 3x3 matrix.
+ */
+
 #include <math.h>
-
-/// @todo TAKE THIS OUT
-class Vector
-{
-  public:
-    Vector() {this->x = this->y = this->z = 0; };
-    Vector (float x, float y, float z) { this->x=x; this->y = y; this->z = z; };
-    inline const Vector& operator/= (float f) {if ((f == 0.0)) {this->x=0;this->y=0;this->z=0;} else {this->x /= f; this->y /= f; this->z /= f;} return *this; };
-
-    float x, y, z;
-    inline Vector cross (const Vector& v) const { return Vector(y * v.z - z * v.y, z * v.x - x * v.z, x * v.y - y * v.x ); }
-    inline float len() const { return sqrt (x*x+y*y+z*z); }
-};
-
+#include "vector.h"
 
 
Index: trunk/src/lib/math/test.cc
===================================================================
--- trunk/src/lib/math/test.cc	(revision 5672)
+++ 	(revision )
@@ -1,24 +1,0 @@
-
-#include "matrix.h"
-
-int main (int argc, char** argv)
-{
-
-        Matrix matrix( 0,  1, -1,
-                       1,  1,  0,
-                      -1,  0,  1);
-
-        Vector eigVc[3];
-
-        matrix.debug();
-//        matrix.getEigenValues();
-        matrix.getEigenVectors(eigVc[0], eigVc[1], eigVc[2]);
-
-        matrix = Matrix (0, 3, 1,
-                         3, 1, 0,
-                         1, 0, 1);
-       matrix.debug();
-        matrix.getEigenVectors(eigVc[0], eigVc[1], eigVc[2]);
-}
-
-
