@targomo/leaflet
Version:
Leaflet maps extensions for Targomo's time-based access mapping services.
91 lines (90 loc) • 2.43 kB
TypeScript
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;
}