LIBPLOT3(3)

NAME
libplot3 - graphics interface subroutines

SYNOPSIS

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

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

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

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

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

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

void pl_arc(FILE *fp, int xc, int yc, int x0, int y0, int x1, int y1);

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

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

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

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

void pl_erase(FILE *fp);

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

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

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

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

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

void pl_space(FILE *fp, int x0, int y0, int x1, int 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)

AUTHOR

BRL-CAD Team

COPYRIGHT

This software is Copyright (c) 1989-2023 by the United States Government as represented by U.S. Army Research Laboratory.

BUG REPORTS

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