x_ite 8.8.7 → 8.9.0

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 (341) hide show
  1. package/Makefile +6 -0
  2. package/build/docs/nodes.pl +434 -0
  3. package/dist/assets/components/Annotation.js +13 -13
  4. package/dist/assets/components/Annotation.min.js +1 -1
  5. package/dist/assets/components/CADGeometry.js +13 -13
  6. package/dist/assets/components/CADGeometry.min.js +1 -1
  7. package/dist/assets/components/CubeMapTexturing.js +26 -26
  8. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  9. package/dist/assets/components/DIS.js +14 -14
  10. package/dist/assets/components/DIS.min.js +1 -1
  11. package/dist/assets/components/EventUtilities.js +9 -9
  12. package/dist/assets/components/EventUtilities.min.js +1 -1
  13. package/dist/assets/components/Geometry2D.js +19 -19
  14. package/dist/assets/components/Geometry2D.min.js +1 -1
  15. package/dist/assets/components/Geospatial.js +33 -33
  16. package/dist/assets/components/Geospatial.min.js +1 -1
  17. package/dist/assets/components/HAnim.js +18 -18
  18. package/dist/assets/components/HAnim.min.js +1 -1
  19. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  20. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  21. package/dist/assets/components/Layout.js +27 -27
  22. package/dist/assets/components/Layout.min.js +1 -1
  23. package/dist/assets/components/NURBS.js +24 -24
  24. package/dist/assets/components/NURBS.min.js +1 -1
  25. package/dist/assets/components/ParticleSystems.js +24 -24
  26. package/dist/assets/components/ParticleSystems.min.js +1 -1
  27. package/dist/assets/components/Picking.js +18 -18
  28. package/dist/assets/components/Picking.min.js +1 -1
  29. package/dist/assets/components/RigidBodyPhysics.js +18 -18
  30. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  31. package/dist/assets/components/Scripting.js +37 -37
  32. package/dist/assets/components/Scripting.min.js +1 -1
  33. package/dist/assets/components/Text.js +24 -24
  34. package/dist/assets/components/Text.min.js +1 -1
  35. package/dist/assets/components/TextureProjector.js +14 -14
  36. package/dist/assets/components/TextureProjector.min.js +1 -1
  37. package/dist/assets/components/Texturing3D.js +30 -30
  38. package/dist/assets/components/Texturing3D.min.js +1 -1
  39. package/dist/assets/components/VolumeRendering.js +18 -18
  40. package/dist/assets/components/VolumeRendering.min.js +1 -1
  41. package/dist/assets/components/X_ITE.js +9 -9
  42. package/dist/assets/components/X_ITE.min.js +1 -1
  43. package/dist/x_ite.css +1 -1
  44. package/dist/x_ite.js +965 -96
  45. package/dist/x_ite.min.js +1 -1
  46. package/dist/x_ite.zip +0 -0
  47. package/docs/_config.yml +2 -2
  48. package/docs/_posts/components/CADGeometry/CADAssembly.md +45 -19
  49. package/docs/_posts/components/CADGeometry/CADFace.md +44 -18
  50. package/docs/_posts/components/CADGeometry/CADLayer.md +48 -19
  51. package/docs/_posts/components/CADGeometry/CADPart.md +54 -24
  52. package/docs/_posts/components/CADGeometry/IndexedQuadSet.md +55 -26
  53. package/docs/_posts/components/CADGeometry/QuadSet.md +52 -20
  54. package/docs/_posts/components/Core/MetadataBoolean.md +29 -18
  55. package/docs/_posts/components/Core/MetadataDouble.md +31 -16
  56. package/docs/_posts/components/Core/MetadataFloat.md +31 -16
  57. package/docs/_posts/components/Core/MetadataInteger.md +31 -16
  58. package/docs/_posts/components/Core/MetadataSet.md +30 -15
  59. package/docs/_posts/components/Core/MetadataString.md +31 -16
  60. package/docs/_posts/components/Core/WorldInfo.md +21 -10
  61. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +30 -25
  62. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +19 -10
  63. package/docs/_posts/components/CubeMapTexturing/ImageCubeMapTexture.md +22 -18
  64. package/docs/_posts/components/DIS/DISEntityManager.md +40 -15
  65. package/docs/_posts/components/DIS/DISEntityTypeMapping.md +34 -25
  66. package/docs/_posts/components/DIS/EspduTransform.md +174 -41
  67. package/docs/_posts/components/DIS/ReceiverPdu.md +77 -27
  68. package/docs/_posts/components/DIS/SignalPdu.md +82 -28
  69. package/docs/_posts/components/DIS/TransmitterPdu.md +86 -36
  70. package/docs/_posts/components/EnvironmentalEffects/Background.md +80 -39
  71. package/docs/_posts/components/EnvironmentalEffects/Fog.md +39 -18
  72. package/docs/_posts/components/EnvironmentalEffects/FogCoordinate.md +10 -6
  73. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +21 -14
  74. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +83 -31
  75. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +36 -8
  76. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +31 -7
  77. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +23 -7
  78. package/docs/_posts/components/EventUtilities/BooleanFilter.md +23 -10
  79. package/docs/_posts/components/EventUtilities/BooleanSequencer.md +46 -17
  80. package/docs/_posts/components/EventUtilities/BooleanToggle.md +29 -8
  81. package/docs/_posts/components/EventUtilities/BooleanTrigger.md +24 -7
  82. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +46 -17
  83. package/docs/_posts/components/EventUtilities/IntegerTrigger.md +34 -9
  84. package/docs/_posts/components/EventUtilities/TimeTrigger.md +30 -9
  85. package/docs/_posts/components/Followers/ColorChaser.md +35 -11
  86. package/docs/_posts/components/Followers/ColorDamper.md +32 -12
  87. package/docs/_posts/components/Followers/CoordinateChaser.md +33 -9
  88. package/docs/_posts/components/Followers/CoordinateDamper.md +30 -10
  89. package/docs/_posts/components/Followers/OrientationChaser.md +34 -10
  90. package/docs/_posts/components/Followers/OrientationDamper.md +31 -11
  91. package/docs/_posts/components/Followers/PositionChaser.md +33 -9
  92. package/docs/_posts/components/Followers/PositionChaser2D.md +33 -9
  93. package/docs/_posts/components/Followers/PositionDamper.md +30 -10
  94. package/docs/_posts/components/Followers/PositionDamper2D.md +30 -10
  95. package/docs/_posts/components/Followers/ScalarChaser.md +33 -9
  96. package/docs/_posts/components/Followers/ScalarDamper.md +30 -10
  97. package/docs/_posts/components/Followers/TexCoordChaser2D.md +33 -9
  98. package/docs/_posts/components/Followers/TexCoordDamper2D.md +30 -10
  99. package/docs/_posts/components/Geometry2D/Arc2D.md +39 -14
  100. package/docs/_posts/components/Geometry2D/ArcClose2D.md +43 -19
  101. package/docs/_posts/components/Geometry2D/Circle2D.md +21 -10
  102. package/docs/_posts/components/Geometry2D/Disk2D.md +32 -14
  103. package/docs/_posts/components/Geometry2D/Polyline2D.md +24 -9
  104. package/docs/_posts/components/Geometry2D/Polypoint2D.md +16 -8
  105. package/docs/_posts/components/Geometry2D/Rectangle2D.md +23 -12
  106. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +23 -12
  107. package/docs/_posts/components/Geometry3D/Box.md +26 -13
  108. package/docs/_posts/components/Geometry3D/Cone.md +30 -22
  109. package/docs/_posts/components/Geometry3D/Cylinder.md +30 -26
  110. package/docs/_posts/components/Geometry3D/ElevationGrid.md +73 -29
  111. package/docs/_posts/components/Geometry3D/Extrusion.md +100 -48
  112. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +92 -38
  113. package/docs/_posts/components/Geometry3D/Sphere.md +25 -13
  114. package/docs/_posts/components/Geospatial/GeoCoordinate.md +30 -14
  115. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +82 -37
  116. package/docs/_posts/components/Geospatial/GeoLOD.md +66 -27
  117. package/docs/_posts/components/Geospatial/GeoLocation.md +64 -26
  118. package/docs/_posts/components/Geospatial/GeoMetadata.md +28 -22
  119. package/docs/_posts/components/Geospatial/GeoOrigin.md +34 -19
  120. package/docs/_posts/components/Geospatial/GeoPositionInterpolator.md +64 -18
  121. package/docs/_posts/components/Geospatial/GeoProximitySensor.md +67 -18
  122. package/docs/_posts/components/Geospatial/GeoTouchSensor.md +63 -18
  123. package/docs/_posts/components/Geospatial/GeoTransform.md +72 -28
  124. package/docs/_posts/components/Geospatial/GeoViewpoint.md +79 -40
  125. package/docs/_posts/components/Grouping/Group.md +32 -16
  126. package/docs/_posts/components/Grouping/StaticGroup.md +37 -16
  127. package/docs/_posts/components/Grouping/Switch.md +39 -20
  128. package/docs/_posts/components/Grouping/Transform.md +45 -28
  129. package/docs/_posts/components/HAnim/HAnimDisplacer.md +38 -27
  130. package/docs/_posts/components/HAnim/HAnimHumanoid.md +197 -38
  131. package/docs/_posts/components/HAnim/HAnimJoint.md +104 -38
  132. package/docs/_posts/components/HAnim/HAnimMotion.md +117 -7
  133. package/docs/_posts/components/HAnim/HAnimSegment.md +72 -32
  134. package/docs/_posts/components/HAnim/HAnimSite.md +75 -32
  135. package/docs/_posts/components/Interpolation/ColorInterpolator.md +41 -11
  136. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +39 -13
  137. package/docs/_posts/components/Interpolation/CoordinateInterpolator2D.md +43 -14
  138. package/docs/_posts/components/Interpolation/EaseInEaseOut.md +36 -12
  139. package/docs/_posts/components/Interpolation/NormalInterpolator.md +40 -10
  140. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +40 -10
  141. package/docs/_posts/components/Interpolation/PositionInterpolator.md +40 -10
  142. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +43 -14
  143. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +39 -13
  144. package/docs/_posts/components/Interpolation/SplinePositionInterpolator.md +41 -16
  145. package/docs/_posts/components/Interpolation/SplinePositionInterpolator2D.md +41 -16
  146. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +40 -24
  147. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +35 -11
  148. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +51 -9
  149. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +31 -9
  150. package/docs/_posts/components/Layering/Layer.md +27 -14
  151. package/docs/_posts/components/Layering/LayerSet.md +19 -13
  152. package/docs/_posts/components/Layering/Viewport.md +31 -15
  153. package/docs/_posts/components/Layout/Layout.md +27 -16
  154. package/docs/_posts/components/Layout/LayoutGroup.md +34 -18
  155. package/docs/_posts/components/Layout/LayoutLayer.md +28 -15
  156. package/docs/_posts/components/Layout/ScreenFontStyle.md +72 -45
  157. package/docs/_posts/components/Layout/ScreenGroup.md +32 -16
  158. package/docs/_posts/components/Lighting/DirectionalLight.md +19 -11
  159. package/docs/_posts/components/Lighting/EnvironmentLight.md +2 -6
  160. package/docs/_posts/components/Lighting/PointLight.md +23 -11
  161. package/docs/_posts/components/Lighting/SpotLight.md +32 -19
  162. package/docs/_posts/components/NURBS/Contour2D.md +17 -9
  163. package/docs/_posts/components/NURBS/ContourPolyline2D.md +10 -6
  164. package/docs/_posts/components/NURBS/CoordinateDouble.md +13 -9
  165. package/docs/_posts/components/NURBS/NurbsCurve.md +15 -11
  166. package/docs/_posts/components/NURBS/NurbsCurve2D.md +14 -10
  167. package/docs/_posts/components/NURBS/NurbsOrientationInterpolator.md +28 -12
  168. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +19 -13
  169. package/docs/_posts/components/NURBS/NurbsPositionInterpolator.md +27 -11
  170. package/docs/_posts/components/NURBS/NurbsSet.md +48 -14
  171. package/docs/_posts/components/NURBS/NurbsSurfaceInterpolator.md +31 -11
  172. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +31 -14
  173. package/docs/_posts/components/NURBS/NurbsSwungSurface.md +25 -14
  174. package/docs/_posts/components/NURBS/NurbsTextureCoordinate.md +11 -7
  175. package/docs/_posts/components/NURBS/NurbsTrimmedSurface.md +26 -16
  176. package/docs/_posts/components/Navigation/Billboard.md +33 -17
  177. package/docs/_posts/components/Navigation/Collision.md +59 -22
  178. package/docs/_posts/components/Navigation/LOD.md +53 -23
  179. package/docs/_posts/components/Navigation/NavigationInfo.md +68 -25
  180. package/docs/_posts/components/Navigation/OrthoViewpoint.md +80 -37
  181. package/docs/_posts/components/Navigation/Viewpoint.md +86 -39
  182. package/docs/_posts/components/Navigation/ViewpointGroup.md +28 -17
  183. package/docs/_posts/components/Networking/Anchor.md +54 -56
  184. package/docs/_posts/components/Networking/Inline.md +42 -29
  185. package/docs/_posts/components/Networking/LoadSensor.md +41 -9
  186. package/docs/_posts/components/ParticleSystems/BoundedPhysicsModel.md +16 -8
  187. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +25 -10
  188. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +18 -11
  189. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +15 -8
  190. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +92 -46
  191. package/docs/_posts/components/ParticleSystems/PointEmitter.md +19 -12
  192. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +23 -15
  193. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +21 -14
  194. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +25 -18
  195. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +11 -7
  196. package/docs/_posts/components/Picking/LinePickSensor.md +37 -15
  197. package/docs/_posts/components/Picking/PickableGroup.md +40 -22
  198. package/docs/_posts/components/Picking/PointPickSensor.md +29 -12
  199. package/docs/_posts/components/Picking/PrimitivePickSensor.md +25 -17
  200. package/docs/_posts/components/Picking/VolumePickSensor.md +25 -12
  201. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +43 -18
  202. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +40 -17
  203. package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +35 -13
  204. package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +48 -14
  205. package/docs/_posts/components/Rendering/ClipPlane.md +20 -15
  206. package/docs/_posts/components/Rendering/Color.md +14 -14
  207. package/docs/_posts/components/Rendering/ColorRGBA.md +13 -9
  208. package/docs/_posts/components/Rendering/Coordinate.md +11 -7
  209. package/docs/_posts/components/Rendering/IndexedLineSet.md +58 -24
  210. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +44 -23
  211. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +45 -24
  212. package/docs/_posts/components/Rendering/IndexedTriangleStripSet.md +45 -20
  213. package/docs/_posts/components/Rendering/LineSet.md +26 -14
  214. package/docs/_posts/components/Rendering/Normal.md +28 -6
  215. package/docs/_posts/components/Rendering/PointSet.md +24 -11
  216. package/docs/_posts/components/Rendering/TriangleFanSet.md +44 -19
  217. package/docs/_posts/components/Rendering/TriangleSet.md +44 -19
  218. package/docs/_posts/components/Rendering/TriangleStripSet.md +45 -20
  219. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +22 -10
  220. package/docs/_posts/components/RigidBodyPhysics/CollidableOffset.md +37 -14
  221. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +34 -16
  222. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +17 -12
  223. package/docs/_posts/components/RigidBodyPhysics/CollisionSensor.md +21 -12
  224. package/docs/_posts/components/RigidBodyPhysics/CollisionSpace.md +31 -12
  225. package/docs/_posts/components/RigidBodyPhysics/Contact.md +19 -15
  226. package/docs/_posts/components/RigidBodyPhysics/DoubleAxisHingeJoint.md +33 -27
  227. package/docs/_posts/components/RigidBodyPhysics/MotorJoint.md +63 -11
  228. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +22 -12
  229. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +30 -14
  230. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +26 -14
  231. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +24 -12
  232. package/docs/_posts/components/RigidBodyPhysics/UniversalJoint.md +23 -15
  233. package/docs/_posts/components/Scripting/Script.md +43 -27
  234. package/docs/_posts/components/Shaders/ComposedShader.md +30 -17
  235. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +18 -9
  236. package/docs/_posts/components/Shaders/Matrix3VertexAttribute.md +17 -8
  237. package/docs/_posts/components/Shaders/Matrix4VertexAttribute.md +17 -8
  238. package/docs/_posts/components/Shaders/PackagedShader.md +36 -30
  239. package/docs/_posts/components/Shaders/ProgramShader.md +35 -15
  240. package/docs/_posts/components/Shaders/ShaderPart.md +27 -18
  241. package/docs/_posts/components/Shaders/ShaderProgram.md +28 -17
  242. package/docs/_posts/components/Shape/AcousticProperties.md +34 -6
  243. package/docs/_posts/components/Shape/Appearance.md +29 -22
  244. package/docs/_posts/components/Shape/FillProperties.md +19 -12
  245. package/docs/_posts/components/Shape/LineProperties.md +18 -10
  246. package/docs/_posts/components/Shape/Material.md +64 -38
  247. package/docs/_posts/components/Shape/PhysicalMaterial.md +49 -25
  248. package/docs/_posts/components/Shape/PointProperties.md +21 -14
  249. package/docs/_posts/components/Shape/Shape.md +35 -17
  250. package/docs/_posts/components/Shape/TwoSidedMaterial.md +35 -36
  251. package/docs/_posts/components/Shape/UnlitMaterial.md +29 -17
  252. package/docs/_posts/components/Sound/Analyser.md +133 -4
  253. package/docs/_posts/components/Sound/AudioClip.md +64 -30
  254. package/docs/_posts/components/Sound/AudioDestination.md +76 -4
  255. package/docs/_posts/components/Sound/BiquadFilter.md +143 -4
  256. package/docs/_posts/components/Sound/BufferAudioSource.md +165 -13
  257. package/docs/_posts/components/Sound/ChannelMerger.md +62 -4
  258. package/docs/_posts/components/Sound/ChannelSelector.md +64 -4
  259. package/docs/_posts/components/Sound/ChannelSplitter.md +68 -4
  260. package/docs/_posts/components/Sound/Convolver.md +124 -4
  261. package/docs/_posts/components/Sound/Delay.md +119 -4
  262. package/docs/_posts/components/Sound/DynamicsCompressor.md +127 -4
  263. package/docs/_posts/components/Sound/Gain.md +115 -4
  264. package/docs/_posts/components/Sound/ListenerPointSource.md +109 -4
  265. package/docs/_posts/components/Sound/MicrophoneSource.md +91 -4
  266. package/docs/_posts/components/Sound/OscillatorSource.md +95 -4
  267. package/docs/_posts/components/Sound/PeriodicWave.md +43 -5
  268. package/docs/_posts/components/Sound/Sound.md +53 -20
  269. package/docs/_posts/components/Sound/SpatialSound.md +120 -4
  270. package/docs/_posts/components/Sound/StreamAudioDestination.md +80 -4
  271. package/docs/_posts/components/Sound/StreamAudioSource.md +91 -4
  272. package/docs/_posts/components/Sound/WaveShaper.md +123 -4
  273. package/docs/_posts/components/Text/FontStyle.md +73 -47
  274. package/docs/_posts/components/Text/Text.md +48 -26
  275. package/docs/_posts/components/TextureProjector/TextureProjector.md +55 -6
  276. package/docs/_posts/components/TextureProjector/TextureProjectorParallel.md +56 -6
  277. package/docs/_posts/components/Texturing/ImageTexture.md +28 -20
  278. package/docs/_posts/components/Texturing/MovieTexture.md +69 -38
  279. package/docs/_posts/components/Texturing/MultiTexture.md +47 -19
  280. package/docs/_posts/components/Texturing/MultiTextureCoordinate.md +27 -10
  281. package/docs/_posts/components/Texturing/MultiTextureTransform.md +32 -10
  282. package/docs/_posts/components/Texturing/PixelTexture.md +34 -14
  283. package/docs/_posts/components/Texturing/TextureCoordinate.md +20 -10
  284. package/docs/_posts/components/Texturing/TextureCoordinateGenerator.md +22 -12
  285. package/docs/_posts/components/Texturing/TextureProperties.md +44 -19
  286. package/docs/_posts/components/Texturing/TextureTransform.md +17 -8
  287. package/docs/_posts/components/Texturing3D/ComposedTexture3D.md +21 -13
  288. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +32 -23
  289. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +22 -16
  290. package/docs/_posts/components/Texturing3D/PixelTexture3D.md +25 -13
  291. package/docs/_posts/components/Texturing3D/TextureCoordinate3D.md +22 -10
  292. package/docs/_posts/components/Texturing3D/TextureCoordinate4D.md +21 -9
  293. package/docs/_posts/components/Texturing3D/TextureTransform3D.md +17 -8
  294. package/docs/_posts/components/Texturing3D/TextureTransformMatrix3D.md +20 -10
  295. package/docs/_posts/components/Time/TimeSensor.md +66 -23
  296. package/docs/_posts/components/VolumeRendering/BlendedVolumeStyle.md +36 -15
  297. package/docs/_posts/components/VolumeRendering/BoundaryEnhancementVolumeStyle.md +15 -5
  298. package/docs/_posts/components/VolumeRendering/CartoonVolumeStyle.md +20 -17
  299. package/docs/_posts/components/VolumeRendering/ComposedVolumeStyle.md +15 -7
  300. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +16 -8
  301. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +43 -21
  302. package/docs/_posts/components/VolumeRendering/OpacityMapVolumeStyle.md +16 -8
  303. package/docs/_posts/components/VolumeRendering/ProjectionVolumeStyle.md +17 -7
  304. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +50 -17
  305. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +18 -10
  306. package/docs/_posts/components/VolumeRendering/SilhouetteEnhancementVolumeStyle.md +16 -8
  307. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +20 -11
  308. package/docs/_posts/components/VolumeRendering/VolumeData.md +32 -15
  309. package/docs/_posts/components/X_ITE/BlendMode.md +9 -2
  310. package/docs/_posts/getting-started.md +1 -0
  311. package/docs/_posts/laboratory/x3d-file-converter.md +1 -1
  312. package/package.json +1 -1
  313. package/src/x_ite/Browser/Core/X3DCoreContext.js +10 -3
  314. package/src/x_ite/Browser/DOMIntegration.js +13 -8
  315. package/src/x_ite/Browser/VERSION.js +1 -1
  316. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +1 -1
  317. package/src/x_ite/Components/DIS/DISEntityManager.js +1 -1
  318. package/src/x_ite/Components/Grouping/Switch.js +1 -1
  319. package/src/x_ite/Components/Layering/X3DLayerNode.js +1 -1
  320. package/src/x_ite/Components/Lighting/DirectionalLight.js +1 -1
  321. package/src/x_ite/Components/Navigation/Collision.js +1 -1
  322. package/src/x_ite/Components/Navigation/LOD.js +1 -1
  323. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +1 -1
  324. package/src/x_ite/Components/Networking/LoadSensor.js +1 -1
  325. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +1 -1
  326. package/src/x_ite/Components/Shape/AcousticProperties.js +1 -1
  327. package/src/x_ite/Components/Shape/Appearance.js +1 -1
  328. package/src/x_ite/Components/Shape/Material.js +1 -1
  329. package/src/x_ite/Components/Shape/TwoSidedMaterial.js +1 -1
  330. package/src/x_ite/Components/Sound/PeriodicWave.js +1 -1
  331. package/src/x_ite/Components/Texturing/TextureProperties.js +1 -1
  332. package/src/x_ite/Fields/ArrayFields.js +2 -2
  333. package/src/x_ite/Fields/SFColor.js +1 -1
  334. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +1 -1
  335. package/src/x_ite/Fields/SFRotation.js +3 -3
  336. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +1 -1
  337. package/src/x_ite/Parser/GoldenGate.js +16 -5
  338. package/src/x_ite/Parser/PLYAParser.js +615 -0
  339. package/src/x_ite/Parser/PLYBParser.js +222 -0
  340. package/src/x_ite/Parser/STLAParser.js +0 -1
  341. /package/build/{bin → docs}/components.js +0 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: SurfaceEmitter
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-ParticleSystems
5
5
  categories: [components, ParticleSystems]
6
6
  tags: [SurfaceEmitter, ParticleSystems]
@@ -15,7 +15,7 @@ tags: [SurfaceEmitter, ParticleSystems]
15
15
 
16
16
  SurfaceEmitter generates particles from the surface of an object. New particles are generated by first randomly choosing a face on the tessellated geometry and then a random position on that face. Particles are generated with an initial direction of the normal to that point (including any normal averaging due to normalPerVertex and creaseAngle field settings).
17
17
 
18
- The SurfaceEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available since X3D version 3.2 or later.
18
+ The SurfaceEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available from X3D version 3.2 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -29,7 +29,11 @@ The SurfaceEmitter node belongs to the **ParticleSystems** component and its def
29
29
 
30
30
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
31
31
 
32
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
32
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
33
+
34
+ #### Hint
35
+
36
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
33
37
 
34
38
  ### SFBool [in, out] **on** TRUE
35
39
 
@@ -37,7 +41,7 @@ Enables/disables production of particles from this emitter node. If operating wh
37
41
 
38
42
  ### SFFloat [in, out] **speed** 0 <small>[0,∞)</small>
39
43
 
40
- Initial linear speed (default is m/s) imparted to all particles along their direction of movement.
44
+ Initial linear *speed* (default is m/s) imparted to all particles along their direction of movement.
41
45
 
42
46
  ### SFFloat [in, out] **variation** 0.25 <small>[0,∞)</small>
43
47
 
@@ -45,15 +49,17 @@ Multiplier for the randomness used to control the range of possible output value
45
49
 
46
50
  #### Hint
47
51
 
48
- - Variation of zero does not allow any randomness.
52
+ - *variation* of zero does not allow any randomness.
49
53
 
50
54
  ### SFFloat [ ] **mass** 0 <small>[0,∞)</small>
51
55
 
52
- Basic mass of each particle in mass base units (default is grams).
56
+ Basic *mass* of each particle, defined in *mass* base units (default is kilograms).
53
57
 
54
- #### Hint
58
+ #### Hints
55
59
 
56
- - Mass is needed if gravity or other force-related calculations are performed per-particle.
60
+ - *mass* is needed if gravity or other force-related calculations are performed on a per-particle basis.
61
+ - [Kilogram](https://en.wikipedia.org/wiki/Kilogram){:target="_blank"}
62
+ - [X3D Architecture 4.3.6 Standard units and coordinate system](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/concepts.html#Standardunitscoordinates){:target="_blank"}
57
63
 
58
64
  ### SFFloat [ ] **surfaceArea** 0 <small>[0,∞)</small>
59
65
 
@@ -61,21 +67,22 @@ Particle surface area in area base units (default is meters squared). Surface ar
61
67
 
62
68
  #### Hints
63
69
 
64
- - SurfaceArea value represents average frontal area presented to the wind. Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
70
+ - *surfaceArea* value represents average frontal area presented to the wind.
71
+ - Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
65
72
 
66
73
  ### SFNode [ ] **surface** NULL <small>[X3DGeometryNode]</small>
67
74
 
68
- The geometry node provides geometry used as the emitting surface.
75
+ The geometry node provides geometry used as the emitting *surface*.
69
76
 
70
77
  #### Hint
71
78
 
72
- - If the surface is indicated as not being solid (solid field set to false), randomly choose from which side of the surface to emit, negating the normal direction when generating from the back side.
79
+ - If the *surface* is indicated as not being solid (solid field set to false), randomly choose from which side of the *surface* to emit, negating the normal direction when generating from the back side.
73
80
 
74
81
  #### Warning
75
82
 
76
83
  - Only valid geometry shall be used.
77
84
 
78
- ## Description
85
+ ## Advisories
79
86
 
80
87
  ### Hint
81
88
 
@@ -89,6 +96,6 @@ The geometry node provides geometry used as the emitting surface.
89
96
 
90
97
  <x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/SurfaceEmitter/SurfaceEmitter.x3d" update="auto"></x3d-canvas>
91
98
 
92
- ## External Links
99
+ ## See Also
93
100
 
94
- - [X3D Specification of SurfaceEmitter](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#SurfaceEmitter){:target="_blank"}
101
+ - [X3D Specification of SurfaceEmitter node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#SurfaceEmitter){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: VolumeEmitter
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-ParticleSystems
5
5
  categories: [components, ParticleSystems]
6
6
  tags: [VolumeEmitter, ParticleSystems]
@@ -15,7 +15,7 @@ tags: [VolumeEmitter, ParticleSystems]
15
15
 
16
16
  VolumeEmitter emits particles from a random position confined within the given closed geometry volume.
17
17
 
18
- The VolumeEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available since X3D version 3.2 or later.
18
+ The VolumeEmitter node belongs to the **ParticleSystems** component and its default container field is *emitter.* It is available from X3D version 3.2 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -29,15 +29,15 @@ The VolumeEmitter node belongs to the **ParticleSystems** component and its defa
29
29
 
30
30
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
31
31
 
32
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
32
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
33
33
 
34
- ### MFInt32 [in] **set_coordIndex** <small>[0,∞) or -1</small>
34
+ #### Hint
35
35
 
36
- *coordIndex* indices provide the order in which coordinates are applied to construct each polygon face. Order starts at index 0, commas are optional between sets.
36
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
37
37
 
38
- #### Hint
38
+ ### MFInt32 [in] **set_coordIndex** <small>[0,∞) or -1</small>
39
39
 
40
- - Sentinel value -1 is used to separate indices for each successive polygon.
40
+ Input field *set_coordIndex*.
41
41
 
42
42
  ### SFBool [in, out] **on** TRUE
43
43
 
@@ -49,11 +49,11 @@ TODO, X3D specification is undefined.
49
49
 
50
50
  ### SFVec3f [in, out] **direction** 0 1 0 <small>(-∞,∞)</small>
51
51
 
52
- Initial direction from which particles emanate.
52
+ Initial *direction* from which particles emanate.
53
53
 
54
54
  ### SFFloat [in, out] **speed** 0 <small>[0,∞)</small>
55
55
 
56
- Initial linear speed (default is m/s) imparted to all particles along their direction of movement.
56
+ Initial linear *speed* (default is m/s) imparted to all particles along their direction of movement.
57
57
 
58
58
  ### SFFloat [in, out] **variation** 0.25 <small>[0,∞)</small>
59
59
 
@@ -61,15 +61,17 @@ Multiplier for the randomness used to control the range of possible output value
61
61
 
62
62
  #### Hint
63
63
 
64
- - Variation of zero does not allow any randomness.
64
+ - *variation* of zero does not allow any randomness.
65
65
 
66
66
  ### SFFloat [ ] **mass** 0 <small>[0,∞)</small>
67
67
 
68
- Basic mass of each particle in mass base units (default is grams).
68
+ Basic *mass* of each particle, defined in *mass* base units (default is kilograms).
69
69
 
70
- #### Hint
70
+ #### Hints
71
71
 
72
- - Mass is needed if gravity or other force-related calculations are performed per-particle.
72
+ - *mass* is needed if gravity or other force-related calculations are performed on a per-particle basis.
73
+ - [Kilogram](https://en.wikipedia.org/wiki/Kilogram){:target="_blank"}
74
+ - [X3D Architecture 4.3.6 Standard units and coordinate system](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/concepts.html#Standardunitscoordinates){:target="_blank"}
73
75
 
74
76
  ### SFFloat [ ] **surfaceArea** 0 <small>[0,∞)</small>
75
77
 
@@ -77,17 +79,22 @@ Particle surface area in area base units (default is meters squared). Surface ar
77
79
 
78
80
  #### Hints
79
81
 
80
- - SurfaceArea value represents average frontal area presented to the wind. Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
82
+ - *surfaceArea* value represents average frontal area presented to the wind.
83
+ - Assumes spherical model for each particle (i.e., surface area is the same regardless of direction).
81
84
 
82
85
  ### MFInt32 [ ] **coordIndex** -1 <small>[0,∞) or -1</small>
83
86
 
84
87
  *coordIndex* indices are applied to contained Coordinate values in order to define randomly generated initial geometry of the particles.
85
88
 
89
+ #### Warning
90
+
91
+ - *coordIndex* is required in order to connect contained coordinate point values.
92
+
86
93
  ### SFNode [in, out] **coord** NULL <small>[X3DCoordinateNode]</small>
87
94
 
88
- *coord*inates for the geometry used as the emitting volume.
95
+ Coordinates for the geometry used as the emitting volume.
89
96
 
90
- ## Description
97
+ ## Advisories
91
98
 
92
99
  ### Hint
93
100
 
@@ -97,6 +104,6 @@ Particle surface area in area base units (default is meters squared). Surface ar
97
104
 
98
105
  <x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/VolumeEmitter/VolumeEmitter.x3d" update="auto"></x3d-canvas>
99
106
 
100
- ## External Links
107
+ ## See Also
101
108
 
102
- - [X3D Specification of VolumeEmitter](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#VolumeEmitter){:target="_blank"}
109
+ - [X3D Specification of VolumeEmitter node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#VolumeEmitter){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: WindPhysicsModel
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-ParticleSystems
5
5
  categories: [components, ParticleSystems]
6
6
  tags: [WindPhysicsModel, ParticleSystems]
@@ -15,7 +15,7 @@ tags: [WindPhysicsModel, ParticleSystems]
15
15
 
16
16
  WindPhysicsModel applies a wind effect to the particles. The wind includes a random variation factor to model gustiness.
17
17
 
18
- The WindPhysicsModel node belongs to the **ParticleSystems** component and its default container field is *physics.* It is available since X3D version 3.2 or later.
18
+ The WindPhysicsModel node belongs to the **ParticleSystems** component and its default container field is *physics.* It is available from X3D version 3.2 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -29,7 +29,11 @@ The WindPhysicsModel node belongs to the **ParticleSystems** component and its d
29
29
 
30
30
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
31
31
 
32
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
32
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
33
+
34
+ #### Hint
35
+
36
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
33
37
 
34
38
  ### SFBool [in, out] **enabled** TRUE
35
39
 
@@ -41,7 +45,7 @@ Enables/disables node operation.
41
45
 
42
46
  ### SFFloat [in, out] **speed** 0.1 <small>[0,∞)</small>
43
47
 
44
- Initial linear speed (default is m/s) imparted to all particles along their direction of movement.
48
+ Initial linear *speed* (default is m/s) imparted to all particles along their direction of movement.
45
49
 
46
50
  ### SFFloat [in, out] **gustiness** 0.1 <small>[0,∞)</small>
47
51
 
@@ -57,12 +61,12 @@ Initial linear speed (default is m/s) imparted to all particles along their dire
57
61
 
58
62
  #### Hint
59
63
 
60
- - This is determined per-particle to model how each is effected by turbulence.
64
+ - This is determined per-particle to model how each is effected by *turbulence*.
61
65
 
62
66
  ## Example
63
67
 
64
68
  <x3d-canvas src="https://create3000.github.io/media/examples/ParticleSystems/WindPhysicsModel/WindPhysicsModel.x3d" update="auto"></x3d-canvas>
65
69
 
66
- ## External Links
70
+ ## See Also
67
71
 
68
- - [X3D Specification of WindPhysicsModel](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#WindPhysicsModel){:target="_blank"}
72
+ - [X3D Specification of WindPhysicsModel node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/particleSystems.html#WindPhysicsModel){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: LinePickSensor
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Picking
5
5
  categories: [components, Picking]
6
6
  tags: [LinePickSensor, Picking]
@@ -15,7 +15,7 @@ tags: [LinePickSensor, Picking]
15
15
 
16
16
  LinePickSensor uses one or more pickingGeometry line segments to compute intersections with pickTarget shapes. As each line intersection generates a known point in space, useful event information is returned including normal, geometry and texCoord values.
17
17
 
18
- The LinePickSensor node belongs to the **Picking** component and its default container field is *children.* It is available since X3D version 3.2 or later.
18
+ The LinePickSensor node belongs to the **Picking** 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
 
@@ -31,7 +31,11 @@ The LinePickSensor node belongs to the **Picking** component and its default con
31
31
 
32
32
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
33
33
 
34
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
34
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
35
+
36
+ #### Hint
37
+
38
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
35
39
 
36
40
  ### SFBool [in, out] **enabled** TRUE
37
41
 
@@ -39,11 +43,12 @@ Enables/disables node operation.
39
43
 
40
44
  ### MFString [in, out] **objectType** "ALL" <small>["ALL", "NONE", "TERRAIN", ...]</small>
41
45
 
42
- The objectType field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances.
46
+ The *objectType* field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances. Example: labeling a PickableGroup with the *objectType* value "WATER" and then attempting to intersect a pick sensor with *objectType* value "GROUND" fails since the *objectType* values do not match. Example: the special value "ALL" means that each node is available for picking regardless of the type specified by the pick sensor. Example: the special value "NONE" effectively disables all picking for this node and is the equivalent of setting the pickable field of the corresponding PickableGroup to false.
43
47
 
44
48
  #### Hints
45
49
 
46
- - Authors may define any value for objectType. MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
50
+ - Authors may define any value for *objectType*.
51
+ - MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
47
52
 
48
53
  ### SFString [in, out] **matchCriterion** "MATCH_ANY" <small>["MATCH_ANY"|"MATCH_EVERY"|"MATCH_ONLY_ONE"]</small>
49
54
 
@@ -55,7 +60,7 @@ Defines whether the intersection test (i.e. pick) by this X3DPickSensorNode must
55
60
 
56
61
  #### Hint
57
62
 
58
- - IntersectionType constants may be extended by the browser to provide additional options.
63
+ - *intersectionType* constants may be extended by the browser to provide additional options.
59
64
 
60
65
  #### Warning
61
66
 
@@ -63,7 +68,7 @@ Defines whether the intersection test (i.e. pick) by this X3DPickSensorNode must
63
68
 
64
69
  ### SFString [ ] **sortOrder** "CLOSEST" <small>["ANY"|"CLOSEST"|"ALL"|"ALL_SORTED"]</small>
65
70
 
66
- The sortOrder field determines the order provided for picked output events.
71
+ The *sortOrder* field determines the order provided for picked output events. Example: ANY means any single object that can satisfy picking conditions for this pick sensor. Consistency of results is not guaranteed. Example: ALL means that every object that satisfies the picking conditions for this pick sensor shall be returned. Example: ALL_SORTED means that every object that satisfies the picking conditions for this pick sensor shall be returned with the order of the output fields provided in a distance-sorted order from closest to farthest away. The exact algorithm for sorting is defined by the individual node definitions. Example: CLOSEST means that the closest object by distance that satisfies the conditions of this pick sensor. *The exact algorithm for distance determination shall be defined by individual node definitions*.
67
72
 
68
73
  #### Hint
69
74
 
@@ -75,24 +80,37 @@ The sortOrder field determines the order provided for picked output events.
75
80
 
76
81
  ### SFBool [out] **isActive**
77
82
 
78
- *isActive* indicates when the intersecting object is picked by the picking geometry. Output event isActive=true gets sent once a picked item is found. Output event isActive=false gets sent once no picked item is found.
83
+ *isActive* indicates when the intersecting object is picked by the picking geometry. Output event *isActive*=true gets sent once a picked item is found. Output event *isActive*=false gets sent once no picked item is found.
84
+
85
+ #### Warning
86
+
87
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
79
88
 
80
89
  ### MFVec3f [out] **pickedTextureCoordinate**
81
90
 
82
91
  Output event containing 3D texture coordinates of surfaces computed by the picking intersection computations. Picked texture coordinates are in three dimensions. If the target texture coordinate has two dimensions, the third coordinate (z component of an SFVec3f) shall be zero.
83
92
 
84
- #### Warning
93
+ #### Warnings
85
94
 
86
95
  - If the target object has multiple textures defined, only texture coordinates for the first texture are returned and all other textures are ignored.
96
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
87
97
 
88
98
  ### MFVec3f [out] **pickedNormal**
89
99
 
90
100
  Output event containing surface normal vectors computed by the picking intersection computations.
91
101
 
102
+ #### Warning
103
+
104
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
105
+
92
106
  ### MFVec3f [out] **pickedPoint**
93
107
 
94
108
  Output event containing 3D points on surface of underlying pickingGeometry computed by the picking intersection computations, given in the local coordinate system.
95
109
 
110
+ #### Warning
111
+
112
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
113
+
96
114
  ### SFNode [in, out] **pickingGeometry** NULL <small>[IndexedLineSet|LineSet]</small>
97
115
 
98
116
  *pickingGeometry* specifies the exact geometry coordinates that are used to perform the intersection testing of the picking operation.
@@ -105,14 +123,20 @@ Output event containing 3D points on surface of underlying pickingGeometry compu
105
123
 
106
124
  Output event containing the node or nodes that have been found to intersect with the picking geometry from the last time this node performed a picking operation, given in the local coordinate system.
107
125
 
108
- ## Description
126
+ #### Warning
127
+
128
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
129
+
130
+ ## Advisories
109
131
 
110
132
  ### Hints
111
133
 
112
134
  - Sort order for line picking is based on each pair of coordinates that defining a line segment, with first declared vertex of the segment defined to be the start of the line to which the intersection points are closest.
135
+ - [When the picking line segment intersects a coplanar polygon, computed intersection point(s) are illustrated in Figure 38.1](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/picking.html#f-LineIntersection){:target="_blank"}
113
136
  - Picking is performed between rendered frames of the event model. An author sets up the picking request in one frame by placing a LinePickSensor in the desired location. At the start of the next frame, any picking intersections are reported by the pick sensor.
114
137
  - Picking notification is performed at the start of the frame for all enabled pick sensors once all other sensors are processed.
115
- - IndexedLineSet or LineSet can be used for pickingGeometry node.
138
+ - [Event timing details are explained in X3D Specification 4.4.8.3 Execution model](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/concepts.html#ExecutionModel){:target="_blank"}
139
+ - IndexedLineSet or Lineset can be used for pickingGeometry node.
116
140
 
117
141
  ### Warning
118
142
 
@@ -122,8 +146,6 @@ Output event containing the node or nodes that have been found to intersect with
122
146
 
123
147
  <x3d-canvas src="https://create3000.github.io/media/examples/Picking/LinePickSensor/LinePickSensor.x3d" update="auto"></x3d-canvas>
124
148
 
125
- ## External Links
149
+ ## See Also
126
150
 
127
- - [X3D Specification of LinePickSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/picking.html#LinePickSensor){:target="_blank"}
128
- - [When the picking line segment intersects a coplanar polygon, computed intersection point(s) are illustrated in Figure 38.1](https://www.web3d.org/files/specifications/19775-1/V3.3/Part01/components/picking.html#f-LineIntersection){:target="_blank"}
129
- - [Event timing details are explained in 4.4.8.3 Execution model](https://www.web3d.org/files/specifications/19775-1/V3.3/Part01/concepts.html#ExecutionModel){:target="_blank"}
151
+ - [X3D Specification of LinePickSensor node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/picking.html#LinePickSensor){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: PickableGroup
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Picking
5
5
  categories: [components, Picking]
6
6
  tags: [PickableGroup, Picking]
@@ -15,7 +15,7 @@ tags: [PickableGroup, Picking]
15
15
 
16
16
  PickableGroup is a Grouping node that can contain most nodes. PickableGroup contains children that are marked as having a given classification of picking types, and can also enable or disable picking of the children.
17
17
 
18
- The PickableGroup node belongs to the **Picking** component and its default container field is *children.* It is available since X3D version 3.2 or later.
18
+ The PickableGroup node belongs to the **Picking** 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
 
@@ -32,36 +32,41 @@ The PickableGroup node belongs to the **Picking** component and its default cont
32
32
 
33
33
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
34
34
 
35
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
35
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
36
+
37
+ #### Hint
38
+
39
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
36
40
 
37
41
  ### SFBool [in, out] **pickable** TRUE
38
42
 
39
- The pickable field determines whether pick traversal is performed on this node or its children.
43
+ The *pickable* field determines whether pick traversal is performed on this node or its children.
40
44
 
41
45
  #### Hint
42
46
 
43
- - Pickable only affects children accessed through the transformation hierarchy of the parent.
47
+ - *pickable* only affects children accessed through the transformation hierarchy of the parent.
44
48
 
45
49
  #### Warning
46
50
 
47
- - If one or more of the children of this instance is accessible through another transformation hierarchy through DEF/USE that still has picking enabled, they are still pickable through that path only.
51
+ - If one or more of the children of this instance is accessible through another transformation hierarchy through DEF/USE that still has picking enabled, they are still *pickable* through that path only.
48
52
 
49
53
  ### MFString [in, out] **objectType** "ALL" <small>["ALL", "NONE", "TERRAIN", ...]</small>
50
54
 
51
- The objectType field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances.
55
+ The *objectType* field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances. Example: labeling a PickableGroup with the *objectType* value "WATER" and then attempting to intersect a pick sensor with *objectType* value "GROUND" fails since the *objectType* values do not match. Example: the special value "ALL" means that each node is available for picking regardless of the type specified by the pick sensor. Example: the special value "NONE" effectively disables all picking for this node and is the equivalent of setting the pickable field to false.
52
56
 
53
57
  #### Hints
54
58
 
55
- - Authors may define any value for objectType. MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
59
+ - Authors may define any value for *objectType*.
60
+ - MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
56
61
 
57
62
  ### SFBool [in, out] **visible** TRUE
58
63
 
59
64
  Whether or not renderable content within this node is visually displayed.
60
65
 
61
- #### Hint
66
+ #### Hints
62
67
 
63
- - The visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
64
- - Content must be visible to be collidable and to be pickable.
68
+ - The *visible* field has no effect on animation behaviors, event passing or other non-visual characteristics.
69
+ - Content must be *visible* to be collidable and to be pickable.
65
70
 
66
71
  ### SFBool [in, out] **bboxDisplay** FALSE
67
72
 
@@ -75,36 +80,49 @@ Whether to display bounding box for associated geometry, aligned with world coor
75
80
 
76
81
  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.
77
82
 
78
- #### Hint
83
+ #### Hints
79
84
 
80
85
  - Can be useful for collision computations or inverse-kinematics (IK) engines.
86
+ - Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
87
+ - [X3D Architecture, 10.2.2 Bounding boxes](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#BoundingBoxes){:target="_blank"}
88
+ - [X3D Architecture, 10.3.1 X3DBoundedObject](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#X3DBoundedObject){:target="_blank"}
81
89
 
82
90
  ### SFVec3f [ ] **bboxCenter** 0 0 0 <small>(-∞,∞)</small>
83
91
 
84
- Bounding box center: optional hint for position offset from origin of local coordinate system.
92
+ Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
93
+
94
+ #### Hints
95
+
96
+ - Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
97
+ - [X3D Architecture, 10.2.2 Bounding boxes](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#BoundingBoxes){:target="_blank"}
98
+ - [X3D Architecture, 10.3.1 X3DBoundedObject](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#X3DBoundedObject){:target="_blank"}
85
99
 
86
100
  ### MFNode [in] **addChildren**
87
101
 
88
- Input field addChildren.
102
+ Input field *addChildren*.
89
103
 
90
104
  ### MFNode [in] **removeChildren**
91
105
 
92
- Input field removeChildren.
106
+ Input field *removeChildren*.
93
107
 
94
108
  ### MFNode [in, out] **children** [ ] <small>[X3DChildNode]</small>
95
109
 
96
- Grouping nodes contain a list of children nodes.
110
+ Grouping nodes contain an ordered list of *children* nodes.
97
111
 
98
- #### Hint
112
+ #### Hints
99
113
 
100
- - 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.
114
+ - 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.
115
+ - InputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
116
+ - InputOnly MFNode removeChildren field can remove nodes from the *children* list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
117
+ - [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"}
101
118
 
102
- ## Description
119
+ ## Advisories
103
120
 
104
- ### Hint
121
+ ### Hints
105
122
 
106
123
  - Insert a Shape node before adding geometry or Appearance.
124
+ - Content must be visible to be collidable and to be pickable.
107
125
 
108
- ## External Links
126
+ ## See Also
109
127
 
110
- - [X3D Specification of PickableGroup](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/picking.html#PickableGroup){:target="_blank"}
128
+ - [X3D Specification of PickableGroup node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/picking.html#PickableGroup){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: PointPickSensor
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Picking
5
5
  categories: [components, Picking]
6
6
  tags: [PointPickSensor, Picking]
@@ -15,7 +15,7 @@ tags: [PointPickSensor, Picking]
15
15
 
16
16
  PointPickSensor tests one or more pickingGeometry points in space as lying inside the provided pickTarget geometry. For each pickingGeometry PointSet coordinate point that lies inside the pickTarget geometry, a pickedPoint coordinate is returned along with a corresponding pickedGeometry node inside which the point lies.
17
17
 
18
- The PointPickSensor node belongs to the **Picking** component and its default container field is *children.* It is available since X3D version 3.2 or later.
18
+ The PointPickSensor node belongs to the **Picking** 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
 
@@ -31,7 +31,11 @@ The PointPickSensor node belongs to the **Picking** component and its default co
31
31
 
32
32
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
33
33
 
34
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
34
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
35
+
36
+ #### Hint
37
+
38
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
35
39
 
36
40
  ### SFBool [in, out] **enabled** TRUE
37
41
 
@@ -39,11 +43,12 @@ Enables/disables node operation.
39
43
 
40
44
  ### MFString [in, out] **objectType** "ALL" <small>["ALL", "NONE", "TERRAIN", ...]</small>
41
45
 
42
- The objectType field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances.
46
+ The *objectType* field specifies a set of labels used in the picking process. Each string specified is treated as an independent label that needs to be matched against the same type in one of the pick sensor instances. Example: labeling a PickableGroup with the *objectType* value "WATER" and then attempting to intersect a pick sensor with *objectType* value "GROUND" fails since the *objectType* values do not match. Example: the special value "ALL" means that each node is available for picking regardless of the type specified by the pick sensor. Example: the special value "NONE" effectively disables all picking for this node and is the equivalent of setting the pickable field of the corresponding PickableGroup to false.
43
47
 
44
48
  #### Hints
45
49
 
46
- - Authors may define any value for objectType. MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
50
+ - Authors may define any value for *objectType*.
51
+ - MFString arrays can have multiple values, so "separate each individual string" "by using quote marks".
47
52
 
48
53
  ### SFString [in, out] **matchCriterion** "MATCH_ANY" <small>["MATCH_ANY"|"MATCH_EVERY"|"MATCH_ONLY_ONE"]</small>
49
54
 
@@ -55,7 +60,7 @@ Defines whether the intersection test (i.e. pick) by this X3DPickSensorNode must
55
60
 
56
61
  #### Hint
57
62
 
58
- - IntersectionType constants may be extended by the browser to provide additional options.
63
+ - *intersectionType* constants may be extended by the browser to provide additional options.
59
64
 
60
65
  #### Warning
61
66
 
@@ -63,7 +68,7 @@ Defines whether the intersection test (i.e. pick) by this X3DPickSensorNode must
63
68
 
64
69
  ### SFString [ ] **sortOrder** "CLOSEST" <small>["CLOSEST"|"ALL"|"ALL_SORTED"]</small>
65
70
 
66
- The sortOrder field determines the order provided for picked output events.
71
+ The *sortOrder* field determines the order provided for picked output events. Example: ANY means any single object that can satisfy picking conditions for this pick sensor. Consistency of results is not guaranteed. Example: ALL means that every object that satisfies the picking conditions for this pick sensor shall be returned. Example: ALL_SORTED means that every object that satisfies the picking conditions for this pick sensor shall be returned with the order of the output fields provided in a distance-sorted order from closest to farthest away. The exact algorithm for sorting is defined by the individual node definitions. Example: CLOSEST means that the closest object by distance that satisfies the conditions of this pick sensor. *The exact algorithm for distance determination shall be defined by individual node definitions*.
67
72
 
68
73
  #### Hint
69
74
 
@@ -75,12 +80,20 @@ The sortOrder field determines the order provided for picked output events.
75
80
 
76
81
  ### SFBool [out] **isActive**
77
82
 
78
- *isActive* indicates when the intersecting object is picked by the picking geometry. Output event isActive=true gets sent once a picked item is found. Output event isActive=false gets sent once no picked item is found.
83
+ *isActive* indicates when the intersecting object is picked by the picking geometry. Output event *isActive*=true gets sent once a picked item is found. Output event *isActive*=false gets sent once no picked item is found.
84
+
85
+ #### Warning
86
+
87
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
79
88
 
80
89
  ### MFVec3f [out] **pickedPoint**
81
90
 
82
91
  Output event containing 3D points on surface of underlying pickingGeometry computed by the picking intersection computations, given in the local coordinate system.
83
92
 
93
+ #### Warning
94
+
95
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
96
+
84
97
  ### SFNode [in, out] **pickingGeometry** NULL <small>[PointSet]</small>
85
98
 
86
99
  *pickingGeometry* specifies the exact geometry coordinates that are used to perform the intersection testing of the picking operation.
@@ -93,13 +106,18 @@ Output event containing 3D points on surface of underlying pickingGeometry compu
93
106
 
94
107
  Output event containing the node or nodes that have been found to intersect with the picking geometry from the last time this node performed a picking operation, given in the local coordinate system.
95
108
 
96
- ## Description
109
+ #### Warning
110
+
111
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
112
+
113
+ ## Advisories
97
114
 
98
115
  ### Hints
99
116
 
100
117
  - Because points represent an infinitely small location in space, sortOrder values CLOSEST and ALL_SORTED are defined to mean ANY and ALL respectively.
101
118
  - Picking is performed between rendered frames of the event model. An author sets up the picking request in one frame by placing a LinePickSensor in the desired location. At the start of the next frame, any picking intersections are reported by the pick sensor.
102
119
  - Picking notification is performed at the start of the frame for all enabled pick sensors once all other sensors are processed.
120
+ - [Event timing details are explained in X3D Specification 4.4.8.3 Execution model](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/concepts.html#ExecutionModel){:target="_blank"}
103
121
  - PointSet can be used for pickingGeometry node.
104
122
 
105
123
  ### Warning
@@ -110,7 +128,6 @@ Output event containing the node or nodes that have been found to intersect with
110
128
 
111
129
  <x3d-canvas src="https://create3000.github.io/media/examples/Picking/PointPickSensor/PointPickSensor.x3d" update="auto"></x3d-canvas>
112
130
 
113
- ## External Links
131
+ ## See Also
114
132
 
115
- - [X3D Specification of PointPickSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/picking.html#PointPickSensor){:target="_blank"}
116
- - [Event timing details are explained in 4.4.8.3 Execution model](https://www.web3d.org/files/specifications/19775-1/V3.3/Part01/concepts.html#ExecutionModel){:target="_blank"}
133
+ - [X3D Specification of PointPickSensor node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/picking.html#PointPickSensor){:target="_blank"}