@combeenation/3d-viewer 6.4.1-beta1 → 7.0.0-beta1

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 (69) hide show
  1. package/dist/lib-cjs/api/classes/element.d.ts +4 -0
  2. package/dist/lib-cjs/api/classes/element.js +59 -58
  3. package/dist/lib-cjs/api/classes/element.js.map +1 -1
  4. package/dist/lib-cjs/api/classes/event.d.ts +55 -1
  5. package/dist/lib-cjs/api/classes/event.js +55 -1
  6. package/dist/lib-cjs/api/classes/event.js.map +1 -1
  7. package/dist/lib-cjs/api/classes/fuzzyMap.d.ts +7 -0
  8. package/dist/lib-cjs/api/classes/fuzzyMap.js +22 -0
  9. package/dist/lib-cjs/api/classes/fuzzyMap.js.map +1 -0
  10. package/dist/lib-cjs/api/classes/parameter.d.ts +12 -0
  11. package/dist/lib-cjs/api/classes/parameter.js +86 -33
  12. package/dist/lib-cjs/api/classes/parameter.js.map +1 -1
  13. package/dist/lib-cjs/api/classes/parameterObservable.js +2 -27
  14. package/dist/lib-cjs/api/classes/parameterObservable.js.map +1 -1
  15. package/dist/lib-cjs/api/classes/variant.d.ts +23 -4
  16. package/dist/lib-cjs/api/classes/variant.js +45 -20
  17. package/dist/lib-cjs/api/classes/variant.js.map +1 -1
  18. package/dist/lib-cjs/api/classes/variantInstance.d.ts +11 -2
  19. package/dist/lib-cjs/api/classes/variantInstance.js +22 -2
  20. package/dist/lib-cjs/api/classes/variantInstance.js.map +1 -1
  21. package/dist/lib-cjs/api/classes/viewer.d.ts +13 -1
  22. package/dist/lib-cjs/api/classes/viewer.js +57 -7
  23. package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
  24. package/dist/lib-cjs/api/classes/viewerLight.js.map +1 -1
  25. package/dist/lib-cjs/api/manager/animationManager.d.ts +3 -3
  26. package/dist/lib-cjs/api/manager/animationManager.js.map +1 -1
  27. package/dist/lib-cjs/api/manager/sceneManager.js.map +1 -1
  28. package/dist/lib-cjs/api/manager/tagManager.d.ts +108 -0
  29. package/dist/lib-cjs/api/manager/tagManager.js +420 -0
  30. package/dist/lib-cjs/api/manager/tagManager.js.map +1 -0
  31. package/dist/lib-cjs/api/manager/variantInstanceManager.d.ts +8 -3
  32. package/dist/lib-cjs/api/manager/variantInstanceManager.js +27 -8
  33. package/dist/lib-cjs/api/manager/variantInstanceManager.js.map +1 -1
  34. package/dist/lib-cjs/api/store/specStorage.d.ts +8 -0
  35. package/dist/lib-cjs/api/store/specStorage.js +15 -0
  36. package/dist/lib-cjs/api/store/specStorage.js.map +1 -1
  37. package/dist/lib-cjs/api/util/babylonHelper.d.ts +36 -7
  38. package/dist/lib-cjs/api/util/babylonHelper.js +92 -15
  39. package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
  40. package/dist/lib-cjs/api/util/globalTypes.d.ts +38 -1
  41. package/dist/lib-cjs/api/util/sceneLoaderHelper.d.ts +1 -0
  42. package/dist/lib-cjs/api/util/sceneLoaderHelper.js +20 -2
  43. package/dist/lib-cjs/api/util/sceneLoaderHelper.js.map +1 -1
  44. package/dist/lib-cjs/buildinfo.json +1 -1
  45. package/dist/lib-cjs/commonjs.tsconfig.tsbuildinfo +1 -1
  46. package/dist/lib-cjs/index.d.ts +3 -1
  47. package/dist/lib-cjs/index.js +5 -1
  48. package/dist/lib-cjs/index.js.map +1 -1
  49. package/package.json +1 -1
  50. package/src/api/classes/element.ts +96 -82
  51. package/src/api/classes/event.ts +68 -1
  52. package/src/api/classes/fuzzyMap.ts +21 -0
  53. package/src/api/classes/parameter.ts +91 -34
  54. package/src/api/classes/parameterObservable.ts +2 -29
  55. package/src/api/classes/variant.ts +82 -33
  56. package/src/api/classes/variantInstance.ts +27 -1
  57. package/src/api/classes/viewer.ts +63 -12
  58. package/src/api/classes/viewerLight.ts +10 -10
  59. package/src/api/manager/animationManager.ts +2 -2
  60. package/src/api/manager/sceneManager.ts +5 -1
  61. package/src/api/manager/tagManager.ts +451 -0
  62. package/src/api/manager/variantInstanceManager.ts +35 -8
  63. package/src/api/store/specStorage.ts +17 -0
  64. package/src/api/util/babylonHelper.ts +99 -21
  65. package/src/api/util/globalTypes.ts +56 -1
  66. package/src/api/util/sceneLoaderHelper.ts +21 -2
  67. package/src/dev.ts +3 -1
  68. package/src/index.ts +4 -0
  69. package/src/types.d.ts +7 -0
@@ -1 +1 @@
1
- {"version":3,"file":"specStorage.js","sourceRoot":"","sources":["../../../../src/api/store/specStorage.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAErC,MAAa,WAAW;IAGtB;;OAEG;IACH,YAAgC,IAAmB;QAAnB,SAAI,GAAJ,IAAI,CAAe;IAAG,CAAC;IAEvD;;OAEG;IACI,MAAM,CAAC,cAAc,CAAC,aAA4B;QACvD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC1D;QACD,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,OAAO;QACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAI,GAAY;QAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QACD,IAAI,GAAG,EAAE;YACP,OAAO,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAM,CAAC;SAC1C;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAS,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAI,GAAW,EAAE,KAAQ;QACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QACD,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAhDD,kCAgDC"}
1
+ {"version":3,"file":"specStorage.js","sourceRoot":"","sources":["../../../../src/api/store/specStorage.ts"],"names":[],"mappings":";;;AAAA,yCAAqC;AAErC,MAAa,WAAW;IAGtB;;OAEG;IACH,YAAgC,IAAmB;QAAnB,SAAI,GAAJ,IAAI,CAAe;IAAG,CAAC;IAEvD;;OAEG;IACI,MAAM,CAAC,cAAc,CAAC,aAA4B;QACvD,IAAI,IAAI,CAAC,QAAQ,EAAE;YACjB,MAAM,IAAI,KAAK,CAAC,uCAAuC,CAAC,CAAC;SAC1D;QACD,OAAO,CAAC,IAAI,CAAC,QAAQ,GAAG,IAAI,IAAI,CAAC,aAAa,CAAC,CAAC,CAAC;IACnD,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,WAAW;QACvB,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC;IACvB,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,OAAO;QACnB,OAAO,IAAI,CAAC,WAAW,EAAE,CAAC,IAAI,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,OAAO;QACnB,IAAI,CAAC,QAAQ,GAAG,SAAS,CAAC;IAC5B,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAI,GAAY;QAC/B,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QACD,IAAI,GAAG,EAAE;YACP,OAAO,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,CAAM,CAAC;SAC1C;QACD,OAAO,IAAI,CAAC,QAAQ,CAAC,IAAS,CAAC;IACjC,CAAC;IAED;;OAEG;IACI,MAAM,CAAC,GAAG,CAAI,GAAW,EAAE,KAAQ;QACxC,IAAI,CAAC,IAAI,CAAC,QAAQ,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE;YACzC,MAAM,IAAI,KAAK,CAAC,0CAA0C,CAAC,CAAC;SAC7D;QACD,IAAA,eAAG,EAAC,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,GAAG,EAAE,KAAK,CAAC,CAAC;QACpC,OAAO,WAAW,CAAC;IACrB,CAAC;CACF;AAjED,kCAiEC"}
@@ -29,11 +29,12 @@ declare const mapToDottedNodes: <T>(nodes: Node[], predicate?: ((node: Node) =>
29
29
  declare const getDottedPathForNode: (node: Node) => DottedPath;
30
30
  /**
31
31
  * @param node
32
+ * @param nodeNamingStrategy
32
33
  * @param predicate
33
34
  * @param deep
34
35
  * @return TransformNode | null
35
36
  */
36
- declare const cloneTransformNode: (node: TransformNode, predicate?: ((node: TransformNode) => boolean) | undefined, deep?: boolean) => TransformNode | null;
37
+ declare const cloneTransformNode: (node: TransformNode, nodeNamingStrategy: NodeNamingStrategy, predicate?: ((node: TransformNode) => boolean) | undefined, deep?: boolean) => TransformNode | null;
37
38
  /**
38
39
  * @param node
39
40
  */
@@ -57,7 +58,12 @@ declare const injectNodeMetadata: (node: Node, metadata: {}, deep?: boolean) =>
57
58
  * @param callableParameters
58
59
  * @param deep
59
60
  */
60
- declare const assertTransformNode: (node: TransformNode, assertCallable: CallableFunction, callableParameters?: any[], deep?: boolean) => void;
61
+ declare const assertTransformNode: (node: TransformNode, assertCallable: (node: TransformNode, ...args: any[]) => void, callableParameters?: any[], deep?: boolean) => void;
62
+ /**
63
+ * @param node
64
+ * @param parameter
65
+ */
66
+ declare const assertMeshCapability: (node: TransformNode, parameter: string) => void;
61
67
  /**
62
68
  * @param node
63
69
  * @param deep
@@ -102,17 +108,17 @@ declare const changeEnvironment: (scene: Scene, envDef: EnvironmentDefinition) =
102
108
  * Finally the material will not be applied before all its textures have been loaded. In this way "flickering" effects
103
109
  * will be avoided, since the material would be incomplete without its loaded textures.
104
110
  */
105
- declare const setMaterial: (scene: Scene, node: TransformNode, materialId: string, deep?: boolean, variant?: Variant) => void;
111
+ declare const setMaterial: (node: TransformNode, materialId: string, deep?: boolean, variant?: Variant) => void;
106
112
  /**
107
113
  * Gets the Material either from the given {@link Variant}, the given scene or tries to create it from an Combeenation
108
114
  * material asset when inside a Combeenation configurator.
109
115
  */
110
116
  declare const getOrCreateMaterial: (scene: Scene, materialId: string, variant?: Variant) => Material;
111
117
  /**
112
- * Waits until the materials textures are loaded and sets the material on the node if there is no newer "set material"
113
- * request
118
+ * Waits until the materials textures are loaded and shaders are compiled.
119
+ * Then sets the material on the node if there is no newer "set material" request
114
120
  */
115
- declare const applyMaterialAfterTexturesLoaded: (material: Material, node: AbstractMesh) => Promise<void>;
121
+ declare const applyMaterial: (material: Material, node: AbstractMesh) => Promise<void>;
116
122
  /**
117
123
  * !!! Warning !!!
118
124
  * This function is not public API. Whilst it can help solving certain problems, it only works reliably in well defined
@@ -203,4 +209,27 @@ declare type BaseTextureWithOnLoadObservable = BaseTexture & {
203
209
  * See the following for more details: https://forum.babylonjs.com/t/basetexture-whenallready-returns-too-early/34501/6
204
210
  */
205
211
  declare const isTextureWithOnLoadObservable: (texture: BaseTexture) => texture is BaseTextureWithOnLoadObservable;
206
- export { getRootNode, isTextureWithOnLoadObservable, mapToDottedNodes, getDottedPathForNode, cloneTransformNode, cloneNodeWithParents, cloneTransformNodeMaterial, getOrCreateMaterial, applyMaterialAfterTexturesLoaded, injectNodeMetadata, assertTransformNode, activateTransformNode, deactivateTransformNode, enableNodeWithParents, disableNodeWithParents, transformTransformNode, setMaterial, setSourceNodeMaterial, setMaterialColor, setMaterialTexture, setMaterialMetallness, setMaterialRoughness, addToHighlightLayer, removeFromHighlightLayer, setReceiveShadows, addToShadowGenerator, removeFromShadowGenerator, getClientRectFromMesh, changeEnvironment, backgroundDomeName, envHelperMetadataName, };
212
+ /**
213
+ * @param objects
214
+ * @param tagMapping
215
+ */
216
+ declare const mapTags: (objects: object[], tagMapping: TagMapping) => string[];
217
+ /**
218
+ * Gets an array of ids for nodeIds that exist in both TransformNode arrays.
219
+ * @param nodes1
220
+ * @param nodes2
221
+ * @param predicate
222
+ */
223
+ declare const intersectingNodeNames: (nodes1: Node[], nodes2: Node[], predicate?: ((node: Node) => boolean) | undefined) => string[];
224
+ /**
225
+ * Gets an array of ids for duplicate nodeIds in given node array.
226
+ * @param nodes
227
+ * @param predicate
228
+ */
229
+ declare const duplicateNodeNames: (nodes: Node[], predicate?: ((node: Node) => boolean) | undefined) => string[];
230
+ /**
231
+ * Reports duplicate nodeIds.
232
+ * @param nodeNames
233
+ */
234
+ declare const reportDuplicateNodeNames: (nodeNames: string[]) => void;
235
+ export { getRootNode, isTextureWithOnLoadObservable, mapToDottedNodes, getDottedPathForNode, cloneTransformNode, cloneNodeWithParents, cloneTransformNodeMaterial, getOrCreateMaterial, applyMaterial, injectNodeMetadata, assertTransformNode, assertMeshCapability, activateTransformNode, deactivateTransformNode, enableNodeWithParents, disableNodeWithParents, transformTransformNode, setMaterial, setSourceNodeMaterial, setMaterialColor, setMaterialTexture, setMaterialMetallness, setMaterialRoughness, addToHighlightLayer, removeFromHighlightLayer, setReceiveShadows, addToShadowGenerator, removeFromShadowGenerator, getClientRectFromMesh, changeEnvironment, backgroundDomeName, envHelperMetadataName, mapTags, intersectingNodeNames, duplicateNodeNames, reportDuplicateNodeNames, };
@@ -9,8 +9,9 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
9
9
  });
10
10
  };
11
11
  Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.envHelperMetadataName = exports.backgroundDomeName = exports.changeEnvironment = exports.getClientRectFromMesh = exports.removeFromShadowGenerator = exports.addToShadowGenerator = exports.setReceiveShadows = exports.removeFromHighlightLayer = exports.addToHighlightLayer = exports.setMaterialRoughness = exports.setMaterialMetallness = exports.setMaterialTexture = exports.setMaterialColor = exports.setSourceNodeMaterial = exports.setMaterial = exports.transformTransformNode = exports.disableNodeWithParents = exports.enableNodeWithParents = exports.deactivateTransformNode = exports.activateTransformNode = exports.assertTransformNode = exports.injectNodeMetadata = exports.applyMaterialAfterTexturesLoaded = exports.getOrCreateMaterial = exports.cloneTransformNodeMaterial = exports.cloneNodeWithParents = exports.cloneTransformNode = exports.getDottedPathForNode = exports.mapToDottedNodes = exports.isTextureWithOnLoadObservable = exports.getRootNode = void 0;
12
+ exports.reportDuplicateNodeNames = exports.duplicateNodeNames = exports.intersectingNodeNames = exports.mapTags = exports.envHelperMetadataName = exports.backgroundDomeName = exports.changeEnvironment = exports.getClientRectFromMesh = exports.removeFromShadowGenerator = exports.addToShadowGenerator = exports.setReceiveShadows = exports.removeFromHighlightLayer = exports.addToHighlightLayer = exports.setMaterialRoughness = exports.setMaterialMetallness = exports.setMaterialTexture = exports.setMaterialColor = exports.setSourceNodeMaterial = exports.setMaterial = exports.transformTransformNode = exports.disableNodeWithParents = exports.enableNodeWithParents = exports.deactivateTransformNode = exports.activateTransformNode = exports.assertMeshCapability = exports.assertTransformNode = exports.injectNodeMetadata = exports.applyMaterial = exports.getOrCreateMaterial = exports.cloneTransformNodeMaterial = exports.cloneNodeWithParents = exports.cloneTransformNode = exports.getDottedPathForNode = exports.mapToDottedNodes = exports.isTextureWithOnLoadObservable = exports.getRootNode = void 0;
13
13
  const dottedPath_1 = require("../classes/dottedPath");
14
+ const event_1 = require("../classes/event");
14
15
  const sceneSetup_1 = require("../internal/sceneSetup");
15
16
  const sceneLoaderHelper_1 = require("./sceneLoaderHelper");
16
17
  const photoDome_1 = require("@babylonjs/core/Helpers/photoDome");
@@ -23,6 +24,7 @@ const math_vector_1 = require("@babylonjs/core/Maths/math.vector");
23
24
  const abstractMesh_1 = require("@babylonjs/core/Meshes/abstractMesh");
24
25
  const instancedMesh_1 = require("@babylonjs/core/Meshes/instancedMesh");
25
26
  const transformNode_1 = require("@babylonjs/core/Meshes/transformNode");
27
+ const tags_1 = require("@babylonjs/core/Misc/tags");
26
28
  const tools_1 = require("@babylonjs/core/Misc/tools");
27
29
  const lodash_es_1 = require("lodash-es");
28
30
  const backgroundDomeName = 'BackgroundDome_ViewerGenerated';
@@ -79,17 +81,21 @@ const getDottedPathForNode = function (node) {
79
81
  exports.getDottedPathForNode = getDottedPathForNode;
80
82
  /**
81
83
  * @param node
84
+ * @param nodeNamingStrategy
82
85
  * @param predicate
83
86
  * @param deep
84
87
  * @return TransformNode | null
85
88
  */
86
- const cloneTransformNode = function (node, predicate, deep = true) {
89
+ const cloneTransformNode = function (node, nodeNamingStrategy, predicate, deep = true) {
87
90
  if (predicate && !predicate(node)) {
88
91
  return null;
89
92
  }
90
- const clone = node.clone(node.name, node.parent, true);
93
+ const newName = nodeNamingStrategy.handler(node, nodeNamingStrategy.payload);
94
+ const clone = node.clone(newName, node.parent, true);
91
95
  if (clone) {
96
+ clone.id = newName;
92
97
  clone.metadata = (0, lodash_es_1.cloneDeep)(node.metadata);
98
+ injectNodeMetadata(clone, { cloneSource: node }, false);
93
99
  // if the cloned node is of type InstancedMesh, due to a bug(?),
94
100
  // the InstancedMesh.isEnabled state may have changed after cloning.
95
101
  // in that case, set the clone's enabled state to the original's state
@@ -100,7 +106,7 @@ const cloneTransformNode = function (node, predicate, deep = true) {
100
106
  if (deep) {
101
107
  const children = node.getChildTransformNodes(true);
102
108
  children.forEach(child => {
103
- const clonedChild = cloneTransformNode(child, predicate, deep);
109
+ const clonedChild = cloneTransformNode(child, nodeNamingStrategy, predicate, deep);
104
110
  if (clonedChild) {
105
111
  clonedChild.parent = clone;
106
112
  }
@@ -171,6 +177,20 @@ const assertTransformNode = function (node, assertCallable, callableParameters =
171
177
  }
172
178
  };
173
179
  exports.assertTransformNode = assertTransformNode;
180
+ /**
181
+ * @param node
182
+ * @param parameter
183
+ */
184
+ const assertMeshCapability = function (node, parameter) {
185
+ if (!(node instanceof abstractMesh_1.AbstractMesh)) {
186
+ const cls = node.getClassName();
187
+ throw new Error(`Changing parameter "${parameter}" of a(n) ${cls} is not supported. Tried to change node "${node.id}".`);
188
+ }
189
+ if (node instanceof instancedMesh_1.InstancedMesh) {
190
+ throw new Error(`Changing parameter "${parameter}" of an InstancedMesh is not supported. Tried to change node "${node.id}".`);
191
+ }
192
+ };
193
+ exports.assertMeshCapability = assertMeshCapability;
174
194
  /**
175
195
  * @param node
176
196
  * @param deep
@@ -348,9 +368,9 @@ exports.changeEnvironment = changeEnvironment;
348
368
  * Finally the material will not be applied before all its textures have been loaded. In this way "flickering" effects
349
369
  * will be avoided, since the material would be incomplete without its loaded textures.
350
370
  */
351
- const setMaterial = function (scene, node, materialId, deep = true, variant) {
371
+ const setMaterial = function (node, materialId, deep = true, variant) {
352
372
  if (node instanceof abstractMesh_1.AbstractMesh) {
353
- const materialExists = scene.getMaterialById(materialId);
373
+ const materialExists = node.getScene().getMaterialById(materialId);
354
374
  const hasMissingMaterial = (0, lodash_es_1.has)(node.metadata, sceneLoaderHelper_1.missingMaterialMetadataName);
355
375
  const deferMaterialCreation = !materialExists && !node.isEnabled();
356
376
  if (deferMaterialCreation) {
@@ -362,9 +382,9 @@ const setMaterial = function (scene, node, materialId, deep = true, variant) {
362
382
  }
363
383
  }
364
384
  else {
365
- // create material an apply it when textures have been loaded
366
- const material = getOrCreateMaterial(scene, materialId, variant);
367
- applyMaterialAfterTexturesLoaded(material, node);
385
+ // create material and apply it when textures have been loaded
386
+ const material = getOrCreateMaterial(node.getScene(), materialId, variant);
387
+ applyMaterial(material, node).then(() => event_1.emitter.emit(event_1.Event.MESH_MATERIAL_APPLIED, node, material));
368
388
  if (hasMissingMaterial) {
369
389
  delete node.metadata[sceneLoaderHelper_1.missingMaterialMetadataName];
370
390
  }
@@ -373,7 +393,7 @@ const setMaterial = function (scene, node, materialId, deep = true, variant) {
373
393
  // recursively set materials on children (if desired)
374
394
  if (deep) {
375
395
  for (const child of node.getChildTransformNodes(true)) {
376
- setMaterial(scene, child, materialId, deep, variant);
396
+ setMaterial(child, materialId, deep, variant);
377
397
  }
378
398
  }
379
399
  };
@@ -399,10 +419,11 @@ const getOrCreateMaterial = function (scene, materialId, variant) {
399
419
  };
400
420
  exports.getOrCreateMaterial = getOrCreateMaterial;
401
421
  /**
402
- * Waits until the materials textures are loaded and sets the material on the node if there is no newer "set material"
403
- * request
422
+ * Waits until the materials textures are loaded and shaders are compiled.
423
+ * Then sets the material on the node if there is no newer "set material" request
404
424
  */
405
- const applyMaterialAfterTexturesLoaded = function (material, node) {
425
+ const applyMaterial = function (material, node) {
426
+ var _a;
406
427
  return __awaiter(this, void 0, void 0, function* () {
407
428
  // set current material id as last valid id, in this case all previously set materials on the node will be invalidated
408
429
  injectNodeMetadata(node, { [materialWaitingToBeSetMetadataName]: material.id }, false);
@@ -417,13 +438,13 @@ const applyMaterialAfterTexturesLoaded = function (material, node) {
417
438
  // if this would not be the case you can see some "flickering" when setting the material
418
439
  yield Promise.all([promTexturesReady, promMaterialCompiled]);
419
440
  // textures ready, now check if the material is still up-to-date
420
- if (material.id === node.metadata[materialWaitingToBeSetMetadataName]) {
441
+ if (material.id === ((_a = node.metadata) === null || _a === void 0 ? void 0 : _a[materialWaitingToBeSetMetadataName])) {
421
442
  node.material = material;
422
443
  delete node.metadata[materialWaitingToBeSetMetadataName];
423
444
  }
424
445
  });
425
446
  };
426
- exports.applyMaterialAfterTexturesLoaded = applyMaterialAfterTexturesLoaded;
447
+ exports.applyMaterial = applyMaterial;
427
448
  /**
428
449
  * !!! Warning !!!
429
450
  * This function is not public API. Whilst it can help solving certain problems, it only works reliably in well defined
@@ -471,6 +492,7 @@ const setMaterialColor = function (node, color, deep = true) {
471
492
  default:
472
493
  throw new Error(`Setting color for material of instance "${materialCls}" not implemented (yet).`);
473
494
  }
495
+ setMaterial(node, node.material.id, false);
474
496
  }
475
497
  if (deep) {
476
498
  node.getChildTransformNodes(true).forEach(child => setMaterialColor(child, color, deep));
@@ -495,6 +517,7 @@ const setMaterialTexture = function (node, texture, deep = true) {
495
517
  default:
496
518
  throw new Error(`Setting texture for material of instance "${materialCls}" not implemented (yet).`);
497
519
  }
520
+ setMaterial(node, node.material.id, false);
498
521
  }
499
522
  if (deep) {
500
523
  node.getChildTransformNodes(true).forEach(child => setMaterialTexture(child, texture, deep));
@@ -516,6 +539,7 @@ const setMaterialMetallness = function (node, metallness, deep = true) {
516
539
  default:
517
540
  throw new Error(`Setting metallness for material of instance "${materialCls}" not implemented (yet).`);
518
541
  }
542
+ setMaterial(node, node.material.id, false);
519
543
  }
520
544
  if (deep) {
521
545
  node.getChildTransformNodes(true).forEach(child => setMaterialMetallness(child, metallness, deep));
@@ -540,6 +564,7 @@ const setMaterialRoughness = function (node, roughness, deep = true) {
540
564
  default:
541
565
  throw new Error(`Setting roughness for material of instance "${materialCls}" not implemented (yet).`);
542
566
  }
567
+ setMaterial(node, node.material.id, false);
543
568
  }
544
569
  if (deep) {
545
570
  node.getChildTransformNodes(true).forEach(child => setMaterialRoughness(child, roughness, deep));
@@ -666,4 +691,56 @@ const isTextureWithOnLoadObservable = function (texture) {
666
691
  return !!texture.onLoadObservable;
667
692
  };
668
693
  exports.isTextureWithOnLoadObservable = isTextureWithOnLoadObservable;
694
+ /**
695
+ * @param objects
696
+ * @param tagMapping
697
+ */
698
+ const mapTags = function (objects, tagMapping) {
699
+ var _a;
700
+ let affectedTags = [];
701
+ for (const object of objects) {
702
+ const oldTags = Object.keys((_a = tags_1.Tags.GetTags(object, false)) !== null && _a !== void 0 ? _a : {});
703
+ const mappedTags = oldTags.map(t => tagMapping[t] || t);
704
+ tags_1.Tags.RemoveTagsFrom(object, oldTags.join(' '));
705
+ tags_1.Tags.AddTagsTo(object, mappedTags.join(' '));
706
+ affectedTags = [...affectedTags, ...mappedTags];
707
+ }
708
+ return (0, lodash_es_1.uniq)(affectedTags);
709
+ };
710
+ exports.mapTags = mapTags;
711
+ /**
712
+ * Gets an array of ids for nodeIds that exist in both TransformNode arrays.
713
+ * @param nodes1
714
+ * @param nodes2
715
+ * @param predicate
716
+ */
717
+ const intersectingNodeNames = function (nodes1, nodes2, predicate) {
718
+ const nodeNames1 = nodes1.filter(n => !predicate || predicate(n)).map(n => n.name);
719
+ const nodesNames2 = nodes2.filter(n => !predicate || predicate(n)).map(n => n.name);
720
+ return nodeNames1.filter(n1 => nodesNames2.includes(n1));
721
+ };
722
+ exports.intersectingNodeNames = intersectingNodeNames;
723
+ /**
724
+ * Gets an array of ids for duplicate nodeIds in given node array.
725
+ * @param nodes
726
+ * @param predicate
727
+ */
728
+ const duplicateNodeNames = function (nodes, predicate) {
729
+ const nodeNames = nodes.filter(n => !predicate || predicate(n)).map(n => n.name);
730
+ return nodeNames.filter((v, i, self) => self.indexOf(v) !== i);
731
+ };
732
+ exports.duplicateNodeNames = duplicateNodeNames;
733
+ /**
734
+ * Reports duplicate nodeIds.
735
+ * @param nodeNames
736
+ */
737
+ const reportDuplicateNodeNames = function (nodeNames) {
738
+ var _a;
739
+ if (nodeNames.length > 0) {
740
+ const warn = `There are duplicate nodeNames: ${nodeNames.join(', ')}`;
741
+ console.warn(`!!! Warning !!!\n${warn}`);
742
+ (_a = window.Cbn) === null || _a === void 0 ? void 0 : _a.Assets.reportDuplicateNodeName(nodeNames);
743
+ }
744
+ };
745
+ exports.reportDuplicateNodeNames = reportDuplicateNodeNames;
669
746
  //# sourceMappingURL=babylonHelper.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"babylonHelper.js","sourceRoot":"","sources":["../../../../src/api/util/babylonHelper.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"babylonHelper.js","sourceRoot":"","sources":["../../../../src/api/util/babylonHelper.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@
2
2
  declare type Viewer = import('../classes/viewer').Viewer;
3
3
  declare type Variant = import('../classes/variant').Variant;
4
4
  declare type VariantInstance = import('../classes/variantInstance').VariantInstance;
5
+ declare type VariantParameterizable = import('../classes/variantParameterizable').VariantParameterizable;
5
6
  /**
6
7
  * Alias for {@link Element} which can be used to prevent name clashes with the web APIs
7
8
  * [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) class
@@ -10,6 +11,7 @@ declare type VariantElement = import('../classes/element').Element;
10
11
  declare type DottedPath = import('../classes/dottedPath').DottedPath;
11
12
  declare type ViewerLight = import('../classes/viewerLight').ViewerLight;
12
13
  declare type SceneManager = import('../manager/sceneManager').SceneManager;
14
+ declare type FuzzyMap<K, V> = import('../classes/fuzzyMap').FuzzyMap<K, V>;
13
15
  declare type Scene = import('@babylonjs/core/scene').Scene;
14
16
  declare type Vector3 = import('@babylonjs/core/Maths/math.vector').Vector3;
15
17
  declare type Color3 = import('@babylonjs/core/Maths/math.color').Color3;
@@ -35,6 +37,8 @@ declare type DirectionalLight = import('@babylonjs/core/Lights/directionalLight'
35
37
  declare type IInspectorOptions = import('@babylonjs/core/Debug').IInspectorOptions;
36
38
  declare type IExportOptions = import('@babylonjs/serializers/glTF/2.0').IExportOptions;
37
39
  declare type EventEmitter = import('eventemitter3');
40
+ declare type Undefinable<T> = T | undefined;
41
+ declare type Nullable<T> = T | null;
38
42
  declare type PathDefinitions = {
39
43
  include: string[];
40
44
  exclude?: string[];
@@ -322,7 +326,8 @@ declare type ParsedParameterBag = {
322
326
  [name: string]: any;
323
327
  };
324
328
  declare type DottedPathArgument = string | string[] | DottedPath;
325
- declare type ParameterObserver = (object: any, oldValue: ParameterValue, newValue: ParameterValue) => void;
329
+ declare type ParameterObserverResult = any;
330
+ declare type ParameterObserver = (payload: any, oldValue: Undefinable<ParameterValue>, newValue: ParameterValue) => ParameterObserverResult;
326
331
  declare type PlacementDefinitions = {
327
332
  [name: string]: PlacementDefinition;
328
333
  };
@@ -385,3 +390,35 @@ declare type SpecGenerationData = {
385
390
  name: string;
386
391
  url: string;
387
392
  };
393
+ declare type TagMapping = {
394
+ [tagName: string]: string;
395
+ };
396
+ declare type TagManagerSubject = {
397
+ tagName?: string;
398
+ nodeName?: string;
399
+ };
400
+ declare type TagManagerParameterObserver = (payload: TagManagerParameterObserverPayload) => ParameterObserverResult;
401
+ declare type TagManagerParameterBag = FuzzyMap<TagManagerSubject, ParameterBag>;
402
+ declare type TagManagerParameterObserverBag = Map<string, TagManagerParameterObserver>;
403
+ declare type TagManagerParameterObserverPayload = {
404
+ subject: TagManagerSubject;
405
+ nodes: TransformNode[];
406
+ newValue: ParameterValue;
407
+ oldValue: Undefinable<ParameterValue>;
408
+ };
409
+ declare type TagManagerParameterValue = {
410
+ tagName?: string;
411
+ nodeName?: string;
412
+ parameterName: string;
413
+ value: ParameterValue;
414
+ };
415
+ declare type NodeNamingStrategyPayload = {
416
+ variantInstance: VariantInstance;
417
+ variant: Variant;
418
+ variantParameterizable: VariantParameterizable;
419
+ };
420
+ declare type NodeNamingStrategyHandler = (node: TransformNode, payload: NodeNamingStrategyPayload) => string;
421
+ declare type NodeNamingStrategy = {
422
+ handler: NodeNamingStrategyHandler;
423
+ payload: NodeNamingStrategyPayload;
424
+ };
@@ -33,6 +33,7 @@ export declare const addMissingMaterialMetadata: (dataParsed: any, container: As
33
33
  * enabled.
34
34
  */
35
35
  export declare const addMissingMaterialObserver: (node: BjsNode) => void;
36
+ export declare const removeMissingMaterialObserver: (node: BjsNode) => void;
36
37
  /**
37
38
  * Look up the provided materials (see library import) and create and return one if found.
38
39
  *
@@ -12,7 +12,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
12
12
  return (mod && mod.__esModule) ? mod : { "default": mod };
13
13
  };
14
14
  Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.createMaterialFromCbnAssets = exports.addMissingMaterialObserver = exports.addMissingMaterialMetadata = exports.getMaterialPostLoadObserver = exports.getCustomCbnBabylonLoaderPlugin = exports.missingMaterialMetadataName = void 0;
15
+ exports.createMaterialFromCbnAssets = exports.removeMissingMaterialObserver = exports.addMissingMaterialObserver = exports.addMissingMaterialMetadata = exports.getMaterialPostLoadObserver = exports.getCustomCbnBabylonLoaderPlugin = exports.missingMaterialMetadataName = void 0;
16
+ const event_1 = require("../classes/event");
16
17
  const babylonHelper_1 = require("./babylonHelper");
17
18
  const resourceHelper_1 = require("./resourceHelper");
18
19
  const material_1 = require("@babylonjs/core/Materials/material");
@@ -70,7 +71,7 @@ const getMaterialPostLoadObserver = function (concerningMesh) {
70
71
  const missingMatId = concerningMesh.metadata[exports.missingMaterialMetadataName];
71
72
  // get material and apply it on the concerning mesh after all textures have been loaded
72
73
  const material = (0, babylonHelper_1.getOrCreateMaterial)(concerningMesh.getScene(), missingMatId);
73
- (0, babylonHelper_1.applyMaterialAfterTexturesLoaded)(material, concerningMesh);
74
+ (0, babylonHelper_1.applyMaterial)(material, concerningMesh).then(() => event_1.emitter.emit(event_1.Event.MESH_MATERIAL_APPLIED, concerningMesh, material));
74
75
  // since the material is there now, we do not need the related metadata tag anymore
75
76
  delete concerningMesh.metadata[exports.missingMaterialMetadataName];
76
77
  // remove all "enable" observers that were assigned to the concerning mesh
@@ -136,6 +137,23 @@ const addMissingMaterialObserver = function (node) {
136
137
  }
137
138
  };
138
139
  exports.addMissingMaterialObserver = addMissingMaterialObserver;
140
+ const removeMissingMaterialObserver = function (node) {
141
+ var _a;
142
+ // set the concerning node, i.e. the node the observer should check for missing material.
143
+ // for instanced meshes, we want the sourcemesh here.
144
+ const concerningNode = node instanceof instancedMesh_1.InstancedMesh ? node.sourceMesh : node;
145
+ let currNode = node;
146
+ while (currNode) {
147
+ (_a = enableObserverMap[concerningNode.id]) === null || _a === void 0 ? void 0 : _a.forEach(entry => {
148
+ if (entry.currNodeId === (currNode === null || currNode === void 0 ? void 0 : currNode.id)) {
149
+ currNode.onEnabledStateChangedObservable.remove(entry.observer);
150
+ }
151
+ });
152
+ currNode = currNode.parent;
153
+ }
154
+ delete enableObserverMap[concerningNode.id];
155
+ };
156
+ exports.removeMissingMaterialObserver = removeMissingMaterialObserver;
139
157
  /**
140
158
  * Look up the provided materials (see library import) and create and return one if found.
141
159
  *
@@ -1 +1 @@
1
- {"version":3,"file":"sceneLoaderHelper.js","sourceRoot":"","sources":["../../../../src/api/util/sceneLoaderHelper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;AAAA,mDAA4G;AAC5G,qDAAyC;AAEzC,iEAA8D;AAC9D,wEAAqE;AAOrE,wDAAgC;AAEhC,0DAA0D;AAC1D,MAAM,iBAAiB,GAEnB,EAAE,CAAC;AAEM,QAAA,2BAA2B,GAAG,iBAAiB,CAAC;AAE7D;;;;;;GAMG;AACI,MAAM,+BAA+B,GAAG,UAAU,oBAAwC;IAC/F,MAAM,YAAY,GAAuB;QACvC,IAAI,EAAE,wBAAwB;QAC9B,UAAU,EAAE,UAAU;QACtB,UAAU,EAAE,oBAAoB,CAAC,UAAU;QAC3C,IAAI,EAAE,oBAAoB,CAAC,IAAI;QAC/B,kBAAkB,EAAE,UAAU,KAAK,EAAE,IAAI,EAAE,OAAO,EAAE,OAAO;YACzD,mCAAmC;YACnC,MAAM,UAAU,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;YACpC,mDAAmD;YACnD,MAAM,iBAAiB,GAAG,oBAAoB,CAAC,kBAAkB,CAAC,KAAK,EAAE,IAAI,EAAE,OAAO,CAAC,CAAC;YACxF,mCAAmC;YACnC,IAAA,kCAA0B,EAAC,UAAU,EAAE,iBAAiB,CAAC,CAAC;YAC1D,+BAA+B;YAC/B,OAAO,iBAAiB,CAAC;QAC3B,CAAC;KACF,CAAC;IACF,OAAO,YAAY,CAAC;AACtB,CAAC,CAAC;AAlBW,QAAA,+BAA+B,mCAkB1C;AAEF;;;;;;GAMG;AACI,MAAM,2BAA2B,GAAG,UAAU,cAAoB;IACvE,OAAO,GAAS,EAAE;;QAChB,MAAM,KAAK,GAAG,cAAc,CAAC,QAAQ,EAAE,CAAC;QAExC,sGAAsG;QACtG,sEAAsE;QACtE,MAAM,IAAA,sBAAK,EAAC,CAAC,CAAC,CAAC;QAEf,MAAM,cAAc,GAAG,cAAc,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC;QACtD,MAAM,eAAe,GAAG,IAAA,aAAG,EAAC,cAAc,CAAC,QAAQ,EAAE,mCAA2B,CAAC,CAAC;QAClF,IAAI,CAAC,cAAc,IAAI,CAAC,eAAe;YAAE,OAAO;QAChD,6BAA6B;QAC7B,MAAM,YAAY,GAAG,cAAc,CAAC,QAAQ,CAAC,mCAA2B,CAAC,CAAC;QAC1E,uFAAuF;QACvF,MAAM,QAAQ,GAAG,IAAA,mCAAmB,EAAC,cAAc,CAAC,QAAQ,EAAE,EAAE,YAAY,CAAC,CAAC;QAC9E,IAAA,gDAAgC,EAAC,QAAQ,EAAE,cAAc,CAAC,CAAC;QAC3D,mFAAmF;QACnF,OAAO,cAAc,CAAC,QAAQ,CAAC,mCAA2B,CAAC,CAAC;QAE5D,0EAA0E;QAC1E,0EAA0E;QAC1E,MAAA,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,0CAAE,OAAO,CAAC,KAAK,CAAC,EAAE;YACpD,MAAM,QAAQ,GAAG,KAAK,CAAC,WAAW,CAAC,KAAK,CAAC,UAAU,CAAC,CAAC;YACrD,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,+BAA+B,CAAC,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QACnE,CAAC,CAAC,CAAC;QACH,0CAA0C;QAC1C,OAAO,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;IAC9C,CAAC,CAAA,CAAC;AACJ,CAAC,CAAC;AA5BW,QAAA,2BAA2B,+BA4BtC;AAEF;;;;;GAKG;AACI,MAAM,0BAA0B,GAAG,UAAU,UAAe,EAAE,SAAyB;IAC5F,SAAS,CAAC,MAAM,CAAC,OAAO,CAAC,gBAAgB,CAAC,EAAE;;QAC1C,KAAK,MAAM,gBAAgB,IAAI,UAAU,CAAC,MAAM,EAAE;YAChD,IAAI,gBAAgB,CAAC,IAAI,KAAK,gBAAgB,CAAC,IAAI;gBAAE,SAAS;YAC9D,2EAA2E;YAC3E,MAAM,sBAAsB,GAAG,MAAA,gBAAgB,CAAC,QAAQ,0CAAE,EAAE,CAAC;YAC7D,MAAM,sBAAsB,GAAG,gBAAgB,CAAC,UAAU,CAAC;YAC3D,IAAI,CAAC,sBAAsB,IAAI,sBAAsB,KAAK,sBAAsB;gBAAE,SAAS;YAC3F,4EAA4E;YAC5E,MAAA,MAAM,CAAC,GAAG,0CAAE,MAAM,CAAC,oBAAoB,CAAC,sBAAsB,CAAC,CAAC;YAChE,IAAA,kCAAkB,EAAC,gBAAgB,EAAE,EAAE,CAAC,mCAA2B,CAAC,EAAE,sBAAsB,EAAE,EAAE,KAAK,CAAC,CAAC;YACvG,MAAM;SACP;IACH,CAAC,CAAC,CAAC;AACL,CAAC,CAAC;AAdW,QAAA,0BAA0B,8BAcrC;AAEF;;;;GAIG;AACI,MAAM,0BAA0B,GAAG,UAAU,IAAa;IAC/D,yFAAyF;IACzF,qDAAqD;IACrD,MAAM,cAAc,GAAG,IAAI,YAAY,6BAAa,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,CAAE,IAAa,CAAC;IAExF,mEAAmE;IACnE,IAAI,CAAC,IAAA,aAAG,EAAC,cAAc,CAAC,QAAQ,EAAE,mCAA2B,CAAC;QAAE,OAAO;IAEvE,qGAAqG;IACrG,IAAI,QAAQ,GAAsB,IAAI,CAAC;IACvC,OAAO,QAAQ,EAAE;QACf,MAAM,QAAQ,GAAG,IAAA,mCAA2B,EAAC,cAAc,CAAC,CAAC;QAC7D,MAAM,QAAQ,GAAG,QAAQ,CAAC,+BAA+B,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAExE,mFAAmF;QACnF,kEAAkE;QAClE,IAAI,CAAC,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,EAAE;YACzC,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,GAAG,EAAE,CAAC;SAC3C;QACD,iBAAiB,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,EAAE,UAAU,EAAE,QAAQ,CAAC,EAAE,EAAE,QAAQ,EAAE,CAAC,CAAC;QAEjF,QAAQ,GAAG,QAAQ,CAAC,MAAM,CAAC;KAC5B;AACH,CAAC,CAAC;AAvBW,QAAA,0BAA0B,8BAuBrC;AAEF;;;;;;GAMG;AACI,MAAM,2BAA2B,GAAG,UAAU,UAAkB,EAAE,KAAY;;IACnF,MAAM,kBAAkB,GAAG,MAAA,MAAM,CAAC,GAAG,0CAAE,MAAM,CAAC,WAAW,CAAC,UAAU,CAAC,CAAC;IACtE,0GAA0G;IAC1G,kHAAkH;IAClH,sCAAsC;IACtC,MAAM,QAAQ,GAAG,kBAAkB,IAAI,mBAAQ,CAAC,KAAK,CAAC,kBAAkB,EAAE,KAAK,EAAE,EAAE,CAAC,CAAC;IACrF,OAAO,QAAQ,IAAI,IAAI,CAAC;AAC1B,CAAC,CAAC;AAPW,QAAA,2BAA2B,+BAOtC"}
1
+ {"version":3,"file":"sceneLoaderHelper.js","sourceRoot":"","sources":["../../../../src/api/util/sceneLoaderHelper.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,3 @@
1
1
  {
2
- "version": "6.4.1-beta1"
2
+ "version": "7.0.0-beta1"
3
3
  }