Interface HAnimMotion

All Superinterfaces:
X3DChildNode, X3DNode
All Known Implementing Classes:
HAnimMotionObject

public interface HAnimMotion
extends X3DChildNode
An HAnimMotion node supports discrete frame-by-frame playback for H-Anim motion data animation.

X3D node tooltip: (X3D version 4.0 draft) [X3DChildNode] An HAnimMotion node supports discrete frame-by-frame playback for H-Anim motion data animation. Design characteristics include integration with HAnim figure data and HAnimJoint nodes, animation control, and playback of raw motion data. *


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: HAnimMotion, X3D Tooltips: HAnimMotion, X3D Scene Authoring Hints
  • Method Summary

    Modifier and Type Method Description
    java.lang.String[] getChannels()
    Provide array of String results from inputOutput MFString field named channels.
    boolean[] getChannelsEnabled()
    Provide array of boolean results from inputOutput MFBool field named channelsEnabled.
    double getCycleTime()
    Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named cycleTime.
    java.lang.String getDescription()
    Provide String value from inputOutput SFString field named description.
    double getElapsedTime()
    Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named elapsedTime.
    boolean getEnabled()
    Provide boolean value from inputOutput SFBool field named enabled.
    int getEndFrame()
    Provide int value within allowed range of [-1,infinity) from inputOutput SFInt32 field named endFrame.
    int getFrameCount()
    Provide int value within allowed range of [0,infinity) from outputOnly SFInt32 field named frameCount.
    double getFrameDuration()
    Provide double value in seconds within allowed range of (0,infinity) from inputOutput SFTime field named frameDuration.
    int getFrameIncrement()
    Provide int value from inputOutput SFInt32 field named frameIncrement.
    int getFrameIndex()
    Provide int value within allowed range of [0,infinity) from inputOutput SFInt32 field named frameIndex.
    java.lang.String[] getJoints()
    Provide array of String results from inputOutput MFString field named joints.
    int getLoa()
    Provide int value within allowed range of [-1,4] from inputOutput SFInt32 field named loa.
    boolean getLoop()
    Provide boolean value from inputOutput SFBool field named loop.
    X3DMetadataObject getMetadata()
    Provide X3DMetadataObject instance (using a properly typed node) from inputOutput SFNode field metadata.
    int getStartFrame()
    Provide int value within allowed range of [0,infinity) from inputOutput SFInt32 field named startFrame.
    float[] getValues()
    Provide array of float results from inputOutput MFFloat field named values.
    HAnimMotion setChannels​(java.lang.String[] newValue)
    Accessor method to assign String array to inputOutput MFString field named channels.
    HAnimMotion setChannelsEnabled​(boolean[] newValue)
    Accessor method to assign boolean array to inputOutput MFBool field named channelsEnabled.
    HAnimMotion setDescription​(java.lang.String newValue)
    Accessor method to assign String value to inputOutput SFString field named description.
    HAnimMotion setEnabled​(boolean newValue)
    Accessor method to assign boolean value to inputOutput SFBool field named enabled.
    HAnimMotion setEndFrame​(int newValue)
    Accessor method to assign int value to inputOutput SFInt32 field named endFrame.
    HAnimMotion setFrameDuration​(double newValue)
    Accessor method to assign double value in seconds to inputOutput SFTime field named frameDuration.
    HAnimMotion setFrameIncrement​(int newValue)
    Accessor method to assign int value to inputOutput SFInt32 field named frameIncrement.
    HAnimMotion setFrameIndex​(int newValue)
    Accessor method to assign int value to inputOutput SFInt32 field named frameIndex.
    HAnimMotion setJoints​(java.lang.String[] newValue)
    Accessor method to assign String array to inputOutput MFString field named joints.
    HAnimMotion setLoa​(int newValue)
    Accessor method to assign int value to inputOutput SFInt32 field named loa.
    HAnimMotion setLoop​(boolean newValue)
    Accessor method to assign boolean value to inputOutput SFBool field named loop.
    HAnimMotion setMetadata​(X3DMetadataObject newValue)
    Accessor method to assign X3DMetadataObject instance (using a properly typed node) to inputOutput SFNode field metadata.
    HAnimMotion setStartFrame​(int newValue)
    Accessor method to assign int value to inputOutput SFInt32 field named startFrame.
    HAnimMotion setValues​(float[] newValue)
    Accessor method to assign float array to inputOutput MFFloat field named values.
  • Method Details

    • getChannels

      java.lang.String[] getChannels()
      Provide array of String results from inputOutput MFString field named channels.

      Tooltip: list of number of channels for transformation, followed by transformation type of each channel of data. Each value is space or comma separated.
      • Hint: channels are enabled by default, unless otherwise indicated by channelsEnabled field.
      Returns:
      value of channels field
    • setChannels

      HAnimMotion setChannels​(java.lang.String[] newValue)
      Accessor method to assign String array to inputOutput MFString field named channels.

      Tooltip: list of number of channels for transformation, followed by transformation type of each channel of data. Each value is space or comma separated.
      • Hint: channels are enabled by default, unless otherwise indicated by channelsEnabled field.
      Parameters:
      newValue - is new value for the channels field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getChannelsEnabled

      boolean[] getChannelsEnabled()
      Provide array of boolean results from inputOutput MFBool field named channelsEnabled.

      Tooltip: boolean values for each channels indicating whether enabled. *
      Returns:
      value of channelsEnabled field
    • setChannelsEnabled

      HAnimMotion setChannelsEnabled​(boolean[] newValue)
      Accessor method to assign boolean array to inputOutput MFBool field named channelsEnabled.

      Tooltip: boolean values for each channels indicating whether enabled. *
      Parameters:
      newValue - is new value for the channelsEnabled field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getCycleTime

      double getCycleTime()
      Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named cycleTime.

      Tooltip: cycleTime sends a time event at initial starting time and at beginning of each new cycle.
      • Hint: this event is useful for synchronization with other time-based animation objects.
      • 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 cycleTime field
    • getDescription

      java.lang.String getDescription()
      Provide String value from inputOutput SFString field named description.

      Tooltip: Author-provided text tooltip that tells users the expected action of this node.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Returns:
      value of description field
    • setDescription

      HAnimMotion setDescription​(java.lang.String newValue)
      Accessor method to assign String value to inputOutput SFString field named description.

      Tooltip: Author-provided text tooltip that tells users the expected action of this node.
      • Hint: many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as & for & ampersand character, or " for " quotation-mark character).
      Parameters:
      newValue - is new value for the description field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getElapsedTime

      double getElapsedTime()
      Provide double value in seconds within allowed range of [0,infinity) from outputOnly SFTime field named elapsedTime.

      Tooltip: [0,+infinity) elapsedTime is computed elapsed time since the Motion object was activated and running, counting all traversed frames (as if frameIndex equaled 1) and multiplied by frameDuration, cumulative in seconds.
      • Warning: it is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
      • Hint: elapsedTime is a nonnegative SFTime duration interval, not an absolute clock time.
      Returns:
      value of elapsedTime field
    • getEnabled

      boolean getEnabled()
      Provide boolean value from inputOutput SFBool field named enabled.

      Tooltip: Enables/disables node operation. *
      Returns:
      value of enabled field
    • setEnabled

      HAnimMotion setEnabled​(boolean newValue)
      Accessor method to assign boolean value to inputOutput SFBool field named enabled.

      Tooltip: Enables/disables node operation. *
      Parameters:
      newValue - is new value for the enabled field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getEndFrame

      int getEndFrame()
      Provide int value within allowed range of [-1,infinity) from inputOutput SFInt32 field named endFrame.
      Returns:
      value of endFrame field
    • setEndFrame

      HAnimMotion setEndFrame​(int newValue)
      Accessor method to assign int value to inputOutput SFInt32 field named endFrame.
      Parameters:
      newValue - is new value for the endFrame field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getFrameCount

      int getFrameCount()
      Provide int value within allowed range of [0,infinity) from outputOnly SFInt32 field named frameCount.

      Tooltip: [0,+infinity) frameCount indicates the number of frames present in the animation, equaling the number of sets of channel data present in the values array.
      • 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 frameCount field
    • getFrameDuration

      double getFrameDuration()
      Provide double value in seconds within allowed range of (0,infinity) from inputOutput SFTime field named frameDuration.

      Tooltip: (0,+infinity) frameDuration specifies the duration of each frame in seconds. *
      Returns:
      value of frameDuration field
    • setFrameDuration

      HAnimMotion setFrameDuration​(double newValue)
      Accessor method to assign double value in seconds to inputOutput SFTime field named frameDuration.

      Tooltip: (0,+infinity) frameDuration specifies the duration of each frame in seconds. *
      Parameters:
      newValue - is new value for the frameDuration field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getFrameIncrement

      int getFrameIncrement()
      Provide int value from inputOutput SFInt32 field named frameIncrement.

      Tooltip: [-infinity,+infinity) frameIncrement field controls whether playback direction is forwards or backwards, and also whether frames are skipped (e.g. subsampled replay). For a single animation step, the next frameIndex value equals (frameIndex + frameIncrement) modulo frameCount.
      • Hint: note that setting frameIncrement to 0 prevents automatic advancement of frameIndex and pauses animation of HAnimMotion node.
      Returns:
      value of frameIncrement field
    • setFrameIncrement

      HAnimMotion setFrameIncrement​(int newValue)
      Accessor method to assign int value to inputOutput SFInt32 field named frameIncrement.

      Tooltip: [-infinity,+infinity) frameIncrement field controls whether playback direction is forwards or backwards, and also whether frames are skipped (e.g. subsampled replay). For a single animation step, the next frameIndex value equals (frameIndex + frameIncrement) modulo frameCount.
      • Hint: note that setting frameIncrement to 0 prevents automatic advancement of frameIndex and pauses animation of HAnimMotion node.
      Parameters:
      newValue - is new value for the frameIncrement field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getFrameIndex

      int getFrameIndex()
      Provide int value within allowed range of [0,infinity) from inputOutput SFInt32 field named frameIndex.

      Tooltip: [0,+infinity) frameIndex indicates index of current frame. Note that frameIndex can be modified whether the Motion node is enabled or not, and becomes effective when the next animation cycle occurs. Thus the frameIndex value indicates the frame currently (or next) being processed.
      • Hint: frameIndex starts at 0 and is no greater than (frameCount - 1). Values less than 0 are reset as 0. Values greater or equal to frameCount are stored as (frameCount - 1). Thus the value of frameIndex shall be greater than or equal to zero, and less than frameCount.
      Returns:
      value of frameIndex field
    • setFrameIndex

      HAnimMotion setFrameIndex​(int newValue)
      Accessor method to assign int value to inputOutput SFInt32 field named frameIndex.

      Tooltip: [0,+infinity) frameIndex indicates index of current frame. Note that frameIndex can be modified whether the Motion node is enabled or not, and becomes effective when the next animation cycle occurs. Thus the frameIndex value indicates the frame currently (or next) being processed.
      • Hint: frameIndex starts at 0 and is no greater than (frameCount - 1). Values less than 0 are reset as 0. Values greater or equal to frameCount are stored as (frameCount - 1). Thus the value of frameIndex shall be greater than or equal to zero, and less than frameCount.
      Parameters:
      newValue - is new value for the frameIndex field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getJoints

      java.lang.String[] getJoints()
      Provide array of String results from inputOutput MFString field named joints.

      Tooltip: joints field lists names of joints that raw motion data is to be applied to. The number and order of the names in the joints field shall match the number and order of the channels field information, and the number and order of the sets of values in the values field for each frame of the animation.
      • Hint: values are space or comma separated.
      • Hint: The joint name IGNORED shall be used for channel of motion data that is not used for any joint.
      Returns:
      value of joints field
    • setJoints

      HAnimMotion setJoints​(java.lang.String[] newValue)
      Accessor method to assign String array to inputOutput MFString field named joints.

      Tooltip: joints field lists names of joints that raw motion data is to be applied to. The number and order of the names in the joints field shall match the number and order of the channels field information, and the number and order of the sets of values in the values field for each frame of the animation.
      • Hint: values are space or comma separated.
      • Hint: The joint name IGNORED shall be used for channel of motion data that is not used for any joint.
      Parameters:
      newValue - is new value for the joints field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getLoa

      int getLoa()
      Provide int value within allowed range of [-1,4] from inputOutput SFInt32 field named loa.

      Tooltip: [-1,4] Level Of Articulation 0..4 indicates complexity and detail of joints for given humanoid skeletal hierarchy.
      Returns:
      value of loa field
    • setLoa

      HAnimMotion setLoa​(int newValue)
      Accessor method to assign int value to inputOutput SFInt32 field named loa.

      Tooltip: [-1,4] Level Of Articulation 0..4 indicates complexity and detail of joints for given humanoid skeletal hierarchy.
      Parameters:
      newValue - is new value for the loa field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getLoop

      boolean getLoop()
      Provide boolean value from inputOutput SFBool field named loop.

      Tooltip: repeat indefinitely when loop=true, repeat only once when loop=false. *
      Returns:
      value of loop field
    • setLoop

      HAnimMotion setLoop​(boolean newValue)
      Accessor method to assign boolean value to inputOutput SFBool field named loop.

      Tooltip: repeat indefinitely when loop=true, repeat only once when loop=false. *
      Parameters:
      newValue - is new value for the loop field.
      Returns:
      HAnimMotion - 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

      HAnimMotion 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:
      HAnimMotion - 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
    • getStartFrame

      int getStartFrame()
      Provide int value within allowed range of [0,infinity) from inputOutput SFInt32 field named startFrame.
      Returns:
      value of startFrame field
    • setStartFrame

      HAnimMotion setStartFrame​(int newValue)
      Accessor method to assign int value to inputOutput SFInt32 field named startFrame.
      Parameters:
      newValue - is new value for the startFrame field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).
    • getValues

      float[] getValues()
      Provide array of float results from inputOutput MFFloat field named values.

      Tooltip: values field contains all transformation values, ordered first by frame, then by joint, and then by transformation Sets of floats in the values array matching the order listed in joints and channels fields. *
      Returns:
      value of values field
    • setValues

      HAnimMotion setValues​(float[] newValue)
      Accessor method to assign float array to inputOutput MFFloat field named values.

      Tooltip: values field contains all transformation values, ordered first by frame, then by joint, and then by transformation Sets of floats in the values array matching the order listed in joints and channels fields. *
      Parameters:
      newValue - is new value for the values field.
      Returns:
      HAnimMotion - namely this same object to allow sequential method pipelining (i.e. consecutive method invocations on the same object).