[GIS] convert ordnance survey easting and northing data to WGS84 latitude longitude values

cnetsql serversql-server-spatial

The C# code published here is not very accurate as also mentioned by tanoshimi. I think this has to do with the lack of 'approximate Helmurt transformation'. Just curious is anyone aware of some accurate C# code or is it even possible to achieve using SQL Server's spatial functionalities?

Best Answer

All formulas you might find on the web do the conversion from OSGB36 grid to lat/lon on the Airy ellipsoid, but there is no exact tranformation from that to WGS84. Simply because OSGB36 has grown over decades, including surveying errors done by our ancestors, and terrestrial moves.

The only exact way to do the last step is to use the official OSGB36 datum shift ntv2 grid file, as published by Ordnance survey on https://www.ordnancesurvey.co.uk/business-and-government/help-and-support/navigation-technology/os-net/ostn02-ntv2-format.html.

Proj.4 is a very simple tool to use that datum shift grid (and the conversion you do with the C# code as well). GDAL and QGIS are also able to use it.

Related Question