Sly Engine
CollisionVolumeBSphere Class Reference

#include <CollisionVolumeBSphere.h>

Inheritance diagram for CollisionVolumeBSphere:
Inheritance graph
Collaboration diagram for CollisionVolumeBSphere:
Collaboration graph

Public Member Functions

 CollisionVolumeBSphere ()=default
 Default constructor. More...
 
 CollisionVolumeBSphere (const CollisionVolumeBSphere &)
 Copy constructor. More...
 
 CollisionVolumeBSphere (CollisionVolumeBSphere &&)=delete
 Move constructor. More...
 
CollisionVolumeBSphereoperator= (const CollisionVolumeBSphere &)=default
 Assignment operator. More...
 
CollisionVolumeBSphereoperator= (CollisionVolumeBSphere &&)=delete
 Move assignment operator. More...
 
virtual ~CollisionVolumeBSphere ()=default
 Deconstructor. More...
 
virtual void DebugView (const Vect &col) const override
 Call to visualize the internal BSphere used for visualization calls of a generic CollisionVolume type. More...
 
virtual void ComputeData (Model *mod, const Matrix &mat) override
 Calculates and passes any data necessary to the BSphere. More...
 
virtual bool IntersectAccept (const CollisionVolume &otherVolume) const override
 Intersect accept utilizing the visitor pattern. More...
 
virtual bool IntersectVisit (const CollisionVolumeBSphere &other) const override
 Intersect visit for Sphere, using the visitor pattern. More...
 
virtual bool IntersectVisit (const CollisionVolumeAABB &other) const override
 Intersect call for AABB. Utilizing the visitor pattern. More...
 
virtual bool IntersectVisit (const CollisionVolumeOBB &other) const override
 Intersect call for OBB. Utilizing the visitor pattern. More...
 
Vect GetCenter () const
 Gets the center. More...
 
float GetRadius () const
 Gets the radius. More...
 
Matrix getWorld ()
 
- Public Member Functions inherited from CollisionVolume
 CollisionVolume ()=default
 Default constructor. More...
 
 CollisionVolume (const CollisionVolume &)=delete
 Copy constructor. More...
 
 CollisionVolume (CollisionVolume &&)=delete
 Move constructor. More...
 
CollisionVolumeoperator= (const CollisionVolume &)=default
 Assignment operator. More...
 
CollisionVolumeoperator= (CollisionVolume &&)=delete
 Move assignment operator. More...
 
virtual ~CollisionVolume ()=default
 Deconstructor. More...
 

Private Attributes

Vect Center
 The center. More...
 
Matrix world
 
float Radius
 The radius. More...
 

Constructor & Destructor Documentation

◆ CollisionVolumeBSphere() [1/3]

CollisionVolumeBSphere::CollisionVolumeBSphere ( )
default

Default constructor.

◆ CollisionVolumeBSphere() [2/3]

CollisionVolumeBSphere::CollisionVolumeBSphere ( const CollisionVolumeBSphere otherBSphere)

Copy constructor.

◆ CollisionVolumeBSphere() [3/3]

CollisionVolumeBSphere::CollisionVolumeBSphere ( CollisionVolumeBSphere &&  )
delete

Move constructor.

◆ ~CollisionVolumeBSphere()

virtual CollisionVolumeBSphere::~CollisionVolumeBSphere ( )
virtualdefault

Deconstructor.

Member Function Documentation

◆ ComputeData()

void CollisionVolumeBSphere::ComputeData ( Model *  mod,
const Matrix &  mat 
)
overridevirtual

Calculates and passes any data necessary to the BSphere.

Parameters
[in,out]modIf non-null, the model pointer.
matThe matrix.

Implements CollisionVolume.

Here is the caller graph for this function:

◆ DebugView()

void CollisionVolumeBSphere::DebugView ( const Vect &  col) const
overridevirtual

Call to visualize the internal BSphere used for visualization calls of a generic CollisionVolume type.

Parameters
colThe color.

Implements CollisionVolume.

Here is the call graph for this function:

◆ GetCenter()

Vect CollisionVolumeBSphere::GetCenter ( ) const

Gets the center.

Returns
The center.
Here is the caller graph for this function:

◆ GetRadius()

float CollisionVolumeBSphere::GetRadius ( ) const

Gets the radius.

Returns
The radius.
Here is the caller graph for this function:

◆ getWorld()

Matrix CollisionVolumeBSphere::getWorld ( )

◆ IntersectAccept()

bool CollisionVolumeBSphere::IntersectAccept ( const CollisionVolume other) const
overridevirtual

Intersect accept utilizing the visitor pattern.

Parameters
otherThe other collision volume.
Returns
True if it succeeds, false if it fails.

Implements CollisionVolume.

Here is the call graph for this function:

◆ IntersectVisit() [1/3]

bool CollisionVolumeBSphere::IntersectVisit ( const CollisionVolumeAABB other) const
overridevirtual

Intersect call for AABB. Utilizing the visitor pattern.

Parameters
otherThe other collision volume.
Returns
True if it succeeds, false if it fails.

Implements CollisionVolume.

Here is the call graph for this function:

◆ IntersectVisit() [2/3]

bool CollisionVolumeBSphere::IntersectVisit ( const CollisionVolumeBSphere other) const
overridevirtual

Intersect visit for Sphere, using the visitor pattern.

Parameters
otherThe other collision volume.
Returns
True if it succeeds, false if it fails.

Implements CollisionVolume.

Here is the call graph for this function:

◆ IntersectVisit() [3/3]

bool CollisionVolumeBSphere::IntersectVisit ( const CollisionVolumeOBB other) const
overridevirtual

Intersect call for OBB. Utilizing the visitor pattern.

Parameters
otherThe other collision volume.
Returns
True if it succeeds, false if it fails.

Implements CollisionVolume.

Here is the call graph for this function:

◆ operator=() [1/2]

CollisionVolumeBSphere& CollisionVolumeBSphere::operator= ( CollisionVolumeBSphere &&  )
delete

Move assignment operator.

◆ operator=() [2/2]

CollisionVolumeBSphere& CollisionVolumeBSphere::operator= ( const CollisionVolumeBSphere )
default

Assignment operator.

Member Data Documentation

◆ Center

Vect CollisionVolumeBSphere::Center
private

The center.

◆ Radius

float CollisionVolumeBSphere::Radius
private

The radius.

◆ world

Matrix CollisionVolumeBSphere::world
private

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