bruce-cesium 0.3.9 → 0.4.1
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 +86 -59
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +85 -58
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/rendering/tile-render-engine.js +31 -38
- package/dist/lib/rendering/tile-render-engine.js.map +1 -1
- package/dist/lib/rendering/view-render-engine.js +16 -20
- package/dist/lib/rendering/view-render-engine.js.map +1 -1
- package/dist/lib/utils/view-utils.js +38 -0
- package/dist/lib/utils/view-utils.js.map +1 -1
- package/dist/types/rendering/tile-render-engine.d.ts +2 -4
- package/dist/types/utils/view-utils.d.ts +3 -1
- package/package.json +2 -2
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, Camera, MathUtils } from 'bruce-models';
|
|
2
|
-
import { Cartesian2, Cartographic, Math as Math$1, Viewer, ArcGisMapServerImageryProvider, ScreenSpaceEventType, Color, HeightReference, Cartesian3, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, HeadingPitchRange, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider,
|
|
2
|
+
import { Cartesian2, Cartographic, Math as Math$1, Viewer, ArcGisMapServerImageryProvider, ScreenSpaceEventType, Color, HeightReference, Cartesian3, Entity, HorizontalOrigin, VerticalOrigin, ClassificationType, ArcType, PolygonHierarchy, ShadowMode, PolylineGraphics, HeadingPitchRoll, Transforms, ColorBlendMode, Primitive, Cesium3DTileFeature, HeadingPitchRange, OrthographicFrustum, createWorldTerrain, EllipsoidTerrainProvider, CesiumTerrainProvider, BingMapsImageryProvider, BingMapsStyle, MapboxImageryProvider, OpenStreetMapImageryProvider, GridImageryProvider, GeographicTilingScheme, ImageryLayer, UrlTemplateImageryProvider, TileMapServiceImageryProvider, IonImageryProvider, createOsmBuildings, Cesium3DTileStyle, Rectangle, Matrix4, Cesium3DTileset, EllipsoidGeodesic } from 'cesium';
|
|
3
3
|
|
|
4
4
|
var TIME_LAG = 300;
|
|
5
5
|
var POSITION_CHECK_TIMER = 950;
|
|
@@ -4141,10 +4141,18 @@ var TileRenderEngine;
|
|
|
4141
4141
|
(function (V2) {
|
|
4142
4142
|
function GetOrCreateLayer(viewer, apiGetter, meta) {
|
|
4143
4143
|
return __awaiter(this, void 0, void 0, function () {
|
|
4144
|
-
var defaultImg, provider, api, tileset, settings, layer;
|
|
4144
|
+
var enabled, i, layer, layerMeta, defaultImg, provider, api, tileset, settings, layer;
|
|
4145
4145
|
return __generator(this, function (_a) {
|
|
4146
4146
|
switch (_a.label) {
|
|
4147
4147
|
case 0:
|
|
4148
|
+
enabled = gatherEnabledImageries(viewer);
|
|
4149
|
+
for (i = 0; i < enabled.length; i++) {
|
|
4150
|
+
layer = enabled[i];
|
|
4151
|
+
layerMeta = layer._bMeta;
|
|
4152
|
+
if (layerMeta && layerMeta.tilesetId === meta.tilesetId && layerMeta.accountId === meta.accountId) {
|
|
4153
|
+
return [2 /*return*/, layer];
|
|
4154
|
+
}
|
|
4155
|
+
}
|
|
4148
4156
|
defaultImg = meta.accountId ? null : ProjectViewTile.DefaultImagery.find(function (x) { return x.id === meta.tilesetId; });
|
|
4149
4157
|
provider = null;
|
|
4150
4158
|
if (!defaultImg) return [3 /*break*/, 1];
|
|
@@ -4206,6 +4214,7 @@ var TileRenderEngine;
|
|
|
4206
4214
|
if (provider) {
|
|
4207
4215
|
layer = viewer.imageryLayers.addImageryProvider(provider);
|
|
4208
4216
|
layer._bMeta = meta;
|
|
4217
|
+
viewer.imageryLayers.lowerToBottom(layer);
|
|
4209
4218
|
return [2 /*return*/, layer];
|
|
4210
4219
|
}
|
|
4211
4220
|
return [2 /*return*/, null];
|
|
@@ -4216,35 +4225,19 @@ var TileRenderEngine;
|
|
|
4216
4225
|
V2.GetOrCreateLayer = GetOrCreateLayer;
|
|
4217
4226
|
function Render(params) {
|
|
4218
4227
|
return __awaiter(this, void 0, void 0, function () {
|
|
4219
|
-
var
|
|
4228
|
+
var i, enabled, curEnabled, toDisable, curEnabledArr, _loop_2, i, i, _loop_3, i;
|
|
4220
4229
|
return __generator(this, function (_a) {
|
|
4221
4230
|
switch (_a.label) {
|
|
4222
4231
|
case 0:
|
|
4223
|
-
_loop_2 = function (i) {
|
|
4224
|
-
var enabled, source;
|
|
4225
|
-
return __generator(this, function (_a) {
|
|
4226
|
-
switch (_a.label) {
|
|
4227
|
-
case 0:
|
|
4228
|
-
enabled = params.enabled[i];
|
|
4229
|
-
source = params.sources.find(function (x) { return x.accountId === enabled.accountId && x.tilesetId === enabled.tilesetId; });
|
|
4230
|
-
if (!source) {
|
|
4231
|
-
console.error("Missing source for enabled imagery.", enabled);
|
|
4232
|
-
}
|
|
4233
|
-
return [4 /*yield*/, GetOrCreateLayer(params.viewer, params.apiGetter, {
|
|
4234
|
-
accountId: source.accountId,
|
|
4235
|
-
tilesetId: source.tilesetId,
|
|
4236
|
-
})];
|
|
4237
|
-
case 1:
|
|
4238
|
-
_a.sent();
|
|
4239
|
-
return [2 /*return*/];
|
|
4240
|
-
}
|
|
4241
|
-
});
|
|
4242
|
-
};
|
|
4243
4232
|
i = 0;
|
|
4244
4233
|
_a.label = 1;
|
|
4245
4234
|
case 1:
|
|
4246
|
-
if (!(i < params.
|
|
4247
|
-
|
|
4235
|
+
if (!(i < params.tiles.length)) return [3 /*break*/, 4];
|
|
4236
|
+
enabled = params.tiles[i];
|
|
4237
|
+
return [4 /*yield*/, GetOrCreateLayer(params.viewer, params.apiGetter, {
|
|
4238
|
+
accountId: enabled.accountId,
|
|
4239
|
+
tilesetId: enabled.tilesetId,
|
|
4240
|
+
})];
|
|
4248
4241
|
case 2:
|
|
4249
4242
|
_a.sent();
|
|
4250
4243
|
_a.label = 3;
|
|
@@ -4255,10 +4248,10 @@ var TileRenderEngine;
|
|
|
4255
4248
|
curEnabled = params.viewer.imageryLayers;
|
|
4256
4249
|
toDisable = [];
|
|
4257
4250
|
curEnabledArr = [];
|
|
4258
|
-
|
|
4251
|
+
_loop_2 = function (i) {
|
|
4259
4252
|
var layer = curEnabled.get(i);
|
|
4260
4253
|
var meta = layer === null || layer === void 0 ? void 0 : layer._bMeta;
|
|
4261
|
-
var disable = !params.
|
|
4254
|
+
var disable = !params.tiles.find(function (x) { return x.accountId === (meta === null || meta === void 0 ? void 0 : meta.accountId) && x.tilesetId === (meta === null || meta === void 0 ? void 0 : meta.tilesetId); });
|
|
4262
4255
|
if (disable) {
|
|
4263
4256
|
toDisable.push(layer);
|
|
4264
4257
|
}
|
|
@@ -4267,13 +4260,13 @@ var TileRenderEngine;
|
|
|
4267
4260
|
}
|
|
4268
4261
|
};
|
|
4269
4262
|
for (i = 0; i < curEnabled.length; i++) {
|
|
4270
|
-
|
|
4263
|
+
_loop_2(i);
|
|
4271
4264
|
}
|
|
4272
4265
|
for (i = 0; i < toDisable.length; i++) {
|
|
4273
4266
|
params.viewer.imageryLayers.remove(toDisable[i]);
|
|
4274
4267
|
}
|
|
4275
|
-
|
|
4276
|
-
var enabled = params.
|
|
4268
|
+
_loop_3 = function (i) {
|
|
4269
|
+
var enabled = params.tiles[i];
|
|
4277
4270
|
var layer = curEnabledArr.find(function (x) { var _a, _b; return ((_a = x._bMeta) === null || _a === void 0 ? void 0 : _a.accountId) === enabled.accountId && ((_b = x._bMeta) === null || _b === void 0 ? void 0 : _b.tilesetId) === enabled.tilesetId; });
|
|
4278
4271
|
if (layer) {
|
|
4279
4272
|
params.viewer.imageryLayers.raiseToTop(layer);
|
|
@@ -4285,8 +4278,8 @@ var TileRenderEngine;
|
|
|
4285
4278
|
layer.gamma = Number(enabled.gamma == null ? 1 : enabled.gamma);
|
|
4286
4279
|
}
|
|
4287
4280
|
};
|
|
4288
|
-
for (i = 0; i < params.
|
|
4289
|
-
|
|
4281
|
+
for (i = 0; i < params.tiles.length; i++) {
|
|
4282
|
+
_loop_3(i);
|
|
4290
4283
|
}
|
|
4291
4284
|
return [2 /*return*/];
|
|
4292
4285
|
}
|
|
@@ -4388,18 +4381,18 @@ var TileRenderEngine;
|
|
|
4388
4381
|
switch (_b.label) {
|
|
4389
4382
|
case 0:
|
|
4390
4383
|
enabledMeta = (_a = params.viewer.terrainProvider) === null || _a === void 0 ? void 0 : _a._bMeta;
|
|
4391
|
-
if ((enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.tilesetId) === params.
|
|
4392
|
-
(enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.accountId) === params.
|
|
4384
|
+
if ((enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.tilesetId) === params.tile.tilesetId &&
|
|
4385
|
+
(enabledMeta === null || enabledMeta === void 0 ? void 0 : enabledMeta.accountId) === params.tile.accountId) {
|
|
4393
4386
|
return [2 /*return*/];
|
|
4394
4387
|
}
|
|
4395
|
-
defaultTerr = params.
|
|
4388
|
+
defaultTerr = params.tile.accountId ? null : ProjectViewTile.DefaultTerrains.find(function (x) { return x.id === params.tile.tilesetId; });
|
|
4396
4389
|
provider = null;
|
|
4397
4390
|
if (!defaultTerr) return [3 /*break*/, 1];
|
|
4398
4391
|
provider = renderDefaultTerrTile(defaultTerr.id);
|
|
4399
4392
|
return [3 /*break*/, 3];
|
|
4400
4393
|
case 1:
|
|
4401
|
-
api = params.apiGetter.getApi(params.
|
|
4402
|
-
return [4 /*yield*/, Tileset.Get(api, params.
|
|
4394
|
+
api = params.apiGetter.getApi(params.tile.accountId);
|
|
4395
|
+
return [4 /*yield*/, Tileset.Get(api, params.tile.tilesetId)];
|
|
4403
4396
|
case 2:
|
|
4404
4397
|
tileset = _b.sent();
|
|
4405
4398
|
url = void 0;
|
|
@@ -4425,8 +4418,8 @@ var TileRenderEngine;
|
|
|
4425
4418
|
case 3:
|
|
4426
4419
|
if (provider) {
|
|
4427
4420
|
provider._bMeta = {
|
|
4428
|
-
accountId: params.
|
|
4429
|
-
tilesetId: params.
|
|
4421
|
+
accountId: params.tile.accountId,
|
|
4422
|
+
tilesetId: params.tile.tilesetId
|
|
4430
4423
|
};
|
|
4431
4424
|
params.viewer.terrainProvider = provider;
|
|
4432
4425
|
}
|
|
@@ -4524,11 +4517,11 @@ function renderV1(params, bookmark, view) {
|
|
|
4524
4517
|
});
|
|
4525
4518
|
}
|
|
4526
4519
|
function renderV2(params, bookmark, view) {
|
|
4527
|
-
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s
|
|
4520
|
+
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s;
|
|
4528
4521
|
return __awaiter(this, void 0, void 0, function () {
|
|
4529
|
-
var viewer, scene, vSettings, bSettings, defaults, camera, newLens, curLens, transition, pos, gOcclusion, terrain,
|
|
4530
|
-
return __generator(this, function (
|
|
4531
|
-
switch (
|
|
4522
|
+
var viewer, scene, vSettings, bSettings, defaults, camera, newLens, curLens, transition, pos, gOcclusion, terrain, imagery, curEnabled, newItemIds, _i, curEnabled_1, id;
|
|
4523
|
+
return __generator(this, function (_t) {
|
|
4524
|
+
switch (_t.label) {
|
|
4532
4525
|
case 0:
|
|
4533
4526
|
viewer = params.manager.Viewer;
|
|
4534
4527
|
scene = viewer.scene;
|
|
@@ -4591,19 +4584,16 @@ function renderV2(params, bookmark, view) {
|
|
|
4591
4584
|
scene.globe.depthTestAgainstTerrain = Boolean(gOcclusion);
|
|
4592
4585
|
terrain = (_o = bSettings === null || bSettings === void 0 ? void 0 : bSettings.terrain) !== null && _o !== void 0 ? _o : (_p = defaults.settings) === null || _p === void 0 ? void 0 : _p.terrain;
|
|
4593
4586
|
if (!terrain) return [3 /*break*/, 2];
|
|
4594
|
-
source = (_q = vSettings.terrains) === null || _q === void 0 ? void 0 : _q.find(function (x) { return x.accountId === terrain.accountId && x.tilesetId === terrain.tilesetId; });
|
|
4595
|
-
if (!source) return [3 /*break*/, 2];
|
|
4596
4587
|
return [4 /*yield*/, TileRenderEngine.Terrain.V2.Render({
|
|
4597
4588
|
apiGetter: params.apiGetter,
|
|
4598
|
-
|
|
4599
|
-
source: source,
|
|
4589
|
+
tile: terrain,
|
|
4600
4590
|
viewer: params.manager.Viewer,
|
|
4601
4591
|
})];
|
|
4602
4592
|
case 1:
|
|
4603
|
-
|
|
4604
|
-
|
|
4593
|
+
_t.sent();
|
|
4594
|
+
_t.label = 2;
|
|
4605
4595
|
case 2:
|
|
4606
|
-
imagery = (
|
|
4596
|
+
imagery = (_q = bSettings.imagery) !== null && _q !== void 0 ? _q : (_r = defaults.settings) === null || _r === void 0 ? void 0 : _r.imagery;
|
|
4607
4597
|
if (imagery == null) {
|
|
4608
4598
|
// TODO: Need global default.
|
|
4609
4599
|
imagery = [
|
|
@@ -4621,24 +4611,23 @@ function renderV2(params, bookmark, view) {
|
|
|
4621
4611
|
}
|
|
4622
4612
|
return [4 /*yield*/, TileRenderEngine.Map.V2.Render({
|
|
4623
4613
|
apiGetter: params.apiGetter,
|
|
4624
|
-
|
|
4625
|
-
sources: vSettings.imageries,
|
|
4614
|
+
tiles: imagery,
|
|
4626
4615
|
viewer: params.manager.Viewer,
|
|
4627
4616
|
})];
|
|
4628
4617
|
case 3:
|
|
4629
|
-
|
|
4618
|
+
_t.sent();
|
|
4630
4619
|
curEnabled = params.manager.GetEnabledItemIds();
|
|
4631
|
-
newItemIds = (
|
|
4620
|
+
newItemIds = (_s = bSettings === null || bSettings === void 0 ? void 0 : bSettings.menuItemIds) !== null && _s !== void 0 ? _s : [];
|
|
4632
4621
|
_i = 0, curEnabled_1 = curEnabled;
|
|
4633
|
-
|
|
4622
|
+
_t.label = 4;
|
|
4634
4623
|
case 4:
|
|
4635
4624
|
if (!(_i < curEnabled_1.length)) return [3 /*break*/, 7];
|
|
4636
4625
|
id = curEnabled_1[_i];
|
|
4637
4626
|
if (!(newItemIds.indexOf(id) === -1)) return [3 /*break*/, 6];
|
|
4638
4627
|
return [4 /*yield*/, params.manager.RemoveItemById(id)];
|
|
4639
4628
|
case 5:
|
|
4640
|
-
|
|
4641
|
-
|
|
4629
|
+
_t.sent();
|
|
4630
|
+
_t.label = 6;
|
|
4642
4631
|
case 6:
|
|
4643
4632
|
_i++;
|
|
4644
4633
|
return [3 /*break*/, 4];
|
|
@@ -4649,8 +4638,8 @@ function renderV2(params, bookmark, view) {
|
|
|
4649
4638
|
manager: params.manager,
|
|
4650
4639
|
}, params.viewId, params.bookmarkId)];
|
|
4651
4640
|
case 8:
|
|
4652
|
-
|
|
4653
|
-
|
|
4641
|
+
_t.sent();
|
|
4642
|
+
_t.label = 9;
|
|
4654
4643
|
case 9: return [2 /*return*/];
|
|
4655
4644
|
}
|
|
4656
4645
|
});
|
|
@@ -4903,6 +4892,44 @@ var ViewUtils;
|
|
|
4903
4892
|
return "flatterrain";
|
|
4904
4893
|
}
|
|
4905
4894
|
ViewUtils.GatherLegacyTerrainTile = GatherLegacyTerrainTile;
|
|
4895
|
+
function GatherMapTiles(viewer) {
|
|
4896
|
+
var imagery = viewer.imageryLayers;
|
|
4897
|
+
var tiles = [];
|
|
4898
|
+
var _loop_1 = function (i) {
|
|
4899
|
+
var provider = imagery.get(i);
|
|
4900
|
+
if (provider._bMeta) {
|
|
4901
|
+
var idCombo_1 = provider._bMeta.accountId + provider._bMeta.tilesetId;
|
|
4902
|
+
if (!tiles.find(function (x) { return x.accountId + x.tilesetId === idCombo_1; })) {
|
|
4903
|
+
tiles.push({
|
|
4904
|
+
accountId: provider._bMeta.accountId,
|
|
4905
|
+
tilesetId: provider._bMeta.tilesetId,
|
|
4906
|
+
alpha: provider.alpha,
|
|
4907
|
+
brightness: provider.brightness,
|
|
4908
|
+
contrast: provider.contrast,
|
|
4909
|
+
hue: provider.hue,
|
|
4910
|
+
saturation: provider.saturation,
|
|
4911
|
+
gamma: provider.gamma
|
|
4912
|
+
});
|
|
4913
|
+
}
|
|
4914
|
+
}
|
|
4915
|
+
};
|
|
4916
|
+
for (var i = 0; i < imagery.length; i++) {
|
|
4917
|
+
_loop_1(i);
|
|
4918
|
+
}
|
|
4919
|
+
return tiles;
|
|
4920
|
+
}
|
|
4921
|
+
ViewUtils.GatherMapTiles = GatherMapTiles;
|
|
4922
|
+
function GatherTerrainTile(viewer) {
|
|
4923
|
+
var provider = viewer.terrainProvider;
|
|
4924
|
+
if (provider._bMeta) {
|
|
4925
|
+
return {
|
|
4926
|
+
accountId: provider._bMeta.accountId,
|
|
4927
|
+
tilesetId: provider._bMeta.tilesetId,
|
|
4928
|
+
};
|
|
4929
|
+
}
|
|
4930
|
+
return null;
|
|
4931
|
+
}
|
|
4932
|
+
ViewUtils.GatherTerrainTile = GatherTerrainTile;
|
|
4906
4933
|
})(ViewUtils || (ViewUtils = {}));
|
|
4907
4934
|
|
|
4908
4935
|
export { CesiumViewMonitor, ViewerUtils, MenuItemManager, EntityRenderEngine, RenderHelper, VisualsRegister, RenderManager, EntitiesIdsRenderManager, EntitiesLoadedRenderManager, EntitiesRenderManager, EntityRenderManager, TilesetCadRenderManager, ViewRenderEngine, TileRenderEngine, MeasureAddon, SharedGetters, ViewUtils };
|