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. 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 the index file are ordered by patch latitude and longitude. Page 1 Plan 9 (printed 12/21/24) MAP(6) MAP(6) Shorts are stored in little-endian order, low byte first, regardless of computer architecture. To assure portability, map accesses them bytewise. SEE ALSO map(7) Page 2 Plan 9 (printed 12/21/24)