bruce-cesium 6.1.8 → 6.2.0

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.
@@ -22,6 +22,24 @@ var TilesetEntitiesRenderManager;
22
22
  this.disposed = false;
23
23
  this.cTileset = null;
24
24
  this.styler = new tileset_render_engine_1.TilesetRenderEngine.Styler();
25
+ // Entity ID -> rego.
26
+ // We retain this information as a quick look-up on what has been registered.
27
+ // This lets us properly assign siblings to the same rego when hierarchy items are marked as collapsed.
28
+ this.loadedCesiumEntities = {};
29
+ // Cache of 'something isolated' that we detect and use to calculate a default show state.
30
+ // It's pretty expensive so we save it for a few seconds inbetween checks.
31
+ this.somethingIsolated = null;
32
+ this.somethingIsolatedDateTime = null;
33
+ // Queue of loaded in features that we haven't processed yet.
34
+ this.featureQueue = [];
35
+ // State is true for 'add' or 'false' for 'remove'.
36
+ this.featureQueueStates = new Map();
37
+ this.featureQueueInterval = null;
38
+ // Cache of feature properties we wanted to find vs what we found.
39
+ // Eg: "entityId" -> "entityId" | "bruceId" | "id" | null.
40
+ // Saves having to do a case-insensitive lookup every time.
41
+ this.featurePropCache = new Map();
42
+ this.featurePropsChecked = 0;
25
43
  const { viewer, register: visualsManager, getters: apiGetter, item } = params;
26
44
  this.viewer = viewer;
27
45
  this.getters = apiGetter;
@@ -148,7 +166,20 @@ var TilesetEntitiesRenderManager;
148
166
  }
149
167
  });
150
168
  cTileset.tileLoad.addEventListener((tile) => {
151
- this.mapCTile(tile);
169
+ try {
170
+ this.queueTile(tile, true);
171
+ }
172
+ catch (e) {
173
+ console.error(e);
174
+ }
175
+ });
176
+ cTileset.tileUnload.addEventListener((tile) => {
177
+ try {
178
+ this.queueTile(tile, false);
179
+ }
180
+ catch (e) {
181
+ console.error(e);
182
+ }
152
183
  });
153
184
  }
154
185
  // Scaling points by default otherwise they're 1px in size.
@@ -171,6 +202,118 @@ var TilesetEntitiesRenderManager;
171
202
  });
172
203
  })();
173
204
  }
205
+ /**
206
+ * @param tile
207
+ * @param load indicates if we are loading or unloading the tile.
208
+ * @returns
209
+ */
210
+ queueTile(tile, load) {
211
+ const content = tile === null || tile === void 0 ? void 0 : tile.content;
212
+ if (!content) {
213
+ return;
214
+ }
215
+ for (let i = 0; i < content.featuresLength; i++) {
216
+ const feature = content.getFeature(i);
217
+ if (!this.featureQueue.includes(feature)) {
218
+ this.featureQueue.push(feature);
219
+ }
220
+ this.featureQueueStates.set(feature, load);
221
+ }
222
+ this.pingFeatureQueue();
223
+ }
224
+ /**
225
+ * Pings the feature queue to process any queued features.
226
+ * Does nothing if we're already processing.
227
+ * @returns
228
+ */
229
+ pingFeatureQueue() {
230
+ if (!this.featureQueue.length || this.featureQueueInterval || this.disposed) {
231
+ return;
232
+ }
233
+ this.featureQueueInterval = setInterval(() => {
234
+ if (this.disposed) {
235
+ clearInterval(this.featureQueueInterval);
236
+ this.featureQueueInterval = null;
237
+ return;
238
+ }
239
+ this.processFeatureQueueBatch();
240
+ if (!this.featureQueue) {
241
+ clearInterval(this.featureQueueInterval);
242
+ this.featureQueueInterval = null;
243
+ }
244
+ }, 10);
245
+ }
246
+ /**
247
+ * Process a batch of features from the feature queue.
248
+ */
249
+ processFeatureQueueBatch() {
250
+ if (!this.featureQueue.length) {
251
+ return;
252
+ }
253
+ const BATCH_SIZE = 5000;
254
+ const batch = this.featureQueue.splice(0, BATCH_SIZE);
255
+ const regosToStyle = new Map();
256
+ const featuresToRemove = [];
257
+ for (const feature of batch) {
258
+ const load = this.featureQueueStates.get(feature);
259
+ this.featureQueueStates.delete(feature);
260
+ if (!load) {
261
+ featuresToRemove.push(feature);
262
+ continue;
263
+ }
264
+ const result = this.mapTilesetFeature(feature);
265
+ if (result === null) {
266
+ // Override the default hide state set by the style.
267
+ feature.show = true;
268
+ continue;
269
+ }
270
+ else if (result) {
271
+ regosToStyle.set(result.entityId, result);
272
+ }
273
+ }
274
+ if (featuresToRemove.length) {
275
+ const { removedEntityIds } = this.visualsManager.RemoveRegosByVisuals({
276
+ visuals: featuresToRemove,
277
+ requestRender: false,
278
+ menuItemId: this.item.id,
279
+ doRemove: false
280
+ });
281
+ for (const entityId of removedEntityIds) {
282
+ delete this.loadedCesiumEntities[entityId];
283
+ }
284
+ }
285
+ if (this.styler && regosToStyle.size) {
286
+ this.styler.QueueEntities(Array.from(regosToStyle.values()));
287
+ }
288
+ }
289
+ evaluateFeatureProps(feature) {
290
+ var _a;
291
+ // If we've checked 10 features then we should have a good handle on what props are available.
292
+ if (this.featurePropsChecked >= 10) {
293
+ return;
294
+ }
295
+ this.featurePropsChecked++;
296
+ const featureAny = feature;
297
+ const props = featureAny.getPropertyNames ? featureAny.getPropertyNames() : (_a = featureAny.getPropertyIds) === null || _a === void 0 ? void 0 : _a.call(featureAny);
298
+ if (!props) {
299
+ return;
300
+ }
301
+ for (const prop of props) {
302
+ if (!prop) {
303
+ continue;
304
+ }
305
+ const lowered = prop.toLowerCase();
306
+ if (lowered === "bruceid" || lowered === "id" || lowered === "entityid") {
307
+ this.featurePropCache.set("entityId", prop);
308
+ }
309
+ else if (lowered === "brucepath") {
310
+ this.featurePropCache.set("BrucePath", prop);
311
+ }
312
+ else if (lowered === "building_id" || lowered === "buildingid") {
313
+ this.featurePropCache.set("BuildingID", prop);
314
+ }
315
+ }
316
+ }
174
317
  Dispose() {
175
318
  if (this.disposed) {
176
319
  return;
@@ -180,6 +323,11 @@ var TilesetEntitiesRenderManager;
180
323
  }
181
324
  doDispose() {
182
325
  var _a, _b;
326
+ if (this.featureQueueInterval) {
327
+ clearInterval(this.featureQueueInterval);
328
+ this.featureQueueInterval = null;
329
+ this.featureQueue = [];
330
+ }
183
331
  if (this.cTileset) {
184
332
  const viewer = this.viewer;
185
333
  if (!(viewer === null || viewer === void 0 ? void 0 : viewer.isDestroyed()) && this.viewer.scene.primitives.contains(this.cTileset)) {
@@ -200,60 +348,86 @@ var TilesetEntitiesRenderManager;
200
348
  this.viewer.zoomTo(this.cTileset, new Cesium.HeadingPitchRange(0.0, -0.5, this.cTileset.boundingSphere.radius / 4.0));
201
349
  }
202
350
  }
203
- mapCTile(tile) {
204
- const content = tile === null || tile === void 0 ? void 0 : tile.content;
205
- if (!content) {
206
- return;
207
- }
208
- const regosToQueue = new Map();
209
- for (let i = 0; i < content.featuresLength; i++) {
210
- const feature = content.getFeature(i);
211
- const rego = this.mapTilesetFeature(feature);
212
- if (rego === null || rego === void 0 ? void 0 : rego.entityId) {
213
- regosToQueue.set(rego.entityId, rego);
214
- }
215
- }
216
- if (this.styler && regosToQueue.size) {
217
- this.styler.QueueEntities(Array.from(regosToQueue.values()));
218
- }
219
- this.viewer.scene.requestRender();
220
- }
221
351
  mapTilesetFeature(feature) {
222
352
  var _a, _b, _c;
223
- // Version =1 tilesets.
224
- let id = feature.getProperty("BruceId");
353
+ this.evaluateFeatureProps(feature);
354
+ const propToUse = this.featurePropCache.get("entityId");
355
+ let id = propToUse ? feature.getProperty(propToUse) : null;
356
+ if (id && typeof id == "string") {
357
+ // Perhaps a relic of UTF-16 encoding after we stopped using it?
358
+ if (id.endsWith("\u0000")) {
359
+ id = id.substring(0, id.length - 1);
360
+ }
361
+ }
225
362
  if (!id) {
226
- // Version >1 tilesets.
227
- id = feature.getProperty("entityId");
228
- if (id && typeof id == "string") {
229
- // Perhaps a relic of UTF-16 encoding after we stopped using it?
230
- if (id.endsWith("\u0000")) {
231
- id = id.substring(0, id.length - 1);
232
- }
363
+ return null;
364
+ }
365
+ const accountId = (_b = (_a = this.item.tileset) === null || _a === void 0 ? void 0 : _a.ClientAccountID) !== null && _b !== void 0 ? _b : this.getters.GetAccountId();
366
+ const canEdit = accountId === this.getters.GetAccountId();
367
+ let rego = {
368
+ canEdit: canEdit,
369
+ entityId: id,
370
+ entityTypeId: this.typeId,
371
+ menuItemId: this.item.id,
372
+ menuItemType: this.item.Type,
373
+ priority: this.renderPriority,
374
+ visual: feature,
375
+ tilesetId: (_c = this.item.tileset) === null || _c === void 0 ? void 0 : _c.TilesetID,
376
+ tilesetType: bruce_models_1.Tileset.EType.EntitiesSet,
377
+ accountId: accountId
378
+ };
379
+ // Get the initial hide/show state.
380
+ const state = this.visualsManager.GetState({
381
+ entityId: rego.entityId,
382
+ menuItemId: this.item.id,
383
+ });
384
+ if (this.somethingIsolated == null ||
385
+ // 5s cache.
386
+ (this.somethingIsolatedDateTime && this.somethingIsolatedDateTime.getTime() + 5000 < new Date().getTime())) {
387
+ this.somethingIsolated = this.visualsManager.GetIsIsolatedAny();
388
+ this.somethingIsolatedDateTime = new Date();
389
+ }
390
+ // Override the default hide state set by the style.
391
+ let hide = false;
392
+ if (state) {
393
+ if (state.hidden) {
394
+ hide = true;
395
+ }
396
+ else if (state.opacity === 0) {
397
+ hide = true;
398
+ }
399
+ else if (!state.isolated && this.somethingIsolated) {
400
+ hide = true;
233
401
  }
234
402
  }
235
- if (id) {
236
- const accountId = (_b = (_a = this.item.tileset) === null || _a === void 0 ? void 0 : _a.ClientAccountID) !== null && _b !== void 0 ? _b : this.getters.GetAccountId();
237
- const canEdit = accountId === this.getters.GetAccountId();
238
- const rego = {
239
- canEdit: canEdit,
240
- entityId: id,
241
- entityTypeId: this.typeId,
242
- menuItemId: this.item.id,
243
- menuItemType: this.item.Type,
244
- priority: this.renderPriority,
245
- visual: feature,
246
- tilesetId: (_c = this.item.tileset) === null || _c === void 0 ? void 0 : _c.TilesetID,
247
- tilesetType: bruce_models_1.Tileset.EType.EntitiesSet,
248
- accountId: accountId
249
- };
250
- this.visualsManager.AddRego({
251
- rego,
252
- requestRender: false
253
- });
254
- return rego;
403
+ feature.show = !hide;
404
+ // Already exists, so we add this graphic as a sibling.
405
+ if (this.loadedCesiumEntities[rego.entityId]) {
406
+ rego = this.loadedCesiumEntities[rego.entityId];
407
+ if (!rego.visual) {
408
+ // No parent graphic.
409
+ rego.visual = feature;
410
+ }
411
+ else if (rego.visual == feature) {
412
+ // Same graphic. Nothing to do.
413
+ }
414
+ else {
415
+ const visual = rego.visual;
416
+ // Sibling graphic.
417
+ if (!visual._siblingGraphics) {
418
+ visual._siblingGraphics = [];
419
+ }
420
+ if (visual._siblingGraphics.indexOf(feature) < 0) {
421
+ visual._siblingGraphics.push(feature);
422
+ }
423
+ }
255
424
  }
256
- return null;
425
+ this.loadedCesiumEntities[rego.entityId] = rego;
426
+ this.visualsManager.AddRego({
427
+ rego,
428
+ requestRender: false
429
+ });
430
+ return rego;
257
431
  }
258
432
  async ReRender(params) {
259
433
  let { entityIds, force, entities } = params;
@@ -1 +1 @@
1
- {"version":3,"file":"tileset-entities-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/tilesets/tileset-entities-render-manager.ts"],"names":[],"mappings":";;;AAAA,+CAA+E;AAG/E,iCAAiC;AACjC,uEAAkE;AAClE,gFAA4E;AAE5E,IAAiB,4BAA4B,CAiT5C;AAjTD,WAAiB,4BAA4B;IACzC,MAAa,OAAO;QAMhB,IAAW,QAAQ;YACf,OAAO,IAAI,CAAC,QAAQ,CAAC;QACzB,CAAC;QAGD,IAAW,OAAO;YACd,OAAO,IAAI,CAAC,QAAQ,CAAC;QACzB,CAAC;QAGD,IAAW,MAAM;YACb,OAAO,IAAI,CAAC,MAAM,CAAC;QACvB,CAAC;QAID,YAAY,MAKX;YA1BO,gBAAW,GAAG,CAAC,CAAC;YAIhB,aAAQ,GAAY,KAAK,CAAC;YAK1B,aAAQ,GAAgC,IAAI,CAAC;YAK7C,WAAM,GAA+B,IAAI,2CAAmB,CAAC,MAAM,EAAE,CAAC;YAa1E,MAAM,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,OAAO,EAAE,SAAS,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;YAC9E,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;YACrB,IAAI,CAAC,OAAO,GAAG,SAAS,CAAC;YACzB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;YACjB,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;QACzC,CAAC;QAEM,IAAI,CAAC,MAEX;;YACG,IAAI,CAAC,WAAW,IAAI,CAAC,CAAC;YACtB,MAAM,OAAO,GAAG,IAAI,CAAC,WAAW,CAAC;YAEjC,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,OAAO;aACV;YACD,IAAI,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,IAAI,EAAE;gBACd,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,IAAI,CAAC;aAC3B;YACD,IAAI,CAAC,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;YAC/C,IAAI,IAAI,CAAC,cAAc,IAAI,IAAI,EAAE;gBAC7B,IAAI,CAAC,cAAc,GAAG,CAAC,CAAC;aAC3B;YAED,MAAM,SAAS,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,SAAS,CAAC;YAC/C,IAAI,CAAC,SAAS,EAAE;gBACZ,OAAO;aACV;YAED,CAAC,KAAK,IAAI,EAAE;;gBACR,IAAI,CAAC,IAAI,CAAC,QAAQ,EAAE;oBAChB,IAAI,SAAS,EAAE;wBACX,IAAI,SAAS,GAAG,KAAK,CAAC;wBACtB,IAAI;4BACA,MAAM,8BAAa,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;;gCAChE,IAAI,IAAI,CAAC,QAAQ,EAAE;oCACf,OAAO;iCACV;gCACD,SAAS,GAAG,MAAM,sBAAO,CAAC,OAAO,CAAC,eAAe,CAAC;oCAC9C,eAAe,EAAE,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,eAAe;oCACnD,SAAS,EAAE,SAAS;oCACpB,YAAY,EAAE,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE;oCACzC,OAAO,EAAE,IAAI,CAAC,OAAO;iCACxB,CAAC,CAAA;4BACN,CAAC,CAAC,CAAC;yBACN;wBACD,OAAO,CAAC,EAAE;4BACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;yBACpB;wBACD,IAAI,CAAC,SAAS,EAAE;4BACZ,OAAO,CAAC,IAAI,CAAC,0BAA0B,SAAS,mBAAmB,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,eAAe,GAAG,CAAC,CAAC;4BAC1G,OAAO;yBACV;qBACJ;yBACI;wBACD,OAAO,CAAC,IAAI,CAAC,6CAA6C,CAAC,CAAC;qBAC/D;oBAED,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,WAAW,EAAE;wBAC/C,OAAO;qBACV;oBAED,IAAI,SAAS,GAAG,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,eAAe,CAAC;oBACnD,IAAI,CAAC,SAAS,EAAE;wBACZ,SAAS,GAAG,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;qBAC3C;oBAED,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,CAAC;wBACjC,SAAS;qBACZ,CAAC,CAAC;oBACH,IAAI,OAAO,GAAqB,IAAI,CAAC;oBACrC,MAAM,8BAAa,CAAC,KAAK,CAAC,GAAG,CAAC,yBAAyB,EAAE,KAAK,IAAI,EAAE;wBAChE,IAAI,IAAI,CAAC,QAAQ,EAAE;4BACf,OAAO;yBACV;wBACD,OAAO,GAAG,CAAC,MAAM,sBAAO,CAAC,GAAG,CAAC;4BACzB,GAAG;4BACH,SAAS;yBACZ,CAAC,CAAC,CAAC,OAAO,CAAC;oBAChB,CAAC,CAAC,CAAC;oBACH,IAAI,CAAC,OAAO,IAAI,IAAI,CAAC,QAAQ,IAAI,OAAO,KAAK,IAAI,CAAC,WAAW,EAAE;wBAC3D,OAAO;qBACV;oBACD,IAAI,CAAC,MAAM,GAAI,OAAO,CAAC,QAAuC,CAAC,YAAY,CAAC;oBAC5E,yEAAyE;oBACzE,IAAI,SAAS,IAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,EAAE;wBAC1C,MAAM,cAAc,GAAG,MAAA,MAAA,IAAI,CAAC,IAAI,0CAAE,WAAW,0CAAG,eAAe,CAAC,CAAC;wBACjE,IAAI,cAAc,EAAE;4BAChB,IAAI,CAAC,MAAM,GAAG,cAAc,CAAC;yBAChC;qBACJ;oBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,QAAQ,GAAG,MAAM,2CAAmB,CAAC,MAAM,CAAC;wBAC9D,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,cAAc,EAAE;wBACxC,OAAO,EAAE,OAAO;wBAChB,MAAM,EAAE,IAAI,CAAC,MAAM;wBACnB,SAAS,EAAE,SAAS;wBACpB,MAAM,EAAE,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,IAAI,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,CAAC;wBAC3E,aAAa,EAAE,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC;qBAC9C,CAAC,CAAC;oBACH,IAAI,IAAI,CAAC,QAAQ,EAAE;wBACf,IAAI,CAAC,SAAS,EAAE,CAAC;wBACjB,OAAO;qBACV;oBAED,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;oBAClC,2CAAmB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;;wBACxD,IAAI;4BACA,IAAI,IAAI,CAAC,QAAQ,IAAI,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE;gCAC5C,OAAO;6BACV;4BACD,IAAI,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;gCACvB,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,WAAW,EAAE,CAAC;gCACvC,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC;oCACb,MAAM,EAAE,IAAI,CAAC,MAAM;oCACnB,GAAG,EAAE,GAAG;oCACR,QAAQ,EAAE,IAAI,CAAC,QAAQ;oCACvB,eAAe,EAAE,IAAI,CAAC,IAAI,CAAC,OAAO;oCAClC,YAAY,EAAE,EAAE;oCAChB,aAAa,EAAE,KAAK;oCACpB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oCACxB,QAAQ,EAAE,IAAI,CAAC,cAAc;oCAC7B,QAAQ,EAAE,MAAA,IAAI,CAAC,IAAI,CAAC,WAAW,0CAAE,QAAQ;iCAC5C,CAAC,CAAC;6BACN;4BACD,IAAI,CAAC,cAAc,EAAE,CAAC;4BACtB,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;yBACrC;wBACD,OAAO,CAAC,EAAE;4BACN,OAAO,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;yBACpB;oBACL,CAAC,CAAC,CAAC;oBACH,QAAQ,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAC,IAAI,EAAE,EAAE;wBACxC,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;oBACxB,CAAC,CAAC,CAAC;iBACN;gBAED,2DAA2D;gBAC3D,IAAI,WAAW,GAAG,IAAI,CAAC,IAAI,CAAC,WAAW,CAAC;gBACxC,IAAI,CAAC,WAAW,IAAI,WAAW,IAAI,KAAK,EAAE;oBACtC,WAAW,GAAG,IAAI,CAAC;iBACtB;gBACD,IAAI,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,cAAc,CAAC;gBAC9C,IAAI,KAAK,CAAC,cAAc,CAAC,EAAE;oBACvB,cAAc,GAAG,EAAE,CAAC;iBACvB;gBAED,2CAAmB,CAAC,cAAc,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC,IAAI,CAAC,GAAG,EAAE;oBACxD,2CAAmB,CAAC,aAAa,CAAC;wBAC9B,QAAQ,EAAE,IAAI,CAAC,QAAQ;wBACvB,QAAQ,EAAE;4BACN,WAAW,EAAE,WAAW;4BACxB,kBAAkB,EAAE,cAAc;yBACrC;qBACJ,CAAC,CAAA;gBACN,CAAC,CAAC,CAAC;YACP,CAAC,CAAC,EAAE,CAAC;QACT,CAAC;QAEM,OAAO;YACV,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,OAAO;aACV;YACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;YACrB,IAAI,CAAC,SAAS,EAAE,CAAC;QACrB,CAAC;QAEO,SAAS;;YACb,IAAI,IAAI,CAAC,QAAQ,EAAE;gBACf,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;gBAC3B,IAAI,CAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,WAAW,EAAE,CAAA,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;oBAChF,IAAI,CAAC,QAAQ,CAAC,IAAI,GAAG,KAAK,CAAC;oBAC3B,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,MAAM,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACnD,MAAA,2CAAmB,CAAC,gBAAgB,CAAC,MAAM,CAAC,0CAAE,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;oBACrE,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;iBACrC;gBACD,IAAI,CAAC,QAAQ,GAAG,IAAI,CAAC;aACxB;YACD,MAAA,IAAI,CAAC,MAAM,0CAAE,OAAO,EAAE,CAAC;YACvB,IAAI,CAAC,cAAc,CAAC,WAAW,CAAC;gBAC5B,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;aAC3B,CAAC,CAAC;QACP,CAAC;QAEO,cAAc;YAClB,IAAI,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE;gBACjB,IAAI,CAAC,MAAM,CAAC,MAAM,CACd,IAAI,CAAC,QAAQ,EACb,IAAI,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,cAAc,CAAC,MAAM,GAAG,GAAG,CAAC,CACrF,CAAC;aACL;QACL,CAAC;QAEO,QAAQ,CAAC,IAAyB;YACtC,MAAM,OAAO,GAAG,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,OAAO,CAAC;YAC9B,IAAI,CAAC,OAAO,EAAE;gBACV,OAAO;aACV;YACD,MAAM,YAAY,GAAG,IAAI,GAAG,EAAuC,CAAC;YACpE,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,OAAO,CAAC,cAAc,EAAE,CAAC,EAAE,EAAE;gBAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;gBACtC,MAAM,IAAI,GAAG,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,CAAC;gBAC7C,IAAI,IAAI,aAAJ,IAAI,uBAAJ,IAAI,CAAE,QAAQ,EAAE;oBAChB,YAAY,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;iBACzC;aACJ;YACD,IAAI,IAAI,CAAC,MAAM,IAAI,YAAY,CAAC,IAAI,EAAE;gBAClC,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,CAAC,IAAI,CAAC,YAAY,CAAC,MAAM,EAAE,CAAC,CAAC,CAAC;aAChE;YACD,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC,aAAa,EAAE,CAAC;QACtC,CAAC;QAEO,iBAAiB,CAAC,OAAmC;;YACzD,uBAAuB;YACvB,IAAI,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;YACxC,IAAI,CAAC,EAAE,EAAE;gBACL,uBAAuB;gBACvB,EAAE,GAAG,OAAO,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;gBACrC,IAAI,EAAE,IAAI,OAAO,EAAE,IAAI,QAAQ,EAAE;oBAC7B,gEAAgE;oBAChE,IAAI,EAAE,CAAC,QAAQ,CAAC,QAAQ,CAAC,EAAE;wBACvB,EAAE,GAAG,EAAE,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;qBACvC;iBACJ;aACJ;YAED,IAAI,EAAE,EAAE;gBACJ,MAAM,SAAS,GAAG,MAAA,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,eAAe,mCAAI,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBACpF,MAAM,OAAO,GAAG,SAAS,KAAK,IAAI,CAAC,OAAO,CAAC,YAAY,EAAE,CAAC;gBAE1D,MAAM,IAAI,GAAgC;oBACtC,OAAO,EAAE,OAAO;oBAChB,QAAQ,EAAE,EAAE;oBACZ,YAAY,EAAE,IAAI,CAAC,MAAM;oBACzB,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;oBACxB,YAAY,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;oBAC5B,QAAQ,EAAE,IAAI,CAAC,cAAc;oBAC7B,MAAM,EAAE,OAAO;oBACf,SAAS,EAAE,MAAA,IAAI,CAAC,IAAI,CAAC,OAAO,0CAAE,SAAS;oBACvC,WAAW,EAAE,sBAAO,CAAC,KAAK,CAAC,WAAW;oBACtC,SAAS,EAAE,SAAS;iBACvB,CAAC;gBACF,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC;oBACxB,IAAI;oBACJ,aAAa,EAAE,KAAK;iBACvB,CAAC,CAAC;gBACH,OAAO,IAAI,CAAC;aACf;YACD,OAAO,IAAI,CAAC;QAChB,CAAC;QAEM,KAAK,CAAC,QAAQ,CAAC,MAIrB;YACG,IAAI,EAAC,SAAS,EAAE,KAAK,EAAE,QAAQ,EAAC,GAAG,MAAM,CAAC;YAC1C,IAAI,QAAQ,IAAI,CAAC,SAAS,EAAE;gBACxB,SAAS,GAAG,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,WAAC,OAAA,MAAA,CAAC,CAAC,KAAK,0CAAE,EAAE,CAAA,EAAA,CAAC,CAAC;aAC9C;YACD,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE;gBACd,OAAO;aACV;YAED,IAAI,KAAK,GAAkC,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC;gBACpE,UAAU,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE;aAC3B,CAAC,CAAC;YACH,IAAI,SAAS,IAAI,IAAI,EAAE;gBACnB,KAAK,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC;aACjE;YAED,0EAA0E;YAC1E,IAAI,CAAC,MAAM,CAAC,cAAc,CAAC,SAAS,EAAE,QAAQ,CAAC,CAAC;YAChD,IAAI,CAAC,MAAM,CAAC,aAAa,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;QAC3C,CAAC;KACJ;IA/SY,oCAAO,UA+SnB,CAAA;AACL,CAAC,EAjTgB,4BAA4B,GAA5B,oCAA4B,KAA5B,oCAA4B,QAiT5C"}
1
+ {"version":3,"file":"tileset-entities-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/tilesets/tileset-entities-render-manager.ts"],"names":[],"mappings":"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"}
@@ -10,6 +10,19 @@ const entity_label_1 = require("../rendering/render-managers/common/entity-label
10
10
  const visual_register_culler_1 = require("./visual-register-culler");
11
11
  const cesium_entity_styler_1 = require("../utils/cesium-entity-styler");
12
12
  const cesium_animated_in_out_1 = require("./cesium-animated-in-out");
13
+ function isTilesetFeatureAlive(visual) {
14
+ const cTileset = visual === null || visual === void 0 ? void 0 : visual.tileset;
15
+ if (!cTileset) {
16
+ return false;
17
+ }
18
+ else if (cTileset.isDestroyed() || !cTileset.show || !cTileset.root) {
19
+ return false;
20
+ }
21
+ else if (visual.primitive && visual.primitive.isDestroyed()) {
22
+ return false;
23
+ }
24
+ return true;
25
+ }
13
26
  /**
14
27
  * Returns if a given visual is alive and in the scene.
15
28
  * @param viewer
@@ -105,23 +118,25 @@ function updateEntityShow(viewer, rego, show) {
105
118
  }
106
119
  }
107
120
  else if (visual instanceof Cesium.Cesium3DTileFeature) {
108
- // No way to tell if changing show will crash it!
109
- // ^ We need to improve removing visuals from the register when tiles unload to avoid this :)
110
- try {
111
- visual.show = show;
112
- }
113
- catch (e) {
114
- console.error(e);
115
- }
116
- const ent = visual;
117
- if (ent._siblingGraphics) {
118
- for (let i = 0; i < ent._siblingGraphics.length; i++) {
119
- try {
120
- const sibling = ent._siblingGraphics[i];
121
- sibling.show = show;
122
- }
123
- catch (e) {
124
- console.error(e);
121
+ if (isTilesetFeatureAlive(visual)) {
122
+ // No way to tell if changing show will crash it!
123
+ // ^ We need to improve removing visuals from the register when tiles unload to avoid this :)
124
+ try {
125
+ visual.show = show;
126
+ }
127
+ catch (e) {
128
+ console.error(e);
129
+ }
130
+ const ent = visual;
131
+ if (ent._siblingGraphics) {
132
+ for (let i = 0; i < ent._siblingGraphics.length; i++) {
133
+ try {
134
+ const sibling = ent._siblingGraphics[i];
135
+ sibling.show = show;
136
+ }
137
+ catch (e) {
138
+ console.error(e);
139
+ }
125
140
  }
126
141
  }
127
142
  }