ParticleAPI 3.0.0
Performant particle system API in C++ for interactive graphics
Public Member Functions | Public Attributes | List of all members
PDBox Struct Reference

Axis-aligned bounding box (AABB) More...

#include <pDomain.h>

Inheritance diagram for PDBox:
pDomain

Public Member Functions

 PDBox (const pVec &e0, const pVec &e1)
 
void PDBox_Cons (const pVec &e0, const pVec &e1)
 
bool Within (const pVec &pos) const
 Returns true if the point is in the box. More...
 
pVec Generate () const
 Returns a random point in this box. More...
 
float Size () const
 Returns the size of the domain (length, area, or volume). More...
 
std::shared_ptr< pDomaincopy () const
 
virtual bool Within (const pVec &) const =0
 Returns true if the given point is within the domain. More...
 
virtual pVec Generate () const =0
 Returns a random point in the domain. More...
 
virtual float Size () const =0
 Returns the size of the domain (length, area, or volume). More...
 
virtual std::shared_ptr< pDomaincopy () const =0
 

Public Attributes

pVec p0
 
pVec p1
 
pVec dif
 
float vol
 
- Public Attributes inherited from pDomain
pDomainType_E Which
 

Detailed Description

Axis-aligned bounding box (AABB)

e0 and e1 are opposite corners of an axis-aligned box. It doesn't matter which of each coordinate is min and which is max.

Generate returns a random point in this box. Within returns true if the point is in the box.

Constructor & Destructor Documentation

◆ PDBox()

PDBox ( const pVec e0,
const pVec e1 
)
inline

Member Function Documentation

◆ copy()

std::shared_ptr< pDomain > copy ( ) const
inlinevirtual

Implements pDomain.

◆ Generate()

pVec Generate ( ) const
inlinevirtual

Returns a random point in this box.

Implements pDomain.

◆ PDBox_Cons()

void PDBox_Cons ( const pVec e0,
const pVec e1 
)
inline

◆ Size()

float Size ( ) const
inlinevirtual

Returns the size of the domain (length, area, or volume).

Implements pDomain.

◆ Within()

bool Within ( const pVec pos) const
inlinevirtual

Returns true if the point is in the box.

Implements pDomain.

Member Data Documentation

◆ dif

pVec dif

◆ p0

pVec p0

◆ p1

pVec p1

◆ vol

float vol

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