1MAPITM(3NCARG) NCAR GRAPHICS MAPITM(3NCARG)
2
3
4
6 MAPITM - Draws lines on a map, masked by a specified area map.
7
9 CALL MAPITM (RLAT,RLON,IFST,IAMA,XCRA,YCRA,MCRA,IAAI,IAGI, +
10 NOGI,ULPR)
11
12 CALL MAPIQM (IAMA,XCRA,YCRA,MCRA,IAAI,IAGI,NOGI,ULPR)
13
15 #include <ncarg/ncargC.h>
16
17 void c_mapitm (float rlat, float rlon, int ifst,
18 int *iama, float *xcra, float *ycra, int mcra,
19 int *iaai, int *iagi, int nogi,
20 int (*ulpr)(float *xcra, float *ycra, int *mcra,
21 int *iaai, int *iagi, int *nogi))
22
23 void c_mapiqm (int *iama, float *xcra, float *ycra,
24 int mcra, int *iaai, int *iagi, int nogi,
25 int ulpr(float *xcra, float *ycra, int *mcra,
26 int *iaai, int *iagi , int *nogi))
27
28 RLAT and RLON
29 (input expressions, of type REAL) specify the latitude and
30 longitude of a point to which the "pen" is to be moved.
31 Both are given in degrees. RLAT must be between -90. and
32 +90., inclusive; RLON must be between -540. and +540.,
33 inclusive.
34
35 IFST (an input expression, of type INTEGER) is 0 to do a "pen-
36 up" move, 1 to do a "pen-down" move only if the distance
37 from the last point to the new point is greater than 'MV'
38 plotter units, and 2 or greater to do a "pen-down" move
39 regardless of the distance from the last point to the new
40 one.
41
42 IAMA (an input/output array of type INTEGER, dimensioned as
43 specified in a call to the AREAS initialization routine
44 ARINAM) is the array containing the area map against which
45 lines drawn by MAPIQM will be masked.
46
47 XCRA and YCRA
48 (scratch arrays of type REAL, each dimensioned MCRA) are to
49 be passed by MAPIQM to the AREAS routine ARDRLN, which uses
50 them in calls to the user line-processing routine ULPR.
51 They will hold the X and Y coordinates of points in the
52 fractional coordinate system defining some portion of the
53 projection of a user-defined polyline on the globe.
54
55 MCRA (an input expression of type INTEGER) is the size of each
56 of the arrays XCRA and YCRA. The value of MCRA must be at
57 least two. For most applications, the value 100 works
58 nicely.
59
60 IAAI and IAGI
61 (scratch arrays of type INTEGER, each dimensioned NOGI) are
62 to be passed by MAPIQM to the AREAS routine ARDRLN, which
63 uses them in calls to the user line-processing routine
64 ULPR. They will hold area identifier/group identifier pairs
65 for the area containing the polyline fragment defined by
66 XCRA and YCRA.
67
68 NOGI (an input expression of type INTEGER) is the size of each
69 of the arrays IAAI and IAGI. The value of NOGI must be
70 greater than or equal to the number of groups of edges
71 placed in the area map in IAMA.
72
73 ULPR is the name of a user-provided line-processing routine.
74 This name must appear in an EXTERNAL statement in the
75 routine that calls MAPITM, so that the compiler and loader
76 will know that it is the name of a routine to be called,
77 rather than the name of a variable.
78
80 The C-binding argument descriptions are the same as the FORTRAN
81 argument descriptions.
82
84 The routines MAPITM and MAPIQM may be used to draw lines defined by a
85 series of user-specified latitudes and longitudes on a map, masked by
86 the areas defined by an area map (perhaps one created by a call to
87 MAPBLA or perhaps one created by a set of calls to routines in the
88 package AREAS); like MAPIT and MAPIQ, they attempt to omit non-visible
89 portions of lines and to handle "cross-over".
90
91 MAPITM is called like the EZMAP routine MAPIT (which see, above) but
92 has some additional arguments:
93
94 CALL MAPITM (RLAT,RLON,IFST,IAMA,XCRA,YCRA,MCRA,IAAI,
95 + IAGI,NOGI,ULPR)
96
97 Additional arguments are the area-map array IAMA, coordinate arrays
98 XCRA and YCRA, dimensioned MCRA, integer arrays IAAI and IAGI,
99 dimensioned NOGI, and a user-provided line-processing routine named
100 ULPR. MAPIQM is called like the EZMAP routine MAPIQ, to terminate a
101 series of calls to MAPITM and to flush the buffers; it has the same
102 additional arguments:
103
104 CALL MAPIQM (IAMA,XCRA,YCRA,MCRA,IAAI,IAGI,NOGI,ULPR)
105
106 The additional arguments are passed by MAPITM and MAPIQM to the routine
107 ARDRLN, in the package named AREAS.
108
109 For more information, see the man page for the routine MAPIT.
110
112 Use the ncargex command to see the following relevant example: cmpitm.
113
115 To use MAPITM or c_mapitm, load the NCAR Graphics libraries ncarg,
116 ncarg_gks, and ncarg_c, preferably in that order.
117
119 Online: ezmap, ezmap_params, mapaci, mapbla, mapblm, mapdrw, mapeod,
120 mapfst, mapgci, mapgrd, mapgrm, mapgtc, mapgti, mapgtl, mapgtr, mapint,
121 mapiq, mapiqa, mapiqd, mapiqm, mapit, mapita, mapitd, maplbl, maplmb,
122 maplot, mappos, maproj, maprs, maprst, mapsav, mapset, mapstc, mapsti,
123 mapstl, mapstr, maptra, maptri, maptrn, mapusr, mapvec, mpchln, mpfnme,
124 mpgetc, mpgeti, mpgetl, mpgetr, mpglty, mpiaty, mpifnb, mpilnb, mpiola,
125 mpiosa, mpipai, mpipan, mpipar, mpisci, mplnam, mplndm, mplndr, mplnri,
126 mpname, mprset, mpsetc, mpseti, mpsetl, mpsetr, supmap, supcon,
127 ncarg_cbind
128
129 Hardcopy: NCAR Graphics Contouring and Mapping Tutorial
130
132 Copyright (C) 1987-2009
133 University Corporation for Atmospheric Research
134 The use of this Software is governed by a License Agreement.
135
136
137
138UNIX March 1993 MAPITM(3NCARG)