UNPKG

@igo2/geo

Version:
44 lines (43 loc) 1.82 kB
import BasicEvent from 'ol/events/Event'; import type { default as OlGeometry } from 'ol/geom/Geometry'; import OlLineString from 'ol/geom/LineString'; import OlLinearRing from 'ol/geom/LinearRing'; import OlPolygon from 'ol/geom/Polygon'; import * as olstyle from 'ol/style'; import { Units } from '@turf/helpers'; import { FeatureGeometry } from '../../feature'; /** * Create a default style for draw and modify interactions * @param color Style color (R, G, B) * @returns OL style */ export declare function createDrawInteractionStyle(color?: [number, number, number]): olstyle.Circle; /** * Create a default style for drawing a hole * @returns OL style */ export declare function createDrawHoleInteractionStyle(): olstyle.Style; /** * Slice geometry into two parts * @param olGeometry OL geometry * @param olSlicer Slicing line * @returns New OL geometries */ export declare function sliceOlGeometry(olGeometry: OlLineString | OlPolygon, olSlicer: OlLineString): (OlLineString | OlPolygon)[]; /** * Slice OL Polygon into one or more polygons * @param olPolygon OL polygon * @param olSlicer Slicing line * @returns New OL polygons */ export declare function sliceOlPolygon(olPolygon: OlPolygon, olSlicer: OlLineString): OlPolygon[]; /** * Splice geometry into two parts * @param olGeometry OL geometry * @param olSlicer Slicing line * @returns New OL geometries */ export declare function addLinearRingToOlPolygon(olPolygon: OlPolygon, olLinearRing: OlLinearRing): void; export declare function getMousePositionFromOlGeometryEvent(olEvent: BasicEvent): [number, number]; export declare function doesOlGeometryIntersects(olGeometry1: OlGeometry, olGeometry2: OlGeometry): boolean; export declare function bufferOlGeometry(olGeometry: OlGeometry, dist: number, units?: Units): FeatureGeometry;