Main Page | Packages | Class Hierarchy | Class List | Directories | Class Members

IDVR.VolumeRenderer.SWVolumeRenderer.RenderMachineSW Class Reference

#include <RenderMachineSW.h>

Inheritance diagram for IDVR.VolumeRenderer.SWVolumeRenderer.RenderMachineSW:

IDVR.Interfaces.IRenderMachine List of all members.

Detailed Description

Class for the actual rendering.

namespace: IDVR.VolumeRenderer.SWVolumeRenderer

Baseclass: IDVR.Interfaces.IRenderMachine

This class provides methods to render the scene. It has methods for normal volume rendering (see RenderMachineSW.do_NormalRayCasting), two-level rendering (see RenderMachineSW.do_TwoLevelRayCasting) and importance driven rendering (see RenderMachineSW.do_ImportanceDrivenRayCasting).

Author:
Christopher Thurnher
Version:
1.0
Date:
02-20-2005


Public Member Functions

 RenderMachineSW (void)
 Standard constructor.
 RenderMachineSW (VolumeData *n_Dataset, RenderPrimitives::ImagePlane *n_ImagePlane, Color n_BackColor, IOpenGLCanvas *n_Canvas)
 Constructor.
 ~RenderMachineSW (void)
 Standard destructor.
Vector3calculate_IntersectionPoints (Vector3 *startPoint) __gc[]
 Calculates the intersection points of a ray with the volume.
virtual void start_Raycasting (void)
 Starts the rendering process.
virtual void do_NormalRayCasting (void)
 Does normal raycasting.
virtual void do_TwoLevelRayCasting (void)
 Does two-level raycasting.
virtual void do_ImportanceDrivenRayCasting (Footprint *n_Footprint)
 Does importance driven raycasting.
virtual __property void set_Data (VolumeData *n_DataSet)
 Sets the volume dataset.
virtual __property void set_TwoLevelRendering (bool n_IsTwoLevel)
 Sets the two-level rendering flag.
virtual __property void set_ImportanceDrivenRendering (bool n_IsImportance)
 Sets the importance driven rendering flag.
virtual __property void set_SampingDistance (double n_SamplingDistance)
 Sets the sampling distance.
virtual __property void set_OpacityThreshold (double n_ThresholdOpacity)
 Sets the opacity threshold.
virtual __property void set_GradientThreshold (double n_ThresholdGradient)
 Sets the gradient threshold.
virtual __property void set_ImagePlane (RenderPrimitives::ImagePlane *n_ImagePlane)
 Sets the image plane.
virtual __property void set_GradientEstimationMode (char n_GradientEstimationMode)
 Sets the gradient estimation mode.
virtual __property void set_DensityInterpolationMode (char n_DensityInterpolationMode)
 Sets the density interpolation mode.
virtual __property void set_GradientInterpolationMode (char n_GradientInterpolationMode)
 Sets the gradient interpolation mode.
virtual __property void set_VoxelIDInterpolationMode (char n_VoxelIDInterpolationMode)
 Sets the voxelID interpolation mode.
virtual __property RenderPrimitives::ImagePlaneget_ImagePlane (void)
 Returns the image plane.
virtual __property VolumeDataget_Data (void)
 Returns the volume dataset.
unsigned char getFrameBuffer (void) __gc[]
 Returns the framebuffer.
FootprintgenerateFootprint (void)
 Generates the footprint object.
void setOpenGLCanvas (IOpenGLCanvas *n_Canvas)
 Sets the openGL canvas.
void setProgressWin (ProgressWin *n_ProgressWin)
 Sets the progress bar.
void setGUIHandler (Thread *n_GUIHandler)
 Sets the GUI handler.

Private Attributes

VolumeData * m_DataSet
 The dataset.
VolumeRenderer::RenderPrimitives::ImagePlanem_ImagePlane
 The image plane.
IRendererm_GlobalRenderer
 The global renderer.
IIDVRCompositingModelm_IDVRCompositingModel
 The importance driven compositing model.
Color m_BackColor
 The background color.
ProgressWinm_ProgressWin
 The progress bar.
Thread * m_GUIHandler
 Rendering thread.
IOpenGLCanvasm_Canvas
 The openGL canvas.
bool m_IsTwoLevel
 Two level rendering flag.
bool m_IsImportance
 Importance driven rendering thread.
char m_GradientEstimationMode
 The gradient estimation mode.
char m_DensityInterpolationMode
 The density interpolation mode.
char m_GradientInterpolationMode
 The gradient interpolation mode.
char m_VoxelIDInterpolationMode
 The voxelID interpolation mode.
double m_SamplingDistance
 The sampling distance.
double m_ThresholdOpacity
 The opacity threshold.
double m_ThresholdGradient
 The gradient magnitude threshold.
unsigned char m_FrameBuffer __gc []
 The framebuffer for the rendered image.

Static Private Attributes

static const int ENTRYPOINT = 0
 Entrypoint.
static const int EXITPOINT = 1
 Exitpoint.


Constructor & Destructor Documentation

RenderMachineSW::RenderMachineSW void   ) 
 

Standard constructor.

RenderMachineSW::RenderMachineSW VolumeData n_Dataset,
RenderPrimitives::ImagePlane n_ImagePlane,
Color  n_BackColor,
IOpenGLCanvas n_Canvas
 

Constructor.

Parameters:
n_Dataset the dataset.
n_ImagePlane the image plane.
n_BackColor the background color.
n_Canvas the openGL canvas (rendering target).

RenderMachineSW::~RenderMachineSW void   ) 
 

Standard destructor.


Member Function Documentation

Vector3 * RenderMachineSW::calculate_IntersectionPoints Vector3 startPoint  ) 
 

Calculates the intersection points of a ray with the volume.

Parameters:
startPoint the first point of the ray on the image plane.
Returns:
The intersection points.

void RenderMachineSW::do_ImportanceDrivenRayCasting Footprint n_Footprint  )  [virtual]
 

Does importance driven raycasting.

Parameters:
n_Footprint the footprint object.

void RenderMachineSW::do_NormalRayCasting void   )  [virtual]
 

Does normal raycasting.

void RenderMachineSW::do_TwoLevelRayCasting void   )  [virtual]
 

Does two-level raycasting.

Footprint * RenderMachineSW::generateFootprint void   ) 
 

Generates the footprint object.

Returns:
The footprint object.

VolumeData * RenderMachineSW::get_Data void   )  [virtual]
 

Returns the volume dataset.

Returns:
The volume dataset.

RenderPrimitives::ImagePlane * RenderMachineSW::get_ImagePlane void   )  [virtual]
 

Returns the image plane.

Returns:
The image plane.

unsigned char RenderMachineSW::getFrameBuffer void   ) 
 

Returns the framebuffer.

Returns:
The framebuffer.

void RenderMachineSW::set_Data VolumeData n_DataSet  )  [virtual]
 

Sets the volume dataset.

Parameters:
n_DataSet the volume dataset.

void RenderMachineSW::set_DensityInterpolationMode char  n_DensityInterpolationMode  )  [virtual]
 

Sets the density interpolation mode.

Parameters:
n_DensityInterpolationMode the density interpolation mode.

void RenderMachineSW::set_GradientEstimationMode char  n_GradientEstimationMode  )  [virtual]
 

Sets the gradient estimation mode.

Parameters:
n_GradientEstimationMode the gradient estimation mode.

void RenderMachineSW::set_GradientInterpolationMode char  n_GradientInterpolationMode  )  [virtual]
 

Sets the gradient interpolation mode.

Parameters:
n_GradientInterpolationMode the gradient interpolation mode.

void RenderMachineSW::set_GradientThreshold double  n_ThresholdGradient  )  [virtual]
 

Sets the gradient threshold.

Parameters:
n_ThresholdGradient the gradient threshold.

void RenderMachineSW::set_ImagePlane RenderPrimitives::ImagePlane n_ImagePlane  )  [virtual]
 

Sets the image plane.

Parameters:
n_ImagePlane the image plane.

void RenderMachineSW::set_ImportanceDrivenRendering bool  n_IsImportance  )  [virtual]
 

Sets the importance driven rendering flag.

Parameters:
n_IsImportance the importance driven rendering flag.

void RenderMachineSW::set_OpacityThreshold double  n_ThresholdOpacity  )  [virtual]
 

Sets the opacity threshold.

Parameters:
n_ThresholdOpacity the opacity threshold.

void RenderMachineSW::set_SampingDistance double  n_SamplingDistance  )  [virtual]
 

Sets the sampling distance.

Parameters:
n_SamplingDistance the sampling distance.

void RenderMachineSW::set_TwoLevelRendering bool  n_IsTwoLevel  )  [virtual]
 

Sets the two-level rendering flag.

Parameters:
n_IsTwoLevel the two-level rendering flag.

void RenderMachineSW::set_VoxelIDInterpolationMode char  n_VoxelIDInterpolationMode  )  [virtual]
 

Sets the voxelID interpolation mode.

Parameters:
n_VoxelIDInterpolationMode the voxelID interpolation mode.

void RenderMachineSW::setGUIHandler Thread *  n_GUIHandler  ) 
 

Sets the GUI handler.

Parameters:
n_GUIHandler the GUI handler.

void RenderMachineSW::setOpenGLCanvas IOpenGLCanvas n_Canvas  ) 
 

Sets the openGL canvas.

Parameters:
n_Canvas The openGL canvas.

void RenderMachineSW::setProgressWin ProgressWin n_ProgressWin  ) 
 

Sets the progress bar.

Parameters:
n_ProgressWin the progress bar.

void RenderMachineSW::start_Raycasting void   )  [virtual]
 

Starts the rendering process.


The documentation for this class was generated from the following files:
Generated on Sat Apr 9 11:51:02 2005 for RayCaster wiht Importance Driven Volume Rendering (IDVR) by  doxygen 1.4.1