PERIM3(3NCARG)

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

πŸ’– PERIM3 β€” it's giving perimeter πŸ’–

okay so bestie, welcome to PERIM3 from the NCAR GRAPHICS manual (3NCARG, she's a legend). this one draws the projection of a rectangular perimeter in a plane parallel to one of the three coordinate planes, and it puts inward-pointing tick marks at specified intervals. yes ma'am, tick marks, we love a little detail. πŸŽ€


✨ SYNOPSIS ✨

CALL PERIM3 (MAJOR1,MINOR1,MAJOR2,MINOR2,IAXIS,VALUE)

🌈 C-BINDING SYNOPSIS

#include <ncarg/ncargC.h>

void c_perim3 (int major1, int minor1, int major2, int minor2,
int iaxis, float value)

πŸ¦‹ DESCRIPTION πŸ¦‹

here's the whole squad of arguments, no gatekeeping, we're going through every single one:

  • MAJOR1 β€” an input expression of type INTEGER. she specifies the number of major divisions of those sides of the perimeter parallel to direction 1. (directions 1 and 2 are defined by the value of IAXIS.) major divisions are indicated by tick marks. periodt.
  • MINOR1 β€” an input expression of type INTEGER. this one specifies the number of minor divisions per major division along those sides of the perimeter parallel to direction 1. (again, directions 1 and 2 are defined by the value of IAXIS.) minor divisions are indicated by tick marks that, by default, are smaller than the tick marks indicating major divisions. tiny ticks, iconic behaviour.
  • MAJOR2 β€” an input expression of type INTEGER. the number of major divisions of those sides of the perimeter parallel to direction 2. (directions 1 and 2 are defined by the value of IAXIS.) major divisions are indicated by tick marks.
  • MINOR2 β€” an input expression of type INTEGER. the number of minor divisions per major division along those sides of the perimeter parallel to direction 2. (directions 1 and 2 are defined by the value of IAXIS.) minor divisions are indicated by tick marks that, by default, are smaller than the tick marks indicating major divisions.
  • IAXIS β€” an input expression of type INTEGER. she specifies which of the three axes the perimeter is to be perpendicular to, and she identifies directions 1 and 2. the vibe check:
    1. the perimeter is to be perpendicular to the U axis. direction 1 is parallel to the V axis and direction 2 is parallel to the W axis.
    2. the perimeter is to be perpendicular to the V axis. direction 1 is parallel to the U axis and direction 2 is parallel to the W axis.
    3. the perimeter is to be perpendicular to the W axis. direction 1 is parallel to the U axis and direction 2 is parallel to the V axis.
  • VALUE β€” an input expression of type REAL. this is the value at which the plane of the perimeter is to intersect the axis specified by IAXIS. if IAXIS is a 1, VALUE is a U coordinate; if IAXIS is a 2, VALUE is a V coordinate; and, if IAXIS is a 3, VALUE is a W coordinate. fr fr, that's the whole mapping.

okay so now the actual lore. every single call to PERIM3 draws a perimeter: a rectangle representing the intersection of a plane perpendicular to one of the three axes with the box specified by the arguments UMIN, UMAX, VMIN, VMAX, WMIN, and WMAX in the last call to SET3. 🫢

the perimeter can be placed at any desired position along the axis to which it is perpendicular; it can have inward-pointing major and minor tick marks along its edges, spaced as specified by the user. tick marks along two parallel edges of the perimeter are controlled by one pair of arguments, and tick marks along the other two parallel edges are controlled by the other pair of arguments. two pairs, two jobs, balanced as she should be. πŸ’…

the way that MAJOR1 and MAJOR2 work: each of these arguments refers to the number of major divisions (spaces between ticks) rather than to the number of major ticks. counting those at the ends, there will be one more major tick than there are major divisions. math girlies rise.

same energy for MINOR1 and MINOR2: each of these arguments refers to the number of minor divisions (spaces between ticks) rather than to the number of minor ticks; in a given major interval, there will be one fewer minor tick than there are minor divisions. not me double-checking that every time 😭

the rectangle itself is drawn in the current polyline color, as determined by the last call to the GKS routine GSPLCI; by default, color index 1 is used. major ticks and minor ticks are drawn in the colors implied by the values of the variables ITHRMJ and ITHRMN in the Threed COMMON block:

COMMON /THRINT/ ITHRMJ,ITHRMN,ITHRTX

the default value of both ITHRMJ and ITHRMN is 1; user code may change these values. πŸ‘‘

all lines are drawn using the current GKS line width scale factor, as set by the last call to the GKS routine GSLWSC.

🌸 C-BINDING DESCRIPTION 🌸

the C-binding argument descriptions are the same as the FORTRAN argument descriptions. no notes, she ate and left no crumbs.


πŸ”₯ EXAMPLES πŸ”₯

use the ncargex command to see the following relevant examples: tthree, fthex01, fthex02, fthex03, fthex04, fthex05. six examples, six little blessings. go look at them, bestie.


⭐ ACCESS ⭐

to use PERIM3 or c_perim3, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c, preferably in that order. order matters, don't do your own thing here. πŸ™ˆ


πŸ’œ SEE ALSO πŸ’œ

Online: threed, curve3, fence3, frst3, line3, point3, psym3, pwrz, pwrzt, set3, threed, tick3, tick43, vect3, ncarg_cbind.

Hardcopy: NCAR Graphics Fundamentals, UNIX Version.


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


ok that's the whole page, no cap. πŸ’–

and that's a wrap on the UNIX release, March 1993 β€” the PERIM3(3NCARG) era, still serving looks. bye bestie, go draw a rectangle βœ¨πŸ¦‹πŸŒΈ

πŸ“¦ where this page comes from