@combeenation/3d-viewer 6.1.0 → 6.2.0

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 (97) hide show
  1. package/README.md +111 -111
  2. package/dist/lib-cjs/api/classes/animationInterface.d.ts +8 -8
  3. package/dist/lib-cjs/api/classes/animationInterface.js +2 -2
  4. package/dist/lib-cjs/api/classes/dottedPath.d.ts +79 -79
  5. package/dist/lib-cjs/api/classes/dottedPath.js +166 -166
  6. package/dist/lib-cjs/api/classes/element.d.ts +149 -149
  7. package/dist/lib-cjs/api/classes/element.js +669 -669
  8. package/dist/lib-cjs/api/classes/event.d.ts +342 -342
  9. package/dist/lib-cjs/api/classes/event.js +365 -365
  10. package/dist/lib-cjs/api/classes/eventBroadcaster.d.ts +26 -26
  11. package/dist/lib-cjs/api/classes/eventBroadcaster.js +49 -49
  12. package/dist/lib-cjs/api/classes/parameter.d.ts +339 -339
  13. package/dist/lib-cjs/api/classes/parameter.js +464 -464
  14. package/dist/lib-cjs/api/classes/parameterObservable.d.ts +36 -36
  15. package/dist/lib-cjs/api/classes/parameterObservable.js +97 -97
  16. package/dist/lib-cjs/api/classes/parameterizable.d.ts +15 -15
  17. package/dist/lib-cjs/api/classes/parameterizable.js +102 -102
  18. package/dist/lib-cjs/api/classes/placementAnimation.d.ts +45 -45
  19. package/dist/lib-cjs/api/classes/placementAnimation.js +176 -176
  20. package/dist/lib-cjs/api/classes/variant.d.ts +238 -234
  21. package/dist/lib-cjs/api/classes/variant.js +841 -828
  22. package/dist/lib-cjs/api/classes/variant.js.map +1 -1
  23. package/dist/lib-cjs/api/classes/variantInstance.d.ts +44 -44
  24. package/dist/lib-cjs/api/classes/variantInstance.js +105 -105
  25. package/dist/lib-cjs/api/classes/variantParameterizable.d.ts +17 -17
  26. package/dist/lib-cjs/api/classes/variantParameterizable.js +88 -88
  27. package/dist/lib-cjs/api/classes/viewer.d.ts +192 -187
  28. package/dist/lib-cjs/api/classes/viewer.js +639 -594
  29. package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
  30. package/dist/lib-cjs/api/classes/viewerLight.d.ts +66 -66
  31. package/dist/lib-cjs/api/classes/viewerLight.js +348 -348
  32. package/dist/lib-cjs/api/internal/lensRendering.d.ts +8 -8
  33. package/dist/lib-cjs/api/internal/lensRendering.js +11 -11
  34. package/dist/lib-cjs/api/internal/sceneSetup.d.ts +13 -13
  35. package/dist/lib-cjs/api/internal/sceneSetup.js +226 -226
  36. package/dist/lib-cjs/api/manager/animationManager.d.ts +30 -30
  37. package/dist/lib-cjs/api/manager/animationManager.js +126 -126
  38. package/dist/lib-cjs/api/manager/gltfExportManager.d.ts +78 -78
  39. package/dist/lib-cjs/api/manager/gltfExportManager.js +241 -241
  40. package/dist/lib-cjs/api/manager/sceneManager.d.ts +33 -33
  41. package/dist/lib-cjs/api/manager/sceneManager.js +130 -130
  42. package/dist/lib-cjs/api/manager/textureLoadManager.d.ts +22 -22
  43. package/dist/lib-cjs/api/manager/textureLoadManager.js +97 -97
  44. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +92 -92
  45. package/dist/lib-cjs/api/manager/variantInstanceManager.js +260 -260
  46. package/dist/lib-cjs/api/store/specStorage.d.ts +24 -24
  47. package/dist/lib-cjs/api/store/specStorage.js +50 -50
  48. package/dist/lib-cjs/api/util/babylonHelper.d.ts +187 -187
  49. package/dist/lib-cjs/api/util/babylonHelper.js +596 -596
  50. package/dist/lib-cjs/api/util/globalTypes.d.ts +387 -383
  51. package/dist/lib-cjs/api/util/globalTypes.js +1 -1
  52. package/dist/lib-cjs/api/util/resourceHelper.d.ts +58 -58
  53. package/dist/lib-cjs/api/util/resourceHelper.js +203 -203
  54. package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +42 -42
  55. package/dist/lib-cjs/api/util/sceneLoaderHelper.js +139 -139
  56. package/dist/lib-cjs/api/util/stringHelper.d.ts +9 -9
  57. package/dist/lib-cjs/api/util/stringHelper.js +25 -25
  58. package/dist/lib-cjs/api/util/structureHelper.d.ts +9 -9
  59. package/dist/lib-cjs/api/util/structureHelper.js +48 -48
  60. package/dist/lib-cjs/buildinfo.json +3 -3
  61. package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
  62. package/dist/lib-cjs/index.d.ts +51 -51
  63. package/dist/lib-cjs/index.js +110 -110
  64. package/package.json +81 -81
  65. package/src/api/classes/animationInterface.ts +10 -10
  66. package/src/api/classes/dottedPath.ts +181 -181
  67. package/src/api/classes/element.ts +717 -717
  68. package/src/api/classes/event.ts +385 -385
  69. package/src/api/classes/eventBroadcaster.ts +52 -52
  70. package/src/api/classes/parameter.ts +497 -497
  71. package/src/api/classes/parameterObservable.ts +100 -100
  72. package/src/api/classes/parameterizable.ts +87 -87
  73. package/src/api/classes/placementAnimation.ts +162 -162
  74. package/src/api/classes/variant.ts +910 -896
  75. package/src/api/classes/variantInstance.ts +97 -97
  76. package/src/api/classes/variantParameterizable.ts +85 -85
  77. package/src/api/classes/viewer.ts +720 -672
  78. package/src/api/classes/viewerLight.ts +339 -339
  79. package/src/api/internal/debugViewer.ts +90 -90
  80. package/src/api/internal/lensRendering.ts +9 -9
  81. package/src/api/internal/sceneSetup.ts +205 -205
  82. package/src/api/manager/animationManager.ts +143 -143
  83. package/src/api/manager/gltfExportManager.ts +236 -236
  84. package/src/api/manager/sceneManager.ts +132 -132
  85. package/src/api/manager/textureLoadManager.ts +95 -95
  86. package/src/api/manager/variantInstanceManager.ts +265 -265
  87. package/src/api/store/specStorage.ts +51 -51
  88. package/src/api/util/babylonHelper.ts +663 -663
  89. package/src/api/util/globalTypes.ts +437 -432
  90. package/src/api/util/resourceHelper.ts +191 -191
  91. package/src/api/util/sceneLoaderHelper.ts +137 -137
  92. package/src/api/util/stringHelper.ts +23 -23
  93. package/src/api/util/structureHelper.ts +49 -49
  94. package/src/buildinfo.json +3 -3
  95. package/src/dev.ts +61 -61
  96. package/src/index.ts +96 -96
  97. package/src/types.d.ts +28 -28
@@ -1,51 +1,51 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.SpecStorage = void 0;
4
- const lodash_es_1 = require("lodash-es");
5
- class SpecStorage {
6
- /**
7
- * Constructor.
8
- */
9
- constructor(spec) {
10
- this.spec = spec;
11
- }
12
- /**
13
- * Creates {@link SpecStorage} from spec.
14
- */
15
- static createFromSpec(structureJson) {
16
- if (this.instance) {
17
- throw new Error(`SpecStorage has already been created.`);
18
- }
19
- return (this.instance = new this(structureJson));
20
- }
21
- /**
22
- * Destroys the current instance to allow reinstantiating the SpecStorage.
23
- */
24
- static destroy() {
25
- this.instance = undefined;
26
- }
27
- /**
28
- * Gets spec from key.
29
- */
30
- static get(key) {
31
- if (!this.instance || !this.instance.spec) {
32
- throw new Error(`SpecStore has not been properly created.`);
33
- }
34
- if (key) {
35
- return (0, lodash_es_1.get)(this.instance.spec, key);
36
- }
37
- return this.instance.spec;
38
- }
39
- /**
40
- * Sets value for spec for given key.
41
- */
42
- static set(key, value) {
43
- if (!this.instance || !this.instance.spec) {
44
- throw new Error(`SpecStore has not been properly created.`);
45
- }
46
- (0, lodash_es_1.set)(this.instance.spec, key, value);
47
- return SpecStorage;
48
- }
49
- }
50
- exports.SpecStorage = SpecStorage;
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.SpecStorage = void 0;
4
+ const lodash_es_1 = require("lodash-es");
5
+ class SpecStorage {
6
+ /**
7
+ * Constructor.
8
+ */
9
+ constructor(spec) {
10
+ this.spec = spec;
11
+ }
12
+ /**
13
+ * Creates {@link SpecStorage} from spec.
14
+ */
15
+ static createFromSpec(structureJson) {
16
+ if (this.instance) {
17
+ throw new Error(`SpecStorage has already been created.`);
18
+ }
19
+ return (this.instance = new this(structureJson));
20
+ }
21
+ /**
22
+ * Destroys the current instance to allow reinstantiating the SpecStorage.
23
+ */
24
+ static destroy() {
25
+ this.instance = undefined;
26
+ }
27
+ /**
28
+ * Gets spec from key.
29
+ */
30
+ static get(key) {
31
+ if (!this.instance || !this.instance.spec) {
32
+ throw new Error(`SpecStore has not been properly created.`);
33
+ }
34
+ if (key) {
35
+ return (0, lodash_es_1.get)(this.instance.spec, key);
36
+ }
37
+ return this.instance.spec;
38
+ }
39
+ /**
40
+ * Sets value for spec for given key.
41
+ */
42
+ static set(key, value) {
43
+ if (!this.instance || !this.instance.spec) {
44
+ throw new Error(`SpecStore has not been properly created.`);
45
+ }
46
+ (0, lodash_es_1.set)(this.instance.spec, key, value);
47
+ return SpecStorage;
48
+ }
49
+ }
50
+ exports.SpecStorage = SpecStorage;
51
51
  //# sourceMappingURL=specStorage.js.map
@@ -1,187 +1,187 @@
1
- import { DottedPath } from '../classes/dottedPath';
2
- import { HighlightLayer } from '@babylonjs/core/Layers/highlightLayer';
3
- import { ShadowGenerator } from '@babylonjs/core/Lights/Shadows/shadowGenerator';
4
- import { BaseTexture } from '@babylonjs/core/Materials/Textures/baseTexture';
5
- import { Material } from '@babylonjs/core/Materials/material';
6
- import { Color3 } from '@babylonjs/core/Maths/math.color';
7
- import { AbstractMesh } from '@babylonjs/core/Meshes/abstractMesh';
8
- import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
9
- import { Observable } from '@babylonjs/core/Misc/observable';
10
- import { Node } from '@babylonjs/core/node';
11
- import { Scene } from '@babylonjs/core/scene';
12
- declare const backgroundDomeName = "BackgroundDome_ViewerGenerated";
13
- declare const envHelperMetadataName = "viewerEnvHelper";
14
- /**
15
- * @param node
16
- * @return Node
17
- */
18
- declare const getRootNode: (node: Node) => Node;
19
- /**
20
- * @param nodes
21
- * @param predicate
22
- * @return Map<DottedPath, T>
23
- */
24
- declare const mapToDottedNodes: <T>(nodes: Node[], predicate?: ((node: Node) => boolean) | undefined) => Map<DottedPath, T>;
25
- /**
26
- * @param node
27
- * @return DottedPath
28
- */
29
- declare const getDottedPathForNode: (node: Node) => DottedPath;
30
- /**
31
- * @param node
32
- * @param predicate
33
- * @param deep
34
- * @return TransformNode | null
35
- */
36
- declare const cloneTransformNode: (node: TransformNode, predicate?: ((node: TransformNode) => boolean) | undefined, deep?: boolean) => TransformNode | null;
37
- /**
38
- * @param node
39
- */
40
- declare const cloneNodeWithParents: (node: Node | null) => Node | null;
41
- /**
42
- * @param node
43
- * @param deep
44
- * @param prefix
45
- * @return TransformNode
46
- */
47
- declare const cloneTransformNodeMaterial: (node: TransformNode, prefix?: DottedPathArgument, deep?: boolean) => TransformNode;
48
- /**
49
- * @param node
50
- * @param deep
51
- * @param metadata
52
- */
53
- declare const injectNodeMetadata: (node: Node, metadata: {}, deep?: boolean) => void;
54
- /**
55
- * @param node
56
- * @param assertCallable
57
- * @param callableParameters
58
- * @param deep
59
- */
60
- declare const assertTransformNode: (node: TransformNode, assertCallable: CallableFunction, callableParameters?: any[], deep?: boolean) => void;
61
- /**
62
- * @param node
63
- * @param deep
64
- */
65
- declare const activateTransformNode: (node: TransformNode, deep?: boolean) => void;
66
- /**
67
- * @param node
68
- * @param deep
69
- */
70
- declare const deactivateTransformNode: (node: TransformNode, deep?: boolean) => void;
71
- /**
72
- * @param node
73
- */
74
- declare const enableNodeWithParents: (node: Node) => void;
75
- /**
76
- * @param node
77
- */
78
- declare const disableNodeWithParents: (node: Node) => void;
79
- /**
80
- * Applies a {@link TransformationDefinition} consecutively to ensure dependencies in positioning etc.
81
- * @param node
82
- * @param transformation
83
- */
84
- declare const transformTransformNode: (node: TransformNode, transformation: TransformationDefinition) => void;
85
- /**
86
- * Apply changes of environment (background texture, etc.) consecutively in order to avoid dependency related issues.
87
- * @param scene
88
- * @param envDef
89
- */
90
- declare const changeEnvironment: (scene: Scene, envDef: EnvironmentDefinition) => void;
91
- /**
92
- * @param node
93
- * @param materialName
94
- * @param deep
95
- */
96
- declare const setMaterial: (variant: Variant, node: TransformNode, materialName: string, deep?: boolean) => void;
97
- /**
98
- * !!! Warning !!!
99
- * This function is not public API. Whilst it can help solving certain problems, it only works reliably in well defined
100
- * situations and can cause unwanted side effects under some conditions. Use carefully at your own risk!
101
- *
102
- * See https://combeenation.myjetbrains.com/youtrack/issue/CB-5906 for further details regarding this warning.
103
- *
104
- * Set material of an instanced meshes source mesh.
105
- * Changes the material of all instanced meshes which have the same source mesh.
106
- *
107
- * @param node
108
- * @param material
109
- * @param deep
110
- *
111
- * @ignore
112
- */
113
- declare const setSourceNodeMaterial: (node: TransformNode, material: Material, deep?: boolean) => void;
114
- /**
115
- * @param node
116
- * @param color
117
- * @param deep
118
- */
119
- declare const setMaterialColor: (node: TransformNode, color: Color3, deep?: boolean) => void;
120
- /**
121
- * @param node
122
- * @param texture
123
- * @param deep
124
- */
125
- declare const setMaterialTexture: (node: TransformNode, texture: Texture, deep?: boolean) => void;
126
- /**
127
- * @param node
128
- * @param metallness
129
- * @param deep
130
- */
131
- declare const setMaterialMetallness: (node: TransformNode, metallness: number, deep?: boolean) => void;
132
- /**
133
- * @param node
134
- * @param roughness
135
- * @param deep
136
- */
137
- declare const setMaterialRoughness: (node: TransformNode, roughness: number, deep?: boolean) => void;
138
- /**
139
- * @param node
140
- * @param layer
141
- * @param color
142
- * @param deep
143
- */
144
- declare const addToHighlightLayer: (layer: HighlightLayer, color: Color3, node: TransformNode, deep?: boolean) => void;
145
- /**
146
- * @param node
147
- * @param layer
148
- * @param deep
149
- */
150
- declare const removeFromHighlightLayer: (layer: HighlightLayer, node: TransformNode, deep?: boolean) => void;
151
- /**
152
- * @param node
153
- * @param receiveShadows
154
- * @param deep
155
- */
156
- declare const setReceiveShadows: (node: TransformNode, receiveShadows: boolean, deep?: boolean) => void;
157
- /**
158
- * @param node
159
- * @param generator
160
- * @param deep
161
- */
162
- declare const addToShadowGenerator: (generator: ShadowGenerator, node: TransformNode, deep?: boolean) => void;
163
- /**
164
- * @param node
165
- * @param generator
166
- * @param deep
167
- */
168
- declare const removeFromShadowGenerator: (generator: ShadowGenerator, node: TransformNode, deep?: boolean) => void;
169
- /**
170
- * https://forum.babylonjs.com/t/get-mesh-bounding-box-position-and-size-in-2d-screen-coordinates/1058/3
171
- * @param mesh
172
- * @param scene
173
- * @param canvas
174
- */
175
- declare const getClientRectFromMesh: (mesh: AbstractMesh, scene: Scene, canvas: HTMLCanvasElement) => ClientRect;
176
- declare type BaseTextureWithOnLoadObservable = BaseTexture & {
177
- onLoadObservable: Observable<BaseTexture>;
178
- };
179
- /**
180
- * This type guard checks whether the given `BaseTextures` is any of its subtypes which comes with an
181
- * `onLoadObservable`.
182
- *
183
- * !!! Timing of when this function is called is important !!!
184
- * See the following for more details: https://forum.babylonjs.com/t/basetexture-whenallready-returns-too-early/34501/6
185
- */
186
- declare const isTextureWithOnLoadObservable: (texture: BaseTexture) => texture is BaseTextureWithOnLoadObservable;
187
- export { getRootNode, isTextureWithOnLoadObservable, mapToDottedNodes, getDottedPathForNode, cloneTransformNode, cloneNodeWithParents, cloneTransformNodeMaterial, injectNodeMetadata, assertTransformNode, activateTransformNode, deactivateTransformNode, enableNodeWithParents, disableNodeWithParents, transformTransformNode, setMaterial, setSourceNodeMaterial, setMaterialColor, setMaterialTexture, setMaterialMetallness, setMaterialRoughness, addToHighlightLayer, removeFromHighlightLayer, setReceiveShadows, addToShadowGenerator, removeFromShadowGenerator, getClientRectFromMesh, changeEnvironment, backgroundDomeName, envHelperMetadataName, };
1
+ import { DottedPath } from '../classes/dottedPath';
2
+ import { HighlightLayer } from '@babylonjs/core/Layers/highlightLayer';
3
+ import { ShadowGenerator } from '@babylonjs/core/Lights/Shadows/shadowGenerator';
4
+ import { BaseTexture } from '@babylonjs/core/Materials/Textures/baseTexture';
5
+ import { Material } from '@babylonjs/core/Materials/material';
6
+ import { Color3 } from '@babylonjs/core/Maths/math.color';
7
+ import { AbstractMesh } from '@babylonjs/core/Meshes/abstractMesh';
8
+ import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
9
+ import { Observable } from '@babylonjs/core/Misc/observable';
10
+ import { Node } from '@babylonjs/core/node';
11
+ import { Scene } from '@babylonjs/core/scene';
12
+ declare const backgroundDomeName = "BackgroundDome_ViewerGenerated";
13
+ declare const envHelperMetadataName = "viewerEnvHelper";
14
+ /**
15
+ * @param node
16
+ * @return Node
17
+ */
18
+ declare const getRootNode: (node: Node) => Node;
19
+ /**
20
+ * @param nodes
21
+ * @param predicate
22
+ * @return Map<DottedPath, T>
23
+ */
24
+ declare const mapToDottedNodes: <T>(nodes: Node[], predicate?: ((node: Node) => boolean) | undefined) => Map<DottedPath, T>;
25
+ /**
26
+ * @param node
27
+ * @return DottedPath
28
+ */
29
+ declare const getDottedPathForNode: (node: Node) => DottedPath;
30
+ /**
31
+ * @param node
32
+ * @param predicate
33
+ * @param deep
34
+ * @return TransformNode | null
35
+ */
36
+ declare const cloneTransformNode: (node: TransformNode, predicate?: ((node: TransformNode) => boolean) | undefined, deep?: boolean) => TransformNode | null;
37
+ /**
38
+ * @param node
39
+ */
40
+ declare const cloneNodeWithParents: (node: Node | null) => Node | null;
41
+ /**
42
+ * @param node
43
+ * @param deep
44
+ * @param prefix
45
+ * @return TransformNode
46
+ */
47
+ declare const cloneTransformNodeMaterial: (node: TransformNode, prefix?: DottedPathArgument, deep?: boolean) => TransformNode;
48
+ /**
49
+ * @param node
50
+ * @param deep
51
+ * @param metadata
52
+ */
53
+ declare const injectNodeMetadata: (node: Node, metadata: {}, deep?: boolean) => void;
54
+ /**
55
+ * @param node
56
+ * @param assertCallable
57
+ * @param callableParameters
58
+ * @param deep
59
+ */
60
+ declare const assertTransformNode: (node: TransformNode, assertCallable: CallableFunction, callableParameters?: any[], deep?: boolean) => void;
61
+ /**
62
+ * @param node
63
+ * @param deep
64
+ */
65
+ declare const activateTransformNode: (node: TransformNode, deep?: boolean) => void;
66
+ /**
67
+ * @param node
68
+ * @param deep
69
+ */
70
+ declare const deactivateTransformNode: (node: TransformNode, deep?: boolean) => void;
71
+ /**
72
+ * @param node
73
+ */
74
+ declare const enableNodeWithParents: (node: Node) => void;
75
+ /**
76
+ * @param node
77
+ */
78
+ declare const disableNodeWithParents: (node: Node) => void;
79
+ /**
80
+ * Applies a {@link TransformationDefinition} consecutively to ensure dependencies in positioning etc.
81
+ * @param node
82
+ * @param transformation
83
+ */
84
+ declare const transformTransformNode: (node: TransformNode, transformation: TransformationDefinition) => void;
85
+ /**
86
+ * Apply changes of environment (background texture, etc.) consecutively in order to avoid dependency related issues.
87
+ * @param scene
88
+ * @param envDef
89
+ */
90
+ declare const changeEnvironment: (scene: Scene, envDef: EnvironmentDefinition) => void;
91
+ /**
92
+ * @param node
93
+ * @param materialName
94
+ * @param deep
95
+ */
96
+ declare const setMaterial: (variant: Variant, node: TransformNode, materialName: string, deep?: boolean) => void;
97
+ /**
98
+ * !!! Warning !!!
99
+ * This function is not public API. Whilst it can help solving certain problems, it only works reliably in well defined
100
+ * situations and can cause unwanted side effects under some conditions. Use carefully at your own risk!
101
+ *
102
+ * See https://combeenation.myjetbrains.com/youtrack/issue/CB-5906 for further details regarding this warning.
103
+ *
104
+ * Set material of an instanced meshes source mesh.
105
+ * Changes the material of all instanced meshes which have the same source mesh.
106
+ *
107
+ * @param node
108
+ * @param material
109
+ * @param deep
110
+ *
111
+ * @ignore
112
+ */
113
+ declare const setSourceNodeMaterial: (node: TransformNode, material: Material, deep?: boolean) => void;
114
+ /**
115
+ * @param node
116
+ * @param color
117
+ * @param deep
118
+ */
119
+ declare const setMaterialColor: (node: TransformNode, color: Color3, deep?: boolean) => void;
120
+ /**
121
+ * @param node
122
+ * @param texture
123
+ * @param deep
124
+ */
125
+ declare const setMaterialTexture: (node: TransformNode, texture: Texture, deep?: boolean) => void;
126
+ /**
127
+ * @param node
128
+ * @param metallness
129
+ * @param deep
130
+ */
131
+ declare const setMaterialMetallness: (node: TransformNode, metallness: number, deep?: boolean) => void;
132
+ /**
133
+ * @param node
134
+ * @param roughness
135
+ * @param deep
136
+ */
137
+ declare const setMaterialRoughness: (node: TransformNode, roughness: number, deep?: boolean) => void;
138
+ /**
139
+ * @param node
140
+ * @param layer
141
+ * @param color
142
+ * @param deep
143
+ */
144
+ declare const addToHighlightLayer: (layer: HighlightLayer, color: Color3, node: TransformNode, deep?: boolean) => void;
145
+ /**
146
+ * @param node
147
+ * @param layer
148
+ * @param deep
149
+ */
150
+ declare const removeFromHighlightLayer: (layer: HighlightLayer, node: TransformNode, deep?: boolean) => void;
151
+ /**
152
+ * @param node
153
+ * @param receiveShadows
154
+ * @param deep
155
+ */
156
+ declare const setReceiveShadows: (node: TransformNode, receiveShadows: boolean, deep?: boolean) => void;
157
+ /**
158
+ * @param node
159
+ * @param generator
160
+ * @param deep
161
+ */
162
+ declare const addToShadowGenerator: (generator: ShadowGenerator, node: TransformNode, deep?: boolean) => void;
163
+ /**
164
+ * @param node
165
+ * @param generator
166
+ * @param deep
167
+ */
168
+ declare const removeFromShadowGenerator: (generator: ShadowGenerator, node: TransformNode, deep?: boolean) => void;
169
+ /**
170
+ * https://forum.babylonjs.com/t/get-mesh-bounding-box-position-and-size-in-2d-screen-coordinates/1058/3
171
+ * @param mesh
172
+ * @param scene
173
+ * @param canvas
174
+ */
175
+ declare const getClientRectFromMesh: (mesh: AbstractMesh, scene: Scene, canvas: HTMLCanvasElement) => ClientRect;
176
+ declare type BaseTextureWithOnLoadObservable = BaseTexture & {
177
+ onLoadObservable: Observable<BaseTexture>;
178
+ };
179
+ /**
180
+ * This type guard checks whether the given `BaseTextures` is any of its subtypes which comes with an
181
+ * `onLoadObservable`.
182
+ *
183
+ * !!! Timing of when this function is called is important !!!
184
+ * See the following for more details: https://forum.babylonjs.com/t/basetexture-whenallready-returns-too-early/34501/6
185
+ */
186
+ declare const isTextureWithOnLoadObservable: (texture: BaseTexture) => texture is BaseTextureWithOnLoadObservable;
187
+ export { getRootNode, isTextureWithOnLoadObservable, mapToDottedNodes, getDottedPathForNode, cloneTransformNode, cloneNodeWithParents, cloneTransformNodeMaterial, injectNodeMetadata, assertTransformNode, activateTransformNode, deactivateTransformNode, enableNodeWithParents, disableNodeWithParents, transformTransformNode, setMaterial, setSourceNodeMaterial, setMaterialColor, setMaterialTexture, setMaterialMetallness, setMaterialRoughness, addToHighlightLayer, removeFromHighlightLayer, setReceiveShadows, addToShadowGenerator, removeFromShadowGenerator, getClientRectFromMesh, changeEnvironment, backgroundDomeName, envHelperMetadataName, };