1SPPS(3NCARG) NCAR GRAPHICS SPPS(3NCARG)
2
3
4
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
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
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
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-2009
148 University Corporation for Atmospheric Research
149 The use of this Software is governed by a License Agreement.
150
151
152
153UNIX March 1993 SPPS(3NCARG)