Click or drag to resize
SoVolumeDetailGetFirstNonTransparentValue Method (Double, SbVec3i32, SbVec3f, Boolean)

Retrieves the value and position of the first non-transparent voxel along the pick ray (if any).

Namespace: OIV.VolumeViz.Details
Assembly: OIV.VolumeViz (in OIV.VolumeViz.dll) Version: 2024.2.2.0 (10.16.2.0)
Syntax
public virtual bool GetFirstNonTransparentValue(
	out double value,
	out SbVec3i32 pos,
	out SbVec3f objPos,
	bool realValue
)

Parameters

value
Type: SystemDouble

the double value of the first non-transparent voxel along the pick ray.

pos
Type: OIV.InventorSbVec3i32

the position of the picked voxel in data space (IJK voxel coordinates)

objPos
Type: OIV.InventorSbVec3f

the position of the picked voxel in object space (XYZ world coordinates).

realValue
Type: SystemBoolean

if true, the integer value is fetched from the full resolution data. If false, it returns the voxel value from the (possibly subsampled) data currently in GPU memory, thus the voxel value that is displayed in the render area. The displayed voxel is not necessarily in full resolution.

Return Value

Type: Boolean

false if all voxels along the ray pick are fully transparent, thus all out parameters are meaningless

Remarks

Depending on the argument realValue, the voxel value is either fetched from the real value in full resolution data or fetched from the displayed data tile on the GPU which is not necessarily in full resolution. Fetching the data in full resolution may require a read from the disk if the full-resolution data is not currently in memory.

Caution note Caution

To use GPU picking, you must specify realValue = false.

See Also