#include <octree.h>
Public Member Functions | |
| Octree (const BBox &b, int md=16) | |
| void | Add (const NodeData &dataItem, const BBox &dataBound) |
| void | Lookup (const Point &p, const LookupProc &process) |
Private Member Functions | |
| void | addPrivate (OctNode< NodeData > *node, const BBox &nodeBound, const NodeData &dataItem, const BBox &dataBound, float diag2, int depth=0) |
| void | lookupPrivate (OctNode< NodeData > *node, const BBox &nodeBound, const Point &P, const LookupProc &process) |
Private Attributes | |
| int | maxDepth |
| BBox | bound |
| OctNode< NodeData > | root |
Definition at line 45 of file octree.h.
| lux::Octree< NodeData, LookupProc >::Octree | ( | const BBox & | b, | |
| int | md = 16 | |||
| ) | [inline] |
| void lux::Octree< NodeData, LookupProc >::Add | ( | const NodeData & | dataItem, | |
| const BBox & | dataBound | |||
| ) | [inline] |
Definition at line 52 of file octree.h.
Referenced by lux::IrradianceCache::IndirectLo().
| void lux::Octree< NodeData, LookupProc >::addPrivate | ( | OctNode< NodeData > * | node, | |
| const BBox & | nodeBound, | |||
| const NodeData & | dataItem, | |||
| const BBox & | dataBound, | |||
| float | diag2, | |||
| int | depth = 0 | |||
| ) | [inline, private] |
Definition at line 74 of file octree.h.
References lux::OctNode< NodeData >::children, lux::OctNode< NodeData >::data, lux::DistanceSquared(), lux::Octree< NodeData, LookupProc >::maxDepth, lux::BBox::pMax, lux::BBox::pMin, lux::Point::x, lux::Point::y, and lux::Point::z.
Referenced by lux::Octree< IrradianceSample, IrradProcess >::Add().
| void lux::Octree< NodeData, LookupProc >::Lookup | ( | const Point & | p, | |
| const LookupProc & | process | |||
| ) | [inline] |
Definition at line 56 of file octree.h.
Referenced by lux::IrradianceCache::InterpolateIrradiance().
| void lux::Octree< NodeData, LookupProc >::lookupPrivate | ( | OctNode< NodeData > * | node, | |
| const BBox & | nodeBound, | |||
| const Point & | P, | |||
| const LookupProc & | process | |||
| ) | [inline, private] |
Definition at line 128 of file octree.h.
References lux::OctNode< NodeData >::children, lux::OctNode< NodeData >::data, lux::BBox::pMax, lux::BBox::pMin, lux::Point::x, lux::Point::y, and lux::Point::z.
Referenced by lux::Octree< IrradianceSample, IrradProcess >::Lookup().
BBox lux::Octree< NodeData, LookupProc >::bound [private] |
Definition at line 69 of file octree.h.
Referenced by lux::Octree< IrradianceSample, IrradProcess >::Add(), and lux::Octree< IrradianceSample, IrradProcess >::Lookup().
int lux::Octree< NodeData, LookupProc >::maxDepth [private] |
Definition at line 68 of file octree.h.
Referenced by lux::Octree< NodeData, LookupProc >::addPrivate(), and lux::Octree< IrradianceSample, IrradProcess >::Octree().
OctNode<NodeData> lux::Octree< NodeData, LookupProc >::root [private] |
Definition at line 70 of file octree.h.
Referenced by lux::Octree< IrradianceSample, IrradProcess >::Add(), and lux::Octree< IrradianceSample, IrradProcess >::Lookup().
1.6.1