UNPKG

@targomo/leaflet

Version:

Leaflet maps extensions for Targomo's time-based access mapping services.

91 lines (90 loc) 2.43 kB
import { MultipolygonData, PolygonData } from './types'; export interface ProjectedBoundsData { southWest: ProjectedPointData; northEast: ProjectedPointData; } /** * */ export declare class ProjectedBounds implements ProjectedBoundsData { southWest: ProjectedPoint; northEast: ProjectedPoint; constructor(bounds?: { southWest: { x: number; y: number; }; northEast: { x: number; y: number; }; }); expandPoint(x: number, y: number): void; expand(bounds: ProjectedBoundsData): void; modifyIntersect(bounds: ProjectedBoundsData): this; contains(bounds: ProjectedBoundsData): boolean; intersects(bounds: ProjectedBoundsData): boolean; growOutwardsFactor(factor?: number): this; growOutwardsAmount(amount: number): this; toLineString(): ProjectedPoint[]; reproject(project: (x: number, y: number) => { x: number; y: number; }): ProjectedBounds; width(): number; height(): number; left(): number; top(): number; } export interface ProjectedPointData { x: number; y: number; } /** * */ export declare class ProjectedPoint implements ProjectedPointData { x: number; y: number; constructor(x: number, y: number); /** * Checks if the given three points are collinear. */ isCollinear(before: ProjectedPoint, after: ProjectedPoint, tolerance: number): boolean; /** * * @param point */ euclideanDistance(point: ProjectedPoint): number; } /** * */ export declare class ProjectedLineString { points: ProjectedPoint[]; bounds3857: ProjectedBounds; constructor(coordinates: [number, number][]); } /** * */ export declare class ProjectedPolygon { travelTime: number; area: number; lineStrings: ProjectedLineString[]; bounds3857: ProjectedBounds; constructor(data: PolygonData); getOuterBoundary(): ProjectedLineString; getInnerBoundary(): ProjectedLineString[]; } /** * */ export declare class ProjectedMultiPolygon { polygons: { [travelTime: number]: ProjectedPolygon[]; }; bounds3857: ProjectedBounds; constructor(data: MultipolygonData[]); forEach(callback: (travelTime: number, polygon: ProjectedPolygon[], i?: number) => void): void; }