@arcgis/core
Version:
ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API
35 lines (32 loc) • 2.2 kB
TypeScript
/**
* Performs a relational operation to determine if two 2D geometries of the same dimension overlap.
*
* 
*
* @since 4.31
*/
import type { GeometryUnion } from "../types.js";
/**
* 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). See the [Acceleration](https://developers.arcgis.com/javascript/latest/spatial-analysis/intro-geometry-operators/#acceleration) guide topic for more information.
*
* @param geometry - The geometry to accelerate.
* @returns Returns `true` if the geometry was successfully accelerated.
*/
export function accelerateGeometry(geometry: GeometryUnion): boolean;
/**
* Perform the overlaps operation on two geometries.
*
* @param geometry1 - The base geometry that is tested for the "overlaps" relationship with `geometry2`.
* @param geometry2 - The comparison geometry that is tested for the "overlaps" relationship with `geometry1`.
* @returns Returns `true` if the intersection set results in a geometry different from both of the input geometries, but of the same dimension. For example, if `geometry1` and `geometry2` 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](https://developers.arcgis.com/javascript/latest/spatial-analysis/intro-geometry-operators/#dimensionality) 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);
*/
export function execute(geometry1: GeometryUnion, geometry2: GeometryUnion): boolean;
/**
* Indicates if the operator supports input geometries that contain curves.
* The value will always be `true`.
*/
export const supportsCurves: boolean;