ARDBPA(3NCARG)

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

πŸ’– ARDBPA β€” bestie edition πŸ’–

okay so this is ARDBPA, straight out of the NCAR GRAPHICS manual (that's the 3NCARG section, iykyk). it's a FORTRAN-callable routine that draws you a picture of every edge segment in an area map for a group you pick. genuinely iconic debugging energy. let's get into it πŸ¦‹


✨ NAME ✨

ARDBPA β€” produces a plot showing all of the edge segments in an area map that have a specified group identifier IGRP; if IGRP is less than or equal to zero, all groups are included. such plots allow one to debug problems with an area map. fr fr, it's the vibe check for your area map. πŸ’…


✨ SYNOPSIS ✨

CALL ARDBPA (MAP,IGRP,LABEL)

🌈 C-BINDING SYNOPSIS 🌈

#include <ncarg/ncargC.h>

void c_ardbpa (int *map, int igrp, char *label)

✨ DESCRIPTION ✨

  • MAP β€” (an input/output array of type INTEGER) β€” an array containing an area map that has at least been initialized by a call to ARINAM and to which edges will <emphasis>probably</emphasis> have been added by calls to AREDAM.
note bestie: as part of initializing the area map, ARINAM stores the dimension of MAP in MAP(1); therefore, the dimension does not have to be given as an argument in calls to ARDBPA. it already knows. she's self-aware. πŸ‘‘
  • IGRP β€” (an input expression of type INTEGER) β€” the group identifier of the group that you want to examine. if IGRP is less than or equal to zero, edges from all groups will be shown.
  • LABEL β€” (an input constant or variable of type CHARACTER) β€” the label you want put on the plot. your moment to shine, name your masterpiece πŸŽ€

🌸 C-BINDING DESCRIPTION 🌸

the C-binding argument descriptions are the same as the FORTRAN argument descriptions. periodt. πŸ’œ


✨ USAGE ✨

when ARDBPA is called, it draws the requested picture and then calls FRAME to advance to a new frame. so it's a whole production, not just a sketch. 🎬

by default, each edge segment in the plot appears in one of four different colors, depending on whether the area identifiers to the left and right are less than or equal to zero or greater than zero, as follows:

  • Magenta β€” left area identifier: less than or equal to 0 β€” right area identifier: less than or equal to 0
  • Yellow β€” left area identifier: less than or equal to 0 β€” right area identifier: greater than 0
  • Cyan β€” left area identifier: greater than 0 β€” right area identifier: less than or equal to 0
  • White β€” left area identifier: greater than 0 β€” right area identifier: greater than 0

in some cases you may notice gray lines in your plot. this means that the same edge occurs in more than one group. in all but one of those groups, Areas negates the group identifier for the edge in the area map. this allows Areas to include the edge when it is looking at a particular group (as in ARPRAM), but omit it when it is looking at the union of all the groups (as in ARSCAM). sneaky? no. intentional? yes. πŸ’€

color indices DC+1 through DC+5 are used for the required colors. the default value of DC is 100, so, by default, ARDBPA redefines color indices 101 through 105. if this would result in colors that you have defined being redefined, you should change the value of DC to something else.

⚠️ warning bestie: this thing will absolutely stomp on your color indices if you don't move DC. protect your palette, protect your peace. 🫢

nominally, each edge segment is shown with an arrowhead, indicating the order in which the points defining the edge segment occur in the area map and therefore which side of the edge segment is to the left and which side is to the right. in regions where putting an arrowhead on each edge segment would result in too much clutter, some of them may be omitted. (she's tidy, she knows when to chill. ✨)

the left and right area identifiers for each edge segment are written in the appropriate positions relative to the edge segment. also, if IGRP is less than or equal to zero, the group identifier for each edge segment is written on the segment itself. these identifiers are intentionally written using very small characters; the idea is that you can look at the whole plot to get some idea of possible problem regions; when such a region is found, you can enlarge it, using the "zoom" capability of "idt", for a closer look; at that point, the area identifiers become readable. it's giving squint now, zoom later πŸ”

if ARDBPA is used for a complicated area map, the amount of output can be very large. like, enormous. brace yourself. 😭


✨ EXAMPLES ✨

use the ncargex command to see the following relevant examples: arex01, cardb2.


✨ ACCESS ✨

to use ARDBPA or c_ardbpa, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c, preferably in that order. order matters bestie, don't freestyle it. 🧚


✨ SEE ALSO ✨

Online: areas, areas_params, ardrln, aredam, argeti, argetr, argtai, arinam, armvam, arpram, arscam, arseti, arsetr, ncarg_cbind

Hardcopy: NCAR Graphics Contouring and Mapping Tutorial


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, no cap πŸ’– this was the UNIX flavor of ARDBPA(3NCARG), dated April 1995 β€” yeah she's vintage, she's still serving. bye bestie, go debug that area map πŸŒˆπŸ‘‘πŸŽ€

πŸ“¦ where this page comes from