# Class WheelJoint

java.lang.Object
com.codename1.gaming.physics.box2d.dynamics.joints.Joint
com.codename1.gaming.physics.box2d.dynamics.joints.WheelJoint

public class WheelJoint extends Joint
A wheel joint. This joint provides two degrees of freedom: translation along an axis fixed in bodyA and rotation in the plane. You can use a joint limit to restrict the range of motion and a joint motor to drive the rotation or to model rotational friction. This joint is designed for vehicle suspensions.

- ## 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
  Modifier
  Constructor
  Description
  `protected`
  `WheelJoint(IWorldPool argPool, WheelJointDef def)`

- ## Method Summary

  Modifier and Type
  Method
  Description
  `void`
  `enableMotor(boolean flag)`
  `void`
  `getAnchorA(Vec2 argOut)`
  get the anchor point on bodyA in world coordinates.
  `void`
  `getAnchorB(Vec2 argOut)`
  get the anchor point on bodyB in world coordinates.
  `float`
  `getJointSpeed()`
  `float`
  `getJointTranslation()`
  `Vec2`
  `getLocalAnchorA()`
  `Vec2`
  `getLocalAnchorB()`
  `Vec2`
  `getLocalAxisA()`
  For serialization
  `float`
  `getMaxMotorTorque()`
  `float`
  `getMotorSpeed()`
  `float`
  `getMotorTorque(float inv_dt)`
  `void`
  `getReactionForce(float inv_dt, Vec2 argOut)`
  get the reaction force on body2 at the joint anchor in Newtons.
  `float`
  `getReactionTorque(float inv_dt)`
  get the reaction torque on body2 in N*m.
  `float`
  `getSpringDampingRatio()`
  `float`
  `getSpringFrequencyHz()`
  `void`
  `initVelocityConstraints(SolverData data)`
  `boolean`
  `isMotorEnabled()`
  `void`
  `setMaxMotorTorque(float torque)`
  `void`
  `setMotorSpeed(float speed)`
  `void`
  `setSpringDampingRatio(float ratio)`
  `void`
  `setSpringFrequencyHz(float hz)`
  `boolean`
  `solvePositionConstraints(SolverData data)`
  This returns true if the position errors are within tolerance.
  `void`
  `solveVelocityConstraints(SolverData data)`

  ### Methods inherited from class Joint

  `create, destroy, destructor, getBodyA, getBodyB, getCollideConnected, getNext, getType, getUserData, isActive, setUserData`

  ### Methods inherited from class Object

  `clone, equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait`

- ## Constructor Details

  - ### WheelJoint

    protected WheelJoint(IWorldPool argPool, WheelJointDef def)

- ## 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:

  - ### getJointTranslation

    public float getJointTranslation()

  - ### getLocalAxisA

    public Vec2 getLocalAxisA()
    For serialization

  - ### getJointSpeed

    public float getJointSpeed()

  - ### isMotorEnabled

    public boolean isMotorEnabled()

  - ### enableMotor

    public void enableMotor(boolean flag)

  - ### setMotorSpeed

    public void setMotorSpeed(float speed)

  - ### getMotorSpeed

    public float getMotorSpeed()

  - ### getMaxMotorTorque

    public float getMaxMotorTorque()

  - ### setMaxMotorTorque

    public void setMaxMotorTorque(float torque)

  - ### getMotorTorque

    public float getMotorTorque(float inv_dt)

  - ### setSpringFrequencyHz

    public void setSpringFrequencyHz(float hz)

  - ### getSpringFrequencyHz

    public float getSpringFrequencyHz()

  - ### setSpringDampingRatio

    public void setSpringDampingRatio(float ratio)

  - ### getSpringDampingRatio

    public float getSpringDampingRatio()

  - ### 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: