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

Media3D Class Reference

#include <media3d.h>

Inheritance diagram for Media3D:

TransparentTransformatable Transformatable Media3DMultiple Media3DSingle List of all members.

Public Types

enum  scattertype {
  NONE, ISOTROPIC, RAYLEIGH, MIE_HAZY,
  MIE_MURKY, HENYEY_GREENSTEIN
}
enum  samplingmethod { LINEAR, RECURSIVE }

Public Member Functions

 Media3D (DBL jitteramouth, CLR tol, FLT variancekeepfactor, samplingmethod m)
virtual Media3Dcopy () const =0
Colour sample (DBL start, DBL end, const CameraRay &r, Colour &absorb)
void sample (DBL start, DBL end, const LightRay &r, Colour &absorb)
virtual Colour evaluateEmit (const Vector3 &p, const CameraRay &r, CLR allowederror, FLT &ilength) const =0
virtual Colour evaluateAbsorb (const Vector3 &p) const =0

Static Public Attributes

HitStatistics evaluations

Protected Attributes

DBL jitter
CLR coltolerance
FLT varkeep
samplingmethod method

Detailed Description

Volumetric media.
Author:
Micha Riser


Member Function Documentation

virtual Media3D* Media3D::copy  )  const [pure virtual]
 

Copy media.

Implemented in Media3DSingle, and Media3DMultiple.

virtual Colour Media3D::evaluateAbsorb const Vector3 p  )  const [pure virtual]
 

Get absorbing colour at location.

Implemented in Media3DSingle, and Media3DMultiple.

virtual Colour Media3D::evaluateEmit const Vector3 p,
const CameraRay r,
CLR  allowederror,
FLT &  ilength
const [pure virtual]
 

Get emitting colour at location.

Implemented in Media3DSingle, and Media3DMultiple.

void Media3D::sample DBL  start,
DBL  end,
const LightRay r,
Colour absorb
 

Integrate absorbtion value over ray interval.

Colour Media3D::sample DBL  start,
DBL  end,
const CameraRay r,
Colour absorb
 

Integrate media contribution over ray interval.


The documentation for this class was generated from the following files:
Generated on Thu Jan 27 12:16:06 2005 for raytracer.kdevelop by doxygen 1.3.8