Content-type: text/html Man page of mlib_GraphicsFillPolygon

mlib_GraphicsFillPolygon

Section: mediaLib Library Functions (3MLIB)
Updated: 2 Mar 2007
Index Return to Main Contents
 

NAME

mlib_GraphicsFillPolygon, mlib_GraphicsFillPolygon_8, mlib_GraphicsFillPolygon_32, mlib_GraphicsFillPolygon_X_8, mlib_GraphicsFillPolygon_X_32, mlib_GraphicsFillPolygon_A_8, mlib_GraphicsFillPolygon_A_32, mlib_GraphicsFillPolygon_B_8, mlib_GraphicsFillPolygon_B_32, mlib_GraphicsFillPolygon_G_8, mlib_GraphicsFillPolygon_G_32, mlib_GraphicsFillPolygon_Z_8, mlib_GraphicsFillPolygon_Z_32, mlib_GraphicsFillPolygon_AB_8, mlib_GraphicsFillPolygon_AB_32, mlib_GraphicsFillPolygon_ABG_8, mlib_GraphicsFillPolygon_ABG_32, mlib_GraphicsFillPolygon_ABGZ_8, mlib_GraphicsFillPolygon_ABGZ_32, mlib_GraphicsFillPolygon_ABZ_8, mlib_GraphicsFillPolygon_ABZ_32, mlib_GraphicsFillPolygon_AG_8, mlib_GraphicsFillPolygon_AG_32, mlib_GraphicsFillPolygon_AGZ_8, mlib_GraphicsFillPolygon_AGZ_32, mlib_GraphicsFillPolygon_AZ_8, mlib_GraphicsFillPolygon_AZ_32, mlib_GraphicsFillPolygon_BG_8, mlib_GraphicsFillPolygon_BG_32, mlib_GraphicsFillPolygon_BGZ_8, mlib_GraphicsFillPolygon_BGZ_32, mlib_GraphicsFillPolygon_BZ_8, mlib_GraphicsFillPolygon_BZ_32, mlib_GraphicsFillPolygon_GZ_8, mlib_GraphicsFillPolygon_GZ_32 - draw filled polygon  

SYNOPSIS

cc [ flag... ] file... -lmlib [ library... ]
#include <mlib.h>

mlib_status mlib_GraphicsFillPolygon_8(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);

mlib_status mlib_GraphicsFillPolygon_32(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);

mlib_status mlib_GraphicsFillPolygon_X_8(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
    mlib_s32 c, mlib_s32 c2);

mlib_status mlib_GraphicsFillPolygon_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_GraphicsFillPolygon_A_8(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);

mlib_status mlib_GraphicsFillPolygon_A_32(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);

mlib_status mlib_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_G_8(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
    const mlib_s32 *c);

mlib_status mlib_GraphicsFillPolygon_G_32(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
    const mlib_s32 *c);

mlib_status mlib_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_AB_8(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
    mlib_s32 a);

mlib_status mlib_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_AG_8(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y,
    mlib_s32 npoints, const mlib_s32 *c);

mlib_status mlib_GraphicsFillPolygon_AG_32(mlib_image *buffer,
    const mlib_s16 *x, const mlib_s16 *y,
    mlib_s32 npoints, const mlib_s32 *c);

mlib_status mlib_GraphicsFillPolygon_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_GraphicsFillPolygon_AGZ_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_status mlib_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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_GraphicsFillPolygon_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);

 

DESCRIPTION

Each of the mlib_GraphicsFillPolygon_*() functions draws a filled polygon enclosing (x1,y1), (x2,y2), ..., and (xn,yn).

Each of the mlib_GraphicsFillPolygon_X_*() functions draws a filled polygon in Xor mode as follows:

    data[x,y] ^= c ^ c2

Each of the mlib_GraphicsFillPolygon_A_*() functions draws a filled polygon with antialiasing.

Each of the mlib_GraphicsFillPolygon_B_*() functions draws a filled polygon with alpha blending as follows:

    data[x,y] = (data[x,y] * (255 - a) + c * a) / 255

Each of the mlib_GraphicsFillPolygon_G_*() functions draws a filled polygon with Gouraud shading.

Each of the mlib_GraphicsFillPolygon_Z_*() functions draws a filled polygon with Z buffering.

Each of the other functions draws a filled polygon 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 the array of X coordinates of the vertices.

y

Pointer to the array of Y coordinates of the vertices.

z

Pointer to the array of Z coordinates of the vertices.

npoints

Number of vertices in the arrays.

c

Color used in the drawing, or pointer to array of colors of the points in the case of Gouraud shading.

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 attributes:

ATTRIBUTE TYPEATTRIBUTE VALUE

Interface StabilityCommitted

MT-Level

 

SEE ALSO

mlib_GraphicsDrawPolygon(3MLIB), attributes(5)


 

Index

NAME
SYNOPSIS
DESCRIPTION
PARAMETERS
RETURN VALUES
ATTRIBUTES
SEE ALSO

This document was created by man2html, using the manual pages.
Time: 02:37:54 GMT, October 02, 2010