CubbyFlow::ColliderSet3 Class Referencefinal

Collection of 3-D colliders. More...

#include <Core/Collider/ColliderSet3.h>

Inheritance diagram for CubbyFlow::ColliderSet3:
CubbyFlow::Collider3

Classes

class  Builder
 Front-end to create ColliderSet3 objects step by step. More...
 

Public Member Functions

 ColliderSet3 ()
 Default constructor. More...
 
 ColliderSet3 (const std::vector< Collider3Ptr > &others)
 Constructs with other colliders. More...
 
Vector3D VelocityAt (const Vector3D &point) const override
 Returns the velocity of the collider at given point. More...
 
void AddCollider (const Collider3Ptr &collider)
 Adds a collider to the set. More...
 
size_t NumberOfColliders () const
 Returns number of colliders. More...
 
Collider3Ptr Collider (size_t i) const
 Returns collider at index i. More...
 
- Public Member Functions inherited from CubbyFlow::Collider3
 Collider3 ()
 Default constructor. More...
 
virtual ~Collider3 ()
 Default destructor. More...
 
void ResolveCollision (double radius, double restitutionCoefficient, Vector3D *position, Vector3D *velocity)
 
double GetFrictionCoefficient () const
 Returns friction coefficient. More...
 
void SetFrictionCoefficient (double newFrictionCoeffient)
 Sets the friction coefficient. More...
 
const Surface3Ptr & GetSurface () const
 Returns the surface instance. More...
 
void Update (double currentTimeInSeconds, double timeIntervalInSeconds)
 Updates the collider state. More...
 
void SetOnBeginUpdateCallback (const OnBeginUpdateCallback &callback)
 Sets the callback function to be called when Collider3::update function is invoked. More...
 

Static Public Member Functions

static Builder GetBuilder ()
 Returns builder fox ColliderSet3. More...
 

Additional Inherited Members

- Public Types inherited from CubbyFlow::Collider3
using OnBeginUpdateCallback = std::function< void(Collider3 *, double, double)>
 Callback function type for update calls. More...
 
- Protected Member Functions inherited from CubbyFlow::Collider3
void SetSurface (const Surface3Ptr &newSurface)
 Assigns the surface instance from the subclass. More...
 
void GetClosestPoint (const Surface3Ptr &surface, const Vector3D &queryPoint, ColliderQueryResult *result) const
 Outputs closest point's information. More...
 
bool IsPenetrating (const ColliderQueryResult &colliderPoint, const Vector3D &position, double radius)
 Returns true if given point is in the opposite side of the surface. More...
 

Detailed Description

Collection of 3-D colliders.

Constructor & Destructor Documentation

◆ ColliderSet3() [1/2]

CubbyFlow::ColliderSet3::ColliderSet3 ( )

Default constructor.

◆ ColliderSet3() [2/2]

CubbyFlow::ColliderSet3::ColliderSet3 ( const std::vector< Collider3Ptr > &  others)
explicit

Constructs with other colliders.

Member Function Documentation

◆ AddCollider()

void CubbyFlow::ColliderSet3::AddCollider ( const Collider3Ptr &  collider)

Adds a collider to the set.

◆ Collider()

Collider3Ptr CubbyFlow::ColliderSet3::Collider ( size_t  i) const

Returns collider at index i.

◆ GetBuilder()

static Builder CubbyFlow::ColliderSet3::GetBuilder ( )
static

Returns builder fox ColliderSet3.

◆ NumberOfColliders()

size_t CubbyFlow::ColliderSet3::NumberOfColliders ( ) const

Returns number of colliders.

◆ VelocityAt()

Vector3D CubbyFlow::ColliderSet3::VelocityAt ( const Vector3D &  point) const
overridevirtual

Returns the velocity of the collider at given point.

Implements CubbyFlow::Collider3.


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