Need help with wkx?
Click the “chat” button below for chat support from the developer who created it, or find similar developers for support.

About the developer

cschwarz
231 Stars 36 Forks MIT License 163 Commits 13 Opened issues

Description

A WKT/WKB/EWKT/EWKB/TWKB/GeoJSON parser and serializer.

Services available

!
?

Need anything else?

Contributors list

# 129,873
C#
F#
game-fr...
monogam...
144 commits
# 83,452
xlib
viml
Vue.js
python-...
6 commits
# 37,683
TypeScr...
React
hyper
macOS
4 commits

wkx Build Status Coverage Status

A WKT/WKB/EWKT/EWKB/TWKB/GeoJSON parser and serializer with support for

  • Point
  • LineString
  • Polygon
  • MultiPoint
  • MultiLineString
  • MultiPolygon
  • GeometryCollection

Examples

The following examples show you how to work with wkx.

var wkx = require('wkx');

//Parsing a WKT string var geometry = wkx.Geometry.parse('POINT(1 2)');

//Parsing an EWKT string var geometry = wkx.Geometry.parse('SRID=4326;POINT(1 2)');

//Parsing a node Buffer containing a WKB object var geometry = wkx.Geometry.parse(wkbBuffer);

//Parsing a node Buffer containing an EWKB object var geometry = wkx.Geometry.parse(ewkbBuffer);

//Parsing a node Buffer containing a TWKB object var geometry = wkx.Geometry.parseTwkb(twkbBuffer);

//Parsing a GeoJSON object var geometry = wkx.Geometry.parseGeoJSON({ type: 'Point', coordinates: [1, 2] });

//Serializing a Point geometry to WKT var wktString = new wkx.Point(1, 2).toWkt();

//Serializing a Point geometry to WKB var wkbBuffer = new wkx.Point(1, 2).toWkb();

//Serializing a Point geometry to EWKT var ewktString = new wkx.Point(1, 2, undefined, undefined, 4326).toEwkt();

//Serializing a Point geometry to EWKB var ewkbBuffer = new wkx.Point(1, 2, undefined, undefined, 4326).toEwkb();

//Serializing a Point geometry to TWKB var twkbBuffer = new wkx.Point(1, 2).toTwkb();

//Serializing a Point geometry to GeoJSON var geoJSONObject = new wkx.Point(1, 2).toGeoJSON();

Browser

To use

wkx
in a webpage, simply copy a built browser version from
dist/
into your project, and use a
script
tag to include it:
html

If you use browserify for your project, you can simply

npm install wkx --save
, and just require
wkx
as usual in your code.

Regardless of which of the preceeding options you choose, using

wkx
in the browser will look the same: ```javascript var wkx = require('wkx');

var geometry = wkx.Geometry.parse('POINT(1 2)');

console.log(geometry.toGeoJSON()); ```

In addition to the

wkx
module, the browser versions also export
buffer
, which is useful for parsing WKB: ```javascript var Buffer = require('buffer').Buffer; var wkx = require('wkx');

var wkbBuffer = new Buffer('0101000000000000000000f03f0000000000000040', 'hex'); var geometry = wkx.Geometry.parse(wkbBuffer);

console.log(geometry.toGeoJSON()); ```

We use cookies. If you continue to browse the site, you agree to the use of cookies. For more information on our use of cookies please see our Privacy Policy.