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

CMeshBuilder Class Template Reference

Dient zur Erzeugung von regulären Vertexgittern. More...

#include <CMeshBuilder.h>

List of all members.

Public Methods

Public Attributes


Detailed Description

template<int N, class T> class CMeshBuilder

Mit dem Klassentemplate CMeshBuilder können reguläre Vertexgitter erzeugt werden. Der Datentyp der Gitterelemente ist hierbei die CVector -Klasse. Die Anzahl der Vektorkomponenten wird über den Templateparameter N festgelegt und deren Datentyp über den Templateparameter T.

Über die Klassenmember wird mathematisch eine Ebene im Raum beschrieben. Auf dieser Ebene werden dann Gitterpunkte in äquidistanten Abständen generiert und in einem CGrid -Objekt abgelegt.

Precondition:
Der Templateparameter N muss mindestens zwei betragen. Der über den Templateparameter T fesgelegte Komponentendatentyp muss ein zu float oder int kompatibler Datentyp sein. Ferner müssen für den Datentypen T Überladungen für alle arithmetischen Operatoren existieren.


Constructor & Destructor Documentation

template<int N, class T>
CMeshBuilder< N, T >::CMeshBuilder<N, T> ( )
 

Der Standardkonstruktor initialisiert die Klassenmember wie folgt:

  1. Der Nullvektor stellt den Ursprung origin der Gitterebene dar.
  2. Dem Spannvektor u wird der erste Standardbasisvektor zugewiesen.
  3. Dem Spannvektor v wird der zweite Standardbasisvektor zugewiesen.
  4. Die Gitterausdehnung innerhalb des globalen Koordinatensystems ist 1.
  5. Die Auflösung des Gitters ist 2 x 2.


Member Function Documentation

template<int N, class T>
CGrid< CVector< N, T > > * CMeshBuilder< N, T >::build ( )
 

Die Methode build() erzeugt ein Gitter, welches auf der durch origin, v und u> parametrisierten Ebene liegt, und gibt einen Zeiger auf das erzeugte Objekt zurück. Die Vektoren v und u werden zuvor normiert, und danach mit width und height w während der Berechnung der Gitterpunkte skaliert.

Note:
Die Gitterauflösung muss mind. 2 x 2 betragen, da sonst ein NULL-Zeiger zurückgegeben wird!

Note:
Der Speicher für das zurückgegebene CGrid -Objekt wird dynamisch alloziiert und muss später mittels delete() wieder freigegeben werden.


Member Data Documentation

template<int N, class T>
T CMeshBuilder<N, T>::width
 

Der Member width gibt nicht die Anzahl der Spalten des zu erzeugenden CGrid -Objekts, sondern die horizontale Ausdehnung des Gitters im globalen Koordinatensystem.

template<int N, class T>
T CMeshBuilder<N, T>::height
 

Der Member height gibt nicht die Anzahl der Zeilen des zu erzeugenden CGrid -Objekts, sondern die vertikale Ausdehnung des Gitters im globalen Koordinatensystem.

template<int N, class T>
int CMeshBuilder<N, T>::horResolution
 

Die horizontale Auflösung bezeichnet hierbei die Anzahl der Spalten des zu erzeugenden CGrid -Objekts.

template<int N, class T>
int CMeshBuilder<N, T>::verResolution
 

Die vertikale Auflösung bezeichnet hierbei die Anzahl der Zeilen des zu erzeugenden CGrid -Objekts.


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