bruce-cesium 2.3.9 → 2.4.1

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 (24) hide show
  1. package/dist/bruce-cesium.es5.js +139 -52
  2. package/dist/bruce-cesium.es5.js.map +1 -1
  3. package/dist/bruce-cesium.umd.js +138 -51
  4. package/dist/bruce-cesium.umd.js.map +1 -1
  5. package/dist/lib/bruce-cesium.js +1 -1
  6. package/dist/lib/rendering/entity-render-engine.js +118 -45
  7. package/dist/lib/rendering/entity-render-engine.js.map +1 -1
  8. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +2 -1
  9. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +1 -1
  10. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +2 -1
  11. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js.map +1 -1
  12. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +2 -1
  13. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +1 -1
  14. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +2 -1
  15. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +1 -1
  16. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +2 -1
  17. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
  18. package/dist/lib/rendering/visuals-register.js +2 -0
  19. package/dist/lib/rendering/visuals-register.js.map +1 -1
  20. package/dist/lib/utils/entity-utils.js +7 -0
  21. package/dist/lib/utils/entity-utils.js.map +1 -1
  22. package/dist/types/bruce-cesium.d.ts +1 -1
  23. package/dist/types/rendering/visuals-register.d.ts +1 -0
  24. package/package.json +1 -1
@@ -823,6 +823,8 @@
823
823
  processKey("point", "color");
824
824
  processKey("ellipse");
825
825
  processKey("model", "color");
826
+ processKey("corridor");
827
+ processKey("billboard", "color");
826
828
  }
827
829
  else if (entity instanceof Cesium.Cesium3DTileFeature) {
828
830
  var orgOpacity = entity[ORG_OPACITY_KEY];
@@ -859,6 +861,8 @@
859
861
  processKey("point", "color");
860
862
  processKey("ellipse");
861
863
  processKey("model", "color");
864
+ processKey("corridor");
865
+ processKey("billboard", "color");
862
866
  }
863
867
  else if (entity instanceof Cesium.Cesium3DTileFeature) {
864
868
  var orgOpacity = entity[ORG_OPACITY_KEY];
@@ -918,6 +922,9 @@
918
922
  else if (visual.billboard) {
919
923
  visualHeightRef = GetValue(viewer, visual.billboard.heightReference);
920
924
  }
925
+ else if (visual.corridor) {
926
+ visualHeightRef = GetValue(viewer, visual.corridor.heightReference);
927
+ }
921
928
  else if (visual.ellipse) {
922
929
  visualHeightRef = GetValue(viewer, visual.ellipse.heightReference);
923
930
  }
@@ -1640,6 +1647,42 @@
1640
1647
  }
1641
1648
  return obj;
1642
1649
  }
1650
+ function getName(api, entity) {
1651
+ return __awaiter(this, void 0, void 0, function () {
1652
+ var typeId, type, name_1, e_1;
1653
+ return __generator(this, function (_a) {
1654
+ switch (_a.label) {
1655
+ case 0:
1656
+ _a.trys.push([0, 3, , 4]);
1657
+ typeId = entity.Bruce["EntityType.ID"];
1658
+ type = null;
1659
+ if (!typeId) return [3 /*break*/, 2];
1660
+ return [4 /*yield*/, bruceModels.EntityType.Get({
1661
+ api: api,
1662
+ entityTypeId: typeId
1663
+ })];
1664
+ case 1:
1665
+ type = (_a.sent()).entityType;
1666
+ _a.label = 2;
1667
+ case 2:
1668
+ if (type) {
1669
+ name_1 = bruceModels.Entity.CalculateName({
1670
+ entity: entity,
1671
+ type: type,
1672
+ defaultToId: false
1673
+ });
1674
+ return [2 /*return*/, name_1 ? name_1 : "Unnamed entity"];
1675
+ }
1676
+ return [3 /*break*/, 4];
1677
+ case 3:
1678
+ e_1 = _a.sent();
1679
+ console.error(e_1);
1680
+ return [3 /*break*/, 4];
1681
+ case 4: return [2 /*return*/, "Unknown entity"];
1682
+ }
1683
+ });
1684
+ });
1685
+ }
1643
1686
  function getStyle(api, entity, styleId) {
1644
1687
  return __awaiter(this, void 0, void 0, function () {
1645
1688
  var style, typeId, type;
@@ -1972,7 +2015,7 @@
1972
2015
  (function (Point) {
1973
2016
  function Render(params) {
1974
2017
  return __awaiter(this, void 0, void 0, function () {
1975
- var entity, style, type, cEntity, siblings, iconUrlRows, icon, iconUrl, res, e_1, iconScale, heightRef, radius, bFill, cFill, outline, cOutline, outlineWidth, outlineHeight, bOutline, fillHeight, exHeightRef, pos, bColor, cColor, size, heightRef;
2018
+ var entity, style, type, cEntity, siblings, iconUrlRows, icon, iconUrl, res, e_2, iconScale, heightRef, radius, bFill, cFill, outline, cOutline, outlineWidth, outlineHeight, bOutline, fillHeight, exHeightRef, pos, bColor, cColor, size, heightRef;
1976
2019
  return __generator(this, function (_a) {
1977
2020
  switch (_a.label) {
1978
2021
  case 0:
@@ -2025,7 +2068,7 @@
2025
2068
  _a.label = 4;
2026
2069
  case 4: return [3 /*break*/, 6];
2027
2070
  case 5:
2028
- e_1 = _a.sent();
2071
+ e_2 = _a.sent();
2029
2072
  iconUrl = null;
2030
2073
  return [3 /*break*/, 6];
2031
2074
  case 6:
@@ -2170,7 +2213,7 @@
2170
2213
  function RenderGroup(params) {
2171
2214
  var _a, _b, _c;
2172
2215
  return __awaiter(this, void 0, void 0, function () {
2173
- var api, cEntities, i, entity, zoomItem, style, tagIds, tags, pStyle, cEntity;
2216
+ var api, cEntities, i, entity, zoomItem, style, tagIds, tags, pStyle, cEntity, name_2;
2174
2217
  return __generator(this, function (_d) {
2175
2218
  switch (_d.label) {
2176
2219
  case 0:
@@ -2179,7 +2222,7 @@
2179
2222
  i = 0;
2180
2223
  _d.label = 1;
2181
2224
  case 1:
2182
- if (!(i < params.entities.length)) return [3 /*break*/, 7];
2225
+ if (!(i < params.entities.length)) return [3 /*break*/, 9];
2183
2226
  entity = params.entities[i];
2184
2227
  zoomItem = params.zoomItems[entity.Bruce.ID];
2185
2228
  return [4 /*yield*/, getStyle(api, entity, zoomItem.StyleID)];
@@ -2208,15 +2251,20 @@
2208
2251
  })];
2209
2252
  case 5:
2210
2253
  cEntity = _d.sent();
2211
- if (cEntity) {
2212
- cEntity._renderGroup = getRenderGroupId(zoomItem, (_c = params.viewer) === null || _c === void 0 ? void 0 : _c.terrainProvider);
2213
- }
2214
- cEntities[entity.Bruce.ID] = cEntity;
2215
- _d.label = 6;
2254
+ if (!cEntity) return [3 /*break*/, 7];
2255
+ return [4 /*yield*/, getName(api, entity)];
2216
2256
  case 6:
2257
+ name_2 = _d.sent();
2258
+ cEntity.name = name_2;
2259
+ cEntity._renderGroup = getRenderGroupId(zoomItem, (_c = params.viewer) === null || _c === void 0 ? void 0 : _c.terrainProvider);
2260
+ _d.label = 7;
2261
+ case 7:
2262
+ cEntities[entity.Bruce.ID] = cEntity;
2263
+ _d.label = 8;
2264
+ case 8:
2217
2265
  i++;
2218
2266
  return [3 /*break*/, 1];
2219
- case 7: return [2 /*return*/, cEntities];
2267
+ case 9: return [2 /*return*/, cEntities];
2220
2268
  }
2221
2269
  });
2222
2270
  });
@@ -2313,7 +2361,7 @@
2313
2361
  function RenderGroup(params) {
2314
2362
  var _a, _b, _c;
2315
2363
  return __awaiter(this, void 0, void 0, function () {
2316
- var api, cEntities, i, entity, zoomItem, style, tagIds, tags, lStyle, cEntity;
2364
+ var api, cEntities, i, entity, zoomItem, style, tagIds, tags, lStyle, cEntity, name_3;
2317
2365
  return __generator(this, function (_d) {
2318
2366
  switch (_d.label) {
2319
2367
  case 0:
@@ -2322,7 +2370,7 @@
2322
2370
  i = 0;
2323
2371
  _d.label = 1;
2324
2372
  case 1:
2325
- if (!(i < params.entities.length)) return [3 /*break*/, 6];
2373
+ if (!(i < params.entities.length)) return [3 /*break*/, 7];
2326
2374
  entity = params.entities[i];
2327
2375
  zoomItem = params.zoomItems[entity.Bruce.ID];
2328
2376
  return [4 /*yield*/, getStyle(api, entity, zoomItem.StyleID)];
@@ -2348,15 +2396,18 @@
2348
2396
  maxDistance: zoomItem.MaxZoom,
2349
2397
  minDistance: zoomItem.MinZoom
2350
2398
  });
2351
- if (cEntity) {
2352
- cEntity._renderGroup = getRenderGroupId(zoomItem, (_c = params.viewer) === null || _c === void 0 ? void 0 : _c.terrainProvider);
2353
- cEntities[entity.Bruce.ID] = cEntity;
2354
- }
2355
- _d.label = 5;
2399
+ if (!cEntity) return [3 /*break*/, 6];
2400
+ return [4 /*yield*/, getName(api, entity)];
2356
2401
  case 5:
2402
+ name_3 = _d.sent();
2403
+ cEntity.name = name_3;
2404
+ cEntity._renderGroup = getRenderGroupId(zoomItem, (_c = params.viewer) === null || _c === void 0 ? void 0 : _c.terrainProvider);
2405
+ cEntities[entity.Bruce.ID] = cEntity;
2406
+ _d.label = 6;
2407
+ case 6:
2357
2408
  i++;
2358
2409
  return [3 /*break*/, 1];
2359
- case 6: return [2 /*return*/, cEntities];
2410
+ case 7: return [2 /*return*/, cEntities];
2360
2411
  }
2361
2412
  });
2362
2413
  });
@@ -2437,16 +2488,27 @@
2437
2488
  bruceModels.Cartes.CloseRing3(borderPosses);
2438
2489
  }
2439
2490
  var cEntityBorder = new Cesium.Entity({
2440
- polyline: new Cesium.PolylineGraphics({
2491
+ // polyline: new Cesium.PolylineGraphics({
2492
+ // positions: borderPosses,
2493
+ // material: <Cesium.MaterialProperty><any>cLineColor,
2494
+ // width: width,
2495
+ // clampToGround: heightRef == Cesium.HeightReference.CLAMP_TO_GROUND,
2496
+ // classificationType: Cesium.ClassificationType.TERRAIN,
2497
+ // arcType: Cesium.ArcType.GEODESIC,
2498
+ // zIndex: zIndex,
2499
+ // distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance)
2500
+ // }),
2501
+ corridor: {
2441
2502
  positions: borderPosses,
2442
2503
  material: cLineColor,
2504
+ heightReference: heightRef,
2443
2505
  width: width,
2444
- clampToGround: heightRef == Cesium.HeightReference.CLAMP_TO_GROUND,
2445
- classificationType: Cesium.ClassificationType.TERRAIN,
2446
- arcType: Cesium.ArcType.GEODESIC,
2506
+ fill: true,
2447
2507
  zIndex: zIndex,
2448
- distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance)
2449
- }),
2508
+ classificationType: Cesium.ClassificationType.TERRAIN,
2509
+ distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance),
2510
+ shadows: Cesium.ShadowMode.ENABLED
2511
+ },
2450
2512
  show: false
2451
2513
  });
2452
2514
  params.viewer.entities.add(cEntityBorder);
@@ -2456,16 +2518,27 @@
2456
2518
  var posses_1 = holePosses[i];
2457
2519
  bruceModels.Cartes.CloseRing3(posses_1);
2458
2520
  var cEntityHole = new Cesium.Entity({
2459
- polyline: new Cesium.PolylineGraphics({
2460
- positions: posses_1,
2521
+ // polyline: new Cesium.PolylineGraphics({
2522
+ // positions: posses,
2523
+ // material: <Cesium.MaterialProperty><any>cLineColor,
2524
+ // width: width,
2525
+ // clampToGround: heightRef == Cesium.HeightReference.CLAMP_TO_GROUND,
2526
+ // classificationType: Cesium.ClassificationType.TERRAIN,
2527
+ // arcType: Cesium.ArcType.GEODESIC,
2528
+ // zIndex: zIndex,
2529
+ // distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance)
2530
+ // }),
2531
+ corridor: {
2532
+ positions: borderPosses,
2461
2533
  material: cLineColor,
2534
+ heightReference: heightRef,
2462
2535
  width: width,
2463
- clampToGround: heightRef == Cesium.HeightReference.CLAMP_TO_GROUND,
2464
- classificationType: Cesium.ClassificationType.TERRAIN,
2465
- arcType: Cesium.ArcType.GEODESIC,
2536
+ fill: true,
2466
2537
  zIndex: zIndex,
2467
- distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance)
2468
- }),
2538
+ classificationType: Cesium.ClassificationType.TERRAIN,
2539
+ distanceDisplayCondition: getDisplayCondition(params.minDistance, params.maxDistance),
2540
+ shadows: Cesium.ShadowMode.ENABLED
2541
+ },
2469
2542
  show: false
2470
2543
  });
2471
2544
  cEntity._siblingGraphics.push(cEntityHole);
@@ -2480,7 +2553,7 @@
2480
2553
  function RenderGroup(params) {
2481
2554
  var _a, _b, _c;
2482
2555
  return __awaiter(this, void 0, void 0, function () {
2483
- var api, cEntities, i, entity, zoomItem, style, tagIds, tags, pStyle, cEntity;
2556
+ var api, cEntities, i, entity, zoomItem, style, tagIds, tags, pStyle, cEntity, name_4;
2484
2557
  return __generator(this, function (_d) {
2485
2558
  switch (_d.label) {
2486
2559
  case 0:
@@ -2489,7 +2562,7 @@
2489
2562
  i = 0;
2490
2563
  _d.label = 1;
2491
2564
  case 1:
2492
- if (!(i < params.entities.length)) return [3 /*break*/, 6];
2565
+ if (!(i < params.entities.length)) return [3 /*break*/, 7];
2493
2566
  entity = params.entities[i];
2494
2567
  zoomItem = params.zoomItems[entity.Bruce.ID];
2495
2568
  return [4 /*yield*/, getStyle(api, entity, zoomItem.StyleID)];
@@ -2515,15 +2588,18 @@
2515
2588
  maxDistance: zoomItem.MaxZoom,
2516
2589
  minDistance: zoomItem.MinZoom
2517
2590
  });
2518
- if (cEntity) {
2519
- cEntity._renderGroup = getRenderGroupId(zoomItem, (_c = params.viewer) === null || _c === void 0 ? void 0 : _c.terrainProvider);
2520
- cEntities[entity.Bruce.ID] = cEntity;
2521
- }
2522
- _d.label = 5;
2591
+ if (!cEntity) return [3 /*break*/, 6];
2592
+ return [4 /*yield*/, getName(api, entity)];
2523
2593
  case 5:
2594
+ name_4 = _d.sent();
2595
+ cEntity.name = name_4;
2596
+ cEntity._renderGroup = getRenderGroupId(zoomItem, (_c = params.viewer) === null || _c === void 0 ? void 0 : _c.terrainProvider);
2597
+ cEntities[entity.Bruce.ID] = cEntity;
2598
+ _d.label = 6;
2599
+ case 6:
2524
2600
  i++;
2525
2601
  return [3 /*break*/, 1];
2526
- case 6: return [2 /*return*/, cEntities];
2602
+ case 7: return [2 /*return*/, cEntities];
2527
2603
  }
2528
2604
  });
2529
2605
  });
@@ -2671,7 +2747,7 @@
2671
2747
  case 7:
2672
2748
  lodData = (_f.sent()).lods;
2673
2749
  _loop_2 = function (i) {
2674
- var entity, zoomItem, style, tagIds, tags, lod, mStyle, cEntity;
2750
+ var entity, zoomItem, style, tagIds, tags, lod, mStyle, cEntity, name_5;
2675
2751
  return __generator(this, function (_g) {
2676
2752
  switch (_g.label) {
2677
2753
  case 0:
@@ -2709,11 +2785,15 @@
2709
2785
  maxDistance: zoomItem.MaxZoom,
2710
2786
  minDistance: zoomItem.MinZoom
2711
2787
  });
2712
- if (cEntity) {
2713
- cEntity._renderGroup = getRenderGroupId(zoomItem, (_e = params.viewer) === null || _e === void 0 ? void 0 : _e.terrainProvider);
2714
- cEntities[entity.Bruce.ID] = cEntity;
2715
- }
2716
- return [2 /*return*/];
2788
+ if (!cEntity) return [3 /*break*/, 5];
2789
+ return [4 /*yield*/, getName(api, entity)];
2790
+ case 4:
2791
+ name_5 = _g.sent();
2792
+ cEntity.name = name_5;
2793
+ cEntity._renderGroup = getRenderGroupId(zoomItem, (_e = params.viewer) === null || _e === void 0 ? void 0 : _e.terrainProvider);
2794
+ cEntities[entity.Bruce.ID] = cEntity;
2795
+ _g.label = 5;
2796
+ case 5: return [2 /*return*/];
2717
2797
  }
2718
2798
  });
2719
2799
  };
@@ -3893,7 +3973,8 @@
3893
3973
  entityTypeId: entity.Bruce["EntityType.ID"],
3894
3974
  accountId: this.apiGetter.accountId,
3895
3975
  tagIds: tagIds ? [].concat(tagIds) : [],
3896
- suppressShow: wasClustered
3976
+ suppressShow: wasClustered,
3977
+ name: cEntity.name
3897
3978
  };
3898
3979
  this.visualsManager.AddRego({
3899
3980
  rego: rego
@@ -4130,7 +4211,8 @@
4130
4211
  visual: cEntity,
4131
4212
  priority: 0,
4132
4213
  entityTypeId: entity.Bruce["EntityType.ID"],
4133
- accountId: this.apiGetter.accountId
4214
+ accountId: this.apiGetter.accountId,
4215
+ name: cEntity.name
4134
4216
  }
4135
4217
  });
4136
4218
  }
@@ -4863,6 +4945,7 @@
4863
4945
  "polyline": "material",
4864
4946
  "model": "color",
4865
4947
  "billboard": "color",
4948
+ "corridor": "material",
4866
4949
  "ellipse": "material"
4867
4950
  };
4868
4951
  var _loop_1 = function (i) {
@@ -4922,6 +5005,7 @@
4922
5005
  "polyline": "material",
4923
5006
  "model": "color",
4924
5007
  "billboard": "color",
5008
+ "corridor": "material",
4925
5009
  "ellipse": "material"
4926
5010
  };
4927
5011
  var _loop_2 = function (i) {
@@ -5695,7 +5779,8 @@
5695
5779
  priority: 0,
5696
5780
  entityTypeId: entity.Bruce["EntityType.ID"],
5697
5781
  accountId: this.apiGetter.accountId,
5698
- suppressShow: clustered
5782
+ suppressShow: clustered,
5783
+ name: cEntity.name
5699
5784
  }
5700
5785
  });
5701
5786
  }
@@ -5879,7 +5964,8 @@
5879
5964
  visual: cEntity,
5880
5965
  priority: 0,
5881
5966
  entityTypeId: entity.Bruce["EntityType.ID"],
5882
- accountId: this.apiGetter.accountId
5967
+ accountId: this.apiGetter.accountId,
5968
+ name: cEntity.name
5883
5969
  }
5884
5970
  });
5885
5971
  }
@@ -6953,6 +7039,7 @@
6953
7039
  if (meta) {
6954
7040
  rego.entityId = meta.id;
6955
7041
  rego.entityTypeId = meta.typeId;
7042
+ rego.name = meta.name;
6956
7043
  }
6957
7044
  }
6958
7045
  }
@@ -7018,7 +7105,7 @@
7018
7105
  path = [].concat(path);
7019
7106
  path.push(branch.id);
7020
7107
  if (branch.geomId == geomId) {
7021
- return { id: path[path.length - 1], typeId: branch.typeId };
7108
+ return { id: path[path.length - 1], typeId: branch.typeId, name: branch.name };
7022
7109
  }
7023
7110
  else if (branch.children) {
7024
7111
  for (var i = 0; i < branch.children.length; i++) {
@@ -14289,7 +14376,7 @@
14289
14376
  ViewerUtils.CreateWidgets = CreateWidgets;
14290
14377
  })(exports.ViewerUtils || (exports.ViewerUtils = {}));
14291
14378
 
14292
- var VERSION$1 = "2.3.9";
14379
+ var VERSION$1 = "2.4.1";
14293
14380
 
14294
14381
  exports.VERSION = VERSION$1;
14295
14382
  exports.CesiumViewMonitor = CesiumViewMonitor;