Strong Coupling Core  0.1.0
Library for solving a system of strong coupled physical subsystems.
 All Classes Namespaces Files Functions Variables Macros Pages
Public Member Functions | Public Attributes | List of all members
sc::RigidBody Class Reference

Simple rigid body class for testing. More...

#include <RigidBody.h>

Public Member Functions

 RigidBody ()
 
virtual ~RigidBody ()
 
void integrate (double dt)
 Move forward in time. More...
 
void resetForces ()
 
void getDirectionalDerivative (Vec3 &outSpatial, Vec3 &outRotational, Vec3 &position, const Vec3 &spatialDirection, const Vec3 &rotationalDirection)
 
void saveState ()
 
void restoreState ()
 
void setLocalInertiaAsBox (double mass, const Vec3 &halfExtents)
 
void updateWorldInertia ()
 

Public Attributes

Mat3 m_invInertiaWorld
 
Vec3 m_position
 
Vec3 m_velocity
 
Vec3 m_angularVelocity
 
Vec3 m_force
 
Vec3 m_torque
 
Vec3 m_gravity
 
double m_invMass
 
Vec3 m_invInertia
 
Quat m_quaternion
 
Vec3 m_position2
 
Vec3 m_velocity2
 
Vec3 m_force2
 
Vec3 m_torque2
 
Vec3 m_angularVelocity2
 
Quat m_quaternion2
 
Vec3 m_gravity2
 
double m_invMass2
 
Vec3 m_invInertia2
 
Mat3 m_invInertiaWorld2
 

Detailed Description

Simple rigid body class for testing.

Constructor & Destructor Documentation

RigidBody::RigidBody ( )
RigidBody::~RigidBody ( )
virtual

Member Function Documentation

void RigidBody::getDirectionalDerivative ( Vec3 outSpatial,
Vec3 outRotational,
Vec3 position,
const Vec3 spatialDirection,
const Vec3 rotationalDirection 
)
void RigidBody::integrate ( double  dt)

Move forward in time.

void RigidBody::resetForces ( )
void RigidBody::restoreState ( )
void RigidBody::saveState ( )
void RigidBody::setLocalInertiaAsBox ( double  mass,
const Vec3 halfExtents 
)
void RigidBody::updateWorldInertia ( )

Member Data Documentation

Vec3 sc::RigidBody::m_angularVelocity
Vec3 sc::RigidBody::m_angularVelocity2
Vec3 sc::RigidBody::m_force
Vec3 sc::RigidBody::m_force2
Vec3 sc::RigidBody::m_gravity
Vec3 sc::RigidBody::m_gravity2
Vec3 sc::RigidBody::m_invInertia
Vec3 sc::RigidBody::m_invInertia2
Mat3 sc::RigidBody::m_invInertiaWorld
Mat3 sc::RigidBody::m_invInertiaWorld2
double sc::RigidBody::m_invMass
double sc::RigidBody::m_invMass2
Vec3 sc::RigidBody::m_position
Vec3 sc::RigidBody::m_position2
Quat sc::RigidBody::m_quaternion
Quat sc::RigidBody::m_quaternion2
Vec3 sc::RigidBody::m_torque
Vec3 sc::RigidBody::m_torque2
Vec3 sc::RigidBody::m_velocity
Vec3 sc::RigidBody::m_velocity2

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