The NCAR System Plot Package Simulator (SPPS) was written for two purposes. One was to smooth the transition from the pre-GKS version of NCAR Graphics to the GKS package. Toward this purpose many subroutine entries were implemented by making the appropriate GKS calls.

The second purpose of SPPS was to implement a number of important features which were missing in the GKS standard. In this documentation module are presented some of the helpful features of SPPS that resulted from these two objectives.

SPPS routines that have GKS analogs are repeated here for the sake of convenience. Discussed in the document NCAR Graphics Fundamentals, UNIX Version are the additional SPPS subroutines:

- FRAME - Flush all buffers and advance to a new picture.
- LINE - Draws a line between two points.
- CURVE - Draws line segments through a set of coordinate positions.
- POINT - Draws a point at a given coordinate.
- POINTS - Draws a point or character at a set of given coordinates with an option of connecting them with line segments.

CALL GOPKS(1,IDUMMY) CALL GOPWK(1,2,1) CALL GACWK(1)which open and activate workstation 1, of type 1, on unit 2. This is an NCAR CGM metafile output workstation.

The SPPS subroutine CALL CLSGKS is equivalent to the following set of three GKS calls:

CALL GDAWK(1) CALL GCLWK(1) CALL GCLKSwhich deactivate and close workstation 1 (the CGM), and close GKS.

------------------------------------------------ Argument | Type | Mode | Dimension ------------------------------------------------ CALL SET (XLV, | Real | Input | XRV, | Real | Input | YBV, | Real | Input | YTV, | Real | Input | XLW, | Real | Input | XRW, | Real | Input | YBW, | Real | Input | YTW, | Real | Input | LS) | Integer | Input | ------------------------------------------------

- XLV, XRV, YBV, YTV
- X left, X right, Y bottom, and Y top of the viewport in normalized device coordinates.
- XLW, XRW, YBW, YTW
- X left, X right, Y bottom, and Y top of the window in user coordinates.
- LS
- Log scaling with options of:

- 1 - linear X, linear Y

- 2 - linear X, log Y

- 3 - log X, linear Y

- 4 - log X, log Y

- The default for LS is 1.

CALL SET(.15,.95,.10,.90,100.,1000.,100.,1000.,1)In this case, both X and Y have axes that run from 100. to 1000. units; thus, mirror imaging is not in effect on either axis. The SET call to establish the normalization transformation shown in Diagram 2 is:

CALL SET(.15,.95,.10,.90,1000.,100.,100.,1000.,2)In this case, values along the X axis run from max to min due to reverse ordering of the window coordinates. Note that arguments 5 and 6 (X left and X right of the window) are now 1000. and 100., rather than 100. and 1000.; thus, mirror imaging is in effect for the X axis. In addition, logarithmic scaling is in effect for the Y axis by setting the last argument to 2.

CALL GETSET(XLV, XRV, YBV, YTV, XLW, XRW, YBW, YTW, LS)Argument descriptions are the same as for the SET call defined above. They are all output arguments.

Links: GKS Index, GKS Home