make-geo-json

1.1.6 • Public • Published

make-geo-json

Converts polylines, wkts, wkbs, polygons, circles, rectangles, googlePolys, as well as standard geoJSON into geoJSON MultiPolygon Feature Objects. Includes poly area (calculated in square miles). Converts FeatureCollection and KMLs into arrays of geoJSON MultiPolygon Feature Objects.

Can be used as npm package or AWS Lambda.

Params

makeGeoJSON receives two parameters, "type" and "poly".

Type

Options for type include:

  • wkt
  • wkb
  • polygons (Leaflet polygon)
  • circles (Leaflet circles)
  • rectangles (Leaflet rectangles)
  • Feature (Feature, geoJSON, and geo_json are the same, but worded differently to catch user mistakes)
  • geoJSON
  • geo_json
  • FeatureCollection
  • wkb_list (An array of wkbs)
  • kml

Poly

Poly will be passed in as a string, object, or array of objects, depending on the type String:

  • wkt
  • wkb
  • polyline Object:
  • polygons
  • circles
  • rectangles
  • geoJSON
  • FeatureCollection Array of Objects:
  • kml

Lambda

https://console.aws.amazon.com/lambda/home?region=us-east-1#/functions/make-geo-json?tab=graph

arn:aws:lambda:us-east-1:498598553520:function:make-geo-json

Pass in event with this structure:

{
  "type": :string,
  "poly": :string (for polyline, wkt, wkb, polygon, circle, rectangle)
          :object (for googlePolys, geoJSON, FeatureColletion)
          :array of objects (for kml)
          :array of strings (for wkb_list)
}

NPM

npm i --save make-geo-json
import { makeGeoJSON } from 'make-geo-json';

To Use

makeGeoJSON(poly.type, poly,data)

Peer Dependencies

npm i --save lodash
npm i --save wkx

lodash - https://www.npmjs.com/package/lodash

wkx - https://www.npmjs.com/package/wkx

Examples

const polyline = {
    type: 'polyline',
    data: 'polylinestringdata',
  };
  
  makeGeoJSON(polyline.type, polyline.data);
  
  outputs:
  { type: 'Feature',
    properties: {
      area: number,
      whateverelse: "You put here",
    },
    geometry: {
      type: 'MultiPolygon',
      coordinates: [[[
        [long, lat],
        [long, lat],
      ]]],
    },
  }

Also see test/ for more examples.

## Data Conversion

### Points and Linestrings Any single point poly is converted to a circle with a 75 meter radius. Any two point poly is converted into a rectangle. Any three point plus, open linestring is closed.

## Output

Output comes in the form of a MultiPolygon Feature Object. With the exceptions of kml and FeatureCollection, which return as an aray of Multipolygon Feature Objects.

## Testing

Use claudia test-lambda --event event.json to test lambda. Must have claudia.js installed on machine.

Use npm test to run jest tests.

For reference see: http://geojson.org/

Package Sidebar

Install

npm i make-geo-json

Weekly Downloads

205

Version

1.1.6

License

ISC

Unpacked Size

48 kB

Total Files

8

Last publish

Collaborators

  • chriscaragianis
  • micahpotts