bruce-cesium 7.6.4 → 7.6.5

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.
Files changed (26) hide show
  1. package/README.md +2 -27
  2. package/dist/bruce-cesium.es5.js +661 -29
  3. package/dist/bruce-cesium.es5.js.map +1 -1
  4. package/dist/bruce-cesium.umd.js +659 -27
  5. package/dist/bruce-cesium.umd.js.map +1 -1
  6. package/dist/lib/bruce-cesium.js +1 -1
  7. package/dist/lib/rendering/entity-render-engine-point-orientation.js +422 -0
  8. package/dist/lib/rendering/entity-render-engine-point-orientation.js.map +1 -0
  9. package/dist/lib/rendering/entity-render-engine-point.js +43 -3
  10. package/dist/lib/rendering/entity-render-engine-point.js.map +1 -1
  11. package/dist/lib/rendering/render-managers/common/entity-label-group.js +53 -17
  12. package/dist/lib/rendering/render-managers/common/entity-label-group.js.map +1 -1
  13. package/dist/lib/rendering/render-managers/common/entity-label.js +51 -3
  14. package/dist/lib/rendering/render-managers/common/entity-label.js.map +1 -1
  15. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js +3 -1
  16. package/dist/lib/rendering/render-managers/tilesets/tileset-cad-render-manager.js.map +1 -1
  17. package/dist/lib/rendering/view-render-engine.js +2 -2
  18. package/dist/lib/rendering/view-render-engine.js.map +1 -1
  19. package/dist/lib/utils/entity-utils.js +96 -0
  20. package/dist/lib/utils/entity-utils.js.map +1 -1
  21. package/dist/types/bruce-cesium.d.ts +1 -1
  22. package/dist/types/rendering/entity-render-engine-point-orientation.d.ts +59 -0
  23. package/dist/types/rendering/render-managers/common/entity-label-group.d.ts +2 -0
  24. package/dist/types/rendering/render-managers/common/entity-label.d.ts +3 -0
  25. package/dist/types/utils/entity-utils.d.ts +29 -0
  26. package/package.json +2 -2
@@ -1 +1 @@
1
- {"version":3,"file":"entity-utils.js","sourceRoot":"","sources":["../../../src/utils/entity-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"entity-utils.js","sourceRoot":"","sources":["../../../src/utils/entity-utils.ts"],"names":[],"mappings":"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"}
@@ -71,7 +71,7 @@ export * from "./widgets/widget-info-view";
71
71
  export * from "./widgets/widget-left-panel";
72
72
  export * from "./widgets/widget-nav-compass";
73
73
  export * from "./widgets/widget-view-bar";
74
- export declare const VERSION = "7.6.4";
74
+ export declare const VERSION = "7.6.5";
75
75
  /**
76
76
  * Updates the environment instance used by bruce-cesium to one specified.
77
77
  * This can be used to ensure that the instance a parent is referencing is shared between bruce-cesium, bruce-models, and the parent app.
@@ -0,0 +1,59 @@
1
+ import { Entity, Style } from "bruce-models";
2
+ import * as Cesium from "cesium";
3
+ import { EntityRenderEngine } from "./entity-render-engine";
4
+ /**
5
+ * Draws the orientation effect a point style can ask for, an open ring whose pointer shows which way the Entity faces.
6
+ */
7
+ export declare namespace EntityRenderEnginePointOrientation {
8
+ const ORIENTATION_EFFECT: Style.EPointEffectType;
9
+ const RING_PADDING = 4;
10
+ const RING_MIN = 10;
11
+ /**
12
+ * Degrees: heading clockwise from true north, pitch positive looking up, roll positive right side down.
13
+ */
14
+ interface IOrientation {
15
+ heading: number;
16
+ pitch: number;
17
+ roll: number;
18
+ }
19
+ /**
20
+ * The ring as a billboard image pointing up.
21
+ */
22
+ interface IRingBillboard {
23
+ canvasDataUri: string;
24
+ size: number;
25
+ }
26
+ /**
27
+ * The ring's graphic, flagged so a re-render can tell it apart from the point's other sibling graphics.
28
+ */
29
+ interface ICesiumRingExt extends EntityRenderEngine.ICesiumEntityExt {
30
+ _orientationRing?: boolean;
31
+ }
32
+ interface IRenderParams {
33
+ viewer: Cesium.Viewer;
34
+ parent: Cesium.Entity;
35
+ existing?: ICesiumRingExt;
36
+ orientation: IOrientation;
37
+ heightRef: Cesium.HeightReference;
38
+ glyphRadius: number;
39
+ glyphOffsetY: number;
40
+ minDistance?: number;
41
+ maxDistance?: number;
42
+ }
43
+ function IsEnabled(style: Style.IPointSettings): boolean;
44
+ function GetOrientation(entity: Entity.IEntity): IOrientation | null;
45
+ function GetRingRadius(glyphRadius: number): number;
46
+ function GetTipRatio(ringRadius: number): number;
47
+ function GetOutline(tipRatio: number): [number, number][];
48
+ function GetCap(tipRatio: number): [number, number][];
49
+ function GetFilledOutline(tipRatio: number): [number, number][];
50
+ function CreateRingBillboard(glyphRadius: number): IRingBillboard | null;
51
+ function GetHeadingAxis(pos3d: Cesium.Cartesian3, heading: number): Cesium.Cartesian3;
52
+ function GetBasis(pos3d: Cesium.Cartesian3, orientation: IOrientation): {
53
+ forward: Cesium.Cartesian3;
54
+ right: Cesium.Cartesian3;
55
+ };
56
+ function GetScreenRotation(viewer: Cesium.Viewer, pos3d: Cesium.Cartesian3, axis: Cesium.Cartesian3): number | null;
57
+ function Render(params: IRenderParams): ICesiumRingExt | null;
58
+ function FindRing(siblings: Cesium.Entity[]): ICesiumRingExt | null;
59
+ }
@@ -107,6 +107,8 @@ export declare namespace EntityLabelGroup {
107
107
  RequestImage(entityId: string): void;
108
108
  private readImages;
109
109
  RefreshEntity(entityId: string): void;
110
+ private assemblyPosition;
111
+ private drawnFrame;
110
112
  Remove(id: string): void;
111
113
  Clear(): void;
112
114
  Dispose(): void;
@@ -258,6 +258,7 @@ export declare namespace EntityLabel {
258
258
  SetHoverVisible(visible: boolean): void;
259
259
  private HoverOpacity;
260
260
  private visible;
261
+ private tilesetPart;
261
262
  private counter;
262
263
  private imageAsked;
263
264
  private photo;
@@ -313,6 +314,8 @@ export declare namespace EntityLabel {
313
314
  private buildIcon;
314
315
  private buildPhoto;
315
316
  private renderFor;
317
+ private followTilesetPart;
318
+ private motionAt;
316
319
  private loadModelBox;
317
320
  private morphToBox;
318
321
  /**
@@ -21,6 +21,35 @@ interface IGetLocation {
21
21
  paddingAlt?: number;
22
22
  }
23
23
  export declare namespace EntityUtils {
24
+ /**
25
+ * Returns where an Assembly part's geometry centre is, without asking the API or the scene.
26
+ * Bruce.Location only holds where the API last placed it, so this composes from the root's frame instead.
27
+ * @param params.rootFrame the frame its Assembly is drawn in now, eg. GetTilesetRootFrame of its CAD tileset.
28
+ * Default: the frame its record describes, at 0,0 in model-space.
29
+ * @returns null when the record is not an Assembly part or lacks its matrices.
30
+ */
31
+ function GetAssemblyPartPos3d(params: {
32
+ viewer: Cesium.Viewer;
33
+ entity: E.IEntity;
34
+ rootFrame?: Cesium.Matrix4;
35
+ }): Cesium.Cartesian3 | null;
36
+ /**
37
+ * Returns the geospatial frame a part's record assumes for its root, the one the API works Location out in.
38
+ * Comparing it with where the Assembly is drawn gives how far the drawing has moved from the record.
39
+ * @param entity
40
+ */
41
+ function GetAssemblyRecordFrame(entity: E.IEntity): Cesium.Matrix4 | null;
42
+ /**
43
+ * Returns whether a record is an Assembly part, ie. placed through its root rather than its own Location.
44
+ * @param entity
45
+ */
46
+ function IsAssemblyPart(entity: E.IEntity): boolean;
47
+ /**
48
+ * Returns the frame a tileset is drawn in now, without its scale, so Assembly offsets in metres apply to it.
49
+ * It follows whatever moved the tileset: history, a simulated root, or model-space.
50
+ * @param tileset
51
+ */
52
+ function GetTilesetRootFrame(tileset: Cesium.Cesium3DTileset): Cesium.Matrix4 | null;
24
53
  /**
25
54
  * Returns the location for given entity or entities.
26
55
  * If available it will also compute a rectangle.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "bruce-cesium",
3
- "version": "7.6.4",
3
+ "version": "7.6.5",
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.123",
87
+ "bruce-models": "^7.1.127",
88
88
  "tslib": "^2.4.1"
89
89
  }
90
90
  }