Click or drag to resize
SoSFArray2D Class

Field containing a 2D array value.

Inheritance Hierarchy

Namespace: OIV.Inventor.Fields
Assembly: OIV.Inventor (in OIV.Inventor.dll) Version: 2024.1.0.0 (2024.1.0)
Syntax
public class SoSFArray2D : SoSFArray

The SoSFArray2D type exposes the following members.

Constructors
  NameDescription
Public methodSoSFArray2D

Default constructor.

Top
Methods
  NameDescription
Public methodAppendConnection(SoEngineOutput)

Appends this field to the list of connections from another engineOutput.

(Inherited from SoField.)
Public methodAppendConnection(SoField)

Appends this field to the list of connections from another field.

(Inherited from SoField.)
Public methodConnectFrom(SoEngineOutput)

Connects this field from an engine output.

(Inherited from SoField.)
Public methodConnectFrom(SoField)

Connects this field to another field.

(Inherited from SoField.)
Public methodCopyFrom(SoSFArray)

Copy from another field of same type.

(Inherited from SoSFArray.)
Public methodCopyFrom(SoSFArray2D)

Copy from another field of same type.

Public methodDisconnect

Disconnect the field from whatever it was connected to.

(Inherited from SoField.)
Public methodDisconnect(SoEngineOutput)

Disconnect the field from the requested engineOutput.

(Inherited from SoField.)
Public methodDisconnect(SoField)

Disconnect the field from the requested field.

(Inherited from SoField.)
Public methodEnableConnection

Field connections may be enabled and disabled.

(Inherited from SoField.)
Public methodEquals
(Inherited from SoSFArray.)
Public methodFinishEditing

Indicates that batch edits have finished.

(Inherited from SoSFArray.)
Public methodGet

Returns the value of the field in the Open Inventor file format, even if the field has its default value.

(Inherited from SoField.)
Public methodGetConnectedEngine

Returns true if this field is being written into by an engine, and returns the engine output it is connected to in engineOutput.

(Inherited from SoField.)
Public methodGetConnectedField

Returns true if this field is being written into by another field, and returns the field it is connected to in writingField.

(Inherited from SoField.)
Public methodGetConnections

Returns a list of the connections to this field.

(Inherited from SoField.)
Public methodGetContainer

Returns the object that contains this field.

(Inherited from SoField.)
Public methodGetDataType

Returns the data type of the array.

(Inherited from SoSFArray.)
Public methodGetForwardConnections

Adds references to all of the fields that this field is writing into (either fields in nodes, global fields or engine inputs) to the given field list, and returns the number of forward connections.

(Inherited from SoField.)
Public methodGetHashCode
Overrides GetHashCode().
(Inherited from SoNetBase.)
Public methodGetNumConnections

Returns the number of connections to this field.

(Inherited from SoField.)
Public methodGetSize

Returns the dimensions of the array.

Public methodGetType
Gets the Type of the current instance.
(Inherited from Object.)
Public methodGetValue

Returns a read-only pointer to the array's values .

(Inherited from SoSFArray.)
Public methodGetValue(SbVec2i32, SoSFArrayDataTypes)

Returns a read-only pointer to the 2D array's values and its dimensions and data type.

Public methodGetValue(SbVec2s, SoSFArrayDataTypes)

Returns a read-only pointer to the 2D array's values and its dimensions and data type.

Public methodGetValue(SbVec3i32, SbDataType)

Returns a read-only pointer to the array's values and its dimensions and data type.

(Inherited from SoSFArray.)
Public methodGetValueSize

Gets the size of the value.

(Inherited from SoField.)
Public methodIsConnected

Returns true if the field is connected to anything.

(Inherited from SoField.)
Public methodIsConnectedFromEngine

Returns true if the field is connected to an engine's output.

(Inherited from SoField.)
Public methodIsConnectedFromField

Returns true if the field is connected to another field.

(Inherited from SoField.)
Public methodIsConnectedFromVRMLInterp

Returns true if the field is connected to a VRML interpOutput.

(Inherited from SoField.)
Public methodIsConnectionEnabled

Returns false if connections to this field are disabled.

(Inherited from SoField.)
Public methodIsDefault

Gets the state of default flag of the field.

(Inherited from SoField.)
Public methodIsEmpty

Returns true if the current array is empty.

(Inherited from SoSFArray.)
Public methodIsIgnored

Gets the ignore flag for this field.

(Inherited from SoField.)
Public methodIsNeverWrite

Returns the "neverWrite" flag.

(Inherited from SoSFArray.)
Public methodSet

Sets the field to the given value, which is an ASCII string in the Open Inventor file format.

(Inherited from SoField.)
Public methodSetIgnored

Sets the ignore flag for this field.

(Inherited from SoField.)
Public methodSetNeverWrite

Sets the "neverWrite" flag.

(Inherited from SoSFArray.)
Public methodSetValue(SbVec2i32, SoSFArrayDataTypes, SbNativeArrayByte)
Calls SetValue(size, dataType, data, OIV.Inventor.Fields.SoSFArray.CopyPolicies( .SoSFArray.COPY )).
Public methodSetValue(SbVec2s, SoSFArrayDataTypes, SbNativeArrayByte)
Calls SetValue(size, dataType, data, OIV.Inventor.Fields.SoSFArray.CopyPolicies( .SoSFArray.COPY )).
Public methodSetValue(SbVec3i32, SbDataType, SbNativeArrayByte)
Calls SetValue(size, dataType, data, OIV.Inventor.Fields.SoSFArray.CopyPolicies( .SoSFArray.COPY )).
(Inherited from SoSFArray.)
Public methodSetValue(SbVec2i32, SoSFArrayDataTypes, SbNativeArrayByte, SoSFArrayCopyPolicies)

Fill the 2D array with data of the specified dimensions and type using the specified copy policy.

Public methodSetValue(SbVec2s, SoSFArrayDataTypes, SbNativeArrayByte, SoSFArrayCopyPolicies)

Fill the 2D array with data of the specified dimensions and type using the specified copy policy.

Public methodSetValue(SbVec3i32, SbDataType, SbNativeArrayByte, SoSFArrayCopyPolicies)

Fill the array with data of the specified dimensions and type using the specified copy policy.

(Inherited from SoSFArray.)
Public methodStartEditing(SbVec2i32, SoSFArrayDataTypes)

Returns a pointer to the internally maintained array that can be modified.

Public methodStartEditing(SbVec2s, SoSFArrayDataTypes)

Returns a pointer to the internally maintained array that can be modified.

Public methodStartEditing(SbVec3i32, SbDataType)

Returns a pointer to the internally maintained array that can be modified.

(Inherited from SoSFArray.)
Public methodToString
Returns a string that represents the current object.
(Inherited from Object.)
Public methodTouch

Simulates a change to the field, causing attached sensors to fire, connected fields and engines to be marked as needing evaluation, and so forth.

(Inherited from SoField.)
Top
Remarks

This field contains a 2D array of values of a specified type. The OIV.Inventor.Fields.SoSFArray2D.SetValue(OIV.Inventor.SbVec2s, OIV.Inventor.Fields.SoSFArray.DataTypes, OIV.Inventor.Generic.SbNativeArray{{System.Byte}}, OIV.Inventor.Fields.SoSFArray.CopyPolicies) method allows you to specify the dimensions and type of data the array will contain. 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 OIV.Inventor.Fields.SoSFArray2D is written to file in the following format:

  • Two 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...).

The example below shows the definition of a 2x2 array of unsigned bytes with data values 0, 1, 2 and 3:
2 2 UBYTE
0 1
2 3
Below is a 2x3 array of floats:
2 3 FLOAT
0.5 1 .72
0.33 6.2e4 0.9

EXAMPLE

SbVec2i32 size = new SbVec2i32(2,2);
byte[] bytes = new byte[4];
SbNativeArray<byte> data = new SbNativeArray<byte>(bytes);
. . .
SoIndexedTexture2 indexedTexture = new SoIndexedTexture2();
indexedTexture.imageIndex.SetValue(size, SoSFArray.DataTypes.UNSIGNED_BYTE, data);

See Also