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 RayCaster & GetSingleton (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
VolData * data
int imageWidth
int imageHeight
int canvasWidth
int canvasHeight
float aspect
float moveX
float moveY
BYTE * renderImage
pCol * previewImage
int * nextX
int hitBorder
GLuint texID
bool trilinear
bool useLight
GLuint tex
int methode
float stepLength
CProgressCtrl * prog
CStatic * info

Static Private Attributes

static RayCaster * m_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