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.
@@ -73,5 +73,5 @@ __exportStar(require("./widgets/controls-view-bar/widget-control-view-bar-search
73
73
  __exportStar(require("./widgets/widget-left-panel"), exports);
74
74
  __exportStar(require("./widgets/tabs-left-panel/widget-left-panel-tab"), exports);
75
75
  __exportStar(require("./widgets/tabs-left-panel/widget-left-panel-tab-bookmarks"), exports);
76
- exports.VERSION = "6.1.8";
76
+ exports.VERSION = "6.2.0";
77
77
  //# sourceMappingURL=bruce-cesium.js.map
@@ -10,6 +10,9 @@ const colors = {};
10
10
  const names = {};
11
11
  const entities = {};
12
12
  const viewers = {};
13
+ // Global shift to move cursor + label down in pixels
14
+ const CURSOR_SHIFT_Y = 22;
15
+ const CURSOR_SHIFT_X = 10;
13
16
  function createDOMLabel(viewer, id, name, colorCss) {
14
17
  var _a;
15
18
  const label = document.createElement("div");
@@ -64,8 +67,8 @@ function updateDOMLabel(viewer, label, pos3d) {
64
67
  // Keep full opacity; no distance-based fading
65
68
  // Keep the label close to the cursor regardless of zoom
66
69
  // Use small, constant pixel offsets to bottom-right
67
- const offsetX = 12; // px
68
- const offsetY = 10; // px
70
+ const offsetX = 6 + CURSOR_SHIFT_X; // px
71
+ const offsetY = 4 + CURSOR_SHIFT_Y; // px (shift label further down)
69
72
  let leftPx = screenPos.x + offsetX;
70
73
  let topPx = screenPos.y + offsetY;
71
74
  const pad = 8;
@@ -116,7 +119,9 @@ var LiveCursor;
116
119
  distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 30000),
117
120
  scaleByDistance: new Cesium.NearFarScalar(100, 1.5, 10000, 0.8),
118
121
  verticalOrigin: Cesium.VerticalOrigin.BOTTOM,
119
- horizontalOrigin: Cesium.HorizontalOrigin.CENTER
122
+ horizontalOrigin: Cesium.HorizontalOrigin.CENTER,
123
+ // Shift billboard down; Cesium's +Y is up so use negative
124
+ pixelOffset: new Cesium.Cartesian2(CURSOR_SHIFT_X, CURSOR_SHIFT_Y)
120
125
  } : undefined,
121
126
  ellipse: showEllipse ? {
122
127
  semiMajorAxis: 50.0,
@@ -154,6 +159,10 @@ var LiveCursor;
154
159
  viewer: viewer
155
160
  });
156
161
  entity.position = new Cesium.CallbackProperty(() => animated.GetValue(), false);
162
+ // Ensure existing billboard is shifted consistently
163
+ if (entity.billboard) {
164
+ entity.billboard.pixelOffset = new Cesium.Cartesian2(CURSOR_SHIFT_X, CURSOR_SHIFT_Y);
165
+ }
157
166
  }
158
167
  if (!updaters[id]) {
159
168
  const remover = viewer.scene.postUpdate.addEventListener(() => {
@@ -181,6 +190,14 @@ var LiveCursor;
181
190
  }
182
191
  LiveCursor.Upsert = Upsert;
183
192
  function Remove(id) {
193
+ // Also remove any camera visuals tracked for this cursor
194
+ const viewer = viewers[id];
195
+ if (viewer) {
196
+ try {
197
+ RemoveCameraVisuals(viewer, id);
198
+ }
199
+ catch { }
200
+ }
184
201
  const label = labels[id];
185
202
  if (label && label.parentElement) {
186
203
  label.parentElement.removeChild(label);
@@ -198,7 +215,6 @@ var LiveCursor;
198
215
  }
199
216
  // Remove entity if present
200
217
  const entity = entities[id];
201
- const viewer = viewers[id];
202
218
  if (entity && viewer && viewer.entities.contains(entity)) {
203
219
  viewer.entities.remove(entity);
204
220
  }
@@ -206,5 +222,135 @@ var LiveCursor;
206
222
  delete viewers[id];
207
223
  }
208
224
  LiveCursor.Remove = Remove;
225
+ const cameraVisuals = {};
226
+ const cameraUpdateBuffer = {};
227
+ const CAMERA_UPDATE_INTERVAL = 500; // ms
228
+ const CAMERA_BUFFER_TIMEOUT = 1000; // ms
229
+ function UpsertCameraVisuals(params) {
230
+ if (params.throttled) {
231
+ return throttledUpsertCameraVisuals(params);
232
+ }
233
+ return internalUpsertCameraVisuals(params);
234
+ }
235
+ LiveCursor.UpsertCameraVisuals = UpsertCameraVisuals;
236
+ function throttledUpsertCameraVisuals(params) {
237
+ var _a, _b;
238
+ const { viewer, id, camera, color } = params;
239
+ const now = Date.now();
240
+ cameraUpdateBuffer[id] = {
241
+ camera: { ...camera },
242
+ color,
243
+ lastBufferTime: now
244
+ };
245
+ const existing = cameraVisuals[id];
246
+ if (!(existing === null || existing === void 0 ? void 0 : existing.cone) || (now - ((_a = existing.lastUpdate) !== null && _a !== void 0 ? _a : 0)) >= CAMERA_UPDATE_INTERVAL) {
247
+ internalUpsertCameraVisuals(params);
248
+ return;
249
+ }
250
+ setTimeout(() => {
251
+ const buffered = cameraUpdateBuffer[id];
252
+ if (buffered && (now - buffered.lastBufferTime) < CAMERA_BUFFER_TIMEOUT) {
253
+ internalUpsertCameraVisuals({
254
+ viewer,
255
+ id,
256
+ camera: buffered.camera,
257
+ color: buffered.color
258
+ });
259
+ }
260
+ }, Math.max(0, CAMERA_UPDATE_INTERVAL - (now - ((_b = existing.lastUpdate) !== null && _b !== void 0 ? _b : 0))));
261
+ }
262
+ function internalUpsertCameraVisuals(params) {
263
+ var _a, _b, _c, _d, _e, _f, _g, _h;
264
+ const { viewer, id, camera, color } = params;
265
+ if (!viewer || viewer.isDestroyed() || !(camera === null || camera === void 0 ? void 0 : camera.pos)) {
266
+ return;
267
+ }
268
+ const camPos = new Cesium.Cartesian3(camera.pos.x, camera.pos.y, camera.pos.z);
269
+ // Adjust heading by -90 degrees to correct coordinate system mismatch
270
+ const adjustedHeading = ((_a = camera.headingDeg) !== null && _a !== void 0 ? _a : 0) - 90;
271
+ const headingRad = Cesium.Math.toRadians(adjustedHeading);
272
+ const pitchRad = Cesium.Math.toRadians((_b = camera.pitchDeg) !== null && _b !== void 0 ? _b : 0);
273
+ const rollRad = Cesium.Math.toRadians((_c = camera.rollDeg) !== null && _c !== void 0 ? _c : 0);
274
+ const hpr = new Cesium.HeadingPitchRoll(headingRad, pitchRad, rollRad);
275
+ const baseOrientation = Cesium.Transforms.headingPitchRollQuaternion(camPos, hpr);
276
+ // Cylinder axis is local +Z, but HPR 'forward' is along +X. Tilt so Z -> X.
277
+ const tilt = Cesium.Quaternion.fromAxisAngle(Cesium.Cartesian3.UNIT_Y, Cesium.Math.toRadians(-90));
278
+ const orientation = Cesium.Quaternion.multiply(baseOrientation, tilt, new Cesium.Quaternion());
279
+ const vFovDeg = Math.max(1, Math.min(170, (_d = camera.fovDeg) !== null && _d !== void 0 ? _d : 60));
280
+ const aspect = (viewer.canvas && viewer.canvas.clientHeight > 0)
281
+ ? (viewer.canvas.clientWidth / viewer.canvas.clientHeight)
282
+ : 16 / 9;
283
+ const hFovDeg = Cesium.Math.toDegrees(2 * Math.atan(Math.tan(Cesium.Math.toRadians(vFovDeg) / 2) * aspect));
284
+ const length = Math.max(10, (_e = camera.rangeMeters) !== null && _e !== void 0 ? _e : 200);
285
+ // Use horizontal FOV to approximate viewing cone width
286
+ const bottomRadius = Math.tan(Cesium.Math.toRadians(hFovDeg / 2)) * length;
287
+ // Offset position so cone extends forward from camera
288
+ const rotation = Cesium.Matrix3.fromQuaternion(orientation);
289
+ const forward = Cesium.Matrix3.multiplyByVector(rotation, Cesium.Cartesian3.UNIT_Z, new Cesium.Cartesian3());
290
+ const offset = Cesium.Cartesian3.multiplyByScalar(forward, length / 2, new Cesium.Cartesian3());
291
+ const conePos = Cesium.Cartesian3.add(camPos, offset, new Cesium.Cartesian3());
292
+ const coneId = `user-camera-cone-${id}`;
293
+ const now = Date.now();
294
+ const existing = (_f = cameraVisuals[id]) !== null && _f !== void 0 ? _f : {};
295
+ // Upsert cone entity
296
+ if (!existing.cone) {
297
+ const cone = viewer.entities.add({
298
+ id: coneId,
299
+ position: conePos,
300
+ orientation: orientation,
301
+ cylinder: {
302
+ length,
303
+ topRadius: 0,
304
+ bottomRadius,
305
+ material: color.withAlpha(0.25),
306
+ outline: true,
307
+ outlineColor: color.withAlpha(0.8),
308
+ numberOfVerticalLines: 0,
309
+ slices: 64,
310
+ distanceDisplayCondition: new Cesium.DistanceDisplayCondition(0, 50000)
311
+ }
312
+ });
313
+ existing.cone = cone;
314
+ existing.lastUpdate = now;
315
+ }
316
+ else {
317
+ const needsUpdate = (!Cesium.Cartesian3.equals(((_g = existing.cone.position) === null || _g === void 0 ? void 0 : _g.getValue(Cesium.JulianDate.now())) || new Cesium.Cartesian3(), conePos) ||
318
+ !Cesium.Quaternion.equals(((_h = existing.cone.orientation) === null || _h === void 0 ? void 0 : _h.getValue(Cesium.JulianDate.now())) || new Cesium.Quaternion(), orientation));
319
+ if (needsUpdate) {
320
+ viewer.entities.suspendEvents();
321
+ try {
322
+ existing.cone.position = conePos;
323
+ existing.cone.orientation = orientation;
324
+ const cylinder = existing.cone.cylinder;
325
+ if (cylinder) {
326
+ cylinder.length = length;
327
+ cylinder.bottomRadius = bottomRadius;
328
+ cylinder.material = color.withAlpha(0.25);
329
+ cylinder.outlineColor = color.withAlpha(0.8);
330
+ }
331
+ }
332
+ finally {
333
+ viewer.entities.resumeEvents();
334
+ }
335
+ }
336
+ existing.lastUpdate = now;
337
+ }
338
+ cameraVisuals[id] = existing;
339
+ }
340
+ function RemoveCameraVisuals(viewer, id) {
341
+ const existing = cameraVisuals[id];
342
+ if (!existing) {
343
+ return;
344
+ }
345
+ if (existing.cone) {
346
+ try {
347
+ viewer.entities.remove(existing.cone);
348
+ }
349
+ catch { }
350
+ }
351
+ delete cameraVisuals[id];
352
+ delete cameraUpdateBuffer[id];
353
+ }
354
+ LiveCursor.RemoveCameraVisuals = RemoveCameraVisuals;
209
355
  })(LiveCursor = exports.LiveCursor || (exports.LiveCursor = {}));
210
356
  //# sourceMappingURL=live-cursor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"live-cursor.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/common/live-cursor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"live-cursor.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/common/live-cursor.ts"],"names":[],"mappings":"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"}
@@ -54,6 +54,24 @@ var TilesetArbRenderManager;
54
54
  this.cTileset = null;
55
55
  this.styler = new tileset_render_engine_1.TilesetRenderEngine.Styler();
56
56
  this.tilesetType = null;
57
+ // Entity ID -> rego.
58
+ // We retain this information as a quick look-up on what has been registered.
59
+ // This lets us properly assign siblings to the same rego when hierarchy items are marked as collapsed.
60
+ this.loadedCesiumEntities = {};
61
+ // Cache of 'something isolated' that we detect and use to calculate a default show state.
62
+ // It's pretty expensive so we save it for a few seconds inbetween checks.
63
+ this.somethingIsolated = null;
64
+ this.somethingIsolatedDateTime = null;
65
+ // Queue of loaded in features that we haven't processed yet.
66
+ this.featureQueue = [];
67
+ // State is true for 'add' or 'false' for 'remove'.
68
+ this.featureQueueStates = new Map();
69
+ this.featureQueueInterval = null;
70
+ // Cache of feature properties we wanted to find vs what we found.
71
+ // Eg: "entityId" -> "entityId" | "bruceId" | "id" | null.
72
+ // Saves having to do a case-insensitive lookup every time.
73
+ this.featurePropCache = new Map();
74
+ this.featurePropsChecked = 0;
57
75
  this.viewer = params.viewer;
58
76
  this.getters = params.getters;
59
77
  this.visualsManager = params.register;
@@ -230,11 +248,16 @@ var TilesetArbRenderManager;
230
248
  }
231
249
  });
232
250
  this.cTileset.tileLoad.addEventListener((tile) => {
233
- if (this.disposed || this.viewer.isDestroyed()) {
234
- return;
251
+ try {
252
+ this.queueTile(tile, true);
253
+ }
254
+ catch (e) {
255
+ console.error(e);
235
256
  }
257
+ });
258
+ this.cTileset.tileUnload.addEventListener((tile) => {
236
259
  try {
237
- this.mapCTile(tile);
260
+ this.queueTile(tile, false);
238
261
  }
239
262
  catch (e) {
240
263
  console.error(e);
@@ -242,6 +265,118 @@ var TilesetArbRenderManager;
242
265
  });
243
266
  })();
244
267
  }
268
+ /**
269
+ * @param tile
270
+ * @param load indicates if we are loading or unloading the tile.
271
+ * @returns
272
+ */
273
+ queueTile(tile, load) {
274
+ const content = tile === null || tile === void 0 ? void 0 : tile.content;
275
+ if (!content) {
276
+ return;
277
+ }
278
+ for (let i = 0; i < content.featuresLength; i++) {
279
+ const feature = content.getFeature(i);
280
+ if (!this.featureQueue.includes(feature)) {
281
+ this.featureQueue.push(feature);
282
+ }
283
+ this.featureQueueStates.set(feature, load);
284
+ }
285
+ this.pingFeatureQueue();
286
+ }
287
+ /**
288
+ * Pings the feature queue to process any queued features.
289
+ * Does nothing if we're already processing.
290
+ * @returns
291
+ */
292
+ pingFeatureQueue() {
293
+ if (!this.featureQueue.length || this.featureQueueInterval || this.disposed) {
294
+ return;
295
+ }
296
+ this.featureQueueInterval = setInterval(() => {
297
+ if (this.disposed) {
298
+ clearInterval(this.featureQueueInterval);
299
+ this.featureQueueInterval = null;
300
+ return;
301
+ }
302
+ this.processFeatureQueueBatch();
303
+ if (!this.featureQueue) {
304
+ clearInterval(this.featureQueueInterval);
305
+ this.featureQueueInterval = null;
306
+ }
307
+ }, 10);
308
+ }
309
+ /**
310
+ * Process a batch of features from the feature queue.
311
+ */
312
+ processFeatureQueueBatch() {
313
+ if (!this.featureQueue.length) {
314
+ return;
315
+ }
316
+ const BATCH_SIZE = 5000;
317
+ const batch = this.featureQueue.splice(0, BATCH_SIZE);
318
+ const regosToStyle = new Map();
319
+ const featuresToRemove = [];
320
+ for (const feature of batch) {
321
+ const load = this.featureQueueStates.get(feature);
322
+ this.featureQueueStates.delete(feature);
323
+ if (!load) {
324
+ featuresToRemove.push(feature);
325
+ continue;
326
+ }
327
+ const result = this.mapTilesetFeature(feature);
328
+ if (result === null) {
329
+ // Override the default hide state set by the style.
330
+ feature.show = true;
331
+ continue;
332
+ }
333
+ else if (result) {
334
+ regosToStyle.set(result.entityId, result);
335
+ }
336
+ }
337
+ if (featuresToRemove.length) {
338
+ const { removedEntityIds } = this.visualsManager.RemoveRegosByVisuals({
339
+ visuals: featuresToRemove,
340
+ requestRender: false,
341
+ menuItemId: this.item.id,
342
+ doRemove: false
343
+ });
344
+ for (const entityId of removedEntityIds) {
345
+ delete this.loadedCesiumEntities[entityId];
346
+ }
347
+ }
348
+ if (this.styler && regosToStyle.size) {
349
+ this.styler.QueueEntities(Array.from(regosToStyle.values()));
350
+ }
351
+ }
352
+ evaluateFeatureProps(feature) {
353
+ var _a;
354
+ // If we've checked 10 features then we should have a good handle on what props are available.
355
+ if (this.featurePropsChecked >= 10) {
356
+ return;
357
+ }
358
+ this.featurePropsChecked++;
359
+ const featureAny = feature;
360
+ const props = featureAny.getPropertyNames ? featureAny.getPropertyNames() : (_a = featureAny.getPropertyIds) === null || _a === void 0 ? void 0 : _a.call(featureAny);
361
+ if (!props) {
362
+ return;
363
+ }
364
+ for (const prop of props) {
365
+ if (!prop) {
366
+ continue;
367
+ }
368
+ const lowered = prop.toLowerCase();
369
+ if (lowered === "bruceid" || lowered === "id" || lowered === "entityid") {
370
+ this.featurePropCache.set("entityId", prop);
371
+ }
372
+ else if (lowered === "brucepath") {
373
+ this.featurePropCache.set("BrucePath", prop);
374
+ }
375
+ else if (lowered === "building_id" || lowered === "buildingid") {
376
+ this.featurePropCache.set("BuildingID", prop);
377
+ }
378
+ }
379
+ }
245
380
  onCTilesetLoad() {
246
381
  if (this.item.FlyTo) {
247
382
  this.viewer.zoomTo(this.cTileset, new Cesium.HeadingPitchRange(0.0, -0.5, this.cTileset.boundingSphere.radius / 4.0));
@@ -256,6 +391,11 @@ var TilesetArbRenderManager;
256
391
  }
257
392
  doDispose() {
258
393
  var _a, _b;
394
+ if (this.featureQueueInterval) {
395
+ clearInterval(this.featureQueueInterval);
396
+ this.featureQueueInterval = null;
397
+ this.featureQueue = [];
398
+ }
259
399
  if (this.cTileset) {
260
400
  const viewer = this.viewer;
261
401
  if (!(viewer === null || viewer === void 0 ? void 0 : viewer.isDestroyed()) && this.viewer.scene.primitives.contains(this.cTileset)) {
@@ -272,7 +412,10 @@ var TilesetArbRenderManager;
272
412
  });
273
413
  }
274
414
  async ReRender(params) {
275
- const { entityIds, force } = params;
415
+ let { entityIds, force, entities } = params;
416
+ if (entities && !entityIds) {
417
+ entityIds = entities.map(x => { var _a; return (_a = x.Bruce) === null || _a === void 0 ? void 0 : _a.ID; });
418
+ }
276
419
  if (!this.styler) {
277
420
  return;
278
421
  }
@@ -282,25 +425,9 @@ var TilesetArbRenderManager;
282
425
  if (entityIds != null) {
283
426
  regos = regos.filter(r => entityIds.indexOf(r.entityId) >= 0);
284
427
  }
285
- this.styler.QueueEntities(regos);
286
- }
287
- mapCTile(tile) {
288
- const content = tile === null || tile === void 0 ? void 0 : tile.content;
289
- if (!content) {
290
- return;
291
- }
292
- const regosToQueue = new Map();
293
- for (let i = 0; i < content.featuresLength; i++) {
294
- const feature = content.getFeature(i);
295
- let rego = this.mapTilesetFeature(feature);
296
- if (rego === null || rego === void 0 ? void 0 : rego.entityId) {
297
- regosToQueue.set(rego.entityId, rego);
298
- }
299
- }
300
- if (this.styler && regosToQueue.size) {
301
- this.styler.QueueEntities(Array.from(regosToQueue.values()));
302
- }
303
- this.viewer.scene.requestRender();
428
+ // Update the cache so we use that data instead of requesting the records.
429
+ this.styler.SetEntityCache(entityIds, entities);
430
+ this.styler.QueueEntities(regos, true);
304
431
  }
305
432
  mapTilesetFeature(feature) {
306
433
  var _a, _b, _c, _d;
@@ -318,32 +445,78 @@ var TilesetArbRenderManager;
318
445
  tilesetId: (_c = this.item.tileset) === null || _c === void 0 ? void 0 : _c.TilesetID,
319
446
  tilesetType: this.tilesetType
320
447
  };
321
- // Two different methods for two different Cesium versions...
322
- const props = feature.getPropertyNames ? feature.getPropertyNames([]) :
323
- feature.getPropertyIds ? feature.getPropertyIds() : [];
324
- if (props.find(x => x == "BrucePath")) {
325
- const path = (_d = feature.getProperty("BrucePath")) === null || _d === void 0 ? void 0 : _d.split("|");
326
- if (path === null || path === void 0 ? void 0 : path.length) {
327
- rego.entityId = path[path.length - 1];
448
+ this.evaluateFeatureProps(feature);
449
+ if (!rego.entityId) {
450
+ const propToUse = this.featurePropCache.get("entityId");
451
+ if (propToUse) {
452
+ rego.entityId = feature.getProperty(propToUse);
328
453
  }
329
454
  }
330
455
  if (!rego.entityId) {
331
- // 'Building' ones are for legacy CC3D data.
332
- const ACCEPTABLE_PROPS = [
333
- "Building_ID", "BuildingID", "BruceId", "entityId", "bruceId"
334
- ];
335
- for (let acceptableId of ACCEPTABLE_PROPS) {
336
- if (props.indexOf(acceptableId) > -1) {
337
- rego.entityId = feature.getProperty(acceptableId);
338
- if (rego.entityId) {
339
- break;
340
- }
456
+ const propToUse = this.featurePropCache.get("BrucePath");
457
+ if (propToUse) {
458
+ const path = (_d = feature.getProperty(propToUse)) === null || _d === void 0 ? void 0 : _d.split("|");
459
+ if (path === null || path === void 0 ? void 0 : path.length) {
460
+ rego.entityId = path[path.length - 1];
341
461
  }
342
462
  }
343
463
  }
464
+ if (!rego.entityId) {
465
+ const propToUse = this.featurePropCache.get("BuildingID");
466
+ if (propToUse) {
467
+ rego.entityId = feature.getProperty(propToUse);
468
+ }
469
+ }
344
470
  if (!rego.entityId) {
345
471
  return null;
346
472
  }
473
+ // Get the initial hide/show state.
474
+ const state = this.visualsManager.GetState({
475
+ entityId: rego.entityId,
476
+ menuItemId: this.item.id,
477
+ });
478
+ if (this.somethingIsolated == null ||
479
+ // 5s cache.
480
+ (this.somethingIsolatedDateTime && this.somethingIsolatedDateTime.getTime() + 5000 < new Date().getTime())) {
481
+ this.somethingIsolated = this.visualsManager.GetIsIsolatedAny();
482
+ this.somethingIsolatedDateTime = new Date();
483
+ }
484
+ // Override the default hide state set by the style.
485
+ let hide = false;
486
+ if (state) {
487
+ if (state.hidden) {
488
+ hide = true;
489
+ }
490
+ else if (state.opacity === 0) {
491
+ hide = true;
492
+ }
493
+ else if (!state.isolated && this.somethingIsolated) {
494
+ hide = true;
495
+ }
496
+ }
497
+ feature.show = !hide;
498
+ // Already exists, so we add this graphic as a sibling.
499
+ if (this.loadedCesiumEntities[rego.entityId]) {
500
+ rego = this.loadedCesiumEntities[rego.entityId];
501
+ if (!rego.visual) {
502
+ // No parent graphic.
503
+ rego.visual = feature;
504
+ }
505
+ else if (rego.visual == feature) {
506
+ // Same graphic. Nothing to do.
507
+ }
508
+ else {
509
+ const visual = rego.visual;
510
+ // Sibling graphic.
511
+ if (!visual._siblingGraphics) {
512
+ visual._siblingGraphics = [];
513
+ }
514
+ if (visual._siblingGraphics.indexOf(feature) < 0) {
515
+ visual._siblingGraphics.push(feature);
516
+ }
517
+ }
518
+ }
519
+ this.loadedCesiumEntities[rego.entityId] = rego;
347
520
  this.visualsManager.AddRego({
348
521
  rego,
349
522
  requestRender: false
@@ -1 +1 @@
1
- {"version":3,"file":"tileset-arb-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/tilesets/tileset-arb-render-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tileset-arb-render-manager.js","sourceRoot":"","sources":["../../../../../src/rendering/render-managers/tilesets/tileset-arb-render-manager.ts"],"names":[],"mappings":"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"}