Class PulleyJoint
java.lang.Object
org.jbox2d.dynamics.joints.Joint
org.jbox2d.dynamics.joints.PulleyJoint
The pulley joint is connected to two bodies and two fixed ground points. The pulley supports a
ratio such that: length1 + ratio * length2 invalid input: '<'= constant Yes, the force transmitted is scaled by
the ratio. Warning: the pulley joint can get a bit squirrelly by itself. They often work better
when combined with prismatic joints. You should also cover the the anchor points with static
shapes to prevent one side from going to zero length.
-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate floatprivate final Vec2private final Vec2private floatprivate intprivate intprivate floatprivate floatprivate floatprivate floatprivate floatprivate floatprivate final Vec2private final Vec2private final Vec2private final Vec2private floatprivate final Vec2private floatprivate final Vec2private final Vec2private final Vec2static final floatFields inherited from class Joint
m_bodyA, m_bodyB, m_edgeA, m_edgeB, m_islandFlag, m_next, m_prev, m_userData, pool -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidgetAnchorA(Vec2 argOut) get the anchor point on bodyA in world coordinates.voidgetAnchorB(Vec2 argOut) get the anchor point on bodyB in world coordinates.floatfloatfloatfloatfloatfloatfloatgetRatio()voidgetReactionForce(float inv_dt, Vec2 argOut) get the reaction force on body2 at the joint anchor in Newtons.floatgetReactionTorque(float inv_dt) get the reaction torque on body2 in N*m.voidbooleanThis returns true if the position errors are within tolerance.voidMethods inherited from class Joint
create, destroy, destructor, getBodyA, getBodyB, getCollideConnected, getNext, getType, getUserData, isActive, setUserDataMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
-
Field Details
-
MIN_PULLEY_LENGTH
public static final float MIN_PULLEY_LENGTH- See Also:
-
m_groundAnchorA
-
m_groundAnchorB
-
m_lengthA
private float m_lengthA -
m_lengthB
private float m_lengthB -
m_localAnchorA
-
m_localAnchorB
-
m_constant
private float m_constant -
m_ratio
private float m_ratio -
m_impulse
private float m_impulse -
m_indexA
private int m_indexA -
m_indexB
private int m_indexB -
m_uA
-
m_uB
-
m_rA
-
m_rB
-
m_localCenterA
-
m_localCenterB
-
m_invMassA
private float m_invMassA -
m_invMassB
private float m_invMassB -
m_invIA
private float m_invIA -
m_invIB
private float m_invIB -
m_mass
private float m_mass
-
-
Constructor Details
-
PulleyJoint
-
-
Method Details
-
getLengthA
public float getLengthA() -
getLengthB
public float getLengthB() -
getCurrentLengthA
public float getCurrentLengthA() -
getCurrentLengthB
public float getCurrentLengthB() -
getLocalAnchorA
-
getLocalAnchorB
-
getAnchorA
Description copied from class:Jointget the anchor point on bodyA in world coordinates.- Specified by:
getAnchorAin classJoint
-
getAnchorB
Description copied from class:Jointget the anchor point on bodyB in world coordinates.- Specified by:
getAnchorBin classJoint
-
getReactionForce
Description copied from class:Jointget the reaction force on body2 at the joint anchor in Newtons.- Specified by:
getReactionForcein classJoint- Parameters:
inv_dt-
-
getReactionTorque
public float getReactionTorque(float inv_dt) Description copied from class:Jointget the reaction torque on body2 in N*m.- Specified by:
getReactionTorquein classJoint- Parameters:
inv_dt-- Returns:
-
getGroundAnchorA
-
getGroundAnchorB
-
getLength1
public float getLength1() -
getLength2
public float getLength2() -
getRatio
public float getRatio() -
initVelocityConstraints
- Specified by:
initVelocityConstraintsin classJoint
-
solveVelocityConstraints
- Specified by:
solveVelocityConstraintsin classJoint
-
solvePositionConstraints
Description copied from class:JointThis returns true if the position errors are within tolerance.- Specified by:
solvePositionConstraintsin classJoint- Returns:
-