Torque2D Reference

- Main Page
- Related Pages
- Modules
- Namespaces
- Classes

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

Public Member Functions | Protected Member Functions | Protected Attributes | Friends | List of all members
b2GearJoint Class Reference

`#include <b2GearJoint.h>`

Inheritance diagram for b2GearJoint:

## Public Member Functions
b2Vec2 | GetAnchorA () const
| Get the anchor point on bodyA in world coordinates. More...
b2Vec2 | GetAnchorB () const
| Get the anchor point on bodyB in world coordinates. More...
b2Vec2 | GetReactionForce (float32 inv_dt) const
| Get the reaction force on bodyB at the joint anchor in Newtons. More...
float32 | GetReactionTorque (float32 inv_dt) const
| Get the reaction torque on bodyB in N*m. More...
b2Joint * | GetJoint1 ()
| Get the first joint. More...
b2Joint * | GetJoint2 ()
| Get the second joint. More...
void | SetRatio (float32 ratio)
| Set/Get the gear ratio. More...
float32 | GetRatio () const
void | Dump ()
| Dump joint to dmLog. More...
Public Member Functions inherited from b2Joint
b2JointType | GetType () const
| Get the type of the concrete joint. More...
b2Body * | GetBodyA ()
| Get the first body attached to this joint. More...
b2Body * | GetBodyB ()
| Get the second body attached to this joint. More...
b2Joint * | GetNext ()
| Get the next joint the world joint list. More...
const b2Joint * | GetNext () const
void * | GetUserData () const
| Get the user data pointer. More...
void | SetUserData (void *data)
| Set the user data pointer. More...
bool | IsActive () const
| Short-cut function to determine if either body is inactive. More...
bool | GetCollideConnected () const
virtual void | ShiftOrigin (const b2Vec2 &newOrigin)
| Shift the origin for any points stored in world coordinates. More...

## Protected Member Functions
| b2GearJoint (const b2GearJointDef *data)
void | InitVelocityConstraints (const b2SolverData &data)
void | SolveVelocityConstraints (const b2SolverData &data)
bool | SolvePositionConstraints (const b2SolverData &data)
Protected Member Functions inherited from b2Joint
| b2Joint (const b2JointDef *def)
virtual | ~b2Joint ()

## Protected Attributes
b2Joint * | m_joint1
b2Joint * | m_joint2
b2JointType | m_typeA
b2JointType | m_typeB
b2Body * | m_bodyC
b2Body * | m_bodyD
b2Vec2 | m_localAnchorA
b2Vec2 | m_localAnchorB
b2Vec2 | m_localAnchorC
b2Vec2 | m_localAnchorD
b2Vec2 | m_localAxisC
b2Vec2 | m_localAxisD
float32 | m_referenceAngleA
float32 | m_referenceAngleB
float32 | m_constant
float32 | m_ratio
float32 | m_impulse
int32 | m_indexA
int32 | m_indexB
int32 | m_indexC
int32 | m_indexD
b2Vec2 | m_lcA
b2Vec2 | m_lcB
b2Vec2 | m_lcC
b2Vec2 | m_lcD
float32 | m_mA
float32 | m_mB
float32 | m_mC
float32 | m_mD
float32 | m_iA
float32 | m_iB
float32 | m_iC
float32 | m_iD
b2Vec2 | m_JvAC
b2Vec2 | m_JvBD
float32 | m_JwA
float32 | m_JwB
float32 | m_JwC
float32 | m_JwD
float32 | m_mass
Protected Attributes inherited from b2Joint
b2JointType | m_type
b2Joint * | m_prev
b2Joint * | m_next
b2JointEdge | m_edgeA
b2JointEdge | m_edgeB
b2Body * | m_bodyA
b2Body * | m_bodyB
int32 | m_index
bool | m_islandFlag
bool | m_collideConnected
void * | m_userData

## Friends
class | b2Joint

## Additional Inherited Members
Static Protected Member Functions inherited from b2Joint
static b2Joint * | Create (const b2JointDef *def, b2BlockAllocator *allocator)
static void | Destroy (b2Joint *joint, b2BlockAllocator *allocator)

## Detailed Description

A gear joint is used to connect two joints together. Either joint can be a revolute or prismatic joint. You specify a gear ratio to bind the motions together: coordinate1 + ratio * coordinate2 = constant The ratio can be negative or positive. If one joint is a revolute joint and the other joint is a prismatic joint, then the ratio will have units of length or units of 1/length.

Warning
  You have to manually destroy the gear joint if joint1 or joint2 is destroyed.

## Constructor & Destructor Documentation

b2GearJoint | ( | const b2GearJointDef * | data | ) |
| protected

## Member Function Documentation

void Dump | ( |  | ) |
| virtual

Dump joint to dmLog.

Reimplemented from b2Joint.

b2Vec2 GetAnchorA | ( |  | ) | const
| virtual

Get the anchor point on bodyA in world coordinates.

Implements b2Joint.

b2Vec2 GetAnchorB | ( |  | ) | const
| virtual

Get the anchor point on bodyB in world coordinates.

Implements b2Joint.

b2Joint* GetJoint1 | ( |  | ) |
| inline

Get the first joint.

b2Joint* GetJoint2 | ( |  | ) |
| inline

Get the second joint.

float32 GetRatio | ( |  | ) | const

b2Vec2 GetReactionForce | ( | float32 | inv_dt | ) | const
| virtual

Get the reaction force on bodyB at the joint anchor in Newtons.

Implements b2Joint.

float32 GetReactionTorque | ( | float32 | inv_dt | ) | const
| virtual

Get the reaction torque on bodyB in N*m.

Implements b2Joint.

void InitVelocityConstraints | ( | const b2SolverData & | data | ) |
| protected virtual

Implements b2Joint.

void SetRatio | ( | float32 | ratio | ) |

Set/Get the gear ratio.

bool SolvePositionConstraints | ( | const b2SolverData & | data | ) |
| protected virtual

Implements b2Joint.

void SolveVelocityConstraints | ( | const b2SolverData & | data | ) |
| protected virtual

Implements b2Joint.

## Friends And Related Function Documentation

friend class b2Joint
| friend

## Member Data Documentation

b2Body* m_bodyC
| protected

b2Body* m_bodyD
| protected

float32 m_constant
| protected

float32 m_iA
| protected

float32 m_iB
| protected

float32 m_iC
| protected

float32 m_iD
| protected

float32 m_impulse
| protected

int32 m_indexA
| protected

int32 m_indexB
| protected

int32 m_indexC
| protected

int32 m_indexD
| protected

b2Joint* m_joint1
| protected

b2Joint* m_joint2
| protected

b2Vec2 m_JvAC
| protected

b2Vec2 m_JvBD
| protected

float32 m_JwA
| protected

float32 m_JwB
| protected

float32 m_JwC
| protected

float32 m_JwD
| protected

b2Vec2 m_lcA
| protected

b2Vec2 m_lcB
| protected

b2Vec2 m_lcC
| protected

b2Vec2 m_lcD
| protected

b2Vec2 m_localAnchorA
| protected

b2Vec2 m_localAnchorB
| protected

b2Vec2 m_localAnchorC
| protected

b2Vec2 m_localAnchorD
| protected

b2Vec2 m_localAxisC
| protected

b2Vec2 m_localAxisD
| protected

float32 m_mA
| protected

float32 m_mass
| protected

float32 m_mB
| protected

float32 m_mC
| protected

float32 m_mD
| protected

float32 m_ratio
| protected

float32 m_referenceAngleA
| protected

float32 m_referenceAngleB
| protected

b2JointType m_typeA
| protected

b2JointType m_typeB
| protected

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

- Box2D/Dynamics/Joints/b2GearJoint.h
- Box2D/Dynamics/Joints/b2GearJoint.cpp