bruce-cesium 7.6.9 → 7.7.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 +12357 -11878
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +8546 -8066
- 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 +148 -5
- package/dist/lib/rendering/menu-item-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js +5 -2
- package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entities-ids-render-manager.js +5 -2
- 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 +5 -2
- 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 +5 -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 +5 -2
- package/dist/lib/rendering/render-managers/entities/entity-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/other/assembly-render-manager.js +6 -0
- package/dist/lib/rendering/render-managers/other/assembly-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +19 -5
- package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
- package/dist/lib/rendering/tileset-render-engine.js +47 -18
- package/dist/lib/rendering/tileset-render-engine.js.map +1 -1
- package/dist/lib/rendering/tileset-styler.js +7 -5
- package/dist/lib/rendering/tileset-styler.js.map +1 -1
- package/dist/lib/rendering/view-render-engine.js +58 -63
- package/dist/lib/rendering/view-render-engine.js.map +1 -1
- package/dist/lib/rendering/visuals-register.js +31 -0
- package/dist/lib/rendering/visuals-register.js.map +1 -1
- package/dist/lib/utils/entity-utils.js +32 -36
- package/dist/lib/utils/entity-utils.js.map +1 -1
- package/dist/lib/utils/simplify-geometry.js +101 -5
- package/dist/lib/utils/simplify-geometry.js.map +1 -1
- package/dist/lib/utils/view-utils.js +156 -1
- package/dist/lib/utils/view-utils.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +1 -1
- package/dist/types/rendering/menu-item-manager.d.ts +24 -1
- package/dist/types/rendering/render-managers/other/assembly-render-manager.d.ts +2 -0
- package/dist/types/rendering/render-managers/tilesets/tileset-cad-render-manager.d.ts +8 -1
- package/dist/types/rendering/tileset-render-engine.d.ts +7 -0
- package/dist/types/rendering/view-render-engine.d.ts +6 -0
- package/dist/types/rendering/visuals-register.d.ts +15 -0
- package/dist/types/utils/simplify-geometry.d.ts +2 -2
- package/dist/types/utils/view-utils.d.ts +97 -1
- package/package.json +2 -2
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.ViewUtils = exports.MAX_COMPENSATED_LIGHT_INTENSITY = exports.LIGHT_INTENSITY_COMPENSATION = exports.LIGHTING_SETTINGS_VERSION = exports.DEFAULT_LIGHT_INTENSITY = exports.DEFAULT_BRIGHTNESS_SHIFT = exports.DEFAULT_LIVE_PADDING_SECONDS = exports.CESIUM_MODEL_SPACE_KEY = exports.CESIUM_TIMELINE_INTERVAL_KEY = exports.CESIUM_TIMELINE_LIVE_PADDING_KEY = exports.CESIUM_TIMELINE_LIVE_KEY = exports.CESIUM_TIMELINE_KEY = exports.CESIUM_INSPECTOR_KEY = void 0;
|
|
3
|
+
exports.ViewUtils = exports.MAX_COMPENSATED_LIGHT_INTENSITY = exports.LIGHT_INTENSITY_COMPENSATION = exports.LIGHTING_SETTINGS_VERSION = exports.DEFAULT_LIGHT_INTENSITY = exports.DEFAULT_BRIGHTNESS_SHIFT = exports.DEFAULT_LIVE_PADDING_SECONDS = exports.CESIUM_MODEL_SPACE_POSITIONING_KEY = exports.CESIUM_MODEL_SPACE_KEY = exports.CESIUM_TIMELINE_INTERVAL_KEY = exports.CESIUM_TIMELINE_LIVE_PADDING_KEY = exports.CESIUM_TIMELINE_LIVE_KEY = exports.CESIUM_TIMELINE_KEY = exports.CESIUM_INSPECTOR_KEY = void 0;
|
|
4
4
|
const bruce_models_1 = require("bruce-models");
|
|
5
5
|
const Cesium = require("cesium");
|
|
6
6
|
const cesium_utils_1 = require("../internal/cesium-utils");
|
|
@@ -10,6 +10,7 @@ exports.CESIUM_TIMELINE_LIVE_KEY = "_nextspace_timeline_live";
|
|
|
10
10
|
exports.CESIUM_TIMELINE_LIVE_PADDING_KEY = "_nextspace_timeline_live_padding";
|
|
11
11
|
exports.CESIUM_TIMELINE_INTERVAL_KEY = "_nextspace_timeline_interval";
|
|
12
12
|
exports.CESIUM_MODEL_SPACE_KEY = "_nextspace_model_space";
|
|
13
|
+
exports.CESIUM_MODEL_SPACE_POSITIONING_KEY = "_nextspace_model_space_positioning";
|
|
13
14
|
exports.DEFAULT_LIVE_PADDING_SECONDS = 30 * 60;
|
|
14
15
|
// Atmosphere shifts are left alone by default. Tuning against a CAD scene showed the lift washing the
|
|
15
16
|
// sky without helping models, which are lit by the environment map rather than by the atmosphere.
|
|
@@ -560,5 +561,159 @@ var ViewUtils;
|
|
|
560
561
|
return Boolean(viewer[exports.CESIUM_MODEL_SPACE_KEY]);
|
|
561
562
|
}
|
|
562
563
|
ViewUtils.GetModelSpace = GetModelSpace;
|
|
564
|
+
/**
|
|
565
|
+
* How a model-space scene places what it draws, saved on a bookmark so it keeps the placement it was made with.
|
|
566
|
+
*/
|
|
567
|
+
let EModelSpacePositioning;
|
|
568
|
+
(function (EModelSpacePositioning) {
|
|
569
|
+
// Each CAD tileset or Assembly drawn on 0,0 lat/lon by itself, ignoring its offset from its UCS.
|
|
570
|
+
EModelSpacePositioning["Legacy"] = "legacy";
|
|
571
|
+
// Everything drawn where it really is, with one origin, usually a UCS, treated as 0,0,0.
|
|
572
|
+
EModelSpacePositioning["Ucs"] = "ucs";
|
|
573
|
+
})(EModelSpacePositioning = ViewUtils.EModelSpacePositioning || (ViewUtils.EModelSpacePositioning = {}));
|
|
574
|
+
/**
|
|
575
|
+
* Returns the placement a model-space bookmark asks for, legacy when it saved none and shows one item at most.
|
|
576
|
+
* @param settings the bookmark's model-space settings.
|
|
577
|
+
* @param menuItemCount how many CAD tileset and Assembly menu items the bookmark enables.
|
|
578
|
+
*/
|
|
579
|
+
function ResolveModelSpacePositioning(settings, menuItemCount) {
|
|
580
|
+
if ((settings === null || settings === void 0 ? void 0 : settings.positioning) === EModelSpacePositioning.Ucs || (settings === null || settings === void 0 ? void 0 : settings.positioning) === EModelSpacePositioning.Legacy) {
|
|
581
|
+
return settings.positioning;
|
|
582
|
+
}
|
|
583
|
+
return menuItemCount > 1 ? EModelSpacePositioning.Ucs : EModelSpacePositioning.Legacy;
|
|
584
|
+
}
|
|
585
|
+
ViewUtils.ResolveModelSpacePositioning = ResolveModelSpacePositioning;
|
|
586
|
+
/**
|
|
587
|
+
* Sets how model-space places what it draws, without moving what is drawn; see MenuItemManager for that.
|
|
588
|
+
* @param viewer
|
|
589
|
+
* @param positioning
|
|
590
|
+
* @param origin the geospatial point treated as 0,0,0, see MenuItemManager.ResolveModelSpaceOrigin.
|
|
591
|
+
*/
|
|
592
|
+
function SetModelSpacePositioning(viewer, positioning, origin) {
|
|
593
|
+
if (!viewer) {
|
|
594
|
+
return;
|
|
595
|
+
}
|
|
596
|
+
const state = {
|
|
597
|
+
positioning: positioning !== null && positioning !== void 0 ? positioning : EModelSpacePositioning.Legacy,
|
|
598
|
+
origin: bruce_models_1.Carto.ValidateCarto(origin) ? {
|
|
599
|
+
latitude: Number(origin.latitude),
|
|
600
|
+
longitude: Number(origin.longitude),
|
|
601
|
+
altitude: Number(origin.altitude) || 0
|
|
602
|
+
} : null
|
|
603
|
+
};
|
|
604
|
+
viewer[exports.CESIUM_MODEL_SPACE_POSITIONING_KEY] = state;
|
|
605
|
+
}
|
|
606
|
+
ViewUtils.SetModelSpacePositioning = SetModelSpacePositioning;
|
|
607
|
+
/**
|
|
608
|
+
* Returns how model-space places what it draws, or null when the viewer is not in model-space.
|
|
609
|
+
* @param viewer
|
|
610
|
+
*/
|
|
611
|
+
function GetModelSpacePositioning(viewer) {
|
|
612
|
+
var _a;
|
|
613
|
+
if (!GetModelSpace(viewer)) {
|
|
614
|
+
return null;
|
|
615
|
+
}
|
|
616
|
+
const state = viewer[exports.CESIUM_MODEL_SPACE_POSITIONING_KEY];
|
|
617
|
+
return (_a = state === null || state === void 0 ? void 0 : state.positioning) !== null && _a !== void 0 ? _a : EModelSpacePositioning.Legacy;
|
|
618
|
+
}
|
|
619
|
+
ViewUtils.GetModelSpacePositioning = GetModelSpacePositioning;
|
|
620
|
+
/**
|
|
621
|
+
* Returns whether model-space draws everything where it is and treats an origin as 0,0,0.
|
|
622
|
+
* @param viewer
|
|
623
|
+
*/
|
|
624
|
+
function IsModelSpaceUcs(viewer) {
|
|
625
|
+
return GetModelSpacePositioning(viewer) === EModelSpacePositioning.Ucs;
|
|
626
|
+
}
|
|
627
|
+
ViewUtils.IsModelSpaceUcs = IsModelSpaceUcs;
|
|
628
|
+
/**
|
|
629
|
+
* Returns the geospatial point treated as 0,0,0, or null when nothing names one and 0,0 lat/lon is used.
|
|
630
|
+
* @param viewer
|
|
631
|
+
*/
|
|
632
|
+
function GetModelSpaceOrigin(viewer) {
|
|
633
|
+
const state = viewer === null || viewer === void 0 ? void 0 : viewer[exports.CESIUM_MODEL_SPACE_POSITIONING_KEY];
|
|
634
|
+
return (state === null || state === void 0 ? void 0 : state.origin) ? { ...state.origin } : null;
|
|
635
|
+
}
|
|
636
|
+
ViewUtils.GetModelSpaceOrigin = GetModelSpaceOrigin;
|
|
637
|
+
/**
|
|
638
|
+
* Returns the camera's position and turn in model-space terms, eg. to keep the same view of another origin.
|
|
639
|
+
* @param viewer
|
|
640
|
+
*/
|
|
641
|
+
function GetModelSpaceCamera(viewer) {
|
|
642
|
+
const point = ModelSpaceFromPos3d(viewer, viewer.camera.position);
|
|
643
|
+
return {
|
|
644
|
+
...point,
|
|
645
|
+
heading: Cesium.Math.toDegrees(Number(viewer.camera.heading) || 0),
|
|
646
|
+
pitch: Cesium.Math.toDegrees(Number(viewer.camera.pitch) || 0),
|
|
647
|
+
roll: Cesium.Math.toDegrees(Number(viewer.camera.roll) || 0)
|
|
648
|
+
};
|
|
649
|
+
}
|
|
650
|
+
ViewUtils.GetModelSpaceCamera = GetModelSpaceCamera;
|
|
651
|
+
/**
|
|
652
|
+
* Describes how a CAD tileset or Assembly is placed, which UCS placement does the same whatever the origin.
|
|
653
|
+
* @param modelSpace whether the item is drawn in model-space.
|
|
654
|
+
* @param positioning the model-space placement it uses.
|
|
655
|
+
*/
|
|
656
|
+
function GetModelSpacePlacementKey(modelSpace, positioning) {
|
|
657
|
+
if (!modelSpace) {
|
|
658
|
+
return "geo";
|
|
659
|
+
}
|
|
660
|
+
return positioning === EModelSpacePositioning.Ucs ? EModelSpacePositioning.Ucs : EModelSpacePositioning.Legacy;
|
|
661
|
+
}
|
|
662
|
+
ViewUtils.GetModelSpacePlacementKey = GetModelSpacePlacementKey;
|
|
663
|
+
/**
|
|
664
|
+
* Returns the frame model-space x/y/z are measured in: east, north and up from the origin, else 0,0 lat/lon.
|
|
665
|
+
* @param viewer
|
|
666
|
+
*/
|
|
667
|
+
function GetModelSpaceFrame(viewer) {
|
|
668
|
+
const origin = IsModelSpaceUcs(viewer) ? GetModelSpaceOrigin(viewer) : null;
|
|
669
|
+
const pos3d = origin
|
|
670
|
+
? Cesium.Cartesian3.fromDegrees(origin.longitude, origin.latitude, origin.altitude)
|
|
671
|
+
: Cesium.Cartesian3.fromDegrees(0, 0, 0);
|
|
672
|
+
return Cesium.Transforms.eastNorthUpToFixedFrame(pos3d);
|
|
673
|
+
}
|
|
674
|
+
ViewUtils.GetModelSpaceFrame = GetModelSpaceFrame;
|
|
675
|
+
/**
|
|
676
|
+
* Turns model-space x/y/z metres into a position in the scene.
|
|
677
|
+
* @param viewer
|
|
678
|
+
* @param point
|
|
679
|
+
*/
|
|
680
|
+
function ModelSpaceToPos3d(viewer, point) {
|
|
681
|
+
const local = new Cesium.Cartesian3(Number(point === null || point === void 0 ? void 0 : point.x) || 0, Number(point === null || point === void 0 ? void 0 : point.y) || 0, Number(point === null || point === void 0 ? void 0 : point.z) || 0);
|
|
682
|
+
return Cesium.Matrix4.multiplyByPoint(GetModelSpaceFrame(viewer), local, new Cesium.Cartesian3());
|
|
683
|
+
}
|
|
684
|
+
ViewUtils.ModelSpaceToPos3d = ModelSpaceToPos3d;
|
|
685
|
+
/**
|
|
686
|
+
* Turns a position in the scene into model-space x/y/z metres from the origin.
|
|
687
|
+
* @param viewer
|
|
688
|
+
* @param pos3d
|
|
689
|
+
*/
|
|
690
|
+
function ModelSpaceFromPos3d(viewer, pos3d) {
|
|
691
|
+
const toLocal = Cesium.Matrix4.inverseTransformation(GetModelSpaceFrame(viewer), new Cesium.Matrix4());
|
|
692
|
+
const local = Cesium.Matrix4.multiplyByPoint(toLocal, pos3d, new Cesium.Cartesian3());
|
|
693
|
+
return { x: local.x, y: local.y, z: local.z };
|
|
694
|
+
}
|
|
695
|
+
ViewUtils.ModelSpaceFromPos3d = ModelSpaceFromPos3d;
|
|
696
|
+
/**
|
|
697
|
+
* Moves the camera to a model-space position, measured from the origin in effect.
|
|
698
|
+
* @param viewer
|
|
699
|
+
* @param camera
|
|
700
|
+
* @param durationSeconds
|
|
701
|
+
*/
|
|
702
|
+
function FlyToModelSpaceCamera(viewer, camera, durationSeconds) {
|
|
703
|
+
if (!viewer || viewer.isDestroyed()) {
|
|
704
|
+
return;
|
|
705
|
+
}
|
|
706
|
+
viewer.camera.flyTo({
|
|
707
|
+
destination: ModelSpaceToPos3d(viewer, camera),
|
|
708
|
+
orientation: {
|
|
709
|
+
heading: Cesium.Math.toRadians(Number(camera.heading) || 0),
|
|
710
|
+
pitch: Cesium.Math.toRadians(Number(camera.pitch) || 0),
|
|
711
|
+
roll: Cesium.Math.toRadians(Number(camera.roll) || 0)
|
|
712
|
+
},
|
|
713
|
+
duration: durationSeconds,
|
|
714
|
+
easingFunction: Cesium.EasingFunction.CUBIC_IN_OUT
|
|
715
|
+
});
|
|
716
|
+
}
|
|
717
|
+
ViewUtils.FlyToModelSpaceCamera = FlyToModelSpaceCamera;
|
|
563
718
|
})(ViewUtils = exports.ViewUtils || (exports.ViewUtils = {}));
|
|
564
719
|
//# sourceMappingURL=view-utils.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"view-utils.js","sourceRoot":"","sources":["../../../src/utils/view-utils.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"view-utils.js","sourceRoot":"","sources":["../../../src/utils/view-utils.ts"],"names":[],"mappings":"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"}
|
|
@@ -72,7 +72,7 @@ export * from "./widgets/widget-info-view";
|
|
|
72
72
|
export * from "./widgets/widget-left-panel";
|
|
73
73
|
export * from "./widgets/widget-nav-compass";
|
|
74
74
|
export * from "./widgets/widget-view-bar";
|
|
75
|
-
export declare const VERSION = "7.
|
|
75
|
+
export declare const VERSION = "7.7.1";
|
|
76
76
|
/**
|
|
77
77
|
* Updates the environment instance used by bruce-cesium to one specified.
|
|
78
78
|
* This can be used to ensure that the instance a parent is referencing is shared between bruce-cesium, bruce-models, and the parent app.
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
import { ApiGetters, BruceApi, BruceEvent, Entity, EntityHistoricData, MenuItem, Style } from "bruce-models";
|
|
1
|
+
import { ApiGetters, BruceApi, BruceEvent, Carto, Entity, EntityHistoricData, IDictionary, MenuItem, Style } from "bruce-models";
|
|
2
2
|
import * as Cesium from "cesium";
|
|
3
3
|
import * as SeriesSegmentTypes from "../internal/series-segment";
|
|
4
4
|
import { RenderManager } from "./render-managers/render-manager";
|
|
5
5
|
import { VisualsRegister } from "./visuals-register";
|
|
6
6
|
import { EntitySimulation } from "./render-managers/common/entity-simulation";
|
|
7
7
|
import { CesiumViewMonitor } from "../viewer/cesium-view-monitor";
|
|
8
|
+
import { ViewUtils } from "../utils/view-utils";
|
|
8
9
|
interface IRenderedItem {
|
|
9
10
|
id: string;
|
|
10
11
|
type: MenuItem.EType;
|
|
@@ -33,6 +34,7 @@ export declare namespace MenuItemManager {
|
|
|
33
34
|
private authoredAlternations;
|
|
34
35
|
private styleOverlay;
|
|
35
36
|
private styleOverlayCounter;
|
|
37
|
+
private modelSpaceOriginRequest;
|
|
36
38
|
private itemStyleRecords;
|
|
37
39
|
private itemStyleRecordsLoading;
|
|
38
40
|
get StyleOverlay(): Style.IEntitySettings | null;
|
|
@@ -135,6 +137,8 @@ export declare namespace MenuItemManager {
|
|
|
135
137
|
private renderInPlaceOf;
|
|
136
138
|
private isHandoffCapable;
|
|
137
139
|
private isStyleSwapCapable;
|
|
140
|
+
private modelSpacePlacementKey;
|
|
141
|
+
private keepsModelSpacePlacement;
|
|
138
142
|
private computeHandoffKey;
|
|
139
143
|
private tryClaimHandoffPayload;
|
|
140
144
|
/**
|
|
@@ -149,6 +153,25 @@ export declare namespace MenuItemManager {
|
|
|
149
153
|
* Returns the tags and attenuation the item's view authored, before any bookmark wrote over them.
|
|
150
154
|
*/
|
|
151
155
|
GetAuthoredAlternation(item: MenuItem.IItem): MenuItem.IItem;
|
|
156
|
+
/**
|
|
157
|
+
* Changes model-space placement, re-places what is drawn and keeps the camera's view of the new origin.
|
|
158
|
+
* @param positioning
|
|
159
|
+
* @param items what the origin is found from, see ResolveModelSpaceOrigin. Default: what is drawn now.
|
|
160
|
+
*/
|
|
161
|
+
SetModelSpacePositioning(positioning: ViewUtils.EModelSpacePositioning, items?: MenuItem.IItem[]): Promise<void>;
|
|
162
|
+
/**
|
|
163
|
+
* Finds the point UCS model-space treats as 0,0,0, from the first of the items whose root names a place.
|
|
164
|
+
* @param items menu items to look through in order, children included; other types are passed over.
|
|
165
|
+
* @returns its UCS location, else its root's, else a CAD tileset's own; null when none names a place.
|
|
166
|
+
*/
|
|
167
|
+
ResolveModelSpaceOrigin(items: MenuItem.IItem[]): Promise<Carto.ICarto | null>;
|
|
168
|
+
/**
|
|
169
|
+
* Works out which UCS each CAD tileset or Assembly menu item is drawn from, to tell what can share a scene.
|
|
170
|
+
* @param items menu items to look at, children included; other types are left out.
|
|
171
|
+
* @returns menu item ID -> the UCS Entity ID, else the root Entity ID, else null when it has no readable root.
|
|
172
|
+
*/
|
|
173
|
+
GetModelSpaceUcsIds(items: MenuItem.IItem[]): Promise<IDictionary<string | null>>;
|
|
174
|
+
private resolveModelSpaceRoots;
|
|
152
175
|
GetEnabledItemIds(): string[];
|
|
153
176
|
GetEnabledItem(id: string): IRenderedItem;
|
|
154
177
|
/**
|
|
@@ -31,6 +31,8 @@ export declare namespace AssemblyRenderManager {
|
|
|
31
31
|
private hierarchyNodeByEntityId;
|
|
32
32
|
private modelSpace;
|
|
33
33
|
get ModelSpace(): boolean;
|
|
34
|
+
private modelSpaceUcs;
|
|
35
|
+
get ModelSpacePlacementKey(): string;
|
|
34
36
|
/**
|
|
35
37
|
* Every node of the Assembly read so far, so a caller can work out motion in the Assembly's own terms.
|
|
36
38
|
* @param timeMs the scene time for each node's current pose. Default: the clock's.
|
|
@@ -29,6 +29,8 @@ export declare namespace TilesetCadRenderManager {
|
|
|
29
29
|
get Disposed(): boolean;
|
|
30
30
|
private modelSpace;
|
|
31
31
|
get ModelSpace(): boolean;
|
|
32
|
+
private modelSpaceUcs;
|
|
33
|
+
get ModelSpacePlacementKey(): string;
|
|
32
34
|
private visualsManager;
|
|
33
35
|
private cTileset;
|
|
34
36
|
get Tileset(): Cesium.Cesium3DTileset;
|
|
@@ -114,7 +116,12 @@ export declare namespace TilesetCadRenderManager {
|
|
|
114
116
|
roll?: number;
|
|
115
117
|
cTileset?: TilesetRenderEngine.ITilesetExt;
|
|
116
118
|
}): EntityCoords.IEntityCoords;
|
|
117
|
-
|
|
119
|
+
/**
|
|
120
|
+
* Returns the key two items must share to hand a loaded tileset from one to the other.
|
|
121
|
+
* @param item
|
|
122
|
+
* @param placement whether it is drawn in model-space, or a ViewUtils.GetModelSpacePlacementKey.
|
|
123
|
+
*/
|
|
124
|
+
static GetHandoffKey(item: MenuItem.Item.ICadTileset, placement?: boolean | string): string | null;
|
|
118
125
|
PrepareHandoff(): RenderManager.IHandoffPayload | null;
|
|
119
126
|
AdoptHandoff(payload: RenderManager.IHandoffPayload): void;
|
|
120
127
|
/**
|
|
@@ -51,6 +51,7 @@ export declare namespace TilesetRenderEngine {
|
|
|
51
51
|
}
|
|
52
52
|
interface ITilesetExt extends Cesium.Cesium3DTileset {
|
|
53
53
|
_bruceCoords?: IPositionParams;
|
|
54
|
+
_bruceModelSpace?: boolean;
|
|
54
55
|
_bruceSettings?: ISettingsParams;
|
|
55
56
|
_bruceDateRange?: IDateRange;
|
|
56
57
|
}
|
|
@@ -85,6 +86,12 @@ export declare namespace TilesetRenderEngine {
|
|
|
85
86
|
* @returns
|
|
86
87
|
*/
|
|
87
88
|
function OnTilesetReady(cTileset: Cesium.Cesium3DTileset): Promise<void>;
|
|
89
|
+
/**
|
|
90
|
+
* Returns what moves a real location, eg. a feature's, to where legacy model-space draws its tileset.
|
|
91
|
+
* @param cTileset
|
|
92
|
+
* @returns null when the tileset is drawn where its coords put it.
|
|
93
|
+
*/
|
|
94
|
+
function GetModelSpaceShift(cTileset: Cesium.Cesium3DTileset): Cesium.Matrix4 | null;
|
|
88
95
|
function ApplyPosition(params: {
|
|
89
96
|
cTileset: Cesium.Cesium3DTileset;
|
|
90
97
|
position: IPositionParams;
|
|
@@ -2,6 +2,12 @@ import { ApiGetters, BruceApi, ProjectView, ProjectViewBookmark } from "bruce-mo
|
|
|
2
2
|
import * as Cesium from "cesium";
|
|
3
3
|
import { MenuItemManager } from "./menu-item-manager";
|
|
4
4
|
export declare namespace ViewRenderEngine {
|
|
5
|
+
/**
|
|
6
|
+
* Returns where a model-space bookmark's camera goes, measured from the origin in effect.
|
|
7
|
+
* @param viewer
|
|
8
|
+
* @param camera x/y/z metres, or lat/lon read as metres from 0,0 at sea level.
|
|
9
|
+
*/
|
|
10
|
+
function GetModelSpaceCameraPos3d(viewer: Cesium.Viewer, camera: ProjectViewBookmark.Web3d.ICamera): Cesium.Cartesian3;
|
|
5
11
|
/**
|
|
6
12
|
* Whether a bookmark is a Cesium scene this engine can render.
|
|
7
13
|
*/
|
|
@@ -111,6 +111,12 @@ export declare namespace VisualsRegister {
|
|
|
111
111
|
private activeChunkedIntervals;
|
|
112
112
|
private onUpdate;
|
|
113
113
|
get OnUpdate(): BruceEvent<IVisualUpdate>;
|
|
114
|
+
private styleChangeQueue;
|
|
115
|
+
private onStyleChange;
|
|
116
|
+
/**
|
|
117
|
+
* Fires after one or more regos changed their resolved style through SetRegoStyle.
|
|
118
|
+
*/
|
|
119
|
+
get OnStyleChange(): BruceEvent<void>;
|
|
114
120
|
private states;
|
|
115
121
|
private cameraCullerDispose;
|
|
116
122
|
private updateQueue;
|
|
@@ -545,6 +551,15 @@ export declare namespace VisualsRegister {
|
|
|
545
551
|
entityIds: string[];
|
|
546
552
|
menuItemIds?: string[];
|
|
547
553
|
}): void;
|
|
554
|
+
/**
|
|
555
|
+
* Records the style a rego resolved to, and queues OnStyleChange when that moved.
|
|
556
|
+
* Assigned outright, so a restyle that traces nothing clears the old key.
|
|
557
|
+
*/
|
|
558
|
+
SetRegoStyle(params: {
|
|
559
|
+
rego: IVisualRego;
|
|
560
|
+
styleId?: number;
|
|
561
|
+
styleEffective?: string;
|
|
562
|
+
}): void;
|
|
548
563
|
private updateAllEntities;
|
|
549
564
|
/**
|
|
550
565
|
* Sets opacity for given set of entities.
|
|
@@ -19,8 +19,8 @@ export declare namespace SimplifyGeometry {
|
|
|
19
19
|
/**
|
|
20
20
|
* Whether a simplified geometry still describes something a renderer can triangulate.
|
|
21
21
|
* @param geometry the simplification result.
|
|
22
|
-
* @returns false when any polygon has a collapsed
|
|
23
|
-
*
|
|
22
|
+
* @returns false when any polygon has a collapsed, zero area or self intersecting ring, a hole outside
|
|
23
|
+
* its outer ring or inside another hole, rings whose edges cross, or a hole wound like its outer ring.
|
|
24
24
|
*/
|
|
25
25
|
function IsSafeToRender(geometry: Geometry.IGeometry): boolean;
|
|
26
26
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { ProjectViewLegacyBookmark, ProjectViewTile } from "bruce-models";
|
|
1
|
+
import { Carto, ProjectViewLegacyBookmark, ProjectViewTile } from "bruce-models";
|
|
2
2
|
import * as Cesium from "cesium";
|
|
3
3
|
export declare const CESIUM_INSPECTOR_KEY = "_nextspace_inspector";
|
|
4
4
|
export declare const CESIUM_TIMELINE_KEY = "_nextspace_timeline";
|
|
@@ -6,6 +6,7 @@ export declare const CESIUM_TIMELINE_LIVE_KEY = "_nextspace_timeline_live";
|
|
|
6
6
|
export declare const CESIUM_TIMELINE_LIVE_PADDING_KEY = "_nextspace_timeline_live_padding";
|
|
7
7
|
export declare const CESIUM_TIMELINE_INTERVAL_KEY = "_nextspace_timeline_interval";
|
|
8
8
|
export declare const CESIUM_MODEL_SPACE_KEY = "_nextspace_model_space";
|
|
9
|
+
export declare const CESIUM_MODEL_SPACE_POSITIONING_KEY = "_nextspace_model_space_positioning";
|
|
9
10
|
export declare const DEFAULT_LIVE_PADDING_SECONDS: number;
|
|
10
11
|
export declare const DEFAULT_BRIGHTNESS_SHIFT = 0;
|
|
11
12
|
export declare const DEFAULT_LIGHT_INTENSITY = 2;
|
|
@@ -151,4 +152,99 @@ export declare namespace ViewUtils {
|
|
|
151
152
|
}): void;
|
|
152
153
|
function SetModelSpace(viewer: Cesium.Viewer, modelSpace: boolean): void;
|
|
153
154
|
function GetModelSpace(viewer: Cesium.Viewer): boolean;
|
|
155
|
+
/**
|
|
156
|
+
* How a model-space scene places what it draws, saved on a bookmark so it keeps the placement it was made with.
|
|
157
|
+
*/
|
|
158
|
+
enum EModelSpacePositioning {
|
|
159
|
+
Legacy = "legacy",
|
|
160
|
+
Ucs = "ucs"
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* A bookmark's model-space settings, which never hold the origin since the items drawn name it each time.
|
|
164
|
+
*/
|
|
165
|
+
interface IModelSpaceSettings {
|
|
166
|
+
positioning?: EModelSpacePositioning;
|
|
167
|
+
}
|
|
168
|
+
/**
|
|
169
|
+
* A camera given in model-space x/y/z metres from the origin, as a model-space bookmark saves it.
|
|
170
|
+
*/
|
|
171
|
+
interface IModelSpaceCamera {
|
|
172
|
+
x: number;
|
|
173
|
+
y: number;
|
|
174
|
+
z: number;
|
|
175
|
+
heading?: number;
|
|
176
|
+
pitch?: number;
|
|
177
|
+
roll?: number;
|
|
178
|
+
}
|
|
179
|
+
/**
|
|
180
|
+
* Returns the placement a model-space bookmark asks for, legacy when it saved none and shows one item at most.
|
|
181
|
+
* @param settings the bookmark's model-space settings.
|
|
182
|
+
* @param menuItemCount how many CAD tileset and Assembly menu items the bookmark enables.
|
|
183
|
+
*/
|
|
184
|
+
function ResolveModelSpacePositioning(settings: IModelSpaceSettings | null | undefined, menuItemCount: number): EModelSpacePositioning;
|
|
185
|
+
/**
|
|
186
|
+
* Sets how model-space places what it draws, without moving what is drawn; see MenuItemManager for that.
|
|
187
|
+
* @param viewer
|
|
188
|
+
* @param positioning
|
|
189
|
+
* @param origin the geospatial point treated as 0,0,0, see MenuItemManager.ResolveModelSpaceOrigin.
|
|
190
|
+
*/
|
|
191
|
+
function SetModelSpacePositioning(viewer: Cesium.Viewer, positioning: EModelSpacePositioning, origin?: Carto.ICarto | null): void;
|
|
192
|
+
/**
|
|
193
|
+
* Returns how model-space places what it draws, or null when the viewer is not in model-space.
|
|
194
|
+
* @param viewer
|
|
195
|
+
*/
|
|
196
|
+
function GetModelSpacePositioning(viewer: Cesium.Viewer): EModelSpacePositioning | null;
|
|
197
|
+
/**
|
|
198
|
+
* Returns whether model-space draws everything where it is and treats an origin as 0,0,0.
|
|
199
|
+
* @param viewer
|
|
200
|
+
*/
|
|
201
|
+
function IsModelSpaceUcs(viewer: Cesium.Viewer): boolean;
|
|
202
|
+
/**
|
|
203
|
+
* Returns the geospatial point treated as 0,0,0, or null when nothing names one and 0,0 lat/lon is used.
|
|
204
|
+
* @param viewer
|
|
205
|
+
*/
|
|
206
|
+
function GetModelSpaceOrigin(viewer: Cesium.Viewer): Carto.ICarto | null;
|
|
207
|
+
/**
|
|
208
|
+
* Returns the camera's position and turn in model-space terms, eg. to keep the same view of another origin.
|
|
209
|
+
* @param viewer
|
|
210
|
+
*/
|
|
211
|
+
function GetModelSpaceCamera(viewer: Cesium.Viewer): IModelSpaceCamera;
|
|
212
|
+
/**
|
|
213
|
+
* Describes how a CAD tileset or Assembly is placed, which UCS placement does the same whatever the origin.
|
|
214
|
+
* @param modelSpace whether the item is drawn in model-space.
|
|
215
|
+
* @param positioning the model-space placement it uses.
|
|
216
|
+
*/
|
|
217
|
+
function GetModelSpacePlacementKey(modelSpace: boolean, positioning?: EModelSpacePositioning | null): string;
|
|
218
|
+
/**
|
|
219
|
+
* Returns the frame model-space x/y/z are measured in: east, north and up from the origin, else 0,0 lat/lon.
|
|
220
|
+
* @param viewer
|
|
221
|
+
*/
|
|
222
|
+
function GetModelSpaceFrame(viewer: Cesium.Viewer): Cesium.Matrix4;
|
|
223
|
+
/**
|
|
224
|
+
* Turns model-space x/y/z metres into a position in the scene.
|
|
225
|
+
* @param viewer
|
|
226
|
+
* @param point
|
|
227
|
+
*/
|
|
228
|
+
function ModelSpaceToPos3d(viewer: Cesium.Viewer, point: {
|
|
229
|
+
x: number;
|
|
230
|
+
y: number;
|
|
231
|
+
z: number;
|
|
232
|
+
}): Cesium.Cartesian3;
|
|
233
|
+
/**
|
|
234
|
+
* Turns a position in the scene into model-space x/y/z metres from the origin.
|
|
235
|
+
* @param viewer
|
|
236
|
+
* @param pos3d
|
|
237
|
+
*/
|
|
238
|
+
function ModelSpaceFromPos3d(viewer: Cesium.Viewer, pos3d: Cesium.Cartesian3): {
|
|
239
|
+
x: number;
|
|
240
|
+
y: number;
|
|
241
|
+
z: number;
|
|
242
|
+
};
|
|
243
|
+
/**
|
|
244
|
+
* Moves the camera to a model-space position, measured from the origin in effect.
|
|
245
|
+
* @param viewer
|
|
246
|
+
* @param camera
|
|
247
|
+
* @param durationSeconds
|
|
248
|
+
*/
|
|
249
|
+
function FlyToModelSpaceCamera(viewer: Cesium.Viewer, camera: IModelSpaceCamera, durationSeconds: number): void;
|
|
154
250
|
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "bruce-cesium",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.7.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"keywords": [],
|
|
6
6
|
"main": "dist/bruce-cesium.umd.js",
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
"typescript": "^5.0.4"
|
|
85
85
|
},
|
|
86
86
|
"dependencies": {
|
|
87
|
-
"bruce-models": "^7.1.
|
|
87
|
+
"bruce-models": "^7.1.131",
|
|
88
88
|
"tslib": "^2.4.1"
|
|
89
89
|
}
|
|
90
90
|
}
|