UNPKG

@geogirafe/lib-geoportal

Version:

GeoGirafe is a flexible application to build online geoportals.

85 lines (84 loc) 2.32 kB
import { Style } from 'ol/style'; export declare enum DrawingShape { Point = 0, Polyline = 1, Polygon = 2, Square = 3, Rectangle = 4, Disk = 5, FreehandPolyline = 6, FreehandPolygon = 7 } export declare class DrawingState { activeTool: DrawingShape | null; features: DrawingFeature[]; } export type SerializedFeature = { n: string; sc: string; sw: number; fc: string; nfz: number; mfz: number; f: string; g: object; dn: boolean; dm: boolean; nc: string; mc: string; s: boolean; t: DrawingShape; }; export default class DrawingFeature { private _tool; private _name; private _nameColor; private _strokeColor; private _strokeWidth; private _fillColor; private _nameFontSize; private _measureFontSize; private _measureColor; private _font; private _displayName; private _displayMeasure; private _selected; geojson: object; id: string; onChange: (f: DrawingFeature) => void; constructor(tool: DrawingShape, geojson?: object, name?: string | null); get name(): string; set name(v: string); get strokeColor(): string; set strokeColor(v: string); get strokeWidth(): number; set strokeWidth(v: number); get fillColor(): string; set fillColor(v: string); get nameFontSize(): number; set nameFontSize(v: number); get measureFontSize(): number; set measureFontSize(v: number); get font(): string; set font(v: string); get displayName(): boolean; set displayName(v: boolean); get displayMeasure(): boolean; set displayMeasure(v: boolean); get nameColor(): string; set nameColor(v: string); get measureColor(): string; set measureColor(v: string); get type(): DrawingShape; get selected(): boolean; set selected(v: boolean); addToState(): void; serialize(): SerializedFeature; getLengthText(length: number): string; getAreaText(area: number): string; getCoordText(coord: number[]): string; isPointOrPolyline(): boolean; getVertexStyle(activeNode?: boolean): Style; static deserialize(serializedFeature: SerializedFeature): DrawingFeature; static circleToPolygon(center: number[], radius: number, nbEdges?: number): number[][]; }