SoVolumeDatadata Property |
Specifies the volume data, including dimensions, data type and number of significant bits.
Namespace: OIV.VolumeViz.Nodes
Use this field if your volume data is already loaded into memory in a contiguous block of memory. Otherwise use the fileName field or the OIV.LDM.Nodes.SoDataSet.SetReader(OIV.LDM.Readers.SoVolumeReader, System.Boolean) method.
The numSigBits parameter of OIV.Inventor.Fields.SoSFArray3D.SetValue(OIV.Inventor.SbVec3i32, OIV.Inventor.SbDataType, System.UInt32, OIV.Inventor.Generic.SbNativeArray{{System.Byte}}, OIV.Inventor.Fields.SoSFArray.CopyPolicies) indicates the number of bits really used for each value. If it equals 0, that means to use all bits, e.g., 8 bits if type = UNSIGNED_BYTE, 16 bits if type = UNSIGNED_SHORT and so on. This parameter is useful particularly when textures are loaded in paletted mode. Currently most hardware supports only 8 bits, so VolumeViz must discard the least significant bits. For example if type is UNSIGNED_SHORT, by default in paletted mode VolumeViz will discard the lowest 8 bits. If you specify numSigBits = 10, VolumeViz will discard only the lowest 2 bits.
Calling OIV.Inventor.Fields.SoSFArray3D.SetValue(OIV.Inventor.SbVec3i32, OIV.Inventor.SbDataType, System.UInt32, OIV.Inventor.Generic.SbNativeArray{{System.Byte}}, OIV.Inventor.Fields.SoSFArray.CopyPolicies) with a CopyPolicy set to NO_COPY is equivalent to calling the deprecated SoVolumeData.setValue method.
Volume reader: Note that when a file format reader or custom volume reader is currently being used, setting the data field will automatically replace the current volume reader. Subsequent calls to () will return an OIV.VolumeViz.Readers.SoVRMemoryReader.
![]() |
---|
Field available since Open Inventor 7.1 |