#include <FVR.h>
Inheritance diagram for vu1112117:
Public Member Functions | |
void | compareVolumes () |
vu1112117 () | |
vu1112117 (vu1112117 &inst) | |
~vu1112117 () | |
virtual bool | read () |
Reimplements the read() method to do some extra volume data processing. | |
virtual bool | readRaw (void) |
This method reads volume data stored using the .raw data type. | |
void | render () |
Implements the abstract render() method of the vuVolume base class. | |
void | initOpenGL (void) |
Initializes open gl for rendering the volume data. | |
vuImage * | getBuffer () |
void | setViewVectors (const vuVector &view, const vuVector &up, const vuVector &right) |
Sets the camera viewing position for the render method. | |
vu1112117 & | operator= (const vu1112117 &rhs) |
void | setFilter (Filter *filter) |
void | setSliceScale (t_data scale) |
void | setSliceBias (t_data bias) |
void | rotateSliceX (t_data alpha) |
void | rotateSliceY (t_data alpha) |
void | rotateSliceZ (t_data alpha) |
void | clearSlices (void) |
void | computeSlice (void) |
void | refineSlice (dword x_stop, dword y_stop, dword x_pass, dword y_pass) |
dword | getImageWidth (void) const |
dword | getImageHeight (void) const |
dword | getSliceWidth (void) const |
dword | getSliceHeight (void) const |
void | setOversampling (t_data s) |
float * | getScale () |
float * | getLightIntensity () |
void | scaleAndBias (t_data *_slice, const vuColourRGBa &color) |
void | setLightPosition (const vuVector &_light) |
void | setIsDepthCueing (bool flag) |
bool | IsDepthCueing (void) |
void | setIsDiffuseShading (bool flag) |
bool | IsDiffuseShading () |
void | setIsPostProcessing (bool flag) |
bool | IsPostProcessing (void) |
void | setAmbientColour (const vuColourRGBa _colour) |
vuColourRGBa | getAmbientColour (void) |
void | setDiffuseColour (const vuColourRGBa _colour) |
vuColourRGBa | getDiffuseColour (void) |
void | drawImageFromSlices (void) |
Private Member Functions | |
void | setWrap (dword wrap) |
void | wrapVolume (t_data *&_volume) |
void | interpolateSlice (t_data *&_volume, t_data *&_slice, t_data &_shLight, t_data &_currDC) |
void | interpolateSlice (t_data *&_volume, t_data *&_slice, t_data &_shLight, t_data &_currDC, dword x_stop, dword y_stop, dword x_pass, dword y_pass) |
int | vcoord (int x, int y, int z) const |
int | scoord (int x, int y) const |
void | preprocess (void) |
void | write_fvr (char *out) |
bool | read_fvr (t_data *&_volume, ifstream &fin, dword XSize, dword YSize, dword ZSize, dword d_size) |
bool | read_shfvr (char *in) |
bool | doTempFilesExist (string fileName) |
void | ensureTempDirectory () |
void | deleteVolumes () |
void | updateShLight () |
void | destroySlices (void) |
void | ensureSlices (void) |
void | accumulateSlices (t_data *_slice, int _from, int _to) |
void | computeSlice (int num) |
void | refineSlice (int num, dword x_stop, dword y_stop, dword x_pass, dword y_pass) |
void | run (int whatsup, void *data) |
This function is called when a new thread is started by startThread. | |
bool | computeSlicesUsingThreads (void) |
bool | refineSlicesUsingThreads (dword x_stop, dword y_stop, dword x_pass, dword y_pass) |
void | _clearSlices (void) |
void | _ensureSliceDummy (void) |
int | computeDimension (void) |
void | buildVolume (t_data *_volume, byte *_data, dword dim, dword XSize, dword YSize, dword ZSize) |
void | _init (void) |
Private Attributes | |
int | m_volumeNumber |
t_data * | m_Yarray [VOLUME_MAX_NUM] |
t_data | m_shLight [VOLUME_MAX_NUM] |
bool | m_depthCue |
dword | m_Wrap |
vuVector | m_currLight |
vuColourRGBa | m_AmbientColour |
vuColourRGBa | m_DiffuseColour |
Filter * | m_Filter |
t_data * | m__SliceArray [VOLUME_MAX_NUM] |
t_data * | m_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 |
vuImage | m_Image |
float | m_Scale |
t_data | m_Bias |
dword | m_InnerXSize |
dword | m_InnerYSize |
bool | m_isPostProcessing |
vuMutex | m_Mutex [VOLUME_MAX_NUM] |
|
Definition at line 53 of file FVR.cpp. References vuTFDesign::addOpacity(), vuTFDesign::generateFunction(), FVR_NS::initTransforms(), m__SliceArray, m_Bias, m_depthCue, m_Scale, m_shLight, m_Slice, m_volumeNumber, m_Wrap, m_Yarray, vuTFDesign::setColourSmoothing(), setLightPosition(), vuTFDesign::setOpacitySmoothing(), and vu111211::setTransferFunc(). |
Here is the call graph for this function:
|
|
|
Definition at line 104 of file FVR.cpp. References deleteVolumes(), destroySlices(), FVR_NS::destroyTransform2D(), and FVR_NS::destroyTransforms(). |
Here is the call graph for this function:
|
Definition at line 690 of file FVR.cpp. References dword, m__SliceArray, m_SliceXSize, m_SliceYSize, and t_data. Referenced by clearSlices(), and ensureSlices(). |
|
Definition at line 699 of file FVR.cpp. References dword, m_Slice, m_SliceXSize, m_SliceYSize, and t_data. Referenced by drawImageFromSlices(). |
|
Definition at line 272 of file FVR.cpp. References vuImage::init(), SpecFVRNS::initTransform2D(), m_Image, m_Origin, m_SliceXSize, m_SliceYSize, m_Yarray, setOversampling(), and wrapVolume(). Referenced by read(). |
Here is the call graph for this function:
|
Definition at line 903 of file FVR.cpp. References dword, m__SliceArray, m_SliceXSize, m_SliceYSize, and t_data. Referenced by drawImageFromSlices(). |
|
|
|
Definition at line 684 of file FVR.cpp. References _clearSlices(), and ensureSlices(). Referenced by computeSlice(), vuFVR::glRender(), and vuFVR::onKeyboard(). |
Here is the call graph for this function:
|
|
|
Definition at line 389 of file FVR.cpp. Referenced by preprocess(). |
|
Definition at line 921 of file FVR.cpp. References interpolateSlice(), m__SliceArray, m_shLight, m_Yarray, my_dc, and t_data. |
Here is the call graph for this function:
|
Definition at line 1009 of file FVR.cpp. References clearSlices(), computeSlicesUsingThreads(), and setIsPostProcessing(). Referenced by getBuffer(), vuFVR::glRender(), and run(). |
Here is the call graph for this function:
|
Definition at line 937 of file FVR.cpp. References vuMutex::lock(), m_Mutex, vuThread::startThread(), and vuMutex::unlock(). Referenced by computeSlice(). |
Here is the call graph for this function:
|
Definition at line 127 of file FVR.cpp. References m_Yarray. Referenced by ~vu1112117(). |
|
Definition at line 661 of file FVR.cpp. References m__SliceArray, and m_Slice. Referenced by setIsDiffuseShading(), setOversampling(), and ~vu1112117(). |
|
Definition at line 206 of file FVR.cpp. Referenced by read(). |
|
Definition at line 979 of file FVR.cpp. References _ensureSliceDummy(), accumulateSlices(), vuImage::clear(), ensureSlices(), IsDiffuseShading(), m_AmbientColour, m_DiffuseColour, m_Image, m_SliceXSize, m_SliceYSize, m_volumeNumber, scaleAndBias(), SpecFVRNS::shift2D(), t_data, and SpecFVRNS::transform2D(). Referenced by getBuffer(), vuFVR::glRender(), and refineSlice(). |
Here is the call graph for this function:
|
Definition at line 675 of file FVR.cpp. References _clearSlices(), dword, m__SliceArray, m_SliceXSize, m_SliceYSize, and t_data. Referenced by clearSlices(), drawImageFromSlices(), and refineSlice(). |
Here is the call graph for this function:
|
Definition at line 218 of file FVR.cpp. References TEMP_PATH. Referenced by read(). |
|
Definition at line 156 of file FVR.cpp. Referenced by vuFVR::onKeyboard(). |
|
Definition at line 312 of file FVR.cpp. References computeSlice(), drawImageFromSlices(), IsPostProcessing(), vu1::IsReRendering(), setIsPostProcessing(), and vu1::setIsReRendering(). Referenced by vuFVR::getCurrentImage(), and render(). |
Here is the call graph for this function:
|
Definition at line 163 of file FVR.cpp. Referenced by vuFVR::onKeyboard(). |
|
Definition at line 592 of file FVR.cpp. References dword, vuImage::getHeight(), and m_Image. |
Here is the call graph for this function:
|
Definition at line 587 of file FVR.cpp. References dword, vuImage::getWidth(), and m_Image. |
Here is the call graph for this function:
|
|
|
|
|
Definition at line 602 of file FVR.cpp. References dword. |
|
Definition at line 597 of file FVR.cpp. References dword. Referenced by vuFVR::glResize(). |
|
Initializes open gl for rendering the volume data.
Definition at line 330 of file FVR.cpp. References glClearColor(). Referenced by vuFVR::glInit(). |
Here is the call graph for this function:
|
Definition at line 794 of file FVR.cpp. References CONVOLVE, dword, FVR_NS::Filter::getWidth(), m_Filter, m_SliceXSize, m_SliceYSize, m_Wrap, m_XStep, m_YStep, scoord(), and t_data. |
Here is the call graph for this function:
|
Definition at line 855 of file FVR.cpp. References CONVOLVE, CONVOLVE_NO_MOD, dword, FVR_NS::Filter::getWidth(), m_Filter, m_SliceXSize, m_SliceYSize, m_Wrap, and t_data. Referenced by computeSlice(), and refineSlice(). |
Here is the call graph for this function:
|
|
|
Definition at line 146 of file FVR.cpp. References m_volumeNumber. Referenced by drawImageFromSlices(), and setIsDiffuseShading(). |
|
Definition at line 304 of file FVR.cpp. Referenced by getBuffer(), and vuFVR::glRender(). |
|
|
|
Definition at line 400 of file FVR.cpp. References byte, computeDimension(), FVR_NS::destroyTransform3D(), dword, vuTFIntensity::getOpacityAtPos(), SpecFVRNS::initTransform3D(), m_Yarray, SpecFVRNS::read_raw(), realTrans(), SpecFVRNS::shift3D(), t_data, and SpecFVRNS::transform3D(). Referenced by read(). |
Here is the call graph for this function:
|
Reimplements the read() method to do some extra volume data processing.
Reimplemented from vu11121. Definition at line 236 of file FVR.cpp. References _init(), doTempFilesExist(), ensureTempDirectory(), FVR_NS::Filter::getWidth(), m_Filter, preprocess(), vu11121::read(), read_shfvr(), setWrap(), TEMP_PATH, and write_fvr(). Referenced by vuFVR::init(). |
Here is the call graph for this function:
|
Definition at line 450 of file FVR.cpp. References byte, m_Wrap, FVR_NS::read_raw_fast(), and t_data. Referenced by read_shfvr(). |
Here is the call graph for this function:
|
Definition at line 470 of file FVR.cpp. References dword, m_Yarray, read_fvr(), and SpecFVRNS::read_head(). Referenced by read(). |
Here is the call graph for this function:
|
This method reads volume data stored using the .raw data type.
|
|
Definition at line 927 of file FVR.cpp. References interpolateSlice(), m__SliceArray, m_shLight, m_Yarray, my_dc, and t_data. |
Here is the call graph for this function:
|
Definition at line 1019 of file FVR.cpp. References drawImageFromSlices(), ensureSlices(), and refineSlicesUsingThreads(). Referenced by vuFVR::glRender(), vuFVR::onKeyboard(), and run(). |
Here is the call graph for this function:
|
Definition at line 955 of file FVR.cpp. References vuMutex::lock(), m_Mutex, vuThread::startThread(), vuMutex::unlock(), vuFVRarg::x_pass, vuFVRarg::x_stop, vuFVRarg::y_pass, and vuFVRarg::y_stop. Referenced by refineSlice(). |
Here is the call graph for this function:
|
Implements the abstract render() method of the vuVolume base class.
Reimplemented from vu11121. Definition at line 308 of file FVR.cpp. References vuImage::blit(), and getBuffer(). Referenced by vuFVR::glRender(). |
Here is the call graph for this function:
|
Definition at line 543 of file FVR.cpp. References m_Origin, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, vuMatrix::makeRotate(), and updateShLight(). |
Here is the call graph for this function:
|
Definition at line 558 of file FVR.cpp. References m_Origin, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, vuMatrix::makeRotate(), and updateShLight(). |
Here is the call graph for this function:
|
Definition at line 573 of file FVR.cpp. References m_Origin, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, vuMatrix::makeRotate(), and updateShLight(). |
Here is the call graph for this function:
|
This function is called when a new thread is started by startThread. The function is virtual. Override it to run your own code. The whatsup argument is for free use to customize behaviour of different threads. Implements vuThread. Definition at line 912 of file FVR.cpp. References computeSlice(), data, m_Mutex, refineSlice(), vuMutex::unlock(), vuFVRarg::x_pass, vuFVRarg::x_stop, vuFVRarg::y_pass, and vuFVRarg::y_stop. |
Here is the call graph for this function:
|
Definition at line 1032 of file FVR.cpp. References byte, clip, clip255, dword, vuImage::get_buffer(), vuImage::getHeight(), vuImage::getWidth(), m_Bias, m_Image, m_Scale, m_SliceXSize, and t_data. Referenced by drawImageFromSlices(). |
Here is the call graph for this function:
|
Definition at line 121 of file FVR.h. References m_SliceXSize. Referenced by interpolateSlice(). |
|
Definition at line 153 of file FVR.cpp. References m_AmbientColour. Referenced by vuFVR::onKeyboard(). |
|
Definition at line 160 of file FVR.cpp. References m_DiffuseColour. Referenced by vuFVR::onKeyboard(). |
|
Definition at line 528 of file FVR.cpp. References m_Filter. Referenced by vuFVR::init(). |
|
Definition at line 115 of file FVR.cpp. References m_depthCue. Referenced by vuFVR::init(), and vuFVR::OnCheckBoxDepthCueing(). |
|
Definition at line 136 of file FVR.cpp. References destroySlices(), IsDiffuseShading(), and m_volumeNumber. Referenced by vuFVR::init(), and vuFVR::OnCheckBoxDiffuseShading(). |
Here is the call graph for this function:
|
Definition at line 301 of file FVR.cpp. References m_isPostProcessing. Referenced by computeSlice(), getBuffer(), vuFVR::glRender(), and vuFVR::onKeyboard(). |
|
Definition at line 339 of file FVR.cpp. References m_currLight, t_data, and updateShLight(). Referenced by vuFVR::glOnMouse(), and vu1112117(). |
Here is the call graph for this function:
|
Definition at line 501 of file FVR.cpp. References destroySlices(), vuImage::getHeight(), vuImage::getWidth(), m_Image, m_InnerXSize, m_InnerYSize, m_SliceXSize, m_SliceYSize, m_XAxis, m_XStep, m_YAxis, m_YStep, ODD, ROOT_TWO, and t_data. Referenced by _init(). |
Here is the call graph for this function:
|
Definition at line 538 of file FVR.cpp. References m_Bias. |
|
Definition at line 533 of file FVR.cpp. References m_Scale. Referenced by vuFVR::init(). |
|
Sets the camera viewing position for the render method.
Reimplemented from vu11121. Definition at line 171 of file FVR.cpp. References vuImage::getHeight(), vuImage::getWidth(), m_Image, m_Origin, m_SliceXSize, m_SliceYSize, m_XAxis, m_XStep, m_YAxis, m_YStep, m_ZAxis, vuVector::makeUnit(), and updateShLight(). Referenced by vuFVR::glOnMouse(). |
Here is the call graph for this function:
|
Definition at line 523 of file FVR.cpp. References m_Wrap. Referenced by read(). |
|
Definition at line 1057 of file FVR.cpp. References vuVector::getData(), m_currLight, m_shLight, and realLight(). Referenced by rotateSliceX(), rotateSliceY(), rotateSliceZ(), setLightPosition(), and setViewVectors(). |
Here is the call graph for this function:
|
Definition at line 116 of file FVR.h. Referenced by wrapVolume(). |
|
Definition at line 608 of file FVR.cpp. References dword, m_Wrap, and vcoord(). Referenced by _init(). |
Here is the call graph for this function:
|
Definition at line 367 of file FVR.cpp. References m_Yarray, t_data, and SpecFVRNS::write_fvr_head(). Referenced by read(). |
Here is the call graph for this function:
|
Definition at line 175 of file FVR.h. Referenced by _clearSlices(), accumulateSlices(), computeSlice(), destroySlices(), ensureSlices(), refineSlice(), and vu1112117(). |
|
Definition at line 168 of file FVR.h. Referenced by drawImageFromSlices(), and setAmbientColour(). |
|
Definition at line 190 of file FVR.h. Referenced by scaleAndBias(), setSliceBias(), and vu1112117(). |
|
Definition at line 165 of file FVR.h. Referenced by setLightPosition(), and updateShLight(). |
|
Definition at line 163 of file FVR.h. Referenced by setIsDepthCueing(), and vu1112117(). |
|
Definition at line 169 of file FVR.h. Referenced by drawImageFromSlices(), and setDiffuseColour(). |
|
Definition at line 172 of file FVR.h. Referenced by interpolateSlice(), read(), and setFilter(). |
|
Definition at line 188 of file FVR.h. Referenced by _init(), drawImageFromSlices(), getImageHeight(), getImageWidth(), scaleAndBias(), setOversampling(), and setViewVectors(). |
|
Definition at line 192 of file FVR.h. Referenced by setOversampling(). |
|
Definition at line 193 of file FVR.h. Referenced by setOversampling(). |
|
Definition at line 195 of file FVR.h. Referenced by setIsPostProcessing(). |
|
Definition at line 207 of file FVR.h. Referenced by computeSlicesUsingThreads(), refineSlicesUsingThreads(), and run(). |
|
Definition at line 185 of file FVR.h. Referenced by _init(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), and setViewVectors(). |
|
Definition at line 189 of file FVR.h. Referenced by scaleAndBias(), setSliceScale(), and vu1112117(). |
|
Definition at line 162 of file FVR.h. Referenced by computeSlice(), refineSlice(), updateShLight(), and vu1112117(). |
|
Definition at line 176 of file FVR.h. Referenced by _ensureSliceDummy(), destroySlices(), and vu1112117(). |
|
Definition at line 180 of file FVR.h. Referenced by _clearSlices(), _ensureSliceDummy(), _init(), accumulateSlices(), drawImageFromSlices(), ensureSlices(), interpolateSlice(), scaleAndBias(), scoord(), setOversampling(), and setViewVectors(). |
|
Definition at line 181 of file FVR.h. Referenced by _clearSlices(), _ensureSliceDummy(), _init(), accumulateSlices(), drawImageFromSlices(), ensureSlices(), interpolateSlice(), setOversampling(), and setViewVectors(). |
|
Definition at line 159 of file FVR.h. Referenced by drawImageFromSlices(), IsDiffuseShading(), setIsDiffuseShading(), and vu1112117(). |
|
Definition at line 164 of file FVR.h. Referenced by interpolateSlice(), read_fvr(), setWrap(), vu1112117(), and wrapVolume(). |
|
Definition at line 182 of file FVR.h. Referenced by rotateSliceX(), rotateSliceY(), rotateSliceZ(), setOversampling(), and setViewVectors(). |
|
Definition at line 178 of file FVR.h. Referenced by interpolateSlice(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setOversampling(), and setViewVectors(). |
|
Definition at line 160 of file FVR.h. Referenced by _init(), computeSlice(), deleteVolumes(), preprocess(), read_shfvr(), refineSlice(), vu1112117(), and write_fvr(). |
|
Definition at line 183 of file FVR.h. Referenced by rotateSliceX(), rotateSliceY(), rotateSliceZ(), setOversampling(), and setViewVectors(). |
|
Definition at line 179 of file FVR.h. Referenced by interpolateSlice(), rotateSliceX(), rotateSliceY(), rotateSliceZ(), setOversampling(), and setViewVectors(). |
|
Definition at line 184 of file FVR.h. Referenced by rotateSliceX(), rotateSliceY(), rotateSliceZ(), and setViewVectors(). |