JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 617418
  • Score
    100M100P100Q194660F
  • License MIT

GeoJSON implementation of RBush

Package Exports

  • geojson-rbush

This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (geojson-rbush) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.

Readme

GeoJSON RBush

Build Status npm version MIT licensed

GeoJSON implementation of RBush — a high-performance JavaScript R-tree-based 2D spatial index for points and rectangles.

Install

npm

$ npm install --save geojson-rbush

web browser (ES5)

<script src="https://unpkg.com/geojson-rbush/docs/geojson-rbush.min.js"></script>

API

Table of Contents

rbush

GeoJSON implementation of RBush spatial index.

Parameters

  • maxEntries number? defines the maximum number of entries in a tree node. 9 (used by default) is a reasonable choice for most applications. Higher value means faster insertion and slower search, and vice versa. (optional, default 9)

Examples

var rbush = require('geojson-rbush')
var tree = rbush()

Returns RBush GeoJSON RBush

insert

insert

Parameters

  • feature Feature<any> insert single GeoJSON Feature

Examples

var polygon = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "Polygon",
    "coordinates": [[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]
  }
}
tree.insert(polygon)

Returns RBush GeoJSON RBush

remove

remove

Parameters

  • feature Feature<any> remove single GeoJSON Feature

Examples

var polygon = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "Polygon",
    "coordinates": [[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]
  }
}
tree.remove(polygon)

Returns RBush GeoJSON RBush

load

load

Parameters

  • features FeatureCollection<any> load entire GeoJSON FeatureCollection

Examples

var polygons = {
  "type": "FeatureCollection",
  "features": [
    {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "type": "Polygon",
        "coordinates": [[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]
      }
    },
    {
      "type": "Feature",
      "properties": {},
      "geometry": {
        "type": "Polygon",
        "coordinates": [[[-93, 32], [-83, 32], [-83, 39], [-93, 39], [-93, 32]]]
      }
    }
  ]
}
tree.load(polygons)

Returns RBush GeoJSON RBush

search

Parameters

  • geojson (FeatureCollection | Feature<any>) search with GeoJSON

Examples

var polygon = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "Polygon",
    "coordinates": [[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]
  }
}
tree.search(polygon)

Returns FeatureCollection<any> all features that intersects with the given GeoJSON.

collides

collides

Parameters

  • geojson (FeatureCollection | Feature<any>) collides with GeoJSON

Examples

var polygon = {
  "type": "Feature",
  "properties": {},
  "geometry": {
    "type": "Polygon",
    "coordinates": [[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]
  }
}
tree.collides(polygon)

Returns boolean true if there are any items intersecting the given GeoJSON, otherwise false.

all

all

Examples

tree.all()
//=FeatureCollection

Returns FeatureCollection<any> all the features in RBush