JSPM

  • ESM via JSPM
  • ES Module Entrypoint
  • Export Map
  • Keywords
  • License
  • Repository URL
  • TypeScript Types
  • README
  • Created
  • Published
  • Downloads 617418
  • Score
    100M100P100Q194400F
  • 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

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 geojsonRbush = require('geojson-rbush').default;
var tree = geojsonRbush();

Returns RBush GeoJSON RBush

insert

insert

Parameters

  • feature Feature insert single GeoJSON Feature

Examples

var poly = turf.polygon([[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]);
tree.insert(poly)

Returns RBush GeoJSON RBush

load

load

Parameters

  • features (FeatureCollection | Array<Feature>) load entire GeoJSON FeatureCollection

Examples

var polys = turf.polygons([
    [[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]],
    [[[-93, 32], [-83, 32], [-83, 39], [-93, 39], [-93, 32]]]
]);
tree.load(polys);

Returns RBush GeoJSON RBush

remove

remove

Parameters

  • feature Feature remove single GeoJSON Feature
  • equals Function Pass a custom equals function to compare by value for removal.

Examples

var poly = turf.polygon([[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]);

tree.remove(poly);

Returns RBush GeoJSON RBush

clear

clear

Examples

tree.clear()

Returns RBush GeoJSON Rbush

search

Parameters

  • geojson (BBox | FeatureCollection | Feature) search with GeoJSON

Examples

var poly = turf.polygon([[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]);

tree.search(poly);

Returns FeatureCollection all features that intersects with the given GeoJSON.

collides

collides

Parameters

  • geojson (BBox | FeatureCollection | Feature) collides with GeoJSON

Examples

var poly = turf.polygon([[[-78, 41], [-67, 41], [-67, 48], [-78, 48], [-78, 41]]]);

tree.collides(poly);

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

all

all

Examples

tree.all()

Returns FeatureCollection all the features in RBush

toJSON

toJSON

Examples

var exported = tree.toJSON()

Returns any export data as JSON object

fromJSON

fromJSON

Parameters

  • json any import previously exported data

Examples

var exported = {
  "children": [
    {
      "type": "Feature",
      "geometry": {
        "type": "Point",
        "coordinates": [110, 50]
      },
      "properties": {},
      "bbox": [110, 50, 110, 50]
    }
  ],
  "height": 1,
  "leaf": true,
  "minX": 110,
  "minY": 50,
  "maxX": 110,
  "maxY": 50
}
tree.fromJSON(exported)

Returns RBush GeoJSON RBush