bruce-cesium 2.7.5 → 2.7.6

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, Bounds, EntityRelationType, DelayQueue, BatchedDataGetter, EntityCoords, EntityFilterGetter, EntitySource, MenuItem, EntityRelation, ENVIRONMENT, ProjectView, ProjectViewBookmark, ProjectViewTile, ProjectViewLegacyTile, ProgramKey, Camera, AbstractApi, EntityAttachment, EntityAttachmentType, EntityAttribute } from 'bruce-models';
2
2
  import * as Cesium from 'cesium';
3
- import { Cartographic, Cartesian2, CallbackProperty, Cartesian3, Color, Rectangle, Math as Math$1, JulianDate, SceneMode, Entity, Primitive, Cesium3DTileFeature, HeightReference, DistanceDisplayCondition, NearFarScalar, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, CornerType, ShadowMode, PolygonHierarchy, HeadingPitchRoll, Transforms, ColorBlendMode, Cesium3DTileColorBlendMode, HeadingPitchRange, createOsmBuildings, Cesium3DTileStyle, KmlDataSource, OrthographicFrustum, EasingFunction, EllipsoidTerrainProvider, CesiumInspector, defined, Cesium3DTileset, Matrix4, Matrix3, IonResource, createWorldTerrain, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, EllipsoidGeodesic, sampleTerrainMostDetailed, Model, PolygonPipeline, ColorMaterialProperty, GeometryInstance, ScreenSpaceEventHandler, ScreenSpaceEventType, Ion, BoundingSphere } from 'cesium';
3
+ import { Cartographic, Cartesian2, CallbackProperty, Cartesian3, Color, Rectangle, Math as Math$1, JulianDate, HeightReference, DistanceDisplayCondition, NearFarScalar, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, CornerType, ShadowMode, PolygonHierarchy, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, SceneMode, Cesium3DTileColorBlendMode, HeadingPitchRange, createOsmBuildings, Cesium3DTileStyle, KmlDataSource, OrthographicFrustum, EasingFunction, Cesium3DTileset, Matrix4, Matrix3, IonResource, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, EllipsoidGeodesic, sampleTerrainMostDetailed, defined, Model, PolygonPipeline, CesiumInspector, ColorMaterialProperty, GeometryInstance, ScreenSpaceEventHandler, ScreenSpaceEventType, Ion, BoundingSphere } from 'cesium';
4
4
 
5
5
  var TIME_LAG = 300;
6
6
  var POSITION_CHECK_TIMER = 950;
@@ -8256,6 +8256,7 @@ var TilesetEntitiesRenderManager;
8256
8256
  (function (TilesetEntitiesRenderManager) {
8257
8257
  var Manager = /** @class */ (function () {
8258
8258
  function Manager(params) {
8259
+ this.initCounter = 0;
8259
8260
  this.disposed = false;
8260
8261
  this.cTileset = null;
8261
8262
  var viewer = params.viewer, visualsManager = params.register, apiGetter = params.getters, item = params.item;
@@ -8278,23 +8279,32 @@ var TilesetEntitiesRenderManager;
8278
8279
  enumerable: false,
8279
8280
  configurable: true
8280
8281
  });
8281
- Manager.prototype.Init = function () {
8282
+ Manager.prototype.Init = function (params) {
8282
8283
  var _a;
8283
8284
  return __awaiter(this, void 0, void 0, function () {
8284
- var tilesetId;
8285
+ var counter, tilesetId;
8285
8286
  var _this = this;
8286
8287
  return __generator(this, function (_b) {
8288
+ this.initCounter += 1;
8289
+ counter = this.initCounter;
8290
+ if (this.disposed) {
8291
+ return [2 /*return*/];
8292
+ }
8293
+ if (params === null || params === void 0 ? void 0 : params.item) {
8294
+ this.item = params.item;
8295
+ }
8287
8296
  tilesetId = (_a = this.item.tileset) === null || _a === void 0 ? void 0 : _a.TilesetID;
8288
8297
  if (!tilesetId) {
8289
8298
  return [2 /*return*/];
8290
8299
  }
8291
8300
  (function () { return __awaiter(_this, void 0, void 0, function () {
8292
- var canAccess, e_1, accountId, api, tileset, cTileset, _a;
8301
+ var canAccess, e_1, accountId, api, tileset, cTileset, _a, attenuation, attenuationMax;
8293
8302
  var _this = this;
8294
8303
  var _b, _c, _d;
8295
8304
  return __generator(this, function (_e) {
8296
8305
  switch (_e.label) {
8297
8306
  case 0:
8307
+ if (!!this.cTileset) return [3 /*break*/, 9];
8298
8308
  if (!tilesetId) return [3 /*break*/, 5];
8299
8309
  canAccess = false;
8300
8310
  _e.label = 1;
@@ -8323,6 +8333,9 @@ var TilesetEntitiesRenderManager;
8323
8333
  console.warn("No tileset id found. Skipping access check.");
8324
8334
  _e.label = 6;
8325
8335
  case 6:
8336
+ if (this.disposed || counter !== this.initCounter) {
8337
+ return [2 /*return*/];
8338
+ }
8326
8339
  accountId = (_d = this.item.tileset) === null || _d === void 0 ? void 0 : _d.ClientAccountID;
8327
8340
  if (!accountId) {
8328
8341
  accountId = this.getters.GetAccountId();
@@ -8336,7 +8349,7 @@ var TilesetEntitiesRenderManager;
8336
8349
  })];
8337
8350
  case 7:
8338
8351
  tileset = (_e.sent()).tileset;
8339
- if (!tileset || this.disposed) {
8352
+ if (!tileset || this.disposed || counter !== this.initCounter) {
8340
8353
  return [2 /*return*/];
8341
8354
  }
8342
8355
  this.typeId = tileset.settings.entityTypeId;
@@ -8370,6 +8383,25 @@ var TilesetEntitiesRenderManager;
8370
8383
  cTileset.tileLoad.addEventListener(function (tile) {
8371
8384
  _this.mapCTile(tile);
8372
8385
  });
8386
+ _e.label = 9;
8387
+ case 9:
8388
+ attenuation = this.item.attenuation;
8389
+ if (!attenuation && attenuation != false) {
8390
+ attenuation = true;
8391
+ }
8392
+ attenuationMax = this.item.attenuationMax;
8393
+ if (isNaN(attenuationMax)) {
8394
+ attenuationMax = 20;
8395
+ }
8396
+ this.cTileset.readyPromise.then(function () {
8397
+ TilesetRenderEngine.ApplySettings({
8398
+ cTileset: _this.cTileset,
8399
+ settings: {
8400
+ attenuation: attenuation,
8401
+ maximumAttenuation: attenuationMax
8402
+ }
8403
+ });
8404
+ });
8373
8405
  return [2 /*return*/];
8374
8406
  }
8375
8407
  });
@@ -9396,6 +9428,14 @@ var MenuItemManager;
9396
9428
  rItem.item = params.item;
9397
9429
  }
9398
9430
  }
9431
+ // This means we're updating a entities tileset menu item.
9432
+ // These have different point scaling settings based on bookmark settings.
9433
+ else if (rItem.type == MenuItem.EType.EntityTileset && params.item.Type == MenuItem.EType.EntityTileset) {
9434
+ rItem.renderManager.Init({
9435
+ item: params.item,
9436
+ });
9437
+ rItem.item = params.item;
9438
+ }
9399
9439
  }
9400
9440
  else {
9401
9441
  rItem = {
@@ -10067,7 +10107,7 @@ var MenuItemCreator;
10067
10107
  renderedItemIds = [];
10068
10108
  if (!((menuItems === null || menuItems === void 0 ? void 0 : menuItems.length) && (enabledIds === null || enabledIds === void 0 ? void 0 : enabledIds.length))) return [3 /*break*/, 10];
10069
10109
  traverseItems_1 = function (item) { return __awaiter(_this, void 0, void 0, function () {
10070
- var eItem, eItemAlt, itemId, i;
10110
+ var eItem, eItemAlt, tItem, tItemAlt, itemId, i;
10071
10111
  var _a;
10072
10112
  return __generator(this, function (_b) {
10073
10113
  switch (_b.label) {
@@ -10082,6 +10122,12 @@ var MenuItemCreator;
10082
10122
  eItem.BruceEntity = __assign(__assign({}, eItem.BruceEntity), { SelectedExpandLayers: (_a = eItemAlt.BruceEntity) === null || _a === void 0 ? void 0 : _a.SelectedExpandLayers });
10083
10123
  }
10084
10124
  }
10125
+ else if (item.Type == MenuItem.EType.EntityTileset) {
10126
+ tItem = item;
10127
+ tItemAlt = alternations[item.id];
10128
+ tItem.attenuation = tItemAlt.attenuation;
10129
+ tItem.attenuationMax = tItemAlt.attenuationMax;
10130
+ }
10085
10131
  }
10086
10132
  if (!enabledIds.includes(item.id)) return [3 /*break*/, 2];
10087
10133
  return [4 /*yield*/, manager.RenderItem({
@@ -15243,7 +15289,7 @@ var ViewerUtils;
15243
15289
  ViewerUtils.CreateWidgets = CreateWidgets;
15244
15290
  })(ViewerUtils || (ViewerUtils = {}));
15245
15291
 
15246
- var VERSION$1 = "2.7.5";
15292
+ var VERSION$1 = "2.7.6";
15247
15293
 
15248
15294
  export { VERSION$1 as VERSION, CesiumViewMonitor, ViewerUtils, MenuItemManager, EntityRenderEngine, MenuItemCreator, VisualsRegister, RenderManager, EntitiesIdsRenderManager, EntitiesLoadedRenderManager, EntitiesRenderManager, EntityRenderManager, TilesetCadRenderManager, TilesetArbRenderManager, TilesetEntitiesRenderManager, TilesetOsmRenderManager, TilesetPointcloudRenderManager, TilesetGooglePhotosRenderManager, DataSourceStaticKmlManager, RelationsRenderManager, SharedGetters, CesiumParabola, ViewRenderEngine, TileRenderEngine, TilesetRenderEngine, CESIUM_INSPECTOR_KEY, ViewUtils, DrawingUtils, MeasureUtils, EntityUtils, Draw3dPolygon, Draw3dPolyline };
15249
15295
  //# sourceMappingURL=bruce-cesium.es5.js.map