LIBPLOT3
3
BRL-CAD
BRL-CAD

# libplot3

graphics interface subroutines

    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-2013 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>.