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

CScanner Class Reference

#include <CScanner.h>

List of all members.

Public Member Functions

void ScanVolume ()
void GenerateXRAY ()
void GenerateMIP ()
void GenerateFirstHit ()
bool GetIntersectionPoints (sPoint3f *pBeginCoord, sPoint3f *pEndCoord, sPoint3f eye, sVector3f ray)
void SampleAlongRay (sPoint3f beginCoord, sPoint3f endCoord, sRGBA *pRGBA)
float SampleXRAYAlongRay (sPoint3f beginCoord, sPoint3f endCoord)
float SampleMIPAlongRay (sPoint3f beginCoord, sPoint3f endCoord)
void SampleFirstHitAlongRay (sPoint3f beginCoord, sPoint3f endCoord, sRGBA *pRGBA)
float GetDiffuseValue (sPoint3f coordinate)


Detailed Description

CScanner is the main class for scanning 3D volumetric data, and for generating the various views specified by the user. It is capable of scanning the volume in any axis-aligned direction, and sampling the volume based on various interpolation methods - including nearest neighbour and tri-linear.

Definition at line 13 of file CScanner.h.


Member Function Documentation

void CScanner::GenerateFirstHit  ) 
 

Generates a first hit image of the volumetric data

Definition at line 4 of file FirstHit.cpp.

References GetIntersectionPoints(), sPoint3f::x, and sPoint3f::y.

Referenced by ScanVolume().

void CScanner::GenerateMIP  ) 
 

Generates a maximum intensity projection image of the volumetric data

Definition at line 14 of file mip.cpp.

References GetIntersectionPoints(), Histogram::getVoxelColorByDensity(), SampleMIPAlongRay(), sPoint3f::x, and sPoint3f::y.

Referenced by ScanVolume().

void CScanner::GenerateXRAY  ) 
 

Generates an XRAY image of the volumetric data

Definition at line 13 of file xray.cpp.

References GetIntersectionPoints(), Histogram::getVoxelColorByDensity(), SampleXRAYAlongRay(), sPoint3f::x, and sPoint3f::y.

Referenced by ScanVolume().

float CScanner::GetDiffuseValue sPoint3f  coordinate  ) 
 

GetDiffuseValue: computes the diffuse shading coefficient based on gradient computation.

Definition at line 154 of file CScanner.cpp.

References CVolVoxels::GetGradient(), CVolVoxels::GetGradientTriLinear(), sPoint3f::x, sPoint3f::y, and sPoint3f::z.

Referenced by SampleAlongRay().

bool CScanner::GetIntersectionPoints sPoint3f pBeginCoord,
sPoint3f pEndCoord,
sPoint3f  eye,
sVector3f  ray
 

GetIntersectionPoints: finds intersection points between a ray and the bounding planes of a volume

Definition at line 4 of file IntersectionPoints.cpp.

Referenced by GenerateFirstHit(), GenerateMIP(), and GenerateXRAY().

void CScanner::SampleAlongRay sPoint3f  beginCoord,
sPoint3f  endCoord,
sRGBA *  pRGBA
 

SampleAlongRay: performs voxel sampling within a volume along a ray, at evenly spaced intervals.

Definition at line 74 of file composite.cpp.

References CVolVoxels::GetDensityTriLinear(), GetDiffuseValue(), CVolVoxels::GetMaxValue(), Histogram::getVoxelColorByDensity(), CVolVoxels::GetVoxelValue(), sPoint3f::x, sPoint3f::y, and sPoint3f::z.

void CScanner::SampleFirstHitAlongRay sPoint3f  beginCoord,
sPoint3f  endCoord,
sRGBA *  pRGBA
 

SampleFHAlongRay: performs first hit style voxel sampling within a volume along a ray, at evenly spaced intervals.

float CScanner::SampleMIPAlongRay sPoint3f  beginCoord,
sPoint3f  endCoord
 

SampleMIPAlongRay: performs MIP style (maximum intensity) voxel sampling within a volume along a ray, at evenly spaced intervals.

Definition at line 83 of file mip.cpp.

References CVolVoxels::GetDensityTriLinear(), CVolVoxels::GetGradient(), CVolVoxels::GetMaxValue(), CVolVoxels::GetVoxelValue(), sPoint3f::x, sPoint3f::y, and sPoint3f::z.

Referenced by GenerateMIP().

float CScanner::SampleXRAYAlongRay sPoint3f  beginCoord,
sPoint3f  endCoord
 

SampleXRAYAlongRay: performs X-ray style (averaging) voxel sampling within a volume along a ray, at evenly spaced intervals.

Definition at line 83 of file xray.cpp.

References CVolVoxels::GetDensityTriLinear(), CVolVoxels::GetGradient(), CVolVoxels::GetMaxValue(), CVolVoxels::GetVoxelValue(), sPoint3f::x, sPoint3f::y, and sPoint3f::z.

Referenced by GenerateXRAY().

void CScanner::ScanVolume  ) 
 

ScanVoluem performs the ray casting thru the volume based on user selected properties.

Definition at line 123 of file CScanner.cpp.

References GenerateFirstHit(), GenerateMIP(), and GenerateXRAY().


The documentation for this class was generated from the following files:
Generated on Mon Dec 12 15:20:26 2005 for CCube by  doxygen 1.4.1