Interface UniversalJoint

All Superinterfaces:
X3DNode, X3DRigidJointNode
All Known Implementing Classes:
UniversalJointObject

public interface UniversalJoint
extends X3DRigidJointNode
UniversalJoint is like a BallJoint that constrains an extra degree of rotational freedom.

X3D node tooltip: (X3D version 3.2 or later) [X3DRigidJointNode] UniversalJoint is like a BallJoint that constrains an extra degree of rotational freedom. Contains two RigidBody nodes (containerField values body1, body2).
  • Hint: useful in combination with BallJoint.
  • Hint: RigidBodyPhysics component, level 2.

Package hint: This interface is defined by the X3D Java Language Binding Specification for the Scene Authoring Interface (SAI).
See Also:
SAI Java Specification: TODO, X3D Abstract Specification: UniversalJoint, X3D Tooltips: UniversalJoint, X3D Scene Authoring Hints
  • Method Summary

    Modifier and Type Method Description
    float[] getAnchorPoint()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named anchorPoint.
    float[] getAxis1()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named axis1.
    float[] getAxis2()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named axis2.
    RigidBody getBody1()
    Provide RigidBody instance (using a properly typed node) from inputOutput SFNode field body1.
    float[] getBody1AnchorPoint()
    Provide array of 3-tuple float results from outputOnly SFVec3f field named body1AnchorPoint.
    float[] getBody1Axis()
    Provide array of 3-tuple float results from outputOnly SFVec3f field named body1Axis.
    RigidBody getBody2()
    Provide RigidBody instance (using a properly typed node) from inputOutput SFNode field body2.
    float[] getBody2AnchorPoint()
    Provide array of 3-tuple float results from outputOnly SFVec3f field named body2AnchorPoint.
    float getBody2Axis()
    Provide float value from outputOnly SFFloat field named body2Axis.
    java.lang.String[] getForceOutput()
    Provide array of String enumeration results ( baseType forceOutputValues) [""ALL"" | ""NONE"" | '"etc."'] from inputOutput MFString field named forceOutput.
    X3DMetadataObject getMetadata()
    Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    float getStop1Bounce()
    Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop1Bounce.
    float getStop1ErrorCorrection()
    Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop1ErrorCorrection.
    float getStop2Bounce()
    Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop2Bounce.
    float getStop2ErrorCorrection()
    Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop2ErrorCorrection.
    UniversalJoint setAnchorPoint​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named anchorPoint.
    UniversalJoint setAxis1​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named axis1.
    UniversalJoint setAxis2​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named axis2.
    UniversalJoint setBody1​(RigidBody newValue)
    Accessor method to assign RigidBody instance (using a properly typed node) to inputOutput SFNode field body1.
    UniversalJoint setBody2​(RigidBody newValue)
    Accessor method to assign RigidBody instance (using a properly typed node) to inputOutput SFNode field body2.
    UniversalJoint setForceOutput​(java.lang.String[] newValue)
    Accessor method to assign String enumeration array (""ALL"" | ""NONE"") to inputOutput MFString field named forceOutput.
    UniversalJoint setMetadata​(X3DMetadataObject newValue)
    Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    UniversalJoint setStop1Bounce​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named stop1Bounce.
    UniversalJoint setStop1ErrorCorrection​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named stop1ErrorCorrection.
    UniversalJoint setStop2Bounce​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named stop2Bounce.
    UniversalJoint setStop2ErrorCorrection​(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named stop2ErrorCorrection.
  • Method Details

    • getAnchorPoint

      float[] getAnchorPoint()
      Provide array of 3-tuple float results from inputOutput SFVec3f field named anchorPoint.

      Tooltip: anchorPoint is joint center, specified in world coordinates. *
      Returns:
      value of anchorPoint field
    • setAnchorPoint

      UniversalJoint setAnchorPoint​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named anchorPoint.

      Tooltip: anchorPoint is joint center, specified in world coordinates. *
      Parameters:
      newValue - is new value for the anchorPoint field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getAxis1

      float[] getAxis1()
      Provide array of 3-tuple float results from inputOutput SFVec3f field named axis1.

      Tooltip: axis1 defines axis vector of joint connection to body1.
      • Hint: 0 0 0 means motor disabled.
      Returns:
      value of axis1 field
    • setAxis1

      UniversalJoint setAxis1​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named axis1.

      Tooltip: axis1 defines axis vector of joint connection to body1.
      • Hint: 0 0 0 means motor disabled.
      Parameters:
      newValue - is new value for the axis1 field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getAxis2

      float[] getAxis2()
      Provide array of 3-tuple float results from inputOutput SFVec3f field named axis2.

      Tooltip: axis2 defines axis vector of joint connection to body2.
      • Hint: 0 0 0 means motor disabled.
      Returns:
      value of axis2 field
    • setAxis2

      UniversalJoint setAxis2​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named axis2.

      Tooltip: axis2 defines axis vector of joint connection to body2.
      • Hint: 0 0 0 means motor disabled.
      Parameters:
      newValue - is new value for the axis2 field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getBody1

      RigidBody getBody1()
      Provide RigidBody instance (using a properly typed node) from inputOutput SFNode field body1.
      Specified by:
      getBody1 in interface X3DRigidJointNode
      Returns:
      value of body1 field
    • setBody1

      UniversalJoint setBody1​(RigidBody newValue)
      Accessor method to assign RigidBody instance (using a properly typed node) to inputOutput SFNode field body1.
      Specified by:
      setBody1 in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the body1 field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getBody1AnchorPoint

      float[] getBody1AnchorPoint()
      Provide array of 3-tuple float results from outputOnly SFVec3f field named body1AnchorPoint.
      Returns:
      value of body1AnchorPoint field
    • getBody1Axis

      float[] getBody1Axis()
      Provide array of 3-tuple float results from outputOnly SFVec3f field named body1Axis.
      Returns:
      value of body1Axis field
    • getBody2

      RigidBody getBody2()
      Provide RigidBody instance (using a properly typed node) from inputOutput SFNode field body2.
      Specified by:
      getBody2 in interface X3DRigidJointNode
      Returns:
      value of body2 field
    • setBody2

      UniversalJoint setBody2​(RigidBody newValue)
      Accessor method to assign RigidBody instance (using a properly typed node) to inputOutput SFNode field body2.
      Specified by:
      setBody2 in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the body2 field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getBody2AnchorPoint

      float[] getBody2AnchorPoint()
      Provide array of 3-tuple float results from outputOnly SFVec3f field named body2AnchorPoint.
      Returns:
      value of body2AnchorPoint field
    • getBody2Axis

      float getBody2Axis()
      Provide float value from outputOnly SFFloat field named body2Axis.
      Returns:
      value of body2Axis field
    • getForceOutput

      java.lang.String[] getForceOutput()
      Provide array of String enumeration results ( baseType forceOutputValues) [""ALL"" | ""NONE"" | '"etc."'] from inputOutput MFString field named forceOutput.

      Tooltip: forceOutput controls which output fields are generated for the next frame. Values are ALL, NONE, or exact names of output fields updated at start of next frame. *
      Specified by:
      getForceOutput in interface X3DRigidJointNode
      Returns:
      value of forceOutput field
    • setForceOutput

      UniversalJoint setForceOutput​(java.lang.String[] newValue)
      Accessor method to assign String enumeration array (""ALL"" | ""NONE"") to inputOutput MFString field named forceOutput.

      Tooltip: forceOutput controls which output fields are generated for the next frame. Values are ALL, NONE, or exact names of output fields updated at start of next frame. *
      Specified by:
      setForceOutput in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the forceOutput field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getMetadata

      X3DMetadataObject getMetadata()
      Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
      Specified by:
      getMetadata in interface X3DNode
      Specified by:
      getMetadata in interface X3DRigidJointNode
      Returns:
      value of metadata field
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • setMetadata

      UniversalJoint setMetadata​(X3DMetadataObject newValue)
      Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
      Specified by:
      setMetadata in interface X3DNode
      Specified by:
      setMetadata in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • getStop1Bounce

      float getStop1Bounce()
      Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop1Bounce.

      Tooltip: [0,1] stop1Bounce is velocity factor for bounce back once stop point is reached.
      • Hint: 0 means no bounce, 1 means return velocity matches.
      Returns:
      value of stop1Bounce field
    • setStop1Bounce

      UniversalJoint setStop1Bounce​(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named stop1Bounce.

      Tooltip: [0,1] stop1Bounce is velocity factor for bounce back once stop point is reached.
      • Hint: 0 means no bounce, 1 means return velocity matches.
      Parameters:
      newValue - is new value for the stop1Bounce field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStop1ErrorCorrection

      float getStop1ErrorCorrection()
      Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop1ErrorCorrection.

      Tooltip: [0,1] stop1ErrorCorrection is fraction of error correction performed during time step once stop point is reached.
      • Hint: 0 means no error correction, 1 means all error corrected in single step.
      Returns:
      value of stop1ErrorCorrection field
    • setStop1ErrorCorrection

      UniversalJoint setStop1ErrorCorrection​(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named stop1ErrorCorrection.

      Tooltip: [0,1] stop1ErrorCorrection is fraction of error correction performed during time step once stop point is reached.
      • Hint: 0 means no error correction, 1 means all error corrected in single step.
      Parameters:
      newValue - is new value for the stop1ErrorCorrection field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStop2Bounce

      float getStop2Bounce()
      Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop2Bounce.

      Tooltip: [0,1] stop2Bounce is velocity factor for bounce back once stop point is reached.
      • Hint: 0 means no bounce, 1 means return velocity matches.
      Returns:
      value of stop2Bounce field
    • setStop2Bounce

      UniversalJoint setStop2Bounce​(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named stop2Bounce.

      Tooltip: [0,1] stop2Bounce is velocity factor for bounce back once stop point is reached.
      • Hint: 0 means no bounce, 1 means return velocity matches.
      Parameters:
      newValue - is new value for the stop2Bounce field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStop2ErrorCorrection

      float getStop2ErrorCorrection()
      Provide float value within allowed range of [0,1] from inputOutput SFFloat field named stop2ErrorCorrection.

      Tooltip: [0,1] stop2ErrorCorrection is fraction of error correction performed during time step once stop point is reached.
      • Hint: 0 means no error correction, 1 means all error corrected in single step.
      Returns:
      value of stop2ErrorCorrection field
    • setStop2ErrorCorrection

      UniversalJoint setStop2ErrorCorrection​(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named stop2ErrorCorrection.

      Tooltip: [0,1] stop2ErrorCorrection is fraction of error correction performed during time step once stop point is reached.
      • Hint: 0 means no error correction, 1 means all error corrected in single step.
      Parameters:
      newValue - is new value for the stop2ErrorCorrection field.
      Returns:
      UniversalJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).