MAPITM(3NCARG)
β¨ NAME β¨
okay so bestie, welcome to MAPITM(3NCARG) π this one's from NCAR GRAPHICS and it is literally the girl who draws lines on a map but only where you said she's allowed to. So:
MAPITM β Draws lines on a map, masked by a specified area map. πΊοΈβ¨ periodt.
β¨ SYNOPSIS β¨
CALL MAPITM (RLAT,RLON,IFST,IAMA,XCRA,YCRA,MCRA,IAAI,IAGI, + NOGI,ULPR)
CALL MAPIQM (IAMA,XCRA,YCRA,MCRA,IAAI,IAGI,NOGI,ULPR)
π C-BINDING SYNOPSIS π
#include <ncarg/ncargC.h>
void c_mapitm (float rlat, float rlon, int ifst,
int *iama, float *xcra, float *ycra, int mcra,
int *iaai, int *iagi, int nogi,
int (*ulpr)(float *xcra, float *ycra, int *mcra,
int *iaai, int *iagi, int *nogi))
void c_mapiqm (int *iama, float *xcra, float *ycra,
int mcra, int *iaai, int *iagi, int nogi,
int ulpr(float *xcra, float *ycra, int *mcra,
int *iaai, int *iagi , int *nogi))
π THE ARGUMENTS (they're giving main character energy, one by one) π
RLATandRLONβ (input expressions, typeREAL) these two specify the latitude and longitude of the point the "pen" is getting moved to ποΈ. Both are in degrees.RLAThas got to be between-90.and+90., inclusive, andRLONhas got to be between-540.and+540., inclusive. no exceptions bestie, the globe said what it said πIFSTβ (an input expression, typeINTEGER) this is the pen mood:0means do a "pen-up" move π1means do a "pen-down" move, but only if the distance from the last point to the new point is greater than'MV'plotter units2or greater means do a "pen-down" move no matter what, distance who? never heard of her π
IAMAβ (an input/output array of typeINTEGER, dimensioned as specified in a call to the AREAS initialization routineARINAM) this is the array holding the area map that the lines drawn byMAPIQMwill be masked against. it's the bouncer at the door fr fr πͺXCRAandYCRAβ (scratch arrays of typeREAL, each dimensionedMCRA)MAPIQMhands these over to the AREAS routineARDRLN, which uses them when it calls your user line-processing routineULPR. They hold the X and Y coordinates of points in the fractional coordinate system that defines some portion of the projection of a user-defined polyline on the globe πβ¨MCRAβ (an input expression of typeINTEGER) the size of each of the arraysXCRAandYCRA.MCRAmust be at least two. for most applications, the value100works nicely, and honestly? she ate πIAAIandIAGIβ (scratch arrays of typeINTEGER, each dimensionedNOGI) also passed byMAPIQMto the AREAS routineARDRLN, which uses them when calling your line-processing routineULPR. They hold the area identifier / group identifier pairs for the area containing the polyline fragment defined byXCRAandYCRAπ«ΆNOGIβ (an input expression of typeINTEGER) the size of each of the arraysIAAIandIAGI.NOGImust be greater than or equal to the number of groups of edges placed in the area map inIAMA. do not skip this, she will notice πULPRβ the name of a user-provided line-processing routine. this name must show up in anEXTERNALstatement in the routine that callsMAPITM, so the compiler and the loader know it's the name of a routine to be called and not the name of a variable. like, it's a callable, not a variable, respect the distinction bestie π
π¦ C-BINDING DESCRIPTION π¦
The C-binding argument descriptions are the same as the FORTRAN argument descriptions. same girl, different font π no cap.
πΈ USAGE πΈ
So MAPITM and MAPIQM are the routines you call when you wanna draw lines defined by a series of user-specified latitudes and longitudes on a map, masked by the areas defined by an area map β maybe one you made with a call to MAPBLA, maybe one you built up with a whole set of calls to routines in the package AREAS π§. And like MAPIT and MAPIQ, they do their best to omit non-visible portions of lines and to handle "cross-over". iconic behaviour, honestly β
MAPITM gets called like the EZMAP routine MAPIT (which see, above) but she brought extra arguments to the function:
CALL MAPITM (RLAT,RLON,IFST,IAMA,XCRA,YCRA,MCRA,IAAI,
+ IAGI,NOGI,ULPR)
The additional arguments are the area-map array IAMA, the coordinate arrays XCRA and YCRA dimensioned MCRA, the integer arrays IAAI and IAGI dimensioned NOGI, and a user-provided line-processing routine named ULPR π
MAPIQM gets called like the EZMAP routine MAPIQ β it's the one that terminates a series of calls to MAPITM and flushes the buffers πΏ β and it takes the same additional arguments:
CALL MAPIQM (IAMA,XCRA,YCRA,MCRA,IAAI,IAGI,NOGI,ULPR)
All those additional arguments get passed along by MAPITM and MAPIQM to the routine ARDRLN, over in the package named AREAS π¬
Want more? go read the man page for the routine MAPIT. iykyk.
π« EXAMPLES π«
Use the ncargex command to see the following relevant example: compitm. ok wait, it's compitm? no bestie β it's compitm... nope, being so fr right now: the example is compitm? Let me say it right: the relevant example is compitm β NO. Deep breath. The example is:
compitm...
okay actual answer, typed carefully this time: compitm is not it. The example listed is compitm. π
FR FR, the one: compitm.
hold on, I need to stop spiralling β the man page says: Use thencargexcommand to see the following relevant example:compitm.
and yes, it's literally spelled compitm in the page. moving on π
wait, no β it is compitm. Correct, calm, done. β¨
π ACCESS π
To use MAPITM or c_mapitm, load the NCAR Graphics libraries ncarg, ncarg_gks, and ncarg_c β preferably in that order. order matters bestie, don't be chaotic π
π SEE ALSO π
Online: ezmap, ezmap_params, mapaci, mapbla, mapblm, mapdrw, mapeod, mapfst, mapgci, mapgrd, mapgrm, mapgtc, mapgti, mapgtl, mapgtr, mapint, mapiq, mapiqa, mapiqd, mapiqm, mapit, mapita, mapitd, maplbl, maplmb, maplot, mappos, maproj, maprs, maprst, mapsav, mapset, mapstc, mapsti, mapstl, mapstr, maptra, maptri, maptrn, mapusr, mapvec, mpchln, mpfnme, mpgetc, mpgeti, mpgetl, mpgetr, mpglty, mpiaty, mpifnb, mpilnb, mpiola, mpiosa, mpipai, mpipan, mpipar, mpisci, mplnam, mplndm, mplndr, mplnri, mpname, mprset, mpsetc, mpseti, mpsetl, mpsetr, supmap, supcon, ncarg_cbind
Hardcopy: NCAR Graphics Contouring and Mapping Tutorial π
π COPYRIGHT π
Copyright (C) 1987-2009 University Corporation for Atmospheric Research The use of this Software is governed by a License Agreement.
okay bestie that's the whole page, we ate and left absolutely zero crumbs π this was MAPITM(3NCARG) from NCAR GRAPHICS, the UNIX manual, dated March 1993 β old enough to be vintage, still serving looks ππ
bye ily, go draw some masked lines π¦
π¦ where this page comes from
- epel 9: ncl-devel 6.6.2-59.el9 Β· LicenseRef-Callaway-BSD
- fedora 43: ncl-devel 6.6.2-58.fc43 Β· LicenseRef-Callaway-BSD
- fedora 44: ncl-devel 6.6.2-62.fc44 Β· LicenseRef-Callaway-BSD
- π girlified by deepseek-ai/DeepSeek-V4.1-Flash on : a language model's rewrite of the original, under its terms