x_ite 8.7.5 → 8.7.6

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 (240) hide show
  1. package/dist/assets/components/Annotation.js +13 -13
  2. package/dist/assets/components/Annotation.min.js +1 -1
  3. package/dist/assets/components/CADGeometry.js +13 -13
  4. package/dist/assets/components/CADGeometry.min.js +1 -1
  5. package/dist/assets/components/CubeMapTexturing.js +25 -25
  6. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  7. package/dist/assets/components/DIS.js +13 -13
  8. package/dist/assets/components/DIS.min.js +1 -1
  9. package/dist/assets/components/EventUtilities.js +9 -9
  10. package/dist/assets/components/EventUtilities.min.js +1 -1
  11. package/dist/assets/components/Geometry2D.js +21 -23
  12. package/dist/assets/components/Geometry2D.min.js +1 -1
  13. package/dist/assets/components/Geospatial.js +35 -36
  14. package/dist/assets/components/Geospatial.min.js +1 -1
  15. package/dist/assets/components/HAnim.js +18 -18
  16. package/dist/assets/components/HAnim.min.js +1 -1
  17. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  18. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  19. package/dist/assets/components/Layout.js +28 -28
  20. package/dist/assets/components/Layout.min.js +1 -1
  21. package/dist/assets/components/NURBS.js +24 -24
  22. package/dist/assets/components/NURBS.min.js +1 -1
  23. package/dist/assets/components/ParticleSystems.js +22 -22
  24. package/dist/assets/components/ParticleSystems.min.js +1 -1
  25. package/dist/assets/components/Picking.js +20 -20
  26. package/dist/assets/components/Picking.min.js +1 -1
  27. package/dist/assets/components/RigidBodyPhysics.js +25 -25
  28. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  29. package/dist/assets/components/Scripting.js +28 -28
  30. package/dist/assets/components/Scripting.min.js +1 -1
  31. package/dist/assets/components/Text.js +26 -27
  32. package/dist/assets/components/Text.min.js +1 -1
  33. package/dist/assets/components/TextureProjector.js +15 -15
  34. package/dist/assets/components/TextureProjector.min.js +1 -1
  35. package/dist/assets/components/Texturing3D.js +30 -30
  36. package/dist/assets/components/Texturing3D.min.js +1 -1
  37. package/dist/assets/components/VolumeRendering.js +19 -19
  38. package/dist/assets/components/VolumeRendering.min.js +1 -1
  39. package/dist/assets/components/X_ITE.js +9 -9
  40. package/dist/assets/components/X_ITE.min.js +1 -1
  41. package/dist/x_ite.css +1 -1
  42. package/dist/x_ite.js +348 -587
  43. package/dist/x_ite.min.js +1 -1
  44. package/dist/x_ite.zip +0 -0
  45. package/docs/_config.yml +1 -1
  46. package/docs/_includes/scripts.html +0 -1
  47. package/docs/_posts/components/CADGeometry/QuadSet.md +1 -1
  48. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +1 -1
  49. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +1 -1
  50. package/docs/_posts/components/EnvironmentalEffects/Background.md +1 -1
  51. package/docs/_posts/components/EnvironmentalEffects/Fog.md +1 -1
  52. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +1 -1
  53. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +1 -1
  54. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +1 -1
  55. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +1 -1
  56. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +1 -1
  57. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +1 -1
  58. package/docs/_posts/components/Followers/ColorChaser.md +1 -1
  59. package/docs/_posts/components/Followers/ColorDamper.md +1 -1
  60. package/docs/_posts/components/Followers/CoordinateChaser.md +1 -1
  61. package/docs/_posts/components/Followers/ScalarChaser.md +1 -1
  62. package/docs/_posts/components/Geometry2D/Arc2D.md +1 -1
  63. package/docs/_posts/components/Geometry2D/ArcClose2D.md +1 -1
  64. package/docs/_posts/components/Geometry2D/Circle2D.md +1 -1
  65. package/docs/_posts/components/Geometry2D/Disk2D.md +1 -1
  66. package/docs/_posts/components/Geometry2D/Polyline2D.md +1 -1
  67. package/docs/_posts/components/Geometry2D/Polypoint2D.md +1 -1
  68. package/docs/_posts/components/Geometry2D/Rectangle2D.md +1 -1
  69. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +1 -1
  70. package/docs/_posts/components/Geometry3D/Box.md +1 -1
  71. package/docs/_posts/components/Geometry3D/Cone.md +1 -1
  72. package/docs/_posts/components/Geometry3D/Cylinder.md +1 -1
  73. package/docs/_posts/components/Geometry3D/ElevationGrid.md +1 -1
  74. package/docs/_posts/components/Geometry3D/Extrusion.md +1 -1
  75. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +1 -1
  76. package/docs/_posts/components/Geometry3D/Sphere.md +1 -1
  77. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +1 -1
  78. package/docs/_posts/components/Geospatial/GeoLOD.md +1 -1
  79. package/docs/_posts/components/Geospatial/GeoViewpoint.md +1 -1
  80. package/docs/_posts/components/Grouping/Group.md +1 -1
  81. package/docs/_posts/components/Grouping/Switch.md +1 -1
  82. package/docs/_posts/components/Grouping/Transform.md +1 -1
  83. package/docs/_posts/components/HAnim/HAnimHumanoid.md +1 -1
  84. package/docs/_posts/components/Interpolation/ColorInterpolator.md +1 -1
  85. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +1 -1
  86. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +1 -1
  87. package/docs/_posts/components/Interpolation/PositionInterpolator.md +1 -1
  88. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +1 -1
  89. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +1 -1
  90. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +1 -1
  91. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +1 -1
  92. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +1 -1
  93. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +1 -1
  94. package/docs/_posts/components/Layering/LayerSet.md +1 -1
  95. package/docs/_posts/components/Layering/Viewport.md +1 -1
  96. package/docs/_posts/components/Lighting/DirectionalLight.md +1 -1
  97. package/docs/_posts/components/Lighting/PointLight.md +1 -1
  98. package/docs/_posts/components/Lighting/SpotLight.md +1 -1
  99. package/docs/_posts/components/NURBS/NurbsCurve.md +1 -1
  100. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +1 -1
  101. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +1 -1
  102. package/docs/_posts/components/Navigation/Billboard.md +1 -1
  103. package/docs/_posts/components/Navigation/Collision.md +1 -1
  104. package/docs/_posts/components/Navigation/NavigationInfo.md +1 -1
  105. package/docs/_posts/components/Navigation/OrthoViewpoint.md +1 -1
  106. package/docs/_posts/components/Navigation/Viewpoint.md +1 -1
  107. package/docs/_posts/components/Networking/Anchor.md +1 -1
  108. package/docs/_posts/components/Networking/Inline.md +1 -1
  109. package/docs/_posts/components/Networking/LoadSensor.md +1 -1
  110. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +1 -1
  111. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +1 -1
  112. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +1 -1
  113. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +1 -1
  114. package/docs/_posts/components/ParticleSystems/PointEmitter.md +1 -1
  115. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +1 -1
  116. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +1 -1
  117. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +1 -1
  118. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +1 -1
  119. package/docs/_posts/components/Picking/LinePickSensor.md +1 -1
  120. package/docs/_posts/components/Picking/PointPickSensor.md +1 -1
  121. package/docs/_posts/components/Picking/PrimitivePickSensor.md +1 -1
  122. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +1 -1
  123. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +1 -1
  124. package/docs/_posts/components/Rendering/ClipPlane.md +1 -1
  125. package/docs/_posts/components/Rendering/Color.md +1 -1
  126. package/docs/_posts/components/Rendering/ColorRGBA.md +1 -1
  127. package/docs/_posts/components/Rendering/Coordinate.md +1 -1
  128. package/docs/_posts/components/Rendering/IndexedLineSet.md +1 -1
  129. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +1 -1
  130. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +1 -1
  131. package/docs/_posts/components/Rendering/LineSet.md +1 -1
  132. package/docs/_posts/components/Rendering/PointSet.md +1 -1
  133. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +1 -1
  134. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +1 -1
  135. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +1 -1
  136. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +1 -1
  137. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +1 -1
  138. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +1 -1
  139. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +1 -1
  140. package/docs/_posts/components/Shaders/ComposedShader.md +1 -1
  141. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +1 -1
  142. package/docs/_posts/components/Shaders/ShaderPart.md +1 -1
  143. package/docs/_posts/components/Shape/Appearance.md +1 -1
  144. package/docs/_posts/components/Shape/FillProperties.md +1 -1
  145. package/docs/_posts/components/Shape/LineProperties.md +1 -1
  146. package/docs/_posts/components/Shape/Material.md +1 -1
  147. package/docs/_posts/components/Shape/TwoSidedMaterial.md +1 -1
  148. package/docs/_posts/components/Sound/AudioClip.md +1 -1
  149. package/docs/_posts/components/Text/FontStyle.md +1 -1
  150. package/docs/_posts/components/Text/Text.md +1 -1
  151. package/docs/_posts/components/Texturing/ImageTexture.md +1 -1
  152. package/docs/_posts/components/Texturing/MovieTexture.md +1 -1
  153. package/docs/_posts/components/Texturing/MultiTexture.md +1 -1
  154. package/docs/_posts/components/Texturing/PixelTexture.md +1 -1
  155. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +1 -1
  156. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +1 -1
  157. package/docs/_posts/components/Time/TimeSensor.md +1 -1
  158. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +1 -1
  159. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +1 -1
  160. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +1 -1
  161. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +1 -1
  162. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +1 -1
  163. package/docs/_posts/components/VolumeRendering/VolumeData.md +1 -1
  164. package/docs/_posts/components/X_ITE/BlendMode.md +1 -1
  165. package/docs/_posts/custom-shaders.md +1 -1
  166. package/docs/_posts/getting-started.md +7 -2
  167. package/docs/_posts/reference/browser-services.md +6 -0
  168. package/docs/_posts/tutorials/adding-backgrounds.md +2 -2
  169. package/docs/_posts/tutorials/adding-sound.md +1 -1
  170. package/docs/_posts/tutorials/building-a-x3d-world.md +1 -1
  171. package/docs/_posts/tutorials/building-elevation-grids.md +1 -1
  172. package/docs/_posts/tutorials/building-primitive-shapes.md +2 -2
  173. package/docs/_posts/tutorials/controlling-appearance-with-materials.md +1 -1
  174. package/docs/_posts/tutorials/controlling-detail.md +1 -1
  175. package/docs/_posts/tutorials/hello-world.md +1 -1
  176. package/docs/_posts/tutorials/naming-nodes.md +1 -1
  177. package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +1 -1
  178. package/package.json +3 -3
  179. package/src/lib/jquery.js +13 -0
  180. package/src/standard/Geospatial/UniversalTransverseMercator.js +0 -1
  181. package/src/standard/Math/Geometry/Box2.js +18 -5
  182. package/src/standard/Math/Geometry/Box3.js +18 -5
  183. package/src/standard/Math/Geometry/Cylinder3.js +1 -1
  184. package/src/standard/Math/Geometry/Line2.js +1 -1
  185. package/src/standard/Math/Geometry/Line3.js +1 -1
  186. package/src/standard/Math/Geometry/Plane3.js +1 -1
  187. package/src/standard/Math/Geometry/Sphere3.js +14 -14
  188. package/src/standard/Math/Numbers/Complex.js +0 -4
  189. package/src/standard/Math/Numbers/Quaternion.js +27 -73
  190. package/src/standard/Math/Numbers/Rotation4.js +0 -29
  191. package/src/standard/Math/Numbers/Vector2.js +0 -64
  192. package/src/standard/Math/Numbers/Vector3.js +0 -72
  193. package/src/standard/Math/Numbers/Vector4.js +0 -64
  194. package/src/x_ite/Base/X3DObject.js +9 -32
  195. package/src/x_ite/Base/X3DObjectArrayField.js +35 -64
  196. package/src/x_ite/Browser/Core/BrowserOptions.js +37 -0
  197. package/src/x_ite/Browser/Core/X3DCoreContext.js +18 -0
  198. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolatorTemplate.js +4 -4
  199. package/src/x_ite/Browser/Interpolation/SquatInterpolator.js +12 -7
  200. package/src/x_ite/Browser/Navigation/ExamineViewer.js +9 -9
  201. package/src/x_ite/Browser/Navigation/LookAtViewer.js +3 -3
  202. package/src/x_ite/Browser/Navigation/WalkViewer.js +2 -2
  203. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +7 -7
  204. package/src/x_ite/Browser/Picking/VolumePicker.js +1 -1
  205. package/src/x_ite/Browser/Shaders/X3DShadersContext.js +0 -1
  206. package/src/x_ite/Browser/Text/X3DTextGeometry.js +2 -3
  207. package/src/x_ite/Browser/VERSION.js +1 -1
  208. package/src/x_ite/Browser/X3DBrowser.js +4 -4
  209. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +1 -1
  210. package/src/x_ite/Components/EnvironmentalSensor/TransformSensor.js +1 -1
  211. package/src/x_ite/Components/Followers/OrientationChaser.js +3 -3
  212. package/src/x_ite/Components/Followers/OrientationDamper.js +3 -3
  213. package/src/x_ite/Components/Geometry2D/Rectangle2D.js +2 -3
  214. package/src/x_ite/Components/Geometry3D/Box.js +3 -10
  215. package/src/x_ite/Components/Geometry3D/Cone.js +1 -1
  216. package/src/x_ite/Components/Geometry3D/Cylinder.js +2 -2
  217. package/src/x_ite/Components/Geometry3D/Extrusion.js +3 -3
  218. package/src/x_ite/Components/Geospatial/GeoViewpoint.js +2 -2
  219. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +2 -2
  220. package/src/x_ite/Components/Layout/Layout.js +1 -1
  221. package/src/x_ite/Components/Navigation/Billboard.js +1 -1
  222. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +10 -10
  223. package/src/x_ite/Components/Picking/PointPickSensor.js +1 -1
  224. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +7 -7
  225. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +1 -1
  226. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +9 -9
  227. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +1 -1
  228. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +2 -2
  229. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +1 -1
  230. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +1 -1
  231. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +3 -3
  232. package/src/x_ite/Components/TextureProjector/X3DTextureProjectorNode.js +1 -1
  233. package/src/x_ite/Fields/ArrayFields.js +1 -1
  234. package/src/x_ite/Fields/SFNodeCache.js +2 -2
  235. package/src/x_ite/Fields/SFVec3.js +1 -1
  236. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +3 -3
  237. package/src/x_ite/Parser/SVGParser.js +1 -1
  238. package/src/x_ite/Rendering/X3DRenderObject.js +3 -3
  239. package/src/x_ite/X3DCanvasElement.js +1 -0
  240. package/docs/assets/js/autoupdate.js +0 -25
package/dist/x_ite.js CHANGED
@@ -1,4 +1,4 @@
1
- /* X_ITE v8.7.5 */(function webpackUniversalModuleDefinition(root, factory) {
1
+ /* X_ITE v8.7.6 */(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
- /***/ 822:
14
+ /***/ 681:
15
15
  /***/ (function(module, exports, __webpack_require__) {
16
16
 
17
17
  "use strict";
18
- /* provided dependency */ var jQuery = __webpack_require__(994);
18
+ /* provided dependency */ var jQuery = __webpack_require__(756);
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
- /***/ 53:
390
+ /***/ 554:
391
391
  /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
392
392
 
393
- /* provided dependency */ var jQuery = __webpack_require__(994);
393
+ /* provided dependency */ var jQuery = __webpack_require__(756);
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
- /***/ 6:
589
+ /***/ 596:
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__(994)], __WEBPACK_AMD_DEFINE_FACTORY__ = (factory),
603
+ !(__WEBPACK_AMD_DEFINE_ARRAY__ = [__webpack_require__(756)], __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
- /***/ 994:
814
+ /***/ 756:
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
- /***/ 870:
11526
+ /***/ 405:
11527
11527
  /***/ ((module) => {
11528
11528
 
11529
11529
  /**
@@ -16302,7 +16302,7 @@ if (true) {
16302
16302
 
16303
16303
  /***/ }),
16304
16304
 
16305
- /***/ 444:
16305
+ /***/ 879:
16306
16306
  /***/ (function(__unused_webpack_module, exports) {
16307
16307
 
16308
16308
 
@@ -19547,7 +19547,7 @@ if (true) {
19547
19547
 
19548
19548
  /***/ }),
19549
19549
 
19550
- /***/ 361:
19550
+ /***/ 857:
19551
19551
  /***/ (function(module, exports) {
19552
19552
 
19553
19553
  var __WEBPACK_AMD_DEFINE_FACTORY__, __WEBPACK_AMD_DEFINE_ARRAY__, __WEBPACK_AMD_DEFINE_RESULT__;/*
@@ -21919,16 +21919,9 @@ X3DObject .prototype =
21919
21919
  {
21920
21920
  return this [_name];
21921
21921
  },
21922
- getInterestId: function (callbackName, object)
21923
- {
21924
- if (typeof callbackName === "symbol")
21925
- return X3DObject .getId (object) + ".Symbol(" + SymbolId (callbackName) + ")";
21926
-
21927
- return X3DObject .getId (object) + "." + String (callbackName);
21928
- },
21929
21922
  hasInterest: function (callbackName, object)
21930
21923
  {
21931
- return this [_interests] .has (this .getInterestId (callbackName, object));
21924
+ return this [_interests] .has (X3DObject .getInterestId (callbackName, object));
21932
21925
  },
21933
21926
  addInterest: function (callbackName, object, ... args)
21934
21927
  {
@@ -21939,14 +21932,14 @@ X3DObject .prototype =
21939
21932
  }
21940
21933
 
21941
21934
  const
21942
- interestId = this .getInterestId (callbackName, object),
21935
+ interestId = X3DObject .getInterestId (callbackName, object),
21943
21936
  callback = object [callbackName];
21944
21937
 
21945
21938
  this [_interests] .set (interestId, callback .bind (object, ... args, this));
21946
21939
  },
21947
21940
  removeInterest: function (callbackName, object)
21948
21941
  {
21949
- this [_interests] .delete (this .getInterestId (callbackName, object));
21942
+ this [_interests] .delete (X3DObject .getInterestId (callbackName, object));
21950
21943
  },
21951
21944
  getInterests: function ()
21952
21945
  {
@@ -22021,7 +22014,7 @@ X3DObject .prototype =
22021
22014
  },
22022
22015
  toStream: function (generator)
22023
22016
  {
22024
- generator .string = "[object " + this .getTypeName () + "]";
22017
+ generator .string = `[object ${this .getTypeName ()}]`;
22025
22018
  },
22026
22019
  dispose: function ()
22027
22020
  {
@@ -22044,7 +22037,7 @@ Object .assign (X3DObject,
22044
22037
  {
22045
22038
  const map = new WeakMap ();
22046
22039
 
22047
- let counter = 0;
22040
+ let counter = 0; // In the future we can use a bigint here (0n).
22048
22041
 
22049
22042
  return function (object)
22050
22043
  {
@@ -22058,27 +22051,11 @@ Object .assign (X3DObject,
22058
22051
  return counter;
22059
22052
  };
22060
22053
  })(),
22061
- });
22062
-
22063
- // In the future we can use getId, because WeakMap will accept Symbols as key.
22064
- const SymbolId = (function ()
22065
- {
22066
- const map = new Map ();
22067
-
22068
- let counter = 0;
22069
-
22070
- return function (object)
22054
+ getInterestId: function (callbackName, object)
22071
22055
  {
22072
- const id = map .get (object);
22073
-
22074
- if (id !== undefined)
22075
- return id;
22076
-
22077
- map .set (object, ++ counter);
22078
-
22079
- return counter;
22080
- };
22081
- })();
22056
+ return `${this .getId (object)}.${this .getId (object [callbackName])}`;
22057
+ },
22058
+ });
22082
22059
 
22083
22060
  const X3DObject_default_ = X3DObject;
22084
22061
  ;
@@ -25062,7 +25039,7 @@ x_ite_Namespace.set ("x_ite/Fields/SFMatrixPrototypeTemplate", SFMatrixPrototype
25062
25039
 
25063
25040
 
25064
25041
 
25065
- function SFVecPrototypeTemplate (Constructor, TypeName, Type, ValueType, double)
25042
+ function SFVecPrototypeTemplate (Constructor, TypeName, Type, Vector, double)
25066
25043
  {
25067
25044
  const _formatter = double ? "DoubleFormat" : "FloatFormat";
25068
25045
 
@@ -25091,7 +25068,7 @@ function SFVecPrototypeTemplate (Constructor, TypeName, Type, ValueType, double)
25091
25068
  },
25092
25069
  isDefaultValue: function ()
25093
25070
  {
25094
- return this .getValue () .equals (ValueType .Zero);
25071
+ return this .getValue () .equals (Vector .Zero);
25095
25072
  },
25096
25073
  set: function (value)
25097
25074
  {
@@ -25455,70 +25432,6 @@ Object .assign (Vector2,
25455
25432
  One: new Vector2 (1, 1),
25456
25433
  xAxis: new Vector2 (1, 0),
25457
25434
  yAxis: new Vector2 (0, 1),
25458
- negate: function (vector)
25459
- {
25460
- return vector .copy () .negate ();
25461
- },
25462
- inverse: function (vector)
25463
- {
25464
- return vector .copy () .inverse ();
25465
- },
25466
- add: function (lhs, rhs)
25467
- {
25468
- return lhs .copy () .add (rhs);
25469
- },
25470
- subtract: function (lhs, rhs)
25471
- {
25472
- return lhs .copy () .subtract (rhs);
25473
- },
25474
- multiply: function (lhs, rhs)
25475
- {
25476
- return lhs .copy () .multiply (rhs);
25477
- },
25478
- multVec: function (lhs, rhs)
25479
- {
25480
- return lhs .copy () .multVec (rhs);
25481
- },
25482
- divide: function (lhs, rhs)
25483
- {
25484
- return lhs .copy () .divide (rhs);
25485
- },
25486
- divVec: function (lhs, rhs)
25487
- {
25488
- return lhs .copy () .divVec (rhs);
25489
- },
25490
- normalize: function (vector)
25491
- {
25492
- return vector .copy () .normalize ();
25493
- },
25494
- dot: function (lhs, rhs)
25495
- {
25496
- return lhs .dot (rhs);
25497
- },
25498
- magnitude: function (vector)
25499
- {
25500
- return vector .magnitude ();
25501
- },
25502
- distance: function (lhs, rhs)
25503
- {
25504
- return lhs .distance (rhs);
25505
- },
25506
- lerp: function (source, destination, t)
25507
- {
25508
- return source .copy () .lerp (destination, t);
25509
- },
25510
- abs: function (vector)
25511
- {
25512
- return vector .copy () .abs ();
25513
- },
25514
- min: function (lhs, rhs)
25515
- {
25516
- return this .prototype .min .apply (lhs .copy (), arguments);
25517
- },
25518
- max: function (lhs, rhs)
25519
- {
25520
- return this .prototype .max .apply (lhs .copy (), arguments);
25521
- },
25522
25435
  });
25523
25436
 
25524
25437
  const Vector2_default_ = Vector2;
@@ -25939,78 +25852,6 @@ Object .assign (Vector3,
25939
25852
  xAxis: new Vector3 (1, 0, 0),
25940
25853
  yAxis: new Vector3 (0, 1, 0),
25941
25854
  zAxis: new Vector3 (0, 0, 1),
25942
- negate: function (vector)
25943
- {
25944
- return vector .copy () .negate ();
25945
- },
25946
- inverse: function (vector)
25947
- {
25948
- return vector .copy () .inverse ();
25949
- },
25950
- add: function (lhs, rhs)
25951
- {
25952
- return lhs .copy () .add (rhs);
25953
- },
25954
- subtract: function (lhs, rhs)
25955
- {
25956
- return lhs .copy () .subtract (rhs);
25957
- },
25958
- multiply: function (lhs, rhs)
25959
- {
25960
- return lhs .copy () .multiply (rhs);
25961
- },
25962
- multVec: function (lhs, rhs)
25963
- {
25964
- return lhs .copy () .multVec (rhs);
25965
- },
25966
- divide: function (lhs, rhs)
25967
- {
25968
- return lhs .copy () .divide (rhs);
25969
- },
25970
- divVec: function (lhs, rhs)
25971
- {
25972
- return lhs .copy () .divVec (rhs);
25973
- },
25974
- cross: function (lhs, rhs)
25975
- {
25976
- return lhs .copy () .cross (rhs);
25977
- },
25978
- normalize: function (vector)
25979
- {
25980
- return vector .copy () .normalize ();
25981
- },
25982
- dot: function (lhs, rhs)
25983
- {
25984
- return lhs .dot (rhs);
25985
- },
25986
- magnitude: function (vector)
25987
- {
25988
- return vector .magnitude ();
25989
- },
25990
- distance: function (lhs, rhs)
25991
- {
25992
- return lhs .distance (rhs);
25993
- },
25994
- lerp: function (source, destination, t)
25995
- {
25996
- return source .copy () .lerp (destination, t);
25997
- },
25998
- slerp: function (source, destination, t)
25999
- {
26000
- return source .copy () .slerp (destination, t);
26001
- },
26002
- abs: function (vector)
26003
- {
26004
- return vector .copy () .abs ();
26005
- },
26006
- min: function (lhs, rhs)
26007
- {
26008
- return this .prototype .min .apply (lhs .copy (), arguments);
26009
- },
26010
- max: function (lhs, rhs)
26011
- {
26012
- return this .prototype .max .apply (lhs .copy (), arguments);
26013
- },
26014
25855
  });
26015
25856
 
26016
25857
  const Vector3_default_ = Vector3;
@@ -27386,7 +27227,7 @@ function SFVec3Template (TypeName, Type, double)
27386
27227
  {
27387
27228
  cross: function (vector)
27388
27229
  {
27389
- return new (this .constructor) (Numbers_Vector3.cross (this .getValue (), vector .getValue ()));
27230
+ return new (this .constructor) (this .getValue () .copy () .cross (vector .getValue ()));
27390
27231
  },
27391
27232
  });
27392
27233
 
@@ -27758,70 +27599,6 @@ Object .assign (Vector4,
27758
27599
  yAxis: new Vector4 (0, 1, 0, 0),
27759
27600
  zAxis: new Vector4 (0, 0, 1, 0),
27760
27601
  wAxis: new Vector4 (0, 0, 0, 1),
27761
- negate: function (vector)
27762
- {
27763
- return vector .copy () .negate ();
27764
- },
27765
- inverse: function (vector)
27766
- {
27767
- return vector .copy () .inverse ();
27768
- },
27769
- add: function (lhs, rhs)
27770
- {
27771
- return lhs .copy () .add (rhs);
27772
- },
27773
- subtract: function (lhs, rhs)
27774
- {
27775
- return lhs .copy () .subtract (rhs);
27776
- },
27777
- multiply: function (lhs, rhs)
27778
- {
27779
- return lhs .copy () .multiply (rhs);
27780
- },
27781
- multVec: function (lhs, rhs)
27782
- {
27783
- return lhs .copy () .multVec (rhs);
27784
- },
27785
- divide: function (lhs, rhs)
27786
- {
27787
- return lhs .copy () .divide (rhs);
27788
- },
27789
- divVec: function (lhs, rhs)
27790
- {
27791
- return lhs .copy () .divVec (rhs);
27792
- },
27793
- normalize: function (vector)
27794
- {
27795
- return vector .copy () .normalize ();
27796
- },
27797
- dot: function (lhs, rhs)
27798
- {
27799
- return lhs .dot (rhs);
27800
- },
27801
- magnitude: function (vector)
27802
- {
27803
- return vector .magnitude ();
27804
- },
27805
- distance: function (lhs, rhs)
27806
- {
27807
- return lhs .distance (rhs);
27808
- },
27809
- lerp: function (source, destination, t)
27810
- {
27811
- return source .copy () .lerp (destination, t);
27812
- },
27813
- abs: function (vector)
27814
- {
27815
- return vector .copy () .abs ();
27816
- },
27817
- min: function (lhs, rhs)
27818
- {
27819
- return this .prototype .min .apply (lhs .copy (), arguments);
27820
- },
27821
- max: function (lhs, rhs)
27822
- {
27823
- return this .prototype .max .apply (lhs .copy (), arguments);
27824
- },
27825
27602
  });
27826
27603
 
27827
27604
  const Vector4_default_ = Vector4;
@@ -28276,80 +28053,40 @@ Object .defineProperties (Quaternion .prototype,
28276
28053
 
28277
28054
  Object .assign (Quaternion,
28278
28055
  {
28279
- negate: function (quat)
28280
- {
28281
- return quat .copy () .negate ();
28282
- },
28283
- inverse: function (quat)
28284
- {
28285
- return quat .copy () .inverse ();
28286
- },
28287
- add: function (lhs, rhs)
28288
- {
28289
- return lhs .copy () .add (rhs);
28290
- },
28291
- subtract: function (lhs, rhs)
28056
+ Identity: new Quaternion (0, 0, 0, 1),
28057
+ spline: (function ()
28292
28058
  {
28293
- return lhs .copy () .subtract (rhs);
28294
- },
28295
- multiply: function (lhs, rhs)
28296
- {
28297
- return lhs .copy () .multiply (rhs);
28298
- },
28299
- multLeft: function (lhs, rhs)
28300
- {
28301
- return lhs .copy () .multLeft (rhs);
28302
- },
28303
- multRight: function (lhs, rhs)
28304
- {
28305
- return lhs .copy () .multRight (rhs);
28306
- },
28307
- divide: function (lhs, rhs)
28308
- {
28309
- return lhs .copy () .divide (rhs);
28310
- },
28311
- normalize: function (quat)
28312
- {
28313
- return quat .copy () .normalize ();
28314
- },
28315
- slerp: function (source, destination, t)
28316
- {
28317
- return source .copy () .slerp (destination, t);
28318
- },
28319
- squad: function (source, a, b, destination, t)
28320
- {
28321
- return source .copy () .squad (a, b, destination, t);
28322
- },
28323
- /*
28324
- bezier: function (q0, a, b, q1, t)
28325
- {
28326
- return q0 .copy () .squad (a, b, q1, t);
28327
- },
28328
- */
28329
- spline: function (Q0, Q1, Q2)
28330
- {
28331
- q0 .assign (Q0);
28332
- q1 .assign (Q1);
28333
- q2 .assign (Q2);
28059
+ const
28060
+ q0 = new Quaternion (0, 0, 0, 1),
28061
+ q1 = new Quaternion (0, 0, 0, 1),
28062
+ q2 = new Quaternion (0, 0, 0, 1),
28063
+ q1_i = new Quaternion (0, 0, 0, 1);
28334
28064
 
28335
- // If the dot product is smaller than 0 we must negate the quaternion to prevent flipping. If we negate all
28336
- // the terms we get a different quaternion but it represents the same rotation.
28065
+ return function (Q0, Q1, Q2)
28066
+ {
28067
+ q0 .assign (Q0);
28068
+ q1 .assign (Q1);
28069
+ q2 .assign (Q2);
28337
28070
 
28338
- if (q0 .dot (q1) < 0)
28339
- q0 .negate ();
28071
+ // If the dot product is smaller than 0 we must negate the quaternion to prevent flipping. If we negate all
28072
+ // the terms we get a different quaternion but it represents the same rotation.
28340
28073
 
28341
- if (q2 .dot (q1) < 0)
28342
- q2 .negate ();
28074
+ if (q0 .dot (q1) < 0)
28075
+ q0 .negate ();
28343
28076
 
28344
- q1_i .assign (q1) .inverse ();
28077
+ if (q2 .dot (q1) < 0)
28078
+ q2 .negate ();
28345
28079
 
28346
- // The result must be normalized as it will be used in slerp and we can only slerp normalized vectors.
28080
+ q1_i .assign (q1) .inverse ();
28347
28081
 
28348
- return q1 .multRight (
28349
- t1 .assign (q1_i) .multRight (q0) .log () .add (t2 .assign (q1_i) .multRight (q2) .log ()) .divide (-4) .exp ()
28350
- )
28351
- .normalize () .copy ();
28352
- },
28082
+ // The result must be normalized as it will be used in slerp and we can only slerp normalized vectors.
28083
+
28084
+ return q1 .multRight (
28085
+ t1 .assign (q1_i) .multRight (q0) .log () .add (t2 .assign (q1_i) .multRight (q2) .log ()) .divide (-4) .exp ()
28086
+ )
28087
+ .normalize () .copy ();
28088
+ };
28089
+ })(),
28353
28090
  });
28354
28091
 
28355
28092
  const
@@ -28357,12 +28094,6 @@ const
28357
28094
  t2 = new Quaternion (0, 0, 0, 1),
28358
28095
  t3 = new Quaternion (0, 0, 0, 1);
28359
28096
 
28360
- const
28361
- q0 = new Quaternion (0, 0, 0, 1),
28362
- q1 = new Quaternion (0, 0, 0, 1),
28363
- q2 = new Quaternion (0, 0, 0, 1),
28364
- q1_i = new Quaternion (0, 0, 0, 1);
28365
-
28366
28097
  const Quaternion_default_ = Quaternion;
28367
28098
  ;
28368
28099
 
@@ -28815,35 +28546,6 @@ Object .defineProperties (Rotation4 .prototype,
28815
28546
  Object .assign (Rotation4,
28816
28547
  {
28817
28548
  Identity: new Rotation4 (),
28818
- inverse: function (rotation)
28819
- {
28820
- return rotation .copy () .inverse ();
28821
- },
28822
- multRight: function (lhs, rhs)
28823
- {
28824
- return lhs .copy () .multRight (rhs);
28825
- },
28826
- normalize: function (rotation)
28827
- {
28828
- return rotation .copy () .normalize ();
28829
- },
28830
- slerp: function (source, destination, t)
28831
- {
28832
- return source .copy () .slerp (destination, t);
28833
- },
28834
- squad: function (source, a, b, destination, t)
28835
- {
28836
- return source .copy () .squad (a, b, destination, t);
28837
- },
28838
- /*
28839
- bezier: function (source, a, b, destination, t)
28840
- {
28841
- const copy = Object .create (this .prototype);
28842
- copy [_quaternion] = Quaternion .bezier (source [_quaternion], a, b, destination [_quaternion], t);
28843
- copy .update ();
28844
- return copy;
28845
- },
28846
- */
28847
28549
  spline: function (r0, r1, r2)
28848
28550
  {
28849
28551
  const copy = Object .create (this .prototype);
@@ -29873,11 +29575,11 @@ function dispose ()
29873
29575
  target = this [_target],
29874
29576
  value = target .getValue ();
29875
29577
 
29876
- cache .delete (value);
29578
+ Base_X3DField.prototype.dispose.call (target);
29877
29579
 
29878
29580
  value ?.dispose ();
29879
29581
 
29880
- Base_X3DField.prototype.dispose.call (target);
29582
+ cache .delete (value);
29881
29583
  }
29882
29584
 
29883
29585
  const SFNodeCache_default_ = SFNodeCache;
@@ -31229,8 +30931,7 @@ x_ite_Namespace.set ("x_ite/Base/X3DArrayField", X3DArrayField_default_);
31229
30931
 
31230
30932
  const
31231
30933
  X3DObjectArrayField_target = Symbol (),
31232
- X3DObjectArrayField_proxy = Symbol (),
31233
- _find = Symbol ();
30934
+ X3DObjectArrayField_proxy = Symbol ();
31234
30935
 
31235
30936
  const X3DObjectArrayField_handler =
31236
30937
  {
@@ -31372,6 +31073,10 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31372
31073
 
31373
31074
  return true;
31374
31075
  },
31076
+ isDefaultValue: function ()
31077
+ {
31078
+ return this .length === 0;
31079
+ },
31375
31080
  set: function (value)
31376
31081
  {
31377
31082
  const target = this [X3DObjectArrayField_target];
@@ -31383,10 +31088,6 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31383
31088
  for (let i = 0, length = value .length; i < length; ++ i)
31384
31089
  array [i] .set (value [i] instanceof Base_X3DField ? value [i] .getValue () : value [i]);
31385
31090
  },
31386
- isDefaultValue: function ()
31387
- {
31388
- return this .length === 0;
31389
- },
31390
31091
  setValue: function (value)
31391
31092
  {
31392
31093
  const target = this [X3DObjectArrayField_target];
@@ -31421,10 +31122,14 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31421
31122
 
31422
31123
  if (array .length)
31423
31124
  {
31424
- const field = array .shift ();
31125
+ const
31126
+ field = array .shift (),
31127
+ result = field .valueOf ();
31128
+
31425
31129
  target .removeChildObject (field);
31426
31130
  target .addEvent ();
31427
- return field .valueOf ();
31131
+
31132
+ return result;
31428
31133
  }
31429
31134
  },
31430
31135
  push: function (value)
@@ -31454,10 +31159,14 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31454
31159
 
31455
31160
  if (array .length)
31456
31161
  {
31457
- const field = array .pop ();
31162
+ const
31163
+ field = array .pop (),
31164
+ result = field .valueOf ();
31165
+
31458
31166
  target .removeChildObject (field);
31459
31167
  target .addEvent ();
31460
- return field .valueOf ();
31168
+
31169
+ return result;
31461
31170
  }
31462
31171
  },
31463
31172
  splice: function (index, deleteCount, ... insertValues)
@@ -31498,53 +31207,28 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31498
31207
 
31499
31208
  target .addEvent ();
31500
31209
  },
31501
- [_find]: function (first, last, value)
31502
- {
31503
- const
31504
- target = this [X3DObjectArrayField_target],
31505
- values = target .getValue ();
31506
-
31507
- if (typeof value === "function")
31508
- {
31509
- for (let i = first; i < last; ++ i)
31510
- {
31511
- if (value (values [i] .valueOf ()))
31512
- return i;
31513
- }
31514
-
31515
- return last;
31516
- }
31517
-
31518
- for (let i = first; i < last; ++ i)
31519
- {
31520
- if (values [i] .equals (value))
31521
- return i;
31522
- }
31523
-
31524
- return last;
31525
- },
31526
31210
  remove: function (first, last, value)
31527
31211
  {
31528
31212
  const
31529
31213
  target = this [X3DObjectArrayField_target],
31530
- values = target .getValue ();
31214
+ array = target .getValue ();
31531
31215
 
31532
31216
  if (typeof value === "function")
31533
31217
  {
31534
- first = target [_find] (first, last, value);
31218
+ first = array .findIndex ((current, index) => index >= first && value (current .valueOf ()))
31535
31219
 
31536
- if (first !== last)
31220
+ if (first !== -1)
31537
31221
  {
31538
31222
  for (let i = first; ++ i < last; )
31539
31223
  {
31540
- const current = values [i];
31224
+ const current = array [i];
31541
31225
 
31542
31226
  if (!value (current .valueOf ()))
31543
31227
  {
31544
- const tmp = values [first];
31228
+ const tmp = array [first];
31545
31229
 
31546
- values [first ++] = current;
31547
- values [i] = tmp;
31230
+ array [first ++] = current;
31231
+ array [i] = tmp;
31548
31232
  }
31549
31233
  }
31550
31234
  }
@@ -31555,25 +31239,25 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31555
31239
  return first;
31556
31240
  }
31557
31241
 
31558
- first = target [_find] (first, last, value);
31242
+ first = array .findIndex ((current, index) => index >= first && current .equals (value))
31559
31243
 
31560
- if (first !== last)
31244
+ if (first !== -1)
31561
31245
  {
31562
31246
  for (let i = first; ++ i < last; )
31563
31247
  {
31564
- const current = values [i];
31248
+ const current = array [i];
31565
31249
 
31566
31250
  if (!current .equals (value))
31567
31251
  {
31568
- const tmp = values [first];
31252
+ const tmp = array [first];
31569
31253
 
31570
- values [first ++] = current;
31571
- values [i] = tmp;
31254
+ array [first ++] = current;
31255
+ array [i] = tmp;
31572
31256
  }
31573
31257
  }
31574
31258
  }
31575
31259
 
31576
- if (first !== last)
31260
+ if (first !== -1)
31577
31261
  target .addEvent ();
31578
31262
 
31579
31263
  return first;
@@ -31582,14 +31266,15 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31582
31266
  {
31583
31267
  const
31584
31268
  target = this [X3DObjectArrayField_target],
31585
- values = target .getValue () .splice (first, last - first);
31269
+ values = target .getValue () .splice (first, last - first),
31270
+ result = new (target .constructor) (values);
31586
31271
 
31587
31272
  for (const value of values)
31588
31273
  target .removeChildObject (value);
31589
31274
 
31590
31275
  target .addEvent ();
31591
31276
 
31592
- return new (target .constructor) (values);
31277
+ return result;
31593
31278
  },
31594
31279
  resize: function (size, value, silently)
31595
31280
  {
@@ -31632,6 +31317,7 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31632
31317
  removeChildObject: function (value)
31633
31318
  {
31634
31319
  value .removeParent (this [X3DObjectArrayField_proxy]);
31320
+ value .dispose ();
31635
31321
  },
31636
31322
  reverse: function ()
31637
31323
  {
@@ -31776,19 +31462,6 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31776
31462
  generator .string += ']';
31777
31463
  }
31778
31464
  },
31779
- dispose: function ()
31780
- {
31781
- const
31782
- target = this [X3DObjectArrayField_target],
31783
- array = target .getValue ();
31784
-
31785
- for (const value of array)
31786
- target .removeChildObject (value);
31787
-
31788
- array .length = 0;
31789
-
31790
- Base_X3DArrayField.prototype.dispose.call (target);
31791
- },
31792
31465
  });
31793
31466
 
31794
31467
  for (const key of Reflect .ownKeys (X3DObjectArrayField .prototype))
@@ -33233,7 +32906,7 @@ MFNode .prototype = Object .assign (Object .create (Base_X3DObjectArrayField.pro
33233
32906
  {
33234
32907
  const target = this .getTarget ();
33235
32908
 
33236
- target .resize (0, undefined, true);
32909
+ target .resize (0, undefined, false);
33237
32910
  target .processInterests ();
33238
32911
 
33239
32912
  Base_X3DObjectArrayField.prototype.dispose.call (target);
@@ -34609,7 +34282,7 @@ x_ite_Namespace.set ("x_ite/Base/X3DBaseNode", X3DBaseNode_default_);
34609
34282
  *
34610
34283
  ******************************************************************************/
34611
34284
 
34612
- const VERSION_default_ = "8.7.5";
34285
+ const VERSION_default_ = "8.7.6";
34613
34286
  ;
34614
34287
 
34615
34288
  x_ite_Namespace.set ("x_ite/Browser/VERSION", VERSION_default_);
@@ -35528,7 +35201,7 @@ const gettext_default_ = gettext;
35528
35201
  x_ite_Namespace.set ("locale/gettext", gettext_default_);
35529
35202
  /* harmony default export */ const locale_gettext = (gettext_default_);
35530
35203
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserTimings.js
35531
- /* provided dependency */ var $ = __webpack_require__(994);
35204
+ /* provided dependency */ var $ = __webpack_require__(756);
35532
35205
  /*******************************************************************************
35533
35206
  *
35534
35207
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36026,7 +35699,7 @@ const TextureQuality_default_ = TextureQuality;
36026
35699
  x_ite_Namespace.set ("x_ite/Browser/Core/TextureQuality", TextureQuality_default_);
36027
35700
  /* harmony default export */ const Core_TextureQuality = (TextureQuality_default_);
36028
35701
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserOptions.js
36029
- /* provided dependency */ var BrowserOptions_$ = __webpack_require__(994);
35702
+ /* provided dependency */ var BrowserOptions_$ = __webpack_require__(756);
36030
35703
  /*******************************************************************************
36031
35704
  *
36032
35705
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36112,6 +35785,7 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36112
35785
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "QualityWhenMoving", new x_ite_Fields.SFString ("SAME")),
36113
35786
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "Shading", new x_ite_Fields.SFString ("GOURAUD")),
36114
35787
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "MotionBlur", new x_ite_Fields.SFBool ()),
35788
+ new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "AutoUpdate", new x_ite_Fields.SFBool (false)),
36115
35789
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "Cache", new x_ite_Fields.SFBool (true)),
36116
35790
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "ContentScale", new x_ite_Fields.SFDouble (1)),
36117
35791
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "ContextMenu", new x_ite_Fields.SFBool (true)),
@@ -36155,6 +35829,7 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36155
35829
  this ._TextureQuality .addInterest ("set_textureQuality__", this);
36156
35830
  this ._Shading .addInterest ("set_shading__", this);
36157
35831
  this ._StraightenHorizon .addInterest ("set_straightenHorizon__", this);
35832
+ this ._AutoUpdate .addInterest ("set_autoUpdate__", this);
36158
35833
  this ._ContentScale .addInterest ("set_contentScale__", this);
36159
35834
  this ._LogarithmicDepthBuffer .addInterest ("set_logarithmicDepthBuffer__", this);
36160
35835
  this ._Multisampling .addInterest ("set_multisampling__", this);
@@ -36172,6 +35847,7 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36172
35847
  {
36173
35848
  const attributes = new Set ([
36174
35849
  "Antialiased",
35850
+ "AutoUpdate",
36175
35851
  "Cache",
36176
35852
  "ContentScale",
36177
35853
  "ContextMenu",
@@ -36325,6 +36001,40 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36325
36001
 
36326
36002
  browser .reshape ();
36327
36003
  },
36004
+ set_autoUpdate__: function (autoUpdate)
36005
+ {
36006
+ const events = ["resize", "scroll", "load"]
36007
+ .map (event => `${event}.${this .getTypeName ()}${this .getId ()}`)
36008
+ .join (" ");
36009
+
36010
+ if (autoUpdate .getValue ())
36011
+ {
36012
+ const
36013
+ browser = this .getBrowser (),
36014
+ element = browser .getElement ();
36015
+
36016
+ const checkUpdate = () =>
36017
+ {
36018
+ if (element .isInViewport ())
36019
+ {
36020
+ if (!browser .isLive ())
36021
+ browser .beginUpdate ();
36022
+ }
36023
+ else
36024
+ {
36025
+ if (browser .isLive ())
36026
+ browser .endUpdate ();
36027
+ }
36028
+ };
36029
+
36030
+ BrowserOptions_$(window) .on (events, checkUpdate);
36031
+ checkUpdate ();
36032
+ }
36033
+ else
36034
+ {
36035
+ BrowserOptions_$(window) .off (events);
36036
+ }
36037
+ },
36328
36038
  set_contentScale__: function (contentScale)
36329
36039
  {
36330
36040
  const browser = this .getBrowser ();
@@ -36570,7 +36280,7 @@ const RenderingProperties_default_ = RenderingProperties;
36570
36280
  x_ite_Namespace.set ("x_ite/Browser/Core/RenderingProperties", RenderingProperties_default_);
36571
36281
  /* harmony default export */ const Core_RenderingProperties = (RenderingProperties_default_);
36572
36282
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/Notification.js
36573
- /* provided dependency */ var Notification_$ = __webpack_require__(994);
36283
+ /* provided dependency */ var Notification_$ = __webpack_require__(756);
36574
36284
  /*******************************************************************************
36575
36285
  *
36576
36286
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36692,8 +36402,8 @@ const Notification_default_ = Notification;
36692
36402
  x_ite_Namespace.set ("x_ite/Browser/Core/Notification", Notification_default_);
36693
36403
  /* harmony default export */ const Core_Notification = (Notification_default_);
36694
36404
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/ContextMenu.js
36695
- /* provided dependency */ var jquery_fullscreen = __webpack_require__(53);
36696
- /* provided dependency */ var ContextMenu_$ = __webpack_require__(994);
36405
+ /* provided dependency */ var jquery_fullscreen = __webpack_require__(554);
36406
+ /* provided dependency */ var ContextMenu_$ = __webpack_require__(756);
36697
36407
  /*******************************************************************************
36698
36408
  *
36699
36409
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -41767,7 +41477,7 @@ const X3DUrlObject_default_ = X3DUrlObject;
41767
41477
  x_ite_Namespace.set ("x_ite/Components/Networking/X3DUrlObject", X3DUrlObject_default_);
41768
41478
  /* harmony default export */ const Networking_X3DUrlObject = (X3DUrlObject_default_);
41769
41479
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/X3DParser.js
41770
- /* provided dependency */ var X3DParser_$ = __webpack_require__(994);
41480
+ /* provided dependency */ var X3DParser_$ = __webpack_require__(756);
41771
41481
  /*******************************************************************************
41772
41482
  *
41773
41483
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -44949,7 +44659,7 @@ const VRMLParser_default_ = VRMLParser;
44949
44659
  x_ite_Namespace.set ("x_ite/Parser/VRMLParser", VRMLParser_default_);
44950
44660
  /* harmony default export */ const Parser_VRMLParser = (VRMLParser_default_);
44951
44661
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/XMLParser.js
44952
- /* provided dependency */ var XMLParser_$ = __webpack_require__(994);
44662
+ /* provided dependency */ var XMLParser_$ = __webpack_require__(756);
44953
44663
  /*******************************************************************************
44954
44664
  *
44955
44665
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -46804,7 +46514,7 @@ const X3DOptimizer_default_ = X3DOptimizer;
46804
46514
  x_ite_Namespace.set ("x_ite/Parser/X3DOptimizer", X3DOptimizer_default_);
46805
46515
  /* harmony default export */ const Parser_X3DOptimizer = (X3DOptimizer_default_);
46806
46516
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLTF2Parser.js
46807
- /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(994);
46517
+ /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(756);
46808
46518
  /*******************************************************************************
46809
46519
  *
46810
46520
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49270,7 +48980,7 @@ const GLTF2Parser_default_ = GLTF2Parser;
49270
48980
  x_ite_Namespace.set ("x_ite/Parser/GLTF2Parser", GLTF2Parser_default_);
49271
48981
  /* harmony default export */ const Parser_GLTF2Parser = (GLTF2Parser_default_);
49272
48982
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLB2Parser.js
49273
- /* provided dependency */ var GLB2Parser_$ = __webpack_require__(994);
48983
+ /* provided dependency */ var GLB2Parser_$ = __webpack_require__(756);
49274
48984
  /*******************************************************************************
49275
48985
  *
49276
48986
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49423,7 +49133,7 @@ const GLB2Parser_default_ = GLB2Parser;
49423
49133
  x_ite_Namespace.set ("x_ite/Parser/GLB2Parser", GLB2Parser_default_);
49424
49134
  /* harmony default export */ const Parser_GLB2Parser = (GLB2Parser_default_);
49425
49135
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/OBJParser.js
49426
- /* provided dependency */ var OBJParser_$ = __webpack_require__(994);
49136
+ /* provided dependency */ var OBJParser_$ = __webpack_require__(756);
49427
49137
  /*******************************************************************************
49428
49138
  *
49429
49139
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -51310,10 +51020,6 @@ Object .assign (Complex,
51310
51020
  {
51311
51021
  return lhs .copy () .multiply (rhs);
51312
51022
  },
51313
- multComp: function (lhs, rhs)
51314
- {
51315
- return lhs .copy () .multComp (rhs);
51316
- },
51317
51023
  });
51318
51024
 
51319
51025
  const Complex_default_ = Complex;
@@ -51417,10 +51123,11 @@ Box2 .prototype =
51417
51123
 
51418
51124
  return this;
51419
51125
  }
51420
- case 3:
51421
- {
51422
- return this .setExtents (arguments [0], arguments [1]);
51423
- }
51126
+ // case 3:
51127
+ // {
51128
+ // console .trace ()
51129
+ // return this .setExtents (arguments [0], arguments [1]);
51130
+ // }
51424
51131
  }
51425
51132
  },
51426
51133
  setExtents: function (min, max)
@@ -51460,7 +51167,7 @@ Box2 .prototype =
51460
51167
  this .getExtents (lhs_min, lhs_max);
51461
51168
  box .getExtents (rhs_min, rhs_max);
51462
51169
 
51463
- return this .set (lhs_min .min (rhs_min), lhs_max .max (rhs_max), true);
51170
+ return this .setExtents (lhs_min .min (rhs_min), lhs_max .max (rhs_max));
51464
51171
  };
51465
51172
  })(),
51466
51173
  multLeft: function (matrix)
@@ -51527,6 +51234,18 @@ Box2 .prototype =
51527
51234
  },
51528
51235
  };
51529
51236
 
51237
+ Object .assign (Box2,
51238
+ {
51239
+ Extents: function (min, max)
51240
+ {
51241
+ return new Box2 () .setExtents (min, max);
51242
+ },
51243
+ Points: function (... points)
51244
+ {
51245
+ return new Box2 () .setExtents (points [0] .copy () .min (... points), points [0] .copy () .max (... points));
51246
+ },
51247
+ });
51248
+
51530
51249
  Object .defineProperties (Box2 .prototype,
51531
51250
  {
51532
51251
  size:
@@ -51918,8 +51637,8 @@ const MatrixStack_default_ = MatrixStack;
51918
51637
  x_ite_Namespace.set ("standard/Math/Utility/MatrixStack", MatrixStack_default_);
51919
51638
  /* harmony default export */ const Utility_MatrixStack = (MatrixStack_default_);
51920
51639
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/SVGParser.js
51921
- /* provided dependency */ var SVGParser_$ = __webpack_require__(994);
51922
- /* provided dependency */ var libtess = __webpack_require__(870);
51640
+ /* provided dependency */ var SVGParser_$ = __webpack_require__(756);
51641
+ /* provided dependency */ var libtess = __webpack_require__(405);
51923
51642
  /*******************************************************************************
51924
51643
  *
51925
51644
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -52840,7 +52559,7 @@ SVGParser .prototype = Object .assign (Object .create (Parser_X3DParser.prototyp
52840
52559
  bbox = new Geometry_Box2 ();
52841
52560
 
52842
52561
  for (const points of contours)
52843
- bbox .add (new Geometry_Box2 (Numbers_Vector2.min (... points), Numbers_Vector2.max (... points), true));
52562
+ bbox .add (Geometry_Box2.Points (... points));
52844
52563
 
52845
52564
  this .groupNodes .push (transformNode);
52846
52565
 
@@ -54688,7 +54407,7 @@ const SVGParser_default_ = SVGParser;
54688
54407
  x_ite_Namespace.set ("x_ite/Parser/SVGParser", SVGParser_default_);
54689
54408
  /* harmony default export */ const Parser_SVGParser = (SVGParser_default_);
54690
54409
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GoldenGate.js
54691
- /* provided dependency */ var GoldenGate_$ = __webpack_require__(994);
54410
+ /* provided dependency */ var GoldenGate_$ = __webpack_require__(756);
54692
54411
  /*******************************************************************************
54693
54412
  *
54694
54413
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -54983,7 +54702,7 @@ Plane3 .prototype =
54983
54702
  },
54984
54703
  getDistanceToPoint: function (point)
54985
54704
  {
54986
- return Numbers_Vector3.dot (point, this .normal) - this .distanceFromOrigin;
54705
+ return point .dot (this .normal) - this .distanceFromOrigin;
54987
54706
  },
54988
54707
  intersectsLine: function (line, intersection)
54989
54708
  {
@@ -55017,7 +54736,7 @@ const Plane3_default_ = Plane3;
55017
54736
  x_ite_Namespace.set ("standard/Math/Geometry/Plane3", Plane3_default_);
55018
54737
  /* harmony default export */ const Geometry_Plane3 = (Plane3_default_);
55019
54738
  ;// CONCATENATED MODULE: ./src/standard/Math/Geometry/Triangle3.js
55020
- /* provided dependency */ var Triangle3_libtess = __webpack_require__(870);
54739
+ /* provided dependency */ var Triangle3_libtess = __webpack_require__(405);
55021
54740
  /*******************************************************************************
55022
54741
  *
55023
54742
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -56357,10 +56076,11 @@ Box3 .prototype =
56357
56076
 
56358
56077
  return this;
56359
56078
  }
56360
- case 3:
56361
- {
56362
- return this .setExtents (arguments [0], arguments [1]);
56363
- }
56079
+ // case 3:
56080
+ // {
56081
+ // console .trace ()
56082
+ // return this .setExtents (arguments [0], arguments [1]);
56083
+ // }
56364
56084
  }
56365
56085
  },
56366
56086
  setExtents: function (min, max)
@@ -56629,7 +56349,7 @@ Box3 .prototype =
56629
56349
  this .getExtents (lhs_min, lhs_max);
56630
56350
  box .getExtents (rhs_min, rhs_max);
56631
56351
 
56632
- return this .set (lhs_min .min (rhs_min), lhs_max .max (rhs_max), true);
56352
+ return this .setExtents (lhs_min .min (rhs_min), lhs_max .max (rhs_max));
56633
56353
  };
56634
56354
  })(),
56635
56355
  multLeft: function (matrix)
@@ -56867,6 +56587,18 @@ Box3 .prototype =
56867
56587
  },
56868
56588
  };
56869
56589
 
56590
+ Object .assign (Box3,
56591
+ {
56592
+ Extents: function (min, max)
56593
+ {
56594
+ return new Box3 () .setExtents (min, max);
56595
+ },
56596
+ Points: function (... points)
56597
+ {
56598
+ return new Box3 () .setExtents (points [0] .copy () .min (... points), points [0] .copy () .max (... points));
56599
+ },
56600
+ });
56601
+
56870
56602
  Object .defineProperties (Box3 .prototype,
56871
56603
  {
56872
56604
  size:
@@ -57130,7 +56862,7 @@ Line3 .Points = function (point1, point2)
57130
56862
  {
57131
56863
  const line = Object .create (Line3 .prototype);
57132
56864
  line .point = point1 .copy ();
57133
- line .direction = Numbers_Vector3.subtract (point2, point1) .normalize ();
56865
+ line .direction = point2 .copy () .subtract (point1) .normalize ();
57134
56866
  return line;
57135
56867
  };
57136
56868
 
@@ -57491,9 +57223,9 @@ X3DRenderObject .prototype =
57491
57223
  const
57492
57224
  projectionMatrix = new Numbers_Matrix4 (),
57493
57225
  cameraSpaceProjectionMatrix = new Numbers_Matrix4 (),
57494
- localOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
57226
+ localOrientation = new Numbers_Rotation4 (),
57495
57227
  vector = new Numbers_Vector3 (0, 0, 0),
57496
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
57228
+ rotation = new Numbers_Rotation4 ();
57497
57229
 
57498
57230
  return function (direction)
57499
57231
  {
@@ -57947,7 +57679,7 @@ X3DRenderObject .prototype =
57947
57679
  projectionMatrix = new Numbers_Matrix4 (),
57948
57680
  cameraSpaceProjectionMatrix = new Numbers_Matrix4 (),
57949
57681
  translation = new Numbers_Vector3 (0, 0, 0),
57950
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
57682
+ rotation = new Numbers_Rotation4 ();
57951
57683
 
57952
57684
  return function ()
57953
57685
  {
@@ -59726,7 +59458,7 @@ function X3DGeometryNode (executionContext)
59726
59458
 
59727
59459
  this .min = new Numbers_Vector3 (0, 0, 0);
59728
59460
  this .max = new Numbers_Vector3 (0, 0, 0);
59729
- this .bbox = new Geometry_Box3 (this .min, this .max, true);
59461
+ this .bbox = Geometry_Box3.Extents (this .min, this .max);
59730
59462
  this .solid = true;
59731
59463
  this .primitiveMode = browser .getContext () .TRIANGLES;
59732
59464
  this .geometryType = 3;
@@ -62301,7 +62033,7 @@ const X3DTexture2DNode_default_ = X3DTexture2DNode;
62301
62033
  x_ite_Namespace.set ("x_ite/Components/Texturing/X3DTexture2DNode", X3DTexture2DNode_default_);
62302
62034
  /* harmony default export */ const Texturing_X3DTexture2DNode = (X3DTexture2DNode_default_);
62303
62035
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/ImageTexture.js
62304
- /* provided dependency */ var ImageTexture_$ = __webpack_require__(994);
62036
+ /* provided dependency */ var ImageTexture_$ = __webpack_require__(756);
62305
62037
  /*******************************************************************************
62306
62038
  *
62307
62039
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -64286,8 +64018,8 @@ OrientationInterpolator .prototype = Object .assign (Object .create (Interpolati
64286
64018
  interpolate: (function ()
64287
64019
  {
64288
64020
  const
64289
- keyValue0 = new Numbers_Rotation4 (0, 0, 1, 0),
64290
- keyValue1 = new Numbers_Rotation4 (0, 0, 1, 0);
64021
+ keyValue0 = new Numbers_Rotation4 (),
64022
+ keyValue1 = new Numbers_Rotation4 ();
64291
64023
 
64292
64024
  return function (index0, index1, weight)
64293
64025
  {
@@ -64497,7 +64229,7 @@ function X3DViewpointNode (executionContext)
64497
64229
  "fieldOfViewScale", new x_ite_Fields.SFFloat (1));
64498
64230
 
64499
64231
  this .userPosition = new Numbers_Vector3 (0, 1, 0);
64500
- this .userOrientation = new Numbers_Rotation4 (0, 0, 1, 0);
64232
+ this .userOrientation = new Numbers_Rotation4 ();
64501
64233
  this .userCenterOfRotation = new Numbers_Vector3 (0, 0, 0);
64502
64234
  this .modelMatrix = new Numbers_Matrix4 ();
64503
64235
  this .cameraSpaceMatrix = new Numbers_Matrix4 (1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1);
@@ -64806,9 +64538,9 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
64806
64538
  {
64807
64539
  const
64808
64540
  position = new Numbers_Vector3 (0, 0, 0),
64809
- orientation = new Numbers_Rotation4 (0, 0, 1, 0),
64541
+ orientation = new Numbers_Rotation4 (),
64810
64542
  scale = new Numbers_Vector3 (0, 0, 0),
64811
- scaleOrientation = new Numbers_Rotation4 (0, 0, 1, 0);
64543
+ scaleOrientation = new Numbers_Rotation4 ();
64812
64544
 
64813
64545
  return function (fromViewpointNode)
64814
64546
  {
@@ -64883,14 +64615,14 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
64883
64615
  this .easeInEaseOut ._easeInEaseOut = new x_ite_Fields.MFVec2f (new x_ite_Fields.SFVec2f (0, 1), new x_ite_Fields.SFVec2f (1, 0));
64884
64616
 
64885
64617
  const
64886
- translation = Numbers_Vector3.lerp (this ._positionOffset .getValue (), offset, factor),
64887
- direction = Numbers_Vector3.add (this .getPosition (), translation) .subtract (point);
64618
+ translation = this ._positionOffset .getValue () .copy () .lerp (offset, factor),
64619
+ direction = this .getPosition () .copy () .add (translation) .subtract (point);
64888
64620
 
64889
- let rotation = Numbers_Rotation4.multRight (this ._orientationOffset .getValue (), new Numbers_Rotation4 (this .getUserOrientation () .multVecRot (new Numbers_Vector3 (0, 0, 1)), direction));
64621
+ let rotation = this ._orientationOffset .getValue () .copy () .multRight (new Numbers_Rotation4 (this .getUserOrientation () .multVecRot (new Numbers_Vector3 (0, 0, 1)), direction));
64890
64622
 
64891
64623
  if (straighten)
64892
64624
  {
64893
- rotation = Numbers_Rotation4.inverse (this .getOrientation ()) .multRight (this .straightenHorizon (Numbers_Rotation4.multRight (this .getOrientation (), rotation)));
64625
+ rotation = this .getOrientation () .copy () .inverse () .multRight (this .straightenHorizon (this .getOrientation () .copy () .multRight (rotation)));
64894
64626
  }
64895
64627
 
64896
64628
  this .positionInterpolator ._keyValue = new x_ite_Fields.MFVec3f (this ._positionOffset, translation);
@@ -64901,7 +64633,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
64901
64633
  const relative = this .getRelativeTransformation (this);
64902
64634
 
64903
64635
  this ._fieldOfViewScale = 1;
64904
- this ._centerOfRotationOffset = Numbers_Vector3.subtract (point, this .getCenterOfRotation ());
64636
+ this ._centerOfRotationOffset = point .copy () .subtract (this .getCenterOfRotation ());
64905
64637
  this .nearDistance = Math .min (distance / 2, 0.125);
64906
64638
  this .farDistance = this .nearDistance * this .getMaxFarValue () / 0.125;
64907
64639
 
@@ -64919,7 +64651,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
64919
64651
 
64920
64652
  this .easeInEaseOut ._easeInEaseOut = new x_ite_Fields.MFVec2f (new x_ite_Fields.SFVec2f (0, 1), new x_ite_Fields.SFVec2f (1, 0));
64921
64653
 
64922
- const rotation = Numbers_Rotation4.multRight (Numbers_Rotation4.inverse (this .getOrientation ()), this .straightenHorizon (this .getUserOrientation ()));
64654
+ const rotation = this .getOrientation () .copy () .inverse () .multRight (this .straightenHorizon (this .getUserOrientation ()));
64923
64655
 
64924
64656
  this .positionInterpolator ._keyValue = new x_ite_Fields.MFVec3f (this ._positionOffset, this ._positionOffset);
64925
64657
  this .orientationInterpolator ._keyValue = new x_ite_Fields.MFRotation (this ._orientationOffset, rotation);
@@ -64937,7 +64669,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
64937
64669
  const
64938
64670
  localXAxis = new Numbers_Vector3 (0, 0, 0),
64939
64671
  localZAxis = new Numbers_Vector3 (0, 0, 0),
64940
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
64672
+ rotation = new Numbers_Rotation4 ();
64941
64673
 
64942
64674
  return function (orientation, upVector = this .getUpVector (true))
64943
64675
  {
@@ -66640,7 +66372,7 @@ const X3DWorld_default_ = X3DWorld;
66640
66372
  x_ite_Namespace.set ("x_ite/Execution/X3DWorld", X3DWorld_default_);
66641
66373
  /* harmony default export */ const Execution_X3DWorld = (X3DWorld_default_);
66642
66374
  ;// CONCATENATED MODULE: ./src/x_ite/InputOutput/FileLoader.js
66643
- /* provided dependency */ var FileLoader_$ = __webpack_require__(994);
66375
+ /* provided dependency */ var FileLoader_$ = __webpack_require__(756);
66644
66376
  /*******************************************************************************
66645
66377
  *
66646
66378
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -70916,7 +70648,7 @@ const DataStorage_default_ = DataStorage;
70916
70648
  x_ite_Namespace.set ("standard/Utility/DataStorage", DataStorage_default_);
70917
70649
  /* harmony default export */ const Utility_DataStorage = (DataStorage_default_);
70918
70650
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/X3DCoreContext.js
70919
- /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(994);
70651
+ /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(756);
70920
70652
  /*******************************************************************************
70921
70653
  *
70922
70654
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -71293,6 +71025,24 @@ X3DCoreContext .prototype =
71293
71025
  this .setBrowserOption ("Timings", this .parseBooleanAttribute (newValue, false));
71294
71026
  break;
71295
71027
  }
71028
+ case "update":
71029
+ {
71030
+ if (newValue === "auto")
71031
+ {
71032
+ this .setBrowserOption ("AutoUpdate", true);
71033
+ }
71034
+ else
71035
+ {
71036
+ this .setBrowserOption ("AutoUpdate", false);
71037
+
71038
+ if (this .parseBooleanAttribute (newValue, true))
71039
+ this .beginUpdate ();
71040
+ else
71041
+ this .endUpdate ();
71042
+ }
71043
+
71044
+ break;
71045
+ }
71296
71046
  case "url":
71297
71047
  {
71298
71048
  if (newValue)
@@ -76968,8 +76718,8 @@ x_ite_Namespace.set ("x_ite/Components/Followers/PositionChaser", PositionChaser
76968
76718
 
76969
76719
 
76970
76720
  var
76971
- OrientationChaser_a = new Numbers_Rotation4 (0, 0, 1, 0),
76972
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
76721
+ OrientationChaser_a = new Numbers_Rotation4 (),
76722
+ rotation = new Numbers_Rotation4 ();
76973
76723
 
76974
76724
  function OrientationChaser (executionContext)
76975
76725
  {
@@ -77015,7 +76765,7 @@ OrientationChaser .prototype = Object .assign (Object .create (Followers_X3DChas
77015
76765
  },
77016
76766
  getVector: function ()
77017
76767
  {
77018
- return new Numbers_Rotation4 (0, 0, 1, 0);
76768
+ return new Numbers_Rotation4 ();
77019
76769
  },
77020
76770
  equals: function (lhs, rhs, tolerance)
77021
76771
  {
@@ -77041,8 +76791,8 @@ const OrientationChaser_default_ = OrientationChaser;
77041
76791
  x_ite_Namespace.set ("x_ite/Components/Followers/OrientationChaser", OrientationChaser_default_);
77042
76792
  /* harmony default export */ const Followers_OrientationChaser = (OrientationChaser_default_);
77043
76793
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/ExamineViewer.js
77044
- /* provided dependency */ var jquery_mousewheel = __webpack_require__(6);
77045
- /* provided dependency */ var ExamineViewer_$ = __webpack_require__(994);
76794
+ /* provided dependency */ var jquery_mousewheel = __webpack_require__(596);
76795
+ /* provided dependency */ var ExamineViewer_$ = __webpack_require__(756);
77046
76796
  /*******************************************************************************
77047
76797
  *
77048
76798
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -77121,12 +76871,12 @@ function ExamineViewer (executionContext, navigationInfo)
77121
76871
  Navigation_X3DViewer.call (this, executionContext, navigationInfo);
77122
76872
 
77123
76873
  this .button = -1;
77124
- this .orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
76874
+ this .orientationOffset = new Numbers_Rotation4 ();
77125
76875
  this .fromVector = new Numbers_Vector3 (0, 0, 0);
77126
76876
  this .toVector = new Numbers_Vector3 (0, 0, 0);
77127
76877
  this .fromPoint = new Numbers_Vector3 (0, 0, 0);
77128
76878
  this .toPoint = new Numbers_Vector3 (0, 0, 0);
77129
- this .rotation = new Numbers_Rotation4 (0, 0, 1, 0);
76879
+ this .rotation = new Numbers_Rotation4 ();
77130
76880
  this .direction = new Numbers_Vector3 (0, 0, 0);
77131
76881
  this .axis = new Numbers_Vector3 (0, 0, 0);
77132
76882
  this .pressTime = 0;
@@ -77139,7 +76889,7 @@ function ExamineViewer (executionContext, navigationInfo)
77139
76889
  this .dblTapInterval = 0.4;
77140
76890
 
77141
76891
  this .initialPositionOffset = new Numbers_Vector3 (0, 0, 0);
77142
- this .initialOrientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
76892
+ this .initialOrientationOffset = new Numbers_Rotation4 ();
77143
76893
  this .positionChaser = new Followers_PositionChaser (executionContext);
77144
76894
  this .centerOfRotationChaser = new Followers_PositionChaser (executionContext);
77145
76895
  this .rotationChaser = new Followers_OrientationChaser (executionContext);
@@ -77681,7 +77431,7 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
77681
77431
  viewpoint = this .getActiveViewpoint (),
77682
77432
  userPosition = viewpoint .getUserPosition (),
77683
77433
  userCenterOfRotation = viewpoint .getUserCenterOfRotation (),
77684
- direction = Numbers_Vector3.subtract (userPosition, userCenterOfRotation),
77434
+ direction = userPosition .copy () .subtract (userCenterOfRotation),
77685
77435
  rotation = this .getHorizonRotation (rotationChange),
77686
77436
  axis = viewpoint .getUpVector (true);
77687
77437
 
@@ -77800,7 +77550,7 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
77800
77550
  const
77801
77551
  distance = new Numbers_Vector3 (0, 0, 0),
77802
77552
  d = new Numbers_Vector3 (0, 0, 0),
77803
- oob = new Numbers_Rotation4 (0, 0, 1, 0);
77553
+ oob = new Numbers_Rotation4 ();
77804
77554
 
77805
77555
  return function (positionOffsetBefore, orientationOffsetBefore, orientationOffsetAfter)
77806
77556
  {
@@ -77818,8 +77568,8 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
77818
77568
  getOrientationOffset: (function ()
77819
77569
  {
77820
77570
  const
77821
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
77822
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0),
77571
+ userOrientation = new Numbers_Rotation4 (),
77572
+ orientationOffset = new Numbers_Rotation4 (),
77823
77573
  zAxis = new Numbers_Vector3 (0, 0, 0);
77824
77574
 
77825
77575
  return function (rotation, orientationOffsetBefore, _throw)
@@ -77867,8 +77617,8 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
77867
77617
  {
77868
77618
  const
77869
77619
  V = rotation .multVecRot (zAxis .assign (Numbers_Vector3.zAxis)),
77870
- N = Numbers_Vector3.cross (Numbers_Vector3.yAxis, V),
77871
- H = Numbers_Vector3.cross (N, Numbers_Vector3.yAxis),
77620
+ N = Numbers_Vector3.yAxis.copy () .cross (V),
77621
+ H = N .copy () .cross (Numbers_Vector3.yAxis),
77872
77622
  r = new Numbers_Rotation4 (Numbers_Vector3.zAxis, H);
77873
77623
 
77874
77624
  return r;
@@ -77906,8 +77656,8 @@ const ExamineViewer_default_ = ExamineViewer;
77906
77656
  x_ite_Namespace.set ("x_ite/Browser/Navigation/ExamineViewer", ExamineViewer_default_);
77907
77657
  /* harmony default export */ const Navigation_ExamineViewer = (ExamineViewer_default_);
77908
77658
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/X3DFlyViewer.js
77909
- /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(6);
77910
- /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(994);
77659
+ /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(596);
77660
+ /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(756);
77911
77661
  /*******************************************************************************
77912
77662
  *
77913
77663
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -78320,9 +78070,9 @@ X3DFlyViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
78320
78070
  upVector = new Numbers_Vector3 (0, 0, 0),
78321
78071
  direction = new Numbers_Vector3 (0, 0, 0),
78322
78072
  axis = new Numbers_Vector3 (0, 0, 0),
78323
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78324
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0),
78325
- rubberBandRotation = new Numbers_Rotation4 (0, 0, 1, 0);
78073
+ userOrientation = new Numbers_Rotation4 (),
78074
+ orientationOffset = new Numbers_Rotation4 (),
78075
+ rubberBandRotation = new Numbers_Rotation4 ();
78326
78076
 
78327
78077
  return function ()
78328
78078
  {
@@ -78453,8 +78203,8 @@ X3DFlyViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
78453
78203
  addRoll: (function ()
78454
78204
  {
78455
78205
  const
78456
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0),
78457
- roll = new Numbers_Rotation4 (0, 0, 1, 0);
78206
+ orientationOffset = new Numbers_Rotation4 (),
78207
+ roll = new Numbers_Rotation4 ();
78458
78208
 
78459
78209
  return function (rollAngle)
78460
78210
  {
@@ -78490,8 +78240,8 @@ X3DFlyViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
78490
78240
  addRotation: (function ()
78491
78241
  {
78492
78242
  const
78493
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78494
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
78243
+ userOrientation = new Numbers_Rotation4 (),
78244
+ orientationOffset = new Numbers_Rotation4 ();
78495
78245
 
78496
78246
  return function (fromVector, toVector)
78497
78247
  {
@@ -78724,8 +78474,8 @@ WalkViewer .prototype = Object .assign (Object .create (Navigation_X3DFlyViewer.
78724
78474
  {
78725
78475
  const
78726
78476
  localYAxis = new Numbers_Vector3 (0, 0, 0),
78727
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78728
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
78477
+ userOrientation = new Numbers_Rotation4 (),
78478
+ rotation = new Numbers_Rotation4 ();
78729
78479
 
78730
78480
  return function (velocity)
78731
78481
  {
@@ -78855,8 +78605,8 @@ const FlyViewer_default_ = FlyViewer;
78855
78605
  x_ite_Namespace.set ("x_ite/Browser/Navigation/FlyViewer", FlyViewer_default_);
78856
78606
  /* harmony default export */ const Navigation_FlyViewer = (FlyViewer_default_);
78857
78607
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/PlaneViewer.js
78858
- /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(6);
78859
- /* provided dependency */ var PlaneViewer_$ = __webpack_require__(994);
78608
+ /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(596);
78609
+ /* provided dependency */ var PlaneViewer_$ = __webpack_require__(756);
78860
78610
  /*******************************************************************************
78861
78611
  *
78862
78612
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -79165,8 +78915,8 @@ const NoneViewer_default_ = NoneViewer;
79165
78915
  x_ite_Namespace.set ("x_ite/Browser/Navigation/NoneViewer", NoneViewer_default_);
79166
78916
  /* harmony default export */ const Navigation_NoneViewer = (NoneViewer_default_);
79167
78917
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/LookAtViewer.js
79168
- /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(6);
79169
- /* provided dependency */ var LookAtViewer_$ = __webpack_require__(994);
78918
+ /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(596);
78919
+ /* provided dependency */ var LookAtViewer_$ = __webpack_require__(756);
79170
78920
  /*******************************************************************************
79171
78921
  *
79172
78922
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -79539,7 +79289,7 @@ LookAtViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
79539
79289
 
79540
79290
  event .deltaY = delta;
79541
79291
  event .zoomFactor = Math .abs (delta) / LookAtViewer_$(window) .width ();
79542
-
79292
+
79543
79293
  event .pageX = (touches [0] .pageX + touches [1] .pageX) / 2;
79544
79294
  event .pageY = (touches [0] .pageY + touches [1] .pageY) / 2;
79545
79295
 
@@ -79625,8 +79375,8 @@ LookAtViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
79625
79375
  addRotation: (function ()
79626
79376
  {
79627
79377
  const
79628
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
79629
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
79378
+ userOrientation = new Numbers_Rotation4 (),
79379
+ orientationOffset = new Numbers_Rotation4 ();
79630
79380
 
79631
79381
  return function (fromVector, toVector)
79632
79382
  {
@@ -80798,8 +80548,8 @@ const X3DPickingContext_default_ = X3DPickingContext;
80798
80548
  x_ite_Namespace.set ("x_ite/Browser/Picking/X3DPickingContext", X3DPickingContext_default_);
80799
80549
  /* harmony default export */ const Picking_X3DPickingContext = (X3DPickingContext_default_);
80800
80550
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js
80801
- /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(6);
80802
- /* provided dependency */ var PointingDevice_$ = __webpack_require__(994);
80551
+ /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(596);
80552
+ /* provided dependency */ var PointingDevice_$ = __webpack_require__(756);
80803
80553
  /*******************************************************************************
80804
80554
  *
80805
80555
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -81837,8 +81587,8 @@ const MultiSampleFrameBuffer_default_ = MultiSampleFrameBuffer;
81837
81587
  x_ite_Namespace.set ("x_ite/Rendering/MultiSampleFrameBuffer", MultiSampleFrameBuffer_default_);
81838
81588
  /* harmony default export */ const Rendering_MultiSampleFrameBuffer = (MultiSampleFrameBuffer_default_);
81839
81589
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Rendering/X3DRenderingContext.js
81840
- /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(994);
81841
- /* provided dependency */ var ResizeSensor = __webpack_require__(822);
81590
+ /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(756);
81591
+ /* provided dependency */ var ResizeSensor = __webpack_require__(681);
81842
81592
  /*******************************************************************************
81843
81593
  *
81844
81594
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -87731,7 +87481,7 @@ const X3DShaderNode_default_ = X3DShaderNode;
87731
87481
  x_ite_Namespace.set ("x_ite/Components/Shaders/X3DShaderNode", X3DShaderNode_default_);
87732
87482
  /* harmony default export */ const Shaders_X3DShaderNode = (X3DShaderNode_default_);
87733
87483
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js
87734
- /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(994);
87484
+ /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(756);
87735
87485
  /*******************************************************************************
87736
87486
  *
87737
87487
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -90508,7 +90258,7 @@ const ShaderCompiler_default_ = ShaderCompiler;
90508
90258
  x_ite_Namespace.set ("x_ite/Browser/Shaders/ShaderCompiler", ShaderCompiler_default_);
90509
90259
  /* harmony default export */ const Shaders_ShaderCompiler = (ShaderCompiler_default_);
90510
90260
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/ShaderPart.js
90511
- /* provided dependency */ var ShaderPart_$ = __webpack_require__(994);
90261
+ /* provided dependency */ var ShaderPart_$ = __webpack_require__(756);
90512
90262
  /*******************************************************************************
90513
90263
  *
90514
90264
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -90796,7 +90546,6 @@ x_ite_Namespace.set ("x_ite/Components/Shaders/ShaderPart", ShaderPart_default_)
90796
90546
  const
90797
90547
  _wireframe = Symbol (),
90798
90548
  _primitiveModes = Symbol (),
90799
- _defaultShader = Symbol (),
90800
90549
  _shaderNodes = Symbol ();
90801
90550
 
90802
90551
  function X3DShadersContext ()
@@ -95787,7 +95536,7 @@ ProximitySensor .prototype = Object .assign (Object .create (EnvironmentalSensor
95787
95536
  invModelMatrix = new Numbers_Matrix4 (),
95788
95537
  centerOfRotationMatrix = new Numbers_Matrix4 (),
95789
95538
  position = new Numbers_Vector3 (0, 0, 0),
95790
- orientation = new Numbers_Rotation4 (0, 0, 1, 0),
95539
+ orientation = new Numbers_Rotation4 (),
95791
95540
  centerOfRotation = new Numbers_Vector3 (0, 0, 0);
95792
95541
 
95793
95542
  return function ()
@@ -96125,7 +95874,7 @@ TransformSensor .prototype = Object .assign (Object .create (EnvironmentalSensor
96125
95874
  {
96126
95875
  const
96127
95876
  position = new Numbers_Vector3 (0, 0, 0),
96128
- orientation = new Numbers_Rotation4 (0, 0, 1, 0);
95877
+ orientation = new Numbers_Rotation4 ();
96129
95878
 
96130
95879
  return function ()
96131
95880
  {
@@ -97454,8 +97203,8 @@ x_ite_Namespace.set ("x_ite/Components/Followers/CoordinateDamper", CoordinateDa
97454
97203
 
97455
97204
 
97456
97205
  var
97457
- OrientationDamper_a = new Numbers_Rotation4 (0, 0, 1, 0),
97458
- OrientationDamper_rotation = new Numbers_Rotation4 (0, 0, 1, 0);
97206
+ OrientationDamper_a = new Numbers_Rotation4 (),
97207
+ OrientationDamper_rotation = new Numbers_Rotation4 ();
97459
97208
 
97460
97209
  function OrientationDamper (executionContext)
97461
97210
  {
@@ -97503,7 +97252,7 @@ OrientationDamper .prototype = Object .assign (Object .create (Followers_X3DDamp
97503
97252
  },
97504
97253
  getVector: function ()
97505
97254
  {
97506
- return new Numbers_Rotation4 (0, 0, 1, 0);
97255
+ return new Numbers_Rotation4 ();
97507
97256
  },
97508
97257
  equals: function (lhs, rhs, tolerance)
97509
97258
  {
@@ -98513,15 +98262,12 @@ Box .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.proto
98513
98262
  else
98514
98263
  {
98515
98264
  const
98516
- scale = Numbers_Vector3.divide (size, 2),
98265
+ x = Math .abs (size .x / 2),
98266
+ y = Math .abs (size .y / 2),
98267
+ z = Math .abs (size .z / 2),
98517
98268
  defaultVertices = geometry .getVertices () .getValue (),
98518
98269
  vertexArray = this .getVertices ();
98519
98270
 
98520
- let
98521
- x = scale .x,
98522
- y = scale .y,
98523
- z = scale .z;
98524
-
98525
98271
  for (let i = 0, length = defaultVertices .length; i < length; i += 4)
98526
98272
  {
98527
98273
  vertexArray .push (x * defaultVertices [i],
@@ -98530,10 +98276,6 @@ Box .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.proto
98530
98276
  1);
98531
98277
  }
98532
98278
 
98533
- x = Math .abs (x);
98534
- y = Math .abs (y);
98535
- z = Math .abs (z);
98536
-
98537
98279
  this .getMin () .set (-x, -y, -z);
98538
98280
  this .getMax () .set ( x, y, z);
98539
98281
  }
@@ -98725,7 +98467,7 @@ Cone .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.prot
98725
98467
  u = i / xDimension,
98726
98468
  theta = 2 * Math .PI * u,
98727
98469
  t = Numbers_Complex.Polar (-1, theta),
98728
- p = Numbers_Complex.multiply (t, bottomRadius);
98470
+ p = t .copy () .multiply (bottomRadius);
98729
98471
 
98730
98472
  texCoord .push (new Numbers_Vector2 ((t .imag + 1) / 2, (t .real + 1) / 2));
98731
98473
  points .push (new Numbers_Vector3 (p .imag, y2, p .real));
@@ -98918,13 +98660,13 @@ Cylinder .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.
98918
98660
  u1 = i / xDimension,
98919
98661
  theta1 = 2 * Math .PI * u1,
98920
98662
  n1 = Numbers_Complex.Polar (-1, theta1),
98921
- p1 = Numbers_Complex.multiply (n1, radius);
98663
+ p1 = n1 .copy () .multiply (radius);
98922
98664
 
98923
98665
  const
98924
98666
  u2 = (i + 1) / xDimension,
98925
98667
  theta2 = 2 * Math .PI * u2,
98926
98668
  n2 = Numbers_Complex.Polar (-1, theta2),
98927
- p2 = Numbers_Complex.multiply (n2, radius);
98669
+ p2 = n2 .copy () .multiply (radius);
98928
98670
 
98929
98671
  // p1 - p4
98930
98672
  // | \ |
@@ -99707,7 +99449,7 @@ Extrusion .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode
99707
99449
 
99708
99450
  const
99709
99451
  vector3 = new Numbers_Vector3 (0, 0, 0),
99710
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
99452
+ rotation = new Numbers_Rotation4 ();
99711
99453
 
99712
99454
  return function ()
99713
99455
  {
@@ -100129,7 +99871,7 @@ Extrusion .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode
100129
99871
  point = points [index] .copy ();
100130
99872
 
100131
99873
  point .index = index;
100132
- texCoord [index] = Numbers_Vector2.subtract (crossSection [numCapPoints - 1 - k] .getValue (), min) .divide (capMax);
99874
+ texCoord [index] = crossSection [numCapPoints - 1 - k] .getValue () .copy () .subtract (min) .divide (capMax);
100133
99875
  polygon .push (convex ? index : point);
100134
99876
  }
100135
99877
 
@@ -100169,7 +99911,7 @@ Extrusion .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode
100169
99911
  point = points [index] .copy ();
100170
99912
 
100171
99913
  point .index = index;
100172
- texCoord [index] = Numbers_Vector2.subtract (crossSection [k] .getValue (), min) .divide (capMax);
99914
+ texCoord [index] = crossSection [k] .getValue () .copy () .subtract (min) .divide (capMax);
100173
99915
  polygon .push (convex ? index : point);
100174
99916
  }
100175
99917
 
@@ -102267,7 +102009,7 @@ function CatmullRomSplineInterpolatorTemplate (Type)
102267
102009
  constructor: CatmullRomSplineInterpolatorInstance,
102268
102010
  create: function ()
102269
102011
  {
102270
- return new Type (0, 0, 0, 0);
102012
+ return Type .Zero .copy ();
102271
102013
  },
102272
102014
  copy: function (value)
102273
102015
  {
@@ -102275,15 +102017,15 @@ function CatmullRomSplineInterpolatorTemplate (Type)
102275
102017
  },
102276
102018
  subtract: function (lhs, rhs)
102277
102019
  {
102278
- return Type .subtract (lhs, rhs);
102020
+ return lhs .copy () .subtract (rhs);
102279
102021
  },
102280
102022
  multiply: function (lhs, rhs)
102281
102023
  {
102282
- return Type .multiply (lhs, rhs);
102024
+ return lhs .copy () .multiply (rhs);
102283
102025
  },
102284
102026
  divide: function (lhs, rhs)
102285
102027
  {
102286
- return Type .divide (lhs, rhs);
102028
+ return lhs .copy () .divide (rhs);
102287
102029
  },
102288
102030
  magnitude: function (value)
102289
102031
  {
@@ -102999,8 +102741,6 @@ x_ite_Namespace.set ("x_ite/Components/Interpolation/SplineScalarInterpolator",
102999
102741
 
103000
102742
 
103001
102743
 
103002
- const result = new Numbers_Rotation4 (0, 0, 1, 0);
103003
-
103004
102744
  function SquatInterpolator ()
103005
102745
  {
103006
102746
  this .s = [ ];
@@ -103047,14 +102787,21 @@ SquatInterpolator .prototype =
103047
102787
  }
103048
102788
  }
103049
102789
  else if (key .length > 0)
102790
+ {
103050
102791
  s .push (keyValue [0] .getValue () .copy ());
102792
+ }
103051
102793
  },
103052
- interpolate: function (index0, index1, weight, keyValue)
102794
+ interpolate: (function ()
103053
102795
  {
103054
- return result .assign (keyValue [index0] .getValue ()) .squad (this .s [index0],
103055
- this .s [index1],
103056
- keyValue [index1] .getValue (), weight);
103057
- },
102796
+ const result = new Numbers_Rotation4 ();
102797
+
102798
+ return function (index0, index1, weight, keyValue)
102799
+ {
102800
+ return result .assign (keyValue [index0] .getValue ()) .squad (this .s [index0],
102801
+ this .s [index1],
102802
+ keyValue [index1] .getValue (), weight);
102803
+ };
102804
+ })(),
103058
102805
  };
103059
102806
 
103060
102807
  const SquatInterpolator_default_ = SquatInterpolator;
@@ -104408,7 +104155,7 @@ Billboard .prototype = Object .assign (Object .create (Grouping_X3DGroupingNode.
104408
104155
  y = new Numbers_Vector3 (0, 0, 0),
104409
104156
  N1 = new Numbers_Vector3 (0, 0, 0),
104410
104157
  N2 = new Numbers_Vector3 (0, 0, 0),
104411
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
104158
+ rotation = new Numbers_Rotation4 ();
104412
104159
 
104413
104160
  return function (modelViewMatrix)
104414
104161
  {
@@ -106501,7 +106248,7 @@ Cylinder3 .prototype =
106501
106248
 
106502
106249
  // find the given line un-translated
106503
106250
  const
106504
- point = Numbers_Vector3.subtract (line .point, this .axis .point),
106251
+ point = line .point .copy () .subtract (this .axis .point),
106505
106252
  noTranslationLine = new Geometry_Line3 (point, line .direction);
106506
106253
 
106507
106254
  // find the un-translated line in unit cylinder's space
@@ -106696,7 +106443,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106696
106443
  this .szNormal = null;
106697
106444
  this .behind = false;
106698
106445
  this .fromVector = new Numbers_Vector3 (0, 0, 0);
106699
- this .startOffset = new Numbers_Rotation4 (0, 0, 1, 0);
106446
+ this .startOffset = new Numbers_Rotation4 ();
106700
106447
  },
106701
106448
  isBehind: function (hitRay, hitPoint)
106702
106449
  {
@@ -106706,7 +106453,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106706
106453
 
106707
106454
  this .cylinder .intersectsLine (hitRay, enter, exit);
106708
106455
 
106709
- return Numbers_Vector3.subtract (hitPoint, enter) .magnitude () > Numbers_Vector3.subtract (hitPoint, exit) .magnitude ();
106456
+ return hitPoint .distance (enter) > hitPoint .distance (exit);
106710
106457
  },
106711
106458
  getTrackPoint: function (hitRay, trackPoint)
106712
106459
  {
@@ -106715,7 +106462,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106715
106462
  this .zPlane .intersectsLine (hitRay, zPoint);
106716
106463
 
106717
106464
  const
106718
- axisPoint = Numbers_Vector3.add (zPoint, this .cylinder .axis .getPerpendicularVectorToPoint (zPoint, new Numbers_Vector3 (0, 0, 0))),
106465
+ axisPoint = zPoint .copy () .add (this .cylinder .axis .getPerpendicularVectorToPoint (zPoint, new Numbers_Vector3 (0, 0, 0))),
106719
106466
  distance = this .sxPlane .getDistanceToPoint (zPoint) / this .cylinder .radius,
106720
106467
  section = Math .floor ((distance + 1) / 2);
106721
106468
 
@@ -106732,7 +106479,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106732
106479
  },
106733
106480
  getAngle: function (rotation)
106734
106481
  {
106735
- if (Numbers_Vector3.dot (rotation .getAxis (new Numbers_Vector3 (0, 0, 0)), this .cylinder .axis .direction) > 0)
106482
+ if (rotation .getAxis (new Numbers_Vector3 (0, 0, 0)) .dot (this .cylinder .axis .direction) > 0)
106736
106483
  return rotation .angle;
106737
106484
 
106738
106485
  else
@@ -106760,7 +106507,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106760
106507
  radius = axis .getPerpendicularVectorToPoint (hitPoint, new Numbers_Vector3 (0, 0, 0)) .magnitude ();
106761
106508
 
106762
106509
  this .cylinder = new Geometry_Cylinder3 (axis, radius);
106763
- this .disk = Math .abs (Numbers_Vector3.dot (cameraBack, yAxis)) > Math .cos (this ._diskAngle .getValue ());
106510
+ this .disk = Math .abs (cameraBack .dot (yAxis)) > Math .cos (this ._diskAngle .getValue ());
106764
106511
  this .behind = this .isBehind (hitRay, hitPoint);
106765
106512
  this .yPlane = new Geometry_Plane3 (hitPoint, yAxis); // Sensor aligned y-plane
106766
106513
  this .zPlane = new Geometry_Plane3 (hitPoint, cameraBack); // Screen aligned z-plane
@@ -106768,10 +106515,10 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106768
106515
  // Compute normal like in Billboard with yAxis as axis of rotation.
106769
106516
  const
106770
106517
  billboardToViewer = this .invModelViewMatrix .origin,
106771
- sxNormal = Numbers_Vector3.cross (yAxis, billboardToViewer) .normalize ();
106518
+ sxNormal = yAxis .copy () .cross (billboardToViewer) .normalize ();
106772
106519
 
106773
106520
  this .sxPlane = new Geometry_Plane3 (new Numbers_Vector3 (0, 0, 0), sxNormal); // Billboarded special x-plane made parallel to sensors axis.
106774
- this .szNormal = Numbers_Vector3.cross (sxNormal, yAxis) .normalize (); // Billboarded special z-normal made parallel to sensors axis.
106521
+ this .szNormal = sxNormal .copy () .cross (yAxis) .normalize (); // Billboarded special z-normal made parallel to sensors axis.
106775
106522
 
106776
106523
  const trackPoint = new Numbers_Vector3 (0, 0, 0);
106777
106524
 
@@ -107020,7 +106767,7 @@ Line2 .Points = function (point1, point2)
107020
106767
  {
107021
106768
  const line = Object .create (Line2 .prototype);
107022
106769
  line .point = point1 .copy ();
107023
- line .direction = Numbers_Vector2.subtract (point2, point1) .normalize ();
106770
+ line .direction = point2 .copy () .subtract (point1) .normalize ();
107024
106771
  return line;
107025
106772
  };
107026
106773
 
@@ -107300,7 +107047,7 @@ PlaneSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X3
107300
107047
  {
107301
107048
  const
107302
107049
  axisRotation = this ._axisRotation .getValue (),
107303
- translation = Numbers_Rotation4.inverse (axisRotation) .multVecRot (endPoint .add (this .startOffset) .subtract (this .startPoint));
107050
+ translation = axisRotation .copy () .inverse () .multVecRot (endPoint .add (this .startOffset) .subtract (this .startPoint));
107304
107051
 
107305
107052
  // X component
107306
107053
 
@@ -107459,8 +107206,8 @@ Sphere3 .prototype =
107459
107206
  const
107460
107207
  rr = r * r,
107461
107208
  V = AB .cross (AC),
107462
- d = Numbers_Vector3.dot (A, V),
107463
- e = Numbers_Vector3.dot (V, V),
107209
+ d = A .dot (V),
107210
+ e = V .dot (V),
107464
107211
  sep1 = d * d > rr * e;
107465
107212
 
107466
107213
  if (sep1)
@@ -107468,12 +107215,12 @@ Sphere3 .prototype =
107468
107215
 
107469
107216
  // Testing if sphere lies outside a triangle vertex.
107470
107217
  const
107471
- aa = Numbers_Vector3.dot (A, A),
107472
- ab = Numbers_Vector3.dot (A, B),
107473
- ac = Numbers_Vector3.dot (A, C),
107474
- bb = Numbers_Vector3.dot (B, B),
107475
- bc = Numbers_Vector3.dot (B, C),
107476
- cc = Numbers_Vector3.dot (C, C),
107218
+ aa = A .dot (A),
107219
+ ab = A .dot (B),
107220
+ ac = A .dot (C),
107221
+ bb = B .dot (B),
107222
+ bc = B .dot (C),
107223
+ cc = C .dot (C),
107477
107224
  sep2 = (aa > rr) && (ab > aa) && (ac > aa),
107478
107225
  sep3 = (bb > rr) && (ab > bb) && (bc > bb),
107479
107226
  sep4 = (cc > rr) && (ac > cc) && (bc > cc);
@@ -107491,9 +107238,9 @@ Sphere3 .prototype =
107491
107238
  d1 = ab - aa,
107492
107239
  d2 = bc - bb,
107493
107240
  d3 = ac - cc,
107494
- e1 = Numbers_Vector3.dot (AB, AB),
107495
- e2 = Numbers_Vector3.dot (BC, BC),
107496
- e3 = Numbers_Vector3.dot (CA, CA);
107241
+ e1 = AB .dot (AB),
107242
+ e2 = BC .dot (BC),
107243
+ e3 = CA .dot (CA);
107497
107244
 
107498
107245
  Q1 .assign (A) .multiply (e1) .subtract (AB .multiply (d1));
107499
107246
  Q2 .assign (B) .multiply (e2) .subtract (BC .multiply (d2));
@@ -107503,9 +107250,9 @@ Sphere3 .prototype =
107503
107250
  QC = C .multiply (e1) .subtract (Q1),
107504
107251
  QA = A .multiply (e2) .subtract (Q2),
107505
107252
  QB = B .multiply (e3) .subtract (Q3),
107506
- sep5 = (Numbers_Vector3.dot (Q1, Q1) > rr * e1 * e1) && (Numbers_Vector3.dot (Q1, QC) > 0),
107507
- sep6 = (Numbers_Vector3.dot (Q2, Q2) > rr * e2 * e2) && (Numbers_Vector3.dot (Q2, QA) > 0),
107508
- sep7 = (Numbers_Vector3.dot (Q3, Q3) > rr * e3 * e3) && (Numbers_Vector3.dot (Q3, QB) > 0);
107253
+ sep5 = (Q1 .dot (Q1) > rr * e1 * e1) && (Q1 .dot (QC) > 0),
107254
+ sep6 = (Q2 .dot (Q2) > rr * e2 * e2) && (Q2 .dot (QA) > 0),
107255
+ sep7 = (Q3 .dot (Q3) > rr * e3 * e3) && (Q3 .dot (QB) > 0);
107509
107256
 
107510
107257
  if (sep5 || sep6 || sep7)
107511
107258
  return false;
@@ -107634,7 +107381,7 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107634
107381
  this .behind = false;
107635
107382
  this .fromVector = new Numbers_Vector3 (0, 0, 0);
107636
107383
  this .startPoint = new Numbers_Vector3 (0, 0, 0);
107637
- this .startOffset = new Numbers_Rotation4 (0, 0, 1, 0);
107384
+ this .startOffset = new Numbers_Rotation4 ();
107638
107385
  },
107639
107386
  getTrackPoint: function (hitRay, trackPoint, behind)
107640
107387
  {
@@ -107642,7 +107389,7 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107642
107389
 
107643
107390
  if (this .sphere .intersectsLine (hitRay, trackPoint, exit))
107644
107391
  {
107645
- if ((Numbers_Vector3.subtract (hitRay .point, exit) .magnitude () < Numbers_Vector3.subtract (hitRay .point, trackPoint) .magnitude ()) - behind)
107392
+ if ((hitRay .point .distance (exit) < hitRay .point .distance (trackPoint)) - behind)
107646
107393
  trackPoint .assign (exit);
107647
107394
 
107648
107395
  return true;
@@ -107700,7 +107447,7 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107700
107447
 
107701
107448
  this .zPlane .intersectsLine (hitRay, tangentPoint);
107702
107449
 
107703
- hitRay .set (tangentPoint, Numbers_Vector3.subtract (this .sphere .center, tangentPoint) .normalize ());
107450
+ hitRay .set (tangentPoint, this .sphere .center .copy () .subtract (tangentPoint) .normalize ());
107704
107451
 
107705
107452
  //console .log (hitRay .toString ());
107706
107453
 
@@ -107710,12 +107457,12 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107710
107457
 
107711
107458
  const
107712
107459
  triNormal = Geometry_Triangle3.normal (this .sphere .center, trackPoint, this .startPoint, new Numbers_Vector3 (0, 0, 0)),
107713
- dirFromCenter = Numbers_Vector3.subtract (trackPoint, this .sphere .center) .normalize (),
107714
- normal = Numbers_Vector3.cross (triNormal, dirFromCenter) .normalize ();
107460
+ dirFromCenter = trackPoint .copy () .subtract (this .sphere .center) .normalize (),
107461
+ normal = triNormal .copy () .cross (dirFromCenter) .normalize ();
107715
107462
 
107716
- const point1 = Numbers_Vector3.subtract (trackPoint, normal .multiply (Numbers_Vector3.subtract (tangentPoint, trackPoint) .magnitude ()));
107463
+ const point1 = trackPoint .copy () .subtract (normal .multiply (tangentPoint .copy () .subtract (trackPoint) .magnitude ()));
107717
107464
 
107718
- hitRay .set (point1, Numbers_Vector3.subtract (this .sphere .center, point1) .normalize ());
107465
+ hitRay .set (point1, this .sphere .center .copy () .subtract (point1) .normalize ());
107719
107466
 
107720
107467
  this .getTrackPoint (hitRay, trackPoint, false);
107721
107468
  }
@@ -107723,13 +107470,13 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107723
107470
  this ._trackPoint_changed = trackPoint;
107724
107471
 
107725
107472
  const
107726
- toVector = Numbers_Vector3.subtract (trackPoint, this .sphere .center),
107473
+ toVector = trackPoint .copy () .subtract (this .sphere .center),
107727
107474
  rotation = new Numbers_Rotation4 (this .fromVector, toVector);
107728
107475
 
107729
107476
  if (this .behind)
107730
107477
  rotation .inverse ();
107731
107478
 
107732
- this ._rotation_changed = Numbers_Rotation4.multRight (this .startOffset, rotation);
107479
+ this ._rotation_changed = this .startOffset .copy () .multRight (rotation);
107733
107480
  },
107734
107481
  });
107735
107482
 
@@ -112920,7 +112667,7 @@ const X3DSoundSourceNode_default_ = X3DSoundSourceNode;
112920
112667
  x_ite_Namespace.set ("x_ite/Components/Sound/X3DSoundSourceNode", X3DSoundSourceNode_default_);
112921
112668
  /* harmony default export */ const Sound_X3DSoundSourceNode = (X3DSoundSourceNode_default_);
112922
112669
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Sound/AudioClip.js
112923
- /* provided dependency */ var AudioClip_$ = __webpack_require__(994);
112670
+ /* provided dependency */ var AudioClip_$ = __webpack_require__(756);
112924
112671
  /*******************************************************************************
112925
112672
  *
112926
112673
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -115819,8 +115566,8 @@ const GIFMedia_default_ = GifMedia;
115819
115566
  x_ite_Namespace.set ("x_ite/Browser/Texturing/GIFMedia", GIFMedia_default_);
115820
115567
  /* harmony default export */ const GIFMedia = (GIFMedia_default_);
115821
115568
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/MovieTexture.js
115822
- /* provided dependency */ var MovieTexture_$ = __webpack_require__(994);
115823
- /* provided dependency */ var SuperGif = __webpack_require__(361);
115569
+ /* provided dependency */ var MovieTexture_$ = __webpack_require__(756);
115570
+ /* provided dependency */ var SuperGif = __webpack_require__(857);
115824
115571
  /*******************************************************************************
115825
115572
  *
115826
115573
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -116783,7 +116530,7 @@ const MultiTextureTransform_default_ = MultiTextureTransform;
116783
116530
  x_ite_Namespace.set ("x_ite/Components/Texturing/MultiTextureTransform", MultiTextureTransform_default_);
116784
116531
  /* harmony default export */ const Texturing_MultiTextureTransform = (MultiTextureTransform_default_);
116785
116532
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/PixelTexture.js
116786
- /* provided dependency */ var PixelTexture_$ = __webpack_require__(994);
116533
+ /* provided dependency */ var PixelTexture_$ = __webpack_require__(756);
116787
116534
  /*******************************************************************************
116788
116535
  *
116789
116536
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117494,7 +117241,7 @@ const Components_default_ = Components;
117494
117241
  x_ite_Namespace.set ("x_ite/Components", Components_default_);
117495
117242
  /* harmony default export */ const x_ite_Components = ((/* unused pure expression or super */ null && (Components_default_)));
117496
117243
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/DOMIntegration.js
117497
- /* provided dependency */ var DOMIntegration_$ = __webpack_require__(994);
117244
+ /* provided dependency */ var DOMIntegration_$ = __webpack_require__(756);
117498
117245
  /*******************************************************************************
117499
117246
  * MIT License
117500
117247
  *
@@ -118735,7 +118482,7 @@ const SupportedProfiles_default_ = SupportedProfiles;
118735
118482
  x_ite_Namespace.set ("x_ite/Configuration/SupportedProfiles", SupportedProfiles_default_);
118736
118483
  /* harmony default export */ const Configuration_SupportedProfiles = (SupportedProfiles_default_);
118737
118484
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/X3DBrowser.js
118738
- /* provided dependency */ var X3DBrowser_$ = __webpack_require__(994);
118485
+ /* provided dependency */ var X3DBrowser_$ = __webpack_require__(756);
118739
118486
  /*******************************************************************************
118740
118487
  *
118741
118488
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -119551,18 +119298,18 @@ X3DBrowser .prototype = Object .assign (Object .create (Browser_X3DBrowserContex
119551
119298
  this .setLive (false);
119552
119299
  this .getExecutionContext () .setLive (false);
119553
119300
  },
119554
- print: function ()
119301
+ print: function (... args)
119555
119302
  {
119556
- const string = Array .prototype .join .call (arguments, "");
119303
+ const string = args .join ("");
119557
119304
 
119558
119305
  console .log (string);
119559
119306
 
119560
119307
  for (const element of this [_console])
119561
119308
  element .append (document .createTextNode (string));
119562
119309
  },
119563
- println: function ()
119310
+ println: function (... args)
119564
119311
  {
119565
- const string = Array .prototype .join .call (arguments, "");
119312
+ const string = args .join ("");
119566
119313
 
119567
119314
  console .log (string);
119568
119315
 
@@ -119657,7 +119404,7 @@ const X3DBrowser_default_ = X3DBrowser;
119657
119404
  x_ite_Namespace.set ("x_ite/Browser/X3DBrowser", X3DBrowser_default_);
119658
119405
  /* harmony default export */ const Browser_X3DBrowser = (X3DBrowser_default_);
119659
119406
  ;// CONCATENATED MODULE: ./src/x_ite/Fallback.js
119660
- /* provided dependency */ var Fallback_$ = __webpack_require__(994);
119407
+ /* provided dependency */ var Fallback_$ = __webpack_require__(756);
119661
119408
  /*******************************************************************************
119662
119409
  *
119663
119410
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -119836,8 +119583,8 @@ const MicroTime_default_ = undefined;
119836
119583
  x_ite_Namespace.set ("standard/Time/MicroTime", MicroTime_default_);
119837
119584
  /* harmony default export */ const MicroTime = ((/* unused pure expression or super */ null && (MicroTime_default_)));
119838
119585
  ;// CONCATENATED MODULE: ./src/lib/jquery.js
119839
- /* provided dependency */ var jquery_$ = __webpack_require__(994);
119840
- /* provided dependency */ var pako = __webpack_require__(444);
119586
+ /* provided dependency */ var jquery_$ = __webpack_require__(756);
119587
+ /* provided dependency */ var pako = __webpack_require__(879);
119841
119588
  jquery_$.decodeText = function (input)
119842
119589
  {
119843
119590
  if (typeof input === "string")
@@ -119863,20 +119610,33 @@ jquery_$.toLowerCaseFirst = function (string)
119863
119610
  return string [0] .toLowerCase () + string .slice (1);
119864
119611
  };
119865
119612
 
119613
+ jquery_$.fn.isInViewport = function ()
119614
+ {
119615
+ const
119616
+ $this = jquery_$(this),
119617
+ $window = jquery_$(window),
119618
+ elementTop = $this .offset () .top,
119619
+ elementBottom = elementTop + $this .outerHeight (),
119620
+ viewportTop = $window .scrollTop (),
119621
+ viewportBottom = viewportTop + $window .height ();
119622
+
119623
+ return elementBottom > viewportTop && elementTop < viewportBottom;
119624
+ };
119625
+
119866
119626
  const jquery_default_ = jquery_$;
119867
119627
  ;
119868
119628
 
119869
119629
  x_ite_Namespace.set ("lib/jquery", jquery_default_);
119870
119630
  /* harmony default export */ const jquery = ((/* unused pure expression or super */ null && (jquery_default_)));
119871
119631
  ;// CONCATENATED MODULE: ./src/lib/libtess.js
119872
- /* provided dependency */ var libtess_libtess = __webpack_require__(870);
119632
+ /* provided dependency */ var libtess_libtess = __webpack_require__(405);
119873
119633
  const libtess_default_ = libtess_libtess;
119874
119634
  ;
119875
119635
 
119876
119636
  x_ite_Namespace.set ("lib/libtess", libtess_default_);
119877
119637
  /* harmony default export */ const lib_libtess = ((/* unused pure expression or super */ null && (libtess_default_)));
119878
119638
  ;// CONCATENATED MODULE: ./src/x_ite/X3D.js
119879
- /* provided dependency */ var X3D_$ = __webpack_require__(994);
119639
+ /* provided dependency */ var X3D_$ = __webpack_require__(756);
119880
119640
  /*******************************************************************************
119881
119641
  *
119882
119642
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120215,6 +119975,7 @@ class X3DCanvasElement extends HTMLElement
120215
119975
  "splashscreen",
120216
119976
  "src",
120217
119977
  "timings",
119978
+ "update",
120218
119979
  "url",
120219
119980
  ];
120220
119981
  }
@@ -120388,7 +120149,7 @@ x_ite_Namespace.set ("shim", shim_default_);
120388
120149
 
120389
120150
  // Assign X3D to global namespace.
120390
120151
 
120391
- window [Symbol .for ("X_ITE.X3D-8.7.5")] = x_ite_X3D;
120152
+ window [Symbol .for ("X_ITE.X3D-8.7.6")] = x_ite_X3D;
120392
120153
 
120393
120154
  customElements .define ("x3d-canvas", x_ite_X3DCanvasElement);
120394
120155