Class HingeConstraintSettings

All Implemented Interfaces:
ConstConstraintSettings, ConstJoltPhysicsObject, RefTarget, AutoCloseable, Comparable<JoltPhysicsObject>

public class HingeConstraintSettings extends TwoBodyConstraintSettings
Settings used to construct a HingeConstraint.
  • Constructor Details

    • HingeConstraintSettings

      public HingeConstraintSettings()
      Instantiate default settings.
  • Method Details

    • getHingeAxis1

      public Vec3 getHingeAxis1()
      Copy the hinge axis of body 1. The settings are unaffected. (native attribute: mHingeAxis1)
      Returns:
      a new direction vector
    • getHingeAxis2

      public Vec3 getHingeAxis2()
      Copy the hinge axis of body 2. The settings are unaffected. (native attribute: mHingeAxis2)
      Returns:
      a new direction vector
    • getLimitsMax

      public float getLimitsMax()
      Return the upper limit of rotation. The settings are unaffected. (native attribute: mLimitsMax)
      Returns:
      the upper limit (in radians)
    • getLimitsMin

      public float getLimitsMin()
      Return the lower limit of rotation. The settings are unaffected. (native attribute: mLimitsMin)
      Returns:
      the lower limit (in radians)
    • getLimitsSpringSettings

      public SpringSettings getLimitsSpringSettings()
      Access the spring settings. (native attribute: mLimitsSpringSettings)
      Returns:
      a new JVM object with the pre-existing native object assigned
    • getMaxFrictionTorque

      public float getMaxFrictionTorque()
      Return the maximum friction torque when not driven by a motor. The settings are unaffected. (native attribute: mMaxFrictionTorque)
      Returns:
      the torque (in Newton.meters)
    • getMotorSettings

      public MotorSettings getMotorSettings()
      Access the motor settings. (native attribute: mMotorSettings)
      Returns:
      a new JVM object with the pre-existing native object assigned
    • getNormalAxis1

      public Vec3 getNormalAxis1()
      Copy the normal axis of body 1. The settings are unaffected. (native attribute: mNormalAxis1)
      Returns:
      a new direction vector
    • getNormalAxis2

      public Vec3 getNormalAxis2()
      Copy the normal axis of body 2. The settings are unaffected. (native attribute: mNormalAxis2)
      Returns:
      a new direction vector
    • getPoint1

      public RVec3 getPoint1()
      Copy the constraint location for body 1. The settings are unaffected. (native attribute: mPoint1)
      Returns:
      a new location vector
    • getPoint2

      public RVec3 getPoint2()
      Copy the constraint location for body 2. The settings are unaffected. (native attribute: mPoint2)
      Returns:
      a new location vector
    • getSpace

      public EConstraintSpace getSpace()
      Return which space the other properties are specified in. The settings are unaffected. (native attribute: mSpace)
      Returns:
      an enum value (not null)
    • setHingeAxis1

      public Vec3Arg setHingeAxis1(Vec3Arg direction)
      Alter the hinge axis of body 1. (native attribute: mHingeAxis1)
      Parameters:
      direction - the desired axis direction (not null, unaffected, default=(0,1,0))
      Returns:
      the argument, for chaining
    • setHingeAxis2

      public Vec3Arg setHingeAxis2(Vec3Arg direction)
      Alter the hinge axis of body 2. (native attribute: mHingeAxis2)
      Parameters:
      direction - the desired axis direction (not null, unaffected, default=(0,1,0))
      Returns:
      the argument, for chaining
    • setLimitsMax

      public void setLimitsMax(float limit)
      Alter the upper limit of rotation. (native attribute: mLimitsMax)
      Parameters:
      limit - the desired upper limit (in radians, default=Pi)
    • setLimitsMin

      public void setLimitsMin(float limit)
      Alter the lower limit of rotation. (native attribute: mLimitsMin)
      Parameters:
      limit - the desired lower limit (default=-Pi)
    • setMaxFrictionTorque

      public void setMaxFrictionTorque(float torque)
      Alter the maximum friction torque when not driven by a motor. (native attribute: mMaxFrictionTorque)
      Parameters:
      torque - the desired torque (in Newton.meters, default=0)
    • setMotorSettings

      public void setMotorSettings(MotorSettings settings)
      Alter the constraint's motor settings. (native attribute: mMotorSettings)
      Parameters:
      settings - the motor settings to copy (not null, unaffected)
    • setNormalAxis1

      public Vec3Arg setNormalAxis1(Vec3Arg direction)
      Alter the normal axis of body 1. (native attribute: mNormalAxis1)
      Parameters:
      direction - the desired axis direction (not null, unaffected, default=(0,1,0))
      Returns:
      the argument, for chaining
    • setNormalAxis2

      public Vec3Arg setNormalAxis2(Vec3Arg direction)
      Alter the normal axis of body 2. (native attribute: mNormalAxis2)
      Parameters:
      direction - the desired axis direction (not null, unaffected, default=(0,1,0))
      Returns:
      the argument, for chaining
    • setPoint1

      public RVec3Arg setPoint1(RVec3Arg location)
      Alter the constraint location for body 1. (native attribute: mPoint1)
      Parameters:
      location - the desired location (not null, unaffected, default=(0,0,0))
      Returns:
      the argument, for chaining
    • setPoint2

      public RVec3Arg setPoint2(RVec3Arg location)
      Alter the constraint location for body 2. (native attribute: mPoint2)
      Parameters:
      location - the desired location (not null, unaffected, default=(0,0,0))
      Returns:
      the argument, for chaining
    • setSpace

      public void setSpace(EConstraintSpace space)
      Alter which space the other properties are specified in. (native attribute: mSpace)
      Parameters:
      space - enum value (not null, default=WorldSpace)