Schnittstelle zur Render-Engine. Beinhaltet OS-spezifisches Sourcecode. More...
#include <Canvas3D.h>
Public Member Functions | |
void | paint (void) |
Zentrale Methode zum Rendern der Map. | |
bool | init (char *fname) |
initialisiert die Canvas - Laedt die binaere Mapdatei | |
void | initialize (int widthCanvas, int heightCanvas, int width, int height) |
Initialisiert die Canvas und den Renderer. | |
void | renderFrame (void) |
Rendert ein Frame in das Image. | |
void | activateMouse (bool) |
Maus-Input aktivieren. | |
bool | inputKey (bool pressed, int key) |
Eingabe und Konvertierung eines keycodes. | |
bool | inputMouse (int x, int y) |
Eingabe fuer Maus-Input. | |
double | getFrameRate (void) |
Getter fuer die Framerate. | |
int | getTilesPerFrame (void) |
Getter fuer die Anzahl der gerenderten Tiles im aktuellen Frame. | |
int | getPartikelsPerFrame (void) |
Getter fuer die Anzahl der gerenderten Partikel im aktuellen Frame. | |
virtual | ~Canvas3D () |
Destruktor. | |
Static Public Member Functions | |
static Canvas3D * | getInstance () |
Liefert die Singleton-Instanz. | |
Public Attributes | |
BYTE * | m_pDiData |
Protected Member Functions | |
Canvas3D () | |
Konstruktor. | |
Private Member Functions | |
bool | createImage () |
Erstellt das Image (hier fuer Mac/OpenGL als einfachen Speicherbereich (BYTE-Array) | |
void | InitBitmap (BYTE *pDiData, int cxWinSize, int cyWinSize) |
Initialisiert die Bitmap. | |
void | flipImage (void) |
Windows-Bitmap --> OpenGL Image: 1. Ursprung von oben links nach unten links 2. BGR --> RGB. | |
Private Attributes | |
Engine * | m_engine |
int | m_widthCanvas |
int | m_heightCanvas |
int | m_height |
int | m_width |
bool | m_activateMouse |
int | m_startX |
int | m_startY |
BYTE * | m_pDib |
Static Private Attributes | |
static Canvas3D * | _instance = 0 |
Schnittstelle zur Render-Engine. Beinhaltet OS-spezifisches Sourcecode.
Canvas3D::Canvas3D | ( | ) | [protected] |
Konstruktor.
Canvas3D::~Canvas3D | ( | ) | [virtual] |
Destruktor.
void Canvas3D::activateMouse | ( | bool | activateMouse | ) |
Maus-Input aktivieren.
activateMouse |
bool Canvas3D::createImage | ( | ) | [private] |
Erstellt das Image (hier fuer Mac/OpenGL als einfachen Speicherbereich (BYTE-Array)
void Canvas3D::flipImage | ( | void | ) | [private] |
Windows-Bitmap --> OpenGL Image: 1. Ursprung von oben links nach unten links 2. BGR --> RGB.
double Canvas3D::getFrameRate | ( | void | ) |
Getter fuer die Framerate.
Canvas3D * Canvas3D::getInstance | ( | ) | [static] |
Liefert die Singleton-Instanz.
int Canvas3D::getPartikelsPerFrame | ( | void | ) |
Getter fuer die Anzahl der gerenderten Partikel im aktuellen Frame.
int Canvas3D::getTilesPerFrame | ( | void | ) |
Getter fuer die Anzahl der gerenderten Tiles im aktuellen Frame.
bool Canvas3D::init | ( | char * | datFile | ) |
initialisiert die Canvas - Laedt die binaere Mapdatei
datFile | Pfad-Dateiname+Extension der (binaeren) Mapdatei |
void Canvas3D::InitBitmap | ( | BYTE * | pDiData, |
int | cxWinSize, | ||
int | cyWinSize | ||
) | [private] |
Initialisiert die Bitmap.
pDiData | Pointer auf Bitmap |
cxWinSize | Breite der Bitmap |
cyWinSize | Hoehe der Bitmap |
void Canvas3D::initialize | ( | int | widthCanvas, |
int | heightCanvas, | ||
int | width, | ||
int | height | ||
) |
Initialisiert die Canvas und den Renderer.
widthCanvas | Breite der Canvas |
heightCanvas | Hoehe der Canvas |
width | Breite |
height | Hoehe |
bool Canvas3D::inputKey | ( | bool | pressed, |
int | key | ||
) |
Eingabe und Konvertierung eines keycodes.
pressed | true-->Taste wurde gedrueckt, false->Taste wurde losgelassen |
key | Keycode (Anhaengig vom Betriebssystem) |
bool Canvas3D::inputMouse | ( | int | dx, |
int | dy | ||
) |
Eingabe fuer Maus-Input.
dx | Horizontale Distanz (in Pixel) zwischen zwei Samples |
dy | Vertikale Distanz (in Pixel) zwischen zwei Samples |
void Canvas3D::paint | ( | void | ) |
void Canvas3D::renderFrame | ( | void | ) |
Canvas3D * Canvas3D::_instance = 0 [static, private] |
bool Canvas3D::m_activateMouse [private] |
Engine* Canvas3D::m_engine [private] |
int Canvas3D::m_height [private] |
int Canvas3D::m_heightCanvas [private] |
BYTE* Canvas3D::m_pDib [private] |
BYTE* Canvas3D::m_pDiData |
int Canvas3D::m_startX [private] |
int Canvas3D::m_startY [private] |
int Canvas3D::m_width [private] |
int Canvas3D::m_widthCanvas [private] |