RayCaster Class Reference

3D Raycaster More...

#include <RayCaster.h>

List of all members.

Public Member Functions

 RayCaster (void)
 ~RayCaster (void)
mat4 getViewMatrix ()
 Liefert die aktulle ViewMatrix an den Aufrufer.
void rotateView (vec3 axis, float angle)
 Rotiert die Anzeige um eine Axe und einen Winkel.
void setVolData (VolData *data)
 Setzt die aktuellen Volumsdaten.
void generateImage (bool status)
 Rendert ein Image.
void fastPreview ()
 Shear/Warp Preview (nicht verwendet momentan).
void setImageSize (int width, int height)
 Legt die Größe des Rendering-Windows fest (Firing Plane).
void setCanvasSize (int width, int height)
 Legt die Größe des Anzeige-Fensters fest.
void setHitBorder (int border)
 Legt den Grenzwert für FirstHist Raycasting fest.
void setMethode (int method)
 Legt die Raycasting Methode fest.
void setTrilinear (bool tri)
 Legt fest ob Trilinear gefiltert werden soll.
void setLight (bool l)
 Legt fest ob ein Phong Highlight verwenddt werden soll.
void setStepLength (float step)
 Legt die Sprungweite beim Strahl traversieren fest.
void setProgress (CProgressCtrl *p)
 Setzt Zeiger auf die RenderProgressBar.
void setInfo (CStatic *p)
 Setzt Zeiger auf die Info Anzeige.
char * GetErrorMessage (void)

Static Public Member Functions

static RayCasterGetSingleton (void)
static void Destroy (void)

Private Member Functions

Color renderRay (vec4 pos, vec4 dir)
 Traversiert einen Strahl mit FirstHit.
Color renderRayMaxInt (vec4 pos, vec4 dir)
 Traversiert einen Strahl mit Maximum Intensity Projection.
Color renderRayTransparency (vec4 pos, vec4 dir)
 Traversiert einen Strahl mit Compositing Ansatz.
int shearWarp (vec4 dir)
 Hilsfunktion für Shear/Warp Preview (nicht verwendet momentan).

Static Private Member Functions

static void Initialize (void)

Private Attributes

char szErrorMessage [80]
mat4 viewMatrix
VolDatadata
int imageWidth
int imageHeight
int canvasWidth
int canvasHeight
float aspect
float moveX
float moveY
BYTE * renderImage
pColpreviewImage
int * nextX
int hitBorder
GLuint texID
bool trilinear
bool useLight
GLuint tex
int methode
float stepLength
CProgressCtrl * prog
CStatic * info

Static Private Attributes

static RayCasterm_Singleton = 0


Detailed Description

3D Raycaster

Ein Singleton das für die gesamte 3D Anzeige der Volumnsdaten verantwortlich ist.


Constructor & Destructor Documentation

RayCaster::RayCaster void   ) 
 

RayCaster::~RayCaster void   ) 
 


Member Function Documentation

void RayCaster::Destroy void   )  [static]
 

void RayCaster::fastPreview  ) 
 

Shear/Warp Preview (nicht verwendet momentan).

void RayCaster::generateImage bool  status  ) 
 

Rendert ein Image.

Parameters:
status Legt fest ob schön oder nur Preview gerendert wird.

char * RayCaster::GetErrorMessage void   ) 
 

RayCaster & RayCaster::GetSingleton void   )  [static]
 

mat4 RayCaster::getViewMatrix  ) 
 

Liefert die aktulle ViewMatrix an den Aufrufer.

Returns:
die aktuelle ViewMatrix

void RayCaster::Initialize void   )  [static, private]
 

Color RayCaster::renderRay vec4  pos,
vec4  dir
[private]
 

Traversiert einen Strahl mit FirstHit.

Parameters:
pos Aktuelle Strahlposition
dir Richtung in der wir weitergehen

Color RayCaster::renderRayMaxInt vec4  pos,
vec4  dir
[private]
 

Traversiert einen Strahl mit Maximum Intensity Projection.

Parameters:
pos Aktuelle Strahlposition
dir Richtung in der wir weitergehen

Color RayCaster::renderRayTransparency vec4  pos,
vec4  dir
[private]
 

Traversiert einen Strahl mit Compositing Ansatz.

Parameters:
pos Aktuelle Strahlposition
dir Richtung in der wir weitergehen

void RayCaster::rotateView vec3  axis,
float  angle
 

Rotiert die Anzeige um eine Axe und einen Winkel.

Parameters:
axis Die Rotationsachse
angle Der Rotationswinkel

void RayCaster::setCanvasSize int  width,
int  height
 

Legt die Größe des Anzeige-Fensters fest.

Parameters:
width Breite des Fensters
height Höhe des Fensters

void RayCaster::setHitBorder int  border  ) 
 

Legt den Grenzwert für FirstHist Raycasting fest.

Parameters:
border Der Grenzwert

void RayCaster::setImageSize int  width,
int  height
 

Legt die Größe des Rendering-Windows fest (Firing Plane).

Parameters:
width Breite des Fensters
height Höhe des Fensters

void RayCaster::setInfo CStatic *  p  ) 
 

Setzt Zeiger auf die Info Anzeige.

void RayCaster::setLight bool  l  ) 
 

Legt fest ob ein Phong Highlight verwenddt werden soll.

Parameters:
l Phong Highlight?

void RayCaster::setMethode int  method  ) 
 

Legt die Raycasting Methode fest.

1 = FirstHist 2 = Maximum Intensity Projection 3 = Compositing

Parameters:
method Die Raycasting Methode

void RayCaster::setProgress CProgressCtrl *  p  ) 
 

Setzt Zeiger auf die RenderProgressBar.

void RayCaster::setStepLength float  step  ) 
 

Legt die Sprungweite beim Strahl traversieren fest.

Parameters:
step Sprungweite für Strahltraversion

void RayCaster::setTrilinear bool  tri  ) 
 

Legt fest ob Trilinear gefiltert werden soll.

Parameters:
tri Trilinear filtern?

void RayCaster::setVolData VolData data  ) 
 

Setzt die aktuellen Volumsdaten.

Parameters:
data Die aktuellen Volumsdaten

int RayCaster::shearWarp vec4  dir  )  [private]
 

Hilsfunktion für Shear/Warp Preview (nicht verwendet momentan).

Parameters:
dir Richtung in der wir weitergehen


Member Data Documentation

float RayCaster::aspect [private]
 

int RayCaster::canvasHeight [private]
 

int RayCaster::canvasWidth [private]
 

VolData* RayCaster::data [private]
 

int RayCaster::hitBorder [private]
 

int RayCaster::imageHeight [private]
 

int RayCaster::imageWidth [private]
 

CStatic* RayCaster::info [private]
 

RayCaster * RayCaster::m_Singleton = 0 [static, private]
 

int RayCaster::methode [private]
 

float RayCaster::moveX [private]
 

float RayCaster::moveY [private]
 

int* RayCaster::nextX [private]
 

pCol* RayCaster::previewImage [private]
 

CProgressCtrl* RayCaster::prog [private]
 

BYTE* RayCaster::renderImage [private]
 

float RayCaster::stepLength [private]
 

char RayCaster::szErrorMessage[80] [private]
 

GLuint RayCaster::tex [private]
 

GLuint RayCaster::texID [private]
 

bool RayCaster::trilinear [private]
 

bool RayCaster::useLight [private]
 

mat4 RayCaster::viewMatrix [private]
 


The documentation for this class was generated from the following files:
Generated on Wed Dec 7 00:31:16 2005 for Volviser by  doxygen 1.4.5