Skip to content
forked from tschaub/projzh

Projection utilities for working with Baidu maps

Notifications You must be signed in to change notification settings

GennadyPan/projzh

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

36 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

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

As a port of the proj4m project, this qualifies as a derivative work and carries the same GPL v3 license.

About

Projection utilities for working with Baidu maps

Resources

Stars

Watchers

Forks

Packages

No packages published

Languages

  • JavaScript 100.0%