Photon Engine 2.0.0-beta
A physically based renderer.
Loading...
Searching...
No Matches
ph::KdtreeAABB Class Referencefinal

#include <KdtreeAABB.h>

Public Member Functions

 KdtreeAABB ()
 
 KdtreeAABB (const math::AABB3D &aabb)
 
 KdtreeAABB (const math::Vector3R &minVertex, const math::Vector3R &maxVertex)
 
bool isIntersectingVolume (const Ray &ray, real *const out_rayNearHitDist, real *const out_rayFarHitDist) const
 
bool isIntersectingVolume (const math::AABB3D &aabb) const
 
bool trySplitAt (const int32 axis, const real splitPos, KdtreeAABB *const out_negativeAABB, KdtreeAABB *const out_positiveAABB) const
 
void getMinVertex (real *const out_vector3f) const
 
void getMaxVertex (real *const out_vector3f) const
 
real getMinVertex (const int32 axis) const
 
real getMaxVertex (const int32 axis) const
 
void getAABB (math::AABB3D *const out_aabb) const
 
real getExtent (const int32 axis) const
 
real getSurfaceArea () const
 

Constructor & Destructor Documentation

◆ KdtreeAABB() [1/3]

ph::KdtreeAABB::KdtreeAABB ( )

◆ KdtreeAABB() [2/3]

ph::KdtreeAABB::KdtreeAABB ( const math::AABB3D & aabb)
explicit

◆ KdtreeAABB() [3/3]

ph::KdtreeAABB::KdtreeAABB ( const math::Vector3R & minVertex,
const math::Vector3R & maxVertex )

Member Function Documentation

◆ getAABB()

void ph::KdtreeAABB::getAABB ( math::AABB3D *const out_aabb) const

◆ getExtent()

real ph::KdtreeAABB::getExtent ( const int32 axis) const
inline

◆ getMaxVertex() [1/2]

real ph::KdtreeAABB::getMaxVertex ( const int32 axis) const

◆ getMaxVertex() [2/2]

void ph::KdtreeAABB::getMaxVertex ( real *const out_vector3f) const

◆ getMinVertex() [1/2]

real ph::KdtreeAABB::getMinVertex ( const int32 axis) const

◆ getMinVertex() [2/2]

void ph::KdtreeAABB::getMinVertex ( real *const out_vector3f) const

◆ getSurfaceArea()

real ph::KdtreeAABB::getSurfaceArea ( ) const
inline

◆ isIntersectingVolume() [1/2]

bool ph::KdtreeAABB::isIntersectingVolume ( const math::AABB3D & aabb) const

◆ isIntersectingVolume() [2/2]

bool ph::KdtreeAABB::isIntersectingVolume ( const Ray & ray,
real *const out_rayNearHitDist,
real *const out_rayFarHitDist ) const

◆ trySplitAt()

bool ph::KdtreeAABB::trySplitAt ( const int32 axis,
const real splitPos,
KdtreeAABB *const out_negativeAABB,
KdtreeAABB *const out_positiveAABB ) const

The documentation for this class was generated from the following files: