require(["esri/geometry/operators/overlapsOperator"], (overlapsOperator) => { /* code goes here */ });
import * as overlapsOperator from "@arcgis/core/geometry/operators/overlapsOperator.js";
esri/geometry/operators/overlapsOperator
Performs a relational operation to determine if two 2D geometries of the same dimension overlap.
Property Overview
Name | Type | Summary | Object |
---|---|---|---|
Indicates if the operator supports input geometries that contain curves. | overlapsOperator |
Property Details
-
supportsCurves
supportsCurves Booleanreadonly
-
Indicates if the operator supports input geometries that contain curves.
- Default Value:true
Method Overview
Name | Return Type | Summary | Object |
---|---|---|---|
Accelerate a geometry. | overlapsOperator | ||
Perform the overlaps operation on two geometries. | overlapsOperator |
Method Details
-
accelerateGeometry
accelerateGeometry(geometry){Boolean}
-
Accelerate a geometry. This method prepares the geometry for faster overlaps operations when the same geometry is tested multiple times (e.g. in a loop with hundreds of iterations).
Parametergeometry GeometryUnionThe geometry to accelerate.
ReturnsType Description Boolean Returns true
if the geometry was successfully accelerated.
-
execute
execute(geometry1, geometry2){Boolean}
-
Perform the overlaps operation on two geometries.
Parametersgeometry1 GeometryUnionThe base geometry that is tested for the "overlaps" relationship with
geometry2
.geometry2 GeometryUnionThe comparison geometry that is tested for the "overlaps" relationship with
geometry1
.ReturnsType Description Boolean Returns true
if the intersection set results in a geometry different from both of the input geometries, but of the same dimension. For example, ifgeometry1
andgeometry2
are both polygons, then they must return a polygon in order to overlap. If two polygons cross each other at exactly one point then no overlap has occurred because points have a dimension of 0 and polygons have a dimension of 2. See the Working with spatial relationship operators guide topic on dimensionality for more details.Example// Returns true if one geometry overlaps another, // but is not contained or disjointed const isOverlapping = overlapsOperator.execute(polygon1, polygon2);