XII Release 0.1.0
Loading...
Searching...
No Matches
xiiSimdBBoxSphere Class Reference

Public Member Functions

 XII_DECLARE_POD_TYPE ()
 
 xiiSimdBBoxSphere ()
 Default constructor does not initialize anything.
 
 xiiSimdBBoxSphere (const xiiSimdBBox &box)
 Constructs the bounds from the given box. The sphere radius is calculated from the box extends.
 
 xiiSimdBBoxSphere (const xiiSimdBSphere &sphere)
 Constructs the bounds from the given sphere. The box extends are calculated from the sphere radius.
 
bool IsValid () const
 Checks whether the bounds is in an invalid state.
 
bool IsNaN () const
 Checks whether any component is NaN.
 
xiiSimdBBox GetBox () const
 Returns the bounding box.
 
xiiSimdBSphere GetSphere () const
 Returns the bounding sphere.
 
void ExpandToInclude (const xiiSimdBBoxSphere &rhs)
 Expands the bounds such that the given bounds are inside it.
 
void Transform (const xiiSimdTransform &t)
 Transforms the bounds in its local space.
 
void Transform (const xiiSimdMat4f &mMat)
 Transforms the bounds in its local space.
 
bool operator== (const xiiSimdBBoxSphere &rhs) const
 
bool operator!= (const xiiSimdBBoxSphere &rhs) const
 

Static Public Member Functions

static xiiSimdBBoxSphere MakeZero ()
 Creates an object with all zero values. These are valid bounds around the origin with no volume.
 
static xiiSimdBBoxSphere MakeInvalid ()
 Creates an 'invalid' object, ie one with negative extents/radius. Invalid objects can be made valid through ExpandToInclude().
 
static xiiSimdBBoxSphere MakeFromCenterExtents (const xiiSimdVec4f &vCenter, const xiiSimdVec4f &vBoxHalfExtents, const xiiSimdFloat &fSphereRadius)
 Creates an object from the given center point and extents.
 
static xiiSimdBBoxSphere MakeFromPoints (const xiiSimdVec4f *pPoints, xiiUInt32 uiNumPoints, xiiUInt32 uiStride=sizeof(xiiSimdVec4f))
 Creates an object that contains all the provided points.
 
static xiiSimdBBoxSphere MakeFromBox (const xiiSimdBBox &box)
 Creates an object from another bounding box.
 
static xiiSimdBBoxSphere MakeFromSphere (const xiiSimdBSphere &sphere)
 Creates an object from another bounding sphere.
 
static xiiSimdBBoxSphere MakeFromBoxAndSphere (const xiiSimdBBox &box, const xiiSimdBSphere &sphere)
 Creates an object from another bounding box and a sphere.
 

Public Attributes

xiiSimdVec4f m_CenterAndRadius
 
xiiSimdVec4f m_BoxHalfExtents
 

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