bruce-cesium 2.9.6 → 2.9.7

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.
@@ -46,5 +46,5 @@ __exportStar(require("./utils/measure-utils"), exports);
46
46
  __exportStar(require("./utils/entity-utils"), exports);
47
47
  __exportStar(require("./widgets/common/draw-3d-polygon"), exports);
48
48
  __exportStar(require("./widgets/common/draw-3d-polyline"), exports);
49
- exports.VERSION = "2.9.6";
49
+ exports.VERSION = "2.9.7";
50
50
  //# sourceMappingURL=bruce-cesium.js.map
@@ -128,6 +128,27 @@ var MenuItemManager;
128
128
  enumerable: false,
129
129
  configurable: true
130
130
  });
131
+ /**
132
+ * Disposes the menu item manager.
133
+ * This will dispose all render managers and unregister all menu items.
134
+ */
135
+ Manager.prototype.Dispose = function (params) {
136
+ var _a;
137
+ var disposeRegister = (params !== null && params !== void 0 ? params : {}).disposeRegister;
138
+ for (var i = 0; i < this.items.length; i++) {
139
+ var item = this.items[i];
140
+ try {
141
+ (_a = item.renderManager) === null || _a === void 0 ? void 0 : _a.Dispose();
142
+ }
143
+ catch (e) {
144
+ console.error(e);
145
+ }
146
+ }
147
+ this.items = [];
148
+ if (this.visualsRegister && disposeRegister != false) {
149
+ this.visualsRegister.Dispose();
150
+ }
151
+ };
131
152
  /**
132
153
  * Renders a given menu item and all its children.
133
154
  * Will return the enabled item id.
@@ -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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"}
@@ -0,0 +1,263 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.VisualRegisterCuller = void 0;
4
+ var bruce_models_1 = require("bruce-models");
5
+ var Cesium = require("cesium");
6
+ var entity_utils_1 = require("../utils/entity-utils");
7
+ // Area in m^2 for 3D model visibility check.
8
+ var MODEL_SIZE_TOLERANCE = 1000;
9
+ function getValue(viewer, obj) {
10
+ if (obj === null || obj === void 0 ? void 0 : obj.getValue) {
11
+ return obj.getValue(viewer.scene.lastRenderTime);
12
+ }
13
+ return obj;
14
+ }
15
+ var boundingSphereCache = {};
16
+ function getPositionsFromEntity(viewer, entity) {
17
+ if (entity.billboard) {
18
+ var pos3d = getValue(viewer, entity.position);
19
+ if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
20
+ return null;
21
+ }
22
+ return [pos3d];
23
+ }
24
+ else if (entity.polyline) {
25
+ return getValue(viewer, entity.polyline.positions);
26
+ }
27
+ else if (entity.polygon) {
28
+ var hierarchy = getValue(viewer, entity.polygon.hierarchy);
29
+ return hierarchy.positions;
30
+ }
31
+ else if (entity.corridor) {
32
+ return getValue(viewer, entity.corridor.positions);
33
+ }
34
+ else if (entity.ellipse) {
35
+ var position = getValue(viewer, entity.position);
36
+ if (!(position === null || position === void 0 ? void 0 : position.x)) {
37
+ return null;
38
+ }
39
+ var semiMajorAxis = getValue(viewer, entity.ellipse.semiMajorAxis);
40
+ var semiMinorAxis = getValue(viewer, entity.ellipse.semiMinorAxis);
41
+ var rotation = getValue(viewer, entity.ellipse.rotation);
42
+ // More subdivisions means a more accurate ellipse but worse performance.
43
+ var numberOfSubdivisions = 100;
44
+ var positions = [];
45
+ for (var i = 0; i < numberOfSubdivisions; i++) {
46
+ var theta = i * (2 * Math.PI / numberOfSubdivisions);
47
+ var x = semiMajorAxis * Math.cos(theta);
48
+ var y = semiMinorAxis * Math.sin(theta);
49
+ // Apply rotation.
50
+ var rotatedX = x * Math.cos(rotation) - y * Math.sin(rotation);
51
+ var rotatedY = x * Math.sin(rotation) + y * Math.cos(rotation);
52
+ // Translate by the ellipse's position.
53
+ var point = new Cesium.Cartesian3(position.x + rotatedX, position.y + rotatedY, position.z);
54
+ positions.push(point);
55
+ }
56
+ return positions;
57
+ }
58
+ else if (entity.model) {
59
+ var pos3d = getValue(viewer, entity.position);
60
+ if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
61
+ return null;
62
+ }
63
+ return [pos3d];
64
+ }
65
+ else if (entity.point) {
66
+ var pos3d = getValue(viewer, entity.position);
67
+ if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
68
+ return null;
69
+ }
70
+ return [pos3d];
71
+ }
72
+ return null;
73
+ }
74
+ function computeBoundingSphereFromPositions(positions) {
75
+ return Cesium.BoundingSphere.fromPoints(positions);
76
+ }
77
+ function shouldCullEntity(viewer, cEntity) {
78
+ var camera = viewer.scene.camera;
79
+ var boundingSphere;
80
+ if (boundingSphereCache[cEntity.id]) {
81
+ boundingSphere = boundingSphereCache[cEntity.id];
82
+ }
83
+ else {
84
+ var positions = getPositionsFromEntity(viewer, cEntity);
85
+ if (positions) {
86
+ boundingSphere = computeBoundingSphereFromPositions(positions);
87
+ if (cEntity.model) {
88
+ // Expand the bounding sphere for models due to our tolerance
89
+ boundingSphere.radius += Math.sqrt(MODEL_SIZE_TOLERANCE);
90
+ }
91
+ boundingSphereCache[cEntity.id] = boundingSphere;
92
+ }
93
+ }
94
+ if (!boundingSphere) {
95
+ return false;
96
+ }
97
+ var cullingVolume = camera.frustum.computeCullingVolume(camera.position, camera.direction, camera.up);
98
+ var visibility = cullingVolume.computeVisibility(boundingSphere);
99
+ return visibility !== Cesium.Intersect.INSIDE && visibility !== Cesium.Intersect.INTERSECTING;
100
+ }
101
+ var CHECK_BATCH = 500;
102
+ var LAST_RECHECK_KEY = Symbol("LAST_RECHECK_KEY");
103
+ var checkInterval = null;
104
+ var checkWaiting = false;
105
+ /**
106
+ * We will recheck if the camera has turned or moved enough.
107
+ * @param viewer
108
+ * @returns
109
+ */
110
+ function shouldRecheck(viewer) {
111
+ var camera = viewer.scene.camera;
112
+ var lastRecheck = camera[LAST_RECHECK_KEY];
113
+ if (!lastRecheck) {
114
+ camera[LAST_RECHECK_KEY] = {
115
+ position: camera.position.clone(),
116
+ direction: camera.direction.clone(),
117
+ };
118
+ return true;
119
+ }
120
+ var _a = lastRecheck, position = _a.position, direction = _a.direction;
121
+ var posDiff = Cesium.Cartesian3.magnitude(Cesium.Cartesian3.subtract(position, camera.position, new Cesium.Cartesian3()));
122
+ var dirDiff = Cesium.Cartesian3.magnitude(Cesium.Cartesian3.subtract(direction, camera.direction, new Cesium.Cartesian3()));
123
+ var recheck = posDiff > 100 || dirDiff > 0.01;
124
+ if (recheck) {
125
+ camera[LAST_RECHECK_KEY] = {
126
+ position: camera.position.clone(),
127
+ direction: camera.direction.clone(),
128
+ };
129
+ }
130
+ return recheck;
131
+ }
132
+ /**
133
+ * Runs through all entities in the register and culls them if they are out of the viewport.
134
+ * This will work in batches.
135
+ * @param register
136
+ */
137
+ function runCullChecker(register) {
138
+ if (checkInterval != null) {
139
+ checkWaiting = true;
140
+ return;
141
+ }
142
+ var viewer = register.Viewer;
143
+ var entityIds = register.GetEntityIds();
144
+ checkInterval = setInterval(function () {
145
+ if (viewer.isDestroyed() || !viewer.scene) {
146
+ clearInterval(checkInterval);
147
+ checkInterval = null;
148
+ return;
149
+ }
150
+ var slice = entityIds.splice(0, CHECK_BATCH);
151
+ for (var i = 0; i < slice.length; i++) {
152
+ var entityId = slice[i];
153
+ var rego = register.GetRego({
154
+ entityId: entityId
155
+ });
156
+ if (!rego || !rego.visual || !(rego.visual instanceof Cesium.Entity)) {
157
+ continue;
158
+ }
159
+ var parts = entity_utils_1.EntityUtils.GatherEntity({
160
+ entity: rego.visual
161
+ });
162
+ for (var i_1 = 0; i_1 < parts.length; i_1++) {
163
+ var part = parts[i_1];
164
+ var shouldCull = shouldCullEntity(viewer, part);
165
+ if (shouldCull) {
166
+ part[VisualRegisterCuller.VISUAL_CULL_KEY] = true;
167
+ if (viewer.entities.contains(part)) {
168
+ viewer.entities.remove(part);
169
+ }
170
+ }
171
+ else {
172
+ delete part[VisualRegisterCuller.VISUAL_CULL_KEY];
173
+ if (!rego.suppressShow && rego.best && !viewer.entities.contains(part)) {
174
+ viewer.entities.add(part);
175
+ }
176
+ }
177
+ }
178
+ }
179
+ if (entityIds.length <= 0) {
180
+ clearInterval(checkInterval);
181
+ checkInterval = null;
182
+ if (checkWaiting) {
183
+ checkWaiting = false;
184
+ runCullChecker(register);
185
+ }
186
+ }
187
+ }, 200);
188
+ }
189
+ var VisualRegisterCuller;
190
+ (function (VisualRegisterCuller) {
191
+ VisualRegisterCuller.VISUAL_CULL_KEY = Symbol("VISUAL_CULL_KEY");
192
+ /**
193
+ * Will monitor the visuals within a visual register and cull ones that are out of the viewport.
194
+ * @param params
195
+ * @returns a dispose function.
196
+ */
197
+ function Monitor(params) {
198
+ var _a;
199
+ var register = params.register;
200
+ if (!((_a = register === null || register === void 0 ? void 0 : register.Viewer) === null || _a === void 0 ? void 0 : _a.scene) || register.Viewer.isDestroyed()) {
201
+ console.warn("Cannot monitor a visual register that is not attached to a viewer.");
202
+ return function () { };
203
+ }
204
+ var lastCullCheck = null;
205
+ var checkQueue = new bruce_models_1.DelayQueue(function () {
206
+ if (register.Viewer == null || register.Viewer.isDestroyed() || !shouldRecheck(register.Viewer)) {
207
+ return;
208
+ }
209
+ runCullChecker(register);
210
+ lastCullCheck = new Date();
211
+ }, 1000);
212
+ var moveStartRemoval = register.Viewer.camera.moveStart.addEventListener(function () {
213
+ var _a;
214
+ (_a = checkQueue.Call) === null || _a === void 0 ? void 0 : _a.call(checkQueue);
215
+ });
216
+ var moveEndRemoval = register.Viewer.camera.moveEnd.addEventListener(function () {
217
+ var _a;
218
+ (_a = checkQueue.Call) === null || _a === void 0 ? void 0 : _a.call(checkQueue);
219
+ });
220
+ var RENDER_SECS_PASSED = 5;
221
+ var updateRemoval = register.Viewer.scene.postRender.addEventListener(function () {
222
+ var _a;
223
+ var now = new Date();
224
+ if (lastCullCheck == null || (now.getTime() - lastCullCheck.getTime()) > RENDER_SECS_PASSED * 1000) {
225
+ (_a = checkQueue.Call) === null || _a === void 0 ? void 0 : _a.call(checkQueue);
226
+ }
227
+ });
228
+ checkQueue.Call();
229
+ return function (params) {
230
+ var uncull = (params || {}).uncull;
231
+ moveStartRemoval === null || moveStartRemoval === void 0 ? void 0 : moveStartRemoval();
232
+ moveStartRemoval = null;
233
+ moveEndRemoval === null || moveEndRemoval === void 0 ? void 0 : moveEndRemoval();
234
+ moveEndRemoval = null;
235
+ updateRemoval === null || updateRemoval === void 0 ? void 0 : updateRemoval();
236
+ updateRemoval = null;
237
+ checkInterval === null || checkInterval === void 0 ? void 0 : checkInterval();
238
+ checkInterval = null;
239
+ checkWaiting = false;
240
+ checkQueue === null || checkQueue === void 0 ? void 0 : checkQueue.Dispose();
241
+ checkQueue = null;
242
+ if (uncull != false) {
243
+ // TODO. Unused for now.
244
+ }
245
+ };
246
+ }
247
+ VisualRegisterCuller.Monitor = Monitor;
248
+ function IsCulled(viewer, visual) {
249
+ if (!visual) {
250
+ return false;
251
+ }
252
+ if (visual instanceof Cesium.Entity) {
253
+ var status_1 = visual[VisualRegisterCuller.VISUAL_CULL_KEY];
254
+ if (status_1 == null) {
255
+ status_1 = visual[VisualRegisterCuller.VISUAL_CULL_KEY] = shouldCullEntity(viewer, visual);
256
+ }
257
+ return status_1;
258
+ }
259
+ return false;
260
+ }
261
+ VisualRegisterCuller.IsCulled = IsCulled;
262
+ })(VisualRegisterCuller = exports.VisualRegisterCuller || (exports.VisualRegisterCuller = {}));
263
+ //# sourceMappingURL=visual-register-culler.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"visual-register-culler.js","sourceRoot":"","sources":["../../../src/rendering/visual-register-culler.ts"],"names":[],"mappings":"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"}
@@ -8,6 +8,7 @@ var entity_utils_1 = require("../utils/entity-utils");
8
8
  var entity_render_engine_1 = require("./entity-render-engine");
9
9
  var relation_render_engine_1 = require("./relation-render-engine");
10
10
  var entity_label_1 = require("../rendering/render-managers/common/entity-label");
11
+ var visual_register_culler_1 = require("./visual-register-culler");
11
12
  /**
12
13
  * Returns if a given visual is alive and in the scene.
13
14
  * @param viewer
@@ -62,6 +63,13 @@ function removeEntity(viewer, visual) {
62
63
  }
63
64
  }
64
65
  function updateCEntityShow(viewer, visual, show, ignoreParent) {
66
+ if (show) {
67
+ // Culling is controlled by "visual-register-culler.ts".
68
+ // When an object is unculled then the 'updateEntityShow' function is re-called to reveal it and related objects.
69
+ // A sub-object can be culled while the siblings are not.
70
+ var isCulled = show ? visual_register_culler_1.VisualRegisterCuller.IsCulled(viewer, visual) : true;
71
+ show = !isCulled;
72
+ }
65
73
  if (visual._parentEntity && !ignoreParent) {
66
74
  updateCEntityShow(viewer, visual._parentEntity, show, false);
67
75
  }
@@ -352,6 +360,9 @@ var VisualsRegister;
352
360
  this.labelledEntityIds = [];
353
361
  this.viewer = params.viewer;
354
362
  this.apiGetters = params.apiGetters;
363
+ this.cameraCullerDispose = visual_register_culler_1.VisualRegisterCuller.Monitor({
364
+ register: this
365
+ });
355
366
  }
356
367
  Object.defineProperty(Register.prototype, "Id", {
357
368
  get: function () {
@@ -384,6 +395,13 @@ var VisualsRegister;
384
395
  enumerable: false,
385
396
  configurable: true
386
397
  });
398
+ Register.prototype.Dispose = function () {
399
+ var _a;
400
+ (_a = this.cameraCullerDispose) === null || _a === void 0 ? void 0 : _a.call(this, {
401
+ uncull: false
402
+ });
403
+ this.cameraCullerDispose = null;
404
+ };
387
405
  Register.prototype.ForceUpdate = function (params) {
388
406
  var entityIds = params.entityIds;
389
407
  for (var i = 0; i < entityIds.length; i++) {
@@ -1 +1 @@
1
- {"version":3,"file":"visuals-register.js","sourceRoot":"","sources":["../../../src/rendering/visuals-register.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"visuals-register.js","sourceRoot":"","sources":["../../../src/rendering/visuals-register.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.6";
32
+ export declare const VERSION = "2.9.7";
@@ -37,6 +37,13 @@ export declare namespace MenuItemManager {
37
37
  visualsRegister?: VisualsRegister.Register;
38
38
  getters: ApiGetters;
39
39
  });
40
+ /**
41
+ * Disposes the menu item manager.
42
+ * This will dispose all render managers and unregister all menu items.
43
+ */
44
+ Dispose(params?: {
45
+ disposeRegister?: boolean;
46
+ }): void;
40
47
  /**
41
48
  * Renders a given menu item and all its children.
42
49
  * Will return the enabled item id.
@@ -0,0 +1,17 @@
1
+ import { VisualsRegister } from "./visuals-register";
2
+ import * as Cesium from "cesium";
3
+ export declare namespace VisualRegisterCuller {
4
+ const VISUAL_CULL_KEY: unique symbol;
5
+ interface IMonitorDispose {
6
+ uncull?: boolean;
7
+ }
8
+ /**
9
+ * Will monitor the visuals within a visual register and cull ones that are out of the viewport.
10
+ * @param params
11
+ * @returns a dispose function.
12
+ */
13
+ function Monitor(params: {
14
+ register: VisualsRegister.Register;
15
+ }): (params: IMonitorDispose) => void;
16
+ function IsCulled(viewer: Cesium.Viewer, visual: VisualsRegister.Visual): any;
17
+ }
@@ -58,10 +58,12 @@ export declare namespace VisualsRegister {
58
58
  private opacity;
59
59
  private selectionColor;
60
60
  private labelledEntityIds;
61
+ private cameraCullerDispose;
61
62
  constructor(params: {
62
63
  viewer: Cesium.Viewer;
63
64
  apiGetters?: ApiGetters;
64
65
  });
66
+ Dispose(): void;
65
67
  ForceUpdate(params: {
66
68
  entityIds: string[];
67
69
  }): void;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-cesium",
3
- "version": "2.9.6",
3
+ "version": "2.9.7",
4
4
  "description": "",
5
5
  "keywords": [],
6
6
  "main": "dist/bruce-cesium.umd.js",