x_ite 8.7.5 → 8.7.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (240) hide show
  1. package/dist/assets/components/Annotation.js +13 -13
  2. package/dist/assets/components/Annotation.min.js +1 -1
  3. package/dist/assets/components/CADGeometry.js +13 -13
  4. package/dist/assets/components/CADGeometry.min.js +1 -1
  5. package/dist/assets/components/CubeMapTexturing.js +25 -25
  6. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  7. package/dist/assets/components/DIS.js +13 -13
  8. package/dist/assets/components/DIS.min.js +1 -1
  9. package/dist/assets/components/EventUtilities.js +9 -9
  10. package/dist/assets/components/EventUtilities.min.js +1 -1
  11. package/dist/assets/components/Geometry2D.js +21 -23
  12. package/dist/assets/components/Geometry2D.min.js +1 -1
  13. package/dist/assets/components/Geospatial.js +35 -36
  14. package/dist/assets/components/Geospatial.min.js +1 -1
  15. package/dist/assets/components/HAnim.js +18 -18
  16. package/dist/assets/components/HAnim.min.js +1 -1
  17. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  18. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  19. package/dist/assets/components/Layout.js +28 -28
  20. package/dist/assets/components/Layout.min.js +1 -1
  21. package/dist/assets/components/NURBS.js +24 -24
  22. package/dist/assets/components/NURBS.min.js +1 -1
  23. package/dist/assets/components/ParticleSystems.js +22 -22
  24. package/dist/assets/components/ParticleSystems.min.js +1 -1
  25. package/dist/assets/components/Picking.js +20 -20
  26. package/dist/assets/components/Picking.min.js +1 -1
  27. package/dist/assets/components/RigidBodyPhysics.js +25 -25
  28. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  29. package/dist/assets/components/Scripting.js +28 -28
  30. package/dist/assets/components/Scripting.min.js +1 -1
  31. package/dist/assets/components/Text.js +26 -27
  32. package/dist/assets/components/Text.min.js +1 -1
  33. package/dist/assets/components/TextureProjector.js +15 -15
  34. package/dist/assets/components/TextureProjector.min.js +1 -1
  35. package/dist/assets/components/Texturing3D.js +30 -30
  36. package/dist/assets/components/Texturing3D.min.js +1 -1
  37. package/dist/assets/components/VolumeRendering.js +19 -19
  38. package/dist/assets/components/VolumeRendering.min.js +1 -1
  39. package/dist/assets/components/X_ITE.js +9 -9
  40. package/dist/assets/components/X_ITE.min.js +1 -1
  41. package/dist/x_ite.css +1 -1
  42. package/dist/x_ite.js +348 -587
  43. package/dist/x_ite.min.js +1 -1
  44. package/dist/x_ite.zip +0 -0
  45. package/docs/_config.yml +1 -1
  46. package/docs/_includes/scripts.html +0 -1
  47. package/docs/_posts/components/CADGeometry/QuadSet.md +1 -1
  48. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +1 -1
  49. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +1 -1
  50. package/docs/_posts/components/EnvironmentalEffects/Background.md +1 -1
  51. package/docs/_posts/components/EnvironmentalEffects/Fog.md +1 -1
  52. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +1 -1
  53. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +1 -1
  54. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +1 -1
  55. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +1 -1
  56. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +1 -1
  57. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +1 -1
  58. package/docs/_posts/components/Followers/ColorChaser.md +1 -1
  59. package/docs/_posts/components/Followers/ColorDamper.md +1 -1
  60. package/docs/_posts/components/Followers/CoordinateChaser.md +1 -1
  61. package/docs/_posts/components/Followers/ScalarChaser.md +1 -1
  62. package/docs/_posts/components/Geometry2D/Arc2D.md +1 -1
  63. package/docs/_posts/components/Geometry2D/ArcClose2D.md +1 -1
  64. package/docs/_posts/components/Geometry2D/Circle2D.md +1 -1
  65. package/docs/_posts/components/Geometry2D/Disk2D.md +1 -1
  66. package/docs/_posts/components/Geometry2D/Polyline2D.md +1 -1
  67. package/docs/_posts/components/Geometry2D/Polypoint2D.md +1 -1
  68. package/docs/_posts/components/Geometry2D/Rectangle2D.md +1 -1
  69. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +1 -1
  70. package/docs/_posts/components/Geometry3D/Box.md +1 -1
  71. package/docs/_posts/components/Geometry3D/Cone.md +1 -1
  72. package/docs/_posts/components/Geometry3D/Cylinder.md +1 -1
  73. package/docs/_posts/components/Geometry3D/ElevationGrid.md +1 -1
  74. package/docs/_posts/components/Geometry3D/Extrusion.md +1 -1
  75. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +1 -1
  76. package/docs/_posts/components/Geometry3D/Sphere.md +1 -1
  77. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +1 -1
  78. package/docs/_posts/components/Geospatial/GeoLOD.md +1 -1
  79. package/docs/_posts/components/Geospatial/GeoViewpoint.md +1 -1
  80. package/docs/_posts/components/Grouping/Group.md +1 -1
  81. package/docs/_posts/components/Grouping/Switch.md +1 -1
  82. package/docs/_posts/components/Grouping/Transform.md +1 -1
  83. package/docs/_posts/components/HAnim/HAnimHumanoid.md +1 -1
  84. package/docs/_posts/components/Interpolation/ColorInterpolator.md +1 -1
  85. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +1 -1
  86. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +1 -1
  87. package/docs/_posts/components/Interpolation/PositionInterpolator.md +1 -1
  88. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +1 -1
  89. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +1 -1
  90. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +1 -1
  91. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +1 -1
  92. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +1 -1
  93. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +1 -1
  94. package/docs/_posts/components/Layering/LayerSet.md +1 -1
  95. package/docs/_posts/components/Layering/Viewport.md +1 -1
  96. package/docs/_posts/components/Lighting/DirectionalLight.md +1 -1
  97. package/docs/_posts/components/Lighting/PointLight.md +1 -1
  98. package/docs/_posts/components/Lighting/SpotLight.md +1 -1
  99. package/docs/_posts/components/NURBS/NurbsCurve.md +1 -1
  100. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +1 -1
  101. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +1 -1
  102. package/docs/_posts/components/Navigation/Billboard.md +1 -1
  103. package/docs/_posts/components/Navigation/Collision.md +1 -1
  104. package/docs/_posts/components/Navigation/NavigationInfo.md +1 -1
  105. package/docs/_posts/components/Navigation/OrthoViewpoint.md +1 -1
  106. package/docs/_posts/components/Navigation/Viewpoint.md +1 -1
  107. package/docs/_posts/components/Networking/Anchor.md +1 -1
  108. package/docs/_posts/components/Networking/Inline.md +1 -1
  109. package/docs/_posts/components/Networking/LoadSensor.md +1 -1
  110. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +1 -1
  111. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +1 -1
  112. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +1 -1
  113. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +1 -1
  114. package/docs/_posts/components/ParticleSystems/PointEmitter.md +1 -1
  115. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +1 -1
  116. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +1 -1
  117. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +1 -1
  118. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +1 -1
  119. package/docs/_posts/components/Picking/LinePickSensor.md +1 -1
  120. package/docs/_posts/components/Picking/PointPickSensor.md +1 -1
  121. package/docs/_posts/components/Picking/PrimitivePickSensor.md +1 -1
  122. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +1 -1
  123. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +1 -1
  124. package/docs/_posts/components/Rendering/ClipPlane.md +1 -1
  125. package/docs/_posts/components/Rendering/Color.md +1 -1
  126. package/docs/_posts/components/Rendering/ColorRGBA.md +1 -1
  127. package/docs/_posts/components/Rendering/Coordinate.md +1 -1
  128. package/docs/_posts/components/Rendering/IndexedLineSet.md +1 -1
  129. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +1 -1
  130. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +1 -1
  131. package/docs/_posts/components/Rendering/LineSet.md +1 -1
  132. package/docs/_posts/components/Rendering/PointSet.md +1 -1
  133. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +1 -1
  134. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +1 -1
  135. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +1 -1
  136. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +1 -1
  137. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +1 -1
  138. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +1 -1
  139. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +1 -1
  140. package/docs/_posts/components/Shaders/ComposedShader.md +1 -1
  141. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +1 -1
  142. package/docs/_posts/components/Shaders/ShaderPart.md +1 -1
  143. package/docs/_posts/components/Shape/Appearance.md +1 -1
  144. package/docs/_posts/components/Shape/FillProperties.md +1 -1
  145. package/docs/_posts/components/Shape/LineProperties.md +1 -1
  146. package/docs/_posts/components/Shape/Material.md +1 -1
  147. package/docs/_posts/components/Shape/TwoSidedMaterial.md +1 -1
  148. package/docs/_posts/components/Sound/AudioClip.md +1 -1
  149. package/docs/_posts/components/Text/FontStyle.md +1 -1
  150. package/docs/_posts/components/Text/Text.md +1 -1
  151. package/docs/_posts/components/Texturing/ImageTexture.md +1 -1
  152. package/docs/_posts/components/Texturing/MovieTexture.md +1 -1
  153. package/docs/_posts/components/Texturing/MultiTexture.md +1 -1
  154. package/docs/_posts/components/Texturing/PixelTexture.md +1 -1
  155. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +1 -1
  156. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +1 -1
  157. package/docs/_posts/components/Time/TimeSensor.md +1 -1
  158. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +1 -1
  159. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +1 -1
  160. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +1 -1
  161. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +1 -1
  162. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +1 -1
  163. package/docs/_posts/components/VolumeRendering/VolumeData.md +1 -1
  164. package/docs/_posts/components/X_ITE/BlendMode.md +1 -1
  165. package/docs/_posts/custom-shaders.md +1 -1
  166. package/docs/_posts/getting-started.md +7 -2
  167. package/docs/_posts/reference/browser-services.md +6 -0
  168. package/docs/_posts/tutorials/adding-backgrounds.md +2 -2
  169. package/docs/_posts/tutorials/adding-sound.md +1 -1
  170. package/docs/_posts/tutorials/building-a-x3d-world.md +1 -1
  171. package/docs/_posts/tutorials/building-elevation-grids.md +1 -1
  172. package/docs/_posts/tutorials/building-primitive-shapes.md +2 -2
  173. package/docs/_posts/tutorials/controlling-appearance-with-materials.md +1 -1
  174. package/docs/_posts/tutorials/controlling-detail.md +1 -1
  175. package/docs/_posts/tutorials/hello-world.md +1 -1
  176. package/docs/_posts/tutorials/naming-nodes.md +1 -1
  177. package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +1 -1
  178. package/package.json +3 -3
  179. package/src/lib/jquery.js +13 -0
  180. package/src/standard/Geospatial/UniversalTransverseMercator.js +0 -1
  181. package/src/standard/Math/Geometry/Box2.js +18 -5
  182. package/src/standard/Math/Geometry/Box3.js +18 -5
  183. package/src/standard/Math/Geometry/Cylinder3.js +1 -1
  184. package/src/standard/Math/Geometry/Line2.js +1 -1
  185. package/src/standard/Math/Geometry/Line3.js +1 -1
  186. package/src/standard/Math/Geometry/Plane3.js +1 -1
  187. package/src/standard/Math/Geometry/Sphere3.js +14 -14
  188. package/src/standard/Math/Numbers/Complex.js +0 -4
  189. package/src/standard/Math/Numbers/Quaternion.js +27 -73
  190. package/src/standard/Math/Numbers/Rotation4.js +0 -29
  191. package/src/standard/Math/Numbers/Vector2.js +0 -64
  192. package/src/standard/Math/Numbers/Vector3.js +0 -72
  193. package/src/standard/Math/Numbers/Vector4.js +0 -64
  194. package/src/x_ite/Base/X3DObject.js +9 -32
  195. package/src/x_ite/Base/X3DObjectArrayField.js +35 -64
  196. package/src/x_ite/Browser/Core/BrowserOptions.js +37 -0
  197. package/src/x_ite/Browser/Core/X3DCoreContext.js +18 -0
  198. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolatorTemplate.js +4 -4
  199. package/src/x_ite/Browser/Interpolation/SquatInterpolator.js +12 -7
  200. package/src/x_ite/Browser/Navigation/ExamineViewer.js +9 -9
  201. package/src/x_ite/Browser/Navigation/LookAtViewer.js +3 -3
  202. package/src/x_ite/Browser/Navigation/WalkViewer.js +2 -2
  203. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +7 -7
  204. package/src/x_ite/Browser/Picking/VolumePicker.js +1 -1
  205. package/src/x_ite/Browser/Shaders/X3DShadersContext.js +0 -1
  206. package/src/x_ite/Browser/Text/X3DTextGeometry.js +2 -3
  207. package/src/x_ite/Browser/VERSION.js +1 -1
  208. package/src/x_ite/Browser/X3DBrowser.js +4 -4
  209. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +1 -1
  210. package/src/x_ite/Components/EnvironmentalSensor/TransformSensor.js +1 -1
  211. package/src/x_ite/Components/Followers/OrientationChaser.js +3 -3
  212. package/src/x_ite/Components/Followers/OrientationDamper.js +3 -3
  213. package/src/x_ite/Components/Geometry2D/Rectangle2D.js +2 -3
  214. package/src/x_ite/Components/Geometry3D/Box.js +3 -10
  215. package/src/x_ite/Components/Geometry3D/Cone.js +1 -1
  216. package/src/x_ite/Components/Geometry3D/Cylinder.js +2 -2
  217. package/src/x_ite/Components/Geometry3D/Extrusion.js +3 -3
  218. package/src/x_ite/Components/Geospatial/GeoViewpoint.js +2 -2
  219. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +2 -2
  220. package/src/x_ite/Components/Layout/Layout.js +1 -1
  221. package/src/x_ite/Components/Navigation/Billboard.js +1 -1
  222. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +10 -10
  223. package/src/x_ite/Components/Picking/PointPickSensor.js +1 -1
  224. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +7 -7
  225. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +1 -1
  226. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +9 -9
  227. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +1 -1
  228. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +2 -2
  229. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +1 -1
  230. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +1 -1
  231. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +3 -3
  232. package/src/x_ite/Components/TextureProjector/X3DTextureProjectorNode.js +1 -1
  233. package/src/x_ite/Fields/ArrayFields.js +1 -1
  234. package/src/x_ite/Fields/SFNodeCache.js +2 -2
  235. package/src/x_ite/Fields/SFVec3.js +1 -1
  236. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +3 -3
  237. package/src/x_ite/Parser/SVGParser.js +1 -1
  238. package/src/x_ite/Rendering/X3DRenderObject.js +3 -3
  239. package/src/x_ite/X3DCanvasElement.js +1 -0
  240. package/docs/assets/js/autoupdate.js +0 -25
@@ -81,7 +81,7 @@ Bounding box size is usually omitted, and can easily be calculated automatically
81
81
 
82
82
  ## Example
83
83
 
84
- <x3d-canvas src="https://create3000.github.io/media/examples/VolumeRendering/VolumeData/VolumeData.x3d"></x3d-canvas>
84
+ <x3d-canvas src="https://create3000.github.io/media/examples/VolumeRendering/VolumeData/VolumeData.x3d" update="auto"></x3d-canvas>
85
85
 
86
86
  ## External Links
87
87
 
@@ -87,7 +87,7 @@ Specifies the alpha blend equation, how the alpha component of the source and de
87
87
 
88
88
  ## Example
89
89
 
90
- <x3d-canvas src="https://create3000.github.io/media/examples/X_ITE/BlendMode/BlendMode.x3d"></x3d-canvas>
90
+ <x3d-canvas src="https://create3000.github.io/media/examples/X_ITE/BlendMode/BlendMode.x3d" update="auto"></x3d-canvas>
91
91
 
92
92
  ## See Also
93
93
 
@@ -13,7 +13,7 @@ However, you will often want to perform special effects or special cases for you
13
13
 
14
14
  ## Example
15
15
 
16
- <x3d-canvas src="https://create3000.github.io/media/examples/X3D/WaterQuality/WaterQuality.x3d">
16
+ <x3d-canvas src="https://create3000.github.io/media/examples/X3D/WaterQuality/WaterQuality.x3d" update="auto">
17
17
  <img src="https://create3000.github.io/media/images/water-quality.png" alt="Shader Example"/>
18
18
  </x3d-canvas>
19
19
 
@@ -10,6 +10,7 @@ x_ite: true
10
10
  <x3d-canvas
11
11
  class="teaser"
12
12
  src="/x_ite/assets/X3D/teaser/teaser.x3d"
13
+ update="auto"
13
14
  splashScreen="false"
14
15
  contextMenu="false"
15
16
  notifications="false"
@@ -739,14 +740,18 @@ A String value containing the URL to load on page load. If no *src* attribute is
739
740
 
740
741
  A Boolean value (`true` or `false`) to indicate whether the Timings Panel should be displayed. The default value for the *timings* attribute is restored from the previous session, otherwise it is `false`.
741
742
 
743
+ ### update
744
+
745
+ A Boolean value (`true`, `false` or `auto`) to indicate whether browser events should be processed. The default value for the *update* attribute is `true`. A value of `true` will effectively call `Browser.beginUpdate`, a value of `false` will call `Browser.endUpdate`. If the value is `auto`, the effective value is determined by the visibility of the \<x3d-canvas\> element.
746
+
742
747
  ### url
743
748
 
744
749
  An MFString value of URLs to load on page load. If no *url* attribute is specified or the attribute is empty, an empty scene will be displayed. If both *src* and *url* attributes are given, the last given attribute takes precedence.
745
750
 
746
- ### Example
751
+ ### Example of Use
747
752
 
748
753
  ```html
749
- <x3d-canvas cache="true" src="path/to/your/X3D/world.x3d"></x3d-canvas>
754
+ <x3d-canvas src="path/to/your/X3D/world.x3d" cache="true" update="auto"></x3d-canvas>
750
755
  ```
751
756
 
752
757
  ### More Options
@@ -215,6 +215,12 @@ Returns a browser option with the corresponding name.
215
215
  <td>LOW, MEDIUM, HIGH</td>
216
216
  <td>MEDIUM</td>
217
217
  </tr>
218
+ <tr>
219
+ <td>AutoUpdate</td>
220
+ <td>Whether the update control of the browser should be done automatically or not. (non standard)</td>
221
+ <td>Boolean</td>
222
+ <td>false</td>
223
+ </tr>
218
224
  <tr>
219
225
  <td>Cache</td>
220
226
  <td>Whether or not files should be cached. (non standard)</td>
@@ -137,7 +137,7 @@ DEF Summer Background {
137
137
 
138
138
  ### Example
139
139
 
140
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/background1/background1.x3dv">
140
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/background1/background1.x3dv" update="auto">
141
141
  <img src="https://create3000.github.io/media/tutorials/scenes/background1/screenshot.png" alt="Background 1"/>
142
142
  </x3d-canvas>
143
143
 
@@ -257,7 +257,7 @@ DEF Summer Background {
257
257
 
258
258
  ### Example
259
259
 
260
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/background2/background2.x3dv">
260
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/background2/background2.x3dv" update="auto">
261
261
  <img src="https://create3000.github.io/media/tutorials/scenes/background2/screenshot.png" alt="Background 1"/>
262
262
  </x3d-canvas>
263
263
 
@@ -241,7 +241,7 @@ ROUTE C4.touchTime TO PitchC4.set_startTime
241
241
 
242
242
  ### Example
243
243
 
244
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/sound/sound.x3dv">
244
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/sound/sound.x3dv" update="auto">
245
245
  <img src="https://create3000.github.io/media/tutorials/scenes/sound/screenshot.png" alt="Sound"/>
246
246
  </x3d-canvas>
247
247
 
@@ -56,7 +56,7 @@ Shape {
56
56
 
57
57
  ### Example
58
58
 
59
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.x3dv">
59
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.x3dv" update="auto">
60
60
  <img src="https://create3000.github.io/media/tutorials/scenes/cylinder1/screenshot.png" alt="Cylinder"/>
61
61
  </x3d-canvas>
62
62
 
@@ -163,7 +163,7 @@ Shape {
163
163
 
164
164
  ### Example
165
165
 
166
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/elevation-grid/elevation-grid.x3dv">
166
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/elevation-grid/elevation-grid.x3dv" update="auto">
167
167
  <img src="https://create3000.github.io/media/tutorials/scenes/elevation-grid/screenshot.png" alt="Elevation Grid"/>
168
168
  </x3d-canvas>
169
169
 
@@ -131,7 +131,7 @@ Shape {
131
131
 
132
132
  ### Example
133
133
 
134
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.x3dv">
134
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.x3dv" update="auto">
135
135
  <img src="https://create3000.github.io/media/tutorials/scenes/cylinder1/screenshot.png" alt="Cylinder"/>
136
136
  </x3d-canvas>
137
137
 
@@ -198,7 +198,7 @@ Shape {
198
198
 
199
199
  ### Example
200
200
 
201
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/multiple-shapes/multiple-shapes.x3dv">
201
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/multiple-shapes/multiple-shapes.x3dv" update="auto">
202
202
  <img src="https://create3000.github.io/media/tutorials/scenes/multiple-shapes/screenshot.png" alt="Multiple Shapes"/>
203
203
  </x3d-canvas>
204
204
 
@@ -174,7 +174,7 @@ Shape {
174
174
 
175
175
  ### Example
176
176
 
177
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/box1/box1.x3dv">
177
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/box1/box1.x3dv" update="auto">
178
178
  <img src="https://create3000.github.io/media/tutorials/scenes/box1/screenshot.png" alt="Box 1"/>
179
179
  </x3d-canvas>
180
180
 
@@ -118,7 +118,7 @@ LOD {
118
118
 
119
119
  ### Example
120
120
 
121
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/lod/lod.x3dv">
121
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/lod/lod.x3dv" update="auto">
122
122
  <img src="https://create3000.github.io/media/tutorials/scenes/lod/screenshot.png" alt="LOD"/>
123
123
  </x3d-canvas>
124
124
 
@@ -19,7 +19,7 @@ In this tutorial, you will learn how to create a simple hello world scene with X
19
19
 
20
20
  ### Example
21
21
 
22
- <x3d-canvas src="https://create3000.github.io/media/tutorials/hello-world/hello-world.x3d">
22
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/hello-world/hello-world.x3d" update="auto">
23
23
  <img src="https://create3000.github.io/media/tutorials/hello-world/screenshot.png" alt="Hello World Image"/>
24
24
  </x3d-canvas>
25
25
 
@@ -156,7 +156,7 @@ Transform {
156
156
 
157
157
  ### Example
158
158
 
159
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/dinette/dinette.x3dv">
159
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/dinette/dinette.x3dv" update="auto">
160
160
  <img src="https://create3000.github.io/media/tutorials/scenes/dinette/screenshot.png" alt="Dinette"/>
161
161
  </x3d-canvas>
162
162
 
@@ -448,7 +448,7 @@ ROUTE Bouncer.value_changed TO Ball.set_translation
448
448
 
449
449
  ### Example
450
450
 
451
- <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/bouncer/bouncer.x3dv">
451
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/bouncer/bouncer.x3dv" update="auto">
452
452
  <img src="https://create3000.github.io/media/tutorials/scenes/bouncer/screenshot.png" alt="Bouncer"/>
453
453
  </x3d-canvas>
454
454
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x_ite",
3
- "version": "8.7.5",
3
+ "version": "8.7.6",
4
4
  "description": "X_ITE X3D Browser, view and manipulate X3D and VRML scenes in HTML.",
5
5
  "homepage": "https://create3000.github.io/x_ite/",
6
6
  "author": "Holger Seelig <holger.seelig@gmail.com>",
@@ -66,12 +66,12 @@
66
66
  "libgif": "^0.0.3",
67
67
  "libtess": "^1.2.2",
68
68
  "madge": "^6.0.0",
69
- "node-sass": "^8.0.0",
69
+ "node-sass": "^9.0.0",
70
70
  "OpenJPEG.js": "^0.10.2",
71
71
  "opentype.js": "^1.3.4",
72
72
  "pako": "^2.1.0",
73
73
  "string-replace-webpack-plugin": "^0.1.3",
74
- "webpack": "^5.82.1",
74
+ "webpack": "^5.84.1",
75
75
  "webpack-cli": "^5.1.1",
76
76
  "webpack-shell-plugin-next": "^2.3.1"
77
77
  },
package/src/lib/jquery.js CHANGED
@@ -23,4 +23,17 @@ $.toLowerCaseFirst = function (string)
23
23
  return string [0] .toLowerCase () + string .slice (1);
24
24
  };
25
25
 
26
+ $.fn.isInViewport = function ()
27
+ {
28
+ const
29
+ $this = $(this),
30
+ $window = $(window),
31
+ elementTop = $this .offset () .top,
32
+ elementBottom = elementTop + $this .outerHeight (),
33
+ viewportTop = $window .scrollTop (),
34
+ viewportBottom = viewportTop + $window .height ();
35
+
36
+ return elementBottom > viewportTop && elementTop < viewportBottom;
37
+ };
38
+
26
39
  export default $;
@@ -201,7 +201,6 @@ UniversalTransverseMercator .prototype =
201
201
 
202
202
  return result .set (northing, easting, geodetic .z);
203
203
  },
204
- //lerp: Vector3 .lerp,
205
204
  };
206
205
 
207
206
  export default UniversalTransverseMercator;
@@ -93,10 +93,11 @@ Box2 .prototype =
93
93
 
94
94
  return this;
95
95
  }
96
- case 3:
97
- {
98
- return this .setExtents (arguments [0], arguments [1]);
99
- }
96
+ // case 3:
97
+ // {
98
+ // console .trace ()
99
+ // return this .setExtents (arguments [0], arguments [1]);
100
+ // }
100
101
  }
101
102
  },
102
103
  setExtents: function (min, max)
@@ -136,7 +137,7 @@ Box2 .prototype =
136
137
  this .getExtents (lhs_min, lhs_max);
137
138
  box .getExtents (rhs_min, rhs_max);
138
139
 
139
- return this .set (lhs_min .min (rhs_min), lhs_max .max (rhs_max), true);
140
+ return this .setExtents (lhs_min .min (rhs_min), lhs_max .max (rhs_max));
140
141
  };
141
142
  })(),
142
143
  multLeft: function (matrix)
@@ -203,6 +204,18 @@ Box2 .prototype =
203
204
  },
204
205
  };
205
206
 
207
+ Object .assign (Box2,
208
+ {
209
+ Extents: function (min, max)
210
+ {
211
+ return new Box2 () .setExtents (min, max);
212
+ },
213
+ Points: function (... points)
214
+ {
215
+ return new Box2 () .setExtents (points [0] .copy () .min (... points), points [0] .copy () .max (... points));
216
+ },
217
+ });
218
+
206
219
  Object .defineProperties (Box2 .prototype,
207
220
  {
208
221
  size:
@@ -101,10 +101,11 @@ Box3 .prototype =
101
101
 
102
102
  return this;
103
103
  }
104
- case 3:
105
- {
106
- return this .setExtents (arguments [0], arguments [1]);
107
- }
104
+ // case 3:
105
+ // {
106
+ // console .trace ()
107
+ // return this .setExtents (arguments [0], arguments [1]);
108
+ // }
108
109
  }
109
110
  },
110
111
  setExtents: function (min, max)
@@ -373,7 +374,7 @@ Box3 .prototype =
373
374
  this .getExtents (lhs_min, lhs_max);
374
375
  box .getExtents (rhs_min, rhs_max);
375
376
 
376
- return this .set (lhs_min .min (rhs_min), lhs_max .max (rhs_max), true);
377
+ return this .setExtents (lhs_min .min (rhs_min), lhs_max .max (rhs_max));
377
378
  };
378
379
  })(),
379
380
  multLeft: function (matrix)
@@ -611,6 +612,18 @@ Box3 .prototype =
611
612
  },
612
613
  };
613
614
 
615
+ Object .assign (Box3,
616
+ {
617
+ Extents: function (min, max)
618
+ {
619
+ return new Box3 () .setExtents (min, max);
620
+ },
621
+ Points: function (... points)
622
+ {
623
+ return new Box3 () .setExtents (points [0] .copy () .min (... points), points [0] .copy () .max (... points));
624
+ },
625
+ });
626
+
614
627
  Object .defineProperties (Box3 .prototype,
615
628
  {
616
629
  size:
@@ -89,7 +89,7 @@ Cylinder3 .prototype =
89
89
 
90
90
  // find the given line un-translated
91
91
  const
92
- point = Vector3 .subtract (line .point, this .axis .point),
92
+ point = line .point .copy () .subtract (this .axis .point),
93
93
  noTranslationLine = new Line3 (point, line .direction);
94
94
 
95
95
  // find the un-translated line in unit cylinder's space
@@ -146,7 +146,7 @@ Line2 .Points = function (point1, point2)
146
146
  {
147
147
  const line = Object .create (Line2 .prototype);
148
148
  line .point = point1 .copy ();
149
- line .direction = Vector2 .subtract (point2, point1) .normalize ();
149
+ line .direction = point2 .copy () .subtract (point1) .normalize ();
150
150
  return line;
151
151
  };
152
152
 
@@ -226,7 +226,7 @@ Line3 .Points = function (point1, point2)
226
226
  {
227
227
  const line = Object .create (Line3 .prototype);
228
228
  line .point = point1 .copy ();
229
- line .direction = Vector3 .subtract (point2, point1) .normalize ();
229
+ line .direction = point2 .copy () .subtract (point1) .normalize ();
230
230
  return line;
231
231
  };
232
232
 
@@ -133,7 +133,7 @@ Plane3 .prototype =
133
133
  },
134
134
  getDistanceToPoint: function (point)
135
135
  {
136
- return Vector3 .dot (point, this .normal) - this .distanceFromOrigin;
136
+ return point .dot (this .normal) - this .distanceFromOrigin;
137
137
  },
138
138
  intersectsLine: function (line, intersection)
139
139
  {
@@ -129,8 +129,8 @@ Sphere3 .prototype =
129
129
  const
130
130
  rr = r * r,
131
131
  V = AB .cross (AC),
132
- d = Vector3 .dot (A, V),
133
- e = Vector3 .dot (V, V),
132
+ d = A .dot (V),
133
+ e = V .dot (V),
134
134
  sep1 = d * d > rr * e;
135
135
 
136
136
  if (sep1)
@@ -138,12 +138,12 @@ Sphere3 .prototype =
138
138
 
139
139
  // Testing if sphere lies outside a triangle vertex.
140
140
  const
141
- aa = Vector3 .dot (A, A),
142
- ab = Vector3 .dot (A, B),
143
- ac = Vector3 .dot (A, C),
144
- bb = Vector3 .dot (B, B),
145
- bc = Vector3 .dot (B, C),
146
- cc = Vector3 .dot (C, C),
141
+ aa = A .dot (A),
142
+ ab = A .dot (B),
143
+ ac = A .dot (C),
144
+ bb = B .dot (B),
145
+ bc = B .dot (C),
146
+ cc = C .dot (C),
147
147
  sep2 = (aa > rr) && (ab > aa) && (ac > aa),
148
148
  sep3 = (bb > rr) && (ab > bb) && (bc > bb),
149
149
  sep4 = (cc > rr) && (ac > cc) && (bc > cc);
@@ -161,9 +161,9 @@ Sphere3 .prototype =
161
161
  d1 = ab - aa,
162
162
  d2 = bc - bb,
163
163
  d3 = ac - cc,
164
- e1 = Vector3 .dot (AB, AB),
165
- e2 = Vector3 .dot (BC, BC),
166
- e3 = Vector3 .dot (CA, CA);
164
+ e1 = AB .dot (AB),
165
+ e2 = BC .dot (BC),
166
+ e3 = CA .dot (CA);
167
167
 
168
168
  Q1 .assign (A) .multiply (e1) .subtract (AB .multiply (d1));
169
169
  Q2 .assign (B) .multiply (e2) .subtract (BC .multiply (d2));
@@ -173,9 +173,9 @@ Sphere3 .prototype =
173
173
  QC = C .multiply (e1) .subtract (Q1),
174
174
  QA = A .multiply (e2) .subtract (Q2),
175
175
  QB = B .multiply (e3) .subtract (Q3),
176
- sep5 = (Vector3 .dot (Q1, Q1) > rr * e1 * e1) && (Vector3 .dot (Q1, QC) > 0),
177
- sep6 = (Vector3 .dot (Q2, Q2) > rr * e2 * e2) && (Vector3 .dot (Q2, QA) > 0),
178
- sep7 = (Vector3 .dot (Q3, Q3) > rr * e3 * e3) && (Vector3 .dot (Q3, QB) > 0);
176
+ sep5 = (Q1 .dot (Q1) > rr * e1 * e1) && (Q1 .dot (QC) > 0),
177
+ sep6 = (Q2 .dot (Q2) > rr * e2 * e2) && (Q2 .dot (QA) > 0),
178
+ sep7 = (Q3 .dot (Q3) > rr * e3 * e3) && (Q3 .dot (QB) > 0);
179
179
 
180
180
  if (sep5 || sep6 || sep7)
181
181
  return false;
@@ -242,10 +242,6 @@ Object .assign (Complex,
242
242
  {
243
243
  return lhs .copy () .multiply (rhs);
244
244
  },
245
- multComp: function (lhs, rhs)
246
- {
247
- return lhs .copy () .multComp (rhs);
248
- },
249
245
  });
250
246
 
251
247
  export default Complex;
@@ -444,80 +444,40 @@ Object .defineProperties (Quaternion .prototype,
444
444
 
445
445
  Object .assign (Quaternion,
446
446
  {
447
- negate: function (quat)
447
+ Identity: new Quaternion (0, 0, 0, 1),
448
+ spline: (function ()
448
449
  {
449
- return quat .copy () .negate ();
450
- },
451
- inverse: function (quat)
452
- {
453
- return quat .copy () .inverse ();
454
- },
455
- add: function (lhs, rhs)
456
- {
457
- return lhs .copy () .add (rhs);
458
- },
459
- subtract: function (lhs, rhs)
460
- {
461
- return lhs .copy () .subtract (rhs);
462
- },
463
- multiply: function (lhs, rhs)
464
- {
465
- return lhs .copy () .multiply (rhs);
466
- },
467
- multLeft: function (lhs, rhs)
468
- {
469
- return lhs .copy () .multLeft (rhs);
470
- },
471
- multRight: function (lhs, rhs)
472
- {
473
- return lhs .copy () .multRight (rhs);
474
- },
475
- divide: function (lhs, rhs)
476
- {
477
- return lhs .copy () .divide (rhs);
478
- },
479
- normalize: function (quat)
480
- {
481
- return quat .copy () .normalize ();
482
- },
483
- slerp: function (source, destination, t)
484
- {
485
- return source .copy () .slerp (destination, t);
486
- },
487
- squad: function (source, a, b, destination, t)
488
- {
489
- return source .copy () .squad (a, b, destination, t);
490
- },
491
- /*
492
- bezier: function (q0, a, b, q1, t)
493
- {
494
- return q0 .copy () .squad (a, b, q1, t);
495
- },
496
- */
497
- spline: function (Q0, Q1, Q2)
498
- {
499
- q0 .assign (Q0);
500
- q1 .assign (Q1);
501
- q2 .assign (Q2);
450
+ const
451
+ q0 = new Quaternion (0, 0, 0, 1),
452
+ q1 = new Quaternion (0, 0, 0, 1),
453
+ q2 = new Quaternion (0, 0, 0, 1),
454
+ q1_i = new Quaternion (0, 0, 0, 1);
502
455
 
503
- // If the dot product is smaller than 0 we must negate the quaternion to prevent flipping. If we negate all
504
- // the terms we get a different quaternion but it represents the same rotation.
456
+ return function (Q0, Q1, Q2)
457
+ {
458
+ q0 .assign (Q0);
459
+ q1 .assign (Q1);
460
+ q2 .assign (Q2);
505
461
 
506
- if (q0 .dot (q1) < 0)
507
- q0 .negate ();
462
+ // If the dot product is smaller than 0 we must negate the quaternion to prevent flipping. If we negate all
463
+ // the terms we get a different quaternion but it represents the same rotation.
508
464
 
509
- if (q2 .dot (q1) < 0)
510
- q2 .negate ();
465
+ if (q0 .dot (q1) < 0)
466
+ q0 .negate ();
511
467
 
512
- q1_i .assign (q1) .inverse ();
468
+ if (q2 .dot (q1) < 0)
469
+ q2 .negate ();
513
470
 
514
- // The result must be normalized as it will be used in slerp and we can only slerp normalized vectors.
471
+ q1_i .assign (q1) .inverse ();
515
472
 
516
- return q1 .multRight (
517
- t1 .assign (q1_i) .multRight (q0) .log () .add (t2 .assign (q1_i) .multRight (q2) .log ()) .divide (-4) .exp ()
518
- )
519
- .normalize () .copy ();
520
- },
473
+ // The result must be normalized as it will be used in slerp and we can only slerp normalized vectors.
474
+
475
+ return q1 .multRight (
476
+ t1 .assign (q1_i) .multRight (q0) .log () .add (t2 .assign (q1_i) .multRight (q2) .log ()) .divide (-4) .exp ()
477
+ )
478
+ .normalize () .copy ();
479
+ };
480
+ })(),
521
481
  });
522
482
 
523
483
  const
@@ -525,10 +485,4 @@ const
525
485
  t2 = new Quaternion (0, 0, 0, 1),
526
486
  t3 = new Quaternion (0, 0, 0, 1);
527
487
 
528
- const
529
- q0 = new Quaternion (0, 0, 0, 1),
530
- q1 = new Quaternion (0, 0, 0, 1),
531
- q2 = new Quaternion (0, 0, 0, 1),
532
- q1_i = new Quaternion (0, 0, 0, 1);
533
-
534
488
  export default Quaternion;
@@ -444,35 +444,6 @@ Object .defineProperties (Rotation4 .prototype,
444
444
  Object .assign (Rotation4,
445
445
  {
446
446
  Identity: new Rotation4 (),
447
- inverse: function (rotation)
448
- {
449
- return rotation .copy () .inverse ();
450
- },
451
- multRight: function (lhs, rhs)
452
- {
453
- return lhs .copy () .multRight (rhs);
454
- },
455
- normalize: function (rotation)
456
- {
457
- return rotation .copy () .normalize ();
458
- },
459
- slerp: function (source, destination, t)
460
- {
461
- return source .copy () .slerp (destination, t);
462
- },
463
- squad: function (source, a, b, destination, t)
464
- {
465
- return source .copy () .squad (a, b, destination, t);
466
- },
467
- /*
468
- bezier: function (source, a, b, destination, t)
469
- {
470
- const copy = Object .create (this .prototype);
471
- copy [_quaternion] = Quaternion .bezier (source [_quaternion], a, b, destination [_quaternion], t);
472
- copy .update ();
473
- return copy;
474
- },
475
- */
476
447
  spline: function (r0, r1, r2)
477
448
  {
478
449
  const copy = Object .create (this .prototype);