plinit(pltdev, xmin, xmax, ymin, ymax) standardstring pltdev;real xmin, xmax, ymin, ymax; plltype(lwid, lpat) standardint lwid, lpat; plline(x, y) standardreal x, y; plmove(x, y) standardreal x, y; plpoint(x, y) standardreal x, y; plcircle(x, y, r) optionalreal x, y, r; plcross(x, y, s) optionalreal x, y, s; plbox(x, y, s) optionalreal x, y, s; pltext(msg, x, y, hgt, ang) standardstring msg;real x, y, hgt, ang; pljust(just) standardint just; plframe() standard plstop() standard plswap() optional plxscale(x,y) optionalplyscale(x,y) optionalreal x,y; plflush() optional pl_matrix(frame, nx, ny, xmin, ymin, cell, fmin, fmax, findex) non-standard real *frame, xmin, ymin, cell, fmin, fmax, findex; int nx, ny; int pl_getpoly(x, y, n) non-standardfloat x, y;int n; int pl_cursor(x, y, c) non-standardfloat *x, *y;char *c; int pl_screendump(fname) non-standardchar *fname; int plcolor(color) optionalint color; int plncolors() optional int plpalette(r, g, b, nc) optionalreal r, g, b;int nc; int plgetraster(bitsptr, widthptr, heightptr, depthptr) optionalbyte **bitsptr;int *widthptr, *heightptr, *depthptr; int plputraster() optional
plinit initializes the graphics package. Currently, pltdev is ignored in most versions. Some versions use an environment variable YAPP or system keyword yapp= through the getparam(3NEMO) user package to select a different device. xmin, xmax, ymin, and ymax specify the range of plotting coordinates to use. plinit fits a rectangle with aspect ratio (xmax - xmin) / (ymax - ymin) into the available plotting surface.
plltype sets the line width and dot-dash pattern. lwid is the line width, ranging upwards from 1 (thin). lpat is the line pattern; currently 1 specifies a solid line. If either angument is 0 or less, the corresponding line parameter is unchanged.
plline, plmove, and plpoint are basic graphics operations. Arguments x and y are scaled to the range specified by the call to plinit. plline draws a line from the current plotting position to x, y, which becomes the current position. plmove simply moves the current position to x, y. plpoint draws a point at x, y.
plcircle, plcross and plbox are basic symbol plotters. The first two arguments x and y are the center of the symbol. plcircle plots a circle with radius r. plcross and plbox plot a simple cross resp. box of size s. When s<0 the orientation of the symbols are at 45 degrees.
pltext plots a string of characters msg at position x, y (modified by pljust), with character height hgt, measured in user coordinates, and angle ang, measured counterclockwise in degrees.
pljust specifies the justification of text relative to x, y; values of just of -1, 0, and 1 imply left, middle and right justification respectively. By default, left justification is used.
plframe erases the current display and begins a new frame. An optional delay has sometimes been installed, or mouse interrogation to advance to next frame.
plstop closes the graphics package. Depending on implemented yapp version, this may be a 60 seconds delay, a request to press the RETURN key or a mouse button.
pl_matrix is non-standard, and only works with an old Postscript version. Needs proper device independant solution. Don’t use it for now.
pl_getpoly requires a yapp implementation with a mouse. It allows the user to define a polygon, whose vertex coordinates are stored in an array x[n],y[n] with minimum declared length n. pl_getpoly returns the actual stored number of vertices, which will be 3 or greater. Returns 0 if badly (zero) defined polygon has been entered. pl_getpoly does not store the first entered point again at the end. It assumes polygon is closed.
pl_cursor requires a yapp implementation with a mouse. It allows the user retrieve a cursor position, as well as the character that was pressed.
pl_screendump is a standard way to create some kind of memory image of the current display. Certain systems have fast ways to display such memory images and create a movie feature. On SUN’s there are two versions of movie: movie(1NEMO) runs on full screens, and moview(1NEMO) displays small images within the suntools environment.
plcolor specifies plotting color as an integer between 0 and ncolors-1; values outside this range are mapped to the nearest endpoint. The number of colors, ncolors is a number defined by the package, and can be obtained by calling plncolors.
plpalette re-initializes the color table with user supplied values in the arrays r, g and b, with nc entries each for the red, green and blue color respectively.
plgetraster is supplied for interfaces which support saving the image on the screen in the form of a raster image, much as pl_screendump(). With plputraster an image, previously saved with plgetraster can be (re)displayed.
The name yapp has nothing to do with yuppies; as far as I know, I chose this name before such lice were more than a gleam in the eye of Dr. Dan Asher.
yapp shares some routine names with the Texax plplot subroutine library. Our version of yapp_plplot hence uses the c_ routine names.
No good method for properly selecting foreground and background color.
xx-jun-87 documentation written JEB 16-aug-88 improved documentation PJT 10-dec-88 added pl_screendump PJT 19-jul-89 added doc for yapp_cg_new PJT 26-oct-90 added doc PJT 8-feb-95 double is now real pjt 21-jan-00 pl_cursor pjt
Table of Contents