@fleet-frontend/mower-maps 0.0.9 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/dist/config/constants.d.ts +3 -25
  2. package/dist/config/constants.d.ts.map +1 -1
  3. package/dist/config/styles.d.ts +3 -2
  4. package/dist/config/styles.d.ts.map +1 -1
  5. package/dist/index.d.ts +2 -1
  6. package/dist/index.d.ts.map +1 -1
  7. package/dist/index.esm.js +1995 -1084
  8. package/dist/index.js +1993 -1082
  9. package/dist/processor/MapDataProcessor.d.ts +1 -1
  10. package/dist/processor/MapDataProcessor.d.ts.map +1 -1
  11. package/dist/processor/PathDataProcessor.d.ts +3 -18
  12. package/dist/processor/PathDataProcessor.d.ts.map +1 -1
  13. package/dist/processor/builder/AntennaDataBuilder.d.ts +2 -1
  14. package/dist/processor/builder/AntennaDataBuilder.d.ts.map +1 -1
  15. package/dist/processor/builder/BoundaryDataBuilder.d.ts +1 -1
  16. package/dist/processor/builder/BoundaryDataBuilder.d.ts.map +1 -1
  17. package/dist/processor/builder/ChannelDataBuilder.d.ts +1 -1
  18. package/dist/processor/builder/ChannelDataBuilder.d.ts.map +1 -1
  19. package/dist/processor/builder/ChargingPileDataBuilder.d.ts +1 -1
  20. package/dist/processor/builder/ChargingPileDataBuilder.d.ts.map +1 -1
  21. package/dist/processor/builder/ObstacleDataBuilder.d.ts +2 -1
  22. package/dist/processor/builder/ObstacleDataBuilder.d.ts.map +1 -1
  23. package/dist/processor/builder/PathDataBuilder.d.ts +6 -5
  24. package/dist/processor/builder/PathDataBuilder.d.ts.map +1 -1
  25. package/dist/processor/builder/PointDataBuilder.d.ts +2 -1
  26. package/dist/processor/builder/PointDataBuilder.d.ts.map +1 -1
  27. package/dist/processor/builder/SvgElementDataBuilder.d.ts +1 -1
  28. package/dist/processor/builder/SvgElementDataBuilder.d.ts.map +1 -1
  29. package/dist/processor/builder/VisionOffDataBuilder.d.ts +2 -1
  30. package/dist/processor/builder/VisionOffDataBuilder.d.ts.map +1 -1
  31. package/dist/processor/index.d.ts +2 -1
  32. package/dist/processor/index.d.ts.map +1 -1
  33. package/dist/render/AntennaManager.d.ts +7 -24
  34. package/dist/render/AntennaManager.d.ts.map +1 -1
  35. package/dist/render/BoundaryLabelsManager.d.ts +12 -20
  36. package/dist/render/BoundaryLabelsManager.d.ts.map +1 -1
  37. package/dist/render/ChargingPileManager.d.ts +10 -20
  38. package/dist/render/ChargingPileManager.d.ts.map +1 -1
  39. package/dist/render/MowerMapOverlay.d.ts +53 -8
  40. package/dist/render/MowerMapOverlay.d.ts.map +1 -1
  41. package/dist/render/MowerMapRenderer.d.ts.map +1 -1
  42. package/dist/render/{MowerPostionManager.d.ts → MowerPositionManager.d.ts} +16 -11
  43. package/dist/render/MowerPositionManager.d.ts.map +1 -0
  44. package/dist/render/SvgMapView.d.ts +15 -26
  45. package/dist/render/SvgMapView.d.ts.map +1 -1
  46. package/dist/render/layers/BoundaryBorderLayer.d.ts +11 -0
  47. package/dist/render/layers/BoundaryBorderLayer.d.ts.map +1 -1
  48. package/dist/render/layers/ChannelLayer.d.ts.map +1 -1
  49. package/dist/render/layers/DrawLayer.d.ts +1 -1
  50. package/dist/render/layers/DrawLayer.d.ts.map +1 -1
  51. package/dist/render/layers/PathLayer.d.ts +11 -2
  52. package/dist/render/layers/PathLayer.d.ts.map +1 -1
  53. package/dist/render/layers/SvgElementLayer.d.ts.map +1 -1
  54. package/dist/render/layers/index.d.ts +0 -1
  55. package/dist/render/layers/index.d.ts.map +1 -1
  56. package/dist/render/layers/types.d.ts +1 -36
  57. package/dist/render/layers/types.d.ts.map +1 -1
  58. package/dist/store/processMowingState.d.ts +4 -0
  59. package/dist/store/processMowingState.d.ts.map +1 -0
  60. package/dist/store/useSubBoundaryBorderStore.d.ts +9 -5
  61. package/dist/store/useSubBoundaryBorderStore.d.ts.map +1 -1
  62. package/dist/types/constants.d.ts +38 -0
  63. package/dist/types/constants.d.ts.map +1 -0
  64. package/dist/types/index.d.ts +6 -0
  65. package/dist/types/index.d.ts.map +1 -1
  66. package/dist/types/layers.d.ts +50 -0
  67. package/dist/types/layers.d.ts.map +1 -0
  68. package/dist/types/processor.d.ts +26 -0
  69. package/dist/types/processor.d.ts.map +1 -0
  70. package/dist/types/realTime.d.ts +27 -2
  71. package/dist/types/realTime.d.ts.map +1 -1
  72. package/dist/types/renderer.d.ts +28 -10
  73. package/dist/types/renderer.d.ts.map +1 -1
  74. package/dist/types/store.d.ts +22 -0
  75. package/dist/types/store.d.ts.map +1 -0
  76. package/dist/types/utils.d.ts +102 -0
  77. package/dist/types/utils.d.ts.map +1 -0
  78. package/dist/utils/boundaryUtils.d.ts +1 -29
  79. package/dist/utils/boundaryUtils.d.ts.map +1 -1
  80. package/dist/utils/common.d.ts +20 -0
  81. package/dist/utils/common.d.ts.map +1 -0
  82. package/dist/utils/coordinates.d.ts +28 -7
  83. package/dist/utils/coordinates.d.ts.map +1 -1
  84. package/dist/utils/handleRealTime.d.ts +20 -10
  85. package/dist/utils/handleRealTime.d.ts.map +1 -1
  86. package/dist/utils/mapBounds.d.ts +1 -10
  87. package/dist/utils/mapBounds.d.ts.map +1 -1
  88. package/dist/utils/math.d.ts +3 -10
  89. package/dist/utils/math.d.ts.map +1 -1
  90. package/dist/utils/mower.d.ts +5 -5
  91. package/dist/utils/mower.d.ts.map +1 -1
  92. package/dist/utils/pathSegments.d.ts +1 -15
  93. package/dist/utils/pathSegments.d.ts.map +1 -1
  94. package/dist/utils/unionFind.d.ts +49 -0
  95. package/dist/utils/unionFind.d.ts.map +1 -0
  96. package/package.json +1 -1
  97. package/dist/render/MowerPostionManager.d.ts.map +0 -1
@@ -1,11 +1,14 @@
1
- import { MowerPositonConfig } from '../types/renderer';
1
+ import { MowerPositionConfig } from '../types/renderer';
2
2
  import { SvgMapView } from './SvgMapView';
3
- export declare class MowerPostionManager {
3
+ import { RobotStatus } from '../utils';
4
+ export declare class MowerPositionManager {
4
5
  private svgView;
5
- private mowerPositonConfig;
6
+ private modelType?;
7
+ private mowerPositionConfig;
6
8
  private container;
7
9
  private overlayDiv;
8
10
  private mowerElement;
11
+ private hasEdger;
9
12
  private isFirstUpdate;
10
13
  private animationId;
11
14
  private isAnimating;
@@ -18,7 +21,12 @@ export declare class MowerPostionManager {
18
21
  private deltaPosition;
19
22
  private onlyUpdateTheta;
20
23
  private onAnimationComplete?;
21
- constructor(svgView: SvgMapView, mowerPositonConfig: MowerPositonConfig, overlayDiv: HTMLElement, onAnimationComplete?: () => void);
24
+ private onMowingPositionChange?;
25
+ constructor(svgView: SvgMapView, mowerPositionConfig: MowerPositionConfig, modelType: string, overlayDiv: HTMLElement, onAnimationComplete?: () => void, onMowingPositionChange?: (positionData: {
26
+ x: number;
27
+ y: number;
28
+ vehicleState: RobotStatus;
29
+ }) => void);
22
30
  get animationFlag(): boolean;
23
31
  /**
24
32
  * 初始化容器
@@ -36,14 +44,15 @@ export declare class MowerPostionManager {
36
44
  * 获取容器元素
37
45
  */
38
46
  getElement(): HTMLElement | null;
47
+ setEdger(edger: any): void;
39
48
  /**
40
49
  * 根据最后一次有效的位置更新数据
41
50
  */
42
- updatePostionByLastPosition(chargingPilesPositonConfig: MowerPositonConfig, animationTime?: number): void;
51
+ updatePositionByLastPosition(chargingPilesPositionConfig?: MowerPositionConfig): void;
43
52
  /**
44
53
  * 更新割草机位置
45
54
  */
46
- updatePosition(positonConfig: MowerPositonConfig, animationTime?: number): void;
55
+ updatePosition(positionConfig: MowerPositionConfig, animationTime?: number): void;
47
56
  /**
48
57
  * 更新割草机图片
49
58
  */
@@ -77,13 +86,9 @@ export declare class MowerPostionManager {
77
86
  * 显示/隐藏割草机
78
87
  */
79
88
  setVisible(visible: boolean): void;
80
- /**
81
- * 检查是否正在动画中
82
- */
83
- getIsAnimating(): boolean;
84
89
  /**
85
90
  * 销毁管理器
86
91
  */
87
92
  destroy(): void;
88
93
  }
89
- //# sourceMappingURL=MowerPostionManager.d.ts.map
94
+ //# sourceMappingURL=MowerPositionManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MowerPositionManager.d.ts","sourceRoot":"","sources":["../../src/render/MowerPositionManager.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,MAAM,mBAAmB,CAAC;AACxD,OAAO,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE1C,OAAO,EAKL,WAAW,EACZ,MAAM,UAAU,CAAC;AAElB,qBAAa,oBAAoB;IAC/B,OAAO,CAAC,OAAO,CAAa;IAC5B,OAAO,CAAC,SAAS,CAAC,CAAS;IAC3B,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,SAAS,CAA4B;IAC7C,OAAO,CAAC,UAAU,CAA4B;IAC9C,OAAO,CAAC,YAAY,CAA4B;IAChD,OAAO,CAAC,QAAQ,CAAU;IAE1B,OAAO,CAAC,aAAa,CAAiB;IAGtC,OAAO,CAAC,WAAW,CAAuB;IAC1C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,SAAS,CAAa;IAC9B,OAAO,CAAC,iBAAiB,CAAa;IACtC,OAAO,CAAC,YAAY,CAA2D;IAC/E,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,eAAe,CAA2D;IAClF,OAAO,CAAC,cAAc,CAA2D;IACjF,OAAO,CAAC,aAAa,CAA2D;IAChF,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,mBAAmB,CAAC,CAAa;IACzC,OAAO,CAAC,sBAAsB,CAAC,CAIpB;gBAGT,OAAO,EAAE,UAAU,EACnB,mBAAmB,EAAE,mBAAmB,EACxC,SAAS,EAAE,MAAM,EACjB,UAAU,EAAE,WAAW,EACvB,mBAAmB,CAAC,EAAE,MAAM,IAAI,EAChC,sBAAsB,CAAC,EAAE,CAAC,YAAY,EAAE;QACtC,CAAC,EAAE,MAAM,CAAC;QACV,CAAC,EAAE,MAAM,CAAC;QACV,YAAY,EAAE,WAAW,CAAC;KAC3B,KAAK,IAAI;IAWZ,IAAI,aAAa,YAEhB;IAED;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAe3B;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAkC1B;;OAEG;IACH,aAAa,CAAC,UAAU,EAAE,WAAW;IAIrC;;OAEG;IACH,UAAU,IAAI,WAAW,GAAG,IAAI;IAKhC,QAAQ,CAAC,KAAK,KAAA;IAId;;OAEG;IACH,4BAA4B,CAC1B,2BAA2B,CAAC,EAAE,mBAAmB;IAkCnD;;OAEG;IACH,cAAc,CAAC,cAAc,EAAE,mBAAmB,EAAE,aAAa,GAAE,MAAU;IA4C7E;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAgBxB;;OAEG;IACH,OAAO,CAAC,kBAAkB;IAmB1B;;OAEG;IACH,OAAO,CAAC,aAAa;IAWrB;;OAEG;IACH,OAAO,CAAC,wBAAwB;IAgEhC,mBAAmB;IAInB;;OAEG;IACH,OAAO,CAAC,WAAW;IA4CnB;;OAEG;IACH,OAAO,CAAC,IAAI;IAIZ;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA6B1C;;OAEG;IACH,UAAU,CAAC,OAAO,EAAE,OAAO;IAQ3B;;OAEG;IACH,OAAO;CAWR"}
@@ -12,7 +12,6 @@ export declare class SvgMapView {
12
12
  private scale;
13
13
  private lineScale;
14
14
  private destroyed;
15
- private showScale;
16
15
  private isDragging;
17
16
  private lastMouseX;
18
17
  private lastMouseY;
@@ -34,6 +33,7 @@ export declare class SvgMapView {
34
33
  */
35
34
  private updateViewBox;
36
35
  addLayers(layers: BaseLayer[]): void;
36
+ getLayer<T extends BaseLayer>(type: string): T | null;
37
37
  /**
38
38
  * 添加图层
39
39
  */
@@ -56,46 +56,43 @@ export declare class SvgMapView {
56
56
  maxX: number;
57
57
  maxY: number;
58
58
  }): void;
59
- /**
60
- * 重置变换
61
- */
62
- resetTransform(): void;
63
- /**
64
- * 设置缩放级别
65
- */
66
- setZoom(zoomLevel: number): void;
67
59
  /**
68
60
  * 获取当前缩放级别
69
61
  */
70
62
  getZoom(): number;
71
- /**
72
- * 设置线条缩放系数
73
- */
74
- setLineScale(lineScale: number): void;
75
63
  /**
76
64
  * 获取当前线条缩放系数
77
65
  */
78
66
  getLineScale(): number;
67
+ /**
68
+ * 绘制特定的图层
69
+ */
70
+ renderLayer(type: string): void;
79
71
  /**
80
72
  * 主渲染方法
81
73
  */
82
74
  private render;
75
+ /**
76
+ * 获取图层id
77
+ */
78
+ private getLayerId;
83
79
  /**
84
80
  * 清空图层组
85
81
  */
86
82
  private clearLayersGroup;
87
83
  /**
88
- * 绘制所有图层
84
+ * 获取图层的下一个兄弟元素
85
+ * 根据图层的level来获取
86
+ */
87
+ private getNextSibling;
88
+ /**
89
+ * 绘制图层,不传参数则默认绘制所有图层
89
90
  */
90
91
  private onDrawLayers;
91
92
  /**
92
93
  * 刷新渲染
93
94
  */
94
95
  refresh(): void;
95
- /**
96
- * 重新初始化SVG(用于容器大小变化)
97
- */
98
- reinitializeSVG(): void;
99
96
  /**
100
97
  * 设置拖拽事件处理器
101
98
  */
@@ -141,10 +138,6 @@ export declare class SvgMapView {
141
138
  width: number;
142
139
  height: number;
143
140
  } | null;
144
- /**
145
- * 自动适配viewBox到实际内容
146
- */
147
- autoFitToContent(): void;
148
141
  /**
149
142
  * 获取ViewBox信息
150
143
  */
@@ -165,10 +158,6 @@ export declare class SvgMapView {
165
158
  * 诊断SVG尺寸信息
166
159
  */
167
160
  diagnosticSizeInfo(): void;
168
- /**
169
- * 设置是否显示比例尺
170
- */
171
- setShowScale(show: boolean): void;
172
161
  /**
173
162
  * 获取SVG元素
174
163
  */
@@ -1 +1 @@
1
- {"version":3,"file":"SvgMapView.d.ts","sourceRoot":"","sources":["../../src/render/SvgMapView.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"SvgMapView.d.ts","sourceRoot":"","sources":["../../src/render/SvgMapView.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,17 @@ import { BaseLayer } from './BaseLayer';
5
5
  */
6
6
  export declare class BoundaryBorderLayer extends BaseLayer {
7
7
  scale: number;
8
+ boudaryBorderPaths: Record<number, SVGPathElement[]>;
9
+ mowingBoundarys: number[];
8
10
  constructor();
11
+ /**
12
+ * 设置当前割草任务的边界
13
+ */
14
+ setMowingBoundarys(mowingBoundarys?: number[]): void;
15
+ /**
16
+ * 获取当前割草任务的边界
17
+ */
18
+ getMowingBoundarys(): number[];
9
19
  /**
10
20
  * SVG渲染方法
11
21
  */
@@ -30,5 +40,6 @@ export declare class BoundaryBorderLayer extends BaseLayer {
30
40
  * 将坐标点按type分组
31
41
  */
32
42
  private groupCoordinatesByType;
43
+ private resetPaths;
33
44
  }
34
45
  //# sourceMappingURL=BoundaryBorderLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"BoundaryBorderLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/BoundaryBorderLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAIxC;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,KAAK,EAAE,MAAM,CAAK;;IAQlB;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAc1D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAsB5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8BxB;;OAEG;IACH,OAAO,CAAC,8BAA8B;IAsCtC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAqDrC;;OAEG;IACH,OAAO,CAAC,sBAAsB;CA0C/B"}
1
+ {"version":3,"file":"BoundaryBorderLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/BoundaryBorderLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAKxC;;;GAGG;AACH,qBAAa,mBAAoB,SAAQ,SAAS;IAChD,KAAK,EAAE,MAAM,CAAK;IAClB,kBAAkB,EAAE,MAAM,CAAC,MAAM,EAAE,cAAc,EAAE,CAAC,CAAC;IACrD,eAAe,EAAE,MAAM,EAAE,CAAC;;IAU1B;;OAEG;IACH,kBAAkB,CAAC,eAAe,CAAC,EAAE,MAAM,EAAE;IAS7C;;OAEG;IACH,kBAAkB;IAIlB;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAoC1D;;OAEG;IACH,OAAO,CAAC,oBAAoB;IAuB5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAoCxB;;OAEG;IACH,OAAO,CAAC,8BAA8B;IA4CtC;;OAEG;IACH,OAAO,CAAC,6BAA6B;IAqDrC;;OAEG;IACH,OAAO,CAAC,sBAAsB;IA2C9B,OAAO,CAAC,UAAU;CAGnB"}
@@ -1 +1 @@
1
- {"version":3,"file":"ChannelLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/ChannelLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;GAGG;AACH,qBAAa,YAAa,SAAQ,SAAS;IACzC,KAAK,EAAE,MAAM,CAAK;IAClB,KAAK,EAAE,MAAM,CAAK;;IAQlB;;OAEG;IACI,WAAW,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE;IAIjD;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAe1D;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA+E1C;;OAEG;IACH,OAAO,CAAC,UAAU;CA0DnB"}
1
+ {"version":3,"file":"ChannelLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/ChannelLayer.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAGtC,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAEvC;;;GAGG;AACH,qBAAa,YAAa,SAAQ,SAAS;IACzC,KAAK,EAAE,MAAM,CAAK;IAClB,KAAK,EAAE,MAAM,CAAK;;IAOlB;;OAEG;IACI,WAAW,IAAI,WAAW,CAAC,YAAY,CAAC,EAAE;IAIjD;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI;IAe1D;;OAEG;IACH,OAAO,CAAC,kCAAkC;IA0H1C;;OAEG;IACH,OAAO,CAAC,UAAU;CA0DnB"}
@@ -1,6 +1,6 @@
1
1
  import { BaseLayer } from './BaseLayer';
2
2
  import { PathLayer } from './PathLayer';
3
- import { DrawElement } from './types';
3
+ import { DrawElement } from '../../types/layers';
4
4
  /**
5
5
  * DrawLayer 绘制图层
6
6
  * 负责管理和渲染各种类型的矢量图形元素
@@ -1 +1 @@
1
- {"version":3,"file":"DrawLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/DrawLayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAMxC,OAAO,EAAE,WAAW,EAAE,MAAM,SAAS,CAAC;AAKtC;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,SAAS;IACtC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAe;;IA6BnC;;OAEG;IACI,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAsC7C;;OAEG;IACI,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI;IAOjD;;OAEG;IACI,aAAa,IAAI,IAAI;IAkB5B;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAkBvD,SAAS,IAAI,SAAS,EAAE;IAexB,aAAa,IAAI,SAAS;CAGlC"}
1
+ {"version":3,"file":"DrawLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/DrawLayer.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAMxC,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AAKjD;;;;GAIG;AACH,qBAAa,SAAU,SAAQ,SAAS;IACtC,OAAO,CAAC,YAAY,CAAe;IACnC,OAAO,CAAC,SAAS,CAAY;IAC7B,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,mBAAmB,CAAsB;IACjD,OAAO,CAAC,aAAa,CAAgB;IACrC,OAAO,CAAC,iBAAiB,CAAoB;IAC7C,OAAO,CAAC,UAAU,CAAa;IAC/B,OAAO,CAAC,eAAe,CAAkB;IACzC,OAAO,CAAC,cAAc,CAAiB;IACvC,OAAO,CAAC,YAAY,CAAe;;IA6BnC;;OAEG;IACI,UAAU,CAAC,OAAO,EAAE,WAAW,GAAG,IAAI;IAsC7C;;OAEG;IACI,WAAW,CAAC,QAAQ,EAAE,WAAW,EAAE,GAAG,IAAI;IAOjD;;OAEG;IACI,aAAa,IAAI,IAAI;IAkB5B;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,GAAE,MAAU,GAAG,IAAI;IAkBvD,SAAS,IAAI,SAAS,EAAE;IAexB,aAAa,IAAI,SAAS;CAGlC"}
@@ -7,6 +7,7 @@ export declare class PathLayer extends BaseLayer {
7
7
  level: number;
8
8
  scale: number;
9
9
  lineScale: number;
10
+ boundaryPaths: any;
10
11
  constructor();
11
12
  /**
12
13
  * 创建所有分区并集的 clipPath
@@ -17,8 +18,16 @@ export declare class PathLayer extends BaseLayer {
17
18
  */
18
19
  drawSVG(svgGroup: SVGGElement, scale: number, lineScale: number): void;
19
20
  /**
20
- * 渲染单个路径到指定的组中
21
+ * 优化渲染:按样式分组并合并路径,减少 DOM 节点数量
21
22
  */
22
- private renderPathToGroup;
23
+ private renderOptimizedPaths;
24
+ /**
25
+ * 变换 SVG 路径数据
26
+ */
27
+ private transformSvgPath;
28
+ /**
29
+ * 生成样式键,用于路径分组
30
+ */
31
+ private generateStyleKey;
23
32
  }
24
33
  //# sourceMappingURL=PathLayer.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"PathLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/PathLayer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;GAGG;AACH,qBAAa,SAAU,SAAQ,SAAS;IACtC,KAAK,EAAE,MAAM,CAAK;IAClB,KAAK,EAAE,MAAM,CAAK;IAClB,SAAS,EAAE,MAAM,CAAK;;IAOtB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IA2C3B;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAwB7E;;OAEG;IACH,OAAO,CAAC,iBAAiB;CAwC1B"}
1
+ {"version":3,"file":"PathLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/PathLayer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAExC;;;GAGG;AACH,qBAAa,SAAU,SAAQ,SAAS;IACtC,KAAK,EAAE,MAAM,CAAK;IAClB,KAAK,EAAE,MAAM,CAAK;IAClB,SAAS,EAAE,MAAM,CAAK;IACtB,aAAa,EAAE,GAAG,CAAM;;IAOxB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAmG3B;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,IAAI;IAuB7E;;OAEG;IACH,OAAO,CAAC,oBAAoB;IA2E5B;;OAEG;IACH,OAAO,CAAC,gBAAgB;IAkExB;;OAEG;IACH,OAAO,CAAC,gBAAgB;CAGzB"}
@@ -1 +1 @@
1
- {"version":3,"file":"SvgElementLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/SvgElementLayer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,CAAK;IAClB,KAAK,EAAE,MAAM,CAAK;;IAOlB;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAkB3C;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8DxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAuB7B"}
1
+ {"version":3,"file":"SvgElementLayer.d.ts","sourceRoot":"","sources":["../../../src/render/layers/SvgElementLayer.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC;;;GAGG;AACH,qBAAa,eAAgB,SAAQ,SAAS;IAC5C,KAAK,EAAE,MAAM,CAAK;IAClB,KAAK,EAAE,MAAM,CAAK;;IAOlB;;OAEG;IACI,OAAO,CAAC,QAAQ,EAAE,WAAW,GAAG,IAAI;IAkB3C;;OAEG;IACH,OAAO,CAAC,gBAAgB;IA8DxB;;OAEG;IACH,OAAO,CAAC,oBAAoB;CAqB7B"}
@@ -1,5 +1,4 @@
1
1
  export * from './types';
2
2
  export { BaseLayer } from './BaseLayer';
3
3
  export { DrawLayer } from './DrawLayer';
4
- export { AntennaLayer } from './AntennaLayer';
5
4
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/render/layers/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AACxC,OAAO,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/render/layers/index.ts"],"names":[],"mappings":"AACA,cAAc,SAAS,CAAC;AAGxB,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC"}
@@ -1,37 +1,2 @@
1
- import { BaseConfig } from '@/types/renderer';
2
- /**
3
- * 绘制元素接口
4
- */
5
- export interface DrawElement<T extends BaseConfig> {
6
- type: 'path' | 'boundary' | 'boundary_border' | 'obstacle' | 'charging_pile' | 'point' | 'svg' | 'channel' | 'vision_off_area' | 'antenna';
7
- coordinates: number[][];
8
- style: T;
9
- metadata?: any;
10
- originalData?: any;
11
- }
12
- /**
13
- * 图层接口
14
- */
15
- export interface ILayer {
16
- setLevel(level: number): void;
17
- getLevel(): number;
18
- setVisible(visible: boolean): void;
19
- isVisible(): boolean;
20
- drawSVG(svgGroup: SVGGElement, scale: number): void;
21
- }
22
- export interface SvgElementStyle {
23
- strokeColor?: string;
24
- fillColor?: string;
25
- opacity?: number;
26
- }
27
- export interface SvgElementMetadata {
28
- svg: string;
29
- scale: number;
30
- direction: number;
31
- }
32
- export interface AntennaMetadata {
33
- antennaId: number;
34
- online: boolean;
35
- size?: number;
36
- }
1
+ export type { DrawElement, ILayer, SvgElementStyle, SvgElementMetadata, AntennaMetadata } from '../../types/layers';
37
2
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/render/layers/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,kBAAkB,CAAC;AAE9C;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,SAAS,UAAU;IAC/C,IAAI,EACA,MAAM,GACN,UAAU,GACV,iBAAiB,GACjB,UAAU,GACV,eAAe,GACf,OAAO,GACP,KAAK,GACL,SAAS,GACT,iBAAiB,GACjB,SAAS,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,YAAY,CAAC,EAAE,GAAG,CAAC;CACpB;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,IAAI,MAAM,CAAC;IACnB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,SAAS,IAAI,OAAO,CAAC;IACrB,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACrD;AAID,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/render/layers/types.ts"],"names":[],"mappings":"AACA,YAAY,EACV,WAAW,EACX,MAAM,EACN,eAAe,EACf,kBAAkB,EAClB,eAAe,EAChB,MAAM,oBAAoB,CAAC"}
@@ -0,0 +1,4 @@
1
+ import { ProcessMowingState } from '../types/store';
2
+ declare const useProcessMowingState: import("zustand").UseBoundStore<import("zustand").StoreApi<ProcessMowingState>>;
3
+ export default useProcessMowingState;
4
+ //# sourceMappingURL=processMowingState.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processMowingState.d.ts","sourceRoot":"","sources":["../../src/store/processMowingState.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,kBAAkB,EAAE,MAAM,gBAAgB,CAAC;AAEpD,QAAA,MAAM,qBAAqB,iFAIxB,CAAC;AAEJ,eAAe,qBAAqB,CAAC"}
@@ -1,10 +1,14 @@
1
- import { DrawElement } from '../render/layers';
1
+ import { DrawElement } from '../types/layers';
2
2
  interface SubBoundaryBorderStore {
3
- subBoundaryBorder: Record<string, DrawElement>;
4
- setSubBoundaryBorder: (subBoundaryBorder: Record<string, DrawElement>) => void;
5
- addSubBoundaryBorder: (key: string, element: DrawElement) => void;
6
- addMultipleSubBoundaryBorders: (borders: Record<string, DrawElement>) => void;
3
+ subBoundaryBorder: Record<string, DrawElement<any>>;
4
+ addSubBoundaryBorder: (key: string, element: DrawElement<any>) => void;
7
5
  clearSubBoundaryBorder: () => void;
6
+ obstacles: Record<string, DrawElement<any>>;
7
+ addObstacles: (key: string, element: DrawElement<any>) => void;
8
+ clearObstacles: () => void;
9
+ svgElements: Record<string, DrawElement<any>>;
10
+ addSvgElements: (key: string, element: DrawElement<any>) => void;
11
+ clearSvgElements: () => void;
8
12
  }
9
13
  declare const useSubBoundaryBorderStore: import("zustand").UseBoundStore<import("zustand").StoreApi<SubBoundaryBorderStore>>;
10
14
  export default useSubBoundaryBorderStore;
@@ -1 +1 @@
1
- {"version":3,"file":"useSubBoundaryBorderStore.d.ts","sourceRoot":"","sources":["../../src/store/useSubBoundaryBorderStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,UAAU,sBAAsB;IAC9B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC/C,oBAAoB,EAAE,CAAC,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,IAAI,CAAC;IAC/E,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,KAAK,IAAI,CAAC;IAClE,6BAA6B,EAAE,CAAC,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,KAAK,IAAI,CAAC;IAC9E,sBAAsB,EAAE,MAAM,IAAI,CAAC;CACpC;AAED,QAAA,MAAM,yBAAyB,qFA2B5B,CAAC;AAEJ,eAAe,yBAAyB,CAAC"}
1
+ {"version":3,"file":"useSubBoundaryBorderStore.d.ts","sourceRoot":"","sources":["../../src/store/useSubBoundaryBorderStore.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAG9C,UAAU,sBAAsB;IAC9B,iBAAiB,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IACpD,oBAAoB,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACvE,sBAAsB,EAAE,MAAM,IAAI,CAAC;IACnC,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC5C,YAAY,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IAC/D,cAAc,EAAE,MAAM,IAAI,CAAC;IAC3B,WAAW,EAAE,MAAM,CAAC,MAAM,EAAE,WAAW,CAAC,GAAG,CAAC,CAAC,CAAC;IAC9C,cAAc,EAAE,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,CAAC,GAAG,CAAC,KAAK,IAAI,CAAC;IACjE,gBAAgB,EAAE,MAAM,IAAI,CAAC;CAC9B;AAED,QAAA,MAAM,yBAAyB,qFAkC5B,CAAC;AAEJ,eAAe,yBAAyB,CAAC"}
@@ -0,0 +1,38 @@
1
+ /**
2
+ * 常量和枚举类型定义
3
+ */
4
+ /**
5
+ * 机器人状态枚举
6
+ */
7
+ export declare enum RobotStatus {
8
+ PARKED = 1,
9
+ CHARGING = 2,
10
+ STANDBY = 3,
11
+ MOWING = 4,
12
+ WORKING = 5,
13
+ MAPPING = 6,
14
+ ERROR = 7,
15
+ UPGRADING = 8,
16
+ DISCONNECTED = 9,
17
+ UNKNOWN = -1,
18
+ TASK_DELAY = 10
19
+ }
20
+ /**
21
+ * RTK状态枚举
22
+ */
23
+ export declare enum RTK_STATE {
24
+ LOW_RTK = 1,
25
+ MIDDLE_RTK = 2,
26
+ HIGH_RTK = 3,
27
+ NO_POSTURE = 10,
28
+ OUT_OF_RANGE = 11,
29
+ OFF_LINE = 19
30
+ }
31
+ /**
32
+ * 实时数据类型枚举
33
+ */
34
+ export declare enum REAL_TIME_DATA_TYPE {
35
+ LOCATION = 1,
36
+ PROCESS = 2
37
+ }
38
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/types/constants.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,oBAAY,WAAW;IACrB,MAAM,IAAI;IACV,QAAQ,IAAI;IACZ,OAAO,IAAI;IACX,MAAM,IAAI;IACV,OAAO,IAAI;IACX,OAAO,IAAI;IACX,KAAK,IAAI;IACT,SAAS,IAAI;IACb,YAAY,IAAI;IAChB,OAAO,KAAK;IACZ,UAAU,KAAK;CAChB;AAED;;GAEG;AACH,oBAAY,SAAS;IACnB,OAAO,IAAI;IACX,UAAU,IAAI;IACd,QAAQ,IAAI;IACZ,UAAU,KAAK;IACf,YAAY,KAAK;IACjB,QAAQ,KAAK;CACd;AAED;;GAEG;AACH,oBAAY,mBAAmB;IAC7B,QAAQ,IAAI;IACZ,OAAO,IAAI;CACZ"}
@@ -9,4 +9,10 @@ export * from './path';
9
9
  export * from './ui';
10
10
  export * from './edit';
11
11
  export * from './renderer';
12
+ export * from './realTime';
13
+ export * from './processor';
14
+ export * from './utils';
15
+ export * from './store';
16
+ export * from './layers';
17
+ export * from './constants';
12
18
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,MAAM,CAAC;AACrB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAGH,cAAc,WAAW,CAAC;AAC1B,cAAc,UAAU,CAAC;AACzB,cAAc,YAAY,CAAC;AAC3B,cAAc,OAAO,CAAC;AACtB,cAAc,QAAQ,CAAC;AACvB,cAAc,MAAM,CAAC;AACrB,cAAc,QAAQ,CAAC;AACvB,cAAc,YAAY,CAAC;AAC3B,cAAc,YAAY,CAAC;AAC3B,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,aAAa,CAAC"}
@@ -0,0 +1,50 @@
1
+ /**
2
+ * 渲染层模块类型定义
3
+ */
4
+ import { PathSegmentType } from './utils';
5
+ /**
6
+ * 绘制元素接口
7
+ */
8
+ export interface DrawElement<T = any> {
9
+ type: 'path' | 'boundary' | 'boundary_border' | 'obstacle' | 'charging_pile' | 'point' | 'svg' | 'channel' | 'vision_off_area' | 'antenna';
10
+ coordinates: number[][];
11
+ style: T;
12
+ metadata?: any;
13
+ originalData?: any;
14
+ pathType?: PathSegmentType;
15
+ }
16
+ /**
17
+ * 图层接口
18
+ */
19
+ export interface ILayer {
20
+ setLevel(level: number): void;
21
+ getLevel(): number;
22
+ setVisible(visible: boolean): void;
23
+ isVisible(): boolean;
24
+ drawSVG(svgGroup: SVGGElement, scale: number): void;
25
+ }
26
+ /**
27
+ * SVG元素样式接口
28
+ */
29
+ export interface SvgElementStyle {
30
+ strokeColor?: string;
31
+ fillColor?: string;
32
+ opacity?: number;
33
+ }
34
+ /**
35
+ * SVG元素元数据接口
36
+ */
37
+ export interface SvgElementMetadata {
38
+ svg: string;
39
+ scale: number;
40
+ direction: number;
41
+ }
42
+ /**
43
+ * 天线元数据接口
44
+ */
45
+ export interface AntennaMetadata {
46
+ antennaId: number;
47
+ online: boolean;
48
+ size?: number;
49
+ }
50
+ //# sourceMappingURL=layers.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layers.d.ts","sourceRoot":"","sources":["../../src/types/layers.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH,OAAO,EAAE,eAAe,EAAE,MAAM,SAAS,CAAC;AAE1C;;GAEG;AACH,MAAM,WAAW,WAAW,CAAC,CAAC,GAAG,GAAG;IAClC,IAAI,EACA,MAAM,GACN,UAAU,GACV,iBAAiB,GACjB,UAAU,GACV,eAAe,GACf,OAAO,GACP,KAAK,GACL,SAAS,GACT,iBAAiB,GACjB,SAAS,CAAC;IACd,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC;IACxB,KAAK,EAAE,CAAC,CAAC;IACT,QAAQ,CAAC,EAAE,GAAG,CAAC;IACf,YAAY,CAAC,EAAE,GAAG,CAAC;IACnB,QAAQ,CAAC,EAAE,eAAe,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,MAAM;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IAC9B,QAAQ,IAAI,MAAM,CAAC;IACnB,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI,CAAC;IACnC,SAAS,IAAI,OAAO,CAAC;IACrB,OAAO,CAAC,QAAQ,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;CACrD;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,MAAM,WAAW,kBAAkB;IACjC,GAAG,EAAE,MAAM,CAAC;IACZ,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,MAAM,CAAC;CACnB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,OAAO,CAAC;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf"}
@@ -0,0 +1,26 @@
1
+ /**
2
+ * 处理器模块类型定义
3
+ */
4
+ /**
5
+ * 路径数据处理器配置
6
+ */
7
+ export interface PathConfig {
8
+ lineWidth?: number;
9
+ showEdgePaths?: boolean;
10
+ showTransPaths?: boolean;
11
+ showMowingPaths?: boolean;
12
+ edgePathColor?: string;
13
+ transPathColor?: string;
14
+ mowingPathColor?: string;
15
+ edgePathOpacity?: number;
16
+ transPathOpacity?: number;
17
+ mowingPathOpacity?: number;
18
+ }
19
+ /**
20
+ * 路径元素集合
21
+ */
22
+ export interface PathElements {
23
+ id: number;
24
+ elements: any[];
25
+ }
26
+ //# sourceMappingURL=processor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"processor.d.ts","sourceRoot":"","sources":["../../src/types/processor.ts"],"names":[],"mappings":"AAAA;;GAEG;AAEH;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,aAAa,CAAC,EAAE,OAAO,CAAC;IACxB,cAAc,CAAC,EAAE,OAAO,CAAC;IACzB,eAAe,CAAC,EAAE,OAAO,CAAC;IAC1B,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,iBAAiB,CAAC,EAAE,MAAM,CAAC;CAC5B;AAED;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,GAAG,EAAE,CAAC;CACjB"}
@@ -1,20 +1,45 @@
1
+ import { RobotStatus } from './constants';
2
+ export declare enum RealTimeDataType {
3
+ LOCATION = 1,
4
+ PROCESS = 2,
5
+ PARTITION = 3,
6
+ STATUS = 4
7
+ }
1
8
  export interface RealTimeLocationType {
2
- type: number;
9
+ type?: RealTimeDataType;
3
10
  time?: number;
4
11
  longitude?: string;
5
12
  latitude?: string;
6
13
  postureX?: string;
7
14
  postureY?: string;
8
15
  postureTheta?: string;
16
+ lastPostureX?: string;
17
+ lastPostureY?: string;
18
+ lastPostureTheta?: string;
9
19
  rtk?: string;
10
20
  vehicleState?: number;
11
21
  }
12
22
  export interface RealTimeProcessType {
13
- type: number;
23
+ type?: RealTimeDataType;
14
24
  time?: number;
15
25
  mowingPercentage?: number;
16
26
  mapWorkPosition?: string;
17
27
  subtotalArea?: string;
18
28
  mowingWeekArea?: string;
29
+ action?: number;
30
+ subAction?: number;
31
+ mowStartType?: number;
32
+ currentMowBoundary?: number;
33
+ currentMowProgress?: number;
34
+ }
35
+ export interface RealTimePartitionType {
36
+ type?: RealTimeDataType;
37
+ time?: number;
38
+ partitionIds?: number[];
39
+ }
40
+ export interface RealTimeStatusType {
41
+ type?: RealTimeDataType;
42
+ time?: number;
43
+ vehicleState?: RobotStatus;
19
44
  }
20
45
  //# sourceMappingURL=realTime.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"realTime.d.ts","sourceRoot":"","sources":["../../src/types/realTime.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,oBAAoB;IACnC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB"}
1
+ {"version":3,"file":"realTime.d.ts","sourceRoot":"","sources":["../../src/types/realTime.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAE1C,oBAAY,gBAAgB;IAC1B,QAAQ,IAAI;IACZ,OAAO,IAAI;IACX,SAAS,IAAI;IACb,MAAM,IAAI;CACX;AAED,MAAM,WAAW,oBAAoB;IACnC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB;AAED,MAAM,WAAW,mBAAmB;IAClC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;IAExB,MAAM,CAAC,EAAE,MAAM,CAAC;IAEhB,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,YAAY,CAAC,EAAE,MAAM,CAAC;IAEtB,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAE5B,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B;AAGD,MAAM,WAAW,qBAAqB;IACpC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,kBAAkB;IACjC,IAAI,CAAC,EAAE,gBAAgB,CAAC;IACxB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,WAAW,CAAC;CAC5B"}