Computer Science
gl_wtriangle(3) Svgalib User Manual gl_wtriangle(3)
NAME
gl_wtriangle - draw a shadowed pixmap mapped on a triangle
SYNOPSIS
#include <triangle.h>
typedef struct {
unsigned char *bitmap1;
unsigned char *bitmap2;
int bf;
} TD_tridata;
void gl_wtriangle(int x0, int y0, int xd0, int yd0, int z0
, int x1, int y1, int xd1, int yd1, int z1 , int x2, int
y2, int xd2, int yd2, int z2, TD_tridata *tri);
DESCRIPTION
Draws a triangle at points 0, 1, 2 by mapping the pixmaps
defined in the TD_triangle structure into the triangle.
The xd and yd values represent the triangle on the bitmap
and the x and y values represent the triangle on the
screen. The z values represent an additional value which
will be added to the color that is looked up from the
pixmap data. Once again, if the current context is more
than 8 bits then the result is interpreted as an index to
the same lookup table. See gl_triangle(3) for more details
on shadowing.
gl_wtriangle is used to draw wrapped surfaces with shadow-
ing interpolation. The function gl_swtriangle(3) does it
without shadowing.
bitmap1 defines the back side of the triangle, bitmap2 the
front.
The bf value is used to tell the routine to draw the back-
side if it is facing the other way. bf tells which way
the triangle should be facing to show the front, since you
will more than likely require both combinations.
bf = 2 defines the back to be drawn when the points are
arranged clockwise, bf = 3 defines the back to be drawn
when the points are arranged counter clockwise, bf = -1
will probably always draw the front.
Beware, these functions are not a direct part of the
svgalib library. Instead their source is part of svgalib
and can be found in the threeDkit/ subdirectory of the
original svgalib distribution. However, it is not
installed in the system by default, s.t. it is unclear
where you can find it if your svgalib was installed by
some linux distribution.
In case of any such problem, simply get an svgalib distri-
bution from the net. Yo don't need to install it. Just
make in the threeDkit/ subdirectory. As of this writing,
svgalib-1.2.12.tar.gz is the latest version and can be
retrieved by ftp from sunsite.unc.edu at
/pub/Linux/libs/graphics and tsx-11.mit.edu at
/pub/linux/sources/libs which will most probably be mir-
rored by a site close to you.
The functions are defined in the tri.o and triangl.o files
(or their resp. sources) which you must link to your pro-
gram.
SEE ALSO
vgagl(7), svgalib(7), threedkit(7), gl_striangle(3),
gl_swtriangle(3), gl_triangle(3), gl_trigetcolorlookup(3),
gl_trisetcolorlookup(3), gl_trisetdrawpoint(3), plane(6),
wrapdemo(6).
AUTHOR
This manual page was edited by Michael Weller <eowmob@exp-
math.uni-essen.de>. The demos, the initial documentation
and the whole threedkit stuff was done by Paul Sheer
<psheer@icon.co.za>.
Paper mail:
Paul Sheer
P O BOX 890507
Lyndhurst
Johannesburg 2106
South Africa
Donations (by check or postal order) will be appreciated
and will encourage further development of this software.
However this is strictly on a voluntary basis where this
software falls under the GNU LIBRARY GENERAL PUBLIC
LICENSE.
Svgalib (>= 1.2.11) 2 Aug 1997 1
Back to the index