bruce-cesium 3.0.3 → 3.0.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.
- package/dist/bruce-cesium.es5.js +270 -37
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +269 -36
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/bruce-cesium.js +1 -1
- package/dist/lib/rendering/entity-render-engine.js +69 -1
- package/dist/lib/rendering/entity-render-engine.js.map +1 -1
- package/dist/lib/rendering/visual-register-culler.js +219 -34
- package/dist/lib/rendering/visual-register-culler.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +1 -1
- package/dist/types/rendering/entity-render-engine.d.ts +1 -0
- package/package.json +1 -1
|
@@ -5,8 +5,88 @@ var bruce_models_1 = require("bruce-models");
|
|
|
5
5
|
var Cesium = require("cesium");
|
|
6
6
|
var entity_utils_1 = require("../utils/entity-utils");
|
|
7
7
|
var view_utils_1 = require("../utils/view-utils");
|
|
8
|
-
|
|
9
|
-
var
|
|
8
|
+
var DEBUG_MODE = false;
|
|
9
|
+
var MODEL_MIN_RADIUS = 1;
|
|
10
|
+
var POINT_MIN_RADIUS = 15;
|
|
11
|
+
// If a shape has more than this amount of points, we'll avoid checking it because it will take too long.
|
|
12
|
+
// We will put responsibility on the bookmark creator to view shapes they can see.
|
|
13
|
+
var DO_NOT_CULL_AT_LEN_POINTS = 5000;
|
|
14
|
+
// Returns terrain height at a given position.
|
|
15
|
+
// This will cache the results based on the terrain provider and position.
|
|
16
|
+
var _terrainCache = new bruce_models_1.LRUCache(1000);
|
|
17
|
+
// Positions within this tolerance from each-other will be re-used.
|
|
18
|
+
var TERRAIN_HEIGHT_TOLERANCE = 500;
|
|
19
|
+
var getTerrainOffset = function (viewer, pos3d) {
|
|
20
|
+
var terrain = view_utils_1.ViewUtils.GatherTerrainTile({
|
|
21
|
+
viewer: viewer
|
|
22
|
+
}).terrain;
|
|
23
|
+
if (!terrain || terrain.tilesetId == bruce_models_1.ProjectViewTile.EDefaultTerrain.FlatTerrain) {
|
|
24
|
+
return 0;
|
|
25
|
+
}
|
|
26
|
+
var terrainId = terrain.tilesetId;
|
|
27
|
+
// Check for existing values within TOLERANCE distance.
|
|
28
|
+
var keys = Array.from(_terrainCache.Entries());
|
|
29
|
+
for (var i = 0; i < keys.length; i++) {
|
|
30
|
+
var _a = keys[i], key_1 = _a[0], offset_1 = _a[1];
|
|
31
|
+
var _b = key_1.split("_"), terrainId2 = _b[0], x = _b[1], y = _b[2], z = _b[3];
|
|
32
|
+
if (terrainId2 != terrainId) {
|
|
33
|
+
continue;
|
|
34
|
+
}
|
|
35
|
+
var pos3d2 = new Cesium.Cartesian3(parseFloat(x), parseFloat(y), parseFloat(z));
|
|
36
|
+
var distance = Cesium.Cartesian3.distance(pos3d, pos3d2);
|
|
37
|
+
if (distance < TERRAIN_HEIGHT_TOLERANCE) {
|
|
38
|
+
return offset_1;
|
|
39
|
+
}
|
|
40
|
+
}
|
|
41
|
+
var key = terrainId + "_" + pos3d.x + "_" + pos3d.y + "_" + pos3d.z;
|
|
42
|
+
var offset = _terrainCache.Get(key);
|
|
43
|
+
if (offset == null) {
|
|
44
|
+
var carto = Cesium.Cartographic.fromCartesian(pos3d);
|
|
45
|
+
var height = 0;
|
|
46
|
+
try {
|
|
47
|
+
height = viewer.scene.globe.getHeight(carto);
|
|
48
|
+
}
|
|
49
|
+
catch (e) {
|
|
50
|
+
if (DEBUG_MODE) {
|
|
51
|
+
console.warn("Failed to get terrain height.", e);
|
|
52
|
+
}
|
|
53
|
+
// Likely out of rendered area.
|
|
54
|
+
// This means it's not our problem since the user isn't looking there :)
|
|
55
|
+
}
|
|
56
|
+
offset = height;
|
|
57
|
+
_terrainCache.Set(key, offset);
|
|
58
|
+
}
|
|
59
|
+
return offset;
|
|
60
|
+
};
|
|
61
|
+
/**
|
|
62
|
+
* Converts given pos3d into a an absolute position.
|
|
63
|
+
* This means either setting it to terrain height or adding the height offset.
|
|
64
|
+
* @param viewer
|
|
65
|
+
* @param heightRef
|
|
66
|
+
* @param pos3d
|
|
67
|
+
* @returns
|
|
68
|
+
*/
|
|
69
|
+
var adjustPos3d = function (viewer, heightRef, pos3d) {
|
|
70
|
+
if (heightRef == Cesium.HeightReference.NONE) {
|
|
71
|
+
return pos3d;
|
|
72
|
+
}
|
|
73
|
+
var offset = getTerrainOffset(viewer, pos3d);
|
|
74
|
+
if (!offset) {
|
|
75
|
+
return pos3d;
|
|
76
|
+
}
|
|
77
|
+
var carto = Cesium.Cartographic.fromCartesian(pos3d);
|
|
78
|
+
if (heightRef == Cesium.HeightReference.CLAMP_TO_GROUND) {
|
|
79
|
+
carto.height = offset;
|
|
80
|
+
}
|
|
81
|
+
else {
|
|
82
|
+
carto.height += offset;
|
|
83
|
+
}
|
|
84
|
+
var newPos3d = Cesium.Cartographic.toCartesian(carto);
|
|
85
|
+
if (!(newPos3d === null || newPos3d === void 0 ? void 0 : newPos3d.x)) {
|
|
86
|
+
return pos3d;
|
|
87
|
+
}
|
|
88
|
+
return newPos3d;
|
|
89
|
+
};
|
|
10
90
|
function getValue(viewer, obj) {
|
|
11
91
|
if (obj === null || obj === void 0 ? void 0 : obj.getValue) {
|
|
12
92
|
return obj.getValue(viewer.scene.lastRenderTime);
|
|
@@ -22,7 +102,7 @@ function isFlatTerrain(viewer) {
|
|
|
22
102
|
viewer: viewer
|
|
23
103
|
}).terrain) === null || _a === void 0 ? void 0 : _a.tilesetId) == bruce_models_1.ProjectViewTile.EDefaultTerrain.FlatTerrain;
|
|
24
104
|
}
|
|
25
|
-
var boundingSphereCache =
|
|
105
|
+
var boundingSphereCache = new bruce_models_1.LRUCache(100000);
|
|
26
106
|
function getPositionsFromEntity(viewer, entity) {
|
|
27
107
|
var positions = [];
|
|
28
108
|
var heightRef;
|
|
@@ -31,59 +111,94 @@ function getPositionsFromEntity(viewer, entity) {
|
|
|
31
111
|
if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
|
|
32
112
|
return null;
|
|
33
113
|
}
|
|
34
|
-
positions.push(pos3d);
|
|
35
114
|
heightRef = getValue(viewer, entity.billboard.heightReference);
|
|
115
|
+
pos3d = adjustPos3d(viewer, heightRef, pos3d);
|
|
116
|
+
positions.push(pos3d);
|
|
36
117
|
}
|
|
37
118
|
else if (entity.polyline) {
|
|
38
|
-
|
|
119
|
+
var posses = getValue(viewer, entity.polyline.positions);
|
|
120
|
+
if (!(posses === null || posses === void 0 ? void 0 : posses.length) || posses.length >= DO_NOT_CULL_AT_LEN_POINTS) {
|
|
121
|
+
return null;
|
|
122
|
+
}
|
|
123
|
+
// Get the first, last, and every forth point.
|
|
124
|
+
// This is to reduce the amount of points we need to check.
|
|
125
|
+
if (posses.length > 10) {
|
|
126
|
+
var first = posses[0];
|
|
127
|
+
var last = posses[posses.length - 1];
|
|
128
|
+
var everyForth = posses.filter(function (_, index) { return index % 4 == 0; });
|
|
129
|
+
posses = [first, last].concat(everyForth);
|
|
130
|
+
}
|
|
39
131
|
heightRef = getValue(viewer, entity.polyline.clampToGround) == false ? Cesium.HeightReference.NONE : Cesium.HeightReference.CLAMP_TO_GROUND;
|
|
132
|
+
for (var i = 0; i < posses.length; i++) {
|
|
133
|
+
var pos3d = adjustPos3d(viewer, heightRef, posses[i]);
|
|
134
|
+
positions.push(pos3d);
|
|
135
|
+
}
|
|
40
136
|
}
|
|
41
137
|
else if (entity.polygon) {
|
|
42
138
|
var hierarchy = getValue(viewer, entity.polygon.hierarchy);
|
|
43
|
-
|
|
139
|
+
var posses = hierarchy.positions;
|
|
140
|
+
if (!(posses === null || posses === void 0 ? void 0 : posses.length) || posses.length >= DO_NOT_CULL_AT_LEN_POINTS) {
|
|
141
|
+
return null;
|
|
142
|
+
}
|
|
143
|
+
// Get the first, last, and every forth point.
|
|
144
|
+
// This is to reduce the amount of points we need to check.
|
|
145
|
+
if (posses.length > 10) {
|
|
146
|
+
var first = posses[0];
|
|
147
|
+
var last = posses[posses.length - 1];
|
|
148
|
+
var everyForth = posses.filter(function (_, index) { return index % 4 == 0; });
|
|
149
|
+
posses = [first, last].concat(everyForth);
|
|
150
|
+
}
|
|
44
151
|
heightRef = getValue(viewer, entity.polygon.heightReference);
|
|
152
|
+
for (var i = 0; i < posses.length; i++) {
|
|
153
|
+
var pos3d = adjustPos3d(viewer, heightRef, posses[i]);
|
|
154
|
+
positions.push(pos3d);
|
|
155
|
+
}
|
|
45
156
|
}
|
|
46
157
|
else if (entity.corridor) {
|
|
47
|
-
|
|
158
|
+
var posses = getValue(viewer, entity.corridor.positions);
|
|
159
|
+
if (!(posses === null || posses === void 0 ? void 0 : posses.length) || posses.length >= DO_NOT_CULL_AT_LEN_POINTS) {
|
|
160
|
+
return null;
|
|
161
|
+
}
|
|
162
|
+
// Get the first, last, and every forth point.
|
|
163
|
+
// This is to reduce the amount of points we need to check.
|
|
164
|
+
if (posses.length > 10) {
|
|
165
|
+
var first = posses[0];
|
|
166
|
+
var last = posses[posses.length - 1];
|
|
167
|
+
var everyForth = posses.filter(function (_, index) { return index % 4 == 0; });
|
|
168
|
+
posses = [first, last].concat(everyForth);
|
|
169
|
+
}
|
|
170
|
+
heightRef = getValue(viewer, entity.corridor.heightReference);
|
|
171
|
+
for (var i = 0; i < posses.length; i++) {
|
|
172
|
+
var pos3d = adjustPos3d(viewer, heightRef, posses[i]);
|
|
173
|
+
positions.push(pos3d);
|
|
174
|
+
}
|
|
48
175
|
}
|
|
49
176
|
else if (entity.ellipse) {
|
|
50
|
-
var
|
|
51
|
-
if (!(
|
|
177
|
+
var pos3d = getValue(viewer, entity.position);
|
|
178
|
+
if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
|
|
52
179
|
return null;
|
|
53
180
|
}
|
|
54
181
|
heightRef = getValue(viewer, entity.ellipse.heightReference);
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
var rotation = getValue(viewer, entity.ellipse.rotation);
|
|
58
|
-
// More subdivisions means a more accurate ellipse but worse performance.
|
|
59
|
-
var numberOfSubdivisions = 5;
|
|
60
|
-
for (var i = 0; i < numberOfSubdivisions; i++) {
|
|
61
|
-
var theta = i * (2 * Math.PI / numberOfSubdivisions);
|
|
62
|
-
var x = semiMajorAxis * Math.cos(theta);
|
|
63
|
-
var y = semiMinorAxis * Math.sin(theta);
|
|
64
|
-
// Apply rotation.
|
|
65
|
-
var rotatedX = x * Math.cos(rotation) - y * Math.sin(rotation);
|
|
66
|
-
var rotatedY = x * Math.sin(rotation) + y * Math.cos(rotation);
|
|
67
|
-
// Translate by the ellipse's position.
|
|
68
|
-
var point = new Cesium.Cartesian3(position.x + rotatedX, position.y + rotatedY, position.z);
|
|
69
|
-
positions.push(point);
|
|
70
|
-
}
|
|
182
|
+
pos3d = adjustPos3d(viewer, heightRef, pos3d);
|
|
183
|
+
positions.push(pos3d);
|
|
71
184
|
}
|
|
72
185
|
else if (entity.model) {
|
|
73
186
|
var pos3d = getValue(viewer, entity.position);
|
|
74
187
|
if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
|
|
75
188
|
return null;
|
|
76
189
|
}
|
|
77
|
-
positions.push(pos3d);
|
|
78
190
|
heightRef = getValue(viewer, entity.model.heightReference);
|
|
191
|
+
pos3d = adjustPos3d(viewer, heightRef, pos3d);
|
|
192
|
+
positions.push(pos3d);
|
|
79
193
|
}
|
|
80
194
|
else if (entity.point) {
|
|
81
195
|
var pos3d = getValue(viewer, entity.position);
|
|
82
196
|
if (!(pos3d === null || pos3d === void 0 ? void 0 : pos3d.x)) {
|
|
83
197
|
return null;
|
|
84
198
|
}
|
|
85
|
-
positions.push(pos3d);
|
|
86
199
|
heightRef = getValue(viewer, entity.point.heightReference);
|
|
200
|
+
pos3d = adjustPos3d(viewer, heightRef, pos3d);
|
|
201
|
+
positions.push(pos3d);
|
|
87
202
|
}
|
|
88
203
|
if (!(positions === null || positions === void 0 ? void 0 : positions.length)) {
|
|
89
204
|
return;
|
|
@@ -103,27 +218,97 @@ function computeBoundingSphereFromPositions(positions) {
|
|
|
103
218
|
return Cesium.BoundingSphere.fromPoints(positions);
|
|
104
219
|
}
|
|
105
220
|
function shouldCullEntity(viewer, cEntity) {
|
|
221
|
+
var _a, _b;
|
|
106
222
|
var camera = viewer.scene.camera;
|
|
107
223
|
var boundingSphere;
|
|
108
|
-
|
|
109
|
-
|
|
224
|
+
var terrainId = (_b = (_a = view_utils_1.ViewUtils.GatherTerrainTile({
|
|
225
|
+
viewer: viewer
|
|
226
|
+
}).terrain) === null || _a === void 0 ? void 0 : _a.tilesetId) !== null && _b !== void 0 ? _b : bruce_models_1.ProjectViewTile.EDefaultTerrain.FlatTerrain;
|
|
227
|
+
var cullSphere;
|
|
228
|
+
var cacheKey = terrainId + cEntity.id;
|
|
229
|
+
var cacheData = boundingSphereCache.Get(cacheKey);
|
|
230
|
+
if (cacheData) {
|
|
231
|
+
boundingSphere = cacheData;
|
|
110
232
|
}
|
|
111
233
|
else {
|
|
112
234
|
var positions = getPositionsFromEntity(viewer, cEntity);
|
|
113
235
|
if (positions) {
|
|
114
236
|
boundingSphere = computeBoundingSphereFromPositions(positions);
|
|
115
237
|
if (cEntity.model) {
|
|
116
|
-
|
|
117
|
-
|
|
238
|
+
var model = cEntity.model;
|
|
239
|
+
if (model._radius && !isNaN(model._radius)) {
|
|
240
|
+
boundingSphere.radius = Math.max(model._radius, MODEL_MIN_RADIUS);
|
|
241
|
+
}
|
|
242
|
+
else {
|
|
243
|
+
// Unknown size. Ignoring.
|
|
244
|
+
boundingSphere = -1;
|
|
245
|
+
}
|
|
118
246
|
}
|
|
119
|
-
|
|
247
|
+
// Check for radius and extrusion.
|
|
248
|
+
else if (cEntity.ellipse) {
|
|
249
|
+
var radius = getValue(viewer, cEntity.ellipse.semiMajorAxis);
|
|
250
|
+
var extrusion = getValue(viewer, cEntity.ellipse.extrudedHeight);
|
|
251
|
+
if (extrusion && !isNaN(extrusion)) {
|
|
252
|
+
if (!radius) {
|
|
253
|
+
radius = extrusion;
|
|
254
|
+
}
|
|
255
|
+
else if (extrusion > radius / 2) {
|
|
256
|
+
radius = extrusion;
|
|
257
|
+
}
|
|
258
|
+
}
|
|
259
|
+
if (radius && !isNaN(radius)) {
|
|
260
|
+
boundingSphere.radius = radius;
|
|
261
|
+
}
|
|
262
|
+
}
|
|
263
|
+
// Check for extrusion.
|
|
264
|
+
else if (cEntity.polygon) {
|
|
265
|
+
var extrusion = getValue(viewer, cEntity.polygon.extrudedHeight);
|
|
266
|
+
if (extrusion && !isNaN(extrusion)) {
|
|
267
|
+
if (!boundingSphere.radius) {
|
|
268
|
+
boundingSphere.radius = extrusion;
|
|
269
|
+
}
|
|
270
|
+
else if (extrusion > boundingSphere.radius / 2) {
|
|
271
|
+
boundingSphere.radius = extrusion;
|
|
272
|
+
}
|
|
273
|
+
}
|
|
274
|
+
}
|
|
275
|
+
else if (cEntity.point || cEntity.billboard) {
|
|
276
|
+
boundingSphere.radius = Math.max(boundingSphere.radius, POINT_MIN_RADIUS);
|
|
277
|
+
}
|
|
278
|
+
if (boundingSphere && boundingSphere != -1) {
|
|
279
|
+
if (DEBUG_MODE) {
|
|
280
|
+
// Render sphere to visualize.
|
|
281
|
+
cullSphere = viewer.entities.getById(cEntity.id + "_cull");
|
|
282
|
+
if (!cullSphere) {
|
|
283
|
+
cullSphere = viewer.entities.add({
|
|
284
|
+
id: cEntity.id + "_cull",
|
|
285
|
+
position: boundingSphere.center,
|
|
286
|
+
ellipsoid: {
|
|
287
|
+
radii: new Cesium.Cartesian3(boundingSphere.radius, boundingSphere.radius, boundingSphere.radius),
|
|
288
|
+
material: Cesium.Color.RED.withAlpha(0.1)
|
|
289
|
+
}
|
|
290
|
+
});
|
|
291
|
+
}
|
|
292
|
+
}
|
|
293
|
+
}
|
|
294
|
+
boundingSphereCache.Set(cacheKey, boundingSphere);
|
|
295
|
+
}
|
|
296
|
+
else {
|
|
297
|
+
boundingSphereCache.Set(cacheKey, -1);
|
|
120
298
|
}
|
|
121
299
|
}
|
|
122
|
-
if (!boundingSphere) {
|
|
300
|
+
if (!boundingSphere || boundingSphere == -1) {
|
|
123
301
|
return false;
|
|
124
302
|
}
|
|
125
303
|
var cullingVolume = camera.frustum.computeCullingVolume(camera.position, camera.direction, camera.up);
|
|
126
304
|
var visibility = cullingVolume.computeVisibility(boundingSphere);
|
|
305
|
+
if (cullSphere) {
|
|
306
|
+
cullSphere.ellipsoid.material =
|
|
307
|
+
(visibility == Cesium.Intersect.INSIDE ||
|
|
308
|
+
visibility == Cesium.Intersect.INTERSECTING) ? Cesium.Color.GREEN.withAlpha(0.1) :
|
|
309
|
+
Cesium.Color.RED.withAlpha(0.1);
|
|
310
|
+
viewer.scene.requestRender();
|
|
311
|
+
}
|
|
127
312
|
return visibility !== Cesium.Intersect.INSIDE && visibility !== Cesium.Intersect.INTERSECTING;
|
|
128
313
|
}
|
|
129
314
|
// Amount of entities to check per interval.
|
|
@@ -188,7 +373,7 @@ function runCullChecker(register) {
|
|
|
188
373
|
var rego = register.GetRego({
|
|
189
374
|
entityId: entityId
|
|
190
375
|
});
|
|
191
|
-
if (!rego || !rego.visual || !(rego.visual instanceof Cesium.Entity)) {
|
|
376
|
+
if (!rego || !rego.visual || !(rego.visual instanceof Cesium.Entity) || rego.relation != null) {
|
|
192
377
|
continue;
|
|
193
378
|
}
|
|
194
379
|
var parts = entity_utils_1.EntityUtils.GatherEntity({
|
|
@@ -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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"}
|
|
@@ -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 = "3.0.
|
|
32
|
+
export declare const VERSION = "3.0.4";
|