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

vuFourierVolume< SIZE > Class Template Reference

#include <vuFourierVolume.h>

Inheritance diagram for vuFourierVolume< SIZE >:

Inheritance graph
[legend]
Collaboration diagram for vuFourierVolume< SIZE >:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 vuFourierVolume ()
 vuFourierVolume (vuFourierVolume< SIZE > &inst)
 ~vuFourierVolume ()
vuFourierVolume< SIZE > & operator= (vuFourierVolume< SIZE > &rhs)
void setFilter (vuFourierFilter *filter)
vuFourierFiltergetFilter ()
void setCamera (const vuCamera *camera)
void setViewVectors (const vuVector &view, const vuVector &up, const vuVector &right)
void clearSlice ()
void computeSlice ()
void transformSlice ()
void computeSlice (dword x_stop, dword y_stop, dword x_pass, dword y_pass)
dword getImageWidth () const
dword getImageHeight () const
dword getSliceWidth () const
dword getSliceHeight () const
dword getXSize ()
dword getYSize ()
dword getZSize ()
floatgetSliceData () const
void setOversampling (float s)
dword computeDimensions (dword XSize, dword YSize, dword ZSize, float mult_pad, dword add_pad)
void setWrap (dword wrap)
dword getWrap ()
void interpolateSlice ()
void interpolateSlice (dword x_stop, dword y_stop, dword x_pass, dword y_pass)
bool isInitialized ()
bool writeSpatialVolume (const char *fileName, vuProgressHandler *handler=NULL) const
 converts the frequency volume back into the spatial domain representation and writes the result to fileName
void setRenderMethod (dword renderMethod)
dword getRenderMethod ()
void setScale (float scale)
float getScale ()
void fitScale ()
void setBias (float bias)
float getBias ()
void fitBias ()
bool getIsChannelActive (dword idx)
void setIsChannelActive (dword idx, bool flag)
void setIsReRendering (bool flag)
bool getIsReRendering ()
vuFixelMap< SIZE, float > * getUnscaledImage ()
void computeUnscaledImage (bool doSlicing=true)
void glResize (dword width, dword height)
void render ()
void computeUnscaledImage (vuFixelMap< SIZE, float > *&image, word method, bool doSlicing=true)
void computeUnscaledImage (vuFixelMap< SIZE, float > *&image, float &minVal, float &maxVal, word method, bool doSlicing=true)
bool readFourierFromFile (const char *fileName, dword wrap=4, float s=1.0)
 reads an already preprocessed fourier volume from filesystem
bool writeFourierToFile (const char *fileName, vuProgressHandler *handler=NULL) const
 writes the preprocessed fourier volume to a file can be re-read by readFourierFromFile()
void write_fvr (char *out) const
bool read_fvr (ifstream &fin, dword XSize, dword YSize, dword ZSize, dword d_size)

Static Public Member Functions

void calcViewVectors (vuVector &lookAt, vuVector &up, vuVector &right)
void shift2D (float *x, dword XSize, dword YSize)
void shiftCopy2D (float *dest, float *src, dword XSize, dword YSize)

Protected Member Functions

void wrapVolume (float *volume)
void wrapAndInitialize (float overSampling)
int vcoord (int x, int y, int z) const
int scoord (int x, int y) const
void loadWisdom ()
void saveWisdom ()
void transform2D (float *x)
void destroyTransform2D ()
void _copyImageAndFindMinMax (vuFixelMap< SIZE, float > *image, float *slice, float &minVal, float &maxVal, word method)

Protected Attributes

floatm_Volume
dword m_XSize
dword m_YSize
dword m_ZSize
dword m_Wrap
vuFourierFilterm_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
dword m_ImageXSize
dword m_ImageYSize
dword m_ImageStep
floatm_SlicePtr
dword m_InnerXSize
dword m_InnerYSize
fftwnd_plan m_Plan2D
dword m_RenderMethod
float m_Scale
float m_Bias
bool m_Channels [SIZE]
bool m_IsReRendering
vuFixelMap< SIZE, float > * m_UnscaledImage

template<int SIZE>
class vuFourierVolume< SIZE >


Constructor & Destructor Documentation

template<int SIZE>
vuFourierVolume< SIZE >::vuFourierVolume  ) 
 

template<int SIZE>
vuFourierVolume< SIZE >::vuFourierVolume vuFourierVolume< SIZE > &  inst  ) 
 

template<int SIZE>
vuFourierVolume< SIZE >::~vuFourierVolume  ) 
 


Member Function Documentation

template<int SIZE>
void vuFourierVolume< SIZE >::_copyImageAndFindMinMax vuFixelMap< SIZE, float > *  image,
float slice,
float minVal,
float maxVal,
word  method
[protected]
 

template<int SIZE>
void vuFourierVolume< SIZE >::calcViewVectors vuVector lookAt,
vuVector up,
vuVector right
[static]
 

Referenced by vuFourierCluster< SIZE, TYPE >::handleSlice(), vuSimpleFBR< SIZE, TYPE >::OnButtonSnap2View(), and vuFourierCluster< SIZE, TYPE >::weightView().

template<int SIZE>
void vuFourierVolume< SIZE >::clearSlice  ) 
 

Referenced by vuFourierVolume< S >::interpolateSlice().

template<int SIZE>
dword vuFourierVolume< SIZE >::computeDimensions dword  XSize,
dword  YSize,
dword  ZSize,
float  mult_pad,
dword  add_pad
 

Referenced by vuFourierCluster< SIZE, TYPE >::initializeVolume().

template<int SIZE>
void vuFourierVolume< SIZE >::computeSlice dword  x_stop,
dword  y_stop,
dword  x_pass,
dword  y_pass
 

template<int SIZE>
void vuFourierVolume< SIZE >::computeSlice  ) 
 

Referenced by vuFourierClusterN< SIZE, TYPE >::computeSlice().

template<int SIZE>
void vuFourierVolume< SIZE >::computeUnscaledImage vuFixelMap< SIZE, float > *&  image,
float minVal,
float maxVal,
word  method,
bool  doSlicing = true
 

template<int SIZE>
void vuFourierVolume< SIZE >::computeUnscaledImage vuFixelMap< SIZE, float > *&  image,
word  method,
bool  doSlicing = true
 

template<int SIZE>
void vuFourierVolume< SIZE >::computeUnscaledImage bool  doSlicing = true  ) 
 

Referenced by vuSimpleFVRCanvas::_renderImage(), vuSimpleFVRCanvas::_renderImageOld(), vuFourierVolume< S >::computeUnscaledImage(), vuFourierClusterN< SIZE, TYPE >::computeUnscaledImage(), and vuFourierVolume< S >::render().

template<int SIZE>
void vuFourierVolume< SIZE >::destroyTransform2D  )  [protected]
 

Referenced by vuFourierVolume< S >::setOversampling(), and vuFourierVolume< S >::~vuFourierVolume().

template<int SIZE>
void vuFourierVolume< SIZE >::fitBias  ) 
 

template<int SIZE>
void vuFourierVolume< SIZE >::fitScale  ) 
 

template<int SIZE>
float vuFourierVolume< SIZE >::getBias  ) 
 

template<int SIZE>
vuFourierFilter* vuFourierVolume< SIZE >::getFilter  ) 
 

template<int SIZE>
dword vuFourierVolume< SIZE >::getImageHeight  )  const
 

Referenced by vuFourierClusterN< SIZE, TYPE >::getImageHeight().

template<int SIZE>
dword vuFourierVolume< SIZE >::getImageWidth  )  const
 

Referenced by vuFourierClusterN< SIZE, TYPE >::getImageWidth().

template<int SIZE>
bool vuFourierVolume< SIZE >::getIsChannelActive dword  idx  ) 
 

template<int SIZE>
bool vuFourierVolume< SIZE >::getIsReRendering  ) 
 

Reimplemented in vu1712_1< SIZE >.

Referenced by vu1712_1< SIZE >::getIsReRendering().

template<int SIZE>
dword vuFourierVolume< SIZE >::getRenderMethod  ) 
 

template<int SIZE>
float vuFourierVolume< SIZE >::getScale  ) 
 

template<int SIZE>
float* vuFourierVolume< SIZE >::getSliceData  )  const
 

template<int SIZE>
dword vuFourierVolume< SIZE >::getSliceHeight  )  const
 

template<int SIZE>
dword vuFourierVolume< SIZE >::getSliceWidth  )  const
 

template<int SIZE>
vuFixelMap<SIZE,float>* vuFourierVolume< SIZE >::getUnscaledImage  ) 
 

template<int SIZE>
dword vuFourierVolume< SIZE >::getWrap  ) 
 

template<int SIZE>
dword vuFourierVolume< SIZE >::getXSize  ) 
 

Referenced by vuSimpleFVRDialog::OnButtonLoadFile().

template<int SIZE>
dword vuFourierVolume< SIZE >::getYSize  ) 
 

Referenced by vuSimpleFVRDialog::OnButtonLoadFile().

template<int SIZE>
dword vuFourierVolume< SIZE >::getZSize  ) 
 

Referenced by vuSimpleFVRDialog::OnButtonLoadFile().

template<int SIZE>
void vuFourierVolume< SIZE >::glResize dword  width,
dword  height
 

Reimplemented in vu1712_1< SIZE >, and vu1112119.

Referenced by vu1712_1< SIZE >::glResize().

template<int SIZE>
void vuFourierVolume< SIZE >::interpolateSlice dword  x_stop,
dword  y_stop,
dword  x_pass,
dword  y_pass
 

template<int SIZE>
void vuFourierVolume< SIZE >::interpolateSlice  ) 
 

Referenced by vuFourierVolume< S >::computeSlice().

template<int SIZE>
bool vuFourierVolume< SIZE >::isInitialized  ) 
 

Referenced by vuFourierVolume< S >::setCamera(), and vuFourierVolume< S >::setViewVectors().

template<int SIZE>
void vuFourierVolume< SIZE >::loadWisdom  )  [protected]
 

Referenced by vuFourierVolume< S >::vuFourierVolume().

template<int SIZE>
vuFourierVolume<SIZE>& vuFourierVolume< SIZE >::operator= vuFourierVolume< SIZE > &  rhs  ) 
 

template<int SIZE>
bool vuFourierVolume< SIZE >::read_fvr ifstream &  fin,
dword  XSize,
dword  YSize,
dword  ZSize,
dword  d_size
 

template<int SIZE>
bool vuFourierVolume< SIZE >::readFourierFromFile const char *  fileName,
dword  wrap = 4,
float  s = 1.0
 

reads an already preprocessed fourier volume from filesystem

Parameters:
wrap specifies the wrapping (MUST be at least filter.width/2)
s specifies the oversampling rate

Referenced by vuSimpleFVRDialog::OnButtonLoadFile().

template<int SIZE>
void vuFourierVolume< SIZE >::render  ) 
 

Reimplemented in vu1712_1< SIZE >, and vu1112119.

Referenced by vu1712_1< SIZE >::render().

template<int SIZE>
void vuFourierVolume< SIZE >::saveWisdom  )  [protected]
 

Referenced by vuFourierVolume< S >::~vuFourierVolume().

template<int SIZE>
int vuFourierVolume< SIZE >::scoord int  x,
int  y
const [inline, protected]
 

Definition at line 119 of file vuFourierVolume.h.

Referenced by vuFourierVolume< S >::interpolateSlice(), and vuFourierVolume< S >::setOversampling().

template<int SIZE>
void vuFourierVolume< SIZE >::setBias float  bias  ) 
 

template<int SIZE>
void vuFourierVolume< SIZE >::setCamera const vuCamera camera  ) 
 

Referenced by vuFourierClusterN< SIZE, TYPE >::computeUnscaledImage(), vu1712_1< SIZE >::render(), and vuFourierClusterN< SIZE, TYPE >::setCamera().

template<int SIZE>
void vuFourierVolume< SIZE >::setFilter vuFourierFilter filter  ) 
 

Referenced by vuSimpleFVRDialog::OnButtonLoadFile(), vuFourierClusterN< SIZE, TYPE >::setFilter(), and vuSimpleFVRDialog::setFourierFilter().

template<int SIZE>
void vuFourierVolume< SIZE >::setIsChannelActive dword  idx,
bool  flag
 

template<int SIZE>
void vuFourierVolume< SIZE >::setIsReRendering bool  flag  ) 
 

Reimplemented in vu1712_1< SIZE >.

Referenced by vu1712_1< SIZE >::setIsReRendering().

template<int SIZE>
void vuFourierVolume< SIZE >::setOversampling float  s  ) 
 

Referenced by vuFourierVolume< S >::wrapAndInitialize().

template<int SIZE>
void vuFourierVolume< SIZE >::setRenderMethod dword  renderMethod  ) 
 

template<int SIZE>
void vuFourierVolume< SIZE >::setScale float  scale  ) 
 

template<int SIZE>
void vuFourierVolume< SIZE >::setViewVectors const vuVector view,
const vuVector up,
const vuVector right
 

Reimplemented in vu1712_1< SIZE >, and vu1112119.

Referenced by vuFourierVolume< S >::setCamera(), and vu1712_1< SIZE >::setViewVectors().

template<int SIZE>
void vuFourierVolume< SIZE >::setWrap dword  wrap  ) 
 

Referenced by vuSimpleFVRDialog::OnButtonLoadFile(), vu1712_1< SIZE >::read(), and vuFourierVolume< S >::readFourierFromFile().

template<int SIZE>
void vuFourierVolume< SIZE >::shift2D float x,
dword  XSize,
dword  YSize
[static]
 

Referenced by vuFourierCluster< SIZE, TYPE >::addViewToVolume(), vuFourierVolume< S >::computeSlice(), and vuFourierVolume< S >::transformSlice().

template<int SIZE>
void vuFourierVolume< SIZE >::shiftCopy2D float dest,
float src,
dword  XSize,
dword  YSize
[static]
 

template<int SIZE>
void vuFourierVolume< SIZE >::transform2D float x  )  [protected]
 

Referenced by vuFourierVolume< S >::computeSlice(), and vuFourierVolume< S >::transformSlice().

template<int SIZE>
void vuFourierVolume< SIZE >::transformSlice  ) 
 

Referenced by vuFourierCluster< SIZE, TYPE >::addViewToVolume(), and vuFourierVolume< S >::computeSlice().

template<int SIZE>
int vuFourierVolume< SIZE >::vcoord int  x,
int  y,
int  z
const [inline, protected]
 

Definition at line 114 of file vuFourierVolume.h.

Referenced by vuFourierCluster< SIZE, TYPE >::doWeighting(), and vuFourierVolume< S >::wrapVolume().

template<int SIZE>
void vuFourierVolume< SIZE >::wrapAndInitialize float  overSampling  )  [protected]
 

Referenced by vuFourierClusterN< SIZE, TYPE >::_preprocess(), vuFourierCluster< SIZE, TYPE >::prepareForInteractive(), vuFourierClusterN< SIZE, TYPE >::preprocess(), vuFourierCluster< SIZE, TYPE >::preprocess(), vu1712_1< SIZE >::read(), and vuFourierVolume< S >::readFourierFromFile().

template<int SIZE>
void vuFourierVolume< SIZE >::wrapVolume float volume  )  [protected]
 

Referenced by vuFourierVolume< S >::wrapAndInitialize().

template<int SIZE>
void vuFourierVolume< SIZE >::write_fvr char *  out  )  const
 

template<int SIZE>
bool vuFourierVolume< SIZE >::writeFourierToFile const char *  fileName,
vuProgressHandler handler = NULL
const
 

writes the preprocessed fourier volume to a file can be re-read by readFourierFromFile()

Referenced by vuFourierClusterN< SIZE, TYPE >::writeFourierToFile().

template<int SIZE>
bool vuFourierVolume< SIZE >::writeSpatialVolume const char *  fileName,
vuProgressHandler handler = NULL
const
 

converts the frequency volume back into the spatial domain representation and writes the result to fileName

Referenced by vuFourierClusterN< SIZE, TYPE >::writeSpatialVolume().


Member Data Documentation

template<int SIZE>
float vuFourierVolume< SIZE >::m_Bias [protected]
 

Definition at line 161 of file vuFourierVolume.h.

template<int SIZE>
bool vuFourierVolume< SIZE >::m_Channels[SIZE] [protected]
 

Definition at line 162 of file vuFourierVolume.h.

template<int SIZE>
vuFourierFilter* vuFourierVolume< SIZE >::m_Filter [protected]
 

Definition at line 133 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_ImageStep [protected]
 

Definition at line 150 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_ImageXSize [protected]
 

Definition at line 148 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_ImageYSize [protected]
 

Definition at line 149 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_InnerXSize [protected]
 

Definition at line 153 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_InnerYSize [protected]
 

Definition at line 154 of file vuFourierVolume.h.

template<int SIZE>
bool vuFourierVolume< SIZE >::m_IsReRendering [protected]
 

Definition at line 163 of file vuFourierVolume.h.

template<int SIZE>
vuVector vuFourierVolume< SIZE >::m_Origin [protected]
 

Definition at line 145 of file vuFourierVolume.h.

template<int SIZE>
fftwnd_plan vuFourierVolume< SIZE >::m_Plan2D [protected]
 

Definition at line 156 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_RenderMethod [protected]
 

Definition at line 159 of file vuFourierVolume.h.

template<int SIZE>
float vuFourierVolume< SIZE >::m_Scale [protected]
 

Definition at line 160 of file vuFourierVolume.h.

template<int SIZE>
float* vuFourierVolume< SIZE >::m_Slice [protected]
 

Definition at line 136 of file vuFourierVolume.h.

template<int SIZE>
float* vuFourierVolume< SIZE >::m_SlicePtr [protected]
 

Definition at line 151 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_SliceXSize [protected]
 

Definition at line 140 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_SliceYSize [protected]
 

Definition at line 141 of file vuFourierVolume.h.

template<int SIZE>
vuFixelMap<SIZE,float>* vuFourierVolume< SIZE >::m_UnscaledImage [protected]
 

Definition at line 164 of file vuFourierVolume.h.

template<int SIZE>
float* vuFourierVolume< SIZE >::m_Volume [protected]
 

Definition at line 126 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_Wrap [protected]
 

Definition at line 130 of file vuFourierVolume.h.

template<int SIZE>
vuVector vuFourierVolume< SIZE >::m_XAxis [protected]
 

Definition at line 142 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_XSize [protected]
 

Definition at line 127 of file vuFourierVolume.h.

template<int SIZE>
vuVector vuFourierVolume< SIZE >::m_XStep [protected]
 

Definition at line 138 of file vuFourierVolume.h.

template<int SIZE>
vuVector vuFourierVolume< SIZE >::m_YAxis [protected]
 

Definition at line 143 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_YSize [protected]
 

Definition at line 128 of file vuFourierVolume.h.

template<int SIZE>
vuVector vuFourierVolume< SIZE >::m_YStep [protected]
 

Definition at line 139 of file vuFourierVolume.h.

template<int SIZE>
vuVector vuFourierVolume< SIZE >::m_ZAxis [protected]
 

Definition at line 144 of file vuFourierVolume.h.

template<int SIZE>
dword vuFourierVolume< SIZE >::m_ZSize [protected]
 

Definition at line 129 of file vuFourierVolume.h.


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