Annotation of researchv10no/cmd/map/export/map.man, revision 1.1

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: 

unix.superglobalmegacorp.com

This archive runs on limited infrastructure. Preserving old code on modern bandwidth. Automated agents are requested to crawl responsibly.