Provided by: radiance_4R1+20120125-1.1_amd64 

NAME
libmeta.a - simplified interface to metafile(5)
SYNOPSIS
extern FILE *pout;
mline(x, y, type, thick, color)
mpoly(x, y, border, pat, color)
mdraw(x, y)
mtext(x, y, s, cpi, color)
char *s;
mvstr(xmin, ymin, xmax, ymax, s, d, thick, color)
char *s;
mrectangle(xmin, ymin, xmax, ymax, pat, color)
mtriangle(xmin, ymin, xmax, ymax, d, pat, color)
msegment(xmin, ymin, xmax, ymax, sname, d, thick, color)
char *sname;
msetpat(pat, pattern)
char *pattern;
mopenseg(sname)
char *sname;
mcloseseg()
minclude(fname)
char *fname;
mendpage()
mdone()
DESCRIPTION
The routines in libmeta provide a simple interface to the metafile(5) 2D graphics stream. Output from
these routines is sent to pout. Pout defaults to the standard output, and should be piped to the
appropriate device driver.
All coordinates range from 0 to 16383 and map to a square area on the output device. D values are one of
'r', 'u', 'l' and 'd' corresponding to right, up, left, and down respectively. Color values range from 0
to 3 and normally correspond to black, cyan, green and blue. Pattern values range from 0 to 3 and
default to solid, thick lines, thin lines, and candystripe. Pattern value mapping may be changed via
setpat. All strings are null-terminated, and do not contain newlines.
Mline starts a line at the given coordinates. The line type is a number from 0 to 3 corresponding to
solid, dashed, dotted, and dot-dashed. The line thickness, thick, is a number from 0 to 3. Connected
lines are drawn with successive calls to mdraw.
Mpoly starts a polygon at the given coordinates. The boolean border specifies whether or not a border is
desired around the polygon. Mdraw is used to add vertices to the polygon. The polygon will be closed
automatically after the last call.
Mtext prints a string of hardware characters starting at the given coordinates. The characters per inch
are cpi. Text is always oriented to the right.
Mvstr places a vector character string within the given boundaries. The string is oriented according to
d. The character line thickness is given by thick.
Mrectangle fills the given box with pat. Mtriangle fills the half-box with orientation d in the given
boundaries. Right corresponds to a triangle in the lower right half of the box. Up corresponds to a
triangle in the upper right, left is upper left, and down is lower left.
Msegment places an instance of the segment sname within the given boundaries. The segment is oriented
according to d, where 'r' is null rotation. If either thick or color is nonzero, its value will replace
corresponding values in the segment primitives. (For area filling, thick changes the fill pattern.)
Msetpat maps pat to pattern. Pattern is a string of the form "Pn" where n is a number between 0 and 11.
Mopenseg opens the segment named sname. All graphics calls up to a matching call to mcloseseg are stored
under sname. An instance of the segment is obtained with a call to msegment. Segments can be nested to
any level, and redefining segments is allowed. Beware of calls to mtext within a segment, since text
will not rotate or scale.
Minclude includes the graphics metafile fname in the output stream. Mendpage advances to the next screen
or page. On a terminal, the bell rings and a line is read to prevent premature erasure. Mdone completes
metafile output, and is the only required call.
DIAGNOSTICS
None.
SEE ALSO
t4014(1), mx80(1), impress(1), primout(3), metafile(5)
Radiance 11/15/93 META(3)