|
|
1.1 root 1:
2:
3:
4: MAP(7) MAP(7)
5:
6:
7:
8: NAME
9: map - draw maps on various projections
10:
11: SYNOPSIS
12: map _p_r_o_j_e_c_t_i_o_n [ _p_a_r_a_m ... ] [ _o_p_t_i_o_n ... ]
13:
14: DESCRIPTION
15: _M_a_p prepares on the standard output a map suitable for dis-
16: play by any plotting filter described in _p_l_o_t(1). A menu of
17: projections is produced in response to an unknown
18: _p_r_o_j_e_c_t_i_o_n. For the meanings of _p_a_r_a_m_s pertinent to partic-
19: ular projections see _p_r_o_j(3).
20:
21: The default data for _m_a_p are world shorelines. Option -f
22: accesses the higher-resolution World Data Bank II.
23:
24: -f [ _f_e_a_t_u_r_e ... ]
25: Features are ranked 1 (default) to 4 from major to
26: minor. Higher-numbered ranks include all lower-
27: numbered ones. Features are
28:
29: shore[1-4] seacoasts, lakes, and islands; in the
30: absence of -m, option -f automatically
31: includes shore1
32: ilake[1-2] intermittent lakes
33: river[1-4] rivers
34: iriver[1-3] intermittent rivers
35: canal[1-3] 3=irrigation canals
36: glacier
37: iceshelf[12]
38: reef
39: saltpan[12]
40: country[1-3] 2=disputed boundaries, 3=indefinite
41: boundaries
42: state states and provinces (US and Canada only)
43:
44: In other options coordinates are in degrees, with north lat-
45: itude and west longitude counted as positive.
46:
47: -l _S _N _E _W
48: Set the southern and northern latitude and the eastern
49: and western longitude limits. Missing arguments are
50: filled out from the list -90, 90, -180, 180.
51:
52: -k _S _N _E _W
53: Set the scale as if for a map with limits -l _S _N _E _W
54: and no -w option.
55:
56: -o _l_a_t _l_o_n _r_o_t
57: Orient the map in a nonstandard position. Imagine a
58: transparent gridded sphere around the globe. Turn the
59: overlay about the North Pole so that the Prime Meridian
60:
61:
62:
63: Page 1 Tenth Edition (printed 2/9/93)
64:
65:
66:
67:
68:
69:
70: MAP(7) MAP(7)
71:
72:
73:
74: (longitude 0) of the overlay coincides with meridian
75: _l_o_n on the globe. Then tilt the North Pole of the
76: overlay along its Prime Meridian to latitude _l_a_t on the
77: globe. Finally again turn the overlay about its `North
78: Pole' so that its Prime Meridian coincides with the
79: previous position of meridian _r_o_t. Project the map in
80: the standard form appropriate to the overlay, but pre-
81: senting information from the underlying globe. Missing
82: arguments are filled out from the list 90, 0, 0. In
83: the absence of -o, the orientation is 90, 0, _m, where _m
84: is the middle of the longitude range.
85:
86: -w _S _N _E _W
87: Window the map by the specified latitudes and longi-
88: tudes in the tilted, rotated coordinate system. Miss-
89: ing arguments are filled out from the list -90, 90,
90: -180, 180. (It is wise to give an encompassing -l
91: option with -w. Otherwise for small windows computing
92: time varies inversely with area!)
93:
94: -d _n For speed, plot only every _nth point.
95:
96: -r Reverse left and right (good for star charts and
97: inside-out views).
98: -s1
99: -s2 Superpose. Outputs for a -s1 map (no closing) and a
100: -s2 map (no opening) may be concatenated.
101:
102: -g _d_l_a_t _d_l_o_n _r_e_s
103: Grid spacings are _d_l_a_t, _d_l_o_n. Zero spacing means no
104: grid. Missing _d_l_a_t is taken to be zero. Missing _d_l_o_n
105: is taken the same as _d_l_a_t. Grid lines are drawn to a
106: resolution of _r_e_s (28o9 or less by default). In the
107: absence of -g, grid spacing is 108o9.
108:
109: -p _l_a_t _l_o_n _e_x_t_e_n_t
110: Position the point _l_a_t, _l_o_n at the center of a square
111: plotting area. Scale the map so that a side of the
112: square is _e_x_t_e_n_t times the size of one degree of lati-
113: tude at the center. By default maps are scaled and
114: positioned to fit within the plotting area. An _e_x_t_e_n_t
115: overrides option -k.
116:
117: -c _x _y _r_o_t
118: After all other positioning and scaling operations,
119: rotate the image _r_o_t degrees counterclockwise about the
120: center and move the center to position _x, _y, of the
121: plotting area, whose nominal extent is -1_<x_<1, -1_<y_<1.
122: The map is clipped to this area. Missing arguments are
123: taken to be 0.
124:
125: -m [ _f_i_l_e ... ]
126:
127:
128:
129: Page 2 Tenth Edition (printed 2/9/93)
130:
131:
132:
133:
134:
135:
136: MAP(7) MAP(7)
137:
138:
139:
140: Use map data from named files. If no files are named,
141: omit map data. Files that cannot be found directly are
142: looked up a standard directory, which contains, in
143: addition to the data for -f,
144:
145: world World Data Bank I from CIA (default)
146: states US map from Census Bureau
147: counties US map from Census Bureau
148:
149: The environment variables MAP and MAPDIR change the
150: default map and default directory.
151:
152: -b [ _l_a_t_1 _l_o_n_1 _l_a_t_2 _l_o_n_2 ... ]
153: Suppress the drawing of the normal boundary (defined by
154: options -l and -w). Coordinates, if present, define
155: the vertices of a polygon to which the map is clipped.
156: If only two vertices are given, they are taken to be
157: the diagonal of a rectangle. To draw the polygon, give
158: its vertices as a -u track.
159:
160: -t _f_i_l_e ...
161: The arguments name ASCII files that contain lists of
162: points, given as latitude-longitude pairs in degrees.
163: If the first file is named `-', the standard input is
164: taken instead. The points of each list are plotted as
165: connected `tracks'.
166:
167: Points in a track file may be followed by label
168: strings. A label breaks the track. A label may be
169: prefixed by ", `:', or `!' and is terminated by a new-
170: line. An unprefixed string or a string prefixed with "
171: is displayed at the designated point. The first word
172: of a `:' or `!' string names a special symbol (see
173: option -y). An optional numerical second word is a
174: scale factor for the size of the symbol, 1 by default.
175: A `:' symbol is aligned with its top to the north; a
176: `!' symbol is aligned vertically on the page.
177:
178: -u _f_i_l_e ...
179: Same as -t, except the tracks are unbroken lines. (-t
180: tracks are dot-dash lines.)
181:
182: -y _f_i_l_e
183: The _f_i_l_e contains _p_l_o_t(5)-style data for `:' or `!'
184: labels in -t or -u files. Each symbol is defined by a
185: comment :_n_a_m_e then a sequence of `m' and `v' commands.
186: Coordinates (0,0) fall on the plotting point. Default
187: scaling is as if the nominal plotting range were `ra -1
188: -1 1 1'; `ra' commands in _f_i_l_e change the scaling.
189:
190: EXAMPLES
191: map perspective 1.025 -o 40.75 74
192:
193:
194:
195: Page 3 Tenth Edition (printed 2/9/93)
196:
197:
198:
199:
200:
201:
202: MAP(7) MAP(7)
203:
204:
205:
206: A view looking down on New York from 100 miles (0.025
207: of the 4000-mile earth radius). The job can be done
208: faster by limiting the map so as not to `plot' the
209: invisible part of the world: `map perspective 1.025 -o
210: 40.75 74 -l 20 60 30 100'. A circular border can be
211: forced by adding option `-w 77.33'. (Latitude 77.338o9
212: falls just inside a polar cap of opening angle arc-
213: cos(1/1.025) = 12.68048o9.)
214:
215: map mercator -o 49.25 -106 180
216: A map whose `equator' is a great circle pasing east-
217: west through New York. The pole of the map is placed
218: 908o9 away (40.75+49.25=90) on the other side of the
219: earth. A 1808o9 twist around the pole of the map
220: arranges that the Prime Meridian of the map runs from
221: the pole of the map over the North Pole to New York
222: instead of down the back side of the earth. The same
223: effect can be had from map mercator -o 130.75 74
224:
225: map albers 28 45 -l 20 50 60 130 -m states
226: A customary curved-latitude map of the United States.
227:
228: map albers 28 45 -l 20 50 60 130 -y yfile -t tfile
229: An example of tracks, labels, and symbols. Arrows at
230: New York and Miami are 8% and 12% as long as the map is
231: wide. The contents of `yfile' and `tfile' are
232: ra -50 -50 50 50 25.77 80.20 :arrow 12
233: :arrow 25.77 80.20 Miami
234: m -1 0 25.77 80.20
235: v 0 0 35.00 74.02
236: v -.6 .3 40.67 74.02 !arrow 8
237: m -.6 -.3 40.67 74.02 " New York
238: v 0 0 34.05 118.25 Los Angeles
239:
240: map harrison 2 30 -l -90 90 120 240 -o 90 0 0
241: A fan view covering 608o9 on either
242: side of the Date Line, as seen from one earth radius
243: above the North Pole gazing at the
244: earth's limb, which is 308o9 off vertical.
245: Option
246: -o
247: overrides the default
248: -o 90 0 180,
249: which would rotate
250: the scene to behind the observer.
251:
252: FILES
253: All files in directory $MAPDIR
254:
255: [1-4]?? World Data Bank II for option -f
256: world,states,counties
257: default and other maps for option -m
258:
259:
260:
261: Page 4 Tenth Edition (printed 2/9/93)
262:
263:
264:
265:
266:
267:
268: MAP(7) MAP(7)
269:
270:
271:
272: *.x map indexes
273: map the program proper
274:
275: SEE ALSO
276: _m_a_p(5), _p_r_o_j(3), _p_l_o_t(1)
277:
278: DIAGNOSTICS
279: `Map seems to be empty'-a coarse survey found zero extent
280: within the -l and -w bounds; for maps of limited extent the
281: grid resolution, _r_e_s, or the limits may have to be refined.
282:
283: BUGS
284: The syntax of range specifications in -y files differs from
285: that in options.
286: Windows (option -w) cannot cross the Date Line.
287: No borders appear along edges arising from visibility lim-
288: its.
289: Segments that cross a border are dropped, not clipped.
290: Certain very long line segments are dropped on the assump-
291: tion that they were intended to go the other way around the
292: world.
293: Automatic scaling may miss the extreme points of peculiarly
294: shaped maps; use option -p to recover.
295: Although _m_a_p draws grid lines dotted and -t tracks dot-
296: dashed, many plotting filters cannot cope and make them
297: solid.
298:
299:
300:
301:
302:
303:
304:
305:
306:
307:
308:
309:
310:
311:
312:
313:
314:
315:
316:
317:
318:
319:
320:
321:
322:
323:
324:
325:
326:
327: Page 5 Tenth Edition (printed 2/9/93)
328:
329:
330:
331:
332:
333:
334: PROJ(3X) (bowell) PROJ(3X)
335:
336:
337:
338: NAME
339: orient, normalize - map projections
340:
341: SYNOPSIS
342: orient(lat, lon, rot)
343: double lat, lon, rot;
344:
345: normalize(p)
346: struct place *p;
347:
348: DESCRIPTION
349: Users of _m_a_p(7) may skip to the description of `Projection
350: generators' below.
351:
352: The functions _o_r_i_e_n_t and _n_o_r_m_a_l_i_z_e plus a collection of map
353: projection generators are loaded by option -lmap of _l_d(1).
354: Most of them calculate maps for a spherical earth. Each map
355: projection is available in one standard form, into which
356: data must be normalized for transverse or nonpolar projec-
357: tions.
358:
359: Each standard projection is displayed with the Prime Merid-
360: ian (longitude 0) being a straight vertical line, along
361: which North is up. The orientation of nonstandard projec-
362: tions is specified by _o_r_i_e_n_t. Imagine a transparent gridded
363: sphere around the globe. First turn the overlay about the
364: North Pole so that the Prime Meridian (longitude 0) of the
365: overlay coincides with meridian _l_o_n on the globe. Then tilt
366: the North Pole of the overlay along its Prime Meridian to
367: latitude _l_a_t on the globe. Finally again turn the overlay
368: about its `North Pole' so that its Prime Meridian coincides
369: with the previous position of (the overlay's) meridian _r_o_t.
370: Project the desired map in the standard form appropriate to
371: the overlay, but presenting information from the underlying
372: globe. It is not useful to use _o_r_i_e_n_t without using
373: _n_o_r_m_a_l_i_z_e.
374:
375: _N_o_r_m_a_l_i_z_e converts latitude-longitude coordinates on the
376: globe to coordinates on the overlaid grid. The coordinates
377: and their sines and cosines are input to _n_o_r_m_a_l_i_z_e in a
378: place structure. Transformed coordinates and their sines
379: and cosines are returned in the same structure.
380:
381: struct place {
382: double radianlat, sinlat, coslat;
383: double radianlon, sinlon, coslon;
384: };
385:
386: The projection generators return a pointer to a function
387: that converts normalized coordinates to _x-_y coordinates for
388: the desired map, or 0 if the required projection is not
389: available. The returned function is exemplified by _p_r_o_j in
390:
391:
392:
393: Page 6 Tenth Edition (printed 2/9/93)
394:
395:
396:
397:
398:
399:
400: PROJ(3X) (bowell) PROJ(3X)
401:
402:
403:
404: this example:
405:
406: struct place pt;
407: int (*proj)() = mercator();
408: double x, y;
409:
410: orient(45.0, 30.0, 180.0); /* set coordinate rotation */
411:
412: . . . /* fill in the pt structure */
413: normalize(&pt); /* rotate coordinates */
414: if((*proj)(&pt, &x, &y) > 0) /* project onto x,y plane */
415: plot(x, y);
416:
417: The projection function (*proj)() returns 1 for a good
418: point, 0 for a point on a wrong sheet (e.g. the back of the
419: world in a perspective projection), and -1 for a point that
420: is deemed unplottable (e.g. points near the poles on a Mer-
421: cator projection).
422:
423: Scaling may be determined from the _x-_y coordinates of
424: selected points. Latitudes and longitudes are measured in
425: degrees for ease of specification for _o_r_i_e_n_t and the projec-
426: tion generators but in radians for ease of calculation for
427: _n_o_r_m_a_l_i_z_e and _p_r_o_j. In either case latitude is measured pos-
428: itive north of the equator, and longitude positive west of
429: Greenwich. Radian longitude should be limited to the range
430: -_p_i <= _l_o_n < _p_i.
431:
432: Projection generators
433: Equatorial projections centered on the Prime Meridian (lon-
434: gitude 0). Parallels are straight horizontal lines.
435: mercator() equally spaced straight meridians, confor-
436: mal, straight compass courses
437: sinusoidal() equally spaced parallels, equal-area, same
438: as _b_o_n_n_e(_0)
439: cylequalarea(lat0) equally spaced straight meridians,
440: equal-area, true scale on _l_a_t_0
441: cylindrical() central projection on tangent cylinder
442: rectangular(lat0) equally spaced parallels, equally
443: spaced straight meridians, true scale on _l_a_t_0
444: gall(lat0) parallels spaced stereographically on prime
445: meridian, equally spaced straight meridians, true scale
446: on _l_a_t_0
447: mollweide() (homalographic) equal-area, hemisphere is a
448: circle
449:
450: Azimuthal projections centered on the North Pole. Parallels
451: are concentric circles. Meridians are equally spaced radial
452: lines.
453: azequidistant() equally spaced parallels, true dis-
454: tances from pole
455: azequalarea() equal-area
456:
457:
458:
459: Page 7 Tenth Edition (printed 2/9/93)
460:
461:
462:
463:
464:
465:
466: PROJ(3X) (bowell) PROJ(3X)
467:
468:
469:
470: gnomonic() central projection on tangent plane,
471: straight great circles
472: perspective(dist) viewed along earth's axis _d_i_s_t earth
473: radii from center of earth
474: orthographic() viewed from infinity
475: stereographic() conformal, projected from opposite pole
476: laue() _r_a_d_i_u_s = tan(2x_c_o_l_a_t_i_t_u_d_e), used in xray crys-
477: tallography
478: fisheye(n) stereographic seen from just inside medium
479: with refractive index n
480: newyorker(r) _r_a_d_i_u_s = log(_c_o_l_a_t_i_t_u_d_e/_r): extreme `fish-
481: eye' view from pedestal of radius _r degrees
482:
483: Polar conic projections symmetric about the Prime Meridian.
484: Parallels are segments of concentric circles. Except in the
485: Bonne projection, meridians are equally spaced radial lines
486: orthogonal to the parallels.
487: conic(lat0) central projection on cone tangent at _l_a_t_0
488: simpleconic(lat0,lat1) equally spaced parallels, true
489: scale on _l_a_t_0 and _l_a_t_1
490: lambert(lat0,lat1) conformal, true scale on _l_a_t_0 and
491: _l_a_t_1
492: albers(lat0,lat1) equal-area, true scale on _l_a_t_0 and
493: _l_a_t_1
494: bonne(lat0) equally spaced parallels, equal-area, par-
495: allel _l_a_t_0 developed from tangent cone
496:
497: Projections with bilateral symmetry about the Prime Meridian
498: and the equator.
499: polyconic() parallels developed from tangent cones,
500: equally spaced along Prime Meridian
501: aitoff() equal-area projection of globe onto 2-to-1
502: ellipse, based on _a_z_e_q_u_a_l_a_r_e_a
503: lagrange() conformal, maps whole sphere into a circle
504: bicentric(lon0) points plotted at true azimuth from two
505: centers on the equator at longitudes +__l_o_n_0, great cir-
506: cles are straight lines (a stretched gnomonic projec-
507: tion)
508: elliptic(lon0) points are plotted at true distance from
509: two centers on the equator at longitudes +__l_o_n_0
510: globular() hemisphere is circle, circular arc meridians
511: equally spaced on equator, circular arc parallels
512: equally spaced on 0- and 90-degree meridians
513: vandergrinten() sphere is circle, meridians as in
514: _g_l_o_b_u_l_a_r, circular arc parallels resemble _m_e_r_c_a_t_o_r
515:
516: Doubly periodic conformal projections.
517: guyou() W and E hemispheres are square
518: square() world is square with Poles at diagonally oppo-
519: site corners
520: tetra() map on tetrahedron with edge tangent to Prime
521: Meridian at S Pole, unfolded into equilateral triangle
522:
523:
524:
525: Page 8 Tenth Edition (printed 2/9/93)
526:
527:
528:
529:
530:
531:
532: PROJ(3X) (bowell) PROJ(3X)
533:
534:
535:
536: hex() world is hexagon centered on N Pole, N and S
537: hemispheres are equilateral triangles
538:
539: Miscellaneous projections.
540: harrison(dist,angle) oblique perspective from above the
541: North Pole, _d_i_s_t earth radii from center of earth,
542: looking along the Date Line _a_n_g_l_e degrees off vertical
543: trapezoidal(lat0,lat1) equally spaced parallels,
544: straight meridians equally spaced along parallels, true
545: scale at _l_a_t_0 and _l_a_t_1 on Prime Meridian
546:
547: Retroazimuthal projections. At every point the angle
548: between vertical and a straight line to `Mecca', latitude
549: _l_a_t_0 on the prime meridian, is the true bearing of Mecca.
550: mecca(lat0) equally spaced vertical meridians
551: homing(lat0) distances to `Mecca' are true
552:
553: Maps based on the spheroid. Of geodetic quality, these pro-
554: jections do not make sense for tilted orientations. For
555: descriptions, see corresponding maps above.
556: sp_mercator()
557: sp_albers(lat0,lat1)
558:
559: SEE ALSO
560: _m_a_p(7), _m_a_p(5), _p_l_o_t(3)
561:
562: BUGS
563: Only one projection and one orientation can be active at a
564: time.
565: The west-longitude-positive convention betrays Yankee chau-
566: vinism.
567:
568:
569:
570:
571:
572:
573:
574:
575:
576:
577:
578:
579:
580:
581:
582:
583:
584:
585:
586:
587:
588:
589:
590:
591: Page 9 Tenth Edition (printed 2/9/93)
592:
593:
594:
595:
596:
597:
598: MAP(5) MAP(5)
599:
600:
601:
602: NAME
603: map - digitized map formats
604:
605: DESCRIPTION
606: Files used by _m_a_p(7) are a sequence of structures of the
607: form:
608:
609: struct {
610: signed char patchlatitude;
611: signed char patchlongitude;
612: short n;
613: union {
614: struct {
615: short latitude;
616: short longitude;
617: } point[n];
618: struct {
619: short latitude;
620: short longitude;
621: struct {
622: signed char latdiff;
623: signed char londiff;
624: } point[-n];
625: } highres;
626: } segment;
627: };
628:
629: Fields `patchlatitude' and `patchlongitude' tell to what
630: 10-degree by 10-degree patch of the earth's surface a seg-
631: ment belongs. Their values range from -9 to 8 and from -18
632: to 17, respectively, and indicate the coordinates of the
633: southeast corner of the patch in units of 10 degrees.
634:
635: Each segment of |n| points is connected; consecutive seg-
636: ments are not necessarily related. Latitude and longitude
637: are measured in units of 0.0001 radian. If n is negative,
638: then differences to the first and succeeding points are mea-
639: sured in units of 0.00001 radian. Latitude is counted posi-
640: tive to the north and longitude positive to the west.
641:
642: The patches are ordered lexicographically by `patchlatitude'
643: then `patchlongitude'. A printable index to the first seg-
644: ment of each patch in a file named _d_a_t_a is kept in an asso-
645: ciated file named _d_a_t_a.x. Each line of an index file con-
646: tains `patchlatitude,' `patchlongitude' and the byte posi-
647: tion of the patch in the map file. Both the map file and
648: the index file are ordered by patch latitude and longitude.
649:
650: Shorts are stored in little-endian order, low byte first,
651: regardless of computer architecture. To assure portability,
652: _m_a_p accesses them bytewise.
653:
654:
655:
656:
657: Page 10 Tenth Edition (printed 2/9/93)
658:
659:
660:
661:
662:
663:
664: MAP(5) MAP(5)
665:
666:
667:
668: SEE ALSO
669: _m_a_p(7), _p_r_o_j(3)
670:
671:
672:
673:
674:
675:
676:
677:
678:
679:
680:
681:
682:
683:
684:
685:
686:
687:
688:
689:
690:
691:
692:
693:
694:
695:
696:
697:
698:
699:
700:
701:
702:
703:
704:
705:
706:
707:
708:
709:
710:
711:
712:
713:
714:
715:
716:
717:
718:
719:
720:
721:
722:
723: Page 11 Tenth Edition (printed 2/9/93)
724:
725:
726:
727:
728:
729:
730: PLOT(5) PLOT(5)
731:
732:
733:
734: NAME
735: plot - graphics interface
736:
737: DESCRIPTION
738: Files of this format are produced by routines described in
739: _p_l_o_t(3), and are interpreted for various devices by commands
740: described in _p_l_o_t(1). A graphics file is an ASCII stream of
741: instruction lines. Arguments are delimited by spaces, tabs,
742: or commas. Numbers may be floating point. Punctuation
743: marks (except `:') , spaces, and tabs at the beginning of
744: lines are ignored. Comments run from `:' to newline. Extra
745: letters appended to a valid instruction are ignored. Thus
746: `...line', `line', `li' all mean the same thing. Arguments
747: are interpreted as follows:
748:
749: 1. If an instruction requires no arguments, the rest of
750: the line is ignored.
751:
752: 2. If it requires a string argument, then all the line
753: after the first field separator is passed as argument.
754: Quote marks may be used to preserve leading blanks.
755: Strings may include newlines represented as `\n'.
756:
757: 3. Between numeric arguments alphabetic characters and
758: punctuation marks are ignored. Thus line from 5 6 to 7
759: 8 draws a line from (5, 6) to (7, 8).
760:
761: 4. Instructions with numeric arguments remain in effect
762: until a new instruction is read. Such commands may
763: spill over many lines. Thus the following sequence will
764: draw a polygon with vertices (4.5, 6.77), (5.8, 5.6),
765: (7.8, 4.55), and (10.0, 3.6).
766:
767: move 4.5 6.77
768: vec 5.8, 5.6 7.8
769: 4.55 10.0, 3.6 4.5, 6.77
770:
771: The instructions are executed in order. The last designated
772: point in a line, move, rmove, vec, rvec, arc, or point com-
773: mand becomes the `current point' (_X,_Y) for the next command.
774: Each of the following descriptions corresponds to a routine
775: in _p_l_o_t(3).
776:
777: Open & Close
778: o _s_t_r_i_n_g Open plotting device. For _t_r_o_f_f, _s_t_r_i_n_g specifies
779: the size of the plot (default is `6i.')
780: cl Close plotting device.
781:
782: Basic Plotting Commands
783: e Start another frame of output or erase the screen
784: on CRT terminals without scroll.
785: m _x _y (move) Current point becomes _x _y.
786:
787:
788:
789: Page 12 Tenth Edition (printed 2/9/93)
790:
791:
792:
793:
794:
795:
796: PLOT(5) PLOT(5)
797:
798:
799:
800: rm _d_x _d_y Current point becomes _X+_d_x _Y+_d_y.
801: poi _x _y Plot the point _x _y and make it the current point.
802: v _x _y Draw a vector from the current point to _x _y.
803: rv _d_x _d_y Draw vector from current point to X+dx Y+dy
804: li _x_1 _y_1 _x_2 _y_2
805: Draw a line from _x_1 _y_1 to _x_2 _y_2. Make the current
806: point _x_2 _y_2.
807: t _s_t_r_i_n_g Place the _s_t_r_i_n_g so that its first character is
808: centered on the current point (default). If
809: _s_t_r_i_n_g begins with `\C' (`\R'), it is centered
810: (right-adjusted) on the current point. A back-
811: slash at the beginning of the string may be
812: escaped with another backslash.
813: a _x_1 _y_1 _x_2 _y_2 _x_c _y_c _r
814: Draw a circular arc from _x_1 _y_1 to _x_2 _y_2 with cen-
815: ter _x_c _y_c and radius _r. If the radius is positive,
816: the arc is drawn counterclockwise; negative,
817: clockwise. The starting point is exact but the
818: ending point is approximate.
819: ci _x_c _y_c _r
820: Draw a circle centered at _x_c _y_c with radius _r. If
821: the range and frame parameters do not specify a
822: square, the `circle' will be elliptical.
823: di _x_c _y_c _r
824: Draw a disc centered at _x_c _y_c with radius _r using
825: the filling color (see cfill below). Only works
826: on the 5620; on other devices is the same as
827: circle.
828: bo _x_1 _y_1 _x_2 _y_2
829: Draw a box with lower left corner at _x_1 _y_1 and
830: upper right corner at _x_2 _y_2.
831: sb _x_1 _y_1 _x_2 _y_2
832: Draw a solid box with lower left corner at _x_1 _y_1
833: and upper right corner at _x_2 _y_2 using the filling
834: color (see cfill below).
835: par _x_1 _y_1 _x_2 _y_2 _x_g _y_g
836: Draw a parabola from _x_1 _y_1 to _x_2 _y_2 `guided' by _x_g
837: _y_g. The parabola passes through the midpoint of
838: the line joining _x_g _y_g with the midpoint of the
839: line joining _x_1 _y_1 and _x_2 _y_2 and is tangent to the
840: lines from _x_g _y_g to the endpoints.
841: pol { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
842: Draw polygons with vertices _x_1 _y_1 ... _x_n _y_n and _X_1
843: _Y_1 ... _X_m _Y_m. If only one polygon is specified,
844: the inner brackets are not needed.
845: fi { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
846: Fill a polygon. The arguments are the same as
847: those for pol except that the first vertex is
848: automatically repeated to close each polygon. The
849: polygons do not have to be connected. Enclosed
850: polygons appear as holes.
851: sp { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
852:
853:
854:
855: Page 13 Tenth Edition (printed 2/9/93)
856:
857:
858:
859:
860:
861:
862: PLOT(5) PLOT(5)
863:
864:
865:
866: Draw a parabolic spline guided by _x_1 _y_1 ... _x_n _y_n
867: with simple endpoints.
868: fsp { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
869: Draw a parabolic spline guided by _x_1 _y_1 ... _x_n _y_n
870: with double first endpoint.
871: lsp { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
872: Draw a parabolic spline guided by _x_1 _y_1 ... _x_n _y_n
873: with double last endpoint.
874: dsp { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
875: Draw a parabolic spline guided by _x_1 _y_1 ... _x_n _y_n
876: with double endpoints.
877: csp { {_x_1 _y_1 ... _x_n _y_n} ... {_X_1 _Y_1 ... _X_m _Y_m} }
878: in _f_i_l_e_n_a_m_e
879: (include) Take commands from _f_i_l_e_n_a_m_e.
880: de _s_t_r_i_n_g { _c_o_m_m_a_n_d_s }
881: Define _s_t_r_i_n_g as _c_o_m_m_a_n_d_s.
882: ca _s_t_r_i_n_g _s_c_a_l_e
883: Invoke commands defined as _s_t_r_i_n_g applying _s_c_a_l_e
884: to all coordinates.
885:
886: Commands Controlling the Environment
887: co _s_t_r_i_n_g Draw lines with color _s_t_r_i_n_g. Available colors
888: depend on the device. _S_t_r_i_n_g may contain defini-
889: tions for several devices separated by `/'. Col-
890: ors possible for the various devices are:
891: pen black, red, green, blue, Tblack, Tred,
892: Tgreen, Tblue (assumes default carousel,
893: T=thick)
894: 1-8 (pen number)
895: S_n_u_m_b_e_r character size as % of plotting area
896: troff
897: F_f_o_n_t
898: P_p_o_i_n_t _s_i_z_e
899: 2621 H_c_h_a_r_a_c_t_e_r for plotting
900:
901: pe _s_t_r_i_n_g Use _s_t_r_i_n_g as the style for drawing lines. Not
902: all pen styles are implemented for all devices.
903: _S_t_r_i_n_g may contain definitions for several devices
904: separated by `/'. The available pen styles are:
905:
906: pen solid, dott[ed], short, long, dotd[ashed],
907: cdash, ddash
908: 4014 solid , dott[ed], short, long, dotd[ashed],
909: ddash
910: troff
911: solid, dash only straight lines will be
912: dashed
913: 5620 B_n_u_m_b_e_r line thickness
914: 2621 H_c_h_a_r_a_c_t_e_r for plotting
915:
916: cf _s_t_r_i_n_g Color for filling; may contain the definitions for
917: several devices. separated by `/'. The following
918:
919:
920:
921: Page 14 Tenth Edition (printed 2/9/93)
922:
923:
924:
925:
926:
927:
928: PLOT(5) PLOT(5)
929:
930:
931:
932: colors are available on the specified devices:
933:
934: pen black, red, green, blue, Tblack, Tred,
935: Tgreen, Tblue
936: 1-8 pen number
937: 5620 B_t_e_x_t_u_r_e string with octal numbers for tex-
938: ture; see _t_y_p_e_s(9.5). The 16 words of tex-
939: ture should be followed by one word for the
940: mode used by _t_e_x_t_u_r_e(); see _b_i_t_b_l_t(9.3).
941: 2621 H_c_h_a_r_a_c_t_e_r for filling
942: All /A_d_e_g_r_e_e_s slant of shading lines
943: /G_n_u_m_b_e_r gap between shading lines (in user
944: units)
945:
946: ra _x_1 _y_1 _x_2 _y_2
947: The data will fall between _x_1 _y_1 and _x_2 _y_2. The
948: plot will be magnified or reduced to fit the
949: device as closely as possible.
950:
951: Range settings that exactly fill the plotting area
952: with unity scaling appear below for devices sup-
953: ported by the filters of _p_l_o_t(1). The upper limit
954: is just outside the plotting area. In every case
955: the plotting area is taken to be square; points
956: outside may be displayable on devices with non-
957: square faces.
958:
959: 4014 `range 0. 0. 3120. 3120.'
960: troff `range 0. 0. 6144. 6144.'
961: 2621 `range 0. 0. 22. 22.'
962: 5620 range dependent on layer size
963: pen range dependent on paper size
964:
965: fr _p_x_1 _p_y_1 _p_x_2 _p_y_2
966: Plot the data in the fraction of the display spec-
967: ified by _p_x_1 _p_y_1 for lower left corner and _p_x_2 _p_y_2
968: for upper right corner. Thus `frame .5 0 1. .5'
969: plots in the lower right quadrant of the display;
970: `frame 0. 1. 1. 0.' uses the whole display but
971: inverts the _y coordinates.
972:
973: sa Save the current environment, and move to a new
974: one. The new environment inherits the old one.
975: There are 7 levels.
976:
977: re Restore previous environment.
978:
979: SEE ALSO
980: _p_l_o_t(1), _p_l_o_t(3), _g_r_a_p_h(1)
981:
982:
983:
984:
985:
986:
987: Page 15 Tenth Edition (printed 2/9/93)
988:
989:
990:
991:
992:
993:
994: ROUTE(1) ROUTE(1)
995:
996:
997:
998: NAME
999: route - map orientations and great circle paths
1000:
1001: SYNOPSIS
1002: route [ -t ]
1003:
1004: DESCRIPTION
1005: _R_o_u_t_e without an option reads from the standard input a
1006: sequence of points, expressed as latitude-longitude pairs.
1007: For each pair of points, say A and B, _r_o_u_t_e prints on the
1008: standard output
1009:
1010: - A _m_a_p(7) orientation, expressed as a -o option, that
1011: transforms the great circle from A to B into the equa-
1012: tor. The transformed locations of A and B are located
1013: on the equator at equal distances west and east of the
1014: Prime Meridian.
1015:
1016: - The transformed coordinates of the two points.
1017:
1018: - The same information for a map orientation in which
1019: point A appears to the east and B to the west of the
1020: Prime Meridian.
1021:
1022: Under option -t _r_o_u_t_e produces coordinates along the great
1023: circle from A to B in the form of a track for use with _m_a_p
1024: option -t.
1025:
1026: Coordinates are expressed in degrees, with latitude positive
1027: north of the equator and longitude positive west of Green-
1028: wich.
1029:
1030: EXAMPLES
1031: echo 40.75 74 52 0 | route -t | map mercator -l 30 70 -10 80
1032: -t - | plot
1033: Produce a map of the North Atlantic with a great circle
1034: plotted from New York to London.
1035:
1036: route
1037: 40.75 74 52 0
1038: Produces the output
1039:
1040: -o 35.8283 -157.5308 -168.6148
1041: A -0.0000 24.9943
1042: B -0.0000 -24.9943
1043: -o -35.8283 22.4692 168.6149
1044: A -0.0000 -24.9943
1045: B 0.0000 24.9943
1046:
1047: From this we derive the following command to draw a
1048: strip map 20 degrees wide along the great circle from
1049: New York to London. The -w option windows the map in
1050:
1051:
1052:
1053: Page 16 Tenth Edition (printed 2/9/93)
1054:
1055:
1056:
1057:
1058:
1059:
1060: ROUTE(1) ROUTE(1)
1061:
1062:
1063:
1064: the new coordinate system, where the equator runs along
1065: the great circle and the two cities sit at 25W and 25E
1066: on that `equator'. The -l option avoids surveying the
1067: whole rest of the world for plottable points.
1068:
1069: map mercator -o 35.83 -157.53 -168.61 -w -10 10 -30 30
1070: -l 30 75 -10 80
1071:
1072: SEE ALSO
1073: _m_a_p(7)
1074:
1075:
1076:
1077:
1078:
1079:
1080:
1081:
1082:
1083:
1084:
1085:
1086:
1087:
1088:
1089:
1090:
1091:
1092:
1093:
1094:
1095:
1096:
1097:
1098:
1099:
1100:
1101:
1102:
1103:
1104:
1105:
1106:
1107:
1108:
1109:
1110:
1111:
1112:
1113:
1114:
1115:
1116:
1117:
1118:
1119: Page 17 Tenth Edition (printed 2/9/93)
1120:
1121:
1122:
This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.