bruce-cesium 5.4.0 → 5.4.2

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.
Files changed (24) hide show
  1. package/dist/bruce-cesium.es5.js +585 -449
  2. package/dist/bruce-cesium.es5.js.map +1 -1
  3. package/dist/bruce-cesium.umd.js +587 -447
  4. package/dist/bruce-cesium.umd.js.map +1 -1
  5. package/dist/lib/bruce-cesium.js +1 -1
  6. package/dist/lib/rendering/cesium-animated-property.js +97 -45
  7. package/dist/lib/rendering/cesium-animated-property.js.map +1 -1
  8. package/dist/lib/rendering/getters/batched-data-getter.js +7 -1
  9. package/dist/lib/rendering/getters/batched-data-getter.js.map +1 -1
  10. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +237 -357
  11. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +1 -1
  12. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +172 -37
  13. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
  14. package/dist/lib/rendering/view-render-engine.js +4 -2
  15. package/dist/lib/rendering/view-render-engine.js.map +1 -1
  16. package/dist/lib/utils/view-utils.js +62 -2
  17. package/dist/lib/utils/view-utils.js.map +1 -1
  18. package/dist/types/bruce-cesium.d.ts +1 -1
  19. package/dist/types/rendering/cesium-animated-property.d.ts +24 -21
  20. package/dist/types/rendering/getters/batched-data-getter.d.ts +3 -1
  21. package/dist/types/rendering/render-managers/entities/entities-ids-render-manager.d.ts +22 -7
  22. package/dist/types/rendering/render-managers/tilesets/tileset-cad-render-manager.d.ts +2 -2
  23. package/dist/types/utils/view-utils.d.ts +9 -0
  24. package/package.json +2 -2
@@ -1,11 +1,17 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ViewUtils = exports.CESIUM_TIMELINE_KEY = exports.CESIUM_INSPECTOR_KEY = void 0;
3
+ exports.ViewUtils = exports.CESIUM_TIMELINE_INTERVAL_KEY = exports.CESIUM_TIMELINE_LIVE_PADDING_BACKWARD_KEY = exports.CESIUM_TIMELINE_LIVE_PADDING_FORWARD_KEY = exports.CESIUM_TIMELINE_LIVE_KEY = exports.CESIUM_TIMELINE_KEY = exports.CESIUM_INSPECTOR_KEY = void 0;
4
4
  const bruce_models_1 = require("bruce-models");
5
5
  const Cesium = require("cesium");
6
6
  const cesium_utils_1 = require("../internal/cesium-utils");
7
7
  exports.CESIUM_INSPECTOR_KEY = "_nextspace_inspector";
8
8
  exports.CESIUM_TIMELINE_KEY = "_nextspace_timeline";
9
+ exports.CESIUM_TIMELINE_LIVE_KEY = "_nextspace_timeline_live";
10
+ exports.CESIUM_TIMELINE_LIVE_PADDING_FORWARD_KEY = "_nextspace_timeline_live_padding_forward";
11
+ exports.CESIUM_TIMELINE_LIVE_PADDING_BACKWARD_KEY = "_nextspace_timeline_live_padding_backward";
12
+ exports.CESIUM_TIMELINE_INTERVAL_KEY = "_nextspace_timeline_interval";
13
+ const DEFAULT_LIVE_PADDING_FORWARD_SECONDS = 5 * 60;
14
+ const DEFAULT_LIVE_PADDING_BACKWARD_SECONDS = 25 * 60;
9
15
  var ViewUtils;
10
16
  (function (ViewUtils) {
11
17
  function GatherLegacyMapTiles(params) {
@@ -228,7 +234,10 @@ var ViewUtils;
228
234
  currentTimeIso: clock.currentTime.toString(),
229
235
  stopTime: clock.stopTime,
230
236
  stopTimeIso: clock.stopTime.toString(),
231
- areCesiumValues: clock[exports.CESIUM_TIMELINE_KEY] != true
237
+ areCesiumValues: clock[exports.CESIUM_TIMELINE_KEY] != true,
238
+ isLive: clock[exports.CESIUM_TIMELINE_LIVE_KEY] == true,
239
+ livePaddingForwardSeconds: clock[exports.CESIUM_TIMELINE_LIVE_PADDING_FORWARD_KEY] || DEFAULT_LIVE_PADDING_FORWARD_SECONDS,
240
+ livePaddingBackwardSeconds: clock[exports.CESIUM_TIMELINE_LIVE_PADDING_BACKWARD_KEY] || DEFAULT_LIVE_PADDING_BACKWARD_SECONDS
232
241
  };
233
242
  }
234
243
  ViewUtils.GetTimeDetails = GetTimeDetails;
@@ -286,7 +295,58 @@ var ViewUtils;
286
295
  }
287
296
  viewer.scene.requestRender();
288
297
  clock[exports.CESIUM_TIMELINE_KEY] = true;
298
+ clock[exports.CESIUM_TIMELINE_LIVE_KEY] = params.isLive == true;
299
+ clock[exports.CESIUM_TIMELINE_LIVE_PADDING_FORWARD_KEY] = params.livePaddingSeconds || DEFAULT_LIVE_PADDING_FORWARD_SECONDS;
300
+ clock[exports.CESIUM_TIMELINE_LIVE_PADDING_BACKWARD_KEY] = params.livePaddingSeconds || DEFAULT_LIVE_PADDING_BACKWARD_SECONDS;
301
+ if (params.isLive) {
302
+ startLive(viewer);
303
+ }
304
+ else {
305
+ stopLive(viewer);
306
+ }
289
307
  }
290
308
  ViewUtils.SetTimeDetails = SetTimeDetails;
309
+ function startLive(viewer) {
310
+ if (viewer[exports.CESIUM_TIMELINE_INTERVAL_KEY]) {
311
+ // Already live.
312
+ return;
313
+ }
314
+ const doUpdate = () => {
315
+ if (!viewer || viewer.isDestroyed() || !viewer.scene) {
316
+ stopLive(viewer);
317
+ return;
318
+ }
319
+ // Get the current settings.
320
+ const tDetails = GetTimeDetails({ viewer });
321
+ const clock = viewer.clock;
322
+ if (clock) {
323
+ clock.shouldAnimate = true;
324
+ clock.multiplier = 1;
325
+ clock.currentTime = Cesium.JulianDate.now();
326
+ clock.startTime = Cesium.JulianDate.addSeconds(clock.currentTime, -tDetails.livePaddingBackwardSeconds, new Cesium.JulianDate());
327
+ clock.stopTime = Cesium.JulianDate.addSeconds(clock.currentTime, tDetails.livePaddingForwardSeconds, new Cesium.JulianDate());
328
+ clock.clockRange = Cesium.ClockRange.UNBOUNDED;
329
+ }
330
+ };
331
+ // We'll start an interval that occasionally updates the Cesium clock to stay in the desired settings.
332
+ // Since it moves live (1 second per second), we don't have to worry about the ranges being out of date quickly.
333
+ viewer[exports.CESIUM_TIMELINE_INTERVAL_KEY] = setInterval(() => {
334
+ doUpdate();
335
+ }, 800);
336
+ viewer[exports.CESIUM_TIMELINE_LIVE_KEY] = true;
337
+ // Initial update.
338
+ doUpdate();
339
+ }
340
+ function stopLive(viewer) {
341
+ if (!viewer) {
342
+ return;
343
+ }
344
+ let interval = viewer[exports.CESIUM_TIMELINE_INTERVAL_KEY];
345
+ if (interval) {
346
+ clearInterval(interval);
347
+ viewer[exports.CESIUM_TIMELINE_INTERVAL_KEY] = null;
348
+ }
349
+ viewer[exports.CESIUM_TIMELINE_LIVE_KEY] = false;
350
+ }
291
351
  })(ViewUtils = exports.ViewUtils || (exports.ViewUtils = {}));
292
352
  //# sourceMappingURL=view-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"view-utils.js","sourceRoot":"","sources":["../../../src/utils/view-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"view-utils.js","sourceRoot":"","sources":["../../../src/utils/view-utils.ts"],"names":[],"mappings":"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"}
@@ -54,4 +54,4 @@ export * from "./widgets/controls-view-bar/widget-control-view-bar-search";
54
54
  export * from "./widgets/widget-left-panel";
55
55
  export * from "./widgets/tabs-left-panel/widget-left-panel-tab";
56
56
  export * from "./widgets/tabs-left-panel/widget-left-panel-tab-bookmarks";
57
- export declare const VERSION = "5.4.0";
57
+ export declare const VERSION = "5.4.2";
@@ -166,46 +166,49 @@ export declare namespace CesiumAnimatedProperty {
166
166
  GetOrient(): Cesium.Quaternion;
167
167
  }
168
168
  function GetSeriesPossesForHistoricEntity(viewer: Cesium.Viewer, heightRef: Cesium.HeightReference, historic: EntityHistoricData.IData[]): CesiumAnimatedProperty.IAnimateSeriesPos[];
169
- /**
170
- * Animates a tileset position and heading from a series of positions over time.
171
- * Unlike other animation functions that directly modify the tileset,
172
- * this provides a callback with calculated values for the caller to apply.
173
- *
174
- * Example:
175
- * ```
176
- * const dispose = CesiumAnimatedProperty.AnimateTPositionSeries({
177
- * viewer: viewer,
178
- * posses: positionSeries,
179
- * onUpdate: (position, heading) => {}
180
- * });
181
- *
182
- * // To dispose:
183
- * dispose();
184
- * ```
185
- * @param params Animation parameters
186
- * @returns Function to stop the animation
187
- */
188
169
  class AnimateTPositionSeries {
189
170
  private viewer;
190
171
  private positions;
191
172
  private onUpdate;
192
173
  private onDone?;
174
+ private onRangeChangeCallback?;
193
175
  private lastCalcTime;
194
176
  private lastCalcPos3d;
195
177
  private lastCalcHeading;
196
178
  private removal;
179
+ private minDate;
180
+ private maxDate;
181
+ private positionsMap;
197
182
  constructor(params: {
198
183
  viewer: Cesium.Viewer;
199
184
  posses: IAnimateSeriesPos[];
200
185
  onUpdate: (position: Cesium.Cartesian3, heading: number | null) => void;
201
186
  onDone?: () => void;
187
+ onRangeChange?: () => void;
202
188
  });
189
+ /**
190
+ * Add new positions to the animation.
191
+ * Will deduplicate positions with the same timestamp and sort them.
192
+ * @param newPositions Positions to add
193
+ */
194
+ addPositions(newPositions: IAnimateSeriesPos[]): void;
195
+ /**
196
+ * Get the current date range covered by our positions.
197
+ */
198
+ getDateRange(): {
199
+ minDate: Date | null;
200
+ maxDate: Date | null;
201
+ };
202
+ /**
203
+ * Trigger the onRangeChange callback to request more data.
204
+ */
205
+ onRangeChange(): void;
203
206
  /**
204
207
  * Stop the animation and call the onDone callback if provided.
205
208
  */
206
209
  stop(): void;
207
210
  /**
208
- * Update function called on each frame.
211
+ * Update function called on each render frame.
209
212
  */
210
213
  private update;
211
214
  /**
@@ -214,7 +217,7 @@ export declare namespace CesiumAnimatedProperty {
214
217
  */
215
218
  private processHeadings;
216
219
  /**
217
- * Calculate the position at the given time
220
+ * Calculate the position at the given time.
218
221
  */
219
222
  private calculatePosition;
220
223
  /**
@@ -15,7 +15,9 @@ export declare namespace BatchedDataGetter {
15
15
  private data;
16
16
  private onUpdate;
17
17
  get OnUpdate(): BruceEvent<T[]>;
18
- constructor(data: T[], viewPort: CesiumViewMonitor.Monitor, batchSize: number);
18
+ private singleEmit;
19
+ private emitted;
20
+ constructor(data: T[], viewPort: CesiumViewMonitor.Monitor, batchSize: number, singleEmit?: boolean);
19
21
  Start(): void;
20
22
  Dispose(): void;
21
23
  private updateViewport;
@@ -20,9 +20,14 @@ export declare namespace EntitiesIdsRenderManager {
20
20
  private renderedEntities;
21
21
  private visualsManager;
22
22
  private clustering;
23
- private sources;
24
- private useGeojson;
25
23
  private renderPriority;
24
+ private viewerDateTimeChangeRemoval;
25
+ private entitiesHistoric;
26
+ private lastHistoricMin;
27
+ private lastHistoricMax;
28
+ private renderQueueActive;
29
+ private renderQueue;
30
+ private renderQueueForceFlags;
26
31
  constructor(params: {
27
32
  viewer: Cesium.Viewer;
28
33
  register: VisualsRegister.Register;
@@ -45,12 +50,15 @@ export declare namespace EntitiesIdsRenderManager {
45
50
  private onGetterUpdate;
46
51
  private renderEntities;
47
52
  /**
48
- * Our optimized and more stable path.
49
- * We construct a geojson that we draw in one go.
50
- * @param entities
51
- * @param force TODO: This should re-render entities that are already rendered.
53
+ * Queues a render operation to be processed in sequence.
54
+ * If an operation is already in progress, this will be added to the queue.
55
+ */
56
+ private queueRenderAsIndividuals;
57
+ /**
58
+ * Processes the render queue, handling one rendering operation at a time.
52
59
  */
53
- private renderAsGeojson;
60
+ private processRenderQueue;
61
+ private deduplicateEntities;
54
62
  /**
55
63
  * Our default path.
56
64
  * We render each entity individually.
@@ -59,5 +67,12 @@ export declare namespace EntitiesIdsRenderManager {
59
67
  * @returns
60
68
  */
61
69
  private renderAsIndividuals;
70
+ /**
71
+ * Returns historic information for the given set of Entities at the current timeline range.
72
+ * @param entities
73
+ */
74
+ private getHistoricInfo;
75
+ private viewerDateTimeSub;
76
+ private viewerDateTimeDispose;
62
77
  }
63
78
  }
@@ -31,7 +31,7 @@ export declare namespace TilesetCadRenderManager {
31
31
  private historicPosses;
32
32
  private historicPossesMinDateTime;
33
33
  private historicPossesMaxDateTime;
34
- private historicPossesLoading;
34
+ private historicAnimation;
35
35
  private historicPossesLoadingProm;
36
36
  constructor(params: {
37
37
  viewer: Cesium.Viewer;
@@ -70,7 +70,7 @@ export declare namespace TilesetCadRenderManager {
70
70
  /**
71
71
  * Monitors the Cesium Viewer and updates the root Entity based on the scene time changing.
72
72
  * If the root Entity is historic, this can allow for movement of the assembly as a whole.
73
- * @parma tileset
73
+ * @param tileset
74
74
  */
75
75
  private viewerDateTimeSub;
76
76
  private viewerDateTimeDispose;
@@ -2,6 +2,10 @@ import { ProjectViewLegacyBookmark, ProjectViewTile } from "bruce-models";
2
2
  import * as Cesium from "cesium";
3
3
  export declare const CESIUM_INSPECTOR_KEY = "_nextspace_inspector";
4
4
  export declare const CESIUM_TIMELINE_KEY = "_nextspace_timeline";
5
+ export declare const CESIUM_TIMELINE_LIVE_KEY = "_nextspace_timeline_live";
6
+ export declare const CESIUM_TIMELINE_LIVE_PADDING_FORWARD_KEY = "_nextspace_timeline_live_padding_forward";
7
+ export declare const CESIUM_TIMELINE_LIVE_PADDING_BACKWARD_KEY = "_nextspace_timeline_live_padding_backward";
8
+ export declare const CESIUM_TIMELINE_INTERVAL_KEY = "_nextspace_timeline_interval";
5
9
  export declare namespace ViewUtils {
6
10
  function GatherLegacyMapTiles(params: {
7
11
  viewer: Cesium.Viewer;
@@ -59,6 +63,9 @@ export declare namespace ViewUtils {
59
63
  viewer: Cesium.Viewer;
60
64
  }): {
61
65
  animationSpeed: number;
66
+ isLive: boolean;
67
+ livePaddingForwardSeconds: number;
68
+ livePaddingBackwardSeconds: number;
62
69
  isAnimating: boolean;
63
70
  startTime: Cesium.JulianDate;
64
71
  startTimeIso: string;
@@ -76,6 +83,8 @@ export declare namespace ViewUtils {
76
83
  */
77
84
  function SetTimeDetails(params: {
78
85
  viewer: Cesium.Viewer;
86
+ isLive?: boolean;
87
+ livePaddingSeconds?: number;
79
88
  isAnimating?: boolean;
80
89
  animationSpeed?: number;
81
90
  startTime?: Cesium.JulianDate;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-cesium",
3
- "version": "5.4.0",
3
+ "version": "5.4.2",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-cesium.umd.js",
@@ -72,7 +72,7 @@
72
72
  "typescript": "^5.0.4"
73
73
  },
74
74
  "dependencies": {
75
- "bruce-models": "^6.2.4",
75
+ "bruce-models": "^6.2.7",
76
76
  "tslib": "^2.4.1"
77
77
  }
78
78
  }