Box2D: b2PrismaticJoint Class Reference

| Box2D 2.3.0 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 | List of all members
b2PrismaticJoint Class Reference

`#include <b2PrismaticJoint.h>`

Inheritance diagram for b2PrismaticJoint:

## 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 bodyB at the joint anchor in Newtons.
float32 | GetReactionTorque (float32 inv_dt) const
| Get the reaction torque on bodyB in N*m.
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.
const b2Vec2 & | GetLocalAxisA () const
| The local joint axis relative to bodyA.
float32 | GetReferenceAngle () const
| Get the reference angle.
float32 | GetJointTranslation () const
| Get the current joint translation, usually in meters.
float32 | GetJointSpeed () const
| Get the current joint translation speed, usually in meters 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, usually in meters.
float32 | GetUpperLimit () const
| Get the upper joint limit, usually in meters.
void | SetLimits (float32 lower, float32 upper)
| Set the joint limits, usually in meters.
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, usually in meters per second.
float32 | GetMotorSpeed () const
| Get the motor speed, usually in meters per second.
void | SetMaxMotorForce (float32 force)
| Set the maximum motor force, usually in N.
float32 | GetMaxMotorForce () const
float32 | GetMotorForce (float32 inv_dt) const
| Get the current motor force given the inverse time step, usually in N.
void | Dump ()
| Dump to b2Log.
Public Member Functions inherited from b2Joint
b2JointType | GetType () const
| Get the type of the concrete joint.
b2Body * | GetBodyA ()
| Get the first body attached to this joint.
b2Body * | GetBodyB ()
| Get the second body attached to this joint.
b2Joint * | GetNext ()
| Get the next joint the world joint list.
const b2Joint * | GetNext () const
void * | GetUserData () const
| Get the user data pointer.
void | SetUserData (void *data)
| Set the user data pointer.
bool | IsActive () const
| Short-cut function to determine if either body is inactive.
bool | GetCollideConnected () const
virtual void | ShiftOrigin (const b2Vec2 &newOrigin)
| Shift the origin for any points stored in world coordinates.

## Protected Member Functions
| b2PrismaticJoint (const b2PrismaticJointDef *def)
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)

## Protected Attributes
b2Vec2 | m_localAnchorA
b2Vec2 | m_localAnchorB
b2Vec2 | m_localXAxisA
b2Vec2 | m_localYAxisA
float32 | m_referenceAngle
b2Vec3 | m_impulse
float32 | m_motorImpulse
float32 | m_lowerTranslation
float32 | m_upperTranslation
float32 | m_maxMotorForce
float32 | m_motorSpeed
bool | m_enableLimit
bool | m_enableMotor
b2LimitState | m_limitState
int32 | m_indexA
int32 | m_indexB
b2Vec2 | m_localCenterA
b2Vec2 | m_localCenterB
float32 | m_invMassA
float32 | m_invMassB
float32 | m_invIA
float32 | m_invIB
b2Vec2 | m_axis
b2Vec2 | m_perp
float32 | m_s1
float32 | m_s2
float32 | m_a1
float32 | m_a2
b2Mat33 | m_K
float32 | m_motorMass
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
class | b2GearJoint

## 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 prismatic joint. This joint provides one degree of freedom: translation along an axis fixed in bodyA. Relative rotation is prevented. You can use a joint limit to restrict the range of motion and a joint motor to drive the motion or to model joint friction.

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

- b2PrismaticJoint.h
- b2PrismaticJoint.cpp