3x3Matrixklasse für 2D-Vektoren implemetierung
-
Ich möchte eine Matrixklasse für die Spieleprogrammierung erstellen, eine 3x3 Matrix die für 2D-vektoren mit homogeneous coordinates schreiben, aber ich weiss leider nicht, was für Funktionen diese Klasse bereitstellen muss.
-
ich hab ne algemeine matrixklasse angefangen zu schreiben die auf std::valarrays basiert. Falls es dich interessiert kann ich dir gerne den zugang zum quellcode geben...
template<class T> class valmatrix { private: std::valarray<std::valarray<T> > m_vals; public: //create an empty matrix valmatrix(); //create a m*n-matrix filled with T() valmatrix(int m, int n); //create a m*n-matrix filled with value v valmatrix(const T& v, int m, int n); //create a m*n-matrix from an array valmatrix(const T **a, int m, int n); //copy-Ctor valmatrix(const valmatrix<T>& rhs); valmatrix<T>& operator=(const valmatrix<T>& rhs); bool operator==(const valmatrix<T>& rhs) const; bool operator!=(const valmatrix<T>& rhs) const; int rows() const; int columns() const; std::valarray<T>& operator[](int i); const std::valarray<T>& operator[](int i) const; };
-
Anfänger2005 schrieb:
Ich möchte eine Matrixklasse für die Spieleprogrammierung erstellen, eine 3x3 Matrix die für 2D-vektoren mit homogeneous coordinates schreiben, aber ich weiss leider nicht, was für Funktionen diese Klasse bereitstellen muss.
Naja, die Funktionen, die du brauchst, weswegen du die Klasse schreibst, oder?
-
Aber ich weis nicht genau,welche Methoden ich im Hinblick auf die Zukunft noch brauchen kann,deswegen Frage ich.
-
Naja, es ist dein Dingens. Was dir jetzt nicht einfällt, kannst du später einfach noch dazubauen.
Du hast natürlich Recht, wenn du dir jetzt schon Gedanken macht, aber es kann wahrscheinlich kein Unbeteiligter hier sinnvoll sagen, was du in deinem Spiel brauchen könntest.