bruce-cesium 6.2.1 → 6.2.3

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.
@@ -49,6 +49,7 @@ __exportStar(require("./rendering/render-managers/common/live-cursor"), exports)
49
49
  __exportStar(require("./rendering/view-render-engine"), exports);
50
50
  __exportStar(require("./rendering/tile-render-engine"), exports);
51
51
  __exportStar(require("./rendering/tileset-render-engine"), exports);
52
+ __exportStar(require("./rendering/xgrids-render-engine"), exports);
52
53
  __exportStar(require("./utils/view-utils"), exports);
53
54
  __exportStar(require("./utils/drawing-utils"), exports);
54
55
  __exportStar(require("./utils/measure-utils"), exports);
@@ -73,5 +74,5 @@ __exportStar(require("./widgets/controls-view-bar/widget-control-view-bar-search
73
74
  __exportStar(require("./widgets/widget-left-panel"), exports);
74
75
  __exportStar(require("./widgets/tabs-left-panel/widget-left-panel-tab"), exports);
75
76
  __exportStar(require("./widgets/tabs-left-panel/widget-left-panel-tab-bookmarks"), exports);
76
- exports.VERSION = "6.2.1";
77
+ exports.VERSION = "6.2.3";
77
78
  //# sourceMappingURL=bruce-cesium.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"bruce-cesium.js","sourceRoot":"","sources":["../../src/bruce-cesium.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,wDAAsC;AACtC,gEAA8C;AAC9C,gEAA8C;AAC9C,mEAAiD;AACjD,yEAAuD;AACvD,4EAA0D;AAC1D,2EAAyD;AACzD,2EAAyD;AACzD,gEAA8C;AAC9C,+DAA6C;AAC7C,6EAA2D;AAC3D,mGAAiF;AACjF,uGAAqF;AACrF,sGAAoF;AACpF,+FAA6E;AAC7E,6FAA2E;AAC3E,kGAAgF;AAChF,kGAAgF;AAChF,uGAAqF;AACrF,kGAAgF;AAChF,yGAAuF;AACvF,4GAA0F;AAC1F,yGAAuF;AACvF,iGAA+E;AAC/E,4FAA0E;AAC1E,6FAA2E;AAC3E,oFAAkE;AAClE,qFAAmE;AACnE,kFAAgE;AAChE,iFAA+D;AAC/D,iEAA+C;AAC/C,iEAA+C;AAC/C,oEAAkD;AAClD,qDAAmC;AACnC,wDAAsC;AACtC,wDAAsC;AACtC,uDAAqC;AACrC,+DAA6C;AAE7C,uEAAqD;AACrD,qEAAmD;AAEnD,mEAAiD;AACjD,oEAAkD;AAClD,mEAAiD;AACjD,+DAA6C;AAC7C,mDAAiC;AACjC,6DAA2C;AAC3C,4DAA0C;AAC1C,6DAA2C;AAC3C,sEAAoD;AACpD,6DAA2C;AAC3C,+DAA6C;AAC7C,4DAA0C;AAC1C,sFAAoE;AACpE,6FAA2E;AAC3E,8DAA4C;AAC5C,kFAAgE;AAChE,4FAA0E;AAE7D,QAAA,OAAO,GAAG,OAAO,CAAC"}
1
+ {"version":3,"file":"bruce-cesium.js","sourceRoot":"","sources":["../../src/bruce-cesium.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;AAAA,+DAA6C;AAC7C,wDAAsC;AACtC,gEAA8C;AAC9C,gEAA8C;AAC9C,mEAAiD;AACjD,yEAAuD;AACvD,4EAA0D;AAC1D,2EAAyD;AACzD,2EAAyD;AACzD,gEAA8C;AAC9C,+DAA6C;AAC7C,6EAA2D;AAC3D,mGAAiF;AACjF,uGAAqF;AACrF,sGAAoF;AACpF,+FAA6E;AAC7E,6FAA2E;AAC3E,kGAAgF;AAChF,kGAAgF;AAChF,uGAAqF;AACrF,kGAAgF;AAChF,yGAAuF;AACvF,4GAA0F;AAC1F,yGAAuF;AACvF,iGAA+E;AAC/E,4FAA0E;AAC1E,6FAA2E;AAC3E,oFAAkE;AAClE,qFAAmE;AACnE,kFAAgE;AAChE,iFAA+D;AAC/D,iEAA+C;AAC/C,iEAA+C;AAC/C,oEAAkD;AAClD,mEAAiD;AACjD,qDAAmC;AACnC,wDAAsC;AACtC,wDAAsC;AACtC,uDAAqC;AACrC,+DAA6C;AAE7C,uEAAqD;AACrD,qEAAmD;AAEnD,mEAAiD;AACjD,oEAAkD;AAClD,mEAAiD;AACjD,+DAA6C;AAC7C,mDAAiC;AACjC,6DAA2C;AAC3C,4DAA0C;AAC1C,6DAA2C;AAC3C,sEAAoD;AACpD,6DAA2C;AAC3C,+DAA6C;AAC7C,4DAA0C;AAC1C,sFAAoE;AACpE,6FAA2E;AAC3E,8DAA4C;AAC5C,kFAAgE;AAChE,4FAA0E;AAE7D,QAAA,OAAO,GAAG,OAAO,CAAC"}
@@ -5,6 +5,7 @@ const Cesium = require("cesium");
5
5
  const bruce_models_1 = require("bruce-models");
6
6
  const tileset_render_engine_1 = require("../../tileset-render-engine");
7
7
  const shared_getters_1 = require("../../render-managers/common/shared-getters");
8
+ const xgrids_render_engine_1 = require("src/rendering/xgrids-render-engine");
8
9
  async function getLegacyTileset(params) {
9
10
  const { apiGetter, menuItem, tileset } = params;
10
11
  try {
@@ -39,6 +40,12 @@ async function getTileset(params) {
39
40
  }
40
41
  var TilesetArbRenderManager;
41
42
  (function (TilesetArbRenderManager) {
43
+ let ERenderType;
44
+ (function (ERenderType) {
45
+ ERenderType["CesiumTileset"] = "CesiumTileset";
46
+ ERenderType["XGridsLCC"] = "XGridsLCC";
47
+ ERenderType["Unknown"] = "Unknown";
48
+ })(ERenderType = TilesetArbRenderManager.ERenderType || (TilesetArbRenderManager.ERenderType = {}));
42
49
  class Manager {
43
50
  get Disposed() {
44
51
  return this.disposed;
@@ -49,6 +56,12 @@ var TilesetArbRenderManager;
49
56
  get Styler() {
50
57
  return this.styler;
51
58
  }
59
+ get RenderType() {
60
+ return this.renderType;
61
+ }
62
+ get RenderTypeChanged() {
63
+ return this.renderTypeChanged;
64
+ }
52
65
  constructor(params) {
53
66
  this.disposed = false;
54
67
  this.cTileset = null;
@@ -72,6 +85,11 @@ var TilesetArbRenderManager;
72
85
  // Saves having to do a case-insensitive lookup every time.
73
86
  this.featurePropCache = new Map();
74
87
  this.featurePropsChecked = 0;
88
+ // How we're rendering the data.
89
+ this.renderType = ERenderType.Unknown;
90
+ this.renderTypeChanged = new bruce_models_1.BruceEvent();
91
+ // LCC object if we're using XGrids to render LCC data.
92
+ this.lccObject = null;
75
93
  this.viewer = params.viewer;
76
94
  this.getters = params.getters;
77
95
  this.visualsManager = params.register;
@@ -117,7 +135,7 @@ var TilesetArbRenderManager;
117
135
  }
118
136
  const tilesetId = (_c = this.item.tileset) === null || _c === void 0 ? void 0 : _c.TilesetID;
119
137
  (async () => {
120
- var _a, _b, _c, _d, _e, _f, _g;
138
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j;
121
139
  if (tilesetId) {
122
140
  let canAccess = false;
123
141
  try {
@@ -156,113 +174,137 @@ var TilesetArbRenderManager;
156
174
  if (tileset && loadUrlOverride) {
157
175
  tileset.loadUrl = loadUrlOverride;
158
176
  }
159
- const LEGACY_TYPES = [
160
- bruce_models_1.Tileset.EType.LegacyEntitiesSet,
161
- bruce_models_1.Tileset.EType.LegacyExternal,
162
- bruce_models_1.Tileset.EType.LegacyStatic
163
- ];
164
- if (!type || LEGACY_TYPES.includes(type)) {
165
- // Legacy type. We re-request using ui.tileset endpoint.
166
- const legacyTileset = tileset ? await getLegacyTileset({
167
- apiGetter: this.getters.GetBruceGetter(),
168
- menuItem: this.item,
169
- tileset
170
- }) : null;
171
- if (this.disposed) {
172
- return;
173
- }
174
- let accountId = (_c = (_b = this.item) === null || _b === void 0 ? void 0 : _b.tileset) === null || _c === void 0 ? void 0 : _c.ClientAccountID;
175
- if (!accountId) {
176
- accountId = this.getters.GetAccountId();
177
- }
178
- this.cTileset = await tileset_render_engine_1.TilesetRenderEngine.RenderLegacy({
179
- apiGetter: this.getters.GetBruceGetter(),
180
- tileset: legacyTileset,
181
- viewer: this.viewer,
182
- ionId: (_d = this.item.IonResource) === null || _d === void 0 ? void 0 : _d.AssetID,
183
- ionAccessToken: (_e = this.item.IonResource) === null || _e === void 0 ? void 0 : _e.AccessToken,
184
- loadUrl: loadUrlOverride,
185
- accountId: accountId,
186
- viaCdn: this.item.cdnEnabled == null ? true : Boolean(this.item.cdnEnabled),
187
- noMemoryLimit: this.item.noMaximumMemory,
188
- backFaceCulling: this.item.backFaceCulling
177
+ // LCC Tileset to load through XGrids libs if they're available.
178
+ if (tileset.type === bruce_models_1.Tileset.EType.LegacyStatic && tileset.rootFileName && (tileset.rootFileName.toLowerCase()).endsWith(".lcc")) {
179
+ this.renderType = ERenderType.XGridsLCC;
180
+ this.renderTypeChanged.Trigger(this.renderType);
181
+ const api = this.getters.GetBruceApi({
182
+ accountId: ((_c = (_b = this.item) === null || _b === void 0 ? void 0 : _b.tileset) === null || _c === void 0 ? void 0 : _c.ClientAccountID) || this.getters.GetAccountId()
189
183
  });
190
- }
191
- else if (tileset) {
192
- this.cTileset = await tileset_render_engine_1.TilesetRenderEngine.Render({
193
- apiGetter: this.getters.GetBruceGetter(),
194
- tileset: tileset,
184
+ this.lccObject = xgrids_render_engine_1.XGridsRenderEngine.Render({
185
+ api: api,
195
186
  viewer: this.viewer,
196
- coords: null,
197
- accountId: (_g = (_f = this.item.tileset) === null || _f === void 0 ? void 0 : _f.ClientAccountID) !== null && _g !== void 0 ? _g : this.getters.GetAccountId(),
198
- viaCdn: this.item.cdnEnabled == null ? true : Boolean(this.item.cdnEnabled)
187
+ tileset: tileset
199
188
  });
200
- }
201
- if (this.disposed) {
202
- this.doDispose();
203
- return;
204
- }
205
- this.viewer.scene.requestRender();
206
- tileset_render_engine_1.TilesetRenderEngine.OnTilesetReady(this.cTileset).then(() => {
207
- if (this.disposed || this.viewer.isDestroyed()) {
189
+ // Disposed while it was loading so we'll remove it now.
190
+ if (this.Disposed && this.lccObject) {
191
+ xgrids_render_engine_1.XGridsRenderEngine.Remove(this.viewer, this.lccObject);
192
+ this.lccObject = null;
208
193
  return;
209
194
  }
210
- // Colour mask to apply to the Tileset as a whole.
211
- // Individual Entities can override this.
212
- // This is typically used for Tilesets without Entities to allow some sort of basic styling per-bookmark.
213
- try {
214
- const colorCss = this.item.colorMask;
215
- if (colorCss) {
216
- this.cTileset.style = new Cesium.Cesium3DTileStyle({
217
- color: {
218
- conditions: [
219
- ["true", `color("${colorCss}")`]
220
- ]
221
- }
222
- });
195
+ }
196
+ // Typical Cesium Tileset.
197
+ else {
198
+ this.renderType = ERenderType.CesiumTileset;
199
+ this.renderTypeChanged.Trigger(this.renderType);
200
+ const LEGACY_TYPES = [
201
+ bruce_models_1.Tileset.EType.LegacyEntitiesSet,
202
+ bruce_models_1.Tileset.EType.LegacyExternal,
203
+ bruce_models_1.Tileset.EType.LegacyStatic
204
+ ];
205
+ if (!type || LEGACY_TYPES.includes(type)) {
206
+ // Legacy type. We re-request using ui.tileset endpoint.
207
+ const legacyTileset = tileset ? await getLegacyTileset({
208
+ apiGetter: this.getters.GetBruceGetter(),
209
+ menuItem: this.item,
210
+ tileset
211
+ }) : null;
212
+ if (this.disposed) {
213
+ return;
223
214
  }
224
- }
225
- catch (e) {
226
- console.error(e);
227
- }
228
- try {
229
- if (this.item.ApplyStyles ||
230
- this.item.Type == bruce_models_1.MenuItem.EType.IonTileset) {
231
- const api = this.getters.GetBruceApi();
232
- this.styler.Init({
233
- viewer: this.viewer,
234
- api: api,
235
- cTileset: this.cTileset,
236
- fallbackStyleId: this.item.styleId,
237
- styleMapping: this.item.StyleMapping,
238
- expandSources: false,
239
- menuItemId: this.item.id,
240
- register: this.visualsManager,
241
- });
215
+ let accountId = (_e = (_d = this.item) === null || _d === void 0 ? void 0 : _d.tileset) === null || _e === void 0 ? void 0 : _e.ClientAccountID;
216
+ if (!accountId) {
217
+ accountId = this.getters.GetAccountId();
242
218
  }
243
- this.onCTilesetLoad();
244
- this.viewer.scene.requestRender();
245
- }
246
- catch (e) {
247
- console.error(e);
248
- }
249
- });
250
- this.cTileset.tileLoad.addEventListener((tile) => {
251
- try {
252
- this.queueTile(tile, true);
253
- }
254
- catch (e) {
255
- console.error(e);
219
+ this.cTileset = await tileset_render_engine_1.TilesetRenderEngine.RenderLegacy({
220
+ apiGetter: this.getters.GetBruceGetter(),
221
+ tileset: legacyTileset,
222
+ viewer: this.viewer,
223
+ ionId: (_f = this.item.IonResource) === null || _f === void 0 ? void 0 : _f.AssetID,
224
+ ionAccessToken: (_g = this.item.IonResource) === null || _g === void 0 ? void 0 : _g.AccessToken,
225
+ loadUrl: loadUrlOverride,
226
+ accountId: accountId,
227
+ viaCdn: this.item.cdnEnabled == null ? true : Boolean(this.item.cdnEnabled),
228
+ noMemoryLimit: this.item.noMaximumMemory,
229
+ backFaceCulling: this.item.backFaceCulling
230
+ });
256
231
  }
257
- });
258
- this.cTileset.tileUnload.addEventListener((tile) => {
259
- try {
260
- this.queueTile(tile, false);
232
+ else if (tileset) {
233
+ this.cTileset = await tileset_render_engine_1.TilesetRenderEngine.Render({
234
+ apiGetter: this.getters.GetBruceGetter(),
235
+ tileset: tileset,
236
+ viewer: this.viewer,
237
+ coords: null,
238
+ accountId: (_j = (_h = this.item.tileset) === null || _h === void 0 ? void 0 : _h.ClientAccountID) !== null && _j !== void 0 ? _j : this.getters.GetAccountId(),
239
+ viaCdn: this.item.cdnEnabled == null ? true : Boolean(this.item.cdnEnabled)
240
+ });
261
241
  }
262
- catch (e) {
263
- console.error(e);
242
+ if (this.disposed) {
243
+ this.doDispose();
244
+ return;
264
245
  }
265
- });
246
+ this.viewer.scene.requestRender();
247
+ tileset_render_engine_1.TilesetRenderEngine.OnTilesetReady(this.cTileset).then(() => {
248
+ if (this.disposed || this.viewer.isDestroyed()) {
249
+ return;
250
+ }
251
+ // Colour mask to apply to the Tileset as a whole.
252
+ // Individual Entities can override this.
253
+ // This is typically used for Tilesets without Entities to allow some sort of basic styling per-bookmark.
254
+ try {
255
+ const colorCss = this.item.colorMask;
256
+ if (colorCss) {
257
+ this.cTileset.style = new Cesium.Cesium3DTileStyle({
258
+ color: {
259
+ conditions: [
260
+ ["true", `color("${colorCss}")`]
261
+ ]
262
+ }
263
+ });
264
+ }
265
+ }
266
+ catch (e) {
267
+ console.error(e);
268
+ }
269
+ try {
270
+ if (this.item.ApplyStyles ||
271
+ this.item.Type == bruce_models_1.MenuItem.EType.IonTileset) {
272
+ const api = this.getters.GetBruceApi();
273
+ this.styler.Init({
274
+ viewer: this.viewer,
275
+ api: api,
276
+ cTileset: this.cTileset,
277
+ fallbackStyleId: this.item.styleId,
278
+ styleMapping: this.item.StyleMapping,
279
+ expandSources: false,
280
+ menuItemId: this.item.id,
281
+ register: this.visualsManager,
282
+ });
283
+ }
284
+ this.onCTilesetLoad();
285
+ this.viewer.scene.requestRender();
286
+ }
287
+ catch (e) {
288
+ console.error(e);
289
+ }
290
+ });
291
+ this.cTileset.tileLoad.addEventListener((tile) => {
292
+ try {
293
+ this.queueTile(tile, true);
294
+ }
295
+ catch (e) {
296
+ console.error(e);
297
+ }
298
+ });
299
+ this.cTileset.tileUnload.addEventListener((tile) => {
300
+ try {
301
+ this.queueTile(tile, false);
302
+ }
303
+ catch (e) {
304
+ console.error(e);
305
+ }
306
+ });
307
+ }
266
308
  })();
267
309
  }
268
310
  /**
@@ -406,6 +448,10 @@ var TilesetArbRenderManager;
406
448
  }
407
449
  this.cTileset = null;
408
450
  }
451
+ if (this.lccObject) {
452
+ xgrids_render_engine_1.XGridsRenderEngine.Remove(this.viewer, this.lccObject);
453
+ this.lccObject = null;
454
+ }
409
455
  (_b = this.styler) === null || _b === void 0 ? void 0 : _b.Dispose();
410
456
  this.visualsManager.RemoveRegos({
411
457
  menuItemId: this.item.id
@@ -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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"}