#include <Volume.h>

Definition at line 56 of file Volume.h.
| CVolume::CVolume | ( | std::string & | fileName | ) |
Definition at line 48 of file Volume.cpp.
References bSliceInViewSpace, created, cullFaceEnabled, fileName, frameBuffer, MODE_NOTSET, needUpdateFBO, needUpdateUniform, nmbActiveSlices, noiseTex, noiseTexSize, pFormat, pLight, pProgram, renderMode, rotX, rotY, txColorBack, txColorFront, txDepthBack, txDepthFront, txVol, and viewAspect.
| CVolume::~CVolume | ( | ) | [virtual] |
| void CVolume::AddTransferProperty | ( | TSmartPointer< CTransferProperty > | ptr | ) |
| bool CVolume::Create | ( | TSmartPointer< CGLProgram > | program, | |
| int | mode, | |||
| int | fboSize, | |||
| float | stepSize, | |||
| int | maxSamples, | |||
| bool | applyNoise, | |||
| float | minClip, | |||
| bool | shadowEnabled, | |||
| float | shadowQuality, | |||
| float | shadowTreshold | |||
| ) | [virtual] |
Definition at line 95 of file Volume.cpp.
References created, fileName, CVolumeFormat::getBitDepth(), CVolumeFormat::getVolumeDataSize(), CVolumeFormat::getVolumeHeader(), CVolumeFormat::getVolumeHeaderSize(), CConsole::Log(), noiseTex, noiseTexSize, pFormat, pProgram, renderMode, and CVolumeFormat::setVolumeData().
| bool CVolume::CreateFboTextures | ( | ) | [protected] |
Definition at line 1187 of file Volume.cpp.
References fboSize, txColorBack, txColorFront, txDepthBack, and txDepthFront.
Referenced by CreateOpenGL(), and Render().
| bool CVolume::CreateOpenGL | ( | ) | [virtual] |
Definition at line 215 of file Volume.cpp.
References CreateFboTextures(), cubeDispList, DestroyOpenGL(), fileName, frameBuffer, CVolumeFormat::getBitDepth(), CVolumeFormat::getSizeX(), CVolumeFormat::getSizeY(), CVolumeFormat::getSizeZ(), CVolumeFormat::getVolumeData(), CConsole::Log(), noiseTex, noiseTexSize, OPENGL_THREAD, pCubeColors, pCubeIndices, pCubeNormals, pCubeTexCoords, pCubeVertices, pFormat, txNoise, and txVol.
| void CVolume::Destroy | ( | ) | [protected, virtual] |
Definition at line 86 of file Volume.cpp.
References noiseTex, pFormat, pLight, and pProgram.
Referenced by ~CVolume().
| bool CVolume::DestroyOpenGL | ( | ) | [virtual] |
Definition at line 320 of file Volume.cpp.
References cubeDispList, fileName, frameBuffer, CConsole::Log(), OPENGL_THREAD, txColorBack, txColorFront, txDepthBack, txDepthFront, and txVol.
Referenced by CreateOpenGL(), and VStudioRenderer::SetVolume().
| CVector2f CVolume::GetOrientation | ( | ) | [inline] |
| CVolumeFormat& CVolume::GetVolumeDataInfo | ( | ) | [inline] |
| bool CVolume::OnMouseKeyDown | ( | byte | bKey | ) | [virtual] |
Reimplemented from IInputHandler.
Definition at line 1277 of file Volume.cpp.
References leftKeyDown, and middleKeyDown.
| bool CVolume::OnMouseKeyUp | ( | byte | bKey | ) | [virtual] |
Reimplemented from IInputHandler.
Definition at line 1288 of file Volume.cpp.
References leftKeyDown, and middleKeyDown.
Reimplemented from IInputHandler.
Definition at line 1263 of file Volume.cpp.
References leftKeyDown, middleKeyDown, rotX, and rotY.
| void CVolume::Render | ( | ) | [virtual] |
Definition at line 506 of file Volume.cpp.
References Slice::bEnabled, bSliceInViewSpace, CreateFboTextures(), cubeDispList, Slice::depth, fboSize, frameBuffer, loc, TVector3< T >::m_X, MODE_BACK_FRONT_TEX, MODE_BACK_TEX, MODE_DEPTH_TEX, MODE_SLICE, needUpdateFBO, needUpdateUniform, nmbActiveSlices, pFormat, pLight, Slice::pos, pProgram, propertyList, renderMode, rotX, rotY, CVolumeFormat::scX, CVolumeFormat::scY, CVolumeFormat::scZ, txColorBack, txColorFront, txDepthBack, txDepthFront, txNoise, txTransfer, txVol, UpdateUniform(), viewAspect, xSlice, ySlice, and zSlice.
| void CVolume::SetApplyNoise | ( | bool | applyNoise | ) |
| void CVolume::SetFboSize | ( | int | fboSize | ) |
| void CVolume::SetHighQuality | ( | bool | tf | ) |
Definition at line 413 of file Volume.cpp.
References applyNoise, maxSamples, needUpdateUniform, shadowQuality, and stepSize.
| void CVolume::SetLight | ( | TSmartPointer< CLight > | pL | ) | [inline] |
| void CVolume::SetMaxSamples | ( | int | maxSamples | ) |
| void CVolume::SetMinClip | ( | float | minClip | ) |
| void CVolume::SetOrientation | ( | float | nrotX, | |
| float | nrotY | |||
| ) | [inline] |
| void CVolume::SetRenderMode | ( | int | renderMode | ) |
| void CVolume::SetRenderSlice | ( | bool | bxSlice, | |
| bool | bySlice, | |||
| bool | bzSlice | |||
| ) |
Definition at line 465 of file Volume.cpp.
References Slice::bEnabled, Slice::depth, TVector3< T >::m_X, nmbActiveSlices, Slice::pos, xSlice, ySlice, and zSlice.
| void CVolume::SetShadowEnabled | ( | bool | tf | ) |
| void CVolume::SetShadowQuality | ( | float | q | ) |
| void CVolume::SetShadowTreshold | ( | float | t | ) |
| void CVolume::SetSliceDepth | ( | int | slizePlaneID, | |
| float | depth | |||
| ) |
| void CVolume::SetSliceInViewSpace | ( | bool | tf | ) |
| void CVolume::SetStepSize | ( | float | stepSize | ) |
| void CVolume::SwitchProgram | ( | TSmartPointer< CGLProgram > | newProgram | ) |
| void CVolume::UpdateUniform | ( | ) | [protected] |
Definition at line 1144 of file Volume.cpp.
References applyNoise, gradDelta, loc, TVector3< T >::m_X, TVector3< T >::m_Y, TVector3< T >::m_Z, maxSamples, minClip, needUpdateUniform, pFormat, pLight, pProgram, CVolumeFormat::scNX, CVolumeFormat::scNY, CVolumeFormat::scNZ, shadowEnabled, shadowQuality, shadowTreshold, and stepSize.
Referenced by Render().
| void CVolume::ViewAspectChange | ( | float | newAspect | ) | [inline] |
bool CVolume::applyNoise [private] |
Definition at line 156 of file Volume.h.
Referenced by SetApplyNoise(), SetHighQuality(), and UpdateUniform().
bool CVolume::bSliceInViewSpace [private] |
Definition at line 166 of file Volume.h.
Referenced by CVolume(), Render(), and SetSliceInViewSpace().
bool CVolume::created [private] |
unsigned int CVolume::cubeDispList [private] |
Definition at line 135 of file Volume.h.
Referenced by CreateOpenGL(), DestroyOpenGL(), and Render().
bool CVolume::cullFaceEnabled [private] |
int CVolume::fboSize [private] |
Definition at line 154 of file Volume.h.
Referenced by CreateFboTextures(), Render(), and SetFboSize().
std::string CVolume::fileName [private] |
Definition at line 118 of file Volume.h.
Referenced by Create(), CreateOpenGL(), CVolume(), and DestroyOpenGL().
unsigned int CVolume::frameBuffer [private] |
Definition at line 149 of file Volume.h.
Referenced by CreateOpenGL(), CVolume(), DestroyOpenGL(), and Render().
CVector3f CVolume::gradDelta [private] |
unsigned int CVolume::loc [private] |
Definition at line 162 of file Volume.h.
Referenced by Render(), CTransferProperty::UpdateShader(), and UpdateUniform().
int CVolume::maxSamples [private] |
Definition at line 157 of file Volume.h.
Referenced by SetHighQuality(), SetMaxSamples(), and UpdateUniform().
float CVolume::minClip [private] |
bool CVolume::needUpdateFBO [private] |
bool CVolume::needUpdateUniform [private] |
Definition at line 152 of file Volume.h.
Referenced by CVolume(), Render(), SetApplyNoise(), SetHighQuality(), SetMaxSamples(), SetMinClip(), SetRenderMode(), SetShadowEnabled(), SetShadowQuality(), SetShadowTreshold(), SetStepSize(), and UpdateUniform().
int CVolume::nmbActiveSlices [private] |
uchar* CVolume::noiseTex [private] |
int CVolume::noiseTexSize [private] |
float* CVolume::pCubeColors [private] |
unsigned char* CVolume::pCubeIndices [private] |
int* CVolume::pCubeNormals [private] |
int* CVolume::pCubeTexCoords [private] |
int* CVolume::pCubeVertices [private] |
CVolumeFormat* CVolume::pFormat [private] |
Definition at line 140 of file Volume.h.
Referenced by Create(), CreateOpenGL(), CVolume(), Destroy(), GetVolumeDataInfo(), Render(), and UpdateUniform().
TSmartPointer<CLight> CVolume::pLight [private] |
Definition at line 144 of file Volume.h.
Referenced by CVolume(), Destroy(), Render(), SetLight(), and UpdateUniform().
TSmartPointer<CGLProgram> CVolume::pProgram [private] |
Definition at line 142 of file Volume.h.
Referenced by Create(), CVolume(), Destroy(), Render(), SwitchProgram(), and UpdateUniform().
QVector< TSmartPointer<CShaderProperty> > CVolume::propertyList [private] |
int CVolume::renderMode [private] |
float CVolume::rotX [private] |
Definition at line 173 of file Volume.h.
Referenced by CVolume(), GetOrientation(), OnMouseMove(), Render(), and SetOrientation().
float CVolume::rotY [private] |
Definition at line 174 of file Volume.h.
Referenced by CVolume(), GetOrientation(), OnMouseMove(), Render(), and SetOrientation().
bool CVolume::shadowEnabled [private] |
float CVolume::shadowQuality [private] |
Definition at line 160 of file Volume.h.
Referenced by SetHighQuality(), SetShadowQuality(), and UpdateUniform().
float CVolume::shadowTreshold [private] |
float CVolume::stepSize [private] |
Definition at line 155 of file Volume.h.
Referenced by SetHighQuality(), SetStepSize(), and UpdateUniform().
unsigned int CVolume::txColorBack [private] |
Definition at line 147 of file Volume.h.
Referenced by CreateFboTextures(), CVolume(), DestroyOpenGL(), and Render().
unsigned int CVolume::txColorFront [private] |
Definition at line 147 of file Volume.h.
Referenced by CreateFboTextures(), CVolume(), DestroyOpenGL(), and Render().
unsigned int CVolume::txDepthBack [private] |
Definition at line 147 of file Volume.h.
Referenced by CreateFboTextures(), CVolume(), DestroyOpenGL(), and Render().
unsigned int CVolume::txDepthFront [private] |
Definition at line 147 of file Volume.h.
Referenced by CreateFboTextures(), CVolume(), DestroyOpenGL(), and Render().
unsigned int CVolume::txNoise [private] |
unsigned int CVolume::txTransfer [private] |
unsigned int CVolume::txVol [private] |
Definition at line 147 of file Volume.h.
Referenced by CreateOpenGL(), CVolume(), DestroyOpenGL(), and Render().
float CVolume::viewAspect [private] |
Slice CVolume::xSlice [private] |
Definition at line 167 of file Volume.h.
Referenced by Render(), SetRenderSlice(), and SetSliceDepth().
Slice CVolume::ySlice [private] |
Definition at line 168 of file Volume.h.
Referenced by Render(), SetRenderSlice(), and SetSliceDepth().
Slice CVolume::zSlice [private] |
Definition at line 169 of file Volume.h.
Referenced by Render(), SetRenderSlice(), and SetSliceDepth().
1.5.7.1