Main Page | Class Hierarchy | Class List | File List | Class Members

TVolModell Class Reference

Interface für Volumsmodellklassen. More...

#include <TVolModell.h>

Inheritance diagram for TVolModell:

List of all members.

Public Member Functions

virtual TKoo3d< float > getLightDir ()=0
 gibt die Beleuchtungsrichtung zurück

virtual TFilterInterface * getFilter ()=0
 gibt den Filter zurück

virtual void getBoundingPlanes (TStdPlane< float > *array)=0
 Liefert die das Modell begrenzenden 6 ebenen zurück.

virtual float getAmbientCoeff ()=0
 gibt den Ambienzkoeffizienten der aktuellen Beleuchtung zurück

virtual float getSpecularCoeff ()=0
 gibt den Spekulärkoeffizienten der aktuellen Beleuchtung zurück

virtual float getDiffuseCoeff ()=0
 gibt den Diffuskoeffizienten der aktuellen Beleuchtung zurück

virtual int getSpecularExp ()=0
 gibt den Spekulärexponenten der aktuellen Beleuchtung zurück

virtual void setTransferFunction (TTransferFuncInterface *tf)=0
 setzt die Transferfunktion des Modells

virtual void setTransferFunction (unsigned int *transf)=0
 setzt die aktuelle Transferfunktion

virtual unsigned int getPixelFilteredAt (float x, float y, float z, int type)=0
 gibt eine durch einen Filter interpolierten Datensatz aus dem Modell zurück

virtual void getHistogrammArray (unsigned int *a, int size)=0
 gibt ein Histogramm zurück

virtual void setLighting (float ambient, float diffuse, float specular, int exponent)=0
 Setzt die Beleuchtungsparameter des Modells.

virtual void loadFromFile (QString &name)=0
 lädt ein Modell aus einer datei

virtual unsigned int getPixelAt (int x, int y, int z)=0
 gibt wie getPixelAtFiltered daten aus dem Modell zurueck

virtual int getSizeX ()=0
 gibt die Größe des modells in xrichtung zurück

virtual int getSizeY ()=0
 gibt die Größe des modells in yrichtung zurück

virtual void setLightDir (TKoo3d< float > &dir)=0
 Setzt die Beleuchtungsrichtungsrichtung.

virtual int getSizeZ ()=0
 gibt die Größe des modells in zrichtung zurück

virtual int getPixelMode ()=0
 gibt den aktuellen modus des modells zurück

virtual void setPixelMode (int mode)=0
 setzt den aktuellen modus des modells

virtual void calcShading (bool askUser)=0
 startet das shading

virtual QImage * getXSlice (QImage &imgBuff, QPoint &offs, int pos, int winS=0, int winE=0xfff)=0
 gibt eine slize in x richtung aus

virtual QImage * getYSlice (QImage &imgBuff, QPoint &offs, int pos, int winS=0, int winE=0xfff)=0
 gibt eine slize in y richtung aus

virtual QImage * getZSlice (QImage &imgBuff, QPoint &offs, int pos, int winS=0, int winE=0xfff)=0
 gibt eine slize in z richtung aus

virtual QImage * getXSlice (QImage &imgBuff, int pos, int renderMode=0, int sizeX=0, int sizeY=0, int winS=0, int winE=0xfff)=0
 gibt eine slize in x richtung aus

virtual QImage * getYSlice (QImage &imgBuff, int pos, int renderMode=0, int sizeX=0, int sizeY=0, int winS=0, int winE=0xfff)=0
 gibt eine slize in y richtung aus

virtual QImage * getZSlice (QImage &imgBuff, int pos, int renderMode=0, int sizeX=0, int sizeY=0, int winS=0, int winE=0xfff)=0
 gibt eine slize in z richtung aus

virtual unsigned int * getTransF ()=0
 gibt die transferfunktion zurück

virtual void getMaxValues (int *d)=0
 gibt die ausmaße des modells zurück

virtual void setFilter (TFilterInterface *f)=0
virtual TKoo3d< float > getGradient (int x, int y, int z)=0
virtual TKoo3d< float > getGradientInterpolated (float x, float y, float z)=0

Detailed Description

Interface für Volumsmodellklassen.

Diese Klasse besitzt nur rein virtuelle Methoden und stellt somit ein Interface für alle Modellklassen dar. Somit ist die Architektur leicht um neue Arten von Modellen erweiterbar. Volumsmodelle sind immer in einem bestimmten Modus der darüber entscheidet, wasfür daten gerade ausgelesen werden. Die Modie sind:

VOL_MOD_PIXELMODE_DENSITY 1 VOL_MOD_PIXELMODE_SHADED 2 VOL_MOD_PIXELMODE_TRANSFERF 3 VOL_MOD_PIXELMODE_GRADIENT 4


Member Function Documentation

virtual void TVolModell::calcShading bool  askUser  )  [pure virtual]
 

startet das shading

Diese methode fragt falls askUser true ist den benutzer nach den shadingparametern und führt danach das preshading durch. dieses wird im modus VOL_MOD_PIXELMODE_SHADED eingesetzt um die schattierten werte zurückzuliefern

Parameters:
askUser falls true wird der benutzer aufgefordert shadingparameter anzugeben

virtual float TVolModell::getAmbientCoeff  )  [pure virtual]
 

gibt den Ambienzkoeffizienten der aktuellen Beleuchtung zurück

Diese Methode muss den aktuellen Ambienzkoeffizienten zurückliefern

Returns:
aktuelle Ambienzkoeffizienten

virtual void TVolModell::getBoundingPlanes TStdPlane< float > *  array  )  [pure virtual]
 

Liefert die das Modell begrenzenden 6 ebenen zurück.

Diese Methode wird verwendet um die begrenzenden Ebenen zu erhalten, indem ein leeres array übergeben wird, welches 6 einträge haben muss.

Parameters:
aktuelle Beleuchtungsrichtung

virtual float TVolModell::getDiffuseCoeff  )  [pure virtual]
 

gibt den Diffuskoeffizienten der aktuellen Beleuchtung zurück

Diese Methode muss den aktuellen Ambienzkoeffizienten zurückliefern

Returns:
aktuelle Diffuskoeffizienten

virtual TFilterInterface* TVolModell::getFilter  )  [pure virtual]
 

gibt den Filter zurück

Diese Methode gibt den zur Zeit eingesetzten Filter zurück der eingesetzt wird falls getPixelAtFiltered aufgerufen wird

Returns:
aktuelle Beleuchtungsrichtung

virtual void TVolModell::getHistogrammArray unsigned int *  a,
int  size
[pure virtual]
 

gibt ein Histogramm zurück

Diese Methode gibt über a ein Histogramm zurück, wobei über size die größe des Histogramms angegeben werden kann. In das array wird dann die Anzahl der pixel mit der entsprechenden dichte eingetragen

Parameters:
a das array in das die pixelanzahlen eingetragen werden die größe des arrays

virtual TKoo3d<float> TVolModell::getLightDir  )  [pure virtual]
 

gibt die Beleuchtungsrichtung zurück

Diese Methode muss die aktuelle Beleuchtungsrichtung zurückliefern

Returns:
aktuelle Beleuchtungsrichtung

virtual void TVolModell::getMaxValues int *  d  )  [pure virtual]
 

gibt die ausmaße des modells zurück

Diese methode gibt über d die ausmaße des modells zurück

Parameters:
d ein zeiger auf ein 3 integer enthaltendes array in das die dimensionen des modells eingetragen werden.

virtual unsigned int TVolModell::getPixelAt int  x,
int  y,
int  z
[pure virtual]
 

gibt wie getPixelAtFiltered daten aus dem Modell zurueck

Diese Methode gibt je nach aktuellem Modus Daten aus dem Modell wobei nicht interpoliert wird

Parameters:
x x-position der daten
y y-position der daten
z z-position der daten

virtual unsigned int TVolModell::getPixelFilteredAt float  x,
float  y,
float  z,
int  type
[pure virtual]
 

gibt eine durch einen Filter interpolierten Datensatz aus dem Modell zurück

Diese Methode gibt einen Datenwert aus dem Modell zurück, wobei über den aktuellen modus entschieden wird welcher Natur die Daten sind

VOL_MOD_PIXELMODE_DENSITY Dichtedaten VOL_MOD_PIXELMODE_SHADED Schatierte Farbdaten VOL_MOD_PIXELMODE_TRANSFERF Farbdaten VOL_MOD_PIXELMODE_GRADIENT Gradienten als Farben kodiert

Parameters:
x x-position des auszulesenden datensatzes
y y-position des auszulesenden datensatzes
z z-position des auszulesenden datensatzes
Returns:
interpolierter datensatz

virtual int TVolModell::getPixelMode  )  [pure virtual]
 

gibt den aktuellen modus des modells zurück

Diese methode gibt den aktuellen modus zurück

Returns:
modus des modells setTransferFunction

virtual int TVolModell::getSizeX  )  [pure virtual]
 

gibt die Größe des modells in xrichtung zurück

Diese gibt die Größe des modells in xrichtung zurück

Returns:
dimension in x richtung

virtual int TVolModell::getSizeY  )  [pure virtual]
 

gibt die Größe des modells in yrichtung zurück

Diese gibt die Größe des modells in yrichtung zurück

Returns:
dimension in y richtung

virtual int TVolModell::getSizeZ  )  [pure virtual]
 

gibt die Größe des modells in zrichtung zurück

Diese methode gibt die Größe des modells in zrichtung zurück

Returns:
dimension in z richtung

virtual float TVolModell::getSpecularCoeff  )  [pure virtual]
 

gibt den Spekulärkoeffizienten der aktuellen Beleuchtung zurück

Diese Methode muss den aktuellen Ambienzkoeffizienten zurückliefern.

Returns:
aktuelle Spekulärkoeffizienten

virtual int TVolModell::getSpecularExp  )  [pure virtual]
 

gibt den Spekulärexponenten der aktuellen Beleuchtung zurück

Diese Methode muss den aktuellen Ambienzkoeffizienten zurückliefern

Returns:
aktuelle Ambienzkoeffizienten

virtual unsigned int* TVolModell::getTransF  )  [pure virtual]
 

gibt die transferfunktion zurück

Diese methode gibt das transferfunktionsarray zurück

Returns:
gibt einen zeiger auf die transferfunkion zurück setTransferFunction

virtual QImage* TVolModell::getXSlice QImage &  imgBuff,
int  pos,
int  renderMode = 0,
int  sizeX = 0,
int  sizeY = 0,
int  winS = 0,
int  winE = 0xfff
[pure virtual]
 

gibt eine slize in x richtung aus

Diese methode rendert eine slize des Modells in x richtung wobei bilinear gefiltert werden kann

Parameters:
imgBuff ein bild das beschrieben werden soll
renderMode der Modus in dem gerendert werden soll.
sizeX zielgröße x des zu rendernden bildes
sizeY zielgröße y des zu rendernden bildes
winS start des windowing
winE ende des windowing
pos die position der slice
Returns:
gibt das beschriebene image zurück

virtual QImage* TVolModell::getXSlice QImage &  imgBuff,
QPoint &  offs,
int  pos,
int  winS = 0,
int  winE = 0xfff
[pure virtual]
 

gibt eine slize in x richtung aus

Diese methode rendert eine slize des Modells in x richtung

Parameters:
imgBuff ein bild das beschrieben werden soll
offs ein offset der zu den koordinaten hinzuaddiert werden muss.
winS start des windowing
winE ende des windowing
pos die position der slice
Returns:
gibt das beschriebene image zurück

virtual QImage* TVolModell::getYSlice QImage &  imgBuff,
int  pos,
int  renderMode = 0,
int  sizeX = 0,
int  sizeY = 0,
int  winS = 0,
int  winE = 0xfff
[pure virtual]
 

gibt eine slize in y richtung aus

Diese methode rendert eine slize des Modells in y richtung wobei bilinear gefiltert werden kann

Parameters:
imgBuff ein bild das beschrieben werden soll
renderMode der Modus in dem gerendert werden soll.
sizeX zielgröße x des zu rendernden bildes
sizeY zielgröße y des zu rendernden bildes
winS start des windowing
winE ende des windowing
pos die position der slice
Returns:
gibt das beschriebene image zurück

virtual QImage* TVolModell::getYSlice QImage &  imgBuff,
QPoint &  offs,
int  pos,
int  winS = 0,
int  winE = 0xfff
[pure virtual]
 

gibt eine slize in y richtung aus

Diese methode rendert eine slize des Modells in y richtung

Parameters:
imgBuff ein bild das beschrieben werden soll
offs ein offset der zu den koordinaten hinzuaddiert werden muss.
winS start des windowing
winE ende des windowing
pos die position der slice
Returns:
gibt das beschriebene image zurück

virtual QImage* TVolModell::getZSlice QImage &  imgBuff,
int  pos,
int  renderMode = 0,
int  sizeX = 0,
int  sizeY = 0,
int  winS = 0,
int  winE = 0xfff
[pure virtual]
 

gibt eine slize in z richtung aus

Diese methode rendert eine slize des Modells in z richtung wobei bilinear gefiltert werden kann

Parameters:
imgBuff ein bild das beschrieben werden soll
renderMode der Modus in dem gerendert werden soll.
sizeX zielgröße x des zu rendernden bildes
sizeY zielgröße y des zu rendernden bildes
winS start des windowing
winE ende des windowing
pos die position der slice
Returns:
gibt das beschriebene image zurück

virtual QImage* TVolModell::getZSlice QImage &  imgBuff,
QPoint &  offs,
int  pos,
int  winS = 0,
int  winE = 0xfff
[pure virtual]
 

gibt eine slize in z richtung aus

Diese methode rendert eine slize des Modells in z richtung

Parameters:
imgBuff ein bild das beschrieben werden soll
offs ein offset der zu den koordinaten hinzuaddiert werden muss.
winS start des windowing
winE ende des windowing
pos die position der slice
Returns:
gibt das beschriebene image zurück

virtual void TVolModell::loadFromFile QString &  name  )  [pure virtual]
 

lädt ein Modell aus einer datei

Diese Methode lädt ein Modell aus der Datei mit dem Namen name

Parameters:
Dateiname 

virtual void TVolModell::setLightDir TKoo3d< float > &  dir  )  [pure virtual]
 

Setzt die Beleuchtungsrichtungsrichtung.

Mit dieser methode kann die richtung der beleuchtung des modells gesetzt werden

Parameters:
dir beleuchtungsrichtung

virtual void TVolModell::setLighting float  ambient,
float  diffuse,
float  specular,
int  exponent
[pure virtual]
 

Setzt die Beleuchtungsparameter des Modells.

Diese Methode wird verwendet um alle Beleuchtungsparameter des modells zu setzen.

Parameters:
ambient der zu setzende Ambienzkoeffizient.
diffuse der zu setzende Diffuskoeffizient.
specular der zu setzende Spekulärkoeffizient.
exponent der zu setzende Spekulärexponent (auch shinyness).

virtual void TVolModell::setPixelMode int  mode  )  [pure virtual]
 

setzt den aktuellen modus des modells

Diese methode setzt den aktuellen modus des modells

Parameters:
mode zu setzender modus setTransferFunction

virtual void TVolModell::setTransferFunction unsigned int *  transf  )  [pure virtual]
 

setzt die aktuelle Transferfunktion

Diese Methode setzt die Transferfunktion des Modells.

Parameters:
transf die Transferfunktion, wobei in dem Array von unsigned int das erste Byte der blauwert das zweite der grünwert der dritte der rotwert und der vierte der alphawert für die zugehörige dichte ist. das array muss genau 0xfff einträge enthalten.

virtual void TVolModell::setTransferFunction TTransferFuncInterface *  tf  )  [pure virtual]
 

setzt die Transferfunktion des Modells

Diese Methode setzt die Transferfunktion des Modells. Diese Funktion wird eingesetzt um die pixelfarbe zu bestimmen die die getpixel Methoden in dem Modus VOL_MOD_PIXELMODE_TRANSFERF zurückliefern.

Parameters:
tf die zu setzende Transferfunktion


The documentation for this class was generated from the following files:
Generated on Wed Dec 3 00:44:09 2003 for Volvis by doxygen 1.3.5