/** * @author: xd * @Date: 2022-01-13 22:43:45 * @LastEditors: xd * @LastEditTime: 2023-01-19 11:10:20 * @Description: 功能 */ import Feature from "ol/Feature"; import { Geometry, LineString, Point } from "ol/geom"; import { Coordinate } from "ol/coordinate"; import { IPathLayerOption } from "../../base/baseOptionType"; import { baseLayer } from "../../base/baseLayer"; export declare class PathLayer extends baseLayer { private autoPointSize; private result; private resultlayer; private resultSource; private nodesLayer; private dijkstra; private pathDatalayer; private animating; private distance; private lastTime; private pathLine; private position; private geoMarker; private styles; private vueThis; private pathLineFeature; private lastAngle; private pathIndex; private pathNodeInfo; private geoMarkerCircle; private moveNodeInfo; private FeatureMoveProgressInfo; private oldPathLineFeature; option: IPathLayerOption; private routeFeatures; private _source; private multiLinePathData; private timer; constructor(layerid: any, options: IPathLayerOption); private styleFunc; private moveFeature; private setAngle; private fun; startAnimation(tracking?: boolean, trackingDirection?: boolean, speed?: number): void; pauseAnimation(): void; resumeAnimation(): void; stopAnimation(): void; startAnimation2(option?: any): void; ddd(): void; stopAnimation2(): void; pauseAnimation2(): void; resumeAnimation2(): void; private moveFeature3; private moveFeature2; private ComputDirection; /** * :根据坐标或点获取网络路径上的最近点 * @param {Feature | Coordinate} Coordinate * @returns {Feature} Point */ getNearestPointOnPathNetWork(Coordinate: Feature | Coordinate): Feature; /** * 添加导航mark,仅能存在一个 */ addNavigationMarker(): void; /** * :设置导航mark位置及角度 * @param {Feature | Coordinate} Coordinate * @param {number} angle 角度 * @returns {Feature} Point */ setNavigationMarker(Coordinate: Feature | Coordinate, angle?: number): void; /** * 更新导航点 * @param {Feature} currentPoint * @returns {Feature} Point */ private updateNavigationMarker; /** * 返回导航路径 * @returns {LineString} 线 */ getPathLine(): LineString; /** * :计算导航路径 * @param {Coordinate} startCoordinate startCoordinate * @param {Coordinate} endPointCoordinate 标准GeoJson格式 */ computerPath(startCoordinate: Coordinate | Feature, endPointCoordinate: Coordinate | Feature): void; computerPath2(startCoordinate: any, endPointCoordinate: any): void; /** * : 添加GeoJSON数据,需要数据库样式匹配 * @param {string} classname 图层编号 * @param {string} url json地址 */ addGeoJsonUrl(classname: string, url: string | URL): void; /** * : 添加GeoJSON数据,需要数据库样式匹配 * @param {string} classname 图层编号 * @param {any} GeoJson 标准GeoJson格式 */ addGeoJson(classname: string, GeoJson: any): void; convertGeoJsontoFeatures(GeoJson: any): any; addFeatures(classname: any, featuresList: any): void; addFeature(classname: any, feature: any): void; /** * 按classname返回要素 * @param {string} classname 分类名 * @returns {Feature[]} 返回要素数组 */ getFeaturesByClassName(classname: string): Feature[]; getFeatures(name: string): any; getFeature(name: any): any; /**删除GeoJSON数据 * @description: * @param {string} classname */ removeFeatures(classname: string): void; /**删除导航路径数据 * @description: */ removeNavigationPath(): void; /**删除导航mark * @description: */ removeNavigationMarker(): void; /**删除导航所有数据 * @description: */ removeNavigationAll(): void; /**导出路径数据 * @description: */ pathToGeoJSON(): import("geojson").FeatureCollection; appendTo(map: any): void; }