00001 #ifndef _SPLATSLICER_H_
00002 #define _SPLATSLICER_H_
00003
00004 #include "vuSimpleTypes.h"
00005 #include "FrameBuffer.h"
00006
00008 class SplatSlicer
00009 {
00010 public:
00011
00013 SplatSlicer();
00015 ~SplatSlicer();
00016
00018 bool buildSplat(float radius, int ysize, int xsize, int slices);
00019
00023 AlphaMask& getSpla(float t);
00024
00025 protected:
00026
00028 double nelsonSplat(double r);
00029
00031 float integrate(float r, float u);
00032
00038 bool createSlices(int nslices, int xsize, int ysize);
00039
00041 bool removeSlices();
00042
00043
00044 dword m_NSlices;
00045 dword m_XSize, m_YSize;
00046 float m_Radius;
00047 float m_Diameter;
00048 AlphaMask *m_Slices;
00049
00050 };
00051
00052 #endif