import DE9IM from '../data_structures/de9im'; import type { Shape } from '../classes/Shape'; /** * Returns true if shapes are topologically equal: their interiors intersect and * no part of the interior or boundary of one geometry intersects the exterior of the other */ export declare function equal(a: Shape, b: Shape): boolean; /** * Returns true if shapes have at least one point in common, same as "not disjoint" */ export declare function intersect(a: Shape, b: Shape): boolean; /** * Returns true if shapes have at least one point in common, but their interiors do not intersect */ export declare function touch(a: Shape, b: Shape): boolean; /** * Returns true if shapes have no points in common neither in interior nor in boundary */ export declare function disjoint(a: Shape, b: Shape): boolean; /** * Returns true a lies in the interior of b */ export declare function inside(a: Shape, b: Shape): boolean; /** * Returns true if every point in a lies in the interior or on the boundary of b */ export declare function covered(a: Shape, b: Shape): boolean; /** * Returns true a's interior contains b
* Same as inside(b, a) */ export declare function contain(a: Shape, b: Shape): boolean; /** * Returns true a's cover b, same as b covered by a */ export declare function cover(a: Shape, b: Shape): boolean; /** * Returns relation between two shapes as intersection 3x3 matrix, where each * element contains relevant intersection as array of shapes. * If there is no intersection, element contains empty array * If intersection is irrelevant it left undefined. (For example, intersection * between two exteriors is usually irrelevant) */ export declare function relate(shape1: Shape, shape2: Shape): DE9IM; //# sourceMappingURL=relation.d.ts.map