x_ite 8.8.7 → 8.9.1

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 (352) hide show
  1. package/Makefile +6 -0
  2. package/README.md +3 -7
  3. package/build/docs/nodes.pl +434 -0
  4. package/dist/assets/components/Annotation.js +13 -13
  5. package/dist/assets/components/Annotation.min.js +1 -1
  6. package/dist/assets/components/CADGeometry.js +13 -13
  7. package/dist/assets/components/CADGeometry.min.js +1 -1
  8. package/dist/assets/components/CubeMapTexturing.js +26 -26
  9. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  10. package/dist/assets/components/DIS.js +14 -14
  11. package/dist/assets/components/DIS.min.js +1 -1
  12. package/dist/assets/components/EventUtilities.js +9 -9
  13. package/dist/assets/components/EventUtilities.min.js +1 -1
  14. package/dist/assets/components/Geometry2D.js +19 -19
  15. package/dist/assets/components/Geometry2D.min.js +1 -1
  16. package/dist/assets/components/Geospatial.js +33 -33
  17. package/dist/assets/components/Geospatial.min.js +1 -1
  18. package/dist/assets/components/HAnim.js +129 -90
  19. package/dist/assets/components/HAnim.min.js +1 -1
  20. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  21. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  22. package/dist/assets/components/Layout.js +27 -27
  23. package/dist/assets/components/Layout.min.js +1 -1
  24. package/dist/assets/components/NURBS.js +24 -24
  25. package/dist/assets/components/NURBS.min.js +1 -1
  26. package/dist/assets/components/ParticleSystems.js +24 -24
  27. package/dist/assets/components/ParticleSystems.min.js +1 -1
  28. package/dist/assets/components/Picking.js +18 -18
  29. package/dist/assets/components/Picking.min.js +1 -1
  30. package/dist/assets/components/RigidBodyPhysics.js +18 -18
  31. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  32. package/dist/assets/components/Scripting.js +37 -37
  33. package/dist/assets/components/Scripting.min.js +1 -1
  34. package/dist/assets/components/Text.js +24 -24
  35. package/dist/assets/components/Text.min.js +1 -1
  36. package/dist/assets/components/TextureProjector.js +14 -14
  37. package/dist/assets/components/TextureProjector.min.js +1 -1
  38. package/dist/assets/components/Texturing3D.js +30 -30
  39. package/dist/assets/components/Texturing3D.min.js +1 -1
  40. package/dist/assets/components/VolumeRendering.js +18 -18
  41. package/dist/assets/components/VolumeRendering.min.js +1 -1
  42. package/dist/assets/components/X_ITE.js +9 -9
  43. package/dist/assets/components/X_ITE.min.js +1 -1
  44. package/dist/x_ite.css +1 -1
  45. package/dist/x_ite.js +1320 -166
  46. package/dist/x_ite.min.js +1 -1
  47. package/dist/x_ite.zip +0 -0
  48. package/docs/_config.yml +2 -2
  49. package/docs/_posts/components/CADGeometry/CADAssembly.md +45 -19
  50. package/docs/_posts/components/CADGeometry/CADFace.md +44 -18
  51. package/docs/_posts/components/CADGeometry/CADLayer.md +48 -19
  52. package/docs/_posts/components/CADGeometry/CADPart.md +54 -24
  53. package/docs/_posts/components/CADGeometry/IndexedQuadSet.md +55 -26
  54. package/docs/_posts/components/CADGeometry/QuadSet.md +52 -20
  55. package/docs/_posts/components/Core/MetadataBoolean.md +29 -18
  56. package/docs/_posts/components/Core/MetadataDouble.md +31 -16
  57. package/docs/_posts/components/Core/MetadataFloat.md +31 -16
  58. package/docs/_posts/components/Core/MetadataInteger.md +31 -16
  59. package/docs/_posts/components/Core/MetadataSet.md +30 -15
  60. package/docs/_posts/components/Core/MetadataString.md +31 -16
  61. package/docs/_posts/components/Core/WorldInfo.md +21 -10
  62. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +30 -25
  63. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +19 -10
  64. package/docs/_posts/components/CubeMapTexturing/ImageCubeMapTexture.md +22 -18
  65. package/docs/_posts/components/DIS/DISEntityManager.md +40 -15
  66. package/docs/_posts/components/DIS/DISEntityTypeMapping.md +34 -25
  67. package/docs/_posts/components/DIS/EspduTransform.md +174 -41
  68. package/docs/_posts/components/DIS/ReceiverPdu.md +77 -27
  69. package/docs/_posts/components/DIS/SignalPdu.md +82 -28
  70. package/docs/_posts/components/DIS/TransmitterPdu.md +86 -36
  71. package/docs/_posts/components/EnvironmentalEffects/Background.md +80 -39
  72. package/docs/_posts/components/EnvironmentalEffects/Fog.md +39 -18
  73. package/docs/_posts/components/EnvironmentalEffects/FogCoordinate.md +10 -6
  74. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +21 -14
  75. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +83 -31
  76. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +36 -8
  77. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +31 -7
  78. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +23 -7
  79. package/docs/_posts/components/EventUtilities/BooleanFilter.md +23 -10
  80. package/docs/_posts/components/EventUtilities/BooleanSequencer.md +46 -17
  81. package/docs/_posts/components/EventUtilities/BooleanToggle.md +29 -8
  82. package/docs/_posts/components/EventUtilities/BooleanTrigger.md +24 -7
  83. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +46 -17
  84. package/docs/_posts/components/EventUtilities/IntegerTrigger.md +34 -9
  85. package/docs/_posts/components/EventUtilities/TimeTrigger.md +30 -9
  86. package/docs/_posts/components/Followers/ColorChaser.md +35 -11
  87. package/docs/_posts/components/Followers/ColorDamper.md +32 -12
  88. package/docs/_posts/components/Followers/CoordinateChaser.md +33 -9
  89. package/docs/_posts/components/Followers/CoordinateDamper.md +30 -10
  90. package/docs/_posts/components/Followers/OrientationChaser.md +34 -10
  91. package/docs/_posts/components/Followers/OrientationDamper.md +31 -11
  92. package/docs/_posts/components/Followers/PositionChaser.md +33 -9
  93. package/docs/_posts/components/Followers/PositionChaser2D.md +33 -9
  94. package/docs/_posts/components/Followers/PositionDamper.md +30 -10
  95. package/docs/_posts/components/Followers/PositionDamper2D.md +30 -10
  96. package/docs/_posts/components/Followers/ScalarChaser.md +33 -9
  97. package/docs/_posts/components/Followers/ScalarDamper.md +30 -10
  98. package/docs/_posts/components/Followers/TexCoordChaser2D.md +33 -9
  99. package/docs/_posts/components/Followers/TexCoordDamper2D.md +30 -10
  100. package/docs/_posts/components/Geometry2D/Arc2D.md +39 -14
  101. package/docs/_posts/components/Geometry2D/ArcClose2D.md +43 -19
  102. package/docs/_posts/components/Geometry2D/Circle2D.md +21 -10
  103. package/docs/_posts/components/Geometry2D/Disk2D.md +32 -14
  104. package/docs/_posts/components/Geometry2D/Polyline2D.md +24 -9
  105. package/docs/_posts/components/Geometry2D/Polypoint2D.md +16 -8
  106. package/docs/_posts/components/Geometry2D/Rectangle2D.md +23 -12
  107. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +23 -12
  108. package/docs/_posts/components/Geometry3D/Box.md +26 -13
  109. package/docs/_posts/components/Geometry3D/Cone.md +30 -22
  110. package/docs/_posts/components/Geometry3D/Cylinder.md +30 -26
  111. package/docs/_posts/components/Geometry3D/ElevationGrid.md +73 -29
  112. package/docs/_posts/components/Geometry3D/Extrusion.md +100 -48
  113. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +92 -38
  114. package/docs/_posts/components/Geometry3D/Sphere.md +25 -13
  115. package/docs/_posts/components/Geospatial/GeoCoordinate.md +30 -14
  116. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +82 -37
  117. package/docs/_posts/components/Geospatial/GeoLOD.md +66 -27
  118. package/docs/_posts/components/Geospatial/GeoLocation.md +64 -26
  119. package/docs/_posts/components/Geospatial/GeoMetadata.md +28 -22
  120. package/docs/_posts/components/Geospatial/GeoOrigin.md +34 -19
  121. package/docs/_posts/components/Geospatial/GeoPositionInterpolator.md +64 -18
  122. package/docs/_posts/components/Geospatial/GeoProximitySensor.md +67 -18
  123. package/docs/_posts/components/Geospatial/GeoTouchSensor.md +63 -18
  124. package/docs/_posts/components/Geospatial/GeoTransform.md +72 -28
  125. package/docs/_posts/components/Geospatial/GeoViewpoint.md +79 -40
  126. package/docs/_posts/components/Grouping/Group.md +32 -16
  127. package/docs/_posts/components/Grouping/StaticGroup.md +37 -16
  128. package/docs/_posts/components/Grouping/Switch.md +39 -20
  129. package/docs/_posts/components/Grouping/Transform.md +45 -28
  130. package/docs/_posts/components/HAnim/HAnimDisplacer.md +38 -27
  131. package/docs/_posts/components/HAnim/HAnimHumanoid.md +215 -56
  132. package/docs/_posts/components/HAnim/HAnimJoint.md +104 -38
  133. package/docs/_posts/components/HAnim/HAnimMotion.md +120 -10
  134. package/docs/_posts/components/HAnim/HAnimSegment.md +72 -32
  135. package/docs/_posts/components/HAnim/HAnimSite.md +75 -32
  136. package/docs/_posts/components/Interpolation/ColorInterpolator.md +41 -11
  137. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +39 -13
  138. package/docs/_posts/components/Interpolation/CoordinateInterpolator2D.md +43 -14
  139. package/docs/_posts/components/Interpolation/EaseInEaseOut.md +36 -12
  140. package/docs/_posts/components/Interpolation/NormalInterpolator.md +40 -10
  141. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +40 -10
  142. package/docs/_posts/components/Interpolation/PositionInterpolator.md +40 -10
  143. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +43 -14
  144. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +39 -13
  145. package/docs/_posts/components/Interpolation/SplinePositionInterpolator.md +41 -16
  146. package/docs/_posts/components/Interpolation/SplinePositionInterpolator2D.md +41 -16
  147. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +40 -24
  148. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +35 -11
  149. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +51 -9
  150. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +31 -9
  151. package/docs/_posts/components/Layering/Layer.md +27 -14
  152. package/docs/_posts/components/Layering/LayerSet.md +19 -13
  153. package/docs/_posts/components/Layering/Viewport.md +31 -15
  154. package/docs/_posts/components/Layout/Layout.md +27 -16
  155. package/docs/_posts/components/Layout/LayoutGroup.md +34 -18
  156. package/docs/_posts/components/Layout/LayoutLayer.md +28 -15
  157. package/docs/_posts/components/Layout/ScreenFontStyle.md +72 -45
  158. package/docs/_posts/components/Layout/ScreenGroup.md +32 -16
  159. package/docs/_posts/components/Lighting/DirectionalLight.md +19 -11
  160. package/docs/_posts/components/Lighting/EnvironmentLight.md +2 -6
  161. package/docs/_posts/components/Lighting/PointLight.md +23 -11
  162. package/docs/_posts/components/Lighting/SpotLight.md +32 -19
  163. package/docs/_posts/components/NURBS/Contour2D.md +17 -9
  164. package/docs/_posts/components/NURBS/ContourPolyline2D.md +10 -6
  165. package/docs/_posts/components/NURBS/CoordinateDouble.md +13 -9
  166. package/docs/_posts/components/NURBS/NurbsCurve.md +15 -11
  167. package/docs/_posts/components/NURBS/NurbsCurve2D.md +14 -10
  168. package/docs/_posts/components/NURBS/NurbsOrientationInterpolator.md +28 -12
  169. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +19 -13
  170. package/docs/_posts/components/NURBS/NurbsPositionInterpolator.md +27 -11
  171. package/docs/_posts/components/NURBS/NurbsSet.md +48 -14
  172. package/docs/_posts/components/NURBS/NurbsSurfaceInterpolator.md +31 -11
  173. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +31 -14
  174. package/docs/_posts/components/NURBS/NurbsSwungSurface.md +25 -14
  175. package/docs/_posts/components/NURBS/NurbsTextureCoordinate.md +11 -7
  176. package/docs/_posts/components/NURBS/NurbsTrimmedSurface.md +26 -16
  177. package/docs/_posts/components/Navigation/Billboard.md +33 -17
  178. package/docs/_posts/components/Navigation/Collision.md +59 -22
  179. package/docs/_posts/components/Navigation/LOD.md +53 -23
  180. package/docs/_posts/components/Navigation/NavigationInfo.md +68 -25
  181. package/docs/_posts/components/Navigation/OrthoViewpoint.md +80 -37
  182. package/docs/_posts/components/Navigation/Viewpoint.md +86 -39
  183. package/docs/_posts/components/Navigation/ViewpointGroup.md +28 -17
  184. package/docs/_posts/components/Networking/Anchor.md +54 -56
  185. package/docs/_posts/components/Networking/Inline.md +42 -29
  186. package/docs/_posts/components/Networking/LoadSensor.md +41 -9
  187. package/docs/_posts/components/ParticleSystems/BoundedPhysicsModel.md +16 -8
  188. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +25 -10
  189. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +18 -11
  190. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +15 -8
  191. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +92 -46
  192. package/docs/_posts/components/ParticleSystems/PointEmitter.md +19 -12
  193. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +23 -15
  194. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +21 -14
  195. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +25 -18
  196. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +11 -7
  197. package/docs/_posts/components/Picking/LinePickSensor.md +37 -15
  198. package/docs/_posts/components/Picking/PickableGroup.md +40 -22
  199. package/docs/_posts/components/Picking/PointPickSensor.md +29 -12
  200. package/docs/_posts/components/Picking/PrimitivePickSensor.md +25 -17
  201. package/docs/_posts/components/Picking/VolumePickSensor.md +25 -12
  202. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +43 -18
  203. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +40 -17
  204. package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +35 -13
  205. package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +48 -14
  206. package/docs/_posts/components/Rendering/ClipPlane.md +20 -15
  207. package/docs/_posts/components/Rendering/Color.md +14 -14
  208. package/docs/_posts/components/Rendering/ColorRGBA.md +13 -9
  209. package/docs/_posts/components/Rendering/Coordinate.md +11 -7
  210. package/docs/_posts/components/Rendering/IndexedLineSet.md +58 -24
  211. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +44 -23
  212. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +45 -24
  213. package/docs/_posts/components/Rendering/IndexedTriangleStripSet.md +45 -20
  214. package/docs/_posts/components/Rendering/LineSet.md +26 -14
  215. package/docs/_posts/components/Rendering/Normal.md +28 -6
  216. package/docs/_posts/components/Rendering/PointSet.md +24 -11
  217. package/docs/_posts/components/Rendering/TriangleFanSet.md +44 -19
  218. package/docs/_posts/components/Rendering/TriangleSet.md +44 -19
  219. package/docs/_posts/components/Rendering/TriangleStripSet.md +45 -20
  220. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +22 -10
  221. package/docs/_posts/components/RigidBodyPhysics/CollidableOffset.md +37 -14
  222. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +34 -16
  223. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +17 -12
  224. package/docs/_posts/components/RigidBodyPhysics/CollisionSensor.md +21 -12
  225. package/docs/_posts/components/RigidBodyPhysics/CollisionSpace.md +31 -12
  226. package/docs/_posts/components/RigidBodyPhysics/Contact.md +19 -15
  227. package/docs/_posts/components/RigidBodyPhysics/DoubleAxisHingeJoint.md +33 -27
  228. package/docs/_posts/components/RigidBodyPhysics/MotorJoint.md +63 -11
  229. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +22 -12
  230. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +30 -14
  231. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +26 -14
  232. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +24 -12
  233. package/docs/_posts/components/RigidBodyPhysics/UniversalJoint.md +23 -15
  234. package/docs/_posts/components/Scripting/Script.md +43 -27
  235. package/docs/_posts/components/Shaders/ComposedShader.md +30 -17
  236. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +18 -9
  237. package/docs/_posts/components/Shaders/Matrix3VertexAttribute.md +17 -8
  238. package/docs/_posts/components/Shaders/Matrix4VertexAttribute.md +17 -8
  239. package/docs/_posts/components/Shaders/PackagedShader.md +36 -30
  240. package/docs/_posts/components/Shaders/ProgramShader.md +35 -15
  241. package/docs/_posts/components/Shaders/ShaderPart.md +27 -18
  242. package/docs/_posts/components/Shaders/ShaderProgram.md +28 -17
  243. package/docs/_posts/components/Shape/AcousticProperties.md +34 -6
  244. package/docs/_posts/components/Shape/Appearance.md +29 -22
  245. package/docs/_posts/components/Shape/FillProperties.md +19 -12
  246. package/docs/_posts/components/Shape/LineProperties.md +18 -10
  247. package/docs/_posts/components/Shape/Material.md +64 -38
  248. package/docs/_posts/components/Shape/PhysicalMaterial.md +49 -25
  249. package/docs/_posts/components/Shape/PointProperties.md +21 -14
  250. package/docs/_posts/components/Shape/Shape.md +35 -17
  251. package/docs/_posts/components/Shape/TwoSidedMaterial.md +35 -36
  252. package/docs/_posts/components/Shape/UnlitMaterial.md +29 -17
  253. package/docs/_posts/components/Sound/Analyser.md +133 -4
  254. package/docs/_posts/components/Sound/AudioClip.md +64 -30
  255. package/docs/_posts/components/Sound/AudioDestination.md +76 -4
  256. package/docs/_posts/components/Sound/BiquadFilter.md +143 -4
  257. package/docs/_posts/components/Sound/BufferAudioSource.md +165 -13
  258. package/docs/_posts/components/Sound/ChannelMerger.md +62 -4
  259. package/docs/_posts/components/Sound/ChannelSelector.md +64 -4
  260. package/docs/_posts/components/Sound/ChannelSplitter.md +68 -4
  261. package/docs/_posts/components/Sound/Convolver.md +124 -4
  262. package/docs/_posts/components/Sound/Delay.md +119 -4
  263. package/docs/_posts/components/Sound/DynamicsCompressor.md +127 -4
  264. package/docs/_posts/components/Sound/Gain.md +115 -4
  265. package/docs/_posts/components/Sound/ListenerPointSource.md +109 -4
  266. package/docs/_posts/components/Sound/MicrophoneSource.md +91 -4
  267. package/docs/_posts/components/Sound/OscillatorSource.md +95 -4
  268. package/docs/_posts/components/Sound/PeriodicWave.md +43 -5
  269. package/docs/_posts/components/Sound/Sound.md +53 -20
  270. package/docs/_posts/components/Sound/SpatialSound.md +120 -4
  271. package/docs/_posts/components/Sound/StreamAudioDestination.md +80 -4
  272. package/docs/_posts/components/Sound/StreamAudioSource.md +91 -4
  273. package/docs/_posts/components/Sound/WaveShaper.md +123 -4
  274. package/docs/_posts/components/Text/FontStyle.md +73 -47
  275. package/docs/_posts/components/Text/Text.md +48 -26
  276. package/docs/_posts/components/TextureProjector/TextureProjector.md +55 -6
  277. package/docs/_posts/components/TextureProjector/TextureProjectorParallel.md +56 -6
  278. package/docs/_posts/components/Texturing/ImageTexture.md +28 -20
  279. package/docs/_posts/components/Texturing/MovieTexture.md +69 -38
  280. package/docs/_posts/components/Texturing/MultiTexture.md +47 -19
  281. package/docs/_posts/components/Texturing/MultiTextureCoordinate.md +27 -10
  282. package/docs/_posts/components/Texturing/MultiTextureTransform.md +32 -10
  283. package/docs/_posts/components/Texturing/PixelTexture.md +34 -14
  284. package/docs/_posts/components/Texturing/TextureCoordinate.md +20 -10
  285. package/docs/_posts/components/Texturing/TextureCoordinateGenerator.md +22 -12
  286. package/docs/_posts/components/Texturing/TextureProperties.md +44 -19
  287. package/docs/_posts/components/Texturing/TextureTransform.md +17 -8
  288. package/docs/_posts/components/Texturing3D/ComposedTexture3D.md +21 -13
  289. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +32 -23
  290. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +22 -16
  291. package/docs/_posts/components/Texturing3D/PixelTexture3D.md +25 -13
  292. package/docs/_posts/components/Texturing3D/TextureCoordinate3D.md +22 -10
  293. package/docs/_posts/components/Texturing3D/TextureCoordinate4D.md +21 -9
  294. package/docs/_posts/components/Texturing3D/TextureTransform3D.md +17 -8
  295. package/docs/_posts/components/Texturing3D/TextureTransformMatrix3D.md +20 -10
  296. package/docs/_posts/components/Time/TimeSensor.md +66 -23
  297. package/docs/_posts/components/VolumeRendering/BlendedVolumeStyle.md +36 -15
  298. package/docs/_posts/components/VolumeRendering/BoundaryEnhancementVolumeStyle.md +15 -5
  299. package/docs/_posts/components/VolumeRendering/CartoonVolumeStyle.md +20 -17
  300. package/docs/_posts/components/VolumeRendering/ComposedVolumeStyle.md +15 -7
  301. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +16 -8
  302. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +43 -21
  303. package/docs/_posts/components/VolumeRendering/OpacityMapVolumeStyle.md +16 -8
  304. package/docs/_posts/components/VolumeRendering/ProjectionVolumeStyle.md +17 -7
  305. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +50 -17
  306. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +18 -10
  307. package/docs/_posts/components/VolumeRendering/SilhouetteEnhancementVolumeStyle.md +16 -8
  308. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +20 -11
  309. package/docs/_posts/components/VolumeRendering/VolumeData.md +32 -15
  310. package/docs/_posts/components/X_ITE/BlendMode.md +9 -2
  311. package/docs/_posts/getting-started.md +4 -7
  312. package/docs/_posts/laboratory/x3d-file-converter.md +1 -1
  313. package/docs/laboratory/gltf-sample-viewer.html +52 -4
  314. package/package.json +2 -1
  315. package/src/standard/Math/Geometry/Box2.js +12 -2
  316. package/src/standard/Math/Geometry/Box3.js +12 -2
  317. package/src/x_ite/Base/X3DObjectArrayField.js +3 -2
  318. package/src/x_ite/Base/X3DTypedArrayField.js +3 -2
  319. package/src/x_ite/Browser/Core/X3DCoreContext.js +10 -3
  320. package/src/x_ite/Browser/DOMIntegration.js +13 -8
  321. package/src/x_ite/Browser/VERSION.js +1 -1
  322. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +1 -1
  323. package/src/x_ite/Components/DIS/DISEntityManager.js +1 -1
  324. package/src/x_ite/Components/Grouping/Switch.js +1 -1
  325. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +105 -68
  326. package/src/x_ite/Components/HAnim/HAnimMotion.js +3 -3
  327. package/src/x_ite/Components/Layering/X3DLayerNode.js +1 -1
  328. package/src/x_ite/Components/Lighting/DirectionalLight.js +1 -1
  329. package/src/x_ite/Components/Navigation/Collision.js +1 -1
  330. package/src/x_ite/Components/Navigation/LOD.js +1 -1
  331. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +1 -1
  332. package/src/x_ite/Components/Networking/LoadSensor.js +1 -1
  333. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +1 -1
  334. package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +1 -1
  335. package/src/x_ite/Components/Shape/AcousticProperties.js +1 -1
  336. package/src/x_ite/Components/Shape/Appearance.js +1 -1
  337. package/src/x_ite/Components/Shape/Material.js +1 -1
  338. package/src/x_ite/Components/Shape/TwoSidedMaterial.js +1 -1
  339. package/src/x_ite/Components/Sound/PeriodicWave.js +1 -1
  340. package/src/x_ite/Components/Texturing/TextureProperties.js +1 -1
  341. package/src/x_ite/Fields/ArrayFields.js +9 -7
  342. package/src/x_ite/Fields/SFColor.js +1 -1
  343. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +1 -1
  344. package/src/x_ite/Fields/SFRotation.js +3 -3
  345. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +1 -1
  346. package/src/x_ite/Parser/GLTF2Parser.js +316 -55
  347. package/src/x_ite/Parser/GoldenGate.js +16 -5
  348. package/src/x_ite/Parser/PLYAParser.js +615 -0
  349. package/src/x_ite/Parser/PLYBParser.js +222 -0
  350. package/src/x_ite/Parser/STLAParser.js +0 -1
  351. package/src/x_ite/Parser/SVGParser.js +1 -1
  352. /package/build/{bin → docs}/components.js +0 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: HAnimSite
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-HAnim
5
5
  categories: [components, HAnim]
6
6
  tags: [HAnimSite, HAnim]
@@ -13,9 +13,9 @@ tags: [HAnimSite, HAnim]
13
13
 
14
14
  ## Overview
15
15
 
16
- An HAnimSite node serves three purposes: (a) define an "end effector" location which can be used by an inverse kinematics system, (b) define an attachment point for accessories such as jewelry and clothing, and (c) define a location for a virtual camera in the reference frame of an HAnimSegment (such as a view "through the eyes" of the humanoid for use in multi-user worlds).
16
+ An HAnimSite node serves three purposes: (a) define an "end effector" location which can be used by an inverse kinematics system, (b) define an attachment point for accessories such as jewelry and clothing, and (c) define a location for a Viewpoint virtual camera in the reference frame of an HAnimSegment (such as a view "through the eyes" of the humanoid for use in multi-user worlds).
17
17
 
18
- The HAnimSite node belongs to the **HAnim** component and its default container field is *children.* It is available since X3D version 3.0 or later.
18
+ The HAnimSite node belongs to the **HAnim** component and its default container field is *children.* It is available from X3D version 3.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,44 +30,59 @@ The HAnimSite node belongs to the **HAnim** component and its default container
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
+
35
+ #### Hint
36
+
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
38
 
35
39
  ### SFString [in, out] **description** ""
36
40
 
37
- Author-provided prose that describes intended purpose of the url asset.
41
+ Author-provided prose that describes intended purpose of this node.
38
42
 
39
43
  #### Hint
40
44
 
41
- - Many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as &amp;#38; for & ampersand character, or &amp;#34; for " quotation-mark character).
45
+ - Many XML tools substitute XML character references for special characters automatically if needed within an attribute value (such as &amp;#38; for &amp; ampersand character, or &amp;#34; for " quotation-mark character).
42
46
 
43
47
  ### SFString [in, out] **name** ""
44
48
 
45
- Unique name attribute must be defined so that HAnimSite node can be identified at run time for animation purposes.
49
+ Unique *name* attribute must be defined so that HAnimSite node can be identified at run time for animation purposes.
46
50
 
47
51
  #### Hints
48
52
 
49
- - HAnimSite nodes used as end effectors have '\_tip' suffix appended to the name. HAnimSite nodes containing a Viewpoint location have '\_view' suffix appended to the name. HAnimSite nodes serving other purposes have '\_pt' suffix appended to the name. Examples: cervicale l_infraorbitale supramenton etc. as listed in HAnim Specification.
53
+ - HAnimSite names are typically based on feature point names, though other author-defined names are also allowed.
54
+ - Https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/FeaturePoints.html
55
+ - HAnimSite nodes used as end effectors have '_tip' suffix appended to the *name*.
56
+ - HAnimSite nodes containing a Viewpoint location have '_view' suffix appended to the *name*.
57
+ - HAnimSite nodes serving other purposes have '_pt' suffix appended to the *name*.
58
+ - Additional example *name* bases (such as cervicale l_infraorbitale supramenton etc.) are listed in HAnim Specification.
59
+ - [HAnim Specification part 1, LOA-3 default Site object translations](https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/BodyDimensionsAndLOAs.html#LOA3DefaultSiteTranslations){:target="_blank"}
60
+ - Well-defined names can simplify design and debugging through improved author understanding.
61
+ - [X3D Scene Authoring Hints, Naming Conventions](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#NamingConventions){:target="_blank"}
62
+ - [HAnim2 Names HAnim1 Alias Tables](https://www.web3d.org/x3d/content/examples/HumanoidAnimation/HAnim2NameHAnim1AliasTables.txt){:target="_blank"}
50
63
 
51
- #### Warning
64
+ #### Warnings
52
65
 
53
- - Name is not included if this instance is a USE node.
54
-
55
- #### See Also
56
-
57
- - [HAnim Humanoid Site Names LOA-3](https://www.web3d.org/x3d/content/examples/Basic/HumanoidAnimation/tables/HAnimSiteLoa3Names19774V1.0.txt){:target="_blank"}
58
- - [HAnim Specification, LOA-3 default Site object translations](https://www.web3d.org/documents/specifications/19774-1/V2.0/HAnim/BodyDimensionsAndLOAs.html#LOA3DefaultSiteTranslations){:target="_blank"}
66
+ - *name* prefix must match ancestor HAnimHumanoid *name* followed by underscore character, if more than one humanoid appears within a scene file. For example, 'Nancy_' prepended before location *name*.
67
+ - *name* field is not included if this instance is a USE node, in order to avoid potential mismatches.
68
+ - HAnimSite *name* must end in '_tip' or '_view' or '_pt' suffix.
59
69
 
60
70
  ### SFVec3f [in, out] **translation** 0 0 0 <small>(-∞,∞)</small>
61
71
 
62
72
  Position of children relative to local coordinate system.
63
73
 
74
+ #### Hints
75
+
76
+ - Since default pose faces along +Z axis, -x values are right side and +x values are left side within HAnimHumanoid.
77
+ - Center field indicates default origin relative to overall humanoid body and is rarely modified. For HAnimSite animation, ROUTE position-change events to *translation* field instead.
78
+
64
79
  ### SFRotation [in, out] **rotation** 0 0 1 0 <small>(-∞,∞) or [-1,1]</small>
65
80
 
66
81
  Orientation of children relative to local coordinate system.
67
82
 
68
83
  ### SFVec3f [in, out] **scale** 1 1 1 <small>(0,∞)</small>
69
84
 
70
- Non-uniform x-y-z scale of child coordinate system, adjusted by center and scaleOrientation.
85
+ Non-uniform x-y-z *scale* of child coordinate system, adjusted by center and scaleOrientation.
71
86
 
72
87
  ### SFRotation [in, out] **scaleOrientation** 0 0 1 0 <small>(-∞,∞) or [-1,1]</small>
73
88
 
@@ -75,16 +90,20 @@ Preliminary rotation of coordinate system before scaling (to allow scaling aroun
75
90
 
76
91
  ### SFVec3f [in, out] **center** 0 0 0 <small>(-∞,∞)</small>
77
92
 
78
- Translation offset from origin of local coordinate system.
93
+ Default location of this HAnimSite, i.e. offset of *center* from origin of local coordinate system.
94
+
95
+ #### Hint
96
+
97
+ - *center* field indicates default origin relative to overall humanoid body and is rarely modified. For HAnimSite animation, ROUTE position-change events to translation field instead.
79
98
 
80
99
  ### SFBool [in, out] **visible** TRUE
81
100
 
82
101
  Whether or not renderable content within this node is visually displayed.
83
102
 
84
- #### Hint
103
+ #### Hints
85
104
 
86
- - The visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
87
- - Content must be visible to be collidable and to be pickable.
105
+ - The *visible* field has no effect on animation behaviors, event passing or other non-visual characteristics.
106
+ - Content must be *visible* to be collidable and to be pickable.
88
107
 
89
108
  ### SFBool [in, out] **bboxDisplay** FALSE
90
109
 
@@ -98,36 +117,60 @@ Whether to display bounding box for associated geometry, aligned with world coor
98
117
 
99
118
  Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
100
119
 
101
- #### Hint
120
+ #### Hints
102
121
 
103
122
  - Can be useful for collision computations or inverse-kinematics (IK) engines.
123
+ - Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
124
+ - [X3D Architecture, 10.2.2 Bounding boxes](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#BoundingBoxes){:target="_blank"}
125
+ - [X3D Architecture, 10.3.1 X3DBoundedObject](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#X3DBoundedObject){:target="_blank"}
104
126
 
105
127
  ### SFVec3f [ ] **bboxCenter** 0 0 0 <small>(-∞,∞)</small>
106
128
 
107
- Bounding box center: optional hint for position offset from origin of local coordinate system.
129
+ Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
130
+
131
+ #### Hints
132
+
133
+ - Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
134
+ - [X3D Architecture, 10.2.2 Bounding boxes](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#BoundingBoxes){:target="_blank"}
135
+ - [X3D Architecture, 10.3.1 X3DBoundedObject](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#X3DBoundedObject){:target="_blank"}
108
136
 
109
137
  ### MFNode [in] **addChildren**
110
138
 
111
- Input field addChildren.
139
+ Input field *addChildren*.
112
140
 
113
141
  ### MFNode [in] **removeChildren**
114
142
 
115
- Input field removeChildren.
143
+ Input field *removeChildren*.
116
144
 
117
145
  ### MFNode [in, out] **children** [ ] <small>[X3DChildNode]</small>
118
146
 
119
- Input/Output field children.
147
+ Grouping nodes contain an ordered list of *children* nodes.
120
148
 
121
- ## Description
149
+ #### Hints
150
+
151
+ - Each grouping node defines a coordinate space for its *children*, relative to the coordinate space of its parent node. Thus transformations accumulate down the scene graph hierarchy.
152
+ - InputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
153
+ - InputOnly MFNode removeChildren field can remove nodes from the *children* list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
154
+ - [X3D Architecture 10.2.1 Grouping and *children* node types](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#GroupingAndChildrenNodes){:target="_blank"}
155
+
156
+ ## Advisories
122
157
 
123
158
  ### Hints
124
159
 
125
160
  - HAnimSite nodes are stored as children of an HAnimSegment node.
126
- - Include `<component name='HAnim' level='1'/>`
161
+ - [HAnim Specification](https://www.web3d.org/documents/specifications/19774/V2.0){:target="_blank"}
162
+ - [HAnim Specification part 1, Site](https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/ObjectInterfaces.html#Site){:target="_blank"}
163
+ - [HAnim Specification part 1, Annex B, Feature points for the human body](https://www.web3d.org/documents/specifications/19774/V2.0/Architecture/FeaturePoints.html){:target="_blank"}
164
+ - [X3D for Advanced Modeling (X3D4AM) slideset](https://x3dgraphics.com/slidesets/X3dForAdvancedModeling/HumanoidAnimation.pdf){:target="_blank"}
165
+ - [HAnim2 default values for Joint and Site (feature point) nodes](https://www.web3d.org/x3d/content/examples/HumanoidAnimation/HAnim2DefaultValuesJointsFeaturePoints.txt){:target="_blank"}
166
+
167
+ ### Warnings
168
+
169
+ - Ensure that visible HAnimSite locations are not inadvertently obscured by skin animation.
170
+ - Requires X3D `profile='Full'` or else include `<component name='HAnim' level='1'/>`
171
+ - For X3D3 HAnim1, spelling of component name is 'H-Anim' (including hyphen).
172
+ - The number of contained \<HAnimSite USE='*' `containerField='sites,` skeleton or viewpoints'/\> nodes at top level of HAnimHumanoid needs to match the number of corresponding HAnimSite node instances found within the preceding skeleton hierarchy.
127
173
 
128
- ## External Links
174
+ ## See Also
129
175
 
130
- - [X3D Specification of HAnimSite](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/hanim.html#HAnimSite){:target="_blank"}
131
- - [HAnim Specification](https://www.web3d.org/documents/specifications/19774-1/V2.0/HAnim/HAnimArchitecture.html){:target="_blank"}
132
- - [HAnim Specification, Site](https://www.web3d.org/documents/specifications/19774-1/V2.0/HAnim/ObjectInterfaces.html#Site){:target="_blank"}
133
- - [HAnim Specification, Annex B, Feature points for the human body](https://www.web3d.org/documents/specifications/19774-1/V2.0/HAnim/FeaturePoints.html){:target="_blank"}
176
+ - [X3D Specification of HAnimSite node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/hanim.html#HAnimSite){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: ColorInterpolator
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Interpolation
5
5
  categories: [components, Interpolation]
6
6
  tags: [ColorInterpolator, Interpolation]
@@ -13,9 +13,9 @@ tags: [ColorInterpolator, Interpolation]
13
13
 
14
14
  ## Overview
15
15
 
16
- ColorInterpolator generates a range of Color values that can be ROUTEd to a `<Color>` node's color attribute.
16
+ ColorInterpolator generates a range of color values. Authors can ROUTE value_changed output events to various color fields of Material or Color nodes.
17
17
 
18
- The ColorInterpolator node belongs to the **Interpolation** component and its default container field is *children.* It is available since X3D version 2.0 or later.
18
+ The ColorInterpolator node belongs to the **Interpolation** component and its default container field is *children.* It is available from X3D version 2.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,23 +30,44 @@ The ColorInterpolator node belongs to the **Interpolation** component and its de
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
+
35
+ #### Hint
36
+
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
38
 
35
39
  ### SFFloat [in] **set_fraction** <small>(-∞,∞)</small>
36
40
 
37
41
  *set_fraction* selects input key for corresponding keyValue output.
38
42
 
39
- ### MFFloat [in, out] **key** [ ] <small>(-∞,∞)</small>
43
+ #### Hint
40
44
 
41
- Definition parameters for linear-interpolation function time intervals, in increasing order and corresponding to keyValues.
45
+ - *set_fraction* values are typically in same range interval as values in the key array. Response to an input *set_fraction* value less than minimum is equivalent to minimum key, and response to an input *set_fraction* value greater than maximum is equivalent to maximum key.
42
46
 
43
47
  #### Warning
44
48
 
49
+ - It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.
50
+
51
+ ### MFFloat [in, out] **key** [ ] <small>(-∞,∞)</small>
52
+
53
+ Definition values for linear-interpolation function input intervals, listed in non-decreasing order and corresponding to a value in the keyValue array.
54
+
55
+ #### Hint
56
+
57
+ - Typical interval for values in *key* array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.
58
+
59
+ #### Warnings
60
+
45
61
  - Number of keys must match number of keyValues!
62
+ - Values in *key* array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
46
63
 
47
64
  ### MFColor [in, out] **keyValue** [ ] <small>[0,1]</small>
48
65
 
49
- Output values for linear interpolation, each corresponding to time-fraction keys.
66
+ Output values for linear interpolation, each corresponding to an input-fraction value in the key array.
67
+
68
+ #### Hint
69
+
70
+ - [Identical adjacent entries in *keyValue* array have the effect of defining constant-value step functions.](https://en.wikipedia.org/wiki/Step_function){:target="_blank"}
50
71
 
51
72
  #### Warning
52
73
 
@@ -56,18 +77,27 @@ Output values for linear interpolation, each corresponding to time-fraction keys
56
77
 
57
78
  Linearly interpolated output value determined by current key time and corresponding keyValue pair.
58
79
 
59
- ## Description
80
+ #### Hint
81
+
82
+ - X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
83
+
84
+ #### Warning
85
+
86
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
87
+
88
+ ## Advisories
60
89
 
61
90
  ### Hints
62
91
 
63
92
  - Typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
64
93
  - Typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
94
+ - [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
95
+ - [Example scenes and authoring assets](https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation){:target="_blank"}
65
96
 
66
97
  ## Example
67
98
 
68
99
  <x3d-canvas src="https://create3000.github.io/media/examples/Interpolation/ColorInterpolator/ColorInterpolator.x3d" update="auto"></x3d-canvas>
69
100
 
70
- ## External Links
101
+ ## See Also
71
102
 
72
- - [X3D Specification of ColorInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#ColorInterpolator){:target="_blank"}
73
- - [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
103
+ - [X3D Specification of ColorInterpolator node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#ColorInterpolator){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: CoordinateInterpolator
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Interpolation
5
5
  categories: [components, Interpolation]
6
6
  tags: [CoordinateInterpolator, Interpolation]
@@ -13,9 +13,9 @@ tags: [CoordinateInterpolator, Interpolation]
13
13
 
14
14
  ## Overview
15
15
 
16
- CoordinateInterpolator generates a series of Coordinate values that can be ROUTEd to a `<Coordinate>` node's 'point' attribute or another Vector3FloatArray attribute.
16
+ CoordinateInterpolator linearly interpolates among a list of 3-tuple MFVec3f arrays, producing a single MFVec3f array that is fractional average between two nearest arrays in the list. Authors can ROUTE value_changed output events (an array of 3-tuple SFVec3f values) to a Coordinate node's point field, or to another MFVec3f field.
17
17
 
18
- The CoordinateInterpolator node belongs to the **Interpolation** component and its default container field is *children.* It is available since X3D version 2.0 or later.
18
+ The CoordinateInterpolator node belongs to the **Interpolation** component and its default container field is *children.* It is available from X3D version 2.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,47 +30,73 @@ The CoordinateInterpolator node belongs to the **Interpolation** component and i
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
+
35
+ #### Hint
36
+
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
38
 
35
39
  ### SFFloat [in] **set_fraction** <small>(-∞,∞)</small>
36
40
 
37
41
  *set_fraction* selects input key for corresponding keyValue output.
38
42
 
43
+ #### Hint
44
+
45
+ - *set_fraction* values are typically in same range interval as values in the key array. Response to an input *set_fraction* value less than minimum is equivalent to minimum key, and response to an input *set_fraction* value greater than maximum is equivalent to maximum key.
46
+
47
+ #### Warning
48
+
49
+ - It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.
50
+
39
51
  ### MFFloat [in, out] **key** [ ] <small>(-∞,∞)</small>
40
52
 
41
- Definition parameters for linear-interpolation function time intervals, in increasing order and corresponding to keyValues.
53
+ Definition values for linear-interpolation function input intervals, listed in non-decreasing order and corresponding to a value in the keyValue array.
42
54
 
43
55
  #### Hints
44
56
 
45
- - Number of keyValues must be an integer multiple of the number of keys! KeyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
57
+ - Number of keyValues must be an integer multiple of the number of keys!
58
+ - KeyValue/*key* integer multiple defines how many coordinates are sent in value_changed outputOnlys.
59
+ - Typical interval for values in *key* array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.
60
+
61
+ #### Warning
62
+
63
+ - Values in *key* array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
46
64
 
47
65
  ### MFVec3f [in, out] **keyValue** [ ] <small>(-∞,∞)</small>
48
66
 
49
- Output values for linear interpolation, each corresponding to time-fraction keys.
67
+ Output values for linear interpolation, each corresponding to an input-fraction value in the key array.
50
68
 
51
69
  #### Hints
52
70
 
53
- - Number of keyValues must be an integer multiple of the number of keys! KeyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
71
+ - [Identical adjacent entries in *keyValue* array have the effect of defining constant-value step functions.](https://en.wikipedia.org/wiki/Step_function){:target="_blank"}
72
+ - Number of keyValues must be an integer multiple of the number of keys!
73
+ - *keyValue*/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
54
74
 
55
75
  ### MFVec3f [out] **value_changed**
56
76
 
57
77
  Linearly interpolated output value determined by current key time and corresponding keyValue pair.
58
78
 
59
- #### Hint
79
+ #### Hints
80
+
81
+ - X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
82
+ - KeyValue/key integer multiple defines how many coordinates are sent in *value_changed* outputOnlys.
83
+
84
+ #### Warning
60
85
 
61
- - KeyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
86
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
62
87
 
63
- ## Description
88
+ ## Advisories
64
89
 
65
90
  ### Hints
66
91
 
67
92
  - Typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
68
93
  - Typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
94
+ - [Example scenes and authoring assets](https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation){:target="_blank"}
69
95
 
70
96
  ## Example
71
97
 
72
98
  <x3d-canvas src="https://create3000.github.io/media/examples/Interpolation/CoordinateInterpolator/CoordinateInterpolator.x3d" update="auto"></x3d-canvas>
73
99
 
74
- ## External Links
100
+ ## See Also
75
101
 
76
- - [X3D Specification of CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator){:target="_blank"}
102
+ - [X3D Specification of CoordinateInterpolator node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: CoordinateInterpolator2D
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Interpolation
5
5
  categories: [components, Interpolation]
6
6
  tags: [CoordinateInterpolator2D, Interpolation]
@@ -13,9 +13,9 @@ tags: [CoordinateInterpolator2D, Interpolation]
13
13
 
14
14
  ## Overview
15
15
 
16
- CoordinateInterpolator2D generates a series of SFVec2f or MFVec2f 2-tuple float values that can be ROUTEd to a SFVec2f or MFVec2f attribute.
16
+ CoordinateInterpolator2D generates a series of SFVec2f or MFVec2f 2-tuple float values. Authors can ROUTE value_changed output events to a SFVec2f or MFVec2f attribute.
17
17
 
18
- The CoordinateInterpolator2D node belongs to the **Interpolation** component and its default container field is *children.* It is available since X3D version 3.0 or later.
18
+ The CoordinateInterpolator2D node belongs to the **Interpolation** component and its default container field is *children.* It is available from X3D version 3.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,44 +30,73 @@ The CoordinateInterpolator2D node belongs to the **Interpolation** component and
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
+
35
+ #### Hint
36
+
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
38
 
35
39
  ### SFFloat [in] **set_fraction** <small>(-∞,∞)</small>
36
40
 
37
41
  *set_fraction* selects input key for corresponding keyValue output.
38
42
 
43
+ #### Hint
44
+
45
+ - *set_fraction* values are typically in same range interval as values in the key array. Response to an input *set_fraction* value less than minimum is equivalent to minimum key, and response to an input *set_fraction* value greater than maximum is equivalent to maximum key.
46
+
47
+ #### Warning
48
+
49
+ - It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.
50
+
39
51
  ### MFFloat [in, out] **key** [ ] <small>(-∞,∞)</small>
40
52
 
41
- Definition parameters for linear-interpolation function time intervals, in increasing order and corresponding to keyValues.
53
+ Definition values for linear-interpolation function input intervals, listed in non-decreasing order and corresponding to a value in the keyValue array.
42
54
 
43
55
  #### Hints
44
56
 
45
- - Number of keyValues must be an integer multiple of the number of keys! KeyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
57
+ - Number of keyValues must be an integer multiple of the number of keys!
58
+ - KeyValue/*key* integer multiple defines how many coordinates are sent in value_changed outputOnlys.
59
+ - Typical interval for values in *key* array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.
60
+
61
+ #### Warning
62
+
63
+ - Values in *key* array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
46
64
 
47
65
  ### MFVec2f [in, out] **keyValue** [ ] <small>(-∞,∞)</small>
48
66
 
49
- Output values for linear interpolation, each corresponding to time-fraction keys.
67
+ Output values for linear interpolation, each corresponding to an input-fraction value in the key array.
50
68
 
51
69
  #### Hints
52
70
 
53
- - Number of keyValues must be an integer multiple of the number of keys! KeyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
71
+ - [Identical adjacent entries in *keyValue* array have the effect of defining constant-value step functions.](https://en.wikipedia.org/wiki/Step_function){:target="_blank"}
72
+ - Number of keyValues must be an integer multiple of the number of keys!
73
+ - *keyValue*/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
54
74
 
55
75
  ### MFVec2f [out] **value_changed**
56
76
 
57
77
  Linearly interpolated output value determined by current key time and corresponding keyValue pair.
58
78
 
59
- #### Hint
79
+ #### Hints
60
80
 
61
- - KeyValue/key integer multiple defines how many coordinates are sent in value_changed outputOnlys.
81
+ - X3D players might not send unchanging intermediate values, thus avoiding excessive superfluous events that have no effect.
82
+ - KeyValue/key integer multiple defines how many coordinates are sent in *value_changed* outputOnlys.
62
83
 
63
- ## Description
84
+ #### Warning
85
+
86
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
87
+
88
+ ## Advisories
64
89
 
65
90
  ### Hints
66
91
 
67
92
  - Typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisInterpolatorDEF.set_fraction.
68
93
  - Typical output connection is ROUTE thisInterpolatorDEF.value_changed TO someDestinationNodeDEF.set_someAttribute.
69
- - Include `<component name='Interpolation' level='3'/>`
94
+ - [Example scenes and authoring assets](https://x3dgraphics.com/examples/X3dForWebAuthors/Chapter07EventAnimationInterpolation){:target="_blank"}
95
+
96
+ ### Warning
97
+
98
+ - Requires X3D `profile='Full'` or else include `<component name='Interpolation' level='3'/>`
70
99
 
71
- ## External Links
100
+ ## See Also
72
101
 
73
- - [X3D Specification of CoordinateInterpolator2D](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator2D){:target="_blank"}
102
+ - [X3D Specification of CoordinateInterpolator2D node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator2D){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: EaseInEaseOut
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Interpolation
5
5
  categories: [components, Interpolation]
6
6
  tags: [EaseInEaseOut, Interpolation]
@@ -13,9 +13,9 @@ tags: [EaseInEaseOut, Interpolation]
13
13
 
14
14
  ## Overview
15
15
 
16
- EaseInEaseOut enables gradual animation transitions by modifying TimeSensor fraction outputs. Output values are modified fractions that can be ROUTEd to an interpolator, a sequencer, or another SFFloat attribute.
16
+ EaseInEaseOut enables gradual animation transitions by modifying TimeSensor fraction outputs. Output values are modified fractions. Authors can ROUTE value_changed output events to an interpolator, a sequencer, or another SFFloat attribute.
17
17
 
18
- The EaseInEaseOut node belongs to the **Interpolation** component and its default container field is *children.* It is available since X3D version 3.2 or later.
18
+ The EaseInEaseOut node belongs to the **Interpolation** component and its default container field is *children.* It is available from X3D version 3.2 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -28,19 +28,36 @@ The EaseInEaseOut node belongs to the **Interpolation** component and its defaul
28
28
 
29
29
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
30
30
 
31
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
31
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
32
+
33
+ #### Hint
34
+
35
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
32
36
 
33
37
  ### SFFloat [in] **set_fraction** <small>(-∞,∞)</small>
34
38
 
35
- *set_fraction* selects input fraction for computation of corresponding easeInEaseOut output value, modifiedFraction_changed.
39
+ *set_fraction* selects input *fraction* for computation of corresponding easeInEaseOut output value, modifiedFraction_changed.
40
+
41
+ #### Hint
42
+
43
+ - *set_fraction* values are typically in same range interval as values in the key array. Response to an input *set_fraction* value less than minimum is equivalent to minimum key, and response to an input *set_fraction* value greater than maximum is equivalent to maximum key.
44
+
45
+ #### Warning
46
+
47
+ - It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.
36
48
 
37
49
  ### MFFloat [in, out] **key** [ ] <small>(-∞,∞)</small>
38
50
 
39
- Definition parameters for linear-interpolation function time intervals, in increasing order and corresponding to easeInEaseOut array.
51
+ Definition values for linear-interpolation function input intervals, listed in non-decreasing order and corresponding to easeInEaseOut array.
40
52
 
41
- #### Hint
53
+ #### Hints
42
54
 
43
55
  - Number of keys must be one more than the number of easeInEaseOut values!
56
+ - Typical interval for values in *key* array is within range of 0 to 1, but larger intervals can be defined with arbitrary bounds.
57
+
58
+ #### Warning
59
+
60
+ - Values in *key* array shall be monotonically non-decreasing, meaning that each value is greater than or equal to the preceding value.
44
61
 
45
62
  ### MFVec2f [in, out] **easeInEaseOut** [ ] <small>(-∞,∞)</small>
46
63
 
@@ -48,20 +65,27 @@ Array of paired values for easeOut fraction and easeIn fraction within each key
48
65
 
49
66
  #### Hint
50
67
 
51
- - Number of easeInEaseOut values must be one less than the number of keys.
68
+ - Number of *easeInEaseOut* values must be one less than the number of keys.
52
69
 
53
70
  ### SFFloat [out] **modifiedFraction_changed**
54
71
 
55
72
  Interpolated output value determined by current key time, corresponding easeInEaseOut smoothing intervals, and corresponding key pair.
56
73
 
57
- ## Description
74
+ #### Warning
75
+
76
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
77
+
78
+ ## Advisories
58
79
 
59
80
  ### Hints
60
81
 
61
82
  - Typical input connection is ROUTE someTimeSensorDEF.fraction_changed TO thisEaseInEaseOutDEF.set_fraction
62
83
  - Typical output connection is ROUTE thisEaseInEaseOutDEF.modifiedFraction_changed TO someDestinationNodeDEF.set_fraction.
63
- - Include `<component name='Interpolation' level='3'/>`
64
84
 
65
- ## External Links
85
+ ### Warning
86
+
87
+ - Requires X3D `profile='Full'` or else include `<component name='Interpolation' level='3'/>`
88
+
89
+ ## See Also
66
90
 
67
- - [X3D Specification of EaseInEaseOut](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#EaseInEaseOut){:target="_blank"}
91
+ - [X3D Specification of EaseInEaseOut node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#EaseInEaseOut){:target="_blank"}