Takes polygons or multipolygons and an optional mask, and returns an exterior ring polygon with holes.
npm install @turf/maskTakes polygons or multipolygons and an optional mask, and returns an exterior
ring polygon with holes.
* polygon ([Polygon][1] | [MultiPolygon][2] | [Feature][3]<([Polygon][1] | [MultiPolygon][2])> | [FeatureCollection][4]<([Polygon][1] | [MultiPolygon][2])>) GeoJSON polygon used as interior rings or holes
* mask ([Polygon][1] | [Feature][3]<[Polygon][1]>)? GeoJSON polygon used as the exterior ring (if undefined, the world extent is used)
* options [Object][5] Optional parameters (optional, default {})
* options.mutate [boolean][6] allows the mask GeoJSON input to be mutated (performance improvement if true) (optional, default false)
``javascript
const polygon = turf.polygon([[[112, -21], [116, -36], [146, -39], [153, -24], [133, -10], [112, -21]]]);
const mask = turf.polygon([[[90, -55], [170, -55], [170, 10], [90, 10], [90, -55]]]);
const masked = turf.mask(polygon, mask);
//addToMap
const addToMap = [masked]
`
Returns [Feature][3]<[Polygon][1]> Masked Polygon (exterior ring with holes)
[1]: https://tools.ietf.org/html/rfc7946#section-3.1.6
[2]: https://tools.ietf.org/html/rfc7946#section-3.1.7
[3]: https://tools.ietf.org/html/rfc7946#section-3.2
[4]: https://tools.ietf.org/html/rfc7946#section-3.3
[5]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Object
[6]: https://developer.mozilla.org/docs/Web/JavaScript/Reference/Global_Objects/Boolean
---
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 single module individually:
`sh`
$ npm install @turf/mask
Or install the all-encompassing @turf/turf module that includes all modules as functions:
`sh``
$ npm install @turf/turf