bruce-cesium 0.6.2 → 0.6.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 +140 -34
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +139 -33
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/rendering/entity-render-engine.js +3 -0
- package/dist/lib/rendering/entity-render-engine.js.map +1 -1
- package/dist/lib/rendering/menu-item-manager.js +9 -0
- package/dist/lib/rendering/menu-item-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +13 -5
- package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js +9 -3
- package/dist/lib/rendering/render-managers/entities/entities-loaded-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entities-render-manager.js +9 -3
- package/dist/lib/rendering/render-managers/entities/entities-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entity-render-manager.js +9 -3
- package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +19 -6
- package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js +12 -4
- package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js +10 -2
- package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-pointcloud-render-manager.js +8 -3
- package/dist/lib/rendering/render-managers/tilesets/tileset-pointcloud-render-manager.js.map +1 -1
- package/dist/lib/rendering/tileset-render-engine.js +38 -4
- package/dist/lib/rendering/tileset-render-engine.js.map +1 -1
- package/dist/lib/rendering/view-render-engine.js.map +1 -1
- package/package.json +1 -1
package/dist/bruce-cesium.es5.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BruceEvent, Cartes, Carto, Geometry, ZoomControl, Style, EntityTag, Calculator, EntityLod, EntityType, ClientFile, DelayQueue, Entity as Entity$1, BatchedDataGetter, ObjectUtils, Tileset, EntityCoords, EntityFilterGetter, EntitySource, MenuItem, ProjectView, ProjectViewBookmark, ProjectViewTile, ProjectViewLegacyTile, TilesetExtMapTiles, ProgramKey, Camera } from 'bruce-models';
|
|
2
|
-
import { Cartesian2, Cartographic, Math as Math$1, Color, HeightReference,
|
|
2
|
+
import { Cartesian2, Cartographic, Math as Math$1, Cartesian3, Color, HeightReference, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, HeadingPitchRange, OrthographicFrustum, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, MapboxStyleImageryProvider, ArcGisMapServerImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, EllipsoidGeodesic, Matrix4, Cesium3DTileset, ColorMaterialProperty, Rectangle, Matrix3, EasingFunction, GeometryInstance, JulianDate, createOsmBuildings, Cesium3DTileStyle } from 'cesium';
|
|
3
3
|
|
|
4
4
|
var TIME_LAG = 300;
|
|
5
5
|
var POSITION_CHECK_TIMER = 950;
|
|
@@ -1056,6 +1056,9 @@ var EntityRenderEngine;
|
|
|
1056
1056
|
}
|
|
1057
1057
|
EntityRenderEngine.Render = Render;
|
|
1058
1058
|
function Remove(viewer, entity) {
|
|
1059
|
+
if (viewer.isDestroyed()) {
|
|
1060
|
+
return;
|
|
1061
|
+
}
|
|
1059
1062
|
if (entity._parentEntity) {
|
|
1060
1063
|
Remove(viewer, entity._parentEntity);
|
|
1061
1064
|
}
|
|
@@ -1735,11 +1738,12 @@ var EntitiesRenderManager;
|
|
|
1735
1738
|
Manager.prototype.onGetterUpdate = function (entities) {
|
|
1736
1739
|
var _a;
|
|
1737
1740
|
return __awaiter(this, void 0, void 0, function () {
|
|
1738
|
-
var cEntities, i, entity, id, cEntity, visual;
|
|
1741
|
+
var cEntities, i, entity, id, cEntity, visual, e_2;
|
|
1739
1742
|
return __generator(this, function (_b) {
|
|
1740
1743
|
switch (_b.label) {
|
|
1741
1744
|
case 0:
|
|
1742
|
-
|
|
1745
|
+
_b.trys.push([0, 2, , 3]);
|
|
1746
|
+
if (this.disposed || this.viewer.isDestroyed()) {
|
|
1743
1747
|
return [2 /*return*/];
|
|
1744
1748
|
}
|
|
1745
1749
|
return [4 /*yield*/, EntityRenderEngine.Render({
|
|
@@ -1773,7 +1777,12 @@ var EntitiesRenderManager;
|
|
|
1773
1777
|
this.visualsManager.Remove(id, this.item.id);
|
|
1774
1778
|
}
|
|
1775
1779
|
}
|
|
1776
|
-
return [
|
|
1780
|
+
return [3 /*break*/, 3];
|
|
1781
|
+
case 2:
|
|
1782
|
+
e_2 = _b.sent();
|
|
1783
|
+
console.error(e_2);
|
|
1784
|
+
return [3 /*break*/, 3];
|
|
1785
|
+
case 3: return [2 /*return*/];
|
|
1777
1786
|
}
|
|
1778
1787
|
});
|
|
1779
1788
|
});
|
|
@@ -1838,11 +1847,12 @@ var EntitiesLoadedRenderManager;
|
|
|
1838
1847
|
Manager.prototype.onGetterUpdate = function (entities) {
|
|
1839
1848
|
var _a;
|
|
1840
1849
|
return __awaiter(this, void 0, void 0, function () {
|
|
1841
|
-
var cEntities, i, entity, id, cEntity, visual;
|
|
1850
|
+
var cEntities, i, entity, id, cEntity, visual, e_1;
|
|
1842
1851
|
return __generator(this, function (_b) {
|
|
1843
1852
|
switch (_b.label) {
|
|
1844
1853
|
case 0:
|
|
1845
|
-
|
|
1854
|
+
_b.trys.push([0, 2, , 3]);
|
|
1855
|
+
if (this.disposed || this.viewer.isDestroyed()) {
|
|
1846
1856
|
return [2 /*return*/];
|
|
1847
1857
|
}
|
|
1848
1858
|
return [4 /*yield*/, EntityRenderEngine.Render({
|
|
@@ -1876,7 +1886,12 @@ var EntitiesLoadedRenderManager;
|
|
|
1876
1886
|
this.visualsManager.Remove(id, this.item.id);
|
|
1877
1887
|
}
|
|
1878
1888
|
}
|
|
1879
|
-
return [
|
|
1889
|
+
return [3 /*break*/, 3];
|
|
1890
|
+
case 2:
|
|
1891
|
+
e_1 = _b.sent();
|
|
1892
|
+
console.error(e_1);
|
|
1893
|
+
return [3 /*break*/, 3];
|
|
1894
|
+
case 3: return [2 /*return*/];
|
|
1880
1895
|
}
|
|
1881
1896
|
});
|
|
1882
1897
|
});
|
|
@@ -2416,16 +2431,19 @@ var EntitiesIdsRenderManager;
|
|
|
2416
2431
|
Manager.prototype.onGetterUpdate = function (entityIds) {
|
|
2417
2432
|
var _a;
|
|
2418
2433
|
return __awaiter(this, void 0, void 0, function () {
|
|
2419
|
-
var api, entities, cEntities, i, entity, id, cEntity, visual;
|
|
2434
|
+
var api, entities, cEntities, i, entity, id, cEntity, visual, e_1;
|
|
2420
2435
|
return __generator(this, function (_b) {
|
|
2421
2436
|
switch (_b.label) {
|
|
2422
2437
|
case 0:
|
|
2423
|
-
if (this.disposed) {
|
|
2438
|
+
if (this.disposed || this.viewer.isDestroyed()) {
|
|
2424
2439
|
return [2 /*return*/];
|
|
2425
2440
|
}
|
|
2441
|
+
_b.label = 1;
|
|
2442
|
+
case 1:
|
|
2443
|
+
_b.trys.push([1, 4, , 5]);
|
|
2426
2444
|
api = this.apiGetter.getApi();
|
|
2427
2445
|
return [4 /*yield*/, Entity$1.GetListByIds(api, entityIds)];
|
|
2428
|
-
case
|
|
2446
|
+
case 2:
|
|
2429
2447
|
entities = _b.sent();
|
|
2430
2448
|
return [4 /*yield*/, EntityRenderEngine.Render({
|
|
2431
2449
|
viewer: this.viewer,
|
|
@@ -2435,7 +2453,7 @@ var EntitiesIdsRenderManager;
|
|
|
2435
2453
|
visualRegister: this.visualsManager,
|
|
2436
2454
|
zoomControl: this.item.CameraZoomSettings
|
|
2437
2455
|
})];
|
|
2438
|
-
case
|
|
2456
|
+
case 3:
|
|
2439
2457
|
cEntities = _b.sent();
|
|
2440
2458
|
for (i = 0; i < entities.length; i++) {
|
|
2441
2459
|
entity = entities[i];
|
|
@@ -2458,7 +2476,12 @@ var EntitiesIdsRenderManager;
|
|
|
2458
2476
|
this.visualsManager.Remove(id, this.item.id);
|
|
2459
2477
|
}
|
|
2460
2478
|
}
|
|
2461
|
-
return [
|
|
2479
|
+
return [3 /*break*/, 5];
|
|
2480
|
+
case 4:
|
|
2481
|
+
e_1 = _b.sent();
|
|
2482
|
+
console.error(e_1);
|
|
2483
|
+
return [3 /*break*/, 5];
|
|
2484
|
+
case 5: return [2 /*return*/];
|
|
2462
2485
|
}
|
|
2463
2486
|
});
|
|
2464
2487
|
});
|
|
@@ -2520,11 +2543,12 @@ var EntityRenderManager;
|
|
|
2520
2543
|
Manager.prototype.onGetterUpdate = function (id) {
|
|
2521
2544
|
var _a;
|
|
2522
2545
|
return __awaiter(this, void 0, void 0, function () {
|
|
2523
|
-
var api, entity, cEntities, cEntity, visual;
|
|
2546
|
+
var api, entity, cEntities, cEntity, visual, e_1;
|
|
2524
2547
|
return __generator(this, function (_b) {
|
|
2525
2548
|
switch (_b.label) {
|
|
2526
2549
|
case 0:
|
|
2527
|
-
|
|
2550
|
+
_b.trys.push([0, 3, , 4]);
|
|
2551
|
+
if (this.disposed || this.viewer.isDestroyed()) {
|
|
2528
2552
|
return [2 /*return*/];
|
|
2529
2553
|
}
|
|
2530
2554
|
api = this.apiGetter.getApi();
|
|
@@ -2557,7 +2581,12 @@ var EntityRenderManager;
|
|
|
2557
2581
|
else {
|
|
2558
2582
|
this.visualsManager.Remove(id, this.item.id);
|
|
2559
2583
|
}
|
|
2560
|
-
return [
|
|
2584
|
+
return [3 /*break*/, 4];
|
|
2585
|
+
case 3:
|
|
2586
|
+
e_1 = _b.sent();
|
|
2587
|
+
console.error(e_1);
|
|
2588
|
+
return [3 /*break*/, 4];
|
|
2589
|
+
case 4: return [2 /*return*/];
|
|
2561
2590
|
}
|
|
2562
2591
|
});
|
|
2563
2592
|
});
|
|
@@ -2570,6 +2599,24 @@ var EntityRenderManager;
|
|
|
2570
2599
|
function colorToCColor$1(color) {
|
|
2571
2600
|
return new Color(color.red ? color.red / 255 : 0, color.green ? color.green / 255 : 0, color.blue ? color.blue / 255 : 0, color.alpha);
|
|
2572
2601
|
}
|
|
2602
|
+
/**
|
|
2603
|
+
* Returns if a given tileset is alive and in the scene.
|
|
2604
|
+
* @param viewer
|
|
2605
|
+
* @param cTileset
|
|
2606
|
+
* @returns
|
|
2607
|
+
*/
|
|
2608
|
+
function isAlive(viewer, cTileset) {
|
|
2609
|
+
if (viewer.isDestroyed()) {
|
|
2610
|
+
return false;
|
|
2611
|
+
}
|
|
2612
|
+
if (!(viewer === null || viewer === void 0 ? void 0 : viewer.scene)) {
|
|
2613
|
+
return false;
|
|
2614
|
+
}
|
|
2615
|
+
if (cTileset.isDestroyed()) {
|
|
2616
|
+
return false;
|
|
2617
|
+
}
|
|
2618
|
+
return viewer.scene.primitives.contains(cTileset);
|
|
2619
|
+
}
|
|
2573
2620
|
var TilesetRenderEngine;
|
|
2574
2621
|
(function (TilesetRenderEngine) {
|
|
2575
2622
|
function ApplyPosition(cTileset, tileset, coords) {
|
|
@@ -2647,8 +2694,16 @@ var TilesetRenderEngine;
|
|
|
2647
2694
|
});
|
|
2648
2695
|
params.viewer.scene.primitives.add(cTileset_1);
|
|
2649
2696
|
cTileset_1.readyPromise.then(function () {
|
|
2650
|
-
|
|
2651
|
-
|
|
2697
|
+
try {
|
|
2698
|
+
if (!isAlive(params.viewer, cTileset_1)) {
|
|
2699
|
+
return;
|
|
2700
|
+
}
|
|
2701
|
+
ApplySettings(cTileset_1, params.tileset);
|
|
2702
|
+
ApplyPosition(cTileset_1, params.tileset, params.coords);
|
|
2703
|
+
}
|
|
2704
|
+
catch (e) {
|
|
2705
|
+
console.error(e);
|
|
2706
|
+
}
|
|
2652
2707
|
});
|
|
2653
2708
|
return cTileset_1;
|
|
2654
2709
|
}
|
|
@@ -2665,8 +2720,16 @@ var TilesetRenderEngine;
|
|
|
2665
2720
|
});
|
|
2666
2721
|
params.viewer.scene.primitives.add(cTileset_2);
|
|
2667
2722
|
cTileset_2.readyPromise.then(function () {
|
|
2668
|
-
|
|
2669
|
-
|
|
2723
|
+
try {
|
|
2724
|
+
if (!isAlive(params.viewer, cTileset_2)) {
|
|
2725
|
+
return;
|
|
2726
|
+
}
|
|
2727
|
+
ApplySettings(cTileset_2, params.tileset);
|
|
2728
|
+
ApplyPosition(cTileset_2, params.tileset, null);
|
|
2729
|
+
}
|
|
2730
|
+
catch (e) {
|
|
2731
|
+
console.error(e);
|
|
2732
|
+
}
|
|
2670
2733
|
});
|
|
2671
2734
|
return cTileset_2;
|
|
2672
2735
|
}
|
|
@@ -3104,14 +3167,24 @@ var TilesetCadRenderManager;
|
|
|
3104
3167
|
coords: coords
|
|
3105
3168
|
});
|
|
3106
3169
|
cTileset.readyPromise.then(function () {
|
|
3107
|
-
|
|
3108
|
-
|
|
3170
|
+
try {
|
|
3171
|
+
if (_this.disposed || cTileset.isDestroyed()) {
|
|
3172
|
+
return;
|
|
3173
|
+
}
|
|
3174
|
+
_this.onCTilesetLoad();
|
|
3175
|
+
_this.styler = new TilesetRenderEngine.CadStyler(api, _this.cTileset, _this.item.styleId, _this.item.StyleMapping);
|
|
3176
|
+
}
|
|
3177
|
+
catch (e) {
|
|
3178
|
+
console.error(e);
|
|
3109
3179
|
}
|
|
3110
|
-
_this.onCTilesetLoad();
|
|
3111
|
-
_this.styler = new TilesetRenderEngine.CadStyler(api, _this.cTileset, _this.item.styleId, _this.item.StyleMapping);
|
|
3112
3180
|
});
|
|
3113
3181
|
cTileset.tileLoad.addEventListener(function (tile) {
|
|
3114
|
-
|
|
3182
|
+
try {
|
|
3183
|
+
_this.mapCTile(tile);
|
|
3184
|
+
}
|
|
3185
|
+
catch (e) {
|
|
3186
|
+
console.error(e);
|
|
3187
|
+
}
|
|
3115
3188
|
});
|
|
3116
3189
|
return [2 /*return*/];
|
|
3117
3190
|
}
|
|
@@ -3124,7 +3197,10 @@ var TilesetCadRenderManager;
|
|
|
3124
3197
|
}
|
|
3125
3198
|
};
|
|
3126
3199
|
Manager.prototype.mapCTile = function (tile) {
|
|
3127
|
-
var content = tile.content;
|
|
3200
|
+
var content = tile === null || tile === void 0 ? void 0 : tile.content;
|
|
3201
|
+
if (!content) {
|
|
3202
|
+
return;
|
|
3203
|
+
}
|
|
3128
3204
|
for (var i = 0; i < content.featuresLength; i++) {
|
|
3129
3205
|
var feature = content.getFeature(i);
|
|
3130
3206
|
var rego = this.mapTilesetFeature(feature);
|
|
@@ -3342,7 +3418,12 @@ var TilesetOsmRenderManager;
|
|
|
3342
3418
|
}
|
|
3343
3419
|
this.viewer.scene.primitives.add(this.cTileset);
|
|
3344
3420
|
this.cTileset.tileLoad.addEventListener(function (tile) {
|
|
3345
|
-
|
|
3421
|
+
try {
|
|
3422
|
+
_this.mapCTile(tile);
|
|
3423
|
+
}
|
|
3424
|
+
catch (e) {
|
|
3425
|
+
console.error(e);
|
|
3426
|
+
}
|
|
3346
3427
|
});
|
|
3347
3428
|
this.queueCheckInterval = setInterval(function () {
|
|
3348
3429
|
if (_this.featureQueue.length > 0) {
|
|
@@ -3362,7 +3443,10 @@ var TilesetOsmRenderManager;
|
|
|
3362
3443
|
var content, i, feature;
|
|
3363
3444
|
return __generator(this, function (_a) {
|
|
3364
3445
|
if (this.sourceId) {
|
|
3365
|
-
content = tile.content;
|
|
3446
|
+
content = tile === null || tile === void 0 ? void 0 : tile.content;
|
|
3447
|
+
if (!content) {
|
|
3448
|
+
return [2 /*return*/];
|
|
3449
|
+
}
|
|
3366
3450
|
for (i = 0; i < content.featuresLength; i++) {
|
|
3367
3451
|
feature = content.getFeature(i);
|
|
3368
3452
|
if (feature._counter == null) {
|
|
@@ -3598,10 +3682,15 @@ var TilesetEntitiesRenderManager;
|
|
|
3598
3682
|
viewer: this.viewer
|
|
3599
3683
|
});
|
|
3600
3684
|
cTileset.readyPromise.then(function () {
|
|
3601
|
-
|
|
3602
|
-
|
|
3685
|
+
try {
|
|
3686
|
+
if (_this.disposed || _this.viewer.isDestroyed()) {
|
|
3687
|
+
return;
|
|
3688
|
+
}
|
|
3689
|
+
_this.onCTilesetLoad();
|
|
3690
|
+
}
|
|
3691
|
+
catch (e) {
|
|
3692
|
+
console.error(e);
|
|
3603
3693
|
}
|
|
3604
|
-
_this.onCTilesetLoad();
|
|
3605
3694
|
});
|
|
3606
3695
|
cTileset.tileLoad.addEventListener(function (tile) {
|
|
3607
3696
|
_this.mapCTile(tile);
|
|
@@ -3627,7 +3716,10 @@ var TilesetEntitiesRenderManager;
|
|
|
3627
3716
|
}
|
|
3628
3717
|
};
|
|
3629
3718
|
Manager.prototype.mapCTile = function (tile) {
|
|
3630
|
-
var content = tile.content;
|
|
3719
|
+
var content = tile === null || tile === void 0 ? void 0 : tile.content;
|
|
3720
|
+
if (!content) {
|
|
3721
|
+
return;
|
|
3722
|
+
}
|
|
3631
3723
|
for (var i = 0; i < content.featuresLength; i++) {
|
|
3632
3724
|
var feature = content.getFeature(i);
|
|
3633
3725
|
this.mapTilesetFeature(feature);
|
|
@@ -3694,10 +3786,15 @@ var TilesetPointcloudRenderManager;
|
|
|
3694
3786
|
coords: null
|
|
3695
3787
|
});
|
|
3696
3788
|
cTileset.readyPromise.then(function () {
|
|
3697
|
-
|
|
3698
|
-
|
|
3789
|
+
try {
|
|
3790
|
+
if (_this.disposed || _this.viewer.isDestroyed()) {
|
|
3791
|
+
return;
|
|
3792
|
+
}
|
|
3793
|
+
_this.onCTilesetLoad();
|
|
3794
|
+
}
|
|
3795
|
+
catch (e) {
|
|
3796
|
+
console.error(e);
|
|
3699
3797
|
}
|
|
3700
|
-
_this.onCTilesetLoad();
|
|
3701
3798
|
});
|
|
3702
3799
|
return [2 /*return*/];
|
|
3703
3800
|
}
|
|
@@ -3779,6 +3876,9 @@ var MenuItemManager;
|
|
|
3779
3876
|
return __generator(this, function (_c) {
|
|
3780
3877
|
switch (_c.label) {
|
|
3781
3878
|
case 0:
|
|
3879
|
+
if (this.viewer.isDestroyed()) {
|
|
3880
|
+
return [2 /*return*/, null];
|
|
3881
|
+
}
|
|
3782
3882
|
rItem = this.items.find(function (x) { return x.id == params.item.id; });
|
|
3783
3883
|
if (!!rItem) return [3 /*break*/, 2];
|
|
3784
3884
|
rItem = {
|
|
@@ -3789,6 +3889,9 @@ var MenuItemManager;
|
|
|
3789
3889
|
type: params.item.Type
|
|
3790
3890
|
};
|
|
3791
3891
|
this.items.push(rItem);
|
|
3892
|
+
if (!params.item.Type) {
|
|
3893
|
+
params.item.Type = MenuItem.EType.None;
|
|
3894
|
+
}
|
|
3792
3895
|
switch (params.item.Type) {
|
|
3793
3896
|
case MenuItem.EType.Entities:
|
|
3794
3897
|
rItem.renderManager = new EntitiesRenderManager.Manager(this.viewer, this.visualsRegister, params.apiGetter, this.sharedMonitor, params.item, this.sharedGetters);
|
|
@@ -3863,6 +3966,9 @@ var MenuItemManager;
|
|
|
3863
3966
|
return __generator(this, function (_c) {
|
|
3864
3967
|
switch (_c.label) {
|
|
3865
3968
|
case 0:
|
|
3969
|
+
if (this.viewer.isDestroyed()) {
|
|
3970
|
+
return [2 /*return*/];
|
|
3971
|
+
}
|
|
3866
3972
|
item = this.items.find(function (x) { return x.id === id; });
|
|
3867
3973
|
if (!item) return [3 /*break*/, 5];
|
|
3868
3974
|
if (!recursive) return [3 /*break*/, 4];
|