bruce-cesium 1.2.2 → 1.2.3
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 +118 -101
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +117 -100
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js +47 -32
- package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js.map +1 -1
- package/dist/lib/rendering/tileset-render-engine.js +70 -68
- package/dist/lib/rendering/tileset-render-engine.js.map +1 -1
- package/package.json +2 -2
package/dist/bruce-cesium.umd.js
CHANGED
|
@@ -3913,79 +3913,81 @@
|
|
|
3913
3913
|
if (legacy_1.usingBoundingBox == null) {
|
|
3914
3914
|
legacy_1.usingBoundingBox = true;
|
|
3915
3915
|
}
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
|
|
3928
|
-
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
|
|
3940
|
-
|
|
3941
|
-
|
|
3942
|
-
|
|
3916
|
+
if (legacy_1.transform) {
|
|
3917
|
+
var offsetPoint_1 = function (pos, distance, bearing) {
|
|
3918
|
+
// radius of earth
|
|
3919
|
+
var radius = 6371e3;
|
|
3920
|
+
var δ = distance / radius;
|
|
3921
|
+
var θ = Cesium.Math.toRadians(bearing);
|
|
3922
|
+
var φ1 = Cesium.Math.toRadians(pos.latitude);
|
|
3923
|
+
var λ1 = Cesium.Math.toRadians(pos.longitude);
|
|
3924
|
+
var sinφ2 = Math.sin(φ1) * Math.cos(δ) + Math.cos(φ1) * Math.sin(δ) * Math.cos(θ);
|
|
3925
|
+
var φ2 = Math.asin(sinφ2);
|
|
3926
|
+
var y = Math.sin(θ) * Math.sin(δ) * Math.cos(φ1);
|
|
3927
|
+
var x = Math.cos(δ) - Math.sin(φ1) * sinφ2;
|
|
3928
|
+
var λ2 = λ1 + Math.atan2(y, x);
|
|
3929
|
+
var finalPos = new Cesium.Cartographic(λ2, φ2, pos.height);
|
|
3930
|
+
finalPos.latitude = Cesium.Math.toDegrees(finalPos.latitude);
|
|
3931
|
+
finalPos.longitude = Cesium.Math.toDegrees(finalPos.longitude);
|
|
3932
|
+
return finalPos;
|
|
3933
|
+
};
|
|
3934
|
+
var getOffset = function (pos, n, e, alt) {
|
|
3935
|
+
if (n == 0 && e == 0 && alt == 0) {
|
|
3936
|
+
return new Cesium.Cartesian3(0, 0, 0);
|
|
3937
|
+
}
|
|
3938
|
+
var carto = Cesium.Cartographic.fromCartesian(pos);
|
|
3939
|
+
carto.latitude = Cesium.Math.toDegrees(carto.latitude);
|
|
3940
|
+
carto.longitude = Cesium.Math.toDegrees(carto.longitude);
|
|
3941
|
+
// North
|
|
3942
|
+
if (n != 0) {
|
|
3943
|
+
carto = offsetPoint_1(carto, Number(n), 0);
|
|
3944
|
+
}
|
|
3945
|
+
// East
|
|
3946
|
+
if (e != 0) {
|
|
3947
|
+
carto = offsetPoint_1(carto, Number(e), 90);
|
|
3948
|
+
}
|
|
3949
|
+
// Altitude
|
|
3950
|
+
carto.height += Number(alt);
|
|
3951
|
+
var finalOffset = Cesium.Cartesian3.fromDegrees(carto.longitude, carto.latitude, carto.height);
|
|
3952
|
+
finalOffset.x -= pos.x;
|
|
3953
|
+
finalOffset.y -= pos.y;
|
|
3954
|
+
finalOffset.z -= pos.z;
|
|
3955
|
+
return finalOffset;
|
|
3956
|
+
};
|
|
3957
|
+
var getCurPos3d = function () {
|
|
3958
|
+
if (legacy_1.usingBoundingBox == false) {
|
|
3959
|
+
return Cesium.Matrix4.getTranslation(root.transform, new Cesium.Cartesian3());
|
|
3960
|
+
}
|
|
3961
|
+
else {
|
|
3962
|
+
return Cesium.Cartesian3.clone(root.boundingSphere.center);
|
|
3963
|
+
}
|
|
3964
|
+
};
|
|
3965
|
+
var pos3d = void 0;
|
|
3966
|
+
if (location.latitude != null && location.longitude != null) {
|
|
3967
|
+
pos3d = Cesium.Cartesian3.fromDegrees(EnsureNumber(location.longitude), EnsureNumber(location.latitude), EnsureNumber(location.altitude));
|
|
3943
3968
|
}
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
carto = offsetPoint_1(carto, Number(e), 90);
|
|
3969
|
+
if (!pos3d) {
|
|
3970
|
+
pos3d = getCurPos3d();
|
|
3947
3971
|
}
|
|
3948
|
-
|
|
3949
|
-
|
|
3950
|
-
|
|
3951
|
-
|
|
3952
|
-
|
|
3953
|
-
finalOffset.z -= pos.z;
|
|
3954
|
-
return finalOffset;
|
|
3955
|
-
};
|
|
3956
|
-
var getCurPos3d = function () {
|
|
3957
|
-
if (legacy_1.usingBoundingBox == false) {
|
|
3958
|
-
return Cesium.Matrix4.getTranslation(root.transform, new Cesium.Cartesian3());
|
|
3972
|
+
var offset = getOffset(pos3d, transform.x, transform.y, transform.z);
|
|
3973
|
+
if (bruceModels.Cartes.ValidateCartes3(offset)) {
|
|
3974
|
+
pos3d.x += offset.x;
|
|
3975
|
+
pos3d.y += offset.y;
|
|
3976
|
+
pos3d.z += offset.z;
|
|
3959
3977
|
}
|
|
3960
|
-
|
|
3961
|
-
|
|
3978
|
+
if (legacy_1.rotate) {
|
|
3979
|
+
var hpr = Cesium.HeadingPitchRoll.fromDegrees(EnsureNumber(transform.heading), EnsureNumber(transform.pitch), EnsureNumber(transform.roll), new Cesium.HeadingPitchRoll());
|
|
3980
|
+
root.transform = Cesium.Transforms.headingPitchRollToFixedFrame(pos3d, hpr);
|
|
3981
|
+
root.updateTransform();
|
|
3962
3982
|
}
|
|
3963
|
-
|
|
3964
|
-
|
|
3965
|
-
|
|
3966
|
-
|
|
3967
|
-
|
|
3968
|
-
|
|
3969
|
-
pos3d = getCurPos3d();
|
|
3970
|
-
}
|
|
3971
|
-
var offset = getOffset(pos3d, transform.x, transform.y, transform.z);
|
|
3972
|
-
if (bruceModels.Cartes.ValidateCartes3(offset)) {
|
|
3973
|
-
pos3d.x += offset.x;
|
|
3974
|
-
pos3d.y += offset.y;
|
|
3975
|
-
pos3d.z += offset.z;
|
|
3976
|
-
}
|
|
3977
|
-
if (legacy_1.rotate) {
|
|
3978
|
-
var hpr = Cesium.HeadingPitchRoll.fromDegrees(EnsureNumber(transform.heading), EnsureNumber(transform.pitch), EnsureNumber(transform.roll), new Cesium.HeadingPitchRoll());
|
|
3979
|
-
root.transform = Cesium.Transforms.headingPitchRollToFixedFrame(pos3d, hpr);
|
|
3983
|
+
var curPos3d = getCurPos3d();
|
|
3984
|
+
var newTransform = Cesium.Matrix4.pack(root.transform.clone(new Cesium.Matrix4()), []);
|
|
3985
|
+
newTransform[12] += pos3d.x - curPos3d.x;
|
|
3986
|
+
newTransform[13] += pos3d.y - curPos3d.y;
|
|
3987
|
+
newTransform[14] += pos3d.z - curPos3d.z;
|
|
3988
|
+
root.transform = Cesium.Matrix4.unpack(newTransform);
|
|
3980
3989
|
root.updateTransform();
|
|
3981
3990
|
}
|
|
3982
|
-
var curPos3d = getCurPos3d();
|
|
3983
|
-
var newTransform = Cesium.Matrix4.pack(root.transform.clone(new Cesium.Matrix4()), []);
|
|
3984
|
-
newTransform[12] += pos3d.x - curPos3d.x;
|
|
3985
|
-
newTransform[13] += pos3d.y - curPos3d.y;
|
|
3986
|
-
newTransform[14] += pos3d.z - curPos3d.z;
|
|
3987
|
-
root.transform = Cesium.Matrix4.unpack(newTransform);
|
|
3988
|
-
root.updateTransform();
|
|
3989
3991
|
}
|
|
3990
3992
|
else {
|
|
3991
3993
|
if (!(location === null || location === void 0 ? void 0 : location.latitude)) {
|
|
@@ -4369,7 +4371,7 @@
|
|
|
4369
4371
|
}
|
|
4370
4372
|
}
|
|
4371
4373
|
catch (e) {
|
|
4372
|
-
console.
|
|
4374
|
+
console.error(e);
|
|
4373
4375
|
}
|
|
4374
4376
|
}
|
|
4375
4377
|
i = 0;
|
|
@@ -5532,7 +5534,7 @@
|
|
|
5532
5534
|
return [2 /*return*/, legacyTileset];
|
|
5533
5535
|
case 3:
|
|
5534
5536
|
e_1 = _a.sent();
|
|
5535
|
-
console.
|
|
5537
|
+
console.error(e_1);
|
|
5536
5538
|
return [3 /*break*/, 4];
|
|
5537
5539
|
case 4: return [2 /*return*/];
|
|
5538
5540
|
}
|
|
@@ -5541,14 +5543,14 @@
|
|
|
5541
5543
|
}
|
|
5542
5544
|
function getTileset(params) {
|
|
5543
5545
|
return __awaiter(this, void 0, void 0, function () {
|
|
5544
|
-
var apiGetter, menuItem, api, tileset, e_2;
|
|
5546
|
+
var apiGetter, menuItem, api, tileset, typeMapping, e_2;
|
|
5545
5547
|
return __generator(this, function (_a) {
|
|
5546
5548
|
switch (_a.label) {
|
|
5547
5549
|
case 0:
|
|
5548
5550
|
apiGetter = params.apiGetter, menuItem = params.menuItem;
|
|
5549
5551
|
_a.label = 1;
|
|
5550
5552
|
case 1:
|
|
5551
|
-
_a.trys.push([1,
|
|
5553
|
+
_a.trys.push([1, 4, , 5]);
|
|
5552
5554
|
api = apiGetter.getApi(menuItem.tileset.ClientAccountID);
|
|
5553
5555
|
return [4 /*yield*/, bruceModels.Tileset.Get({
|
|
5554
5556
|
api: api,
|
|
@@ -5556,12 +5558,21 @@
|
|
|
5556
5558
|
})];
|
|
5557
5559
|
case 2:
|
|
5558
5560
|
tileset = (_a.sent()).tileset;
|
|
5559
|
-
return [
|
|
5561
|
+
return [4 /*yield*/, bruceModels.Tileset.GetTypes({
|
|
5562
|
+
api: api,
|
|
5563
|
+
tilesetIds: [menuItem.tileset.TilesetID]
|
|
5564
|
+
})];
|
|
5560
5565
|
case 3:
|
|
5566
|
+
typeMapping = (_a.sent()).typeMapping;
|
|
5567
|
+
return [2 /*return*/, {
|
|
5568
|
+
tileset: tileset,
|
|
5569
|
+
type: typeMapping[menuItem.tileset.TilesetID]
|
|
5570
|
+
}];
|
|
5571
|
+
case 4:
|
|
5561
5572
|
e_2 = _a.sent();
|
|
5562
5573
|
console.error(e_2);
|
|
5563
|
-
return [3 /*break*/,
|
|
5564
|
-
case
|
|
5574
|
+
return [3 /*break*/, 5];
|
|
5575
|
+
case 5: return [2 /*return*/];
|
|
5565
5576
|
}
|
|
5566
5577
|
});
|
|
5567
5578
|
});
|
|
@@ -5594,10 +5605,10 @@
|
|
|
5594
5605
|
Manager.prototype.Init = function () {
|
|
5595
5606
|
var _a, _b, _c;
|
|
5596
5607
|
return __awaiter(this, void 0, void 0, function () {
|
|
5597
|
-
var loadUrlOverride, itemUrl, url, urlParts, tilesetId, accountId, tileset, legacyTileset,
|
|
5608
|
+
var loadUrlOverride, itemUrl, url, urlParts, tilesetId, accountId, _d, tileset, type, LEGACY_TYPES, legacyTileset, _e, _f;
|
|
5598
5609
|
var _this = this;
|
|
5599
|
-
return __generator(this, function (
|
|
5600
|
-
switch (
|
|
5610
|
+
return __generator(this, function (_g) {
|
|
5611
|
+
switch (_g.label) {
|
|
5601
5612
|
case 0:
|
|
5602
5613
|
loadUrlOverride = null;
|
|
5603
5614
|
if (this.item.tileset) {
|
|
@@ -5627,35 +5638,31 @@
|
|
|
5627
5638
|
menuItem: this.item
|
|
5628
5639
|
})];
|
|
5629
5640
|
case 1:
|
|
5630
|
-
|
|
5641
|
+
_d = _g.sent(), tileset = _d.tileset, type = _d.type;
|
|
5631
5642
|
if (tileset && loadUrlOverride) {
|
|
5632
5643
|
tileset.loadUrl = loadUrlOverride;
|
|
5633
5644
|
}
|
|
5634
|
-
|
|
5635
|
-
|
|
5636
|
-
|
|
5637
|
-
|
|
5638
|
-
|
|
5639
|
-
|
|
5640
|
-
|
|
5641
|
-
return [3 /*break*/, 7];
|
|
5642
|
-
case 2:
|
|
5643
|
-
if (!tileset) return [3 /*break*/, 7];
|
|
5644
|
-
if (!tileset) return [3 /*break*/, 4];
|
|
5645
|
+
LEGACY_TYPES = [
|
|
5646
|
+
bruceModels.Tileset.EType.LegacyEntitiesSet,
|
|
5647
|
+
bruceModels.Tileset.EType.LegacyExternal,
|
|
5648
|
+
bruceModels.Tileset.EType.LegacyStatic
|
|
5649
|
+
];
|
|
5650
|
+
if (!LEGACY_TYPES.includes(type)) return [3 /*break*/, 6];
|
|
5651
|
+
if (!tileset) return [3 /*break*/, 3];
|
|
5645
5652
|
return [4 /*yield*/, getLegacyTileset({
|
|
5646
5653
|
apiGetter: this.apiGetter,
|
|
5647
5654
|
menuItem: this.item,
|
|
5648
5655
|
tileset: tileset
|
|
5649
5656
|
})];
|
|
5657
|
+
case 2:
|
|
5658
|
+
_e = _g.sent();
|
|
5659
|
+
return [3 /*break*/, 4];
|
|
5650
5660
|
case 3:
|
|
5651
|
-
|
|
5652
|
-
|
|
5661
|
+
_e = null;
|
|
5662
|
+
_g.label = 4;
|
|
5653
5663
|
case 4:
|
|
5654
|
-
|
|
5655
|
-
_f
|
|
5656
|
-
case 5:
|
|
5657
|
-
legacyTileset = _d;
|
|
5658
|
-
_e = this;
|
|
5664
|
+
legacyTileset = _e;
|
|
5665
|
+
_f = this;
|
|
5659
5666
|
return [4 /*yield*/, exports.TilesetRenderEngine.RenderLegacy({
|
|
5660
5667
|
apiGetter: this.apiGetter,
|
|
5661
5668
|
tileset: legacyTileset,
|
|
@@ -5663,17 +5670,27 @@
|
|
|
5663
5670
|
ionId: (_c = this.item.IonResource) === null || _c === void 0 ? void 0 : _c.AssetID,
|
|
5664
5671
|
loadUrl: loadUrlOverride
|
|
5665
5672
|
})];
|
|
5673
|
+
case 5:
|
|
5674
|
+
_f.cTileset = _g.sent();
|
|
5675
|
+
return [3 /*break*/, 7];
|
|
5666
5676
|
case 6:
|
|
5667
|
-
|
|
5668
|
-
|
|
5677
|
+
if (tileset) {
|
|
5678
|
+
this.cTileset = exports.TilesetRenderEngine.Render({
|
|
5679
|
+
apiGetter: this.apiGetter,
|
|
5680
|
+
tileset: tileset,
|
|
5681
|
+
viewer: this.viewer,
|
|
5682
|
+
coords: null
|
|
5683
|
+
});
|
|
5684
|
+
}
|
|
5685
|
+
_g.label = 7;
|
|
5669
5686
|
case 7:
|
|
5670
5687
|
this.cTileset.readyPromise.then(function () {
|
|
5671
5688
|
try {
|
|
5672
5689
|
if (_this.item.ApplyStyles) {
|
|
5673
5690
|
var api = _this.apiGetter.getApi();
|
|
5674
5691
|
_this.styler = new exports.TilesetRenderEngine.CadStyler(api, _this.cTileset, _this.item.styleId, _this.item.StyleMapping);
|
|
5675
|
-
_this.onCTilesetLoad();
|
|
5676
5692
|
}
|
|
5693
|
+
_this.onCTilesetLoad();
|
|
5677
5694
|
}
|
|
5678
5695
|
catch (e) {
|
|
5679
5696
|
console.error(e);
|
|
@@ -5693,7 +5710,7 @@
|
|
|
5693
5710
|
});
|
|
5694
5711
|
};
|
|
5695
5712
|
Manager.prototype.onCTilesetLoad = function () {
|
|
5696
|
-
|
|
5713
|
+
{
|
|
5697
5714
|
this.viewer.zoomTo(this.cTileset, new Cesium.HeadingPitchRange(0.0, -0.5, this.cTileset.boundingSphere.radius / 4.0));
|
|
5698
5715
|
}
|
|
5699
5716
|
};
|