@aibee/crc-bmap 0.14.25 → 0.14.27

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.
package/lib/meta.json CHANGED
@@ -386,7 +386,7 @@
386
386
  "format": "esm"
387
387
  },
388
388
  "../lib/src/utils/road2.js": {
389
- "bytes": 56334,
389
+ "bytes": 62617,
390
390
  "imports": [
391
391
  {
392
392
  "path": "../../../node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_extends.js",
@@ -1542,7 +1542,7 @@
1542
1542
  "format": "esm"
1543
1543
  },
1544
1544
  "../lib/src/factory/model.js": {
1545
- "bytes": 1943,
1545
+ "bytes": 2638,
1546
1546
  "imports": [
1547
1547
  {
1548
1548
  "path": "../../../node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_extends.js",
@@ -1564,6 +1564,11 @@
1564
1564
  "kind": "import-statement",
1565
1565
  "external": true
1566
1566
  },
1567
+ {
1568
+ "path": "three/examples/jsm/utils/SkeletonUtils.js",
1569
+ "kind": "import-statement",
1570
+ "external": true
1571
+ },
1567
1572
  {
1568
1573
  "path": "../lib/src/external/DRACOLoader.js",
1569
1574
  "kind": "import-statement",
@@ -2191,7 +2196,7 @@
2191
2196
  "format": "esm"
2192
2197
  },
2193
2198
  "../src/utils/road2.ts": {
2194
- "bytes": 54590,
2199
+ "bytes": 61282,
2195
2200
  "imports": [
2196
2201
  {
2197
2202
  "path": "../../../node_modules/.pnpm/node-dijkstra@2.5.0/node_modules/node-dijkstra/libs/Graph.js",
@@ -2746,7 +2751,7 @@
2746
2751
  "format": "esm"
2747
2752
  },
2748
2753
  "../src/factory/model.ts": {
2749
- "bytes": 1545,
2754
+ "bytes": 2347,
2750
2755
  "imports": [
2751
2756
  {
2752
2757
  "path": "../src/utils/index.ts",
@@ -2758,6 +2763,11 @@
2758
2763
  "kind": "import-statement",
2759
2764
  "external": true
2760
2765
  },
2766
+ {
2767
+ "path": "three/examples/jsm/utils/SkeletonUtils.js",
2768
+ "kind": "import-statement",
2769
+ "external": true
2770
+ },
2761
2771
  {
2762
2772
  "path": "../src/external/DRACOLoader.js",
2763
2773
  "kind": "import-statement",
@@ -4781,13 +4791,18 @@
4781
4791
  "format": "esm"
4782
4792
  },
4783
4793
  "../lib/src/loader/AibeeLoader/index.js": {
4784
- "bytes": 18149,
4794
+ "bytes": 18924,
4785
4795
  "imports": [
4786
4796
  {
4787
4797
  "path": "../../../node_modules/.pnpm/@swc+helpers@0.5.17/node_modules/@swc/helpers/esm/_extends.js",
4788
4798
  "kind": "import-statement",
4789
4799
  "original": "@swc/helpers/_/_extends"
4790
4800
  },
4801
+ {
4802
+ "path": "core-js/modules/es.regexp.exec.js",
4803
+ "kind": "import-statement",
4804
+ "external": true
4805
+ },
4791
4806
  {
4792
4807
  "path": "core-js/modules/web.dom-collections.iterator.js",
4793
4808
  "kind": "import-statement",
@@ -7624,6 +7639,11 @@
7624
7639
  "kind": "import-statement",
7625
7640
  "external": true
7626
7641
  },
7642
+ {
7643
+ "path": "three/examples/jsm/utils/SkeletonUtils.js",
7644
+ "kind": "import-statement",
7645
+ "external": true
7646
+ },
7627
7647
  {
7628
7648
  "path": "core-js/modules/web.dom-collections.iterator.js",
7629
7649
  "kind": "import-statement",
@@ -8729,6 +8749,11 @@
8729
8749
  "kind": "import-statement",
8730
8750
  "external": true
8731
8751
  },
8752
+ {
8753
+ "path": "core-js/modules/es.regexp.exec.js",
8754
+ "kind": "import-statement",
8755
+ "external": true
8756
+ },
8732
8757
  {
8733
8758
  "path": "core-js/modules/web.dom-collections.iterator.js",
8734
8759
  "kind": "import-statement",
@@ -9451,6 +9476,7 @@
9451
9476
  "PoiLayer",
9452
9477
  "PoiLayer2",
9453
9478
  "Position",
9479
+ "ProofType",
9454
9480
  "RENDER_VERSION",
9455
9481
  "RecommendParkingSpace",
9456
9482
  "Renderer",
@@ -9643,7 +9669,7 @@
9643
9669
  "bytesInOutput": 5426
9644
9670
  },
9645
9671
  "../lib/src/utils/road2.js": {
9646
- "bytesInOutput": 17440
9672
+ "bytesInOutput": 18992
9647
9673
  },
9648
9674
  "../lib/src/factory/unique-key.js": {
9649
9675
  "bytesInOutput": 774
@@ -9709,7 +9735,7 @@
9709
9735
  "bytesInOutput": 1581
9710
9736
  },
9711
9737
  "../lib/src/factory/model.js": {
9712
- "bytesInOutput": 826
9738
+ "bytesInOutput": 898
9713
9739
  },
9714
9740
  "../lib/src/external/DRACOLoader.js": {
9715
9741
  "bytesInOutput": 7867
@@ -9913,7 +9939,7 @@
9913
9939
  "bytesInOutput": 1276
9914
9940
  },
9915
9941
  "../lib/src/loader/AibeeLoader/index.js": {
9916
- "bytesInOutput": 8842
9942
+ "bytesInOutput": 9189
9917
9943
  },
9918
9944
  "../lib/src/loader/AibeeLoader/layer.js": {
9919
9945
  "bytesInOutput": 4410
@@ -10069,7 +10095,7 @@
10069
10095
  "bytesInOutput": 0
10070
10096
  }
10071
10097
  },
10072
- "bytes": 440457
10098
+ "bytes": 442444
10073
10099
  }
10074
10100
  }
10075
10101
  }
@@ -4,5 +4,15 @@ export declare class ModelFactory {
4
4
  static loader: GLTFLoader;
5
5
  static modelMap: Map<string, GLTF | Promise<GLTF>>;
6
6
  static loadModel(url: string, useCache?: boolean): Promise<GLTF>;
7
+ /**
8
+ * 复制一份 gltf 给调用方使用。
9
+ *
10
+ * 必须用 SkeletonUtils.clone,不能用 gltf.scene.clone():
11
+ * Object3D.clone() 复制蒙皮网格(SkinnedMesh)时不会重建 skeleton,克隆体的蒙皮网格仍然
12
+ * 指向原始模型的骨骼对象,而那些骨骼不在渲染树里、matrixWorld 永远是 identity,
13
+ * 渲染时蒙皮模型会整体塌缩到模型原点(表现为模型“只剩非蒙皮的部件”)。
14
+ * SkeletonUtils.clone 会把骨骼一起复制,并让每个蒙皮网格绑定到自己那份骨骼上。
15
+ */
16
+ static cloneGltf(gltf: GLTF): GLTF;
7
17
  static dispose(): void;
8
18
  }
@@ -11,6 +11,8 @@ export interface RoadData2 {
11
11
  visible: boolean;
12
12
  userData: Record<string, string>;
13
13
  direction: "double" | "single" | "noDir" | "back" | "single-people" | "back-people";
14
+ sunProof?: boolean;
15
+ rain?: boolean;
14
16
  }>;
15
17
  points: Array<{
16
18
  id: string;
@@ -94,8 +96,13 @@ export type PathData2 = {
94
96
  distance: number;
95
97
  consume: number;
96
98
  }[];
99
+ export declare enum ProofType {
100
+ SunProof = "sunProof",// 防晒
101
+ Rain = "rain"
102
+ }
97
103
  export interface GetPathOtherParams {
98
104
  adsorptionIntersection?: boolean;
105
+ proof?: ProofType | ProofType[];
99
106
  }
100
107
  export declare class RoadNetwork2 {
101
108
  private lift_priority;
@@ -258,6 +265,7 @@ export declare class RoadNetwork2 {
258
265
  straightLadderRoute: Graph;
259
266
  forwardLineMap: Map<string, Map<string, number>>;
260
267
  forwardRoute: Graph;
268
+ private proofRouteMap;
261
269
  constructor(lift_priority?: number);
262
270
  setLiftPriority(lift_priority: number): void;
263
271
  isFacilityByType(type: string): boolean;
@@ -299,6 +307,25 @@ export declare class RoadNetwork2 {
299
307
  initEscalatorRoute(): void;
300
308
  initStraightLadderRoute(): void;
301
309
  initForwardRoute(): void;
310
+ /**
311
+ * 把不防晒/不防雨的路网线的消耗放大
312
+ * 这样规划出来的路线会优先走防晒/防雨的路网线
313
+ * 只有在没有其他路可走的时候,才会走不防晒/不防雨的路网线
314
+ * @param lineMap 从普通路网复制的路网
315
+ * @param field 防晒 ProofType.SunProof / 防雨 ProofType.Rain
316
+ */
317
+ private addNoProofWeight;
318
+ private getRouteByType;
319
+ /**
320
+ * 获取防晒/防雨路网
321
+ * 会基于对应类型的基础路网复制一份,把不防晒/不防雨的路网线的消耗放大
322
+ * 这样规划出来的路线会优先走防晒/防雨的路网线,只有在没有其他路可走的时候才会走不防晒/不防雨的路网线
323
+ * 规划路线的时候创建,创建之后会缓存起来,不会重复创建
324
+ * @param type 基础路线类型 '' 最优路线 escalator 扶梯优先 straightLadder 直梯优先
325
+ * @param sunProof 防晒优先
326
+ * @param rain 防雨优先
327
+ */
328
+ private getProofRoute;
302
329
  checkStart(start: Start2): boolean;
303
330
  checkEnd(end: End2): boolean;
304
331
  transformStart(start: Start2, type: RouteType2, options?: GetPathOtherParams): {
@@ -319,7 +346,7 @@ export declare class RoadNetwork2 {
319
346
  * @param type '' 最短路径 escalator 扶梯优先 straightLadder 直梯优先
320
347
  * @param permission 0 无权限 1 通行卡
321
348
  * @param travelDirection 行驶方向 从Y轴正方向的顺时针角度
322
- * @param options 其他参数
349
+ * @param options 其他参数 proof 防晒/防雨优先 可以和任意路线类型叠加
323
350
  * @returns
324
351
  */
325
352
  getPath(start: Start2, end: End2, type?: RouteType2, permission?: number | number[], travelDirection?: number, options?: GetPathOtherParams): PathData2 | null | string;
@@ -327,6 +354,26 @@ export declare class RoadNetwork2 {
327
354
  private getBasePath;
328
355
  private getEscalatorPath;
329
356
  private getStraightLadderPath;
357
+ /**
358
+ * 规划防晒优先路线 可以在最优路线/扶梯优先/直梯优先的基础上叠加
359
+ * @param start 起点
360
+ * @param end 终点
361
+ * @param type '' 最短路径 escalator 扶梯优先 straightLadder 直梯优先
362
+ * @param permission 0 无权限 1 通行卡
363
+ * @param travelDirection 行驶方向 从Y轴正方向的顺时针角度
364
+ * @param options 其他参数
365
+ */
366
+ getSunProofPath(start: Start2, end: End2, type?: RouteType2, permission?: number | number[], travelDirection?: number, options?: GetPathOtherParams): string | PathData2 | null;
367
+ /**
368
+ * 规划防雨优先路线 可以在最优路线/扶梯优先/直梯优先的基础上叠加
369
+ * @param start 起点
370
+ * @param end 终点
371
+ * @param type '' 最短路径 escalator 扶梯优先 straightLadder 直梯优先
372
+ * @param permission 0 无权限 1 通行卡
373
+ * @param travelDirection 行驶方向 从Y轴正方向的顺时针角度
374
+ * @param options 其他参数
375
+ */
376
+ getRainProofPath(start: Start2, end: End2, type?: RouteType2, permission?: number | number[], travelDirection?: number, options?: GetPathOtherParams): string | PathData2 | null;
330
377
  private getForwardPath;
331
378
  clear(): void;
332
379
  }