Transforms any GeoJSON into a data structure that can be efficiently queried to determine (roughly) where data is present or absent.
var bitgeo = require('bitgeo');
Given any GeoJSON data, generate a
BitBox with the provided options.
resolution- The size (width and height) of a "cell" in the same units as the input data.
origin- By default,
[0, 0]is considered the origin.
A convenience function for creating a bitbox that is the union of an array of GeoJSON data objects.
A convenience function for creating a bitbox that is the intersection of an array of GeoJSON data objects.
var bitbox = bitgeo(data, options);
A bitbox is a (conceptually) rasterized representation of vector data containing information about where data is present and absent.
Test if data is present at the provided location. The
j values are offsets from the origin in terms of the bitbox resolution. For example, if a bitbox is created with
resolution: 10, then
bitbox.get(1, 2) would return
true if there is data between
[10, 20] and
[20, 30] (with upper bounds being exclusive).
Calls the provided callback for each
true bit in the bitbox. The callback will be called with
j as arguments. If the callback returns
false, iteration will stop.
bitbox.contains(minI, minJ, maxI, maxJ)
Determine if all, some, or none of a range of bits are
bitgeo.ALL if all of the bits in the provided range are
bitgeo.SOME if some bits are
true and some are
bitgeo.NONE if all of the bits in the range are
false. Ranges are inclusive (both min and max values are tested).
Return a bitbox that is the union of two bitboxes (
Return a bitbox that is the intersection of two bitboxes (
Returns the area of the bitbox where data is present (this will be an integer multiple of
resolution * resolution).