A geographic toolkit for dealing with geometry, geography, formats, and building geodatabases.
@terraformer/spatial
- Spatial predicates for GeoJSON.@terraformer/arcgis
- Convert ArcGIS JSON geometries to GeoJSON geometries and vice versa.@terraformer/wkt
- Convert WKT geometries to GeoJSON geometries and vice versa.
What's the difference between this and Esri/Terraformer?
Very little!
This project is a standalone ES Module port of the original Terraformer project without the Primitives.
If you found instantiating Primitives tedious or you'd like to cut down on your bundle size by importing only the code from Terraformer that you're actually using, you should consider upgrading.
I'm already using terraformer
. How do I upgrade?
Previously it was necessary to instantiate a Terraformer Primitive in order to execute spatial operations
npm install terraformer
const Terraformer = require('terraformer')
const polygon = new Terraformer.Primitive({
type: "LineString",
coordinates: [
[ 100, 0 ], [ -45, 122 ], [ 80, -60 ]
]
})
polygon.convexHull()
Now you'll work directly with raw GeoJSON
npm install @terraformer/spatial
const Terraformer = require('@terraformer/spatial')
Terraformer.convexHull({
type: "LineString",
coordinates: [
[ 100, 0 ], [ -45, 122 ], [ 80, -60 ]
]
})
I'm already using terraformer-wkt-parser
. How do I upgrade?
Instead of this:
npm install terraformer-wkt-parser
var wkt = require('terraformer-wkt-parser')
// parse a WKT file and turn it into GeoJSON
wkt.parse('LINESTRING (30 10, 10 30, 40 40)')
wkt.convert(/* ... */)
You'll do this:
npm install @terraformer/wkt
const Terraformer = require('@terraformer/wkt')
Terraformer.wktToGeoJSON(/* ... */)
Terraformer.geojsonToWKT(/* ... */)
I'm already using terraformer-arcgis-parser
. How do I upgrade?
Instead of this:
npm install terraformer-arcgis-parser
var ArcGIS = require('terraformer-arcgis-parser')
// parse ArcGIS JSON and turn it into GeoJSON
ArcGIS.parse()
ArcGIS.convert()
You'll do this:
npm install @terraformer/wkt
const Terraformer = require('@terraformer/arcgis')
Terraformer.arcgisToGeoJSON(/* ... */)
Terraformer.geojsonToArcGIS(/* ... */)
What about terraformer-geostore
?
This repo does not include a port of https://github.com/Esri/terraformer-geostore and there is no plan to tackle it in the future.
Since terraformer-geostore
ingests plain ol' GeoJSON, you're welcome to keep on using the original code.
npm install && npm test