#include <BoundingIntervalHierarchy.h>
|
| | BIH () |
| |
| template<class BoundsFunc , class PrimArray > |
| void | build (PrimArray const &primitives, BoundsFunc const &getBounds, uint32 leafSize=3, bool printStats=false) |
| |
| uint32 | primCount () const |
| |
| G3D::AABox const & | bound () const |
| |
| template<typename RayCallback > |
| void | intersectRay (G3D::Ray const &r, RayCallback &intersectCallback, float &maxDist, bool stopAtFirst=false) const |
| |
| template<typename IsectCallback > |
| void | intersectPoint (G3D::Vector3 const &p, IsectCallback &intersectCallback) const |
| |
| bool | writeToFile (FILE *wf) const |
| |
| bool | readFromFile (FILE *rf) |
| |
|
| static void | createNode (std::vector< uint32 > &tempTree, int nodeIndex, uint32 left, uint32 right) |
| |
| static void | subdivide (int left, int right, std::vector< uint32 > &tempTree, buildData &dat, AABound &gridBox, AABound &nodeBox, int nodeIndex, int depth, BuildStats &stats) |
| |
Bounding Interval Hierarchy Class. Building and Ray-Intersection functions based on BIH from Sunflow, a Java Raytracer, released under MIT/X11 License http://sunflow.sourceforge.net/ Copyright (c) 2003-2007 Christopher Kulla
Definition at line 42 of file BoundingIntervalHierarchy.h.
◆ BIH()
◆ bound()
| G3D::AABox const & BIH::bound |
( |
| ) |
const |
|
inline |
◆ build()
template<class BoundsFunc , class PrimArray >
| void BIH::build |
( |
PrimArray const & |
primitives, |
|
|
BoundsFunc const & |
getBounds, |
|
|
uint32 |
leafSize = 3, |
|
|
bool |
printStats = false |
|
) |
| |
|
inline |
◆ buildHierarchy()
◆ createNode()
| static void BIH::createNode |
( |
std::vector< uint32 > & |
tempTree, |
|
|
int |
nodeIndex, |
|
|
uint32 |
left, |
|
|
uint32 |
right |
|
) |
| |
|
inlinestaticprotected |
◆ init_empty()
◆ intersectPoint()
template<typename IsectCallback >
| void BIH::intersectPoint |
( |
G3D::Vector3 const & |
p, |
|
|
IsectCallback & |
intersectCallback |
|
) |
| const |
|
inline |
◆ intersectRay()
template<typename RayCallback >
| void BIH::intersectRay |
( |
G3D::Ray const & |
r, |
|
|
RayCallback & |
intersectCallback, |
|
|
float & |
maxDist, |
|
|
bool |
stopAtFirst = false |
|
) |
| const |
|
inline |
◆ primCount()
| uint32 BIH::primCount |
( |
| ) |
const |
|
inline |
◆ readFromFile()
| bool BIH::readFromFile |
( |
FILE * |
rf | ) |
|
◆ subdivide()
◆ writeToFile()
| bool BIH::writeToFile |
( |
FILE * |
wf | ) |
const |
◆ bounds
◆ objects
| std::vector<uint32> BIH::objects |
|
protected |
◆ tree
The documentation for this class was generated from the following files: