Interface SingleAxisHingeJoint

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

public interface SingleAxisHingeJoint extends X3DRigidJointNode
SingleAxisHingeJoint has single axis about which to rotate, similar to a traditional door hinge. Contains two RigidBody nodes (containerField values body1, body2).

Warning: this is an abstract interface that cannot be instantiated as a concrete object. Java programmers typically only need to use concrete objects provided by the org.web3d.x3d.jsail classes. SingleAxisHingeJoint node tooltip: (X3D version 3.2 or later) [X3DRigidJointNode] SingleAxisHingeJoint has single axis about which to rotate, similar to a traditional door hinge. Contains two RigidBody nodes (containerField values body1, body2).
  • 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:
  • Method Summary

    Modifier and Type
    Method
    Description
    float[]
    Provide array of 3-tuple float results from inputOutput SFVec3f field named anchorPoint.
    float
    Provide float value unit axis, angle (in radians) from outputOnly SFFloat field named angle.
    float
    Provide float value unit axis, angle (in radians) from outputOnly SFFloat field named angleRate.
    float[]
    Provide array of 3-tuple float results from inputOutput SFVec3f field named axis.
    Provide org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) from inputOutput SFNode field body1.
    float[]
    Provide array of 3-tuple float results from outputOnly SFVec3f field named body1AnchorPoint.
    Provide org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) from inputOutput SFNode field body2.
    float[]
    Provide array of 3-tuple float results from outputOnly SFVec3f field named body2AnchorPoint.
    Provide array of String enumeration results (baseType MFString) ['"ALL"' | '"NONE"' | '"etc."'] from inputOutput MFString field named forceOutput.
    float
    Provide float value unit axis, angle (in radians) from inputOutput SFFloat field named maxAngle.
    Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    float
    Provide float value unit axis, angle (in radians) from inputOutput SFFloat field named minAngle.
    float
    Provide float value from inputOutput SFFloat field named stopBounce.
    float
    Provide float value from inputOutput SFFloat field named stopErrorCorrection.
    setAnchorPoint(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named anchorPoint.
    setAxis(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named axis.
    setBody1(RigidBody newValue)
    Accessor method to assign org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) to inputOutput SFNode field body1.
    setBody2(RigidBody newValue)
    Accessor method to assign org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) to inputOutput SFNode field body2.
    setForceOutput(String[] newValue)
    Accessor method to assign String enumeration array (""ALL"" | ""NONE"") to inputOutput MFString field named forceOutput.
    setMaxAngle(float newValue)
    Accessor method to assign float value unit axis, angle (in radians) to inputOutput SFFloat field named maxAngle.
    Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    setMinAngle(float newValue)
    Accessor method to assign float value unit axis, angle (in radians) to inputOutput SFFloat field named minAngle.
    setStopBounce(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named stopBounce.
    setStopErrorCorrection(float newValue)
    Accessor method to assign float value to inputOutput SFFloat field named stopErrorCorrection.
  • 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

      SingleAxisHingeJoint 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:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getAngle

      float getAngle()
      Provide float value unit axis, angle (in radians) from outputOnly SFFloat field named angle.
      Returns:
      value of angle field
    • getAngleRate

      float getAngleRate()
      Provide float value unit axis, angle (in radians) from outputOnly SFFloat field named angleRate.
      Returns:
      value of angleRate field
    • getAxis

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

      Tooltip: axis defines vector of joint connection between body1 and body2. *
      Returns:
      value of axis field
    • setAxis

      SingleAxisHingeJoint setAxis(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named axis.

      Tooltip: axis defines vector of joint connection between body1 and body2. *
      Parameters:
      newValue - is new value for the axis field.
      Returns:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getBody1

      RigidBody getBody1()
      Provide org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) from inputOutput SFNode field body1.

      Tooltip: [RigidBody] The body1 and body2 fields indicate the two RigidBody nodes connected by this joint. *
      Specified by:
      getBody1 in interface X3DRigidJointNode
      Returns:
      value of body1 field
    • setBody1

      SingleAxisHingeJoint setBody1(RigidBody newValue)
      Accessor method to assign org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) to inputOutput SFNode field body1.

      Tooltip: [RigidBody] The body1 and body2 fields indicate the two RigidBody nodes connected by this joint. *
      Specified by:
      setBody1 in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the body1 field.
      Returns:
      SingleAxisHingeJoint - 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.

      Tooltip: body1AnchorPoint describes anchorPoint position relative to local coordinate reference frame.
      • Hint: can detect separation if body1AnchorPoint!=body2AnchorPoint.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      Returns:
      value of body1AnchorPoint field
    • getBody2

      RigidBody getBody2()
      Provide org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) from inputOutput SFNode field body2.

      Tooltip: [RigidBody] The body1 and body2 fields indicate the two RigidBody nodes connected by this joint. *
      Specified by:
      getBody2 in interface X3DRigidJointNode
      Returns:
      value of body2 field
    • setBody2

      SingleAxisHingeJoint setBody2(RigidBody newValue)
      Accessor method to assign org.web3d.x3d.sai.RigidBodyPhysics.RigidBody instance (using a properly typed node) to inputOutput SFNode field body2.

      Tooltip: [RigidBody] The body1 and body2 fields indicate the two RigidBody nodes connected by this joint. *
      Specified by:
      setBody2 in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the body2 field.
      Returns:
      SingleAxisHingeJoint - 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.

      Tooltip: body2AnchorPoint describes anchorPoint position relative to local coordinate reference frame.
      • Hint: can detect separation if body1AnchorPoint!=body2AnchorPoint.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      Returns:
      value of body2AnchorPoint field
    • getForceOutput

      String[] getForceOutput()
      Provide array of String enumeration results (baseType MFString) ['"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

      SingleAxisHingeJoint setForceOutput(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:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getMaxAngle

      float getMaxAngle()
      Provide float value unit axis, angle (in radians) from inputOutput SFFloat field named maxAngle.

      Tooltip: [-pi,pi] maxAngle is maximum rotation angle for hinge.
      Returns:
      value of maxAngle field
    • setMaxAngle

      SingleAxisHingeJoint setMaxAngle(float newValue)
      Accessor method to assign float value unit axis, angle (in radians) to inputOutput SFFloat field named maxAngle.

      Tooltip: [-pi,pi] maxAngle is maximum rotation angle for hinge.
      Parameters:
      newValue - is new value for the maxAngle field.
      Returns:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getMetadata

      X3DMetadataObject getMetadata()
      Provide org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.

      Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
      Specified by:
      getMetadata in interface X3DNode
      Specified by:
      getMetadata in interface X3DRigidJointNode
      Returns:
      value of metadata field
      See Also:
    • setMetadata

      SingleAxisHingeJoint setMetadata(X3DMetadataObject newValue)
      Accessor method to assign org.web3d.x3d.sai.Core.X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.

      Tooltip: [X3DMetadataObject] Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
      Specified by:
      setMetadata in interface X3DNode
      Specified by:
      setMetadata in interface X3DRigidJointNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
      See Also:
    • getMinAngle

      float getMinAngle()
      Provide float value unit axis, angle (in radians) from inputOutput SFFloat field named minAngle.

      Tooltip: [-pi,pi] minAngle is minimum rotation angle for hinge.
      Returns:
      value of minAngle field
    • setMinAngle

      SingleAxisHingeJoint setMinAngle(float newValue)
      Accessor method to assign float value unit axis, angle (in radians) to inputOutput SFFloat field named minAngle.

      Tooltip: [-pi,pi] minAngle is minimum rotation angle for hinge.
      Parameters:
      newValue - is new value for the minAngle field.
      Returns:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStopBounce

      float getStopBounce()
      Provide float value from inputOutput SFFloat field named stopBounce.

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

      SingleAxisHingeJoint setStopBounce(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named stopBounce.

      Tooltip: [0,1] stopBounce 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 stopBounce field.
      Returns:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStopErrorCorrection

      float getStopErrorCorrection()
      Provide float value from inputOutput SFFloat field named stopErrorCorrection.

      Tooltip: [0,1] stopErrorCorrection 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 stopErrorCorrection field
    • setStopErrorCorrection

      SingleAxisHingeJoint setStopErrorCorrection(float newValue)
      Accessor method to assign float value to inputOutput SFFloat field named stopErrorCorrection.

      Tooltip: [0,1] stopErrorCorrection 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 stopErrorCorrection field.
      Returns:
      SingleAxisHingeJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).