Package Exports
- point-in-polygon
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 (point-in-polygon) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
point-in-polygon
Determine if a point is inside of a polygon.
This module casts a semi-infinite ray from the inquiry point and counts intersections, based on this algorithm.
If you need a numerically robust solution and are willing to trade some performance for it, use robust-point-in-polygon.
example
var pointInPolygon = require('point-in-polygon');
var polygon = [ [ 1, 1 ], [ 1, 2 ], [ 2, 2 ], [ 2, 1 ] ];
console.log(pointInPolygon([ 1.5, 1.5 ], polygon)); // true
console.log(pointInPolygon([ 4.9, 1.2 ], polygon)); // false
console.log(pointInPolygon([ 1.8, 1.1 ], polygon)); // true
methods
var pointInPolygon = require('point-in-polygon')
var pointInPolygonFlat = require('point-in-polygon/flat')
var pointInPolygonNested = require('point-in-polygon/nested')
pointInPolygon(point, polygon, start=0, end=polygon.length)
Return whether point
is contained in polygon
.
point
should be a 2-item array of coordinatespolygon
should be an array of 2-item arrays of coordinates or a flat array of coordinatesstart
is an offset intopolygon
. default0
end
is an offset intopolygon
. defaultpolygon.length
The flat or nested is detected automatically. Or you can use the specific methods if you want to skip the check.
install
npm install point-in-polygon
license
MIT