x_ite 8.7.4 → 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 (271) hide show
  1. package/.vscode/tasks.json +1 -1
  2. package/dist/assets/components/Annotation.js +13 -13
  3. package/dist/assets/components/Annotation.min.js +1 -1
  4. package/dist/assets/components/CADGeometry.js +13 -13
  5. package/dist/assets/components/CADGeometry.min.js +1 -1
  6. package/dist/assets/components/CubeMapTexturing.js +25 -25
  7. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  8. package/dist/assets/components/DIS.js +13 -13
  9. package/dist/assets/components/DIS.min.js +1 -1
  10. package/dist/assets/components/EventUtilities.js +9 -9
  11. package/dist/assets/components/EventUtilities.min.js +1 -1
  12. package/dist/assets/components/Geometry2D.js +21 -23
  13. package/dist/assets/components/Geometry2D.min.js +1 -1
  14. package/dist/assets/components/Geospatial.js +35 -36
  15. package/dist/assets/components/Geospatial.min.js +1 -1
  16. package/dist/assets/components/HAnim.js +18 -18
  17. package/dist/assets/components/HAnim.min.js +1 -1
  18. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  19. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  20. package/dist/assets/components/Layout.js +37 -32
  21. package/dist/assets/components/Layout.min.js +1 -1
  22. package/dist/assets/components/NURBS.js +24 -24
  23. package/dist/assets/components/NURBS.min.js +1 -1
  24. package/dist/assets/components/ParticleSystems.js +22 -22
  25. package/dist/assets/components/ParticleSystems.min.js +1 -1
  26. package/dist/assets/components/Picking.js +20 -20
  27. package/dist/assets/components/Picking.min.js +1 -1
  28. package/dist/assets/components/RigidBodyPhysics.js +25 -25
  29. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  30. package/dist/assets/components/Scripting.js +28 -28
  31. package/dist/assets/components/Scripting.min.js +1 -1
  32. package/dist/assets/components/Text.js +26 -27
  33. package/dist/assets/components/Text.min.js +1 -1
  34. package/dist/assets/components/TextureProjector.js +15 -15
  35. package/dist/assets/components/TextureProjector.min.js +1 -1
  36. package/dist/assets/components/Texturing3D.js +30 -30
  37. package/dist/assets/components/Texturing3D.min.js +1 -1
  38. package/dist/assets/components/VolumeRendering.js +19 -19
  39. package/dist/assets/components/VolumeRendering.min.js +1 -1
  40. package/dist/assets/components/X_ITE.js +9 -9
  41. package/dist/assets/components/X_ITE.min.js +1 -1
  42. package/dist/x_ite.css +1 -1
  43. package/dist/x_ite.js +1187 -1686
  44. package/dist/x_ite.min.js +1 -1
  45. package/dist/x_ite.zip +0 -0
  46. package/docs/_config.yml +1 -1
  47. package/docs/_includes/scripts.html +0 -1
  48. package/docs/_posts/components/CADGeometry/QuadSet.md +1 -1
  49. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +1 -1
  50. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +1 -1
  51. package/docs/_posts/components/EnvironmentalEffects/Background.md +1 -1
  52. package/docs/_posts/components/EnvironmentalEffects/Fog.md +1 -1
  53. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +1 -1
  54. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +1 -1
  55. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +1 -1
  56. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +1 -1
  57. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +1 -1
  58. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +1 -1
  59. package/docs/_posts/components/Followers/ColorChaser.md +1 -1
  60. package/docs/_posts/components/Followers/ColorDamper.md +1 -1
  61. package/docs/_posts/components/Followers/CoordinateChaser.md +1 -1
  62. package/docs/_posts/components/Followers/ScalarChaser.md +1 -1
  63. package/docs/_posts/components/Geometry2D/Arc2D.md +1 -1
  64. package/docs/_posts/components/Geometry2D/ArcClose2D.md +1 -1
  65. package/docs/_posts/components/Geometry2D/Circle2D.md +1 -1
  66. package/docs/_posts/components/Geometry2D/Disk2D.md +1 -1
  67. package/docs/_posts/components/Geometry2D/Polyline2D.md +1 -1
  68. package/docs/_posts/components/Geometry2D/Polypoint2D.md +1 -1
  69. package/docs/_posts/components/Geometry2D/Rectangle2D.md +1 -1
  70. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +1 -1
  71. package/docs/_posts/components/Geometry3D/Box.md +1 -1
  72. package/docs/_posts/components/Geometry3D/Cone.md +1 -1
  73. package/docs/_posts/components/Geometry3D/Cylinder.md +1 -1
  74. package/docs/_posts/components/Geometry3D/ElevationGrid.md +1 -1
  75. package/docs/_posts/components/Geometry3D/Extrusion.md +1 -1
  76. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +1 -1
  77. package/docs/_posts/components/Geometry3D/Sphere.md +1 -1
  78. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +1 -1
  79. package/docs/_posts/components/Geospatial/GeoLOD.md +1 -1
  80. package/docs/_posts/components/Geospatial/GeoViewpoint.md +1 -1
  81. package/docs/_posts/components/Grouping/Group.md +1 -1
  82. package/docs/_posts/components/Grouping/Switch.md +1 -1
  83. package/docs/_posts/components/Grouping/Transform.md +1 -1
  84. package/docs/_posts/components/HAnim/HAnimHumanoid.md +1 -1
  85. package/docs/_posts/components/Interpolation/ColorInterpolator.md +1 -1
  86. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +1 -1
  87. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +1 -1
  88. package/docs/_posts/components/Interpolation/PositionInterpolator.md +1 -1
  89. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +1 -1
  90. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +1 -1
  91. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +1 -1
  92. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +1 -1
  93. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +1 -1
  94. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +1 -1
  95. package/docs/_posts/components/Layering/LayerSet.md +1 -1
  96. package/docs/_posts/components/Layering/Viewport.md +1 -1
  97. package/docs/_posts/components/Lighting/DirectionalLight.md +1 -1
  98. package/docs/_posts/components/Lighting/PointLight.md +1 -1
  99. package/docs/_posts/components/Lighting/SpotLight.md +1 -1
  100. package/docs/_posts/components/NURBS/NurbsCurve.md +1 -1
  101. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +1 -1
  102. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +1 -1
  103. package/docs/_posts/components/Navigation/Billboard.md +1 -1
  104. package/docs/_posts/components/Navigation/Collision.md +1 -1
  105. package/docs/_posts/components/Navigation/NavigationInfo.md +1 -1
  106. package/docs/_posts/components/Navigation/OrthoViewpoint.md +1 -1
  107. package/docs/_posts/components/Navigation/Viewpoint.md +1 -1
  108. package/docs/_posts/components/Networking/Anchor.md +1 -1
  109. package/docs/_posts/components/Networking/Inline.md +1 -1
  110. package/docs/_posts/components/Networking/LoadSensor.md +1 -1
  111. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +1 -1
  112. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +1 -1
  113. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +1 -1
  114. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +1 -1
  115. package/docs/_posts/components/ParticleSystems/PointEmitter.md +1 -1
  116. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +1 -1
  117. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +1 -1
  118. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +1 -1
  119. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +1 -1
  120. package/docs/_posts/components/Picking/LinePickSensor.md +1 -1
  121. package/docs/_posts/components/Picking/PointPickSensor.md +1 -1
  122. package/docs/_posts/components/Picking/PrimitivePickSensor.md +1 -1
  123. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +1 -1
  124. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +1 -1
  125. package/docs/_posts/components/Rendering/ClipPlane.md +1 -1
  126. package/docs/_posts/components/Rendering/Color.md +1 -1
  127. package/docs/_posts/components/Rendering/ColorRGBA.md +1 -1
  128. package/docs/_posts/components/Rendering/Coordinate.md +1 -1
  129. package/docs/_posts/components/Rendering/IndexedLineSet.md +1 -1
  130. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +1 -1
  131. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +1 -1
  132. package/docs/_posts/components/Rendering/LineSet.md +1 -1
  133. package/docs/_posts/components/Rendering/PointSet.md +1 -1
  134. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +1 -1
  135. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +1 -1
  136. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +1 -1
  137. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +1 -1
  138. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +1 -1
  139. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +1 -1
  140. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +1 -1
  141. package/docs/_posts/components/Shaders/ComposedShader.md +1 -1
  142. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +1 -1
  143. package/docs/_posts/components/Shaders/ShaderPart.md +1 -1
  144. package/docs/_posts/components/Shape/Appearance.md +1 -1
  145. package/docs/_posts/components/Shape/FillProperties.md +1 -1
  146. package/docs/_posts/components/Shape/LineProperties.md +1 -1
  147. package/docs/_posts/components/Shape/Material.md +1 -1
  148. package/docs/_posts/components/Shape/TwoSidedMaterial.md +1 -1
  149. package/docs/_posts/components/Sound/AudioClip.md +1 -1
  150. package/docs/_posts/components/Text/FontStyle.md +1 -1
  151. package/docs/_posts/components/Text/Text.md +1 -1
  152. package/docs/_posts/components/Texturing/ImageTexture.md +1 -1
  153. package/docs/_posts/components/Texturing/MovieTexture.md +1 -1
  154. package/docs/_posts/components/Texturing/MultiTexture.md +1 -1
  155. package/docs/_posts/components/Texturing/PixelTexture.md +1 -1
  156. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +1 -1
  157. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +1 -1
  158. package/docs/_posts/components/Time/TimeSensor.md +1 -1
  159. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +1 -1
  160. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +1 -1
  161. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +1 -1
  162. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +1 -1
  163. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +1 -1
  164. package/docs/_posts/components/VolumeRendering/VolumeData.md +1 -1
  165. package/docs/_posts/components/X_ITE/BlendMode.md +1 -1
  166. package/docs/_posts/custom-shaders.md +1 -1
  167. package/docs/_posts/getting-started.md +7 -2
  168. package/docs/_posts/reference/browser-services.md +6 -0
  169. package/docs/_posts/reference/field-services-and-objects.md +26 -6
  170. package/docs/_posts/tutorials/adding-backgrounds.md +2 -2
  171. package/docs/_posts/tutorials/adding-sound.md +1 -1
  172. package/docs/_posts/tutorials/building-a-x3d-world.md +1 -1
  173. package/docs/_posts/tutorials/building-elevation-grids.md +1 -1
  174. package/docs/_posts/tutorials/building-primitive-shapes.md +2 -2
  175. package/docs/_posts/tutorials/controlling-appearance-with-materials.md +1 -1
  176. package/docs/_posts/tutorials/controlling-detail.md +1 -1
  177. package/docs/_posts/tutorials/hello-world.md +1 -1
  178. package/docs/_posts/tutorials/naming-nodes.md +1 -1
  179. package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +1 -1
  180. package/package.json +3 -3
  181. package/src/lib/jquery.js +13 -0
  182. package/src/standard/Geospatial/UniversalTransverseMercator.js +0 -1
  183. package/src/standard/Math/Algorithms/eigen_decomposition.js +9 -9
  184. package/src/standard/Math/Geometry/Box2.js +37 -24
  185. package/src/standard/Math/Geometry/Box3.js +37 -24
  186. package/src/standard/Math/Geometry/Cylinder3.js +1 -1
  187. package/src/standard/Math/Geometry/Line2.js +1 -1
  188. package/src/standard/Math/Geometry/Line3.js +1 -1
  189. package/src/standard/Math/Geometry/Plane3.js +1 -1
  190. package/src/standard/Math/Geometry/Sphere3.js +14 -14
  191. package/src/standard/Math/Numbers/Color3.js +10 -18
  192. package/src/standard/Math/Numbers/Color4.js +12 -23
  193. package/src/standard/Math/Numbers/Complex.js +59 -58
  194. package/src/standard/Math/Numbers/Matrix2.js +31 -45
  195. package/src/standard/Math/Numbers/Matrix3.js +59 -94
  196. package/src/standard/Math/Numbers/Matrix4.js +73 -114
  197. package/src/standard/Math/Numbers/Quaternion.js +70 -132
  198. package/src/standard/Math/Numbers/Rotation4.js +15 -42
  199. package/src/standard/Math/Numbers/Vector2.js +12 -78
  200. package/src/standard/Math/Numbers/Vector3.js +17 -94
  201. package/src/standard/Math/Numbers/Vector4.js +22 -94
  202. package/src/x_ite/Base/X3DInfoArray.js +9 -7
  203. package/src/x_ite/Base/X3DObject.js +9 -32
  204. package/src/x_ite/Base/X3DObjectArrayField.js +35 -64
  205. package/src/x_ite/Browser/Core/BrowserOptions.js +37 -0
  206. package/src/x_ite/Browser/Core/X3DCoreContext.js +21 -3
  207. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolatorTemplate.js +4 -4
  208. package/src/x_ite/Browser/Interpolation/SquatInterpolator.js +12 -7
  209. package/src/x_ite/Browser/Layout/ScreenText.js +9 -4
  210. package/src/x_ite/Browser/Navigation/ExamineViewer.js +9 -9
  211. package/src/x_ite/Browser/Navigation/LookAtViewer.js +3 -3
  212. package/src/x_ite/Browser/Navigation/WalkViewer.js +2 -2
  213. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +7 -7
  214. package/src/x_ite/Browser/Picking/VolumePicker.js +1 -1
  215. package/src/x_ite/Browser/Shaders/X3DShadersContext.js +0 -1
  216. package/src/x_ite/Browser/Text/X3DTextGeometry.js +2 -3
  217. package/src/x_ite/Browser/VERSION.js +1 -1
  218. package/src/x_ite/Browser/X3DBrowser.js +61 -68
  219. package/src/x_ite/Browser/X3DBrowserContext.js +8 -8
  220. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +1 -1
  221. package/src/x_ite/Components/EnvironmentalSensor/TransformSensor.js +1 -1
  222. package/src/x_ite/Components/Followers/OrientationChaser.js +3 -3
  223. package/src/x_ite/Components/Followers/OrientationDamper.js +3 -3
  224. package/src/x_ite/Components/Geometry2D/Rectangle2D.js +2 -3
  225. package/src/x_ite/Components/Geometry3D/Box.js +3 -10
  226. package/src/x_ite/Components/Geometry3D/Cone.js +1 -1
  227. package/src/x_ite/Components/Geometry3D/Cylinder.js +2 -2
  228. package/src/x_ite/Components/Geometry3D/Extrusion.js +3 -3
  229. package/src/x_ite/Components/Geospatial/GeoViewpoint.js +2 -2
  230. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +2 -2
  231. package/src/x_ite/Components/Layering/X3DLayerNode.js +1 -1
  232. package/src/x_ite/Components/Layout/Layout.js +1 -1
  233. package/src/x_ite/Components/Navigation/Billboard.js +1 -1
  234. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +12 -13
  235. package/src/x_ite/Components/Picking/PointPickSensor.js +1 -1
  236. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +7 -7
  237. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +1 -1
  238. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +9 -9
  239. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +1 -1
  240. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +2 -2
  241. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +1 -1
  242. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +1 -1
  243. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +3 -3
  244. package/src/x_ite/Components/TextureProjector/X3DTextureProjectorNode.js +1 -1
  245. package/src/x_ite/Execution/X3DExecutionContext.js +52 -58
  246. package/src/x_ite/Execution/X3DExportedNode.js +13 -11
  247. package/src/x_ite/Execution/X3DImportedNode.js +25 -25
  248. package/src/x_ite/Execution/X3DScene.js +129 -53
  249. package/src/x_ite/Fields/ArrayFields.js +1 -1
  250. package/src/x_ite/Fields/SFColor.js +10 -15
  251. package/src/x_ite/Fields/SFColorRGBA.js +11 -18
  252. package/src/x_ite/Fields/SFImage.js +38 -33
  253. package/src/x_ite/Fields/SFMatrix3.js +1 -3
  254. package/src/x_ite/Fields/SFMatrix4.js +1 -5
  255. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +6 -5
  256. package/src/x_ite/Fields/SFNodeCache.js +2 -2
  257. package/src/x_ite/Fields/SFRotation.js +14 -21
  258. package/src/x_ite/Fields/SFString.js +0 -1
  259. package/src/x_ite/Fields/SFVec2.js +8 -15
  260. package/src/x_ite/Fields/SFVec3.js +11 -18
  261. package/src/x_ite/Fields/SFVec4.js +12 -23
  262. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +17 -16
  263. package/src/x_ite/Parser/SVGParser.js +3 -3
  264. package/src/x_ite/Parser/X3DOptimizer.js +1 -1
  265. package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +26 -27
  266. package/src/x_ite/Prototype/X3DProtoDeclaration.js +16 -15
  267. package/src/x_ite/Rendering/X3DRenderObject.js +3 -3
  268. package/src/x_ite/Routing/X3DRoute.js +26 -25
  269. package/src/x_ite/X3DCanvasElement.js +1 -0
  270. package/docs/assets/js/autoupdate.js +0 -25
  271. package/src/x_ite/Execution/Scene.js +0 -145
package/dist/x_ite.js CHANGED
@@ -1,4 +1,4 @@
1
- /* X_ITE v8.7.4 */(function webpackUniversalModuleDefinition(root, factory) {
1
+ /* X_ITE v8.7.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
- /***/ 66:
14
+ /***/ 681:
15
15
  /***/ (function(module, exports, __webpack_require__) {
16
16
 
17
17
  "use strict";
18
- /* provided dependency */ var jQuery = __webpack_require__(917);
18
+ /* provided dependency */ var jQuery = __webpack_require__(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
- /***/ 936:
390
+ /***/ 554:
391
391
  /***/ ((__unused_webpack_module, __unused_webpack_exports, __webpack_require__) => {
392
392
 
393
- /* provided dependency */ var jQuery = __webpack_require__(917);
393
+ /* provided dependency */ var jQuery = __webpack_require__(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
- /***/ 132:
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__(917)], __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
- /***/ 917:
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
- /***/ 836:
11526
+ /***/ 405:
11527
11527
  /***/ ((module) => {
11528
11528
 
11529
11529
  /**
@@ -16302,7 +16302,7 @@ if (true) {
16302
16302
 
16303
16303
  /***/ }),
16304
16304
 
16305
- /***/ 480:
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
- /***/ 168:
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
  ;
@@ -22880,14 +22857,16 @@ X3DInfoArray .prototype = {
22880
22857
  for (const key of Reflect .ownKeys (X3DInfoArray .prototype))
22881
22858
  Object .defineProperty (X3DInfoArray .prototype, key, { enumerable: false });
22882
22859
 
22883
- Object .defineProperty (X3DInfoArray .prototype, "length",
22884
- {
22885
- get: function () { return this [_array] .length; },
22886
- });
22887
-
22888
- Object .defineProperty (X3DInfoArray .prototype, Symbol .toStringTag,
22860
+ Object .defineProperties (X3DInfoArray .prototype,
22889
22861
  {
22890
- get: function () { return this .getTypeName (); },
22862
+ length:
22863
+ {
22864
+ get: function () { return this [_array] .length; },
22865
+ },
22866
+ [Symbol .toStringTag]:
22867
+ {
22868
+ get: function () { return this .getTypeName (); },
22869
+ },
22891
22870
  });
22892
22871
 
22893
22872
  const X3DInfoArray_default_ = X3DInfoArray;
@@ -23654,7 +23633,6 @@ function Color3 (r, g, b)
23654
23633
  Color3 .prototype =
23655
23634
  {
23656
23635
  constructor: Color3,
23657
- length: 3,
23658
23636
  [Symbol .iterator]: function* ()
23659
23637
  {
23660
23638
  yield this [_r];
@@ -23770,35 +23748,28 @@ Color3 .prototype =
23770
23748
  const r = {
23771
23749
  get: function () { return this [_r]; },
23772
23750
  set: function (value) { this [_r] = clamp (value, 0, 1); },
23773
- enumerable: true,
23774
- configurable: false
23775
23751
  };
23776
23752
 
23777
23753
  const g = {
23778
23754
  get: function () { return this [_g]; },
23779
23755
  set: function (value) { this [_g] = clamp (value, 0, 1); },
23780
- enumerable: true,
23781
- configurable: false
23782
23756
  };
23783
23757
 
23784
23758
  const b = {
23785
23759
  get: function () { return this [_b]; },
23786
23760
  set: function (value) { this [_b] = clamp (value, 0, 1); },
23787
- enumerable: true,
23788
- configurable: false
23789
23761
  };
23790
23762
 
23791
- Object .defineProperty (Color3 .prototype, "r", r);
23792
- Object .defineProperty (Color3 .prototype, "g", g);
23793
- Object .defineProperty (Color3 .prototype, "b", b);
23794
-
23795
- r .enumerable = false;
23796
- g .enumerable = false;
23797
- b .enumerable = false;
23798
-
23799
- Object .defineProperty (Color3 .prototype, "0", r);
23800
- Object .defineProperty (Color3 .prototype, "1", g);
23801
- Object .defineProperty (Color3 .prototype, "2", b);
23763
+ Object .defineProperties (Color3 .prototype,
23764
+ {
23765
+ length: { value: 3 },
23766
+ 0: r,
23767
+ 1: g,
23768
+ 2: b,
23769
+ r: Object .assign ({ enumerable: true }, r),
23770
+ g: Object .assign ({ enumerable: true }, g),
23771
+ b: Object .assign ({ enumerable: true }, b),
23772
+ });
23802
23773
 
23803
23774
  Object .assign (Color3,
23804
23775
  {
@@ -23983,7 +23954,7 @@ SFColor .prototype = Object .assign (Object .create (Base_X3DField.prototype),
23983
23954
  destination .getValue () .getHSV (d),
23984
23955
  Numbers_Color3.lerp (s, d, t, r),
23985
23956
 
23986
- result .setHSV (r [0], r [1], r [2], r [3]);
23957
+ result .setHSV (r [0], r [1], r [2]);
23987
23958
 
23988
23959
  return result;
23989
23960
  };
@@ -24050,7 +24021,6 @@ const SFColor_r = {
24050
24021
  this .getValue () .r = +value;
24051
24022
  this .addEvent ();
24052
24023
  },
24053
- enumerable: true,
24054
24024
  };
24055
24025
 
24056
24026
  const SFColor_g = {
@@ -24063,7 +24033,6 @@ const SFColor_g = {
24063
24033
  this .getValue () .g = +value;
24064
24034
  this .addEvent ();
24065
24035
  },
24066
- enumerable: true,
24067
24036
  };
24068
24037
 
24069
24038
  const SFColor_b = {
@@ -24076,20 +24045,17 @@ const SFColor_b = {
24076
24045
  this .getValue () .b = +value;
24077
24046
  this .addEvent ();
24078
24047
  },
24079
- enumerable: true,
24080
24048
  };
24081
24049
 
24082
- Object .defineProperty (SFColor .prototype, "r", SFColor_r);
24083
- Object .defineProperty (SFColor .prototype, "g", SFColor_g);
24084
- Object .defineProperty (SFColor .prototype, "b", SFColor_b);
24085
-
24086
- SFColor_r .enumerable = false;
24087
- SFColor_g .enumerable = false;
24088
- SFColor_b .enumerable = false;
24089
-
24090
- Object .defineProperty (SFColor .prototype, "0", SFColor_r);
24091
- Object .defineProperty (SFColor .prototype, "1", SFColor_g);
24092
- Object .defineProperty (SFColor .prototype, "2", SFColor_b);
24050
+ Object .defineProperties (SFColor .prototype,
24051
+ {
24052
+ 0: SFColor_r,
24053
+ 1: SFColor_g,
24054
+ 2: SFColor_b,
24055
+ r: Object .assign ({ enumerable: true }, SFColor_r),
24056
+ g: Object .assign ({ enumerable: true }, SFColor_g),
24057
+ b: Object .assign ({ enumerable: true }, SFColor_b),
24058
+ });
24093
24059
 
24094
24060
  const SFColor_default_ = SFColor;
24095
24061
  ;
@@ -24166,7 +24132,6 @@ function Color4 (r, g, b, a)
24166
24132
  Color4 .prototype =
24167
24133
  {
24168
24134
  constructor: Color4,
24169
- length: 4,
24170
24135
  [Symbol .iterator]: function* ()
24171
24136
  {
24172
24137
  yield this [Color4_r];
@@ -24234,45 +24199,35 @@ Color4 .prototype =
24234
24199
  const Numbers_Color4_r = {
24235
24200
  get: function () { return this [Color4_r]; },
24236
24201
  set: function (value) { this [Color4_r] = Color4_clamp (value, 0, 1); },
24237
- enumerable: true,
24238
- configurable: false
24239
24202
  };
24240
24203
 
24241
24204
  const Numbers_Color4_g = {
24242
24205
  get: function () { return this [Color4_g]; },
24243
24206
  set: function (value) { this [Color4_g] = Color4_clamp (value, 0, 1); },
24244
- enumerable: true,
24245
- configurable: false
24246
24207
  };
24247
24208
 
24248
24209
  const Numbers_Color4_b = {
24249
24210
  get: function () { return this [Color4_b]; },
24250
24211
  set: function (value) { this [Color4_b] = Color4_clamp (value, 0, 1); },
24251
- enumerable: true,
24252
- configurable: false
24253
24212
  };
24254
24213
 
24255
24214
  const a = {
24256
24215
  get: function () { return this [_a]; },
24257
24216
  set: function (value) { this [_a] = Color4_clamp (value, 0, 1); },
24258
- enumerable: true,
24259
- configurable: false
24260
24217
  };
24261
24218
 
24262
- Object .defineProperty (Color4 .prototype, "r", Numbers_Color4_r);
24263
- Object .defineProperty (Color4 .prototype, "g", Numbers_Color4_g);
24264
- Object .defineProperty (Color4 .prototype, "b", Numbers_Color4_b);
24265
- Object .defineProperty (Color4 .prototype, "a", a);
24266
-
24267
- Numbers_Color4_r .enumerable = false;
24268
- Numbers_Color4_g .enumerable = false;
24269
- Numbers_Color4_b .enumerable = false;
24270
- a .enumerable = false;
24271
-
24272
- Object .defineProperty (Color4 .prototype, "0", Numbers_Color4_r);
24273
- Object .defineProperty (Color4 .prototype, "1", Numbers_Color4_g);
24274
- Object .defineProperty (Color4 .prototype, "2", Numbers_Color4_b);
24275
- Object .defineProperty (Color4 .prototype, "3", a);
24219
+ Object .defineProperties (Color4 .prototype,
24220
+ {
24221
+ length: { value: 4 },
24222
+ 0: Numbers_Color4_r,
24223
+ 1: Numbers_Color4_g,
24224
+ 2: Numbers_Color4_b,
24225
+ 3: a,
24226
+ r: Object .assign ({ enumerable: true }, Numbers_Color4_r),
24227
+ g: Object .assign ({ enumerable: true }, Numbers_Color4_g),
24228
+ b: Object .assign ({ enumerable: true }, Numbers_Color4_b),
24229
+ a: Object .assign ({ enumerable: true }, a),
24230
+ });
24276
24231
 
24277
24232
  Object .assign (Color4,
24278
24233
  {
@@ -24445,7 +24400,6 @@ const SFColorRGBA_r = {
24445
24400
  this .getValue () .r = +value;
24446
24401
  this .addEvent ();
24447
24402
  },
24448
- enumerable: true,
24449
24403
  };
24450
24404
 
24451
24405
  const SFColorRGBA_g = {
@@ -24458,7 +24412,6 @@ const SFColorRGBA_g = {
24458
24412
  this .getValue () .g = +value;
24459
24413
  this .addEvent ();
24460
24414
  },
24461
- enumerable: true,
24462
24415
  };
24463
24416
 
24464
24417
  const SFColorRGBA_b = {
@@ -24471,7 +24424,6 @@ const SFColorRGBA_b = {
24471
24424
  this .getValue () .b = +value;
24472
24425
  this .addEvent ();
24473
24426
  },
24474
- enumerable: true,
24475
24427
  };
24476
24428
 
24477
24429
  const SFColorRGBA_a = {
@@ -24484,23 +24436,19 @@ const SFColorRGBA_a = {
24484
24436
  this .getValue () .a = +value;
24485
24437
  this .addEvent ();
24486
24438
  },
24487
- enumerable: true,
24488
24439
  };
24489
24440
 
24490
- Object .defineProperty (SFColorRGBA .prototype, "r", SFColorRGBA_r);
24491
- Object .defineProperty (SFColorRGBA .prototype, "g", SFColorRGBA_g);
24492
- Object .defineProperty (SFColorRGBA .prototype, "b", SFColorRGBA_b);
24493
- Object .defineProperty (SFColorRGBA .prototype, "a", SFColorRGBA_a);
24494
-
24495
- SFColorRGBA_r .enumerable = false;
24496
- SFColorRGBA_g .enumerable = false;
24497
- SFColorRGBA_b .enumerable = false;
24498
- SFColorRGBA_a .enumerable = false;
24499
-
24500
- Object .defineProperty (SFColorRGBA .prototype, "0", SFColorRGBA_r);
24501
- Object .defineProperty (SFColorRGBA .prototype, "1", SFColorRGBA_g);
24502
- Object .defineProperty (SFColorRGBA .prototype, "2", SFColorRGBA_b);
24503
- Object .defineProperty (SFColorRGBA .prototype, "3", SFColorRGBA_a);
24441
+ Object .defineProperties (SFColorRGBA .prototype,
24442
+ {
24443
+ 0: SFColorRGBA_r,
24444
+ 1: SFColorRGBA_g,
24445
+ 2: SFColorRGBA_b,
24446
+ 3: SFColorRGBA_a,
24447
+ r: Object .assign ({ enumerable: true }, SFColorRGBA_r),
24448
+ g: Object .assign ({ enumerable: true }, SFColorRGBA_g),
24449
+ b: Object .assign ({ enumerable: true }, SFColorRGBA_b),
24450
+ a: Object .assign ({ enumerable: true }, SFColorRGBA_a),
24451
+ });
24504
24452
 
24505
24453
  const SFColorRGBA_default_ = SFColorRGBA;
24506
24454
  ;
@@ -24895,12 +24843,13 @@ x_ite_Namespace.set ("x_ite/Fields/SFInt32", SFInt32_default_);
24895
24843
 
24896
24844
 
24897
24845
 
24898
- function SFMatrixPrototypeTemplate (TypeName, Type, Matrix, SFVec, double)
24846
+ function SFMatrixPrototypeTemplate (Constructor, TypeName, Type, Matrix, SFVec, double)
24899
24847
  {
24900
24848
  const _formatter = double ? "DoubleFormat" : "FloatFormat";
24901
24849
 
24902
24850
  return Object .assign (Object .create (Base_X3DField.prototype),
24903
24851
  {
24852
+ constructor: Constructor,
24904
24853
  [Symbol .iterator]: function* ()
24905
24854
  {
24906
24855
  yield* this .getValue ();
@@ -24955,19 +24904,19 @@ function SFMatrixPrototypeTemplate (TypeName, Type, Matrix, SFVec, double)
24955
24904
  },
24956
24905
  transpose: function ()
24957
24906
  {
24958
- return new (this .constructor) (Matrix .transpose (this .getValue ()));
24907
+ return new (this .constructor) (this .getValue () .copy () .transpose ());
24959
24908
  },
24960
24909
  inverse: function ()
24961
24910
  {
24962
- return new (this .constructor) (Matrix .inverse (this .getValue ()));
24911
+ return new (this .constructor) (this .getValue () .copy () .inverse ());
24963
24912
  },
24964
24913
  multLeft: function (matrix)
24965
24914
  {
24966
- return new (this .constructor) (Matrix .multLeft (this .getValue (), matrix .getValue ()));
24915
+ return new (this .constructor) (this .getValue () .copy () .multLeft (matrix .getValue ()));
24967
24916
  },
24968
24917
  multRight: function (matrix)
24969
24918
  {
24970
- return new (this .constructor) (Matrix .multRight (this .getValue (), matrix .getValue ()));
24919
+ return new (this .constructor) (this .getValue () .copy () .multRight (matrix .getValue ()));
24971
24920
  },
24972
24921
  multVecMatrix: function (vector)
24973
24922
  {
@@ -25090,12 +25039,13 @@ x_ite_Namespace.set ("x_ite/Fields/SFMatrixPrototypeTemplate", SFMatrixPrototype
25090
25039
 
25091
25040
 
25092
25041
 
25093
- function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25042
+ function SFVecPrototypeTemplate (Constructor, TypeName, Type, Vector, double)
25094
25043
  {
25095
25044
  const _formatter = double ? "DoubleFormat" : "FloatFormat";
25096
25045
 
25097
25046
  return Object .assign (Object .create (Base_X3DField.prototype),
25098
25047
  {
25048
+ constructor: Constructor,
25099
25049
  [Symbol .iterator]: function* ()
25100
25050
  {
25101
25051
  yield* this .getValue ();
@@ -25118,7 +25068,7 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25118
25068
  },
25119
25069
  isDefaultValue: function ()
25120
25070
  {
25121
- return this .getValue () .equals (ValueType .Zero);
25071
+ return this .getValue () .equals (Vector .Zero);
25122
25072
  },
25123
25073
  set: function (value)
25124
25074
  {
@@ -25126,11 +25076,11 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25126
25076
  },
25127
25077
  abs: function ()
25128
25078
  {
25129
- return new (this .constructor) (ValueType .abs (this .getValue ()));
25079
+ return new (this .constructor) (this .getValue () .copy () .abs ());
25130
25080
  },
25131
25081
  add: function (vector)
25132
25082
  {
25133
- return new (this .constructor) (ValueType .add (this .getValue (), vector .getValue ()));
25083
+ return new (this .constructor) (this .getValue () .copy () .add (vector .getValue ()));
25134
25084
  },
25135
25085
  distance: function (vector)
25136
25086
  {
@@ -25138,11 +25088,11 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25138
25088
  },
25139
25089
  divide: function (value)
25140
25090
  {
25141
- return new (this .constructor) (ValueType .divide (this .getValue (), value));
25091
+ return new (this .constructor) (this .getValue () .copy () .divide (value));
25142
25092
  },
25143
25093
  divVec: function (vector)
25144
25094
  {
25145
- return new (this .constructor) (ValueType .divVec (this .getValue (), vector .getValue ()));
25095
+ return new (this .constructor) (this .getValue () .copy () .divVec (vector .getValue ()));
25146
25096
  },
25147
25097
  dot: function (vector)
25148
25098
  {
@@ -25150,7 +25100,7 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25150
25100
  },
25151
25101
  inverse: function ()
25152
25102
  {
25153
- return new (this .constructor) (ValueType .inverse (this .getValue ()));
25103
+ return new (this .constructor) (this .getValue () .copy () .inverse ());
25154
25104
  },
25155
25105
  length: function ()
25156
25106
  {
@@ -25158,35 +25108,35 @@ function SFVecPrototypeTemplate (TypeName, Type, ValueType, double)
25158
25108
  },
25159
25109
  lerp: function (destination, t)
25160
25110
  {
25161
- return new (this .constructor) (ValueType .lerp (this .getValue (), destination, t));
25111
+ return new (this .constructor) (this .getValue () .copy () .lerp (destination, t));
25162
25112
  },
25163
25113
  max: function (vector)
25164
25114
  {
25165
- return new (this .constructor) (ValueType .max (this .getValue (), vector .getValue ()));
25115
+ return new (this .constructor) (this .getValue () .copy () .max (vector .getValue ()));
25166
25116
  },
25167
25117
  min: function (vector)
25168
25118
  {
25169
- return new (this .constructor) (ValueType .min (this .getValue (), vector .getValue ()));
25119
+ return new (this .constructor) (this .getValue () .copy () .min (vector .getValue ()));
25170
25120
  },
25171
25121
  multiply: function (value)
25172
25122
  {
25173
- return new (this .constructor) (ValueType .multiply (this .getValue (), value));
25123
+ return new (this .constructor) (this .getValue () .copy () .multiply (value));
25174
25124
  },
25175
25125
  multVec: function (vector)
25176
25126
  {
25177
- return new (this .constructor) (ValueType .multVec (this .getValue (), vector .getValue ()));
25127
+ return new (this .constructor) (this .getValue () .copy () .multVec (vector .getValue ()));
25178
25128
  },
25179
25129
  negate: function ()
25180
25130
  {
25181
- return new (this .constructor) (ValueType .negate (this .getValue ()));
25131
+ return new (this .constructor) (this .getValue () .copy () .negate ());
25182
25132
  },
25183
25133
  normalize: function (vector)
25184
25134
  {
25185
- return new (this .constructor) (ValueType .normalize (this .getValue ()));
25135
+ return new (this .constructor) (this .getValue () .copy () .normalize ());
25186
25136
  },
25187
25137
  subtract: function (vector)
25188
25138
  {
25189
- return new (this .constructor) (ValueType .subtract (this .getValue (), vector .getValue ()));
25139
+ return new (this .constructor) (this .getValue () .copy () .subtract (vector .getValue ()));
25190
25140
  },
25191
25141
  toStream: function (generator)
25192
25142
  {
@@ -25302,7 +25252,6 @@ function Vector2 (x, y)
25302
25252
  Vector2 .prototype =
25303
25253
  {
25304
25254
  constructor: Vector2,
25305
- length: 2,
25306
25255
  [Symbol .iterator]: function* ()
25307
25256
  {
25308
25257
  yield this .x;
@@ -25462,20 +25411,19 @@ Vector2 .prototype =
25462
25411
  }
25463
25412
  };
25464
25413
 
25465
- Object .defineProperty (Vector2 .prototype, "0",
25466
- {
25467
- get: function () { return this .x; },
25468
- set: function (value) { this .x = value; },
25469
- enumerable: false,
25470
- configurable: false
25471
- });
25472
-
25473
- Object .defineProperty (Vector2 .prototype, "1",
25414
+ Object .defineProperties (Vector2 .prototype,
25474
25415
  {
25475
- get: function () { return this .y; },
25476
- set: function (value) { this .y = value; },
25477
- enumerable: false,
25478
- configurable: false
25416
+ length: { value: 2 },
25417
+ 0:
25418
+ {
25419
+ get: function () { return this .x; },
25420
+ set: function (value) { this .x = value; },
25421
+ },
25422
+ 1:
25423
+ {
25424
+ get: function () { return this .y; },
25425
+ set: function (value) { this .y = value; },
25426
+ },
25479
25427
  });
25480
25428
 
25481
25429
  Object .assign (Vector2,
@@ -25484,70 +25432,6 @@ Object .assign (Vector2,
25484
25432
  One: new Vector2 (1, 1),
25485
25433
  xAxis: new Vector2 (1, 0),
25486
25434
  yAxis: new Vector2 (0, 1),
25487
- negate: function (vector)
25488
- {
25489
- return vector .copy () .negate ();
25490
- },
25491
- inverse: function (vector)
25492
- {
25493
- return vector .copy () .inverse ();
25494
- },
25495
- add: function (lhs, rhs)
25496
- {
25497
- return lhs .copy () .add (rhs);
25498
- },
25499
- subtract: function (lhs, rhs)
25500
- {
25501
- return lhs .copy () .subtract (rhs);
25502
- },
25503
- multiply: function (lhs, rhs)
25504
- {
25505
- return lhs .copy () .multiply (rhs);
25506
- },
25507
- multVec: function (lhs, rhs)
25508
- {
25509
- return lhs .copy () .multVec (rhs);
25510
- },
25511
- divide: function (lhs, rhs)
25512
- {
25513
- return lhs .copy () .divide (rhs);
25514
- },
25515
- divVec: function (lhs, rhs)
25516
- {
25517
- return lhs .copy () .divVec (rhs);
25518
- },
25519
- normalize: function (vector)
25520
- {
25521
- return vector .copy () .normalize ();
25522
- },
25523
- dot: function (lhs, rhs)
25524
- {
25525
- return lhs .dot (rhs);
25526
- },
25527
- magnitude: function (vector)
25528
- {
25529
- return vector .magnitude ();
25530
- },
25531
- distance: function (lhs, rhs)
25532
- {
25533
- return lhs .distance (rhs);
25534
- },
25535
- lerp: function (source, destination, t)
25536
- {
25537
- return source .copy () .lerp (destination, t);
25538
- },
25539
- abs: function (vector)
25540
- {
25541
- return vector .copy () .abs ();
25542
- },
25543
- min: function (lhs, rhs)
25544
- {
25545
- return this .prototype .min .apply (lhs .copy (), arguments);
25546
- },
25547
- max: function (lhs, rhs)
25548
- {
25549
- return this .prototype .max .apply (lhs .copy (), arguments);
25550
- },
25551
25435
  });
25552
25436
 
25553
25437
  const Vector2_default_ = Vector2;
@@ -25627,11 +25511,7 @@ function SFVec2Template (TypeName, Type, double)
25627
25511
  throw new Error ("Invalid arguments.");
25628
25512
  }
25629
25513
 
25630
- SFVec2 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
25631
- Fields_SFVecPrototypeTemplate (TypeName, Type, Numbers_Vector2, double),
25632
- {
25633
- constructor: SFVec2,
25634
- });
25514
+ SFVec2 .prototype = Fields_SFVecPrototypeTemplate (SFVec2, TypeName, Type, Numbers_Vector2, double);
25635
25515
 
25636
25516
  for (const key of Reflect .ownKeys (SFVec2 .prototype))
25637
25517
  Object .defineProperty (SFVec2 .prototype, key, { enumerable: false });
@@ -25646,7 +25526,6 @@ function SFVec2Template (TypeName, Type, double)
25646
25526
  this .getValue () .x = +value;
25647
25527
  this .addEvent ();
25648
25528
  },
25649
- enumerable: true,
25650
25529
  };
25651
25530
 
25652
25531
  const y = {
@@ -25659,17 +25538,15 @@ function SFVec2Template (TypeName, Type, double)
25659
25538
  this .getValue () .y = +value;
25660
25539
  this .addEvent ();
25661
25540
  },
25662
- enumerable: true,
25663
25541
  };
25664
25542
 
25665
- Object .defineProperty (SFVec2 .prototype, "x", x);
25666
- Object .defineProperty (SFVec2 .prototype, "y", y);
25667
-
25668
- x .enumerable = false;
25669
- y .enumerable = false;
25670
-
25671
- Object .defineProperty (SFVec2 .prototype, "0", x);
25672
- Object .defineProperty (SFVec2 .prototype, "1", y);
25543
+ Object .defineProperties (SFVec2 .prototype,
25544
+ {
25545
+ 0: x,
25546
+ 1: y,
25547
+ x: Object .assign ({ enumerable: true }, x),
25548
+ y: Object .assign ({ enumerable: true }, y),
25549
+ });
25673
25550
 
25674
25551
  return SFVec2;
25675
25552
  }
@@ -25744,7 +25621,6 @@ function Vector3 (x, y, z)
25744
25621
  Vector3 .prototype =
25745
25622
  {
25746
25623
  constructor: Vector3,
25747
- length: 3,
25748
25624
  [Symbol .iterator]: function* ()
25749
25625
  {
25750
25626
  yield this .x;
@@ -25949,28 +25825,24 @@ Vector3 .prototype =
25949
25825
  }
25950
25826
  };
25951
25827
 
25952
- Object .defineProperty (Vector3 .prototype, "0",
25953
- {
25954
- get: function () { return this .x; },
25955
- set: function (value) { this .x = value; },
25956
- enumerable: false,
25957
- configurable: false
25958
- });
25959
-
25960
- Object .defineProperty (Vector3 .prototype, "1",
25961
- {
25962
- get: function () { return this .y; },
25963
- set: function (value) { this .y = value; },
25964
- enumerable: false,
25965
- configurable: false
25966
- });
25967
-
25968
- Object .defineProperty (Vector3 .prototype, "2",
25828
+ Object .defineProperties (Vector3 .prototype,
25969
25829
  {
25970
- get: function () { return this .z; },
25971
- set: function (value) { this .z = value; },
25972
- enumerable: false,
25973
- configurable: false
25830
+ length: { value: 3 },
25831
+ 0:
25832
+ {
25833
+ get: function () { return this .x; },
25834
+ set: function (value) { this .x = value; },
25835
+ },
25836
+ 1:
25837
+ {
25838
+ get: function () { return this .y; },
25839
+ set: function (value) { this .y = value; },
25840
+ },
25841
+ 2:
25842
+ {
25843
+ get: function () { return this .z; },
25844
+ set: function (value) { this .z = value; },
25845
+ },
25974
25846
  });
25975
25847
 
25976
25848
  Object .assign (Vector3,
@@ -25980,78 +25852,6 @@ Object .assign (Vector3,
25980
25852
  xAxis: new Vector3 (1, 0, 0),
25981
25853
  yAxis: new Vector3 (0, 1, 0),
25982
25854
  zAxis: new Vector3 (0, 0, 1),
25983
- negate: function (vector)
25984
- {
25985
- return vector .copy () .negate ();
25986
- },
25987
- inverse: function (vector)
25988
- {
25989
- return vector .copy () .inverse ();
25990
- },
25991
- add: function (lhs, rhs)
25992
- {
25993
- return lhs .copy () .add (rhs);
25994
- },
25995
- subtract: function (lhs, rhs)
25996
- {
25997
- return lhs .copy () .subtract (rhs);
25998
- },
25999
- multiply: function (lhs, rhs)
26000
- {
26001
- return lhs .copy () .multiply (rhs);
26002
- },
26003
- multVec: function (lhs, rhs)
26004
- {
26005
- return lhs .copy () .multVec (rhs);
26006
- },
26007
- divide: function (lhs, rhs)
26008
- {
26009
- return lhs .copy () .divide (rhs);
26010
- },
26011
- divVec: function (lhs, rhs)
26012
- {
26013
- return lhs .copy () .divVec (rhs);
26014
- },
26015
- cross: function (lhs, rhs)
26016
- {
26017
- return lhs .copy () .cross (rhs);
26018
- },
26019
- normalize: function (vector)
26020
- {
26021
- return vector .copy () .normalize ();
26022
- },
26023
- dot: function (lhs, rhs)
26024
- {
26025
- return lhs .dot (rhs);
26026
- },
26027
- magnitude: function (vector)
26028
- {
26029
- return vector .magnitude ();
26030
- },
26031
- distance: function (lhs, rhs)
26032
- {
26033
- return lhs .distance (rhs);
26034
- },
26035
- lerp: function (source, destination, t)
26036
- {
26037
- return source .copy () .lerp (destination, t);
26038
- },
26039
- slerp: function (source, destination, t)
26040
- {
26041
- return source .copy () .slerp (destination, t);
26042
- },
26043
- abs: function (vector)
26044
- {
26045
- return vector .copy () .abs ();
26046
- },
26047
- min: function (lhs, rhs)
26048
- {
26049
- return this .prototype .min .apply (lhs .copy (), arguments);
26050
- },
26051
- max: function (lhs, rhs)
26052
- {
26053
- return this .prototype .max .apply (lhs .copy (), arguments);
26054
- },
26055
25855
  });
26056
25856
 
26057
25857
  const Vector3_default_ = Vector3;
@@ -26109,7 +25909,6 @@ x_ite_Namespace.set ("standard/Math/Numbers/Vector3", Vector3_default_);
26109
25909
 
26110
25910
 
26111
25911
 
26112
-
26113
25912
  function Matrix2 ()
26114
25913
  {
26115
25914
  if (arguments .length)
@@ -26126,13 +25925,9 @@ function Matrix2 ()
26126
25925
  Matrix2 .prototype =
26127
25926
  {
26128
25927
  constructor: Matrix2,
26129
- order: 2,
26130
- length: 4,
26131
25928
  [Symbol .iterator]: function* ()
26132
25929
  {
26133
- const length = this .length;
26134
-
26135
- for (let i = 0; i < length; ++ i)
25930
+ for (let i = 0; i < 4; ++ i)
26136
25931
  yield this [i];
26137
25932
  },
26138
25933
  copy: function ()
@@ -26298,49 +26093,40 @@ Matrix2 .prototype =
26298
26093
  },
26299
26094
  };
26300
26095
 
26301
- Object .defineProperty (Matrix2 .prototype, "x",
26096
+ Object .defineProperties (Matrix2 .prototype,
26302
26097
  {
26303
- get: (function ()
26098
+ order: { value: 2 },
26099
+ length: { value: 4 },
26100
+ x:
26304
26101
  {
26305
- const vector = new Numbers_Vector2 (0, 0);
26306
-
26307
- return function () { return vector .set (this [0], this [1]); };
26308
- })(),
26309
- enumerable: false,
26310
- configurable: false
26311
- });
26102
+ get: (function ()
26103
+ {
26104
+ const vector = new Numbers_Vector2 (0, 0);
26312
26105
 
26313
- Object .defineProperty (Matrix2 .prototype, "y",
26314
- {
26315
- get: (function ()
26106
+ return function () { return vector .set (this [0], this [1]); };
26107
+ })(),
26108
+ },
26109
+ y:
26316
26110
  {
26317
- const vector = new Numbers_Vector2 (0, 0);
26318
-
26319
- return function () { return vector .set (this [2], this [3]); };
26320
- })(),
26321
- enumerable: false,
26322
- configurable: false
26323
- });
26324
-
26325
- Object .defineProperty (Matrix2 .prototype, "xAxis",
26326
- {
26327
- get: function () { return this [0]; },
26328
- enumerable: false,
26329
- configurable: false
26330
- });
26331
-
26332
- Object .defineProperty (Matrix2 .prototype, "origin",
26333
- {
26334
- get: function () { return this [2]; },
26335
- enumerable: false,
26336
- configurable: false
26337
- });
26111
+ get: (function ()
26112
+ {
26113
+ const vector = new Numbers_Vector2 (0, 0);
26338
26114
 
26339
- Object .defineProperty (Matrix2 .prototype, "submatrix",
26340
- {
26341
- get: function () { return this [0]; },
26342
- enumerable: false,
26343
- configurable: false
26115
+ return function () { return vector .set (this [2], this [3]); };
26116
+ })(),
26117
+ },
26118
+ xAxis:
26119
+ {
26120
+ get: function () { return this [0]; },
26121
+ },
26122
+ origin:
26123
+ {
26124
+ get: function () { return this [2]; },
26125
+ },
26126
+ submatrix:
26127
+ {
26128
+ get: function () { return this [0]; },
26129
+ },
26344
26130
  });
26345
26131
 
26346
26132
  Object .assign (Matrix2,
@@ -26411,23 +26197,23 @@ function eigen_decomposition (matrix, result)
26411
26197
  {
26412
26198
  const
26413
26199
  ORDER = matrix .order,
26200
+ SIZE = matrix .length,
26414
26201
  values = result .values,
26415
26202
  vectors = result .vectors;
26416
26203
 
26417
26204
  let
26418
- sm, // smallest entry
26419
- theta, // angle for Jacobi rotation
26420
- c, s, t, // cosine, sine, tangent of theta
26421
- tau, // sine / (1 + cos)
26422
- h, g, // two scrap values
26423
- thresh, // threshold below which no rotation done
26424
- p, q, i, j,
26425
- SIZE = matrix .length;
26205
+ sm, // smallest entry
26206
+ theta, // angle for Jacobi rotation
26207
+ c, s, t, // cosine, sine, tangent of theta
26208
+ tau, // sine / (1 + cos)
26209
+ h, g, // two scrap values
26210
+ thresh, // threshold below which no rotation done
26211
+ p, q, i, j; // indices
26426
26212
 
26427
26213
  // initializations
26428
26214
  for (i = 0; i < ORDER; ++ i)
26429
26215
  {
26430
- eigen_decomposition_a [i] = eigen_decomposition_a [i] || new Array (ORDER);
26216
+ eigen_decomposition_a [i] = eigen_decomposition_a [i] ?? [ ];
26431
26217
  eigen_decomposition_b [i] = values [i] = matrix .get1 (i, i);
26432
26218
  z [i] = 0;
26433
26219
 
@@ -26617,13 +26403,9 @@ function Matrix3 ()
26617
26403
  Matrix3 .prototype =
26618
26404
  {
26619
26405
  constructor: Matrix3,
26620
- order: 3,
26621
- length: 9,
26622
26406
  [Symbol .iterator]: function* ()
26623
26407
  {
26624
- const length = this .length;
26625
-
26626
- for (let i = 0; i < length; ++ i)
26408
+ for (let i = 0; i < 9; ++ i)
26627
26409
  yield this [i];
26628
26410
  },
26629
26411
  copy: function ()
@@ -26656,7 +26438,7 @@ Matrix3 .prototype =
26656
26438
  },
26657
26439
  rotation: function ()
26658
26440
  {
26659
- return math .atan2 (this [1], this [0]);
26441
+ return Math .atan2 (this [1], this [0]);
26660
26442
  },
26661
26443
  set1: function (r, c, value)
26662
26444
  {
@@ -27129,93 +26911,78 @@ Matrix3 .prototype =
27129
26911
  },
27130
26912
  };
27131
26913
 
27132
- Object .defineProperty (Matrix3 .prototype, "x",
26914
+ Object .defineProperties (Matrix3 .prototype,
27133
26915
  {
27134
- get: (function ()
26916
+ order: { value: 3 },
26917
+ length: { value: 9 },
26918
+ x:
27135
26919
  {
27136
- const vector = new Numbers_Vector3 (0, 0, 0);
27137
-
27138
- return function () { return vector .set (this [0], this [1], this [2]); };
27139
- })(),
27140
- enumerable: false,
27141
- configurable: false
27142
- });
26920
+ get: (function ()
26921
+ {
26922
+ const vector = new Numbers_Vector3 (0, 0, 0);
27143
26923
 
27144
- Object .defineProperty (Matrix3 .prototype, "y",
27145
- {
27146
- get: (function ()
26924
+ return function () { return vector .set (this [0], this [1], this [2]); };
26925
+ })(),
26926
+ },
26927
+ y:
27147
26928
  {
27148
- const vector = new Numbers_Vector3 (0, 0, 0);
27149
-
27150
- return function () { return vector .set (this [3], this [4], this [5]); };
27151
- })(),
27152
- enumerable: false,
27153
- configurable: false
27154
- });
26929
+ get: (function ()
26930
+ {
26931
+ const vector = new Numbers_Vector3 (0, 0, 0);
27155
26932
 
27156
- Object .defineProperty (Matrix3 .prototype, "z",
27157
- {
27158
- get: (function ()
26933
+ return function () { return vector .set (this [3], this [4], this [5]); };
26934
+ })(),
26935
+ },
26936
+ z:
27159
26937
  {
27160
- const vector = new Numbers_Vector3 (0, 0, 0);
27161
-
27162
- return function () { return vector .set (this [6], this [7], this [8]); };
27163
- })(),
27164
- enumerable: false,
27165
- configurable: false
27166
- });
26938
+ get: (function ()
26939
+ {
26940
+ const vector = new Numbers_Vector3 (0, 0, 0);
27167
26941
 
27168
- Object .defineProperty (Matrix3 .prototype, "xAxis",
27169
- {
27170
- get: (function ()
26942
+ return function () { return vector .set (this [6], this [7], this [8]); };
26943
+ })(),
26944
+ },
26945
+ xAxis:
27171
26946
  {
27172
- const vector = new Numbers_Vector2 (0, 0);
27173
-
27174
- return function () { return vector .set (this [0], this [1]); };
27175
- })(),
27176
- enumerable: false,
27177
- configurable: false
27178
- });
26947
+ get: (function ()
26948
+ {
26949
+ const vector = new Numbers_Vector2 (0, 0);
27179
26950
 
27180
- Object .defineProperty (Matrix3 .prototype, "yAxis",
27181
- {
27182
- get: (function ()
26951
+ return function () { return vector .set (this [0], this [1]); };
26952
+ })(),
26953
+ },
26954
+ yAxis:
27183
26955
  {
27184
- const vector = new Numbers_Vector2 (0, 0);
27185
-
27186
- return function () { return vector .set (this [3], this [4]); };
27187
- })(),
27188
- enumerable: false,
27189
- configurable: false
27190
- });
26956
+ get: (function ()
26957
+ {
26958
+ const vector = new Numbers_Vector2 (0, 0);
27191
26959
 
27192
- Object .defineProperty (Matrix3 .prototype, "origin",
27193
- {
27194
- get: (function ()
26960
+ return function () { return vector .set (this [3], this [4]); };
26961
+ })(),
26962
+ },
26963
+ origin:
27195
26964
  {
27196
- const vector = new Numbers_Vector2 (0, 0);
27197
-
27198
- return function () { return vector .set (this [6], this [7]); };
27199
- })(),
27200
- enumerable: false,
27201
- configurable: false
27202
- });
26965
+ get: (function ()
26966
+ {
26967
+ const vector = new Numbers_Vector2 (0, 0);
27203
26968
 
27204
- Object .defineProperty (Matrix3 .prototype, "submatrix",
27205
- {
27206
- get: (function ()
26969
+ return function () { return vector .set (this [6], this [7]); };
26970
+ })(),
26971
+ },
26972
+ submatrix:
27207
26973
  {
27208
- const matrix = new Numbers_Matrix2 ();
27209
-
27210
- return function ()
26974
+ get: (function ()
27211
26975
  {
27212
- matrix [0] = this [0]; matrix [1] = this [1];
27213
- matrix [2] = this [3]; matrix [3] = this [4];
27214
- return matrix;
27215
- };
27216
- })(),
27217
- enumerable: false,
27218
- configurable: false
26976
+ const matrix = new Numbers_Matrix2 ();
26977
+
26978
+ return function ()
26979
+ {
26980
+ matrix [0] = this [0]; matrix [1] = this [1];
26981
+ matrix [2] = this [3]; matrix [3] = this [4];
26982
+ return matrix;
26983
+ };
26984
+ })(),
26985
+ },
27219
26986
  });
27220
26987
 
27221
26988
  Object .assign (Matrix3,
@@ -27237,22 +27004,6 @@ Object .assign (Matrix3,
27237
27004
  matrix [2], matrix [3], 0,
27238
27005
  0, 0, 1);
27239
27006
  },
27240
- transpose: function (matrix)
27241
- {
27242
- return matrix .copy () .transpose ();
27243
- },
27244
- inverse: function (matrix)
27245
- {
27246
- return matrix .copy () .inverse ();
27247
- },
27248
- multLeft: function (lhs, rhs)
27249
- {
27250
- return lhs .copy () .multLeft (rhs);
27251
- },
27252
- multRight: function (lhs, rhs)
27253
- {
27254
- return lhs .copy () .multRight (rhs);
27255
- },
27256
27007
  });
27257
27008
 
27258
27009
  const m = new Matrix3 ();
@@ -27350,10 +27101,8 @@ function SFMatrix3Template (TypeName, Type, SFVec2, double)
27350
27101
  throw new Error ("Invalid arguments.");
27351
27102
  }
27352
27103
 
27353
- SFMatrix3 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
27354
- Fields_SFMatrixPrototypeTemplate (TypeName, Type, Numbers_Matrix3, SFVec2, double),
27104
+ SFMatrix3 .prototype = Object .assign (Fields_SFMatrixPrototypeTemplate (SFMatrix3, TypeName, Type, Numbers_Matrix3, SFVec2, double),
27355
27105
  {
27356
- constructor: SFMatrix3,
27357
27106
  setTransform: function (translation, rotation, scale, scaleOrientation, center)
27358
27107
  {
27359
27108
  translation = translation ? translation .getValue () : null;
@@ -27474,13 +27223,11 @@ function SFVec3Template (TypeName, Type, double)
27474
27223
  throw new Error ("Invalid arguments.");
27475
27224
  }
27476
27225
 
27477
- SFVec3 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
27478
- Fields_SFVecPrototypeTemplate (TypeName, Type, Numbers_Vector3, double),
27226
+ SFVec3 .prototype = Object .assign (Fields_SFVecPrototypeTemplate (SFVec3, TypeName, Type, Numbers_Vector3, double),
27479
27227
  {
27480
- constructor: SFVec3,
27481
27228
  cross: function (vector)
27482
27229
  {
27483
- return new (this .constructor) (Numbers_Vector3.cross (this .getValue (), vector .getValue ()));
27230
+ return new (this .constructor) (this .getValue () .copy () .cross (vector .getValue ()));
27484
27231
  },
27485
27232
  });
27486
27233
 
@@ -27497,7 +27244,6 @@ function SFVec3Template (TypeName, Type, double)
27497
27244
  this .getValue () .x = +value;
27498
27245
  this .addEvent ();
27499
27246
  },
27500
- enumerable: true,
27501
27247
  };
27502
27248
 
27503
27249
  const y = {
@@ -27510,7 +27256,6 @@ function SFVec3Template (TypeName, Type, double)
27510
27256
  this .getValue () .y = +value;
27511
27257
  this .addEvent ();
27512
27258
  },
27513
- enumerable: true,
27514
27259
  };
27515
27260
 
27516
27261
  const z = {
@@ -27523,20 +27268,17 @@ function SFVec3Template (TypeName, Type, double)
27523
27268
  this .getValue () .z = +value;
27524
27269
  this .addEvent ();
27525
27270
  },
27526
- enumerable: true,
27527
27271
  };
27528
27272
 
27529
- Object .defineProperty (SFVec3 .prototype, "x", x);
27530
- Object .defineProperty (SFVec3 .prototype, "y", y);
27531
- Object .defineProperty (SFVec3 .prototype, "z", z);
27532
-
27533
- x .enumerable = false;
27534
- y .enumerable = false;
27535
- z .enumerable = false;
27536
-
27537
- Object .defineProperty (SFVec3 .prototype, "0", x);
27538
- Object .defineProperty (SFVec3 .prototype, "1", y);
27539
- Object .defineProperty (SFVec3 .prototype, "2", z);
27273
+ Object .defineProperties (SFVec3 .prototype,
27274
+ {
27275
+ 0: x,
27276
+ 1: y,
27277
+ 2: z,
27278
+ x: Object .assign ({ enumerable: true }, x),
27279
+ y: Object .assign ({ enumerable: true }, y),
27280
+ z: Object .assign ({ enumerable: true }, z),
27281
+ });
27540
27282
 
27541
27283
  return SFVec3;
27542
27284
  }
@@ -27610,7 +27352,6 @@ function Vector4 (x, y, z, w)
27610
27352
  Vector4 .prototype =
27611
27353
  {
27612
27354
  constructor: Vector4,
27613
- length: 4,
27614
27355
  [Symbol .iterator]: function* ()
27615
27356
  {
27616
27357
  yield this .x;
@@ -27825,36 +27566,29 @@ Vector4 .prototype =
27825
27566
  },
27826
27567
  };
27827
27568
 
27828
- Object .defineProperty (Vector4 .prototype, "0",
27569
+ Object .defineProperties (Vector4 .prototype,
27829
27570
  {
27830
- get: function () { return this .x; },
27831
- set: function (value) { this .x = value; },
27832
- enumerable: false,
27833
- configurable: false
27834
- });
27835
-
27836
- Object .defineProperty (Vector4 .prototype, "1",
27837
- {
27838
- get: function () { return this .y; },
27839
- set: function (value) { this .y = value; },
27840
- enumerable: false,
27841
- configurable: false
27842
- });
27843
-
27844
- Object .defineProperty (Vector4 .prototype, "2",
27845
- {
27846
- get: function () { return this .z; },
27847
- set: function (value) { this .z = value; },
27848
- enumerable: false,
27849
- configurable: false
27850
- });
27851
-
27852
- Object .defineProperty (Vector4 .prototype, "3",
27853
- {
27854
- get: function () { return this .w; },
27855
- set: function (value) { this .w = value; },
27856
- enumerable: false,
27857
- configurable: false
27571
+ length: { value: 4 },
27572
+ 0:
27573
+ {
27574
+ get: function () { return this .x; },
27575
+ set: function (value) { this .x = value; },
27576
+ },
27577
+ 1:
27578
+ {
27579
+ get: function () { return this .y; },
27580
+ set: function (value) { this .y = value; },
27581
+ },
27582
+ 2:
27583
+ {
27584
+ get: function () { return this .z; },
27585
+ set: function (value) { this .z = value; },
27586
+ },
27587
+ 3:
27588
+ {
27589
+ get: function () { return this .w; },
27590
+ set: function (value) { this .w = value; },
27591
+ },
27858
27592
  });
27859
27593
 
27860
27594
  Object .assign (Vector4,
@@ -27865,70 +27599,6 @@ Object .assign (Vector4,
27865
27599
  yAxis: new Vector4 (0, 1, 0, 0),
27866
27600
  zAxis: new Vector4 (0, 0, 1, 0),
27867
27601
  wAxis: new Vector4 (0, 0, 0, 1),
27868
- negate: function (vector)
27869
- {
27870
- return vector .copy () .negate ();
27871
- },
27872
- inverse: function (vector)
27873
- {
27874
- return vector .copy () .inverse ();
27875
- },
27876
- add: function (lhs, rhs)
27877
- {
27878
- return lhs .copy () .add (rhs);
27879
- },
27880
- subtract: function (lhs, rhs)
27881
- {
27882
- return lhs .copy () .subtract (rhs);
27883
- },
27884
- multiply: function (lhs, rhs)
27885
- {
27886
- return lhs .copy () .multiply (rhs);
27887
- },
27888
- multVec: function (lhs, rhs)
27889
- {
27890
- return lhs .copy () .multVec (rhs);
27891
- },
27892
- divide: function (lhs, rhs)
27893
- {
27894
- return lhs .copy () .divide (rhs);
27895
- },
27896
- divVec: function (lhs, rhs)
27897
- {
27898
- return lhs .copy () .divVec (rhs);
27899
- },
27900
- normalize: function (vector)
27901
- {
27902
- return vector .copy () .normalize ();
27903
- },
27904
- dot: function (lhs, rhs)
27905
- {
27906
- return lhs .dot (rhs);
27907
- },
27908
- magnitude: function (vector)
27909
- {
27910
- return vector .magnitude ();
27911
- },
27912
- distance: function (lhs, rhs)
27913
- {
27914
- return lhs .distance (rhs);
27915
- },
27916
- lerp: function (source, destination, t)
27917
- {
27918
- return source .copy () .lerp (destination, t);
27919
- },
27920
- abs: function (vector)
27921
- {
27922
- return vector .copy () .abs ();
27923
- },
27924
- min: function (lhs, rhs)
27925
- {
27926
- return this .prototype .min .apply (lhs .copy (), arguments);
27927
- },
27928
- max: function (lhs, rhs)
27929
- {
27930
- return this .prototype .max .apply (lhs .copy (), arguments);
27931
- },
27932
27602
  });
27933
27603
 
27934
27604
  const Vector4_default_ = Vector4;
@@ -27999,7 +27669,6 @@ function Quaternion (x, y, z, w)
27999
27669
  Quaternion .prototype =
28000
27670
  {
28001
27671
  constructor: Quaternion,
28002
- length: 4,
28003
27672
  [Symbol .iterator]: function* ()
28004
27673
  {
28005
27674
  yield this .x;
@@ -28034,24 +27703,22 @@ Quaternion .prototype =
28034
27703
  },
28035
27704
  setMatrix: function (matrix)
28036
27705
  {
28037
- let i;
28038
-
28039
27706
  // First, find largest diagonal in matrix:
28040
27707
  if (matrix [0] > matrix [4])
28041
27708
  {
28042
- i = matrix [0] > matrix [8] ? 0 : 2;
27709
+ var i = matrix [0] > matrix [8] ? 0 : 2;
28043
27710
  }
28044
27711
  else
28045
27712
  {
28046
- i = matrix [4] > matrix [8] ? 1 : 2;
27713
+ var i = matrix [4] > matrix [8] ? 1 : 2;
28047
27714
  }
28048
27715
 
28049
- const scalerow = matrix [0] + matrix [4] + matrix [8];
27716
+ const scaleRow = matrix [0] + matrix [4] + matrix [8];
28050
27717
 
28051
- if (scalerow > matrix [i * 3 + i])
27718
+ if (scaleRow > matrix [i * 3 + i])
28052
27719
  {
28053
27720
  // Compute w first:
28054
- this [3] = Math .sqrt (scalerow + 1) / 2;
27721
+ this [3] = Math .sqrt (scaleRow + 1) / 2;
28055
27722
 
28056
27723
  // And compute other values:
28057
27724
  const d = 4 * this [3];
@@ -28199,9 +27866,9 @@ Quaternion .prototype =
28199
27866
  const
28200
27867
  { x: qx, y: qy, z: qz, w: qw } = this,
28201
27868
  { x: vx, y: vy, z: vz } = vector,
28202
- a = qw * qw - qx * qx - qy * qy - qz * qz,
28203
- b = 2 * (vx * qx + vy * qy + vz * qz),
28204
- c = 2 * qw;
27869
+ a = qw * qw - qx * qx - qy * qy - qz * qz,
27870
+ b = 2 * (vx * qx + vy * qy + vz * qz),
27871
+ c = 2 * qw;
28205
27872
 
28206
27873
  vector .x = a * vx + b * qx + c * (qy * vz - qz * vy);
28207
27874
  vector .y = a * vy + b * qy + c * (qz * vx - qx * vz);
@@ -28214,9 +27881,9 @@ Quaternion .prototype =
28214
27881
  const
28215
27882
  { x: qx, y: qy, z: qz, w: qw } = this,
28216
27883
  { x: vx, y: vy, z: vz } = vector,
28217
- a = qw * qw - qx * qx - qy * qy - qz * qz,
28218
- b = 2 * (vx * qx + vy * qy + vz * qz),
28219
- c = 2 * qw;
27884
+ a = qw * qw - qx * qx - qy * qy - qz * qz,
27885
+ b = 2 * (vx * qx + vy * qy + vz * qz),
27886
+ c = 2 * qw;
28220
27887
 
28221
27888
  vector .x = a * vx + b * qx - c * (qy * vz - qz * vy);
28222
27889
  vector .y = a * vy + b * qy - c * (qz * vx - qx * vz);
@@ -28341,138 +28008,85 @@ Quaternion .prototype =
28341
28008
  },
28342
28009
  };
28343
28010
 
28344
- Object .defineProperty (Quaternion .prototype, "0",
28345
- {
28346
- get: function () { return this .x; },
28347
- set: function (value) { this .x = value; },
28348
- enumerable: false,
28349
- configurable: false
28350
- });
28351
-
28352
- Object .defineProperty (Quaternion .prototype, "1",
28353
- {
28354
- get: function () { return this .y; },
28355
- set: function (value) { this .y = value; },
28356
- enumerable: false,
28357
- configurable: false
28358
- });
28359
-
28360
- Object .defineProperty (Quaternion .prototype, "2",
28011
+ Object .defineProperties (Quaternion .prototype,
28361
28012
  {
28362
- get: function () { return this .z; },
28363
- set: function (value) { this .z = value; },
28364
- enumerable: false,
28365
- configurable: false
28366
- });
28367
-
28368
- Object .defineProperty (Quaternion .prototype, "3",
28369
- {
28370
- get: function () { return this .w; },
28371
- set: function (value) { this .w = value; },
28372
- enumerable: false,
28373
- configurable: false
28374
- });
28375
-
28376
- Object .defineProperty (Quaternion .prototype, "real",
28377
- {
28378
- get: function () { return this .w; },
28379
- enumerable: false,
28380
- configurable: false
28381
- });
28382
-
28383
- Object .defineProperty (Quaternion .prototype, "imag",
28384
- {
28385
- get: (function ()
28386
- {
28387
- const result = new Numbers_Vector3 (0, 0, 0);
28388
-
28389
- return function ()
28390
- {
28391
- return result .set (this .x,
28392
- this .y,
28393
- this .z);
28394
- };
28395
- })(),
28396
- enumerable: false,
28397
- configurable: false
28398
- });
28399
-
28400
- Object .assign (Quaternion,
28401
- {
28402
- negate: function (quat)
28403
- {
28404
- return quat .copy () .negate ();
28405
- },
28406
- inverse: function (quat)
28407
- {
28408
- return quat .copy () .inverse ();
28409
- },
28410
- add: function (lhs, rhs)
28411
- {
28412
- return lhs .copy () .add (rhs);
28413
- },
28414
- subtract: function (lhs, rhs)
28415
- {
28416
- return lhs .copy () .subtract (rhs);
28417
- },
28418
- multiply: function (lhs, rhs)
28419
- {
28420
- return lhs .copy () .multiply (rhs);
28421
- },
28422
- multLeft: function (lhs, rhs)
28013
+ length: { value: 4 },
28014
+ 0:
28423
28015
  {
28424
- return lhs .copy () .multLeft (rhs);
28016
+ get: function () { return this .x; },
28017
+ set: function (value) { this .x = value; },
28425
28018
  },
28426
- multRight: function (lhs, rhs)
28019
+ 1:
28427
28020
  {
28428
- return lhs .copy () .multRight (rhs);
28021
+ get: function () { return this .y; },
28022
+ set: function (value) { this .y = value; },
28429
28023
  },
28430
- divide: function (lhs, rhs)
28024
+ 2:
28431
28025
  {
28432
- return lhs .copy () .divide (rhs);
28026
+ get: function () { return this .z; },
28027
+ set: function (value) { this .z = value; },
28433
28028
  },
28434
- normalize: function (quat)
28029
+ 3:
28435
28030
  {
28436
- return quat .copy () .normalize ();
28031
+ get: function () { return this .w; },
28032
+ set: function (value) { this .w = value; },
28437
28033
  },
28438
- slerp: function (source, destination, t)
28034
+ real:
28439
28035
  {
28440
- return source .copy () .slerp (destination, t);
28036
+ get: function () { return this .w; },
28441
28037
  },
28442
- squad: function (source, a, b, destination, t)
28443
- {
28444
- return source .copy () .squad (a, b, destination, t);
28445
- },
28446
- /*
28447
- bezier: function (q0, a, b, q1, t)
28038
+ imag:
28448
28039
  {
28449
- return q0 .copy () .squad (a, b, q1, t);
28040
+ get: (function ()
28041
+ {
28042
+ const result = new Numbers_Vector3 (0, 0, 0);
28043
+
28044
+ return function ()
28045
+ {
28046
+ return result .set (this .x,
28047
+ this .y,
28048
+ this .z);
28049
+ };
28050
+ })(),
28450
28051
  },
28451
- */
28452
- spline: function (Q0, Q1, Q2)
28052
+ });
28053
+
28054
+ Object .assign (Quaternion,
28055
+ {
28056
+ Identity: new Quaternion (0, 0, 0, 1),
28057
+ spline: (function ()
28453
28058
  {
28454
- q0 .assign (Q0);
28455
- q1 .assign (Q1);
28456
- 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);
28457
28064
 
28458
- // If the dot product is smaller than 0 we must negate the quaternion to prevent flipping. If we negate all
28459
- // 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);
28460
28070
 
28461
- if (q0 .dot (q1) < 0)
28462
- 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.
28463
28073
 
28464
- if (q2 .dot (q1) < 0)
28465
- q2 .negate ();
28074
+ if (q0 .dot (q1) < 0)
28075
+ q0 .negate ();
28466
28076
 
28467
- q1_i .assign (q1) .inverse ();
28077
+ if (q2 .dot (q1) < 0)
28078
+ q2 .negate ();
28468
28079
 
28469
- // 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 ();
28470
28081
 
28471
- return q1 .multRight (
28472
- t1 .assign (q1_i) .multRight (q0) .log () .add (t2 .assign (q1_i) .multRight (q2) .log ()) .divide (-4) .exp ()
28473
- )
28474
- .normalize () .copy ();
28475
- },
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
+ })(),
28476
28090
  });
28477
28091
 
28478
28092
  const
@@ -28480,12 +28094,6 @@ const
28480
28094
  t2 = new Quaternion (0, 0, 0, 1),
28481
28095
  t3 = new Quaternion (0, 0, 0, 1);
28482
28096
 
28483
- const
28484
- q0 = new Quaternion (0, 0, 0, 1),
28485
- q1 = new Quaternion (0, 0, 0, 1),
28486
- q2 = new Quaternion (0, 0, 0, 1),
28487
- q1_i = new Quaternion (0, 0, 0, 1);
28488
-
28489
28097
  const Quaternion_default_ = Quaternion;
28490
28098
  ;
28491
28099
 
@@ -28602,7 +28210,6 @@ function Rotation4 (x, y, z, angle)
28602
28210
  Rotation4 .prototype =
28603
28211
  {
28604
28212
  constructor: Rotation4,
28605
- length: 4,
28606
28213
  [Symbol .iterator]: function* ()
28607
28214
  {
28608
28215
  yield this [_x];
@@ -28873,7 +28480,6 @@ const x = {
28873
28480
  this .set (x, this [_y], this [_z], this [_angle]);
28874
28481
  },
28875
28482
  enumerable: true,
28876
- configurable: false
28877
28483
  };
28878
28484
 
28879
28485
  const y = {
@@ -28887,7 +28493,6 @@ const y = {
28887
28493
  this .set (this [_x], y, this [_z], this [_angle]);
28888
28494
  },
28889
28495
  enumerable: true,
28890
- configurable: false
28891
28496
  };
28892
28497
 
28893
28498
  const Rotation4_z = {
@@ -28901,7 +28506,6 @@ const Rotation4_z = {
28901
28506
  this .set (this [_x], this [_y], z, this [_angle]);
28902
28507
  },
28903
28508
  enumerable: true,
28904
- configurable: false
28905
28509
  };
28906
28510
 
28907
28511
  const angle = {
@@ -28915,56 +28519,33 @@ const angle = {
28915
28519
  this .set (this [_x], this [_y], this [_z], angle);
28916
28520
  },
28917
28521
  enumerable: true,
28918
- configurable: false
28919
28522
  };
28920
28523
 
28921
- Object .defineProperty (Rotation4 .prototype, "x", x);
28922
- Object .defineProperty (Rotation4 .prototype, "y", y);
28923
- Object .defineProperty (Rotation4 .prototype, "z", Rotation4_z);
28924
- Object .defineProperty (Rotation4 .prototype, "angle", angle);
28524
+ Object .defineProperties (Rotation4 .prototype,
28525
+ {
28526
+ length: { value: 4 },
28527
+ x: x,
28528
+ y: y,
28529
+ z: Rotation4_z,
28530
+ angle: angle,
28531
+ });
28925
28532
 
28926
28533
  x .enumerable = false;
28927
28534
  y .enumerable = false;
28928
28535
  Rotation4_z .enumerable = false;
28929
28536
  angle .enumerable = false;
28930
28537
 
28931
- Object .defineProperty (Rotation4 .prototype, "0", x);
28932
- Object .defineProperty (Rotation4 .prototype, "1", y);
28933
- Object .defineProperty (Rotation4 .prototype, "2", Rotation4_z);
28934
- Object .defineProperty (Rotation4 .prototype, "3", angle);
28538
+ Object .defineProperties (Rotation4 .prototype,
28539
+ {
28540
+ 0: x,
28541
+ 1: y,
28542
+ 2: Rotation4_z,
28543
+ 3: angle,
28544
+ });
28935
28545
 
28936
28546
  Object .assign (Rotation4,
28937
28547
  {
28938
28548
  Identity: new Rotation4 (),
28939
- inverse: function (rotation)
28940
- {
28941
- return rotation .copy () .inverse ();
28942
- },
28943
- multRight: function (lhs, rhs)
28944
- {
28945
- return lhs .copy () .multRight (rhs);
28946
- },
28947
- normalize: function (rotation)
28948
- {
28949
- return rotation .copy () .normalize ();
28950
- },
28951
- slerp: function (source, destination, t)
28952
- {
28953
- return source .copy () .slerp (destination, t);
28954
- },
28955
- squad: function (source, a, b, destination, t)
28956
- {
28957
- return source .copy () .squad (a, b, destination, t);
28958
- },
28959
- /*
28960
- bezier: function (source, a, b, destination, t)
28961
- {
28962
- const copy = Object .create (this .prototype);
28963
- copy [_quaternion] = Quaternion .bezier (source [_quaternion], a, b, destination [_quaternion], t);
28964
- copy .update ();
28965
- return copy;
28966
- },
28967
- */
28968
28549
  spline: function (r0, r1, r2)
28969
28550
  {
28970
28551
  const copy = Object .create (this .prototype);
@@ -29050,13 +28631,9 @@ function Matrix4_Matrix4 ()
29050
28631
  Matrix4_Matrix4 .prototype =
29051
28632
  {
29052
28633
  constructor: Matrix4_Matrix4,
29053
- order: 4,
29054
- length: 16,
29055
28634
  [Symbol .iterator]: function* ()
29056
28635
  {
29057
- const length = this .length;
29058
-
29059
- for (let i = 0; i < length; ++ i)
28636
+ for (let i = 0; i < 16; ++ i)
29060
28637
  yield this [i];
29061
28638
  },
29062
28639
  copy: function ()
@@ -29654,118 +29231,97 @@ Matrix4_Matrix4 .prototype =
29654
29231
  },
29655
29232
  };
29656
29233
 
29657
- Object .defineProperty (Matrix4_Matrix4 .prototype, "x",
29234
+ Object .defineProperties (Matrix4_Matrix4 .prototype,
29658
29235
  {
29659
- get: (function ()
29236
+ order: { value: 4 },
29237
+ length: { value: 16 },
29238
+ x:
29660
29239
  {
29661
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29662
-
29663
- return function () { return vector .set (this [0], this [1], this [2], this [3]); };
29664
- })(),
29665
- enumerable: false,
29666
- configurable: false
29667
- });
29240
+ get: (function ()
29241
+ {
29242
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29668
29243
 
29669
- Object .defineProperty (Matrix4_Matrix4 .prototype, "y",
29670
- {
29671
- get: (function ()
29244
+ return function () { return vector .set (this [0], this [1], this [2], this [3]); };
29245
+ })(),
29246
+ },
29247
+ y:
29672
29248
  {
29673
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29674
-
29675
- return function () { return vector .set (this [4], this [5], this [6], this [7]); };
29676
- })(),
29677
- enumerable: false,
29678
- configurable: false
29679
- });
29249
+ get: (function ()
29250
+ {
29251
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29680
29252
 
29681
- Object .defineProperty (Matrix4_Matrix4 .prototype, "z",
29682
- {
29683
- get: (function ()
29253
+ return function () { return vector .set (this [4], this [5], this [6], this [7]); };
29254
+ })(),
29255
+ },
29256
+ z:
29684
29257
  {
29685
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29686
-
29687
- return function () { return vector .set (this [8], this [9], this [10], this [11]); };
29688
- })(),
29689
- enumerable: false,
29690
- configurable: false
29691
- });
29258
+ get: (function ()
29259
+ {
29260
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29692
29261
 
29693
- Object .defineProperty (Matrix4_Matrix4 .prototype, "w",
29694
- {
29695
- get: (function ()
29262
+ return function () { return vector .set (this [8], this [9], this [10], this [11]); };
29263
+ })(),
29264
+ },
29265
+ w:
29696
29266
  {
29697
- const vector = new Numbers_Vector4 (0, 0, 0, 0);
29698
-
29699
- return function () { return vector .set (this [12], this [13], this [14], this [15]); };
29700
- })(),
29701
- enumerable: false,
29702
- configurable: false
29703
- });
29267
+ get: (function ()
29268
+ {
29269
+ const vector = new Numbers_Vector4 (0, 0, 0, 0);
29704
29270
 
29705
- Object .defineProperty (Matrix4_Matrix4 .prototype, "xAxis",
29706
- {
29707
- get: (function ()
29271
+ return function () { return vector .set (this [12], this [13], this [14], this [15]); };
29272
+ })(),
29273
+ },
29274
+ xAxis:
29708
29275
  {
29709
- const vector = new Numbers_Vector3 (0, 0, 0);
29710
-
29711
- return function () { return vector .set (this [0], this [1], this [2]); };
29712
- })(),
29713
- enumerable: false,
29714
- configurable: false
29715
- });
29276
+ get: (function ()
29277
+ {
29278
+ const vector = new Numbers_Vector3 (0, 0, 0);
29716
29279
 
29717
- Object .defineProperty (Matrix4_Matrix4 .prototype, "yAxis",
29718
- {
29719
- get: (function ()
29280
+ return function () { return vector .set (this [0], this [1], this [2]); };
29281
+ })(),
29282
+ },
29283
+ yAxis:
29720
29284
  {
29721
- const vector = new Numbers_Vector3 (0, 0, 0);
29722
-
29723
- return function () { return vector .set (this [4], this [5], this [6]); };
29724
- })(),
29725
- enumerable: false,
29726
- configurable: false
29727
- });
29285
+ get: (function ()
29286
+ {
29287
+ const vector = new Numbers_Vector3 (0, 0, 0);
29728
29288
 
29729
- Object .defineProperty (Matrix4_Matrix4 .prototype, "zAxis",
29730
- {
29731
- get: (function ()
29289
+ return function () { return vector .set (this [4], this [5], this [6]); };
29290
+ })(),
29291
+ },
29292
+ zAxis:
29732
29293
  {
29733
- const vector = new Numbers_Vector3 (0, 0, 0);
29734
-
29735
- return function () { return vector .set (this [8], this [9], this [10]); };
29736
- })(),
29737
- enumerable: false,
29738
- configurable: false
29739
- });
29294
+ get: (function ()
29295
+ {
29296
+ const vector = new Numbers_Vector3 (0, 0, 0);
29740
29297
 
29741
- Object .defineProperty (Matrix4_Matrix4 .prototype, "origin",
29742
- {
29743
- get: (function ()
29298
+ return function () { return vector .set (this [8], this [9], this [10]); };
29299
+ })(),
29300
+ },
29301
+ origin:
29744
29302
  {
29745
- const vector = new Numbers_Vector3 (0, 0, 0);
29746
-
29747
- return function () { return vector .set (this [12], this [13], this [14]); };
29748
- })(),
29749
- enumerable: false,
29750
- configurable: false
29751
- });
29303
+ get: (function ()
29304
+ {
29305
+ const vector = new Numbers_Vector3 (0, 0, 0);
29752
29306
 
29753
- Object .defineProperty (Matrix4_Matrix4 .prototype, "submatrix",
29754
- {
29755
- get: (function ()
29307
+ return function () { return vector .set (this [12], this [13], this [14]); };
29308
+ })(),
29309
+ },
29310
+ submatrix:
29756
29311
  {
29757
- const matrix = new Numbers_Matrix3 ();
29758
-
29759
- return function ()
29312
+ get: (function ()
29760
29313
  {
29761
- matrix [0] = this [0]; matrix [1] = this [1]; matrix [2] = this [ 2];
29762
- matrix [3] = this [4]; matrix [4] = this [5]; matrix [5] = this [ 6];
29763
- matrix [6] = this [8]; matrix [7] = this [9]; matrix [8] = this [10];
29764
- return matrix;
29765
- };
29766
- })(),
29767
- enumerable: false,
29768
- configurable: false
29314
+ const matrix = new Numbers_Matrix3 ();
29315
+
29316
+ return function ()
29317
+ {
29318
+ matrix [0] = this [0]; matrix [1] = this [1]; matrix [2] = this [ 2];
29319
+ matrix [3] = this [4]; matrix [4] = this [5]; matrix [5] = this [ 6];
29320
+ matrix [6] = this [8]; matrix [7] = this [9]; matrix [8] = this [10];
29321
+ return matrix;
29322
+ };
29323
+ })(),
29324
+ },
29769
29325
  });
29770
29326
 
29771
29327
  Object .assign (Matrix4_Matrix4,
@@ -29793,22 +29349,6 @@ Object .assign (Matrix4_Matrix4,
29793
29349
  matrix [6], matrix [7], matrix [8], 0,
29794
29350
  0, 0, 0, 1);
29795
29351
  },
29796
- transpose: function (matrix)
29797
- {
29798
- return matrix .copy () .transpose ();
29799
- },
29800
- inverse: function (matrix)
29801
- {
29802
- return matrix .copy () .inverse ();
29803
- },
29804
- multLeft: function (lhs, rhs)
29805
- {
29806
- return lhs .copy () .multLeft (rhs);
29807
- },
29808
- multRight: function (lhs, rhs)
29809
- {
29810
- return lhs .copy () .multRight (rhs);
29811
- },
29812
29352
  });
29813
29353
 
29814
29354
  const
@@ -29912,11 +29452,7 @@ function SFMatrix4Template (TypeName, Type, SFVec3, double)
29912
29452
  throw new Error ("Invalid arguments.");
29913
29453
  }
29914
29454
 
29915
- SFMatrix4 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
29916
- Fields_SFMatrixPrototypeTemplate (TypeName, Type, Numbers_Matrix4, SFVec3, double),
29917
- {
29918
- constructor: SFMatrix4,
29919
- });
29455
+ SFMatrix4 .prototype = Fields_SFMatrixPrototypeTemplate (SFMatrix4, TypeName, Type, Numbers_Matrix4, SFVec3, double);
29920
29456
 
29921
29457
  for (const key of Reflect .ownKeys (SFMatrix4 .prototype))
29922
29458
  Object .defineProperty (SFMatrix4 .prototype, key, { enumerable: false });
@@ -30039,11 +29575,11 @@ function dispose ()
30039
29575
  target = this [_target],
30040
29576
  value = target .getValue ();
30041
29577
 
30042
- cache .delete (value);
29578
+ Base_X3DField.prototype.dispose.call (target);
30043
29579
 
30044
29580
  value ?.dispose ();
30045
29581
 
30046
- Base_X3DField.prototype.dispose.call (target);
29582
+ cache .delete (value);
30047
29583
  }
30048
29584
 
30049
29585
  const SFNodeCache_default_ = SFNodeCache;
@@ -30684,11 +30220,11 @@ SFRotation .prototype = Object .assign (Object .create (Base_X3DField.prototype)
30684
30220
  },
30685
30221
  inverse: function ()
30686
30222
  {
30687
- return new SFRotation (Numbers_Rotation4.inverse (this .getValue ()));
30223
+ return new SFRotation (this .getValue () .copy () .inverse ());
30688
30224
  },
30689
30225
  multiply: function (rotation)
30690
30226
  {
30691
- return new SFRotation (Numbers_Rotation4.multRight (this .getValue (), rotation .getValue ()));
30227
+ return new SFRotation (this .getValue () .copy () .multRight (rotation .getValue ()));
30692
30228
  },
30693
30229
  multVec: function (vector)
30694
30230
  {
@@ -30696,7 +30232,7 @@ SFRotation .prototype = Object .assign (Object .create (Base_X3DField.prototype)
30696
30232
  },
30697
30233
  slerp: function (rotation, t)
30698
30234
  {
30699
- return new SFRotation (Numbers_Rotation4.slerp (this .getValue (), rotation .getValue (), t));
30235
+ return new SFRotation (this .getValue () .copy () .slerp (rotation .getValue (), t));
30700
30236
  },
30701
30237
  toStream: function (generator)
30702
30238
  {
@@ -30758,7 +30294,6 @@ const SFRotation_x = {
30758
30294
  this .getValue () .x = +value;
30759
30295
  this .addEvent ();
30760
30296
  },
30761
- enumerable: true,
30762
30297
  };
30763
30298
 
30764
30299
  const SFRotation_y = {
@@ -30771,7 +30306,6 @@ const SFRotation_y = {
30771
30306
  this .getValue () .y = +value;
30772
30307
  this .addEvent ();
30773
30308
  },
30774
- enumerable: true,
30775
30309
  };
30776
30310
 
30777
30311
  const SFRotation_z = {
@@ -30784,7 +30318,6 @@ const SFRotation_z = {
30784
30318
  this .getValue () .z = +value;
30785
30319
  this .addEvent ();
30786
30320
  },
30787
- enumerable: true,
30788
30321
  };
30789
30322
 
30790
30323
  const SFRotation_angle = {
@@ -30797,23 +30330,19 @@ const SFRotation_angle = {
30797
30330
  this .getValue () .angle = +value;
30798
30331
  this .addEvent ();
30799
30332
  },
30800
- enumerable: true,
30801
30333
  };
30802
30334
 
30803
- Object .defineProperty (SFRotation .prototype, "x", SFRotation_x);
30804
- Object .defineProperty (SFRotation .prototype, "y", SFRotation_y);
30805
- Object .defineProperty (SFRotation .prototype, "z", SFRotation_z);
30806
- Object .defineProperty (SFRotation .prototype, "angle", SFRotation_angle);
30807
-
30808
- SFRotation_x .enumerable = false;
30809
- SFRotation_y .enumerable = false;
30810
- SFRotation_z .enumerable = false;
30811
- SFRotation_angle .enumerable = false;
30812
-
30813
- Object .defineProperty (SFRotation .prototype, "0", SFRotation_x);
30814
- Object .defineProperty (SFRotation .prototype, "1", SFRotation_y);
30815
- Object .defineProperty (SFRotation .prototype, "2", SFRotation_z);
30816
- Object .defineProperty (SFRotation .prototype, "3", SFRotation_angle);
30335
+ Object .defineProperties (SFRotation .prototype,
30336
+ {
30337
+ 0: SFRotation_x,
30338
+ 1: SFRotation_y,
30339
+ 2: SFRotation_z,
30340
+ 3: SFRotation_angle,
30341
+ x: Object .assign ({ enumerable: true }, SFRotation_x),
30342
+ y: Object .assign ({ enumerable: true }, SFRotation_y),
30343
+ z: Object .assign ({ enumerable: true }, SFRotation_z),
30344
+ angle: Object .assign ({ enumerable: true }, SFRotation_angle),
30345
+ });
30817
30346
 
30818
30347
  const SFRotation_default_ = SFRotation;
30819
30348
  ;
@@ -30953,7 +30482,6 @@ Object .defineProperty (SFString .prototype, "length",
30953
30482
  {
30954
30483
  return this .getValue () .length;
30955
30484
  },
30956
- enumerable: true,
30957
30485
  });
30958
30486
 
30959
30487
  const SFString_default_ = SFString;
@@ -31143,11 +30671,7 @@ function SFVec4Template (TypeName, Type, double)
31143
30671
  throw new Error ("Invalid arguments.");
31144
30672
  }
31145
30673
 
31146
- SFVec4 .prototype = Object .assign (Object .create (Base_X3DField.prototype),
31147
- Fields_SFVecPrototypeTemplate (TypeName, Type, Numbers_Vector4, double),
31148
- {
31149
- constructor: SFVec4,
31150
- });
30674
+ SFVec4 .prototype = Fields_SFVecPrototypeTemplate (SFVec4, TypeName, Type, Numbers_Vector4, double);
31151
30675
 
31152
30676
  for (const key of Reflect .ownKeys (SFVec4 .prototype))
31153
30677
  Object .defineProperty (SFVec4 .prototype, key, { enumerable: false });
@@ -31162,7 +30686,6 @@ function SFVec4Template (TypeName, Type, double)
31162
30686
  this .getValue () .x = +value;
31163
30687
  this .addEvent ();
31164
30688
  },
31165
- enumerable: true,
31166
30689
  };
31167
30690
 
31168
30691
  const y = {
@@ -31175,7 +30698,6 @@ function SFVec4Template (TypeName, Type, double)
31175
30698
  this .getValue () .y = +value;
31176
30699
  this .addEvent ();
31177
30700
  },
31178
- enumerable: true,
31179
30701
  };
31180
30702
 
31181
30703
  const z = {
@@ -31188,7 +30710,6 @@ function SFVec4Template (TypeName, Type, double)
31188
30710
  this .getValue () .z = +value;
31189
30711
  this .addEvent ();
31190
30712
  },
31191
- enumerable: true,
31192
30713
  };
31193
30714
 
31194
30715
  const w = {
@@ -31201,23 +30722,19 @@ function SFVec4Template (TypeName, Type, double)
31201
30722
  this .getValue () .w = +value;
31202
30723
  this .addEvent ();
31203
30724
  },
31204
- enumerable: true,
31205
30725
  };
31206
30726
 
31207
- Object .defineProperty (SFVec4 .prototype, "x", x);
31208
- Object .defineProperty (SFVec4 .prototype, "y", y);
31209
- Object .defineProperty (SFVec4 .prototype, "z", z);
31210
- Object .defineProperty (SFVec4 .prototype, "w", w);
31211
-
31212
- x .enumerable = false;
31213
- y .enumerable = false;
31214
- z .enumerable = false;
31215
- w .enumerable = false;
31216
-
31217
- Object .defineProperty (SFVec4 .prototype, "0", x);
31218
- Object .defineProperty (SFVec4 .prototype, "1", y);
31219
- Object .defineProperty (SFVec4 .prototype, "2", z);
31220
- Object .defineProperty (SFVec4 .prototype, "3", w);
30727
+ Object .defineProperties (SFVec4 .prototype,
30728
+ {
30729
+ 0: x,
30730
+ 1: y,
30731
+ 2: z,
30732
+ 3: w,
30733
+ x: Object .assign ({ enumerable: true }, x),
30734
+ y: Object .assign ({ enumerable: true }, y),
30735
+ z: Object .assign ({ enumerable: true }, z),
30736
+ w: Object .assign ({ enumerable: true }, w),
30737
+ });
31221
30738
 
31222
30739
  return SFVec4;
31223
30740
  }
@@ -31414,8 +30931,7 @@ x_ite_Namespace.set ("x_ite/Base/X3DArrayField", X3DArrayField_default_);
31414
30931
 
31415
30932
  const
31416
30933
  X3DObjectArrayField_target = Symbol (),
31417
- X3DObjectArrayField_proxy = Symbol (),
31418
- _find = Symbol ();
30934
+ X3DObjectArrayField_proxy = Symbol ();
31419
30935
 
31420
30936
  const X3DObjectArrayField_handler =
31421
30937
  {
@@ -31557,6 +31073,10 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31557
31073
 
31558
31074
  return true;
31559
31075
  },
31076
+ isDefaultValue: function ()
31077
+ {
31078
+ return this .length === 0;
31079
+ },
31560
31080
  set: function (value)
31561
31081
  {
31562
31082
  const target = this [X3DObjectArrayField_target];
@@ -31568,10 +31088,6 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31568
31088
  for (let i = 0, length = value .length; i < length; ++ i)
31569
31089
  array [i] .set (value [i] instanceof Base_X3DField ? value [i] .getValue () : value [i]);
31570
31090
  },
31571
- isDefaultValue: function ()
31572
- {
31573
- return this .length === 0;
31574
- },
31575
31091
  setValue: function (value)
31576
31092
  {
31577
31093
  const target = this [X3DObjectArrayField_target];
@@ -31606,10 +31122,14 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31606
31122
 
31607
31123
  if (array .length)
31608
31124
  {
31609
- const field = array .shift ();
31125
+ const
31126
+ field = array .shift (),
31127
+ result = field .valueOf ();
31128
+
31610
31129
  target .removeChildObject (field);
31611
31130
  target .addEvent ();
31612
- return field .valueOf ();
31131
+
31132
+ return result;
31613
31133
  }
31614
31134
  },
31615
31135
  push: function (value)
@@ -31639,10 +31159,14 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31639
31159
 
31640
31160
  if (array .length)
31641
31161
  {
31642
- const field = array .pop ();
31162
+ const
31163
+ field = array .pop (),
31164
+ result = field .valueOf ();
31165
+
31643
31166
  target .removeChildObject (field);
31644
31167
  target .addEvent ();
31645
- return field .valueOf ();
31168
+
31169
+ return result;
31646
31170
  }
31647
31171
  },
31648
31172
  splice: function (index, deleteCount, ... insertValues)
@@ -31683,53 +31207,28 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31683
31207
 
31684
31208
  target .addEvent ();
31685
31209
  },
31686
- [_find]: function (first, last, value)
31687
- {
31688
- const
31689
- target = this [X3DObjectArrayField_target],
31690
- values = target .getValue ();
31691
-
31692
- if (typeof value === "function")
31693
- {
31694
- for (let i = first; i < last; ++ i)
31695
- {
31696
- if (value (values [i] .valueOf ()))
31697
- return i;
31698
- }
31699
-
31700
- return last;
31701
- }
31702
-
31703
- for (let i = first; i < last; ++ i)
31704
- {
31705
- if (values [i] .equals (value))
31706
- return i;
31707
- }
31708
-
31709
- return last;
31710
- },
31711
31210
  remove: function (first, last, value)
31712
31211
  {
31713
31212
  const
31714
31213
  target = this [X3DObjectArrayField_target],
31715
- values = target .getValue ();
31214
+ array = target .getValue ();
31716
31215
 
31717
31216
  if (typeof value === "function")
31718
31217
  {
31719
- first = target [_find] (first, last, value);
31218
+ first = array .findIndex ((current, index) => index >= first && value (current .valueOf ()))
31720
31219
 
31721
- if (first !== last)
31220
+ if (first !== -1)
31722
31221
  {
31723
31222
  for (let i = first; ++ i < last; )
31724
31223
  {
31725
- const current = values [i];
31224
+ const current = array [i];
31726
31225
 
31727
31226
  if (!value (current .valueOf ()))
31728
31227
  {
31729
- const tmp = values [first];
31228
+ const tmp = array [first];
31730
31229
 
31731
- values [first ++] = current;
31732
- values [i] = tmp;
31230
+ array [first ++] = current;
31231
+ array [i] = tmp;
31733
31232
  }
31734
31233
  }
31735
31234
  }
@@ -31740,25 +31239,25 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31740
31239
  return first;
31741
31240
  }
31742
31241
 
31743
- first = target [_find] (first, last, value);
31242
+ first = array .findIndex ((current, index) => index >= first && current .equals (value))
31744
31243
 
31745
- if (first !== last)
31244
+ if (first !== -1)
31746
31245
  {
31747
31246
  for (let i = first; ++ i < last; )
31748
31247
  {
31749
- const current = values [i];
31248
+ const current = array [i];
31750
31249
 
31751
31250
  if (!current .equals (value))
31752
31251
  {
31753
- const tmp = values [first];
31252
+ const tmp = array [first];
31754
31253
 
31755
- values [first ++] = current;
31756
- values [i] = tmp;
31254
+ array [first ++] = current;
31255
+ array [i] = tmp;
31757
31256
  }
31758
31257
  }
31759
31258
  }
31760
31259
 
31761
- if (first !== last)
31260
+ if (first !== -1)
31762
31261
  target .addEvent ();
31763
31262
 
31764
31263
  return first;
@@ -31767,14 +31266,15 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31767
31266
  {
31768
31267
  const
31769
31268
  target = this [X3DObjectArrayField_target],
31770
- values = target .getValue () .splice (first, last - first);
31269
+ values = target .getValue () .splice (first, last - first),
31270
+ result = new (target .constructor) (values);
31771
31271
 
31772
31272
  for (const value of values)
31773
31273
  target .removeChildObject (value);
31774
31274
 
31775
31275
  target .addEvent ();
31776
31276
 
31777
- return new (target .constructor) (values);
31277
+ return result;
31778
31278
  },
31779
31279
  resize: function (size, value, silently)
31780
31280
  {
@@ -31817,6 +31317,7 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31817
31317
  removeChildObject: function (value)
31818
31318
  {
31819
31319
  value .removeParent (this [X3DObjectArrayField_proxy]);
31320
+ value .dispose ();
31820
31321
  },
31821
31322
  reverse: function ()
31822
31323
  {
@@ -31961,19 +31462,6 @@ X3DObjectArrayField .prototype = Object .assign (Object .create (Base_X3DArrayFi
31961
31462
  generator .string += ']';
31962
31463
  }
31963
31464
  },
31964
- dispose: function ()
31965
- {
31966
- const
31967
- target = this [X3DObjectArrayField_target],
31968
- array = target .getValue ();
31969
-
31970
- for (const value of array)
31971
- target .removeChildObject (value);
31972
-
31973
- array .length = 0;
31974
-
31975
- Base_X3DArrayField.prototype.dispose.call (target);
31976
- },
31977
31465
  });
31978
31466
 
31979
31467
  for (const key of Reflect .ownKeys (X3DObjectArrayField .prototype))
@@ -33418,7 +32906,7 @@ MFNode .prototype = Object .assign (Object .create (Base_X3DObjectArrayField.pro
33418
32906
  {
33419
32907
  const target = this .getTarget ();
33420
32908
 
33421
- target .resize (0, undefined, true);
32909
+ target .resize (0, undefined, false);
33422
32910
  target .processInterests ();
33423
32911
 
33424
32912
  Base_X3DObjectArrayField.prototype.dispose.call (target);
@@ -33661,17 +33149,18 @@ x_ite_Namespace.set ("x_ite/Fields/ArrayFields", ArrayFields_default_);
33661
33149
 
33662
33150
 
33663
33151
 
33152
+
33153
+ const MFInt32 = Fields_ArrayFields.MFInt32;
33154
+
33664
33155
  /*
33665
33156
  * Image
33666
33157
  */
33667
33158
 
33668
33159
  function Image (width, height, comp, array)
33669
33160
  {
33670
- const MFInt32 = Fields_ArrayFields.MFInt32;
33671
-
33672
- this .width = width|0;
33673
- this .height = height|0;
33674
- this .comp = comp|0;
33161
+ this .width = Math .max (width|0, 0);
33162
+ this .height = Math .max (height|0, 0);
33163
+ this .comp = Algorithm.clamp (comp|0, 0, 4);
33675
33164
  this .array = new MFInt32 ();
33676
33165
  this .array .setValue (array);
33677
33166
  this .array .length = this .width * this .height;
@@ -33707,8 +33196,8 @@ Image .prototype =
33707
33196
  },
33708
33197
  setWidth: function (value)
33709
33198
  {
33710
- this .width = value|0;
33711
- this .array .length = this .width * this .height;
33199
+ this .width = Math .max (value|0, 0);
33200
+ this .array .length = this .width * this .height;
33712
33201
  },
33713
33202
  getWidth: function ()
33714
33203
  {
@@ -33716,8 +33205,8 @@ Image .prototype =
33716
33205
  },
33717
33206
  setHeight: function (value)
33718
33207
  {
33719
- this .height = value|0;
33720
- this .array .length = this .width * this .height;
33208
+ this .height = Math .max (value|0, 0);
33209
+ this .array .length = this .width * this .height;
33721
33210
  },
33722
33211
  getHeight: function ()
33723
33212
  {
@@ -33725,7 +33214,7 @@ Image .prototype =
33725
33214
  },
33726
33215
  setComp: function (value)
33727
33216
  {
33728
- this .comp = value|0;
33217
+ this .comp = Algorithm.clamp (value|0, 0, 4);
33729
33218
  },
33730
33219
  getComp: function ()
33731
33220
  {
@@ -33734,7 +33223,7 @@ Image .prototype =
33734
33223
  setArray: function (value)
33735
33224
  {
33736
33225
  this .array .setValue (value);
33737
- this .array .length = this .width * this .height;
33226
+ this .array .length = this .width * this .height;
33738
33227
  },
33739
33228
  getArray: function ()
33740
33229
  {
@@ -33750,14 +33239,23 @@ const _set_size = Symbol ();
33750
33239
 
33751
33240
  function SFImage (width, height, comp, array)
33752
33241
  {
33753
- const MFInt32 = Fields_ArrayFields.MFInt32;
33754
-
33755
- if (arguments [0] instanceof Image)
33756
- Base_X3DField.call (this, arguments [0]);
33757
- else if (arguments .length === 4)
33758
- Base_X3DField.call (this, new Image (width, height, comp, array));
33759
- else
33760
- Base_X3DField.call (this, new Image (0, 0, 0, new MFInt32 ()));
33242
+ switch (arguments .length)
33243
+ {
33244
+ case 0:
33245
+ Base_X3DField.call (this, new Image (0, 0, 0, new MFInt32 ()));
33246
+ break;
33247
+ case 1:
33248
+ Base_X3DField.call (this, arguments [0]);
33249
+ break;
33250
+ case 3:
33251
+ Base_X3DField.call (this, new Image (width, height, comp, new MFInt32 ()));
33252
+ break;
33253
+ case 4:
33254
+ Base_X3DField.call (this, new Image (width, height, comp, array));
33255
+ break;
33256
+ default:
33257
+ throw new Error ("Invalid arguments.");
33258
+ }
33761
33259
 
33762
33260
  this .getValue () .getArray () .addParent (this);
33763
33261
  this .addInterest (_set_size, this);
@@ -33919,7 +33417,6 @@ const width = {
33919
33417
  this .getValue () .setWidth (value);
33920
33418
  this .addEvent ();
33921
33419
  },
33922
- enumerable: true,
33923
33420
  };
33924
33421
 
33925
33422
  const height = {
@@ -33932,7 +33429,6 @@ const height = {
33932
33429
  this .getValue () .setHeight (value);
33933
33430
  this .addEvent ();
33934
33431
  },
33935
- enumerable: true,
33936
33432
  };
33937
33433
 
33938
33434
  const comp = {
@@ -33945,7 +33441,6 @@ const comp = {
33945
33441
  this .getValue () .setComp (value);
33946
33442
  this .addEvent ();
33947
33443
  },
33948
- enumerable: true,
33949
33444
  };
33950
33445
 
33951
33446
  const array = {
@@ -33958,19 +33453,17 @@ const array = {
33958
33453
  this .getValue () .setArray (value);
33959
33454
  this .addEvent ();
33960
33455
  },
33961
- enumerable: true,
33962
33456
  };
33963
33457
 
33964
- Object .defineProperty (SFImage .prototype, "width", width);
33965
- Object .defineProperty (SFImage .prototype, "height", height);
33966
- Object .defineProperty (SFImage .prototype, "comp", comp);
33967
- Object .defineProperty (SFImage .prototype, "array", array);
33968
-
33969
- width .enumerable = false;
33970
- height .enumerable = false;
33971
-
33972
- Object .defineProperty (SFImage .prototype, "x", width);
33973
- Object .defineProperty (SFImage .prototype, "y", height);
33458
+ Object .defineProperties (SFImage .prototype,
33459
+ {
33460
+ x: width,
33461
+ y: height,
33462
+ width: Object .assign ({ enumerable: true }, width),
33463
+ height: Object .assign ({ enumerable: true }, height),
33464
+ comp: Object .assign ({ enumerable: true }, comp),
33465
+ array: Object .assign ({ enumerable: true }, array),
33466
+ });
33974
33467
 
33975
33468
  const SFImage_default_ = SFImage;
33976
33469
  ;
@@ -34789,7 +34282,7 @@ x_ite_Namespace.set ("x_ite/Base/X3DBaseNode", X3DBaseNode_default_);
34789
34282
  *
34790
34283
  ******************************************************************************/
34791
34284
 
34792
- const VERSION_default_ = "8.7.4";
34285
+ const VERSION_default_ = "8.7.6";
34793
34286
  ;
34794
34287
 
34795
34288
  x_ite_Namespace.set ("x_ite/Browser/VERSION", VERSION_default_);
@@ -35708,7 +35201,7 @@ const gettext_default_ = gettext;
35708
35201
  x_ite_Namespace.set ("locale/gettext", gettext_default_);
35709
35202
  /* harmony default export */ const locale_gettext = (gettext_default_);
35710
35203
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserTimings.js
35711
- /* provided dependency */ var $ = __webpack_require__(917);
35204
+ /* provided dependency */ var $ = __webpack_require__(756);
35712
35205
  /*******************************************************************************
35713
35206
  *
35714
35207
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36206,7 +35699,7 @@ const TextureQuality_default_ = TextureQuality;
36206
35699
  x_ite_Namespace.set ("x_ite/Browser/Core/TextureQuality", TextureQuality_default_);
36207
35700
  /* harmony default export */ const Core_TextureQuality = (TextureQuality_default_);
36208
35701
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/BrowserOptions.js
36209
- /* provided dependency */ var BrowserOptions_$ = __webpack_require__(917);
35702
+ /* provided dependency */ var BrowserOptions_$ = __webpack_require__(756);
36210
35703
  /*******************************************************************************
36211
35704
  *
36212
35705
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36292,6 +35785,7 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36292
35785
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "QualityWhenMoving", new x_ite_Fields.SFString ("SAME")),
36293
35786
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "Shading", new x_ite_Fields.SFString ("GOURAUD")),
36294
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)),
36295
35789
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "Cache", new x_ite_Fields.SFBool (true)),
36296
35790
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "ContentScale", new x_ite_Fields.SFDouble (1)),
36297
35791
  new Base_X3DFieldDefinition (Base_X3DConstants.inputOutput, "ContextMenu", new x_ite_Fields.SFBool (true)),
@@ -36335,6 +35829,7 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36335
35829
  this ._TextureQuality .addInterest ("set_textureQuality__", this);
36336
35830
  this ._Shading .addInterest ("set_shading__", this);
36337
35831
  this ._StraightenHorizon .addInterest ("set_straightenHorizon__", this);
35832
+ this ._AutoUpdate .addInterest ("set_autoUpdate__", this);
36338
35833
  this ._ContentScale .addInterest ("set_contentScale__", this);
36339
35834
  this ._LogarithmicDepthBuffer .addInterest ("set_logarithmicDepthBuffer__", this);
36340
35835
  this ._Multisampling .addInterest ("set_multisampling__", this);
@@ -36352,6 +35847,7 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36352
35847
  {
36353
35848
  const attributes = new Set ([
36354
35849
  "Antialiased",
35850
+ "AutoUpdate",
36355
35851
  "Cache",
36356
35852
  "ContentScale",
36357
35853
  "ContextMenu",
@@ -36505,6 +36001,40 @@ BrowserOptions .prototype = Object .assign (Object .create (Base_X3DBaseNode.pro
36505
36001
 
36506
36002
  browser .reshape ();
36507
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
+ },
36508
36038
  set_contentScale__: function (contentScale)
36509
36039
  {
36510
36040
  const browser = this .getBrowser ();
@@ -36750,7 +36280,7 @@ const RenderingProperties_default_ = RenderingProperties;
36750
36280
  x_ite_Namespace.set ("x_ite/Browser/Core/RenderingProperties", RenderingProperties_default_);
36751
36281
  /* harmony default export */ const Core_RenderingProperties = (RenderingProperties_default_);
36752
36282
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/Notification.js
36753
- /* provided dependency */ var Notification_$ = __webpack_require__(917);
36283
+ /* provided dependency */ var Notification_$ = __webpack_require__(756);
36754
36284
  /*******************************************************************************
36755
36285
  *
36756
36286
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -36872,8 +36402,8 @@ const Notification_default_ = Notification;
36872
36402
  x_ite_Namespace.set ("x_ite/Browser/Core/Notification", Notification_default_);
36873
36403
  /* harmony default export */ const Core_Notification = (Notification_default_);
36874
36404
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/ContextMenu.js
36875
- /* provided dependency */ var jquery_fullscreen = __webpack_require__(936);
36876
- /* provided dependency */ var ContextMenu_$ = __webpack_require__(917);
36405
+ /* provided dependency */ var jquery_fullscreen = __webpack_require__(554);
36406
+ /* provided dependency */ var ContextMenu_$ = __webpack_require__(756);
36877
36407
  /*******************************************************************************
36878
36408
  *
36879
36409
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -39841,40 +39371,40 @@ X3DImportedNode .prototype = Object .assign (Object .create (Core_X3DNode.protot
39841
39371
  for (const key of Reflect .ownKeys (X3DImportedNode .prototype))
39842
39372
  Object .defineProperty (X3DImportedNode .prototype, key, { enumerable: false });
39843
39373
 
39844
- Object .defineProperty (X3DImportedNode .prototype, "inlineNode",
39374
+ Object .defineProperties (X3DImportedNode .prototype,
39845
39375
  {
39846
- get: function ()
39376
+ inlineNode:
39847
39377
  {
39848
- return Fields_SFNodeCache.get (this [_inlineNode]);
39378
+ get: function ()
39379
+ {
39380
+ return Fields_SFNodeCache.get (this [_inlineNode]);
39381
+ },
39382
+ enumerable: true,
39849
39383
  },
39850
- enumerable: true,
39851
- });
39852
-
39853
- Object .defineProperty (X3DImportedNode .prototype, "exportedName",
39854
- {
39855
- get: function ()
39384
+ exportedName:
39856
39385
  {
39857
- return this [_exportedName];
39386
+ get: function ()
39387
+ {
39388
+ return this [_exportedName];
39389
+ },
39390
+ enumerable: true,
39858
39391
  },
39859
- enumerable: true,
39860
- });
39861
-
39862
- Object .defineProperty (X3DImportedNode .prototype, "exportedNode",
39863
- {
39864
- get: function ()
39392
+ exportedNode:
39865
39393
  {
39866
- return this [_inlineNode] .getInternalScene () .getExportedNode (this [_exportedName]);
39394
+ get: function ()
39395
+ {
39396
+ return this [_inlineNode] .getInternalScene () .getExportedNode (this [_exportedName]);
39397
+ },
39398
+ enumerable: true,
39867
39399
  },
39868
- enumerable: true,
39869
- });
39870
-
39871
- Object .defineProperty (X3DImportedNode .prototype, "importedName",
39872
- {
39873
- get: function ()
39400
+ importedName:
39874
39401
  {
39875
- return this [_importedName];
39402
+ get: function ()
39403
+ {
39404
+ return this [_importedName];
39405
+ },
39406
+ enumerable: true,
39876
39407
  },
39877
- enumerable: true,
39878
39408
  });
39879
39409
 
39880
39410
  const X3DImportedNode_default_ = X3DImportedNode;
@@ -41640,22 +41170,23 @@ X3DProtoDeclaration .prototype = Object .assign (Object .create (Prototype_X3DPr
41640
41170
  for (const key of Reflect .ownKeys (X3DProtoDeclaration .prototype))
41641
41171
  Object .defineProperty (X3DProtoDeclaration .prototype, key, { enumerable: false });
41642
41172
 
41643
- Object .defineProperty (X3DProtoDeclaration .prototype, "name",
41644
- {
41645
- get: X3DProtoDeclaration .prototype .getName,
41646
- enumerable: true,
41647
- });
41648
-
41649
- Object .defineProperty (X3DProtoDeclaration .prototype, "fields",
41650
- {
41651
- get: X3DProtoDeclaration .prototype .getFieldDefinitions,
41652
- enumerable: true,
41653
- });
41654
-
41655
- Object .defineProperty (X3DProtoDeclaration .prototype, "isExternProto",
41173
+ Object .defineProperties (X3DProtoDeclaration .prototype,
41656
41174
  {
41657
- value: false,
41658
- enumerable: true,
41175
+ name:
41176
+ {
41177
+ get: X3DProtoDeclaration .prototype .getName,
41178
+ enumerable: true,
41179
+ },
41180
+ fields:
41181
+ {
41182
+ get: X3DProtoDeclaration .prototype .getFieldDefinitions,
41183
+ enumerable: true,
41184
+ },
41185
+ isExternProto:
41186
+ {
41187
+ value: false,
41188
+ enumerable: true,
41189
+ },
41659
41190
  });
41660
41191
 
41661
41192
  const X3DProtoDeclaration_default_ = X3DProtoDeclaration;
@@ -41946,7 +41477,7 @@ const X3DUrlObject_default_ = X3DUrlObject;
41946
41477
  x_ite_Namespace.set ("x_ite/Components/Networking/X3DUrlObject", X3DUrlObject_default_);
41947
41478
  /* harmony default export */ const Networking_X3DUrlObject = (X3DUrlObject_default_);
41948
41479
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/X3DParser.js
41949
- /* provided dependency */ var X3DParser_$ = __webpack_require__(917);
41480
+ /* provided dependency */ var X3DParser_$ = __webpack_require__(756);
41950
41481
  /*******************************************************************************
41951
41482
  *
41952
41483
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -45128,7 +44659,7 @@ const VRMLParser_default_ = VRMLParser;
45128
44659
  x_ite_Namespace.set ("x_ite/Parser/VRMLParser", VRMLParser_default_);
45129
44660
  /* harmony default export */ const Parser_VRMLParser = (VRMLParser_default_);
45130
44661
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/XMLParser.js
45131
- /* provided dependency */ var XMLParser_$ = __webpack_require__(917);
44662
+ /* provided dependency */ var XMLParser_$ = __webpack_require__(756);
45132
44663
  /*******************************************************************************
45133
44664
  *
45134
44665
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -46855,7 +46386,7 @@ X3DOptimizer .prototype = {
46855
46386
  },
46856
46387
  optimizeNodes: function (nodes, combine, removedNodes)
46857
46388
  {
46858
- return nodes .flatMap (node => this .optimizeNode (node, combine, removedNodes));
46389
+ return [... nodes] .flatMap (node => this .optimizeNode (node, combine, removedNodes));
46859
46390
  },
46860
46391
  optimizeNode: function (node, combine, removedNodes)
46861
46392
  {
@@ -46983,7 +46514,7 @@ const X3DOptimizer_default_ = X3DOptimizer;
46983
46514
  x_ite_Namespace.set ("x_ite/Parser/X3DOptimizer", X3DOptimizer_default_);
46984
46515
  /* harmony default export */ const Parser_X3DOptimizer = (X3DOptimizer_default_);
46985
46516
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLTF2Parser.js
46986
- /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(917);
46517
+ /* provided dependency */ var GLTF2Parser_$ = __webpack_require__(756);
46987
46518
  /*******************************************************************************
46988
46519
  *
46989
46520
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49449,7 +48980,7 @@ const GLTF2Parser_default_ = GLTF2Parser;
49449
48980
  x_ite_Namespace.set ("x_ite/Parser/GLTF2Parser", GLTF2Parser_default_);
49450
48981
  /* harmony default export */ const Parser_GLTF2Parser = (GLTF2Parser_default_);
49451
48982
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GLB2Parser.js
49452
- /* provided dependency */ var GLB2Parser_$ = __webpack_require__(917);
48983
+ /* provided dependency */ var GLB2Parser_$ = __webpack_require__(756);
49453
48984
  /*******************************************************************************
49454
48985
  *
49455
48986
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -49602,7 +49133,7 @@ const GLB2Parser_default_ = GLB2Parser;
49602
49133
  x_ite_Namespace.set ("x_ite/Parser/GLB2Parser", GLB2Parser_default_);
49603
49134
  /* harmony default export */ const Parser_GLB2Parser = (GLB2Parser_default_);
49604
49135
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/OBJParser.js
49605
- /* provided dependency */ var OBJParser_$ = __webpack_require__(917);
49136
+ /* provided dependency */ var OBJParser_$ = __webpack_require__(756);
49606
49137
  /*******************************************************************************
49607
49138
  *
49608
49139
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -51301,7 +50832,6 @@ function Complex (real, imag)
51301
50832
  Complex .prototype =
51302
50833
  {
51303
50834
  constructor: Complex,
51304
- length: 2,
51305
50835
  [Symbol .iterator]: function* ()
51306
50836
  {
51307
50837
  yield this .real;
@@ -51403,75 +50933,81 @@ Complex .prototype =
51403
50933
  },
51404
50934
  toString: function ()
51405
50935
  {
51406
- if (this .imag)
51407
- return this .real + " " + this .imag + "i";
50936
+ let string = "";
51408
50937
 
51409
- return String (this .real);
51410
- },
51411
- };
50938
+ string += this .real;
51412
50939
 
51413
- Object .defineProperty (Complex .prototype, "0",
51414
- {
51415
- get: function ()
51416
- {
51417
- return this .real;
51418
- },
51419
- set: function (value)
51420
- {
51421
- this .real = value;
50940
+ if (this .imag < 0)
50941
+ {
50942
+ string += this .imag;
50943
+ string += "i";
50944
+ }
50945
+ else if (this .imag > 0)
50946
+ {
50947
+ string += "+";
50948
+ string += this .imag;
50949
+ string += "i";
50950
+ }
50951
+
50952
+ return string;
51422
50953
  },
51423
- enumerable: false,
51424
- configurable: false
51425
- });
50954
+ };
51426
50955
 
51427
- Object .defineProperty (Complex .prototype, "1",
50956
+ Object .defineProperties (Complex .prototype,
51428
50957
  {
51429
- get: function ()
50958
+ length: { value: 2 },
50959
+ 0:
51430
50960
  {
51431
- return this .imag;
50961
+ get: function ()
50962
+ {
50963
+ return this .real;
50964
+ },
50965
+ set: function (value)
50966
+ {
50967
+ this .real = value;
50968
+ },
51432
50969
  },
51433
- set: function (value)
50970
+ 1:
51434
50971
  {
51435
- this .imag = value;
50972
+ get: function ()
50973
+ {
50974
+ return this .imag;
50975
+ },
50976
+ set: function (value)
50977
+ {
50978
+ this .imag = value;
50979
+ },
51436
50980
  },
51437
- enumerable: false,
51438
- configurable: false
51439
- });
51440
-
51441
- Object .defineProperty (Complex .prototype, "magnitude",
51442
- {
51443
- get: function ()
50981
+ magnitude:
51444
50982
  {
51445
- if (this .real)
50983
+ get: function ()
51446
50984
  {
51447
- if (this .imag)
51448
- return Math .hypot (this .real, this .imag);
51449
-
51450
- return Math .abs (this .real);
51451
- }
50985
+ if (this .real)
50986
+ {
50987
+ if (this .imag)
50988
+ return Math .hypot (this .real, this .imag);
51452
50989
 
51453
- return Math .abs (this .imag);
51454
- },
51455
- set: function (magnitude)
51456
- {
51457
- this .setPolar (magnitude, this .angle);
51458
- },
51459
- enumerable: false,
51460
- configurable: false
51461
- });
50990
+ return Math .abs (this .real);
50991
+ }
51462
50992
 
51463
- Object .defineProperty (Complex .prototype, "angle",
51464
- {
51465
- get: function ()
51466
- {
51467
- return Math .atan2 (this .imag, this .real);
50993
+ return Math .abs (this .imag);
50994
+ },
50995
+ set: function (magnitude)
50996
+ {
50997
+ this .setPolar (magnitude, this .angle);
50998
+ },
51468
50999
  },
51469
- set: function (angle)
51000
+ angle:
51470
51001
  {
51471
- this .setPolar (this .magnitude, angle);
51002
+ get: function ()
51003
+ {
51004
+ return Math .atan2 (this .imag, this .real);
51005
+ },
51006
+ set: function (angle)
51007
+ {
51008
+ this .setPolar (this .magnitude, angle);
51009
+ },
51472
51010
  },
51473
- enumerable: false,
51474
- configurable: false
51475
51011
  });
51476
51012
 
51477
51013
  Object .assign (Complex,
@@ -51484,10 +51020,6 @@ Object .assign (Complex,
51484
51020
  {
51485
51021
  return lhs .copy () .multiply (rhs);
51486
51022
  },
51487
- multComp: function (lhs, rhs)
51488
- {
51489
- return lhs .copy () .multComp (rhs);
51490
- },
51491
51023
  });
51492
51024
 
51493
51025
  const Complex_default_ = Complex;
@@ -51591,10 +51123,11 @@ Box2 .prototype =
51591
51123
 
51592
51124
  return this;
51593
51125
  }
51594
- case 3:
51595
- {
51596
- return this .setExtents (arguments [0], arguments [1]);
51597
- }
51126
+ // case 3:
51127
+ // {
51128
+ // console .trace ()
51129
+ // return this .setExtents (arguments [0], arguments [1]);
51130
+ // }
51598
51131
  }
51599
51132
  },
51600
51133
  setExtents: function (min, max)
@@ -51634,7 +51167,7 @@ Box2 .prototype =
51634
51167
  this .getExtents (lhs_min, lhs_max);
51635
51168
  box .getExtents (rhs_min, rhs_max);
51636
51169
 
51637
- 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));
51638
51171
  };
51639
51172
  })(),
51640
51173
  multLeft: function (matrix)
@@ -51701,33 +51234,45 @@ Box2 .prototype =
51701
51234
  },
51702
51235
  };
51703
51236
 
51704
- Object .defineProperty (Box2 .prototype, "size",
51237
+ Object .assign (Box2,
51705
51238
  {
51706
- get: (function ()
51239
+ Extents: function (min, max)
51707
51240
  {
51708
- const
51709
- min = new Numbers_Vector2 (0, 0),
51710
- max = new Numbers_Vector2 (0, 0);
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
+ });
51711
51248
 
51712
- return function ()
51249
+ Object .defineProperties (Box2 .prototype,
51250
+ {
51251
+ size:
51252
+ {
51253
+ get: (function ()
51713
51254
  {
51714
- this .getAbsoluteExtents (min, max);
51255
+ const
51256
+ min = new Numbers_Vector2 (0, 0),
51257
+ max = new Numbers_Vector2 (0, 0);
51715
51258
 
51716
- return max .subtract (min);
51717
- };
51718
- })(),
51719
- enumerable: true,
51720
- configurable: false
51721
- });
51259
+ return function ()
51260
+ {
51261
+ this .getAbsoluteExtents (min, max);
51722
51262
 
51723
- Object .defineProperty (Box2 .prototype, "center",
51724
- {
51725
- get: function ()
51263
+ return max .subtract (min);
51264
+ };
51265
+ })(),
51266
+ enumerable: true,
51267
+ },
51268
+ center:
51726
51269
  {
51727
- return this .matrix .origin;
51270
+ get: function ()
51271
+ {
51272
+ return this .matrix .origin;
51273
+ },
51274
+ enumerable: true,
51728
51275
  },
51729
- enumerable: true,
51730
- configurable: false
51731
51276
  });
51732
51277
 
51733
51278
  const Box2_default_ = Box2;
@@ -52092,8 +51637,8 @@ const MatrixStack_default_ = MatrixStack;
52092
51637
  x_ite_Namespace.set ("standard/Math/Utility/MatrixStack", MatrixStack_default_);
52093
51638
  /* harmony default export */ const Utility_MatrixStack = (MatrixStack_default_);
52094
51639
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/SVGParser.js
52095
- /* provided dependency */ var SVGParser_$ = __webpack_require__(917);
52096
- /* provided dependency */ var libtess = __webpack_require__(836);
51640
+ /* provided dependency */ var SVGParser_$ = __webpack_require__(756);
51641
+ /* provided dependency */ var libtess = __webpack_require__(405);
52097
51642
  /*******************************************************************************
52098
51643
  *
52099
51644
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -53014,7 +52559,7 @@ SVGParser .prototype = Object .assign (Object .create (Parser_X3DParser.prototyp
53014
52559
  bbox = new Geometry_Box2 ();
53015
52560
 
53016
52561
  for (const points of contours)
53017
- bbox .add (new Geometry_Box2 (Numbers_Vector2.min (... points), Numbers_Vector2.max (... points), true));
52562
+ bbox .add (Geometry_Box2.Points (... points));
53018
52563
 
53019
52564
  this .groupNodes .push (transformNode);
53020
52565
 
@@ -53273,7 +52818,7 @@ SVGParser .prototype = Object .assign (Object .create (Parser_X3DParser.prototyp
53273
52818
  m .scale (new Numbers_Vector2 (1, -1));
53274
52819
 
53275
52820
  if (g .units === "userSpaceOnUse")
53276
- m .multLeft (Numbers_Matrix3.inverse (bbox .matrix));
52821
+ m .multLeft (bbox .matrix .copy () .inverse ());
53277
52822
  else
53278
52823
  m .multLeft (new Numbers_Matrix3 (2, 0, 0, 0, 2, 0, -1, -1, 1));
53279
52824
 
@@ -54786,7 +54331,7 @@ SVGParser .prototype = Object .assign (Object .create (Parser_X3DParser.prototyp
54786
54331
  const
54787
54332
  scene = this .getExecutionContext (),
54788
54333
  texCoordNode = scene .createNode ("TextureCoordinate"),
54789
- invMatrix = Numbers_Matrix3.inverse (bbox .matrix);
54334
+ invMatrix = bbox .matrix .copy () .inverse ();
54790
54335
 
54791
54336
  for (const point of coordinateNode .point)
54792
54337
  texCoordNode .point .push (invMatrix .multVecMatrix (new Numbers_Vector2 (point .x, point .y)) .add (Numbers_Vector2.One) .divide (2));
@@ -54862,7 +54407,7 @@ const SVGParser_default_ = SVGParser;
54862
54407
  x_ite_Namespace.set ("x_ite/Parser/SVGParser", SVGParser_default_);
54863
54408
  /* harmony default export */ const Parser_SVGParser = (SVGParser_default_);
54864
54409
  ;// CONCATENATED MODULE: ./src/x_ite/Parser/GoldenGate.js
54865
- /* provided dependency */ var GoldenGate_$ = __webpack_require__(917);
54410
+ /* provided dependency */ var GoldenGate_$ = __webpack_require__(756);
54866
54411
  /*******************************************************************************
54867
54412
  *
54868
54413
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -55157,7 +54702,7 @@ Plane3 .prototype =
55157
54702
  },
55158
54703
  getDistanceToPoint: function (point)
55159
54704
  {
55160
- return Numbers_Vector3.dot (point, this .normal) - this .distanceFromOrigin;
54705
+ return point .dot (this .normal) - this .distanceFromOrigin;
55161
54706
  },
55162
54707
  intersectsLine: function (line, intersection)
55163
54708
  {
@@ -55191,7 +54736,7 @@ const Plane3_default_ = Plane3;
55191
54736
  x_ite_Namespace.set ("standard/Math/Geometry/Plane3", Plane3_default_);
55192
54737
  /* harmony default export */ const Geometry_Plane3 = (Plane3_default_);
55193
54738
  ;// CONCATENATED MODULE: ./src/standard/Math/Geometry/Triangle3.js
55194
- /* provided dependency */ var Triangle3_libtess = __webpack_require__(836);
54739
+ /* provided dependency */ var Triangle3_libtess = __webpack_require__(405);
55195
54740
  /*******************************************************************************
55196
54741
  *
55197
54742
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -56531,10 +56076,11 @@ Box3 .prototype =
56531
56076
 
56532
56077
  return this;
56533
56078
  }
56534
- case 3:
56535
- {
56536
- return this .setExtents (arguments [0], arguments [1]);
56537
- }
56079
+ // case 3:
56080
+ // {
56081
+ // console .trace ()
56082
+ // return this .setExtents (arguments [0], arguments [1]);
56083
+ // }
56538
56084
  }
56539
56085
  },
56540
56086
  setExtents: function (min, max)
@@ -56803,7 +56349,7 @@ Box3 .prototype =
56803
56349
  this .getExtents (lhs_min, lhs_max);
56804
56350
  box .getExtents (rhs_min, rhs_max);
56805
56351
 
56806
- 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));
56807
56353
  };
56808
56354
  })(),
56809
56355
  multLeft: function (matrix)
@@ -57041,33 +56587,45 @@ Box3 .prototype =
57041
56587
  },
57042
56588
  };
57043
56589
 
57044
- Object .defineProperty (Box3 .prototype, "size",
56590
+ Object .assign (Box3,
57045
56591
  {
57046
- get: (function ()
56592
+ Extents: function (min, max)
57047
56593
  {
57048
- const
57049
- min = new Numbers_Vector3 (0, 0, 0),
57050
- max = new Numbers_Vector3 (0, 0, 0);
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
+ });
57051
56601
 
57052
- return function ()
56602
+ Object .defineProperties (Box3 .prototype,
56603
+ {
56604
+ size:
56605
+ {
56606
+ get: (function ()
57053
56607
  {
57054
- this .getAbsoluteExtents (min, max);
56608
+ const
56609
+ min = new Numbers_Vector3 (0, 0, 0),
56610
+ max = new Numbers_Vector3 (0, 0, 0);
57055
56611
 
57056
- return max .subtract (min);
57057
- };
57058
- })(),
57059
- enumerable: true,
57060
- configurable: false
57061
- });
56612
+ return function ()
56613
+ {
56614
+ this .getAbsoluteExtents (min, max);
57062
56615
 
57063
- Object .defineProperty (Box3 .prototype, "center",
57064
- {
57065
- get: function ()
56616
+ return max .subtract (min);
56617
+ };
56618
+ })(),
56619
+ enumerable: true,
56620
+ },
56621
+ center:
57066
56622
  {
57067
- return this .matrix .origin;
56623
+ get: function ()
56624
+ {
56625
+ return this .matrix .origin;
56626
+ },
56627
+ enumerable: true,
57068
56628
  },
57069
- enumerable: true,
57070
- configurable: false
57071
56629
  });
57072
56630
 
57073
56631
  const Box3_default_ = Box3;
@@ -57304,7 +56862,7 @@ Line3 .Points = function (point1, point2)
57304
56862
  {
57305
56863
  const line = Object .create (Line3 .prototype);
57306
56864
  line .point = point1 .copy ();
57307
- line .direction = Numbers_Vector3.subtract (point2, point1) .normalize ();
56865
+ line .direction = point2 .copy () .subtract (point1) .normalize ();
57308
56866
  return line;
57309
56867
  };
57310
56868
 
@@ -57665,9 +57223,9 @@ X3DRenderObject .prototype =
57665
57223
  const
57666
57224
  projectionMatrix = new Numbers_Matrix4 (),
57667
57225
  cameraSpaceProjectionMatrix = new Numbers_Matrix4 (),
57668
- localOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
57226
+ localOrientation = new Numbers_Rotation4 (),
57669
57227
  vector = new Numbers_Vector3 (0, 0, 0),
57670
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
57228
+ rotation = new Numbers_Rotation4 ();
57671
57229
 
57672
57230
  return function (direction)
57673
57231
  {
@@ -58121,7 +57679,7 @@ X3DRenderObject .prototype =
58121
57679
  projectionMatrix = new Numbers_Matrix4 (),
58122
57680
  cameraSpaceProjectionMatrix = new Numbers_Matrix4 (),
58123
57681
  translation = new Numbers_Vector3 (0, 0, 0),
58124
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
57682
+ rotation = new Numbers_Rotation4 ();
58125
57683
 
58126
57684
  return function ()
58127
57685
  {
@@ -59900,7 +59458,7 @@ function X3DGeometryNode (executionContext)
59900
59458
 
59901
59459
  this .min = new Numbers_Vector3 (0, 0, 0);
59902
59460
  this .max = new Numbers_Vector3 (0, 0, 0);
59903
- this .bbox = new Geometry_Box3 (this .min, this .max, true);
59461
+ this .bbox = Geometry_Box3.Extents (this .min, this .max);
59904
59462
  this .solid = true;
59905
59463
  this .primitiveMode = browser .getContext () .TRIANGLES;
59906
59464
  this .geometryType = 3;
@@ -62475,7 +62033,7 @@ const X3DTexture2DNode_default_ = X3DTexture2DNode;
62475
62033
  x_ite_Namespace.set ("x_ite/Components/Texturing/X3DTexture2DNode", X3DTexture2DNode_default_);
62476
62034
  /* harmony default export */ const Texturing_X3DTexture2DNode = (X3DTexture2DNode_default_);
62477
62035
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/ImageTexture.js
62478
- /* provided dependency */ var ImageTexture_$ = __webpack_require__(917);
62036
+ /* provided dependency */ var ImageTexture_$ = __webpack_require__(756);
62479
62037
  /*******************************************************************************
62480
62038
  *
62481
62039
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -63132,7 +62690,7 @@ X3DLayerNode .prototype = Object .assign (Object .create (Core_X3DNode.prototype
63132
62690
  {
63133
62691
  const
63134
62692
  viewpointNode = this .getViewpoint (),
63135
- bbox = this .getBBox (new Geometry_Box3 ()) .multRight (Numbers_Matrix4.inverse (viewpointNode .getModelMatrix ()));
62693
+ bbox = this .getBBox (new Geometry_Box3 ()) .multRight (viewpointNode .getModelMatrix () .copy () .inverse ());
63136
62694
 
63137
62695
  viewpointNode .lookAt (this, bbox .center, viewpointNode .getLookAtDistance (bbox), factor, straighten);
63138
62696
  },
@@ -64460,8 +64018,8 @@ OrientationInterpolator .prototype = Object .assign (Object .create (Interpolati
64460
64018
  interpolate: (function ()
64461
64019
  {
64462
64020
  const
64463
- keyValue0 = new Numbers_Rotation4 (0, 0, 1, 0),
64464
- keyValue1 = new Numbers_Rotation4 (0, 0, 1, 0);
64021
+ keyValue0 = new Numbers_Rotation4 (),
64022
+ keyValue1 = new Numbers_Rotation4 ();
64465
64023
 
64466
64024
  return function (index0, index1, weight)
64467
64025
  {
@@ -64671,7 +64229,7 @@ function X3DViewpointNode (executionContext)
64671
64229
  "fieldOfViewScale", new x_ite_Fields.SFFloat (1));
64672
64230
 
64673
64231
  this .userPosition = new Numbers_Vector3 (0, 1, 0);
64674
- this .userOrientation = new Numbers_Rotation4 (0, 0, 1, 0);
64232
+ this .userOrientation = new Numbers_Rotation4 ();
64675
64233
  this .userCenterOfRotation = new Numbers_Vector3 (0, 0, 0);
64676
64234
  this .modelMatrix = new Numbers_Matrix4 ();
64677
64235
  this .cameraSpaceMatrix = new Numbers_Matrix4 (1, 0, 0, 0, 0, 1, 0, 0, 0, 0, 1, 0, 0, 0, 10, 1);
@@ -64980,9 +64538,9 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
64980
64538
  {
64981
64539
  const
64982
64540
  position = new Numbers_Vector3 (0, 0, 0),
64983
- orientation = new Numbers_Rotation4 (0, 0, 1, 0),
64541
+ orientation = new Numbers_Rotation4 (),
64984
64542
  scale = new Numbers_Vector3 (0, 0, 0),
64985
- scaleOrientation = new Numbers_Rotation4 (0, 0, 1, 0);
64543
+ scaleOrientation = new Numbers_Rotation4 ();
64986
64544
 
64987
64545
  return function (fromViewpointNode)
64988
64546
  {
@@ -65027,8 +64585,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65027
64585
  lookAtPoint: function (layerNode, point, factor, straighten)
65028
64586
  {
65029
64587
  this .getCameraSpaceMatrix () .multVecMatrix (point);
65030
-
65031
- Numbers_Matrix4.inverse (this .getModelMatrix ()) .multVecMatrix (point);
64588
+ this .getModelMatrix () .copy () .inverse () .multVecMatrix (point);
65032
64589
 
65033
64590
  const minDistance = layerNode .getNavigationInfo () .getNearValue () * 2;
65034
64591
 
@@ -65036,7 +64593,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65036
64593
  },
65037
64594
  lookAtBBox: function (layerNode, bbox, factor, straighten)
65038
64595
  {
65039
- bbox = bbox .copy () .multRight (Numbers_Matrix4.inverse (this .getModelMatrix ()));
64596
+ bbox = bbox .copy () .multRight (this .getModelMatrix () .copy () .inverse ());
65040
64597
 
65041
64598
  const minDistance = Math .max (layerNode .getNavigationInfo () .getNearValue () * 2, this .getLookAtDistance (bbox));
65042
64599
 
@@ -65058,14 +64615,14 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65058
64615
  this .easeInEaseOut ._easeInEaseOut = new x_ite_Fields.MFVec2f (new x_ite_Fields.SFVec2f (0, 1), new x_ite_Fields.SFVec2f (1, 0));
65059
64616
 
65060
64617
  const
65061
- translation = Numbers_Vector3.lerp (this ._positionOffset .getValue (), offset, factor),
65062
- 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);
65063
64620
 
65064
- 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));
65065
64622
 
65066
64623
  if (straighten)
65067
64624
  {
65068
- 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)));
65069
64626
  }
65070
64627
 
65071
64628
  this .positionInterpolator ._keyValue = new x_ite_Fields.MFVec3f (this ._positionOffset, translation);
@@ -65076,7 +64633,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65076
64633
  const relative = this .getRelativeTransformation (this);
65077
64634
 
65078
64635
  this ._fieldOfViewScale = 1;
65079
- this ._centerOfRotationOffset = Numbers_Vector3.subtract (point, this .getCenterOfRotation ());
64636
+ this ._centerOfRotationOffset = point .copy () .subtract (this .getCenterOfRotation ());
65080
64637
  this .nearDistance = Math .min (distance / 2, 0.125);
65081
64638
  this .farDistance = this .nearDistance * this .getMaxFarValue () / 0.125;
65082
64639
 
@@ -65094,7 +64651,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65094
64651
 
65095
64652
  this .easeInEaseOut ._easeInEaseOut = new x_ite_Fields.MFVec2f (new x_ite_Fields.SFVec2f (0, 1), new x_ite_Fields.SFVec2f (1, 0));
65096
64653
 
65097
- 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 ()));
65098
64655
 
65099
64656
  this .positionInterpolator ._keyValue = new x_ite_Fields.MFVec3f (this ._positionOffset, this ._positionOffset);
65100
64657
  this .orientationInterpolator ._keyValue = new x_ite_Fields.MFRotation (this ._orientationOffset, rotation);
@@ -65112,7 +64669,7 @@ X3DViewpointNode .prototype = Object .assign (Object .create (Core_X3DBindableNo
65112
64669
  const
65113
64670
  localXAxis = new Numbers_Vector3 (0, 0, 0),
65114
64671
  localZAxis = new Numbers_Vector3 (0, 0, 0),
65115
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
64672
+ rotation = new Numbers_Rotation4 ();
65116
64673
 
65117
64674
  return function (orientation, upVector = this .getUpVector (true))
65118
64675
  {
@@ -66815,7 +66372,7 @@ const X3DWorld_default_ = X3DWorld;
66815
66372
  x_ite_Namespace.set ("x_ite/Execution/X3DWorld", X3DWorld_default_);
66816
66373
  /* harmony default export */ const Execution_X3DWorld = (X3DWorld_default_);
66817
66374
  ;// CONCATENATED MODULE: ./src/x_ite/InputOutput/FileLoader.js
66818
- /* provided dependency */ var FileLoader_$ = __webpack_require__(917);
66375
+ /* provided dependency */ var FileLoader_$ = __webpack_require__(756);
66819
66376
  /*******************************************************************************
66820
66377
  *
66821
66378
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -67571,34 +67128,33 @@ X3DExternProtoDeclaration .prototype = Object .assign (Object .create (Prototype
67571
67128
  for (const key of Reflect .ownKeys (X3DExternProtoDeclaration .prototype))
67572
67129
  Object .defineProperty (X3DExternProtoDeclaration .prototype, key, { enumerable: false });
67573
67130
 
67574
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "name",
67575
- {
67576
- get: X3DExternProtoDeclaration .prototype .getName,
67577
- enumerable: true,
67578
- });
67579
-
67580
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "fields",
67581
- {
67582
- get: X3DExternProtoDeclaration .prototype .getFieldDefinitions,
67583
- enumerable: true,
67584
- });
67585
-
67586
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "isExternProto",
67587
- {
67588
- value: true,
67589
- enumerable: true,
67590
- });
67591
-
67592
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "urls",
67593
- {
67594
- get: function () { return this ._url; },
67595
- enumerable: true,
67596
- });
67597
-
67598
- Object .defineProperty (X3DExternProtoDeclaration .prototype, "loadState",
67131
+ Object .defineProperties (X3DExternProtoDeclaration .prototype,
67599
67132
  {
67600
- get: X3DExternProtoDeclaration .prototype .checkLoadState,
67601
- enumerable: true,
67133
+ name:
67134
+ {
67135
+ get: X3DExternProtoDeclaration .prototype .getName,
67136
+ enumerable: true,
67137
+ },
67138
+ fields:
67139
+ {
67140
+ get: X3DExternProtoDeclaration .prototype .getFieldDefinitions,
67141
+ enumerable: true,
67142
+ },
67143
+ isExternProto:
67144
+ {
67145
+ value: true,
67146
+ enumerable: true,
67147
+ },
67148
+ urls:
67149
+ {
67150
+ get: function () { return this ._url; },
67151
+ enumerable: true,
67152
+ },
67153
+ loadState:
67154
+ {
67155
+ get: X3DExternProtoDeclaration .prototype .checkLoadState,
67156
+ enumerable: true,
67157
+ },
67602
67158
  });
67603
67159
 
67604
67160
  const X3DExternProtoDeclaration_default_ = X3DExternProtoDeclaration;
@@ -67831,6 +67387,7 @@ function X3DRoute (executionContext, sourceNode, sourceField, destinationNode, d
67831
67387
 
67832
67388
  X3DRoute .prototype = Object .assign (Object .create (Base_X3DObject.prototype),
67833
67389
  {
67390
+ constructor: X3DRoute,
67834
67391
  getTypeName: function ()
67835
67392
  {
67836
67393
  return "X3DRoute";
@@ -68015,40 +67572,40 @@ X3DRoute .prototype = Object .assign (Object .create (Base_X3DObject.prototype),
68015
67572
  for (const key of Reflect .ownKeys (X3DRoute .prototype))
68016
67573
  Object .defineProperty (X3DRoute .prototype, key, { enumerable: false });
68017
67574
 
68018
- Object .defineProperty (X3DRoute .prototype, "sourceNode",
67575
+ Object .defineProperties (X3DRoute .prototype,
68019
67576
  {
68020
- get: function ()
67577
+ sourceNode:
68021
67578
  {
68022
- return Fields_SFNodeCache.get (this [_sourceNode]);
67579
+ get: function ()
67580
+ {
67581
+ return Fields_SFNodeCache.get (this [_sourceNode]);
67582
+ },
67583
+ enumerable: true,
68023
67584
  },
68024
- enumerable: true,
68025
- });
68026
-
68027
- Object .defineProperty (X3DRoute .prototype, "sourceField",
68028
- {
68029
- get: function ()
67585
+ sourceField:
68030
67586
  {
68031
- return this [_sourceField] .getName ();
67587
+ get: function ()
67588
+ {
67589
+ return this [_sourceField] .getName ();
67590
+ },
67591
+ enumerable: true,
68032
67592
  },
68033
- enumerable: true,
68034
- });
68035
-
68036
- Object .defineProperty (X3DRoute .prototype, "destinationNode",
68037
- {
68038
- get: function ()
67593
+ destinationNode:
68039
67594
  {
68040
- return Fields_SFNodeCache.get (this [_destinationNode]);
67595
+ get: function ()
67596
+ {
67597
+ return Fields_SFNodeCache.get (this [_destinationNode]);
67598
+ },
67599
+ enumerable: true,
68041
67600
  },
68042
- enumerable: true,
68043
- });
68044
-
68045
- Object .defineProperty (X3DRoute .prototype, "destinationField",
68046
- {
68047
- get: function ()
67601
+ destinationField:
68048
67602
  {
68049
- return this [_destinationField] .getName ();
67603
+ get: function ()
67604
+ {
67605
+ return this [_destinationField] .getName ();
67606
+ },
67607
+ enumerable: true,
68050
67608
  },
68051
- enumerable: true,
68052
67609
  });
68053
67610
 
68054
67611
  const X3DRoute_default_ = X3DRoute;
@@ -69072,65 +68629,59 @@ X3DExecutionContext .prototype = Object .assign (Object .create (Base_X3DBaseNod
69072
68629
  for (const key of Reflect .ownKeys (X3DExecutionContext .prototype))
69073
68630
  Object .defineProperty (X3DExecutionContext .prototype, key, { enumerable: false });
69074
68631
 
69075
- Object .defineProperty (X3DExecutionContext .prototype, "specificationVersion",
69076
- {
69077
- get: X3DExecutionContext .prototype .getSpecificationVersion,
69078
- enumerable: true,
69079
- });
69080
-
69081
- Object .defineProperty (X3DExecutionContext .prototype, "encoding",
69082
- {
69083
- get: X3DExecutionContext .prototype .getEncoding,
69084
- enumerable: true,
69085
- });
69086
-
69087
- Object .defineProperty (X3DExecutionContext .prototype, "profile",
69088
- {
69089
- get: X3DExecutionContext .prototype .getProfile,
69090
- enumerable: true,
69091
- });
69092
-
69093
- Object .defineProperty (X3DExecutionContext .prototype, "components",
69094
- {
69095
- get: X3DExecutionContext .prototype .getComponents,
69096
- enumerable: true,
69097
- });
69098
-
69099
- Object .defineProperty (X3DExecutionContext .prototype, "worldURL",
69100
- {
69101
- get: X3DExecutionContext .prototype .getWorldURL,
69102
- enumerable: true,
69103
- });
69104
-
69105
- Object .defineProperty (X3DExecutionContext .prototype, "units",
69106
- {
69107
- get: X3DExecutionContext .prototype .getUnits,
69108
- enumerable: true,
69109
- });
69110
-
69111
- Object .defineProperty (X3DExecutionContext .prototype, "rootNodes",
69112
- {
69113
- get: X3DExecutionContext .prototype .getRootNodes,
69114
- set: X3DExecutionContext .prototype .setRootNodes,
69115
- enumerable: true,
69116
- });
69117
-
69118
- Object .defineProperty (X3DExecutionContext .prototype, "protos",
69119
- {
69120
- get: X3DExecutionContext .prototype .getProtoDeclarations,
69121
- enumerable: true,
69122
- });
69123
-
69124
- Object .defineProperty (X3DExecutionContext .prototype, "externprotos",
69125
- {
69126
- get: X3DExecutionContext .prototype .getExternProtoDeclarations,
69127
- enumerable: true,
69128
- });
69129
-
69130
- Object .defineProperty (X3DExecutionContext .prototype, "routes",
68632
+ Object .defineProperties (X3DExecutionContext .prototype,
69131
68633
  {
69132
- get: X3DExecutionContext .prototype .getRoutes,
69133
- enumerable: true,
68634
+ specificationVersion:
68635
+ {
68636
+ get: X3DExecutionContext .prototype .getSpecificationVersion,
68637
+ enumerable: true,
68638
+ },
68639
+ encoding:
68640
+ {
68641
+ get: X3DExecutionContext .prototype .getEncoding,
68642
+ enumerable: true,
68643
+ },
68644
+ profile:
68645
+ {
68646
+ get: X3DExecutionContext .prototype .getProfile,
68647
+ enumerable: true,
68648
+ },
68649
+ components:
68650
+ {
68651
+ get: X3DExecutionContext .prototype .getComponents,
68652
+ enumerable: true,
68653
+ },
68654
+ worldURL:
68655
+ {
68656
+ get: X3DExecutionContext .prototype .getWorldURL,
68657
+ enumerable: true,
68658
+ },
68659
+ units:
68660
+ {
68661
+ get: X3DExecutionContext .prototype .getUnits,
68662
+ enumerable: true,
68663
+ },
68664
+ rootNodes:
68665
+ {
68666
+ get: X3DExecutionContext .prototype .getRootNodes,
68667
+ set: X3DExecutionContext .prototype .setRootNodes,
68668
+ enumerable: true,
68669
+ },
68670
+ protos:
68671
+ {
68672
+ get: X3DExecutionContext .prototype .getProtoDeclarations,
68673
+ enumerable: true,
68674
+ },
68675
+ externprotos:
68676
+ {
68677
+ get: X3DExecutionContext .prototype .getExternProtoDeclarations,
68678
+ enumerable: true,
68679
+ },
68680
+ routes:
68681
+ {
68682
+ get: X3DExecutionContext .prototype .getRoutes,
68683
+ enumerable: true,
68684
+ },
69134
68685
  });
69135
68686
 
69136
68687
  const X3DExecutionContext_default_ = X3DExecutionContext;
@@ -69771,22 +69322,24 @@ X3DExportedNode .prototype = Object .assign (Object .create (Base_X3DObject.prot
69771
69322
  for (const key of Reflect .ownKeys (X3DExportedNode .prototype))
69772
69323
  Object .defineProperty (X3DExportedNode .prototype, key, { enumerable: false });
69773
69324
 
69774
- Object .defineProperty (X3DExportedNode .prototype, "exportedName",
69325
+ Object .defineProperties (X3DExportedNode .prototype,
69775
69326
  {
69776
- get: function ()
69327
+ exportedName:
69777
69328
  {
69778
- return Fields_SFNodeCache.get (this [X3DExportedNode_exportedName]);
69329
+ get: function ()
69330
+ {
69331
+ return Fields_SFNodeCache.get (this [X3DExportedNode_exportedName]);
69332
+ },
69333
+ enumerable: true,
69779
69334
  },
69780
- enumerable: true,
69781
- });
69782
-
69783
- Object .defineProperty (X3DExportedNode .prototype, "localNode",
69784
- {
69785
- get: function ()
69335
+ localNode:
69786
69336
  {
69787
- return Fields_SFNodeCache.get (this [_localNode]);
69337
+ get: function ()
69338
+ {
69339
+ return Fields_SFNodeCache.get (this [_localNode]);
69340
+ },
69341
+ enumerable: true,
69788
69342
  },
69789
- enumerable: true,
69790
69343
  });
69791
69344
 
69792
69345
  const X3DExportedNode_default_ = X3DExportedNode;
@@ -69931,6 +69484,7 @@ x_ite_Namespace.set ("x_ite/Execution/ExportedNodesArray", ExportedNodesArray_de
69931
69484
  Configuration_SupportedNodes.addAbstractType ("X3DScene", X3DScene);
69932
69485
 
69933
69486
  const
69487
+ X3DScene_browser = Symbol .for ("X_ITE.X3DEventObject.browser"),
69934
69488
  _specificationVersion = Symbol (),
69935
69489
  _encoding = Symbol (),
69936
69490
  _profile = Symbol (),
@@ -69938,13 +69492,16 @@ const
69938
69492
  _worldURL = Symbol (),
69939
69493
  _units = Symbol (),
69940
69494
  _metadata = Symbol (),
69941
- _exportedNodes = Symbol ();
69495
+ _exportedNodes = Symbol (),
69496
+ _loadingObjects = Symbol ();
69942
69497
 
69943
- const LATEST_VERSION = "4.0";
69498
+ const X3D_LATEST_VERSION = "4.0";
69944
69499
 
69945
- function X3DScene (executionContext)
69500
+ function X3DScene (browser)
69946
69501
  {
69947
- Execution_X3DExecutionContext.call (this, executionContext);
69502
+ this [X3DScene_browser] = browser;
69503
+
69504
+ Execution_X3DExecutionContext.call (this, this);
69948
69505
 
69949
69506
  this .addType (Base_X3DConstants.X3DScene)
69950
69507
 
@@ -69952,9 +69509,11 @@ function X3DScene (executionContext)
69952
69509
  "components_changed", new x_ite_Fields.SFTime (),
69953
69510
  "units_changed", new x_ite_Fields.SFTime (),
69954
69511
  "metadata_changed", new x_ite_Fields.SFTime (),
69955
- "exportedNodes_changed", new x_ite_Fields.SFTime ())
69512
+ "exportedNodes_changed", new x_ite_Fields.SFTime (),
69513
+ "initLoadCount", new x_ite_Fields.SFInt32 (),
69514
+ "loadCount", new x_ite_Fields.SFInt32 ())
69956
69515
 
69957
- this [_specificationVersion] = LATEST_VERSION;
69516
+ this [_specificationVersion] = X3D_LATEST_VERSION;
69958
69517
  this [_encoding] = "SCRIPTED";
69959
69518
  this [_profile] = null;
69960
69519
  this [_components] = new Configuration_ComponentInfoArray ([ ]);
@@ -69966,8 +69525,9 @@ function X3DScene (executionContext)
69966
69525
  this [_units] .add ("length", new Configuration_UnitInfo ("length", "metre", 1));
69967
69526
  this [_units] .add ("mass", new Configuration_UnitInfo ("mass", "kilogram", 1));
69968
69527
 
69969
- this [_metadata] = new Map ();
69970
- this [_exportedNodes] = new Execution_ExportedNodesArray ();
69528
+ this [_metadata] = new Map ();
69529
+ this [_exportedNodes] = new Execution_ExportedNodesArray ();
69530
+ this [_loadingObjects] = new Set ();
69971
69531
 
69972
69532
  this .getRootNodes () .setAccessType (Base_X3DConstants.inputOutput);
69973
69533
 
@@ -70125,7 +69685,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70125
69685
  if (!name .length)
70126
69686
  throw new Error ("Couldn't add metadata: name is empty.");
70127
69687
 
70128
- if (! Array .isArray (values))
69688
+ if (!Array .isArray (values))
70129
69689
  values = [String (values)];
70130
69690
 
70131
69691
  if (!values .length)
@@ -70268,7 +69828,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70268
69828
  {
70269
69829
  generator .string += generator .Indent ();
70270
69830
  generator .string += "#X3D V";
70271
- generator .string += LATEST_VERSION;
69831
+ generator .string += X3D_LATEST_VERSION;
70272
69832
  generator .string += generator .Space ();
70273
69833
  generator .string += "utf8";
70274
69834
  generator .string += generator .Space ();
@@ -70360,9 +69920,9 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70360
69920
  generator .string += generator .TidyBreak ();
70361
69921
  generator .string += generator .Indent ();
70362
69922
  generator .string += "<!DOCTYPE X3D PUBLIC \"ISO//Web3D//DTD X3D ";
70363
- generator .string += LATEST_VERSION;
69923
+ generator .string += X3D_LATEST_VERSION;
70364
69924
  generator .string += "//EN\" \"http://www.web3d.org/specifications/x3d-";
70365
- generator .string += LATEST_VERSION;
69925
+ generator .string += X3D_LATEST_VERSION;
70366
69926
  generator .string += ".dtd\">";
70367
69927
  generator .string += generator .TidyBreak ();
70368
69928
  }
@@ -70375,13 +69935,13 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70375
69935
  generator .string += "'";
70376
69936
  generator .string += generator .Space ();
70377
69937
  generator .string += "version='";
70378
- generator .string += LATEST_VERSION;
69938
+ generator .string += X3D_LATEST_VERSION;
70379
69939
  generator .string += "'";
70380
69940
  generator .string += generator .Space ();
70381
69941
  generator .string += "xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance'";
70382
69942
  generator .string += generator .Space ();
70383
69943
  generator .string += "xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-";
70384
- generator .string += LATEST_VERSION;
69944
+ generator .string += X3D_LATEST_VERSION;
70385
69945
  generator .string += ".xsd'>";
70386
69946
  generator .string += generator .TidyBreak ();
70387
69947
 
@@ -70541,7 +70101,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70541
70101
  generator .string += ':';
70542
70102
  generator .string += generator .TidySpace ();
70543
70103
  generator .string += '"';
70544
- generator .string += LATEST_VERSION;
70104
+ generator .string += X3D_LATEST_VERSION;
70545
70105
  generator .string += '"';
70546
70106
  generator .string += ',';
70547
70107
  generator .string += generator .TidyBreak ();
@@ -70557,7 +70117,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70557
70117
  generator .string += generator .TidySpace ();
70558
70118
  generator .string += '"';
70559
70119
  generator .string += "http://www.web3d.org/specifications/x3d-";
70560
- generator .string += LATEST_VERSION;
70120
+ generator .string += X3D_LATEST_VERSION;
70561
70121
  generator .string += ".xsd";
70562
70122
  generator .string += '"';
70563
70123
  generator .string += ',';
@@ -70574,7 +70134,7 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70574
70134
  generator .string += generator .TidySpace ();
70575
70135
  generator .string += '"';
70576
70136
  generator .string += "http://www.web3d.org/specifications/x3d-";
70577
- generator .string += LATEST_VERSION;
70137
+ generator .string += X3D_LATEST_VERSION;
70578
70138
  generator .string += "-JSONSchema.json";
70579
70139
  generator .string += '"';
70580
70140
  generator .string += ',';
@@ -70828,132 +70388,11 @@ X3DScene .prototype = Object .assign (Object .create (Execution_X3DExecutionCont
70828
70388
  generator .string += generator .Indent ();
70829
70389
  generator .string += '}';
70830
70390
  },
70831
- });
70832
-
70833
- for (const key of Reflect .ownKeys (X3DScene .prototype))
70834
- Object .defineProperty (X3DScene .prototype, key, { enumerable: false });
70835
-
70836
- Object .defineProperty (X3DScene .prototype, "specificationVersion",
70837
- {
70838
- get: X3DScene .prototype .getSpecificationVersion,
70839
- enumerable: true,
70840
- });
70841
-
70842
- Object .defineProperty (X3DScene .prototype, "encoding",
70843
- {
70844
- get: X3DScene .prototype .getEncoding,
70845
- enumerable: true,
70846
- });
70847
-
70848
- Object .defineProperty (X3DScene .prototype, "profile",
70849
- {
70850
- get: X3DScene .prototype .getProfile,
70851
- enumerable: true,
70852
- });
70853
-
70854
- Object .defineProperty (X3DScene .prototype, "components",
70855
- {
70856
- get: X3DScene .prototype .getComponents,
70857
- enumerable: true,
70858
- });
70859
-
70860
- Object .defineProperty (X3DScene .prototype, "worldURL",
70861
- {
70862
- get: X3DScene .prototype .getWorldURL,
70863
- enumerable: true,
70864
- });
70865
-
70866
- Object .defineProperty (X3DScene .prototype, "units",
70867
- {
70868
- get: X3DScene .prototype .getUnits,
70869
- enumerable: true,
70870
- });
70871
-
70872
- Object .defineProperty (X3DScene .prototype, "rootNodes",
70873
- {
70874
- get: X3DScene .prototype .getRootNodes,
70875
- set: X3DScene .prototype .setRootNodes,
70876
- enumerable: true,
70877
- });
70878
-
70879
- const X3DScene_default_ = X3DScene;
70880
- ;
70881
-
70882
- x_ite_Namespace.set ("x_ite/Execution/X3DScene", X3DScene_default_);
70883
- /* harmony default export */ const Execution_X3DScene = (X3DScene_default_);
70884
- ;// CONCATENATED MODULE: ./src/x_ite/Execution/Scene.js
70885
- /*******************************************************************************
70886
- *
70887
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
70888
- *
70889
- * Copyright create3000, Scheffelstraße 31a, Leipzig, Germany 2011 - 2022.
70890
- *
70891
- * All rights reserved. Holger Seelig <holger.seelig@yahoo.de>.
70892
- *
70893
- * The copyright notice above does not evidence any actual of intended
70894
- * publication of such source code, and is an unpublished work by create3000.
70895
- * This material contains CONFIDENTIAL INFORMATION that is the property of
70896
- * create3000.
70897
- *
70898
- * No permission is granted to copy, distribute, or create derivative works from
70899
- * the contents of this software, in whole or in part, without the prior written
70900
- * permission of create3000.
70901
- *
70902
- * NON-MILITARY USE ONLY
70903
- *
70904
- * All create3000 software are effectively free software with a non-military use
70905
- * restriction. It is free. Well commented source is provided. You may reuse the
70906
- * source in any way you please with the exception anything that uses it must be
70907
- * marked to indicate is contains 'non-military use only' components.
70908
- *
70909
- * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
70910
- *
70911
- * Copyright 2011 - 2022, Holger Seelig <holger.seelig@yahoo.de>.
70912
- *
70913
- * This file is part of the X_ITE Project.
70914
- *
70915
- * X_ITE is free software: you can redistribute it and/or modify it under the
70916
- * terms of the GNU General Public License version 3 only, as published by the
70917
- * Free Software Foundation.
70918
- *
70919
- * X_ITE is distributed in the hope that it will be useful, but WITHOUT ANY
70920
- * WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
70921
- * A PARTICULAR PURPOSE. See the GNU General Public License version 3 for more
70922
- * details (a copy is included in the LICENSE file that accompanied this code).
70923
- *
70924
- * You should have received a copy of the GNU General Public License version 3
70925
- * along with X_ITE. If not, see <https://www.gnu.org/licenses/gpl.html> for a
70926
- * copy of the GPLv3 License.
70927
- *
70928
- * For Silvio, Joy and Adi.
70929
- *
70930
- ******************************************************************************/
70931
-
70932
-
70933
-
70934
-
70935
- const
70936
- Scene_browser = Symbol .for ("X_ITE.X3DEventObject.browser"),
70937
- _loadingObjects = Symbol ();
70938
-
70939
- function Scene (browser)
70940
- {
70941
- this [Scene_browser] = browser;
70942
-
70943
- Execution_X3DScene.call (this, this);
70944
-
70945
- this .addChildObjects ("initLoadCount", new x_ite_Fields.SFInt32 (), // Pre load count, must be zero before the scene can be passed to the requester.
70946
- "loadCount", new x_ite_Fields.SFInt32 ()); // Load count of all X3DUrlObjects.
70947
-
70948
- this [_loadingObjects] = new Set ();
70949
- }
70950
-
70951
- Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype),
70391
+ },
70952
70392
  {
70953
- constructor: Scene,
70954
70393
  setExecutionContext: function (value)
70955
70394
  {
70956
- if (! this .isMainScene ())
70395
+ if (!this .isMainScene ())
70957
70396
  {
70958
70397
  const scene = this .getScene ();
70959
70398
 
@@ -70961,9 +70400,9 @@ Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype)
70961
70400
  scene .removeLoadingObject (object);
70962
70401
  }
70963
70402
 
70964
- Execution_X3DScene.prototype.setExecutionContext.call (this, value);
70403
+ Execution_X3DExecutionContext.prototype.setExecutionContext.call (this, value);
70965
70404
 
70966
- if (! this .isMainScene ())
70405
+ if (!this .isMainScene ())
70967
70406
  {
70968
70407
  const scene = this .getScene ();
70969
70408
 
@@ -70999,7 +70438,7 @@ Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype)
70999
70438
  if (this === browser .getExecutionContext () || this .loader === browser .loader)
71000
70439
  browser .addLoadingObject (node);
71001
70440
 
71002
- if (! this .isMainScene ())
70441
+ if (!this .isMainScene ())
71003
70442
  scene .addLoadingObject (node);
71004
70443
  },
71005
70444
  removeLoadingObject: function (node)
@@ -71018,19 +70457,59 @@ Scene .prototype = Object .assign (Object .create (Execution_X3DScene.prototype)
71018
70457
  if (this === browser .getExecutionContext () || this .loader === browser .loader)
71019
70458
  browser .removeLoadingObject (node);
71020
70459
 
71021
- if (! this .isMainScene ())
70460
+ if (!this .isMainScene ())
71022
70461
  scene .removeLoadingObject (node);
71023
70462
  },
71024
70463
  });
71025
70464
 
71026
- for (const key of Reflect .ownKeys (Scene .prototype))
71027
- Object .defineProperty (Scene .prototype, key, { enumerable: false });
70465
+ for (const key of Reflect .ownKeys (X3DScene .prototype))
70466
+ Object .defineProperty (X3DScene .prototype, key, { enumerable: false });
70467
+
70468
+ Object .defineProperties (X3DScene .prototype,
70469
+ {
70470
+ specificationVersion:
70471
+ {
70472
+ get: X3DScene .prototype .getSpecificationVersion,
70473
+ enumerable: true,
70474
+ },
70475
+ encoding:
70476
+ {
70477
+ get: X3DScene .prototype .getEncoding,
70478
+ enumerable: true,
70479
+ },
70480
+ profile:
70481
+ {
70482
+ get: X3DScene .prototype .getProfile,
70483
+ enumerable: true,
70484
+ },
70485
+ components:
70486
+ {
70487
+ get: X3DScene .prototype .getComponents,
70488
+ enumerable: true,
70489
+ },
70490
+ worldURL:
70491
+ {
70492
+ get: X3DScene .prototype .getWorldURL,
70493
+ enumerable: true,
70494
+ },
70495
+ units:
70496
+ {
70497
+ get: X3DScene .prototype .getUnits,
70498
+ enumerable: true,
70499
+ },
70500
+ rootNodes:
70501
+ {
70502
+ get: X3DScene .prototype .getRootNodes,
70503
+ set: X3DScene .prototype .setRootNodes,
70504
+ enumerable: true,
70505
+ },
70506
+ });
71028
70507
 
71029
- const Scene_default_ = Scene;
70508
+ const X3DScene_default_ = X3DScene;
71030
70509
  ;
71031
70510
 
71032
- x_ite_Namespace.set ("x_ite/Execution/Scene", Scene_default_);
71033
- /* harmony default export */ const Execution_Scene = (Scene_default_);
70511
+ x_ite_Namespace.set ("x_ite/Execution/X3DScene", X3DScene_default_);
70512
+ /* harmony default export */ const Execution_X3DScene = (X3DScene_default_);
71034
70513
  ;// CONCATENATED MODULE: ./src/standard/Utility/DataStorage.js
71035
70514
  /*******************************************************************************
71036
70515
  *
@@ -71169,7 +70648,7 @@ const DataStorage_default_ = DataStorage;
71169
70648
  x_ite_Namespace.set ("standard/Utility/DataStorage", DataStorage_default_);
71170
70649
  /* harmony default export */ const Utility_DataStorage = (DataStorage_default_);
71171
70650
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Core/X3DCoreContext.js
71172
- /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(917);
70651
+ /* provided dependency */ var X3DCoreContext_$ = __webpack_require__(756);
71173
70652
  /*******************************************************************************
71174
70653
  *
71175
70654
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -71442,9 +70921,9 @@ X3DCoreContext .prototype =
71442
70921
  if (this [_privateScene])
71443
70922
  return this [_privateScene];
71444
70923
 
71445
- // Scene for default nodes.
70924
+ // X3DScene for default nodes.
71446
70925
 
71447
- this [_privateScene] = new Execution_Scene (this);
70926
+ this [_privateScene] = new Execution_X3DScene (this);
71448
70927
 
71449
70928
  this [_privateScene] .setPrivate (true);
71450
70929
  this [_privateScene] .setLive (true);
@@ -71546,6 +71025,24 @@ X3DCoreContext .prototype =
71546
71025
  this .setBrowserOption ("Timings", this .parseBooleanAttribute (newValue, false));
71547
71026
  break;
71548
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
+ }
71549
71046
  case "url":
71550
71047
  {
71551
71048
  if (newValue)
@@ -77221,8 +76718,8 @@ x_ite_Namespace.set ("x_ite/Components/Followers/PositionChaser", PositionChaser
77221
76718
 
77222
76719
 
77223
76720
  var
77224
- OrientationChaser_a = new Numbers_Rotation4 (0, 0, 1, 0),
77225
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
76721
+ OrientationChaser_a = new Numbers_Rotation4 (),
76722
+ rotation = new Numbers_Rotation4 ();
77226
76723
 
77227
76724
  function OrientationChaser (executionContext)
77228
76725
  {
@@ -77268,7 +76765,7 @@ OrientationChaser .prototype = Object .assign (Object .create (Followers_X3DChas
77268
76765
  },
77269
76766
  getVector: function ()
77270
76767
  {
77271
- return new Numbers_Rotation4 (0, 0, 1, 0);
76768
+ return new Numbers_Rotation4 ();
77272
76769
  },
77273
76770
  equals: function (lhs, rhs, tolerance)
77274
76771
  {
@@ -77294,8 +76791,8 @@ const OrientationChaser_default_ = OrientationChaser;
77294
76791
  x_ite_Namespace.set ("x_ite/Components/Followers/OrientationChaser", OrientationChaser_default_);
77295
76792
  /* harmony default export */ const Followers_OrientationChaser = (OrientationChaser_default_);
77296
76793
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/ExamineViewer.js
77297
- /* provided dependency */ var jquery_mousewheel = __webpack_require__(132);
77298
- /* provided dependency */ var ExamineViewer_$ = __webpack_require__(917);
76794
+ /* provided dependency */ var jquery_mousewheel = __webpack_require__(596);
76795
+ /* provided dependency */ var ExamineViewer_$ = __webpack_require__(756);
77299
76796
  /*******************************************************************************
77300
76797
  *
77301
76798
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -77374,12 +76871,12 @@ function ExamineViewer (executionContext, navigationInfo)
77374
76871
  Navigation_X3DViewer.call (this, executionContext, navigationInfo);
77375
76872
 
77376
76873
  this .button = -1;
77377
- this .orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
76874
+ this .orientationOffset = new Numbers_Rotation4 ();
77378
76875
  this .fromVector = new Numbers_Vector3 (0, 0, 0);
77379
76876
  this .toVector = new Numbers_Vector3 (0, 0, 0);
77380
76877
  this .fromPoint = new Numbers_Vector3 (0, 0, 0);
77381
76878
  this .toPoint = new Numbers_Vector3 (0, 0, 0);
77382
- this .rotation = new Numbers_Rotation4 (0, 0, 1, 0);
76879
+ this .rotation = new Numbers_Rotation4 ();
77383
76880
  this .direction = new Numbers_Vector3 (0, 0, 0);
77384
76881
  this .axis = new Numbers_Vector3 (0, 0, 0);
77385
76882
  this .pressTime = 0;
@@ -77392,7 +76889,7 @@ function ExamineViewer (executionContext, navigationInfo)
77392
76889
  this .dblTapInterval = 0.4;
77393
76890
 
77394
76891
  this .initialPositionOffset = new Numbers_Vector3 (0, 0, 0);
77395
- this .initialOrientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
76892
+ this .initialOrientationOffset = new Numbers_Rotation4 ();
77396
76893
  this .positionChaser = new Followers_PositionChaser (executionContext);
77397
76894
  this .centerOfRotationChaser = new Followers_PositionChaser (executionContext);
77398
76895
  this .rotationChaser = new Followers_OrientationChaser (executionContext);
@@ -77934,7 +77431,7 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
77934
77431
  viewpoint = this .getActiveViewpoint (),
77935
77432
  userPosition = viewpoint .getUserPosition (),
77936
77433
  userCenterOfRotation = viewpoint .getUserCenterOfRotation (),
77937
- direction = Numbers_Vector3.subtract (userPosition, userCenterOfRotation),
77434
+ direction = userPosition .copy () .subtract (userCenterOfRotation),
77938
77435
  rotation = this .getHorizonRotation (rotationChange),
77939
77436
  axis = viewpoint .getUpVector (true);
77940
77437
 
@@ -78053,7 +77550,7 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
78053
77550
  const
78054
77551
  distance = new Numbers_Vector3 (0, 0, 0),
78055
77552
  d = new Numbers_Vector3 (0, 0, 0),
78056
- oob = new Numbers_Rotation4 (0, 0, 1, 0);
77553
+ oob = new Numbers_Rotation4 ();
78057
77554
 
78058
77555
  return function (positionOffsetBefore, orientationOffsetBefore, orientationOffsetAfter)
78059
77556
  {
@@ -78071,8 +77568,8 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
78071
77568
  getOrientationOffset: (function ()
78072
77569
  {
78073
77570
  const
78074
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78075
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0),
77571
+ userOrientation = new Numbers_Rotation4 (),
77572
+ orientationOffset = new Numbers_Rotation4 (),
78076
77573
  zAxis = new Numbers_Vector3 (0, 0, 0);
78077
77574
 
78078
77575
  return function (rotation, orientationOffsetBefore, _throw)
@@ -78120,8 +77617,8 @@ ExamineViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.
78120
77617
  {
78121
77618
  const
78122
77619
  V = rotation .multVecRot (zAxis .assign (Numbers_Vector3.zAxis)),
78123
- N = Numbers_Vector3.cross (Numbers_Vector3.yAxis, V),
78124
- H = Numbers_Vector3.cross (N, Numbers_Vector3.yAxis),
77620
+ N = Numbers_Vector3.yAxis.copy () .cross (V),
77621
+ H = N .copy () .cross (Numbers_Vector3.yAxis),
78125
77622
  r = new Numbers_Rotation4 (Numbers_Vector3.zAxis, H);
78126
77623
 
78127
77624
  return r;
@@ -78159,8 +77656,8 @@ const ExamineViewer_default_ = ExamineViewer;
78159
77656
  x_ite_Namespace.set ("x_ite/Browser/Navigation/ExamineViewer", ExamineViewer_default_);
78160
77657
  /* harmony default export */ const Navigation_ExamineViewer = (ExamineViewer_default_);
78161
77658
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/X3DFlyViewer.js
78162
- /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(132);
78163
- /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(917);
77659
+ /* provided dependency */ var X3DFlyViewer_jquery_mousewheel = __webpack_require__(596);
77660
+ /* provided dependency */ var X3DFlyViewer_$ = __webpack_require__(756);
78164
77661
  /*******************************************************************************
78165
77662
  *
78166
77663
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -78573,9 +78070,9 @@ X3DFlyViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
78573
78070
  upVector = new Numbers_Vector3 (0, 0, 0),
78574
78071
  direction = new Numbers_Vector3 (0, 0, 0),
78575
78072
  axis = new Numbers_Vector3 (0, 0, 0),
78576
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78577
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0),
78578
- rubberBandRotation = new Numbers_Rotation4 (0, 0, 1, 0);
78073
+ userOrientation = new Numbers_Rotation4 (),
78074
+ orientationOffset = new Numbers_Rotation4 (),
78075
+ rubberBandRotation = new Numbers_Rotation4 ();
78579
78076
 
78580
78077
  return function ()
78581
78078
  {
@@ -78706,8 +78203,8 @@ X3DFlyViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
78706
78203
  addRoll: (function ()
78707
78204
  {
78708
78205
  const
78709
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0),
78710
- roll = new Numbers_Rotation4 (0, 0, 1, 0);
78206
+ orientationOffset = new Numbers_Rotation4 (),
78207
+ roll = new Numbers_Rotation4 ();
78711
78208
 
78712
78209
  return function (rollAngle)
78713
78210
  {
@@ -78743,8 +78240,8 @@ X3DFlyViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
78743
78240
  addRotation: (function ()
78744
78241
  {
78745
78242
  const
78746
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78747
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
78243
+ userOrientation = new Numbers_Rotation4 (),
78244
+ orientationOffset = new Numbers_Rotation4 ();
78748
78245
 
78749
78246
  return function (fromVector, toVector)
78750
78247
  {
@@ -78977,8 +78474,8 @@ WalkViewer .prototype = Object .assign (Object .create (Navigation_X3DFlyViewer.
78977
78474
  {
78978
78475
  const
78979
78476
  localYAxis = new Numbers_Vector3 (0, 0, 0),
78980
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
78981
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
78477
+ userOrientation = new Numbers_Rotation4 (),
78478
+ rotation = new Numbers_Rotation4 ();
78982
78479
 
78983
78480
  return function (velocity)
78984
78481
  {
@@ -79108,8 +78605,8 @@ const FlyViewer_default_ = FlyViewer;
79108
78605
  x_ite_Namespace.set ("x_ite/Browser/Navigation/FlyViewer", FlyViewer_default_);
79109
78606
  /* harmony default export */ const Navigation_FlyViewer = (FlyViewer_default_);
79110
78607
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/PlaneViewer.js
79111
- /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(132);
79112
- /* provided dependency */ var PlaneViewer_$ = __webpack_require__(917);
78608
+ /* provided dependency */ var PlaneViewer_jquery_mousewheel = __webpack_require__(596);
78609
+ /* provided dependency */ var PlaneViewer_$ = __webpack_require__(756);
79113
78610
  /*******************************************************************************
79114
78611
  *
79115
78612
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -79418,8 +78915,8 @@ const NoneViewer_default_ = NoneViewer;
79418
78915
  x_ite_Namespace.set ("x_ite/Browser/Navigation/NoneViewer", NoneViewer_default_);
79419
78916
  /* harmony default export */ const Navigation_NoneViewer = (NoneViewer_default_);
79420
78917
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Navigation/LookAtViewer.js
79421
- /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(132);
79422
- /* provided dependency */ var LookAtViewer_$ = __webpack_require__(917);
78918
+ /* provided dependency */ var LookAtViewer_jquery_mousewheel = __webpack_require__(596);
78919
+ /* provided dependency */ var LookAtViewer_$ = __webpack_require__(756);
79423
78920
  /*******************************************************************************
79424
78921
  *
79425
78922
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -79792,7 +79289,7 @@ LookAtViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
79792
79289
 
79793
79290
  event .deltaY = delta;
79794
79291
  event .zoomFactor = Math .abs (delta) / LookAtViewer_$(window) .width ();
79795
-
79292
+
79796
79293
  event .pageX = (touches [0] .pageX + touches [1] .pageX) / 2;
79797
79294
  event .pageY = (touches [0] .pageY + touches [1] .pageY) / 2;
79798
79295
 
@@ -79878,8 +79375,8 @@ LookAtViewer .prototype = Object .assign (Object .create (Navigation_X3DViewer.p
79878
79375
  addRotation: (function ()
79879
79376
  {
79880
79377
  const
79881
- userOrientation = new Numbers_Rotation4 (0, 0, 1, 0),
79882
- orientationOffset = new Numbers_Rotation4 (0, 0, 1, 0);
79378
+ userOrientation = new Numbers_Rotation4 (),
79379
+ orientationOffset = new Numbers_Rotation4 ();
79883
79380
 
79884
79381
  return function (fromVector, toVector)
79885
79382
  {
@@ -81051,8 +80548,8 @@ const X3DPickingContext_default_ = X3DPickingContext;
81051
80548
  x_ite_Namespace.set ("x_ite/Browser/Picking/X3DPickingContext", X3DPickingContext_default_);
81052
80549
  /* harmony default export */ const Picking_X3DPickingContext = (X3DPickingContext_default_);
81053
80550
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js
81054
- /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(132);
81055
- /* provided dependency */ var PointingDevice_$ = __webpack_require__(917);
80551
+ /* provided dependency */ var PointingDevice_jquery_mousewheel = __webpack_require__(596);
80552
+ /* provided dependency */ var PointingDevice_$ = __webpack_require__(756);
81056
80553
  /*******************************************************************************
81057
80554
  *
81058
80555
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -82090,8 +81587,8 @@ const MultiSampleFrameBuffer_default_ = MultiSampleFrameBuffer;
82090
81587
  x_ite_Namespace.set ("x_ite/Rendering/MultiSampleFrameBuffer", MultiSampleFrameBuffer_default_);
82091
81588
  /* harmony default export */ const Rendering_MultiSampleFrameBuffer = (MultiSampleFrameBuffer_default_);
82092
81589
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Rendering/X3DRenderingContext.js
82093
- /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(917);
82094
- /* provided dependency */ var ResizeSensor = __webpack_require__(66);
81590
+ /* provided dependency */ var X3DRenderingContext_$ = __webpack_require__(756);
81591
+ /* provided dependency */ var ResizeSensor = __webpack_require__(681);
82095
81592
  /*******************************************************************************
82096
81593
  *
82097
81594
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -87984,7 +87481,7 @@ const X3DShaderNode_default_ = X3DShaderNode;
87984
87481
  x_ite_Namespace.set ("x_ite/Components/Shaders/X3DShaderNode", X3DShaderNode_default_);
87985
87482
  /* harmony default export */ const Shaders_X3DShaderNode = (X3DShaderNode_default_);
87986
87483
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js
87987
- /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(917);
87484
+ /* provided dependency */ var X3DProgrammableShaderObject_$ = __webpack_require__(756);
87988
87485
  /*******************************************************************************
87989
87486
  *
87990
87487
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -90761,7 +90258,7 @@ const ShaderCompiler_default_ = ShaderCompiler;
90761
90258
  x_ite_Namespace.set ("x_ite/Browser/Shaders/ShaderCompiler", ShaderCompiler_default_);
90762
90259
  /* harmony default export */ const Shaders_ShaderCompiler = (ShaderCompiler_default_);
90763
90260
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Shaders/ShaderPart.js
90764
- /* provided dependency */ var ShaderPart_$ = __webpack_require__(917);
90261
+ /* provided dependency */ var ShaderPart_$ = __webpack_require__(756);
90765
90262
  /*******************************************************************************
90766
90263
  *
90767
90264
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -91049,7 +90546,6 @@ x_ite_Namespace.set ("x_ite/Components/Shaders/ShaderPart", ShaderPart_default_)
91049
90546
  const
91050
90547
  _wireframe = Symbol (),
91051
90548
  _primitiveModes = Symbol (),
91052
- _defaultShader = Symbol (),
91053
90549
  _shaderNodes = Symbol ();
91054
90550
 
91055
90551
  function X3DShadersContext ()
@@ -94016,14 +93512,14 @@ function X3DBrowserContext (element)
94016
93512
  "displayEvents", new Fields_SFTime (),
94017
93513
  "finishedEvents", new Fields_SFTime ());
94018
93514
 
94019
- this [_changedTime] = 0;
94020
- this [_previousTime] = 0;
94021
- this [_renderCallback] = this [_traverse] .bind (this);
94022
- this [_systemTime] = new Time_StopWatch ();
94023
- this [_browserTime] = new Time_StopWatch ();
94024
- this [_cameraTime] = new Time_StopWatch ();
94025
- this [_collisionTime] = new Time_StopWatch ();
94026
- this [_displayTime] = new Time_StopWatch ();
93515
+ this [_changedTime] = 0;
93516
+ this [_previousTime] = 0;
93517
+ this [_renderCallback] = this [_traverse] .bind (this);
93518
+ this [_systemTime] = new Time_StopWatch ();
93519
+ this [_browserTime] = new Time_StopWatch ();
93520
+ this [_cameraTime] = new Time_StopWatch ();
93521
+ this [_collisionTime] = new Time_StopWatch ();
93522
+ this [_displayTime] = new Time_StopWatch ();
94027
93523
  };
94028
93524
 
94029
93525
  X3DBrowserContext .prototype = Object .assign (Object .create (Base_X3DBaseNode.prototype),
@@ -96040,7 +95536,7 @@ ProximitySensor .prototype = Object .assign (Object .create (EnvironmentalSensor
96040
95536
  invModelMatrix = new Numbers_Matrix4 (),
96041
95537
  centerOfRotationMatrix = new Numbers_Matrix4 (),
96042
95538
  position = new Numbers_Vector3 (0, 0, 0),
96043
- orientation = new Numbers_Rotation4 (0, 0, 1, 0),
95539
+ orientation = new Numbers_Rotation4 (),
96044
95540
  centerOfRotation = new Numbers_Vector3 (0, 0, 0);
96045
95541
 
96046
95542
  return function ()
@@ -96378,7 +95874,7 @@ TransformSensor .prototype = Object .assign (Object .create (EnvironmentalSensor
96378
95874
  {
96379
95875
  const
96380
95876
  position = new Numbers_Vector3 (0, 0, 0),
96381
- orientation = new Numbers_Rotation4 (0, 0, 1, 0);
95877
+ orientation = new Numbers_Rotation4 ();
96382
95878
 
96383
95879
  return function ()
96384
95880
  {
@@ -97707,8 +97203,8 @@ x_ite_Namespace.set ("x_ite/Components/Followers/CoordinateDamper", CoordinateDa
97707
97203
 
97708
97204
 
97709
97205
  var
97710
- OrientationDamper_a = new Numbers_Rotation4 (0, 0, 1, 0),
97711
- OrientationDamper_rotation = new Numbers_Rotation4 (0, 0, 1, 0);
97206
+ OrientationDamper_a = new Numbers_Rotation4 (),
97207
+ OrientationDamper_rotation = new Numbers_Rotation4 ();
97712
97208
 
97713
97209
  function OrientationDamper (executionContext)
97714
97210
  {
@@ -97756,7 +97252,7 @@ OrientationDamper .prototype = Object .assign (Object .create (Followers_X3DDamp
97756
97252
  },
97757
97253
  getVector: function ()
97758
97254
  {
97759
- return new Numbers_Rotation4 (0, 0, 1, 0);
97255
+ return new Numbers_Rotation4 ();
97760
97256
  },
97761
97257
  equals: function (lhs, rhs, tolerance)
97762
97258
  {
@@ -98766,15 +98262,12 @@ Box .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.proto
98766
98262
  else
98767
98263
  {
98768
98264
  const
98769
- 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),
98770
98268
  defaultVertices = geometry .getVertices () .getValue (),
98771
98269
  vertexArray = this .getVertices ();
98772
98270
 
98773
- let
98774
- x = scale .x,
98775
- y = scale .y,
98776
- z = scale .z;
98777
-
98778
98271
  for (let i = 0, length = defaultVertices .length; i < length; i += 4)
98779
98272
  {
98780
98273
  vertexArray .push (x * defaultVertices [i],
@@ -98783,10 +98276,6 @@ Box .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.proto
98783
98276
  1);
98784
98277
  }
98785
98278
 
98786
- x = Math .abs (x);
98787
- y = Math .abs (y);
98788
- z = Math .abs (z);
98789
-
98790
98279
  this .getMin () .set (-x, -y, -z);
98791
98280
  this .getMax () .set ( x, y, z);
98792
98281
  }
@@ -98978,7 +98467,7 @@ Cone .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.prot
98978
98467
  u = i / xDimension,
98979
98468
  theta = 2 * Math .PI * u,
98980
98469
  t = Numbers_Complex.Polar (-1, theta),
98981
- p = Numbers_Complex.multiply (t, bottomRadius);
98470
+ p = t .copy () .multiply (bottomRadius);
98982
98471
 
98983
98472
  texCoord .push (new Numbers_Vector2 ((t .imag + 1) / 2, (t .real + 1) / 2));
98984
98473
  points .push (new Numbers_Vector3 (p .imag, y2, p .real));
@@ -99171,13 +98660,13 @@ Cylinder .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode.
99171
98660
  u1 = i / xDimension,
99172
98661
  theta1 = 2 * Math .PI * u1,
99173
98662
  n1 = Numbers_Complex.Polar (-1, theta1),
99174
- p1 = Numbers_Complex.multiply (n1, radius);
98663
+ p1 = n1 .copy () .multiply (radius);
99175
98664
 
99176
98665
  const
99177
98666
  u2 = (i + 1) / xDimension,
99178
98667
  theta2 = 2 * Math .PI * u2,
99179
98668
  n2 = Numbers_Complex.Polar (-1, theta2),
99180
- p2 = Numbers_Complex.multiply (n2, radius);
98669
+ p2 = n2 .copy () .multiply (radius);
99181
98670
 
99182
98671
  // p1 - p4
99183
98672
  // | \ |
@@ -99960,7 +99449,7 @@ Extrusion .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode
99960
99449
 
99961
99450
  const
99962
99451
  vector3 = new Numbers_Vector3 (0, 0, 0),
99963
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
99452
+ rotation = new Numbers_Rotation4 ();
99964
99453
 
99965
99454
  return function ()
99966
99455
  {
@@ -100382,7 +99871,7 @@ Extrusion .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode
100382
99871
  point = points [index] .copy ();
100383
99872
 
100384
99873
  point .index = index;
100385
- 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);
100386
99875
  polygon .push (convex ? index : point);
100387
99876
  }
100388
99877
 
@@ -100422,7 +99911,7 @@ Extrusion .prototype = Object .assign (Object .create (Rendering_X3DGeometryNode
100422
99911
  point = points [index] .copy ();
100423
99912
 
100424
99913
  point .index = index;
100425
- texCoord [index] = Numbers_Vector2.subtract (crossSection [k] .getValue (), min) .divide (capMax);
99914
+ texCoord [index] = crossSection [k] .getValue () .copy () .subtract (min) .divide (capMax);
100426
99915
  polygon .push (convex ? index : point);
100427
99916
  }
100428
99917
 
@@ -102520,7 +102009,7 @@ function CatmullRomSplineInterpolatorTemplate (Type)
102520
102009
  constructor: CatmullRomSplineInterpolatorInstance,
102521
102010
  create: function ()
102522
102011
  {
102523
- return new Type (0, 0, 0, 0);
102012
+ return Type .Zero .copy ();
102524
102013
  },
102525
102014
  copy: function (value)
102526
102015
  {
@@ -102528,15 +102017,15 @@ function CatmullRomSplineInterpolatorTemplate (Type)
102528
102017
  },
102529
102018
  subtract: function (lhs, rhs)
102530
102019
  {
102531
- return Type .subtract (lhs, rhs);
102020
+ return lhs .copy () .subtract (rhs);
102532
102021
  },
102533
102022
  multiply: function (lhs, rhs)
102534
102023
  {
102535
- return Type .multiply (lhs, rhs);
102024
+ return lhs .copy () .multiply (rhs);
102536
102025
  },
102537
102026
  divide: function (lhs, rhs)
102538
102027
  {
102539
- return Type .divide (lhs, rhs);
102028
+ return lhs .copy () .divide (rhs);
102540
102029
  },
102541
102030
  magnitude: function (value)
102542
102031
  {
@@ -103252,8 +102741,6 @@ x_ite_Namespace.set ("x_ite/Components/Interpolation/SplineScalarInterpolator",
103252
102741
 
103253
102742
 
103254
102743
 
103255
- const result = new Numbers_Rotation4 (0, 0, 1, 0);
103256
-
103257
102744
  function SquatInterpolator ()
103258
102745
  {
103259
102746
  this .s = [ ];
@@ -103300,14 +102787,21 @@ SquatInterpolator .prototype =
103300
102787
  }
103301
102788
  }
103302
102789
  else if (key .length > 0)
102790
+ {
103303
102791
  s .push (keyValue [0] .getValue () .copy ());
102792
+ }
103304
102793
  },
103305
- interpolate: function (index0, index1, weight, keyValue)
102794
+ interpolate: (function ()
103306
102795
  {
103307
- return result .assign (keyValue [index0] .getValue ()) .squad (this .s [index0],
103308
- this .s [index1],
103309
- keyValue [index1] .getValue (), weight);
103310
- },
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
+ })(),
103311
102805
  };
103312
102806
 
103313
102807
  const SquatInterpolator_default_ = SquatInterpolator;
@@ -104661,7 +104155,7 @@ Billboard .prototype = Object .assign (Object .create (Grouping_X3DGroupingNode.
104661
104155
  y = new Numbers_Vector3 (0, 0, 0),
104662
104156
  N1 = new Numbers_Vector3 (0, 0, 0),
104663
104157
  N2 = new Numbers_Vector3 (0, 0, 0),
104664
- rotation = new Numbers_Rotation4 (0, 0, 1, 0);
104158
+ rotation = new Numbers_Rotation4 ();
104665
104159
 
104666
104160
  return function (modelViewMatrix)
104667
104161
  {
@@ -106754,7 +106248,7 @@ Cylinder3 .prototype =
106754
106248
 
106755
106249
  // find the given line un-translated
106756
106250
  const
106757
- point = Numbers_Vector3.subtract (line .point, this .axis .point),
106251
+ point = line .point .copy () .subtract (this .axis .point),
106758
106252
  noTranslationLine = new Geometry_Line3 (point, line .direction);
106759
106253
 
106760
106254
  // find the un-translated line in unit cylinder's space
@@ -106949,7 +106443,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106949
106443
  this .szNormal = null;
106950
106444
  this .behind = false;
106951
106445
  this .fromVector = new Numbers_Vector3 (0, 0, 0);
106952
- this .startOffset = new Numbers_Rotation4 (0, 0, 1, 0);
106446
+ this .startOffset = new Numbers_Rotation4 ();
106953
106447
  },
106954
106448
  isBehind: function (hitRay, hitPoint)
106955
106449
  {
@@ -106959,7 +106453,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106959
106453
 
106960
106454
  this .cylinder .intersectsLine (hitRay, enter, exit);
106961
106455
 
106962
- return Numbers_Vector3.subtract (hitPoint, enter) .magnitude () > Numbers_Vector3.subtract (hitPoint, exit) .magnitude ();
106456
+ return hitPoint .distance (enter) > hitPoint .distance (exit);
106963
106457
  },
106964
106458
  getTrackPoint: function (hitRay, trackPoint)
106965
106459
  {
@@ -106968,7 +106462,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106968
106462
  this .zPlane .intersectsLine (hitRay, zPoint);
106969
106463
 
106970
106464
  const
106971
- 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))),
106972
106466
  distance = this .sxPlane .getDistanceToPoint (zPoint) / this .cylinder .radius,
106973
106467
  section = Math .floor ((distance + 1) / 2);
106974
106468
 
@@ -106985,7 +106479,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
106985
106479
  },
106986
106480
  getAngle: function (rotation)
106987
106481
  {
106988
- 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)
106989
106483
  return rotation .angle;
106990
106484
 
106991
106485
  else
@@ -107013,7 +106507,7 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
107013
106507
  radius = axis .getPerpendicularVectorToPoint (hitPoint, new Numbers_Vector3 (0, 0, 0)) .magnitude ();
107014
106508
 
107015
106509
  this .cylinder = new Geometry_Cylinder3 (axis, radius);
107016
- 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 ());
107017
106511
  this .behind = this .isBehind (hitRay, hitPoint);
107018
106512
  this .yPlane = new Geometry_Plane3 (hitPoint, yAxis); // Sensor aligned y-plane
107019
106513
  this .zPlane = new Geometry_Plane3 (hitPoint, cameraBack); // Screen aligned z-plane
@@ -107021,10 +106515,10 @@ CylinderSensor .prototype = Object .assign (Object .create (PointingDeviceSensor
107021
106515
  // Compute normal like in Billboard with yAxis as axis of rotation.
107022
106516
  const
107023
106517
  billboardToViewer = this .invModelViewMatrix .origin,
107024
- sxNormal = Numbers_Vector3.cross (yAxis, billboardToViewer) .normalize ();
106518
+ sxNormal = yAxis .copy () .cross (billboardToViewer) .normalize ();
107025
106519
 
107026
106520
  this .sxPlane = new Geometry_Plane3 (new Numbers_Vector3 (0, 0, 0), sxNormal); // Billboarded special x-plane made parallel to sensors axis.
107027
- 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.
107028
106522
 
107029
106523
  const trackPoint = new Numbers_Vector3 (0, 0, 0);
107030
106524
 
@@ -107273,7 +106767,7 @@ Line2 .Points = function (point1, point2)
107273
106767
  {
107274
106768
  const line = Object .create (Line2 .prototype);
107275
106769
  line .point = point1 .copy ();
107276
- line .direction = Numbers_Vector2.subtract (point2, point1) .normalize ();
106770
+ line .direction = point2 .copy () .subtract (point1) .normalize ();
107277
106771
  return line;
107278
106772
  };
107279
106773
 
@@ -107553,7 +107047,7 @@ PlaneSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X3
107553
107047
  {
107554
107048
  const
107555
107049
  axisRotation = this ._axisRotation .getValue (),
107556
- 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));
107557
107051
 
107558
107052
  // X component
107559
107053
 
@@ -107712,8 +107206,8 @@ Sphere3 .prototype =
107712
107206
  const
107713
107207
  rr = r * r,
107714
107208
  V = AB .cross (AC),
107715
- d = Numbers_Vector3.dot (A, V),
107716
- e = Numbers_Vector3.dot (V, V),
107209
+ d = A .dot (V),
107210
+ e = V .dot (V),
107717
107211
  sep1 = d * d > rr * e;
107718
107212
 
107719
107213
  if (sep1)
@@ -107721,12 +107215,12 @@ Sphere3 .prototype =
107721
107215
 
107722
107216
  // Testing if sphere lies outside a triangle vertex.
107723
107217
  const
107724
- aa = Numbers_Vector3.dot (A, A),
107725
- ab = Numbers_Vector3.dot (A, B),
107726
- ac = Numbers_Vector3.dot (A, C),
107727
- bb = Numbers_Vector3.dot (B, B),
107728
- bc = Numbers_Vector3.dot (B, C),
107729
- 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),
107730
107224
  sep2 = (aa > rr) && (ab > aa) && (ac > aa),
107731
107225
  sep3 = (bb > rr) && (ab > bb) && (bc > bb),
107732
107226
  sep4 = (cc > rr) && (ac > cc) && (bc > cc);
@@ -107744,9 +107238,9 @@ Sphere3 .prototype =
107744
107238
  d1 = ab - aa,
107745
107239
  d2 = bc - bb,
107746
107240
  d3 = ac - cc,
107747
- e1 = Numbers_Vector3.dot (AB, AB),
107748
- e2 = Numbers_Vector3.dot (BC, BC),
107749
- e3 = Numbers_Vector3.dot (CA, CA);
107241
+ e1 = AB .dot (AB),
107242
+ e2 = BC .dot (BC),
107243
+ e3 = CA .dot (CA);
107750
107244
 
107751
107245
  Q1 .assign (A) .multiply (e1) .subtract (AB .multiply (d1));
107752
107246
  Q2 .assign (B) .multiply (e2) .subtract (BC .multiply (d2));
@@ -107756,9 +107250,9 @@ Sphere3 .prototype =
107756
107250
  QC = C .multiply (e1) .subtract (Q1),
107757
107251
  QA = A .multiply (e2) .subtract (Q2),
107758
107252
  QB = B .multiply (e3) .subtract (Q3),
107759
- sep5 = (Numbers_Vector3.dot (Q1, Q1) > rr * e1 * e1) && (Numbers_Vector3.dot (Q1, QC) > 0),
107760
- sep6 = (Numbers_Vector3.dot (Q2, Q2) > rr * e2 * e2) && (Numbers_Vector3.dot (Q2, QA) > 0),
107761
- 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);
107762
107256
 
107763
107257
  if (sep5 || sep6 || sep7)
107764
107258
  return false;
@@ -107887,7 +107381,7 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107887
107381
  this .behind = false;
107888
107382
  this .fromVector = new Numbers_Vector3 (0, 0, 0);
107889
107383
  this .startPoint = new Numbers_Vector3 (0, 0, 0);
107890
- this .startOffset = new Numbers_Rotation4 (0, 0, 1, 0);
107384
+ this .startOffset = new Numbers_Rotation4 ();
107891
107385
  },
107892
107386
  getTrackPoint: function (hitRay, trackPoint, behind)
107893
107387
  {
@@ -107895,7 +107389,7 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107895
107389
 
107896
107390
  if (this .sphere .intersectsLine (hitRay, trackPoint, exit))
107897
107391
  {
107898
- 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)
107899
107393
  trackPoint .assign (exit);
107900
107394
 
107901
107395
  return true;
@@ -107953,7 +107447,7 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107953
107447
 
107954
107448
  this .zPlane .intersectsLine (hitRay, tangentPoint);
107955
107449
 
107956
- hitRay .set (tangentPoint, Numbers_Vector3.subtract (this .sphere .center, tangentPoint) .normalize ());
107450
+ hitRay .set (tangentPoint, this .sphere .center .copy () .subtract (tangentPoint) .normalize ());
107957
107451
 
107958
107452
  //console .log (hitRay .toString ());
107959
107453
 
@@ -107963,12 +107457,12 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107963
107457
 
107964
107458
  const
107965
107459
  triNormal = Geometry_Triangle3.normal (this .sphere .center, trackPoint, this .startPoint, new Numbers_Vector3 (0, 0, 0)),
107966
- dirFromCenter = Numbers_Vector3.subtract (trackPoint, this .sphere .center) .normalize (),
107967
- normal = Numbers_Vector3.cross (triNormal, dirFromCenter) .normalize ();
107460
+ dirFromCenter = trackPoint .copy () .subtract (this .sphere .center) .normalize (),
107461
+ normal = triNormal .copy () .cross (dirFromCenter) .normalize ();
107968
107462
 
107969
- 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 ()));
107970
107464
 
107971
- hitRay .set (point1, Numbers_Vector3.subtract (this .sphere .center, point1) .normalize ());
107465
+ hitRay .set (point1, this .sphere .center .copy () .subtract (point1) .normalize ());
107972
107466
 
107973
107467
  this .getTrackPoint (hitRay, trackPoint, false);
107974
107468
  }
@@ -107976,13 +107470,13 @@ SphereSensor .prototype = Object .assign (Object .create (PointingDeviceSensor_X
107976
107470
  this ._trackPoint_changed = trackPoint;
107977
107471
 
107978
107472
  const
107979
- toVector = Numbers_Vector3.subtract (trackPoint, this .sphere .center),
107473
+ toVector = trackPoint .copy () .subtract (this .sphere .center),
107980
107474
  rotation = new Numbers_Rotation4 (this .fromVector, toVector);
107981
107475
 
107982
107476
  if (this .behind)
107983
107477
  rotation .inverse ();
107984
107478
 
107985
- this ._rotation_changed = Numbers_Rotation4.multRight (this .startOffset, rotation);
107479
+ this ._rotation_changed = this .startOffset .copy () .multRight (rotation);
107986
107480
  },
107987
107481
  });
107988
107482
 
@@ -113173,7 +112667,7 @@ const X3DSoundSourceNode_default_ = X3DSoundSourceNode;
113173
112667
  x_ite_Namespace.set ("x_ite/Components/Sound/X3DSoundSourceNode", X3DSoundSourceNode_default_);
113174
112668
  /* harmony default export */ const Sound_X3DSoundSourceNode = (X3DSoundSourceNode_default_);
113175
112669
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Sound/AudioClip.js
113176
- /* provided dependency */ var AudioClip_$ = __webpack_require__(917);
112670
+ /* provided dependency */ var AudioClip_$ = __webpack_require__(756);
113177
112671
  /*******************************************************************************
113178
112672
  *
113179
112673
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -116072,8 +115566,8 @@ const GIFMedia_default_ = GifMedia;
116072
115566
  x_ite_Namespace.set ("x_ite/Browser/Texturing/GIFMedia", GIFMedia_default_);
116073
115567
  /* harmony default export */ const GIFMedia = (GIFMedia_default_);
116074
115568
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/MovieTexture.js
116075
- /* provided dependency */ var MovieTexture_$ = __webpack_require__(917);
116076
- /* provided dependency */ var SuperGif = __webpack_require__(168);
115569
+ /* provided dependency */ var MovieTexture_$ = __webpack_require__(756);
115570
+ /* provided dependency */ var SuperGif = __webpack_require__(857);
116077
115571
  /*******************************************************************************
116078
115572
  *
116079
115573
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117036,7 +116530,7 @@ const MultiTextureTransform_default_ = MultiTextureTransform;
117036
116530
  x_ite_Namespace.set ("x_ite/Components/Texturing/MultiTextureTransform", MultiTextureTransform_default_);
117037
116531
  /* harmony default export */ const Texturing_MultiTextureTransform = (MultiTextureTransform_default_);
117038
116532
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Texturing/PixelTexture.js
117039
- /* provided dependency */ var PixelTexture_$ = __webpack_require__(917);
116533
+ /* provided dependency */ var PixelTexture_$ = __webpack_require__(756);
117040
116534
  /*******************************************************************************
117041
116535
  *
117042
116536
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -117747,7 +117241,7 @@ const Components_default_ = Components;
117747
117241
  x_ite_Namespace.set ("x_ite/Components", Components_default_);
117748
117242
  /* harmony default export */ const x_ite_Components = ((/* unused pure expression or super */ null && (Components_default_)));
117749
117243
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/DOMIntegration.js
117750
- /* provided dependency */ var DOMIntegration_$ = __webpack_require__(917);
117244
+ /* provided dependency */ var DOMIntegration_$ = __webpack_require__(756);
117751
117245
  /*******************************************************************************
117752
117246
  * MIT License
117753
117247
  *
@@ -118988,7 +118482,7 @@ const SupportedProfiles_default_ = SupportedProfiles;
118988
118482
  x_ite_Namespace.set ("x_ite/Configuration/SupportedProfiles", SupportedProfiles_default_);
118989
118483
  /* harmony default export */ const Configuration_SupportedProfiles = (SupportedProfiles_default_);
118990
118484
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/X3DBrowser.js
118991
- /* provided dependency */ var X3DBrowser_$ = __webpack_require__(917);
118485
+ /* provided dependency */ var X3DBrowser_$ = __webpack_require__(756);
118992
118486
  /*******************************************************************************
118993
118487
  *
118994
118488
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -119057,7 +118551,6 @@ x_ite_Namespace.set ("x_ite/Configuration/SupportedProfiles", SupportedProfiles_
119057
118551
 
119058
118552
 
119059
118553
 
119060
-
119061
118554
 
119062
118555
 
119063
118556
  const
@@ -119254,7 +118747,7 @@ X3DBrowser .prototype = Object .assign (Object .create (Browser_X3DBrowserContex
119254
118747
  },
119255
118748
  createScene: function (profile, component1 /*, ...*/)
119256
118749
  {
119257
- const scene = new Execution_Scene (this);
118750
+ const scene = new Execution_X3DScene (this);
119258
118751
 
119259
118752
  if (arguments .length)
119260
118753
  {
@@ -119805,18 +119298,18 @@ X3DBrowser .prototype = Object .assign (Object .create (Browser_X3DBrowserContex
119805
119298
  this .setLive (false);
119806
119299
  this .getExecutionContext () .setLive (false);
119807
119300
  },
119808
- print: function ()
119301
+ print: function (... args)
119809
119302
  {
119810
- const string = Array .prototype .join .call (arguments, "");
119303
+ const string = args .join ("");
119811
119304
 
119812
119305
  console .log (string);
119813
119306
 
119814
119307
  for (const element of this [_console])
119815
119308
  element .append (document .createTextNode (string));
119816
119309
  },
119817
- println: function ()
119310
+ println: function (... args)
119818
119311
  {
119819
- const string = Array .prototype .join .call (arguments, "");
119312
+ const string = args .join ("");
119820
119313
 
119821
119314
  console .log (string);
119822
119315
 
@@ -119840,75 +119333,69 @@ X3DBrowser .prototype = Object .assign (Object .create (Browser_X3DBrowserContex
119840
119333
  for (const key of Reflect .ownKeys (X3DBrowser .prototype))
119841
119334
  Object .defineProperty (X3DBrowser .prototype, key, { enumerable: false });
119842
119335
 
119843
- Object .defineProperty (X3DBrowser .prototype, "name",
119844
- {
119845
- get: X3DBrowser .prototype .getName,
119846
- enumerable: true,
119847
- });
119848
-
119849
- Object .defineProperty (X3DBrowser .prototype, "version",
119850
- {
119851
- get: X3DBrowser .prototype .getVersion,
119852
- enumerable: true,
119853
- });
119854
-
119855
- Object .defineProperty (X3DBrowser .prototype, "providerUrl",
119856
- {
119857
- get: X3DBrowser .prototype .getProviderUrl,
119858
- enumerable: true,
119859
- });
119860
-
119861
- Object .defineProperty (X3DBrowser .prototype, "currentFrameRate",
119862
- {
119863
- get: X3DBrowser .prototype .getCurrentFrameRate,
119864
- enumerable: true,
119865
- });
119866
-
119867
- Object .defineProperty (X3DBrowser .prototype, "currentSpeed",
119868
- {
119869
- get: X3DBrowser .prototype .getCurrentSpeed,
119870
- enumerable: true,
119871
- });
119872
-
119873
- Object .defineProperty (X3DBrowser .prototype, "description",
119874
- {
119875
- get: X3DBrowser .prototype .getDescription,
119876
- set: X3DBrowser .prototype .setDescription,
119877
- enumerable: true,
119878
- });
119879
-
119880
- Object .defineProperty (X3DBrowser .prototype, "baseURL",
119881
- {
119882
- get: X3DBrowser .prototype .getBaseURL,
119883
- set: X3DBrowser .prototype .setBaseURL,
119884
- enumerable: true,
119885
- });
119886
-
119887
- Object .defineProperty (X3DBrowser .prototype, "currentScene",
119336
+ Object .defineProperties (X3DBrowser .prototype,
119888
119337
  {
119889
- get: function ()
119338
+ name:
119890
119339
  {
119891
- return this .getScriptStack () .at (-1) .getExecutionContext ();
119340
+ get: X3DBrowser .prototype .getName,
119341
+ enumerable: true,
119892
119342
  },
119893
- enumerable: true,
119894
- });
119895
-
119896
- Object .defineProperty (X3DBrowser .prototype, "supportedProfiles",
119897
- {
119898
- get: function ()
119343
+ version:
119899
119344
  {
119900
- return Configuration_SupportedProfiles;
119345
+ get: X3DBrowser .prototype .getVersion,
119346
+ enumerable: true,
119901
119347
  },
119902
- enumerable: true,
119903
- });
119904
-
119905
- Object .defineProperty (X3DBrowser .prototype, "supportedComponents",
119906
- {
119907
- get: function ()
119348
+ providerUrl:
119908
119349
  {
119909
- return Configuration_SupportedComponents;
119350
+ get: X3DBrowser .prototype .getProviderUrl,
119351
+ enumerable: true,
119352
+ },
119353
+ currentFrameRate:
119354
+ {
119355
+ get: X3DBrowser .prototype .getCurrentFrameRate,
119356
+ enumerable: true,
119357
+ },
119358
+ currentSpeed:
119359
+ {
119360
+ get: X3DBrowser .prototype .getCurrentSpeed,
119361
+ enumerable: true,
119362
+ },
119363
+ description:
119364
+ {
119365
+ get: X3DBrowser .prototype .getDescription,
119366
+ set: X3DBrowser .prototype .setDescription,
119367
+ enumerable: true,
119368
+ },
119369
+ baseURL:
119370
+ {
119371
+ get: X3DBrowser .prototype .getBaseURL,
119372
+ set: X3DBrowser .prototype .setBaseURL,
119373
+ enumerable: true,
119374
+ },
119375
+ currentScene:
119376
+ {
119377
+ get: function ()
119378
+ {
119379
+ return this .getScriptStack () .at (-1) .getExecutionContext ();
119380
+ },
119381
+ enumerable: true,
119382
+ },
119383
+ supportedProfiles:
119384
+ {
119385
+ get: function ()
119386
+ {
119387
+ return Configuration_SupportedProfiles;
119388
+ },
119389
+ enumerable: true,
119390
+ },
119391
+ supportedComponents:
119392
+ {
119393
+ get: function ()
119394
+ {
119395
+ return Configuration_SupportedComponents;
119396
+ },
119397
+ enumerable: true,
119910
119398
  },
119911
- enumerable: true,
119912
119399
  });
119913
119400
 
119914
119401
  const X3DBrowser_default_ = X3DBrowser;
@@ -119917,7 +119404,7 @@ const X3DBrowser_default_ = X3DBrowser;
119917
119404
  x_ite_Namespace.set ("x_ite/Browser/X3DBrowser", X3DBrowser_default_);
119918
119405
  /* harmony default export */ const Browser_X3DBrowser = (X3DBrowser_default_);
119919
119406
  ;// CONCATENATED MODULE: ./src/x_ite/Fallback.js
119920
- /* provided dependency */ var Fallback_$ = __webpack_require__(917);
119407
+ /* provided dependency */ var Fallback_$ = __webpack_require__(756);
119921
119408
  /*******************************************************************************
119922
119409
  *
119923
119410
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120096,8 +119583,8 @@ const MicroTime_default_ = undefined;
120096
119583
  x_ite_Namespace.set ("standard/Time/MicroTime", MicroTime_default_);
120097
119584
  /* harmony default export */ const MicroTime = ((/* unused pure expression or super */ null && (MicroTime_default_)));
120098
119585
  ;// CONCATENATED MODULE: ./src/lib/jquery.js
120099
- /* provided dependency */ var jquery_$ = __webpack_require__(917);
120100
- /* provided dependency */ var pako = __webpack_require__(480);
119586
+ /* provided dependency */ var jquery_$ = __webpack_require__(756);
119587
+ /* provided dependency */ var pako = __webpack_require__(879);
120101
119588
  jquery_$.decodeText = function (input)
120102
119589
  {
120103
119590
  if (typeof input === "string")
@@ -120123,20 +119610,33 @@ jquery_$.toLowerCaseFirst = function (string)
120123
119610
  return string [0] .toLowerCase () + string .slice (1);
120124
119611
  };
120125
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
+
120126
119626
  const jquery_default_ = jquery_$;
120127
119627
  ;
120128
119628
 
120129
119629
  x_ite_Namespace.set ("lib/jquery", jquery_default_);
120130
119630
  /* harmony default export */ const jquery = ((/* unused pure expression or super */ null && (jquery_default_)));
120131
119631
  ;// CONCATENATED MODULE: ./src/lib/libtess.js
120132
- /* provided dependency */ var libtess_libtess = __webpack_require__(836);
119632
+ /* provided dependency */ var libtess_libtess = __webpack_require__(405);
120133
119633
  const libtess_default_ = libtess_libtess;
120134
119634
  ;
120135
119635
 
120136
119636
  x_ite_Namespace.set ("lib/libtess", libtess_default_);
120137
119637
  /* harmony default export */ const lib_libtess = ((/* unused pure expression or super */ null && (libtess_default_)));
120138
119638
  ;// CONCATENATED MODULE: ./src/x_ite/X3D.js
120139
- /* provided dependency */ var X3D_$ = __webpack_require__(917);
119639
+ /* provided dependency */ var X3D_$ = __webpack_require__(756);
120140
119640
  /*******************************************************************************
120141
119641
  *
120142
119642
  * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
@@ -120475,6 +119975,7 @@ class X3DCanvasElement extends HTMLElement
120475
119975
  "splashscreen",
120476
119976
  "src",
120477
119977
  "timings",
119978
+ "update",
120478
119979
  "url",
120479
119980
  ];
120480
119981
  }
@@ -120648,7 +120149,7 @@ x_ite_Namespace.set ("shim", shim_default_);
120648
120149
 
120649
120150
  // Assign X3D to global namespace.
120650
120151
 
120651
- window [Symbol .for ("X_ITE.X3D-8.7.4")] = x_ite_X3D;
120152
+ window [Symbol .for ("X_ITE.X3D-8.7.6")] = x_ite_X3D;
120652
120153
 
120653
120154
  customElements .define ("x3d-canvas", x_ite_X3DCanvasElement);
120654
120155