mediaLib Library Functions mlib_GraphicsDrawTriangleSet(3MLIB)
NAME
mlib_GraphicsDrawTriangleSet,
mlib_GraphicsDrawTriangleSet_8,
mlib_GraphicsDrawTriangleSet_32,
mlib_GraphicsDrawTriangleSet_X_8,
mlib_GraphicsDrawTriangleSet_X_32,
mlib_GraphicsDrawTriangleSet_A_8,
mlib_GraphicsDrawTriangleSet_A_32,
mlib_GraphicsDrawTriangleSet_B_8,
mlib_GraphicsDrawTriangleSet_B_32,
mlib_GraphicsDrawTriangleSet_G_8,
mlib_GraphicsDrawTriangleSet_G_32,
mlib_GraphicsDrawTriangleSet_Z_8,
mlib_GraphicsDrawTriangleSet_Z_32,
mlib_GraphicsDrawTriangleSet_AB_8,
mlib_GraphicsDrawTriangleSet_AB_32,
mlib_GraphicsDrawTriangleSet_ABG_8,
mlib_GraphicsDrawTriangleSet_ABG_32,
mlib_GraphicsDrawTriangleSet_ABGZ_8,
mlib_GraphicsDrawTriangleSet_ABGZ_32,
mlib_GraphicsDrawTriangleSet_ABZ_8,
mlib_GraphicsDrawTriangleSet_ABZ_32,
mlib_GraphicsDrawTriangleSet_AG_8,
mlib_GraphicsDrawTriangleSet_AG_32,
mlib_GraphicsDrawTriangleSet_AGZ_8,
mlib_GraphicsDrawTriangleSet_AGZ_32,
mlib_GraphicsDrawTriangleSet_AZ_8,
mlib_GraphicsDrawTriangleSet_AZ_32,
mlib_GraphicsDrawTriangleSet_BG_8,
mlib_GraphicsDrawTriangleSet_BG_32,
mlib_GraphicsDrawTriangleSet_BGZ_8,
mlib_GraphicsDrawTriangleSet_BGZ_32,
mlib_GraphicsDrawTriangleSet_BZ_8,
mlib_GraphicsDrawTriangleSet_BZ_32,
mlib_GraphicsDrawTriangleSet_GZ_8,
mlib_GraphicsDrawTriangleSet_GZ_32 - draw triangle set where
each member can have different verticesSYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlib_status mlib_GraphicsDrawTriangleSet_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_X_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
SunOS 5.11 Last change: 2 Mar 2007 1
mediaLib Library Functions mlib_GraphicsDrawTriangleSet(3MLIB)
mlib_s32 c2);
mlib_status mlib_GraphicsDrawTriangleSet_X_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
mlib_s32 c2);
mlib_status mlib_GraphicsDrawTriangleSet_A_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_A_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_B_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_B_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_G_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_G_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_Z_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_Z_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_AB_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
mlib_s32 a);
SunOS 5.11 Last change: 2 Mar 2007 2
mediaLib Library Functions mlib_GraphicsDrawTriangleSet(3MLIB)
mlib_status mlib_GraphicsDrawTriangleSet_AB_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_ABG_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_ABG_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_ABGZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_ABGZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_ABZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_ABZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_AG_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_AG_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_AGZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_AGZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
SunOS 5.11 Last change: 2 Mar 2007 3
mediaLib Library Functions mlib_GraphicsDrawTriangleSet(3MLIB)
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_AZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_AZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z,mlib_s32 npoints, mlib_s32 c);
mlib_status mlib_GraphicsDrawTriangleSet_BG_8(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_BG_32(mlib_image *buffer,
const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_BGZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_BGZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_BZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_BZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
mlib_status mlib_GraphicsDrawTriangleSet_GZ_8(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
mlib_status mlib_GraphicsDrawTriangleSet_GZ_32(mlib_image *buffer,
mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
SunOS 5.11 Last change: 2 Mar 2007 4
mediaLib Library Functions mlib_GraphicsDrawTriangleSet(3MLIB)
DESCRIPTION
Each of the mlib_GraphicsDrawTriangleSet_*() functions draws
a set of triangles with vertices at {(x1,y1), (x2,y2),(x3,y3)}, {(x4,y4), (x5,y5), (x6,y6)}, ..., and {(xn-2,yn-
2), (xn-1,yn-1), (xn,yn)}.
Each of the mlib_GraphicsDrawTriangleSet_X_*() functions
draws a set of triangles in Xor mode as follows: data[x,y] ^= c ^ c2Each of the mlib_GraphicsDrawTriangleSet_A_*() functions
draws a set of triangles with antialiasing.Each of the mlib_GraphicsDrawTriangleSet_B_*() functions
draws a set of triangles with alpha blending as follows:data[x,y] = (data[x,y] * (255 - a) + c * a) / 255
Each of the mlib_GraphicsDrawTriangleSet_G_*() functions
draws a set of triangles with Gouraud shading.Each of the mlib_GraphicsDrawTriangleSet_Z_*() functions
draws a set of triangles with Z buffering. Each of the other functions draws a set of triangles with a combination of two or more features like antialiasing (A), alpha blending (B), Gouraud shading (G), and Z buffering (Z).PARAMETERS
Each of the functions takes some of the following arguments: buffer Pointer to the image into which the function is drawing. zbuffer Pointer to the image that holds the Z buffer. x Pointer to array of X coordinates of the points.SunOS 5.11 Last change: 2 Mar 2007 5
mediaLib Library Functions mlib_GraphicsDrawTriangleSet(3MLIB)
y Pointer to array of Y coordinates of the points. z Pointer to array of Z coordinates of the points. npoints Number of points in the arrays. npoints must be a multiple of 3. c Color used in the drawing, or pointer to array ofcolors of the points in the case of Gouraud shad-
ing. c2 Alternation color. a Alpha value for blending. 0 < a < 255.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:____________________________________________________________
| ATTRIBUTE TYPE | ATTRIBUTE VALUE |
|_____________________________|_____________________________|
| Interface Stability | Committed ||_____________________________|_____________________________|
| MT-Level | MT-Safe |
|_____________________________|_____________________________|
SEE ALSO
mlib_GraphicsDrawTriangle(3MLIB),
mlib_GraphicsDrawTriangleFanSet(3MLIB),
mlib_GraphicsDrawTriangleStripSet(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 6