x_ite 8.7.4 → 8.7.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 (92) hide show
  1. package/.vscode/tasks.json +1 -1
  2. package/dist/assets/components/Annotation.js +13 -13
  3. package/dist/assets/components/Annotation.min.js +1 -1
  4. package/dist/assets/components/CADGeometry.js +13 -13
  5. package/dist/assets/components/CADGeometry.min.js +1 -1
  6. package/dist/assets/components/CubeMapTexturing.js +25 -25
  7. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  8. package/dist/assets/components/DIS.js +13 -13
  9. package/dist/assets/components/DIS.min.js +1 -1
  10. package/dist/assets/components/EventUtilities.js +9 -9
  11. package/dist/assets/components/EventUtilities.min.js +1 -1
  12. package/dist/assets/components/Geometry2D.js +19 -19
  13. package/dist/assets/components/Geometry2D.min.js +1 -1
  14. package/dist/assets/components/Geospatial.js +33 -33
  15. package/dist/assets/components/Geospatial.min.js +1 -1
  16. package/dist/assets/components/HAnim.js +18 -18
  17. package/dist/assets/components/HAnim.min.js +1 -1
  18. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  19. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  20. package/dist/assets/components/Layout.js +36 -31
  21. package/dist/assets/components/Layout.min.js +1 -1
  22. package/dist/assets/components/NURBS.js +24 -24
  23. package/dist/assets/components/NURBS.min.js +1 -1
  24. package/dist/assets/components/ParticleSystems.js +22 -22
  25. package/dist/assets/components/ParticleSystems.min.js +1 -1
  26. package/dist/assets/components/Picking.js +18 -18
  27. package/dist/assets/components/Picking.min.js +1 -1
  28. package/dist/assets/components/RigidBodyPhysics.js +18 -18
  29. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  30. package/dist/assets/components/Scripting.js +28 -28
  31. package/dist/assets/components/Scripting.min.js +1 -1
  32. package/dist/assets/components/Text.js +24 -24
  33. package/dist/assets/components/Text.min.js +1 -1
  34. package/dist/assets/components/TextureProjector.js +14 -14
  35. package/dist/assets/components/TextureProjector.min.js +1 -1
  36. package/dist/assets/components/Texturing3D.js +30 -30
  37. package/dist/assets/components/Texturing3D.min.js +1 -1
  38. package/dist/assets/components/VolumeRendering.js +19 -19
  39. package/dist/assets/components/VolumeRendering.min.js +1 -1
  40. package/dist/assets/components/X_ITE.js +9 -9
  41. package/dist/assets/components/X_ITE.min.js +1 -1
  42. package/dist/x_ite.css +1 -1
  43. package/dist/x_ite.js +903 -1163
  44. package/dist/x_ite.min.js +1 -1
  45. package/dist/x_ite.zip +0 -0
  46. package/docs/_config.yml +1 -1
  47. package/docs/_posts/reference/field-services-and-objects.md +26 -6
  48. package/package.json +1 -1
  49. package/src/standard/Math/Algorithms/eigen_decomposition.js +9 -9
  50. package/src/standard/Math/Geometry/Box2.js +20 -20
  51. package/src/standard/Math/Geometry/Box3.js +20 -20
  52. package/src/standard/Math/Numbers/Color3.js +10 -18
  53. package/src/standard/Math/Numbers/Color4.js +12 -23
  54. package/src/standard/Math/Numbers/Complex.js +59 -54
  55. package/src/standard/Math/Numbers/Matrix2.js +31 -45
  56. package/src/standard/Math/Numbers/Matrix3.js +59 -94
  57. package/src/standard/Math/Numbers/Matrix4.js +73 -114
  58. package/src/standard/Math/Numbers/Quaternion.js +49 -65
  59. package/src/standard/Math/Numbers/Rotation4.js +15 -13
  60. package/src/standard/Math/Numbers/Vector2.js +12 -14
  61. package/src/standard/Math/Numbers/Vector3.js +17 -22
  62. package/src/standard/Math/Numbers/Vector4.js +22 -30
  63. package/src/x_ite/Base/X3DInfoArray.js +9 -7
  64. package/src/x_ite/Browser/Core/X3DCoreContext.js +3 -3
  65. package/src/x_ite/Browser/Layout/ScreenText.js +9 -4
  66. package/src/x_ite/Browser/VERSION.js +1 -1
  67. package/src/x_ite/Browser/X3DBrowser.js +57 -64
  68. package/src/x_ite/Browser/X3DBrowserContext.js +8 -8
  69. package/src/x_ite/Components/Layering/X3DLayerNode.js +1 -1
  70. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +2 -3
  71. package/src/x_ite/Execution/X3DExecutionContext.js +52 -58
  72. package/src/x_ite/Execution/X3DExportedNode.js +13 -11
  73. package/src/x_ite/Execution/X3DImportedNode.js +25 -25
  74. package/src/x_ite/Execution/X3DScene.js +129 -53
  75. package/src/x_ite/Fields/SFColor.js +10 -15
  76. package/src/x_ite/Fields/SFColorRGBA.js +11 -18
  77. package/src/x_ite/Fields/SFImage.js +38 -33
  78. package/src/x_ite/Fields/SFMatrix3.js +1 -3
  79. package/src/x_ite/Fields/SFMatrix4.js +1 -5
  80. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +6 -5
  81. package/src/x_ite/Fields/SFRotation.js +14 -21
  82. package/src/x_ite/Fields/SFString.js +0 -1
  83. package/src/x_ite/Fields/SFVec2.js +8 -15
  84. package/src/x_ite/Fields/SFVec3.js +10 -17
  85. package/src/x_ite/Fields/SFVec4.js +12 -23
  86. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +15 -14
  87. package/src/x_ite/Parser/SVGParser.js +2 -2
  88. package/src/x_ite/Parser/X3DOptimizer.js +1 -1
  89. package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +26 -27
  90. package/src/x_ite/Prototype/X3DProtoDeclaration.js +16 -15
  91. package/src/x_ite/Routing/X3DRoute.js +26 -25
  92. package/src/x_ite/Execution/Scene.js +0 -145
package/dist/x_ite.js CHANGED
@@ -1,4 +1,4 @@
1
- /* X_ITE v8.7.4 */(function webpackUniversalModuleDefinition(root, factory) {
1
+ /* X_ITE v8.7.5 */(function webpackUniversalModuleDefinition(root, factory) {
2
2
  if(typeof exports === 'object' && typeof module === 'object')
3
3
  module.exports = factory();
4
4
  else if(typeof define === 'function' && define.amd)
@@ -11,11 +11,11 @@
11
11
  return /******/ (() => { // webpackBootstrap
12
12
  /******/ var __webpack_modules__ = ({
13
13
 
14
- /***/ 66:
14
+ /***/ 822:
15
15
  /***/ (function(module, exports, __webpack_require__) {
16
16
 
17
17
  "use strict";
18
- /* provided dependency */ var jQuery = __webpack_require__(917);
18
+ /* provided dependency */ var jQuery = __webpack_require__(994);
19
19
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;
20
20
 
21
21
  /**
@@ -387,10 +387,10 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_RESULT__;
387
387
 
388
388
  /***/ }),
389
389
 
390
- /***/ 936:
390
+ /***/ 53:
391
391
  /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
392
392
 
393
- /* provided dependency */ var jQuery = __webpack_require__(917);
393
+ /* provided dependency */ var jQuery = __webpack_require__(994);
394
394
  /**
395
395
  * @preserve jquery.fullscreen 1.1.5
396
396
  * https://github.com/code-lts/jquery-fullscreen-plugin
@@ -586,7 +586,7 @@ installFullScreenHandlers();
586
586
 
587
587
  /***/ }),
588
588
 
589
- /***/ 132:
589
+ /***/ 6:
590
590
  /***/ ((module, exports, __webpack_require__) => {
591
591
 
592
592
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -600,7 +600,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
600
600
  (function (factory) {
601
601
  if ( true ) {
602
602
  // AMD. Register as an anonymous module.
603
- !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(917)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
603
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(994)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
604
604
  __WEBPACK_AMD_DEFINE_RESULT__ = (typeof __WEBPACK_AMD_DEFINE_FACTORY__ === 'function' ?
605
605
  (__WEBPACK_AMD_DEFINE_FACTORY__.apply(exports, __WEBPACK_AMD_DEFINE_ARRAY__)) : __WEBPACK_AMD_DEFINE_FACTORY__),
606
606
  __WEBPACK_AMD_DEFINE_RESULT__ !== undefined && (module.exports = __WEBPACK_AMD_DEFINE_RESULT__));
@@ -811,7 +811,7 @@ var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_
811
811
 
812
812
  /***/ }),
813
813
 
814
- /***/ 917:
814
+ /***/ 994:
815
815
  /***/ (function(module, exports) {
816
816
 
817
817
  var __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*!
@@ -11523,7 +11523,7 @@ return jQuery;
11523
11523
 
11524
11524
  /***/ }),
11525
11525
 
11526
- /***/ 836:
11526
+ /***/ 870:
11527
11527
  /***/ ((module) => {
11528
11528
 
11529
11529
  /**
@@ -16302,7 +16302,7 @@ if (true) {
16302
16302
 
16303
16303
  /***/ }),
16304
16304
 
16305
- /***/ 480:
16305
+ /***/ 444:
16306
16306
  /***/ (function(__unused_webpack_module, exports) {
16307
16307
 
16308
16308
 
@@ -19547,7 +19547,7 @@ if (true) {
19547
19547
 
19548
19548
  /***/ }),
19549
19549
 
19550
- /***/ 168:
19550
+ /***/ 361:
19551
19551
  /***/ (function(module, exports) {
19552
19552
 
19553
19553
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*
@@ -22880,14 +22880,16 @@ X3DInfoArray .prototype = {
22880
22880
  for (const key of Reflect .ownKeys (X3DInfoArray .prototype))
22881
22881
  Object .defineProperty (X3DInfoArray .prototype, key, { enumerable: false });
22882
22882
 
22883
- Object .defineProperty (X3DInfoArray .prototype, "length",
22883
+ Object .defineProperties (X3DInfoArray .prototype,
22884
22884
  {
22885
- get: function () { return this [_array] .length; },
22886
- });
22887
-
22888
- Object .defineProperty (X3DInfoArray .prototype, Symbol .toStringTag,
22889
- {
22890
- get: function () { return this .getTypeName (); },
22885
+ length:
22886
+ {
22887
+ get: function () { return this [_array] .length; },
22888
+ },
22889
+ [Symbol .toStringTag]:
22890
+ {
22891
+ get: function () { return this .getTypeName (); },
22892
+ },
22891
22893
  });
22892
22894
 
22893
22895
  const X3DInfoArray_default_ = X3DInfoArray;
@@ -23654,7 +23656,6 @@ function Color3 (r, g, b)
23654
23656
  Color3 .prototype =
23655
23657
  {
23656
23658
  constructor: Color3,
23657
- length: 3,
23658
23659
  [Symbol .iterator]: function* ()
23659
23660
  {
23660
23661
  yield this [_r];
@@ -23770,35 +23771,28 @@ Color3 .prototype =
23770
23771
  const r = {
23771
23772
  get: function () { return this [_r]; },
23772
23773
  set: function (value) { this [_r] = clamp (value, 0, 1); },
23773
- enumerable: true,
23774
- configurable: false
23775
23774
  };
23776
23775
 
23777
23776
  const g = {
23778
23777
  get: function () { return this [_g]; },
23779
23778
  set: function (value) { this [_g] = clamp (value, 0, 1); },
23780
- enumerable: true,
23781
- configurable: false
23782
23779
  };
23783
23780
 
23784
23781
  const b = {
23785
23782
  get: function () { return this [_b]; },
23786
23783
  set: function (value) { this [_b] = clamp (value, 0, 1); },
23787
- enumerable: true,
23788
- configurable: false
23789
23784
  };
23790
23785
 
23791
- Object .defineProperty (Color3 .prototype, "r", r);
23792
- Object .defineProperty (Color3 .prototype, "g", g);
23793
- Object .defineProperty (Color3 .prototype, "b", b);
23794
-
23795
- r .enumerable = false;
23796
- g .enumerable = false;
23797
- b .enumerable = false;
23798
-
23799
- Object .defineProperty (Color3 .prototype, "0", r);
23800
- Object .defineProperty (Color3 .prototype, "1", g);
23801
- Object .defineProperty (Color3 .prototype, "2", b);
23786
+ Object .defineProperties (Color3 .prototype,
23787
+ {
23788
+ length: { value: 3 },
23789
+ 0: r,
23790
+ 1: g,
23791
+ 2: b,
23792
+ r: Object .assign ({ enumerable: true }, r),
23793
+ g: Object .assign ({ enumerable: true }, g),
23794
+ b: Object .assign ({ enumerable: true }, b),
23795
+ });
23802
23796
 
23803
23797
  Object .assign (Color3,
23804
23798
  {
@@ -23983,7 +23977,7 @@ SFColor .prototype = Object .assign (Object .create (Base_X3DField.prototype),
23983
23977
  destination .getValue () .getHSV (d),
23984
23978
  Numbers_Color3.lerp (s, d, t, r),
23985
23979
 
23986
- result .setHSV (r [0], r [1], r [2], r [3]);
23980
+ result .setHSV (r [0], r [1], r [2]);
23987
23981
 
23988
23982
  return result;
23989
23983
  };
@@ -24050,7 +24044,6 @@ const SFColor_r = {
24050
24044
  this .getValue () .r = +value;
24051
24045
  this .addEvent ();
24052
24046
  },
24053
- enumerable: true,
24054
24047
  };
24055
24048
 
24056
24049
  const SFColor_g = {
@@ -24063,7 +24056,6 @@ const SFColor_g = {
24063
24056
  this .getValue () .g = +value;
24064
24057
  this .addEvent ();
24065
24058
  },
24066
- enumerable: true,
24067
24059
  };
24068
24060
 
24069
24061
  const SFColor_b = {
@@ -24076,20 +24068,17 @@ const SFColor_b = {
24076
24068
  this .getValue () .b = +value;
24077
24069
  this .addEvent ();
24078
24070
  },
24079
- enumerable: true,
24080
24071
  };
24081
24072
 
24082
- Object .defineProperty (SFColor .prototype, "r", SFColor_r);
24083
- Object .defineProperty (SFColor .prototype, "g", SFColor_g);
24084
- Object .defineProperty (SFColor .prototype, "b", SFColor_b);
24085
-
24086
- SFColor_r .enumerable = false;
24087
- SFColor_g .enumerable = false;
24088
- SFColor_b .enumerable = false;
24089
-
24090
- Object .defineProperty (SFColor .prototype, "0", SFColor_r);
24091
- Object .defineProperty (SFColor .prototype, "1", SFColor_g);
24092
- Object .defineProperty (SFColor .prototype, "2", SFColor_b);
24073
+ Object .defineProperties (SFColor .prototype,
24074
+ {
24075
+ 0: SFColor_r,
24076
+ 1: SFColor_g,
24077
+ 2: SFColor_b,
24078
+ r: Object .assign ({ enumerable: true }, SFColor_r),
24079
+ g: Object .assign ({ enumerable: true }, SFColor_g),
24080
+ b: Object .assign ({ enumerable: true }, SFColor_b),
24081
+ });
24093
24082
 
24094
24083
  const SFColor_default_ = SFColor;
24095
24084
  ;
@@ -24166,7 +24155,6 @@ function Color4 (r, g, b, a)
24166
24155
  Color4 .prototype =
24167
24156
  {
24168
24157
  constructor: Color4,
24169
- length: 4,
24170
24158
  [Symbol .iterator]: function* ()
24171
24159
  {
24172
24160
  yield this [Color4_r];
@@ -24234,45 +24222,35 @@ Color4 .prototype =
24234
24222
  const Numbers_Color4_r = {
24235
24223
  get: function () { return this [Color4_r]; },
24236
24224
  set: function (value) { this [Color4_r] = Color4_clamp (value, 0, 1); },
24237
- enumerable: true,
24238
- configurable: false
24239
24225
  };
24240
24226
 
24241
24227
  const Numbers_Color4_g = {
24242
24228
  get: function () { return this [Color4_g]; },
24243
24229
  set: function (value) { this [Color4_g] = Color4_clamp (value, 0, 1); },
24244
- enumerable: true,
24245
- configurable: false
24246
24230
  };
24247
24231
 
24248
24232
  const Numbers_Color4_b = {
24249
24233
  get: function () { return this [Color4_b]; },
24250
24234
  set: function (value) { this [Color4_b] = Color4_clamp (value, 0, 1); },
24251
- enumerable: true,
24252
- configurable: false
24253
24235
  };
24254
24236
 
24255
24237
  const a = {
24256
24238
  get: function () { return this [_a]; },
24257
24239
  set: function (value) { this [_a] = Color4_clamp (value, 0, 1); },
24258
- enumerable: true,
24259
- configurable: false
24260
24240
  };
24261
24241
 
24262
- Object .defineProperty (Color4 .prototype, "r", Numbers_Color4_r);
24263
- Object .defineProperty (Color4 .prototype, "g", Numbers_Color4_g);
24264
- Object .defineProperty (Color4 .prototype, "b", Numbers_Color4_b);
24265
- Object .defineProperty (Color4 .prototype, "a", a);
24266
-
24267
- Numbers_Color4_r .enumerable = false;
24268
- Numbers_Color4_g .enumerable = false;
24269
- Numbers_Color4_b .enumerable = false;
24270
- a .enumerable = false;
24271
-
24272
- Object .defineProperty (Color4 .prototype, "0", Numbers_Color4_r);
24273
- Object .defineProperty (Color4 .prototype, "1", Numbers_Color4_g);
24274
- Object .defineProperty (Color4 .prototype, "2", Numbers_Color4_b);
24275
- Object .defineProperty (Color4 .prototype, "3", a);
24242
+ Object .defineProperties (Color4 .prototype,
24243
+ {
24244
+ length: { value: 4 },
24245
+ 0: Numbers_Color4_r,
24246
+ 1: Numbers_Color4_g,
24247
+ 2: Numbers_Color4_b,
24248
+ 3: a,
24249
+ r: Object .assign ({ enumerable: true }, Numbers_Color4_r),
24250
+ g: Object .assign ({ enumerable: true }, Numbers_Color4_g),
24251
+ b: Object .assign ({ enumerable: true }, Numbers_Color4_b),
24252
+ a: Object .assign ({ enumerable: true }, a),
24253
+ });
24276
24254
 
24277
24255
  Object .assign (Color4,
24278
24256
  {
@@ -24445,7 +24423,6 @@ const SFColorRGBA_r = {
24445
24423
  this .getValue () .r = +value;
24446
24424
  this .addEvent ();
24447
24425
  },
24448
- enumerable: true,
24449
24426
  };
24450
24427
 
24451
24428
  const SFColorRGBA_g = {
@@ -24458,7 +24435,6 @@ const SFColorRGBA_g = {
24458
24435
  this .getValue () .g = +value;
24459
24436
  this .addEvent ();
24460
24437
  },
24461
- enumerable: true,
24462
24438
  };
24463
24439
 
24464
24440
  const SFColorRGBA_b = {
@@ -24471,7 +24447,6 @@ const SFColorRGBA_b = {
24471
24447
  this .getValue () .b = +value;
24472
24448
  this .addEvent ();
24473
24449
  },
24474
- enumerable: true,
24475
24450
  };
24476
24451
 
24477
24452
  const SFColorRGBA_a = {
@@ -24484,23 +24459,19 @@ const SFColorRGBA_a = {
24484
24459
  this .getValue () .a = +value;
24485
24460
  this .addEvent ();
24486
24461
  },
24487
- enumerable: true,
24488
24462
  };
24489
24463
 
24490
- Object .defineProperty (SFColorRGBA .prototype, "r", SFColorRGBA_r);
24491
- Object .defineProperty (SFColorRGBA .prototype, "g", SFColorRGBA_g);
24492
- Object .defineProperty (SFColorRGBA .prototype, "b", SFColorRGBA_b);
24493
- Object .defineProperty (SFColorRGBA .prototype, "a", SFColorRGBA_a);
24494
-
24495
- SFColorRGBA_r .enumerable = false;
24496
- SFColorRGBA_g .enumerable = false;
24497
- SFColorRGBA_b .enumerable = false;
24498
- SFColorRGBA_a .enumerable = false;
24499
-
24500
- Object .defineProperty (SFColorRGBA .prototype, "0", SFColorRGBA_r);
24501
- Object .defineProperty (SFColorRGBA .prototype, "1", SFColorRGBA_g);
24502
- Object .defineProperty (SFColorRGBA .prototype, "2", SFColorRGBA_b);
24503
- Object .defineProperty (SFColorRGBA .prototype, "3", SFColorRGBA_a);
24464
+ Object .defineProperties (SFColorRGBA .prototype,
24465
+ {
24466
+ 0: SFColorRGBA_r,
24467
+ 1: SFColorRGBA_g,
24468
+ 2: SFColorRGBA_b,
24469
+ 3: SFColorRGBA_a,
24470
+ r: Object .assign ({ enumerable: true }, SFColorRGBA_r),
24471
+ g: Object .assign ({ enumerable: true }, SFColorRGBA_g),
24472
+ b: Object .assign ({ enumerable: true }, SFColorRGBA_b),
24473
+ a: Object .assign ({ enumerable: true }, SFColorRGBA_a),
24474
+ });
24504
24475
 
24505
24476
  const SFColorRGBA_default_ = SFColorRGBA;
24506
24477
  ;
@@ -24895,12 +24866,13 @@ x_ite_Namespace.set ("x_ite/Fields/SFInt32", SFInt32_default_);
24895
24866
 
24896
24867
 
24897
24868
 
24898
- function SFMatrixPrototypeTemplate (TypeName, Type, Matrix, SFVec, double)
24869
+ function SFMatrixPrototypeTemplate (Constructor, TypeName, Type, Matrix, SFVec, double)
24899
24870
  {
24900
24871
  const _formatter = double ? "DoubleFormat" : "FloatFormat";
24901
24872
 
24902
24873
  return Object .assign (Object .create (Base_X3DField.prototype),
24903
24874
  {
24875
+ constructor: Constructor,
24904
24876
  [Symbol .iterator]: function* ()
24905
24877
  {
24906
24878
  yield* this .getValue ();
@@ -24955,19 +24927,19 @@ function SFMatrixPrototypeTemplate (TypeName, Type, Matrix, SFVec, double)
24955
24927
  },
24956
24928
  transpose: function ()
24957
24929
  {
24958
- return new (this .constructor) (Matrix .transpose (this .getValue ()));
24930
+ return new (this .constructor) (this .getValue () .copy () .transpose ());
24959
24931
  },
24960
24932
  inverse: function ()
24961
24933
  {
24962
- return new (this .constructor) (Matrix .inverse (this .getValue ()));
24934
+ return new (this .constructor) (this .getValue () .copy () .inverse ());
24963
24935
  },
24964
24936
  multLeft: function (matrix)
24965
24937
  {
24966
- return new (this .constructor) (Matrix .multLeft (this .getValue (), matrix .getValue ()));
24938
+ return new (this .constructor) (this .getValue () .copy () .multLeft (matrix .getValue ()));
24967
24939
  },
24968
24940
  multRight: function (matrix)
24969
24941
  {
24970
- return new (this .constructor) (Matrix .multRight (this .getValue (), matrix .getValue ()));
24942
+ return new (this .constructor) (this .getValue () .copy () .multRight (matrix .getValue ()));
24971
24943
  },
24972
24944
  multVecMatrix: function (vector)
24973
24945
  {
@@ -25090,12 +25062,13 @@ x_ite_Namespace.set ("x_ite/Fields/SFMatrixPrototypeTemplate", SFMatrixPrototype
25090
25062
 
25091
25063
 
25092
25064
 
25093
- function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25065
+ function SFVecPrototypeTemplate (Constructor, TypeName, Type, ValueType, double)
25094
25066
  {
25095
25067
  const _formatter = double ? "DoubleFormat" : "FloatFormat";
25096
25068
 
25097
25069
  return Object .assign (Object .create (Base_X3DField.prototype),
25098
25070
  {
25071
+ constructor: Constructor,
25099
25072
  [Symbol .iterator]: function* ()
25100
25073
  {
25101
25074
  yield* this .getValue ();
@@ -25126,11 +25099,11 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25126
25099
  },
25127
25100
  abs: function ()
25128
25101
  {
25129
- return new (this .constructor) (ValueType .abs (this .getValue ()));
25102
+ return new (this .constructor) (this .getValue () .copy () .abs ());
25130
25103
  },
25131
25104
  add: function (vector)
25132
25105
  {
25133
- return new (this .constructor) (ValueType .add (this .getValue (), vector .getValue ()));
25106
+ return new (this .constructor) (this .getValue () .copy () .add (vector .getValue ()));
25134
25107
  },
25135
25108
  distance: function (vector)
25136
25109
  {
@@ -25138,11 +25111,11 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25138
25111
  },
25139
25112
  divide: function (value)
25140
25113
  {
25141
- return new (this .constructor) (ValueType .divide (this .getValue (), value));
25114
+ return new (this .constructor) (this .getValue () .copy () .divide (value));
25142
25115
  },
25143
25116
  divVec: function (vector)
25144
25117
  {
25145
- return new (this .constructor) (ValueType .divVec (this .getValue (), vector .getValue ()));
25118
+ return new (this .constructor) (this .getValue () .copy () .divVec (vector .getValue ()));
25146
25119
  },
25147
25120
  dot: function (vector)
25148
25121
  {
@@ -25150,7 +25123,7 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25150
25123
  },
25151
25124
  inverse: function ()
25152
25125
  {
25153
- return new (this .constructor) (ValueType .inverse (this .getValue ()));
25126
+ return new (this .constructor) (this .getValue () .copy () .inverse ());
25154
25127
  },
25155
25128
  length: function ()
25156
25129
  {
@@ -25158,35 +25131,35 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25158
25131
  },
25159
25132
  lerp: function (destination, t)
25160
25133
  {
25161
- return new (this .constructor) (ValueType .lerp (this .getValue (), destination, t));
25134
+ return new (this .constructor) (this .getValue () .copy () .lerp (destination, t));
25162
25135
  },
25163
25136
  max: function (vector)
25164
25137
  {
25165
- return new (this .constructor) (ValueType .max (this .getValue (), vector .getValue ()));
25138
+ return new (this .constructor) (this .getValue () .copy () .max (vector .getValue ()));
25166
25139
  },
25167
25140
  min: function (vector)
25168
25141
  {
25169
- return new (this .constructor) (ValueType .min (this .getValue (), vector .getValue ()));
25142
+ return new (this .constructor) (this .getValue () .copy () .min (vector .getValue ()));
25170
25143
  },
25171
25144
  multiply: function (value)
25172
25145
  {
25173
- return new (this .constructor) (ValueType .multiply (this .getValue (), value));
25146
+ return new (this .constructor) (this .getValue () .copy () .multiply (value));
25174
25147
  },
25175
25148
  multVec: function (vector)
25176
25149
  {
25177
- return new (this .constructor) (ValueType .multVec (this .getValue (), vector .getValue ()));
25150
+ return new (this .constructor) (this .getValue () .copy () .multVec (vector .getValue ()));
25178
25151
  },
25179
25152
  negate: function ()
25180
25153
  {
25181
- return new (this .constructor) (ValueType .negate (this .getValue ()));
25154
+ return new (this .constructor) (this .getValue () .copy () .negate ());
25182
25155
  },
25183
25156
  normalize: function (vector)
25184
25157
  {
25185
- return new (this .constructor) (ValueType .normalize (this .getValue ()));
25158
+ return new (this .constructor) (this .getValue () .copy () .normalize ());
25186
25159
  },
25187
25160
  subtract: function (vector)
25188
25161
  {
25189
- return new (this .constructor) (ValueType .subtract (this .getValue (), vector .getValue ()));
25162
+ return new (this .constructor) (this .getValue () .copy () .subtract (vector .getValue ()));
25190
25163
  },
25191
25164
  toStream: function (generator)
25192
25165
  {
@@ -25302,7 +25275,6 @@ function Vector2 (x, y)
25302
25275
  Vector2 .prototype =
25303
25276
  {
25304
25277
  constructor: Vector2,
25305
- length: 2,
25306
25278
  [Symbol .iterator]: function* ()
25307
25279
  {
25308
25280
  yield this .x;
@@ -25462,20 +25434,19 @@ Vector2 .prototype =
25462
25434
  }
25463
25435
  };
25464
25436
 
25465
- Object .defineProperty (Vector2 .prototype, "0",
25437
+ Object .defineProperties (Vector2 .prototype,
25466
25438
  {
25467
- get: function () { return this .x; },
25468
- set: function (value) { this .x = value; },
25469
- enumerable: false,
25470
- configurable: false
25471
- });
25472
-
25473
- Object .defineProperty (Vector2 .prototype, "1",
25474
- {
25475
- get: function () { return this .y; },
25476
- set: function (value) { this .y = value; },
25477
- enumerable: false,
25478
- configurable: false
25439
+ length: { value: 2 },
25440
+ 0:
25441
+ {
25442
+ get: function () { return this .x; },
25443
+ set: function (value) { this .x = value; },
25444
+ },
25445
+ 1:
25446
+ {
25447
+ get: function () { return this .y; },
25448
+ set: function (value) { this .y = value; },
25449
+ },
25479
25450
  });
25480
25451
 
25481
25452
  Object .assign (Vector2,
@@ -25627,11 +25598,7 @@ function SFVec2Template (TypeName, Type, double)
25627
25598
  throw new Error ("Invalid arguments.");
25628
25599
  }
25629
25600
 
25630
- SFVec2 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
25631
- Fields_SFVecPrototypeTemplate (TypeName, Type, Numbers_Vector2, double),
25632
- {
25633
- constructor: SFVec2,
25634
- });
25601
+ SFVec2 .prototype = Fields_SFVecPrototypeTemplate (SFVec2, TypeName, Type, Numbers_Vector2, double);
25635
25602
 
25636
25603
  for (const key of Reflect .ownKeys (SFVec2 .prototype))
25637
25604
  Object .defineProperty (SFVec2 .prototype, key, { enumerable: false });
@@ -25646,7 +25613,6 @@ function SFVec2Template (TypeName, Type, double)
25646
25613
  this .getValue () .x = +value;
25647
25614
  this .addEvent ();
25648
25615
  },
25649
- enumerable: true,
25650
25616
  };
25651
25617
 
25652
25618
  const y = {
@@ -25659,17 +25625,15 @@ function SFVec2Template (TypeName, Type, double)
25659
25625
  this .getValue () .y = +value;
25660
25626
  this .addEvent ();
25661
25627
  },
25662
- enumerable: true,
25663
25628
  };
25664
25629
 
25665
- Object .defineProperty (SFVec2 .prototype, "x", x);
25666
- Object .defineProperty (SFVec2 .prototype, "y", y);
25667
-
25668
- x .enumerable = false;
25669
- y .enumerable = false;
25670
-
25671
- Object .defineProperty (SFVec2 .prototype, "0", x);
25672
- Object .defineProperty (SFVec2 .prototype, "1", y);
25630
+ Object .defineProperties (SFVec2 .prototype,
25631
+ {
25632
+ 0: x,
25633
+ 1: y,
25634
+ x: Object .assign ({ enumerable: true }, x),
25635
+ y: Object .assign ({ enumerable: true }, y),
25636
+ });
25673
25637
 
25674
25638
  return SFVec2;
25675
25639
  }
@@ -25744,7 +25708,6 @@ function Vector3 (x, y, z)
25744
25708
  Vector3 .prototype =
25745
25709
  {
25746
25710
  constructor: Vector3,
25747
- length: 3,
25748
25711
  [Symbol .iterator]: function* ()
25749
25712
  {
25750
25713
  yield this .x;
@@ -25949,28 +25912,24 @@ Vector3 .prototype =
25949
25912
  }
25950
25913
  };
25951
25914
 
25952
- Object .defineProperty (Vector3 .prototype, "0",
25915
+ Object .defineProperties (Vector3 .prototype,
25953
25916
  {
25954
- get: function () { return this .x; },
25955
- set: function (value) { this .x = value; },
25956
- enumerable: false,
25957
- configurable: false
25958
- });
25959
-
25960
- Object .defineProperty (Vector3 .prototype, "1",
25961
- {
25962
- get: function () { return this .y; },
25963
- set: function (value) { this .y = value; },
25964
- enumerable: false,
25965
- configurable: false
25966
- });
25967
-
25968
- Object .defineProperty (Vector3 .prototype, "2",
25969
- {
25970
- get: function () { return this .z; },
25971
- set: function (value) { this .z = value; },
25972
- enumerable: false,
25973
- configurable: false
25917
+ length: { value: 3 },
25918
+ 0:
25919
+ {
25920
+ get: function () { return this .x; },
25921
+ set: function (value) { this .x = value; },
25922
+ },
25923
+ 1:
25924
+ {
25925
+ get: function () { return this .y; },
25926
+ set: function (value) { this .y = value; },
25927
+ },
25928
+ 2:
25929
+ {
25930
+ get: function () { return this .z; },
25931
+ set: function (value) { this .z = value; },
25932
+ },
25974
25933
  });
25975
25934
 
25976
25935
  Object .assign (Vector3,
@@ -26109,7 +26068,6 @@ x_ite_Namespace.set ("standard/Math/Numbers/Vector3", Vector3_default_);
26109
26068
 
26110
26069
 
26111
26070
 
26112
-
26113
26071
  function Matrix2 ()
26114
26072
  {
26115
26073
  if (arguments .length)
@@ -26126,13 +26084,9 @@ function Matrix2 ()
26126
26084
  Matrix2 .prototype =
26127
26085
  {
26128
26086
  constructor: Matrix2,
26129
- order: 2,
26130
- length: 4,
26131
26087
  [Symbol .iterator]: function* ()
26132
26088
  {
26133
- const length = this .length;
26134
-
26135
- for (let i = 0; i < length; ++ i)
26089
+ for (let i = 0; i < 4; ++ i)
26136
26090
  yield this [i];
26137
26091
  },
26138
26092
  copy: function ()
@@ -26298,49 +26252,40 @@ Matrix2 .prototype =
26298
26252
  },
26299
26253
  };
26300
26254
 
26301
- Object .defineProperty (Matrix2 .prototype, "x",
26255
+ Object .defineProperties (Matrix2 .prototype,
26302
26256
  {
26303
- get: (function ()
26257
+ order: { value: 2 },
26258
+ length: { value: 4 },
26259
+ x:
26304
26260
  {
26305
- const vector = new Numbers_Vector2 (0, 0);
26306
-
26307
- return function () { return vector .set (this [0], this [1]); };
26308
- })(),
26309
- enumerable: false,
26310
- configurable: false
26311
- });
26261
+ get: (function ()
26262
+ {
26263
+ const vector = new Numbers_Vector2 (0, 0);
26312
26264
 
26313
- Object .defineProperty (Matrix2 .prototype, "y",
26314
- {
26315
- get: (function ()
26265
+ return function () { return vector .set (this [0], this [1]); };
26266
+ })(),
26267
+ },
26268
+ y:
26316
26269
  {
26317
- const vector = new Numbers_Vector2 (0, 0);
26318
-
26319
- return function () { return vector .set (this [2], this [3]); };
26320
- })(),
26321
- enumerable: false,
26322
- configurable: false
26323
- });
26324
-
26325
- Object .defineProperty (Matrix2 .prototype, "xAxis",
26326
- {
26327
- get: function () { return this [0]; },
26328
- enumerable: false,
26329
- configurable: false
26330
- });
26331
-
26332
- Object .defineProperty (Matrix2 .prototype, "origin",
26333
- {
26334
- get: function () { return this [2]; },
26335
- enumerable: false,
26336
- configurable: false
26337
- });
26270
+ get: (function ()
26271
+ {
26272
+ const vector = new Numbers_Vector2 (0, 0);
26338
26273
 
26339
- Object .defineProperty (Matrix2 .prototype, "submatrix",
26340
- {
26341
- get: function () { return this [0]; },
26342
- enumerable: false,
26343
- configurable: false
26274
+ return function () { return vector .set (this [2], this [3]); };
26275
+ })(),
26276
+ },
26277
+ xAxis:
26278
+ {
26279
+ get: function () { return this [0]; },
26280
+ },
26281
+ origin:
26282
+ {
26283
+ get: function () { return this [2]; },
26284
+ },
26285
+ submatrix:
26286
+ {
26287
+ get: function () { return this [0]; },
26288
+ },
26344
26289
  });
26345
26290
 
26346
26291
  Object .assign (Matrix2,
@@ -26411,23 +26356,23 @@ function eigen_decomposition (matrix, result)
26411
26356
  {
26412
26357
  const
26413
26358
  ORDER = matrix .order,
26359
+ SIZE = matrix .length,
26414
26360
  values = result .values,
26415
26361
  vectors = result .vectors;
26416
26362
 
26417
26363
  let
26418
- sm, // smallest entry
26419
- theta, // angle for Jacobi rotation
26420
- c, s, t, // cosine, sine, tangent of theta
26421
- tau, // sine / (1 + cos)
26422
- h, g, // two scrap values
26423
- thresh, // threshold below which no rotation done
26424
- p, q, i, j,
26425
- SIZE = matrix .length;
26364
+ sm, // smallest entry
26365
+ theta, // angle for Jacobi rotation
26366
+ c, s, t, // cosine, sine, tangent of theta
26367
+ tau, // sine / (1 + cos)
26368
+ h, g, // two scrap values
26369
+ thresh, // threshold below which no rotation done
26370
+ p, q, i, j; // indices
26426
26371
 
26427
26372
  // initializations
26428
26373
  for (i = 0; i < ORDER; ++ i)
26429
26374
  {
26430
- eigen_decomposition_a [i] = eigen_decomposition_a [i] || new Array (ORDER);
26375
+ eigen_decomposition_a [i] = eigen_decomposition_a [i] ?? [ ];
26431
26376
  eigen_decomposition_b [i] = values [i] = matrix .get1 (i, i);
26432
26377
  z [i] = 0;
26433
26378
 
@@ -26617,13 +26562,9 @@ function Matrix3 ()
26617
26562
  Matrix3 .prototype =
26618
26563
  {
26619
26564
  constructor: Matrix3,
26620
- order: 3,
26621
- length: 9,
26622
26565
  [Symbol .iterator]: function* ()
26623
26566
  {
26624
- const length = this .length;
26625
-
26626
- for (let i = 0; i < length; ++ i)
26567
+ for (let i = 0; i < 9; ++ i)
26627
26568
  yield this [i];
26628
26569
  },
26629
26570
  copy: function ()
@@ -26656,7 +26597,7 @@ Matrix3 .prototype =
26656
26597
  },
26657
26598
  rotation: function ()
26658
26599
  {
26659
- return math .atan2 (this [1], this [0]);
26600
+ return Math .atan2 (this [1], this [0]);
26660
26601
  },
26661
26602
  set1: function (r, c, value)
26662
26603
  {
@@ -27129,93 +27070,78 @@ Matrix3 .prototype =
27129
27070
  },
27130
27071
  };
27131
27072
 
27132
- Object .defineProperty (Matrix3 .prototype, "x",
27073
+ Object .defineProperties (Matrix3 .prototype,
27133
27074
  {
27134
- get: (function ()
27075
+ order: { value: 3 },
27076
+ length: { value: 9 },
27077
+ x:
27135
27078
  {
27136
- const vector = new Numbers_Vector3 (0, 0, 0);
27137
-
27138
- return function () { return vector .set (this [0], this [1], this [2]); };
27139
- })(),
27140
- enumerable: false,
27141
- configurable: false
27142
- });
27079
+ get: (function ()
27080
+ {
27081
+ const vector = new Numbers_Vector3 (0, 0, 0);
27143
27082
 
27144
- Object .defineProperty (Matrix3 .prototype, "y",
27145
- {
27146
- get: (function ()
27083
+ return function () { return vector .set (this [0], this [1], this [2]); };
27084
+ })(),
27085
+ },
27086
+ y:
27147
27087
  {
27148
- const vector = new Numbers_Vector3 (0, 0, 0);
27149
-
27150
- return function () { return vector .set (this [3], this [4], this [5]); };
27151
- })(),
27152
- enumerable: false,
27153
- configurable: false
27154
- });
27088
+ get: (function ()
27089
+ {
27090
+ const vector = new Numbers_Vector3 (0, 0, 0);
27155
27091
 
27156
- Object .defineProperty (Matrix3 .prototype, "z",
27157
- {
27158
- get: (function ()
27092
+ return function () { return vector .set (this [3], this [4], this [5]); };
27093
+ })(),
27094
+ },
27095
+ z:
27159
27096
  {
27160
- const vector = new Numbers_Vector3 (0, 0, 0);
27161
-
27162
- return function () { return vector .set (this [6], this [7], this [8]); };
27163
- })(),
27164
- enumerable: false,
27165
- configurable: false
27166
- });
27097
+ get: (function ()
27098
+ {
27099
+ const vector = new Numbers_Vector3 (0, 0, 0);
27167
27100
 
27168
- Object .defineProperty (Matrix3 .prototype, "xAxis",
27169
- {
27170
- get: (function ()
27101
+ return function () { return vector .set (this [6], this [7], this [8]); };
27102
+ })(),
27103
+ },
27104
+ xAxis:
27171
27105
  {
27172
- const vector = new Numbers_Vector2 (0, 0);
27173
-
27174
- return function () { return vector .set (this [0], this [1]); };
27175
- })(),
27176
- enumerable: false,
27177
- configurable: false
27178
- });
27106
+ get: (function ()
27107
+ {
27108
+ const vector = new Numbers_Vector2 (0, 0);
27179
27109
 
27180
- Object .defineProperty (Matrix3 .prototype, "yAxis",
27181
- {
27182
- get: (function ()
27110
+ return function () { return vector .set (this [0], this [1]); };
27111
+ })(),
27112
+ },
27113
+ yAxis:
27183
27114
  {
27184
- const vector = new Numbers_Vector2 (0, 0);
27185
-
27186
- return function () { return vector .set (this [3], this [4]); };
27187
- })(),
27188
- enumerable: false,
27189
- configurable: false
27190
- });
27115
+ get: (function ()
27116
+ {
27117
+ const vector = new Numbers_Vector2 (0, 0);
27191
27118
 
27192
- Object .defineProperty (Matrix3 .prototype, "origin",
27193
- {
27194
- get: (function ()
27119
+ return function () { return vector .set (this [3], this [4]); };
27120
+ })(),
27121
+ },
27122
+ origin:
27195
27123
  {
27196
- const vector = new Numbers_Vector2 (0, 0);
27197
-
27198
- return function () { return vector .set (this [6], this [7]); };
27199
- })(),
27200
- enumerable: false,
27201
- configurable: false
27202
- });
27124
+ get: (function ()
27125
+ {
27126
+ const vector = new Numbers_Vector2 (0, 0);
27203
27127
 
27204
- Object .defineProperty (Matrix3 .prototype, "submatrix",
27205
- {
27206
- get: (function ()
27128
+ return function () { return vector .set (this [6], this [7]); };
27129
+ })(),
27130
+ },
27131
+ submatrix:
27207
27132
  {
27208
- const matrix = new Numbers_Matrix2 ();
27209
-
27210
- return function ()
27133
+ get: (function ()
27211
27134
  {
27212
- matrix [0] = this [0]; matrix [1] = this [1];
27213
- matrix [2] = this [3]; matrix [3] = this [4];
27214
- return matrix;
27215
- };
27216
- })(),
27217
- enumerable: false,
27218
- configurable: false
27135
+ const matrix = new Numbers_Matrix2 ();
27136
+
27137
+ return function ()
27138
+ {
27139
+ matrix [0] = this [0]; matrix [1] = this [1];
27140
+ matrix [2] = this [3]; matrix [3] = this [4];
27141
+ return matrix;
27142
+ };
27143
+ })(),
27144
+ },
27219
27145
  });
27220
27146
 
27221
27147
  Object .assign (Matrix3,
@@ -27237,22 +27163,6 @@ Object .assign (Matrix3,
27237
27163
  matrix [2], matrix [3], 0,
27238
27164
  0, 0, 1);
27239
27165
  },
27240
- transpose: function (matrix)
27241
- {
27242
- return matrix .copy () .transpose ();
27243
- },
27244
- inverse: function (matrix)
27245
- {
27246
- return matrix .copy () .inverse ();
27247
- },
27248
- multLeft: function (lhs, rhs)
27249
- {
27250
- return lhs .copy () .multLeft (rhs);
27251
- },
27252
- multRight: function (lhs, rhs)
27253
- {
27254
- return lhs .copy () .multRight (rhs);
27255
- },
27256
27166
  });
27257
27167
 
27258
27168
  const m = new Matrix3 ();
@@ -27350,10 +27260,8 @@ function SFMatrix3Template (TypeName, Type, SFVec2, double)
27350
27260
  throw new Error ("Invalid arguments.");
27351
27261
  }
27352
27262
 
27353
- SFMatrix3 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
27354
- Fields_SFMatrixPrototypeTemplate (TypeName, Type, Numbers_Matrix3, SFVec2, double),
27263
+ SFMatrix3 .prototype = Object .assign (Fields_SFMatrixPrototypeTemplate (SFMatrix3, TypeName, Type, Numbers_Matrix3, SFVec2, double),
27355
27264
  {
27356
- constructor: SFMatrix3,
27357
27265
  setTransform: function (translation, rotation, scale, scaleOrientation, center)
27358
27266
  {
27359
27267
  translation = translation ? translation .getValue () : null;
@@ -27474,10 +27382,8 @@ function SFVec3Template (TypeName, Type, double)
27474
27382
  throw new Error ("Invalid arguments.");
27475
27383
  }
27476
27384
 
27477
- SFVec3 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
27478
- Fields_SFVecPrototypeTemplate (TypeName, Type, Numbers_Vector3, double),
27385
+ SFVec3 .prototype = Object .assign (Fields_SFVecPrototypeTemplate (SFVec3, TypeName, Type, Numbers_Vector3, double),
27479
27386
  {
27480
- constructor: SFVec3,
27481
27387
  cross: function (vector)
27482
27388
  {
27483
27389
  return new (this .constructor) (Numbers_Vector3.cross (this .getValue (), vector .getValue ()));
@@ -27497,7 +27403,6 @@ function SFVec3Template (TypeName, Type, double)
27497
27403
  this .getValue () .x = +value;
27498
27404
  this .addEvent ();
27499
27405
  },
27500
- enumerable: true,
27501
27406
  };
27502
27407
 
27503
27408
  const y = {
@@ -27510,7 +27415,6 @@ function SFVec3Template (TypeName, Type, double)
27510
27415
  this .getValue () .y = +value;
27511
27416
  this .addEvent ();
27512
27417
  },
27513
- enumerable: true,
27514
27418
  };
27515
27419
 
27516
27420
  const z = {
@@ -27523,20 +27427,17 @@ function SFVec3Template (TypeName, Type, double)
27523
27427
  this .getValue () .z = +value;
27524
27428
  this .addEvent ();
27525
27429
  },
27526
- enumerable: true,
27527
27430
  };
27528
27431
 
27529
- Object .defineProperty (SFVec3 .prototype, "x", x);
27530
- Object .defineProperty (SFVec3 .prototype, "y", y);
27531
- Object .defineProperty (SFVec3 .prototype, "z", z);
27532
-
27533
- x .enumerable = false;
27534
- y .enumerable = false;
27535
- z .enumerable = false;
27536
-
27537
- Object .defineProperty (SFVec3 .prototype, "0", x);
27538
- Object .defineProperty (SFVec3 .prototype, "1", y);
27539
- Object .defineProperty (SFVec3 .prototype, "2", z);
27432
+ Object .defineProperties (SFVec3 .prototype,
27433
+ {
27434
+ 0: x,
27435
+ 1: y,
27436
+ 2: z,
27437
+ x: Object .assign ({ enumerable: true }, x),
27438
+ y: Object .assign ({ enumerable: true }, y),
27439
+ z: Object .assign ({ enumerable: true }, z),
27440
+ });
27540
27441
 
27541
27442
  return SFVec3;
27542
27443
  }
@@ -27610,7 +27511,6 @@ function Vector4 (x, y, z, w)
27610
27511
  Vector4 .prototype =
27611
27512
  {
27612
27513
  constructor: Vector4,
27613
- length: 4,
27614
27514
  [Symbol .iterator]: function* ()
27615
27515
  {
27616
27516
  yield this .x;
@@ -27825,36 +27725,29 @@ Vector4 .prototype =
27825
27725
  },
27826
27726
  };
27827
27727
 
27828
- Object .defineProperty (Vector4 .prototype, "0",
27829
- {
27830
- get: function () { return this .x; },
27831
- set: function (value) { this .x = value; },
27832
- enumerable: false,
27833
- configurable: false
27834
- });
27835
-
27836
- Object .defineProperty (Vector4 .prototype, "1",
27837
- {
27838
- get: function () { return this .y; },
27839
- set: function (value) { this .y = value; },
27840
- enumerable: false,
27841
- configurable: false
27842
- });
27843
-
27844
- Object .defineProperty (Vector4 .prototype, "2",
27845
- {
27846
- get: function () { return this .z; },
27847
- set: function (value) { this .z = value; },
27848
- enumerable: false,
27849
- configurable: false
27850
- });
27851
-
27852
- Object .defineProperty (Vector4 .prototype, "3",
27728
+ Object .defineProperties (Vector4 .prototype,
27853
27729
  {
27854
- get: function () { return this .w; },
27855
- set: function (value) { this .w = value; },
27856
- enumerable: false,
27857
- configurable: false
27730
+ length: { value: 4 },
27731
+ 0:
27732
+ {
27733
+ get: function () { return this .x; },
27734
+ set: function (value) { this .x = value; },
27735
+ },
27736
+ 1:
27737
+ {
27738
+ get: function () { return this .y; },
27739
+ set: function (value) { this .y = value; },
27740
+ },
27741
+ 2:
27742
+ {
27743
+ get: function () { return this .z; },
27744
+ set: function (value) { this .z = value; },
27745
+ },
27746
+ 3:
27747
+ {
27748
+ get: function () { return this .w; },
27749
+ set: function (value) { this .w = value; },
27750
+ },
27858
27751
  });
27859
27752
 
27860
27753
  Object .assign (Vector4,
@@ -27999,7 +27892,6 @@ function Quaternion (x, y, z, w)
27999
27892
  Quaternion .prototype =
28000
27893
  {
28001
27894
  constructor: Quaternion,
28002
- length: 4,
28003
27895
  [Symbol .iterator]: function* ()
28004
27896
  {
28005
27897
  yield this .x;
@@ -28034,24 +27926,22 @@ Quaternion .prototype =
28034
27926
  },
28035
27927
  setMatrix: function (matrix)
28036
27928
  {
28037
- let i;
28038
-
28039
27929
  // First, find largest diagonal in matrix:
28040
27930
  if (matrix [0] > matrix [4])
28041
27931
  {
28042
- i = matrix [0] > matrix [8] ? 0 : 2;
27932
+ var i = matrix [0] > matrix [8] ? 0 : 2;
28043
27933
  }
28044
27934
  else
28045
27935
  {
28046
- i = matrix [4] > matrix [8] ? 1 : 2;
27936
+ var i = matrix [4] > matrix [8] ? 1 : 2;
28047
27937
  }
28048
27938
 
28049
- const scalerow = matrix [0] + matrix [4] + matrix [8];
27939
+ const scaleRow = matrix [0] + matrix [4] + matrix [8];
28050
27940
 
28051
- if (scalerow > matrix [i * 3 + i])
27941
+ if (scaleRow > matrix [i * 3 + i])
28052
27942
  {
28053
27943
  // Compute w first:
28054
- this [3] = Math .sqrt (scalerow + 1) / 2;
27944
+ this [3] = Math .sqrt (scaleRow + 1) / 2;
28055
27945
 
28056
27946
  // And compute other values:
28057
27947
  const d = 4 * this [3];
@@ -28199,9 +28089,9 @@ Quaternion .prototype =
28199
28089
  const
28200
28090
  { x: qx, y: qy, z: qz, w: qw } = this,
28201
28091
  { x: vx, y: vy, z: vz } = vector,
28202
- a = qw * qw - qx * qx - qy * qy - qz * qz,
28203
- b = 2 * (vx * qx + vy * qy + vz * qz),
28204
- c = 2 * qw;
28092
+ a = qw * qw - qx * qx - qy * qy - qz * qz,
28093
+ b = 2 * (vx * qx + vy * qy + vz * qz),
28094
+ c = 2 * qw;
28205
28095
 
28206
28096
  vector .x = a * vx + b * qx + c * (qy * vz - qz * vy);
28207
28097
  vector .y = a * vy + b * qy + c * (qz * vx - qx * vz);
@@ -28214,9 +28104,9 @@ Quaternion .prototype =
28214
28104
  const
28215
28105
  { x: qx, y: qy, z: qz, w: qw } = this,
28216
28106
  { x: vx, y: vy, z: vz } = vector,
28217
- a = qw * qw - qx * qx - qy * qy - qz * qz,
28218
- b = 2 * (vx * qx + vy * qy + vz * qz),
28219
- c = 2 * qw;
28107
+ a = qw * qw - qx * qx - qy * qy - qz * qz,
28108
+ b = 2 * (vx * qx + vy * qy + vz * qz),
28109
+ c = 2 * qw;
28220
28110
 
28221
28111
  vector .x = a * vx + b * qx - c * (qy * vz - qz * vy);
28222
28112
  vector .y = a * vy + b * qy - c * (qz * vx - qx * vz);
@@ -28341,60 +28231,47 @@ Quaternion .prototype =
28341
28231
  },
28342
28232
  };
28343
28233
 
28344
- Object .defineProperty (Quaternion .prototype, "0",
28234
+ Object .defineProperties (Quaternion .prototype,
28345
28235
  {
28346
- get: function () { return this .x; },
28347
- set: function (value) { this .x = value; },
28348
- enumerable: false,
28349
- configurable: false
28350
- });
28351
-
28352
- Object .defineProperty (Quaternion .prototype, "1",
28353
- {
28354
- get: function () { return this .y; },
28355
- set: function (value) { this .y = value; },
28356
- enumerable: false,
28357
- configurable: false
28358
- });
28359
-
28360
- Object .defineProperty (Quaternion .prototype, "2",
28361
- {
28362
- get: function () { return this .z; },
28363
- set: function (value) { this .z = value; },
28364
- enumerable: false,
28365
- configurable: false
28366
- });
28367
-
28368
- Object .defineProperty (Quaternion .prototype, "3",
28369
- {
28370
- get: function () { return this .w; },
28371
- set: function (value) { this .w = value; },
28372
- enumerable: false,
28373
- configurable: false
28374
- });
28375
-
28376
- Object .defineProperty (Quaternion .prototype, "real",
28377
- {
28378
- get: function () { return this .w; },
28379
- enumerable: false,
28380
- configurable: false
28381
- });
28382
-
28383
- Object .defineProperty (Quaternion .prototype, "imag",
28384
- {
28385
- get: (function ()
28236
+ length: { value: 4 },
28237
+ 0:
28386
28238
  {
28387
- const result = new Numbers_Vector3 (0, 0, 0);
28388
-
28389
- return function ()
28239
+ get: function () { return this .x; },
28240
+ set: function (value) { this .x = value; },
28241
+ },
28242
+ 1:
28243
+ {
28244
+ get: function () { return this .y; },
28245
+ set: function (value) { this .y = value; },
28246
+ },
28247
+ 2:
28248
+ {
28249
+ get: function () { return this .z; },
28250
+ set: function (value) { this .z = value; },
28251
+ },
28252
+ 3:
28253
+ {
28254
+ get: function () { return this .w; },
28255
+ set: function (value) { this .w = value; },
28256
+ },
28257
+ real:
28258
+ {
28259
+ get: function () { return this .w; },
28260
+ },
28261
+ imag:
28262
+ {
28263
+ get: (function ()
28390
28264
  {
28391
- return result .set (this .x,
28392
- this .y,
28393
- this .z);
28394
- };
28395
- })(),
28396
- enumerable: false,
28397
- configurable: false
28265
+ const result = new Numbers_Vector3 (0, 0, 0);
28266
+
28267
+ return function ()
28268
+ {
28269
+ return result .set (this .x,
28270
+ this .y,
28271
+ this .z);
28272
+ };
28273
+ })(),
28274
+ },
28398
28275
  });
28399
28276
 
28400
28277
  Object .assign (Quaternion,
@@ -28602,7 +28479,6 @@ function Rotation4 (x, y, z, angle)
28602
28479
  Rotation4 .prototype =
28603
28480
  {
28604
28481
  constructor: Rotation4,
28605
- length: 4,
28606
28482
  [Symbol .iterator]: function* ()
28607
28483
  {
28608
28484
  yield this [_x];
@@ -28873,7 +28749,6 @@ const x = {
28873
28749
  this .set (x, this [_y], this [_z], this [_angle]);
28874
28750
  },
28875
28751
  enumerable: true,
28876
- configurable: false
28877
28752
  };
28878
28753
 
28879
28754
  const y = {
@@ -28887,7 +28762,6 @@ const y = {
28887
28762
  this .set (this [_x], y, this [_z], this [_angle]);
28888
28763
  },
28889
28764
  enumerable: true,
28890
- configurable: false
28891
28765
  };
28892
28766
 
28893
28767
  const Rotation4_z = {
@@ -28901,7 +28775,6 @@ const Rotation4_z = {
28901
28775
  this .set (this [_x], this [_y], z, this [_angle]);
28902
28776
  },
28903
28777
  enumerable: true,
28904
- configurable: false
28905
28778
  };
28906
28779
 
28907
28780
  const angle = {
@@ -28915,23 +28788,29 @@ const angle = {
28915
28788
  this .set (this [_x], this [_y], this [_z], angle);
28916
28789
  },
28917
28790
  enumerable: true,
28918
- configurable: false
28919
28791
  };
28920
28792
 
28921
- Object .defineProperty (Rotation4 .prototype, "x", x);
28922
- Object .defineProperty (Rotation4 .prototype, "y", y);
28923
- Object .defineProperty (Rotation4 .prototype, "z", Rotation4_z);
28924
- Object .defineProperty (Rotation4 .prototype, "angle", angle);
28793
+ Object .defineProperties (Rotation4 .prototype,
28794
+ {
28795
+ length: { value: 4 },
28796
+ x: x,
28797
+ y: y,
28798
+ z: Rotation4_z,
28799
+ angle: angle,
28800
+ });
28925
28801
 
28926
28802
  x .enumerable = false;
28927
28803
  y .enumerable = false;
28928
28804
  Rotation4_z .enumerable = false;
28929
28805
  angle .enumerable = false;
28930
28806
 
28931
- Object .defineProperty (Rotation4 .prototype, "0", x);
28932
- Object .defineProperty (Rotation4 .prototype, "1", y);
28933
- Object .defineProperty (Rotation4 .prototype, "2", Rotation4_z);
28934
- Object .defineProperty (Rotation4 .prototype, "3", angle);
28807
+ Object .defineProperties (Rotation4 .prototype,
28808
+ {
28809
+ 0: x,
28810
+ 1: y,
28811
+ 2: Rotation4_z,
28812
+ 3: angle,
28813
+ });
28935
28814
 
28936
28815
  Object .assign (Rotation4,
28937
28816
  {
@@ -29050,13 +28929,9 @@ function Matrix4_Matrix4 ()
29050
28929
  Matrix4_Matrix4 .prototype =
29051
28930
  {
29052
28931
  constructor: Matrix4_Matrix4,
29053
- order: 4,
29054
- length: 16,
29055
28932
  [Symbol .iterator]: function* ()
29056
28933
  {
29057
- const length = this .length;
29058
-
29059
- for (let i = 0; i < length; ++ i)
28934
+ for (let i = 0; i < 16; ++ i)
29060
28935
  yield this [i];
29061
28936
  },
29062
28937
  copy: function ()
@@ -29654,118 +29529,97 @@ Matrix4_Matrix4 .prototype =
29654
29529
  },
29655
29530
  };
29656
29531
 
29657
- Object .defineProperty (Matrix4_Matrix4 .prototype, "x",
29532
+ Object .defineProperties (Matrix4_Matrix4 .prototype,
29658
29533
  {
29659
- get: (function ()
29534
+ order: { value: 4 },
29535
+ length: { value: 16 },
29536
+ x:
29660
29537
  {
29661
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29662
-
29663
- return function () { return vector .set (this [0], this [1], this [2], this [3]); };
29664
- })(),
29665
- enumerable: false,
29666
- configurable: false
29667
- });
29538
+ get: (function ()
29539
+ {
29540
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29668
29541
 
29669
- Object .defineProperty (Matrix4_Matrix4 .prototype, "y",
29670
- {
29671
- get: (function ()
29542
+ return function () { return vector .set (this [0], this [1], this [2], this [3]); };
29543
+ })(),
29544
+ },
29545
+ y:
29672
29546
  {
29673
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29674
-
29675
- return function () { return vector .set (this [4], this [5], this [6], this [7]); };
29676
- })(),
29677
- enumerable: false,
29678
- configurable: false
29679
- });
29547
+ get: (function ()
29548
+ {
29549
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29680
29550
 
29681
- Object .defineProperty (Matrix4_Matrix4 .prototype, "z",
29682
- {
29683
- get: (function ()
29551
+ return function () { return vector .set (this [4], this [5], this [6], this [7]); };
29552
+ })(),
29553
+ },
29554
+ z:
29684
29555
  {
29685
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29686
-
29687
- return function () { return vector .set (this [8], this [9], this [10], this [11]); };
29688
- })(),
29689
- enumerable: false,
29690
- configurable: false
29691
- });
29556
+ get: (function ()
29557
+ {
29558
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29692
29559
 
29693
- Object .defineProperty (Matrix4_Matrix4 .prototype, "w",
29694
- {
29695
- get: (function ()
29560
+ return function () { return vector .set (this [8], this [9], this [10], this [11]); };
29561
+ })(),
29562
+ },
29563
+ w:
29696
29564
  {
29697
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29698
-
29699
- return function () { return vector .set (this [12], this [13], this [14], this [15]); };
29700
- })(),
29701
- enumerable: false,
29702
- configurable: false
29703
- });
29565
+ get: (function ()
29566
+ {
29567
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29704
29568
 
29705
- Object .defineProperty (Matrix4_Matrix4 .prototype, "xAxis",
29706
- {
29707
- get: (function ()
29569
+ return function () { return vector .set (this [12], this [13], this [14], this [15]); };
29570
+ })(),
29571
+ },
29572
+ xAxis:
29708
29573
  {
29709
- const vector = new Numbers_Vector3 (0, 0, 0);
29710
-
29711
- return function () { return vector .set (this [0], this [1], this [2]); };
29712
- })(),
29713
- enumerable: false,
29714
- configurable: false
29715
- });
29574
+ get: (function ()
29575
+ {
29576
+ const vector = new Numbers_Vector3 (0, 0, 0);
29716
29577
 
29717
- Object .defineProperty (Matrix4_Matrix4 .prototype, "yAxis",
29718
- {
29719
- get: (function ()
29578
+ return function () { return vector .set (this [0], this [1], this [2]); };
29579
+ })(),
29580
+ },
29581
+ yAxis:
29720
29582
  {
29721
- const vector = new Numbers_Vector3 (0, 0, 0);
29722
-
29723
- return function () { return vector .set (this [4], this [5], this [6]); };
29724
- })(),
29725
- enumerable: false,
29726
- configurable: false
29727
- });
29583
+ get: (function ()
29584
+ {
29585
+ const vector = new Numbers_Vector3 (0, 0, 0);
29728
29586
 
29729
- Object .defineProperty (Matrix4_Matrix4 .prototype, "zAxis",
29730
- {
29731
- get: (function ()
29587
+ return function () { return vector .set (this [4], this [5], this [6]); };
29588
+ })(),
29589
+ },
29590
+ zAxis:
29732
29591
  {
29733
- const vector = new Numbers_Vector3 (0, 0, 0);
29734
-
29735
- return function () { return vector .set (this [8], this [9], this [10]); };
29736
- })(),
29737
- enumerable: false,
29738
- configurable: false
29739
- });
29592
+ get: (function ()
29593
+ {
29594
+ const vector = new Numbers_Vector3 (0, 0, 0);
29740
29595
 
29741
- Object .defineProperty (Matrix4_Matrix4 .prototype, "origin",
29742
- {
29743
- get: (function ()
29596
+ return function () { return vector .set (this [8], this [9], this [10]); };
29597
+ })(),
29598
+ },
29599
+ origin:
29744
29600
  {
29745
- const vector = new Numbers_Vector3 (0, 0, 0);
29746
-
29747
- return function () { return vector .set (this [12], this [13], this [14]); };
29748
- })(),
29749
- enumerable: false,
29750
- configurable: false
29751
- });
29601
+ get: (function ()
29602
+ {
29603
+ const vector = new Numbers_Vector3 (0, 0, 0);
29752
29604
 
29753
- Object .defineProperty (Matrix4_Matrix4 .prototype, "submatrix",
29754
- {
29755
- get: (function ()
29605
+ return function () { return vector .set (this [12], this [13], this [14]); };
29606
+ })(),
29607
+ },
29608
+ submatrix:
29756
29609
  {
29757
- const matrix = new Numbers_Matrix3 ();
29758
-
29759
- return function ()
29610
+ get: (function ()
29760
29611
  {
29761
- matrix [0] = this [0]; matrix [1] = this [1]; matrix [2] = this [ 2];
29762
- matrix [3] = this [4]; matrix [4] = this [5]; matrix [5] = this [ 6];
29763
- matrix [6] = this [8]; matrix [7] = this [9]; matrix [8] = this [10];
29764
- return matrix;
29765
- };
29766
- })(),
29767
- enumerable: false,
29768
- configurable: false
29612
+ const matrix = new Numbers_Matrix3 ();
29613
+
29614
+ return function ()
29615
+ {
29616
+ matrix [0] = this [0]; matrix [1] = this [1]; matrix [2] = this [ 2];
29617
+ matrix [3] = this [4]; matrix [4] = this [5]; matrix [5] = this [ 6];
29618
+ matrix [6] = this [8]; matrix [7] = this [9]; matrix [8] = this [10];
29619
+ return matrix;
29620
+ };
29621
+ })(),
29622
+ },
29769
29623
  });
29770
29624
 
29771
29625
  Object .assign (Matrix4_Matrix4,
@@ -29793,22 +29647,6 @@ Object .assign (Matrix4_Matrix4,
29793
29647
  matrix [6], matrix [7], matrix [8], 0,
29794
29648
  0, 0, 0, 1);
29795
29649
  },
29796
- transpose: function (matrix)
29797
- {
29798
- return matrix .copy () .transpose ();
29799
- },
29800
- inverse: function (matrix)
29801
- {
29802
- return matrix .copy () .inverse ();
29803
- },
29804
- multLeft: function (lhs, rhs)
29805
- {
29806
- return lhs .copy () .multLeft (rhs);
29807
- },
29808
- multRight: function (lhs, rhs)
29809
- {
29810
- return lhs .copy () .multRight (rhs);
29811
- },
29812
29650
  });
29813
29651
 
29814
29652
  const
@@ -29912,11 +29750,7 @@ function SFMatrix4Template (TypeName, Type, SFVec3, double)
29912
29750
  throw new Error ("Invalid arguments.");
29913
29751
  }
29914
29752
 
29915
- SFMatrix4 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
29916
- Fields_SFMatrixPrototypeTemplate (TypeName, Type, Numbers_Matrix4, SFVec3, double),
29917
- {
29918
- constructor: SFMatrix4,
29919
- });
29753
+ SFMatrix4 .prototype = Fields_SFMatrixPrototypeTemplate (SFMatrix4, TypeName, Type, Numbers_Matrix4, SFVec3, double);
29920
29754
 
29921
29755
  for (const key of Reflect .ownKeys (SFMatrix4 .prototype))
29922
29756
  Object .defineProperty (SFMatrix4 .prototype, key, { enumerable: false });
@@ -30684,11 +30518,11 @@ SFRotation .prototype = Object .assign (Object .create (Base_X3DField.prototype)
30684
30518
  },
30685
30519
  inverse: function ()
30686
30520
  {
30687
- return new SFRotation (Numbers_Rotation4.inverse (this .getValue ()));
30521
+ return new SFRotation (this .getValue () .copy () .inverse ());
30688
30522
  },
30689
30523
  multiply: function (rotation)
30690
30524
  {
30691
- return new SFRotation (Numbers_Rotation4.multRight (this .getValue (), rotation .getValue ()));
30525
+ return new SFRotation (this .getValue () .copy () .multRight (rotation .getValue ()));
30692
30526
  },
30693
30527
  multVec: function (vector)
30694
30528
  {
@@ -30696,7 +30530,7 @@ SFRotation .prototype = Object .assign (Object .create (Base_X3DField.prototype)
30696
30530
  },
30697
30531
  slerp: function (rotation, t)
30698
30532
  {
30699
- return new SFRotation (Numbers_Rotation4.slerp (this .getValue (), rotation .getValue (), t));
30533
+ return new SFRotation (this .getValue () .copy () .slerp (rotation .getValue (), t));
30700
30534
  },
30701
30535
  toStream: function (generator)
30702
30536
  {
@@ -30758,7 +30592,6 @@ const SFRotation_x = {
30758
30592
  this .getValue () .x = +value;
30759
30593
  this .addEvent ();
30760
30594
  },
30761
- enumerable: true,
30762
30595
  };
30763
30596
 
30764
30597
  const SFRotation_y = {
@@ -30771,7 +30604,6 @@ const SFRotation_y = {
30771
30604
  this .getValue () .y = +value;
30772
30605
  this .addEvent ();
30773
30606
  },
30774
- enumerable: true,
30775
30607
  };
30776
30608
 
30777
30609
  const SFRotation_z = {
@@ -30784,7 +30616,6 @@ const SFRotation_z = {
30784
30616
  this .getValue () .z = +value;
30785
30617
  this .addEvent ();
30786
30618
  },
30787
- enumerable: true,
30788
30619
  };
30789
30620
 
30790
30621
  const SFRotation_angle = {
@@ -30797,23 +30628,19 @@ const SFRotation_angle = {
30797
30628
  this .getValue () .angle = +value;
30798
30629
  this .addEvent ();
30799
30630
  },
30800
- enumerable: true,
30801
30631
  };
30802
30632
 
30803
- Object .defineProperty (SFRotation .prototype, "x", SFRotation_x);
30804
- Object .defineProperty (SFRotation .prototype, "y", SFRotation_y);
30805
- Object .defineProperty (SFRotation .prototype, "z", SFRotation_z);
30806
- Object .defineProperty (SFRotation .prototype, "angle", SFRotation_angle);
30807
-
30808
- SFRotation_x .enumerable = false;
30809
- SFRotation_y .enumerable = false;
30810
- SFRotation_z .enumerable = false;
30811
- SFRotation_angle .enumerable = false;
30812
-
30813
- Object .defineProperty (SFRotation .prototype, "0", SFRotation_x);
30814
- Object .defineProperty (SFRotation .prototype, "1", SFRotation_y);
30815
- Object .defineProperty (SFRotation .prototype, "2", SFRotation_z);
30816
- Object .defineProperty (SFRotation .prototype, "3", SFRotation_angle);
30633
+ Object .defineProperties (SFRotation .prototype,
30634
+ {
30635
+ 0: SFRotation_x,
30636
+ 1: SFRotation_y,
30637
+ 2: SFRotation_z,
30638
+ 3: SFRotation_angle,
30639
+ x: Object .assign ({ enumerable: true }, SFRotation_x),
30640
+ y: Object .assign ({ enumerable: true }, SFRotation_y),
30641
+ z: Object .assign ({ enumerable: true }, SFRotation_z),
30642
+ angle: Object .assign ({ enumerable: true }, SFRotation_angle),
30643
+ });
30817
30644
 
30818
30645
  const SFRotation_default_ = SFRotation;
30819
30646
  ;
@@ -30953,7 +30780,6 @@ Object .defineProperty (SFString .prototype, "length",
30953
30780
  {
30954
30781
  return this .getValue () .length;
30955
30782
  },
30956
- enumerable: true,
30957
30783
  });
30958
30784
 
30959
30785
  const SFString_default_ = SFString;
@@ -31143,11 +30969,7 @@ function SFVec4Template (TypeName, Type, double)
31143
30969
  throw new Error ("Invalid arguments.");
31144
30970
  }
31145
30971
 
31146
- SFVec4 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
31147
- Fields_SFVecPrototypeTemplate (TypeName, Type, Numbers_Vector4, double),
31148
- {
31149
- constructor: SFVec4,
31150
- });
30972
+ SFVec4 .prototype = Fields_SFVecPrototypeTemplate (SFVec4, TypeName, Type, Numbers_Vector4, double);
31151
30973
 
31152
30974
  for (const key of Reflect .ownKeys (SFVec4 .prototype))
31153
30975
  Object .defineProperty (SFVec4 .prototype, key, { enumerable: false });
@@ -31162,7 +30984,6 @@ function SFVec4Template (TypeName, Type, double)
31162
30984
  this .getValue () .x = +value;
31163
30985
  this .addEvent ();
31164
30986
  },
31165
- enumerable: true,
31166
30987
  };
31167
30988
 
31168
30989
  const y = {
@@ -31175,7 +30996,6 @@ function SFVec4Template (TypeName, Type, double)
31175
30996
  this .getValue () .y = +value;
31176
30997
  this .addEvent ();
31177
30998
  },
31178
- enumerable: true,
31179
30999
  };
31180
31000
 
31181
31001
  const z = {
@@ -31188,7 +31008,6 @@ function SFVec4Template (TypeName, Type, double)
31188
31008
  this .getValue () .z = +value;
31189
31009
  this .addEvent ();
31190
31010
  },
31191
- enumerable: true,
31192
31011
  };
31193
31012
 
31194
31013
  const w = {
@@ -31201,23 +31020,19 @@ function SFVec4Template (TypeName, Type, double)
31201
31020
  this .getValue () .w = +value;
31202
31021
  this .addEvent ();
31203
31022
  },
31204
- enumerable: true,
31205
31023
  };
31206
31024
 
31207
- Object .defineProperty (SFVec4 .prototype, "x", x);
31208
- Object .defineProperty (SFVec4 .prototype, "y", y);
31209
- Object .defineProperty (SFVec4 .prototype, "z", z);
31210
- Object .defineProperty (SFVec4 .prototype, "w", w);
31211
-
31212
- x .enumerable = false;
31213
- y .enumerable = false;
31214
- z .enumerable = false;
31215
- w .enumerable = false;
31216
-
31217
- Object .defineProperty (SFVec4 .prototype, "0", x);
31218
- Object .defineProperty (SFVec4 .prototype, "1", y);
31219
- Object .defineProperty (SFVec4 .prototype, "2", z);
31220
- Object .defineProperty (SFVec4 .prototype, "3", w);
31025
+ Object .defineProperties (SFVec4 .prototype,
31026
+ {
31027
+ 0: x,
31028
+ 1: y,
31029
+ 2: z,
31030
+ 3: w,
31031
+ x: Object .assign ({ enumerable: true }, x),
31032
+ y: Object .assign ({ enumerable: true }, y),
31033
+ z: Object .assign ({ enumerable: true }, z),
31034
+ w: Object .assign ({ enumerable: true }, w),
31035
+ });
31221
31036
 
31222
31037
  return SFVec4;
31223
31038
  }
@@ -33661,17 +33476,18 @@ x_ite_Namespace.set ("x_ite/Fields/ArrayFields", ArrayFields_default_);
33661
33476
 
33662
33477
 
33663
33478
 
33479
+
33480
+ const MFInt32 = Fields_ArrayFields.MFInt32;
33481
+
33664
33482
  /*
33665
33483
  * Image
33666
33484
  */
33667
33485
 
33668
33486
  function Image (width, height, comp, array)
33669
33487
  {
33670
- const MFInt32 = Fields_ArrayFields.MFInt32;
33671
-
33672
- this .width = width|0;
33673
- this .height = height|0;
33674
- this .comp = comp|0;
33488
+ this .width = Math .max (width|0, 0);
33489
+ this .height = Math .max (height|0, 0);
33490
+ this .comp = Algorithm.clamp (comp|0, 0, 4);
33675
33491
  this .array = new MFInt32 ();
33676
33492
  this .array .setValue (array);
33677
33493
  this .array .length = this .width * this .height;
@@ -33707,8 +33523,8 @@ Image .prototype =
33707
33523
  },
33708
33524
  setWidth: function (value)
33709
33525
  {
33710
- this .width = value|0;
33711
- this .array .length = this .width * this .height;
33526
+ this .width = Math .max (value|0, 0);
33527
+ this .array .length = this .width * this .height;
33712
33528
  },
33713
33529
  getWidth: function ()
33714
33530
  {
@@ -33716,8 +33532,8 @@ Image .prototype =
33716
33532
  },
33717
33533
  setHeight: function (value)
33718
33534
  {
33719
- this .height = value|0;
33720
- this .array .length = this .width * this .height;
33535
+ this .height = Math .max (value|0, 0);
33536
+ this .array .length = this .width * this .height;
33721
33537
  },
33722
33538
  getHeight: function ()
33723
33539
  {
@@ -33725,7 +33541,7 @@ Image .prototype =
33725
33541
  },
33726
33542
  setComp: function (value)
33727
33543
  {
33728
- this .comp = value|0;
33544
+ this .comp = Algorithm.clamp (value|0, 0, 4);
33729
33545
  },
33730
33546
  getComp: function ()
33731
33547
  {
@@ -33734,7 +33550,7 @@ Image .prototype =
33734
33550
  setArray: function (value)
33735
33551
  {
33736
33552
  this .array .setValue (value);
33737
- this .array .length = this .width * this .height;
33553
+ this .array .length = this .width * this .height;
33738
33554
  },
33739
33555
  getArray: function ()
33740
33556
  {
@@ -33750,14 +33566,23 @@ const _set_size = Symbol ();
33750
33566
 
33751
33567
  function SFImage (width, height, comp, array)
33752
33568
  {
33753
- const MFInt32 = Fields_ArrayFields.MFInt32;
33754
-
33755
- if (arguments [0] instanceof Image)
33756
- Base_X3DField.call (this, arguments [0]);
33757
- else if (arguments .length === 4)
33758
- Base_X3DField.call (this, new Image (width, height, comp, array));
33759
- else
33760
- Base_X3DField.call (this, new Image (0, 0, 0, new MFInt32 ()));
33569
+ switch (arguments .length)
33570
+ {
33571
+ case 0:
33572
+ Base_X3DField.call (this, new Image (0, 0, 0, new MFInt32 ()));
33573
+ break;
33574
+ case 1:
33575
+ Base_X3DField.call (this, arguments [0]);
33576
+ break;
33577
+ case 3:
33578
+ Base_X3DField.call (this, new Image (width, height, comp, new MFInt32 ()));
33579
+ break;
33580
+ case 4:
33581
+ Base_X3DField.call (this, new Image (width, height, comp, array));
33582
+ break;
33583
+ default:
33584
+ throw new Error ("Invalid arguments.");
33585
+ }
33761
33586
 
33762
33587
  this .getValue () .getArray () .addParent (this);
33763
33588
  this .addInterest (_set_size, this);
@@ -33919,7 +33744,6 @@ const width = {
33919
33744
  this .getValue () .setWidth (value);
33920
33745
  this .addEvent ();
33921
33746
  },
33922
- enumerable: true,
33923
33747
  };
33924
33748
 
33925
33749
  const height = {
@@ -33932,7 +33756,6 @@ const height = {
33932
33756
  this .getValue () .setHeight (value);
33933
33757
  this .addEvent ();
33934
33758
  },
33935
- enumerable: true,
33936
33759
  };
33937
33760
 
33938
33761
  const comp = {
@@ -33945,7 +33768,6 @@ const comp = {
33945
33768
  this .getValue () .setComp (value);
33946
33769
  this .addEvent ();
33947
33770
  },
33948
- enumerable: true,
33949
33771
  };
33950
33772
 
33951
33773
  const array = {
@@ -33958,19 +33780,17 @@ const array = {
33958
33780
  this .getValue () .setArray (value);
33959
33781
  this .addEvent ();
33960
33782
  },
33961
- enumerable: true,
33962
33783
  };
33963
33784
 
33964
- Object .defineProperty (SFImage .prototype, "width", width);
33965
- Object .defineProperty (SFImage .prototype, "height", height);
33966
- Object .defineProperty (SFImage .prototype, "comp", comp);
33967
- Object .defineProperty (SFImage .prototype, "array", array);
33968
-
33969
- width .enumerable = false;
33970
- height .enumerable = false;
33971
-
33972
- Object .defineProperty (SFImage .prototype, "x", width);
33973
- Object .defineProperty (SFImage .prototype, "y", height);
33785
+ Object .defineProperties (SFImage .prototype,
33786
+ {
33787
+ x: width,
33788
+ y: height,
33789
+ width: Object .assign ({ enumerable: true }, width),
33790
+ height: Object .assign ({ enumerable: true }, height),
33791
+ comp: Object .assign ({ enumerable: true }, comp),
33792
+ array: Object .assign ({ enumerable: true }, array),
33793
+ });
33974
33794
 
33975
33795
  const SFImage_default_ = SFImage;
33976
33796
  ;
@@ -34789,7 +34609,7 @@ x_ite_Namespace.set ("x_ite/Base/X3DBaseNode", X3DBaseNode_default_);
34789
34609
  *
34790
34610
  ******************************************************************************/
34791
34611
 
34792
- const VERSION_default_ = "8.7.4";
34612
+ const VERSION_default_ = "8.7.5";
34793
34613
  ;
34794
34614
 
34795
34615
  x_ite_Namespace.set ("x_ite/Browser/VERSION", VERSION_default_);
@@ -35708,7 +35528,7 @@ const gettext_default_ = gettext;
35708
35528
  x_ite_Namespace.set ("locale/gettext", gettext_default_);
35709
35529
  /* harmony default export */ const locale_gettext = (gettext_default_);
35710
35530
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserTimings.js
35711
- /* provided dependency */ var $ = __webpack_require__(917);
35531
+ /* provided dependency */ var $ = __webpack_require__(994);
35712
35532
  /*******************************************************************************
35713
35533
  *
35714
35534
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36206,7 +36026,7 @@ const TextureQuality_default_ = TextureQuality;
36206
36026
  x_ite_Namespace.set ("x_ite/Browser/Core/TextureQuality", TextureQuality_default_);
36207
36027
  /* harmony default export */ const Core_TextureQuality = (TextureQuality_default_);
36208
36028
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserOptions.js
36209
- /* provided dependency */ var BrowserOptions_$ = __webpack_require__(917);
36029
+ /* provided dependency */ var BrowserOptions_$ = __webpack_require__(994);
36210
36030
  /*******************************************************************************
36211
36031
  *
36212
36032
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36750,7 +36570,7 @@ const RenderingProperties_default_ = RenderingProperties;
36750
36570
  x_ite_Namespace.set ("x_ite/Browser/Core/RenderingProperties", RenderingProperties_default_);
36751
36571
  /* harmony default export */ const Core_RenderingProperties = (RenderingProperties_default_);
36752
36572
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/Notification.js
36753
- /* provided dependency */ var Notification_$ = __webpack_require__(917);
36573
+ /* provided dependency */ var Notification_$ = __webpack_require__(994);
36754
36574
  /*******************************************************************************
36755
36575
  *
36756
36576
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36872,8 +36692,8 @@ const Notification_default_ = Notification;
36872
36692
  x_ite_Namespace.set ("x_ite/Browser/Core/Notification", Notification_default_);
36873
36693
  /* harmony default export */ const Core_Notification = (Notification_default_);
36874
36694
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/ContextMenu.js
36875
- /* provided dependency */ var jquery_fullscreen = __webpack_require__(936);
36876
- /* provided dependency */ var ContextMenu_$ = __webpack_require__(917);
36695
+ /* provided dependency */ var jquery_fullscreen = __webpack_require__(53);
36696
+ /* provided dependency */ var ContextMenu_$ = __webpack_require__(994);
36877
36697
  /*******************************************************************************
36878
36698
  *
36879
36699
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -39841,40 +39661,40 @@ X3DImportedNode .prototype = Object .assign (Object .create (Core_X3DNode.protot
39841
39661
  for (const key of Reflect .ownKeys (X3DImportedNode .prototype))
39842
39662
  Object .defineProperty (X3DImportedNode .prototype, key, { enumerable: false });
39843
39663
 
39844
- Object .defineProperty (X3DImportedNode .prototype, "inlineNode",
39664
+ Object .defineProperties (X3DImportedNode .prototype,
39845
39665
  {
39846
- get: function ()
39666
+ inlineNode:
39847
39667
  {
39848
- return Fields_SFNodeCache.get (this [_inlineNode]);
39668
+ get: function ()
39669
+ {
39670
+ return Fields_SFNodeCache.get (this [_inlineNode]);
39671
+ },
39672
+ enumerable: true,
39849
39673
  },
39850
- enumerable: true,
39851
- });
39852
-
39853
- Object .defineProperty (X3DImportedNode .prototype, "exportedName",
39854
- {
39855
- get: function ()
39674
+ exportedName:
39856
39675
  {
39857
- return this [_exportedName];
39676
+ get: function ()
39677
+ {
39678
+ return this [_exportedName];
39679
+ },
39680
+ enumerable: true,
39858
39681
  },
39859
- enumerable: true,
39860
- });
39861
-
39862
- Object .defineProperty (X3DImportedNode .prototype, "exportedNode",
39863
- {
39864
- get: function ()
39682
+ exportedNode:
39865
39683
  {
39866
- return this [_inlineNode] .getInternalScene () .getExportedNode (this [_exportedName]);
39684
+ get: function ()
39685
+ {
39686
+ return this [_inlineNode] .getInternalScene () .getExportedNode (this [_exportedName]);
39687
+ },
39688
+ enumerable: true,
39867
39689
  },
39868
- enumerable: true,
39869
- });
39870
-
39871
- Object .defineProperty (X3DImportedNode .prototype, "importedName",
39872
- {
39873
- get: function ()
39690
+ importedName:
39874
39691
  {
39875
- return this [_importedName];
39692
+ get: function ()
39693
+ {
39694
+ return this [_importedName];
39695
+ },
39696
+ enumerable: true,
39876
39697
  },
39877
- enumerable: true,
39878
39698
  });
39879
39699
 
39880
39700
  const X3DImportedNode_default_ = X3DImportedNode;
@@ -41640,22 +41460,23 @@ X3DProtoDeclaration .prototype = Object .assign (Object .create (Prototype_X3DPr
41640
41460
  for (const key of Reflect .ownKeys (X3DProtoDeclaration .prototype))
41641
41461
  Object .defineProperty (X3DProtoDeclaration .prototype, key, { enumerable: false });
41642
41462
 
41643
- Object .defineProperty (X3DProtoDeclaration .prototype, "name",
41644
- {
41645
- get: X3DProtoDeclaration .prototype .getName,
41646
- enumerable: true,
41647
- });
41648
-
41649
- Object .defineProperty (X3DProtoDeclaration .prototype, "fields",
41463
+ Object .defineProperties (X3DProtoDeclaration .prototype,
41650
41464
  {
41651
- get: X3DProtoDeclaration .prototype .getFieldDefinitions,
41652
- enumerable: true,
41653
- });
41654
-
41655
- Object .defineProperty (X3DProtoDeclaration .prototype, "isExternProto",
41656
- {
41657
- value: false,
41658
- enumerable: true,
41465
+ name:
41466
+ {
41467
+ get: X3DProtoDeclaration .prototype .getName,
41468
+ enumerable: true,
41469
+ },
41470
+ fields:
41471
+ {
41472
+ get: X3DProtoDeclaration .prototype .getFieldDefinitions,
41473
+ enumerable: true,
41474
+ },
41475
+ isExternProto:
41476
+ {
41477
+ value: false,
41478
+ enumerable: true,
41479
+ },
41659
41480
  });
41660
41481
 
41661
41482
  const X3DProtoDeclaration_default_ = X3DProtoDeclaration;
@@ -41946,7 +41767,7 @@ const X3DUrlObject_default_ = X3DUrlObject;
41946
41767
  x_ite_Namespace.set ("x_ite/Components/Networking/X3DUrlObject", X3DUrlObject_default_);
41947
41768
  /* harmony default export */ const Networking_X3DUrlObject = (X3DUrlObject_default_);
41948
41769
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/X3DParser.js
41949
- /* provided dependency */ var X3DParser_$ = __webpack_require__(917);
41770
+ /* provided dependency */ var X3DParser_$ = __webpack_require__(994);
41950
41771
  /*******************************************************************************
41951
41772
  *
41952
41773
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -45128,7 +44949,7 @@ const VRMLParser_default_ = VRMLParser;
45128
44949
  x_ite_Namespace.set ("x_ite/Parser/VRMLParser", VRMLParser_default_);
45129
44950
  /* harmony default export */ const Parser_VRMLParser = (VRMLParser_default_);
45130
44951
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/XMLParser.js
45131
- /* provided dependency */ var XMLParser_$ = __webpack_require__(917);
44952
+ /* provided dependency */ var XMLParser_$ = __webpack_require__(994);
45132
44953
  /*******************************************************************************
45133
44954
  *
45134
44955
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -46855,7 +46676,7 @@ X3DOptimizer .prototype = {
46855
46676
  },
46856
46677
  optimizeNodes: function (nodes, combine, removedNodes)
46857
46678
  {
46858
- return nodes .flatMap (node => this .optimizeNode (node, combine, removedNodes));
46679
+ return [... nodes] .flatMap (node => this .optimizeNode (node, combine, removedNodes));
46859
46680
  },
46860
46681
  optimizeNode: function (node, combine, removedNodes)
46861
46682
  {
@@ -46983,7 +46804,7 @@ const X3DOptimizer_default_ = X3DOptimizer;
46983
46804
  x_ite_Namespace.set ("x_ite/Parser/X3DOptimizer", X3DOptimizer_default_);
46984
46805
  /* harmony default export */ const Parser_X3DOptimizer = (X3DOptimizer_default_);
46985
46806
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLTF2Parser.js
46986
- /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(917);
46807
+ /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(994);
46987
46808
  /*******************************************************************************
46988
46809
  *
46989
46810
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49449,7 +49270,7 @@ const GLTF2Parser_default_ = GLTF2Parser;
49449
49270
  x_ite_Namespace.set ("x_ite/Parser/GLTF2Parser", GLTF2Parser_default_);
49450
49271
  /* harmony default export */ const Parser_GLTF2Parser = (GLTF2Parser_default_);
49451
49272
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLB2Parser.js
49452
- /* provided dependency */ var GLB2Parser_$ = __webpack_require__(917);
49273
+ /* provided dependency */ var GLB2Parser_$ = __webpack_require__(994);
49453
49274
  /*******************************************************************************
49454
49275
  *
49455
49276
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49602,7 +49423,7 @@ const GLB2Parser_default_ = GLB2Parser;
49602
49423
  x_ite_Namespace.set ("x_ite/Parser/GLB2Parser", GLB2Parser_default_);
49603
49424
  /* harmony default export */ const Parser_GLB2Parser = (GLB2Parser_default_);
49604
49425
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/OBJParser.js
49605
- /* provided dependency */ var OBJParser_$ = __webpack_require__(917);
49426
+ /* provided dependency */ var OBJParser_$ = __webpack_require__(994);
49606
49427
  /*******************************************************************************
49607
49428
  *
49608
49429
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -51301,7 +51122,6 @@ function Complex (real, imag)
51301
51122
  Complex .prototype =
51302
51123
  {
51303
51124
  constructor: Complex,
51304
- length: 2,
51305
51125
  [Symbol .iterator]: function* ()
51306
51126
  {
51307
51127
  yield this .real;
@@ -51403,75 +51223,81 @@ Complex .prototype =
51403
51223
  },
51404
51224
  toString: function ()
51405
51225
  {
51406
- if (this .imag)
51407
- return this .real + " " + this .imag + "i";
51226
+ let string = "";
51408
51227
 
51409
- return String (this .real);
51410
- },
51411
- };
51228
+ string += this .real;
51412
51229
 
51413
- Object .defineProperty (Complex .prototype, "0",
51414
- {
51415
- get: function ()
51416
- {
51417
- return this .real;
51418
- },
51419
- set: function (value)
51420
- {
51421
- this .real = value;
51230
+ if (this .imag < 0)
51231
+ {
51232
+ string += this .imag;
51233
+ string += "i";
51234
+ }
51235
+ else if (this .imag > 0)
51236
+ {
51237
+ string += "+";
51238
+ string += this .imag;
51239
+ string += "i";
51240
+ }
51241
+
51242
+ return string;
51422
51243
  },
51423
- enumerable: false,
51424
- configurable: false
51425
- });
51244
+ };
51426
51245
 
51427
- Object .defineProperty (Complex .prototype, "1",
51246
+ Object .defineProperties (Complex .prototype,
51428
51247
  {
51429
- get: function ()
51248
+ length: { value: 2 },
51249
+ 0:
51430
51250
  {
51431
- return this .imag;
51251
+ get: function ()
51252
+ {
51253
+ return this .real;
51254
+ },
51255
+ set: function (value)
51256
+ {
51257
+ this .real = value;
51258
+ },
51432
51259
  },
51433
- set: function (value)
51260
+ 1:
51434
51261
  {
51435
- this .imag = value;
51262
+ get: function ()
51263
+ {
51264
+ return this .imag;
51265
+ },
51266
+ set: function (value)
51267
+ {
51268
+ this .imag = value;
51269
+ },
51436
51270
  },
51437
- enumerable: false,
51438
- configurable: false
51439
- });
51440
-
51441
- Object .defineProperty (Complex .prototype, "magnitude",
51442
- {
51443
- get: function ()
51271
+ magnitude:
51444
51272
  {
51445
- if (this .real)
51273
+ get: function ()
51446
51274
  {
51447
- if (this .imag)
51448
- return Math .hypot (this .real, this .imag);
51449
-
51450
- return Math .abs (this .real);
51451
- }
51275
+ if (this .real)
51276
+ {
51277
+ if (this .imag)
51278
+ return Math .hypot (this .real, this .imag);
51452
51279
 
51453
- return Math .abs (this .imag);
51454
- },
51455
- set: function (magnitude)
51456
- {
51457
- this .setPolar (magnitude, this .angle);
51458
- },
51459
- enumerable: false,
51460
- configurable: false
51461
- });
51280
+ return Math .abs (this .real);
51281
+ }
51462
51282
 
51463
- Object .defineProperty (Complex .prototype, "angle",
51464
- {
51465
- get: function ()
51466
- {
51467
- return Math .atan2 (this .imag, this .real);
51283
+ return Math .abs (this .imag);
51284
+ },
51285
+ set: function (magnitude)
51286
+ {
51287
+ this .setPolar (magnitude, this .angle);
51288
+ },
51468
51289
  },
51469
- set: function (angle)
51290
+ angle:
51470
51291
  {
51471
- this .setPolar (this .magnitude, angle);
51292
+ get: function ()
51293
+ {
51294
+ return Math .atan2 (this .imag, this .real);
51295
+ },
51296
+ set: function (angle)
51297
+ {
51298
+ this .setPolar (this .magnitude, angle);
51299
+ },
51472
51300
  },
51473
- enumerable: false,
51474
- configurable: false
51475
51301
  });
51476
51302
 
51477
51303
  Object .assign (Complex,
@@ -51701,33 +51527,33 @@ Box2 .prototype =
51701
51527
  },
51702
51528
  };
51703
51529
 
51704
- Object .defineProperty (Box2 .prototype, "size",
51530
+ Object .defineProperties (Box2 .prototype,
51705
51531
  {
51706
- get: (function ()
51532
+ size:
51707
51533
  {
51708
- const
51709
- min = new Numbers_Vector2 (0, 0),
51710
- max = new Numbers_Vector2 (0, 0);
51711
-
51712
- return function ()
51534
+ get: (function ()
51713
51535
  {
51714
- this .getAbsoluteExtents (min, max);
51536
+ const
51537
+ min = new Numbers_Vector2 (0, 0),
51538
+ max = new Numbers_Vector2 (0, 0);
51715
51539
 
51716
- return max .subtract (min);
51717
- };
51718
- })(),
51719
- enumerable: true,
51720
- configurable: false
51721
- });
51540
+ return function ()
51541
+ {
51542
+ this .getAbsoluteExtents (min, max);
51722
51543
 
51723
- Object .defineProperty (Box2 .prototype, "center",
51724
- {
51725
- get: function ()
51544
+ return max .subtract (min);
51545
+ };
51546
+ })(),
51547
+ enumerable: true,
51548
+ },
51549
+ center:
51726
51550
  {
51727
- return this .matrix .origin;
51551
+ get: function ()
51552
+ {
51553
+ return this .matrix .origin;
51554
+ },
51555
+ enumerable: true,
51728
51556
  },
51729
- enumerable: true,
51730
- configurable: false
51731
51557
  });
51732
51558
 
51733
51559
  const Box2_default_ = Box2;
@@ -52092,8 +51918,8 @@ const MatrixStack_default_ = MatrixStack;
52092
51918
  x_ite_Namespace.set ("standard/Math/Utility/MatrixStack", MatrixStack_default_);
52093
51919
  /* harmony default export */ const Utility_MatrixStack = (MatrixStack_default_);
52094
51920
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/SVGParser.js
52095
- /* provided dependency */ var SVGParser_$ = __webpack_require__(917);
52096
- /* provided dependency */ var libtess = __webpack_require__(836);
51921
+ /* provided dependency */ var SVGParser_$ = __webpack_require__(994);
51922
+ /* provided dependency */ var libtess = __webpack_require__(870);
52097
51923
  /*******************************************************************************
52098
51924
  *
52099
51925
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -53273,7 +53099,7 @@ SVGParser .prototype = Object .assign (Object .create (Parser_X3DParser.prototyp
53273
53099
  m .scale (new Numbers_Vector2 (1, -1));
53274
53100
 
53275
53101
  if (g .units === "userSpaceOnUse")
53276
- m .multLeft (Numbers_Matrix3.inverse (bbox .matrix));
53102
+ m .multLeft (bbox .matrix .copy () .inverse ());
53277
53103
  else
53278
53104
  m .multLeft (new Numbers_Matrix3 (2, 0, 0, 0, 2, 0, -1, -1, 1));
53279
53105
 
@@ -54786,7 +54612,7 @@ SVGParser .prototype = Object .assign (Object .create (Parser_X3DParser.prototyp
54786
54612
  const
54787
54613
  scene = this .getExecutionContext (),
54788
54614
  texCoordNode = scene .createNode ("TextureCoordinate"),
54789
- invMatrix = Numbers_Matrix3.inverse (bbox .matrix);
54615
+ invMatrix = bbox .matrix .copy () .inverse ();
54790
54616
 
54791
54617
  for (const point of coordinateNode .point)
54792
54618
  texCoordNode .point .push (invMatrix .multVecMatrix (new Numbers_Vector2 (point .x, point .y)) .add (Numbers_Vector2.One) .divide (2));
@@ -54862,7 +54688,7 @@ const SVGParser_default_ = SVGParser;
54862
54688
  x_ite_Namespace.set ("x_ite/Parser/SVGParser", SVGParser_default_);
54863
54689
  /* harmony default export */ const Parser_SVGParser = (SVGParser_default_);
54864
54690
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GoldenGate.js
54865
- /* provided dependency */ var GoldenGate_$ = __webpack_require__(917);
54691
+ /* provided dependency */ var GoldenGate_$ = __webpack_require__(994);
54866
54692
  /*******************************************************************************
54867
54693
  *
54868
54694
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -55191,7 +55017,7 @@ const Plane3_default_ = Plane3;
55191
55017
  x_ite_Namespace.set ("standard/Math/Geometry/Plane3", Plane3_default_);
55192
55018
  /* harmony default export */ const Geometry_Plane3 = (Plane3_default_);
55193
55019
  ;// CONCATENATED MODULE: ./src/standard/Math/Geometry/Triangle3.js
55194
- /* provided dependency */ var Triangle3_libtess = __webpack_require__(836);
55020
+ /* provided dependency */ var Triangle3_libtess = __webpack_require__(870);
55195
55021
  /*******************************************************************************
55196
55022
  *
55197
55023
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -57041,33 +56867,33 @@ Box3 .prototype =
57041
56867
  },
57042
56868
  };
57043
56869
 
57044
- Object .defineProperty (Box3 .prototype, "size",
56870
+ Object .defineProperties (Box3 .prototype,
57045
56871
  {
57046
- get: (function ()
56872
+ size:
57047
56873
  {
57048
- const
57049
- min = new Numbers_Vector3 (0, 0, 0),
57050
- max = new Numbers_Vector3 (0, 0, 0);
57051
-
57052
- return function ()
56874
+ get: (function ()
57053
56875
  {
57054
- this .getAbsoluteExtents (min, max);
56876
+ const
56877
+ min = new Numbers_Vector3 (0, 0, 0),
56878
+ max = new Numbers_Vector3 (0, 0, 0);
57055
56879
 
57056
- return max .subtract (min);
57057
- };
57058
- })(),
57059
- enumerable: true,
57060
- configurable: false
57061
- });
56880
+ return function ()
56881
+ {
56882
+ this .getAbsoluteExtents (min, max);
57062
56883
 
57063
- Object .defineProperty (Box3 .prototype, "center",
57064
- {
57065
- get: function ()
56884
+ return max .subtract (min);
56885
+ };
56886
+ })(),
56887
+ enumerable: true,
56888
+ },
56889
+ center:
57066
56890
  {
57067
- return this .matrix .origin;
56891
+ get: function ()
56892
+ {
56893
+ return this .matrix .origin;
56894
+ },
56895
+ enumerable: true,
57068
56896
  },
57069
- enumerable: true,
57070
- configurable: false
57071
56897
  });
57072
56898
 
57073
56899
  const Box3_default_ = Box3;
@@ -62475,7 +62301,7 @@ const X3DTexture2DNode_default_ = X3DTexture2DNode;
62475
62301
  x_ite_Namespace.set ("x_ite/Components/Texturing/X3DTexture2DNode", X3DTexture2DNode_default_);
62476
62302
  /* harmony default export */ const Texturing_X3DTexture2DNode = (X3DTexture2DNode_default_);
62477
62303
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/ImageTexture.js
62478
- /* provided dependency */ var ImageTexture_$ = __webpack_require__(917);
62304
+ /* provided dependency */ var ImageTexture_$ = __webpack_require__(994);
62479
62305
  /*******************************************************************************
62480
62306
  *
62481
62307
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -63132,7 +62958,7 @@ X3DLayerNode .prototype = Object .assign (Object .create (Core_X3DNode.prototype
63132
62958
  {
63133
62959
  const
63134
62960
  viewpointNode = this .getViewpoint (),
63135
- bbox = this .getBBox (new Geometry_Box3 ()) .multRight (Numbers_Matrix4.inverse (viewpointNode .getModelMatrix ()));
62961
+ bbox = this .getBBox (new Geometry_Box3 ()) .multRight (viewpointNode .getModelMatrix () .copy () .inverse ());
63136
62962
 
63137
62963
  viewpointNode .lookAt (this, bbox .center, viewpointNode .getLookAtDistance (bbox), factor, straighten);
63138
62964
  },
@@ -65027,8 +64853,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65027
64853
  lookAtPoint: function (layerNode, point, factor, straighten)
65028
64854
  {
65029
64855
  this .getCameraSpaceMatrix () .multVecMatrix (point);
65030
-
65031
- Numbers_Matrix4.inverse (this .getModelMatrix ()) .multVecMatrix (point);
64856
+ this .getModelMatrix () .copy () .inverse () .multVecMatrix (point);
65032
64857
 
65033
64858
  const minDistance = layerNode .getNavigationInfo () .getNearValue () * 2;
65034
64859
 
@@ -65036,7 +64861,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65036
64861
  },
65037
64862
  lookAtBBox: function (layerNode, bbox, factor, straighten)
65038
64863
  {
65039
- bbox = bbox .copy () .multRight (Numbers_Matrix4.inverse (this .getModelMatrix ()));
64864
+ bbox = bbox .copy () .multRight (this .getModelMatrix () .copy () .inverse ());
65040
64865
 
65041
64866
  const minDistance = Math .max (layerNode .getNavigationInfo () .getNearValue () * 2, this .getLookAtDistance (bbox));
65042
64867
 
@@ -66815,7 +66640,7 @@ const X3DWorld_default_ = X3DWorld;
66815
66640
  x_ite_Namespace.set ("x_ite/Execution/X3DWorld", X3DWorld_default_);
66816
66641
  /* harmony default export */ const Execution_X3DWorld = (X3DWorld_default_);
66817
66642
  ;// CONCATENATED MODULE: ./src/x_ite/InputOutput/FileLoader.js
66818
- /* provided dependency */ var FileLoader_$ = __webpack_require__(917);
66643
+ /* provided dependency */ var FileLoader_$ = __webpack_require__(994);
66819
66644
  /*******************************************************************************
66820
66645
  *
66821
66646
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -67571,34 +67396,33 @@ X3DExternProtoDeclaration .prototype = Object .assign (Object .create (Prototype
67571
67396
  for (const key of Reflect .ownKeys (X3DExternProtoDeclaration .prototype))
67572
67397
  Object .defineProperty (X3DExternProtoDeclaration .prototype, key, { enumerable: false });
67573
67398
 
67574
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "name",
67575
- {
67576
- get: X3DExternProtoDeclaration .prototype .getName,
67577
- enumerable: true,
67578
- });
67579
-
67580
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "fields",
67581
- {
67582
- get: X3DExternProtoDeclaration .prototype .getFieldDefinitions,
67583
- enumerable: true,
67584
- });
67585
-
67586
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "isExternProto",
67587
- {
67588
- value: true,
67589
- enumerable: true,
67590
- });
67591
-
67592
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "urls",
67593
- {
67594
- get: function () { return this ._url; },
67595
- enumerable: true,
67596
- });
67597
-
67598
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "loadState",
67399
+ Object .defineProperties (X3DExternProtoDeclaration .prototype,
67599
67400
  {
67600
- get: X3DExternProtoDeclaration .prototype .checkLoadState,
67601
- enumerable: true,
67401
+ name:
67402
+ {
67403
+ get: X3DExternProtoDeclaration .prototype .getName,
67404
+ enumerable: true,
67405
+ },
67406
+ fields:
67407
+ {
67408
+ get: X3DExternProtoDeclaration .prototype .getFieldDefinitions,
67409
+ enumerable: true,
67410
+ },
67411
+ isExternProto:
67412
+ {
67413
+ value: true,
67414
+ enumerable: true,
67415
+ },
67416
+ urls:
67417
+ {
67418
+ get: function () { return this ._url; },
67419
+ enumerable: true,
67420
+ },
67421
+ loadState:
67422
+ {
67423
+ get: X3DExternProtoDeclaration .prototype .checkLoadState,
67424
+ enumerable: true,
67425
+ },
67602
67426
  });
67603
67427
 
67604
67428
  const X3DExternProtoDeclaration_default_ = X3DExternProtoDeclaration;
@@ -67831,6 +67655,7 @@ function X3DRoute (executionContext, sourceNode, sourceField, destinationNode, d
67831
67655
 
67832
67656
  X3DRoute .prototype = Object .assign (Object .create (Base_X3DObject.prototype),
67833
67657
  {
67658
+ constructor: X3DRoute,
67834
67659
  getTypeName: function ()
67835
67660
  {
67836
67661
  return "X3DRoute";
@@ -68015,40 +67840,40 @@ X3DRoute .prototype = Object .assign (Object .create (Base_X3DObject.prototype),
68015
67840
  for (const key of Reflect .ownKeys (X3DRoute .prototype))
68016
67841
  Object .defineProperty (X3DRoute .prototype, key, { enumerable: false });
68017
67842
 
68018
- Object .defineProperty (X3DRoute .prototype, "sourceNode",
67843
+ Object .defineProperties (X3DRoute .prototype,
68019
67844
  {
68020
- get: function ()
67845
+ sourceNode:
68021
67846
  {
68022
- return Fields_SFNodeCache.get (this [_sourceNode]);
67847
+ get: function ()
67848
+ {
67849
+ return Fields_SFNodeCache.get (this [_sourceNode]);
67850
+ },
67851
+ enumerable: true,
68023
67852
  },
68024
- enumerable: true,
68025
- });
68026
-
68027
- Object .defineProperty (X3DRoute .prototype, "sourceField",
68028
- {
68029
- get: function ()
67853
+ sourceField:
68030
67854
  {
68031
- return this [_sourceField] .getName ();
67855
+ get: function ()
67856
+ {
67857
+ return this [_sourceField] .getName ();
67858
+ },
67859
+ enumerable: true,
68032
67860
  },
68033
- enumerable: true,
68034
- });
68035
-
68036
- Object .defineProperty (X3DRoute .prototype, "destinationNode",
68037
- {
68038
- get: function ()
67861
+ destinationNode:
68039
67862
  {
68040
- return Fields_SFNodeCache.get (this [_destinationNode]);
67863
+ get: function ()
67864
+ {
67865
+ return Fields_SFNodeCache.get (this [_destinationNode]);
67866
+ },
67867
+ enumerable: true,
68041
67868
  },
68042
- enumerable: true,
68043
- });
68044
-
68045
- Object .defineProperty (X3DRoute .prototype, "destinationField",
68046
- {
68047
- get: function ()
67869
+ destinationField:
68048
67870
  {
68049
- return this [_destinationField] .getName ();
67871
+ get: function ()
67872
+ {
67873
+ return this [_destinationField] .getName ();
67874
+ },
67875
+ enumerable: true,
68050
67876
  },
68051
- enumerable: true,
68052
67877
  });
68053
67878
 
68054
67879
  const X3DRoute_default_ = X3DRoute;
@@ -69072,65 +68897,59 @@ X3DExecutionContext .prototype = Object .assign (Object .create (Base_X3DBaseNod
69072
68897
  for (const key of Reflect .ownKeys (X3DExecutionContext .prototype))
69073
68898
  Object .defineProperty (X3DExecutionContext .prototype, key, { enumerable: false });
69074
68899
 
69075
- Object .defineProperty (X3DExecutionContext .prototype, "specificationVersion",
68900
+ Object .defineProperties (X3DExecutionContext .prototype,
69076
68901
  {
69077
- get: X3DExecutionContext .prototype .getSpecificationVersion,
69078
- enumerable: true,
69079
- });
69080
-
69081
- Object .defineProperty (X3DExecutionContext .prototype, "encoding",
69082
- {
69083
- get: X3DExecutionContext .prototype .getEncoding,
69084
- enumerable: true,
69085
- });
69086
-
69087
- Object .defineProperty (X3DExecutionContext .prototype, "profile",
69088
- {
69089
- get: X3DExecutionContext .prototype .getProfile,
69090
- enumerable: true,
69091
- });
69092
-
69093
- Object .defineProperty (X3DExecutionContext .prototype, "components",
69094
- {
69095
- get: X3DExecutionContext .prototype .getComponents,
69096
- enumerable: true,
69097
- });
69098
-
69099
- Object .defineProperty (X3DExecutionContext .prototype, "worldURL",
69100
- {
69101
- get: X3DExecutionContext .prototype .getWorldURL,
69102
- enumerable: true,
69103
- });
69104
-
69105
- Object .defineProperty (X3DExecutionContext .prototype, "units",
69106
- {
69107
- get: X3DExecutionContext .prototype .getUnits,
69108
- enumerable: true,
69109
- });
69110
-
69111
- Object .defineProperty (X3DExecutionContext .prototype, "rootNodes",
69112
- {
69113
- get: X3DExecutionContext .prototype .getRootNodes,
69114
- set: X3DExecutionContext .prototype .setRootNodes,
69115
- enumerable: true,
69116
- });
69117
-
69118
- Object .defineProperty (X3DExecutionContext .prototype, "protos",
69119
- {
69120
- get: X3DExecutionContext .prototype .getProtoDeclarations,
69121
- enumerable: true,
69122
- });
69123
-
69124
- Object .defineProperty (X3DExecutionContext .prototype, "externprotos",
69125
- {
69126
- get: X3DExecutionContext .prototype .getExternProtoDeclarations,
69127
- enumerable: true,
69128
- });
69129
-
69130
- Object .defineProperty (X3DExecutionContext .prototype, "routes",
69131
- {
69132
- get: X3DExecutionContext .prototype .getRoutes,
69133
- enumerable: true,
68902
+ specificationVersion:
68903
+ {
68904
+ get: X3DExecutionContext .prototype .getSpecificationVersion,
68905
+ enumerable: true,
68906
+ },
68907
+ encoding:
68908
+ {
68909
+ get: X3DExecutionContext .prototype .getEncoding,
68910
+ enumerable: true,
68911
+ },
68912
+ profile:
68913
+ {
68914
+ get: X3DExecutionContext .prototype .getProfile,
68915
+ enumerable: true,
68916
+ },
68917
+ components:
68918
+ {
68919
+ get: X3DExecutionContext .prototype .getComponents,
68920
+ enumerable: true,
68921
+ },
68922
+ worldURL:
68923
+ {
68924
+ get: X3DExecutionContext .prototype .getWorldURL,
68925
+ enumerable: true,
68926
+ },
68927
+ units:
68928
+ {
68929
+ get: X3DExecutionContext .prototype .getUnits,
68930
+ enumerable: true,
68931
+ },
68932
+ rootNodes:
68933
+ {
68934
+ get: X3DExecutionContext .prototype .getRootNodes,
68935
+ set: X3DExecutionContext .prototype .setRootNodes,
68936
+ enumerable: true,
68937
+ },
68938
+ protos:
68939
+ {
68940
+ get: X3DExecutionContext .prototype .getProtoDeclarations,
68941
+ enumerable: true,
68942
+ },
68943
+ externprotos:
68944
+ {
68945
+ get: X3DExecutionContext .prototype .getExternProtoDeclarations,
68946
+ enumerable: true,
68947
+ },
68948
+ routes:
68949
+ {
68950
+ get: X3DExecutionContext .prototype .getRoutes,
68951
+ enumerable: true,
68952
+ },
69134
68953
  });
69135
68954
 
69136
68955
  const X3DExecutionContext_default_ = X3DExecutionContext;
@@ -69771,22 +69590,24 @@ X3DExportedNode .prototype = Object .assign (Object .create (Base_X3DObject.prot
69771
69590
  for (const key of Reflect .ownKeys (X3DExportedNode .prototype))
69772
69591
  Object .defineProperty (X3DExportedNode .prototype, key, { enumerable: false });
69773
69592
 
69774
- Object .defineProperty (X3DExportedNode .prototype, "exportedName",
69593
+ Object .defineProperties (X3DExportedNode .prototype,
69775
69594
  {
69776
- get: function ()
69595
+ exportedName:
69777
69596
  {
69778
- return Fields_SFNodeCache.get (this [X3DExportedNode_exportedName]);
69597
+ get: function ()
69598
+ {
69599
+ return Fields_SFNodeCache.get (this [X3DExportedNode_exportedName]);
69600
+ },
69601
+ enumerable: true,
69779
69602
  },
69780
- enumerable: true,
69781
- });
69782
-
69783
- Object .defineProperty (X3DExportedNode .prototype, "localNode",
69784
- {
69785
- get: function ()
69603
+ localNode:
69786
69604
  {
69787
- return Fields_SFNodeCache.get (this [_localNode]);
69605
+ get: function ()
69606
+ {
69607
+ return Fields_SFNodeCache.get (this [_localNode]);
69608
+ },
69609
+ enumerable: true,
69788
69610
  },
69789
- enumerable: true,
69790
69611
  });
69791
69612
 
69792
69613
  const X3DExportedNode_default_ = X3DExportedNode;
@@ -69931,6 +69752,7 @@ x_ite_Namespace.set ("x_ite/Execution/ExportedNodesArray", ExportedNodesArray_de
69931
69752
  Configuration_SupportedNodes.addAbstractType ("X3DScene", X3DScene);
69932
69753
 
69933
69754
  const
69755
+ X3DScene_browser = Symbol .for ("X_ITE.X3DEventObject.browser"),
69934
69756
  _specificationVersion = Symbol (),
69935
69757
  _encoding = Symbol (),
69936
69758
  _profile = Symbol (),
@@ -69938,13 +69760,16 @@ const
69938
69760
  _worldURL = Symbol (),
69939
69761
  _units = Symbol (),
69940
69762
  _metadata = Symbol (),
69941
- _exportedNodes = Symbol ();
69763
+ _exportedNodes = Symbol (),
69764
+ _loadingObjects = Symbol ();
69942
69765
 
69943
- const LATEST_VERSION = "4.0";
69766
+ const X3D_LATEST_VERSION = "4.0";
69944
69767
 
69945
- function X3DScene (executionContext)
69768
+ function X3DScene (browser)
69946
69769
  {
69947
- Execution_X3DExecutionContext.call (this, executionContext);
69770
+ this [X3DScene_browser] = browser;
69771
+
69772
+ Execution_X3DExecutionContext.call (this, this);
69948
69773
 
69949
69774
  this .addType (Base_X3DConstants.X3DScene)
69950
69775
 
@@ -69952,9 +69777,11 @@ function X3DScene (executionContext)
69952
69777
  "components_changed", new x_ite_Fields.SFTime (),
69953
69778
  "units_changed", new x_ite_Fields.SFTime (),
69954
69779
  "metadata_changed", new x_ite_Fields.SFTime (),
69955
- "exportedNodes_changed", new x_ite_Fields.SFTime ())
69780
+ "exportedNodes_changed", new x_ite_Fields.SFTime (),
69781
+ "initLoadCount", new x_ite_Fields.SFInt32 (),
69782
+ "loadCount", new x_ite_Fields.SFInt32 ())
69956
69783
 
69957
- this [_specificationVersion] = LATEST_VERSION;
69784
+ this [_specificationVersion] = X3D_LATEST_VERSION;
69958
69785
  this [_encoding] = "SCRIPTED";
69959
69786
  this [_profile] = null;
69960
69787
  this [_components] = new Configuration_ComponentInfoArray ([ ]);
@@ -69966,8 +69793,9 @@ function X3DScene (executionContext)
69966
69793
  this [_units] .add ("length", new Configuration_UnitInfo ("length", "metre", 1));
69967
69794
  this [_units] .add ("mass", new Configuration_UnitInfo ("mass", "kilogram", 1));
69968
69795
 
69969
- this [_metadata] = new Map ();
69970
- this [_exportedNodes] = new Execution_ExportedNodesArray ();
69796
+ this [_metadata] = new Map ();
69797
+ this [_exportedNodes] = new Execution_ExportedNodesArray ();
69798
+ this [_loadingObjects] = new Set ();
69971
69799
 
69972
69800
  this .getRootNodes () .setAccessType (Base_X3DConstants.inputOutput);
69973
69801
 
@@ -70125,7 +69953,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70125
69953
  if (!name .length)
70126
69954
  throw new Error ("Couldn't add metadata: name is empty.");
70127
69955
 
70128
- if (! Array .isArray (values))
69956
+ if (!Array .isArray (values))
70129
69957
  values = [String (values)];
70130
69958
 
70131
69959
  if (!values .length)
@@ -70268,7 +70096,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70268
70096
  {
70269
70097
  generator .string += generator .Indent ();
70270
70098
  generator .string += "#X3D V";
70271
- generator .string += LATEST_VERSION;
70099
+ generator .string += X3D_LATEST_VERSION;
70272
70100
  generator .string += generator .Space ();
70273
70101
  generator .string += "utf8";
70274
70102
  generator .string += generator .Space ();
@@ -70360,9 +70188,9 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70360
70188
  generator .string += generator .TidyBreak ();
70361
70189
  generator .string += generator .Indent ();
70362
70190
  generator .string += "<!DOCTYPE X3D PUBLIC \"ISO//Web3D//DTD X3D ";
70363
- generator .string += LATEST_VERSION;
70191
+ generator .string += X3D_LATEST_VERSION;
70364
70192
  generator .string += "//EN\" \"http://www.web3d.org/specifications/x3d-";
70365
- generator .string += LATEST_VERSION;
70193
+ generator .string += X3D_LATEST_VERSION;
70366
70194
  generator .string += ".dtd\">";
70367
70195
  generator .string += generator .TidyBreak ();
70368
70196
  }
@@ -70375,13 +70203,13 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70375
70203
  generator .string += "'";
70376
70204
  generator .string += generator .Space ();
70377
70205
  generator .string += "version='";
70378
- generator .string += LATEST_VERSION;
70206
+ generator .string += X3D_LATEST_VERSION;
70379
70207
  generator .string += "'";
70380
70208
  generator .string += generator .Space ();
70381
70209
  generator .string += "xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance'";
70382
70210
  generator .string += generator .Space ();
70383
70211
  generator .string += "xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-";
70384
- generator .string += LATEST_VERSION;
70212
+ generator .string += X3D_LATEST_VERSION;
70385
70213
  generator .string += ".xsd'>";
70386
70214
  generator .string += generator .TidyBreak ();
70387
70215
 
@@ -70541,7 +70369,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70541
70369
  generator .string += ':';
70542
70370
  generator .string += generator .TidySpace ();
70543
70371
  generator .string += '"';
70544
- generator .string += LATEST_VERSION;
70372
+ generator .string += X3D_LATEST_VERSION;
70545
70373
  generator .string += '"';
70546
70374
  generator .string += ',';
70547
70375
  generator .string += generator .TidyBreak ();
@@ -70557,7 +70385,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70557
70385
  generator .string += generator .TidySpace ();
70558
70386
  generator .string += '"';
70559
70387
  generator .string += "http://www.web3d.org/specifications/x3d-";
70560
- generator .string += LATEST_VERSION;
70388
+ generator .string += X3D_LATEST_VERSION;
70561
70389
  generator .string += ".xsd";
70562
70390
  generator .string += '"';
70563
70391
  generator .string += ',';
@@ -70574,7 +70402,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70574
70402
  generator .string += generator .TidySpace ();
70575
70403
  generator .string += '"';
70576
70404
  generator .string += "http://www.web3d.org/specifications/x3d-";
70577
- generator .string += LATEST_VERSION;
70405
+ generator .string += X3D_LATEST_VERSION;
70578
70406
  generator .string += "-JSONSchema.json";
70579
70407
  generator .string += '"';
70580
70408
  generator .string += ',';
@@ -70828,132 +70656,11 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70828
70656
  generator .string += generator .Indent ();
70829
70657
  generator .string += '}';
70830
70658
  },
70831
- });
70832
-
70833
- for (const key of Reflect .ownKeys (X3DScene .prototype))
70834
- Object .defineProperty (X3DScene .prototype, key, { enumerable: false });
70835
-
70836
- Object .defineProperty (X3DScene .prototype, "specificationVersion",
70837
- {
70838
- get: X3DScene .prototype .getSpecificationVersion,
70839
- enumerable: true,
70840
- });
70841
-
70842
- Object .defineProperty (X3DScene .prototype, "encoding",
70843
- {
70844
- get: X3DScene .prototype .getEncoding,
70845
- enumerable: true,
70846
- });
70847
-
70848
- Object .defineProperty (X3DScene .prototype, "profile",
70849
- {
70850
- get: X3DScene .prototype .getProfile,
70851
- enumerable: true,
70852
- });
70853
-
70854
- Object .defineProperty (X3DScene .prototype, "components",
70855
- {
70856
- get: X3DScene .prototype .getComponents,
70857
- enumerable: true,
70858
- });
70859
-
70860
- Object .defineProperty (X3DScene .prototype, "worldURL",
70861
- {
70862
- get: X3DScene .prototype .getWorldURL,
70863
- enumerable: true,
70864
- });
70865
-
70866
- Object .defineProperty (X3DScene .prototype, "units",
70867
- {
70868
- get: X3DScene .prototype .getUnits,
70869
- enumerable: true,
70870
- });
70871
-
70872
- Object .defineProperty (X3DScene .prototype, "rootNodes",
70873
- {
70874
- get: X3DScene .prototype .getRootNodes,
70875
- set: X3DScene .prototype .setRootNodes,
70876
- enumerable: true,
70877
- });
70878
-
70879
- const X3DScene_default_ = X3DScene;
70880
- ;
70881
-
70882
- x_ite_Namespace.set ("x_ite/Execution/X3DScene", X3DScene_default_);
70883
- /* harmony default export */ const Execution_X3DScene = (X3DScene_default_);
70884
- ;// CONCATENATED MODULE: ./src/x_ite/Execution/Scene.js
70885
- /*******************************************************************************
70886
- *
70887
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
70888
- *
70889
- * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
70890
- *
70891
- * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
70892
- *
70893
- * The copyright notice above does not evidence any actual of intended
70894
- * publication of such source code, and is an unpublished work by create3000.
70895
- * This material contains CONFIDENTIAL INFORMATION that is the property of
70896
- * create3000.
70897
- *
70898
- * No permission is granted to copy, distribute, or create derivative works from
70899
- * the contents of this software, in whole or in part, without the prior written
70900
- * permission of create3000.
70901
- *
70902
- * NON-MILITARY USE ONLY
70903
- *
70904
- * All create3000 software are effectively free software with a non-military use
70905
- * restriction. It is free. Well commented source is provided. You may reuse the
70906
- * source in any way you please with the exception anything that uses it must be
70907
- * marked to indicate is contains 'non-military use only' components.
70908
- *
70909
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
70910
- *
70911
- * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
70912
- *
70913
- * This file is part of the X_ITE Project.
70914
- *
70915
- * X_ITE is free software: you can redistribute it and/or modify it under the
70916
- * terms of the GNU General Public License version 3 only, as published by the
70917
- * Free Software Foundation.
70918
- *
70919
- * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
70920
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
70921
- * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
70922
- * details (a copy is included in the LICENSE file that accompanied this code).
70923
- *
70924
- * You should have received a copy of the GNU General Public License version 3
70925
- * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
70926
- * copy of the GPLv3 License.
70927
- *
70928
- * For Silvio, Joy and Adi.
70929
- *
70930
- ******************************************************************************/
70931
-
70932
-
70933
-
70934
-
70935
- const
70936
- Scene_browser = Symbol .for ("X_ITE.X3DEventObject.browser"),
70937
- _loadingObjects = Symbol ();
70938
-
70939
- function Scene (browser)
70940
- {
70941
- this [Scene_browser] = browser;
70942
-
70943
- Execution_X3DScene.call (this, this);
70944
-
70945
- this .addChildObjects ("initLoadCount", new x_ite_Fields.SFInt32 (), // Pre load count, must be zero before the scene can be passed to the requester.
70946
- "loadCount", new x_ite_Fields.SFInt32 ()); // Load count of all X3DUrlObjects.
70947
-
70948
- this [_loadingObjects] = new Set ();
70949
- }
70950
-
70951
- Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype),
70659
+ },
70952
70660
  {
70953
- constructor: Scene,
70954
70661
  setExecutionContext: function (value)
70955
70662
  {
70956
- if (! this .isMainScene ())
70663
+ if (!this .isMainScene ())
70957
70664
  {
70958
70665
  const scene = this .getScene ();
70959
70666
 
@@ -70961,9 +70668,9 @@ Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype)
70961
70668
  scene .removeLoadingObject (object);
70962
70669
  }
70963
70670
 
70964
- Execution_X3DScene.prototype.setExecutionContext.call (this, value);
70671
+ Execution_X3DExecutionContext.prototype.setExecutionContext.call (this, value);
70965
70672
 
70966
- if (! this .isMainScene ())
70673
+ if (!this .isMainScene ())
70967
70674
  {
70968
70675
  const scene = this .getScene ();
70969
70676
 
@@ -70999,7 +70706,7 @@ Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype)
70999
70706
  if (this === browser .getExecutionContext () || this .loader === browser .loader)
71000
70707
  browser .addLoadingObject (node);
71001
70708
 
71002
- if (! this .isMainScene ())
70709
+ if (!this .isMainScene ())
71003
70710
  scene .addLoadingObject (node);
71004
70711
  },
71005
70712
  removeLoadingObject: function (node)
@@ -71018,19 +70725,59 @@ Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype)
71018
70725
  if (this === browser .getExecutionContext () || this .loader === browser .loader)
71019
70726
  browser .removeLoadingObject (node);
71020
70727
 
71021
- if (! this .isMainScene ())
70728
+ if (!this .isMainScene ())
71022
70729
  scene .removeLoadingObject (node);
71023
70730
  },
71024
70731
  });
71025
70732
 
71026
- for (const key of Reflect .ownKeys (Scene .prototype))
71027
- Object .defineProperty (Scene .prototype, key, { enumerable: false });
70733
+ for (const key of Reflect .ownKeys (X3DScene .prototype))
70734
+ Object .defineProperty (X3DScene .prototype, key, { enumerable: false });
70735
+
70736
+ Object .defineProperties (X3DScene .prototype,
70737
+ {
70738
+ specificationVersion:
70739
+ {
70740
+ get: X3DScene .prototype .getSpecificationVersion,
70741
+ enumerable: true,
70742
+ },
70743
+ encoding:
70744
+ {
70745
+ get: X3DScene .prototype .getEncoding,
70746
+ enumerable: true,
70747
+ },
70748
+ profile:
70749
+ {
70750
+ get: X3DScene .prototype .getProfile,
70751
+ enumerable: true,
70752
+ },
70753
+ components:
70754
+ {
70755
+ get: X3DScene .prototype .getComponents,
70756
+ enumerable: true,
70757
+ },
70758
+ worldURL:
70759
+ {
70760
+ get: X3DScene .prototype .getWorldURL,
70761
+ enumerable: true,
70762
+ },
70763
+ units:
70764
+ {
70765
+ get: X3DScene .prototype .getUnits,
70766
+ enumerable: true,
70767
+ },
70768
+ rootNodes:
70769
+ {
70770
+ get: X3DScene .prototype .getRootNodes,
70771
+ set: X3DScene .prototype .setRootNodes,
70772
+ enumerable: true,
70773
+ },
70774
+ });
71028
70775
 
71029
- const Scene_default_ = Scene;
70776
+ const X3DScene_default_ = X3DScene;
71030
70777
  ;
71031
70778
 
71032
- x_ite_Namespace.set ("x_ite/Execution/Scene", Scene_default_);
71033
- /* harmony default export */ const Execution_Scene = (Scene_default_);
70779
+ x_ite_Namespace.set ("x_ite/Execution/X3DScene", X3DScene_default_);
70780
+ /* harmony default export */ const Execution_X3DScene = (X3DScene_default_);
71034
70781
  ;// CONCATENATED MODULE: ./src/standard/Utility/DataStorage.js
71035
70782
  /*******************************************************************************
71036
70783
  *
@@ -71169,7 +70916,7 @@ const DataStorage_default_ = DataStorage;
71169
70916
  x_ite_Namespace.set ("standard/Utility/DataStorage", DataStorage_default_);
71170
70917
  /* harmony default export */ const Utility_DataStorage = (DataStorage_default_);
71171
70918
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/X3DCoreContext.js
71172
- /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(917);
70919
+ /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(994);
71173
70920
  /*******************************************************************************
71174
70921
  *
71175
70922
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -71442,9 +71189,9 @@ X3DCoreContext .prototype =
71442
71189
  if (this [_privateScene])
71443
71190
  return this [_privateScene];
71444
71191
 
71445
- // Scene for default nodes.
71192
+ // X3DScene for default nodes.
71446
71193
 
71447
- this [_privateScene] = new Execution_Scene (this);
71194
+ this [_privateScene] = new Execution_X3DScene (this);
71448
71195
 
71449
71196
  this [_privateScene] .setPrivate (true);
71450
71197
  this [_privateScene] .setLive (true);
@@ -77294,8 +77041,8 @@ const OrientationChaser_default_ = OrientationChaser;
77294
77041
  x_ite_Namespace.set ("x_ite/Components/Followers/OrientationChaser", OrientationChaser_default_);
77295
77042
  /* harmony default export */ const Followers_OrientationChaser = (OrientationChaser_default_);
77296
77043
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/ExamineViewer.js
77297
- /* provided dependency */ var jquery_mousewheel = __webpack_require__(132);
77298
- /* provided dependency */ var ExamineViewer_$ = __webpack_require__(917);
77044
+ /* provided dependency */ var jquery_mousewheel = __webpack_require__(6);
77045
+ /* provided dependency */ var ExamineViewer_$ = __webpack_require__(994);
77299
77046
  /*******************************************************************************
77300
77047
  *
77301
77048
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -78159,8 +77906,8 @@ const ExamineViewer_default_ = ExamineViewer;
78159
77906
  x_ite_Namespace.set ("x_ite/Browser/Navigation/ExamineViewer", ExamineViewer_default_);
78160
77907
  /* harmony default export */ const Navigation_ExamineViewer = (ExamineViewer_default_);
78161
77908
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/X3DFlyViewer.js
78162
- /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(132);
78163
- /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(917);
77909
+ /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(6);
77910
+ /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(994);
78164
77911
  /*******************************************************************************
78165
77912
  *
78166
77913
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -79108,8 +78855,8 @@ const FlyViewer_default_ = FlyViewer;
79108
78855
  x_ite_Namespace.set ("x_ite/Browser/Navigation/FlyViewer", FlyViewer_default_);
79109
78856
  /* harmony default export */ const Navigation_FlyViewer = (FlyViewer_default_);
79110
78857
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/PlaneViewer.js
79111
- /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(132);
79112
- /* provided dependency */ var PlaneViewer_$ = __webpack_require__(917);
78858
+ /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(6);
78859
+ /* provided dependency */ var PlaneViewer_$ = __webpack_require__(994);
79113
78860
  /*******************************************************************************
79114
78861
  *
79115
78862
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -79418,8 +79165,8 @@ const NoneViewer_default_ = NoneViewer;
79418
79165
  x_ite_Namespace.set ("x_ite/Browser/Navigation/NoneViewer", NoneViewer_default_);
79419
79166
  /* harmony default export */ const Navigation_NoneViewer = (NoneViewer_default_);
79420
79167
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/LookAtViewer.js
79421
- /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(132);
79422
- /* provided dependency */ var LookAtViewer_$ = __webpack_require__(917);
79168
+ /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(6);
79169
+ /* provided dependency */ var LookAtViewer_$ = __webpack_require__(994);
79423
79170
  /*******************************************************************************
79424
79171
  *
79425
79172
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -81051,8 +80798,8 @@ const X3DPickingContext_default_ = X3DPickingContext;
81051
80798
  x_ite_Namespace.set ("x_ite/Browser/Picking/X3DPickingContext", X3DPickingContext_default_);
81052
80799
  /* harmony default export */ const Picking_X3DPickingContext = (X3DPickingContext_default_);
81053
80800
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js
81054
- /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(132);
81055
- /* provided dependency */ var PointingDevice_$ = __webpack_require__(917);
80801
+ /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(6);
80802
+ /* provided dependency */ var PointingDevice_$ = __webpack_require__(994);
81056
80803
  /*******************************************************************************
81057
80804
  *
81058
80805
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -82090,8 +81837,8 @@ const MultiSampleFrameBuffer_default_ = MultiSampleFrameBuffer;
82090
81837
  x_ite_Namespace.set ("x_ite/Rendering/MultiSampleFrameBuffer", MultiSampleFrameBuffer_default_);
82091
81838
  /* harmony default export */ const Rendering_MultiSampleFrameBuffer = (MultiSampleFrameBuffer_default_);
82092
81839
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Rendering/X3DRenderingContext.js
82093
- /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(917);
82094
- /* provided dependency */ var ResizeSensor = __webpack_require__(66);
81840
+ /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(994);
81841
+ /* provided dependency */ var ResizeSensor = __webpack_require__(822);
82095
81842
  /*******************************************************************************
82096
81843
  *
82097
81844
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -87984,7 +87731,7 @@ const X3DShaderNode_default_ = X3DShaderNode;
87984
87731
  x_ite_Namespace.set ("x_ite/Components/Shaders/X3DShaderNode", X3DShaderNode_default_);
87985
87732
  /* harmony default export */ const Shaders_X3DShaderNode = (X3DShaderNode_default_);
87986
87733
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js
87987
- /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(917);
87734
+ /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(994);
87988
87735
  /*******************************************************************************
87989
87736
  *
87990
87737
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -90761,7 +90508,7 @@ const ShaderCompiler_default_ = ShaderCompiler;
90761
90508
  x_ite_Namespace.set ("x_ite/Browser/Shaders/ShaderCompiler", ShaderCompiler_default_);
90762
90509
  /* harmony default export */ const Shaders_ShaderCompiler = (ShaderCompiler_default_);
90763
90510
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/ShaderPart.js
90764
- /* provided dependency */ var ShaderPart_$ = __webpack_require__(917);
90511
+ /* provided dependency */ var ShaderPart_$ = __webpack_require__(994);
90765
90512
  /*******************************************************************************
90766
90513
  *
90767
90514
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -94016,14 +93763,14 @@ function X3DBrowserContext (element)
94016
93763
  "displayEvents", new Fields_SFTime (),
94017
93764
  "finishedEvents", new Fields_SFTime ());
94018
93765
 
94019
- this [_changedTime] = 0;
94020
- this [_previousTime] = 0;
94021
- this [_renderCallback] = this [_traverse] .bind (this);
94022
- this [_systemTime] = new Time_StopWatch ();
94023
- this [_browserTime] = new Time_StopWatch ();
94024
- this [_cameraTime] = new Time_StopWatch ();
94025
- this [_collisionTime] = new Time_StopWatch ();
94026
- this [_displayTime] = new Time_StopWatch ();
93766
+ this [_changedTime] = 0;
93767
+ this [_previousTime] = 0;
93768
+ this [_renderCallback] = this [_traverse] .bind (this);
93769
+ this [_systemTime] = new Time_StopWatch ();
93770
+ this [_browserTime] = new Time_StopWatch ();
93771
+ this [_cameraTime] = new Time_StopWatch ();
93772
+ this [_collisionTime] = new Time_StopWatch ();
93773
+ this [_displayTime] = new Time_StopWatch ();
94027
93774
  };
94028
93775
 
94029
93776
  X3DBrowserContext .prototype = Object .assign (Object .create (Base_X3DBaseNode.prototype),
@@ -113173,7 +112920,7 @@ const X3DSoundSourceNode_default_ = X3DSoundSourceNode;
113173
112920
  x_ite_Namespace.set ("x_ite/Components/Sound/X3DSoundSourceNode", X3DSoundSourceNode_default_);
113174
112921
  /* harmony default export */ const Sound_X3DSoundSourceNode = (X3DSoundSourceNode_default_);
113175
112922
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Sound/AudioClip.js
113176
- /* provided dependency */ var AudioClip_$ = __webpack_require__(917);
112923
+ /* provided dependency */ var AudioClip_$ = __webpack_require__(994);
113177
112924
  /*******************************************************************************
113178
112925
  *
113179
112926
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -116072,8 +115819,8 @@ const GIFMedia_default_ = GifMedia;
116072
115819
  x_ite_Namespace.set ("x_ite/Browser/Texturing/GIFMedia", GIFMedia_default_);
116073
115820
  /* harmony default export */ const GIFMedia = (GIFMedia_default_);
116074
115821
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/MovieTexture.js
116075
- /* provided dependency */ var MovieTexture_$ = __webpack_require__(917);
116076
- /* provided dependency */ var SuperGif = __webpack_require__(168);
115822
+ /* provided dependency */ var MovieTexture_$ = __webpack_require__(994);
115823
+ /* provided dependency */ var SuperGif = __webpack_require__(361);
116077
115824
  /*******************************************************************************
116078
115825
  *
116079
115826
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117036,7 +116783,7 @@ const MultiTextureTransform_default_ = MultiTextureTransform;
117036
116783
  x_ite_Namespace.set ("x_ite/Components/Texturing/MultiTextureTransform", MultiTextureTransform_default_);
117037
116784
  /* harmony default export */ const Texturing_MultiTextureTransform = (MultiTextureTransform_default_);
117038
116785
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/PixelTexture.js
117039
- /* provided dependency */ var PixelTexture_$ = __webpack_require__(917);
116786
+ /* provided dependency */ var PixelTexture_$ = __webpack_require__(994);
117040
116787
  /*******************************************************************************
117041
116788
  *
117042
116789
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117747,7 +117494,7 @@ const Components_default_ = Components;
117747
117494
  x_ite_Namespace.set ("x_ite/Components", Components_default_);
117748
117495
  /* harmony default export */ const x_ite_Components = ((/* unused pure expression or super */ null && (Components_default_)));
117749
117496
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/DOMIntegration.js
117750
- /* provided dependency */ var DOMIntegration_$ = __webpack_require__(917);
117497
+ /* provided dependency */ var DOMIntegration_$ = __webpack_require__(994);
117751
117498
  /*******************************************************************************
117752
117499
  * MIT License
117753
117500
  *
@@ -118988,7 +118735,7 @@ const SupportedProfiles_default_ = SupportedProfiles;
118988
118735
  x_ite_Namespace.set ("x_ite/Configuration/SupportedProfiles", SupportedProfiles_default_);
118989
118736
  /* harmony default export */ const Configuration_SupportedProfiles = (SupportedProfiles_default_);
118990
118737
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/X3DBrowser.js
118991
- /* provided dependency */ var X3DBrowser_$ = __webpack_require__(917);
118738
+ /* provided dependency */ var X3DBrowser_$ = __webpack_require__(994);
118992
118739
  /*******************************************************************************
118993
118740
  *
118994
118741
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -119057,7 +118804,6 @@ x_ite_Namespace.set ("x_ite/Configuration/SupportedProfiles", SupportedProfiles_
119057
118804
 
119058
118805
 
119059
118806
 
119060
-
119061
118807
 
119062
118808
 
119063
118809
  const
@@ -119254,7 +119000,7 @@ X3DBrowser .prototype = Object .assign (Object .create (Browser_X3DBrowserContex
119254
119000
  },
119255
119001
  createScene: function (profile, component1 /*, ...*/)
119256
119002
  {
119257
- const scene = new Execution_Scene (this);
119003
+ const scene = new Execution_X3DScene (this);
119258
119004
 
119259
119005
  if (arguments .length)
119260
119006
  {
@@ -119840,75 +119586,69 @@ X3DBrowser .prototype = Object .assign (Object .create (Browser_X3DBrowserContex
119840
119586
  for (const key of Reflect .ownKeys (X3DBrowser .prototype))
119841
119587
  Object .defineProperty (X3DBrowser .prototype, key, { enumerable: false });
119842
119588
 
119843
- Object .defineProperty (X3DBrowser .prototype, "name",
119844
- {
119845
- get: X3DBrowser .prototype .getName,
119846
- enumerable: true,
119847
- });
119848
-
119849
- Object .defineProperty (X3DBrowser .prototype, "version",
119589
+ Object .defineProperties (X3DBrowser .prototype,
119850
119590
  {
119851
- get: X3DBrowser .prototype .getVersion,
119852
- enumerable: true,
119853
- });
119854
-
119855
- Object .defineProperty (X3DBrowser .prototype, "providerUrl",
119856
- {
119857
- get: X3DBrowser .prototype .getProviderUrl,
119858
- enumerable: true,
119859
- });
119860
-
119861
- Object .defineProperty (X3DBrowser .prototype, "currentFrameRate",
119862
- {
119863
- get: X3DBrowser .prototype .getCurrentFrameRate,
119864
- enumerable: true,
119865
- });
119866
-
119867
- Object .defineProperty (X3DBrowser .prototype, "currentSpeed",
119868
- {
119869
- get: X3DBrowser .prototype .getCurrentSpeed,
119870
- enumerable: true,
119871
- });
119872
-
119873
- Object .defineProperty (X3DBrowser .prototype, "description",
119874
- {
119875
- get: X3DBrowser .prototype .getDescription,
119876
- set: X3DBrowser .prototype .setDescription,
119877
- enumerable: true,
119878
- });
119879
-
119880
- Object .defineProperty (X3DBrowser .prototype, "baseURL",
119881
- {
119882
- get: X3DBrowser .prototype .getBaseURL,
119883
- set: X3DBrowser .prototype .setBaseURL,
119884
- enumerable: true,
119885
- });
119886
-
119887
- Object .defineProperty (X3DBrowser .prototype, "currentScene",
119888
- {
119889
- get: function ()
119591
+ name:
119890
119592
  {
119891
- return this .getScriptStack () .at (-1) .getExecutionContext ();
119593
+ get: X3DBrowser .prototype .getName,
119594
+ enumerable: true,
119892
119595
  },
119893
- enumerable: true,
119894
- });
119895
-
119896
- Object .defineProperty (X3DBrowser .prototype, "supportedProfiles",
119897
- {
119898
- get: function ()
119596
+ version:
119899
119597
  {
119900
- return Configuration_SupportedProfiles;
119598
+ get: X3DBrowser .prototype .getVersion,
119599
+ enumerable: true,
119901
119600
  },
119902
- enumerable: true,
119903
- });
119904
-
119905
- Object .defineProperty (X3DBrowser .prototype, "supportedComponents",
119906
- {
119907
- get: function ()
119601
+ providerUrl:
119908
119602
  {
119909
- return Configuration_SupportedComponents;
119603
+ get: X3DBrowser .prototype .getProviderUrl,
119604
+ enumerable: true,
119605
+ },
119606
+ currentFrameRate:
119607
+ {
119608
+ get: X3DBrowser .prototype .getCurrentFrameRate,
119609
+ enumerable: true,
119610
+ },
119611
+ currentSpeed:
119612
+ {
119613
+ get: X3DBrowser .prototype .getCurrentSpeed,
119614
+ enumerable: true,
119615
+ },
119616
+ description:
119617
+ {
119618
+ get: X3DBrowser .prototype .getDescription,
119619
+ set: X3DBrowser .prototype .setDescription,
119620
+ enumerable: true,
119621
+ },
119622
+ baseURL:
119623
+ {
119624
+ get: X3DBrowser .prototype .getBaseURL,
119625
+ set: X3DBrowser .prototype .setBaseURL,
119626
+ enumerable: true,
119627
+ },
119628
+ currentScene:
119629
+ {
119630
+ get: function ()
119631
+ {
119632
+ return this .getScriptStack () .at (-1) .getExecutionContext ();
119633
+ },
119634
+ enumerable: true,
119635
+ },
119636
+ supportedProfiles:
119637
+ {
119638
+ get: function ()
119639
+ {
119640
+ return Configuration_SupportedProfiles;
119641
+ },
119642
+ enumerable: true,
119643
+ },
119644
+ supportedComponents:
119645
+ {
119646
+ get: function ()
119647
+ {
119648
+ return Configuration_SupportedComponents;
119649
+ },
119650
+ enumerable: true,
119910
119651
  },
119911
- enumerable: true,
119912
119652
  });
119913
119653
 
119914
119654
  const X3DBrowser_default_ = X3DBrowser;
@@ -119917,7 +119657,7 @@ const X3DBrowser_default_ = X3DBrowser;
119917
119657
  x_ite_Namespace.set ("x_ite/Browser/X3DBrowser", X3DBrowser_default_);
119918
119658
  /* harmony default export */ const Browser_X3DBrowser = (X3DBrowser_default_);
119919
119659
  ;// CONCATENATED MODULE: ./src/x_ite/Fallback.js
119920
- /* provided dependency */ var Fallback_$ = __webpack_require__(917);
119660
+ /* provided dependency */ var Fallback_$ = __webpack_require__(994);
119921
119661
  /*******************************************************************************
119922
119662
  *
119923
119663
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120096,8 +119836,8 @@ const MicroTime_default_ = undefined;
120096
119836
  x_ite_Namespace.set ("standard/Time/MicroTime", MicroTime_default_);
120097
119837
  /* harmony default export */ const MicroTime = ((/* unused pure expression or super */ null && (MicroTime_default_)));
120098
119838
  ;// CONCATENATED MODULE: ./src/lib/jquery.js
120099
- /* provided dependency */ var jquery_$ = __webpack_require__(917);
120100
- /* provided dependency */ var pako = __webpack_require__(480);
119839
+ /* provided dependency */ var jquery_$ = __webpack_require__(994);
119840
+ /* provided dependency */ var pako = __webpack_require__(444);
120101
119841
  jquery_$.decodeText = function (input)
120102
119842
  {
120103
119843
  if (typeof input === "string")
@@ -120129,14 +119869,14 @@ const jquery_default_ = jquery_$;
120129
119869
  x_ite_Namespace.set ("lib/jquery", jquery_default_);
120130
119870
  /* harmony default export */ const jquery = ((/* unused pure expression or super */ null && (jquery_default_)));
120131
119871
  ;// CONCATENATED MODULE: ./src/lib/libtess.js
120132
- /* provided dependency */ var libtess_libtess = __webpack_require__(836);
119872
+ /* provided dependency */ var libtess_libtess = __webpack_require__(870);
120133
119873
  const libtess_default_ = libtess_libtess;
120134
119874
  ;
120135
119875
 
120136
119876
  x_ite_Namespace.set ("lib/libtess", libtess_default_);
120137
119877
  /* harmony default export */ const lib_libtess = ((/* unused pure expression or super */ null && (libtess_default_)));
120138
119878
  ;// CONCATENATED MODULE: ./src/x_ite/X3D.js
120139
- /* provided dependency */ var X3D_$ = __webpack_require__(917);
119879
+ /* provided dependency */ var X3D_$ = __webpack_require__(994);
120140
119880
  /*******************************************************************************
120141
119881
  *
120142
119882
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120648,7 +120388,7 @@ x_ite_Namespace.set ("shim", shim_default_);
120648
120388
 
120649
120389
  // Assign X3D to global namespace.
120650
120390
 
120651
- window [Symbol .for ("X_ITE.X3D-8.7.4")] = x_ite_X3D;
120391
+ window [Symbol .for ("X_ITE.X3D-8.7.5")] = x_ite_X3D;
120652
120392
 
120653
120393
  customElements .define ("x3d-canvas", x_ite_X3DCanvasElement);
120654
120394