heligeo

A libraray for Isochrone, Routing & geoprocessing GeoJson Data

Usage no npm install needed!

<script type="module">
  import heligeo from 'https://cdn.skypack.dev/heligeo';
</script>

README

heligeo

A library for Isochrone (Time-Distance) Analysis, Routing and Geoprocessing like Union, Intersection, Point Buffer, Line Buffer, Point with in Polygon(return points with in polygon sepratly), line aliasing(get multiple line parallel to linestring at certain distances).

  • Isochrone
  • Route
  • Union
  • Intersection
  • PointBuffer
  • LineBuffer
  • PointWithInPolygon
  • AliasLinestring

About Heliware

Heliware is a Web-GL Powered Geo-Spatial Analytics Platform for developer ,analytics & data Scientist that provides GIS, Web Mapping, and spatial data science tools which help companies to get InSite in just few click using AI, Data Science & Advance Geo-Processing.For advance library requirements please contact rajan@heliware.co.in .

Installation

Node Module

npm install heligeo

CDN

<script src="https://unpkg.com/heligeo@1.0.7/dist/heligeo.js"></script>

Usage

Importing Module


import { Isochrone, Route, Union, Intersection, PointBuffer, LineBuffer, PointWithInPolygon, AliasLinestring } from heligeo

new Isochrone(params).loaded().then(res=>{
    console.log(res); // get your data here
})

OR

import * as Heligeo from 'heligeo'

new Heligeo.Isochrone(params).loaded().then(res=>{
    console.log(res); // get your data here
})

Cdn User


<script src="https://unpkg.com/heligeo@1.0.7/dist/heligeo.js"></script>

<script>
new Heligeo.Isochrone(params).loaded().then((d) => {
      console.log(d); // get your data here
    });
</script>

Direction

  • For using this libraray you need Api-Key, You can simply get it by signing up Heliware here.

  • Please use the following table for params deatils of different analysis :

Analysis Type params Example
Isochrone (apikey,lat,long,mode) ('your-api-key',28.456,78.45567,'drive')
Route (apikey,lnglats,mode) new Route('your-api-key',[[88.3639, 22.5726],[72.8777, 19.076],...])
Union (apikey,polygons) ('your-api-key',[poly_1,poly_2,...])
Intersection (apikey,polygons) ('your-api-key',[poly_1,poly_2,...])
PointBuffer (apikey,lnglats,radious) ('your-api-key',[[88.3639, 22.5726],[72.8777, 19.076],...],20)
LineBuffer (apikey,linesCoordinates,radious) ('your-api-key',[[[88.3639, 22.5726],[88.4143, 22.5797],...],[[88.2636, 22.5958],[88.4789, 22.7248],...],...],20)
PointWithInPolygon (apikey,points,polygons) ('your-api-key',Point_GeoJson,[poly_1,poly_2,...])
AliasLinestring (apikey,line,distance,number) ('your-api-key',line_GeoJson,30,100)
  • For Isochrone & Route heligeo have mode param ie. transport-mode, You can selectet between 4 below mentined modes.

    • drive
    • walk
    • bike
    • cycling
  • For Union, Intersection & PointWithInPolygon polygons param is Array of FeatureCollection/Geojson Object thats contain a single Polygon Feature.


poly_1 = {
            type: "FeatureCollection",
            features: [
              {
                type: "Feature",
                geometry: {
                  type: "Polygon",
                  coordinates: [
                    [
                      [77.4029103817493, 28.36918941103731, 0.0],
                      [77.40184896262588, 28.3722403721131, 0.0],
                      [77.39922678901301, 28.37081966588294, 0.0], 
                      [77.40030856003351, 28.36816909494472, 0.0],
                      [74029103817493, 28.36918941103731, 0.0],
                    ],
                  ],
                },
              },
            ]
        }

  • For PointBuffer & LineBuffer radious param denotes distance for buffer in 'meter'.

  • For PointWithInPolygon points param is a FeatureCollection/Geojson Object thats contains multiple Point Feature.


Point_GeoJson = {
            type: "FeatureCollection",
            features: [
                {"type":"Feature","geometry":{"type":"Point","coordinates":[76.95513342,28.46301607]}},
                {"type":"Feature","geometry":{"type":"Point","coordinates":[76.58813342,28.64701607]}},
                {"type":"Feature","geometry":{"type":"Point","coordinates":[76.12413342,28.98601607]}},
            ]
        }

  • For AliasLinestring line param is a FeatureCollection/Geojson Object thats contains Single LineString Feature with two position coordinates only ie. a straight line. distance param is the distance in 'meter' by which every line will be seprated. number param is number of linestring you want in parallel to line.

line_GeoJson = {
            "type": "FeatureCollection",
            "features":[
                {
                    "type": "Feature",
                    "geometry":{
                        "type":"LineString",
                        "coordinates": [[88.3639,22.5726],[88.4143,22.5797]]
                    }
                }
                ]
        }