This repo is forked from https://github.com/mapbox/node-s2 beacuse of this issue that is now fixed.
node-s2
Bindings for the S2 Geometry Library into
node.js.
S2 is a library that does spherical math over the world, and supports a very
fancy Hilbert curve-related indexing scheme. S2 has no documentation besides
source comments and this presentation.
Notably it's used for MongoDB's 2dsphere index,
as well as in viewfinderco's
DynamoDB-powered database. s2map.com
also demonstrates one of the killer features of the library, 'coverings', which
are intelligently computed groups of cells that can be used to index geometries.
Example
var s2 = require('s2');
var ll = new s2.S2LatLng(0, 0);
ll.isValid();
var normalized = ll.normalized();
var pt = ll.toPoint();
Build
npm install
npm build . --build-from-source
npm test
Geojson
node-s2 is a low level s2 wrapper. If you are simply looking to get geojson into s2, you should check out geojson-cover.
Notes
Some of the S2 API is not wrapped because it isn't meant to be exposed in this way,
and is blocked from wrapping by DISALLOW_COPY_AND_ASSIGN.
- S2CellUnion
- S2Loop
- S2Polyline
- S2Polygon
- S2RegionCoverer
- S2RegionIntersection
See Also