Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Namespace Members | Class Members | File Members | Related Pages

Volume Class Reference

#include <Volume.h>

Collaboration diagram for Volume:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 Volume ()
 Volume (Volume &inst)
 ~Volume ()
Volumeoperator= (Volume &rhs)
bool convert (byte *data, dword XSize, dword YSize, dword ZSize, dword d_size, const vuTFIntensity &tfunc, dword component, float osamp=1.0f, float m_pad=1.0f, dword a_pad=0)
 read file.
void writeImage (void)
void setFilter (SpecFVRNS::Filter *filter)
void setSliceScale (float scale)
void setSliceBias (float bias)
void rotateSliceX (float alpha)
void rotateSliceY (float alpha)
void rotateSliceZ (float alpha)
void setViewMatrix (const vuMatrix &mat)
void setCamera (const vuCamera &cam)
void getCamera (vuCamera &cam) const
void clearSlice (void)
void computeSlice (void)
void computeSlice (dword x_stop, dword y_stop, dword x_pass, dword y_pass)
floatgetSliceData (void)
dword getSliceWidth (void) const
dword getSliceHeight (void) const
dword getInternalSliceWidth (void) const
dword getInternalSliceHeight (void) const
void setOversampling (float s)

Protected Member Functions

void setWrap (dword wrap)
void wrapVolume (void)
void interpolateSlice (void)
void interpolateSlice (dword x_stop, dword y_stop, dword x_pass, dword y_pass)
void scaleAndBias (void)
int vcoord (int x, int y, int z) const
int scoord (int x, int y) const
void preprocess (void)
void write_fvr (char *out) const
bool read_fvr (ifstream &fin, dword XSize, dword YSize, dword ZSize, dword d_size)

Protected Attributes

floatm_Volume
dword m_XSize
dword m_YSize
dword m_ZSize
dword m_Wrap
SpecFVRNS::Filterm_Filter
floatm_Slice
vuVector m_XStep
vuVector m_YStep
dword m_SliceXSize
dword m_SliceYSize
vuVector m_XAxis
vuVector m_YAxis
vuVector m_ZAxis
vuVector m_Origin
floatm_Image
dword m_ImageXSize
dword m_ImageYSize
dword m_ImageStep
floatm_SlicePtr
float m_Scale
float m_Bias
int m_CurImage
dword m_InnerXSize
dword m_InnerYSize
floatm_SSlice

Friends

class VolumeSet

Constructor & Destructor Documentation

Volume::Volume  ) 
 

Definition at line 16 of file Volume.cpp.

References SpecFVRNS::initTransforms(), m_Bias, m_CurImage, m_Image, m_ImageStep, m_Scale, m_Slice, m_SlicePtr, m_SSlice, m_Volume, and m_Wrap.

Here is the call graph for this function:

Volume::Volume Volume inst  ) 
 

Definition at line 42 of file Volume.cpp.

Volume::~Volume  ) 
 

Definition at line 46 of file Volume.cpp.

References SpecFVRNS::destroyTransform2D(), SpecFVRNS::destroyTransforms(), m_Image, m_Slice, m_SSlice, and m_Volume.

Here is the call graph for this function:


Member Function Documentation

void Volume::clearSlice void   ) 
 

Definition at line 427 of file Volume.cpp.

References dword, m_SliceXSize, and m_SliceYSize.

void Volume::computeSlice dword  x_stop,
dword  y_stop,
dword  x_pass,
dword  y_pass
 

Definition at line 651 of file Volume.cpp.

References interpolateSlice(), m_Slice, m_SliceXSize, m_SliceYSize, m_SSlice, SpecFVRNS::shift2D(), SpecFVRNS::shift_copy2D(), and SpecFVRNS::transform2D().

Here is the call graph for this function:

void Volume::computeSlice void   ) 
 

Definition at line 643 of file Volume.cpp.

References interpolateSlice(), m_Slice, m_SliceXSize, m_SliceYSize, m_SSlice, SpecFVRNS::shift2D(), SpecFVRNS::shift_copy2D(), and SpecFVRNS::transform2D().

Here is the call graph for this function:

bool Volume::convert byte data,
dword  XSize,
dword  YSize,
dword  ZSize,
dword  d_size,
const vuTFIntensity tfunc,
dword  component,
float  osamp = 1.0f,
float  m_pad = 1.0f,
dword  a_pad = 0
 

read file.

Definition at line 138 of file Volume.cpp.

References data, dword, find_dim(), SpecFVRNS::Filter::getWidth(), SpecFVRNS::initTransform2D(), m_Filter, m_Image, m_ImageXSize, m_ImageYSize, m_Origin, m_SliceXSize, m_SliceYSize, m_Volume, m_XSize, m_YSize, m_ZSize, preprocess(), SpecFVRNS::read_raw(), setOversampling(), setWrap(), and wrapVolume().

Referenced by VolumeSet::buildColourVolumes().

Here is the call graph for this function:

void Volume::getCamera vuCamera cam  )  const
 

Definition at line 346 of file Volume.cpp.

References m_YAxis, m_ZAxis, vuCamera::setLookAtVector(), and vuCamera::setUpVector().

Here is the call graph for this function:

dword Volume::getInternalSliceHeight void   )  const
 

Definition at line 368 of file Volume.cpp.

References dword.

dword Volume::getInternalSliceWidth void   )  const
 

Definition at line 363 of file Volume.cpp.

References dword.

float * Volume::getSliceData void   ) 
 

Definition at line 434 of file Volume.cpp.

References scaleAndBias().

Here is the call graph for this function:

dword Volume::getSliceHeight void   )  const
 

Definition at line 358 of file Volume.cpp.

References dword.

dword Volume::getSliceWidth void   )  const
 

Definition at line 353 of file Volume.cpp.

References dword.

void Volume::interpolateSlice dword  x_stop,
dword  y_stop,
dword  x_pass,
dword  y_pass
[protected]
 

Definition at line 519 of file Volume.cpp.

References dword, SpecFVRNS::Filter::getWidth(), m_Filter, m_Slice, m_SliceXSize, m_SliceYSize, m_Wrap, m_XSize, m_XStep, m_YSize, m_YStep, m_ZSize, and scoord().

Here is the call graph for this function:

void Volume::interpolateSlice void   )  [protected]
 

Definition at line 584 of file Volume.cpp.

References dword, SpecFVRNS::Filter::getWidth(), m_Filter, m_SliceXSize, m_SliceYSize, m_Wrap, m_XSize, m_YSize, and m_ZSize.

Referenced by computeSlice().

Here is the call graph for this function:

Volume & Volume::operator= Volume rhs  ) 
 

Definition at line 72 of file Volume.cpp.

void Volume::preprocess void   )  [protected]
 

Definition at line 95 of file Volume.cpp.

References SpecFVRNS::destroyTransform3D(), SpecFVRNS::initTransform3D(), m_Volume, m_XSize, m_YSize, m_ZSize, SpecFVRNS::shift3D(), and SpecFVRNS::transform3D().

Referenced by convert().

Here is the call graph for this function:

bool Volume::read_fvr ifstream &  fin,
dword  XSize,
dword  YSize,
dword  ZSize,
dword  d_size
[protected]
 

Definition at line 110 of file Volume.cpp.

References byte, m_Volume, m_Wrap, m_XSize, m_YSize, m_ZSize, and SpecFVRNS::read_raw_r().

Here is the call graph for this function:

void Volume::rotateSliceX float  alpha  ) 
 

Definition at line 279 of file Volume.cpp.

References m_Origin, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, and vuMatrix::makeRotate().

Here is the call graph for this function:

void Volume::rotateSliceY float  alpha  ) 
 

Definition at line 292 of file Volume.cpp.

References m_Origin, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, and vuMatrix::makeRotate().

Here is the call graph for this function:

void Volume::rotateSliceZ float  alpha  ) 
 

Definition at line 305 of file Volume.cpp.

References m_Origin, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, and vuMatrix::makeRotate().

Here is the call graph for this function:

void Volume::scaleAndBias void   )  [protected]
 

Definition at line 679 of file Volume.cpp.

References dword, and m_Scale.

Referenced by getSliceData().

int Volume::scoord int  x,
int  y
const [inline, protected]
 

Definition at line 99 of file Volume.h.

References m_SliceXSize.

Referenced by interpolateSlice(), and setOversampling().

void Volume::setCamera const vuCamera cam  ) 
 

Definition at line 331 of file Volume.cpp.

References vuCamera::getLookAtVector(), vuCamera::getRightVector(), vuCamera::getUpVector(), m_ImageXSize, m_ImageYSize, m_Origin, m_SliceXSize, m_SliceYSize, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, and vuVector::makeUnit().

Here is the call graph for this function:

void Volume::setFilter SpecFVRNS::Filter filter  ) 
 

Definition at line 264 of file Volume.cpp.

References m_Filter.

Referenced by VolumeSet::buildColourVolumes(), and VolumeSet::setFilter().

void Volume::setOversampling float  s  ) 
 

Definition at line 188 of file Volume.cpp.

References m_ImageStep, m_ImageXSize, m_ImageYSize, m_InnerXSize, m_InnerYSize, m_Slice, m_SlicePtr, m_SliceXSize, m_SliceYSize, m_SSlice, m_XAxis, m_XStep, m_YAxis, m_YStep, ODD, ROOT_TWO, and scoord().

Referenced by convert().

Here is the call graph for this function:

void Volume::setSliceBias float  bias  ) 
 

Definition at line 274 of file Volume.cpp.

References m_Bias.

void Volume::setSliceScale float  scale  ) 
 

Definition at line 269 of file Volume.cpp.

References m_Scale.

void Volume::setViewMatrix const vuMatrix mat  ) 
 

Definition at line 318 of file Volume.cpp.

References m_ImageXSize, m_ImageYSize, m_Origin, m_SliceXSize, m_SliceYSize, m_XAxis, m_XStep, m_YAxis, m_YStep, and m_ZAxis.

void Volume::setWrap dword  wrap  )  [protected]
 

Definition at line 259 of file Volume.cpp.

References m_Wrap.

Referenced by convert().

int Volume::vcoord int  x,
int  y,
int  z
const [inline, protected]
 

Definition at line 94 of file Volume.h.

References m_XSize, and m_YSize.

Referenced by wrapVolume().

void Volume::wrapVolume void   )  [protected]
 

Definition at line 374 of file Volume.cpp.

References dword, m_Volume, m_Wrap, m_XSize, m_YSize, m_ZSize, and vcoord().

Referenced by convert().

Here is the call graph for this function:

void Volume::write_fvr char *  out  )  const [protected]
 

Definition at line 80 of file Volume.cpp.

References m_Volume, m_XSize, m_YSize, m_ZSize, and SpecFVRNS::write_fvr_head().

Referenced by VolumeSet::write_fvr().

Here is the call graph for this function:

void Volume::writeImage void   ) 
 

Definition at line 224 of file Volume.cpp.

References byte, dword, m_CurImage, m_Image, m_SliceXSize, m_XSize, and m_YSize.


Friends And Related Function Documentation

friend class VolumeSet [friend]
 

Definition at line 19 of file Volume.h.


Member Data Documentation

float Volume::m_Bias [protected]
 

Definition at line 137 of file Volume.h.

Referenced by setSliceBias(), and Volume().

int Volume::m_CurImage [protected]
 

Definition at line 139 of file Volume.h.

Referenced by Volume(), and writeImage().

SpecFVRNS::Filter* Volume::m_Filter [protected]
 

Definition at line 116 of file Volume.h.

Referenced by convert(), interpolateSlice(), and setFilter().

float* Volume::m_Image [protected]
 

Definition at line 131 of file Volume.h.

Referenced by convert(), Volume(), writeImage(), and ~Volume().

dword Volume::m_ImageStep [protected]
 

Definition at line 134 of file Volume.h.

Referenced by setOversampling(), and Volume().

dword Volume::m_ImageXSize [protected]
 

Definition at line 132 of file Volume.h.

Referenced by convert(), setCamera(), setOversampling(), and setViewMatrix().

dword Volume::m_ImageYSize [protected]
 

Definition at line 133 of file Volume.h.

Referenced by convert(), setCamera(), setOversampling(), and setViewMatrix().

dword Volume::m_InnerXSize [protected]
 

Definition at line 141 of file Volume.h.

Referenced by setOversampling().

dword Volume::m_InnerYSize [protected]
 

Definition at line 142 of file Volume.h.

Referenced by setOversampling().

vuVector Volume::m_Origin [protected]
 

Definition at line 128 of file Volume.h.

Referenced by convert(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setCamera(), and setViewMatrix().

float Volume::m_Scale [protected]
 

Definition at line 136 of file Volume.h.

Referenced by scaleAndBias(), setSliceScale(), and Volume().

float* Volume::m_Slice [protected]
 

Definition at line 119 of file Volume.h.

Referenced by computeSlice(), interpolateSlice(), setOversampling(), Volume(), and ~Volume().

float* Volume::m_SlicePtr [protected]
 

Definition at line 135 of file Volume.h.

Referenced by setOversampling(), and Volume().

dword Volume::m_SliceXSize [protected]
 

Definition at line 123 of file Volume.h.

Referenced by clearSlice(), computeSlice(), convert(), interpolateSlice(), scoord(), setCamera(), setOversampling(), setViewMatrix(), and writeImage().

dword Volume::m_SliceYSize [protected]
 

Definition at line 124 of file Volume.h.

Referenced by clearSlice(), computeSlice(), convert(), interpolateSlice(), setCamera(), setOversampling(), and setViewMatrix().

float* Volume::m_SSlice [protected]
 

Definition at line 145 of file Volume.h.

Referenced by computeSlice(), setOversampling(), Volume(), and ~Volume().

float* Volume::m_Volume [protected]
 

Definition at line 109 of file Volume.h.

Referenced by convert(), preprocess(), read_fvr(), Volume(), wrapVolume(), write_fvr(), and ~Volume().

dword Volume::m_Wrap [protected]
 

Definition at line 113 of file Volume.h.

Referenced by interpolateSlice(), read_fvr(), setWrap(), Volume(), and wrapVolume().

vuVector Volume::m_XAxis [protected]
 

Definition at line 125 of file Volume.h.

Referenced by rotateSliceX(), rotateSliceY(), rotateSliceZ(), setCamera(), setOversampling(), and setViewMatrix().

dword Volume::m_XSize [protected]
 

Definition at line 110 of file Volume.h.

Referenced by convert(), interpolateSlice(), preprocess(), read_fvr(), vcoord(), wrapVolume(), write_fvr(), and writeImage().

vuVector Volume::m_XStep [protected]
 

Definition at line 121 of file Volume.h.

Referenced by interpolateSlice(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setCamera(), setOversampling(), and setViewMatrix().

vuVector Volume::m_YAxis [protected]
 

Definition at line 126 of file Volume.h.

Referenced by getCamera(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setCamera(), setOversampling(), and setViewMatrix().

dword Volume::m_YSize [protected]
 

Definition at line 111 of file Volume.h.

Referenced by convert(), interpolateSlice(), preprocess(), read_fvr(), vcoord(), wrapVolume(), write_fvr(), and writeImage().

vuVector Volume::m_YStep [protected]
 

Definition at line 122 of file Volume.h.

Referenced by interpolateSlice(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setCamera(), setOversampling(), and setViewMatrix().

vuVector Volume::m_ZAxis [protected]
 

Definition at line 127 of file Volume.h.

Referenced by getCamera(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setCamera(), and setViewMatrix().

dword Volume::m_ZSize [protected]
 

Definition at line 112 of file Volume.h.

Referenced by convert(), interpolateSlice(), preprocess(), read_fvr(), wrapVolume(), and write_fvr().


The documentation for this class was generated from the following files:
Generated on Wed Dec 15 21:21:03 2004 for vuVolume by  doxygen 1.3.9.1