bruce-cesium 0.3.1 → 0.3.4

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 (78) hide show
  1. package/README.md +0 -0
  2. package/dist/bruce-cesium.es5.js +16 -9
  3. package/dist/bruce-cesium.es5.js.map +1 -1
  4. package/dist/bruce-cesium.umd.js +15 -8
  5. package/dist/bruce-cesium.umd.js.map +1 -1
  6. package/dist/lib/bruce-cesium.js +30 -30
  7. package/dist/lib/bruce-cesium.js.map +0 -0
  8. package/dist/lib/rendering/entity-render-engine.js +848 -848
  9. package/dist/lib/rendering/entity-render-engine.js.map +0 -0
  10. package/dist/lib/rendering/menu-item-manager.js +252 -249
  11. package/dist/lib/rendering/menu-item-manager.js.map +1 -1
  12. package/dist/lib/rendering/render-addons/measure-addon.js +186 -186
  13. package/dist/lib/rendering/render-addons/measure-addon.js.map +0 -0
  14. package/dist/lib/rendering/render-addons/render-addon.js +2 -2
  15. package/dist/lib/rendering/render-addons/render-addon.js.map +0 -0
  16. package/dist/lib/rendering/render-helper.js +279 -279
  17. package/dist/lib/rendering/render-helper.js.map +0 -0
  18. package/dist/lib/rendering/render-managers/common/shared-getters.js +31 -31
  19. package/dist/lib/rendering/render-managers/common/shared-getters.js.map +0 -0
  20. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +144 -144
  21. package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +0 -0
  22. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +141 -141
  23. package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js.map +0 -0
  24. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +232 -232
  25. package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +0 -0
  26. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +138 -138
  27. package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +0 -0
  28. package/dist/lib/rendering/render-managers/render-manager.js +50 -50
  29. package/dist/lib/rendering/render-managers/render-manager.js.map +0 -0
  30. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +230 -230
  31. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +0 -0
  32. package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js +320 -320
  33. package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js.map +0 -0
  34. package/dist/lib/rendering/tile-render-engine.js +542 -542
  35. package/dist/lib/rendering/tile-render-engine.js.map +0 -0
  36. package/dist/lib/rendering/tileset-render-engine.js +472 -472
  37. package/dist/lib/rendering/tileset-render-engine.js.map +0 -0
  38. package/dist/lib/rendering/view-render-engine.js +138 -138
  39. package/dist/lib/rendering/view-render-engine.js.map +0 -0
  40. package/dist/lib/rendering/visuals-register.js +394 -394
  41. package/dist/lib/rendering/visuals-register.js.map +0 -0
  42. package/dist/lib/utils/drawing-utils.js +42 -42
  43. package/dist/lib/utils/drawing-utils.js.map +0 -0
  44. package/dist/lib/utils/entity-utils.js +99 -99
  45. package/dist/lib/utils/entity-utils.js.map +0 -0
  46. package/dist/lib/utils/measure-utils.js +34 -34
  47. package/dist/lib/utils/measure-utils.js.map +0 -0
  48. package/dist/lib/utils/view-utils.js +34 -34
  49. package/dist/lib/utils/view-utils.js.map +0 -0
  50. package/dist/lib/viewer/cesium-view-monitor.js +231 -227
  51. package/dist/lib/viewer/cesium-view-monitor.js.map +1 -1
  52. package/dist/lib/viewer/viewer-utils.js +85 -85
  53. package/dist/lib/viewer/viewer-utils.js.map +0 -0
  54. package/dist/types/bruce-cesium.d.ts +0 -0
  55. package/dist/types/rendering/entity-render-engine.d.ts +0 -0
  56. package/dist/types/rendering/menu-item-manager.d.ts +4 -2
  57. package/dist/types/rendering/render-addons/measure-addon.d.ts +0 -0
  58. package/dist/types/rendering/render-addons/render-addon.d.ts +0 -0
  59. package/dist/types/rendering/render-helper.d.ts +0 -0
  60. package/dist/types/rendering/render-managers/common/shared-getters.d.ts +0 -0
  61. package/dist/types/rendering/render-managers/entities/entities-ids-render-manager.d.ts +0 -0
  62. package/dist/types/rendering/render-managers/entities/entities-loaded-render-manager.d.ts +0 -0
  63. package/dist/types/rendering/render-managers/entities/entities-render-manager.d.ts +0 -0
  64. package/dist/types/rendering/render-managers/entities/entity-render-manager.d.ts +0 -0
  65. package/dist/types/rendering/render-managers/render-manager.d.ts +0 -0
  66. package/dist/types/rendering/render-managers/tilesets/tileset-cad-render-manager.d.ts +0 -0
  67. package/dist/types/rendering/render-managers/tilesets/tileset-osm-render-manager.d.ts +0 -0
  68. package/dist/types/rendering/tile-render-engine.d.ts +0 -0
  69. package/dist/types/rendering/tileset-render-engine.d.ts +0 -0
  70. package/dist/types/rendering/view-render-engine.d.ts +0 -0
  71. package/dist/types/rendering/visuals-register.d.ts +0 -0
  72. package/dist/types/utils/drawing-utils.d.ts +0 -0
  73. package/dist/types/utils/entity-utils.d.ts +0 -0
  74. package/dist/types/utils/measure-utils.d.ts +0 -0
  75. package/dist/types/utils/view-utils.d.ts +0 -0
  76. package/dist/types/viewer/cesium-view-monitor.d.ts +0 -0
  77. package/dist/types/viewer/viewer-utils.d.ts +0 -0
  78. package/package.json +73 -73
@@ -1,228 +1,232 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.CesiumViewMonitor = void 0;
4
- var bruce_models_1 = require("bruce-models");
5
- var Cesium = require("cesium");
6
- var TIME_LAG = 300;
7
- var POSITION_CHECK_TIMER = 950;
8
- var DEFAULT_GROUNDED_HEIGHT = 300;
9
- var MINIMUM_VIEW_AREA_SIZE_DEGREES = 0.01;
10
- var NET_STEP_PERCENT = 5;
11
- var BORDER_STEPS = 3;
12
- var ESearchStatus;
13
- (function (ESearchStatus) {
14
- ESearchStatus[ESearchStatus["LocationFound"] = 1] = "LocationFound";
15
- ESearchStatus[ESearchStatus["LocationChanged"] = 2] = "LocationChanged";
16
- ESearchStatus[ESearchStatus["LocationMissing"] = 3] = "LocationMissing";
17
- })(ESearchStatus || (ESearchStatus = {}));
18
- function netScanViewForBoundaries(viewer) {
19
- var maxLong = -2 * Math.PI;
20
- var minLong = 2 * Math.PI;
21
- var maxLat = -2 * Math.PI;
22
- var minLat = 2 * Math.PI;
23
- var found = 0;
24
- var updateMinMaxForPoint = function (stepX, stepY) {
25
- var x = Math.round(0 + (viewer.container.clientWidth / 100) * (stepX * NET_STEP_PERCENT));
26
- var y = Math.round(0 + (viewer.container.clientHeight / 100) * (stepY * NET_STEP_PERCENT));
27
- var winPos = new Cesium.Cartesian2(x, y);
28
- try {
29
- var intersection = getAdjustedGroundIntersectionOfCameraRay(viewer, winPos);
30
- if (intersection) {
31
- var point = Cesium.Cartographic.fromCartesian(intersection, viewer.scene.globe.ellipsoid);
32
- maxLong = Math.max(maxLong, point.longitude);
33
- maxLat = Math.max(maxLat, point.latitude);
34
- minLong = Math.min(minLong, point.longitude);
35
- minLat = Math.min(minLat, point.latitude);
36
- found++;
37
- }
38
- }
39
- catch (_a) {
40
- }
41
- };
42
- // Outer circle.
43
- updateMinMaxForPoint(BORDER_STEPS, BORDER_STEPS);
44
- updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS, BORDER_STEPS);
45
- updateMinMaxForPoint(BORDER_STEPS, (100 / NET_STEP_PERCENT) - BORDER_STEPS);
46
- updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS, (100 / NET_STEP_PERCENT) - BORDER_STEPS);
47
- // Inner circle.
48
- updateMinMaxForPoint(BORDER_STEPS * 2, BORDER_STEPS * 2);
49
- updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS * 2, BORDER_STEPS * 2);
50
- updateMinMaxForPoint(BORDER_STEPS * 2, (100 / NET_STEP_PERCENT) - BORDER_STEPS * 2);
51
- updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS * 2, (100 / NET_STEP_PERCENT) - BORDER_STEPS * 2);
52
- if (found > 0) {
53
- var viewRect = {
54
- east: maxLong,
55
- west: minLong,
56
- north: maxLat,
57
- south: minLat
58
- };
59
- return viewRect;
60
- }
61
- return null;
62
- }
63
- function getAdjustedGroundIntersectionOfCameraRay(viewer, screenPos) {
64
- var ray = viewer.camera.getPickRay(screenPos);
65
- var intersection = ray ? viewer.scene.globe.pick(ray, viewer.scene) : null;
66
- if (intersection) {
67
- return intersection;
68
- }
69
- return null;
70
- }
71
- function areBoundsEqual(a, b) {
72
- return a.north == b.north && a.south == b.south && a.east == b.east && a.west == b.west;
73
- }
74
- function arePosEqual(a, b) {
75
- return a.latitude == b.latitude && a.longitude == b.longitude;
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.viewer = viewer;
88
- this.tryEmitUpdate();
89
- this.checkInterval = setInterval(function () {
90
- _this.updateQueue();
91
- }, POSITION_CHECK_TIMER);
92
- }
93
- Object.defineProperty(CesiumViewMonitor.prototype, "Disposed", {
94
- get: function () {
95
- return this.disposed;
96
- },
97
- enumerable: false,
98
- configurable: true
99
- });
100
- CesiumViewMonitor.prototype.Updated = function () {
101
- if (!this.updatedEvent) {
102
- this.updatedEvent = new bruce_models_1.BruceEvent();
103
- }
104
- return this.updatedEvent;
105
- };
106
- CesiumViewMonitor.prototype.GetBounds = function () {
107
- return this.bounds;
108
- };
109
- CesiumViewMonitor.prototype.GetTarget = function () {
110
- return this.target;
111
- };
112
- CesiumViewMonitor.prototype.DoUpdate = function () {
113
- this.tryEmitUpdate();
114
- };
115
- CesiumViewMonitor.prototype.Dispose = function () {
116
- if (this.disposed) {
117
- return;
118
- }
119
- this.disposed = true;
120
- clearInterval(this.checkInterval);
121
- };
122
- CesiumViewMonitor.prototype.tryDoUpdate = function () {
123
- var _a;
124
- var viewRect = null;
125
- var center = null;
126
- var camera = this.viewer.camera;
127
- var terrainHeight = this.viewer.scene.globe.getHeight(camera.positionCartographic);
128
- var cameraPosition = this.viewer.camera.positionCartographic;
129
- // We are almost at the ground, screw horizon, just load around.
130
- if (terrainHeight && ((cameraPosition.height - terrainHeight) < DEFAULT_GROUNDED_HEIGHT)) {
131
- // View area calculation.
132
- viewRect = {};
133
- var viewRectRad = netScanViewForBoundaries(this.viewer);
134
- if (viewRectRad &&
135
- viewRectRad.east &&
136
- viewRectRad.west &&
137
- viewRectRad.north &&
138
- viewRectRad.south) {
139
- viewRect.east = Cesium.Math.toDegrees(Math.max(viewRectRad.east, cameraPosition.longitude));
140
- viewRect.west = Cesium.Math.toDegrees(Math.min(viewRectRad.west, cameraPosition.longitude));
141
- viewRect.south = Cesium.Math.toDegrees(Math.min(viewRectRad.south, cameraPosition.latitude));
142
- viewRect.north = Cesium.Math.toDegrees(Math.max(viewRectRad.north, cameraPosition.latitude));
143
- }
144
- else {
145
- viewRect.east = cameraPosition.longitude;
146
- viewRect.west = cameraPosition.longitude;
147
- viewRect.south = cameraPosition.latitude;
148
- viewRect.north = cameraPosition.latitude;
149
- }
150
- center = {};
151
- center.latitude = Cesium.Math.toDegrees(camera.positionCartographic.latitude);
152
- center.longitude = Cesium.Math.toDegrees(camera.positionCartographic.longitude);
153
- }
154
- else {
155
- // View area calculation.
156
- var windowPosition = new Cesium.Cartesian2(this.viewer.container.clientWidth / 2, this.viewer.container.clientHeight / 2);
157
- var intersection = getAdjustedGroundIntersectionOfCameraRay(this.viewer, windowPosition);
158
- var point = null;
159
- if (intersection) {
160
- point = Cesium.Cartographic.fromCartesian(intersection, this.viewer.scene.globe.ellipsoid);
161
- }
162
- if (point) {
163
- center = {};
164
- center.latitude = Cesium.Math.toDegrees(point.latitude);
165
- center.longitude = Cesium.Math.toDegrees(point.longitude);
166
- var viewRectRad = netScanViewForBoundaries(this.viewer);
167
- if (viewRectRad) {
168
- viewRect = {};
169
- viewRect.east = Cesium.Math.toDegrees(viewRectRad.east);
170
- viewRect.west = Cesium.Math.toDegrees(viewRectRad.west);
171
- viewRect.south = Cesium.Math.toDegrees(viewRectRad.south);
172
- viewRect.north = Cesium.Math.toDegrees(viewRectRad.north);
173
- }
174
- }
175
- }
176
- // Minimal field of view.
177
- if (viewRect) {
178
- var centerLong = (viewRect.east + viewRect.west) / 2;
179
- var centerLat = (viewRect.north + viewRect.south) / 2;
180
- viewRect.east = Math.max(viewRect.east, centerLong + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
181
- viewRect.west = Math.min(viewRect.west, centerLong - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
182
- viewRect.south = Math.min(viewRect.south, centerLat - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
183
- viewRect.north = Math.max(viewRect.north, centerLat + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
184
- viewRect.alt = (_a = this.viewer.scene.camera.positionCartographic) === null || _a === void 0 ? void 0 : _a.height;
185
- }
186
- if (center && viewRect) {
187
- if ((!this.target || (this.target && !arePosEqual(this.target, center))) ||
188
- (!this.bounds || (this.bounds && !areBoundsEqual(this.bounds, viewRect)))) {
189
- this.target = center;
190
- this.bounds = viewRect;
191
- return ESearchStatus.LocationChanged;
192
- }
193
- return ESearchStatus.LocationFound;
194
- }
195
- return ESearchStatus.LocationMissing;
196
- };
197
- CesiumViewMonitor.prototype.tryEmitUpdate = function () {
198
- var _a;
199
- var searchResult = this.tryDoUpdate();
200
- if (searchResult == ESearchStatus.LocationChanged) {
201
- var interest = {
202
- bounds: this.bounds,
203
- target: this.target
204
- };
205
- (_a = this.updatedEvent) === null || _a === void 0 ? void 0 : _a.Trigger(interest);
206
- }
207
- else if (searchResult == ESearchStatus.LocationMissing) {
208
- this.updateQueue();
209
- }
210
- };
211
- CesiumViewMonitor.prototype.queuePosition = function (lag) {
212
- var _this = this;
213
- if (this.pendingTimeout) {
214
- clearTimeout(this.pendingTimeout);
215
- }
216
- this.pendingTimeout = setTimeout(function () {
217
- if (!_this.disposed) {
218
- _this.tryEmitUpdate();
219
- }
220
- }, lag);
221
- };
222
- CesiumViewMonitor.prototype.updateQueue = function () {
223
- this.queuePosition(TIME_LAG);
224
- };
225
- return CesiumViewMonitor;
226
- }());
227
- exports.CesiumViewMonitor = CesiumViewMonitor;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.CesiumViewMonitor = void 0;
4
+ var bruce_models_1 = require("bruce-models");
5
+ var Cesium = require("cesium");
6
+ var TIME_LAG = 300;
7
+ var POSITION_CHECK_TIMER = 950;
8
+ var DEFAULT_GROUNDED_HEIGHT = 300;
9
+ var MINIMUM_VIEW_AREA_SIZE_DEGREES = 0.01;
10
+ var NET_STEP_PERCENT = 5;
11
+ var BORDER_STEPS = 3;
12
+ var ESearchStatus;
13
+ (function (ESearchStatus) {
14
+ ESearchStatus[ESearchStatus["LocationFound"] = 1] = "LocationFound";
15
+ ESearchStatus[ESearchStatus["LocationChanged"] = 2] = "LocationChanged";
16
+ ESearchStatus[ESearchStatus["LocationMissing"] = 3] = "LocationMissing";
17
+ })(ESearchStatus || (ESearchStatus = {}));
18
+ function netScanViewForBoundaries(viewer) {
19
+ var maxLong = -2 * Math.PI;
20
+ var minLong = 2 * Math.PI;
21
+ var maxLat = -2 * Math.PI;
22
+ var minLat = 2 * Math.PI;
23
+ var found = 0;
24
+ var updateMinMaxForPoint = function (stepX, stepY) {
25
+ var x = Math.round(0 + (viewer.container.clientWidth / 100) * (stepX * NET_STEP_PERCENT));
26
+ var y = Math.round(0 + (viewer.container.clientHeight / 100) * (stepY * NET_STEP_PERCENT));
27
+ var winPos = new Cesium.Cartesian2(x, y);
28
+ try {
29
+ var intersection = getAdjustedGroundIntersectionOfCameraRay(viewer, winPos);
30
+ if (intersection) {
31
+ var point = Cesium.Cartographic.fromCartesian(intersection, viewer.scene.globe.ellipsoid);
32
+ maxLong = Math.max(maxLong, point.longitude);
33
+ maxLat = Math.max(maxLat, point.latitude);
34
+ minLong = Math.min(minLong, point.longitude);
35
+ minLat = Math.min(minLat, point.latitude);
36
+ found++;
37
+ }
38
+ }
39
+ catch (_a) {
40
+ }
41
+ };
42
+ // Outer circle.
43
+ updateMinMaxForPoint(BORDER_STEPS, BORDER_STEPS);
44
+ updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS, BORDER_STEPS);
45
+ updateMinMaxForPoint(BORDER_STEPS, (100 / NET_STEP_PERCENT) - BORDER_STEPS);
46
+ updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS, (100 / NET_STEP_PERCENT) - BORDER_STEPS);
47
+ // Inner circle.
48
+ updateMinMaxForPoint(BORDER_STEPS * 2, BORDER_STEPS * 2);
49
+ updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS * 2, BORDER_STEPS * 2);
50
+ updateMinMaxForPoint(BORDER_STEPS * 2, (100 / NET_STEP_PERCENT) - BORDER_STEPS * 2);
51
+ updateMinMaxForPoint((100 / NET_STEP_PERCENT) - BORDER_STEPS * 2, (100 / NET_STEP_PERCENT) - BORDER_STEPS * 2);
52
+ if (found > 0) {
53
+ var viewRect = {
54
+ east: maxLong,
55
+ west: minLong,
56
+ north: maxLat,
57
+ south: minLat
58
+ };
59
+ return viewRect;
60
+ }
61
+ return null;
62
+ }
63
+ function getAdjustedGroundIntersectionOfCameraRay(viewer, screenPos) {
64
+ var ray = viewer.camera.getPickRay(screenPos);
65
+ var intersection = ray ? viewer.scene.globe.pick(ray, viewer.scene) : null;
66
+ if (intersection) {
67
+ return intersection;
68
+ }
69
+ return null;
70
+ }
71
+ function areBoundsEqual(a, b) {
72
+ return a.north == b.north && a.south == b.south && a.east == b.east && a.west == b.west;
73
+ }
74
+ function arePosEqual(a, b) {
75
+ return a.latitude == b.latitude && a.longitude == b.longitude;
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.viewer = viewer;
88
+ this.tryEmitUpdate();
89
+ this.checkInterval = setInterval(function () {
90
+ _this.updateQueue();
91
+ }, POSITION_CHECK_TIMER);
92
+ }
93
+ Object.defineProperty(CesiumViewMonitor.prototype, "Disposed", {
94
+ get: function () {
95
+ return this.disposed;
96
+ },
97
+ enumerable: false,
98
+ configurable: true
99
+ });
100
+ CesiumViewMonitor.prototype.Updated = function () {
101
+ if (!this.updatedEvent) {
102
+ this.updatedEvent = new bruce_models_1.BruceEvent();
103
+ }
104
+ return this.updatedEvent;
105
+ };
106
+ CesiumViewMonitor.prototype.GetBounds = function () {
107
+ return this.bounds;
108
+ };
109
+ CesiumViewMonitor.prototype.GetTarget = function () {
110
+ return this.target;
111
+ };
112
+ CesiumViewMonitor.prototype.DoUpdate = function () {
113
+ this.tryEmitUpdate();
114
+ };
115
+ CesiumViewMonitor.prototype.Dispose = function () {
116
+ if (this.disposed) {
117
+ return;
118
+ }
119
+ this.disposed = true;
120
+ clearInterval(this.checkInterval);
121
+ };
122
+ CesiumViewMonitor.prototype.tryDoUpdate = function () {
123
+ var _a;
124
+ if (!this.viewer || this.viewer.isDestroyed()) {
125
+ this.Dispose();
126
+ return ESearchStatus.LocationMissing;
127
+ }
128
+ var viewRect = null;
129
+ var center = null;
130
+ var camera = this.viewer.camera;
131
+ var terrainHeight = this.viewer.scene.globe.getHeight(camera.positionCartographic);
132
+ var cameraPosition = this.viewer.camera.positionCartographic;
133
+ // We are almost at the ground, screw horizon, just load around.
134
+ if (terrainHeight && ((cameraPosition.height - terrainHeight) < DEFAULT_GROUNDED_HEIGHT)) {
135
+ // View area calculation.
136
+ viewRect = {};
137
+ var viewRectRad = netScanViewForBoundaries(this.viewer);
138
+ if (viewRectRad &&
139
+ viewRectRad.east &&
140
+ viewRectRad.west &&
141
+ viewRectRad.north &&
142
+ viewRectRad.south) {
143
+ viewRect.east = Cesium.Math.toDegrees(Math.max(viewRectRad.east, cameraPosition.longitude));
144
+ viewRect.west = Cesium.Math.toDegrees(Math.min(viewRectRad.west, cameraPosition.longitude));
145
+ viewRect.south = Cesium.Math.toDegrees(Math.min(viewRectRad.south, cameraPosition.latitude));
146
+ viewRect.north = Cesium.Math.toDegrees(Math.max(viewRectRad.north, cameraPosition.latitude));
147
+ }
148
+ else {
149
+ viewRect.east = cameraPosition.longitude;
150
+ viewRect.west = cameraPosition.longitude;
151
+ viewRect.south = cameraPosition.latitude;
152
+ viewRect.north = cameraPosition.latitude;
153
+ }
154
+ center = {};
155
+ center.latitude = Cesium.Math.toDegrees(camera.positionCartographic.latitude);
156
+ center.longitude = Cesium.Math.toDegrees(camera.positionCartographic.longitude);
157
+ }
158
+ else {
159
+ // View area calculation.
160
+ var windowPosition = new Cesium.Cartesian2(this.viewer.container.clientWidth / 2, this.viewer.container.clientHeight / 2);
161
+ var intersection = getAdjustedGroundIntersectionOfCameraRay(this.viewer, windowPosition);
162
+ var point = null;
163
+ if (intersection) {
164
+ point = Cesium.Cartographic.fromCartesian(intersection, this.viewer.scene.globe.ellipsoid);
165
+ }
166
+ if (point) {
167
+ center = {};
168
+ center.latitude = Cesium.Math.toDegrees(point.latitude);
169
+ center.longitude = Cesium.Math.toDegrees(point.longitude);
170
+ var viewRectRad = netScanViewForBoundaries(this.viewer);
171
+ if (viewRectRad) {
172
+ viewRect = {};
173
+ viewRect.east = Cesium.Math.toDegrees(viewRectRad.east);
174
+ viewRect.west = Cesium.Math.toDegrees(viewRectRad.west);
175
+ viewRect.south = Cesium.Math.toDegrees(viewRectRad.south);
176
+ viewRect.north = Cesium.Math.toDegrees(viewRectRad.north);
177
+ }
178
+ }
179
+ }
180
+ // Minimal field of view.
181
+ if (viewRect) {
182
+ var centerLong = (viewRect.east + viewRect.west) / 2;
183
+ var centerLat = (viewRect.north + viewRect.south) / 2;
184
+ viewRect.east = Math.max(viewRect.east, centerLong + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
185
+ viewRect.west = Math.min(viewRect.west, centerLong - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
186
+ viewRect.south = Math.min(viewRect.south, centerLat - (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
187
+ viewRect.north = Math.max(viewRect.north, centerLat + (MINIMUM_VIEW_AREA_SIZE_DEGREES / 2));
188
+ viewRect.alt = (_a = this.viewer.scene.camera.positionCartographic) === null || _a === void 0 ? void 0 : _a.height;
189
+ }
190
+ if (center && viewRect) {
191
+ if ((!this.target || (this.target && !arePosEqual(this.target, center))) ||
192
+ (!this.bounds || (this.bounds && !areBoundsEqual(this.bounds, viewRect)))) {
193
+ this.target = center;
194
+ this.bounds = viewRect;
195
+ return ESearchStatus.LocationChanged;
196
+ }
197
+ return ESearchStatus.LocationFound;
198
+ }
199
+ return ESearchStatus.LocationMissing;
200
+ };
201
+ CesiumViewMonitor.prototype.tryEmitUpdate = function () {
202
+ var _a;
203
+ var searchResult = this.tryDoUpdate();
204
+ if (searchResult == ESearchStatus.LocationChanged) {
205
+ var interest = {
206
+ bounds: this.bounds,
207
+ target: this.target
208
+ };
209
+ (_a = this.updatedEvent) === null || _a === void 0 ? void 0 : _a.Trigger(interest);
210
+ }
211
+ else if (searchResult == ESearchStatus.LocationMissing) {
212
+ this.updateQueue();
213
+ }
214
+ };
215
+ CesiumViewMonitor.prototype.queuePosition = function (lag) {
216
+ var _this = this;
217
+ if (this.pendingTimeout) {
218
+ clearTimeout(this.pendingTimeout);
219
+ }
220
+ this.pendingTimeout = setTimeout(function () {
221
+ if (!_this.disposed) {
222
+ _this.tryEmitUpdate();
223
+ }
224
+ }, lag);
225
+ };
226
+ CesiumViewMonitor.prototype.updateQueue = function () {
227
+ this.queuePosition(TIME_LAG);
228
+ };
229
+ return CesiumViewMonitor;
230
+ }());
231
+ exports.CesiumViewMonitor = CesiumViewMonitor;
228
232
  //# 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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"}