Class PrismaticJoint

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

public class PrismaticJoint extends Joint
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.
Author:
Daniel
  • Field Details

    • m_localAnchorA

      protected final Vec2 m_localAnchorA
    • m_localAnchorB

      protected final Vec2 m_localAnchorB
    • m_localXAxisA

      protected final Vec2 m_localXAxisA
    • m_localYAxisA

      protected final Vec2 m_localYAxisA
    • m_referenceAngle

      protected float m_referenceAngle
  • Constructor Details

  • Method Details

    • getLocalAnchorA

      public Vec2 getLocalAnchorA()
    • getLocalAnchorB

      public Vec2 getLocalAnchorB()
    • 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:
    • getJointSpeed

      public float getJointSpeed()
      Get the current joint translation, usually in meters.
    • getJointTranslation

      public float getJointTranslation()
    • isLimitEnabled

      public boolean isLimitEnabled()
      Is the joint limit enabled?
      Returns:
    • enableLimit

      public void enableLimit(boolean flag)
      Enable/disable the joint limit.
      Parameters:
      flag -
    • getLowerLimit

      public float getLowerLimit()
      Get the lower joint limit, usually in meters.
      Returns:
    • getUpperLimit

      public float getUpperLimit()
      Get the upper joint limit, usually in meters.
      Returns:
    • setLimits

      public void setLimits(float lower, float upper)
      Set the joint limits, usually in meters.
      Parameters:
      lower -
      upper -
    • isMotorEnabled

      public boolean isMotorEnabled()
      Is the joint motor enabled?
      Returns:
    • enableMotor

      public void enableMotor(boolean flag)
      Enable/disable the joint motor.
      Parameters:
      flag -
    • setMotorSpeed

      public void setMotorSpeed(float speed)
      Set the motor speed, usually in meters per second.
      Parameters:
      speed -
    • getMotorSpeed

      public float getMotorSpeed()
      Get the motor speed, usually in meters per second.
      Returns:
    • setMaxMotorForce

      public void setMaxMotorForce(float force)
      Set the maximum motor force, usually in N.
      Parameters:
      force -
    • getMotorForce

      public float getMotorForce(float inv_dt)
      Get the current motor force, usually in N.
      Parameters:
      inv_dt -
      Returns:
    • getMaxMotorForce

      public float getMaxMotorForce()
    • getReferenceAngle

      public float getReferenceAngle()
    • getLocalAxisA

      public Vec2 getLocalAxisA()
    • initVelocityConstraints

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

      public void solveVelocityConstraints(SolverData data)
      Specified by:
      solveVelocityConstraints in class Joint
    • 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: