Interface HAnimJoint

All Superinterfaces:
X3DBoundedObject, X3DChildNode, X3DNode
All Known Implementing Classes:
HAnimJointObject

public interface HAnimJoint
extends X3DChildNode, X3DBoundedObject
HAnimJoint node can represent each joint in a body.

X3D node tooltip: [X3DGroupingNode] HAnimJoint node can represent each joint in a body.
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: HAnimJoint, X3D Tooltips: HAnimJoint, X3D Scene Authoring Hints
  • Method Summary

    Modifier and Type Method Description
    void addChildren​(X3DNode[] newValue)
    Add array of children nodes to array of existing nodes (if any).
    void addDisplacers​(X3DNode[] newValue)
    Add array of child displacers nodes to array of existing nodes (if any).
    float[] getBboxCenter()
    Provide array of 3-tuple float results from initializeOnly SFVec3f field named bboxCenter.
    float[] getBboxSize()
    Provide array of 3-tuple float results within allowed range of [0,infinity), or default value [-1 -1 -1], from initializeOnly SFVec3f field named bboxSize.
    float[] getCenter()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named center.
    X3DNode[] getChildren()
    Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) with acceptable node types limited to HAnimJoint|HAnimSegment|HAnimSite, from inputOutput MFNode field children.
    java.lang.String getDescription()
    Provide String value from inputOutput SFString field named description.
    X3DNode[] getDisplacers()
    Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) from inputOutput MFNode field displacers.
    float[] getLimitOrientation()
    Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named limitOrientation.
    float[] getLlimit()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named llimit.
    X3DMetadataObject getMetadata()
    Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    java.lang.String getName()
    Provide String enumeration value ( baseType jointNameValues) ["humanoid_root" | "sacroiliac" | "l_hip" | "l_knee" | "l_talocrural" | "l_talocalcaneonavicular" | "l_cuneonavicular_1" | "l_tarsometatarsal_1" | "l_metatarsophalangeal_1" | "l_tarsal_interphalangeal_1" | "l_cuneonavicular_2" | "l_tarsometatarsal_2" | "l_metatarsophalangeal_2" | "l_tarsal_proximal_interphalangeal_2" | "l_tarsal_distal_interphalangeal_2" | "l_cuneonavicular_3" | "l_tarsometatarsal_3" | "l_metatarsophalangeal_3" | "l_tarsal_proximal_interphalangeal_3" | "l_tarsal_distal_interphalangeal_3" | "l_calcaneocuboid" | "l_transversetarsal" | "l_tarsometatarsal_4" | "l_metatarsophalangeal_4" | "l_tarsal_proximal_interphalangeal_4" | "l_tarsal_distal_interphalangeal_4" | "l_tarsometatarsal_5" | "l_metatarsophalangeal_5" | "l_tarsal_proximal_interphalangeal_5" | "l_tarsal_distal_interphalangeal_5" | "r_hip" | "r_knee" | "r_talocrural" | "r_talocalcaneonavicular" | "r_cuneonavicular_1" | "r_tarsometatarsal_1" | "r_metatarsophalangeal_1" | "r_tarsal_interphalangeal_1" | "r_cuneonavicular_2" | "r_tarsometatarsal_2" | "r_metatarsophalangeal_2" | "r_tarsal_proximal_interphalangeal_2" | "r_tarsal_distal_interphalangeal_2" | "r_cuneonavicular_3" | "r_tarsometatarsal_3" | "r_metatarsophalangeal_3" | "r_tarsal_proximal_interphalangeal_3" | "r_tarsal_distal_interphalangeal_3" | "r_calcaneocuboid" | "r_transversetarsal" | "r_tarsometatarsal_4" | "r_metatarsophalangeal_4" | "r_tarsal_proximal_interphalangeal_4" | "r_tarsal_distal_interphalangeal_4" | "r_tarsometatarsal_5" | "r_metatarsophalangeal_5" | "r_tarsal_proximal_interphalangeal_5" | "r_tarsal_distal_interphalangeal_5" | "vl5" | "vl4" | "vl3" | "vl2" | "vl1" | "vt12" | "vt11" | "vt10" | "vt9" | "vt8" | "vt7" | "vt6" | "vt5" | "vt4" | "vt3" | "vt2" | "vt1" | "vc7" | "vc6" | "vc5" | "vc4" | "vc3" | "vc2" | "vc1" | "skullbase" | "l_eyelid_joint" | "r_eyelid_joint" | "l_eyeball_joint" | "r_eyeball_joint" | "l_eyebrow_joint" | "r_eyebrow_joint" | "temporomandibular" | "l_sternoclavicular" | "l_acromioclavicular" | "l_shoulder" | "l_elbow" | "l_radiocarpal" | "l_midcarpal_1" | "l_carpometacarpal_1" | "l_metacarpophalangeal_1" | "l_carpal_interphalangeal_1" | "l_midcarpal_2" | "l_carpometacarpal_2" | "l_metacarpophalangeal_2" | "l_carpal_proximal_interphalangeal_2" | "l_carpal_distal_interphalangeal_2" | "l_midcarpal_3" | "l_carpometacarpal_3" | "l_metacarpophalangeal_3" | "l_carpal_proximal_interphalangeal_3" | "l_carpal_distal_interphalangeal_3" | "l_midcarpal_4_5" | "l_carpometacarpal_4" | "l_metacarpophalangeal_4" | "l_carpal_proximal_interphalangeal_4" | "l_carpal_distal_interphalangeal_4" | "l_carpometacarpal_5" | "l_metacarpophalangeal_5" | "l_carpal_proximal_interphalangeal_5" | "l_carpal_distal_interphalangeal_5" | "r_sternoclavicular" | "r_acromioclavicular" | "r_shoulder" | "r_elbow" | "r_radiocarpal" | "r_midcarpal_1" | "r_carpometacarpal_1" | "r_metacarpophalangeal_1" | "r_carpal_interphalangeal_1" | "r_midcarpal_2" | "r_carpometacarpal_2" | "r_metacarpophalangeal_2" | "r_carpal_proximal_interphalangeal_2" | "r_carpal_distal_interphalangeal_2" | "r_midcarpal_3" | "r_carpometacarpal_3" | "r_metacarpophalangeal_3" | "r_carpal_proximal_interphalangeal_3" | "r_carpal_distal_interphalangeal_3" | "r_midcarpal_4_5" | "r_carpometacarpal_4" | "r_metacarpophalangeal_4" | "r_carpal_proximal_interphalangeal_4" | "r_carpal_distal_interphalangeal_4" | "r_carpometacarpal_5" | "r_metacarpophalangeal_5" | "r_carpal_proximal_interphalangeal_5" | "r_carpal_distal_interphalangeal_5" | 'etc.'] from inputOutput SFString field named name.
    float[] getRotation()
    Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named rotation.
    float[] getScale()
    Provide array of 3-tuple float results within allowed range of (0,infinity) from inputOutput SFVec3f field named scale.
    float[] getScaleOrientation()
    Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named scaleOrientation.
    int[] getSkinCoordIndex()
    Provide array of int results within allowed range of [0,infinity) from inputOutput MFInt32 field named skinCoordIndex.
    float[] getSkinCoordWeight()
    Provide array of float results from inputOutput MFFloat field named skinCoordWeight.
    float[] getStiffness()
    Provide array of 3-tuple float results within allowed range of [0,1] from inputOutput SFVec3f field named stiffness.
    float[] getTranslation()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named translation.
    float[] getUlimit()
    Provide array of 3-tuple float results from inputOutput SFVec3f field named ulimit.
    HAnimJoint setBboxCenter​(float[] newValue)
    Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxCenter.
    HAnimJoint setBboxSize​(float[] newValue)
    Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxSize.
    HAnimJoint setCenter​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named center.
    void setChildren​(X3DNode newValue)
    Set single children node, replacing prior array of existing nodes (if any).
    HAnimJoint setChildren​(X3DNode[] newValue)
    Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field children. // newValueInstanceAcceptableNodeTypesTest checks are needed for methods that override/subset X3DNode interfaces #1 boolean isNodeTypeAllowed = (newValue instanceof org.web3d.x3d.jsail.Core.CommentsBlock) || (newValue instanceof org.web3d.x3d.jsail.Core.ROUTEObject) || (newValue instanceof org.web3d.x3d.jsail.Networking.IMPORTObject) || (newValue instanceof org.web3d.x3d.jsail.Networking.EXPORTObject) || (newValue instanceof org.web3d.x3d.jsail.Core.ProtoDeclareObject) || (newValue instanceof org.web3d.x3d.jsail.Core.ExternProtoDeclareObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.HAnim.HAnimJointObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.HAnim.HAnimSegmentObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.HAnim.HAnimSiteObject); if (!
    HAnimJoint setDescription​(java.lang.String newValue)
    Accessor method to assign String value to inputOutput SFString field named description.
    void setDisplacers​(X3DNode newValue)
    Set single child displacers node, replacing prior array of existing nodes (if any).
    HAnimJoint setDisplacers​(X3DNode[] newValue)
    Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field displacers.
    HAnimJoint setLimitOrientation​(float[] newValue)
    Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named limitOrientation.
    HAnimJoint setLlimit​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named llimit.
    HAnimJoint setMetadata​(X3DMetadataObject newValue)
    Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    HAnimJoint setName​(java.lang.String newValue)
    Accessor method to assign String enumeration value ("humanoid_root" | "sacroiliac" | "l_hip" | "l_knee" | "l_talocrural" | "l_talocalcaneonavicular" | "l_cuneonavicular_1" | "l_tarsometatarsal_1" | "l_metatarsophalangeal_1" | "l_tarsal_interphalangeal_1" | "l_cuneonavicular_2" | "l_tarsometatarsal_2" | "l_metatarsophalangeal_2" | "l_tarsal_proximal_interphalangeal_2" | "l_tarsal_distal_interphalangeal_2" | "l_cuneonavicular_3" | "l_tarsometatarsal_3" | "l_metatarsophalangeal_3" | "l_tarsal_proximal_interphalangeal_3" | "l_tarsal_distal_interphalangeal_3" | "l_calcaneocuboid" | "l_transversetarsal" | "l_tarsometatarsal_4" | "l_metatarsophalangeal_4" | "l_tarsal_proximal_interphalangeal_4" | "l_tarsal_distal_interphalangeal_4" | "l_tarsometatarsal_5" | "l_metatarsophalangeal_5" | "l_tarsal_proximal_interphalangeal_5" | "l_tarsal_distal_interphalangeal_5" | "r_hip" | "r_knee" | "r_talocrural" | "r_talocalcaneonavicular" | "r_cuneonavicular_1" | "r_tarsometatarsal_1" | "r_metatarsophalangeal_1" | "r_tarsal_interphalangeal_1" | "r_cuneonavicular_2" | "r_tarsometatarsal_2" | "r_metatarsophalangeal_2" | "r_tarsal_proximal_interphalangeal_2" | "r_tarsal_distal_interphalangeal_2" | "r_cuneonavicular_3" | "r_tarsometatarsal_3" | "r_metatarsophalangeal_3" | "r_tarsal_proximal_interphalangeal_3" | "r_tarsal_distal_interphalangeal_3" | "r_calcaneocuboid" | "r_transversetarsal" | "r_tarsometatarsal_4" | "r_metatarsophalangeal_4" | "r_tarsal_proximal_interphalangeal_4" | "r_tarsal_distal_interphalangeal_4" | "r_tarsometatarsal_5" | "r_metatarsophalangeal_5" | "r_tarsal_proximal_interphalangeal_5" | "r_tarsal_distal_interphalangeal_5" | "vl5" | "vl4" | "vl3" | "vl2" | "vl1" | "vt12" | "vt11" | "vt10" | "vt9" | "vt8" | "vt7" | "vt6" | "vt5" | "vt4" | "vt3" | "vt2" | "vt1" | "vc7" | "vc6" | "vc5" | "vc4" | "vc3" | "vc2" | "vc1" | "skullbase" | "l_eyelid_joint" | "r_eyelid_joint" | "l_eyeball_joint" | "r_eyeball_joint" | "l_eyebrow_joint" | "r_eyebrow_joint" | "temporomandibular" | "l_sternoclavicular" | "l_acromioclavicular" | "l_shoulder" | "l_elbow" | "l_radiocarpal" | "l_midcarpal_1" | "l_carpometacarpal_1" | "l_metacarpophalangeal_1" | "l_carpal_interphalangeal_1" | "l_midcarpal_2" | "l_carpometacarpal_2" | "l_metacarpophalangeal_2" | "l_carpal_proximal_interphalangeal_2" | "l_carpal_distal_interphalangeal_2" | "l_midcarpal_3" | "l_carpometacarpal_3" | "l_metacarpophalangeal_3" | "l_carpal_proximal_interphalangeal_3" | "l_carpal_distal_interphalangeal_3" | "l_midcarpal_4_5" | "l_carpometacarpal_4" | "l_metacarpophalangeal_4" | "l_carpal_proximal_interphalangeal_4" | "l_carpal_distal_interphalangeal_4" | "l_carpometacarpal_5" | "l_metacarpophalangeal_5" | "l_carpal_proximal_interphalangeal_5" | "l_carpal_distal_interphalangeal_5" | "r_sternoclavicular" | "r_acromioclavicular" | "r_shoulder" | "r_elbow" | "r_radiocarpal" | "r_midcarpal_1" | "r_carpometacarpal_1" | "r_metacarpophalangeal_1" | "r_carpal_interphalangeal_1" | "r_midcarpal_2" | "r_carpometacarpal_2" | "r_metacarpophalangeal_2" | "r_carpal_proximal_interphalangeal_2" | "r_carpal_distal_interphalangeal_2" | "r_midcarpal_3" | "r_carpometacarpal_3" | "r_metacarpophalangeal_3" | "r_carpal_proximal_interphalangeal_3" | "r_carpal_distal_interphalangeal_3" | "r_midcarpal_4_5" | "r_carpometacarpal_4" | "r_metacarpophalangeal_4" | "r_carpal_proximal_interphalangeal_4" | "r_carpal_distal_interphalangeal_4" | "r_carpometacarpal_5" | "r_metacarpophalangeal_5" | "r_carpal_proximal_interphalangeal_5" | "r_carpal_distal_interphalangeal_5") to inputOutput SFString field named name.
    HAnimJoint setRotation​(float[] newValue)
    Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named rotation.
    HAnimJoint setScale​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named scale.
    HAnimJoint setScaleOrientation​(float[] newValue)
    Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named scaleOrientation.
    HAnimJoint setSkinCoordIndex​(int[] newValue)
    Accessor method to assign int array to inputOutput MFInt32 field named skinCoordIndex.
    HAnimJoint setSkinCoordWeight​(float[] newValue)
    Accessor method to assign float array to inputOutput MFFloat field named skinCoordWeight.
    HAnimJoint setStiffness​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named stiffness.
    HAnimJoint setTranslation​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named translation.
    HAnimJoint setUlimit​(float[] newValue)
    Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named ulimit.
  • Method Details

    • getBboxCenter

      float[] getBboxCenter()
      Provide array of 3-tuple float results from initializeOnly SFVec3f field named bboxCenter.

      Tooltip: Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
      Specified by:
      getBboxCenter in interface X3DBoundedObject
      Returns:
      value of bboxCenter field
    • setBboxCenter

      HAnimJoint setBboxCenter​(float[] newValue)
      Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxCenter.

      Tooltip: Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
      Specified by:
      setBboxCenter in interface X3DBoundedObject
      Parameters:
      newValue - is new value for the bboxCenter field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getBboxSize

      float[] getBboxSize()
      Provide array of 3-tuple float results within allowed range of [0,infinity), or default value [-1 -1 -1], from initializeOnly SFVec3f field named bboxSize.

      Tooltip: Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
      Specified by:
      getBboxSize in interface X3DBoundedObject
      Returns:
      value of bboxSize field
    • setBboxSize

      HAnimJoint setBboxSize​(float[] newValue)
      Accessor method to assign 3-tuple float array to initializeOnly SFVec3f field named bboxSize.

      Tooltip: Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
      Specified by:
      setBboxSize in interface X3DBoundedObject
      Parameters:
      newValue - is new value for the bboxSize field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getCenter

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

      Tooltip: Translation offset from origin of local coordinate system.
      • Hint: usually HAnimJoint position is controlled by the center field, not the translation field.
      Returns:
      value of center field
    • setCenter

      HAnimJoint setCenter​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named center.

      Tooltip: Translation offset from origin of local coordinate system.
      • Hint: usually HAnimJoint position is controlled by the center field, not the translation field.
      Parameters:
      newValue - is new value for the center field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getChildren

      X3DNode[] getChildren()
      Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) with acceptable node types limited to HAnimJoint|HAnimSegment|HAnimSite, from inputOutput MFNode field children.

      Tooltip: [HAnimJoint|HAnimSegment|HAnimSite] Grouping nodes contain an ordered list of children nodes.
      • Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
      • Warning: HAnimJoint can only contain HAnimJoint|HAnimSegment|HAnimSite nodes (each having default containerField='children').
      • Hint: place any geometry for this HAnimJoint in the child HAnimSegment, wrapped within a Transform having the same translation value as the current HAnimJoint center value.
      • Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
      • Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
      • Hint: X3D Architecture 10.2.1 Grouping and children node types, http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodes


      Warning: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to HAnimJoint|HAnimSegment|HAnimSite.
      Returns:
      value of children field
      See Also:
      HAnimJointObject, HAnimSegmentObject, HAnimSiteObject
    • setChildren

      HAnimJoint setChildren​(X3DNode[] newValue)
      Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field children. // newValueInstanceAcceptableNodeTypesTest checks are needed for methods that override/subset X3DNode interfaces #1 boolean isNodeTypeAllowed = (newValue instanceof org.web3d.x3d.jsail.Core.CommentsBlock) || (newValue instanceof org.web3d.x3d.jsail.Core.ROUTEObject) || (newValue instanceof org.web3d.x3d.jsail.Networking.IMPORTObject) || (newValue instanceof org.web3d.x3d.jsail.Networking.EXPORTObject) || (newValue instanceof org.web3d.x3d.jsail.Core.ProtoDeclareObject) || (newValue instanceof org.web3d.x3d.jsail.Core.ExternProtoDeclareObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.HAnim.HAnimJointObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.HAnim.HAnimSegmentObject) || (((X3DConcreteNode)newValue) instanceof org.web3d.x3d.jsail.HAnim.HAnimSiteObject); if (!isNodeTypeAllowed) { throw new org.web3d.x3d.sai.InvalidFieldValueException("X3DNode newValue is not instanceof " + "acceptableNodeTypes HAnimJoint|HAnimSegment|HAnimSite; newValue=" + newValue); }

      Tooltip: [HAnimJoint|HAnimSegment|HAnimSite] Grouping nodes contain an ordered list of children nodes.
      • Hint: Each grouping node defines a coordinate space for its children, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
      • Warning: HAnimJoint can only contain HAnimJoint|HAnimSegment|HAnimSite nodes (each having default containerField='children').
      • Hint: place any geometry for this HAnimJoint in the child HAnimSegment, wrapped within a Transform having the same translation value as the current HAnimJoint center value.
      • Hint: inputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
      • Hint: inputOnly MFNode removeChildren field can remove nodes from the children list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
      • Hint: X3D Architecture 10.2.1 Grouping and children node types, http://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/group.html#GroupingAndChildrenNodes


      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to HAnimJoint|HAnimSegment|HAnimSite.
      Parameters:
      newValue - is new value for the children field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • addChildren

      void addChildren​(X3DNode[] newValue)
      Add array of children nodes to array of existing nodes (if any).

      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to HAnimJoint|HAnimSegment|HAnimSite.
      Parameters:
      newValue - is new value array to be appended the children field.
    • setChildren

      void setChildren​(X3DNode newValue)
      Set single children node, replacing prior array of existing nodes (if any).
      Parameters:
      newValue - is new node for the children field
    • getDescription

      java.lang.String getDescription()
      Provide String value from inputOutput SFString field named description.
      Returns:
      value of description field
    • setDescription

      HAnimJoint setDescription​(java.lang.String newValue)
      Accessor method to assign String value to inputOutput SFString field named description.
      Parameters:
      newValue - is new value for the description field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getDisplacers

      X3DNode[] getDisplacers()
      Provide array of X3DNode results (using an array consisting of properly typed nodes or ProtoInstanceObjects) from inputOutput MFNode field displacers.

      Tooltip: [HAnimDisplacer] the displacers field stores HAnimDisplacer objects for a particular HAnimJoint object.
      • Warning: index values for HanimHumanoid skin IndexedFaceSet, skinCoord and skinNormal nodes must all be consistently defined together with HAnimJoint HAnimSegment and HAnimDisplacer nodes for proper skin animation.


      Warning: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to HAnimDisplacer.
      Returns:
      value of displacers field
      See Also:
      HAnimDisplacerObject
    • setDisplacers

      HAnimJoint setDisplacers​(X3DNode[] newValue)
      Accessor method to assign X3DNode array (using an array consisting of properly typed nodes or ProtoInstanceObjects) to inputOutput MFNode field displacers.

      Tooltip: [HAnimDisplacer] the displacers field stores HAnimDisplacer objects for a particular HAnimJoint object.
      • Warning: index values for HanimHumanoid skin IndexedFaceSet, skinCoord and skinNormal nodes must all be consistently defined together with HAnimJoint HAnimSegment and HAnimDisplacer nodes for proper skin animation.


      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to HAnimDisplacer.
      Parameters:
      newValue - is new value for the displacers field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • addDisplacers

      void addDisplacers​(X3DNode[] newValue)
      Add array of child displacers nodes to array of existing nodes (if any).

      Note: according to X3D Unified Object Model (X3DUOM), acceptable node types are limited to HAnimDisplacer.
      Parameters:
      newValue - is new value array to be appended the displacers field.
    • setDisplacers

      void setDisplacers​(X3DNode newValue)
      Set single child displacers node, replacing prior array of existing nodes (if any).
      Parameters:
      newValue - is new node for the displacers field
    • getLimitOrientation

      float[] getLimitOrientation()
      Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named limitOrientation.

      Tooltip: Orientation of upper/lower rotation limits, relative to HAnimJoint center. *
      Returns:
      value of limitOrientation field
    • setLimitOrientation

      HAnimJoint setLimitOrientation​(float[] newValue)
      Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named limitOrientation.

      Tooltip: Orientation of upper/lower rotation limits, relative to HAnimJoint center. *
      Parameters:
      newValue - is new value for the limitOrientation field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getLlimit

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

      Tooltip: Lower limit for minimum joint rotation in radians.
      • Hint: always contains 3 values, one for each local axis.
      Returns:
      value of llimit field
    • setLlimit

      HAnimJoint setLlimit​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named llimit.

      Tooltip: Lower limit for minimum joint rotation in radians.
      • Hint: always contains 3 values, one for each local axis.
      Parameters:
      newValue - is new value for the llimit field.
      Returns:
      HAnimJoint - 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 X3DChildNode
      Specified by:
      getMetadata in interface X3DNode
      Returns:
      value of metadata field
      See Also:
      X3D Scene Authoring Hints: Metadata Nodes
    • setMetadata

      HAnimJoint setMetadata​(X3DMetadataObject newValue)
      Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
      Specified by:
      setMetadata in interface X3DChildNode
      Specified by:
      setMetadata in interface X3DNode
      Parameters:
      newValue - is new value for the metadata field.
      Returns:
      HAnimJoint - 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
    • getName

      java.lang.String getName()
      Provide String enumeration value ( baseType jointNameValues) ["humanoid_root" | "sacroiliac" | "l_hip" | "l_knee" | "l_talocrural" | "l_talocalcaneonavicular" | "l_cuneonavicular_1" | "l_tarsometatarsal_1" | "l_metatarsophalangeal_1" | "l_tarsal_interphalangeal_1" | "l_cuneonavicular_2" | "l_tarsometatarsal_2" | "l_metatarsophalangeal_2" | "l_tarsal_proximal_interphalangeal_2" | "l_tarsal_distal_interphalangeal_2" | "l_cuneonavicular_3" | "l_tarsometatarsal_3" | "l_metatarsophalangeal_3" | "l_tarsal_proximal_interphalangeal_3" | "l_tarsal_distal_interphalangeal_3" | "l_calcaneocuboid" | "l_transversetarsal" | "l_tarsometatarsal_4" | "l_metatarsophalangeal_4" | "l_tarsal_proximal_interphalangeal_4" | "l_tarsal_distal_interphalangeal_4" | "l_tarsometatarsal_5" | "l_metatarsophalangeal_5" | "l_tarsal_proximal_interphalangeal_5" | "l_tarsal_distal_interphalangeal_5" | "r_hip" | "r_knee" | "r_talocrural" | "r_talocalcaneonavicular" | "r_cuneonavicular_1" | "r_tarsometatarsal_1" | "r_metatarsophalangeal_1" | "r_tarsal_interphalangeal_1" | "r_cuneonavicular_2" | "r_tarsometatarsal_2" | "r_metatarsophalangeal_2" | "r_tarsal_proximal_interphalangeal_2" | "r_tarsal_distal_interphalangeal_2" | "r_cuneonavicular_3" | "r_tarsometatarsal_3" | "r_metatarsophalangeal_3" | "r_tarsal_proximal_interphalangeal_3" | "r_tarsal_distal_interphalangeal_3" | "r_calcaneocuboid" | "r_transversetarsal" | "r_tarsometatarsal_4" | "r_metatarsophalangeal_4" | "r_tarsal_proximal_interphalangeal_4" | "r_tarsal_distal_interphalangeal_4" | "r_tarsometatarsal_5" | "r_metatarsophalangeal_5" | "r_tarsal_proximal_interphalangeal_5" | "r_tarsal_distal_interphalangeal_5" | "vl5" | "vl4" | "vl3" | "vl2" | "vl1" | "vt12" | "vt11" | "vt10" | "vt9" | "vt8" | "vt7" | "vt6" | "vt5" | "vt4" | "vt3" | "vt2" | "vt1" | "vc7" | "vc6" | "vc5" | "vc4" | "vc3" | "vc2" | "vc1" | "skullbase" | "l_eyelid_joint" | "r_eyelid_joint" | "l_eyeball_joint" | "r_eyeball_joint" | "l_eyebrow_joint" | "r_eyebrow_joint" | "temporomandibular" | "l_sternoclavicular" | "l_acromioclavicular" | "l_shoulder" | "l_elbow" | "l_radiocarpal" | "l_midcarpal_1" | "l_carpometacarpal_1" | "l_metacarpophalangeal_1" | "l_carpal_interphalangeal_1" | "l_midcarpal_2" | "l_carpometacarpal_2" | "l_metacarpophalangeal_2" | "l_carpal_proximal_interphalangeal_2" | "l_carpal_distal_interphalangeal_2" | "l_midcarpal_3" | "l_carpometacarpal_3" | "l_metacarpophalangeal_3" | "l_carpal_proximal_interphalangeal_3" | "l_carpal_distal_interphalangeal_3" | "l_midcarpal_4_5" | "l_carpometacarpal_4" | "l_metacarpophalangeal_4" | "l_carpal_proximal_interphalangeal_4" | "l_carpal_distal_interphalangeal_4" | "l_carpometacarpal_5" | "l_metacarpophalangeal_5" | "l_carpal_proximal_interphalangeal_5" | "l_carpal_distal_interphalangeal_5" | "r_sternoclavicular" | "r_acromioclavicular" | "r_shoulder" | "r_elbow" | "r_radiocarpal" | "r_midcarpal_1" | "r_carpometacarpal_1" | "r_metacarpophalangeal_1" | "r_carpal_interphalangeal_1" | "r_midcarpal_2" | "r_carpometacarpal_2" | "r_metacarpophalangeal_2" | "r_carpal_proximal_interphalangeal_2" | "r_carpal_distal_interphalangeal_2" | "r_midcarpal_3" | "r_carpometacarpal_3" | "r_metacarpophalangeal_3" | "r_carpal_proximal_interphalangeal_3" | "r_carpal_distal_interphalangeal_3" | "r_midcarpal_4_5" | "r_carpometacarpal_4" | "r_metacarpophalangeal_4" | "r_carpal_proximal_interphalangeal_4" | "r_carpal_distal_interphalangeal_4" | "r_carpometacarpal_5" | "r_metacarpophalangeal_5" | "r_carpal_proximal_interphalangeal_5" | "r_carpal_distal_interphalangeal_5" | 'etc.'] from inputOutput SFString field named name.

      Tooltip: Unique name attribute must be defined so that HAnimJoint node can be identified at run time for animation purposes.
      Returns:
      value of name field
    • setName

      HAnimJoint setName​(java.lang.String newValue)
      Accessor method to assign String enumeration value ("humanoid_root" | "sacroiliac" | "l_hip" | "l_knee" | "l_talocrural" | "l_talocalcaneonavicular" | "l_cuneonavicular_1" | "l_tarsometatarsal_1" | "l_metatarsophalangeal_1" | "l_tarsal_interphalangeal_1" | "l_cuneonavicular_2" | "l_tarsometatarsal_2" | "l_metatarsophalangeal_2" | "l_tarsal_proximal_interphalangeal_2" | "l_tarsal_distal_interphalangeal_2" | "l_cuneonavicular_3" | "l_tarsometatarsal_3" | "l_metatarsophalangeal_3" | "l_tarsal_proximal_interphalangeal_3" | "l_tarsal_distal_interphalangeal_3" | "l_calcaneocuboid" | "l_transversetarsal" | "l_tarsometatarsal_4" | "l_metatarsophalangeal_4" | "l_tarsal_proximal_interphalangeal_4" | "l_tarsal_distal_interphalangeal_4" | "l_tarsometatarsal_5" | "l_metatarsophalangeal_5" | "l_tarsal_proximal_interphalangeal_5" | "l_tarsal_distal_interphalangeal_5" | "r_hip" | "r_knee" | "r_talocrural" | "r_talocalcaneonavicular" | "r_cuneonavicular_1" | "r_tarsometatarsal_1" | "r_metatarsophalangeal_1" | "r_tarsal_interphalangeal_1" | "r_cuneonavicular_2" | "r_tarsometatarsal_2" | "r_metatarsophalangeal_2" | "r_tarsal_proximal_interphalangeal_2" | "r_tarsal_distal_interphalangeal_2" | "r_cuneonavicular_3" | "r_tarsometatarsal_3" | "r_metatarsophalangeal_3" | "r_tarsal_proximal_interphalangeal_3" | "r_tarsal_distal_interphalangeal_3" | "r_calcaneocuboid" | "r_transversetarsal" | "r_tarsometatarsal_4" | "r_metatarsophalangeal_4" | "r_tarsal_proximal_interphalangeal_4" | "r_tarsal_distal_interphalangeal_4" | "r_tarsometatarsal_5" | "r_metatarsophalangeal_5" | "r_tarsal_proximal_interphalangeal_5" | "r_tarsal_distal_interphalangeal_5" | "vl5" | "vl4" | "vl3" | "vl2" | "vl1" | "vt12" | "vt11" | "vt10" | "vt9" | "vt8" | "vt7" | "vt6" | "vt5" | "vt4" | "vt3" | "vt2" | "vt1" | "vc7" | "vc6" | "vc5" | "vc4" | "vc3" | "vc2" | "vc1" | "skullbase" | "l_eyelid_joint" | "r_eyelid_joint" | "l_eyeball_joint" | "r_eyeball_joint" | "l_eyebrow_joint" | "r_eyebrow_joint" | "temporomandibular" | "l_sternoclavicular" | "l_acromioclavicular" | "l_shoulder" | "l_elbow" | "l_radiocarpal" | "l_midcarpal_1" | "l_carpometacarpal_1" | "l_metacarpophalangeal_1" | "l_carpal_interphalangeal_1" | "l_midcarpal_2" | "l_carpometacarpal_2" | "l_metacarpophalangeal_2" | "l_carpal_proximal_interphalangeal_2" | "l_carpal_distal_interphalangeal_2" | "l_midcarpal_3" | "l_carpometacarpal_3" | "l_metacarpophalangeal_3" | "l_carpal_proximal_interphalangeal_3" | "l_carpal_distal_interphalangeal_3" | "l_midcarpal_4_5" | "l_carpometacarpal_4" | "l_metacarpophalangeal_4" | "l_carpal_proximal_interphalangeal_4" | "l_carpal_distal_interphalangeal_4" | "l_carpometacarpal_5" | "l_metacarpophalangeal_5" | "l_carpal_proximal_interphalangeal_5" | "l_carpal_distal_interphalangeal_5" | "r_sternoclavicular" | "r_acromioclavicular" | "r_shoulder" | "r_elbow" | "r_radiocarpal" | "r_midcarpal_1" | "r_carpometacarpal_1" | "r_metacarpophalangeal_1" | "r_carpal_interphalangeal_1" | "r_midcarpal_2" | "r_carpometacarpal_2" | "r_metacarpophalangeal_2" | "r_carpal_proximal_interphalangeal_2" | "r_carpal_distal_interphalangeal_2" | "r_midcarpal_3" | "r_carpometacarpal_3" | "r_metacarpophalangeal_3" | "r_carpal_proximal_interphalangeal_3" | "r_carpal_distal_interphalangeal_3" | "r_midcarpal_4_5" | "r_carpometacarpal_4" | "r_metacarpophalangeal_4" | "r_carpal_proximal_interphalangeal_4" | "r_carpal_distal_interphalangeal_4" | "r_carpometacarpal_5" | "r_metacarpophalangeal_5" | "r_carpal_proximal_interphalangeal_5" | "r_carpal_distal_interphalangeal_5") to inputOutput SFString field named name.

      Tooltip: Unique name attribute must be defined so that HAnimJoint node can be identified at run time for animation purposes.

      @see X3D Scene Authoring Hints: Naming Conventions
      Parameters:
      newValue - is new value for the name field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getRotation

      float[] getRotation()
      Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named rotation.

      Tooltip: Orientation of children relative to local coordinate system.
      • Warning: default pose is typically empty (or an identity rotation) to avoid distorted body animations.
      Returns:
      value of rotation field
    • setRotation

      HAnimJoint setRotation​(float[] newValue)
      Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named rotation.

      Tooltip: Orientation of children relative to local coordinate system.
      • Warning: default pose is typically empty (or an identity rotation) to avoid distorted body animations.
      Parameters:
      newValue - is new value for the rotation field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getScale

      float[] getScale()
      Provide array of 3-tuple float results within allowed range of (0,infinity) from inputOutput SFVec3f field named scale.

      Tooltip: Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation. *
      Returns:
      value of scale field
    • setScale

      HAnimJoint setScale​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named scale.

      Tooltip: Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation. *
      Parameters:
      newValue - is new value for the scale field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getScaleOrientation

      float[] getScaleOrientation()
      Provide array of 4-tuple float results unit axis, angle (in radians) from inputOutput SFRotation field named scaleOrientation.

      Tooltip: Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations). *
      Returns:
      value of scaleOrientation field
    • setScaleOrientation

      HAnimJoint setScaleOrientation​(float[] newValue)
      Accessor method to assign 4-tuple float array unit axis, angle (in radians) to inputOutput SFRotation field named scaleOrientation.

      Tooltip: Preliminary rotation of coordinate system before scaling (to allow scaling around arbitrary orientations). *
      Parameters:
      newValue - is new value for the scaleOrientation field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getSkinCoordIndex

      int[] getSkinCoordIndex()
      Provide array of int results within allowed range of [0,infinity) from inputOutput MFInt32 field named skinCoordIndex.

      Tooltip: [0,+infinity) Coordinate index values referencing which vertices are influenced by the HAnimJoint.
      • Warning: -1 sentinel values are not allowed.
      • Hint: corresponding skinCoord Coordinate and skinNormal Normal nodes are directly contained within the ancestor HAnimHumanoid node for this HAnimJoint.
      • Warning: index values for HanimHumanoid skin IndexedFaceSet, skinCoord and skinNormal nodes must all be consistently defined together with HAnimJoint HAnimSegment and HAnimDisplacer nodes for proper skin animation.
      Returns:
      value of skinCoordIndex field
    • setSkinCoordIndex

      HAnimJoint setSkinCoordIndex​(int[] newValue)
      Accessor method to assign int array to inputOutput MFInt32 field named skinCoordIndex.

      Tooltip: [0,+infinity) Coordinate index values referencing which vertices are influenced by the HAnimJoint.
      • Warning: -1 sentinel values are not allowed.
      • Hint: corresponding skinCoord Coordinate and skinNormal Normal nodes are directly contained within the ancestor HAnimHumanoid node for this HAnimJoint.
      • Warning: index values for HanimHumanoid skin IndexedFaceSet, skinCoord and skinNormal nodes must all be consistently defined together with HAnimJoint HAnimSegment and HAnimDisplacer nodes for proper skin animation.
      Parameters:
      newValue - is new value for the skinCoordIndex field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getSkinCoordWeight

      float[] getSkinCoordWeight()
      Provide array of float results from inputOutput MFFloat field named skinCoordWeight.

      Tooltip: Weight deformation values for the corresponding values in the skinCoordIndex field.
      • Warning: index values for HanimHumanoid skin IndexedFaceSet, skinCoord and skinNormal nodes must all be consistently defined together with HAnimJoint HAnimSegment and HAnimDisplacer nodes for proper skin animation.
      Returns:
      value of skinCoordWeight field
    • setSkinCoordWeight

      HAnimJoint setSkinCoordWeight​(float[] newValue)
      Accessor method to assign float array to inputOutput MFFloat field named skinCoordWeight.

      Tooltip: Weight deformation values for the corresponding values in the skinCoordIndex field.
      • Warning: index values for HanimHumanoid skin IndexedFaceSet, skinCoord and skinNormal nodes must all be consistently defined together with HAnimJoint HAnimSegment and HAnimDisplacer nodes for proper skin animation.
      Parameters:
      newValue - is new value for the skinCoordWeight field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getStiffness

      float[] getStiffness()
      Provide array of 3-tuple float results within allowed range of [0,1] from inputOutput SFVec3f field named stiffness.

      Tooltip: [0,1] A scale factor of (1 - stiffness) is applied around the corresponding axis (X, Y, or Z for entries 0, 1 and 2 of the stiffness field). Thus a stiffness value of zero means that no rotation scaling occurs, while a stiffness value of one means that no rotation occurs regardless of any provided rotation.
      • Hint: used by inverse kinematics (IK) systems.
      Returns:
      value of stiffness field
    • setStiffness

      HAnimJoint setStiffness​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named stiffness.

      Tooltip: [0,1] A scale factor of (1 - stiffness) is applied around the corresponding axis (X, Y, or Z for entries 0, 1 and 2 of the stiffness field). Thus a stiffness value of zero means that no rotation scaling occurs, while a stiffness value of one means that no rotation occurs regardless of any provided rotation.
      • Hint: used by inverse kinematics (IK) systems.
      Parameters:
      newValue - is new value for the stiffness field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getTranslation

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

      Tooltip: Position of children relative to local coordinate system.
      • Warning: usually HAnimJoint position is controlled by the center field, not the translation field.
      • Hint: since default pose faces along +Z axis, -x values are right side and +x values are left side within HAnimHumanoid.
      Returns:
      value of translation field
    • setTranslation

      HAnimJoint setTranslation​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named translation.

      Tooltip: Position of children relative to local coordinate system.
      • Warning: usually HAnimJoint position is controlled by the center field, not the translation field.
      • Hint: since default pose faces along +Z axis, -x values are right side and +x values are left side within HAnimHumanoid.
      Parameters:
      newValue - is new value for the translation field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getUlimit

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

      Tooltip: Upper limit for maximum joint rotation in radians.
      • Hint: always contains 3 values, one for each local axis.
      Returns:
      value of ulimit field
    • setUlimit

      HAnimJoint setUlimit​(float[] newValue)
      Accessor method to assign 3-tuple float array to inputOutput SFVec3f field named ulimit.

      Tooltip: Upper limit for maximum joint rotation in radians.
      • Hint: always contains 3 values, one for each local axis.
      Parameters:
      newValue - is new value for the ulimit field.
      Returns:
      HAnimJoint - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).