SETUSV(3NCARG)

✨ SETUSV ✨

okay bestie, welcome to NCAR GRAPHICS land πŸ’– this one lives in section 3NCARG, and it's a lil cutie that pokes at the internals of SPPS. sit down, grab a strawberry πŸ“, we're doing this.


🌸 NAME 🌸

SETUSV β€” sets the value of one of the internal parameters of SPPS.

like, it reaches into the guts of SPPS and flips a switch. no big deal. iconic behavior honestly πŸ‘‘


✨ SYNOPSIS ✨

CALL SETUSV (VN,IV)

πŸŽ€ C-BINDING SYNOPSIS πŸŽ€

#include <ncarg/ncargC.h>

void c_setusv (char *vn, int iv)

πŸ’… DESCRIPTION πŸ’…

  • VN β€” an input constant or variable of type CHARACTER, and it's the name of a parameter. heads up: only the first two characters are meaningful, so don't come at it with a whole essay. and remember, bestie, in FORTRAN a constant of type CHARACTER is a string of characters wrapped in apostrophes. periodt.
  • IV β€” an input expression of type INTEGER, and it's the desired new value of the parameter that VN points at. which parameter takes which numbers? glad you asked, look at this πŸ‘‡

🌈 the parameters, decoded 🌈

  • 'LS' β€” Axis scaling, aka the "Log Scaling" flag:
    • 1 = linear X, linear Y
    • 2 = linear X, log Y
    • 3 = log X, linear Y
    • 4 = log X, log Y
  • 'MI' β€” Axis direction reversal, aka the "MIrroring" flag β€” that's when the axis goes from maximum to minimum rather than min to max:
    • 1 = neither X nor Y
    • 2 = X, but not Y
    • 3 = Y, but not X
    • 4 = both X and Y
  • 'MU' β€” Metacode output Unit. possible value: 2
  • 'PB' β€” Pen-move Buffer size. possible values: 2 to 50

k so here's the tea β˜•: both 'LS' and 'MI' are normally set by calling the routine SET, but you can set them independently by calling SETUSV. independent queen energy πŸ’…

the parameter 'MU' gets set prior to calling OPNGKS, and it changes the FORTRAN logical unit number that GKS uses for metacode output.

the parameter 'PB' sets the size of the SPPS polyline buffer. and ngl, the value "2" effectively turns buffering off. just so you know. 🫢

πŸ’€ the obsolete parameters πŸ’€

these ones are giving "retired but still in the group chat." here's the whole list, no cap:

  • 'XF' β€” X axis exponent for plotter coordinates. (The PAU range would be 1 to 2**XF - 1 in X)
  • 'YF' β€” Y axis exponent for plotter coordinates. (The PAU range would be 1 to 2**YF - 1 in Y)
  • 'IR' β€” Red color intensity (relative to green and blue)
  • 'IG' β€” Green color intensity (relative to red and blue)
  • 'IB' β€” Blue color intensity (relative to red and green)
  • 'IM' β€” Maximum color index to be used
  • 'IN' β€” Overall color intensity
  • 'II' β€” Restore color index
  • 'LW' β€” Line width scale factor in thousandths (2000 means double the default line width)
  • 'MS' β€” Marker size in thousandths (2000 means double the default marker size)

so the values of the parameters 'XF' and 'YF' are the exact same as the values of the arguments IX and IY in calls to the routines SETI and GETSI. matching set, we love to see it ✨

now. the parameters 'IR', 'IG', 'IB', 'IM', 'IN', and 'II' were all part of a color-setting scheme that was meant to let you set overall intensity independently of color. that scheme is now obsolete 😭 it got replaced by normal GKS color setting through the routines GSCR, GSPLCI, GSFACI, GSPMCI, and GSTXCI. and if you wanna ask about the current color settings, the corresponding GKS inquiry routines are GQCR, GQPLCI, GQFACI, GQPMCI, and GQTXCI. go read Section 6 of "User's Guide for NCAR GKS-0A Graphics." iykyk πŸ“š

the parameter 'LW' is replaced by the GKS line width scale factor routine, GSLWSC, which has the corresponding query function GQLWSC.

the parameter 'MS' is replaced by the GKS marker size scale factor routine, GSMKSC, which has the corresponding query function GQMKSC.

lowkey important: all of the above are marked obsolete in the original, so please don't build your whole personality on them. use the GKS replacements bestie πŸ₯Ί

πŸ¦‹ C-BINDING DESCRIPTION πŸ¦‹

The C-binding argument descriptions are the same as the FORTRAN argument descriptions. literally identical, we're not doing the whole thing twice πŸ’–


⭐ EXAMPLES ⭐

Use the ncargex command to see the following relevant examples: (none).

yeah. (none). i know. the audacity 😭 but that's what it says, so that's what you get.


πŸ‘‘ ACCESS πŸ‘‘

To use SETUSV or c_setusv, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β€” preferably in that order. order matters, bestie, don't be chaotic about it πŸŽ€


🌈 SEE ALSO 🌈

Online: gscr, gsplci, gsfaci, gspmci, gstxci, gsmksc, gslwsc, spps, spps_params, getset, getsi, getusv, plotif, set, setsi, ncarg_cbind

Hardcopy: NCAR Graphics Fundamentals, UNIX Version; User's Guide for NCAR GKS-0A Graphics


Copyright (C) 1987-2009 University Corporation for Atmospheric Research The use of this Software is governed by a License Agreement.


and that's the whole page, bestie 🫢 this was the UNIX version of SETUSV(3NCARG) from March 1993 β€” yes, before you were born, and it's still serving. slay. πŸ’…βœ¨