1SPPS(3NCARG)                     NCAR GRAPHICS                    SPPS(3NCARG)
2
3
4

NAME

6       SPPS - a collection of routines for defining and managing NCAR Graphics
7       coordinate systems, for drawing lines, markers, and text in those
8       coordinate systems, and for implementing efficiency considerations such
9       as polyline segment buffering.
10
11       The current recognized coordinate systems are GKS world coordinates,
12       GKS normalized device coordinates, NCAR Graphics fractional
13       coordinates, and NCAR Graphics user coordinates.  See the NCAR Graphics
14       document "The Use of X/Y Coordinates in NCAR Graphics" for descriptions
15       of these coordinate systems.
16
17       The NCAR Graphics user coordinate system allows for axis reversal
18       (mirror imaging) and non-linear (logarithmic) axes, which are two
19       important extensions to the GKS world coordinate system.
20
21       Plotter address units (PAUs) were used frequently in various SPPS
22       routine arguments and in some internal parameters.   PAUs are not being
23       used in new NCAR Graphics routines.  Wherever they might still be
24       encountered, simply interpret them according to the formula "1 PAU =
25       1/1023 NDC units".
26

SYNOPSIS

28       OPNGKS - Opens GKS, opens and activates an NCAR GCM workstation
29       (workstation of type 1) with workstation ID of 1 and connection ID of
30       2.
31
32       CLSGKS - Deactivates workstation 1, closes workstation 1, and closes
33       GKS.
34
35       PLOTIF - A line-drawing routine, described in terms of "pen moves".
36       Most calls to PLOTIF specify whether the "pen" should be up (not
37       drawing) or down (drawing) and then move it to a designated position in
38       the fractional coordinate system.  The polylines resulting from the pen
39       moves are buffered; some calls to PLOTIF just cause the SPPS polyline
40       buffer to be flushed.
41
42       FRSTPT - generates a "pen-up" move to a specified point in the user
43       coordinate system.  FRSTPT is used in conjunction with the routine
44       VECTOR to draw lines.
45
46       VECTOR - generates a "pen-down" move to a specified point in the user
47       coordinate system.  VECTOR is used in conjunction with the routine
48       FRSTPT to draw lines.
49
50       POINT - draws a point at a specified position in the user coordinate
51       system.
52
53       POINTS - draws a marker at each of a series of specified positions in
54       the user coordinate system.  The markers can also be connected by
55       drawing lines between them.
56
57       LINE - draws a line from the point (X1,Y1) to the point (X2,Y2).  The
58       "pen" (for subsequent calls to FRSTPT, VECTOR, PLOTIF, and PLOTIT) is
59       left at (X2,Y2).
60
61       CURVE - draws the curve defined by a specified series of points in the
62       user coordinate system.  The "pen" (for subsequent calls to FRSTPT,
63       VECTOR, PLOTIF, and PLOTIT) is left at the location of the last point
64       in the curve.
65
66       SFLUSH - Flushes polylines, accumulated through calls to the routines
67       PLOTIF and PLOTIT, from the SPPS polyline buffer shared by those
68       routines; updates all open workstations; and flushes all system-level
69       I/O buffers.
70
71       FRAME - advances to the next picture in the case of CGM output, and
72       pauses in the window of most recent creation for X11 output.  A mouse
73       or key click in the window on pause will cause all active workstations
74       to be cleared.
75
76       SET - defines the mapping between fractional and user coordinates: sets
77       the values of the SPPS internal parameters 'LS' (axis linear/log
78       scaling) and 'MI' (axis mirror imaging); defines GKS normalization
79       transformation 1.
80
81       GETSET - returns a set of values which, if used as arguments in a call
82       to SET, will cause normalization transformation 1, axis linear/log
83       scaling (internal parameter 'LS'), and axis mirror imaging (internal
84       parameter 'MI') to be defined in such a way as to duplicate the
85       combined effects of the current normalization transformation, axis
86       scaling, and axis mirror imaging.
87
88       SETUSV - sets the value of one of the internal parameters of SPPS.
89
90       GETUSV - gets the value of one of the internal parameters of SPPS.
91
92       CFUX, CFUY - Converts from fractional coordinates to user coordinates
93
94       CUFX, CUFY - Converts from user coordinates to fractional coordinates
95

C-BINDING SYNOPSIS

97       #include <ncarg/ncargC.h>
98
99       void c_opngks()
100
101       void c_clsgks()
102
103       void c_frstpt (float px, float py)
104
105       void c_vector (float px, float py)
106
107       void c_point (float px, float py)
108
109       void c_points (float *px, float *py, int np, int ic, int il)
110
111       void c_line (float x1, float y1, float x2, float y2)
112
113       void c_curve (float *px, float *py, int np)
114
115       void c_sflush()
116
117       void c_frame()
118
119       void c_set(float vl, float vr, float vb, float vt, float wl, float wr,
120       float wb, float wt, int lf)
121
122       void c_getset(float *vl, float *vr, float *vb, float *vt, float *wl,
123       float *wr, float *wb, float *wt, int *lf)
124
125       void c_setusv (char *vn, int iv)
126
127       void c_getusv (char *vn, int *iv)
128
129       float c_cfux (float rx)
130
131       float c_cfuy (float ry)
132
133       float c_cufx (float rx)
134
135       float c_cufy (float ry)
136

SEE ALSO

138       Online: clsgks, curve, fl2int, frame, frstpt, getset, getsi, getusv,
139       line, mxmy, opngks, plotif, plotit, point, points, pwrit, set, seti,
140       setusv, sflush, vector, wtstr, spps_converters, spps_params, cfux,
141       cfuy, cufx, cufy
142
143       Hardcopy: NCAR Graphics Fundamentals, UNIX Version; User's Guide for
144       NCAR GKS-0A Graphics
145
147       Copyright (C) 1987-2007
148       University Corporation for Atmospheric Research
149
150       This documentation is free software; you can redistribute it and/or
151       modify it under the terms of the GNU General Public License as
152       published by the Free Software Foundation; either version 2 of the
153       License, or (at your option) any later version.
154
155       This software is distributed in the hope that it will be useful, but
156       WITHOUT ANY WARRANTY; without even the implied warranty of
157       MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
158       General Public License for more details.
159
160       You should have received a copy of the GNU General Public License along
161       with this software; if not, write to the Free Software Foundation,
162       Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA.
163
164
165
166UNIX                              March 1993                      SPPS(3NCARG)
Impressum