bruce-cesium 2.9.7 → 2.9.9

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 (40) hide show
  1. package/dist/bruce-cesium.es5.js +797 -183
  2. package/dist/bruce-cesium.es5.js.map +1 -1
  3. package/dist/bruce-cesium.umd.js +798 -186
  4. package/dist/bruce-cesium.umd.js.map +1 -1
  5. package/dist/lib/bruce-cesium.js +1 -1
  6. package/dist/lib/rendering/getters/batched-data-getter.js +92 -0
  7. package/dist/lib/rendering/getters/batched-data-getter.js.map +1 -0
  8. package/dist/lib/rendering/getters/entity-filter-getter.js +394 -0
  9. package/dist/lib/rendering/getters/entity-filter-getter.js.map +1 -0
  10. package/dist/lib/rendering/getters/entity-globe.js +195 -0
  11. package/dist/lib/rendering/getters/entity-globe.js.map +1 -0
  12. package/dist/lib/rendering/menu-item-manager.js +1 -1
  13. package/dist/lib/rendering/menu-item-manager.js.map +1 -1
  14. package/dist/lib/rendering/render-managers/common/entity-label.js.map +1 -1
  15. package/dist/lib/rendering/render-managers/common/shared-getters.js +2 -2
  16. package/dist/lib/rendering/render-managers/common/shared-getters.js.map +1 -1
  17. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +2 -1
  18. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +1 -1
  19. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +2 -1
  20. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js.map +1 -1
  21. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +1 -1
  22. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +2 -1
  23. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +1 -1
  24. package/dist/lib/rendering/visual-register-culler.js +12 -5
  25. package/dist/lib/rendering/visual-register-culler.js.map +1 -1
  26. package/dist/lib/viewer/cesium-view-monitor.js +177 -174
  27. package/dist/lib/viewer/cesium-view-monitor.js.map +1 -1
  28. package/dist/types/bruce-cesium.d.ts +1 -1
  29. package/dist/types/rendering/getters/batched-data-getter.d.ts +26 -0
  30. package/dist/types/rendering/getters/entity-filter-getter.d.ts +58 -0
  31. package/dist/types/rendering/getters/entity-globe.d.ts +20 -0
  32. package/dist/types/rendering/menu-item-manager.d.ts +1 -1
  33. package/dist/types/rendering/render-managers/common/shared-getters.d.ts +3 -4
  34. package/dist/types/rendering/render-managers/entities/entities-ids-render-manager.d.ts +1 -1
  35. package/dist/types/rendering/render-managers/entities/entities-loaded-render-manager.d.ts +1 -1
  36. package/dist/types/rendering/render-managers/entities/entities-render-manager.d.ts +1 -1
  37. package/dist/types/rendering/render-managers/entities/entity-render-manager.d.ts +1 -1
  38. package/dist/types/rendering/render-managers/tilesets/tileset-osm-render-manager.d.ts +1 -1
  39. package/dist/types/viewer/cesium-view-monitor.d.ts +32 -26
  40. package/package.json +2 -2
@@ -40,7 +40,7 @@ function getPositionsFromEntity(viewer, entity) {
40
40
  var semiMinorAxis = getValue(viewer, entity.ellipse.semiMinorAxis);
41
41
  var rotation = getValue(viewer, entity.ellipse.rotation);
42
42
  // More subdivisions means a more accurate ellipse but worse performance.
43
- var numberOfSubdivisions = 100;
43
+ var numberOfSubdivisions = 5;
44
44
  var positions = [];
45
45
  for (var i = 0; i < numberOfSubdivisions; i++) {
46
46
  var theta = i * (2 * Math.PI / numberOfSubdivisions);
@@ -85,7 +85,7 @@ function shouldCullEntity(viewer, cEntity) {
85
85
  if (positions) {
86
86
  boundingSphere = computeBoundingSphereFromPositions(positions);
87
87
  if (cEntity.model) {
88
- // Expand the bounding sphere for models due to our tolerance
88
+ // We don't know how large models are so we'll just add a tolerance.
89
89
  boundingSphere.radius += Math.sqrt(MODEL_SIZE_TOLERANCE);
90
90
  }
91
91
  boundingSphereCache[cEntity.id] = boundingSphere;
@@ -98,17 +98,24 @@ function shouldCullEntity(viewer, cEntity) {
98
98
  var visibility = cullingVolume.computeVisibility(boundingSphere);
99
99
  return visibility !== Cesium.Intersect.INSIDE && visibility !== Cesium.Intersect.INTERSECTING;
100
100
  }
101
+ // Amount of entities to check per interval.
101
102
  var CHECK_BATCH = 500;
102
- var LAST_RECHECK_KEY = Symbol("LAST_RECHECK_KEY");
103
103
  var checkInterval = null;
104
104
  var checkWaiting = false;
105
+ // We will store the last recheck data on the camera.
106
+ // This will allow us to check if the camera has moved enough to warrant a recheck.
107
+ var LAST_RECHECK_KEY = Symbol("LAST_RECHECK_KEY");
105
108
  /**
106
109
  * We will recheck if the camera has turned or moved enough.
107
110
  * @param viewer
108
111
  * @returns
109
112
  */
110
113
  function shouldRecheck(viewer) {
114
+ var _a;
111
115
  var camera = viewer.scene.camera;
116
+ if (!((_a = camera === null || camera === void 0 ? void 0 : camera.position) === null || _a === void 0 ? void 0 : _a.x)) {
117
+ return false;
118
+ }
112
119
  var lastRecheck = camera[LAST_RECHECK_KEY];
113
120
  if (!lastRecheck) {
114
121
  camera[LAST_RECHECK_KEY] = {
@@ -117,7 +124,7 @@ function shouldRecheck(viewer) {
117
124
  };
118
125
  return true;
119
126
  }
120
- var _a = lastRecheck, position = _a.position, direction = _a.direction;
127
+ var _b = lastRecheck, position = _b.position, direction = _b.direction;
121
128
  var posDiff = Cesium.Cartesian3.magnitude(Cesium.Cartesian3.subtract(position, camera.position, new Cesium.Cartesian3()));
122
129
  var dirDiff = Cesium.Cartesian3.magnitude(Cesium.Cartesian3.subtract(direction, camera.direction, new Cesium.Cartesian3()));
123
130
  var recheck = posDiff > 100 || dirDiff > 0.01;
@@ -218,7 +225,7 @@ var VisualRegisterCuller;
218
225
  (_a = checkQueue.Call) === null || _a === void 0 ? void 0 : _a.call(checkQueue);
219
226
  });
220
227
  var RENDER_SECS_PASSED = 5;
221
- var updateRemoval = register.Viewer.scene.postRender.addEventListener(function () {
228
+ var updateRemoval = register.Viewer.scene.postUpdate.addEventListener(function () {
222
229
  var _a;
223
230
  var now = new Date();
224
231
  if (lastCullCheck == null || (now.getTime() - lastCullCheck.getTime()) > RENDER_SECS_PASSED * 1000) {
@@ -1 +1 @@
1
- {"version":3,"file":"visual-register-culler.js","sourceRoot":"","sources":["../../../src/rendering/visual-register-culler.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visual-register-culler.js","sourceRoot":"","sources":["../../../src/rendering/visual-register-culler.ts"],"names":[],"mappings":"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"}
@@ -74,190 +74,193 @@ function areBoundsEqual(a, b) {
74
74
  function arePosEqual(a, b) {
75
75
  return a.latitude == b.latitude && a.longitude == b.longitude;
76
76
  }
77
- /**
78
- * Monitors and emits events when the Cesium view changes.
79
- */
80
- var CesiumViewMonitor = /** @class */ (function () {
81
- function CesiumViewMonitor(viewer) {
82
- var _this = this;
83
- this.target = null;
84
- this.bounds = null;
85
- this.disposed = false;
86
- this.updatedEvent = null;
87
- this.entity = null;
88
- this.viewer = viewer;
89
- this.tryEmitUpdate();
90
- this.checkInterval = setInterval(function () {
91
- _this.updateQueue();
92
- }, POSITION_CHECK_TIMER);
93
- }
94
- Object.defineProperty(CesiumViewMonitor.prototype, "Disposed", {
95
- get: function () {
96
- return this.disposed;
97
- },
98
- enumerable: false,
99
- configurable: true
100
- });
101
- CesiumViewMonitor.prototype.createEntity = function () {
102
- var _this = this;
103
- if (this.entity) {
104
- return;
77
+ var CesiumViewMonitor;
78
+ (function (CesiumViewMonitor) {
79
+ /**
80
+ * Monitors and emits events when the Cesium view changes.
81
+ */
82
+ var Monitor = /** @class */ (function () {
83
+ function Monitor(viewer) {
84
+ var _this = this;
85
+ this.target = null;
86
+ this.bounds = null;
87
+ this.disposed = false;
88
+ this.updatedEvent = null;
89
+ this.entity = null;
90
+ this.viewer = viewer;
91
+ this.tryEmitUpdate();
92
+ this.checkInterval = setInterval(function () {
93
+ _this.updateQueue();
94
+ }, POSITION_CHECK_TIMER);
105
95
  }
106
- this.entity = this.viewer.entities.add({
107
- position: new Cesium.CallbackProperty(function () {
108
- return _this.target ? Cesium.Cartesian3.fromDegrees(_this.target.longitude, _this.target.latitude) : null;
109
- }, false),
110
- point: {
111
- pixelSize: 8,
112
- color: Cesium.Color.ORANGE
96
+ Object.defineProperty(Monitor.prototype, "Disposed", {
97
+ get: function () {
98
+ return this.disposed;
113
99
  },
114
- rectangle: {
115
- coordinates: new Cesium.CallbackProperty(function () {
116
- return _this.bounds ? Cesium.Rectangle.fromDegrees(_this.bounds.west, _this.bounds.south, _this.bounds.east, _this.bounds.north) : null;
100
+ enumerable: false,
101
+ configurable: true
102
+ });
103
+ Monitor.prototype.createEntity = function () {
104
+ var _this = this;
105
+ if (this.entity) {
106
+ return;
107
+ }
108
+ this.entity = this.viewer.entities.add({
109
+ position: new Cesium.CallbackProperty(function () {
110
+ return _this.target ? Cesium.Cartesian3.fromDegrees(_this.target.longitude, _this.target.latitude) : null;
117
111
  }, false),
118
- material: Cesium.Color.fromCssColorString('#ff0000').withAlpha(0.4),
119
- zIndex: 1
112
+ point: {
113
+ pixelSize: 8,
114
+ color: Cesium.Color.ORANGE
115
+ },
116
+ rectangle: {
117
+ coordinates: new Cesium.CallbackProperty(function () {
118
+ return _this.bounds ? Cesium.Rectangle.fromDegrees(_this.bounds.west, _this.bounds.south, _this.bounds.east, _this.bounds.north) : null;
119
+ }, false),
120
+ material: Cesium.Color.fromCssColorString('#ff0000').withAlpha(0.4),
121
+ zIndex: 1
122
+ }
123
+ });
124
+ };
125
+ Monitor.prototype.destroyEntity = function () {
126
+ if (this.entity && this.viewer.entities.contains(this.entity)) {
127
+ this.viewer.entities.remove(this.entity);
120
128
  }
121
- });
122
- };
123
- CesiumViewMonitor.prototype.destroyEntity = function () {
124
- if (this.entity && this.viewer.entities.contains(this.entity)) {
125
- this.viewer.entities.remove(this.entity);
126
- }
127
- this.entity = null;
128
- };
129
- CesiumViewMonitor.prototype.Updated = function () {
130
- if (!this.updatedEvent) {
131
- this.updatedEvent = new bruce_models_1.BruceEvent();
132
- }
133
- return this.updatedEvent;
134
- };
135
- CesiumViewMonitor.prototype.GetBounds = function () {
136
- return this.bounds;
137
- };
138
- CesiumViewMonitor.prototype.GetTarget = function () {
139
- return this.target;
140
- };
141
- CesiumViewMonitor.prototype.DoUpdate = function () {
142
- this.tryEmitUpdate();
143
- };
144
- CesiumViewMonitor.prototype.Dispose = function () {
145
- if (this.disposed) {
146
- return;
147
- }
148
- this.disposed = true;
149
- clearInterval(this.checkInterval);
150
- this.destroyEntity();
151
- };
152
- CesiumViewMonitor.prototype.tryDoUpdate = function () {
153
- var _a;
154
- if (!this.viewer || this.viewer.isDestroyed()) {
155
- this.Dispose();
156
- return ESearchStatus.LocationMissing;
157
- }
158
- var viewRect = null;
159
- var center = null;
160
- var camera = this.viewer.camera;
161
- var terrainHeight = this.viewer.scene.globe.getHeight(camera.positionCartographic);
162
- var cameraPosition = this.viewer.camera.positionCartographic;
163
- // We are almost at the ground, screw horizon, just load around.
164
- if (terrainHeight && ((cameraPosition.height - terrainHeight) < DEFAULT_GROUNDED_HEIGHT)) {
165
- // View area calculation.
166
- viewRect = {};
167
- var viewRectRad = netScanViewForBoundaries(this.viewer);
168
- if (viewRectRad &&
169
- viewRectRad.east &&
170
- viewRectRad.west &&
171
- viewRectRad.north &&
172
- viewRectRad.south) {
173
- viewRect.east = Cesium.Math.toDegrees(Math.max(viewRectRad.east, cameraPosition.longitude));
174
- viewRect.west = Cesium.Math.toDegrees(Math.min(viewRectRad.west, cameraPosition.longitude));
175
- viewRect.south = Cesium.Math.toDegrees(Math.min(viewRectRad.south, cameraPosition.latitude));
176
- viewRect.north = Cesium.Math.toDegrees(Math.max(viewRectRad.north, cameraPosition.latitude));
129
+ this.entity = null;
130
+ };
131
+ Monitor.prototype.Updated = function () {
132
+ if (!this.updatedEvent) {
133
+ this.updatedEvent = new bruce_models_1.BruceEvent();
177
134
  }
178
- else {
179
- viewRect.east = cameraPosition.longitude;
180
- viewRect.west = cameraPosition.longitude;
181
- viewRect.south = cameraPosition.latitude;
182
- viewRect.north = cameraPosition.latitude;
135
+ return this.updatedEvent;
136
+ };
137
+ Monitor.prototype.GetBounds = function () {
138
+ return this.bounds;
139
+ };
140
+ Monitor.prototype.GetTarget = function () {
141
+ return this.target;
142
+ };
143
+ Monitor.prototype.DoUpdate = function () {
144
+ this.tryEmitUpdate();
145
+ };
146
+ Monitor.prototype.Dispose = function () {
147
+ if (this.disposed) {
148
+ return;
183
149
  }
184
- center = {};
185
- center.latitude = Cesium.Math.toDegrees(camera.positionCartographic.latitude);
186
- center.longitude = Cesium.Math.toDegrees(camera.positionCartographic.longitude);
187
- }
188
- else {
189
- // View area calculation.
190
- var windowPosition = new Cesium.Cartesian2(this.viewer.container.clientWidth / 2, this.viewer.container.clientHeight / 2);
191
- var intersection = getAdjustedGroundIntersectionOfCameraRay(this.viewer, windowPosition);
192
- var point = null;
193
- if (intersection) {
194
- point = Cesium.Cartographic.fromCartesian(intersection, this.viewer.scene.globe.ellipsoid);
150
+ this.disposed = true;
151
+ clearInterval(this.checkInterval);
152
+ this.destroyEntity();
153
+ };
154
+ Monitor.prototype.tryDoUpdate = function () {
155
+ var _a;
156
+ if (!this.viewer || this.viewer.isDestroyed()) {
157
+ this.Dispose();
158
+ return ESearchStatus.LocationMissing;
195
159
  }
196
- if (point) {
197
- center = {};
198
- center.latitude = Cesium.Math.toDegrees(point.latitude);
199
- center.longitude = Cesium.Math.toDegrees(point.longitude);
160
+ var viewRect = null;
161
+ var center = null;
162
+ var camera = this.viewer.camera;
163
+ var terrainHeight = this.viewer.scene.globe.getHeight(camera.positionCartographic);
164
+ var cameraPosition = this.viewer.camera.positionCartographic;
165
+ // We are almost at the ground, screw horizon, just load around.
166
+ if (terrainHeight && ((cameraPosition.height - terrainHeight) < DEFAULT_GROUNDED_HEIGHT)) {
167
+ // View area calculation.
168
+ viewRect = {};
200
169
  var viewRectRad = netScanViewForBoundaries(this.viewer);
201
- if (viewRectRad) {
202
- viewRect = {};
203
- viewRect.east = Cesium.Math.toDegrees(viewRectRad.east);
204
- viewRect.west = Cesium.Math.toDegrees(viewRectRad.west);
205
- viewRect.south = Cesium.Math.toDegrees(viewRectRad.south);
206
- viewRect.north = Cesium.Math.toDegrees(viewRectRad.north);
170
+ if (viewRectRad &&
171
+ viewRectRad.east &&
172
+ viewRectRad.west &&
173
+ viewRectRad.north &&
174
+ viewRectRad.south) {
175
+ viewRect.east = Cesium.Math.toDegrees(Math.max(viewRectRad.east, cameraPosition.longitude));
176
+ viewRect.west = Cesium.Math.toDegrees(Math.min(viewRectRad.west, cameraPosition.longitude));
177
+ viewRect.south = Cesium.Math.toDegrees(Math.min(viewRectRad.south, cameraPosition.latitude));
178
+ viewRect.north = Cesium.Math.toDegrees(Math.max(viewRectRad.north, cameraPosition.latitude));
179
+ }
180
+ else {
181
+ viewRect.east = cameraPosition.longitude;
182
+ viewRect.west = cameraPosition.longitude;
183
+ viewRect.south = cameraPosition.latitude;
184
+ viewRect.north = cameraPosition.latitude;
207
185
  }
186
+ center = {};
187
+ center.latitude = Cesium.Math.toDegrees(camera.positionCartographic.latitude);
188
+ center.longitude = Cesium.Math.toDegrees(camera.positionCartographic.longitude);
208
189
  }
209
- }
210
- // Minimal field of view.
211
- if (viewRect) {
212
- var centerLong = (viewRect.east + viewRect.west) / 2;
213
- var centerLat = (viewRect.north + viewRect.south) / 2;
214
- viewRect.east = Math.max(viewRect.east, centerLong + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
215
- viewRect.west = Math.min(viewRect.west, centerLong - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
216
- viewRect.south = Math.min(viewRect.south, centerLat - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
217
- viewRect.north = Math.max(viewRect.north, centerLat + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
218
- viewRect.alt = (_a = this.viewer.scene.camera.positionCartographic) === null || _a === void 0 ? void 0 : _a.height;
219
- }
220
- if (center && viewRect) {
221
- if ((!this.target || (this.target && !arePosEqual(this.target, center))) ||
222
- (!this.bounds || (this.bounds && !areBoundsEqual(this.bounds, viewRect)))) {
223
- this.target = center;
224
- this.bounds = viewRect;
225
- return ESearchStatus.LocationChanged;
190
+ else {
191
+ // View area calculation.
192
+ var windowPosition = new Cesium.Cartesian2(this.viewer.container.clientWidth / 2, this.viewer.container.clientHeight / 2);
193
+ var intersection = getAdjustedGroundIntersectionOfCameraRay(this.viewer, windowPosition);
194
+ var point = null;
195
+ if (intersection) {
196
+ point = Cesium.Cartographic.fromCartesian(intersection, this.viewer.scene.globe.ellipsoid);
197
+ }
198
+ if (point) {
199
+ center = {};
200
+ center.latitude = Cesium.Math.toDegrees(point.latitude);
201
+ center.longitude = Cesium.Math.toDegrees(point.longitude);
202
+ var viewRectRad = netScanViewForBoundaries(this.viewer);
203
+ if (viewRectRad) {
204
+ viewRect = {};
205
+ viewRect.east = Cesium.Math.toDegrees(viewRectRad.east);
206
+ viewRect.west = Cesium.Math.toDegrees(viewRectRad.west);
207
+ viewRect.south = Cesium.Math.toDegrees(viewRectRad.south);
208
+ viewRect.north = Cesium.Math.toDegrees(viewRectRad.north);
209
+ }
210
+ }
226
211
  }
227
- return ESearchStatus.LocationFound;
228
- }
229
- return ESearchStatus.LocationMissing;
230
- };
231
- CesiumViewMonitor.prototype.tryEmitUpdate = function () {
232
- var _a;
233
- var searchResult = this.tryDoUpdate();
234
- if (searchResult == ESearchStatus.LocationChanged) {
235
- var interest = {
236
- bounds: this.bounds,
237
- target: this.target
238
- };
239
- //this.createEntity();
240
- (_a = this.updatedEvent) === null || _a === void 0 ? void 0 : _a.Trigger(interest);
241
- }
242
- else if (searchResult == ESearchStatus.LocationMissing) {
243
- this.updateQueue();
244
- }
245
- };
246
- CesiumViewMonitor.prototype.queuePosition = function (lag) {
247
- var _this = this;
248
- if (this.pendingTimeout) {
249
- clearTimeout(this.pendingTimeout);
250
- }
251
- this.pendingTimeout = setTimeout(function () {
252
- if (!_this.disposed) {
253
- _this.tryEmitUpdate();
212
+ // Minimal field of view.
213
+ if (viewRect) {
214
+ var centerLong = (viewRect.east + viewRect.west) / 2;
215
+ var centerLat = (viewRect.north + viewRect.south) / 2;
216
+ viewRect.east = Math.max(viewRect.east, centerLong + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
217
+ viewRect.west = Math.min(viewRect.west, centerLong - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
218
+ viewRect.south = Math.min(viewRect.south, centerLat - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
219
+ viewRect.north = Math.max(viewRect.north, centerLat + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
220
+ viewRect.alt = (_a = this.viewer.scene.camera.positionCartographic) === null || _a === void 0 ? void 0 : _a.height;
254
221
  }
255
- }, lag);
256
- };
257
- CesiumViewMonitor.prototype.updateQueue = function () {
258
- this.queuePosition(TIME_LAG);
259
- };
260
- return CesiumViewMonitor;
261
- }());
262
- exports.CesiumViewMonitor = CesiumViewMonitor;
222
+ if (center && viewRect) {
223
+ if ((!this.target || (this.target && !arePosEqual(this.target, center))) ||
224
+ (!this.bounds || (this.bounds && !areBoundsEqual(this.bounds, viewRect)))) {
225
+ this.target = center;
226
+ this.bounds = viewRect;
227
+ return ESearchStatus.LocationChanged;
228
+ }
229
+ return ESearchStatus.LocationFound;
230
+ }
231
+ return ESearchStatus.LocationMissing;
232
+ };
233
+ Monitor.prototype.tryEmitUpdate = function () {
234
+ var _a;
235
+ var searchResult = this.tryDoUpdate();
236
+ if (searchResult == ESearchStatus.LocationChanged) {
237
+ var interest = {
238
+ bounds: this.bounds,
239
+ target: this.target
240
+ };
241
+ //this.createEntity();
242
+ (_a = this.updatedEvent) === null || _a === void 0 ? void 0 : _a.Trigger(interest);
243
+ }
244
+ else if (searchResult == ESearchStatus.LocationMissing) {
245
+ this.updateQueue();
246
+ }
247
+ };
248
+ Monitor.prototype.queuePosition = function (lag) {
249
+ var _this = this;
250
+ if (this.pendingTimeout) {
251
+ clearTimeout(this.pendingTimeout);
252
+ }
253
+ this.pendingTimeout = setTimeout(function () {
254
+ if (!_this.disposed) {
255
+ _this.tryEmitUpdate();
256
+ }
257
+ }, lag);
258
+ };
259
+ Monitor.prototype.updateQueue = function () {
260
+ this.queuePosition(TIME_LAG);
261
+ };
262
+ return Monitor;
263
+ }());
264
+ CesiumViewMonitor.Monitor = Monitor;
265
+ })(CesiumViewMonitor = exports.CesiumViewMonitor || (exports.CesiumViewMonitor = {}));
263
266
  //# sourceMappingURL=cesium-view-monitor.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"cesium-view-monitor.js","sourceRoot":"","sources":["../../../src/viewer/cesium-view-monitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"cesium-view-monitor.js","sourceRoot":"","sources":["../../../src/viewer/cesium-view-monitor.ts"],"names":[],"mappings":"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"}
@@ -29,4 +29,4 @@ export * from "./utils/measure-utils";
29
29
  export * from "./utils/entity-utils";
30
30
  export * from "./widgets/common/draw-3d-polygon";
31
31
  export * from "./widgets/common/draw-3d-polyline";
32
- export declare const VERSION = "2.9.7";
32
+ export declare const VERSION = "2.9.9";
@@ -0,0 +1,26 @@
1
+ import { BruceEvent } from "bruce-models";
2
+ import { CesiumViewMonitor } from "../../viewer/cesium-view-monitor";
3
+ /**
4
+ * This is a batched "arbitrary data" getter.
5
+ * You feed it an array of data, then it will emit that data in batches when the view changes.
6
+ */
7
+ export declare namespace BatchedDataGetter {
8
+ class Getter<T> {
9
+ private viewPort;
10
+ private viewPortRemoval;
11
+ private batchSize;
12
+ private viewRect;
13
+ private viewCenter;
14
+ private getterInterval;
15
+ private data;
16
+ private onUpdate;
17
+ get OnUpdate(): BruceEvent<T[]>;
18
+ constructor(data: T[], viewPort: CesiumViewMonitor.Monitor, batchSize: number);
19
+ Start(): void;
20
+ Dispose(): void;
21
+ private updateViewport;
22
+ private updateBounds;
23
+ private startGetterLoop;
24
+ private processBatch;
25
+ }
26
+ }
@@ -0,0 +1,58 @@
1
+ import { BruceApi, BruceEvent, Entity, IDictionary } from "bruce-models";
2
+ import { EntityGlobe } from "./entity-globe";
3
+ import { CesiumViewMonitor } from "../../viewer/cesium-view-monitor";
4
+ /**
5
+ * This is a batched entity getter.
6
+ * It will scan for entity records in a view-area and emit them in batches.
7
+ * It will restart scanning if the camera moves.
8
+ */
9
+ export declare namespace EntityFilterGetter {
10
+ enum EStatus {
11
+ Scanning = "SCANNING",
12
+ Loading = "LOADING"
13
+ }
14
+ interface IStatusUpdate {
15
+ msg: EStatus;
16
+ revoking: boolean;
17
+ }
18
+ class Getter {
19
+ private onUpdate;
20
+ get OnUpdate(): BruceEvent<Entity.IEntity[]>;
21
+ LastStateUpdates: IDictionary<IStatusUpdate>;
22
+ private onStateUpdate;
23
+ get OnStateUpdate(): BruceEvent<IStatusUpdate>;
24
+ private onScanUpdate;
25
+ get OnScanUpdate(): BruceEvent<EntityGlobe.Cell[]>;
26
+ private api;
27
+ private viewPort;
28
+ private viewPortChangeRemoval;
29
+ private cells;
30
+ private registeredItems;
31
+ private getterLoopId;
32
+ private viaCdn;
33
+ private typeId;
34
+ private batchSize;
35
+ private tagIds;
36
+ private minHeight;
37
+ private maxHeight;
38
+ private attrFilter;
39
+ private viewRect;
40
+ private viewCenter;
41
+ constructor(api: BruceApi.Api, viewPort: CesiumViewMonitor.Monitor, typeId: string, batchSize?: number, attrFilter?: IDictionary<any>, viaCdn?: boolean);
42
+ /**
43
+ * Returns id that represents the combined menu item parameters.
44
+ * If integrity changes while a request is running, the request will not emit a response.
45
+ * @returns
46
+ */
47
+ private getIntegrityId;
48
+ private viewAreaSub;
49
+ private viewAreaDispose;
50
+ GetMenuItems(): string[];
51
+ IncludeMenuItem(menuItemId: string, layerIds: number[], minHeight: number, maxHeight: number): void;
52
+ ExcludeMenuItem(menuItemId: string): void;
53
+ private updateBounds;
54
+ private updateState;
55
+ private postStatus;
56
+ private startGetterLoop;
57
+ }
58
+ }
@@ -0,0 +1,20 @@
1
+ import { Bounds, Carto } from "bruce-models";
2
+ /**
3
+ * This is a helper for making entity requests based on a grid area.
4
+ * It will return grid cells based on given view-area then will remember when stuff-
5
+ * was fully-fetched for those cells to avoid making duplicate requests.
6
+ */
7
+ export declare namespace EntityGlobe {
8
+ class Cell {
9
+ Fetched: boolean;
10
+ IsFetched: () => boolean;
11
+ FetchPageIndex: number;
12
+ Boundaries: Bounds.IBounds;
13
+ Fetching: boolean;
14
+ GetBounds(): Bounds.IReqBounds;
15
+ }
16
+ class Grid {
17
+ private cells;
18
+ GetCellsForView(cameraPos: Carto.ICarto, viewRect: Bounds.IReqBounds): Cell[];
19
+ }
20
+ }