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

SplatSlicer Class Reference

prepares preintegrated slices of a splatting kernel More...

#include <SplatSlicer.h>

Collaboration diagram for SplatSlicer:

Collaboration graph
[legend]
List of all members.

Public Member Functions

 SplatSlicer ()
 constructor
 ~SplatSlicer ()
 destructor
bool buildSplat (float radius, int ysize, int xsize, int slices)
 builds up preintegrated splats
AlphaMaskgetSpla (float t)
 returns a part of a splat integrated from 0 to t where t = 1.0 returns the complete splat

Protected Member Functions

double nelsonSplat (double r)
 Computes splatting values using the Nelson algorithm. */.
float integrate (float r, float u)
 integrates the Splat up to a certain slice
bool createSlices (int nslices, int xsize, int ysize)
 allocates memory for slices and sets up variables of this class
bool removeSlices ()
 frees the memory occupied by the slices

Protected Attributes

dword m_NSlices
 number of slices to prepare
dword m_XSize
dword m_YSize
float m_Radius
 radius of a splat
float m_Diameter
 diameter of a splat
AlphaMaskm_Slices
 collection of preintegrated slices

Detailed Description

prepares preintegrated slices of a splatting kernel

Definition at line 8 of file SplatSlicer.h.


Constructor & Destructor Documentation

SplatSlicer::SplatSlicer  ) 
 

constructor

Definition at line 18 of file SplatSlicer.cpp.

References m_Slices.

SplatSlicer::~SplatSlicer  ) 
 

destructor

Definition at line 23 of file SplatSlicer.cpp.

References removeSlices().

Here is the call graph for this function:


Member Function Documentation

bool SplatSlicer::buildSplat float  radius,
int  ysize,
int  xsize,
int  slices
 

builds up preintegrated splats

Definition at line 61 of file SplatSlicer.cpp.

References createSlices(), data, dword, fbtype, FrameBuffer< N >::getData(), integrate(), m_Diameter, m_NSlices, m_Radius, m_Slices, and word.

Referenced by main(), and vu1512112::render().

Here is the call graph for this function:

bool SplatSlicer::createSlices int  nslices,
int  xsize,
int  ysize
[protected]
 

allocates memory for slices and sets up variables of this class

Parameters:
nslices number of slices is z direction
xsize,ysize width and height of splat
Returns:
success?

Definition at line 28 of file SplatSlicer.cpp.

References AlphaMask, m_NSlices, m_Slices, m_XSize, m_YSize, removeSlices(), and FrameBuffer< N >::setSize().

Referenced by buildSplat().

Here is the call graph for this function:

AlphaMask & SplatSlicer::getSpla float  t  ) 
 

returns a part of a splat integrated from 0 to t where t = 1.0 returns the complete splat

Definition at line 108 of file SplatSlicer.cpp.

References AlphaMask, m_Diameter, m_NSlices, and m_Slices.

Referenced by vu1512112::drawSlice(), and main().

float SplatSlicer::integrate float  r,
float  u
[protected]
 

integrates the Splat up to a certain slice

Definition at line 101 of file SplatSlicer.cpp.

References M_SQRT2.

Referenced by buildSplat().

double SplatSlicer::nelsonSplat double  r  )  [protected]
 

Computes splatting values using the Nelson algorithm. */.

bool SplatSlicer::removeSlices  )  [protected]
 

frees the memory occupied by the slices

Definition at line 46 of file SplatSlicer.cpp.

References m_NSlices, and m_Slices.

Referenced by createSlices(), and ~SplatSlicer().


Member Data Documentation

float SplatSlicer::m_Diameter [protected]
 

diameter of a splat

Definition at line 47 of file SplatSlicer.h.

Referenced by buildSplat(), and getSpla().

dword SplatSlicer::m_NSlices [protected]
 

number of slices to prepare

Definition at line 44 of file SplatSlicer.h.

Referenced by buildSplat(), createSlices(), getSpla(), and removeSlices().

float SplatSlicer::m_Radius [protected]
 

radius of a splat

Definition at line 46 of file SplatSlicer.h.

Referenced by buildSplat().

AlphaMask* SplatSlicer::m_Slices [protected]
 

collection of preintegrated slices

Definition at line 48 of file SplatSlicer.h.

Referenced by buildSplat(), createSlices(), getSpla(), removeSlices(), and SplatSlicer().

dword SplatSlicer::m_XSize [protected]
 

Definition at line 45 of file SplatSlicer.h.

Referenced by createSlices().

dword SplatSlicer::m_YSize [protected]
 

Definition at line 45 of file SplatSlicer.h.

Referenced by createSlices().


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