Skip to main content
Version: Next

booleanOverlap

Description

Compares two geometries of the same dimension and returns true if their intersection set results in a geometry different from both but of the same dimension. It applies to Polygon/Polygon, LineString/LineString, Multipoint/Multipoint, MultiLineString/MultiLineString and MultiPolygon/MultiPolygon.

In other words, it returns true if the two geometries overlap, provided that neither completely contains the other.

Parameters

NameTypeDescription
feature1Geometry | Feature<LineString | MultiLineString | Polygon | MultiPolygon>input
feature2Geometry | Feature<LineString | MultiLineString | Polygon | MultiPolygon>input

Returns

    boolean true/false

Examples

var poly1 = turf.polygon([
[
[0, 0],
[0, 5],
[5, 5],
[5, 0],
[0, 0],
],
]);
var poly2 = turf.polygon([
[
[1, 1],
[1, 6],
[6, 6],
[6, 1],
[1, 1],
],
]);
var poly3 = turf.polygon([
[
[10, 10],
[10, 15],
[15, 15],
[15, 10],
[10, 10],
],
]);

turf.booleanOverlap(poly1, poly2);
//=true
turf.booleanOverlap(poly2, poly3);
//=false

Installation

$ npm install @turf/boolean-overlap

import { booleanOverlap } from "@turf/boolean-overlap";
const result = booleanOverlap(...);
$ npm install @turf/turf

import * as turf from "@turf/turf";
const result = turf.booleanOverlap(...);