SoVolumeRenderDetail Class |
Stores detail information about a picked voxel or pick ray in a data volume.
Namespace: OIV.VolumeViz.Details
The SoVolumeRenderDetail type exposes the following members.
Name | Description | |
---|---|---|
SoVolumeRenderDetail | Constructor. |
Name | Description | |
---|---|---|
Clone | (Inherited from SoDetail.) | |
Copy | Returns an instance that is a copy of this instance. | |
Equals | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) | |
GetFirstNonTransparentValue(Double, SbVec3i32) | Calls GetFirstNonTransparentValue(value, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetFirstNonTransparentValue(Int64, SbVec3i32) | Calls GetFirstNonTransparentValue(value, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetFirstNonTransparentValue(Double, SbVec3i32, SbVec3f) | Calls GetFirstNonTransparentValue(value, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetFirstNonTransparentValue(Int64, SbVec3i32, SbVec3f) | Calls GetFirstNonTransparentValue(value, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetFirstNonTransparentValue(Double, SbVec3i32, SbVec3f, Boolean) | Retrieves the value and position of the first non-transparent voxel along the pick ray (if any). | |
GetFirstNonTransparentValue(Int64, SbVec3i32, SbVec3f, Boolean) | Retrieves the value and position of the first non-transparent voxel along the pick ray (if any). | |
GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) | |
GetMaskCount | Calls GetMaskCount(false). | |
GetMaskCount(Boolean) | Returns the number of volume masks applied to the first non-transparent voxel. | |
GetProfileDataPos | Returns the number of values along the profile and the profile position in data space (voxel coordinates). | |
GetProfileObjectPos | Returns the profile position in object space (world coordinates). | |
GetProfileValue(Int32, SbVec3i32) | Calls GetProfileValue(index, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetProfileValue(Int32, SbVec3i32, SbVec3f) | Calls GetProfileValue(index, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetProfileValue(Int32, SbVec3i32, SbVec3f, Boolean) | Returns the index'th value (as an integer) and its position in object and data space. | |
GetProfileValueD(Int32, SbVec3i32, SbVec3f) | Calls GetProfileValueD(index, pos, objPos, false). (Inherited from SoVolumeDetail.) | |
GetProfileValueD(Int32, SbVec3i32, SbVec3f, Boolean) | Returns the index'th value (as a double) and its position in object and data space. | |
GetRgbaValues(Queue) | Obsolete. Calls GetRgbaValues(rgbaValues, -1.f). | |
GetRgbaValues(IListSbVec4ub) | Calls GetRgbaValues(rgbaValues, -1.f). | |
GetRgbaValues(Queue, Queue) | Obsolete. Calls GetRgbaValues(rgbaValues, objectPos, -1.f). | |
GetRgbaValues(Queue, Single) | Obsolete. Returns the RGBA value of each voxel intersected by the pick ray. | |
GetRgbaValues(IListSbVec4ub, IListSbVec3f) | Calls GetRgbaValues(rgbaValues, objectPos, -1.f). | |
GetRgbaValues(IListSbVec4ub, IListSbVec3i32) | Calls GetRgbaValues(rgbaValues, dataPos, -1.f). | |
GetRgbaValues(IListSbVec4ub, Single) | Returns the RGBA value of each voxel intersected by the pick ray. | |
GetRgbaValues(Queue, Queue, Single) | Obsolete. Returns the RGBA value and object space position of each voxel intersected by the pick ray. | |
GetRgbaValues(IListSbVec4ub, IListSbVec3f, Single) | Returns the RGBA value and object space position of each voxel intersected by the pick ray. | |
GetRgbaValues(IListSbVec4ub, IListSbVec3i32, Single) | Returns the RGBA value and data space position of each voxel intersected by the pick ray. | |
GetRgbaValues(Queue, Queue, Queue, Queue) | Obsolete. Calls GetRgbaValues(rgbaValues, objectPos, dataPos, tileIds, -1.f). | |
GetRgbaValues(IListSbVec4ub, IListSbVec3f, IListSbVec3i32, IListSoLDMTileID) | Calls GetRgbaValues(rgbaValues, objectPos, dataPos, tileIds, -1.f). | |
GetRgbaValues(Queue, Queue, Queue, Queue, Single) | Obsolete. Returns the RGBA value, object space position, data space position and tileId for each voxel intersected by the pick ray. | |
GetRgbaValues(IListSbVec4ub, IListSbVec3f, IListSbVec3i32, IListSoLDMTileID, Single) | Returns the RGBA value, object space position, data space position and tileId for each voxel intersected by the pick ray. | |
GetRgbaValuesTileIds | Returns the tileID of each voxel intersected by the pick ray. | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
GetVoxelStyleAndIsoValue(SoVolumeDataDrawStyleDrawStyles, Double) | Calls GetVoxelStyleAndIsoValue(style, iso, false). | |
GetVoxelStyleAndIsoValue(SoVolumeDataDrawStyleDrawStyles, Double, Boolean) | Returns the style applied to the first non-transparent voxel (and its isovalue if the style is OIV.VolumeViz.Nodes.SoVolumeDataDrawStyle.DrawStyles.ISOSURFACE). | |
SetDetails | (Inherited from SoVolumeDetail.) | |
ToString | Returns a string that represents the current object. (Inherited from Object.) |
A successful pick operation returns an OIV.Inventor.SoPickedPoint object. If the picked geometry is an OIV.VolumeViz.Nodes.SoVolumeRender node, use the getDetail method and cast the result to this class to get extra information about the the pick.
OIV.VolumeViz.Details.SoVolumeRenderDetail returns information about the first (closest) non-transparent voxel along the pick ray and/or information about all the voxels intersected by the pick ray (called a profile). For the first non-transparent voxel (if any) on the pick ray, it returns XYZ position, IJK location, and data value. For the profile defined by all the intersected voxels, it returns:
Profile position in object space (two XYZ points)
Profile location in the data volume (two IJK indices)
Number of values along the profile
Each voxel value and corresponding IJK location
Use the methods in OIV.VolumeViz.Details.SoVolumeDetail to get information about the data values of the picked voxels. Use the getRgba... methods in this class to get information about the mapped RGBA colors of the picked voxels. Because these methods return colors, they always return information based on the (possibly subsampled) tiles currently in memory.
GPU picking: Please see the discussion of GPU picking in OIV.VolumeViz.Details.SoVolumeDetail.
Limitations:
If multiple volumes are being combined under an OIV.LDM.Nodes.SoMultiDataSeparator, the detail class only returns values for the first volume in the scene graph.