class LightCache

Light Cache for Media calculation More...

Definition#include <raytracer/lightcache.h>
List of all Methods
Annotated List
Files
Globals
Hierarchy
Index

Public Types

Public Methods

Public Members

Private Types

Private Methods

Private Members


Detailed Description

Light Cache for Media calculation

enum interpolationtype {EXACT, NEAREST, TRILINEAR_BEST, TRILINEAR}

interpolationtype

Type of interpolation: EXACT: no interpolation NEAREST: nearest point aligned on grid TRILINEAR_BEST: trilinear interpolation but do not take additional samples TRILINEAR: full trilinear interpolation with sampling of all necessary samples

interpolationtype itype

itype

 LightCache (const Scene* s)

LightCache

 LightCache (const LightCache&)

LightCache

[private]

LightCache&  operator= (const LightCache&)

operator=

[private]

void  setType (interpolationtype type, int size)

setType

Set cache interpolation type and cache size.

LightList*  lookup (const Vector3& location, CLR& err, DBL precision)

lookup

Looks up a point given by location and returns the list of lights there. Lookup is done according to the cache's interpolation type.

Parameters:
locationlookup point
errreturns approx. maximum error in lookup
precisionspace tolerance for lookup

MapEntry (class)

MapEntry

[private]

MapEntry holds one element of the cache.

Hash (class)

Hash

[private]

Holds the data in a hash data structure.

static const int sondsize

sondsize

[private]

LightList*  sample (const Vector3& p, CLR& err)

sample

[private]

const Scene* scene

scene

[private]

Hash map

map

[private]