mediaLib Library Functions mlib_VolumeRayCast_Blocked(3MLIB)
NAME
mlib_VolumeRayCast_Blocked,
mlib_VolumeRayCast_Blocked_Parallel_Nearest_U8_U8,
mlib_VolumeRayCast_Blocked_Parallel_Nearest_S16_S16,
mlib_VolumeRayCast_Blocked_Parallel_Trilinear_U8_U8,
mlib_VolumeRayCast_Blocked_Parallel_Trilinear_S16_S16,
mlib_VolumeRayCast_Blocked_Divergent_Nearest_U8_U8,
mlib_VolumeRayCast_Blocked_Divergent_Nearest_S16_S16,
mlib_VolumeRayCast_Blocked_Divergent_Trilinear_U8_U8,
mlib_VolumeRayCast_Blocked_Divergent_Trilinear_S16_S16 -
cast a ray (or rays) through a 3D data setSYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlib_status mlib_VolumeRayCast_Blocked_Parallel_Nearest_U8_U8
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Parallel_Nearest_S16_S16
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Parallel_Trilinear_U8_U8
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Parallel_Trilinear_S16_S16
(mlib_rays *rays const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Divergent_Nearest_U8_U8
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Divergent_Nearest_S16_S16
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Divergent_Trilinear_U8_U8
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
mlib_status mlib_VolumeRayCast_Blocked_Divergent_Trilinear_S16_S16
(mlib_rays *rays, const mlib_blkvolume *blk, void *buffer);
DESCRIPTION
Each of these functions casts a ray (or rays) through athree-dimensional (3D) data set, then computes and returns
SunOS 5.11 Last change: 2 Mar 2007 1
mediaLib Library Functions mlib_VolumeRayCast_Blocked(3MLIB)
the interpolated samples at each step along the way. In trilinear interpolation, the value at point P is computed from its eight surrounding neighbors based on the equation below.P = (1-a)*(1-b)*(1-c)*P0 +
a*(1-b)*(1-c)*Px + (1-a)*b*(1-c)*Py + (1-a)*(1-b)*c*Pz +
a*b*(1-c)*Pxy + a*(1-b)*c*Pxz + (1-a)*b*c*Pyz +
a*b*c*Pxyzwhere a, b, and c are the fractional parts of the coordi-
nates of point P. The trilinear interpolation is represented by the following figure: Printed copy or docs.sun.com displays a figure that represents the trilinear interpolation. In nearest neighbor operation, the sample value at point P is replaced by the value of the nearest neighbor voxel.PARAMETERS
Each of the functions takes the following arguments: rays Casting rays. blk Volume data in the blocked format. buffer Working buffer.RETURN VALUES
Each of the functions returns MLIB_SUCCESS if successful.
Otherwise it returns MLIB_FAILURE.
ATTRIBUTES
See attributes(5) for descriptions of the following attri-
butes:SunOS 5.11 Last change: 2 Mar 2007 2
mediaLib Library Functions mlib_VolumeRayCast_Blocked(3MLIB)
____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
mlib_VolumeRayCast_General(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 3