Linux and UNIX Man Pages

Linux & Unix Commands - Search Man Pages

mlib_volumeraycast_general_parallel_trilinear_s16_s16(3mlib) [sunos man page]

mlib_VolumeRayCast_General(3MLIB)			    mediaLib Library Functions				 mlib_VolumeRayCast_General(3MLIB)

NAME
mlib_VolumeRayCast_General, mlib_VolumeRayCast_General_Parallel_Nearest_U8_Bit, mlib_VolumeRayCast_General_Parallel_Nearest_U8_U8, mlib_VolumeRayCast_General_Parallel_Nearest_S16_S16, mlib_VolumeRayCast_General_Parallel_Trilinear_U8_U8, mlib_VolumeRayCast_General_Paral- lel_Trilinear_S16_S16, mlib_VolumeRayCast_General_Divergent_Nearest_U8_Bit, mlib_VolumeRayCast_General_Divergent_Nearest_U8_U8, mlib_Vol- umeRayCast_General_Divergent_Nearest_S16_S16, mlib_VolumeRayCast_General_Divergent_Trilinear_U8_U8, mlib_VolumeRayCast_General_Diver- gent_Trilinear_S16_S16 - cast a ray (or rays) through a 3D data set SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ] #include <mlib.h> mlib_status mlib_VolumeRayCast_General_Parallel_Nearest_U8_Bit(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Parallel_Nearest_U8_U8(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Parallel_Nearest_S16_S16(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Parallel_Trilinear_U8_U8(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Parallel_Trilinear_S16_S16(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Divergent_Nearest_U8_Bit(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Divergent_Nearest_U8_U8(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Divergent_Nearest_S16_S16(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Divergent_Trilinear_U8_U8(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); mlib_status mlib_VolumeRayCast_General_Divergent_Trilinear_S16_S16(mlib_rays *rays, const mlib_genvolume *vol, void *buffer); DESCRIPTION
Each of these functions casts a ray (or rays) through a three-dimensional(3D) data set, then computes and returns 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*Pxyz where a, b, and c are the fractional parts of the coordinates of point P. The trilinear interpolation is represented by the following figure: Please see the online man page on docs.sun.com or a print copy for the diagram. 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. vol Volume data that consists of slices. 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 attributes: +-----------------------------+-----------------------------+ | ATTRIBUTE TYPE | ATTRIBUTE VALUE | +-----------------------------+-----------------------------+ |Interface Stability |Evolving | +-----------------------------+-----------------------------+ |MT-Level |MT-Safe | +-----------------------------+-----------------------------+ SEE ALSO
mlib_VolumeRayCast_Blocked(3MLIB), attributes(5) SunOS 5.10 10 Nov 2004 mlib_VolumeRayCast_General(3MLIB)
Man Page