turf intersect module
npm install @spatial/intersectTakes two [polygons][1] and finds their intersection. If they share a border, returns the border; if they don't intersect, returns undefined.
- poly1 [Feature][2]<[Polygon][3]> the first polygon
- poly2 [Feature][2]<[Polygon][3]> the second polygon
``javascript
var poly1 = turf.polygon([[
[-122.801742, 45.48565],
[-122.801742, 45.60491],
[-122.584762, 45.60491],
[-122.584762, 45.48565],
[-122.801742, 45.48565]
]]);
var poly2 = turf.polygon([[
[-122.520217, 45.535693],
[-122.64038, 45.553967],
[-122.720031, 45.526554],
[-122.669906, 45.507309],
[-122.723464, 45.446643],
[-122.532577, 45.408574],
[-122.487258, 45.477466],
[-122.520217, 45.535693]
]]);
var intersection = turf.intersect(poly1, poly2);
//addToMap
var addToMap = [poly1, poly2, intersection];
`
Returns ([Feature][2] | null) returns a feature representing the point(s) they share (in case of a [Point][4] or [MultiPoint][5]), the borders they share (in case of a [LineString][6] or a [MultiLineString][7]), the area they share (in case of [Polygon][1] or [MultiPolygon][8]). If they do not share any point, returns null.
[1]: https://tools.ietf.org/html/rfc7946#section-3.1.6
[2]: https://tools.ietf.org/html/rfc7946#section-3.2
[3]: https://tools.ietf.org/html/rfc7946#section-3.1.6
[4]: https://tools.ietf.org/html/rfc7946#section-3.1.2
[5]: https://tools.ietf.org/html/rfc7946#section-3.1.3
[6]: https://tools.ietf.org/html/rfc7946#section-3.1.4
[7]: https://tools.ietf.org/html/rfc7946#section-3.1.5
[8]: https://tools.ietf.org/html/rfc7946#section-3.1.7
---
This module is part of the Turfjs project, an open source
module collection dedicated to geographic algorithms. It is maintained in the
Turfjs/turf repository, where you can create
PRs and issues.
Install this module individually:
`sh`
$ npm install @spatial/intersect
Or install the Turf module that includes it as a function:
`sh``
$ npm install @turf/turf