bruce-cesium 7.6.1 → 7.6.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 +2535 -385
- package/dist/bruce-cesium.es5.js.map +1 -1
- package/dist/bruce-cesium.umd.js +2524 -382
- package/dist/bruce-cesium.umd.js.map +1 -1
- package/dist/lib/bruce-cesium.js +3 -1
- package/dist/lib/bruce-cesium.js.map +1 -1
- package/dist/lib/rendering/cesium-animated-property.js +63 -107
- package/dist/lib/rendering/cesium-animated-property.js.map +1 -1
- package/dist/lib/rendering/entity-gatherer.js +11 -3
- package/dist/lib/rendering/entity-gatherer.js.map +1 -1
- package/dist/lib/rendering/menu-item-creator.js +44 -23
- package/dist/lib/rendering/menu-item-creator.js.map +1 -1
- package/dist/lib/rendering/menu-item-manager.js +199 -17
- package/dist/lib/rendering/menu-item-manager.js.map +1 -1
- package/dist/lib/rendering/menu-item-styles.js +151 -0
- package/dist/lib/rendering/menu-item-styles.js.map +1 -0
- package/dist/lib/rendering/relation-render-engine.js +24 -5
- package/dist/lib/rendering/relation-render-engine.js.map +1 -1
- package/dist/lib/rendering/render-managers/common/entity-label-group.js +13 -9
- package/dist/lib/rendering/render-managers/common/entity-label-group.js.map +1 -1
- package/dist/lib/rendering/render-managers/common/entity-label.js +68 -7
- package/dist/lib/rendering/render-managers/common/entity-label.js.map +1 -1
- package/dist/lib/rendering/render-managers/common/entity-rerender-maintain-state.js +44 -5
- package/dist/lib/rendering/render-managers/common/entity-rerender-maintain-state.js.map +1 -1
- package/dist/lib/rendering/render-managers/common/entity-simulation.js +483 -0
- package/dist/lib/rendering/render-managers/common/entity-simulation.js.map +1 -0
- package/dist/lib/rendering/render-managers/common/historic-trail.js +123 -0
- package/dist/lib/rendering/render-managers/common/historic-trail.js.map +1 -0
- package/dist/lib/rendering/render-managers/common/historic-utils.js +17 -6
- package/dist/lib/rendering/render-managers/common/historic-utils.js.map +1 -1
- package/dist/lib/rendering/render-managers/entities/entities-datalab-render-manager.js +13 -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 +20 -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 +13 -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 +66 -5
- 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 +11 -1
- 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 +745 -106
- package/dist/lib/rendering/render-managers/other/assembly-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/other/legacy-relations-render-manager.js +23 -1
- package/dist/lib/rendering/render-managers/other/legacy-relations-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/other/relations-render-manager.js +23 -1
- package/dist/lib/rendering/render-managers/other/relations-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js +19 -0
- package/dist/lib/rendering/render-managers/tilesets/tileset-arb-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +145 -40
- package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
- package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js +18 -0
- package/dist/lib/rendering/render-managers/tilesets/tileset-entities-render-manager.js.map +1 -1
- package/dist/lib/rendering/tileset-styler.js +1 -1
- package/dist/lib/rendering/tileset-styler.js.map +1 -1
- package/dist/lib/rendering/visual-register-culler.js +2 -0
- package/dist/lib/rendering/visual-register-culler.js.map +1 -1
- package/dist/lib/rendering/visuals-register.js +89 -20
- package/dist/lib/rendering/visuals-register.js.map +1 -1
- package/dist/lib/utils/entity-utils.js +43 -2
- package/dist/lib/utils/entity-utils.js.map +1 -1
- package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-menu-items.js +64 -12
- package/dist/lib/widgets/tabs-left-panel/widget-left-panel-tab-menu-items.js.map +1 -1
- package/dist/lib/widgets/widget-info-view.js +20 -7
- package/dist/lib/widgets/widget-info-view.js.map +1 -1
- package/dist/types/bruce-cesium.d.ts +3 -1
- package/dist/types/rendering/cesium-animated-property.d.ts +8 -6
- package/dist/types/rendering/entity-gatherer.d.ts +6 -1
- package/dist/types/rendering/menu-item-manager.d.ts +58 -1
- package/dist/types/rendering/menu-item-styles.d.ts +30 -0
- package/dist/types/rendering/relation-render-engine.d.ts +10 -0
- package/dist/types/rendering/render-managers/common/entity-label-group.d.ts +3 -2
- package/dist/types/rendering/render-managers/common/entity-label.d.ts +4 -0
- package/dist/types/rendering/render-managers/common/entity-rerender-maintain-state.d.ts +20 -0
- package/dist/types/rendering/render-managers/common/entity-simulation.d.ts +126 -0
- package/dist/types/rendering/render-managers/common/historic-trail.d.ts +30 -0
- package/dist/types/rendering/render-managers/common/historic-utils.d.ts +4 -0
- package/dist/types/rendering/render-managers/entities/entities-datalab-render-manager.d.ts +7 -1
- package/dist/types/rendering/render-managers/entities/entities-ids-render-manager.d.ts +7 -1
- package/dist/types/rendering/render-managers/entities/entities-loaded-render-manager.d.ts +7 -1
- package/dist/types/rendering/render-managers/entities/entities-render-manager.d.ts +10 -1
- package/dist/types/rendering/render-managers/entities/entity-render-manager.d.ts +7 -1
- package/dist/types/rendering/render-managers/other/assembly-render-manager.d.ts +79 -2
- package/dist/types/rendering/render-managers/other/legacy-relations-render-manager.d.ts +5 -0
- package/dist/types/rendering/render-managers/other/relations-render-manager.d.ts +5 -0
- package/dist/types/rendering/render-managers/render-manager.d.ts +14 -1
- package/dist/types/rendering/render-managers/tilesets/tileset-arb-render-manager.d.ts +8 -1
- package/dist/types/rendering/render-managers/tilesets/tileset-cad-render-manager.d.ts +16 -2
- package/dist/types/rendering/render-managers/tilesets/tileset-entities-render-manager.d.ts +8 -1
- package/dist/types/rendering/tileset-styler.d.ts +2 -0
- package/dist/types/rendering/visuals-register.d.ts +13 -0
- package/dist/types/utils/entity-utils.d.ts +6 -0
- package/dist/types/widgets/tabs-left-panel/widget-left-panel-tab-menu-items.d.ts +1 -0
- package/dist/types/widgets/widget-info-view.d.ts +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
import * as Cesium from "cesium";
|
|
2
|
+
/**
|
|
3
|
+
* The line drawn through where a moving thing has been, from its history, as a whole path or a fading trail.
|
|
4
|
+
*/
|
|
5
|
+
export declare namespace HistoricTrail {
|
|
6
|
+
interface IParams {
|
|
7
|
+
viewer: Cesium.Viewer;
|
|
8
|
+
color: Cesium.Color;
|
|
9
|
+
width: number;
|
|
10
|
+
clampToGround: boolean;
|
|
11
|
+
getSeries: () => Cesium.Cartesian3[];
|
|
12
|
+
trailSeconds?: number;
|
|
13
|
+
positionAt?: (timeMs: number) => Cesium.Cartesian3 | null;
|
|
14
|
+
}
|
|
15
|
+
/**
|
|
16
|
+
* The trail length a menu item asks for in its historicTrackSeconds, or null for the whole path.
|
|
17
|
+
*/
|
|
18
|
+
function GetTrailSeconds(item: object | null | undefined): number | null;
|
|
19
|
+
class Trail {
|
|
20
|
+
private viewer;
|
|
21
|
+
private entities;
|
|
22
|
+
private memoTime;
|
|
23
|
+
private memo;
|
|
24
|
+
constructor(params: IParams);
|
|
25
|
+
private add;
|
|
26
|
+
private sample;
|
|
27
|
+
private slice;
|
|
28
|
+
Dispose(): void;
|
|
29
|
+
}
|
|
30
|
+
}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import * as Cesium from "cesium";
|
|
2
2
|
import { Bounds, BruceApi, Entity, EntityHistoricData, IDictionary } from "bruce-models";
|
|
3
3
|
import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
4
|
+
import { EntitySimulation } from "./entity-simulation";
|
|
4
5
|
/**
|
|
5
6
|
* How often a historic refresh is worth running, and which Entities it should ask about first.
|
|
6
7
|
*/
|
|
@@ -177,6 +178,8 @@ export declare class HistoricGatherer {
|
|
|
177
178
|
onRecords?: (recordsByIds: IDictionary<EntityHistoricData.IData[]>) => void;
|
|
178
179
|
paddingMs?: number;
|
|
179
180
|
liveTailMs?: number;
|
|
181
|
+
simulation?: EntitySimulation.Store;
|
|
182
|
+
simulatedOnly?: boolean;
|
|
180
183
|
});
|
|
181
184
|
get Records(): IDictionary<EntityHistoricData.IData[]>;
|
|
182
185
|
Clear(): void;
|
|
@@ -193,6 +196,7 @@ export declare class HistoricGatherer {
|
|
|
193
196
|
fetched: boolean;
|
|
194
197
|
recordsByIds: IDictionary<EntityHistoricData.IData[]>;
|
|
195
198
|
}>;
|
|
199
|
+
private withSimulated;
|
|
196
200
|
private holdTo;
|
|
197
201
|
private request;
|
|
198
202
|
}
|
|
@@ -3,8 +3,9 @@ import * as Cesium from "cesium";
|
|
|
3
3
|
import { VisualsRegister } from "../../visuals-register";
|
|
4
4
|
import { RenderManager } from "../render-manager";
|
|
5
5
|
import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
6
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
6
7
|
export declare namespace DataLabRenderManager {
|
|
7
|
-
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver {
|
|
8
|
+
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver, RenderManager.IStyleSwapCapable {
|
|
8
9
|
private viewer;
|
|
9
10
|
private item;
|
|
10
11
|
private apiGetter;
|
|
@@ -31,6 +32,7 @@ export declare namespace DataLabRenderManager {
|
|
|
31
32
|
apiGetter: BruceApi.IGetter;
|
|
32
33
|
monitor: CesiumViewMonitor.Monitor;
|
|
33
34
|
visualsRegister: VisualsRegister.Register;
|
|
35
|
+
simulation?: EntitySimulation.Store;
|
|
34
36
|
});
|
|
35
37
|
Init(params?: {
|
|
36
38
|
item?: MenuItem.Item.IDataLab;
|
|
@@ -59,6 +61,10 @@ export declare namespace DataLabRenderManager {
|
|
|
59
61
|
zoomControl?: ZoomControl.IItem[];
|
|
60
62
|
queueRerender?: boolean;
|
|
61
63
|
}): void;
|
|
64
|
+
/**
|
|
65
|
+
* Switches to another of the item's own styles, restyling what is drawn without re-creating it.
|
|
66
|
+
*/
|
|
67
|
+
SwapStyle(item: MenuItem.Item.IDataLab): void;
|
|
62
68
|
private doEntityCheck;
|
|
63
69
|
private distributeForRender;
|
|
64
70
|
private deduplicateEntities;
|
|
@@ -4,12 +4,13 @@ import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
|
4
4
|
import { VisualsRegister } from "../../visuals-register";
|
|
5
5
|
import { RenderManager } from "../render-manager";
|
|
6
6
|
import { SharedHistoricGetters } from "../common/shared-getters-historic";
|
|
7
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
7
8
|
/**
|
|
8
9
|
* Render manager for rendering an array of entity ids.
|
|
9
10
|
* This will render them in batches to avoid overloading the viewer.
|
|
10
11
|
*/
|
|
11
12
|
export declare namespace EntitiesIdsRenderManager {
|
|
12
|
-
class Manager implements RenderManager.IManager {
|
|
13
|
+
class Manager implements RenderManager.IManager, RenderManager.IStyleSwapCapable {
|
|
13
14
|
private viewer;
|
|
14
15
|
private apiGetter;
|
|
15
16
|
private monitor;
|
|
@@ -40,6 +41,7 @@ export declare namespace EntitiesIdsRenderManager {
|
|
|
40
41
|
monitor: CesiumViewMonitor.Monitor;
|
|
41
42
|
item: MenuItem.Item.IEntityIds;
|
|
42
43
|
sharedHistoric?: SharedHistoricGetters.Cache;
|
|
44
|
+
simulation?: EntitySimulation.Store;
|
|
43
45
|
});
|
|
44
46
|
Init(params?: {
|
|
45
47
|
item?: MenuItem.Item.IEntityIds;
|
|
@@ -56,6 +58,10 @@ export declare namespace EntitiesIdsRenderManager {
|
|
|
56
58
|
zoomControl?: ZoomControl.IItem[];
|
|
57
59
|
queueRerender?: boolean;
|
|
58
60
|
}): void;
|
|
61
|
+
/**
|
|
62
|
+
* Switches to another of the item's own styles, restyling what is drawn without re-creating it.
|
|
63
|
+
*/
|
|
64
|
+
SwapStyle(item: MenuItem.Item.IEntityIds): void;
|
|
59
65
|
private getHistoricLane;
|
|
60
66
|
private onGetterUpdate;
|
|
61
67
|
private renderEntities;
|
|
@@ -3,13 +3,14 @@ import * as Cesium from "cesium";
|
|
|
3
3
|
import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
4
4
|
import { VisualsRegister } from "../../visuals-register";
|
|
5
5
|
import { RenderManager } from "../render-manager";
|
|
6
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
6
7
|
/**
|
|
7
8
|
* Render manager for a group of pre-loaded entities.
|
|
8
9
|
* The entities may or may not have records.
|
|
9
10
|
* If the entities DON'T have records, it is recommended to avoid using the 3dmodel visualization as it will fail to locate LODs.
|
|
10
11
|
*/
|
|
11
12
|
export declare namespace EntitiesLoadedRenderManager {
|
|
12
|
-
class Manager implements RenderManager.IManager {
|
|
13
|
+
class Manager implements RenderManager.IManager, RenderManager.IStyleSwapCapable {
|
|
13
14
|
private viewer;
|
|
14
15
|
private apiGetter;
|
|
15
16
|
private item;
|
|
@@ -30,6 +31,7 @@ export declare namespace EntitiesLoadedRenderManager {
|
|
|
30
31
|
apiGetter: BruceApi.IGetter;
|
|
31
32
|
monitor: CesiumViewMonitor.Monitor;
|
|
32
33
|
item: MenuItem.Item.IEntitiesLoaded;
|
|
34
|
+
simulation?: EntitySimulation.Store;
|
|
33
35
|
});
|
|
34
36
|
/**
|
|
35
37
|
* Adds entities to menu item and queues the render for them.
|
|
@@ -71,6 +73,10 @@ export declare namespace EntitiesLoadedRenderManager {
|
|
|
71
73
|
zoomControl?: ZoomControl.IItem[];
|
|
72
74
|
queueRerender?: boolean;
|
|
73
75
|
}): void;
|
|
76
|
+
/**
|
|
77
|
+
* Switches to another of the item's own styles, restyling what is drawn without re-creating it.
|
|
78
|
+
*/
|
|
79
|
+
SwapStyle(item: MenuItem.Item.IEntitiesLoaded): void;
|
|
74
80
|
private doEntityCheck;
|
|
75
81
|
private onGetterUpdate;
|
|
76
82
|
/**
|
|
@@ -3,6 +3,7 @@ import * as Cesium from "cesium";
|
|
|
3
3
|
import { ISeriesSegment } from "../../../internal/series-segment";
|
|
4
4
|
import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
5
5
|
import { VisualsRegister } from "../../visuals-register";
|
|
6
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
6
7
|
import { SharedGetters } from "../common/shared-getters";
|
|
7
8
|
import { RenderManager } from "../render-manager";
|
|
8
9
|
/**
|
|
@@ -10,7 +11,7 @@ import { RenderManager } from "../render-manager";
|
|
|
10
11
|
* This will request entities based on setup menu item filter.
|
|
11
12
|
*/
|
|
12
13
|
export declare namespace EntitiesRenderManager {
|
|
13
|
-
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver {
|
|
14
|
+
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver, RenderManager.IStyleSwapCapable {
|
|
14
15
|
private viewer;
|
|
15
16
|
private apiGetter;
|
|
16
17
|
private sharedGetters;
|
|
@@ -42,6 +43,8 @@ export declare namespace EntitiesRenderManager {
|
|
|
42
43
|
private useGeojson;
|
|
43
44
|
private zoomControl;
|
|
44
45
|
private scenario;
|
|
46
|
+
private drawnKey;
|
|
47
|
+
private drawnSettings;
|
|
45
48
|
private renderPriority;
|
|
46
49
|
private allowedTypeIDs;
|
|
47
50
|
constructor(params: {
|
|
@@ -52,10 +55,12 @@ export declare namespace EntitiesRenderManager {
|
|
|
52
55
|
item: MenuItem.Item.IEntities;
|
|
53
56
|
sharedGetters: SharedGetters.Cache;
|
|
54
57
|
onSeriesDiscovered?: (segment: ISeriesSegment) => void;
|
|
58
|
+
simulation?: EntitySimulation.Store;
|
|
55
59
|
});
|
|
56
60
|
Init(params?: {
|
|
57
61
|
item: MenuItem.Item.IEntities;
|
|
58
62
|
}): void;
|
|
63
|
+
private getDrawnSettingsSignature;
|
|
59
64
|
private applyItemSettings;
|
|
60
65
|
/**
|
|
61
66
|
* Updates allowedTypeIDs values based in incoming data.
|
|
@@ -81,6 +86,10 @@ export declare namespace EntitiesRenderManager {
|
|
|
81
86
|
zoomControl?: ZoomControl.IItem[];
|
|
82
87
|
queueRerender?: boolean;
|
|
83
88
|
}): void;
|
|
89
|
+
/**
|
|
90
|
+
* Switches to another of the item's own styles, restyling what is drawn without re-creating it.
|
|
91
|
+
*/
|
|
92
|
+
SwapStyle(item: MenuItem.Item.IEntities): void;
|
|
84
93
|
/**
|
|
85
94
|
* Narrows a camera-driven check to the entities whose zoom band could actually have changed.
|
|
86
95
|
* @param ids
|
|
@@ -3,11 +3,12 @@ import * as Cesium from "cesium";
|
|
|
3
3
|
import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
4
4
|
import { VisualsRegister } from "../../visuals-register";
|
|
5
5
|
import { RenderManager } from "../render-manager";
|
|
6
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
6
7
|
/**
|
|
7
8
|
* Manager for rendering a single Bruce entity.
|
|
8
9
|
*/
|
|
9
10
|
export declare namespace EntityRenderManager {
|
|
10
|
-
class Manager implements RenderManager.IManager {
|
|
11
|
+
class Manager implements RenderManager.IManager, RenderManager.IStyleSwapCapable {
|
|
11
12
|
private viewer;
|
|
12
13
|
private apiGetter;
|
|
13
14
|
private item;
|
|
@@ -25,6 +26,7 @@ export declare namespace EntityRenderManager {
|
|
|
25
26
|
apiGetter: BruceApi.IGetter;
|
|
26
27
|
monitor: CesiumViewMonitor.Monitor;
|
|
27
28
|
item: MenuItem.Item.IEntity;
|
|
29
|
+
simulation?: EntitySimulation.Store;
|
|
28
30
|
});
|
|
29
31
|
Init(): void;
|
|
30
32
|
Dispose(): void;
|
|
@@ -39,6 +41,10 @@ export declare namespace EntityRenderManager {
|
|
|
39
41
|
zoomControl?: ZoomControl.IItem[];
|
|
40
42
|
queueRerender?: boolean;
|
|
41
43
|
}): void;
|
|
44
|
+
/**
|
|
45
|
+
* Switches to another of the item's own styles, restyling what is drawn without re-creating it.
|
|
46
|
+
*/
|
|
47
|
+
SwapStyle(item: MenuItem.Item.IEntity): void;
|
|
42
48
|
private renderEntityChain;
|
|
43
49
|
private renderEntity;
|
|
44
50
|
private doRenderEntity;
|
|
@@ -2,6 +2,7 @@ import { ApiGetters, BruceEvent, Entity, MenuItem } from "bruce-models";
|
|
|
2
2
|
import { RenderManager } from "../render-manager";
|
|
3
3
|
import { VisualsRegister } from "../../visuals-register";
|
|
4
4
|
import * as Cesium from "cesium";
|
|
5
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
5
6
|
interface IHierarchyNode {
|
|
6
7
|
entityId: string;
|
|
7
8
|
name: string;
|
|
@@ -30,11 +31,52 @@ export declare namespace AssemblyRenderManager {
|
|
|
30
31
|
private hierarchyNodeByEntityId;
|
|
31
32
|
private modelSpace;
|
|
32
33
|
get ModelSpace(): boolean;
|
|
34
|
+
/**
|
|
35
|
+
* Every node of the Assembly read so far, so a caller can work out motion in the Assembly's own terms.
|
|
36
|
+
* @param timeMs the scene time for each node's current pose. Default: the clock's.
|
|
37
|
+
* @returns per node its pose within its parent from the API (local) and as drawn at the time (current).
|
|
38
|
+
*/
|
|
39
|
+
GetNodes(timeMs?: number): {
|
|
40
|
+
entityId: string;
|
|
41
|
+
name: string;
|
|
42
|
+
parentId: string | null;
|
|
43
|
+
local: number[][] | null;
|
|
44
|
+
current: number[][] | null;
|
|
45
|
+
entity: Entity.IEntity | null;
|
|
46
|
+
}[];
|
|
47
|
+
/**
|
|
48
|
+
* The root's world frame at a time, history and simulation included, eg. to follow or frame the Assembly.
|
|
49
|
+
* @param timeMs the scene time. Default: the clock's.
|
|
50
|
+
* @returns null until the root has been read.
|
|
51
|
+
*/
|
|
52
|
+
GetRootFrame(timeMs?: number): Cesium.Matrix4 | null;
|
|
53
|
+
/**
|
|
54
|
+
* A part's world frame at a time as its records and its parents place it, size included.
|
|
55
|
+
* @param entityId the part.
|
|
56
|
+
* @param timeMs the scene time. Default: the clock's.
|
|
57
|
+
* @returns null until the root and the part have been read.
|
|
58
|
+
*/
|
|
59
|
+
GetPartFrame(entityId: string, timeMs?: number): Cesium.Matrix4 | null;
|
|
33
60
|
private rootId;
|
|
34
61
|
private rootPos3d;
|
|
35
62
|
private rootHeading;
|
|
63
|
+
private rootPitch;
|
|
64
|
+
private rootRoll;
|
|
65
|
+
private rootSeries;
|
|
66
|
+
private rootAttitude;
|
|
67
|
+
private pose;
|
|
36
68
|
private children;
|
|
37
|
-
private
|
|
69
|
+
private localPositions;
|
|
70
|
+
private groundOffsets;
|
|
71
|
+
private jointSeries;
|
|
72
|
+
private animatedIds;
|
|
73
|
+
private trail;
|
|
74
|
+
private simulation;
|
|
75
|
+
private simulationRemoval;
|
|
76
|
+
readonly FollowsSimulation = true;
|
|
77
|
+
private apiEntities;
|
|
78
|
+
private regather;
|
|
79
|
+
private followingClock;
|
|
38
80
|
private viewerDateTimeChangeRemoval;
|
|
39
81
|
private historicGatherer;
|
|
40
82
|
private historicAnimation;
|
|
@@ -44,6 +86,7 @@ export declare namespace AssemblyRenderManager {
|
|
|
44
86
|
getters: ApiGetters;
|
|
45
87
|
item: MenuItem.Item.IAssembly;
|
|
46
88
|
modelSpace?: boolean;
|
|
89
|
+
simulation?: EntitySimulation.Store;
|
|
47
90
|
});
|
|
48
91
|
/**
|
|
49
92
|
* Returns whether this Assembly's root moves over time.
|
|
@@ -71,13 +114,47 @@ export declare namespace AssemblyRenderManager {
|
|
|
71
114
|
*/
|
|
72
115
|
static ChildPositionFrom(rootPos3d: Cesium.Cartesian3, headingDegrees: number, offset: Cesium.Cartesian3): Cesium.Cartesian3;
|
|
73
116
|
/**
|
|
74
|
-
* Moves the
|
|
117
|
+
* Moves where the root sits outside its history, without refetching children; recorded poses still win.
|
|
75
118
|
* @param params
|
|
76
119
|
*/
|
|
77
120
|
ApplyRootPosition(params: {
|
|
78
121
|
pos3d: Cesium.Cartesian3;
|
|
79
122
|
heading?: number;
|
|
123
|
+
pitch?: number;
|
|
124
|
+
roll?: number;
|
|
80
125
|
}): void;
|
|
126
|
+
private repose;
|
|
127
|
+
private absorbNode;
|
|
128
|
+
private withSimulation;
|
|
129
|
+
private onSimulationChanged;
|
|
130
|
+
private simulatedNodeIds;
|
|
131
|
+
private canMove;
|
|
132
|
+
private bindPlacement;
|
|
133
|
+
private static uniformScale;
|
|
134
|
+
private static cloneOrUndefined;
|
|
135
|
+
private placementAt;
|
|
136
|
+
private rootAt;
|
|
137
|
+
private rootPositionAt;
|
|
138
|
+
private absorbRootRecords;
|
|
139
|
+
private absorbRootAttitude;
|
|
140
|
+
private composeWorld;
|
|
141
|
+
private measureGroundOffset;
|
|
142
|
+
private motionAt;
|
|
143
|
+
private localAt;
|
|
144
|
+
private absorbJointRecords;
|
|
145
|
+
private refreshAnimated;
|
|
146
|
+
private hasAnimatedAncestry;
|
|
147
|
+
private historicEntityIds;
|
|
148
|
+
/**
|
|
149
|
+
* Builds a matrix from the row-major rows that Bruce/AssemblyPosition and AssemblyWorldPosition use.
|
|
150
|
+
* @param rows
|
|
151
|
+
*/
|
|
152
|
+
static MatrixFromRows(rows: number[][] | any): Cesium.Matrix4;
|
|
153
|
+
/**
|
|
154
|
+
* The inverse of MatrixFromRows.
|
|
155
|
+
* @param matrix
|
|
156
|
+
*/
|
|
157
|
+
static RowsFromMatrix(matrix: Cesium.Matrix4): number[][];
|
|
81
158
|
Init(): void;
|
|
82
159
|
/**
|
|
83
160
|
* Processes given entity IDs and renders them in the viewer.
|
|
@@ -2,6 +2,7 @@ import { BruceApi, MenuItem } from "bruce-models";
|
|
|
2
2
|
import { RenderManager } from "../render-manager";
|
|
3
3
|
import { VisualsRegister } from "../../visuals-register";
|
|
4
4
|
import * as Cesium from "cesium";
|
|
5
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
5
6
|
/**
|
|
6
7
|
* Deprecated relations render manager.
|
|
7
8
|
* This follows original navigator logic that renders both up/downstream relationships and ALL relationship types.
|
|
@@ -14,12 +15,16 @@ export declare namespace LegacyRelationsRenderManager {
|
|
|
14
15
|
private item;
|
|
15
16
|
private register;
|
|
16
17
|
private viewer;
|
|
18
|
+
private simulation;
|
|
19
|
+
private simulationRemoval;
|
|
20
|
+
readonly FollowsSimulation = true;
|
|
17
21
|
private drawnIds;
|
|
18
22
|
constructor(params: {
|
|
19
23
|
apiGetter: BruceApi.IGetter;
|
|
20
24
|
item: MenuItem.Item.ILegacyRelationships;
|
|
21
25
|
register: VisualsRegister.Register;
|
|
22
26
|
viewer: Cesium.Viewer;
|
|
27
|
+
simulation?: EntitySimulation.Store;
|
|
23
28
|
});
|
|
24
29
|
/**
|
|
25
30
|
* Starts rendering the menu item.
|
|
@@ -2,6 +2,7 @@ import { BruceApi, MenuItem } from "bruce-models";
|
|
|
2
2
|
import { RenderManager } from "../render-manager";
|
|
3
3
|
import { VisualsRegister } from "../../visuals-register";
|
|
4
4
|
import * as Cesium from "cesium";
|
|
5
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
5
6
|
export declare namespace RelationsRenderManager {
|
|
6
7
|
class Manager implements RenderManager.IManager {
|
|
7
8
|
private disposed;
|
|
@@ -10,11 +11,15 @@ export declare namespace RelationsRenderManager {
|
|
|
10
11
|
private item;
|
|
11
12
|
private register;
|
|
12
13
|
private viewer;
|
|
14
|
+
private simulation;
|
|
15
|
+
private simulationRemoval;
|
|
16
|
+
readonly FollowsSimulation = true;
|
|
13
17
|
constructor(params: {
|
|
14
18
|
apiGetter: BruceApi.IGetter;
|
|
15
19
|
item: MenuItem.Item.IRelationships;
|
|
16
20
|
register: VisualsRegister.Register;
|
|
17
21
|
viewer: Cesium.Viewer;
|
|
22
|
+
simulation?: EntitySimulation.Store;
|
|
18
23
|
});
|
|
19
24
|
/**
|
|
20
25
|
* Starts rendering the menu item.
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Entity, ZoomControl } from "bruce-models";
|
|
1
|
+
import { Entity, MenuItem, ZoomControl } from "bruce-models";
|
|
2
2
|
import * as Cesium from "cesium";
|
|
3
3
|
export declare namespace RenderManager {
|
|
4
4
|
interface IManager {
|
|
@@ -15,6 +15,10 @@ export declare namespace RenderManager {
|
|
|
15
15
|
force?: boolean;
|
|
16
16
|
maintain?: true;
|
|
17
17
|
}): Promise<void>;
|
|
18
|
+
/**
|
|
19
|
+
* Set when the manager follows the shared simulation store itself, so the menu item manager need not.
|
|
20
|
+
*/
|
|
21
|
+
FollowsSimulation?: boolean;
|
|
18
22
|
}
|
|
19
23
|
/**
|
|
20
24
|
* Free-form bag of already-loaded resources a manager hands off to its replacement.
|
|
@@ -46,6 +50,15 @@ export declare namespace RenderManager {
|
|
|
46
50
|
*/
|
|
47
51
|
AdoptHandoff(payload: IHandoffPayload): void;
|
|
48
52
|
}
|
|
53
|
+
/**
|
|
54
|
+
* Opt-in capability for a manager that can switch to another of its menu item's own styles in place.
|
|
55
|
+
*/
|
|
56
|
+
interface IStyleSwapCapable extends IManager {
|
|
57
|
+
/**
|
|
58
|
+
* Takes over an item that differs from the current one only by its picked style (see MenuItemStyles).
|
|
59
|
+
*/
|
|
60
|
+
SwapStyle(item: MenuItem.IItem): void;
|
|
61
|
+
}
|
|
49
62
|
/**
|
|
50
63
|
* What a zoom-item resolution measured, so a later pass can tell whether the answer could have changed
|
|
51
64
|
* without redoing it. See IBandCheck on a rendered graphic.
|
|
@@ -4,6 +4,7 @@ import { XGridsRenderEngine } from "../../xgrids-render-engine";
|
|
|
4
4
|
import { TilesetRenderEngine } from "../../tileset-render-engine";
|
|
5
5
|
import { VisualsRegister } from "../../visuals-register";
|
|
6
6
|
import { RenderManager } from "../render-manager";
|
|
7
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
7
8
|
export declare namespace TilesetArbRenderManager {
|
|
8
9
|
interface IInitQueueParams {
|
|
9
10
|
owner: object;
|
|
@@ -26,8 +27,9 @@ export declare namespace TilesetArbRenderManager {
|
|
|
26
27
|
XGridsLCC = "XGridsLCC",
|
|
27
28
|
Unknown = "Unknown"
|
|
28
29
|
}
|
|
29
|
-
class Manager implements RenderManager.IManager {
|
|
30
|
+
class Manager implements RenderManager.IManager, RenderManager.IStyleSwapCapable {
|
|
30
31
|
private viewer;
|
|
32
|
+
private simulation;
|
|
31
33
|
private getters;
|
|
32
34
|
private item;
|
|
33
35
|
private disposed;
|
|
@@ -58,6 +60,7 @@ export declare namespace TilesetArbRenderManager {
|
|
|
58
60
|
item: MenuItem.Item.IArbTileset;
|
|
59
61
|
getters: ApiGetters;
|
|
60
62
|
register: VisualsRegister.Register;
|
|
63
|
+
simulation?: EntitySimulation.Store;
|
|
61
64
|
});
|
|
62
65
|
Init(): void;
|
|
63
66
|
/**
|
|
@@ -79,6 +82,10 @@ export declare namespace TilesetArbRenderManager {
|
|
|
79
82
|
private processFeatureQueueBatch;
|
|
80
83
|
private evaluateFeatureProps;
|
|
81
84
|
private onCTilesetLoad;
|
|
85
|
+
/**
|
|
86
|
+
* Switches to another of the item's own styles, restyling the loaded tileset without reloading it.
|
|
87
|
+
*/
|
|
88
|
+
SwapStyle(item: MenuItem.Item.IArbTileset): void;
|
|
82
89
|
Dispose(): void;
|
|
83
90
|
private doDispose;
|
|
84
91
|
ReRender(params: {
|
|
@@ -5,6 +5,7 @@ import { TilesetRenderEngine } from "../../tileset-render-engine";
|
|
|
5
5
|
import { VisualsRegister } from '../../visuals-register';
|
|
6
6
|
import { RenderManager } from "../render-manager";
|
|
7
7
|
import { TilesetArbRenderManager } from "./tileset-arb-render-manager";
|
|
8
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
8
9
|
interface IModelTreeNode {
|
|
9
10
|
entityId: string;
|
|
10
11
|
typeId: string;
|
|
@@ -17,8 +18,11 @@ interface IModelTreeNode {
|
|
|
17
18
|
* CAD tilesets are referred to as "MODEL" tilesets in some other areas of Bruce code.
|
|
18
19
|
*/
|
|
19
20
|
export declare namespace TilesetCadRenderManager {
|
|
20
|
-
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver {
|
|
21
|
+
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver, RenderManager.IStyleSwapCapable {
|
|
21
22
|
private viewer;
|
|
23
|
+
private simulation;
|
|
24
|
+
private simulationRemoval;
|
|
25
|
+
private restCoords;
|
|
22
26
|
private getters;
|
|
23
27
|
private item;
|
|
24
28
|
private disposed;
|
|
@@ -51,7 +55,7 @@ export declare namespace TilesetCadRenderManager {
|
|
|
51
55
|
private viewerDateTimeChangeRemoval;
|
|
52
56
|
private historicAnimation;
|
|
53
57
|
private historicGatherer;
|
|
54
|
-
private
|
|
58
|
+
private trail;
|
|
55
59
|
private historicPossesLoadingProm;
|
|
56
60
|
private featureQueue;
|
|
57
61
|
private featureQueueStates;
|
|
@@ -66,6 +70,7 @@ export declare namespace TilesetCadRenderManager {
|
|
|
66
70
|
item: MenuItem.Item.ICadTileset;
|
|
67
71
|
modelSpace?: boolean;
|
|
68
72
|
initQueue?: TilesetArbRenderManager.IInitQueue;
|
|
73
|
+
simulation?: EntitySimulation.Store;
|
|
69
74
|
});
|
|
70
75
|
Init(): void;
|
|
71
76
|
private onCTilesetLoad;
|
|
@@ -190,6 +195,10 @@ export declare namespace TilesetCadRenderManager {
|
|
|
190
195
|
* @returns Map of entityId to array of child nodes.
|
|
191
196
|
*/
|
|
192
197
|
getChildNodesBatch(entityIds: string[]): Map<string, IModelTreeNode[]>;
|
|
198
|
+
/**
|
|
199
|
+
* Switches to another of the item's own styles, restyling the loaded tileset without reloading it.
|
|
200
|
+
*/
|
|
201
|
+
SwapStyle(item: MenuItem.Item.ICadTileset): void;
|
|
193
202
|
Dispose(): void;
|
|
194
203
|
private doDispose;
|
|
195
204
|
ReRender(params: {
|
|
@@ -204,6 +213,11 @@ export declare namespace TilesetCadRenderManager {
|
|
|
204
213
|
* @param tileset
|
|
205
214
|
*/
|
|
206
215
|
private viewerDateTimeSub;
|
|
216
|
+
private followSimulation;
|
|
217
|
+
private regatherRoot;
|
|
218
|
+
private atClock;
|
|
219
|
+
private applyRootRest;
|
|
220
|
+
private simulatedRootCoords;
|
|
207
221
|
private viewerDateTimeDispose;
|
|
208
222
|
/**
|
|
209
223
|
* Updates the Tileset with latest coordinates.
|
|
@@ -5,10 +5,12 @@ import { VisualsRegister } from "../../visuals-register";
|
|
|
5
5
|
import { RenderManager } from "../render-manager";
|
|
6
6
|
import { TilesetArbRenderManager } from "./tileset-arb-render-manager";
|
|
7
7
|
import { CesiumViewMonitor } from "../../../viewer/cesium-view-monitor";
|
|
8
|
+
import { EntitySimulation } from "../common/entity-simulation";
|
|
8
9
|
export declare namespace TilesetEntitiesRenderManager {
|
|
9
|
-
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver {
|
|
10
|
+
class Manager implements RenderManager.IManager, RenderManager.IHandoffCapableManager, RenderManager.IHandoffReceiver, RenderManager.IStyleSwapCapable {
|
|
10
11
|
private initCounter;
|
|
11
12
|
private viewer;
|
|
13
|
+
private simulation;
|
|
12
14
|
private getters;
|
|
13
15
|
private item;
|
|
14
16
|
private disposed;
|
|
@@ -42,6 +44,7 @@ export declare namespace TilesetEntitiesRenderManager {
|
|
|
42
44
|
item: MenuItem.Item.IEntitiesTileset;
|
|
43
45
|
initQueue?: TilesetArbRenderManager.IInitQueue;
|
|
44
46
|
monitor?: CesiumViewMonitor.Monitor;
|
|
47
|
+
simulation?: EntitySimulation.Store;
|
|
45
48
|
});
|
|
46
49
|
Init(params?: {
|
|
47
50
|
item: MenuItem.Item.IEntitiesTileset;
|
|
@@ -64,6 +67,10 @@ export declare namespace TilesetEntitiesRenderManager {
|
|
|
64
67
|
*/
|
|
65
68
|
private processFeatureQueueBatch;
|
|
66
69
|
private evaluateFeatureProps;
|
|
70
|
+
/**
|
|
71
|
+
* Switches to another of the item's own styles, restyling the loaded tileset without reloading it.
|
|
72
|
+
*/
|
|
73
|
+
SwapStyle(item: MenuItem.Item.IEntitiesTileset): void;
|
|
67
74
|
Dispose(): void;
|
|
68
75
|
private doDispose;
|
|
69
76
|
private onCTilesetLoad;
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BruceApi, BruceEvent, Entity, Style } from "bruce-models";
|
|
2
2
|
import * as Cesium from "cesium";
|
|
3
|
+
import { EntitySimulation } from "./render-managers/common/entity-simulation";
|
|
3
4
|
import { VisualsRegister } from "./visuals-register";
|
|
4
5
|
import { CesiumViewMonitor } from "../viewer/cesium-view-monitor";
|
|
5
6
|
/**
|
|
@@ -80,6 +81,7 @@ export declare class TilesetStyler {
|
|
|
80
81
|
historic?: boolean;
|
|
81
82
|
applyStyles?: boolean;
|
|
82
83
|
monitor?: CesiumViewMonitor.Monitor;
|
|
84
|
+
simulation?: EntitySimulation.Store;
|
|
83
85
|
}): void;
|
|
84
86
|
/**
|
|
85
87
|
* Updates style mapping and fallback style.
|
|
@@ -41,6 +41,8 @@ export declare namespace VisualsRegister {
|
|
|
41
41
|
opacity?: number;
|
|
42
42
|
overrideShow?: boolean;
|
|
43
43
|
editing?: boolean;
|
|
44
|
+
moving?: boolean;
|
|
45
|
+
motion?: (time: Cesium.JulianDate) => Cesium.Matrix4 | null;
|
|
44
46
|
cdn?: boolean;
|
|
45
47
|
collection?: Cesium.EntityCollection;
|
|
46
48
|
outline?: Entity.IOutline[];
|
|
@@ -118,6 +120,7 @@ export declare namespace VisualsRegister {
|
|
|
118
120
|
private menuItemSources;
|
|
119
121
|
private sourceOrderDirty;
|
|
120
122
|
private labelGroups;
|
|
123
|
+
private simulationRemoval;
|
|
121
124
|
private labelGroupsChanged;
|
|
122
125
|
get OnLabelGroupsChanged(): BruceEvent<void>;
|
|
123
126
|
private labelHover;
|
|
@@ -129,6 +132,7 @@ export declare namespace VisualsRegister {
|
|
|
129
132
|
viewer: Cesium.Viewer;
|
|
130
133
|
apiGetters?: ApiGetters;
|
|
131
134
|
});
|
|
135
|
+
private reloadLabels;
|
|
132
136
|
/**
|
|
133
137
|
* Returns the collection a menu item's visuals belong in, creating its data source on first use.
|
|
134
138
|
* Returns null when there is nothing to key off, leaving the caller on the viewer's own collection.
|
|
@@ -303,6 +307,15 @@ export declare namespace VisualsRegister {
|
|
|
303
307
|
menuItemId?: string;
|
|
304
308
|
requestRender?: boolean;
|
|
305
309
|
}): void;
|
|
310
|
+
/**
|
|
311
|
+
* Marks visuals as placed by the clock, exempting them from culling until it is turned back off.
|
|
312
|
+
*/
|
|
313
|
+
SetMoving(params: {
|
|
314
|
+
moving: boolean;
|
|
315
|
+
entityIds: string[];
|
|
316
|
+
menuItemId?: string;
|
|
317
|
+
}): void;
|
|
318
|
+
private restoreCulled;
|
|
306
319
|
SetSelected(params: {
|
|
307
320
|
selected: boolean;
|
|
308
321
|
entityIds: string[];
|
|
@@ -52,6 +52,12 @@ export declare namespace EntityUtils {
|
|
|
52
52
|
* Uses the rotation component of AssemblyWorldPosition to match the tileset rendering.
|
|
53
53
|
*/
|
|
54
54
|
function GetAssemblyOrientation(entity: E.IEntity, pos3d: Cesium.Cartesian3): Cesium.Quaternion | null;
|
|
55
|
+
/**
|
|
56
|
+
* Returns the orientation a part's model is drawn with, for its world matrix within the root's frame.
|
|
57
|
+
* @param rootFrame the root's frame in the world, eg. from Transforms.headingPitchRollToFixedFrame.
|
|
58
|
+
* @param world the part's matrix within the root's frame.
|
|
59
|
+
*/
|
|
60
|
+
function GetAssemblyOrientationInFrame(rootFrame: Cesium.Matrix4, world: Cesium.Matrix4): Cesium.Quaternion | null;
|
|
55
61
|
/**
|
|
56
62
|
* Returns the position of the entity.
|
|
57
63
|
* This is an async variant that checks for related assemblies.
|