Main Page   Modules   Class Hierarchy   Compound List   File List   Compound Members   File Members   Related Pages  

CMatrix Class Template Reference

Einfache Matrixklasse. More...

#include <CMatrix.h>

List of all members.

Public Methods

Public Attributes


Detailed Description

template<int N, class T> class CMatrix

Das Klassentemplate CMatrix implementiert eine quadratische N x N Matrix mit Komponenten vom Datentyp T. Die nötigen arithmetischen Operatoren wurden überschrieben, so dass es möglich ist, alle Rechenoperationen durchzuführen, die auf Matrizen im mathematischen Sinne definiert sind.

Precondition:
Der Templateparameter N muss mindestens eins betragen. Der durch den Templateparameter T spezifizierte Komponentendatentyp muss in irgendeiner Weise in den Typ int oder float konvertierbar sein. Ferner müssen alle gängigen arithmetischen Operatoren für den Datentyp T überladen worden sein.


Constructor & Destructor Documentation

template<int N, class T>
CMatrix<N, T>::CMatrix<N, T> ( ) [inline]
 

Der Standardkonstruktor erzeugt eine Null-Matrix, d.h. alle Elemente werden mit 0 initialisiert.

template<int N, class T>
CMatrix<N, T>::CMatrix<N, T> ( T d[N][N] ) [inline]
 

Der Konvertierkonstruktor erzegut eine Matrix auf der Basis eines zweidimensionalen Arrays mit den Ausmaßen N x N, welches Elemente vom Datentyp T beinhlatet. Dabei wird das Array \t d[] mittels memmove() in das Komponentenarray kopiert.

template<int N, class T>
template<class F>
CMatrix<N, T>::CMatrix<N, T> ( const CMatrix< N, F > & s ) [inline]
 

Der Kopierkonstruktor erzeugt ein neues CMatrix - Objekt auf der basis eines anderen CMatrix - Objekts, welches die gleichen Maße aufweisen muss, aber einen anderen Elementtyp F aufweisen kann, der zu T kompatibel ist. Die Elementdaten werden deswegen komponentenweise kopiert.


Member Function Documentation

template<int N, class T>
void CMatrix< N, T >::makeIdentity ( )
 

Die Routine initialisiert die Diagonalelemente der Matrix mit dem Wert 1, alle übrigen mit dem Wert 0.

template<int N, class T>
void CMatrix< N, T >::clear ( )
 

Die Routine initialisiert alle Matrixkomponenten mit dem Wert 0.

template<int N, class T>
void CMatrix< N, T >::transpose ( )
 

Dabei werden die Elemente c[i][j] und c[j][i] miteinander vertauscht.

template<int N, class T>
CMatrix< N, T > & CMatrix<N, T>::operator+= ( const CMatrix< N, T > & a ) [inline]
 

Addiert die Matrix a zur der sich links vom "+="-Operator befindenden Matrix. Dabei wird eine komponentenweise Addition durchgeführt.

template<int N, class T>
CMatrix< N, T > & CMatrix<N, T>::operator-= ( const CMatrix< N, T > & a ) [inline]
 

Subtrahiert die Matrix a von der sich links vom "+="-Operator befindenden Matrix. Dabei wird eine komponentenweise Subtraktion durchgeführt.

template<int N, class T>
CMatrix< N, T > & CMatrix<N, T>::operator *= ( const T f ) [inline]
 

Multipliziert die sich links vom "+="-Operator befindende Matrix mit dem Skalaren Wert f . Dabei wird eine komponentenweise Multiplikation durchgeführt.

template<int N, class T>
CMatrix< N, T > & CMatrix<N, T>::operator/= ( const T f ) [inline]
 

Dividiert die sich links vom "+="-Operator befindende Matrix durch den Skalaren Wert f . Dabei wird eine komponentenweise Division durchgeführt.


Member Data Documentation

template<int N, class T>
T CMatrix<N, T>::c
 

Das zweidimensionale Array speichert N x N Komponenten vom Datentyp T.


The documentation for this class was generated from the following file:
Generated at Fri Apr 19 16:53:06 2002 for GLFramework by doxygen1.2.6 written by Dimitri van Heesch, © 1997-2001