#include <CShearWarp2VRenderer.h>
Inheritance diagram for CShearWarp2VRenderer:

Public Member Functions | |
| CShearWarp2VRenderer (CVoxelFieldGrad *pVoxelField, CTransferFunction *pTransferFunction) | |
| virtual | ~CShearWarp2VRenderer () |
| virtual void | prepare (void) |
| virtual void | calculate (void) |
| virtual void | drawScene (void) |
| virtual void | checkTextureSize (void) |
| virtual void | setVoxelField (CVoxelFieldGrad *pVoxelField) |
| virtual void | setTransferFunction (CTransferFunction *pTransferFunction) |
| virtual void | saveScreenshot (const std::string &sFilename) |
Protected Attributes | |
| CClassifiedVoxelFieldRLEPosition | m_oRLE |
| int | m_iIntermediateTextureSize |
| int | m_iOutputTextureSize |
| Vector * | m_pVColor |
| Vector3DT< unsigned char > * | m_pucTextureData |
| Vector3DT< unsigned char > * | m_pucTextureData2 |
The idea of the shear-warp algorithm is to factorize the view matrix into a shear and a warp transformation. A shear transformation of the original volume data is performed, then this data is projected perpendicular to the sheared planes onto the so called intermediate image. This intermediate image is then warped and we get the final output.
proportions according to slice thickness
Definition at line 23 of file CShearWarp2VRenderer.h.
|
||||||||||||
|
calls constructor of CClassifiedVoxelFieldRLEPosition
Definition at line 12 of file CShearWarp2VRenderer.cpp. References m_iIntermediateTextureSize. |
|
|
nothing yet
Definition at line 22 of file CShearWarp2VRenderer.cpp. |
|
|
|
checks if the intermediate and output texture size if ok with the voxel data size
Definition at line 872 of file CShearWarp2VRenderer.cpp. References CVoxelField::getDimX(), CVoxelField::getDimY(), CVoxelField::getDimZ(), m_iIntermediateTextureSize, m_iOutputTextureSize, m_pucTextureData, m_pucTextureData2, m_pVColor, and CBaseVRenderer::m_pVoxelField. Referenced by prepare(). |
|
|
draw the output texture on a quad
Implements CBaseVRenderer. Definition at line 777 of file CShearWarp2VRenderer.cpp. References CBaseVRenderer::getScale(), and CBaseVRenderer::m_TTextures. |
|
|
prepares the renderer, allocates memory for textures
Implements CBaseVRenderer. Definition at line 26 of file CShearWarp2VRenderer.cpp. References checkTextureSize(), CClassifiedVoxelFieldRLEPosition::encode(), CTransferFunction::getCount(), CBaseVRenderer::getVoxelField(), CBaseVRenderer::m_iTextures, m_oRLE, CBaseVRenderer::m_pTransferFunction, and CBaseVRenderer::m_TTextures. |
|
|
saves the output texture to file
Reimplemented from CBaseVRenderer. Definition at line 914 of file CShearWarp2VRenderer.cpp. References m_iOutputTextureSize, m_pucTextureData2, and imageutils::saveScreenshot(). |
|
|
Attaches this renderer instance to another transfer function
Reimplemented from CBaseVRenderer. Definition at line 865 of file CShearWarp2VRenderer.cpp. References m_oRLE, CBaseVRenderer::m_pTransferFunction, and CClassifiedVoxelFieldRLEPosition::setTransferFunction(). |
|
|
Attaches this renderer instance to another voxel field.
Reimplemented from CBaseVRenderer. Definition at line 858 of file CShearWarp2VRenderer.cpp. References m_oRLE, CClassifiedVoxelFieldRLEPosition::setVoxelField(), and CBaseVRenderer::setVoxelField(). |
|
|
Size of intermediate texture Definition at line 102 of file CShearWarp2VRenderer.h. Referenced by calculate(), checkTextureSize(), and CShearWarp2VRenderer(). |
|
|
Size of output texture Definition at line 106 of file CShearWarp2VRenderer.h. Referenced by calculate(), checkTextureSize(), and saveScreenshot(). |
|
|
the RLE encoded voxel field Definition at line 97 of file CShearWarp2VRenderer.h. Referenced by calculate(), prepare(), setTransferFunction(), and setVoxelField(). |
|
|
the intermediate texture data Definition at line 115 of file CShearWarp2VRenderer.h. Referenced by calculate(), and checkTextureSize(). |
|
|
the warped texture data Definition at line 119 of file CShearWarp2VRenderer.h. Referenced by calculate(), checkTextureSize(), and saveScreenshot(). |
|
|
temporary texture, for summing we need floats Definition at line 111 of file CShearWarp2VRenderer.h. Referenced by calculate(), and checkTextureSize(). |
1.4.3-20050530