bruce-cesium 6.5.9 → 6.6.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.
@@ -77,7 +77,7 @@ __exportStar(require("./widgets/widget-info-view"), exports);
77
77
  __exportStar(require("./widgets/widget-left-panel"), exports);
78
78
  __exportStar(require("./widgets/widget-nav-compass"), exports);
79
79
  __exportStar(require("./widgets/widget-view-bar"), exports);
80
- exports.VERSION = "6.5.9";
80
+ exports.VERSION = "6.6.0";
81
81
  /**
82
82
  * Updates the environment instance used by bruce-cesium to one specified.
83
83
  * This can be used to ensure that the instance a parent is referencing is shared between bruce-cesium, bruce-models, and the parent app.
@@ -25,6 +25,66 @@ function isAlive(viewer, cTileset) {
25
25
  }
26
26
  const VIEWER_WATCH_KEY = "bruce-viewer-watch";
27
27
  const WATCH_KEY = "bruce-tileset-watch";
28
+ const VIEWER_DATE_RANGE_WATCH_KEY = "bruce-viewer-date-range-watch";
29
+ const DATE_RANGE_WATCH_KEY = "bruce-tileset-date-range-watch";
30
+ function parseDate(value) {
31
+ if (!value) {
32
+ return null;
33
+ }
34
+ const date = value instanceof Date ? value : new Date(value);
35
+ if (isNaN(date.getTime())) {
36
+ return null;
37
+ }
38
+ return date;
39
+ }
40
+ function getTilesetDateRange(tileset) {
41
+ var _a, _b, _c;
42
+ const settings = (_a = tileset === null || tileset === void 0 ? void 0 : tileset.settings) !== null && _a !== void 0 ? _a : tileset === null || tileset === void 0 ? void 0 : tileset.Settings;
43
+ const visual = (settings === null || settings === void 0 ? void 0 : settings.visual) || (settings === null || settings === void 0 ? void 0 : settings.Visual);
44
+ const start = parseDate((_b = settings === null || settings === void 0 ? void 0 : settings.dateStart) !== null && _b !== void 0 ? _b : visual === null || visual === void 0 ? void 0 : visual.dateStart);
45
+ const end = parseDate((_c = settings === null || settings === void 0 ? void 0 : settings.dateEnd) !== null && _c !== void 0 ? _c : visual === null || visual === void 0 ? void 0 : visual.dateEnd);
46
+ if ((!start && !end) || (start && end && end < start)) {
47
+ return null;
48
+ }
49
+ return { start, end };
50
+ }
51
+ function isDateInRange(date, range) {
52
+ const time = date.getTime();
53
+ if (range.start && time < range.start.getTime()) {
54
+ return false;
55
+ }
56
+ if (range.end && time > range.end.getTime()) {
57
+ return false;
58
+ }
59
+ return true;
60
+ }
61
+ function watchTilesetDateRange(viewer, cTileset, tileset) {
62
+ TilesetRenderEngine.WatchDateRange(viewer, cTileset, tileset);
63
+ }
64
+ function isDateRangeWatchAlive(viewer, renderObject) {
65
+ if (!viewer || viewer.isDestroyed() || !renderObject) {
66
+ return false;
67
+ }
68
+ if (typeof renderObject.isDestroyed === "function" && renderObject.isDestroyed()) {
69
+ return false;
70
+ }
71
+ if (typeof renderObject.setVisible === "function") {
72
+ return true;
73
+ }
74
+ if (typeof renderObject.isDestroyed !== "function") {
75
+ return true;
76
+ }
77
+ return isAlive(viewer, renderObject);
78
+ }
79
+ function setDateRangeVisible(renderObject, visible) {
80
+ if (typeof renderObject.setVisible === "function") {
81
+ renderObject.setVisible(visible);
82
+ }
83
+ else {
84
+ renderObject.show = visible;
85
+ }
86
+ renderObject._bruceDateRangeVisible = visible;
87
+ }
28
88
  /**
29
89
  * Creates and returns a tileset instance from a given url.
30
90
  * This is made to handle the difference between old and new cesium versions.
@@ -297,6 +357,7 @@ var TilesetRenderEngine;
297
357
  }
298
358
  const cTileset = await createTileset(loadUrl, null, params.noMemoryLimit);
299
359
  params.viewer.scene.primitives.add(cTileset);
360
+ watchTilesetDateRange(params.viewer, cTileset, params.tileset);
300
361
  OnTilesetReady(cTileset).then(() => {
301
362
  var _a, _b, _c, _d;
302
363
  try {
@@ -343,6 +404,7 @@ var TilesetRenderEngine;
343
404
  }
344
405
  const cTileset = await createTileset(loadUrl, null, params.noMemoryLimit);
345
406
  params.viewer.scene.primitives.add(cTileset);
407
+ watchTilesetDateRange(params.viewer, cTileset, params.tileset);
346
408
  return cTileset;
347
409
  }
348
410
  else if (params.tileset.type == bruce_models_1.Tileset.EType.PointCloud) {
@@ -358,6 +420,7 @@ var TilesetRenderEngine;
358
420
  }
359
421
  const cTileset = await createTileset(loadUrl, null, params.noMemoryLimit);
360
422
  params.viewer.scene.primitives.add(cTileset);
423
+ watchTilesetDateRange(params.viewer, cTileset, params.tileset);
361
424
  OnTilesetReady(cTileset).then(() => {
362
425
  var _a;
363
426
  try {
@@ -446,6 +509,7 @@ var TilesetRenderEngine;
446
509
  backFaceCulling: backFaceCulling === true
447
510
  }, noMemoryLimit);
448
511
  viewer.scene.primitives.add(cTileset);
512
+ watchTilesetDateRange(viewer, cTileset, tileset);
449
513
  OnTilesetReady(cTileset).then(() => {
450
514
  var _a;
451
515
  try {
@@ -523,11 +587,110 @@ var TilesetRenderEngine;
523
587
  }
524
588
  TilesetRenderEngine.Styler = Styler;
525
589
  ;
590
+ function GetTilesetDateRange(tileset) {
591
+ return getTilesetDateRange(tileset);
592
+ }
593
+ TilesetRenderEngine.GetTilesetDateRange = GetTilesetDateRange;
594
+ function WatchDateRange(viewer, renderObject, tileset) {
595
+ var _a;
596
+ const range = getTilesetDateRange(tileset);
597
+ if (!range) {
598
+ return;
599
+ }
600
+ (_a = GetDateRangeWatcher(viewer)) === null || _a === void 0 ? void 0 : _a.Watch(renderObject, range);
601
+ }
602
+ TilesetRenderEngine.WatchDateRange = WatchDateRange;
603
+ function UnwatchDateRange(viewer, renderObject) {
604
+ var _a;
605
+ (_a = viewer === null || viewer === void 0 ? void 0 : viewer[VIEWER_DATE_RANGE_WATCH_KEY]) === null || _a === void 0 ? void 0 : _a.Unwatch(renderObject);
606
+ }
607
+ TilesetRenderEngine.UnwatchDateRange = UnwatchDateRange;
526
608
  /**
527
609
  * The maximum memory in MB that can be used by all tilesets.
528
610
  * This is distributed evenly between all loaded tilesets.
529
611
  */
530
612
  TilesetRenderEngine.MAX_TILESET_MEMORY = 1024;
613
+ /**
614
+ * Watches tileset date cutoffs and toggles their primitive visibility based on the viewer clock.
615
+ */
616
+ class DateRangeWatcher {
617
+ constructor(viewer) {
618
+ this.watched = [];
619
+ this.clockRemoval = null;
620
+ this.viewer = viewer;
621
+ this.clockRemoval = viewer.clock.onTick.addEventListener(() => {
622
+ this.update();
623
+ });
624
+ }
625
+ clean() {
626
+ this.watched = this.watched.filter(x => isDateRangeWatchAlive(this.viewer, x));
627
+ if (!this.viewer || this.viewer.isDestroyed()) {
628
+ this.destroy();
629
+ }
630
+ }
631
+ updateTileset(tileset) {
632
+ if (!(tileset === null || tileset === void 0 ? void 0 : tileset._bruceDateRange) || !isDateRangeWatchAlive(this.viewer, tileset)) {
633
+ return false;
634
+ }
635
+ const currentDate = Cesium.JulianDate.toDate(this.viewer.clock.currentTime);
636
+ const shouldShow = isDateInRange(currentDate, tileset._bruceDateRange);
637
+ if (tileset._bruceDateRangeVisible === shouldShow && (typeof tileset.setVisible === "function" || tileset.show === shouldShow)) {
638
+ return false;
639
+ }
640
+ setDateRangeVisible(tileset, shouldShow);
641
+ return true;
642
+ }
643
+ update() {
644
+ this.clean();
645
+ let changed = false;
646
+ this.watched.forEach(x => {
647
+ changed = this.updateTileset(x) || changed;
648
+ });
649
+ if (changed) {
650
+ this.viewer.scene.requestRender();
651
+ }
652
+ }
653
+ destroy() {
654
+ var _a;
655
+ (_a = this.clockRemoval) === null || _a === void 0 ? void 0 : _a.call(this);
656
+ this.clockRemoval = null;
657
+ this.watched = [];
658
+ }
659
+ Watch(tileset, range) {
660
+ if (!tileset) {
661
+ return;
662
+ }
663
+ if (!(range === null || range === void 0 ? void 0 : range.start) && !(range === null || range === void 0 ? void 0 : range.end)) {
664
+ this.Unwatch(tileset);
665
+ return;
666
+ }
667
+ if (!tileset[DATE_RANGE_WATCH_KEY]) {
668
+ tileset[DATE_RANGE_WATCH_KEY] = bruce_models_1.ObjectUtils.UId();
669
+ }
670
+ tileset._bruceDateRange = range;
671
+ const index = this.watched.findIndex(x => x[DATE_RANGE_WATCH_KEY] === tileset[DATE_RANGE_WATCH_KEY]);
672
+ if (index < 0) {
673
+ this.watched.push(tileset);
674
+ }
675
+ if (this.updateTileset(tileset)) {
676
+ this.viewer.scene.requestRender();
677
+ }
678
+ }
679
+ Unwatch(tileset) {
680
+ if (!tileset) {
681
+ return;
682
+ }
683
+ if (!tileset[DATE_RANGE_WATCH_KEY]) {
684
+ tileset[DATE_RANGE_WATCH_KEY] = bruce_models_1.ObjectUtils.UId();
685
+ }
686
+ const index = this.watched.findIndex(x => (x === null || x === void 0 ? void 0 : x[DATE_RANGE_WATCH_KEY]) === tileset[DATE_RANGE_WATCH_KEY]);
687
+ if (index > -1) {
688
+ this.watched.splice(index, 1);
689
+ }
690
+ tileset._bruceDateRange = null;
691
+ }
692
+ }
693
+ TilesetRenderEngine.DateRangeWatcher = DateRangeWatcher;
531
694
  /**
532
695
  * Watches tilesets in the viewer.
533
696
  * This will regulate their max memory param.
@@ -581,9 +744,11 @@ var TilesetRenderEngine;
581
744
  this.distributeMemory();
582
745
  }
583
746
  Unwatch(tileset) {
747
+ var _a, _b;
584
748
  if (!tileset) {
585
749
  return;
586
750
  }
751
+ (_b = (_a = this.viewer) === null || _a === void 0 ? void 0 : _a[VIEWER_DATE_RANGE_WATCH_KEY]) === null || _b === void 0 ? void 0 : _b.Unwatch(tileset);
587
752
  if (!tileset[WATCH_KEY]) {
588
753
  tileset[WATCH_KEY] = bruce_models_1.ObjectUtils.UId();
589
754
  }
@@ -606,5 +771,16 @@ var TilesetRenderEngine;
606
771
  return viewer[VIEWER_WATCH_KEY];
607
772
  }
608
773
  TilesetRenderEngine.GetMemoryWatcher = GetMemoryWatcher;
774
+ function GetDateRangeWatcher(viewer) {
775
+ // If viewer is dead return nothing.
776
+ if (!viewer || viewer.isDestroyed()) {
777
+ return null;
778
+ }
779
+ if (!viewer[VIEWER_DATE_RANGE_WATCH_KEY]) {
780
+ viewer[VIEWER_DATE_RANGE_WATCH_KEY] = new DateRangeWatcher(viewer);
781
+ }
782
+ return viewer[VIEWER_DATE_RANGE_WATCH_KEY];
783
+ }
784
+ TilesetRenderEngine.GetDateRangeWatcher = GetDateRangeWatcher;
609
785
  })(TilesetRenderEngine = exports.TilesetRenderEngine || (exports.TilesetRenderEngine = {}));
610
786
  //# sourceMappingURL=tileset-render-engine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"tileset-render-engine.js","sourceRoot":"","sources":["../../../src/rendering/tileset-render-engine.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"tileset-render-engine.js","sourceRoot":"","sources":["../../../src/rendering/tileset-render-engine.ts"],"names":[],"mappings":"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"}
@@ -5,6 +5,7 @@ const bruce_models_1 = require("bruce-models");
5
5
  const Cesium = require("cesium");
6
6
  const js_utils_1 = require("../internal/js-utils");
7
7
  const drawing_utils_1 = require("../utils/drawing-utils");
8
+ const tileset_render_engine_1 = require("./tileset-render-engine");
8
9
  /**
9
10
  * Render engine to handle LCC / XGrids data through the XGrids library.
10
11
  */
@@ -101,6 +102,10 @@ var XGridsRenderEngine;
101
102
  }
102
103
  }
103
104
  });
105
+ if (typeof (obj === null || obj === void 0 ? void 0 : obj.setVisible) === "function") {
106
+ obj.setVisible(true);
107
+ }
108
+ tileset_render_engine_1.TilesetRenderEngine.WatchDateRange(viewer, obj, tileset);
104
109
  // Highest LOD.
105
110
  obj.setStartLod(0);
106
111
  // Max distance for rendering.
@@ -120,6 +125,7 @@ var XGridsRenderEngine;
120
125
  console.warn("[XGridsRenderEngine] Remove() LCCRender library not available.");
121
126
  return;
122
127
  }
128
+ tileset_render_engine_1.TilesetRenderEngine.UnwatchDateRange(viewer, renderObject);
123
129
  LCCRender.unload(renderObject);
124
130
  }
125
131
  XGridsRenderEngine.Remove = Remove;
@@ -1 +1 @@
1
- {"version":3,"file":"xgrids-render-engine.js","sourceRoot":"","sources":["../../../src/rendering/xgrids-render-engine.ts"],"names":[],"mappings":";;;AAAA,+CAAyD;AACzD,iCAAiC;AACjC,mDAAoD;AACpD,0DAAsD;AAKtD;;GAEG;AACH,IAAiB,kBAAkB,CAyLlC;AAzLD,WAAiB,kBAAkB;IAG/B,SAAgB,MAAM,CAAC,MAKtB;;QACG,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,GAAG,MAAM,CAAC;QACxC,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;YAC/E,OAAO,IAAI,CAAC;SACf;QAED,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAoC,CAAC;QAC9D,IAAI,QAAQ,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,MAAM,CAAC;QAChC,IAAI,QAAQ,CAAC,aAAa,EAAE;YACxB,QAAQ,GAAG,IAAI,CAAC;SACnB;QAED,IAAI,EAAE,GAA+B,SAAS,CAAC;QAE/C,mBAAmB;QACnB,IAAI,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,MAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,SAAS,CAAA,KAAI,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,QAAQ,CAAA,EAAE;YACjE,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,uBAAuB,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CACxE,IAAA,uBAAY,EAAC,QAAQ,CAAC,SAAS,EAAE,CAAC,CAAC,EACnC,IAAA,uBAAY,EAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CAAC,EAClC,IAAA,uBAAY,EAAC,QAAQ,CAAC,QAAQ,EAAE,CAAC,CACpC,CAAC,CAAC,CAAC;SACP;aACI;YACD,EAAE,GAAG,MAAM,CAAC,UAAU,CAAC,uBAAuB,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;SAC1F;QAED,qBAAqB;QACrB,IAAI,CAAC,QAAQ,CAAC,UAAU,IAAI,CAAC,QAAQ,CAAC,aAAa,EAAE;YACjD,MAAM,iBAAiB,GAAG,MAAM,CAAC,OAAO,CAAC,eAAe,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC/G,MAAM,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAC3C,IAAA,uBAAY,EAAC,MAAA,QAAQ,CAAC,QAAQ,0CAAE,CAAC,CAAC,EAClC,IAAA,uBAAY,EAAC,MAAA,QAAQ,CAAC,QAAQ,0CAAE,CAAC,CAAC,EAClC,IAAA,uBAAY,EAAC,MAAA,QAAQ,CAAC,QAAQ,0CAAE,CAAC,CAAC,EAClC,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAChC,CAAC;YACF,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC7D,MAAM,WAAW,GAAG,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,IAAA,uBAAY,EAAC,CAAA,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,KAAK,KAAI,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YACjH,IAAI,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,EAAE,EAAE,iBAAiB,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC1F,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,EAAE,MAAM,CAAC,OAAO,CAAC,YAAY,CAAC,WAAW,CAAC,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YACzH,cAAc,GAAG,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,cAAc,EAAE,WAAW,EAAE,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC,CAAC;YAC5F,EAAE,GAAG,cAAc,CAAC;SACvB;QAED,IAAI,OAAO,GAAG,sBAAO,CAAC,UAAU,CAAC;YAC7B,IAAI,EAAE,OAAO,CAAC,YAAY,IAAI,UAAU;YACxC,SAAS,EAAE,OAAO,CAAC,EAAE;YACrB,qDAAqD;YACrD,oDAAoD;YACpD,MAAM,EAAE,KAAK;YACb,MAAM,EAAE,IAAI;YACZ,UAAU,EAAE,OAAO,CAAC,eAAe;YACnC,GAAG,EAAE,GAAG;SACX,CAAC,CAAC;QAEH,2BAA2B;QAC3B,oCAAoC;QACpC,IAAI,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE;YAC7B,OAAO,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;SACnC;QAED,MAAM,GAAG,GAAG,SAAS,CAAC,IAAI,CAAC;YACvB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,KAAK,EAAE,MAAM,CAAC,KAAK;YACnB,QAAQ,EAAE,OAAO;YACjB,SAAS,EAAE,MAAM;YACjB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,KAAK;YACb,WAAW,EAAE,EAAE;YACf,UAAU,EAAE,KAAK;YACjB,MAAM,EAAE,IAAI;YACZ,6CAA6C;YAC7C,wEAAwE;YACxE,gBAAgB,EAAE,KAAK;SAC1B,EAAE,KAAK,IAAI,EAAE;;YACV,qDAAqD;YACrD,MAAM,IAAI,GAAG,GAAG,CAAC,WAAW,EAAE,CAAA;YAC9B,4CAA4C;YAE5C,MAAM,QAAQ,GAAG,OAAS,CAAC;YAC3B,MAAM,QAAQ,GAAG,QAAU,CAAC;YAC5B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,QAAQ,CAAC,CAAC;YAC9D,GAAG,CAAC,YAAY,CAAC,IAAI,CAAC,GAAG,CAAC,QAAQ,EAAE,SAAS,CAAC,CAAC,CAAC;YAEhD,IAAI,SAAS,IAAI,QAAQ,EAAE;gBACvB,OAAO,CAAC,IAAI,CAAC,4EAA4E,GAAG,SAAS,GAAG,gBAAgB,GAAG,QAAQ,GAAG,KAAK,CAAC,CAAA;aAC/I;YAED,eAAe;YACf,IAAI,MAAM,CAAC,KAAK,EAAE;gBACd,MAAM,KAAK,GAAG,MAAA,MAAA,GAAG,aAAH,GAAG,uBAAH,GAAG,CAAE,SAAS,mDAAI,0CAAE,MAAM,CAAC;gBACzC,IAAI,KAAK,IAAI,qBAAM,CAAC,eAAe,CAAC,KAAK,CAAC,EAAE;oBACxC,MAAM,OAAO,GAAG,MAAM,4BAAY,CAAC,UAAU,CAAC,MAAM,EAAE,KAAK,EAAE,GAAG,CAAC,CAAC;oBAClE,IAAI,OAAO,IAAI,qBAAM,CAAC,eAAe,CAAC,OAAO,CAAC,EAAE;wBAC5C,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;4BACtB,WAAW,EAAE,OAAO;4BACpB,WAAW,EAAE;gCACT,OAAO,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;gCACnC,KAAK,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC;gCACnC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,SAAS,CAAC,GAAG,CAAC;6BACnC;4BACD,QAAQ,EAAE,CAAC;yBACd,CAAC,CAAC;wBACH,OAAO;qBACV;iBACJ;aACJ;QACL,CAAC,CAAC,CAAC;QAEH,eAAe;QACf,GAAG,CAAC,WAAW,CAAC,CAAC,CAAC,CAAC;QAEnB,8BAA8B;QAC9B,GAAG,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;QAExB,wCAAwC;QACxC,IAAI,OAAO,GAAG,CAAC,iBAAiB,KAAK,UAAU,EAAE;YAC7C,GAAG,CAAC,iBAAiB,CAAC,IAAI,CAAC,CAAC;SAC/B;QAED,OAAO,GAAG,CAAC;IACf,CAAC;IA9He,yBAAM,SA8HrB,CAAA;IAED,SAAgB,MAAM,CAAC,MAAqB,EAAE,YAA2B;QACrE,IAAI,CAAC,YAAY,EAAE;YACf,OAAO;SACV;QACD,IAAI,CAAC,SAAS,EAAE;YACZ,OAAO,CAAC,IAAI,CAAC,gEAAgE,CAAC,CAAC;YAC/E,OAAO;SACV;QACD,SAAS,CAAC,MAAM,CAAC,YAAY,CAAC,CAAC;IACnC,CAAC;IATe,yBAAM,SASrB,CAAA;IAED;;OAEG;IACH,SAAgB,aAAa,CAAC,MAM7B;QACG,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,QAAQ,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,MAAM,CAAC;QAC7E,IAAI,CAAC,YAAY,EAAE;YACf,OAAO;SACV;QAED,MAAM,GAAG,GAAG,IAAA,uBAAY,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,GAAG,GAAG,IAAA,uBAAY,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,SAAS,EAAE,CAAC,CAAC,CAAC;QAC/C,MAAM,GAAG,GAAG,IAAA,uBAAY,EAAC,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,QAAQ,EAAE,CAAC,CAAC,CAAC;QAC9C,MAAM,KAAK,GAAG,IAAA,uBAAY,EAAC,CAAA,MAAM,aAAN,MAAM,uBAAN,MAAM,CAAE,KAAK,KAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QAElD,IAAI,CAAC,aAAa,EAAE;YAChB,MAAM,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAC;YACzD,IAAI,OAAO,YAAY,CAAC,cAAc,KAAK,UAAU,EAAE;gBACnD,YAAY,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC;aACpC;SACJ;QAED,IAAI,CAAC,UAAU,IAAI,CAAC,aAAa,EAAE;YAC/B,MAAM,GAAG,GAAG,MAAM,CAAC,gBAAgB,CAAC,WAAW,CAC3C,IAAA,uBAAY,EAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,CAAC,CAAC,EACzB,IAAA,uBAAY,EAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,CAAC,CAAC,EACzB,IAAA,uBAAY,EAAC,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,CAAC,CAAC,EACzB,IAAI,MAAM,CAAC,gBAAgB,EAAE,CAChC,CAAC;YACF,MAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,oBAAoB,CAAC,GAAG,CAAC,CAAC;YAC3D,IAAI,OAAO,YAAY,CAAC,WAAW,KAAK,UAAU,EAAE;gBAChD,YAAY,CAAC,WAAW,CAAC,SAAS,CAAC,CAAC;aACvC;YACD,IAAI,OAAO,YAAY,CAAC,QAAQ,KAAK,UAAU,EAAE;gBAC7C,YAAY,CAAC,QAAQ,CAAC,IAAI,MAAM,CAAC,UAAU,CAAC,KAAK,EAAE,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;aACrE;SACJ;IACL,CAAC;IAvCe,gCAAa,gBAuC5B,CAAA;AACL,CAAC,EAzLgB,kBAAkB,GAAlB,0BAAkB,KAAlB,0BAAkB,QAyLlC"}
1
+ {"version":3,"file":"xgrids-render-engine.js","sourceRoot":"","sources":["../../../src/rendering/xgrids-render-engine.ts"],"names":[],"mappings":"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"}
@@ -60,7 +60,7 @@ export * from "./widgets/widget-info-view";
60
60
  export * from "./widgets/widget-left-panel";
61
61
  export * from "./widgets/widget-nav-compass";
62
62
  export * from "./widgets/widget-view-bar";
63
- export declare const VERSION = "6.5.9";
63
+ export declare const VERSION = "6.6.0";
64
64
  /**
65
65
  * Updates the environment instance used by bruce-cesium to one specified.
66
66
  * This can be used to ensure that the instance a parent is referencing is shared between bruce-cesium, bruce-models, and the parent app.
@@ -2,9 +2,22 @@ import { BruceApi, Carto, EntityCoords, Tileset, Transform } from "bruce-models"
2
2
  import * as Cesium from "cesium";
3
3
  import { TilesetStyler } from "./tileset-styler";
4
4
  declare const WATCH_KEY = "bruce-tileset-watch";
5
+ declare const DATE_RANGE_WATCH_KEY = "bruce-tileset-date-range-watch";
5
6
  interface IWatchedTileset extends Cesium.Cesium3DTileset {
6
7
  [WATCH_KEY]?: string;
7
8
  }
9
+ export interface IDateRange {
10
+ start?: Date;
11
+ end?: Date;
12
+ }
13
+ export interface IDateRangeWatchedObject {
14
+ [DATE_RANGE_WATCH_KEY]?: string;
15
+ _bruceDateRange?: IDateRange;
16
+ _bruceDateRangeVisible?: boolean;
17
+ show?: boolean;
18
+ setVisible?: (visible: boolean) => void;
19
+ isDestroyed?: () => boolean;
20
+ }
8
21
  export declare namespace TilesetRenderEngine {
9
22
  interface IPositionParams {
10
23
  ucs?: {
@@ -29,6 +42,7 @@ export declare namespace TilesetRenderEngine {
29
42
  interface ITilesetExt extends Cesium.Cesium3DTileset {
30
43
  _bruceCoords?: IPositionParams;
31
44
  _bruceSettings?: ISettingsParams;
45
+ _bruceDateRange?: IDateRange;
32
46
  }
33
47
  interface IParams {
34
48
  loadUrl?: string;
@@ -72,11 +86,29 @@ export declare namespace TilesetRenderEngine {
72
86
  }): Promise<Cesium.Cesium3DTileset>;
73
87
  class Styler extends TilesetStyler {
74
88
  }
89
+ function GetTilesetDateRange(tileset: any): IDateRange | null;
90
+ function WatchDateRange(viewer: Cesium.Viewer, renderObject: IDateRangeWatchedObject, tileset: any): void;
91
+ function UnwatchDateRange(viewer: Cesium.Viewer, renderObject: IDateRangeWatchedObject): void;
75
92
  /**
76
93
  * The maximum memory in MB that can be used by all tilesets.
77
94
  * This is distributed evenly between all loaded tilesets.
78
95
  */
79
96
  let MAX_TILESET_MEMORY: number;
97
+ /**
98
+ * Watches tileset date cutoffs and toggles their primitive visibility based on the viewer clock.
99
+ */
100
+ class DateRangeWatcher {
101
+ private viewer;
102
+ private watched;
103
+ private clockRemoval;
104
+ constructor(viewer: Cesium.Viewer);
105
+ private clean;
106
+ private updateTileset;
107
+ private update;
108
+ destroy(): void;
109
+ Watch(tileset: IDateRangeWatchedObject, range: IDateRange | null): void;
110
+ Unwatch(tileset: IDateRangeWatchedObject): void;
111
+ }
80
112
  /**
81
113
  * Watches tilesets in the viewer.
82
114
  * This will regulate their max memory param.
@@ -96,5 +128,6 @@ export declare namespace TilesetRenderEngine {
96
128
  Unwatch(tileset: IWatchedTileset): void;
97
129
  }
98
130
  function GetMemoryWatcher(viewer: Cesium.Viewer): MemoryWatcher;
131
+ function GetDateRangeWatcher(viewer: Cesium.Viewer): DateRangeWatcher;
99
132
  }
100
133
  export {};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-cesium",
3
- "version": "6.5.9",
3
+ "version": "6.6.0",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-cesium.umd.js",
@@ -74,7 +74,7 @@
74
74
  "typescript": "^5.0.4"
75
75
  },
76
76
  "dependencies": {
77
- "bruce-models": "^7.1.33",
77
+ "bruce-models": "^7.1.41",
78
78
  "tslib": "^2.4.1"
79
79
  }
80
80
  }