Jet  v1.3.3
Classes | Public Member Functions | Static Public Member Functions | Public Attributes | List of all members
jet::RigidBodyCollider3 Class Referencefinal

3-D rigid body collider class. More...

#include <jet/rigid_body_collider3.h>

Inheritance diagram for jet::RigidBodyCollider3:
jet::Collider3

Classes

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

Public Member Functions

 RigidBodyCollider3 (const Surface3Ptr &surface)
 Constructs a collider with a surface. More...
 
 RigidBodyCollider3 (const Surface3Ptr &surface, const Vector3D &linearVelocity, const Vector3D &angularVelocity)
 Constructs a collider with a surface and other parameters. More...
 
Vector3D velocityAt (const Vector3D &point) const override
 Returns the velocity of the collider at given point. More...
 
- Public Member Functions inherited from jet::Collider3
 Collider3 ()
 Default constructor. More...
 
virtual ~Collider3 ()
 Default destructor. More...
 
void resolveCollision (double radius, double restitutionCoefficient, Vector3D *position, Vector3D *velocity)
 
double frictionCoefficient () const
 Returns friction coefficent. More...
 
void setFrictionCoefficient (double newFrictionCoeffient)
 Sets the friction coefficient. More...
 
const Surface3Ptrsurface () 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 builder ()
 Returns builder fox RigidBodyCollider3. More...
 

Public Attributes

Vector3D linearVelocity
 Linear velocity of the rigid body. More...
 
Vector3D angularVelocity
 Angular velocity of the rigid body. More...
 

Additional Inherited Members

- Public Types inherited from jet::Collider3
typedef std::function< void(Collider3 *, double, double)> OnBeginUpdateCallback
 Callback function type for update calls. More...
 
- Protected Member Functions inherited from jet::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

3-D rigid body collider class.

This class implements 3-D rigid body collider. The collider can only take rigid body motion with linear and rotational velocities.

Constructor & Destructor Documentation

◆ RigidBodyCollider3() [1/2]

jet::RigidBodyCollider3::RigidBodyCollider3 ( const Surface3Ptr surface)
explicit

Constructs a collider with a surface.

◆ RigidBodyCollider3() [2/2]

jet::RigidBodyCollider3::RigidBodyCollider3 ( const Surface3Ptr surface,
const Vector3D linearVelocity,
const Vector3D angularVelocity 
)

Constructs a collider with a surface and other parameters.

Member Function Documentation

◆ builder()

static Builder jet::RigidBodyCollider3::builder ( )
static

Returns builder fox RigidBodyCollider3.

◆ velocityAt()

Vector3D jet::RigidBodyCollider3::velocityAt ( const Vector3D point) const
overridevirtual

Returns the velocity of the collider at given point.

Implements jet::Collider3.

Member Data Documentation

◆ angularVelocity

Vector3D jet::RigidBodyCollider3::angularVelocity

Angular velocity of the rigid body.

◆ linearVelocity

Vector3D jet::RigidBodyCollider3::linearVelocity

Linear velocity of the rigid body.


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