Nori

SurfaceAreaHeuristic3 Class Reference

Implements the 3D surface area heuristic so that it can be used by the GenericKDTree construction algorithm. More...

#include <gkdtree.h>

List of all members.

Public Member Functions

 SurfaceAreaHeuristic3 (const BoundingBox3f &aabb)
 Initialize the surface area heuristic with the bounds of a parent node.
std::pair< float, float > operator() (int axis, float leftWidth, float rightWidth) const

Static Public Member Functions

static float getQuantity (const BoundingBox3f &aabb)

Detailed Description

Implements the 3D surface area heuristic so that it can be used by the GenericKDTree construction algorithm.

Definition at line 2421 of file gkdtree.h.


Constructor & Destructor Documentation

SurfaceAreaHeuristic3::SurfaceAreaHeuristic3 ( const BoundingBox3f aabb) [inline]

Initialize the surface area heuristic with the bounds of a parent node.

Precomputes some information so that traversal probabilities of potential split planes can be evaluated efficiently

Definition at line 2430 of file gkdtree.h.


Member Function Documentation

static float SurfaceAreaHeuristic3::getQuantity ( const BoundingBox3f aabb) [inline, static]

Compute the underlying quantity used by the tree construction heuristic. This is used to compute the final cost of a kd-tree.

Definition at line 2460 of file gkdtree.h.

std::pair<float, float> SurfaceAreaHeuristic3::operator() ( int  axis,
float  leftWidth,
float  rightWidth 
) const [inline]

Given a split on axis axis that produces children having extents leftWidth and rightWidth along axis, compute the probability of traversing the left and right child during a typical query operation.

Definition at line 2450 of file gkdtree.h.


The documentation for this class was generated from the following file:
 All Classes Files Functions Variables Typedefs Enumerations Enumerator Defines