mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
NAME
mlibGraphicsFillTriangle, mlibGraphicsFillTriangle8,
mlibGraphicsFillTriangle32, mlibGraphicsFillTriangleX8,
mlibGraphicsFillTriangleX32,
mlibGraphicsFillTriangleA8,
mlibGraphicsFillTriangleA32,
mlibGraphicsFillTriangleB8,
mlibGraphicsFillTriangleB32,
mlibGraphicsFillTriangleG8,
mlibGraphicsFillTriangleG32,
mlibGraphicsFillTriangleZ8,
mlibGraphicsFillTriangleZ32,
mlibGraphicsFillTriangleAB8,
mlibGraphicsFillTriangleAB32,
mlibGraphicsFillTriangleABG8,
mlibGraphicsFillTriangleABG32,
mlibGraphicsFillTriangleABGZ8,
mlibGraphicsFillTriangleABGZ32,
mlibGraphicsFillTriangleABZ8,
mlibGraphicsFillTriangleABZ32,
mlibGraphicsFillTriangleAG8,
mlibGraphicsFillTriangleAG32,
mlibGraphicsFillTriangleAGZ8,
mlibGraphicsFillTriangleAGZ32,
mlibGraphicsFillTriangleAZ8,
mlibGraphicsFillTriangleAZ32,
mlibGraphicsFillTriangleBG8,
mlibGraphicsFillTriangleBG32,
mlibGraphicsFillTriangleBGZ8,
mlibGraphicsFillTriangleBGZ32,
mlibGraphicsFillTriangleBZ8,
mlibGraphicsFillTriangleBZ32,
mlibGraphicsFillTriangleGZ8,
mlibGraphicsFillTriangleGZ32 - draw filled triangle
SYNOPSIS
cc [ flag... ] file... -lmlib [ library... ]
#include
mlibstatus mlibGraphicsFillTriangle8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c);
mlibstatus mlibGraphicsFillTriangle32(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c);
mlibstatus mlibGraphicsFillTriangleX8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c, mlibs32 c2);
SunOS 5.11 Last change: 2 Mar 2007 1
mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
mlibstatus mlibGraphicsFillTriangleX32(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c, mlibs32 c2);
mlibstatus mlibGraphicsFillTriangleA8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c);
mlibstatus mlibGraphicsFillTriangleA32(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c);
mlibstatus mlibGraphicsFillTriangleB8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c,
mlibs32 a);
mlibstatus mlibGraphicsFillTriangleB32(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c,
mlibs32 a);
mlibstatus mlibGraphicsFillTriangleG8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleG32(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c);
mlibstatus mlibGraphicsFillTriangleZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c);
mlibstatus mlibGraphicsFillTriangleAB8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c, mlibs32 a);
SunOS 5.11 Last change: 2 Mar 2007 2
mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
mlibstatus mlibGraphicsFillTriangleAB32(mlibimage *buffer,
mlibs16 x1, mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleABG8(mlibimage *buffer,
mlibs16 x1, mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleABG32(mlibimage *buffer,
mlibs16 x1, mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleABGZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleABGZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleABZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c,
mlibs32 a);
mlibstatus mlibGraphicsFillTriangleABZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleAG8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleAG32(mlibimage *buffer,
mlibs16 x1, mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleAGZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
SunOS 5.11 Last change: 2 Mar 2007 3
mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleAGZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleAZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c);
mlibstatus mlibGraphicsFillTriangleAZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c);
mlibstatus mlibGraphicsFillTriangleBG8(mlibimage *buffer, mlibs16 x1,
mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3, mlibs16 y3,
mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleBG32(mlibimage *buffer,
mlibs16 x1, mlibs16 y1, mlibs16 x2, mlibs16 y2, mlibs16 x3,
mlibs16 y3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleBGZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleBGZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleBZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleBZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
SunOS 5.11 Last change: 2 Mar 2007 4
mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c, mlibs32 a);
mlibstatus mlibGraphicsFillTriangleGZ8(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2,
mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3);
mlibstatus mlibGraphicsFillTriangleGZ32(mlibimage *buffer,
mlibimage *zbuffer, mlibs16 x1, mlibs16 y1, mlibs16 z1,
mlibs16 x2, mlibs16 y2, mlibs16 z2, mlibs16 x3, mlibs16 y3,
mlibs16 z3, mlibs32 c1, mlibs32 c2, mlibs32 c3);
DESCRIPTION
Each of the mlibGraphicsFillTriangle*() functions draws a
filled triangle with the vertices at (x1,y1), (x2,y2), and
(x3,y3).
Each of the mlibGraphicsFillTriangleX*() functions draws
a filled triangle in Xor mode as follows:
data[x,y] ^= c ^ c2
Each of the mlibGraphicsFillTriangleA*() functions draws
a filled triangle with antialiasing.
Each of the mlibGraphicsFillTriangleB*() functions draws
a filled triangle with alpha blending as follows:
data[x,y] = (data[x,y] * (255 - a) ] c * a) / 255
Each of the mlibGraphicsFillTriangleG*() functions draws
a filled triangle with Gouraud shading.
Each of the mlibGraphicsFillTriangleZ*() functions draws
a filled triangle with Z buffering.
Each of the other functions draws a filled triangle with a
combination of two or more features like antialiasing (A),
alpha blending (B), Gouraud shading (G), and Z buffering
SunOS 5.11 Last change: 2 Mar 2007 5
mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
(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.
x1 X coordinate of the first vertex.
y1 Y coordinate of the first vertex.
z1 Z coordinate of the first vertex.
x2 X coordinate of the second vertex.
y2 Y coordinate of the second vertex.
z2 Z coordinate of the second vertex.
x3 X coordinate of the third vertex.
y3 Y coordinate of the third vertex.
z3 Z coordinate of the third vertex.
c Color used in the drawing.
c1 Color of the first vertex.
c2 Color of the second vertex, or the alternation
color in Xor Mode.
c3 Color of the third vertex.
SunOS 5.11 Last change: 2 Mar 2007 6
mediaLib Library Functions mlibGraphicsFillTriangle(3MLIB)
a Alpha value for blending. 0 < a < 255.
RETURN VALUES
Each of the functions returns MLIBSUCES if successful.
Otherwise it returns MLIBFAILURE.
ATRIBUTES
See attributes(5) for descriptions of the following attri-
butes:
ATRIBUTE TYPE ATRIBUTE VALUE
Interface Stability Committed
MT-Level MT-Safe
SEE ALSO
mlibGraphicsDrawTriangle(3MLIB), attributes(5)
SunOS 5.11 Last change: 2 Mar 2007 7
|