Class SoSFArray3D


  • public class SoSFArray3D
    extends SoSFArray
    Field containing a 3D array value. This field contains a 3D array of values of a specified type. The setValue method allows you to specify the dimensions and type of data the array will contain, as well as the number of significant bits. The CopyPolicy allows you to control whether Open Inventor will make a copy of the data and, if not, whether the application or Open Inventor is responsible for managing the memory.

    In ASCII format, an SoSFArray3D is written to file in the following format:

    • Three numbers define the dimensions of the array
    • One string defines the type of the data:
      • BYTE for signed bytes
      • UBYTE for unsigned bytes
      • SHORT for signed shorts
      • USHORT for unsigned shorts
      • INT32 for signed 32 bits ints
      • UINT32 for unsigned 32 bits ints
      • FLOAT for floating point values
    • A list of values in decimal, hexadecimal, or octal format for integers or in standard scientific notation for float. Numbers are separated by a blank (space, tab, return...).
    • One number defines the number of significant bits
    The example below shows the definition of a 2x2x2 array of unsigned bytes with data values 0, 1, 2, 3, 4, 5, 6, 7 and a number of significant bits of 8:
      2 2 2 UBYTE
      0 1
      2 3
      4 5
      6 7
      8
     \verbatim
    
     An SoSFArray3D may be empty or contain only dimension and type information,
     but no data values.  With no data values the previous example would be
     written with the prefix "NODATA" like this:
     \verbatim
      NODATA 2 2 2 UBYTE
      8
    See Also:
    SoField, SoSField, SoSFArray, SoSFArray2D
    • Method Detail

      • setValue

        public void setValue​(SbVec3i32 size,
                             SbDataType dataType,
                             int numSigBits,
                             java.nio.ByteBuffer data,
                             SoSFArray.CopyPolicies copy)
        Fill the array with data of the specified dimensions and type using the specified copy policy.
      • getNumSigBits

        public int getNumSigBits()
        Returns the number of significant bits.
      • equals

        public boolean equals​(java.lang.Object obj)
        Overrides:
        equals in class SoSFArray