LIBPLOT3(3)

NAME
libplot3 - graphics interface subroutines

SYNOPSIS

pl_space( fp, x0, y0, x1, y1 )
FILE *fp;
int x0, y0, x1, y1;

pl_3space( fp, x0, y0, z0, x1, y1, z1 )
FILE *fp;
int x0, y0, z0, x1, y1, z1;

pl_erase( fp )
FILE *fp;

pl_color( fp, r, g, b )
FILE *fp;
int r, g, b;

pl_linmod( fp, s )
FILE *fp;
char *s;

pl_label( fp, s )
FILE *fp;
char *s;

pl_line( fp, x1, y1, x2, y2 )
FILE *fp;
int x1, y1, x2, y2;

pl_3line( fp, x1, y1, z1, x2, y2, z2 )
FILE *fp;
int x1, y1, z1, x2, y2, z2;

pl_move( fp, x, y )
FILE *fp;
int x, y;

pl_3move( fp, x, y, z )
FILE *fp;
int x, y, z;

pl_cont( fp, x, y )
FILE *fp;
int x, y;

pl_3cont( fp, x, y, z )
FILE *fp;
int x, y, z;

pl_point( fp, x, y )
FILE *fp;
int x, y;

pl_3point( fp, x, y, z )
FILE *fp;
int x, y, z;

pl_box( fp, x1, y1, x2, y2 )
FILE *fp;
int x1, y1, x2, y2;

pl_3box( fp, x1, y1, z1, x2, y2, z2 )
FILE *fp;
int x1, y1, z1, x2, y2, z2;

pl_circle( fp, x, y, r )
FILE *fp;
int x, y, r;

pl_arc( fp, x, y, x0, y0, x1, y1 )
FILE *fp;
int x, y, x0, y0, x1, y1;

DESCRIPTION

These subroutines generate graphic output commands for processing with the plot(1) plotting filters. They are slightly more general than those in libplot as these take a file pointer. They also include the BRL 3-D extensions to the plot intermediate code.

Pl_space or pl_3space must be used before any of the graphic primitives to declare the amount of space necessary. See plot3(5).

Pl_box or pl_3box draws a box between the two given opposite points. The ''pen'' will be left at the second point.

Pl_circle draws a circle of radius r with center at the point (x, y). Note that circle and arc cannot be transformed in three space if one is using a filter to do that.

Pl_arc draws an arc of a circle with center at the point (x, y) between the points (x0, y0) and (x1, y1).

String arguments to pl_label and pl_linmod are terminated by nulls and do not contain new-lines.

There are also 2-D and 3_D double-precision versions, with arguments identical to their counterparts above. The naming conventions are to change the prefix to ``pd''; examples are thus pd_point and pd_3point. Vector versions for 3_D (also double-precision) are prefixed ``pdv'', as in pdv_3point.

See plot3(5) and plot(5) for a description of the effect of the remaining functions.

FILES
/usr/brlcad/lib/libplot3.a    produces output for
plot(1G) filters

WARNINGS
In order to compile a program containing these functions in file.c it is necessary to use ``cc file.c -lplot3''.

Color specification and three-dimensional primitives are BRL extensions to the "unix plot" language that are not generally found on other systems.

SEE ALSO
plot(1), pl-fb(1), plot3(5), plot(5)

AUTHORS
Phillip Dykstra

SOURCE
SECAD/VLD Computing Consortium, Bldg 394
The U. S. Army Ballistic Research Laboratory
Aberdeen Proving Ground, Maryland 21005

BUG REPORTS
Reports of bugs or problems should be submitted via electronic mail to <devs@brlcad.org>.