rcrt Namespace Reference


Classes

class  BIH
class  BIHSplit
class  BIHNode
class  BSDF
class  BXDF
class  CookTorrance
class  Lambertian
class  Phong
class  Camera
class  PerspectiveCamera
class  Photon
class  PhotonKDTree
class  PhotonMap
struct  PKDSplitPlane
struct  PKDSearchP
class  PKDNode
class  Intersection
class  AreaLight
class  DirLight
class  Light
class  LightSample
class  PointLight
class  LSTree
class  LSTreeLeaf
class  LSTreeNode
class  AreaLightSampler
class  LightSampler
class  SphericalLight
class  AnimLoader
class  CameraLoader
class  BadConversion
class  LightLoader
class  MaterialLoader
class  ObjectLoader
class  SceneLoader
class  XMLLoader
class  BlackMaterial
class  BSDFMaterial
class  DebugMaterial
class  DielectricMaterial
class  ImageMaterial
class  LightMaterial
class  Material
class  MirrorMaterial
class  WallMaterial
class  WoodMaterial
class  HCoord4D
class  Matrix4D
class  NotNormalizableException
class  Point2D
class  Point3D
class  Vec2D
class  Vec3D
class  Vec4D
class  AffineObject
class  DynamicObject
class  Object
class  SolidObject
class  AABB
class  ConvexQuad
class  DisplacedTriangle
class  Primitive
class  Sphere
class  Triangle
class  Vertex
class  Ray
class  RGBAColor
class  RGBColor
class  KDNode
struct  PlanarEvent
struct  TraceableEntry
class  SAHKDtree
class  Scene
class  Image
class  ImageTexture
class  Texture
class  Texture2D
class  Texture3D
class  WaterTexture
class  WoodTexture
class  Traceable
class  BIHTracer
class  DebugTracer
class  PhotonTracer
class  RayCaster
class  SimpleTracer
class  StereoMetaTracer
class  SuperMetaTracer
class  ThreadedMetaTracer
class  TracingStrategy

Enumerations

enum  BXDFType { REFLECTIVE, TRANSMISSIVE, BOTH }
enum  ScatterEvent {
  STORE, DIFFUSE, SPECULAR, REFRACTED,
  INVALID
}
enum  ShadowType { NONE, PENUMBRA, FULL }
enum  LightType { POINT, AREA, DIR, SPHERE }
enum  AnimType { STATIC, AFFINE, DYNAMIC }
enum  Side { BOTH_SIDES = 0, LEFT_ONLY = 1, RIGHT_ONLY = 2 }
enum  OptimalCostSide { NOT_SET = 0, LEFT = 1, RIGHT = 2 }
enum  EventType { END = 0, IN_PLANE = 1, START = 2 }

Functions

float fresnelTerm (float c, std::complex< float > n)
Vec3D snell (const Vec3D &wInc, const Vec3D &normal, const float &eta)
float frRDielectric (const float &cosI, const float &cosT, const float &etaI, const float &etaT)
float frTDielectric (const float &cosI, const float &cosT, const float &etaI, const float &etaT)
template<typename T>
std::string toString (const T &x)
template<typename T>
void convert (const std::string &s, T &x, bool failIfLeftoverChars=true)
template<typename T>
convertTo (const std::string &s, bool failIfLeftoverChars=true)
std::ostream & operator<< (std::ostream &out, const Matrix4D &m)
std::ostream & operator<< (std::ostream &o, const Point2D &v)
std::ostream & operator<< (std::ostream &o, const Point3D &v)
Vec3D operator * (const float &f, const Vec3D &vec)
std::ostream & operator<< (std::ostream &o, const Vec3D &v)
std::ostream & operator<< (std::ostream &o, const Vec4D &v)
std::ostream & operator<< (std::ostream &o, const AABB &box)
std::ostream & operator<< (std::ostream &o, const Ray &r)
std::ostream & operator<< (std::ostream &o, const RGBAColor &v)
std::ostream & operator<< (std::ostream &o, const RGBColor &c)
RGBColor operator- (const float &f, const RGBColor &c)
void eatComments (FILE *f)
void eatWhitespace (FILE *f)


Enumeration Type Documentation

enum rcrt::AnimType

Enumerator:
STATIC 
AFFINE 
DYNAMIC 

Definition at line 17 of file ObjectLoader.h.

enum rcrt::BXDFType

Enumerator:
REFLECTIVE 
TRANSMISSIVE 
BOTH 

Definition at line 6 of file BXDFType.h.

enum rcrt::EventType

Enum that describes the Event Type

Enumerator:
END 
IN_PLANE 
START 

Definition at line 39 of file SAHKDtree.hpp.

enum rcrt::LightType

Enumerator:
POINT 
AREA 
DIR 
SPHERE 

Definition at line 11 of file LightLoader.h.

enum rcrt::OptimalCostSide

Enum that describes where to put primitives taht are lying in the split plane

Enumerator:
NOT_SET 
LEFT 
RIGHT 

Definition at line 29 of file SAHKDtree.hpp.

enum rcrt::ScatterEvent

Enumerator:
STORE 
DIFFUSE 
SPECULAR 
REFRACTED 
INVALID 

Definition at line 12 of file Photon.h.

enum rcrt::ShadowType

Enumerator:
NONE 
PENUMBRA 
FULL 

Definition at line 12 of file AreaLightSampler.h.

enum rcrt::Side

Enum that describes on wich side of the split plane a primitive is lying

Enumerator:
BOTH_SIDES 
LEFT_ONLY 
RIGHT_ONLY 

Definition at line 19 of file SAHKDtree.hpp.


Function Documentation

template<typename T>
void rcrt::convert ( const std::string &  s,
T &  x,
bool  failIfLeftoverChars = true 
) [inline]

Definition at line 32 of file conversion.hpp.

Referenced by convertTo().

template<typename T>
T rcrt::convertTo ( const std::string &  s,
bool  failIfLeftoverChars = true 
) [inline]

Definition at line 42 of file conversion.hpp.

References convert().

void rcrt::eatComments ( FILE *  f  ) 

Definition at line 39 of file Image.cpp.

Referenced by rcrt::Image::ReadPPM().

void rcrt::eatWhitespace ( FILE *  f  ) 

Definition at line 51 of file Image.cpp.

Referenced by rcrt::Image::ReadPPM().

float rcrt::fresnelTerm ( float  c,
std::complex< float >  n 
) [inline]

Fresnel term as used in the Cook Torrance BRDF.

Definition at line 12 of file fresnel.hpp.

Referenced by rcrt::CookTorrance::evalSpecular().

float rcrt::frRDielectric ( const float &  cosI,
const float &  cosT,
const float &  etaI,
const float &  etaT 
) [inline]

Fresnel equation for the ratio of reflected light at a surface. Only applies to dielectrics.

Parameters:
cosI the incoming angle. (direction . normal)
cosT the transmitted angle.
etaI the ior of the first medium
etaT the ior of the second medium
Returns:
the ratio of reflected light

Definition at line 51 of file fresnel.hpp.

Referenced by frTDielectric().

float rcrt::frTDielectric ( const float &  cosI,
const float &  cosT,
const float &  etaI,
const float &  etaT 
) [inline]

Fresnel equation for the ratio of refracted light at a surface. Only applies to dielectrics.

Parameters:
cosI the incoming angle. (direction . normal)
cosT the transmitted angle.
etaI the ior of the first medium
etaT the ior of the second medium
Returns:
the radio of transmitted light

Definition at line 68 of file fresnel.hpp.

References frRDielectric().

Referenced by rcrt::DielectricMaterial::scatterPhoton(), rcrt::SimpleTracer::trace(), and rcrt::PhotonTracer::trace().

Vec3D rcrt::operator * ( const float &  f,
const Vec3D &  vec 
) [inline]

Definition at line 52 of file Vec3D.h.

References rcrt::Vec3D::values.

RGBColor rcrt::operator- ( const float &  f,
const RGBColor &  c 
) [inline]

Definition at line 51 of file RGBColor.h.

References rcrt::RGBColor::b(), rcrt::RGBColor::g(), and rcrt::RGBColor::r().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const RGBColor &  c 
) [inline]

Definition at line 45 of file RGBColor.h.

References rcrt::RGBColor::b(), rcrt::RGBColor::g(), and rcrt::RGBColor::r().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const RGBAColor &  v 
) [inline]

Definition at line 45 of file RGBAColor.h.

References rcrt::RGBAColor::a(), rcrt::RGBAColor::b(), rcrt::RGBAColor::g(), and rcrt::RGBAColor::r().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const Ray &  r 
) [inline]

Definition at line 60 of file Ray.h.

References rcrt::Ray::currDist(), rcrt::Ray::dir(), rcrt::Ray::maxDist(), rcrt::Ray::minDist(), and rcrt::Ray::org().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const AABB &  box 
) [inline]

Definition at line 114 of file AABB.h.

References rcrt::AABB::getMaxP(), and rcrt::AABB::getMinP().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const Vec4D &  v 
) [inline]

Definition at line 42 of file Vec4D.h.

References rcrt::Vec4D::w(), rcrt::Vec4D::x(), rcrt::Vec4D::y(), and rcrt::Vec4D::z().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const Vec3D &  v 
) [inline]

Definition at line 57 of file Vec3D.h.

References rcrt::Vec3D::x(), rcrt::Vec3D::y(), and rcrt::Vec3D::z().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const Point3D &  v 
) [inline]

Definition at line 46 of file Point3D.h.

References rcrt::Point3D::x(), rcrt::Point3D::y(), and rcrt::Point3D::z().

std::ostream& rcrt::operator<< ( std::ostream &  o,
const Point2D &  v 
) [inline]

Definition at line 40 of file Point2D.h.

References rcrt::Point2D::x(), and rcrt::Point2D::y().

std::ostream& rcrt::operator<< ( std::ostream &  out,
const Matrix4D &  m 
) [inline]

Definition at line 136 of file Matrix4D.h.

References rcrt::Matrix4D::values.

Vec3D rcrt::snell ( const Vec3D &  wInc,
const Vec3D &  normal,
const float &  eta 
) [inline]

Snell's law of refraction. eta = iorIncoming / iorRefracted

Definition at line 28 of file fresnel.hpp.

References rcrt::Vec3D::reflect().

Referenced by rcrt::DielectricMaterial::scatterPhoton(), and rcrt::BSDFMaterial::scatterPhoton().

template<typename T>
std::string rcrt::toString ( const T &  x  )  [inline]

Definition at line 22 of file conversion.hpp.

Referenced by rcrt::BIHNode< rcrt::Traceable >::initNode(), rcrtAnim(), testPhoton(), testPhotonRCRT(), and rcrt::ObjectLoader::updateMatrix().


Generated on Thu Jan 31 19:32:17 2008 for RenderingCompetitionRayTracer by  doxygen 1.5.3