UNPKG

@fleet-frontend/mower-maps

Version:

a mower maps in google maps

155 lines 4.55 kB
import { BoundaryElement, ChargingPileElement, TunnelElement, ObstacleData as ObstacleElement, VisionOffAreaData as VisionOffElement, TimeLimitObstacleData as DoodleElement } from '@/types'; type ChannelElement = TunnelElement; type PathElement = { id: number; name: string; type: string; points: number[][]; }; type AntennaElement = { id: number; name: string; type: string; position: number[]; antennaId: number; online: boolean; }; /** * 数据类型枚举 */ export declare enum DataType { BOUNDARY = "boundary", CHANNEL = "channel", OBSTACLE = "obstacle", PATH = "path", DOODLE = "doodle", VISION_OFF = "visionOff", ANTENNA = "antenna", CHARGING_PILE = "chargingPile" } /** * 渲染类型枚举 */ export declare enum RenderType { POINT = "point", POLYGON = "polygon", LINE = "line", SVG = "svg" } /** * 基础数据类 */ export declare class BaseData<T> { id: string | number; type: DataType; level: number; points?: number[][]; renderType: RenderType; originalData?: T; constructor(id: string | number, type: DataType, level: number, renderType: RenderType, points?: number[][], originalData?: T); } /** * 边界数据类 */ export declare class BoundaryData extends BaseData<BoundaryElement> { area?: number; name?: string; channels?: ChannelData[]; cuttingHeight?: number; angle?: number; recBaseAngle?: number; direction?: number; isFlowGlobal?: number; edgeMowing?: number; obstacleMowEdge?: number; edgeVision?: number; style?: Record<string, unknown>; constructor(originalData?: BoundaryElement, level?: number, channels?: ChannelData[], style?: Record<string, unknown>); } /** * 通道数据类 */ export declare class ChannelData extends BaseData<ChannelElement> { connectedBoundaries?: BoundaryData[]; isChargingPileTunnel?: boolean; style?: Record<string, unknown>; constructor(originalData?: ChannelElement, level?: number, connectedBoundaries?: BoundaryData[], isChargingPileTunnel?: boolean, style?: Record<string, unknown>); } /** * 障碍物数据类 */ export declare class ObstacleData extends BaseData<ObstacleElement> { area?: number; style?: Record<string, unknown>; status?: number; start_timestamp?: number; end_timestamp?: number; name?: string; constructor(originalData?: ObstacleElement, level?: number, style?: Record<string, unknown>); } /** * 路径数据类 */ export declare class PathData extends BaseData<PathElement> { pathType?: string; style?: Record<string, unknown>; constructor(originalData?: PathElement, level?: number, pathType?: string, style?: Record<string, unknown>); } /** * 涂鸦数据类 */ export declare class DoodleData extends BaseData<DoodleElement> { svg: string; scale: number; direction: number; center: number[]; style?: Record<string, unknown>; create_ts: number; expiration_ts: number; constructor(originalData?: DoodleElement, level?: number, style?: Record<string, unknown>); } /** * 视觉盲区数据类 */ export declare class VisionOffData extends BaseData<VisionOffElement> { style?: Record<string, unknown>; constructor(originalData?: VisionOffElement, level?: number, style?: Record<string, unknown>); } /** * 天线数据类 */ export declare class AntennaData extends BaseData<AntennaElement> { antennaId: number; online: boolean; size?: number; style?: Record<string, unknown>; constructor(originalData?: AntennaElement, level?: number, size?: number, style?: Record<string, unknown>); } /** * 充电桩数据类 */ export declare class ChargingPileData extends BaseData<ChargingPileElement> { position: [number, number]; direction: number; width: number; length: number; navPos?: [number, number]; tunnel?: ChannelData; style?: Record<string, unknown>; constructor(originalData?: ChargingPileElement, level?: number, tunnel?: ChannelData, style?: Record<string, unknown>); } /** * 统一数据处理结果 */ export interface ProcessedDataMap { [DataType.BOUNDARY]?: BoundaryData[]; [DataType.CHANNEL]?: ChannelData[]; [DataType.OBSTACLE]?: ObstacleData[]; [DataType.PATH]?: PathData[]; [DataType.DOODLE]?: DoodleData[]; [DataType.VISION_OFF]?: VisionOffData[]; [DataType.ANTENNA]?: AntennaData[]; [DataType.CHARGING_PILE]?: ChargingPileData[]; } export {}; //# sourceMappingURL=BaseData.d.ts.map