Class GearJoint
java.lang.Object
com.codename1.gaming.physics.box2d.dynamics.joints.Joint
com.codename1.gaming.physics.box2d.dynamics.joints.GearJoint
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:
- The revolute and prismatic joints must be attached to fixed bodies (which must be body1 on those joints)., You have to manually destroy the gear joint if joint1 or joint2 is destroyed.
-
Field Summary
Fields 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.floatgetRatio()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.voidvoidsetRatio(float argRatio) booleanThis returns true if the position errors are within tolerance.voidMethods inherited from class Joint
create, destroy, destructor, getBodyA, getBodyB, getCollideConnected, getNext, getType, getUserData, isActive, setUserData
-
Constructor Details
-
GearJoint
-
-
Method Details
-
getAnchorA
Description copied from class:Jointget the anchor point on bodyA in world coordinates.- Specified by:
getAnchorAin classJoint- Parameters:
argOut- receives the anchor point
-
getAnchorB
Description copied from class:Jointget the anchor point on bodyB in world coordinates.- Specified by:
getAnchorBin classJoint- Parameters:
argOut- receives the anchor point
-
getReactionForce
Description copied from class:Jointget the reaction force on body2 at the joint anchor in Newtons.- Specified by:
getReactionForcein classJoint- Parameters:
inv_dt- the inverse of the time stepargOut- receives the reaction force
-
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:
-
setRatio
public void setRatio(float argRatio) -
getRatio
public float getRatio() -
initVelocityConstraints
- Specified by:
initVelocityConstraintsin classJoint
-
solveVelocityConstraints
- Specified by:
solveVelocityConstraintsin classJoint
-
getJoint1
-
getJoint2
-
solvePositionConstraints
Description copied from class:JointThis returns true if the position errors are within tolerance.- Specified by:
solvePositionConstraintsin classJoint- Parameters:
data- the solver state for this step- Returns:
- true if the position errors are within tolerance
-