Classes |
Public Member Functions |
Static Public Member Functions |
Public Attributes |
List of all members
CubbyFlow::RigidBodyCollider2 Class Referencefinal
2-D rigid body collider class. More...
#include <Core/Collider/RigidBodyCollider2.h>
Inheritance diagram for CubbyFlow::RigidBodyCollider2:
Classes | |
class | Builder |
Front-end to create RigidBodyCollider2 objects step by step. More... | |
Public Member Functions | |
RigidBodyCollider2 (const Surface2Ptr &surface) | |
Constructs a collider with a surface. More... | |
RigidBodyCollider2 (const Surface2Ptr &surface, const Vector2D &linearVelocity, double angularVelocity) | |
Constructs a collider with a surface and other parameters. More... | |
Vector2D | VelocityAt (const Vector2D &point) const override |
Returns the velocity of the collider at given point . More... | |
Public Member Functions inherited from CubbyFlow::Collider2 | |
Collider2 () | |
Default constructor. More... | |
virtual | ~Collider2 () |
Default destructor. More... | |
void | ResolveCollision (double radius, double restitutionCoefficient, Vector2D *position, Vector2D *velocity) |
double | GetFrictionCoefficient () const |
Returns friction coefficient. More... | |
void | SetFrictionCoefficient (double newFrictionCoeffient) |
Sets the friction coefficient. More... | |
const Surface2Ptr & | 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 Collider2::update function is invoked. More... | |
Static Public Member Functions | |
static Builder | GetBuilder () |
Returns builder fox RigidBodyCollider2. More... | |
Public Attributes | |
Vector2D | linearVelocity |
Linear velocity of the rigid body. More... | |
double | angularVelocity = 0.0 |
Angular velocity of the rigid body. More... | |
Additional Inherited Members | |
Public Types inherited from CubbyFlow::Collider2 | |
using | OnBeginUpdateCallback = std::function< void(Collider2 *, double, double)> |
Callback function type for update calls. More... | |
Protected Member Functions inherited from CubbyFlow::Collider2 | |
void | SetSurface (const Surface2Ptr &newSurface) |
Assigns the surface instance from the subclass. More... | |
void | GetClosestPoint (const Surface2Ptr &surface, const Vector2D &queryPoint, ColliderQueryResult *result) const |
Outputs closest point's information. More... | |
bool | IsPenetrating (const ColliderQueryResult &colliderPoint, const Vector2D &position, double radius) |
Returns true if given point is in the opposite side of the surface. More... | |
Detailed Description
2-D rigid body collider class.
This class implements 2-D rigid body collider. The collider can only take rigid body motion with linear and rotational velocities.
Constructor & Destructor Documentation
◆ RigidBodyCollider2() [1/2]
|
explicit |
Constructs a collider with a surface.
◆ RigidBodyCollider2() [2/2]
CubbyFlow::RigidBodyCollider2::RigidBodyCollider2 | ( | const Surface2Ptr & | surface, |
const Vector2D & | linearVelocity, | ||
double | angularVelocity | ||
) |
Constructs a collider with a surface and other parameters.
Member Function Documentation
◆ GetBuilder()
|
static |
Returns builder fox RigidBodyCollider2.
◆ VelocityAt()
Returns the velocity of the collider at given point
.
Implements CubbyFlow::Collider2.
Member Data Documentation
◆ angularVelocity
double CubbyFlow::RigidBodyCollider2::angularVelocity = 0.0 |
Angular velocity of the rigid body.
◆ linearVelocity
Vector2D CubbyFlow::RigidBodyCollider2::linearVelocity |
Linear velocity of the rigid body.
The documentation for this class was generated from the following file:
- Core/Collider/RigidBodyCollider2.h