@combeenation/3d-viewer 4.0.0-alpha7 → 4.0.0-beta2

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 (57) hide show
  1. package/README.md +1 -0
  2. package/dist/lib-cjs/api/classes/element.d.ts +12 -16
  3. package/dist/lib-cjs/api/classes/element.js +125 -180
  4. package/dist/lib-cjs/api/classes/element.js.map +1 -1
  5. package/dist/lib-cjs/api/classes/event.d.ts +1 -15
  6. package/dist/lib-cjs/api/classes/event.js +1 -15
  7. package/dist/lib-cjs/api/classes/event.js.map +1 -1
  8. package/dist/lib-cjs/api/classes/parameter.d.ts +7 -101
  9. package/dist/lib-cjs/api/classes/parameter.js +21 -141
  10. package/dist/lib-cjs/api/classes/parameter.js.map +1 -1
  11. package/dist/lib-cjs/api/classes/parameterObservable.js +36 -11
  12. package/dist/lib-cjs/api/classes/parameterObservable.js.map +1 -1
  13. package/dist/lib-cjs/api/classes/variant.d.ts +14 -48
  14. package/dist/lib-cjs/api/classes/variant.js +56 -315
  15. package/dist/lib-cjs/api/classes/variant.js.map +1 -1
  16. package/dist/lib-cjs/api/classes/variantInstance.d.ts +1 -5
  17. package/dist/lib-cjs/api/classes/variantInstance.js +0 -10
  18. package/dist/lib-cjs/api/classes/variantInstance.js.map +1 -1
  19. package/dist/lib-cjs/api/classes/viewer.d.ts +1 -0
  20. package/dist/lib-cjs/api/classes/viewer.js.map +1 -1
  21. package/dist/lib-cjs/api/classes/viewerLight.js +27 -19
  22. package/dist/lib-cjs/api/classes/viewerLight.js.map +1 -1
  23. package/dist/lib-cjs/api/internal/sceneSetup.d.ts +1 -5
  24. package/dist/lib-cjs/api/internal/sceneSetup.js +71 -75
  25. package/dist/lib-cjs/api/internal/sceneSetup.js.map +1 -1
  26. package/dist/lib-cjs/api/util/babylonHelper.d.ts +4 -51
  27. package/dist/lib-cjs/api/util/babylonHelper.js +8 -141
  28. package/dist/lib-cjs/api/util/babylonHelper.js.map +1 -1
  29. package/dist/lib-cjs/api/util/globalTypes.d.ts +11 -53
  30. package/dist/lib-cjs/api/util/resourceHelper.d.ts +8 -4
  31. package/dist/lib-cjs/api/util/resourceHelper.js +25 -59
  32. package/dist/lib-cjs/api/util/resourceHelper.js.map +1 -1
  33. package/dist/lib-cjs/index.d.ts +22 -24
  34. package/dist/lib-cjs/index.js +38 -42
  35. package/dist/lib-cjs/index.js.map +1 -1
  36. package/package.json +1 -1
  37. package/src/api/classes/element.ts +112 -133
  38. package/src/api/classes/{parameterizable.ts → elementParameterizable.ts} +1 -12
  39. package/src/api/classes/event.ts +1 -16
  40. package/src/api/classes/parameter.ts +22 -153
  41. package/src/api/classes/parameterObservable.ts +31 -9
  42. package/src/api/classes/variant.ts +51 -184
  43. package/src/api/classes/variantInstance.ts +1 -8
  44. package/src/api/classes/viewer.ts +1 -0
  45. package/src/api/internal/sceneSetup.ts +109 -99
  46. package/src/api/util/babylonHelper.ts +9 -153
  47. package/src/api/util/globalTypes.ts +13 -64
  48. package/src/api/util/resourceHelper.ts +24 -26
  49. package/src/dev.ts +7 -5
  50. package/src/index.ts +23 -27
  51. package/src/pagesconfig.json +13 -8
  52. package/dist/lib-cjs/api/emitter.d.ts +0 -35
  53. package/dist/lib-cjs/api/emitter.js +0 -61
  54. package/dist/lib-cjs/api/emitter.js.map +0 -1
  55. package/src/api/classes/variantParameterizable.ts +0 -73
  56. package/src/api/classes/viewerLight.ts +0 -326
  57. package/src/api/util/stringHelper.ts +0 -26
package/README.md CHANGED
@@ -33,6 +33,7 @@
33
33
  options: {
34
34
  preserveDrawingBuffer: true,
35
35
  stencil: true,
36
+ xrCompatible: false, // required to fix WebXR issue in Safari 15 as mentioned in the BabylonJS Forum: https://forum.babylonjs.com/t/safari-15-0-breaks-every-babylonjs-application/23973
36
37
  },
37
38
  },
38
39
  scene: {
@@ -1,8 +1,8 @@
1
1
  import { HighlightLayer } from '@babylonjs/core/Layers/highlightLayer';
2
2
  import { Mesh } from '@babylonjs/core/Meshes/mesh';
3
3
  import { TransformNode } from '@babylonjs/core/Meshes/transformNode';
4
- import { VariantParameterizable } from './../classes/variantParameterizable';
5
4
  import { DottedPath } from './dottedPath';
5
+ import { ElementParameterizable } from './elementParameterizable';
6
6
  import { Variant } from './variant';
7
7
  /**
8
8
  * An {@link Element} of a {@link Variant}. Acts as a container for diverse definitions. Lives only in the context of a
@@ -11,20 +11,18 @@ import { Variant } from './variant';
11
11
  * When used in typings, refer to via its alias {@link VariantElement} to prevent name clashes with the web APIs
12
12
  * [Element](https://developer.mozilla.org/en-US/docs/Web/API/Element) class
13
13
  */
14
- export declare class Element extends VariantParameterizable {
14
+ export declare class Element extends ElementParameterizable {
15
15
  readonly variant: Variant;
16
16
  readonly name: string;
17
- readonly nodes: TransformNode[];
18
17
  protected readonly _dottedNodes: Map<DottedPath, TransformNode>;
18
+ protected readonly _parameterObservers: Map<string, ParameterObserver[]>;
19
19
  protected _highlightLayer?: HighlightLayer;
20
+ protected _paintableTextureId: number;
21
+ readonly nodes: TransformNode[];
20
22
  /**
21
23
  * Constructor.
22
24
  */
23
- protected constructor(variant: Variant, name: string);
24
- /**
25
- * Creates an {@link Element} with given name.
26
- */
27
- static create(variant: Variant, name: string): Promise<Element>;
25
+ constructor(variant: Variant, name: string);
28
26
  /**
29
27
  * The {@link DottedPath} in the built tree of {@link Element}s.
30
28
  * E.g. "_.top-1.sub-2.sub-sub-3.el-1"
@@ -89,19 +87,21 @@ export declare class Element extends VariantParameterizable {
89
87
  */
90
88
  getTraceableNode(name: string): TransformNode;
91
89
  /**
92
- * @see {@link VariantParameterizable.commitParameters}
90
+ * Places the given {@link ParameterBag} in the {@link Element}'s parameters, replaces all patterns in the
91
+ * {@link StructureJson} and broadcasts all {@link ParameterObserver}s.
92
+ *
93
93
  * @emit {@link Event.ELEMENT_PARAMETER_COMMITTED}
94
94
  */
95
- commitParameters(parameters?: ParameterBag): Promise<VariantParameterizable>;
95
+ commitParameters(parameters?: ParameterBag): Promise<Element>;
96
96
  /**
97
97
  * Adds an observer function for camera matrix changes.
98
98
  * The `observer` gets 2 parameters: the `AbstractMesh` and a `ClientRect` object.
99
99
  */
100
100
  addTraceableObserver(traceable: string, observer: CallableFunction, payload?: any): Element;
101
101
  /**
102
- * Draws a `ImageBitmap` or `OffscreenCanvas` onto a `paintable` defined via {@link PaintableDefinition}.
102
+ * Draws a image onto a `paintable` defined via {@link PaintableDefinition}.
103
103
  */
104
- drawPaintable(paintable: string, imageSource: CanvasImageSource): Element;
104
+ drawPaintable(paintable: string, imageSource: string): Promise<Element>;
105
105
  /**
106
106
  * Draws a SVG string onto a `paintable` defined via {@link PaintableDefinition}.
107
107
  */
@@ -123,8 +123,4 @@ export declare class Element extends VariantParameterizable {
123
123
  * @protected
124
124
  */
125
125
  protected assertPathDefinitions(): void;
126
- /**
127
- * Handles callback for given light parameter.
128
- */
129
- private castShadowValueHandler;
130
126
  }
@@ -5,17 +5,19 @@ var tslib_1 = require("tslib");
5
5
  var highlightLayer_1 = require("@babylonjs/core/Layers/highlightLayer");
6
6
  var material_1 = require("@babylonjs/core/Materials/material");
7
7
  var standardMaterial_1 = require("@babylonjs/core/Materials/standardMaterial");
8
- var dynamicTexture_1 = require("@babylonjs/core/Materials/Textures/dynamicTexture");
8
+ var math_axis_1 = require("@babylonjs/core/Maths/math.axis");
9
9
  var math_color_1 = require("@babylonjs/core/Maths/math.color");
10
10
  var abstractMesh_1 = require("@babylonjs/core/Meshes/abstractMesh");
11
11
  var instancedMesh_1 = require("@babylonjs/core/Meshes/instancedMesh");
12
12
  var mesh_1 = require("@babylonjs/core/Meshes/mesh");
13
13
  var transformNode_1 = require("@babylonjs/core/Meshes/transformNode");
14
+ var texture_1 = require("@babylonjs/core/Materials/Textures/texture");
14
15
  var lodash_es_1 = require("lodash-es");
15
16
  var babylonHelper_1 = require("../util/babylonHelper");
16
17
  var resourceHelper_1 = require("../util/resourceHelper");
17
- var variantParameterizable_1 = require("./../classes/variantParameterizable");
18
18
  var dottedPath_1 = require("./dottedPath");
19
+ var elementParameterizable_1 = require("./elementParameterizable");
20
+ var event_1 = require("./event");
19
21
  var parameter_1 = require("./parameter");
20
22
  /**
21
23
  * An {@link Element} of a {@link Variant}. Acts as a container for diverse definitions. Lives only in the context of a
@@ -31,11 +33,13 @@ var Element = /** @class */ (function (_super) {
31
33
  */
32
34
  function Element(variant, name) {
33
35
  var _a;
34
- var _this = _super.call(this, variant, name) || this;
36
+ var _this = _super.call(this) || this;
35
37
  _this.variant = variant;
36
38
  _this.name = name;
37
- _this.nodes = [];
38
39
  _this._dottedNodes = new Map();
40
+ _this._parameterObservers = new Map();
41
+ _this._paintableTextureId = 0;
42
+ _this.nodes = [];
39
43
  if ((_a = process.env.NODE_ENV) === null || _a === void 0 ? void 0 : _a.toLowerCase().includes('dev')) {
40
44
  _this.assertPathDefinitions();
41
45
  }
@@ -45,16 +49,6 @@ var Element = /** @class */ (function (_super) {
45
49
  _this.addParameterObservers();
46
50
  return _this;
47
51
  }
48
- /**
49
- * Creates an {@link Element} with given name.
50
- */
51
- Element.create = function (variant, name) {
52
- return tslib_1.__awaiter(this, void 0, void 0, function () {
53
- return tslib_1.__generator(this, function (_a) {
54
- return [2 /*return*/, new Element(variant, name)];
55
- });
56
- });
57
- };
58
52
  Object.defineProperty(Element.prototype, "dottedPath", {
59
53
  /**
60
54
  * The {@link DottedPath} in the built tree of {@link Element}s.
@@ -163,9 +157,10 @@ var Element = /** @class */ (function (_super) {
163
157
  * Gets a node by its {@link DottedPath}.
164
158
  */
165
159
  Element.prototype.getNode = function (dottedPath) {
166
- // TODO: fix, currently broken
167
160
  var _dottedPath = dottedPath_1.DottedPath.create(dottedPath);
168
- var node = this._dottedNodes.get(_dottedPath);
161
+ var keys = Array.from(this._dottedNodes.keys()).map(function (dp) { return dp.path; });
162
+ var values = Array.from(this._dottedNodes.values());
163
+ var node = values[keys.indexOf(_dottedPath.path)];
169
164
  if (!node) {
170
165
  throw new Error("Node with path \"" + _dottedPath.path + "\" does not exist for element \"" + this.id + "\".");
171
166
  }
@@ -221,13 +216,52 @@ var Element = /** @class */ (function (_super) {
221
216
  return this.getNode(this.getTraceableDefinition(name).path);
222
217
  };
223
218
  /**
224
- * @see {@link VariantParameterizable.commitParameters}
219
+ * Places the given {@link ParameterBag} in the {@link Element}'s parameters, replaces all patterns in the
220
+ * {@link StructureJson} and broadcasts all {@link ParameterObserver}s.
221
+ *
225
222
  * @emit {@link Event.ELEMENT_PARAMETER_COMMITTED}
226
223
  */
227
224
  Element.prototype.commitParameters = function (parameters) {
228
225
  return tslib_1.__awaiter(this, void 0, void 0, function () {
226
+ var oldParameters, observerPromises, _loop_1, this_1, parameter;
227
+ var _this = this;
229
228
  return tslib_1.__generator(this, function (_a) {
230
- return [2 /*return*/, _super.prototype.commitParameters.call(this, parameters)];
229
+ switch (_a.label) {
230
+ case 0:
231
+ if (!parameters) {
232
+ parameters = {};
233
+ }
234
+ oldParameters = lodash_es_1.cloneDeep(this.parameters);
235
+ lodash_es_1.merge(this.parameters, parameters);
236
+ observerPromises = [];
237
+ _loop_1 = function (parameter) {
238
+ var oldParameterValue = oldParameters[parameter];
239
+ var newParameterValue = this_1.parameters[parameter];
240
+ this_1.variant.assertParameter(this_1.variant.inheritedParameterDeclaration, parameter, newParameterValue);
241
+ if (oldParameterValue === newParameterValue) {
242
+ return "continue";
243
+ }
244
+ // parameter changed
245
+ var parameterObservers = resourceHelper_1.mergeMaps(this_1._parameterObservers, this_1.parameterObservers);
246
+ if (parameterObservers.has(parameter)) {
247
+ var observers = parameterObservers.get(parameter);
248
+ observerPromises = lodash_es_1.concat(observerPromises, observers.map(function (observer) {
249
+ var observerResult = observer(_this, oldParameterValue, newParameterValue);
250
+ return Promise.resolve(observerResult).then(function () {
251
+ _this.broadcastEvent(event_1.Event.ELEMENT_PARAMETER_COMMITTED, _this, parameter, oldParameterValue, newParameterValue);
252
+ });
253
+ }));
254
+ }
255
+ };
256
+ this_1 = this;
257
+ for (parameter in this.parameters) {
258
+ _loop_1(parameter);
259
+ }
260
+ return [4 /*yield*/, Promise.all(observerPromises)];
261
+ case 1:
262
+ _a.sent();
263
+ return [2 /*return*/, this];
264
+ }
231
265
  });
232
266
  });
233
267
  };
@@ -258,58 +292,59 @@ var Element = /** @class */ (function (_super) {
258
292
  return this;
259
293
  };
260
294
  /**
261
- * Draws a `ImageBitmap` or `OffscreenCanvas` onto a `paintable` defined via {@link PaintableDefinition}.
295
+ * Draws a image onto a `paintable` defined via {@link PaintableDefinition}.
262
296
  */
263
297
  Element.prototype.drawPaintable = function (paintable, imageSource) {
264
- var paintableDefinition = this.getPaintableDefinition(paintable);
265
- var node = this.getPaintableNode(paintable);
266
- if (!(node instanceof abstractMesh_1.AbstractMesh)) {
267
- throw new Error("The path must be an instance of \"AbstractMesh\" for paintable \"" + paintable + "\" " +
268
- ("in element \"" + this.id + "\"."));
269
- }
270
- if (node.material && !lodash_es_1.get(node.metadata, 'dirty.material')) {
271
- babylonHelper_1.cloneTransformNodeMaterial(node);
272
- }
273
- if (!node.material) {
274
- node.material = new standardMaterial_1.StandardMaterial(this.id + "." + paintable + ".material", this.variant.viewer.scene);
275
- }
276
- node.material.transparencyMode = material_1.Material.MATERIAL_ALPHATESTANDBLEND;
277
- if (!lodash_es_1.get(node.metadata, 'dirty.material.texture')) {
278
- // inject initial value and mark as dirty
279
- babylonHelper_1.injectNodeMetadata(node, { dirty: { material: { texture: true } } });
280
- }
281
- var widthAndHeight = {
282
- width: imageSource.width,
283
- height: imageSource.height
284
- };
285
- if (lodash_es_1.isNumber(paintableDefinition.textureOptions)) {
286
- widthAndHeight.width = paintableDefinition.textureOptions;
287
- widthAndHeight.height = paintableDefinition.textureOptions;
288
- }
289
- else if (lodash_es_1.isPlainObject(paintableDefinition.textureOptions)) {
290
- widthAndHeight.width = paintableDefinition.textureOptions.width;
291
- widthAndHeight.height = paintableDefinition.textureOptions.height;
292
- }
293
- var texture = new dynamicTexture_1.DynamicTexture(this.id + "." + paintable + ".texture", widthAndHeight, this.variant.viewer.scene, false);
294
- babylonHelper_1.setMaterialTexture(node, texture, false);
295
- var ctx = texture.getContext();
296
- // flip texture context horizontal with translate and scale
297
- ctx.drawImage(imageSource, 0, 0);
298
- texture.update(false);
299
- return this;
298
+ return tslib_1.__awaiter(this, void 0, void 0, function () {
299
+ var node;
300
+ var _this = this;
301
+ return tslib_1.__generator(this, function (_a) {
302
+ switch (_a.label) {
303
+ case 0:
304
+ node = this.getPaintableNode(paintable);
305
+ if (!(node instanceof abstractMesh_1.AbstractMesh)) {
306
+ throw new Error("The path must be an instance of \"AbstractMesh\" for paintable \"" + paintable + "\" " +
307
+ ("in element \"" + this.id + "\"."));
308
+ }
309
+ if (node.material && !lodash_es_1.get(node.metadata, 'dirty.material')) {
310
+ babylonHelper_1.cloneTransformNodeMaterial(node);
311
+ }
312
+ if (!node.material) {
313
+ node.material = new standardMaterial_1.StandardMaterial(this.id + "." + paintable + ".material", this.variant.viewer.scene);
314
+ }
315
+ node.material.transparencyMode = material_1.Material.MATERIAL_ALPHATESTANDBLEND;
316
+ if (!lodash_es_1.get(node.metadata, 'dirty.material.texture')) {
317
+ // inject initial value and mark as dirty
318
+ babylonHelper_1.injectTransformNodeMetadata(node, { dirty: { material: { texture: true } } }, false);
319
+ }
320
+ return [4 /*yield*/, new Promise(function (resolve) {
321
+ var paintableTexture = texture_1.Texture.CreateFromBase64String(imageSource, _this.id + "." + paintable + ".texture." + _this._paintableTextureId, _this.variant.viewer.scene, undefined, false, undefined, function () {
322
+ babylonHelper_1.setMaterialTexture(node, paintableTexture, false);
323
+ resolve();
324
+ });
325
+ // NOTE: Paintable texture need an individual id, otherwise the already existing texture on this id does not get overwritten
326
+ // Maybe think of a disposal logic here in the future
327
+ _this._paintableTextureId++;
328
+ })];
329
+ case 1:
330
+ _a.sent();
331
+ return [2 /*return*/, this];
332
+ }
333
+ });
334
+ });
300
335
  };
301
336
  /**
302
337
  * Draws a SVG string onto a `paintable` defined via {@link PaintableDefinition}.
303
338
  */
304
339
  Element.prototype.drawPaintableFromSvg = function (paintable, svgSource) {
305
340
  return tslib_1.__awaiter(this, void 0, void 0, function () {
306
- var source;
341
+ var imageUrl;
307
342
  return tslib_1.__generator(this, function (_a) {
308
343
  switch (_a.label) {
309
- case 0: return [4 /*yield*/, resourceHelper_1.createImageBitmapFromSvg(svgSource)];
344
+ case 0: return [4 /*yield*/, resourceHelper_1.createImageUrlFromSvg(svgSource)];
310
345
  case 1:
311
- source = _a.sent();
312
- return [2 /*return*/, this.drawPaintable(paintable, source)];
346
+ imageUrl = _a.sent();
347
+ return [2 /*return*/, this.drawPaintable(paintable, imageUrl)];
313
348
  }
314
349
  });
315
350
  });
@@ -319,14 +354,8 @@ var Element = /** @class */ (function (_super) {
319
354
  */
320
355
  Element.prototype.drawPaintableFromImgSrc = function (paintable, imgSource) {
321
356
  return tslib_1.__awaiter(this, void 0, void 0, function () {
322
- var source;
323
357
  return tslib_1.__generator(this, function (_a) {
324
- switch (_a.label) {
325
- case 0: return [4 /*yield*/, resourceHelper_1.createImageBitmapFromImgSrc(imgSource)];
326
- case 1:
327
- source = _a.sent();
328
- return [2 /*return*/, this.drawPaintable(paintable, source)];
329
- }
358
+ return [2 /*return*/, this.drawPaintable(paintable, imgSource)];
330
359
  });
331
360
  });
332
361
  };
@@ -347,13 +376,13 @@ var Element = /** @class */ (function (_super) {
347
376
  }
348
377
  if (visible === true) {
349
378
  element.nodes.forEach(function (node) {
350
- babylonHelper_1.injectNodeMetadata(node, { visibility: node.isEnabled() });
379
+ babylonHelper_1.injectTransformNodeMetadata(node, { visibility: node.isEnabled() });
351
380
  babylonHelper_1.activateTransformNode(node);
352
381
  });
353
382
  }
354
383
  else if (visible === false) {
355
384
  element.nodes.forEach(function (node) {
356
- babylonHelper_1.injectNodeMetadata(node, { visibility: node.isEnabled() });
385
+ babylonHelper_1.injectTransformNodeMetadata(node, { visibility: node.isEnabled() });
357
386
  babylonHelper_1.deactivateTransformNode(node);
358
387
  });
359
388
  }
@@ -407,7 +436,7 @@ var Element = /** @class */ (function (_super) {
407
436
  }
408
437
  if (!lodash_es_1.get(node.metadata, 'dirty.material.color')) {
409
438
  // inject initial value and mark as dirty
410
- babylonHelper_1.injectNodeMetadata(node, { dirty: { material: { color: oldValue } } });
439
+ babylonHelper_1.injectTransformNodeMetadata(node, { dirty: { material: { color: oldValue } } });
411
440
  }
412
441
  babylonHelper_1.setMaterialColor(node, color);
413
442
  });
@@ -433,7 +462,7 @@ var Element = /** @class */ (function (_super) {
433
462
  }
434
463
  if (!lodash_es_1.get(node.metadata, 'dirty.material.metallness')) {
435
464
  // inject initial value and mark as dirty
436
- babylonHelper_1.injectNodeMetadata(node, { dirty: { material: { metallness: oldValue } } });
465
+ babylonHelper_1.injectTransformNodeMetadata(node, { dirty: { material: { metallness: oldValue } } });
437
466
  }
438
467
  babylonHelper_1.setMaterialMetallness(node, metallness);
439
468
  });
@@ -459,7 +488,7 @@ var Element = /** @class */ (function (_super) {
459
488
  }
460
489
  if (!lodash_es_1.get(node.metadata, 'dirty.material.roughness')) {
461
490
  // inject initial value and mark as dirty
462
- babylonHelper_1.injectNodeMetadata(node, { dirty: { material: { roughness: oldValue } } });
491
+ babylonHelper_1.injectTransformNodeMetadata(node, { dirty: { material: { roughness: oldValue } } });
463
492
  }
464
493
  babylonHelper_1.setMaterialRoughness(node, roughness);
465
494
  });
@@ -558,7 +587,18 @@ var Element = /** @class */ (function (_super) {
558
587
  function (element, oldValue, newValue) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
559
588
  return tslib_1.__generator(this, function (_a) {
560
589
  // we have to deal just with root nodes here due to relative impacts in a node tree
561
- element.nodes.forEach(function (node) { return babylonHelper_1.moveTransformNode(node, parameter_1.Parameter.parseVector(newValue)); });
590
+ element.nodes.forEach(function (node) {
591
+ // remember absolute position and reset it before translating
592
+ if (!lodash_es_1.get(node.metadata, 'position')) {
593
+ node.metadata.position = node.absolutePosition.clone();
594
+ }
595
+ node.setAbsolutePosition(node.metadata.position);
596
+ // move
597
+ var distance = parameter_1.Parameter.parseVector(newValue);
598
+ node.translate(math_axis_1.Axis.X, distance.x, math_axis_1.Space.WORLD);
599
+ node.translate(math_axis_1.Axis.Y, distance.y, math_axis_1.Space.WORLD);
600
+ node.translate(math_axis_1.Axis.Z, distance.z, math_axis_1.Space.WORLD);
601
+ });
562
602
  return [2 /*return*/];
563
603
  });
564
604
  }); }
@@ -567,73 +607,18 @@ var Element = /** @class */ (function (_super) {
567
607
  function (element, oldValue, newValue) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
568
608
  return tslib_1.__generator(this, function (_a) {
569
609
  // we have to deal just with root nodes here due to relative impacts in a node tree
570
- element.nodes.forEach(function (node) { return babylonHelper_1.rotateTransformNode(node, parameter_1.Parameter.parseRotation(newValue)); });
571
- return [2 /*return*/];
572
- });
573
- }); }
574
- ]);
575
- this._parameterObservers.set(parameter_1.Parameter.CAST_SHADOW, [
576
- function (element, oldValue, newValue) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
577
- var castShadow, lightCsl;
578
- return tslib_1.__generator(this, function (_a) {
579
- switch (_a.label) {
580
- case 0:
581
- try {
582
- castShadow = parameter_1.Parameter.parseBoolean(newValue);
583
- }
584
- catch (e) {
585
- return [2 /*return*/];
586
- }
587
- lightCsl = element.inheritedParameters[parameter_1.Parameter.CAST_SHADOW_FROM_LIGHTS];
588
- if (!lightCsl) {
589
- lightCsl = element.variant.inheritedViewerLights.map(function (l) { return l.name; }).join(',');
590
- }
591
- if (!(castShadow === true)) return [3 /*break*/, 2];
592
- return [4 /*yield*/, this.castShadowValueHandler(lightCsl, babylonHelper_1.addToShadowGenerator)];
593
- case 1:
594
- _a.sent();
595
- _a.label = 2;
596
- case 2:
597
- if (!(castShadow === false)) return [3 /*break*/, 4];
598
- return [4 /*yield*/, this.castShadowValueHandler(lightCsl, babylonHelper_1.removeFromShadowGenerator)];
599
- case 3:
600
- _a.sent();
601
- _a.label = 4;
602
- case 4: return [2 /*return*/];
603
- }
604
- });
605
- }); }
606
- ]);
607
- this._parameterObservers.set(parameter_1.Parameter.CAST_SHADOW_FROM_LIGHTS, [
608
- function (element, oldValue, newValue) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
609
- var lightCsl;
610
- return tslib_1.__generator(this, function (_a) {
611
- switch (_a.label) {
612
- case 0:
613
- lightCsl = element.variant.inheritedViewerLights.map(function (l) { return l.name; }).join(',');
614
- // cleanup all shadow generators
615
- return [4 /*yield*/, this.castShadowValueHandler(lightCsl, babylonHelper_1.removeFromShadowGenerator)];
616
- case 1:
617
- // cleanup all shadow generators
618
- _a.sent();
619
- if (!(element.castShadow === true)) return [3 /*break*/, 3];
620
- // if newValue is undefined or '' then set newValue to lightCsl (use all lights)
621
- if (!newValue) {
622
- newValue = lightCsl;
623
- }
624
- return [4 /*yield*/, this.castShadowValueHandler(newValue, babylonHelper_1.addToShadowGenerator)];
625
- case 2:
626
- _a.sent();
627
- _a.label = 3;
628
- case 3: return [2 /*return*/];
629
- }
630
- });
631
- }); }
632
- ]);
633
- this._parameterObservers.set(parameter_1.Parameter.RECEIVE_SHADOWS, [
634
- function (element, oldValue, newValue) { return tslib_1.__awaiter(_this, void 0, void 0, function () {
635
- return tslib_1.__generator(this, function (_a) {
636
- element.nodes.forEach(function (node) { return babylonHelper_1.setReceiveShadows(node, parameter_1.Parameter.parseBoolean(newValue)); });
610
+ element.nodes.forEach(function (node) {
611
+ // remember absolute rotation and reset it before translating
612
+ if (!lodash_es_1.get(node.metadata, 'rotation')) {
613
+ node.metadata.rotation = node.rotation.clone();
614
+ }
615
+ node.rotation = node.metadata.rotation;
616
+ // rotate
617
+ var rotation = parameter_1.Parameter.parseRotation(newValue);
618
+ node.rotate(math_axis_1.Axis.X, rotation.x, math_axis_1.Space.WORLD);
619
+ node.rotate(math_axis_1.Axis.Y, rotation.y, math_axis_1.Space.WORLD);
620
+ node.rotate(math_axis_1.Axis.Z, rotation.z, math_axis_1.Space.WORLD);
621
+ });
637
622
  return [2 /*return*/];
638
623
  });
639
624
  }); }
@@ -684,47 +669,7 @@ var Element = /** @class */ (function (_super) {
684
669
  }
685
670
  });
686
671
  };
687
- /**
688
- * Handles callback for given light parameter.
689
- */
690
- Element.prototype.castShadowValueHandler = function (lightCsl, mutator) {
691
- return tslib_1.__awaiter(this, void 0, void 0, function () {
692
- var lights, _i, _a, lightName, viewerLight, shadowGenerators;
693
- var _this = this;
694
- return tslib_1.__generator(this, function (_b) {
695
- switch (_b.label) {
696
- case 0:
697
- lights = [];
698
- _i = 0, _a = parameter_1.Parameter.parseCommaSeparatedList(lightCsl);
699
- _b.label = 1;
700
- case 1:
701
- if (!(_i < _a.length)) return [3 /*break*/, 4];
702
- lightName = _a[_i];
703
- return [4 /*yield*/, this.variant.getViewerLight(lightName)];
704
- case 2:
705
- viewerLight = _b.sent();
706
- if (viewerLight) {
707
- lights.push(viewerLight.light);
708
- }
709
- _b.label = 3;
710
- case 3:
711
- _i++;
712
- return [3 /*break*/, 1];
713
- case 4:
714
- shadowGenerators = lights
715
- .map(function (light) { return light === null || light === void 0 ? void 0 : light.getShadowGenerator(); })
716
- .filter(Boolean);
717
- shadowGenerators.forEach(function (generator) {
718
- _this.nodes.forEach(function (node) {
719
- mutator(generator, node);
720
- });
721
- });
722
- return [2 /*return*/];
723
- }
724
- });
725
- });
726
- };
727
672
  return Element;
728
- }(variantParameterizable_1.VariantParameterizable));
673
+ }(elementParameterizable_1.ElementParameterizable));
729
674
  exports.Element = Element;
730
675
  //# sourceMappingURL=element.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/api/classes/element.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"element.js","sourceRoot":"","sources":["../../../../src/api/classes/element.ts"],"names":[],"mappings":"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"}
@@ -245,26 +245,12 @@ export declare class Event {
245
245
  * * {@link Element}
246
246
  *
247
247
  * Payload:
248
- * * element: {@link Element}
248
+ * * variant: {@link Element}
249
249
  * * parameter: string
250
250
  * * oldValue: string
251
251
  * * newValue: string
252
252
  */
253
253
  static readonly ELEMENT_PARAMETER_COMMITTED = "elementParameterCommitted";
254
- /**
255
- * Fired after a parameter on an {@link ViewerLight} has been committed.
256
- *
257
- * Scopes:
258
- * * Global
259
- * * {@link ViewerLight}
260
- *
261
- * Payload:
262
- * * light: {@link ViewerLight}
263
- * * parameter: string
264
- * * oldValue: string
265
- * * newValue: string
266
- */
267
- static readonly VIEWER_LIGHT_PARAMETER_COMMITTED = "viewerLightParameterCommitted";
268
254
  /**
269
255
  * Fired after a parameter on an {@link SceneManager} has been committed.
270
256
  *