bruce-cesium 1.8.7 → 1.8.8

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.
@@ -1,6 +1,6 @@
1
1
  import { BruceEvent, Cartes, Carto, Entity as Entity$1, Geometry, Tileset, MathUtils, LRUCache, ZoomControl, Style, EntityTag, Calculator, EntityLod, EntityType, ClientFile, ObjectUtils, DelayQueue, BatchedDataGetter, EntityRelationType, EntityCoords, EntityFilterGetter, EntitySource, MenuItem, EntityRelation, ProjectView, ProjectViewBookmark, ProjectViewTile, ProjectViewLegacyTile, ProgramKey, Camera } from 'bruce-models';
2
2
  import * as Cesium from 'cesium';
3
- import { Cartesian2, Cartographic, CallbackProperty, Cartesian3, Color, Rectangle, Math as Math$1, SceneMode, Entity, Primitive, Cesium3DTileFeature, HeightReference, EllipsoidTerrainProvider, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, HeadingPitchRange, Cesium3DTileColorBlendMode, createOsmBuildings, Cesium3DTileStyle, KmlDataSource, createWorldTerrain, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, OrthographicFrustum, JulianDate, NearFarScalar, Cesium3DTileset, Matrix4, Matrix3, IonResource, EllipsoidGeodesic, sampleTerrainMostDetailed, PolygonPipeline, ColorMaterialProperty, EasingFunction, GeometryInstance } from 'cesium';
3
+ import { Cartesian2, Cartographic, CallbackProperty, Cartesian3, Color, Rectangle, Math as Math$1, Entity, Primitive, Cesium3DTileFeature, HeightReference, EllipsoidTerrainProvider, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, SceneMode, createOsmBuildings, Cesium3DTileStyle, Cesium3DTileColorBlendMode, HeadingPitchRange, KmlDataSource, OrthographicFrustum, JulianDate, NearFarScalar, createWorldTerrain, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, PolygonPipeline, ColorMaterialProperty, Matrix3, Matrix4, EasingFunction, GeometryInstance, Cesium3DTileset, IonResource, EllipsoidGeodesic, sampleTerrainMostDetailed } from 'cesium';
4
4
 
5
5
  var TIME_LAG = 300;
6
6
  var POSITION_CHECK_TIMER = 950;
@@ -4824,6 +4824,14 @@ var TilesetRenderEngine;
4824
4824
  case 0:
4825
4825
  api = params.apiGetter.getApi(params.apiGetter.accountId);
4826
4826
  loadUrl = params.tileset.loadUrl;
4827
+ // CDN url must match the api getter account id.
4828
+ if (!params.accountId || params.accountId == params.apiGetter.accountId) {
4829
+ if (api.TilesetCdnUrl) {
4830
+ loadUrl = api.TilesetCdnUrl.replace("<TILESETID>", params.tileset.id).replace("<FILEPATH>", "tileset.json");
4831
+ // First url param reserved for accountId. This is set within the API instance.
4832
+ loadUrl += "&generation=" + params.tileset.generateVersion;
4833
+ }
4834
+ }
4827
4835
  if (!(params.tileset.type == Tileset.EType.Cad)) return [3 /*break*/, 2];
4828
4836
  return [4 /*yield*/, createTileset(loadUrl ? loadUrl : Tileset.GetPublicFileUrl({
4829
4837
  api: api,
@@ -4930,7 +4938,6 @@ var TilesetRenderEngine;
4930
4938
  if (!ionId) return [3 /*break*/, 2];
4931
4939
  return [4 /*yield*/, IonResource.fromAssetId(EnsureNumber(ionId))];
4932
4940
  case 1:
4933
- // TODO: Can cause issues with menu-item dispose race conditions.
4934
4941
  loadUrl = (_a.sent());
4935
4942
  return [3 /*break*/, 3];
4936
4943
  case 2:
@@ -5456,8 +5463,9 @@ var TilesetCadRenderManager;
5456
5463
  (function () { return __awaiter(_this, void 0, void 0, function () {
5457
5464
  var api, tileset, settings, rootId, coords, cTileset, _a;
5458
5465
  var _this = this;
5459
- return __generator(this, function (_b) {
5460
- switch (_b.label) {
5466
+ var _b, _c;
5467
+ return __generator(this, function (_d) {
5468
+ switch (_d.label) {
5461
5469
  case 0:
5462
5470
  api = this.apiGetter.getApi();
5463
5471
  return [4 /*yield*/, Tileset.Get({
@@ -5465,7 +5473,7 @@ var TilesetCadRenderManager;
5465
5473
  tilesetId: tilesetId
5466
5474
  })];
5467
5475
  case 1:
5468
- tileset = (_b.sent()).tileset;
5476
+ tileset = (_d.sent()).tileset;
5469
5477
  if (!tileset || this.disposed) {
5470
5478
  return [2 /*return*/];
5471
5479
  }
@@ -5476,7 +5484,7 @@ var TilesetCadRenderManager;
5476
5484
  rootEntityId: rootId
5477
5485
  })];
5478
5486
  case 2:
5479
- coords = (_b.sent()).coords;
5487
+ coords = (_d.sent()).coords;
5480
5488
  if (this.disposed) {
5481
5489
  return [2 /*return*/];
5482
5490
  }
@@ -5485,10 +5493,12 @@ var TilesetCadRenderManager;
5485
5493
  apiGetter: this.apiGetter,
5486
5494
  tileset: tileset,
5487
5495
  viewer: this.viewer,
5488
- coords: coords
5496
+ coords: coords,
5497
+ accountId: (_c = (_b = this.item.tileset) === null || _b === void 0 ? void 0 : _b.ClientAccountID) !== null && _c !== void 0 ? _c : this.apiGetter.accountId,
5498
+ viaCdn: this.item.cdnEnabled
5489
5499
  })];
5490
5500
  case 3:
5491
- cTileset = _a.cTileset = _b.sent();
5501
+ cTileset = _a.cTileset = _d.sent();
5492
5502
  if (this.disposed) {
5493
5503
  this.doDispose();
5494
5504
  return [2 /*return*/];
@@ -6174,8 +6184,9 @@ var TilesetEntitiesRenderManager;
6174
6184
  (function () { return __awaiter(_this, void 0, void 0, function () {
6175
6185
  var api, tileset, cTileset, _a;
6176
6186
  var _this = this;
6177
- return __generator(this, function (_b) {
6178
- switch (_b.label) {
6187
+ var _b, _c;
6188
+ return __generator(this, function (_d) {
6189
+ switch (_d.label) {
6179
6190
  case 0:
6180
6191
  api = this.apiGetter.getApi();
6181
6192
  return [4 /*yield*/, Tileset.Get({
@@ -6183,7 +6194,7 @@ var TilesetEntitiesRenderManager;
6183
6194
  tilesetId: tilesetId
6184
6195
  })];
6185
6196
  case 1:
6186
- tileset = (_b.sent()).tileset;
6197
+ tileset = (_d.sent()).tileset;
6187
6198
  if (!tileset || this.disposed) {
6188
6199
  return [2 /*return*/];
6189
6200
  }
@@ -6192,10 +6203,12 @@ var TilesetEntitiesRenderManager;
6192
6203
  return [4 /*yield*/, TilesetRenderEngine.Render({
6193
6204
  apiGetter: this.apiGetter,
6194
6205
  tileset: tileset,
6195
- viewer: this.viewer
6206
+ viewer: this.viewer,
6207
+ accountId: (_c = (_b = this.item.tileset) === null || _b === void 0 ? void 0 : _b.ClientAccountID) !== null && _c !== void 0 ? _c : this.apiGetter.accountId,
6208
+ viaCdn: this.item.cdnEnabled
6196
6209
  })];
6197
6210
  case 2:
6198
- cTileset = _a.cTileset = _b.sent();
6211
+ cTileset = _a.cTileset = _d.sent();
6199
6212
  if (this.disposed) {
6200
6213
  this.doDispose();
6201
6214
  return [2 /*return*/];
@@ -6322,8 +6335,9 @@ var TilesetPointcloudRenderManager;
6322
6335
  (function () { return __awaiter(_this, void 0, void 0, function () {
6323
6336
  var api, tileset, cTileset, _a;
6324
6337
  var _this = this;
6325
- return __generator(this, function (_b) {
6326
- switch (_b.label) {
6338
+ var _b, _c;
6339
+ return __generator(this, function (_d) {
6340
+ switch (_d.label) {
6327
6341
  case 0:
6328
6342
  api = this.apiGetter.getApi();
6329
6343
  return [4 /*yield*/, Tileset.Get({
@@ -6331,7 +6345,7 @@ var TilesetPointcloudRenderManager;
6331
6345
  tilesetId: tilesetId
6332
6346
  })];
6333
6347
  case 1:
6334
- tileset = (_b.sent()).tileset;
6348
+ tileset = (_d.sent()).tileset;
6335
6349
  if (!tileset || this.disposed) {
6336
6350
  return [2 /*return*/];
6337
6351
  }
@@ -6340,10 +6354,12 @@ var TilesetPointcloudRenderManager;
6340
6354
  apiGetter: this.apiGetter,
6341
6355
  tileset: tileset,
6342
6356
  viewer: this.viewer,
6343
- coords: null
6357
+ coords: null,
6358
+ accountId: (_c = (_b = this.item.tileset) === null || _b === void 0 ? void 0 : _b.ClientAccountID) !== null && _c !== void 0 ? _c : this.apiGetter.accountId,
6359
+ viaCdn: this.item.cdnEnabled
6344
6360
  })];
6345
6361
  case 2:
6346
- cTileset = _a.cTileset = _b.sent();
6362
+ cTileset = _a.cTileset = _d.sent();
6347
6363
  if (this.disposed) {
6348
6364
  this.doDispose();
6349
6365
  return [2 /*return*/];
@@ -6601,9 +6617,9 @@ var TilesetArbRenderManager;
6601
6617
  (function () { return __awaiter(_this, void 0, void 0, function () {
6602
6618
  var _a, tileset, type, _b, LEGACY_TYPES, legacyTileset, _c, accountId, _d, _e;
6603
6619
  var _this = this;
6604
- var _f, _g, _h;
6605
- return __generator(this, function (_j) {
6606
- switch (_j.label) {
6620
+ var _f, _g, _h, _j, _k;
6621
+ return __generator(this, function (_l) {
6622
+ switch (_l.label) {
6607
6623
  case 0:
6608
6624
  if (!tilesetId) return [3 /*break*/, 2];
6609
6625
  return [4 /*yield*/, getTileset({
@@ -6611,11 +6627,11 @@ var TilesetArbRenderManager;
6611
6627
  menuItem: this.item
6612
6628
  })];
6613
6629
  case 1:
6614
- _b = _j.sent();
6630
+ _b = _l.sent();
6615
6631
  return [3 /*break*/, 3];
6616
6632
  case 2:
6617
6633
  _b = { tileset: null, type: null };
6618
- _j.label = 3;
6634
+ _l.label = 3;
6619
6635
  case 3:
6620
6636
  _a = _b, tileset = _a.tileset, type = _a.type;
6621
6637
  if (this.disposed) {
@@ -6637,11 +6653,11 @@ var TilesetArbRenderManager;
6637
6653
  tileset: tileset
6638
6654
  })];
6639
6655
  case 4:
6640
- _c = _j.sent();
6656
+ _c = _l.sent();
6641
6657
  return [3 /*break*/, 6];
6642
6658
  case 5:
6643
6659
  _c = null;
6644
- _j.label = 6;
6660
+ _l.label = 6;
6645
6661
  case 6:
6646
6662
  legacyTileset = _c;
6647
6663
  if (this.disposed) {
@@ -6662,7 +6678,7 @@ var TilesetArbRenderManager;
6662
6678
  viaCdn: true
6663
6679
  })];
6664
6680
  case 7:
6665
- _d.cTileset = _j.sent();
6681
+ _d.cTileset = _l.sent();
6666
6682
  return [3 /*break*/, 10];
6667
6683
  case 8:
6668
6684
  if (!tileset) return [3 /*break*/, 10];
@@ -6671,11 +6687,14 @@ var TilesetArbRenderManager;
6671
6687
  apiGetter: this.apiGetter,
6672
6688
  tileset: tileset,
6673
6689
  viewer: this.viewer,
6674
- coords: null
6690
+ coords: null,
6691
+ accountId: (_k = (_j = this.item.tileset) === null || _j === void 0 ? void 0 : _j.ClientAccountID) !== null && _k !== void 0 ? _k : this.apiGetter.accountId,
6692
+ // Not doing viaCDN here because I fear it'll break something since this is a legacy menu item type.
6693
+ viaCdn: false
6675
6694
  })];
6676
6695
  case 9:
6677
- _e.cTileset = _j.sent();
6678
- _j.label = 10;
6696
+ _e.cTileset = _l.sent();
6697
+ _l.label = 10;
6679
6698
  case 10:
6680
6699
  if (this.disposed) {
6681
6700
  this.doDispose();