bruce-cesium 3.2.1 → 3.2.2
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 +290 -108
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +288 -106
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/bruce-cesium.js +1 -1
- package/dist/lib/rendering/menu-item-manager.js +1 -0
- package/dist/lib/rendering/menu-item-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-google-photos-render-manager.js +38 -10
- package/dist/lib/rendering/render-managers/tilesets/tileset-google-photos-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js +15 -8
- package/dist/lib/rendering/render-managers/tilesets/tileset-osm-render-manager.js.map +1 -1
- package/dist/lib/rendering/tile-render-engine.js +96 -72
- package/dist/lib/rendering/tile-render-engine.js.map +1 -1
- package/dist/lib/rendering/view-render-engine.js +97 -15
- package/dist/lib/rendering/view-render-engine.js.map +1 -1
- package/dist/lib/viewer/viewer-utils.js +79 -0
- package/dist/lib/viewer/viewer-utils.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +1 -1
- package/dist/types/rendering/render-managers/tilesets/tileset-google-photos-render-manager.d.ts +3 -1
- package/dist/types/viewer/viewer-utils.d.ts +7 -0
- package/package.json +2 -2
package/dist/bruce-cesium.umd.js
CHANGED
|
@@ -10552,18 +10552,24 @@
|
|
|
10552
10552
|
this.sourceId = (_a = menuItem.BruceEntity) === null || _a === void 0 ? void 0 : _a.SourceId;
|
|
10553
10553
|
this.entityTypeId = (_b = menuItem.BruceEntity) === null || _b === void 0 ? void 0 : _b["EntityType.ID"];
|
|
10554
10554
|
(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
10555
|
-
var CESIUM, cTileset;
|
|
10555
|
+
var validToken, CESIUM, cTileset;
|
|
10556
10556
|
var _this = this;
|
|
10557
10557
|
return __generator(this, function (_a) {
|
|
10558
10558
|
switch (_a.label) {
|
|
10559
|
-
case 0:
|
|
10559
|
+
case 0: return [4 /*yield*/, exports.ViewerUtils.AssertIonToken(Cesium.Ion.defaultAccessToken)];
|
|
10560
|
+
case 1:
|
|
10561
|
+
validToken = _a.sent();
|
|
10562
|
+
if (!validToken) {
|
|
10563
|
+
console.warn("'tileset-osm-render-manager.ts' could not locate a valid Cesium Ion token.");
|
|
10564
|
+
return [2 /*return*/];
|
|
10565
|
+
}
|
|
10560
10566
|
CESIUM = Cesium;
|
|
10561
|
-
if (!CESIUM["createOsmBuildingsAsync"]) return [3 /*break*/,
|
|
10567
|
+
if (!CESIUM["createOsmBuildingsAsync"]) return [3 /*break*/, 3];
|
|
10562
10568
|
return [4 /*yield*/, CESIUM.createOsmBuildingsAsync({})];
|
|
10563
|
-
case 1:
|
|
10564
|
-
cTileset = _a.sent();
|
|
10565
|
-
return [3 /*break*/, 3];
|
|
10566
10569
|
case 2:
|
|
10570
|
+
cTileset = _a.sent();
|
|
10571
|
+
return [3 /*break*/, 4];
|
|
10572
|
+
case 3:
|
|
10567
10573
|
if (CESIUM["createOsmBuildings"]) {
|
|
10568
10574
|
cTileset = CESIUM.createOsmBuildings();
|
|
10569
10575
|
}
|
|
@@ -10571,8 +10577,8 @@
|
|
|
10571
10577
|
console.warn("'tileset-osm-render-manager.ts' could not locate a create function for OSM buildings.");
|
|
10572
10578
|
return [2 /*return*/];
|
|
10573
10579
|
}
|
|
10574
|
-
_a.label =
|
|
10575
|
-
case
|
|
10580
|
+
_a.label = 4;
|
|
10581
|
+
case 4:
|
|
10576
10582
|
if (this.disposed) {
|
|
10577
10583
|
if (this.cTileset && !this.cTileset.isDestroyed()) {
|
|
10578
10584
|
this.cTileset.destroy();
|
|
@@ -12115,9 +12121,10 @@
|
|
|
12115
12121
|
function Manager(params) {
|
|
12116
12122
|
this.disposed = false;
|
|
12117
12123
|
this.cTileset = null;
|
|
12118
|
-
var viewer = params.viewer, item = params.item;
|
|
12124
|
+
var viewer = params.viewer, item = params.item, getters = params.getters;
|
|
12119
12125
|
this.viewer = viewer;
|
|
12120
12126
|
this.item = item;
|
|
12127
|
+
this.getters = getters;
|
|
12121
12128
|
}
|
|
12122
12129
|
Object.defineProperty(Manager.prototype, "Disposed", {
|
|
12123
12130
|
get: function () {
|
|
@@ -12154,17 +12161,43 @@
|
|
|
12154
12161
|
Manager.prototype.Init = function () {
|
|
12155
12162
|
var _this = this;
|
|
12156
12163
|
(function () { return __awaiter(_this, void 0, void 0, function () {
|
|
12157
|
-
var _a, colorCss;
|
|
12158
|
-
var _b
|
|
12159
|
-
return __generator(this, function (
|
|
12160
|
-
switch (
|
|
12164
|
+
var CESIUM, programKey, e_1, _a, colorCss;
|
|
12165
|
+
var _b;
|
|
12166
|
+
return __generator(this, function (_c) {
|
|
12167
|
+
switch (_c.label) {
|
|
12161
12168
|
case 0:
|
|
12162
|
-
|
|
12163
|
-
|
|
12164
|
-
|
|
12169
|
+
CESIUM = Cesium;
|
|
12170
|
+
if (!CESIUM.createGooglePhotorealistic3DTileset) {
|
|
12171
|
+
console.warn("Cesium version does not support 'createGooglePhotorealistic3DTileset' so Google Photos tileset will not be rendered.");
|
|
12172
|
+
return [2 /*return*/];
|
|
12173
|
+
}
|
|
12174
|
+
if (!!CESIUM.GoogleMaps.defaultApiKey) return [3 /*break*/, 4];
|
|
12175
|
+
_c.label = 1;
|
|
12165
12176
|
case 1:
|
|
12166
|
-
|
|
12167
|
-
|
|
12177
|
+
_c.trys.push([1, 3, , 4]);
|
|
12178
|
+
return [4 /*yield*/, bruceModels.ProgramKey.Get({
|
|
12179
|
+
programId: bruceModels.ProgramKey.EProgramId.Google,
|
|
12180
|
+
api: this.getters.GetBruceApi()
|
|
12181
|
+
})];
|
|
12182
|
+
case 2:
|
|
12183
|
+
programKey = (_c.sent()).programKey;
|
|
12184
|
+
if (programKey === null || programKey === void 0 ? void 0 : programKey.Key) {
|
|
12185
|
+
CESIUM.GoogleMaps.defaultApiKey = programKey.Key;
|
|
12186
|
+
}
|
|
12187
|
+
return [3 /*break*/, 4];
|
|
12188
|
+
case 3:
|
|
12189
|
+
e_1 = _c.sent();
|
|
12190
|
+
console.error(e_1);
|
|
12191
|
+
return [3 /*break*/, 4];
|
|
12192
|
+
case 4:
|
|
12193
|
+
if (this.disposed) {
|
|
12194
|
+
this.doDispose();
|
|
12195
|
+
return [2 /*return*/];
|
|
12196
|
+
}
|
|
12197
|
+
_a = this;
|
|
12198
|
+
return [4 /*yield*/, ((_b = CESIUM.createGooglePhotorealistic3DTileset) === null || _b === void 0 ? void 0 : _b.call(CESIUM))];
|
|
12199
|
+
case 5:
|
|
12200
|
+
_a.cTileset = _c.sent();
|
|
12168
12201
|
if (this.disposed) {
|
|
12169
12202
|
this.doDispose();
|
|
12170
12203
|
return [2 /*return*/];
|
|
@@ -12776,6 +12809,7 @@
|
|
|
12776
12809
|
break;
|
|
12777
12810
|
case bruceModels.MenuItem.EType.GooglePhotoTileset:
|
|
12778
12811
|
rItem.renderManager = new exports.TilesetGooglePhotosRenderManager.Manager({
|
|
12812
|
+
getters: params.getters,
|
|
12779
12813
|
item: params.item,
|
|
12780
12814
|
viewer: this.viewer,
|
|
12781
12815
|
});
|
|
@@ -16098,6 +16132,8 @@
|
|
|
16098
16132
|
}
|
|
16099
16133
|
}, 1500);
|
|
16100
16134
|
}
|
|
16135
|
+
// Cache of Cesium Token -> Validity.
|
|
16136
|
+
var _cToken_check_cache = {};
|
|
16101
16137
|
(function (ViewerUtils) {
|
|
16102
16138
|
/**
|
|
16103
16139
|
* Destroys all the junk that cesium viewer ships with.
|
|
@@ -16250,6 +16286,47 @@
|
|
|
16250
16286
|
return widgets;
|
|
16251
16287
|
}
|
|
16252
16288
|
ViewerUtils.CreateWidgets = CreateWidgets;
|
|
16289
|
+
/**
|
|
16290
|
+
* Returns if the given token is valid or not.
|
|
16291
|
+
* This will perform a test request to Cesium API.
|
|
16292
|
+
* @param token
|
|
16293
|
+
* @returns
|
|
16294
|
+
*/
|
|
16295
|
+
function AssertIonToken(token) {
|
|
16296
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
16297
|
+
var url, response, json, e_1;
|
|
16298
|
+
return __generator(this, function (_a) {
|
|
16299
|
+
switch (_a.label) {
|
|
16300
|
+
case 0:
|
|
16301
|
+
if (!token) {
|
|
16302
|
+
return [2 /*return*/, false];
|
|
16303
|
+
}
|
|
16304
|
+
if (_cToken_check_cache[token] != null) {
|
|
16305
|
+
return [2 /*return*/, _cToken_check_cache[token]];
|
|
16306
|
+
}
|
|
16307
|
+
_a.label = 1;
|
|
16308
|
+
case 1:
|
|
16309
|
+
_a.trys.push([1, 4, , 5]);
|
|
16310
|
+
url = "https://api.cesium.com/v1/assets/1/endpoint?access_token=".concat(token);
|
|
16311
|
+
return [4 /*yield*/, fetch(url)];
|
|
16312
|
+
case 2:
|
|
16313
|
+
response = _a.sent();
|
|
16314
|
+
return [4 /*yield*/, response.json()];
|
|
16315
|
+
case 3:
|
|
16316
|
+
json = _a.sent();
|
|
16317
|
+
_cToken_check_cache[token] = Boolean(json === null || json === void 0 ? void 0 : json.url);
|
|
16318
|
+
return [2 /*return*/, _cToken_check_cache[token]];
|
|
16319
|
+
case 4:
|
|
16320
|
+
e_1 = _a.sent();
|
|
16321
|
+
console.error(e_1);
|
|
16322
|
+
_cToken_check_cache[token] = false;
|
|
16323
|
+
return [3 /*break*/, 5];
|
|
16324
|
+
case 5: return [2 /*return*/];
|
|
16325
|
+
}
|
|
16326
|
+
});
|
|
16327
|
+
});
|
|
16328
|
+
}
|
|
16329
|
+
ViewerUtils.AssertIonToken = AssertIonToken;
|
|
16253
16330
|
})(exports.ViewerUtils || (exports.ViewerUtils = {}));
|
|
16254
16331
|
|
|
16255
16332
|
(function (MenuItemCreator) {
|
|
@@ -17507,7 +17584,7 @@
|
|
|
17507
17584
|
(function (Navigator) {
|
|
17508
17585
|
function GetOrCreateLayer(params) {
|
|
17509
17586
|
return __awaiter(this, void 0, void 0, function () {
|
|
17510
|
-
var viewer, apiGetter, meta, CESIUM, enabled, i, layer, layerMeta, defaultImg, provider, api, tileset, boundaries, settings, minLat, maxLat, minLon, maxLon, minLevel, maxLevel, hasLevels, url, settings_1, _a, cesiumIonKey, _b, mapboxKey, _c, layer;
|
|
17587
|
+
var viewer, apiGetter, meta, CESIUM, enabled, i, layer, layerMeta, defaultImg, provider, NEEDS_CESIUM_TOKEN, shouldCreate, api, tileset, boundaries, settings, minLat, maxLat, minLon, maxLon, minLevel, maxLevel, hasLevels, url, settings_1, _a, cesiumIonKey, _b, mapboxKey, _c, layer;
|
|
17511
17588
|
return __generator(this, function (_d) {
|
|
17512
17589
|
switch (_d.label) {
|
|
17513
17590
|
case 0:
|
|
@@ -17526,18 +17603,32 @@
|
|
|
17526
17603
|
}
|
|
17527
17604
|
defaultImg = meta.accountId ? null : bruceModels.ProjectViewTile.DefaultImagery.find(function (x) { return x.id === meta.tilesetId; });
|
|
17528
17605
|
provider = null;
|
|
17529
|
-
if (!defaultImg) return [3 /*break*/,
|
|
17530
|
-
|
|
17606
|
+
if (!defaultImg) return [3 /*break*/, 5];
|
|
17607
|
+
NEEDS_CESIUM_TOKEN = [
|
|
17608
|
+
bruceModels.ProjectViewTile.EDefaultImagery.BingMapsAerial,
|
|
17609
|
+
bruceModels.ProjectViewTile.EDefaultImagery.BingMapsAerialWithLabels,
|
|
17610
|
+
bruceModels.ProjectViewTile.EDefaultImagery.BingMapsAerialWithLabels,
|
|
17611
|
+
];
|
|
17612
|
+
shouldCreate = true;
|
|
17613
|
+
if (!NEEDS_CESIUM_TOKEN.includes(defaultImg.id)) return [3 /*break*/, 2];
|
|
17614
|
+
return [4 /*yield*/, exports.ViewerUtils.AssertIonToken(Cesium.Ion.defaultAccessToken)];
|
|
17531
17615
|
case 1:
|
|
17532
|
-
|
|
17533
|
-
|
|
17616
|
+
shouldCreate = _d.sent();
|
|
17617
|
+
_d.label = 2;
|
|
17534
17618
|
case 2:
|
|
17619
|
+
if (!shouldCreate) return [3 /*break*/, 4];
|
|
17620
|
+
return [4 /*yield*/, renderDefaultMapTile(apiGetter, defaultImg.id)];
|
|
17621
|
+
case 3:
|
|
17622
|
+
provider = _d.sent();
|
|
17623
|
+
_d.label = 4;
|
|
17624
|
+
case 4: return [3 /*break*/, 31];
|
|
17625
|
+
case 5:
|
|
17535
17626
|
api = apiGetter.getApi(meta.accountId);
|
|
17536
17627
|
// Ensure regional url is loaded.
|
|
17537
17628
|
// When loading stuff in the same account as the default it's likely already loaded,
|
|
17538
17629
|
// but if we just made an API instance for some external account then it won't be loaded yet.
|
|
17539
17630
|
return [4 /*yield*/, api.Loading];
|
|
17540
|
-
case
|
|
17631
|
+
case 6:
|
|
17541
17632
|
// Ensure regional url is loaded.
|
|
17542
17633
|
// When loading stuff in the same account as the default it's likely already loaded,
|
|
17543
17634
|
// but if we just made an API instance for some external account then it won't be loaded yet.
|
|
@@ -17546,7 +17637,7 @@
|
|
|
17546
17637
|
api: api,
|
|
17547
17638
|
tilesetId: meta.tilesetId
|
|
17548
17639
|
})];
|
|
17549
|
-
case
|
|
17640
|
+
case 7:
|
|
17550
17641
|
tileset = (_d.sent()).tileset;
|
|
17551
17642
|
boundaries = undefined;
|
|
17552
17643
|
settings = tileset === null || tileset === void 0 ? void 0 : tileset.settings;
|
|
@@ -17560,8 +17651,8 @@
|
|
|
17560
17651
|
minLevel = settings === null || settings === void 0 ? void 0 : settings.levelMin;
|
|
17561
17652
|
maxLevel = settings === null || settings === void 0 ? void 0 : settings.levelMax;
|
|
17562
17653
|
hasLevels = !isNaN(minLevel) && !isNaN(maxLevel);
|
|
17563
|
-
if (!(tileset.type === bruceModels.Tileset.EType.GeoMap)) return [3 /*break*/,
|
|
17564
|
-
if (!Cesium.TileMapServiceImageryProvider.hasOwnProperty("fromUrl")) return [3 /*break*/,
|
|
17654
|
+
if (!(tileset.type === bruceModels.Tileset.EType.GeoMap)) return [3 /*break*/, 11];
|
|
17655
|
+
if (!Cesium.TileMapServiceImageryProvider.hasOwnProperty("fromUrl")) return [3 /*break*/, 9];
|
|
17565
17656
|
url = bruceModels.Tileset.GetPublicFileUrl({
|
|
17566
17657
|
api: api,
|
|
17567
17658
|
tilesetId: meta.tilesetId,
|
|
@@ -17576,10 +17667,10 @@
|
|
|
17576
17667
|
maximumLevel: hasLevels ? maxLevel : undefined,
|
|
17577
17668
|
minimumLevel: hasLevels ? minLevel : undefined,
|
|
17578
17669
|
})];
|
|
17579
|
-
case
|
|
17670
|
+
case 8:
|
|
17580
17671
|
provider = _d.sent();
|
|
17581
|
-
return [3 /*break*/,
|
|
17582
|
-
case
|
|
17672
|
+
return [3 /*break*/, 10];
|
|
17673
|
+
case 9:
|
|
17583
17674
|
provider = new CESIUM.TileMapServiceImageryProvider({
|
|
17584
17675
|
url: bruceModels.Tileset.GetPublicFileUrl({
|
|
17585
17676
|
api: api,
|
|
@@ -17594,53 +17685,53 @@
|
|
|
17594
17685
|
maximumLevel: hasLevels ? maxLevel : undefined,
|
|
17595
17686
|
minimumLevel: hasLevels ? minLevel : undefined,
|
|
17596
17687
|
});
|
|
17597
|
-
_d.label =
|
|
17598
|
-
case
|
|
17599
|
-
case
|
|
17600
|
-
if (!(tileset.type === bruceModels.Tileset.EType.ExternalGeoMap)) return [3 /*break*/,
|
|
17688
|
+
_d.label = 10;
|
|
17689
|
+
case 10: return [3 /*break*/, 31];
|
|
17690
|
+
case 11:
|
|
17691
|
+
if (!(tileset.type === bruceModels.Tileset.EType.ExternalGeoMap)) return [3 /*break*/, 30];
|
|
17601
17692
|
settings_1 = tileset.settings;
|
|
17602
17693
|
_a = settings_1.mapType;
|
|
17603
17694
|
switch (_a) {
|
|
17604
|
-
case bruceModels.Tileset.Settings.EExternalMapType.CesiumIon: return [3 /*break*/,
|
|
17605
|
-
case bruceModels.Tileset.Settings.EExternalMapType.MapBoxImagery: return [3 /*break*/,
|
|
17606
|
-
case bruceModels.Tileset.Settings.EExternalMapType.OpenStreetMapImagery: return [3 /*break*/,
|
|
17607
|
-
case bruceModels.Tileset.Settings.EExternalMapType.TileMapImagery: return [3 /*break*/,
|
|
17608
|
-
case bruceModels.Tileset.Settings.EExternalMapType.CustomTemplate: return [3 /*break*/,
|
|
17695
|
+
case bruceModels.Tileset.Settings.EExternalMapType.CesiumIon: return [3 /*break*/, 12];
|
|
17696
|
+
case bruceModels.Tileset.Settings.EExternalMapType.MapBoxImagery: return [3 /*break*/, 19];
|
|
17697
|
+
case bruceModels.Tileset.Settings.EExternalMapType.OpenStreetMapImagery: return [3 /*break*/, 23];
|
|
17698
|
+
case bruceModels.Tileset.Settings.EExternalMapType.TileMapImagery: return [3 /*break*/, 24];
|
|
17699
|
+
case bruceModels.Tileset.Settings.EExternalMapType.CustomTemplate: return [3 /*break*/, 28];
|
|
17609
17700
|
}
|
|
17610
|
-
return [3 /*break*/,
|
|
17611
|
-
case
|
|
17612
|
-
if (!settings_1.key) return [3 /*break*/,
|
|
17701
|
+
return [3 /*break*/, 29];
|
|
17702
|
+
case 12:
|
|
17703
|
+
if (!settings_1.key) return [3 /*break*/, 13];
|
|
17613
17704
|
_b = settings_1.key;
|
|
17614
|
-
return [3 /*break*/,
|
|
17615
|
-
case
|
|
17616
|
-
case
|
|
17705
|
+
return [3 /*break*/, 15];
|
|
17706
|
+
case 13: return [4 /*yield*/, findKey(apiGetter, bruceModels.ProgramKey.EProgramId.CesiumIon, null)];
|
|
17707
|
+
case 14:
|
|
17617
17708
|
_b = _d.sent();
|
|
17618
|
-
_d.label =
|
|
17619
|
-
case
|
|
17709
|
+
_d.label = 15;
|
|
17710
|
+
case 15:
|
|
17620
17711
|
cesiumIonKey = _b;
|
|
17621
|
-
if (!Cesium.IonImageryProvider.hasOwnProperty("fromAssetId")) return [3 /*break*/,
|
|
17712
|
+
if (!Cesium.IonImageryProvider.hasOwnProperty("fromAssetId")) return [3 /*break*/, 17];
|
|
17622
17713
|
return [4 /*yield*/, CESIUM.IonImageryProvider.fromAssetId(Number(settings_1.externalId), {
|
|
17623
17714
|
accessToken: cesiumIonKey
|
|
17624
17715
|
})];
|
|
17625
|
-
case
|
|
17716
|
+
case 16:
|
|
17626
17717
|
provider = _d.sent();
|
|
17627
|
-
return [3 /*break*/,
|
|
17628
|
-
case
|
|
17718
|
+
return [3 /*break*/, 18];
|
|
17719
|
+
case 17:
|
|
17629
17720
|
provider = new CESIUM.IonImageryProvider({
|
|
17630
17721
|
assetId: Number(settings_1.externalId),
|
|
17631
17722
|
accessToken: cesiumIonKey
|
|
17632
17723
|
});
|
|
17633
|
-
_d.label =
|
|
17634
|
-
case
|
|
17635
|
-
case
|
|
17636
|
-
if (!settings_1.key) return [3 /*break*/,
|
|
17724
|
+
_d.label = 18;
|
|
17725
|
+
case 18: return [3 /*break*/, 29];
|
|
17726
|
+
case 19:
|
|
17727
|
+
if (!settings_1.key) return [3 /*break*/, 20];
|
|
17637
17728
|
_c = settings_1.key;
|
|
17638
|
-
return [3 /*break*/,
|
|
17639
|
-
case
|
|
17640
|
-
case
|
|
17729
|
+
return [3 /*break*/, 22];
|
|
17730
|
+
case 20: return [4 /*yield*/, findKey(apiGetter, bruceModels.ProgramKey.EProgramId.Mapbox, null)];
|
|
17731
|
+
case 21:
|
|
17641
17732
|
_c = _d.sent();
|
|
17642
|
-
_d.label =
|
|
17643
|
-
case
|
|
17733
|
+
_d.label = 22;
|
|
17734
|
+
case 22:
|
|
17644
17735
|
mapboxKey = _c;
|
|
17645
17736
|
provider = new Cesium.UrlTemplateImageryProvider({
|
|
17646
17737
|
url: "https://api.mapbox.com/styles/v1/"
|
|
@@ -17648,8 +17739,8 @@
|
|
|
17648
17739
|
"/tiles/256/{z}/{x}/{y}?access_token="
|
|
17649
17740
|
+ mapboxKey
|
|
17650
17741
|
});
|
|
17651
|
-
return [3 /*break*/,
|
|
17652
|
-
case
|
|
17742
|
+
return [3 /*break*/, 29];
|
|
17743
|
+
case 23:
|
|
17653
17744
|
provider = new Cesium.OpenStreetMapImageryProvider({
|
|
17654
17745
|
url: settings_1.url,
|
|
17655
17746
|
fileExtension: prepareFileExt(settings_1.fileExtension),
|
|
@@ -17658,9 +17749,9 @@
|
|
|
17658
17749
|
// maximumLevel: hasLevels ? maxLevel : undefined,
|
|
17659
17750
|
// minimumLevel: hasLevels ? minLevel : undefined,
|
|
17660
17751
|
});
|
|
17661
|
-
return [3 /*break*/,
|
|
17662
|
-
case
|
|
17663
|
-
if (!Cesium.TileMapServiceImageryProvider.hasOwnProperty("fromUrl")) return [3 /*break*/,
|
|
17752
|
+
return [3 /*break*/, 29];
|
|
17753
|
+
case 24:
|
|
17754
|
+
if (!Cesium.TileMapServiceImageryProvider.hasOwnProperty("fromUrl")) return [3 /*break*/, 26];
|
|
17664
17755
|
return [4 /*yield*/, CESIUM.TileMapServiceImageryProvider.fromUrl(settings_1.url, {
|
|
17665
17756
|
fileExtension: prepareFileExt(settings_1.fileExtension),
|
|
17666
17757
|
// Unused until tested properly. In the past these settings caused large lag.
|
|
@@ -17668,10 +17759,10 @@
|
|
|
17668
17759
|
// maximumLevel: hasLevels ? maxLevel : undefined,
|
|
17669
17760
|
// minimumLevel: hasLevels ? minLevel : undefined,
|
|
17670
17761
|
})];
|
|
17671
|
-
case
|
|
17762
|
+
case 25:
|
|
17672
17763
|
provider = _d.sent();
|
|
17673
|
-
return [3 /*break*/,
|
|
17674
|
-
case
|
|
17764
|
+
return [3 /*break*/, 27];
|
|
17765
|
+
case 26:
|
|
17675
17766
|
provider = new CESIUM.TileMapServiceImageryProvider({
|
|
17676
17767
|
url: settings_1.url,
|
|
17677
17768
|
fileExtension: prepareFileExt(settings_1.fileExtension),
|
|
@@ -17680,15 +17771,15 @@
|
|
|
17680
17771
|
// maximumLevel: hasLevels ? maxLevel : undefined,
|
|
17681
17772
|
// minimumLevel: hasLevels ? minLevel : undefined,
|
|
17682
17773
|
});
|
|
17683
|
-
_d.label =
|
|
17684
|
-
case
|
|
17685
|
-
case
|
|
17774
|
+
_d.label = 27;
|
|
17775
|
+
case 27: return [3 /*break*/, 29];
|
|
17776
|
+
case 28:
|
|
17686
17777
|
provider = new Cesium.UrlTemplateImageryProvider({
|
|
17687
17778
|
url: settings_1.url
|
|
17688
17779
|
});
|
|
17689
|
-
return [3 /*break*/,
|
|
17690
|
-
case
|
|
17691
|
-
case
|
|
17780
|
+
return [3 /*break*/, 29];
|
|
17781
|
+
case 29: return [3 /*break*/, 31];
|
|
17782
|
+
case 30:
|
|
17692
17783
|
if (tileset.type === bruceModels.Tileset.EType.EntitiesMap) {
|
|
17693
17784
|
provider = new Cesium.UrlTemplateImageryProvider({
|
|
17694
17785
|
url: bruceModels.Tileset.GetPublicFileUrl({
|
|
@@ -17706,8 +17797,8 @@
|
|
|
17706
17797
|
// maximumLevel: hasLevels ? maxLevel : undefined,
|
|
17707
17798
|
});
|
|
17708
17799
|
}
|
|
17709
|
-
_d.label =
|
|
17710
|
-
case
|
|
17800
|
+
_d.label = 31;
|
|
17801
|
+
case 31:
|
|
17711
17802
|
if (provider) {
|
|
17712
17803
|
layer = viewer.imageryLayers.addImageryProvider(provider);
|
|
17713
17804
|
layer._bMeta = meta;
|
|
@@ -17963,7 +18054,7 @@
|
|
|
17963
18054
|
function Render(params) {
|
|
17964
18055
|
var _a;
|
|
17965
18056
|
return __awaiter(this, void 0, void 0, function () {
|
|
17966
|
-
var iteration, CESIUM, enabledMeta, provider_1, leave, defaultTerr, provider, api, tileset, url, vertexes, settings;
|
|
18057
|
+
var iteration, CESIUM, enabledMeta, provider_1, leave, defaultTerr, provider, shouldCreate, api, tileset, url, vertexes, settings;
|
|
17967
18058
|
return __generator(this, function (_b) {
|
|
17968
18059
|
switch (_b.label) {
|
|
17969
18060
|
case 0:
|
|
@@ -17997,18 +18088,27 @@
|
|
|
17997
18088
|
}
|
|
17998
18089
|
defaultTerr = params.tile.accountId ? null : bruceModels.ProjectViewTile.DefaultTerrains.find(function (x) { return x.id === params.tile.tilesetId; });
|
|
17999
18090
|
provider = null;
|
|
18000
|
-
if (!defaultTerr) return [3 /*break*/,
|
|
18001
|
-
|
|
18091
|
+
if (!defaultTerr) return [3 /*break*/, 5];
|
|
18092
|
+
shouldCreate = true;
|
|
18093
|
+
if (!(defaultTerr.id == bruceModels.ProjectViewTile.EDefaultTerrain.CesiumWorldTerrain)) return [3 /*break*/, 2];
|
|
18094
|
+
return [4 /*yield*/, exports.ViewerUtils.AssertIonToken(Cesium.Ion.defaultAccessToken)];
|
|
18002
18095
|
case 1:
|
|
18003
|
-
|
|
18004
|
-
|
|
18096
|
+
shouldCreate = _b.sent();
|
|
18097
|
+
_b.label = 2;
|
|
18005
18098
|
case 2:
|
|
18099
|
+
if (!shouldCreate) return [3 /*break*/, 4];
|
|
18100
|
+
return [4 /*yield*/, renderDefaultTerrTile(defaultTerr.id)];
|
|
18101
|
+
case 3:
|
|
18102
|
+
provider = (_b.sent());
|
|
18103
|
+
_b.label = 4;
|
|
18104
|
+
case 4: return [3 /*break*/, 10];
|
|
18105
|
+
case 5:
|
|
18006
18106
|
api = params.apiGetter.getApi(params.tile.accountId);
|
|
18007
18107
|
// Ensure regional url is loaded.
|
|
18008
18108
|
// When loading stuff in the same account as the default it's likely already loaded,
|
|
18009
18109
|
// but if we just made an API instance for some external account then it won't be loaded yet.
|
|
18010
18110
|
return [4 /*yield*/, api.Loading];
|
|
18011
|
-
case
|
|
18111
|
+
case 6:
|
|
18012
18112
|
// Ensure regional url is loaded.
|
|
18013
18113
|
// When loading stuff in the same account as the default it's likely already loaded,
|
|
18014
18114
|
// but if we just made an API instance for some external account then it won't be loaded yet.
|
|
@@ -18020,7 +18120,7 @@
|
|
|
18020
18120
|
api: api,
|
|
18021
18121
|
tilesetId: params.tile.tilesetId
|
|
18022
18122
|
})];
|
|
18023
|
-
case
|
|
18123
|
+
case 7:
|
|
18024
18124
|
tileset = (_b.sent()).tileset;
|
|
18025
18125
|
if (!assertIteration(params.viewer, iteration)) {
|
|
18026
18126
|
return [2 /*return*/];
|
|
@@ -18044,21 +18144,21 @@
|
|
|
18044
18144
|
else {
|
|
18045
18145
|
console.error("Invalid tileset type.", tileset);
|
|
18046
18146
|
}
|
|
18047
|
-
if (!url) return [3 /*break*/,
|
|
18048
|
-
if (!CESIUM.CesiumTerrainProvider.hasOwnProperty("fromUrl")) return [3 /*break*/,
|
|
18147
|
+
if (!url) return [3 /*break*/, 10];
|
|
18148
|
+
if (!CESIUM.CesiumTerrainProvider.hasOwnProperty("fromUrl")) return [3 /*break*/, 9];
|
|
18049
18149
|
return [4 /*yield*/, CESIUM.CesiumTerrainProvider.fromUrl(url, {
|
|
18050
18150
|
requestVertexNormals: vertexes
|
|
18051
18151
|
})];
|
|
18052
|
-
case
|
|
18152
|
+
case 8:
|
|
18053
18153
|
provider = (_b.sent());
|
|
18054
|
-
return [3 /*break*/,
|
|
18055
|
-
case
|
|
18154
|
+
return [3 /*break*/, 10];
|
|
18155
|
+
case 9:
|
|
18056
18156
|
provider = new CESIUM.CesiumTerrainProvider({
|
|
18057
18157
|
url: url,
|
|
18058
18158
|
requestVertexNormals: vertexes
|
|
18059
18159
|
});
|
|
18060
|
-
_b.label =
|
|
18061
|
-
case
|
|
18160
|
+
_b.label = 10;
|
|
18161
|
+
case 10:
|
|
18062
18162
|
if (provider) {
|
|
18063
18163
|
provider._bMeta = {
|
|
18064
18164
|
accountId: params.tile.accountId,
|
|
@@ -18084,6 +18184,12 @@
|
|
|
18084
18184
|
// Used to track if a current in-progress render is the latest.
|
|
18085
18185
|
// If we're midway through an async function that is rendering a bookmark and this changes, then we stop the function.
|
|
18086
18186
|
var ITERATION_KEY$1 = "nextspace-view-render-engine-iteration";
|
|
18187
|
+
// Will be set when the account doesn't have its own key.
|
|
18188
|
+
// This can be safely nulled as the code will avoid using things it cannot do without it.
|
|
18189
|
+
// We should do either:
|
|
18190
|
+
// 1- new accounts get our token set.
|
|
18191
|
+
// 2- we reference to the template account's token.
|
|
18192
|
+
var CESIUM_DEFAULT_TOKEN = "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJqdGkiOiJiODI1OWQyZC0wYzdlLTRlOTctODFlOC1kYjIwOGYzOWE0NGIiLCJpZCI6MTE3NDg0LCJpYXQiOjE2NzAzODczOTR9.sx0EZdD-Y33FQ7gB_R3CkTsk3KhNpODoQGrnpvSH4UQ";
|
|
18087
18193
|
/**
|
|
18088
18194
|
* Creates a new iteration state.
|
|
18089
18195
|
* This will stop any existing renders from processing to their end.
|
|
@@ -18258,15 +18364,60 @@
|
|
|
18258
18364
|
* @param bookmark
|
|
18259
18365
|
* @param view
|
|
18260
18366
|
*/
|
|
18261
|
-
function renderNavigator(iteration, params, bookmark, view) {
|
|
18367
|
+
function renderNavigator(iteration, params, bookmark, view, getters) {
|
|
18262
18368
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m, _o, _p, _q, _r, _s, _t, _u, _v, _w, _x, _y, _z, _0, _1, _2, _3, _4, _5, _6;
|
|
18263
18369
|
return __awaiter(this, void 0, void 0, function () {
|
|
18264
|
-
var viewer, scene, vSettings, bSettings, defaults, camera, newLens, shouldBe2d, curIs2d, transition, pos, terrain, hillShades, baseColor, globeHidden, terrainWireframe, globeAlpha, shadows, size, ambientOcclusion, AO, lighting, light, quality, fxaa, dateTime, clock, selectedIds, hiddenIds, isolatedIds, labelledIds, curLabelledIds, toUnLabel, entityOpacityMap, entityId, opacity, imagery, legacyRelationIds, relations, curEnabled, newItemIds, _i, curEnabled_1, id, shouldRemove, rendered, menuItem, menuItem, gOcclusion;
|
|
18265
|
-
return __generator(this, function (
|
|
18266
|
-
switch (
|
|
18370
|
+
var viewer, scene, cTokenSet, _7, programKey, valid, e_1, valid, vSettings, bSettings, defaults, camera, newLens, shouldBe2d, curIs2d, transition, pos, terrain, hillShades, baseColor, globeHidden, terrainWireframe, globeAlpha, shadows, size, ambientOcclusion, AO, lighting, light, quality, fxaa, dateTime, clock, selectedIds, hiddenIds, isolatedIds, labelledIds, curLabelledIds, toUnLabel, entityOpacityMap, entityId, opacity, imagery, i, layer, legacyRelationIds, relations, curEnabled, newItemIds, _i, curEnabled_1, id, shouldRemove, rendered, menuItem, menuItem, gOcclusion;
|
|
18371
|
+
return __generator(this, function (_8) {
|
|
18372
|
+
switch (_8.label) {
|
|
18267
18373
|
case 0:
|
|
18268
18374
|
viewer = params.manager.Viewer;
|
|
18269
18375
|
scene = viewer.scene;
|
|
18376
|
+
if (!Cesium.Ion.defaultAccessToken) return [3 /*break*/, 2];
|
|
18377
|
+
return [4 /*yield*/, exports.ViewerUtils.AssertIonToken(Cesium.Ion.defaultAccessToken)];
|
|
18378
|
+
case 1:
|
|
18379
|
+
_7 = _8.sent();
|
|
18380
|
+
return [3 /*break*/, 3];
|
|
18381
|
+
case 2:
|
|
18382
|
+
_7 = false;
|
|
18383
|
+
_8.label = 3;
|
|
18384
|
+
case 3:
|
|
18385
|
+
cTokenSet = _7;
|
|
18386
|
+
if (!!cTokenSet) return [3 /*break*/, 9];
|
|
18387
|
+
_8.label = 4;
|
|
18388
|
+
case 4:
|
|
18389
|
+
_8.trys.push([4, 8, , 9]);
|
|
18390
|
+
return [4 /*yield*/, bruceModels.ProgramKey.Get({
|
|
18391
|
+
programId: bruceModels.ProgramKey.EProgramId.CesiumIon,
|
|
18392
|
+
api: getters.GetBruceApi()
|
|
18393
|
+
})];
|
|
18394
|
+
case 5:
|
|
18395
|
+
programKey = (_8.sent()).programKey;
|
|
18396
|
+
if (!(programKey === null || programKey === void 0 ? void 0 : programKey.Key)) return [3 /*break*/, 7];
|
|
18397
|
+
return [4 /*yield*/, exports.ViewerUtils.AssertIonToken(programKey.Key)];
|
|
18398
|
+
case 6:
|
|
18399
|
+
valid = _8.sent();
|
|
18400
|
+
if (valid) {
|
|
18401
|
+
Cesium.Ion.defaultAccessToken = programKey.Key;
|
|
18402
|
+
cTokenSet = true;
|
|
18403
|
+
}
|
|
18404
|
+
_8.label = 7;
|
|
18405
|
+
case 7: return [3 /*break*/, 9];
|
|
18406
|
+
case 8:
|
|
18407
|
+
e_1 = _8.sent();
|
|
18408
|
+
console.error(e_1);
|
|
18409
|
+
return [3 /*break*/, 9];
|
|
18410
|
+
case 9:
|
|
18411
|
+
if (!!cTokenSet) return [3 /*break*/, 11];
|
|
18412
|
+
return [4 /*yield*/, exports.ViewerUtils.AssertIonToken(CESIUM_DEFAULT_TOKEN)];
|
|
18413
|
+
case 10:
|
|
18414
|
+
valid = _8.sent();
|
|
18415
|
+
if (valid) {
|
|
18416
|
+
Cesium.Ion.defaultAccessToken = CESIUM_DEFAULT_TOKEN;
|
|
18417
|
+
cTokenSet = true;
|
|
18418
|
+
}
|
|
18419
|
+
_8.label = 11;
|
|
18420
|
+
case 11:
|
|
18270
18421
|
vSettings = view.Settings;
|
|
18271
18422
|
bSettings = ((_a = bookmark === null || bookmark === void 0 ? void 0 : bookmark.Settings) !== null && _a !== void 0 ? _a : {});
|
|
18272
18423
|
defaults = (_b = vSettings.defaults) !== null && _b !== void 0 ? _b : {};
|
|
@@ -18318,19 +18469,27 @@
|
|
|
18318
18469
|
}
|
|
18319
18470
|
}
|
|
18320
18471
|
terrain = (bSettings === null || bSettings === void 0 ? void 0 : bSettings.terrain) != null ? bSettings === null || bSettings === void 0 ? void 0 : bSettings.terrain : (_m = defaults.settings) === null || _m === void 0 ? void 0 : _m.terrain;
|
|
18321
|
-
if (!terrain) return [3 /*break*/,
|
|
18472
|
+
if (!terrain) return [3 /*break*/, 13];
|
|
18473
|
+
// If there is no Cesium token set then we'll swap cesium terrain to flat terrain.
|
|
18474
|
+
// This allows a scene to render even if it's not the correct one.
|
|
18475
|
+
if (terrain.tilesetId == bruceModels.ProjectViewTile.EDefaultTerrain.CesiumWorldTerrain && !cTokenSet) {
|
|
18476
|
+
terrain = {
|
|
18477
|
+
tilesetId: bruceModels.ProjectViewTile.EDefaultTerrain.FlatTerrain
|
|
18478
|
+
};
|
|
18479
|
+
console.warn("Cesium Ion token not set, using flat terrain instead of cesium world terrain.");
|
|
18480
|
+
}
|
|
18322
18481
|
return [4 /*yield*/, exports.TileRenderEngine.Terrain.Navigator.Render({
|
|
18323
18482
|
apiGetter: params.apiGetter,
|
|
18324
18483
|
tile: terrain,
|
|
18325
18484
|
viewer: params.manager.Viewer,
|
|
18326
18485
|
})];
|
|
18327
|
-
case
|
|
18328
|
-
|
|
18486
|
+
case 12:
|
|
18487
|
+
_8.sent();
|
|
18329
18488
|
if (!assertIteration$1(params.viewer, iteration)) {
|
|
18330
18489
|
return [2 /*return*/];
|
|
18331
18490
|
}
|
|
18332
|
-
|
|
18333
|
-
case
|
|
18491
|
+
_8.label = 13;
|
|
18492
|
+
case 13:
|
|
18334
18493
|
hillShades = (_o = bookmark === null || bookmark === void 0 ? void 0 : bookmark.Settings) === null || _o === void 0 ? void 0 : _o.hillShades;
|
|
18335
18494
|
if (hillShades == null) {
|
|
18336
18495
|
hillShades = (_p = defaults === null || defaults === void 0 ? void 0 : defaults.settings) === null || _p === void 0 ? void 0 : _p.hillShades;
|
|
@@ -18548,6 +18707,29 @@
|
|
|
18548
18707
|
}
|
|
18549
18708
|
];
|
|
18550
18709
|
}
|
|
18710
|
+
else if (imagery === null || imagery === void 0 ? void 0 : imagery.length) {
|
|
18711
|
+
// If the Cesium token is not set then we'll avoid rendering Bing Maps since they won't work.
|
|
18712
|
+
// We'll swap them out to good enough alternatives.
|
|
18713
|
+
if (!cTokenSet) {
|
|
18714
|
+
// Deference the array so we don't modify the original.
|
|
18715
|
+
imagery = JSON.parse(JSON.stringify(imagery));
|
|
18716
|
+
for (i = 0; i < imagery.length; i++) {
|
|
18717
|
+
layer = imagery[i];
|
|
18718
|
+
if (layer.tilesetId == bruceModels.ProjectViewTile.EDefaultImagery.BingMapsAerial) {
|
|
18719
|
+
layer.tilesetId = bruceModels.ProjectViewTile.EDefaultImagery.MapboxSatellite;
|
|
18720
|
+
console.warn("Cesium Ion token not set, using mapbox satellite instead of bing maps aerial.");
|
|
18721
|
+
}
|
|
18722
|
+
else if (layer.tilesetId == bruceModels.ProjectViewTile.EDefaultImagery.BingMapsAerialWithLabels) {
|
|
18723
|
+
layer.tilesetId = bruceModels.ProjectViewTile.EDefaultImagery.MapboxSatellite;
|
|
18724
|
+
console.warn("Cesium Ion token not set, using mapbox satellite instead of bing maps aerial with labels.");
|
|
18725
|
+
}
|
|
18726
|
+
else if (layer.tilesetId == bruceModels.ProjectViewTile.EDefaultImagery.BingMapsRoads) {
|
|
18727
|
+
layer.tilesetId = bruceModels.ProjectViewTile.EDefaultImagery.MapBoxStreets;
|
|
18728
|
+
console.warn("Cesium Ion token not set, using mapbox streets instead of bing maps roads.");
|
|
18729
|
+
}
|
|
18730
|
+
}
|
|
18731
|
+
}
|
|
18732
|
+
}
|
|
18551
18733
|
// We don't wait for imageries to load, this does not affect rendering other things.
|
|
18552
18734
|
exports.TileRenderEngine.Map.Navigator.Render({
|
|
18553
18735
|
apiGetter: params.apiGetter,
|
|
@@ -18592,20 +18774,20 @@
|
|
|
18592
18774
|
});
|
|
18593
18775
|
}
|
|
18594
18776
|
}
|
|
18595
|
-
if (!bookmark) return [3 /*break*/,
|
|
18777
|
+
if (!bookmark) return [3 /*break*/, 15];
|
|
18596
18778
|
return [4 /*yield*/, exports.MenuItemCreator.RenderBookmarkItems({
|
|
18597
18779
|
getters: params.getters,
|
|
18598
18780
|
manager: params.manager,
|
|
18599
18781
|
view: view,
|
|
18600
18782
|
bookmark: bookmark
|
|
18601
18783
|
})];
|
|
18602
|
-
case
|
|
18603
|
-
|
|
18784
|
+
case 14:
|
|
18785
|
+
_8.sent();
|
|
18604
18786
|
if (!assertIteration$1(params.viewer, iteration)) {
|
|
18605
18787
|
return [2 /*return*/];
|
|
18606
18788
|
}
|
|
18607
|
-
|
|
18608
|
-
case
|
|
18789
|
+
_8.label = 15;
|
|
18790
|
+
case 15:
|
|
18609
18791
|
if (legacyRelationIds.length || relations.length) {
|
|
18610
18792
|
if (relations.length) {
|
|
18611
18793
|
menuItem = {
|
|
@@ -18722,7 +18904,7 @@
|
|
|
18722
18904
|
case 8:
|
|
18723
18905
|
_d.sent();
|
|
18724
18906
|
return [3 /*break*/, 11];
|
|
18725
|
-
case 9: return [4 /*yield*/, renderNavigator(iteration, params, bookmark, view)];
|
|
18907
|
+
case 9: return [4 /*yield*/, renderNavigator(iteration, params, bookmark, view, params.getters)];
|
|
18726
18908
|
case 10:
|
|
18727
18909
|
_d.sent();
|
|
18728
18910
|
_d.label = 11;
|
|
@@ -19158,7 +19340,7 @@
|
|
|
19158
19340
|
CesiumViewMonitor.Monitor = Monitor;
|
|
19159
19341
|
})(exports.CesiumViewMonitor || (exports.CesiumViewMonitor = {}));
|
|
19160
19342
|
|
|
19161
|
-
var VERSION$1 = "3.2.
|
|
19343
|
+
var VERSION$1 = "3.2.2";
|
|
19162
19344
|
|
|
19163
19345
|
exports.VERSION = VERSION$1;
|
|
19164
19346
|
exports.CesiumParabola = CesiumParabola;
|