Ordnance Survey - The National Grid
The Ordnance Survey National Grid
is a coordinate system commonly used in the United Kingdom for mapping and
survey data.
The base github.com/usedbytes/osgrid
package provides functionality for
parsing, formatting and manipulating coordinates in the OS National Grid system
("grid references").
For example, the OS grid reference of the summit of Snowdon is SH 60986 54375
.
We can find the OS grid reference for the point 300 metres East and 2 kilometres
North like so:
summit, _ := osgrid.ParseGridRef("SH 60986 54375")
point, _ := summit.Add(300 * osgrid.Metre, 2 * osgrid.Kilometre)
fmt.Println(point.String())
osdata
The Ordnance Survey make lots of their mapping data available for free under
OS OpenData.
Under osdata
there are two packages for working with a subset of that data:
terrain50
: For accessing the OS Terrain50
dataset, which provides elevation data for the whole of the UK, with 50 m
horizontal and 0.1 m vertical resolution.
raster
: For accessing raster-format data. This has only been tested with
the OS VectorMap District
dataset at the time of writing.
Further details on how to use the packages can be found in their respective
directories.
cmd/osmodel
osmodel
is a command-line application which uses the other packages in this
repository to generate different representations of the supported
OS OpenData.
datasets.
It has 3 subcommands:
surface
: Generate a "surface" from a specified region of an elevation dataset,
e.g. as a CSV file.
texture
: Generate an image from a specified region of a raster
dataset.
mesh
: Generate a 3D model, optionally with a texture, from a specified region
of elevation and raster datasets. e.g. as an STL or X3D file, suitable for
3D printing.
Images above contains OS data © Crown Copyright (2021), used under the
Open Government License