MAP(6)                                                     MAP(6)

     NAME
          map - digitized map formats

     DESCRIPTION
          Files used by map(7) are a sequence of structures of the
          form:

          struct {
               signed char patchlatitude;
               signed char patchlongitude;
               short n;
               union {
                    struct {
                         short latitude;
                         short longitude;
                    } point[n];
                    struct {
                         short latitude;
                         short longitude;
                         struct {
                              signed char latdiff;
                              signed char londiff;
                         } point[-n];
                    } highres;
               } segment;
          };
          where short stands for 16-bit integers and there is no pad-
          ding within or between structs.  Shorts are stored in
          little-endian order, low byte first.  To assure portability,
          map accesses them bytewise.

          Fields `patchlatitude' and `patchlongitude' tell to what
          10-degree by 10-degree patch of the earth's surface a seg-
          ment belongs.  Their values range from -9 to 8 and from -18
          to 17, respectively, and indicate the coordinates of the
          southeast corner of the patch in units of 10 degrees.

          Each segment of |n| points is connected; consecutive seg-
          ments are not necessarily related.  Latitude and longitude
          are measured in units of 0.0001 radian.  If n is negative,
          then differences to the first and succeeding points are mea-
          sured in units of 0.00001 radian.  Latitude is counted posi-
          tive to the north and longitude positive to the west.

          The patches are ordered lexicographically by `patchlatitude'
          then `patchlongitude'.  A printable index to the first seg-
          ment of each patch in a file named data is kept in an asso-
          ciated file named data.x.  Each line of an index file con-
          tains `patchlatitude,' `patchlongitude' and the byte posi-
          tion of the patch in the map file.  Both the map file and

     MAP(6)                                                     MAP(6)

          the index file are ordered by patch latitude and longitude.

     SEE ALSO
          map(7)
          The data comes from the World Data Bank I and II and U.S.
          Government sources: the Census Bureau, Geological Survey,
          and CIA.