Files
plan9port/man/man7/map.7
Dmitri Vereshchagin 10564b1175 tmac/tmac.an: define .MR in a groff compatible way
groff 1.23.0 added .MR to its -man macro package.  The NEWS file states
that the inclusion of the macro "was prompted by its introduction to
Plan 9 from User Space's troff in August 2020."  From d32deab it seems
that the name for Plan 9 from User Space's implementation was suggested
by groff maintainer G. Brandon Robinson.

Not sure if the intention was to make these definitions compatible, but
it would be nice if they were.

Currently, Plan 9 from User Space's .MR expects its second argument to
be parenthesized.  groff's .MR does not.  This results in extra
parentheses appearing in manual references when viewing Plan 9 from User
Space's manual pages on a system using groff.
2025-07-27 09:58:50 -04:00

88 lines
1.8 KiB
Groff

.TH MAP 7
.SH NAME
map \- digitized map formats
.SH DESCRIPTION
Files used by
.IR map (7)
are a sequence of structures of the form:
.PP
.EX
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;
};
.EE
where
.B short
stands for 16-bit integers and there is no padding within or between
.BR structs .
Shorts are stored in little-endian order, low byte first.
To assure portability,
.I map
accesses them bytewise.
.PP
Fields
.L patchlatitude
and
.L patchlongitude
tell to what
10-degree by 10-degree
patch of the earth's surface a segment 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.
.PP
Each segment of
.RB | n |
points is connected; consecutive segments
are not necessarily related.
Latitude and longitude
are measured in units of 0.0001 radian.
If
.B n
is negative, then
differences to the first and succeeding points
are measured in units of 0.00001 radian.
Latitude is counted positive to the north and
longitude positive to the west.
.PP
The patches are ordered lexicographically by
.L patchlatitude
then
.LR patchlongitude .
A printable
index to the first segment of each patch
in a file named
.I data
is kept in an associated file named
.IB data .x\f1.
Each line of an index file contains
.L patchlatitude,
.L patchlongitude
and the byte position
of the patch
in the map file.
Both the map file and the index file are ordered by
patch latitude and longitude.
.SH "SEE ALSO"
.MR map 7
.br
The data comes from the World Data Bank I and II and
U.S. Government sources: the Census Bureau, Geological
Survey, and CIA.