| Box2D 2.2.1 A 2D Physics Engine for Games

- Main Page
- Classes
- Files

- Class List
- Class Index
- Class Hierarchy
- Class Members

Public Member Functions | Protected Member Functions | Protected Attributes | Friends
b2RevoluteJoint Class Reference

`#include <b2RevoluteJoint.h>`

Inheritance diagram for b2RevoluteJoint:

List of all members.

## 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.
const b2Vec2 & | GetLocalAnchorA () const
| The local anchor point relative to bodyA's origin.
const b2Vec2 & | GetLocalAnchorB () const
| The local anchor point relative to bodyB's origin.
float32 | GetReferenceAngle () const
| Get the reference angle.
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 | GetMaxMotorTorque () const
b2Vec2 | GetReactionForce (float32 inv_dt) const
float32 | GetReactionTorque (float32 inv_dt) const
float32 | GetMotorTorque (float32 inv_dt) const
void | Dump ()
| Dump to b2Log.

## Protected Member Functions

| b2RevoluteJoint (const b2RevoluteJointDef *def)
void | InitVelocityConstraints (const b2SolverData &data)
void | SolveVelocityConstraints (const b2SolverData &data)
bool | SolvePositionConstraints (const b2SolverData &data)

## Protected Attributes

b2Vec2 | m_localAnchorA
b2Vec2 | m_localAnchorB
b2Vec3 | m_impulse
float32 | m_motorImpulse
bool | m_enableMotor
float32 | m_maxMotorTorque
float32 | m_motorSpeed
bool | m_enableLimit
float32 | m_referenceAngle
float32 | m_lowerAngle
float32 | m_upperAngle
int32 | m_indexA
int32 | m_indexB
b2Vec2 | m_rA
b2Vec2 | m_rB
b2Vec2 | m_localCenterA
b2Vec2 | m_localCenterB
float32 | m_invMassA
float32 | m_invMassB
float32 | m_invIA
float32 | m_invIB
b2Mat33 | m_mass
float32 | m_motorMass
b2LimitState | m_limitState

## Friends

class | b2Joint
class | b2GearJoint

## Detailed Description

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.

## Member Function Documentation

float32 b2RevoluteJoint::GetMotorTorque | ( | float32 | inv_dt | ) | const

Get the current motor torque given the inverse time step. Unit is N*m.

b2Vec2 b2RevoluteJoint::GetReactionForce | ( | float32 | inv_dt | ) | const`[virtual]`

Get the reaction force given the inverse time step. Unit is N.

Implements b2Joint.

float32 b2RevoluteJoint::GetReactionTorque | ( | float32 | inv_dt | ) | const`[virtual]`

Get the reaction torque due to the joint limit given the inverse time step. Unit is N*m.

Implements b2Joint.

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

- b2RevoluteJoint.h
- b2RevoluteJoint.cpp

All Classes Files Functions Variables Enumerations Enumerator Defines