PCMEQU(3NCARG)

πŸ“¦ version 6.6.2, in epel 9, fedora 43, fedora 44

✨ PCMEQU β€” it's giving "medium quality characters" and honestly? iconic ✨

okay bestie, welcome to the manual page for PCMEQU, from the NCAR Graphics crew (that's the 3NCARG section btw, so you know it's a library call and not, like, a shell command πŸ’…).

🌸 NAME 🌸

PCMEQU draws characters of "medium quality". The way it does that is by drawing lines, exactly like PCHIQU does, except the characters come out not quite as fancy. No function codes may be used.

Lowkey important tea: if you use PCMEQU to draw a given string of characters, you'll get a bigger metafile than if you'd used PCLOQU β€” which may be a disadvantage. But it may also be more dependable, because it doesn't depend on capabilities the translator may or may not have. So it's a tradeoff, and it's giving "reliable but kinda thicc" 🫢

Also, PLCHMQ is an alternate name for the routine PCMEQU. Same girl, different name. ✨


πŸ’« SYNOPSIS πŸ’«

CALL PCMEQU (XPOS,YPOS,CHRS,SIZE,ANGD,CNTR)

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

#include <ncarg/ncargC.h>

void c_pcmequ (float xpos, float ypos, char *chrs,
float size, float angd, float cntr)

πŸ‘‘ DESCRIPTION πŸ‘‘

  • XPOS,YPOS β€” (input expressions of type REAL) these specify the positioning coordinates for the characters we're about to draw. Now, if the internal parameter Β΄MAΒ΄ has the value 0, these are given in the current user coordinate system. Otherwise, they're given in an arbitrary X/Y coordinate system, as implied by the value of Β΄MAΒ΄ and the nature of the routine CPMPXY. (For example β€” say Β΄MAΒ΄ has the value 1 and the default version of CPMPXY is being used, then XPOS is a longitude, in degrees, and YPOS is a latitude, in degrees.) And the argument CNTR (described below, don't worry, we get there πŸ’–) specifies how the characters are to be positioned relative to the point (XPOS,YPOS).
  • CHRS β€” (an input constant or variable of type CHARACTER) contains a character string to be drawn. The number of characters in CHRS is taken to be LEN(CHRS); and if you wanna use characters "m" through "n" from a character variable CHRS, you use the FORTRAN-77 substring notation "CHRS(m:n)". The string may include any of these 95 characters, and I'm listing every single one because we do not skip: space, exclamation point, double quote, pound sign, dollar sign, percent sign, ampersand, apostrophe, left parenthesis, right parenthesis, asterisk, plus sign, comma, minus sign, period, slash, 0-9, colon, semi-colon, less than sign, equals sign, greater than sign, question mark, at sign, A-Z, left square bracket, backslash, right square bracket, hat, underscore, backwards quote, a-z, left curly bracket, vertical bar, right curly bracket, and tilde. Function codes, like those in calls to PCHIQU, may not be used. Periodt.
  • SIZE β€” (an input expression of type REAL) specifies the desired character size. If the internal parameter Β΄MAΒ΄ is zero, then these comments apply:
    • If SIZE is less than or equal to zero, its absolute value specifies the size as a multiple of a default digitized size on a 1024x1024 grid, on which blanks are 16 units wide.
    • If SIZE is greater than zero, but less than one, it specifies the desired width of a blank as a fraction of the distance across the plotter frame. This is the recommended scheme β€” the girlies love this one. πŸ’…
    • If SIZE is greater than or equal to one, it specifies the desired width of a blank in plotter coordinates, as defined by default or by a user's call to the SPPS routine SETI. Note that use of the routine SETI is now discouraged. (not me telling you it's deprecated… it's deprecated πŸ™ˆ)

If Β΄MAΒ΄ is nonzero, then SIZE is the desired width of a blank as a value in the X/Y coordinate system in which XPOS and YPOS are given.

Capital letters are 4/6 as wide as a blank and, by default, 7/4 as high as they are wide (the internal parameter Β΄HWΒ΄ may be used to change the latter value). The distance from the center of each character to the center of the next is constant and is equal to one blank width.

Note that, if the desired character height ("h") is known, one should use SIZE = (6/7) * h. Math is math, bestie. 🧚

SIZE is defined in such a way as to be consistent with PCHIQU. If one changes a "CALL PCHIQU" to a "CALL PCMEQU" (assuming that no function codes are used in the string, of course), the results will be much the same, but the length of the string will be different. And if one uses SIZE less than zero and one has reset the PCHIQU internal parameter Β΄PWΒ΄ to something other than 16, the difference in the output of the two routines will be greater. πŸ‘€

  • ANGD β€” (an input expression of type REAL) is the angle, in degrees counterclockwise from the positive X axis, at which the character string is to be written.
  • CNTR β€” (an input expression of type REAL) is the centering option, as follows:
    • CNTR = -1. means that (XPOS,YPOS) is the center of the left edge of the first character.
    • CNTR = 1. means that (XPOS,YPOS) is the center of the right edge of the last character.
    • CNTR = s means that (XPOS,YPOS) is a point obtained by linear interpolation along the line joining the two points mentioned above (the first point being associated with the value -1 and the second with the value +1). The value "0." gives the midpoint of the line.
Upon return from PCMEQU, all arguments are unchanged. No notes, no edits, no chaos. She's polite like that. 🫢

πŸ’œ C-BINDING DESCRIPTION πŸ’œ

The C-binding argument descriptions are the same as the FORTRAN argument descriptions. Literally identical. Same vibes, different language. 🌈


πŸ”₯ EXAMPLES πŸ”₯

Use the ncargex command to see the following relevant examples: cbex01, epltch, tpltch. Go look, they're cute. ✨


🌟 ACCESS 🌟

To use PCMEQU or c_pcmequ, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β€” preferably in that order. Order matters, don't fight it. πŸ‘‘


πŸ¦‹ SEE ALSO πŸ¦‹

Online: plotchar, pcdlsc, pcgetc, pcgeti, pcgetr, pchiqu, pcloqu, pcmpxy, pcpnwi, pcrset, pcsetc, pcseti, pcsetr, ncarg_cbind.

Hardcopy: NCAR Graphics Fundamentals, UNIX Version

iykyk πŸ’…


Copyright (C) 1987-2009 University Corporation for Atmospheric Research

The use of this Software is governed by a License Agreement.


okay that's the whole page, no cap β€” and before you go: this was the UNIX version of the NCAR GRAPHICS PCMEQU(3NCARG) page, dated March 1993. Old but iconic. Go draw some medium-quality characters, bestie πŸ’–πŸŒΈ

πŸ“¦ where this page comes from