TinyRaytracer 0.1
A simple C++ raytracer
Loading...
Searching...
No Matches
Public Member Functions | Static Public Member Functions | List of all members
BVH Class Reference
Inheritance diagram for BVH:
Object

Public Member Functions

 BVH (std::vector< shared_ptr< Object > > &objs, int start, int end, int axis)
 
ObjectInfo checkObject (Ray &ray) override
 
AABB getBox () override
 
- Public Member Functions inherited from Object
virtual ObjectInfo checkObject (Ray &ray)=0
 
virtual void setProperties (RGB, RGB, double, double)
 
virtual AABB getBox ()=0
 

Static Public Member Functions

static bool box_compare (const shared_ptr< Object > a, const shared_ptr< Object > b, int axis_index)
 
static bool box_x_compare (const shared_ptr< Object > a, const shared_ptr< Object > b)
 
static bool box_y_compare (const shared_ptr< Object > a, const shared_ptr< Object > b)
 
static bool box_z_compare (const shared_ptr< Object > a, const shared_ptr< Object > b)
 

Additional Inherited Members

- Public Attributes inherited from Object
AABB bbox
 Axis-aligned bounding box for the Object class. For BVH traversal.
 

Member Function Documentation

◆ checkObject()

ObjectInfo BVH::checkObject ( Ray ray)
inlineoverridevirtual

Implements Object.

◆ getBox()

AABB BVH::getBox ( )
inlineoverridevirtual

Implements Object.


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