SoFenceSliceDetail Class |
Stores detail information about a picked voxel or pick ray in a data volume.
Namespace: OIV.VolumeViz.Details
The SoFenceSliceDetail type exposes the following members.
Name | Description | |
---|---|---|
SoFenceSliceDetail | 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) | Returns the floating point value of the first non-transparent voxel along the pick ray (if any) and its position in object and data space. | |
GetFirstNonTransparentValue(Int64, SbVec3i32, SbVec3f, Boolean) | Returns the integer value of the first non-transparent voxel along the pick ray (if any) and its position in object and data space. | |
GetHashCode |
Overrides GetHashCode().
(Inherited from SoNetBase.) | |
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. | |
GetType | Gets the Type of the current instance. (Inherited from Object.) | |
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.SoFenceSlice node, use the getDetail method and cast the result to this class to get extra information about the pick.
OIV.VolumeViz.Details.SoFenceSliceDetail 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 the XYZ position in 3D space, IJK location in voxels and the data value. See method OIV.VolumeViz.Details.SoVolumeDetail.GetFirstNonTransparentValue(System.Int64@, OIV.Inventor.SbVec3i32@, OIV.Inventor.SbVec3f@, System.Boolean).
For the profile defined by all the intersected voxels, it returns:
Profile position in object space (two XYZ points). See method OIV.VolumeViz.Details.SoVolumeDetail.GetProfileObjectPos(OIV.Inventor.SbVec3f[]).
Profile location in the data volume (two IJK indices). See method OIV.VolumeViz.Details.SoVolumeDetail.GetProfileDataPos(OIV.Inventor.SbVec3i32[]).
Number of values along the profile. See method OIV.VolumeViz.Details.SoVolumeDetail.GetProfileDataPos(OIV.Inventor.SbVec3i32[]).
For each value along the profile: the voxel value and its corresponding IJK location. See method OIV.VolumeViz.Details.SoVolumeDetail.GetProfileValue(System.Int32, OIV.Inventor.SbVec3i32@, OIV.Inventor.SbVec3f@, System.Boolean).
Notes:
To get information about all voxels intersected by the ray, the application must set the pickAll flag of the OIV.Inventor.Actions.SoRayPickAction to true. (This is different than the behavior of OIV.VolumeViz.Details.SoVolumeRenderDetail.
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.