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: OrthoViewpoint
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Navigation
5
5
  categories: [components, Navigation]
6
6
  tags: [OrthoViewpoint, Navigation]
@@ -15,7 +15,7 @@ tags: [OrthoViewpoint, Navigation]
15
15
 
16
16
  OrthoViewpoint provides an orthographic perspective-free view of a scene from a specific location and direction.
17
17
 
18
- The OrthoViewpoint node belongs to the **Navigation** component and its default container field is *children.* It is available since X3D version 3.0 or later.
18
+ The OrthoViewpoint node belongs to the **Navigation** 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
 
@@ -31,23 +31,39 @@ The OrthoViewpoint node belongs to the **Navigation** component and its default
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] **set_bind**
37
41
 
38
- Sending event set_bind=true makes this node active. Sending event set_bind=false makes this node inactive. Thus setting set_bind to true/false will pop/push (enable/disable) this Viewpoint.
42
+ Sending event *set_bind*=true makes this node active. Sending event *set_bind*=false makes this node inactive. Thus setting *set_bind* to true/false will pop/push (enable/disable) this Viewpoint.
43
+
44
+ #### Hint
45
+
46
+ - Paired node operations can be established by connecting *set_bind* and isBound fields of corresponding bindable nodes.
47
+
48
+ #### Warning
49
+
50
+ - It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.
39
51
 
40
52
  ### SFString [in, out] **description** ""
41
53
 
42
- Text description or navigation hint to identify this Viewpoint.
54
+ Text *description* or navigation hint to describe the significance of this model Viewpoint.
43
55
 
44
56
  #### Hints
45
57
 
46
- - Use spaces, make descriptions clear and readable. Many XML tools substitute XML character references automatically if needed (such as &amp;#38; for &amp; ampersand, or &amp;#34; for " quotation mark).
58
+ - A sequence of good Viewpoints with understandable descriptions can provide a guided tour of a model.
59
+ - The currently bound NavigationInfo node has a major effect on how a user might change viewing position and orientation after reaching this Viewpoint.
60
+ - Consider paired Viewpoint/NavigationInfo node combinations by defining ROUTE connections between corresponding isBound/set_bind fields.
61
+ - Include space characters since a *description* is not a DEF identifier. Write short phrases that make descriptions clear and readable.
62
+ - 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).
47
63
 
48
64
  #### Warning
49
65
 
50
- - Without description, this OrthoViewpoint is unlikely to appear on browser Viewpoints menu.
66
+ - Without *description*, this OrthoViewpoint is unlikely to appear on browser Viewpoint menus.
51
67
 
52
68
  ### SFVec3f [in, out] **position** 0 0 10 <small>(-∞,∞)</small>
53
69
 
@@ -59,7 +75,12 @@ Rotation (axis, angle in radians) of Viewpoint, relative to default -Z axis dire
59
75
 
60
76
  #### Hints
61
77
 
62
- - This is orientation \_change\_ from default direction (0 0 -1). Complex rotations can be accomplished axis-by-axis using parent Transforms.
78
+ - This is *orientation* _change_ from default direction (0 0 -1).
79
+ - Complex rotations can be accomplished axis-by-axis using parent Transforms.
80
+
81
+ #### Warning
82
+
83
+ - For VR/AR/MAR users wearing a head-mounted display (HMD), animating this field may induce motion sickness.
63
84
 
64
85
  ### SFVec3f [in, out] **centerOfRotation** 0 0 0 <small>(-∞,∞)</small>
65
86
 
@@ -69,41 +90,42 @@ Rotation (axis, angle in radians) of Viewpoint, relative to default -Z axis dire
69
90
 
70
91
  Minimum and maximum extents of view in units of local coordinate system. Small field of view roughly corresponds to a telephoto lens, large field of view roughly corresponds to a wide-angle lens.
71
92
 
72
- #### Hint
93
+ #### Hints
73
94
 
95
+ - Validation type SFVec3f is stricter than specification legacy value in order to detect illegal values.
74
96
  - Rectangular display width/height = (maxX-minX) / (maxY-minY)
75
97
 
76
98
  #### Warning
77
99
 
78
- - Minimum corner must remain less than maximum corner.
100
+ - Minimum corner values must remain less than maximum corner values.
79
101
 
80
102
  ### SFFloat [in, out] **nearDistance** -1 <small>-1 or (0,∞)</small>
81
103
 
82
- nearDistance defines minimum clipping plane distance necessary for object display.
104
+ *nearDistance* defines minimum clipping plane distance necessary for object display.
83
105
 
84
106
  #### Hints
85
107
 
86
- - overrides bound NavigationInfo visibilityLimit value, if any.
87
- - default value -1 means no effect on currently defined view frustum boundaries.
108
+ - Overrides bound NavigationInfo avatarSize value, if any.
109
+ - Default value -1 means no effect on currently defined view frustum boundaries.
88
110
  - [Aliasing](https://en.wikipedia.org/wiki/Aliasing){:target="_blank"} and [Clipping](https://en.wikipedia.org/wiki/Clipping_(computer_graphics)){:target="_blank"}
89
111
 
90
- #### Warnings
112
+ #### Warning
91
113
 
92
- - nearDistance must be less than farDistance.
114
+ - *nearDistance* must be less than farDistance.
93
115
 
94
116
  ### SFFloat [in, out] **farDistance** -1 <small>-1 or (0,∞)</small>
95
117
 
96
- farDistance defines maximum clipping plane distance allowed for object display.
118
+ *farDistance* defines maximum clipping plane distance allowed for object display.
97
119
 
98
120
  #### Hints
99
121
 
100
- - overrides bound NavigationInfo visibilityLimit value, if any.
101
- - default value -1 means no effect on currently defined view frustum boundaries.
122
+ - Overrides bound NavigationInfo visibilityLimit value, if any.
123
+ - Default value -1 means no effect on currently defined view frustum boundaries.
102
124
  - [Aliasing](https://en.wikipedia.org/wiki/Aliasing){:target="_blank"} and [Clipping](https://en.wikipedia.org/wiki/Clipping_(computer_graphics)){:target="_blank"}
103
125
 
104
- #### Warnings
126
+ #### Warning
105
127
 
106
- - nearDistance must be less than farDistance.
128
+ - NearDistance must be less than *farDistance*.
107
129
 
108
130
  ### SFBool [in, out] **viewAll** FALSE
109
131
 
@@ -111,20 +133,25 @@ Viewpoint is automatically adjusted to view all visible geometry. Typically cent
111
133
 
112
134
  #### Hints
113
135
 
114
- - no collision detection or proximity sensing occurs when zooming.
115
- - when the value of the viewAll field is changed from TRUE to FALSE, no change in the current view occurs.
136
+ - No collision detection or proximity sensing occurs when zooming.
137
+ - When the value of the *viewAll* field is changed from TRUE to FALSE, no change in the current view occurs.
116
138
 
117
139
  #### Warning
118
140
 
119
- - if needed, near and far clipping planes shall be adjusted to allow viewing the entire scene.
141
+ - If needed, near and far clipping planes shall be adjusted to allow viewing the entire scene.
120
142
 
121
143
  ### SFBool [in, out] **jump** TRUE
122
144
 
123
- Transition instantly by jumping, or smoothly adjust offsets in place when changing to this Viewpoint.
145
+ Transition instantly by jumping, otherwise smoothly adjust offsets in place when changing to this Viewpoint.
124
146
 
125
- #### Hint
147
+ #### Hints
148
+
149
+ - See NavigationInfo.transitionType for the manner in which animated Viewpoint transistions occur.
150
+ - Set *jump*=true for instantaneous camera motion when going to this viewpoint.
151
+
152
+ #### Warning
126
153
 
127
- - Set jump=true for smooth camera motion when going to this viewpoint.
154
+ - For VR/AR/MAR users wearing head-mounted displays, animating transitions between viewpoints may induce motion sickness.
128
155
 
129
156
  ### SFBool [in, out] **retainUserOffsets** FALSE
130
157
 
@@ -132,35 +159,51 @@ Retain (true) or reset to zero (false) any prior user navigation offsets from de
132
159
 
133
160
  ### SFBool [out] **isBound**
134
161
 
135
- Event true sent when node becomes active, event false sent when unbound by another node.
162
+ Output event true gets sent when node becomes bound and activated, otherwise output event false gets sent when node becomes unbound and deactivated.
163
+
164
+ #### Hint
165
+
166
+ - Paired node operations can be established by connecting set_bind and *isBound* fields of corresponding bindable nodes.
167
+
168
+ #### Warning
169
+
170
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
136
171
 
137
172
  ### SFTime [out] **bindTime**
138
173
 
139
- Event sent when node becomes active/inactive.
174
+ Event sent reporting timestamp when node becomes active/inactive.
175
+
176
+ #### Warning
177
+
178
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
140
179
 
141
180
  ### SFNode [in, out] **navigationInfo** NULL <small>[NavigationInfo]</small>
142
181
 
143
- The navigationInfo field defines a dedicated NavigationInfo node for this X3DViewpointNode. The specified NavigationInfo node receives a set_bind TRUE event at the time when the parent node is bound and receives a set_bind FALSE at the time when the parent node is unbound.
182
+ The *navigationInfo* field defines a dedicated NavigationInfo node for this X3DViewpointNode. The specified NavigationInfo node receives a set_bind TRUE event at the time when the parent node is bound and receives a set_bind FALSE at the time when the parent node is unbound.
144
183
 
145
184
  #### Hint
146
185
 
147
186
  - Allows simple integration of custom navigation associated with each Viewpoint according to user needs at that location.
148
187
 
149
- ## Description
188
+ ## Advisories
150
189
 
151
- ### Hint
190
+ ### Hints
152
191
 
153
- - NavigationInfo, Background, TextureBackground, Fog, OrthoViewpoint and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
192
+ - Background, Fog, GeoViewpoint, NavigationInfo, OrthoViewpoint, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
193
+ - GeoViewpoint OrthoViewpoint and Viewpoint share the same binding stack, so no more than one of these nodes can be bound and active at a given time.
194
+ - Regardless of viewpoint jump value at bind time, the relative viewing transformation between user's view and defined position/orientation is stored for later use when un-jumping (returning to the viewpoint when subsequent viewpoint is unbound).
195
+ - Customizable design pattern for dedicated Viewpoint/NavigationInfo pair: \<Viewpoint DEF='SpecialView'/\> \<NavigationInfo DEF='SpecialNav'/\> \<ROUTE fromNode='SpecialView' fromField='isBound' toNode='SpecialNav' toField='set_bind'/\>
196
+ - [X3D Scene Authoring Hints, Viewpoints](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Viewpoints){:target="_blank"}
154
197
 
155
- ### Warning
198
+ ### Warnings
156
199
 
157
- - Do not include Viewpoint or OrthoViewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
200
+ - Results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
201
+ - Do not include GeoViewpoint OrthoViewpoint or Viewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
158
202
 
159
203
  ## Example
160
204
 
161
205
  <x3d-canvas src="https://create3000.github.io/media/examples/Navigation/OrthoViewpoint/OrthoViewpoint.x3d" update="auto"></x3d-canvas>
162
206
 
163
- ## External Links
207
+ ## See Also
164
208
 
165
- - [X3D Specification of OrthoViewpoint](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#OrthoViewpoint){:target="_blank"}
166
- - [X3D Scene Authoring Hints, Viewpoints](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Viewpoints){:target="_blank"}
209
+ - [X3D Specification of OrthoViewpoint node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#OrthoViewpoint){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: Viewpoint
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Navigation
5
5
  categories: [components, Navigation]
6
6
  tags: [Viewpoint, Navigation]
@@ -13,9 +13,9 @@ tags: [Viewpoint, Navigation]
13
13
 
14
14
  ## Overview
15
15
 
16
- Viewpoint provides a specific location and direction where the user may view the scene.
16
+ Viewpoint provides a specific location and direction where the user may view the scene. Viewpoints are the primary way for a user to navigate within a scene, and for an author to show critical aspects of a model.
17
17
 
18
- The Viewpoint node belongs to the **Navigation** component and its default container field is *children.* It is available since X3D version 2.0 or later.
18
+ The Viewpoint node belongs to the **Navigation** 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
 
@@ -31,23 +31,39 @@ The Viewpoint node belongs to the **Navigation** component and its default conta
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] **set_bind**
37
41
 
38
- Sending event set_bind=true makes this node active. Sending event set_bind=false makes this node inactive. Thus setting set_bind to true/false will pop/push (enable/disable) this Viewpoint.
42
+ Sending event *set_bind*=true makes this node active. Sending event *set_bind*=false makes this node inactive. Thus setting *set_bind* to true/false will pop/push (enable/disable) this Viewpoint.
43
+
44
+ #### Hint
45
+
46
+ - Paired node operations can be established by connecting *set_bind* and isBound fields of corresponding bindable nodes.
47
+
48
+ #### Warning
49
+
50
+ - It is an error to define this transient inputOnly field in an X3D file, instead only use it a destination for ROUTE events.
39
51
 
40
52
  ### SFString [in, out] **description** ""
41
53
 
42
- Text description or navigation hint to identify this Viewpoint.
54
+ Text *description* or navigation hint to describe the significance of this model Viewpoint.
43
55
 
44
56
  #### Hints
45
57
 
46
- - Use spaces, make descriptions clear and readable. Many XML tools substitute XML character references automatically if needed (such as &amp;#38; for &amp; ampersand, or &amp;#34; for " quotation mark).
58
+ - A sequence of good Viewpoints with understandable descriptions can provide a guided tour of a model.
59
+ - The currently bound NavigationInfo node has a major effect on how a user might change viewing position and orientation after reaching this Viewpoint.
60
+ - Consider paired Viewpoint/NavigationInfo node combinations by defining ROUTE connections between corresponding isBound/set_bind fields.
61
+ - Include space characters since a *description* is not a DEF identifier. Write short phrases that make descriptions clear and readable.
62
+ - 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).
47
63
 
48
64
  #### Warning
49
65
 
50
- - Without description, this Viewpoint is unlikely to appear on browser Viewpoints menu.
66
+ - Without *description*, this Viewpoint is unlikely to appear on browser Viewpoint menus.
51
67
 
52
68
  ### SFVec3f [in, out] **position** 0 0 10 <small>(-∞,∞)</small>
53
69
 
@@ -59,7 +75,12 @@ Rotation (axis, angle in radians) of Viewpoint, relative to default -Z axis dire
59
75
 
60
76
  #### Hints
61
77
 
62
- - This is orientation \_change\_ from default direction (0 0 -1). Complex rotations can be accomplished axis-by-axis using parent Transforms.
78
+ - This is *orientation* _change_ from default direction (0 0 -1).
79
+ - Complex rotations can be accomplished axis-by-axis using parent Transforms.
80
+
81
+ #### Warning
82
+
83
+ - For VR/AR/MAR users wearing a head-mounted display (HMD), animating this field may induce motion sickness.
63
84
 
64
85
  ### SFVec3f [in, out] **centerOfRotation** 0 0 0 <small>(-∞,∞)</small>
65
86
 
@@ -67,43 +88,44 @@ Rotation (axis, angle in radians) of Viewpoint, relative to default -Z axis dire
67
88
 
68
89
  ### SFFloat [in, out] **fieldOfView** π/4 <small>(0,π)</small>
69
90
 
70
- Preferred minimum viewing angle from this viewpoint in radians. Small field of view roughly corresponds to a telephoto lens, large field of view roughly corresponds to a wide-angle lens.
91
+ Preferred minimum viewing angle from this viewpoint in radians, providing minimum height or minimum width (whichever is smaller). Small field of view roughly corresponds to a telephoto lens, large field of view roughly corresponds to a wide-angle lens.
71
92
 
72
93
  #### Hint
73
94
 
74
95
  - Modifying Viewpoint distance to object may be better for zooming.
75
96
 
76
- #### Warning
97
+ #### Warnings
77
98
 
78
- - *fieldOfView* may not be correct for different window sizes and aspect ratios. Interchange profile hint: this field may be ignored, applying the default value regardless.
99
+ - *fieldOfView* may not be correct for different window sizes and aspect ratios.
100
+ - For VR/AR/MAR users wearing a head-mounted display (HMD), animating this field may induce motion sickness. Interchange profile hint: this field may be ignored, applying the default value regardless.
79
101
 
80
102
  ### SFFloat [in, out] **nearDistance** -1 <small>-1 or (0,∞)</small>
81
103
 
82
- nearDistance defines minimum clipping plane distance necessary for object display.
104
+ *nearDistance* defines minimum clipping plane distance necessary for object display.
83
105
 
84
106
  #### Hints
85
107
 
86
- - overrides bound NavigationInfo visibilityLimit value, if any.
87
- - default value -1 means no effect on currently defined view frustum boundaries.
108
+ - Overrides bound NavigationInfo avatarSize value, if any.
109
+ - Default value -1 means no effect on currently defined view frustum boundaries.
88
110
  - [Aliasing](https://en.wikipedia.org/wiki/Aliasing){:target="_blank"} and [Clipping](https://en.wikipedia.org/wiki/Clipping_(computer_graphics)){:target="_blank"}
89
111
 
90
- #### Warnings
112
+ #### Warning
91
113
 
92
- - nearDistance must be less than farDistance.
114
+ - *nearDistance* must be less than farDistance.
93
115
 
94
116
  ### SFFloat [in, out] **farDistance** -1 <small>-1 or (0,∞)</small>
95
117
 
96
- farDistance defines maximum clipping plane distance allowed for object display.
118
+ *farDistance* defines maximum clipping plane distance allowed for object display.
97
119
 
98
120
  #### Hints
99
121
 
100
- - overrides bound NavigationInfo visibilityLimit value, if any.
101
- - default value -1 means no effect on currently defined view frustum boundaries.
122
+ - Overrides bound NavigationInfo visibilityLimit value, if any.
123
+ - Default value -1 means no effect on currently defined view frustum boundaries.
102
124
  - [Aliasing](https://en.wikipedia.org/wiki/Aliasing){:target="_blank"} and [Clipping](https://en.wikipedia.org/wiki/Clipping_(computer_graphics)){:target="_blank"}
103
125
 
104
- #### Warnings
126
+ #### Warning
105
127
 
106
- - nearDistance must be less than farDistance.
128
+ - NearDistance must be less than *farDistance*.
107
129
 
108
130
  ### SFBool [in, out] **viewAll** FALSE
109
131
 
@@ -111,20 +133,25 @@ Viewpoint is automatically adjusted to view all visible geometry. Typically cent
111
133
 
112
134
  #### Hints
113
135
 
114
- - no collision detection or proximity sensing occurs when zooming.
115
- - when the value of the viewAll field is changed from TRUE to FALSE, no change in the current view occurs.
136
+ - No collision detection or proximity sensing occurs when zooming.
137
+ - When the value of the *viewAll* field is changed from TRUE to FALSE, no change in the current view occurs.
116
138
 
117
139
  #### Warning
118
140
 
119
- - if needed, near and far clipping planes shall be adjusted to allow viewing the entire scene.
141
+ - If needed, near and far clipping planes shall be adjusted to allow viewing the entire scene.
120
142
 
121
143
  ### SFBool [in, out] **jump** TRUE
122
144
 
123
- Transition instantly by jumping, or smoothly adjust offsets in place when changing to this Viewpoint.
145
+ Transition instantly by jumping, otherwise smoothly adjust offsets in place when changing to this Viewpoint.
124
146
 
125
- #### Hint
147
+ #### Hints
126
148
 
127
- - Set jump=true for smooth camera motion when going to this viewpoint.
149
+ - See NavigationInfo.transitionType for the manner in which animated Viewpoint transistions occur.
150
+ - Set *jump*=true for instantaneous camera motion when going to this viewpoint.
151
+
152
+ #### Warning
153
+
154
+ - For VR/AR/MAR users wearing head-mounted displays, animating transitions between viewpoints may induce motion sickness.
128
155
 
129
156
  ### SFBool [in, out] **retainUserOffsets** FALSE
130
157
 
@@ -132,35 +159,55 @@ Retain (true) or reset to zero (false) any prior user navigation offsets from de
132
159
 
133
160
  ### SFBool [out] **isBound**
134
161
 
135
- Event true sent when node becomes active, event false sent when unbound by another node.
162
+ Output event true gets sent when node becomes bound and activated, otherwise output event false gets sent when node becomes unbound and deactivated.
163
+
164
+ #### Hint
165
+
166
+ - Paired node operations can be established by connecting set_bind and *isBound* fields of corresponding bindable nodes.
167
+
168
+ #### Warning
169
+
170
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
136
171
 
137
172
  ### SFTime [out] **bindTime**
138
173
 
139
- Event sent when node becomes active/inactive.
174
+ Event sent reporting timestamp when node becomes active/inactive.
175
+
176
+ #### Warning
177
+
178
+ - It is an error to define this transient outputOnly field in an X3D file, instead only use it a source for ROUTE events.
140
179
 
141
180
  ### SFNode [in, out] **navigationInfo** NULL <small>[NavigationInfo]</small>
142
181
 
143
- The navigationInfo field defines a dedicated NavigationInfo node for this X3DViewpointNode. The specified NavigationInfo node receives a set_bind TRUE event at the time when the parent node is bound and receives a set_bind FALSE at the time when the parent node is unbound.
182
+ The *navigationInfo* field defines a dedicated NavigationInfo node for this X3DViewpointNode. The specified NavigationInfo node receives a set_bind TRUE event at the time when the parent node is bound and receives a set_bind FALSE at the time when the parent node is unbound.
144
183
 
145
184
  #### Hint
146
185
 
147
186
  - Allows simple integration of custom navigation associated with each Viewpoint according to user needs at that location.
148
187
 
149
- ## Description
188
+ ## Advisories
150
189
 
151
- ### Hint
190
+ ### Hints
152
191
 
153
- - NavigationInfo, Background, TextureBackground, Fog, OrthoViewpoint and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
192
+ - A sequence of good Viewpoints with understandable descriptions can provide a guided tour of a model.
193
+ - The currently bound NavigationInfo node has a major effect on how a user might change viewing position and orientation after reaching this Viewpoint.
194
+ - Consider paired Viewpoint/NavigationInfo node combinations by defining ROUTE connections between corresponding isBound/set_bind fields.
195
+ - Consider how users might interact with the current X3D model, either standalone or as an Inline within a larger parent scene.
196
+ - Background, Fog, GeoViewpoint, NavigationInfo, OrthoViewpoint, TextureBackground and Viewpoint are bindable nodes, meaning that no more than one of each node type can be active at a given time.
197
+ - GeoViewpoint OrthoViewpoint and Viewpoint share the same binding stack, so no more than one of these nodes can be bound and active at a given time.
198
+ - Regardless of viewpoint jump value at bind time, the relative viewing transformation between user's view and defined position/orientation is stored for later use when un-jumping (returning to the viewpoint when subsequent viewpoint is unbound).
199
+ - Customizable design pattern for dedicated Viewpoint/NavigationInfo pair: \<Viewpoint DEF='SpecialView'/\> \<NavigationInfo DEF='SpecialNav'/\> \<ROUTE fromNode='SpecialView' fromField='isBound' toNode='SpecialNav' toField='set_bind'/\>
200
+ - [X3D Scene Authoring Hints, Viewpoints](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Viewpoints){:target="_blank"}
154
201
 
155
- ### Warning
202
+ ### Warnings
156
203
 
157
- - Do not include Viewpoint or OrthoViewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
204
+ - Results are undefined if a bindable node (Background, Fog, NavigationInfo, OrthoViewpoint, TextureBackground, Viewpoint) is a contained descendant node of either LOD or Switch. Avoid this authoring pattern.
205
+ - Do not include GeoViewpoint OrthoViewpoint or Viewpoint as a child of LOD or Switch, instead use ViewpointGroup as parent to constrain location proximity where the viewpoint is available to user.
158
206
 
159
207
  ## Example
160
208
 
161
209
  <x3d-canvas src="https://create3000.github.io/media/examples/Navigation/Viewpoint/Viewpoint.x3d" update="auto"></x3d-canvas>
162
210
 
163
- ## External Links
211
+ ## See Also
164
212
 
165
- - [X3D Specification of Viewpoint](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Viewpoint){:target="_blank"}
166
- - [X3D Scene Authoring Hints, Viewpoints](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Viewpoints){:target="_blank"}
213
+ - [X3D Specification of Viewpoint node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Viewpoint){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: ViewpointGroup
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Navigation
5
5
  categories: [components, Navigation]
6
6
  tags: [ViewpointGroup, Navigation]
@@ -13,9 +13,9 @@ tags: [ViewpointGroup, Navigation]
13
13
 
14
14
  ## Overview
15
15
 
16
- ViewpointGroup collects Viewpoint, OrthoViewpoint and other ViewpointGroup nodes for better user-navigation support with a shared description on the viewpoint list.
16
+ ViewpointGroup can contain Viewpoint, OrthoViewpoint, GeoViewpoint and other ViewpointGroup nodes for better user-navigation support with a shared description on the viewpoint list.
17
17
 
18
- The ViewpointGroup node belongs to the **Navigation** component and its default container field is *children.* It is available since X3D version 3.2 or later.
18
+ The ViewpointGroup node belongs to the **Navigation** 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
 
@@ -29,23 +29,28 @@ The ViewpointGroup node belongs to the **Navigation** component and its default
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
  ### SFString [in, out] **description** ""
35
39
 
36
- Text description or navigation hint to identify this ViewpointGroup.
40
+ Text *description* or navigation hint to identify this ViewpointGroup.
37
41
 
38
42
  #### Hints
39
43
 
40
- - Use spaces, make descriptions clear and readable. Many XML tools substitute XML character references automatically if needed (such as &amp;#38; for &amp; ampersand, or &amp;#34; for " quotation mark).
44
+ - Include space characters since a *description* is not a DEF identifier. Write short phrases that make descriptions clear and readable.
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).
41
46
 
42
47
  #### Warning
43
48
 
44
- - Without description, this ViewpointGroup is unlikely to appear on browser Viewpoints menu.
49
+ - Without *description*, this ViewpointGroup is unlikely to appear on browser Viewpoint menus.
45
50
 
46
51
  ### SFBool [in, out] **displayed** TRUE
47
52
 
48
- *displayed* determines whether this ViewpointGroup is displayed in the current viewpoint list.
53
+ *displayed* determines whether this ViewpointGroup is *displayed* in the current viewpoint list.
49
54
 
50
55
  ### SFBool [in, out] **retainUserOffsets** FALSE
51
56
 
@@ -53,28 +58,34 @@ Retain (true) or reset to zero (false) any prior user navigation offsets from de
53
58
 
54
59
  ### SFVec3f [in, out] **size** 0 0 0 <small>(-∞,∞)</small>
55
60
 
56
- *size* of proximity box around center location within which ViewpointGroup is usable and displayed on viewpoint list.
61
+ Size of proximity box around center location within which ViewpointGroup is usable and displayed on viewpoint list.
57
62
 
58
63
  #### Hint
59
64
 
60
- - Size 0 0 0 specifies that ViewpointGroup is always usable and displayable.
65
+ - *size* 0 0 0 specifies that ViewpointGroup is always usable and displayable.
61
66
 
62
67
  ### SFVec3f [in, out] **center** 0 0 0 <small>(-∞,∞)</small>
63
68
 
64
- *center* specifies center point of proximity box within which ViewpointGroup is usable and displayed on viewpoint list.
69
+ *center* specifies *center* point of proximity box within which ViewpointGroup is usable and displayed on viewpoint list.
65
70
 
66
71
  ### MFNode [in, out] **children** [ ] <small>[X3DViewpointNode | ViewpointGroup]</small>
67
72
 
68
- Input/Output field children.
73
+ ViewpointGroup contains Viewpoint, OrthoViewpoint, GeoViewpoint and other ViewpointGroup nodes that each have `containerField='children'` default value.
74
+
75
+ #### Hints
76
+
77
+ - InputOnly MFNode addChildren field can append new X3DChildNode nodes via a ROUTE connection, duplicate input nodes (i.e. matching DEF, USE values) are ignored.
78
+ - InputOnly MFNode removeChildren field can remove nodes from the *children* list, unrecognized input nodes (i.e. nonmatching DEF, USE values) are ignored.
79
+ - [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"}
69
80
 
70
- ## Description
81
+ ## Advisories
71
82
 
72
83
  ### Hints
73
84
 
74
- - Use ViewpointGroup as parent for Viewpoint and OrthoViewpoint to constrain location proximity where contained viewpoints are available to user.
85
+ - Use ViewpointGroup as parent for Viewpoint, OrthoViewpoint, GeoViewpoint and other ViewpointGroup nodes to constrain location proximity where contained viewpoints are available to user.
75
86
  - ViewpointGroup and OrthoViewpoint require Navigation component level 3, which is higher than CADInterchange profile.
76
- - Viewpoint and ViewpointGroup descriptions together build simple menu/submenu lists for simple user navigation.
87
+ - Viewpoint and ViewpointGroup descriptions together build simple menu/submenu lists for simple user navigation. ViewpointGroup is not an X3DGroupingNode, and can only contain a Metadata* node, Viewpoint, OrthoViewpoint, GeoViewpoint and other ViewpointGroup nodes.
77
88
 
78
- ## External Links
89
+ ## See Also
79
90
 
80
- - [X3D Specification of ViewpointGroup](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#ViewpointGroup){:target="_blank"}
91
+ - [X3D Specification of ViewpointGroup node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#ViewpointGroup){:target="_blank"}