1mlib_GraphicsFillTriangleFamneSdeita(L3iMbLILBi)brarmyliFbu_nGcrtaipohniscsFillTriangleFanSet(3MLIB)
2
3
4

NAME

6       mlib_GraphicsFillTriangleFanSet,     mlib_GraphicsFillTriangleFanSet_8,
7       mlib_GraphicsFillTriangleFanSet_32,          mlib_GraphicsFillTriangle‐
8       FanSet_X_8, mlib_GraphicsFillTriangleFanSet_X_32, mlib_GraphicsFillTri‐
9       angleFanSet_A_8,  mlib_GraphicsFillTriangleFanSet_A_32,  mlib_Graphics‐
10       FillTriangleFanSet_B_8,           mlib_GraphicsFillTriangleFanSet_B_32,
11       mlib_GraphicsFillTriangleFanSet_G_8,         mlib_GraphicsFillTriangle‐
12       FanSet_G_32, mlib_GraphicsFillTriangleFanSet_Z_8, mlib_GraphicsFillTri‐
13       angleFanSet_Z_32, mlib_GraphicsFillTriangleFanSet_AB_8,  mlib_Graphics‐
14       FillTriangleFanSet_AB_32,        mlib_GraphicsFillTriangleFanSet_ABG_8,
15       mlib_GraphicsFillTriangleFanSet_ABG_32,      mlib_GraphicsFillTriangle‐
16       FanSet_ABGZ_8,  mlib_GraphicsFillTriangleFanSet_ABGZ_32, mlib_Graphics‐
17       FillTriangleFanSet_ABZ_8,       mlib_GraphicsFillTriangleFanSet_ABZ_32,
18       mlib_GraphicsFillTriangleFanSet_AG_8,        mlib_GraphicsFillTriangle‐
19       FanSet_AG_32, mlib_GraphicsFillTriangleFanSet_AGZ_8, mlib_GraphicsFill‐
20       TriangleFanSet_AGZ_32,            mlib_GraphicsFillTriangleFanSet_AZ_8,
21       mlib_GraphicsFillTriangleFanSet_AZ_32,       mlib_GraphicsFillTriangle‐
22       FanSet_BG_8,  mlib_GraphicsFillTriangleFanSet_BG_32, mlib_GraphicsFill‐
23       TriangleFanSet_BGZ_8,           mlib_GraphicsFillTriangleFanSet_BGZ_32,
24       mlib_GraphicsFillTriangleFanSet_BZ_8,        mlib_GraphicsFillTriangle‐
25       FanSet_BZ_32, mlib_GraphicsFillTriangleFanSet_GZ_8,  mlib_GraphicsFill‐
26       TriangleFanSet_GZ_32  -  draw  filled triangle set where all members of
27       the set have a common vertex
28

SYNOPSIS

30       cc [ flag... ] file... -lmlib [ library... ]
31       #include <mlib.h>
32
33       mlib_status mlib_GraphicsFillTriangleFanSet_8(mlib_image *buffer,
34            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
35
36
37       mlib_status mlib_GraphicsFillTriangleFanSet_32(mlib_image *buffer,
38            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
39
40
41       mlib_status mlib_GraphicsFillTriangleFanSet_X_8(mlib_image *buffer,
42            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
43            mlib_s32 c2);
44
45
46       mlib_status mlib_GraphicsFillTriangleFanSet_X_32(mlib_image *buffer,
47            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
48            mlib_s32 c2);
49
50
51       mlib_status mlib_GraphicsFillTriangleFanSet_A_8(mlib_image *buffer,
52            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
53
54
55       mlib_status mlib_GraphicsFillTriangleFanSet_A_32(mlib_image *buffer,
56            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
57
58
59       mlib_status mlib_GraphicsFillTriangleFanSet_B_8(mlib_image *buffer,
60            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
61            mlib_s32 a);
62
63
64       mlib_status mlib_GraphicsFillTriangleFanSet_B_32(mlib_image *buffer,
65            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
66            mlib_s32 a);
67
68
69       mlib_status mlib_GraphicsFillTriangleFanSet_G_8(mlib_image *buffer,
70            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
71            const mlib_s32 *c);
72
73
74       mlib_status mlib_GraphicsFillTriangleFanSet_G_32(mlib_image *buffer,
75            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
76            const mlib_s32 *c);
77
78
79       mlib_status mlib_GraphicsFillTriangleFanSet_Z_8(mlib_image *buffer,
80            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
81            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
82
83
84       mlib_status mlib_GraphicsFillTriangleFanSet_Z_32(mlib_image *buffer,
85            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
86            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
87
88
89       mlib_status mlib_GraphicsFillTriangleFanSet_AB_8(mlib_image *buffer,
90            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
91            mlib_s32 a);
92
93
94       mlib_status mlib_GraphicsFillTriangleFanSet_AB_32(mlib_image *buffer,
95            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
96            mlib_s32 a);
97
98
99       mlib_status mlib_GraphicsFillTriangleFanSet_ABG_8(mlib_image *buffer,
100            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
101            const mlib_s32 *c, mlib_s32 a);
102
103
104       mlib_status mlib_GraphicsFillTriangleFanSet_ABG_32(mlib_image *buffer,
105            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
106            const mlib_s32 *c, mlib_s32 a);
107
108
109       mlib_status mlib_GraphicsFillTriangleFanSet_ABGZ_8(mlib_image *buffer,
110            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
111            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
112
113
114       mlib_status mlib_GraphicsFillTriangleFanSet_ABGZ_32(mlib_image *buffer,
115            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
116            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
117
118
119       mlib_status mlib_GraphicsFillTriangleFanSet_ABZ_8(mlib_image *buffer,
120            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
121            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
122
123
124       mlib_status mlib_GraphicsFillTriangleFanSet_ABZ_32(mlib_image *buffer,
125            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
126            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
127
128
129       mlib_status mlib_GraphicsFillTriangleFanSet_AG_8(mlib_image *buffer,
130            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
131            const mlib_s32 *c);
132
133
134       mlib_status mlib_GraphicsFillTriangleFanSet_AG_32(mlib_image *buffer,
135            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
136            const mlib_s32 *c);
137
138
139       mlib_status mlib_GraphicsFillTriangleFanSet_AGZ_8(mlib_image *buffer,
140            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
141            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
142
143
144       mlib_status mlib_GraphicsFillTriangleFanSet_AGZ_32(mlib_image *buffer,
145            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
146            const mlib_s16 *z, mlib_s32 npoints,const mlib_s32 *c);
147
148
149       mlib_status mlib_GraphicsFillTriangleFanSet_AZ_8(mlib_image *buffer,
150            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
151            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
152
153
154       mlib_status mlib_GraphicsFillTriangleFanSet_AZ_32(mlib_image *buffer,
155            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
156            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
157
158
159       mlib_status mlib_GraphicsFillTriangleFanSet_BG_8(mlib_image *buffer,
160            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
161            const mlib_s32 *c, mlib_s32 a);
162
163
164       mlib_status mlib_GraphicsFillTriangleFanSet_BG_32(mlib_image *buffer,
165            const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
166            const mlib_s32 *c, mlib_s32 a);
167
168
169       mlib_status mlib_GraphicsFillTriangleFanSet_BGZ_8(mlib_image *buffer,
170            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
171            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
172
173
174       mlib_status mlib_GraphicsFillTriangleFanSet_BGZ_32(mlib_image *buffer,
175            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
176            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
177
178
179       mlib_status mlib_GraphicsFillTriangleFanSet_BZ_8(mlib_image *buffer,
180            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
181            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
182
183
184       mlib_status mlib_GraphicsFillTriangleFanSet_BZ_32(mlib_image *buffer,
185            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
186            const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
187
188
189       mlib_status mlib_GraphicsFillTriangleFanSet_GZ_8(mlib_image *buffer,
190            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
191            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
192
193
194       mlib_status mlib_GraphicsFillTriangleFanSet_GZ_32(mlib_image *buffer,
195            mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
196            const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
197
198

DESCRIPTION

200       Each of the mlib_GraphicsFillTriangleFanSet_*() functions draws  a  set
201       of  filled  triangles  with  vertices  at  {(x1,y1), (x2,y2), (x3,y3)},
202       {(x1,y1), (x3,y3), (x4,y4)}, ..., and {(x1,y1), (xn-1,yn-1), (xn,yn)}.
203
204
205       Each of the mlib_GraphicsFillTriangleFanSet_X_*() functions draws a set
206       of filled triangles in Xor mode as follows:
207
208             data[x,y] ^= c ^ c2
209
210
211
212       Each of the mlib_GraphicsFillTriangleFanSet_A_*() functions draws a set
213       of filled triangles with antialiasing.
214
215
216       Each of the mlib_GraphicsFillTriangleFanSet_B_*() functions draws a set
217       of filled triangles with alpha blending as follows:
218
219             data[x,y] = (data[x,y] * (255 - a) + c * a) / 255
220
221
222
223       Each of the mlib_GraphicsFillTriangleFanSet_G_*() functions draws a set
224       of filled triangles with Gouraud shading.
225
226
227       Each of the mlib_GraphicsFillTriangleFanSet_Z_*() functions draws a set
228       of filled triangles with Z buffering.
229
230
231       Each of the other functions draws a set of filled triangles with a com‐
232       bination of two or more features like antialiasing (A), alpha  blending
233       (B), Gouraud shading (G), and Z buffering (Z).
234

PARAMETERS

236       Each of the functions takes some of the following arguments:
237
238       buffer     Pointer to the image into which the function is drawing.
239
240
241       zbuffer    Pointer to the image that holds the Z buffer.
242
243
244       x          Pointer to array of X coordinates of the points.
245
246
247       y          Pointer to array of Y coordinates of the points.
248
249
250       z          Pointer to array of Z coordinates of the points.
251
252
253       npoints    Number of points in the arrays.
254
255
256       c          Color  used in the drawing, or pointer to array of colors of
257                  the points in the case of Gouraud shading.
258
259
260       c2         Alternation color.
261
262
263       a          Alpha value for blending. 0 ≤ a ≤ 255.
264
265

RETURN VALUES

267       Each of the functions returns MLIB_SUCCESS if successful. Otherwise  it
268       returns MLIB_FAILURE.
269

ATTRIBUTES

271       See attributes(5) for descriptions of the following attributes:
272
273
274
275
276       ┌─────────────────────────────┬─────────────────────────────┐
277       │      ATTRIBUTE TYPE         │      ATTRIBUTE VALUE        │
278       ├─────────────────────────────┼─────────────────────────────┤
279       │Interface Stability          │Committed                    │
280       ├─────────────────────────────┼─────────────────────────────┤
281       │MT-Level                     │MT-Safe                      │
282       └─────────────────────────────┴─────────────────────────────┘
283

SEE ALSO

285       mlib_GraphicsFillTriangle(3MLIB),  mlib_GraphicsFillTriangleSet(3MLIB),
286       mlib_GraphicsFillTriangleStripSet(3MLIB), attributes(5)
287
288
289
290SunOS 5.11                        2 Mar 2m0l0i7b_GraphicsFillTriangleFanSet(3MLIB)
Impressum