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 Surface3PtrGetSurface () 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: