1.0.0 • Published 5 years ago

projzh v1.0.0

Weekly downloads
92
License
MIT
Repository
github
Last release
5 years ago

projzh

This package provides utilities for working with coordinate reference systems used by Baidu maps. The algorithms are ported from the proj4m project which is licensed under the GPL v3.

Rough details

As far as I understand, the coordinate reference system for Baidu Maps uses a custom Mercator projection and the BD-09 datum. The BD-09 datum applies additional transforms on top of the GCJ-02 datum.

So, to transform a point in geographic coordinates and the WGS-84 datum to the CRS used by Baidu, first transform from WGS-84 to BD-09 (which itself uses the GCJ-09 transform), and then do the forward transform to Baidu Mercator.

baiduMercator.forward(bd09.fromWGS84(point))

To transform a point in the CRS used by Baidu to geographic/WGS-84, first do the inverse transform from Baidu Mercator, then do the transform from BD-09 to WGS-84 (which itself uses the GCJ-09 transform).

bd09.toWGS84(baiduMercator.inverse(point))

This package exports the functions above in the datum/bd-09 and projection/baidu-mercator modules. Additional functions for transforms to/from Spherical Mercator are available in the index module.

Installation

npm install projzh

The utility functions can be used in Node or in browsers with a module bundler.

License

This package is derived from the proj4m project and is distributed under the MIT license.