Class GearJoint

java.lang.Object
org.jbox2d.dynamics.joints.Joint
org.jbox2d.dynamics.joints.GearJoint

public class GearJoint extends Joint
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.
  • Field Details

    • m_joint1

      private final Joint m_joint1
    • m_joint2

      private final Joint m_joint2
    • m_typeA

      private final JointType m_typeA
    • m_typeB

      private final JointType m_typeB
    • m_bodyC

      private final Body m_bodyC
    • m_bodyD

      private final Body m_bodyD
    • m_localAnchorA

      private final Vec2 m_localAnchorA
    • m_localAnchorB

      private final Vec2 m_localAnchorB
    • m_localAnchorC

      private final Vec2 m_localAnchorC
    • m_localAnchorD

      private final Vec2 m_localAnchorD
    • m_localAxisC

      private final Vec2 m_localAxisC
    • m_localAxisD

      private final Vec2 m_localAxisD
    • m_referenceAngleA

      private float m_referenceAngleA
    • m_referenceAngleB

      private float m_referenceAngleB
    • 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_indexC

      private int m_indexC
    • m_indexD

      private int m_indexD
    • m_lcA

      private final Vec2 m_lcA
    • m_lcB

      private final Vec2 m_lcB
    • m_lcC

      private final Vec2 m_lcC
    • m_lcD

      private final Vec2 m_lcD
    • m_mA

      private float m_mA
    • m_mB

      private float m_mB
    • m_mC

      private float m_mC
    • m_mD

      private float m_mD
    • m_iA

      private float m_iA
    • m_iB

      private float m_iB
    • m_iC

      private float m_iC
    • m_iD

      private float m_iD
    • m_JvAC

      private final Vec2 m_JvAC
    • m_JvBD

      private final Vec2 m_JvBD
    • m_JwA

      private float m_JwA
    • m_JwB

      private float m_JwB
    • m_JwC

      private float m_JwC
    • m_JwD

      private float m_JwD
    • m_mass

      private float m_mass
  • Constructor Details

  • Method Details

    • getAnchorA

      public void getAnchorA(Vec2 argOut)
      Description copied from class: Joint
      get the anchor point on bodyA in world coordinates.
      Specified by:
      getAnchorA in class Joint
    • getAnchorB

      public void getAnchorB(Vec2 argOut)
      Description copied from class: Joint
      get the anchor point on bodyB in world coordinates.
      Specified by:
      getAnchorB in class Joint
    • getReactionForce

      public void getReactionForce(float inv_dt, Vec2 argOut)
      Description copied from class: Joint
      get the reaction force on body2 at the joint anchor in Newtons.
      Specified by:
      getReactionForce in class Joint
      Parameters:
      inv_dt -
    • getReactionTorque

      public float getReactionTorque(float inv_dt)
      Description copied from class: Joint
      get the reaction torque on body2 in N*m.
      Specified by:
      getReactionTorque in class Joint
      Parameters:
      inv_dt -
      Returns:
    • setRatio

      public void setRatio(float argRatio)
    • getRatio

      public float getRatio()
    • initVelocityConstraints

      public void initVelocityConstraints(SolverData data)
      Specified by:
      initVelocityConstraints in class Joint
    • solveVelocityConstraints

      public void solveVelocityConstraints(SolverData data)
      Specified by:
      solveVelocityConstraints in class Joint
    • getJoint1

      public Joint getJoint1()
    • getJoint2

      public Joint getJoint2()
    • solvePositionConstraints

      public boolean solvePositionConstraints(SolverData data)
      Description copied from class: Joint
      This returns true if the position errors are within tolerance.
      Specified by:
      solvePositionConstraints in class Joint
      Returns: