1mlib_GraphicsFillTriangleStmreidpiSaeLti(b3MLLiIbBrm)alriyb_FGurnacpthiiocnssFillTriangleStripSet(3MLIB)
2
3
4
6 mlib_GraphicsFillTriangleStripSet, mlib_GraphicsFillTriangleStripSet_8,
7 mlib_GraphicsFillTriangleStripSet_32, mlib_GraphicsFillTrian‐
8 gleStripSet_X_8, mlib_GraphicsFillTriangleStripSet_X_32, mlib_Graphics‐
9 FillTriangleStripSet_A_8, mlib_GraphicsFillTriangleStripSet_A_32,
10 mlib_GraphicsFillTriangleStripSet_B_8, mlib_GraphicsFillTrian‐
11 gleStripSet_B_32, mlib_GraphicsFillTriangleStripSet_G_8, mlib_Graphics‐
12 FillTriangleStripSet_G_32, mlib_GraphicsFillTriangleStripSet_Z_8,
13 mlib_GraphicsFillTriangleStripSet_Z_32, mlib_GraphicsFillTrian‐
14 gleStripSet_AB_8, mlib_GraphicsFillTriangleStripSet_AB_32, mlib_Graph‐
15 icsFillTriangleStripSet_ABG_8, mlib_GraphicsFillTrian‐
16 gleStripSet_ABG_32, mlib_GraphicsFillTriangleStripSet_ABGZ_8,
17 mlib_GraphicsFillTriangleStripSet_ABGZ_32, mlib_GraphicsFillTrian‐
18 gleStripSet_ABZ_8, mlib_GraphicsFillTriangleStripSet_ABZ_32,
19 mlib_GraphicsFillTriangleStripSet_AG_8, mlib_GraphicsFillTrian‐
20 gleStripSet_AG_32, mlib_GraphicsFillTriangleStripSet_AGZ_8, mlib_Graph‐
21 icsFillTriangleStripSet_AGZ_32, mlib_GraphicsFillTriangleStripSet_AZ_8,
22 mlib_GraphicsFillTriangleStripSet_AZ_32, mlib_GraphicsFillTrian‐
23 gleStripSet_BG_8, mlib_GraphicsFillTriangleStripSet_BG_32, mlib_Graph‐
24 icsFillTriangleStripSet_BGZ_8, mlib_GraphicsFillTrian‐
25 gleStripSet_BGZ_32, mlib_GraphicsFillTriangleStripSet_BZ_8, mlib_Graph‐
26 icsFillTriangleStripSet_BZ_32, mlib_GraphicsFillTriangleStripSet_GZ_8,
27 mlib_GraphicsFillTriangleStripSet_GZ_32 - draw filled triangle set
28 where the first side of each member is common to the second side of the
29 previous member
30
32 cc [ flag... ] file... -lmlib [ library... ]
33 #include <mlib.h>
34
35 mlib_status mlib_GraphicsFillTriangleStripSet_8(mlib_image *buffer,
36 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
37
38
39 mlib_status mlib_GraphicsFillTriangleStripSet_32(mlib_image *buffer,
40 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
41
42
43 mlib_status mlib_GraphicsFillTriangleStripSet_X_8(mlib_image *buffer,
44 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
45 mlib_s32 c2);
46
47
48 mlib_status mlib_GraphicsFillTriangleStripSet_X_32(mlib_image *buffer,
49 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
50 mlib_s32 c2);
51
52
53 mlib_status mlib_GraphicsFillTriangleStripSet_A_8(mlib_image *buffer,
54 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
55
56
57 mlib_status mlib_GraphicsFillTriangleStripSet_A_32(mlib_image *buffer,
58 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c);
59
60
61 mlib_status mlib_GraphicsFillTriangleStripSet_B_8(mlib_image *buffer,
62 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
63 mlib_s32 a);
64
65
66 mlib_status mlib_GraphicsFillTriangleStripSet_B_32(mlib_image *buffer,
67 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
68 mlib_s32 a);
69
70
71 mlib_status mlib_GraphicsFillTriangleStripSet_G_8(mlib_image *buffer,
72 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
73 const mlib_s32 *c);
74
75
76 mlib_status mlib_GraphicsFillTriangleStripSet_G_32(mlib_image *buffer,
77 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
78 const mlib_s32 *c);
79
80
81 mlib_status mlib_GraphicsFillTriangleStripSet_Z_8(mlib_image *buffer,
82 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
83 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
84
85
86 mlib_status mlib_GraphicsFillTriangleStripSet_Z_32(mlib_image *buffer,
87 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
88 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
89
90
91 mlib_status mlib_GraphicsFillTriangleStripSet_AB_8(mlib_image *buffer,
92 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
93 mlib_s32 a);
94
95
96 mlib_status mlib_GraphicsFillTriangleStripSet_AB_32(mlib_image *buffer,
97 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints, mlib_s32 c,
98 mlib_s32 a);
99
100
101 mlib_status mlib_GraphicsFillTriangleStripSet_ABG_8(mlib_image *buffer,
102 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
103 const mlib_s32 *c, mlib_s32 a);
104
105
106 mlib_status mlib_GraphicsFillTriangleStripSet_ABG_32(mlib_image *buffer,
107 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
108 const mlib_s32 *c,
109 mlib_s32 a);
110
111
112 mlib_status mlib_GraphicsFillTriangleStripSet_ABGZ_8(mlib_image *buffer,
113 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
114 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
115
116
117 mlib_status mlib_GraphicsFillTriangleStripSet_ABGZ_32(mlib_image *buffer,
118 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
119 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
120
121
122 mlib_status mlib_GraphicsFillTriangleStripSet_ABZ_8(mlib_image *buffer,
123 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
124 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
125
126
127 mlib_status mlib_GraphicsFillTriangleStripSet_ABZ_32(mlib_image *buffer,
128 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
129 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
130
131
132 mlib_status mlib_GraphicsFillTriangleStripSet_AG_8(mlib_image *buffer,
133 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
134 const mlib_s32 *c);
135
136
137 mlib_status mlib_GraphicsFillTriangleStripSet_AG_32(mlib_image *buffer,
138 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
139 const mlib_s32 *c);
140
141
142 mlib_status mlib_GraphicsFillTriangleStripSet_AGZ_8(mlib_image *buffer,
143 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
144 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
145
146
147 mlib_status mlib_GraphicsFillTriangleStripSet_AGZ_32(mlib_image *buffer,
148 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
149 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
150
151
152 mlib_status mlib_GraphicsFillTriangleStripSet_AZ_8(mlib_image *buffer,
153 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
154 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
155
156
157 mlib_status mlib_GraphicsFillTriangleStripSet_AZ_32(mlib_image *buffer,
158 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
159 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c);
160
161
162 mlib_status mlib_GraphicsFillTriangleStripSet_BG_8(mlib_image *buffer,
163 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
164 const mlib_s32 *c, mlib_s32 a);
165
166
167 mlib_status mlib_GraphicsFillTriangleStripSet_BG_32(mlib_image *buffer,
168 const mlib_s16 *x, const mlib_s16 *y, mlib_s32 npoints,
169 const mlib_s32 *c, mlib_s32 a);
170
171
172 mlib_status mlib_GraphicsFillTriangleStripSet_BGZ_8(mlib_image *buffer,
173 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
174 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
175
176
177 mlib_status mlib_GraphicsFillTriangleStripSet_BGZ_32(mlib_image *buffer,
178 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
179 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c, mlib_s32 a);
180
181
182 mlib_status mlib_GraphicsFillTriangleStripSet_BZ_8(mlib_image *buffer,
183 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
184 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
185
186
187 mlib_status mlib_GraphicsFillTriangleStripSet_BZ_32(mlib_image *buffer,
188 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
189 const mlib_s16 *z, mlib_s32 npoints, mlib_s32 c, mlib_s32 a);
190
191
192 mlib_status mlib_GraphicsFillTriangleStripSet_GZ_8(mlib_image *buffer,
193 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
194 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
195
196
197 mlib_status mlib_GraphicsFillTriangleStripSet_GZ_32(mlib_image *buffer,
198 mlib_image *zbuffer, const mlib_s16 *x, const mlib_s16 *y,
199 const mlib_s16 *z, mlib_s32 npoints, const mlib_s32 *c);
200
201
203 Each of the mlib_GraphicsFillTriangleStripSet_*() functions draws a set
204 of filled triangles with vertices at {(x1,y1), (x2,y2), (x3,y3)},
205 {(x2,y2), (x3,y3), (x4,y4)}, ..., and {(xn-2,yn-2), (xn-1,yn-1),
206 (xn,yn)}.
207
208
209 Each of the mlib_GraphicsFillTriangleStripSet_X_*() functions draws a
210 set of filled triangles in Xor mode as follows:
211
212 data[x,y] ^= c ^ c2
213
214
215
216 Each of the mlib_GraphicsFillTriangleStripSet_A_*() functions draws a
217 set of filled triangles with antialiasing.
218
219
220 Each of the mlib_GraphicsFillTriangleStripSet_B_*() functions draws a
221 set of filled triangles with alpha blending as follows:
222
223 data[x,y] = (data[x,y] * (255 - a) + c * a) / 255
224
225
226
227 Each of the mlib_GraphicsFillTriangleStripSet_G_*() functions draws a
228 set of filled triangles with Gouraud shading.
229
230
231 Each of the mlib_GraphicsFillTriangleStripSet_Z_*() functions draws a
232 set of filled triangles with Z buffering.
233
234
235 Each of the other functions draws a set of filled triangles with a com‐
236 bination of two or more features like antialiasing (A), alpha blending
237 (B), Gouraud shading (G), and Z buffering (Z).
238
240 Each of the functions takes some of the following arguments:
241
242 buffer Pointer to the image into which the function is drawing.
243
244
245 zbuffer Pointer to the image that holds the Z buffer.
246
247
248 x Pointer to array of X coordinates of the points.
249
250
251 y Pointer to array of Y coordinates of the points.
252
253
254 z Pointer to array of Z coordinates of the points.
255
256
257 npoints Number of points in the arrays.
258
259
260 c Color used in the drawing, or pointer to array of colors of
261 the points in the case of Gouraud shading.
262
263
264 c2 Alternation color.
265
266
267 a Alpha value for blending. 0 ≤ a ≤ 255.
268
269
271 Each of the functions returns MLIB_SUCCESS if successful. Otherwise it
272 returns MLIB_FAILURE.
273
275 See attributes(5) for descriptions of the following attributes:
276
277
278
279
280 ┌─────────────────────────────┬─────────────────────────────┐
281 │ ATTRIBUTE TYPE │ ATTRIBUTE VALUE │
282 ├─────────────────────────────┼─────────────────────────────┤
283 │Interface Stability │Committed │
284 ├─────────────────────────────┼─────────────────────────────┤
285 │MT-Level │MT-Safe │
286 └─────────────────────────────┴─────────────────────────────┘
287
289 mlib_GraphicsFillTriangle(3MLIB), mlib_GraphicsFillTriangleSet(3MLIB),
290 mlib_GraphicsFillTriangleFanSet(3MLIB), attributes(5)
291
292
293
294SunOS 5.11 2 Marml2i0b0_7GraphicsFillTriangleStripSet(3MLIB)