UNPKG

geojson-polygon-self-intersections

Version:

Find self-intersections in geojson polygon (possibly with interior rings)

46 lines 1.49 kB
import { Feature, Polygon, Position } from 'geojson'; type CallbackFunctionInput = { isect: Position; ring0: number; edge0: number; start0: Position; end0: Position; frac0: number; ring1: number; edge1: number; start1: Position; end1: Position; frac1: number; unique: boolean; }; type Options = { useSpatialIndex: boolean; epsilon: number; reportVertexOnVertex: boolean; reportVertexOnEdge: boolean; callbackFunction: (callbackFunctionInput: CallbackFunctionInput) => any; }; /** * Return a polygon's self-intersections * * @export * @param {Feature<Polygon>} polygon GeoJSON Polygon * @param {?(Partial<Options>)} [partialOptions] Option * @returns {any[]} Array of self-intersection points (or any type produced by the callback function) */ export default function gpsi(polygon: Feature<Polygon>, partialOptions?: Partial<Options>): any[]; /** * Compute where two lines intersect. * * From https://en.wikipedia.org/wiki/Line%E2%80%93line_intersection * * @param {Position} start0 * @param {Position} end0 * @param {Position} start1 * @param {Position} end1 * @returns {(Position | undefined)} The point of intersection, or undefined if no intersection */ export declare function intersect(start0: Position, end0: Position, start1: Position, end1: Position): Position | undefined; export declare function equalArrays(array1: any[], array2: any[]): boolean; export {}; //# sourceMappingURL=index.d.ts.map