bruce-cesium 7.6.7 → 7.6.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.
@@ -92,7 +92,7 @@ __exportStar(require("./widgets/widget-info-view"), exports);
92
92
  __exportStar(require("./widgets/widget-left-panel"), exports);
93
93
  __exportStar(require("./widgets/widget-nav-compass"), exports);
94
94
  __exportStar(require("./widgets/widget-view-bar"), exports);
95
- exports.VERSION = "7.6.7";
95
+ exports.VERSION = "7.6.8";
96
96
  /**
97
97
  * Updates the environment instance used by bruce-cesium to one specified.
98
98
  * This can be used to ensure that the instance a parent is referencing is shared between bruce-cesium, bruce-models, and the parent app.
@@ -279,6 +279,9 @@ var MenuItemManager;
279
279
  // Laid over each item's own style where it can take one, including items rendered after it was set.
280
280
  this.styleOverlay = null;
281
281
  this.styleOverlayCounter = 0;
282
+ // Style records bookmark styles name by ID, loaded once each; null for one that failed to load.
283
+ this.itemStyleRecords = new Map();
284
+ this.itemStyleRecordsLoading = new Set();
282
285
  this.onUpdate = null;
283
286
  // Segments discovered so far per menu item ID.
284
287
  this.seriesSegments = new Map();
@@ -361,14 +364,15 @@ var MenuItemManager;
361
364
  // An item with a style set renders its first style unless the caller already picked one of them.
362
365
  params = { ...params, item: menu_item_styles_1.MenuItemStyles.Resolve(params.item) };
363
366
  // The overlay rides on the rendered copy, so the view's item never carries it.
364
- params = { ...params, item: menu_item_style_overlay_1.MenuItemStyleOverlay.With(params.item, this.styleOverlay) };
367
+ const effective = this.getEffectiveOverlay(params.item, this.styleOverlay);
368
+ params = { ...params, item: menu_item_style_overlay_1.MenuItemStyleOverlay.With(params.item, effective) };
365
369
  let rItem = this.items.find(x => x.id == params.item.id);
366
370
  let create = true;
367
371
  // Item already exists so we'll check if we should re-create it.
368
372
  if (rItem) {
369
- // Only the style pick or overlay changed, so the drawn graphics are restyled, not rebuilt.
370
- const aligned = menu_item_style_overlay_1.MenuItemStyleOverlay.With(rItem.item, menu_item_style_overlay_1.MenuItemStyleOverlay.Get(params.item));
371
- const pickOnly = menu_item_styles_1.MenuItemStyles.IsStyleChangeOnly(aligned, params.item);
373
+ // Only the style pick, overlay or bookmark style changed, so the graphics are restyled, not rebuilt.
374
+ const stripped = menu_item_style_overlay_1.MenuItemStyleOverlay.Strip(params.item);
375
+ const pickOnly = menu_item_styles_1.MenuItemStyles.IsStyleChangeOnly(menu_item_style_overlay_1.MenuItemStyleOverlay.Strip(rItem.item), stripped);
372
376
  const restyleOnly = pickOnly || menu_item_style_overlay_1.MenuItemStyleOverlay.IsChangeOnly(rItem.item, params.item);
373
377
  if (restyleOnly && this.isStyleSwapCapable(rItem.renderManager)) {
374
378
  rItem.renderManager.SwapStyle(params.item);
@@ -843,7 +847,7 @@ var MenuItemManager;
843
847
  }
844
848
  this.styleOverlay = overlay;
845
849
  for (const rItem of this.items) {
846
- const next = menu_item_style_overlay_1.MenuItemStyleOverlay.With(rItem.item, overlay);
850
+ const next = menu_item_style_overlay_1.MenuItemStyleOverlay.With(rItem.item, this.getEffectiveOverlay(rItem.item, overlay));
847
851
  // Setting the same overlay again would otherwise restyle every feature for nothing.
848
852
  const unchanged = JSON.stringify(menu_item_style_overlay_1.MenuItemStyleOverlay.Get(next)) === JSON.stringify(menu_item_style_overlay_1.MenuItemStyleOverlay.Get(rItem.item));
849
853
  if (unchanged ||
@@ -856,6 +860,81 @@ var MenuItemManager;
856
860
  (_c = this.onUpdate) === null || _c === void 0 ? void 0 : _c.Trigger({ isEnabling: true, itemId: rItem.id });
857
861
  }
858
862
  }
863
+ /**
864
+ * Lays an inline style or any Style record on one enabled item under the scene-wide one; neither clears it.
865
+ */
866
+ SetItemStyleOverlay(params) {
867
+ var _a;
868
+ const rItem = this.items.find(x => x.id === params.menuItemId);
869
+ let itemStyle = null;
870
+ if (params.style) {
871
+ itemStyle = { style: params.style };
872
+ }
873
+ else if (params.styleId != null) {
874
+ itemStyle = { styleId: params.styleId };
875
+ }
876
+ if (!rItem ||
877
+ !this.isStyleSwapCapable(rItem.renderManager) ||
878
+ rItem.renderManager.Disposed ||
879
+ (itemStyle && !menu_item_style_overlay_1.MenuItemStyleOverlay.Supports(rItem.item))) {
880
+ return false;
881
+ }
882
+ const styled = menu_item_style_overlay_1.MenuItemStyleOverlay.WithItemStyle(rItem.item, itemStyle);
883
+ const next = menu_item_style_overlay_1.MenuItemStyleOverlay.With(styled, this.getEffectiveOverlay(styled, this.styleOverlay));
884
+ rItem.renderManager.SwapStyle(next);
885
+ rItem.item = next;
886
+ (_a = this.onUpdate) === null || _a === void 0 ? void 0 : _a.Trigger({ isEnabling: true, itemId: rItem.id });
887
+ return true;
888
+ }
889
+ /*
890
+ * Returns the overlay the item renders with, starting the load of a record it names that is not loaded yet.
891
+ */
892
+ getEffectiveOverlay(item, overlay) {
893
+ const styleId = menu_item_style_overlay_1.MenuItemStyleOverlay.GetItemStyle(item) ? null : menu_item_style_overlay_1.MenuItemStyleOverlay.GetItemStyleId(item);
894
+ if (styleId != null && !this.itemStyleRecords.has(String(styleId))) {
895
+ this.loadItemStyleRecord(styleId);
896
+ }
897
+ const record = styleId != null ? this.itemStyleRecords.get(String(styleId)) : null;
898
+ return menu_item_style_overlay_1.MenuItemStyleOverlay.Effective(item, overlay, record !== null && record !== void 0 ? record : undefined);
899
+ }
900
+ /*
901
+ * Loads a record a bookmark style names, then restyles every enabled item that names it.
902
+ */
903
+ async loadItemStyleRecord(styleId) {
904
+ var _a, _b;
905
+ const key = String(styleId);
906
+ if (this.itemStyleRecordsLoading.has(key)) {
907
+ return;
908
+ }
909
+ this.itemStyleRecordsLoading.add(key);
910
+ let settings = null;
911
+ // A record that fails to load leaves the item on its own style.
912
+ try {
913
+ const { style } = await bruce_models_1.Style.Get({
914
+ api: this.getters.GetBruceApi(),
915
+ styleId
916
+ });
917
+ settings = (_a = style === null || style === void 0 ? void 0 : style.Settings) !== null && _a !== void 0 ? _a : null;
918
+ }
919
+ catch (e) {
920
+ console.error(e);
921
+ }
922
+ this.itemStyleRecordsLoading.delete(key);
923
+ this.itemStyleRecords.set(key, settings);
924
+ for (const rItem of this.items) {
925
+ if (String(menu_item_style_overlay_1.MenuItemStyleOverlay.GetItemStyleId(rItem.item)) !== key ||
926
+ menu_item_style_overlay_1.MenuItemStyleOverlay.GetItemStyle(rItem.item) ||
927
+ !this.isStyleSwapCapable(rItem.renderManager) ||
928
+ rItem.renderManager.Disposed) {
929
+ continue;
930
+ }
931
+ const effective = this.getEffectiveOverlay(rItem.item, this.styleOverlay);
932
+ const next = menu_item_style_overlay_1.MenuItemStyleOverlay.With(rItem.item, effective);
933
+ rItem.renderManager.SwapStyle(next);
934
+ rItem.item = next;
935
+ (_b = this.onUpdate) === null || _b === void 0 ? void 0 : _b.Trigger({ isEnabling: true, itemId: rItem.id });
936
+ }
937
+ }
859
938
  /*
860
939
  * Picks the child the caller asked for, else the one already enabled, else the first.
861
940
  */
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-manager.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-manager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu-item-manager.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-manager.ts"],"names":[],"mappings":"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"}
@@ -125,18 +125,70 @@ var MenuItemStyleOverlay;
125
125
  }
126
126
  MenuItemStyleOverlay.With = With;
127
127
  /**
128
- * Returns true when the two items differ by nothing but their overlay.
128
+ * Returns the style a bookmark laid on this one item, or null when it carries none.
129
+ */
130
+ function GetItemStyle(item) {
131
+ var _a, _b;
132
+ return (_b = (_a = item === null || item === void 0 ? void 0 : item.style) === null || _a === void 0 ? void 0 : _a.style) !== null && _b !== void 0 ? _b : null;
133
+ }
134
+ MenuItemStyleOverlay.GetItemStyle = GetItemStyle;
135
+ /**
136
+ * Returns the Style record a bookmark laid on this one item, or null when it names none.
137
+ */
138
+ function GetItemStyleId(item) {
139
+ var _a;
140
+ const styleId = (_a = item === null || item === void 0 ? void 0 : item.style) === null || _a === void 0 ? void 0 : _a.styleId;
141
+ return styleId == null || styleId === "" || styleId == -1 ? null : styleId;
142
+ }
143
+ MenuItemStyleOverlay.GetItemStyleId = GetItemStyleId;
144
+ /**
145
+ * Returns a copy carrying the given bookmark style, inline or by record, or without one for null.
146
+ */
147
+ function WithItemStyle(item, itemStyle) {
148
+ const has = Boolean(itemStyle === null || itemStyle === void 0 ? void 0 : itemStyle.style) || (itemStyle === null || itemStyle === void 0 ? void 0 : itemStyle.styleId) != null;
149
+ if (!item || (!has && !item.style)) {
150
+ return item;
151
+ }
152
+ const next = { ...item };
153
+ if (has) {
154
+ next.style = { ...itemStyle };
155
+ }
156
+ else {
157
+ delete next.style;
158
+ }
159
+ return next;
160
+ }
161
+ MenuItemStyleOverlay.WithItemStyle = WithItemStyle;
162
+ /**
163
+ * Returns the overlay an item renders with: its inline or loaded bookmark style, under the scene-wide one.
164
+ */
165
+ function Effective(item, overlay, record) {
166
+ var _a, _b;
167
+ const own = (_b = (_a = GetItemStyle(item)) !== null && _a !== void 0 ? _a : record) !== null && _b !== void 0 ? _b : null;
168
+ // Either alone is used as it is, so an unchanged overlay still compares equal.
169
+ return own ? Merge(own, overlay) : overlay;
170
+ }
171
+ MenuItemStyleOverlay.Effective = Effective;
172
+ /**
173
+ * Returns a copy without its overlay or bookmark style, so what else two items differ by can be compared.
174
+ */
175
+ function Strip(item) {
176
+ return With(WithItemStyle(item, null), null);
177
+ }
178
+ MenuItemStyleOverlay.Strip = Strip;
179
+ /**
180
+ * Returns true when the two items differ by nothing but their overlay or bookmark style.
129
181
  */
130
182
  function IsChangeOnly(from, to) {
131
183
  if (!from || !to || from.Type !== to.Type) {
132
184
  return false;
133
185
  }
134
- const toOverlay = Get(to);
135
- if (JSON.stringify(Get(from)) === JSON.stringify(toOverlay)) {
186
+ const sameOverlay = JSON.stringify(Get(from)) === JSON.stringify(Get(to));
187
+ if (sameOverlay && JSON.stringify(from.style) === JSON.stringify(to.style)) {
136
188
  return false;
137
189
  }
138
- // A false mismatch only costs the in-place swap, so key order is not normalized.
139
- return JSON.stringify(With(from, toOverlay)) === JSON.stringify(to);
190
+ // Removing keys keeps the order of the rest, so the two compare as text.
191
+ return JSON.stringify(Strip(from)) === JSON.stringify(Strip(to));
140
192
  }
141
193
  MenuItemStyleOverlay.IsChangeOnly = IsChangeOnly;
142
194
  /*
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-style-overlay.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-style-overlay.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu-item-style-overlay.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-style-overlay.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MenuItemStyles = void 0;
4
4
  const bruce_models_1 = require("bruce-models");
5
+ const menu_item_style_overlay_1 = require("./menu-item-style-overlay");
5
6
  /**
6
7
  * Reads and picks between a menu item's ordered styles, writing the pick to the single field renderers read.
7
8
  */
@@ -95,17 +96,21 @@ var MenuItemStyles;
95
96
  }
96
97
  MenuItemStyles.Resolve = Resolve;
97
98
  /**
98
- * Returns a copy on the style a bookmark alternation picked, or the item itself when that is not an option.
99
+ * Returns a copy on the style a bookmark alternation picked and carrying any style it laid on the item.
99
100
  */
100
101
  function ApplyAlternation(item, alternation) {
101
102
  var _a, _b, _c;
102
103
  // Alternations are partial items and may carry no Type, so the pick is read from whichever field is present.
103
104
  const alt = alternation;
104
105
  const picked = (_a = alt === null || alt === void 0 ? void 0 : alt.styleId) !== null && _a !== void 0 ? _a : (_b = getVisibleRow(alt === null || alt === void 0 ? void 0 : alt.CameraZoomSettings)) === null || _b === void 0 ? void 0 : _b.StyleID;
105
- if (picked == null) {
106
- return item;
106
+ const next = picked == null ? item : ((_c = WithStyleId(item, picked)) !== null && _c !== void 0 ? _c : item);
107
+ // A style laid by record need not be one of the item's own, unlike the pick.
108
+ const itemStyle = alternation === null || alternation === void 0 ? void 0 : alternation.style;
109
+ const laid = menu_item_style_overlay_1.MenuItemStyleOverlay.GetItemStyle(alternation) || menu_item_style_overlay_1.MenuItemStyleOverlay.GetItemStyleId(alternation);
110
+ if (laid == null) {
111
+ return next;
107
112
  }
108
- return (_c = WithStyleId(item, picked)) !== null && _c !== void 0 ? _c : item;
113
+ return menu_item_style_overlay_1.MenuItemStyleOverlay.WithItemStyle(next, itemStyle);
109
114
  }
110
115
  MenuItemStyles.ApplyAlternation = ApplyAlternation;
111
116
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"menu-item-styles.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-styles.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"menu-item-styles.js","sourceRoot":"","sources":["../../../src/rendering/menu-item-styles.ts"],"names":[],"mappings":"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"}
@@ -104,6 +104,8 @@ class TilesetStyler {
104
104
  this.fallbackStyle = null;
105
105
  // Laid over whichever style each feature resolves, so it only changes the fields it sets.
106
106
  this.styleOverlay = null;
107
+ // The tileset's blend before an overlay's colours replaced it, put back once no overlay colours it.
108
+ this.blendBeforeOverlay = null;
107
109
  this.styleFallbackLoaded = false;
108
110
  this.loadingCounter = 0;
109
111
  // Entity IDs -> boolean to indicate if we should override the feature colour.
@@ -162,7 +164,12 @@ class TilesetStyler {
162
164
  this.monitor = monitor;
163
165
  this.viewer = viewer;
164
166
  this.api = api;
167
+ // A tileset handed in fresh still has its own blend, so nothing is left to put back on it.
168
+ if (cTileset !== this.cTileset) {
169
+ this.blendBeforeOverlay = null;
170
+ }
165
171
  this.cTileset = cTileset;
172
+ this.applyOverlayBlend();
166
173
  this.bakedAttributes = getBakedAttributes(cTileset);
167
174
  this.register = register;
168
175
  this.menuItemId = menuItemId;
@@ -294,6 +301,7 @@ class TilesetStyler {
294
301
  // Left as it is when a caller omits it, so a mapping change keeps the scene-wide style.
295
302
  if (params.styleOverlay !== undefined) {
296
303
  this.styleOverlay = params.styleOverlay;
304
+ this.applyOverlayBlend();
297
305
  }
298
306
  if (params.scenario != null) {
299
307
  if (!this.shouldUpdateRegoStates && !!this.scenario) {
@@ -383,6 +391,25 @@ class TilesetStyler {
383
391
  }
384
392
  this.queueTilesetFeatureStyle(regos, highPriority);
385
393
  }
394
+ /*
395
+ * Replaces the tileset's own colours while an overlay sets a model fill, so features show exactly what it maps to.
396
+ */
397
+ applyOverlayBlend() {
398
+ var _a, _b, _c, _d;
399
+ if (!this.cTileset || ((_b = (_a = this.cTileset).isDestroyed) === null || _b === void 0 ? void 0 : _b.call(_a))) {
400
+ return;
401
+ }
402
+ const fill = (_d = (_c = this.styleOverlay) === null || _c === void 0 ? void 0 : _c.modelStyle) === null || _d === void 0 ? void 0 : _d.fillColor;
403
+ const colours = Array.isArray(fill) ? fill.length > 0 : fill != null;
404
+ if (colours && this.blendBeforeOverlay == null) {
405
+ this.blendBeforeOverlay = this.cTileset.colorBlendMode;
406
+ this.cTileset.colorBlendMode = Cesium.Cesium3DTileColorBlendMode.REPLACE;
407
+ }
408
+ else if (!colours && this.blendBeforeOverlay != null) {
409
+ this.cTileset.colorBlendMode = this.blendBeforeOverlay;
410
+ this.blendBeforeOverlay = null;
411
+ }
412
+ }
386
413
  /**
387
414
  * Calculates the current progress % and updates the progress if there is a change.
388
415
  */