bruce-cesium 0.4.0 → 0.4.2

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 (34) hide show
  1. package/dist/bruce-cesium.es5.js +46 -58
  2. package/dist/bruce-cesium.es5.js.map +1 -1
  3. package/dist/bruce-cesium.umd.js +45 -57
  4. package/dist/bruce-cesium.umd.js.map +1 -1
  5. package/dist/lib/bruce-cesium.js +30 -30
  6. package/dist/lib/rendering/entity-render-engine.js +848 -848
  7. package/dist/lib/rendering/menu-item-manager.js +252 -252
  8. package/dist/lib/rendering/render-addons/measure-addon.js +186 -186
  9. package/dist/lib/rendering/render-addons/render-addon.js +2 -2
  10. package/dist/lib/rendering/render-helper.js +296 -296
  11. package/dist/lib/rendering/render-managers/common/shared-getters.js +31 -31
  12. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +146 -146
  13. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +143 -143
  14. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +234 -234
  15. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +139 -139
  16. package/dist/lib/rendering/render-managers/render-manager.js +50 -50
  17. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +236 -236
  18. package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js +320 -320
  19. package/dist/lib/rendering/tile-render-engine.js +815 -831
  20. package/dist/lib/rendering/tile-render-engine.js.map +1 -1
  21. package/dist/lib/rendering/tileset-render-engine.js +499 -499
  22. package/dist/lib/rendering/view-render-engine.js +305 -309
  23. package/dist/lib/rendering/view-render-engine.js.map +1 -1
  24. package/dist/lib/rendering/visuals-register.js +402 -394
  25. package/dist/lib/rendering/visuals-register.js.map +1 -1
  26. package/dist/lib/utils/drawing-utils.js +42 -42
  27. package/dist/lib/utils/entity-utils.js +99 -99
  28. package/dist/lib/utils/measure-utils.js +34 -34
  29. package/dist/lib/utils/view-utils.js +72 -72
  30. package/dist/lib/viewer/cesium-view-monitor.js +231 -231
  31. package/dist/lib/viewer/viewer-utils.js +85 -85
  32. package/dist/types/rendering/tile-render-engine.d.ts +2 -4
  33. package/dist/types/rendering/visuals-register.d.ts +2 -0
  34. package/package.json +76 -76
@@ -1,5 +1,5 @@
1
1
  import { BruceEvent, Cartes, Carto, Geometry, ZoomControl, Style, EntityTag, Calculator, EntityLod, EntityType, ClientFile, DelayQueue, Entity as Entity$1, BatchedDataGetter, ObjectUtils, Tileset, EntityCoords, EntityFilterGetter, EntitySource, MenuItem, ProjectView, ProjectViewBookmark, ProjectViewTile, ProjectViewLegacyTile, TilesetExtMapTiles, Camera, MathUtils } from 'bruce-models';
2
- import { Cartesian2, Cartographic, Math as Math$1, Viewer, ArcGisMapServerImageryProvider, ScreenSpaceEventType, Color, HeightReference, Cartesian3, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, HeadingPitchRange, OrthographicFrustum, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, createOsmBuildings, Cesium3DTileStyle, Rectangle, Matrix4, Cesium3DTileset, EllipsoidGeodesic } from 'cesium';
2
+ import { Viewer, ArcGisMapServerImageryProvider, ScreenSpaceEventType, Cartesian2, Cartographic, Math as Math$1, Color, HeightReference, Cartesian3, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, HeadingPitchRange, OrthographicFrustum, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, createOsmBuildings, Cesium3DTileStyle, Rectangle, EllipsoidGeodesic, Matrix4, Cesium3DTileset } from 'cesium';
3
3
 
4
4
  var TIME_LAG = 300;
5
5
  var POSITION_CHECK_TIMER = 950;
@@ -1734,6 +1734,7 @@ function updateEntity(viewer, entityRegos, addons) {
1734
1734
  for (var i = 0; i < entityRegos.length; i++) {
1735
1735
  var rego = entityRegos[i];
1736
1736
  var show = rego === highestPriority;
1737
+ rego.best = show;
1737
1738
  updateEntityShow(viewer, rego.visual, show);
1738
1739
  }
1739
1740
  if (addons) {
@@ -1965,6 +1966,13 @@ var VisualsRegister;
1965
1966
  }
1966
1967
  return entityRegos.find(function (r) { return r.menuItemId === menuItemId; });
1967
1968
  };
1969
+ Register.prototype.GetRegos = function (entityId) {
1970
+ var entityRegos = this.rego[entityId];
1971
+ if (!entityRegos) {
1972
+ return [];
1973
+ }
1974
+ return entityRegos;
1975
+ };
1968
1976
  Register.prototype.GetMenuItemRegos = function (menuItemId) {
1969
1977
  var visuals = [];
1970
1978
  for (var entityId in this.rego) {
@@ -4225,35 +4233,19 @@ var TileRenderEngine;
4225
4233
  V2.GetOrCreateLayer = GetOrCreateLayer;
4226
4234
  function Render(params) {
4227
4235
  return __awaiter(this, void 0, void 0, function () {
4228
- var _loop_2, i, curEnabled, toDisable, curEnabledArr, _loop_3, i, i, _loop_4, i;
4236
+ var i, enabled, curEnabled, toDisable, curEnabledArr, _loop_2, i, i, _loop_3, i;
4229
4237
  return __generator(this, function (_a) {
4230
4238
  switch (_a.label) {
4231
4239
  case 0:
4232
- _loop_2 = function (i) {
4233
- var enabled, source;
4234
- return __generator(this, function (_a) {
4235
- switch (_a.label) {
4236
- case 0:
4237
- enabled = params.enabled[i];
4238
- source = params.sources.find(function (x) { return x.accountId === enabled.accountId && x.tilesetId === enabled.tilesetId; });
4239
- if (!source) {
4240
- console.error("Missing source for enabled imagery.", enabled);
4241
- }
4242
- return [4 /*yield*/, GetOrCreateLayer(params.viewer, params.apiGetter, {
4243
- accountId: source.accountId,
4244
- tilesetId: source.tilesetId,
4245
- })];
4246
- case 1:
4247
- _a.sent();
4248
- return [2 /*return*/];
4249
- }
4250
- });
4251
- };
4252
4240
  i = 0;
4253
4241
  _a.label = 1;
4254
4242
  case 1:
4255
- if (!(i < params.enabled.length)) return [3 /*break*/, 4];
4256
- return [5 /*yield**/, _loop_2(i)];
4243
+ if (!(i < params.tiles.length)) return [3 /*break*/, 4];
4244
+ enabled = params.tiles[i];
4245
+ return [4 /*yield*/, GetOrCreateLayer(params.viewer, params.apiGetter, {
4246
+ accountId: enabled.accountId,
4247
+ tilesetId: enabled.tilesetId,
4248
+ })];
4257
4249
  case 2:
4258
4250
  _a.sent();
4259
4251
  _a.label = 3;
@@ -4264,10 +4256,10 @@ var TileRenderEngine;
4264
4256
  curEnabled = params.viewer.imageryLayers;
4265
4257
  toDisable = [];
4266
4258
  curEnabledArr = [];
4267
- _loop_3 = function (i) {
4259
+ _loop_2 = function (i) {
4268
4260
  var layer = curEnabled.get(i);
4269
4261
  var meta = layer === null || layer === void 0 ? void 0 : layer._bMeta;
4270
- var disable = !params.enabled.find(function (x) { return x.accountId === (meta === null || meta === void 0 ? void 0 : meta.accountId) && x.tilesetId === (meta === null || meta === void 0 ? void 0 : meta.tilesetId); });
4262
+ var disable = !params.tiles.find(function (x) { return x.accountId === (meta === null || meta === void 0 ? void 0 : meta.accountId) && x.tilesetId === (meta === null || meta === void 0 ? void 0 : meta.tilesetId); });
4271
4263
  if (disable) {
4272
4264
  toDisable.push(layer);
4273
4265
  }
@@ -4276,13 +4268,13 @@ var TileRenderEngine;
4276
4268
  }
4277
4269
  };
4278
4270
  for (i = 0; i < curEnabled.length; i++) {
4279
- _loop_3(i);
4271
+ _loop_2(i);
4280
4272
  }
4281
4273
  for (i = 0; i < toDisable.length; i++) {
4282
4274
  params.viewer.imageryLayers.remove(toDisable[i]);
4283
4275
  }
4284
- _loop_4 = function (i) {
4285
- var enabled = params.enabled[i];
4276
+ _loop_3 = function (i) {
4277
+ var enabled = params.tiles[i];
4286
4278
  var layer = curEnabledArr.find(function (x) { var _a, _b; return ((_a = x._bMeta) === null || _a === void 0 ? void 0 : _a.accountId) === enabled.accountId && ((_b = x._bMeta) === null || _b === void 0 ? void 0 : _b.tilesetId) === enabled.tilesetId; });
4287
4279
  if (layer) {
4288
4280
  params.viewer.imageryLayers.raiseToTop(layer);
@@ -4294,8 +4286,8 @@ var TileRenderEngine;
4294
4286
  layer.gamma = Number(enabled.gamma == null ? 1 : enabled.gamma);
4295
4287
  }
4296
4288
  };
4297
- for (i = 0; i < params.enabled.length; i++) {
4298
- _loop_4(i);
4289
+ for (i = 0; i < params.tiles.length; i++) {
4290
+ _loop_3(i);
4299
4291
  }
4300
4292
  return [2 /*return*/];
4301
4293
  }
@@ -4397,18 +4389,18 @@ var TileRenderEngine;
4397
4389
  switch (_b.label) {
4398
4390
  case 0:
4399
4391
  enabledMeta = (_a = params.viewer.terrainProvider) === null || _a === void 0 ? void 0 : _a._bMeta;
4400
- if ((enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.tilesetId) === params.source.tilesetId &&
4401
- (enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.accountId) === params.source.accountId) {
4392
+ if ((enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.tilesetId) === params.tile.tilesetId &&
4393
+ (enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.accountId) === params.tile.accountId) {
4402
4394
  return [2 /*return*/];
4403
4395
  }
4404
- defaultTerr = params.source.accountId ? null : ProjectViewTile.DefaultTerrains.find(function (x) { return x.id === params.source.tilesetId; });
4396
+ defaultTerr = params.tile.accountId ? null : ProjectViewTile.DefaultTerrains.find(function (x) { return x.id === params.tile.tilesetId; });
4405
4397
  provider = null;
4406
4398
  if (!defaultTerr) return [3 /*break*/, 1];
4407
4399
  provider = renderDefaultTerrTile(defaultTerr.id);
4408
4400
  return [3 /*break*/, 3];
4409
4401
  case 1:
4410
- api = params.apiGetter.getApi(params.source.accountId);
4411
- return [4 /*yield*/, Tileset.Get(api, params.source.tilesetId)];
4402
+ api = params.apiGetter.getApi(params.tile.accountId);
4403
+ return [4 /*yield*/, Tileset.Get(api, params.tile.tilesetId)];
4412
4404
  case 2:
4413
4405
  tileset = _b.sent();
4414
4406
  url = void 0;
@@ -4434,8 +4426,8 @@ var TileRenderEngine;
4434
4426
  case 3:
4435
4427
  if (provider) {
4436
4428
  provider._bMeta = {
4437
- accountId: params.source.accountId,
4438
- tilesetId: params.source.tilesetId
4429
+ accountId: params.tile.accountId,
4430
+ tilesetId: params.tile.tilesetId
4439
4431
  };
4440
4432
  params.viewer.terrainProvider = provider;
4441
4433
  }
@@ -4533,11 +4525,11 @@ function renderV1(params, bookmark, view) {
4533
4525
  });
4534
4526
  }
4535
4527
  function renderV2(params, bookmark, view) {
4536
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t;
4528
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
4537
4529
  return __awaiter(this, void 0, void 0, function () {
4538
- var viewer, scene, vSettings, bSettings, defaults, camera, newLens, curLens, transition, pos, gOcclusion, terrain, source, imagery, curEnabled, newItemIds, _i, curEnabled_1, id;
4539
- return __generator(this, function (_u) {
4540
- switch (_u.label) {
4530
+ var viewer, scene, vSettings, bSettings, defaults, camera, newLens, curLens, transition, pos, gOcclusion, terrain, imagery, curEnabled, newItemIds, _i, curEnabled_1, id;
4531
+ return __generator(this, function (_t) {
4532
+ switch (_t.label) {
4541
4533
  case 0:
4542
4534
  viewer = params.manager.Viewer;
4543
4535
  scene = viewer.scene;
@@ -4600,19 +4592,16 @@ function renderV2(params, bookmark, view) {
4600
4592
  scene.globe.depthTestAgainstTerrain = Boolean(gOcclusion);
4601
4593
  terrain = (_o = bSettings === null || bSettings === void 0 ? void 0 : bSettings.terrain) !== null && _o !== void 0 ? _o : (_p = defaults.settings) === null || _p === void 0 ? void 0 : _p.terrain;
4602
4594
  if (!terrain) return [3 /*break*/, 2];
4603
- source = (_q = vSettings.terrains) === null || _q === void 0 ? void 0 : _q.find(function (x) { return x.accountId === terrain.accountId && x.tilesetId === terrain.tilesetId; });
4604
- if (!source) return [3 /*break*/, 2];
4605
4595
  return [4 /*yield*/, TileRenderEngine.Terrain.V2.Render({
4606
4596
  apiGetter: params.apiGetter,
4607
- enabled: terrain,
4608
- source: source,
4597
+ tile: terrain,
4609
4598
  viewer: params.manager.Viewer,
4610
4599
  })];
4611
4600
  case 1:
4612
- _u.sent();
4613
- _u.label = 2;
4601
+ _t.sent();
4602
+ _t.label = 2;
4614
4603
  case 2:
4615
- imagery = (_r = bSettings.imagery) !== null && _r !== void 0 ? _r : (_s = defaults.settings) === null || _s === void 0 ? void 0 : _s.imagery;
4604
+ imagery = (_q = bSettings.imagery) !== null && _q !== void 0 ? _q : (_r = defaults.settings) === null || _r === void 0 ? void 0 : _r.imagery;
4616
4605
  if (imagery == null) {
4617
4606
  // TODO: Need global default.
4618
4607
  imagery = [
@@ -4630,24 +4619,23 @@ function renderV2(params, bookmark, view) {
4630
4619
  }
4631
4620
  return [4 /*yield*/, TileRenderEngine.Map.V2.Render({
4632
4621
  apiGetter: params.apiGetter,
4633
- enabled: imagery,
4634
- sources: vSettings.imageries,
4622
+ tiles: imagery,
4635
4623
  viewer: params.manager.Viewer,
4636
4624
  })];
4637
4625
  case 3:
4638
- _u.sent();
4626
+ _t.sent();
4639
4627
  curEnabled = params.manager.GetEnabledItemIds();
4640
- newItemIds = (_t = bSettings === null || bSettings === void 0 ? void 0 : bSettings.menuItemIds) !== null && _t !== void 0 ? _t : [];
4628
+ newItemIds = (_s = bSettings === null || bSettings === void 0 ? void 0 : bSettings.menuItemIds) !== null && _s !== void 0 ? _s : [];
4641
4629
  _i = 0, curEnabled_1 = curEnabled;
4642
- _u.label = 4;
4630
+ _t.label = 4;
4643
4631
  case 4:
4644
4632
  if (!(_i < curEnabled_1.length)) return [3 /*break*/, 7];
4645
4633
  id = curEnabled_1[_i];
4646
4634
  if (!(newItemIds.indexOf(id) === -1)) return [3 /*break*/, 6];
4647
4635
  return [4 /*yield*/, params.manager.RemoveItemById(id)];
4648
4636
  case 5:
4649
- _u.sent();
4650
- _u.label = 6;
4637
+ _t.sent();
4638
+ _t.label = 6;
4651
4639
  case 6:
4652
4640
  _i++;
4653
4641
  return [3 /*break*/, 4];
@@ -4658,8 +4646,8 @@ function renderV2(params, bookmark, view) {
4658
4646
  manager: params.manager,
4659
4647
  }, params.viewId, params.bookmarkId)];
4660
4648
  case 8:
4661
- _u.sent();
4662
- _u.label = 9;
4649
+ _t.sent();
4650
+ _t.label = 9;
4663
4651
  case 9: return [2 /*return*/];
4664
4652
  }
4665
4653
  });