x_ite 8.6.12 → 8.6.14

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 (423) hide show
  1. package/dist/LICENSE.md +4 -4
  2. package/dist/assets/components/Annotation.js +37 -13
  3. package/dist/assets/components/Annotation.min.js +1 -1
  4. package/dist/assets/components/CADGeometry.js +45 -21
  5. package/dist/assets/components/CADGeometry.min.js +1 -1
  6. package/dist/assets/components/CubeMapTexturing.js +39 -28
  7. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  8. package/dist/assets/components/DIS.js +37 -13
  9. package/dist/assets/components/DIS.min.js +1 -1
  10. package/dist/assets/components/EventUtilities.js +37 -9
  11. package/dist/assets/components/EventUtilities.min.js +1 -1
  12. package/dist/assets/components/Geometry2D.js +55 -23
  13. package/dist/assets/components/Geometry2D.min.js +1 -1
  14. package/dist/assets/components/Geospatial.js +84 -40
  15. package/dist/assets/components/Geospatial.min.js +1 -1
  16. package/dist/assets/components/HAnim.js +42 -18
  17. package/dist/assets/components/HAnim.min.js +1 -1
  18. package/dist/assets/components/KeyDeviceSensor.js +18 -10
  19. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  20. package/dist/assets/components/Layout.js +47 -27
  21. package/dist/assets/components/Layout.min.js +1 -1
  22. package/dist/assets/components/NURBS.js +84 -28
  23. package/dist/assets/components/NURBS.min.js +1 -1
  24. package/dist/assets/components/ParticleSystems.js +70 -30
  25. package/dist/assets/components/ParticleSystems.min.js +1 -1
  26. package/dist/assets/components/Picking.js +42 -22
  27. package/dist/assets/components/Picking.min.js +1 -1
  28. package/dist/assets/components/RigidBodyPhysics.js +93 -37
  29. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  30. package/dist/assets/components/Scripting.js +35 -31
  31. package/dist/assets/components/Scripting.min.js +1 -1
  32. package/dist/assets/components/Text.js +33 -25
  33. package/dist/assets/components/Text.min.js +1 -1
  34. package/dist/assets/components/TextureProjector.js +22 -14
  35. package/dist/assets/components/TextureProjector.min.js +1 -1
  36. package/dist/assets/components/Texturing3D.js +64 -32
  37. package/dist/assets/components/Texturing3D.min.js +1 -1
  38. package/dist/assets/components/VolumeRendering.js +80 -28
  39. package/dist/assets/components/VolumeRendering.min.js +1 -1
  40. package/dist/assets/components/X_ITE.js +13 -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 +1697 -1080
  44. package/dist/x_ite.min.js +1 -1
  45. package/dist/x_ite.zip +0 -0
  46. package/docs/_config.yml +2 -2
  47. package/docs/_posts/components/Core/WorldInfo.md +1 -1
  48. package/docs/_posts/components/EnvironmentalEffects/Background.md +1 -1
  49. package/docs/_posts/components/EnvironmentalEffects/Fog.md +1 -1
  50. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +1 -1
  51. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +1 -1
  52. package/docs/_posts/components/Geometry3D/Box.md +1 -1
  53. package/docs/_posts/components/Geometry3D/Cone.md +1 -1
  54. package/docs/_posts/components/Geometry3D/Cylinder.md +1 -1
  55. package/docs/_posts/components/Geometry3D/ElevationGrid.md +1 -1
  56. package/docs/_posts/components/Geometry3D/Extrusion.md +1 -1
  57. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +1 -1
  58. package/docs/_posts/components/Geometry3D/Sphere.md +1 -1
  59. package/docs/_posts/components/Grouping/Group.md +1 -1
  60. package/docs/_posts/components/Grouping/Switch.md +1 -1
  61. package/docs/_posts/components/Grouping/Transform.md +1 -1
  62. package/docs/_posts/components/Interpolation/ColorInterpolator.md +1 -1
  63. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +1 -1
  64. package/docs/_posts/components/Interpolation/NormalInterpolator.md +1 -1
  65. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +1 -1
  66. package/docs/_posts/components/Interpolation/PositionInterpolator.md +1 -1
  67. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +1 -1
  68. package/docs/_posts/components/Lighting/DirectionalLight.md +1 -1
  69. package/docs/_posts/components/Lighting/PointLight.md +1 -1
  70. package/docs/_posts/components/Lighting/SpotLight.md +1 -1
  71. package/docs/_posts/components/Navigation/Billboard.md +1 -1
  72. package/docs/_posts/components/Navigation/Collision.md +1 -1
  73. package/docs/_posts/components/Navigation/LOD.md +1 -1
  74. package/docs/_posts/components/Navigation/NavigationInfo.md +1 -1
  75. package/docs/_posts/components/Navigation/Viewpoint.md +1 -1
  76. package/docs/_posts/components/Networking/Anchor.md +1 -1
  77. package/docs/_posts/components/Networking/Inline.md +1 -1
  78. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +1 -1
  79. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +1 -1
  80. package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +1 -1
  81. package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +1 -1
  82. package/docs/_posts/components/Rendering/Color.md +1 -1
  83. package/docs/_posts/components/Rendering/Coordinate.md +1 -1
  84. package/docs/_posts/components/Rendering/IndexedLineSet.md +1 -1
  85. package/docs/_posts/components/Rendering/Normal.md +1 -1
  86. package/docs/_posts/components/Rendering/PointSet.md +1 -1
  87. package/docs/_posts/components/Scripting/Script.md +1 -1
  88. package/docs/_posts/components/Shape/Appearance.md +1 -1
  89. package/docs/_posts/components/Shape/Material.md +1 -9
  90. package/docs/_posts/components/Shape/PhysicalMaterial.md +0 -8
  91. package/docs/_posts/components/Shape/Shape.md +1 -1
  92. package/docs/_posts/components/Shape/UnlitMaterial.md +0 -8
  93. package/docs/_posts/components/Sound/AudioClip.md +1 -1
  94. package/docs/_posts/components/Sound/Sound.md +1 -1
  95. package/docs/_posts/components/Text/FontStyle.md +1 -1
  96. package/docs/_posts/components/Text/Text.md +1 -1
  97. package/docs/_posts/components/Texturing/ImageTexture.md +1 -5
  98. package/docs/_posts/components/Texturing/MovieTexture.md +1 -5
  99. package/docs/_posts/components/Texturing/PixelTexture.md +1 -1
  100. package/docs/_posts/components/Texturing/TextureCoordinate.md +1 -1
  101. package/docs/_posts/components/Texturing/TextureTransform.md +1 -1
  102. package/docs/_posts/components/Time/TimeSensor.md +1 -1
  103. package/docs/laboratory/gltf-sample-viewer.html +1 -1
  104. package/package.json +1 -1
  105. package/src/standard/Math/Numbers/Matrix2.js +3 -3
  106. package/src/standard/Math/Numbers/Vector4.js +1 -0
  107. package/src/tests.js +2 -0
  108. package/src/x_ite/Base/X3DBaseNode.js +58 -53
  109. package/src/x_ite/Browser/Core/BrowserOptions.js +2 -1
  110. package/src/x_ite/Browser/Core/X3DCoreContext.js +3 -6
  111. package/src/x_ite/Browser/Grouping/X3DGroupingContext.js +9 -15
  112. package/src/x_ite/Browser/Navigation/ExamineViewer.js +0 -3
  113. package/src/x_ite/Browser/Navigation/FlyViewer.js +0 -2
  114. package/src/x_ite/Browser/Navigation/X3DNavigationContext.js +10 -12
  115. package/src/x_ite/Browser/PointingDeviceSensor/X3DPointingDeviceSensorContext.js +40 -21
  116. package/src/x_ite/Browser/VERSION.js +1 -1
  117. package/src/x_ite/Browser/VolumeRendering/X3DVolumeRenderingContext.js +1 -1
  118. package/src/x_ite/Browser/X3DBrowser.js +19 -19
  119. package/src/x_ite/Components/Annotation/AnnotationLayer.js +4 -0
  120. package/src/x_ite/Components/Annotation/AnnotationTarget.js +4 -0
  121. package/src/x_ite/Components/Annotation/GroupAnnotation.js +4 -0
  122. package/src/x_ite/Components/Annotation/IconAnnotation.js +4 -0
  123. package/src/x_ite/Components/Annotation/TextAnnotation.js +4 -0
  124. package/src/x_ite/Components/Annotation/URLAnnotation.js +4 -0
  125. package/src/x_ite/Components/CADGeometry/CADAssembly.js +4 -0
  126. package/src/x_ite/Components/CADGeometry/CADFace.js +12 -8
  127. package/src/x_ite/Components/CADGeometry/CADLayer.js +4 -0
  128. package/src/x_ite/Components/CADGeometry/CADPart.js +4 -0
  129. package/src/x_ite/Components/CADGeometry/IndexedQuadSet.js +4 -0
  130. package/src/x_ite/Components/CADGeometry/QuadSet.js +4 -0
  131. package/src/x_ite/Components/Core/MetadataBoolean.js +8 -4
  132. package/src/x_ite/Components/Core/MetadataDouble.js +8 -4
  133. package/src/x_ite/Components/Core/MetadataFloat.js +8 -4
  134. package/src/x_ite/Components/Core/MetadataInteger.js +8 -4
  135. package/src/x_ite/Components/Core/MetadataSet.js +8 -4
  136. package/src/x_ite/Components/Core/MetadataString.js +8 -4
  137. package/src/x_ite/Components/Core/WorldInfo.js +4 -0
  138. package/src/x_ite/Components/Core/X3DNode.js +17 -16
  139. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +11 -14
  140. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +4 -1
  141. package/src/x_ite/Components/CubeMapTexturing/GeneratedCubeMapTexture.js +4 -0
  142. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +6 -2
  143. package/src/x_ite/Components/DIS/DISEntityManager.js +4 -0
  144. package/src/x_ite/Components/DIS/DISEntityTypeMapping.js +4 -0
  145. package/src/x_ite/Components/DIS/EspduTransform.js +4 -0
  146. package/src/x_ite/Components/DIS/ReceiverPdu.js +4 -0
  147. package/src/x_ite/Components/DIS/SignalPdu.js +4 -0
  148. package/src/x_ite/Components/DIS/TransmitterPdu.js +4 -0
  149. package/src/x_ite/Components/EnvironmentalEffects/Background.js +4 -0
  150. package/src/x_ite/Components/EnvironmentalEffects/Fog.js +4 -0
  151. package/src/x_ite/Components/EnvironmentalEffects/FogCoordinate.js +4 -0
  152. package/src/x_ite/Components/EnvironmentalEffects/LocalFog.js +4 -0
  153. package/src/x_ite/Components/EnvironmentalEffects/TextureBackground.js +4 -0
  154. package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +1 -1
  155. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +4 -0
  156. package/src/x_ite/Components/EnvironmentalSensor/TransformSensor.js +6 -2
  157. package/src/x_ite/Components/EnvironmentalSensor/VisibilitySensor.js +4 -0
  158. package/src/x_ite/Components/EnvironmentalSensor/X3DEnvironmentalSensorNode.js +2 -2
  159. package/src/x_ite/Components/EventUtilities/BooleanFilter.js +4 -0
  160. package/src/x_ite/Components/EventUtilities/BooleanSequencer.js +4 -0
  161. package/src/x_ite/Components/EventUtilities/BooleanToggle.js +4 -0
  162. package/src/x_ite/Components/EventUtilities/BooleanTrigger.js +4 -0
  163. package/src/x_ite/Components/EventUtilities/IntegerSequencer.js +4 -0
  164. package/src/x_ite/Components/EventUtilities/IntegerTrigger.js +4 -0
  165. package/src/x_ite/Components/EventUtilities/TimeTrigger.js +4 -0
  166. package/src/x_ite/Components/Followers/ColorChaser.js +4 -0
  167. package/src/x_ite/Components/Followers/ColorDamper.js +4 -0
  168. package/src/x_ite/Components/Followers/CoordinateChaser.js +4 -0
  169. package/src/x_ite/Components/Followers/CoordinateDamper.js +4 -0
  170. package/src/x_ite/Components/Followers/OrientationChaser.js +4 -0
  171. package/src/x_ite/Components/Followers/OrientationDamper.js +4 -0
  172. package/src/x_ite/Components/Followers/PositionChaser.js +4 -0
  173. package/src/x_ite/Components/Followers/PositionChaser2D.js +4 -0
  174. package/src/x_ite/Components/Followers/PositionDamper.js +4 -0
  175. package/src/x_ite/Components/Followers/PositionDamper2D.js +4 -0
  176. package/src/x_ite/Components/Followers/ScalarChaser.js +4 -0
  177. package/src/x_ite/Components/Followers/ScalarDamper.js +4 -0
  178. package/src/x_ite/Components/Followers/TexCoordChaser2D.js +4 -0
  179. package/src/x_ite/Components/Followers/TexCoordDamper2D.js +4 -0
  180. package/src/x_ite/Components/Followers/X3DFollowerNode.js +2 -2
  181. package/src/x_ite/Components/Geometry2D/Arc2D.js +5 -1
  182. package/src/x_ite/Components/Geometry2D/ArcClose2D.js +5 -1
  183. package/src/x_ite/Components/Geometry2D/Circle2D.js +5 -1
  184. package/src/x_ite/Components/Geometry2D/Disk2D.js +5 -1
  185. package/src/x_ite/Components/Geometry2D/Polyline2D.js +4 -0
  186. package/src/x_ite/Components/Geometry2D/Polypoint2D.js +4 -0
  187. package/src/x_ite/Components/Geometry2D/Rectangle2D.js +4 -0
  188. package/src/x_ite/Components/Geometry2D/TriangleSet2D.js +4 -0
  189. package/src/x_ite/Components/Geometry3D/Box.js +4 -0
  190. package/src/x_ite/Components/Geometry3D/Cone.js +5 -1
  191. package/src/x_ite/Components/Geometry3D/Cylinder.js +5 -1
  192. package/src/x_ite/Components/Geometry3D/ElevationGrid.js +14 -10
  193. package/src/x_ite/Components/Geometry3D/Extrusion.js +4 -0
  194. package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +7 -3
  195. package/src/x_ite/Components/Geometry3D/Sphere.js +5 -1
  196. package/src/x_ite/Components/Geospatial/GeoCoordinate.js +4 -0
  197. package/src/x_ite/Components/Geospatial/GeoElevationGrid.js +11 -7
  198. package/src/x_ite/Components/Geospatial/GeoLOD.js +4 -0
  199. package/src/x_ite/Components/Geospatial/GeoLocation.js +4 -0
  200. package/src/x_ite/Components/Geospatial/GeoMetadata.js +4 -0
  201. package/src/x_ite/Components/Geospatial/GeoOrigin.js +4 -0
  202. package/src/x_ite/Components/Geospatial/GeoPositionInterpolator.js +4 -0
  203. package/src/x_ite/Components/Geospatial/GeoProximitySensor.js +4 -0
  204. package/src/x_ite/Components/Geospatial/GeoTouchSensor.js +4 -0
  205. package/src/x_ite/Components/Geospatial/GeoTransform.js +4 -0
  206. package/src/x_ite/Components/Geospatial/GeoViewpoint.js +4 -0
  207. package/src/x_ite/Components/Grouping/Group.js +4 -0
  208. package/src/x_ite/Components/Grouping/StaticGroup.js +4 -0
  209. package/src/x_ite/Components/Grouping/Switch.js +11 -7
  210. package/src/x_ite/Components/Grouping/Transform.js +4 -0
  211. package/src/x_ite/Components/HAnim/HAnimDisplacer.js +4 -0
  212. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +4 -0
  213. package/src/x_ite/Components/HAnim/HAnimJoint.js +4 -0
  214. package/src/x_ite/Components/HAnim/HAnimMotion.js +4 -0
  215. package/src/x_ite/Components/HAnim/HAnimSegment.js +4 -0
  216. package/src/x_ite/Components/HAnim/HAnimSite.js +4 -0
  217. package/src/x_ite/Components/Interpolation/ColorInterpolator.js +4 -0
  218. package/src/x_ite/Components/Interpolation/CoordinateInterpolator.js +4 -0
  219. package/src/x_ite/Components/Interpolation/CoordinateInterpolator2D.js +4 -0
  220. package/src/x_ite/Components/Interpolation/EaseInEaseOut.js +4 -0
  221. package/src/x_ite/Components/Interpolation/NormalInterpolator.js +4 -0
  222. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +4 -0
  223. package/src/x_ite/Components/Interpolation/PositionInterpolator.js +4 -0
  224. package/src/x_ite/Components/Interpolation/PositionInterpolator2D.js +4 -0
  225. package/src/x_ite/Components/Interpolation/ScalarInterpolator.js +4 -0
  226. package/src/x_ite/Components/Interpolation/SplinePositionInterpolator.js +4 -0
  227. package/src/x_ite/Components/Interpolation/SplinePositionInterpolator2D.js +4 -0
  228. package/src/x_ite/Components/Interpolation/SplineScalarInterpolator.js +4 -0
  229. package/src/x_ite/Components/Interpolation/SquadOrientationInterpolator.js +4 -0
  230. package/src/x_ite/Components/KeyDeviceSensor/KeySensor.js +4 -0
  231. package/src/x_ite/Components/KeyDeviceSensor/StringSensor.js +4 -0
  232. package/src/x_ite/Components/KeyDeviceSensor/X3DKeyDeviceSensorNode.js +2 -2
  233. package/src/x_ite/Components/Layering/Layer.js +4 -0
  234. package/src/x_ite/Components/Layering/LayerSet.js +4 -0
  235. package/src/x_ite/Components/Layering/Viewport.js +4 -0
  236. package/src/x_ite/Components/Layering/X3DLayerNode.js +40 -49
  237. package/src/x_ite/Components/Layout/Layout.js +4 -0
  238. package/src/x_ite/Components/Layout/LayoutGroup.js +4 -0
  239. package/src/x_ite/Components/Layout/LayoutLayer.js +4 -0
  240. package/src/x_ite/Components/Layout/ScreenFontStyle.js +4 -0
  241. package/src/x_ite/Components/Layout/ScreenGroup.js +4 -0
  242. package/src/x_ite/Components/Lighting/DirectionalLight.js +4 -0
  243. package/src/x_ite/Components/Lighting/EnvironmentLight.js +4 -0
  244. package/src/x_ite/Components/Lighting/PointLight.js +4 -0
  245. package/src/x_ite/Components/Lighting/SpotLight.js +7 -9
  246. package/src/x_ite/Components/NURBS/Contour2D.js +4 -0
  247. package/src/x_ite/Components/NURBS/ContourPolyline2D.js +4 -0
  248. package/src/x_ite/Components/NURBS/CoordinateDouble.js +4 -0
  249. package/src/x_ite/Components/NURBS/NurbsCurve.js +4 -0
  250. package/src/x_ite/Components/NURBS/NurbsCurve2D.js +4 -0
  251. package/src/x_ite/Components/NURBS/NurbsOrientationInterpolator.js +4 -0
  252. package/src/x_ite/Components/NURBS/NurbsPatchSurface.js +4 -0
  253. package/src/x_ite/Components/NURBS/NurbsPositionInterpolator.js +4 -0
  254. package/src/x_ite/Components/NURBS/NurbsSet.js +4 -0
  255. package/src/x_ite/Components/NURBS/NurbsSurfaceInterpolator.js +4 -0
  256. package/src/x_ite/Components/NURBS/NurbsSweptSurface.js +4 -0
  257. package/src/x_ite/Components/NURBS/NurbsSwungSurface.js +4 -0
  258. package/src/x_ite/Components/NURBS/NurbsTextureCoordinate.js +4 -0
  259. package/src/x_ite/Components/NURBS/NurbsTrimmedSurface.js +4 -0
  260. package/src/x_ite/Components/NURBS/X3DNurbsSurfaceGeometryNode.js +4 -4
  261. package/src/x_ite/Components/Navigation/Billboard.js +4 -0
  262. package/src/x_ite/Components/Navigation/Collision.js +8 -4
  263. package/src/x_ite/Components/Navigation/LOD.js +11 -7
  264. package/src/x_ite/Components/Navigation/NavigationInfo.js +4 -0
  265. package/src/x_ite/Components/Navigation/OrthoViewpoint.js +4 -0
  266. package/src/x_ite/Components/Navigation/Viewpoint.js +4 -0
  267. package/src/x_ite/Components/Navigation/ViewpointGroup.js +4 -0
  268. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +8 -0
  269. package/src/x_ite/Components/Networking/Anchor.js +4 -0
  270. package/src/x_ite/Components/Networking/Inline.js +6 -2
  271. package/src/x_ite/Components/Networking/LoadSensor.js +42 -29
  272. package/src/x_ite/Components/Networking/X3DUrlObject.js +2 -2
  273. package/src/x_ite/Components/ParticleSystems/BoundedPhysicsModel.js +4 -0
  274. package/src/x_ite/Components/ParticleSystems/ConeEmitter.js +4 -0
  275. package/src/x_ite/Components/ParticleSystems/ExplosionEmitter.js +4 -0
  276. package/src/x_ite/Components/ParticleSystems/ForcePhysicsModel.js +4 -0
  277. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +12 -8
  278. package/src/x_ite/Components/ParticleSystems/PointEmitter.js +4 -0
  279. package/src/x_ite/Components/ParticleSystems/PolylineEmitter.js +4 -0
  280. package/src/x_ite/Components/ParticleSystems/SurfaceEmitter.js +4 -0
  281. package/src/x_ite/Components/ParticleSystems/VolumeEmitter.js +4 -0
  282. package/src/x_ite/Components/ParticleSystems/WindPhysicsModel.js +4 -0
  283. package/src/x_ite/Components/Picking/LinePickSensor.js +4 -0
  284. package/src/x_ite/Components/Picking/PickableGroup.js +4 -0
  285. package/src/x_ite/Components/Picking/PointPickSensor.js +4 -0
  286. package/src/x_ite/Components/Picking/PrimitivePickSensor.js +4 -0
  287. package/src/x_ite/Components/Picking/VolumePickSensor.js +4 -0
  288. package/src/x_ite/Components/Picking/X3DPickSensorNode.js +4 -4
  289. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +4 -0
  290. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +4 -0
  291. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +4 -0
  292. package/src/x_ite/Components/PointingDeviceSensor/TouchSensor.js +4 -0
  293. package/src/x_ite/Components/PointingDeviceSensor/X3DPointingDeviceSensorNode.js +28 -19
  294. package/src/x_ite/Components/Rendering/ClipPlane.js +4 -0
  295. package/src/x_ite/Components/Rendering/Color.js +4 -0
  296. package/src/x_ite/Components/Rendering/ColorRGBA.js +4 -0
  297. package/src/x_ite/Components/Rendering/Coordinate.js +4 -0
  298. package/src/x_ite/Components/Rendering/IndexedLineSet.js +15 -11
  299. package/src/x_ite/Components/Rendering/IndexedTriangleFanSet.js +4 -0
  300. package/src/x_ite/Components/Rendering/IndexedTriangleSet.js +4 -0
  301. package/src/x_ite/Components/Rendering/IndexedTriangleStripSet.js +4 -0
  302. package/src/x_ite/Components/Rendering/LineSet.js +16 -12
  303. package/src/x_ite/Components/Rendering/Normal.js +4 -0
  304. package/src/x_ite/Components/Rendering/PointSet.js +15 -11
  305. package/src/x_ite/Components/Rendering/TriangleFanSet.js +4 -0
  306. package/src/x_ite/Components/Rendering/TriangleSet.js +4 -0
  307. package/src/x_ite/Components/Rendering/TriangleStripSet.js +4 -0
  308. package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +14 -14
  309. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +6 -6
  310. package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +6 -6
  311. package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +4 -4
  312. package/src/x_ite/Components/RigidBodyPhysics/BallJoint.js +4 -0
  313. package/src/x_ite/Components/RigidBodyPhysics/CollidableOffset.js +11 -7
  314. package/src/x_ite/Components/RigidBodyPhysics/CollidableShape.js +11 -7
  315. package/src/x_ite/Components/RigidBodyPhysics/CollisionCollection.js +4 -0
  316. package/src/x_ite/Components/RigidBodyPhysics/CollisionSensor.js +7 -3
  317. package/src/x_ite/Components/RigidBodyPhysics/CollisionSpace.js +4 -0
  318. package/src/x_ite/Components/RigidBodyPhysics/Contact.js +4 -0
  319. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +4 -0
  320. package/src/x_ite/Components/RigidBodyPhysics/MotorJoint.js +4 -0
  321. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +4 -0
  322. package/src/x_ite/Components/RigidBodyPhysics/RigidBodyCollection.js +6 -2
  323. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +4 -0
  324. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +4 -0
  325. package/src/x_ite/Components/RigidBodyPhysics/UniversalJoint.js +4 -0
  326. package/src/x_ite/Components/Scripting/Script.js +7 -3
  327. package/src/x_ite/Components/Shaders/ComposedShader.js +11 -9
  328. package/src/x_ite/Components/Shaders/FloatVertexAttribute.js +4 -0
  329. package/src/x_ite/Components/Shaders/Matrix3VertexAttribute.js +4 -0
  330. package/src/x_ite/Components/Shaders/Matrix4VertexAttribute.js +4 -0
  331. package/src/x_ite/Components/Shaders/PackagedShader.js +4 -0
  332. package/src/x_ite/Components/Shaders/ProgramShader.js +4 -0
  333. package/src/x_ite/Components/Shaders/ShaderPart.js +4 -2
  334. package/src/x_ite/Components/Shaders/ShaderProgram.js +4 -0
  335. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +3 -3
  336. package/src/x_ite/Components/Shape/AcousticProperties.js +4 -0
  337. package/src/x_ite/Components/Shape/Appearance.js +8 -4
  338. package/src/x_ite/Components/Shape/FillProperties.js +4 -0
  339. package/src/x_ite/Components/Shape/LineProperties.js +4 -0
  340. package/src/x_ite/Components/Shape/Material.js +5 -2
  341. package/src/x_ite/Components/Shape/PhysicalMaterial.js +5 -2
  342. package/src/x_ite/Components/Shape/PointProperties.js +4 -0
  343. package/src/x_ite/Components/Shape/Shape.js +4 -0
  344. package/src/x_ite/Components/Shape/TwoSidedMaterial.js +4 -0
  345. package/src/x_ite/Components/Shape/UnlitMaterial.js +5 -2
  346. package/src/x_ite/Components/Shape/X3DMaterialNode.js +1 -1
  347. package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +5 -7
  348. package/src/x_ite/Components/Shape/X3DShapeNode.js +1 -1
  349. package/src/x_ite/Components/Sound/Analyser.js +4 -0
  350. package/src/x_ite/Components/Sound/AudioClip.js +6 -2
  351. package/src/x_ite/Components/Sound/AudioDestination.js +4 -0
  352. package/src/x_ite/Components/Sound/BiquadFilter.js +4 -0
  353. package/src/x_ite/Components/Sound/BufferAudioSource.js +4 -0
  354. package/src/x_ite/Components/Sound/ChannelMerger.js +4 -0
  355. package/src/x_ite/Components/Sound/ChannelSelector.js +4 -0
  356. package/src/x_ite/Components/Sound/ChannelSplitter.js +4 -0
  357. package/src/x_ite/Components/Sound/Convolver.js +4 -0
  358. package/src/x_ite/Components/Sound/Delay.js +4 -0
  359. package/src/x_ite/Components/Sound/DynamicsCompressor.js +4 -0
  360. package/src/x_ite/Components/Sound/Gain.js +4 -0
  361. package/src/x_ite/Components/Sound/ListenerPointSource.js +4 -0
  362. package/src/x_ite/Components/Sound/MicrophoneSource.js +4 -0
  363. package/src/x_ite/Components/Sound/OscillatorSource.js +4 -0
  364. package/src/x_ite/Components/Sound/PeriodicWave.js +4 -0
  365. package/src/x_ite/Components/Sound/Sound.js +6 -2
  366. package/src/x_ite/Components/Sound/SpatialSound.js +4 -0
  367. package/src/x_ite/Components/Sound/StreamAudioDestination.js +4 -0
  368. package/src/x_ite/Components/Sound/StreamAudioSource.js +4 -0
  369. package/src/x_ite/Components/Sound/WaveShaper.js +4 -0
  370. package/src/x_ite/Components/Text/FontStyle.js +4 -0
  371. package/src/x_ite/Components/Text/Text.js +5 -1
  372. package/src/x_ite/Components/TextureProjector/TextureProjector.js +4 -0
  373. package/src/x_ite/Components/TextureProjector/TextureProjectorParallel.js +4 -0
  374. package/src/x_ite/Components/Texturing/ImageTexture.js +13 -13
  375. package/src/x_ite/Components/Texturing/MovieTexture.js +10 -7
  376. package/src/x_ite/Components/Texturing/MultiTexture.js +4 -0
  377. package/src/x_ite/Components/Texturing/MultiTextureCoordinate.js +4 -0
  378. package/src/x_ite/Components/Texturing/MultiTextureTransform.js +4 -0
  379. package/src/x_ite/Components/Texturing/PixelTexture.js +4 -0
  380. package/src/x_ite/Components/Texturing/TextureCoordinate.js +4 -0
  381. package/src/x_ite/Components/Texturing/TextureCoordinateGenerator.js +4 -0
  382. package/src/x_ite/Components/Texturing/TextureProperties.js +4 -0
  383. package/src/x_ite/Components/Texturing/TextureTransform.js +4 -0
  384. package/src/x_ite/Components/Texturing3D/ComposedTexture3D.js +4 -0
  385. package/src/x_ite/Components/Texturing3D/ImageTexture3D.js +4 -0
  386. package/src/x_ite/Components/Texturing3D/ImageTextureAtlas.js +6 -2
  387. package/src/x_ite/Components/Texturing3D/PixelTexture3D.js +4 -0
  388. package/src/x_ite/Components/Texturing3D/TextureCoordinate3D.js +4 -0
  389. package/src/x_ite/Components/Texturing3D/TextureCoordinate4D.js +4 -0
  390. package/src/x_ite/Components/Texturing3D/TextureTransform3D.js +4 -0
  391. package/src/x_ite/Components/Texturing3D/TextureTransformMatrix3D.js +4 -0
  392. package/src/x_ite/Components/Time/TimeSensor.js +5 -1
  393. package/src/x_ite/Components/Time/X3DTimeDependentNode.js +6 -6
  394. package/src/x_ite/Components/VolumeRendering/BlendedVolumeStyle.js +4 -0
  395. package/src/x_ite/Components/VolumeRendering/BoundaryEnhancementVolumeStyle.js +4 -0
  396. package/src/x_ite/Components/VolumeRendering/CartoonVolumeStyle.js +4 -0
  397. package/src/x_ite/Components/VolumeRendering/ComposedVolumeStyle.js +4 -0
  398. package/src/x_ite/Components/VolumeRendering/EdgeEnhancementVolumeStyle.js +4 -0
  399. package/src/x_ite/Components/VolumeRendering/IsoSurfaceVolumeData.js +4 -0
  400. package/src/x_ite/Components/VolumeRendering/OpacityMapVolumeStyle.js +4 -0
  401. package/src/x_ite/Components/VolumeRendering/ProjectionVolumeStyle.js +4 -0
  402. package/src/x_ite/Components/VolumeRendering/SegmentedVolumeData.js +4 -0
  403. package/src/x_ite/Components/VolumeRendering/ShadedVolumeStyle.js +4 -0
  404. package/src/x_ite/Components/VolumeRendering/SilhouetteEnhancementVolumeStyle.js +4 -0
  405. package/src/x_ite/Components/VolumeRendering/ToneMappedVolumeStyle.js +4 -0
  406. package/src/x_ite/Components/VolumeRendering/VolumeData.js +4 -0
  407. package/src/x_ite/Components/VolumeRendering/X3DVolumeDataNode.js +8 -8
  408. package/src/x_ite/Components/X_ITE/BlendMode.js +4 -0
  409. package/src/x_ite/Execution/BindableList.js +16 -19
  410. package/src/x_ite/Execution/X3DExecutionContext.js +33 -11
  411. package/src/x_ite/Execution/X3DScene.js +4 -0
  412. package/src/x_ite/Fields/ArrayFields.js +42 -22
  413. package/src/x_ite/Fields/SFNode.js +3 -6
  414. package/src/x_ite/Fields/SFNodeCache.js +34 -19
  415. package/src/x_ite/InputOutput/FileLoader.js +22 -14
  416. package/src/x_ite/Parser/GLTF2Parser.js +72 -51
  417. package/src/x_ite/Parser/VRMLParser.js +66 -34
  418. package/src/x_ite/Parser/X3DParser.js +9 -36
  419. package/src/x_ite/Parser/XMLParser.js +8 -8
  420. package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +2 -2
  421. package/src/x_ite/Prototype/X3DProtoDeclaration.js +1 -2
  422. package/src/x_ite/Prototype/X3DProtoDeclarationNode.js +1 -1
  423. package/.github/ISSUE_TEMPLATE/bug_report.md +0 -38
@@ -63,22 +63,34 @@ X3DPointingDeviceSensorNode .prototype = Object .assign (Object .create (X3DSens
63
63
  {
64
64
  X3DSensorNode .prototype .initialize .call (this);
65
65
 
66
- this ._enabled .addInterest ("set_enabled__", this);
67
- },
68
- getMatrices: function ()
69
- {
70
- return this .matrices;
66
+ this .getBrowser () .getBrowserOptions () ._PrivateSensors .addInterest ("set_live__", this);
67
+ this .getScene () .getPrivate () .addInterest ("set_live__", this);
68
+ this .getLive () .addInterest ("set_live__", this);
69
+
70
+ this ._enabled .addInterest ("set_live__", this);
71
+
72
+ this .set_live__ ();
71
73
  },
72
- set_enabled__: function ()
74
+ set_live__: function ()
73
75
  {
74
- if (this ._enabled .getValue ())
75
- return;
76
+ if (((this .getLive () .getValue () && !this .getBrowser () .getBrowserOption ("PrivateSensors")) || this .getScene () .isPrivate () && this .getBrowser () .getBrowserOption ("PrivateSensors")) && this ._enabled .getValue ())
77
+ {
78
+ this .getBrowser () .addPointingDeviceSensor (this);
79
+
80
+ delete this .push;
81
+ }
82
+ else
83
+ {
84
+ this .getBrowser () .removePointingDeviceSensor (this);
85
+
86
+ if (this ._isActive .getValue ())
87
+ this ._isActive = false;
76
88
 
77
- if (this ._isActive .getValue ())
78
- this ._isActive = false;
89
+ if (this ._isOver .getValue ())
90
+ this ._isOver = false;
79
91
 
80
- if (this ._isOver .getValue ())
81
- this ._isOver = false;
92
+ this .push = Function .prototype;
93
+ }
82
94
  },
83
95
  set_over__: function (over, hit)
84
96
  {
@@ -99,13 +111,10 @@ X3DPointingDeviceSensorNode .prototype = Object .assign (Object .create (X3DSens
99
111
  { },
100
112
  push: function (renderObject, sensors)
101
113
  {
102
- if (this ._enabled .getValue ())
103
- {
104
- sensors .push (new PointingDeviceSensorContainer (this,
105
- renderObject .getModelViewMatrix () .get (),
106
- renderObject .getProjectionMatrix () .get (),
107
- renderObject .getViewVolume () .getViewport ()));
108
- }
114
+ sensors .push (new PointingDeviceSensorContainer (this,
115
+ renderObject .getModelViewMatrix () .get (),
116
+ renderObject .getProjectionMatrix () .get (),
117
+ renderObject .getViewVolume () .getViewport ()));
109
118
  },
110
119
  });
111
120
 
@@ -124,6 +124,10 @@ ClipPlane .prototype = Object .assign (Object .create (X3DChildNode .prototype),
124
124
  {
125
125
  return "children";
126
126
  },
127
+ getSpecificationRange: function ()
128
+ {
129
+ return ["3.2", "Infinity"];
130
+ },
127
131
  initialize: function ()
128
132
  {
129
133
  X3DChildNode .prototype .initialize .call (this);
@@ -77,6 +77,10 @@ Color .prototype = Object .assign (Object .create (X3DColorNode .prototype),
77
77
  {
78
78
  return "color";
79
79
  },
80
+ getSpecificationRange: function ()
81
+ {
82
+ return ["2.0", "Infinity"];
83
+ },
80
84
  initialize: function ()
81
85
  {
82
86
  X3DColorNode .prototype .initialize .call (this);
@@ -79,6 +79,10 @@ ColorRGBA .prototype = Object .assign (Object .create (X3DColorNode .prototype),
79
79
  {
80
80
  return "color";
81
81
  },
82
+ getSpecificationRange: function ()
83
+ {
84
+ return ["3.0", "Infinity"];
85
+ },
82
86
  initialize: function ()
83
87
  {
84
88
  X3DColorNode .prototype .initialize .call (this);
@@ -79,6 +79,10 @@ Coordinate .prototype = Object .assign (Object .create (X3DCoordinateNode .proto
79
79
  {
80
80
  return "coord";
81
81
  },
82
+ getSpecificationRange: function ()
83
+ {
84
+ return ["2.0", "Infinity"];
85
+ },
82
86
  });
83
87
 
84
88
  export default Coordinate;
@@ -92,6 +92,10 @@ IndexedLineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode
92
92
  {
93
93
  return "geometry";
94
94
  },
95
+ getSpecificationRange: function ()
96
+ {
97
+ return ["2.0", "Infinity"];
98
+ },
95
99
  initialize: function ()
96
100
  {
97
101
  X3DLineGeometryNode .prototype .initialize .call (this);
@@ -140,37 +144,37 @@ IndexedLineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode
140
144
  },
141
145
  set_fogCoord__: function ()
142
146
  {
143
- this .fogCoordNode?.removeInterest ("requestRebuild", this);
147
+ this .fogCoordNode ?.removeInterest ("requestRebuild", this);
144
148
 
145
149
  this .fogCoordNode = X3DCast (X3DConstants .FogCoordinate, this ._fogCoord);
146
150
 
147
- this .fogCoordNode?.addInterest ("requestRebuild", this);
151
+ this .fogCoordNode ?.addInterest ("requestRebuild", this);
148
152
  },
149
153
  set_color__: function ()
150
154
  {
151
- this .colorNode?.removeInterest ("requestRebuild", this);
155
+ this .colorNode ?.removeInterest ("requestRebuild", this);
152
156
 
153
157
  this .colorNode = X3DCast (X3DConstants .X3DColorNode, this ._color);
154
158
 
155
- this .colorNode?.addInterest ("requestRebuild", this);
159
+ this .colorNode ?.addInterest ("requestRebuild", this);
156
160
 
157
- this .setTransparent (this .colorNode?.isTransparent () ?? false);
161
+ this .setTransparent (this .colorNode ?.isTransparent () ?? false);
158
162
  },
159
163
  set_normal__: function ()
160
164
  {
161
- this .normalNode?.removeInterest ("requestRebuild", this);
165
+ this .normalNode ?.removeInterest ("requestRebuild", this);
162
166
 
163
167
  this .normalNode = X3DCast (X3DConstants .X3DNormalNode, this ._normal);
164
168
 
165
- this .normalNode?.addInterest ("requestRebuild", this);
169
+ this .normalNode ?.addInterest ("requestRebuild", this);
166
170
  },
167
171
  set_coord__: function ()
168
172
  {
169
- this .coordNode?.removeInterest ("requestRebuild", this);
173
+ this .coordNode ?.removeInterest ("requestRebuild", this);
170
174
 
171
175
  this .coordNode = X3DCast (X3DConstants .X3DCoordinateNode, this ._coord);
172
176
 
173
- this .coordNode?.addInterest ("requestRebuild", this);
177
+ this .coordNode ?.addInterest ("requestRebuild", this);
174
178
  },
175
179
  getColorPerVertexIndex: function (index)
176
180
  {
@@ -264,7 +268,7 @@ IndexedLineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode
264
268
  for (let a = 0; a < numAttribNodes; ++ a)
265
269
  attribNodes [a] .addValue (index, attribArrays [a]);
266
270
 
267
- fogCoordNode?.addDepth (index, fogDepthArray);
271
+ fogCoordNode ?.addDepth (index, fogDepthArray);
268
272
 
269
273
  if (colorNode)
270
274
  {
@@ -274,7 +278,7 @@ IndexedLineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode
274
278
  colorNode .addColor (this .getColorIndex (face), colorArray);
275
279
  }
276
280
 
277
- normalNode?.addVector (index, normalArray);
281
+ normalNode ?.addVector (index, normalArray);
278
282
 
279
283
  coordNode .addPoint (index, vertexArray);
280
284
  }
@@ -90,6 +90,10 @@ IndexedTriangleFanSet .prototype = Object .assign (Object .create (X3DComposedGe
90
90
  {
91
91
  return "geometry";
92
92
  },
93
+ getSpecificationRange: function ()
94
+ {
95
+ return ["3.0", "Infinity"];
96
+ },
93
97
  initialize: function ()
94
98
  {
95
99
  X3DComposedGeometryNode .prototype .initialize .call (this);
@@ -88,6 +88,10 @@ IndexedTriangleSet .prototype = Object .assign (Object .create (X3DComposedGeome
88
88
  {
89
89
  return "geometry";
90
90
  },
91
+ getSpecificationRange: function ()
92
+ {
93
+ return ["3.0", "Infinity"];
94
+ },
91
95
  getPolygonIndex: function (i)
92
96
  {
93
97
  return this ._index [i];
@@ -90,6 +90,10 @@ IndexedTriangleStripSet .prototype = Object .assign (Object .create (X3DComposed
90
90
  {
91
91
  return "geometry";
92
92
  },
93
+ getSpecificationRange: function ()
94
+ {
95
+ return ["3.0", "Infinity"];
96
+ },
93
97
  initialize: function ()
94
98
  {
95
99
  X3DComposedGeometryNode .prototype .initialize .call (this);
@@ -88,6 +88,10 @@ LineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode .protot
88
88
  {
89
89
  return "geometry";
90
90
  },
91
+ getSpecificationRange: function ()
92
+ {
93
+ return ["3.0", "Infinity"];
94
+ },
91
95
  initialize: function ()
92
96
  {
93
97
  X3DLineGeometryNode .prototype .initialize .call (this);
@@ -134,37 +138,37 @@ LineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode .protot
134
138
  },
135
139
  set_fogCoord__: function ()
136
140
  {
137
- this .fogCoordNode?.removeInterest ("requestRebuild", this);
141
+ this .fogCoordNode ?.removeInterest ("requestRebuild", this);
138
142
 
139
143
  this .fogCoordNode = X3DCast (X3DConstants .FogCoordinate, this ._fogCoord);
140
144
 
141
- this .fogCoordNode?.addInterest ("requestRebuild", this);
145
+ this .fogCoordNode ?.addInterest ("requestRebuild", this);
142
146
  },
143
147
  set_color__: function ()
144
148
  {
145
- this .colorNode?.removeInterest ("requestRebuild", this);
149
+ this .colorNode ?.removeInterest ("requestRebuild", this);
146
150
 
147
151
  this .colorNode = X3DCast (X3DConstants .X3DColorNode, this ._color);
148
152
 
149
- this .colorNode?.addInterest ("requestRebuild", this);
153
+ this .colorNode ?.addInterest ("requestRebuild", this);
150
154
 
151
- this .setTransparent (this .colorNode?.isTransparent () ?? false);
155
+ this .setTransparent (this .colorNode ?.isTransparent () ?? false);
152
156
  },
153
157
  set_normal__: function ()
154
158
  {
155
- this .normalNode?.removeInterest ("requestRebuild", this);
159
+ this .normalNode ?.removeInterest ("requestRebuild", this);
156
160
 
157
161
  this .normalNode = X3DCast (X3DConstants .X3DNormalNode, this ._normal);
158
162
 
159
- this .normalNode?.addInterest ("requestRebuild", this);
163
+ this .normalNode ?.addInterest ("requestRebuild", this);
160
164
  },
161
165
  set_coord__: function ()
162
166
  {
163
- this .coordNode?.removeInterest ("requestRebuild", this);
167
+ this .coordNode ?.removeInterest ("requestRebuild", this);
164
168
 
165
169
  this .coordNode = X3DCast (X3DConstants .X3DCoordinateNode, this ._coord);
166
170
 
167
- this .coordNode?.addInterest ("requestRebuild", this);
171
+ this .coordNode ?.addInterest ("requestRebuild", this);
168
172
  },
169
173
  build: function ()
170
174
  {
@@ -204,9 +208,9 @@ LineSet .prototype = Object .assign (Object .create (X3DLineGeometryNode .protot
204
208
  for (let a = 0; a < numAttribNodes; ++ a)
205
209
  attribNodes [a] .addValue (index, attribArrays [a]);
206
210
 
207
- fogCoordNode?.addDepth (index, fogDepthArray);
208
- colorNode ?.addColor (index, colorArray);
209
- normalNode ?.addVector (index, normalArray);
211
+ fogCoordNode ?.addDepth (index, fogDepthArray);
212
+ colorNode ?.addColor (index, colorArray);
213
+ normalNode ?.addVector (index, normalArray);
210
214
 
211
215
  coordNode .addPoint (index, vertexArray);
212
216
  }
@@ -78,6 +78,10 @@ Normal .prototype = Object .assign (Object .create (X3DNormalNode .prototype),
78
78
  {
79
79
  return "normal";
80
80
  },
81
+ getSpecificationRange: function ()
82
+ {
83
+ return ["2.0", "Infinity"];
84
+ },
81
85
  initialize: function ()
82
86
  {
83
87
  X3DNormalNode .prototype .initialize .call (this);
@@ -87,6 +87,10 @@ PointSet .prototype = Object .assign (Object .create (X3DPointGeometryNode .prot
87
87
  {
88
88
  return "geometry";
89
89
  },
90
+ getSpecificationRange: function ()
91
+ {
92
+ return ["2.0", "Infinity"];
93
+ },
90
94
  initialize: function ()
91
95
  {
92
96
  X3DPointGeometryNode .prototype .initialize .call (this);
@@ -137,35 +141,35 @@ PointSet .prototype = Object .assign (Object .create (X3DPointGeometryNode .prot
137
141
  },
138
142
  set_fogCoord__: function ()
139
143
  {
140
- this .fogCoordNode?.removeInterest ("requestRebuild", this);
144
+ this .fogCoordNode ?.removeInterest ("requestRebuild", this);
141
145
 
142
146
  this .fogCoordNode = X3DCast (X3DConstants .FogCoordinate, this ._fogCoord);
143
147
 
144
- this .fogCoordNode?.addInterest ("requestRebuild", this);
148
+ this .fogCoordNode ?.addInterest ("requestRebuild", this);
145
149
  },
146
150
  set_color__: function ()
147
151
  {
148
- this .colorNode?.removeInterest ("requestRebuild", this);
152
+ this .colorNode ?.removeInterest ("requestRebuild", this);
149
153
 
150
154
  this .colorNode = X3DCast (X3DConstants .X3DColorNode, this ._color);
151
155
 
152
- this .colorNode?.addInterest ("requestRebuild", this);
156
+ this .colorNode ?.addInterest ("requestRebuild", this);
153
157
  },
154
158
  set_normal__: function ()
155
159
  {
156
- this .normalNode?.removeInterest ("requestRebuild", this);
160
+ this .normalNode ?.removeInterest ("requestRebuild", this);
157
161
 
158
162
  this .normalNode = X3DCast (X3DConstants .X3DNormalNode, this ._normal);
159
163
 
160
- this .normalNode?.addInterest ("requestRebuild", this);
164
+ this .normalNode ?.addInterest ("requestRebuild", this);
161
165
  },
162
166
  set_coord__: function ()
163
167
  {
164
- this .coordNode?.removeInterest ("requestRebuild", this);
168
+ this .coordNode ?.removeInterest ("requestRebuild", this);
165
169
 
166
170
  this .coordNode = X3DCast (X3DConstants .X3DCoordinateNode, this ._coord);
167
171
 
168
- this .coordNode?.addInterest ("requestRebuild", this);
172
+ this .coordNode ?.addInterest ("requestRebuild", this);
169
173
  },
170
174
  build: function ()
171
175
  {
@@ -192,9 +196,9 @@ PointSet .prototype = Object .assign (Object .create (X3DPointGeometryNode .prot
192
196
  attribNodes [a] .addValue (i, attribArrays [a]);
193
197
  }
194
198
 
195
- fogCoordNode?.addDepths (fogDepthArray, numPoints);
196
- colorNode ?.addColors (colorArray, numPoints);
197
- normalNode ?.addNormals (normalArray, numPoints);
199
+ fogCoordNode ?.addDepths (fogDepthArray, numPoints);
200
+ colorNode ?.addColors (colorArray, numPoints);
201
+ normalNode ?.addNormals (normalArray, numPoints);
198
202
 
199
203
  coordNode .addPoints (vertexArray, numPoints);
200
204
  },
@@ -89,6 +89,10 @@ TriangleFanSet .prototype = Object .assign (Object .create (X3DComposedGeometryN
89
89
  {
90
90
  return "geometry";
91
91
  },
92
+ getSpecificationRange: function ()
93
+ {
94
+ return ["3.0", "Infinity"];
95
+ },
92
96
  initialize: function ()
93
97
  {
94
98
  X3DComposedGeometryNode .prototype .initialize .call (this);
@@ -86,6 +86,10 @@ TriangleSet .prototype = Object .assign (Object .create (X3DComposedGeometryNode
86
86
  {
87
87
  return "geometry";
88
88
  },
89
+ getSpecificationRange: function ()
90
+ {
91
+ return ["3.0", "Infinity"];
92
+ },
89
93
  build: function ()
90
94
  {
91
95
  if (! this .getCoord ())
@@ -89,6 +89,10 @@ TriangleStripSet .prototype = Object .assign (Object .create (X3DComposedGeometr
89
89
  {
90
90
  return "geometry";
91
91
  },
92
+ getSpecificationRange: function ()
93
+ {
94
+ return ["3.0", "Infinity"];
95
+ },
92
96
  initialize: function ()
93
97
  {
94
98
  X3DComposedGeometryNode .prototype .initialize .call (this);
@@ -134,47 +134,47 @@ X3DComposedGeometryNode .prototype = Object .assign (Object .create (X3DGeometry
134
134
  },
135
135
  set_fogCoord__: function ()
136
136
  {
137
- this .fogCoordNode?.removeInterest ("requestRebuild", this);
137
+ this .fogCoordNode ?.removeInterest ("requestRebuild", this);
138
138
 
139
139
  this .fogCoordNode = X3DCast (X3DConstants .FogCoordinate, this ._fogCoord);
140
140
 
141
- this .fogCoordNode?.addInterest ("requestRebuild", this);
141
+ this .fogCoordNode ?.addInterest ("requestRebuild", this);
142
142
  },
143
143
  set_color__: function ()
144
144
  {
145
- this .colorNode?.removeInterest ("requestRebuild", this);
145
+ this .colorNode ?.removeInterest ("requestRebuild", this);
146
146
 
147
147
  this .colorNode = X3DCast (X3DConstants .X3DColorNode, this ._color);
148
148
 
149
- this .colorNode?.addInterest ("requestRebuild", this);
149
+ this .colorNode ?.addInterest ("requestRebuild", this);
150
150
 
151
- this .setTransparent (this .colorNode?.isTransparent () ?? false);
151
+ this .setTransparent (this .colorNode ?.isTransparent () ?? false);
152
152
  },
153
153
  set_texCoord__: function ()
154
154
  {
155
- this .texCoordNode?.removeInterest ("requestRebuild", this);
155
+ this .texCoordNode ?.removeInterest ("requestRebuild", this);
156
156
 
157
157
  this .texCoordNode = X3DCast (X3DConstants .X3DTextureCoordinateNode, this ._texCoord);
158
158
 
159
- this .texCoordNode?.addInterest ("requestRebuild", this);
159
+ this .texCoordNode ?.addInterest ("requestRebuild", this);
160
160
 
161
161
  this .setTextureCoordinate (this .texCoordNode);
162
162
  },
163
163
  set_normal__: function ()
164
164
  {
165
- this .normalNode?.removeInterest ("requestRebuild", this);
165
+ this .normalNode ?.removeInterest ("requestRebuild", this);
166
166
 
167
167
  this .normalNode = X3DCast (X3DConstants .X3DNormalNode, this ._normal);
168
168
 
169
- this .normalNode?.addInterest ("requestRebuild", this);
169
+ this .normalNode ?.addInterest ("requestRebuild", this);
170
170
  },
171
171
  set_coord__: function ()
172
172
  {
173
- this .coordNode?.removeInterest ("requestRebuild", this);
173
+ this .coordNode ?.removeInterest ("requestRebuild", this);
174
174
 
175
175
  this .coordNode = X3DCast (X3DConstants .X3DCoordinateNode, this ._coord);
176
176
 
177
- this .coordNode?.addInterest ("requestRebuild", this);
177
+ this .coordNode ?.addInterest ("requestRebuild", this);
178
178
  },
179
179
  getPolygonIndex: function (index)
180
180
  {
@@ -211,7 +211,7 @@ X3DComposedGeometryNode .prototype = Object .assign (Object .create (X3DGeometry
211
211
  normalArray = this .getNormals (),
212
212
  vertexArray = this .getVertices ();
213
213
 
214
- texCoordNode?.init (multiTexCoordArray);
214
+ texCoordNode ?.init (multiTexCoordArray);
215
215
 
216
216
  // Fill GeometryNode
217
217
 
@@ -224,7 +224,7 @@ X3DComposedGeometryNode .prototype = Object .assign (Object .create (X3DGeometry
224
224
  for (let a = 0; a < numAttribNodes; ++ a)
225
225
  attribNodes [a] .addValue (index, attribArrays [a]);
226
226
 
227
- fogCoordNode?.addDepth (index, fogDepthArray);
227
+ fogCoordNode ?.addDepth (index, fogDepthArray);
228
228
 
229
229
  if (colorNode)
230
230
  {
@@ -234,7 +234,7 @@ X3DComposedGeometryNode .prototype = Object .assign (Object .create (X3DGeometry
234
234
  colorNode .addColor (face, colorArray);
235
235
  }
236
236
 
237
- texCoordNode?.addPoint (index, multiTexCoordArray);
237
+ texCoordNode ?.addPoint (index, multiTexCoordArray);
238
238
 
239
239
  if (normalNode)
240
240
  {
@@ -169,7 +169,7 @@ X3DGeometryNode .prototype = Object .assign (Object .create (X3DNode .prototype)
169
169
  browser = this .getBrowser (),
170
170
  gl = browser .getContext ();
171
171
 
172
- this .isLive () .addInterest ("set_live__", this);
172
+ this .getLive () .addInterest ("set_live__", this);
173
173
 
174
174
  this .addInterest ("requestRebuild", this);
175
175
  this ._rebuild .addInterest ("rebuild", this);
@@ -697,7 +697,7 @@ X3DGeometryNode .prototype = Object .assign (Object .create (X3DNode .prototype)
697
697
  })(),
698
698
  set_live__: function ()
699
699
  {
700
- if (this .isLive () .getValue ())
700
+ if (this .getLive () .getValue ())
701
701
  this .getBrowser () .getBrowserOptions () ._Shading .addInterest ("set_shading__", this);
702
702
  else
703
703
  this .getBrowser () .getBrowserOptions () ._Shading .removeInterest ("set_shading__", this);
@@ -1009,7 +1009,7 @@ X3DGeometryNode .prototype = Object .assign (Object .create (X3DNode .prototype)
1009
1009
  attribBuffers = this .attribBuffers,
1010
1010
  primitiveMode = browser .getPrimitiveMode (this .primitiveMode);
1011
1011
 
1012
- blendModeNode?.enable (gl);
1012
+ blendModeNode ?.enable (gl);
1013
1013
 
1014
1014
  shaderNode .enable (gl);
1015
1015
  shaderNode .setUniforms (gl, this, renderContext, front);
@@ -1080,7 +1080,7 @@ X3DGeometryNode .prototype = Object .assign (Object .create (X3DNode .prototype)
1080
1080
  }
1081
1081
  }
1082
1082
 
1083
- blendModeNode?.disable (gl);
1083
+ blendModeNode ?.disable (gl);
1084
1084
  },
1085
1085
  displaySimpleParticles: function (gl, shaderNode, particleSystem)
1086
1086
  {
@@ -1128,7 +1128,7 @@ X3DGeometryNode .prototype = Object .assign (Object .create (X3DNode .prototype)
1128
1128
  attribBuffers = this .attribBuffers,
1129
1129
  primitiveMode = browser .getPrimitiveMode (this .primitiveMode);
1130
1130
 
1131
- blendModeNode?.enable (gl);
1131
+ blendModeNode ?.enable (gl);
1132
1132
 
1133
1133
  // Setup shader.
1134
1134
 
@@ -1198,7 +1198,7 @@ X3DGeometryNode .prototype = Object .assign (Object .create (X3DNode .prototype)
1198
1198
  gl .drawArraysInstanced (primitiveMode, 0, this .vertexCount, particleSystem .numParticles);
1199
1199
  }
1200
1200
 
1201
- blendModeNode?.disable (gl);
1201
+ blendModeNode ?.disable (gl);
1202
1202
  },
1203
1203
  });
1204
1204
 
@@ -313,7 +313,7 @@ X3DLineGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNode
313
313
 
314
314
  // Render triangles.
315
315
 
316
- blendModeNode?.enable (gl);
316
+ blendModeNode ?.enable (gl);
317
317
 
318
318
  // Setup shader.
319
319
 
@@ -355,7 +355,7 @@ X3DLineGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNode
355
355
  gl .enable (gl .CULL_FACE);
356
356
  gl .drawArrays (primitiveMode, 0, this .vertexCount * 3);
357
357
 
358
- blendModeNode?.disable (gl);
358
+ blendModeNode ?.disable (gl);
359
359
 
360
360
  return;
361
361
  }
@@ -363,7 +363,7 @@ X3DLineGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNode
363
363
 
364
364
  const primitiveMode = browser .getPrimitiveMode (this .getPrimitiveMode ());
365
365
 
366
- blendModeNode?.enable (gl);
366
+ blendModeNode ?.enable (gl);
367
367
 
368
368
  // Setup shader.
369
369
 
@@ -393,7 +393,7 @@ X3DLineGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNode
393
393
 
394
394
  gl .drawArrays (primitiveMode, 0, this .vertexCount);
395
395
 
396
- blendModeNode?.disable (gl);
396
+ blendModeNode ?.disable (gl);
397
397
 
398
398
  gl .lineWidth (1);
399
399
  };
@@ -409,7 +409,7 @@ X3DLineGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNode
409
409
  attribBuffers = this .getAttribBuffers (),
410
410
  primitiveMode = browser .getPrimitiveMode (this .getPrimitiveMode ());
411
411
 
412
- blendModeNode?.enable (gl);
412
+ blendModeNode ?.enable (gl);
413
413
 
414
414
  // Setup shader.
415
415
 
@@ -448,7 +448,7 @@ X3DLineGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNode
448
448
 
449
449
  gl .drawArraysInstanced (primitiveMode, 0, this .vertexCount, particleSystem .numParticles);
450
450
 
451
- blendModeNode?.disable (gl);
451
+ blendModeNode ?.disable (gl);
452
452
 
453
453
  gl .lineWidth (1);
454
454
  },
@@ -81,7 +81,7 @@ X3DPointGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNod
81
81
  attribNodes = this .getAttrib (),
82
82
  attribBuffers = this .getAttribBuffers ();
83
83
 
84
- blendModeNode?.enable (gl);
84
+ blendModeNode ?.enable (gl);
85
85
 
86
86
  // Setup shader.
87
87
 
@@ -109,7 +109,7 @@ X3DPointGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNod
109
109
 
110
110
  gl .drawArrays (this .primitiveMode, 0, this .vertexCount);
111
111
 
112
- blendModeNode?.disable (gl);
112
+ blendModeNode ?.disable (gl);
113
113
  },
114
114
  displayParticles: function (gl, renderContext, particleSystem)
115
115
  {
@@ -120,7 +120,7 @@ X3DPointGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNod
120
120
  attribNodes = this .getAttrib (),
121
121
  attribBuffers = this .getAttribBuffers ();
122
122
 
123
- blendModeNode?.enable (gl);
123
+ blendModeNode ?.enable (gl);
124
124
 
125
125
  // Setup shader.
126
126
 
@@ -159,7 +159,7 @@ X3DPointGeometryNode .prototype = Object .assign (Object .create (X3DGeometryNod
159
159
 
160
160
  gl .drawArraysInstanced (this .primitiveMode, 0, this .vertexCount, particleSystem .numParticles);
161
161
 
162
- blendModeNode?.disable (gl);
162
+ blendModeNode ?.disable (gl);
163
163
  },
164
164
  });
165
165
 
@@ -91,6 +91,10 @@ BallJoint .prototype = Object .assign (Object .create (X3DRigidJointNode .protot
91
91
  {
92
92
  return "joints";
93
93
  },
94
+ getSpecificationRange: function ()
95
+ {
96
+ return ["3.2", "Infinity"];
97
+ },
94
98
  initialize: function ()
95
99
  {
96
100
  X3DRigidJointNode .prototype .initialize .call (this);