#include <b2RevoluteJoint.h>
Public Member Functions | |
b2Vec2 | GetAnchorA () const |
Get the anchor point on bodyA in world coordinates. | |
b2Vec2 | GetAnchorB () const |
Get the anchor point on bodyB in world coordinates. | |
b2Vec2 | GetReactionForce (float32 inv_dt) const |
Get the reaction force on body2 at the joint anchor in Newtons. | |
float32 | GetReactionTorque (float32 inv_dt) const |
Get the reaction torque on body2 in N*m. | |
float32 | GetJointAngle () const |
Get the current joint angle in radians. | |
float32 | GetJointSpeed () const |
Get the current joint angle speed in radians per second. | |
bool | IsLimitEnabled () const |
Is the joint limit enabled? | |
void | EnableLimit (bool flag) |
Enable/disable the joint limit. | |
float32 | GetLowerLimit () const |
Get the lower joint limit in radians. | |
float32 | GetUpperLimit () const |
Get the upper joint limit in radians. | |
void | SetLimits (float32 lower, float32 upper) |
Set the joint limits in radians. | |
bool | IsMotorEnabled () const |
Is the joint motor enabled? | |
void | EnableMotor (bool flag) |
Enable/disable the joint motor. | |
void | SetMotorSpeed (float32 speed) |
Set the motor speed in radians per second. | |
float32 | GetMotorSpeed () const |
Get the motor speed in radians per second. | |
void | SetMaxMotorTorque (float32 torque) |
Set the maximum motor torque, usually in N-m. | |
float32 | GetMotorTorque () const |
Get the current motor torque, usually in N-m. | |
Protected Member Functions | |
b2RevoluteJoint (const b2RevoluteJointDef *def) | |
void | InitVelocityConstraints (const b2TimeStep &step) |
void | SolveVelocityConstraints (const b2TimeStep &step) |
bool | SolvePositionConstraints (float32 baumgarte) |
Protected Attributes | |
b2Vec2 | m_localAnchor1 |
b2Vec2 | m_localAnchor2 |
b2Vec3 | m_impulse |
float32 | m_motorImpulse |
b2Mat33 | m_mass |
float32 | m_motorMass |
bool | m_enableMotor |
float32 | m_maxMotorTorque |
float32 | m_motorSpeed |
bool | m_enableLimit |
float32 | m_referenceAngle |
float32 | m_lowerAngle |
float32 | m_upperAngle |
b2LimitState | m_limitState |
Friends | |
class | b2Joint |
class | b2GearJoint |
A revolute joint constrains two bodies to share a common point while they are free to rotate about the point. The relative rotation about the shared point is the joint angle. You can limit the relative rotation with a joint limit that specifies a lower and upper angle. You can use a motor to drive the relative rotation about the shared point. A maximum motor torque is provided so that infinite forces are not generated.
b2RevoluteJoint::b2RevoluteJoint | ( | const b2RevoluteJointDef * | def | ) | [protected] |
void b2RevoluteJoint::EnableLimit | ( | bool | flag | ) |
Enable/disable the joint limit.
void b2RevoluteJoint::EnableMotor | ( | bool | flag | ) |
Enable/disable the joint motor.
b2Vec2 b2RevoluteJoint::GetAnchorA | ( | ) | const [virtual] |
Get the anchor point on bodyA in world coordinates.
Implements b2Joint.
b2Vec2 b2RevoluteJoint::GetAnchorB | ( | ) | const [virtual] |
Get the anchor point on bodyB in world coordinates.
Implements b2Joint.
float32 b2RevoluteJoint::GetJointAngle | ( | ) | const |
Get the current joint angle in radians.
float32 b2RevoluteJoint::GetJointSpeed | ( | ) | const |
Get the current joint angle speed in radians per second.
float32 b2RevoluteJoint::GetLowerLimit | ( | ) | const |
Get the lower joint limit in radians.
float32 b2RevoluteJoint::GetMotorSpeed | ( | ) | const [inline] |
Get the motor speed in radians per second.
float32 b2RevoluteJoint::GetMotorTorque | ( | ) | const |
Get the current motor torque, usually in N-m.
Get the reaction force on body2 at the joint anchor in Newtons.
Implements b2Joint.
Get the reaction torque on body2 in N*m.
Implements b2Joint.
float32 b2RevoluteJoint::GetUpperLimit | ( | ) | const |
Get the upper joint limit in radians.
void b2RevoluteJoint::InitVelocityConstraints | ( | const b2TimeStep & | step | ) | [protected, virtual] |
Implements b2Joint.
bool b2RevoluteJoint::IsLimitEnabled | ( | ) | const |
Is the joint limit enabled?
bool b2RevoluteJoint::IsMotorEnabled | ( | ) | const |
Is the joint motor enabled?
void b2RevoluteJoint::SetMaxMotorTorque | ( | float32 | torque | ) |
Set the maximum motor torque, usually in N-m.
void b2RevoluteJoint::SetMotorSpeed | ( | float32 | speed | ) |
Set the motor speed in radians per second.
bool b2RevoluteJoint::SolvePositionConstraints | ( | float32 | baumgarte | ) | [protected, virtual] |
Implements b2Joint.
void b2RevoluteJoint::SolveVelocityConstraints | ( | const b2TimeStep & | step | ) | [protected, virtual] |
Implements b2Joint.
friend class b2GearJoint [friend] |
friend class b2Joint [friend] |
bool b2RevoluteJoint::m_enableLimit [protected] |
bool b2RevoluteJoint::m_enableMotor [protected] |
b2Vec3 b2RevoluteJoint::m_impulse [protected] |
b2LimitState b2RevoluteJoint::m_limitState [protected] |
b2Vec2 b2RevoluteJoint::m_localAnchor1 [protected] |
b2Vec2 b2RevoluteJoint::m_localAnchor2 [protected] |
float32 b2RevoluteJoint::m_lowerAngle [protected] |
b2Mat33 b2RevoluteJoint::m_mass [protected] |
float32 b2RevoluteJoint::m_maxMotorTorque [protected] |
float32 b2RevoluteJoint::m_motorImpulse [protected] |
float32 b2RevoluteJoint::m_motorMass [protected] |
float32 b2RevoluteJoint::m_motorSpeed [protected] |
float32 b2RevoluteJoint::m_referenceAngle [protected] |
float32 b2RevoluteJoint::m_upperAngle [protected] |