Interface MFDouble

All Superinterfaces:
MField, X3DField
All Known Implementing Classes:
MFDouble

public interface MFDouble extends MField
MFDouble is an array of Double values, meaning a double-precision floating-point array type. See GeoVRML 1.0 Recommended Practice, Section 2.3, Limitations of Single Precision for rationale. Array values are optionally separated by commas in XML syntax.

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.
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
    void
    append(double newValue)
    Places a new value at the end of the existing value array, increasing the field length accordingly.
    double
    get1Value(int index)
    Get an individual value from the existing field array.
    void
    getValue(double[] valueDestination)
    Write out the current value of this field into the external valueDestination array.
    void
    insertValue(int index, double newValue)
    Insert a new value prior to the index location in the existing value array, increasing the field length accordingly.
    void
    set1Value(int index, double newValue)
    Replace a single value at the appropriate location in the existing value array.
    void
    setValue(int size, double[] newValue)
    Assign an array subset to this field.

    Methods inherited from interface org.web3d.x3d.sai.MField

    clear, remove, size
  • Method Details

    • getValue

      void getValue(double[] valueDestination)
      Write out the current value of this field into the external valueDestination array.
      Parameters:
      valueDestination - The array to be filled in with current field values.
      Throws:
      ArrayIndexOutOfBoundsException - The provided valueDestination array was too small.
    • get1Value

      double get1Value(int index) throws ArrayIndexOutOfBoundsException

      Get an individual value from the existing field array.

      If the index is outside the bounds of the current array of data values, an ArrayIndexOutOfBoundsException is thrown.

      Parameters:
      index - is position of selected value in current array
      Returns:
      The selected value
      Throws:
      ArrayIndexOutOfBoundsException - The index was outside of the bounds of the current array.
    • setValue

      void setValue(int size, double[] newValue)
      Assign an array subset to this field.
      Parameters:
      size - indicates size of result to copy (i.e. the number of typed singleton values) from beginning of newValue array.
      newValue - The replacement value array to (potentially) slice and then assign.
    • set1Value

      void set1Value(int index, double newValue) throws ArrayIndexOutOfBoundsException
      Replace a single value at the appropriate location in the existing value array. Size of the current underlying value array does not change.
      Parameters:
      index - is position of selected value in current array
      newValue - provides new value to apply
      Throws:
      ArrayIndexOutOfBoundsException
    • append

      void append(double newValue)
      Places a new value at the end of the existing value array, increasing the field length accordingly.
      Parameters:
      newValue - The newValue to append
    • insertValue

      void insertValue(int index, double newValue)
      Insert a new value prior to the index location in the existing value array, increasing the field length accordingly.
      Parameters:
      index - The position for the inserted value in the current array
      newValue - The newValue to insert