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: IndexedTriangleFanSet
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Rendering
5
5
  categories: [components, Rendering]
6
6
  tags: [IndexedTriangleFanSet, Rendering]
@@ -13,9 +13,9 @@ tags: [IndexedTriangleFanSet, Rendering]
13
13
 
14
14
  ## Overview
15
15
 
16
- IndexedTriangleFanSet is a geometry node that can contain a Color/ColorRGBA, Coordinate/CoordinateDouble, Normal and TextureCoordinate nodes.
16
+ IndexedTriangleFanSet is a geometry node containing a Coordinate or CoordinateDouble node, and can also contain Color or ColorRGBA, Normal and TextureCoordinate nodes.
17
17
 
18
- The IndexedTriangleFanSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available since X3D version 3.0 or later.
18
+ The IndexedTriangleFanSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available from X3D version 3.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,23 +30,25 @@ The IndexedTriangleFanSet node belongs to the **Rendering** component and its de
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
34
 
35
- ### MFInt32 [in] **set_index** <small>[0,∞) or -1</small>
35
+ #### Hint
36
36
 
37
- *index* list specifies triangles by connecting Coordinate vertices, each individual fan separated by -1 sentinel value.
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
38
38
 
39
- #### Hint
39
+ ### MFInt32 [in] **set_index** <small>[0,∞) or -1</small>
40
40
 
41
- - First indexed coordinate in each sequence is fan center.
41
+ Input field *set_index*.
42
42
 
43
43
  ### SFBool [ ] **solid** TRUE
44
44
 
45
- Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
45
+ Setting *solid* true means draw only one side of polygons (backface culling on), setting *solid* false means draw both sides of polygons (backface culling off).
46
46
 
47
- #### Hint
47
+ #### Hints
48
48
 
49
- - If in doubt, use solid='false' for maximum visibility.
49
+ - Mnemonic "this geometry is *solid* like a brick" (you don't render the inside of a brick).
50
+ - If in doubt, use *solid*='false' for maximum visibility.
51
+ - (X3D version 4.0 draft) accessType relaxed to inputOutput in order to support animation and visualization.
50
52
 
51
53
  #### Warning
52
54
 
@@ -54,23 +56,37 @@ Setting solid true means draw only one side of polygons (backface culling on), s
54
56
 
55
57
  ### SFBool [ ] **ccw** TRUE
56
58
 
57
- *ccw* = counterclockwise: ordering of vertex coordinates orientation.
59
+ *ccw* defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
58
60
 
59
- #### Hint
61
+ #### Hints
62
+
63
+ - A good debugging technique for problematic polygons is to try changing the value of *ccw*, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
64
+ - [Clockwise](https://en.wikipedia.org/wiki/Clockwise){:target="_blank"}
65
+
66
+ #### Warning
60
67
 
61
- - *ccw* false can reverse solid (backface culling) and normal-vector orientation.
68
+ - Consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
62
69
 
63
70
  ### SFBool [ ] **colorPerVertex** TRUE
64
71
 
65
- Whether Color node color values are applied to each vertex (true) or to each polygon face (false).
72
+ Whether Color or ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
66
73
 
67
- #### See Also
74
+ #### Hint
68
75
 
69
76
  - [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
70
77
 
78
+ #### Warnings
79
+
80
+ - The provided value of IndexedTriangleFanSet *colorPerVertex* field is ignored and always treated as true.
81
+ - If child Color or ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
82
+
71
83
  ### SFBool [ ] **normalPerVertex** TRUE
72
84
 
73
- Whether Normal node vector values are applied to each vertex (true) or to each polygon face (false).
85
+ Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
86
+
87
+ #### Hint
88
+
89
+ - If no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
74
90
 
75
91
  ### MFInt32 [ ] **index** [ ] <small>[0,∞) or -1</small>
76
92
 
@@ -82,7 +98,7 @@ Whether Normal node vector values are applied to each vertex (true) or to each p
82
98
 
83
99
  ### MFNode [in, out] **attrib** [ ] <small>[X3DVertexAttributeNode]</small>
84
100
 
85
- Multiple contained FloatVertexAttribute nodes that can specify list of per-vertex attribute information for programmable shaders.
101
+ Single contained FloatVertexAttribute node that can specify list of per-vertex attribute information for programmable shaders.
86
102
 
87
103
  #### Hint
88
104
 
@@ -94,7 +110,7 @@ Single contained FogCoordinate node that can specify depth parameters for fog in
94
110
 
95
111
  ### SFNode [in, out] **color** NULL <small>[X3DColorNode]</small>
96
112
 
97
- Single contained Color or ColorRGBA node that can specify color values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
113
+ Single contained Color or ColorRGBA node that can specify *color* values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
98
114
 
99
115
  ### SFNode [in, out] **texCoord** NULL <small>[X3DTextureCoordinateNode]</small>
100
116
 
@@ -108,21 +124,26 @@ Single contained Normal node that can specify perpendicular vectors for correspo
108
124
 
109
125
  - Useful for special effects. Normal vector computation by 3D graphics hardware is quite fast so adding normals to a scene is typically unnecessary.
110
126
 
127
+ #### Warning
128
+
129
+ - *normal* vectors increase file size, typically doubling geometry definitions.
130
+
111
131
  ### SFNode [in, out] **coord** NULL <small>[X3DCoordinateNode]</small>
112
132
 
113
133
  Single contained Coordinate or CoordinateDouble node that can specify a list of vertex values.
114
134
 
115
- ## Description
135
+ ## Advisories
116
136
 
117
137
  ### Hints
118
138
 
139
+ - Color, normal and texCoord values are applied in the same order as coord values.
119
140
  - Insert a Shape node before adding geometry or Appearance.
120
- - You can also substitute a type-matched ProtoInstance node for contained content.
141
+ - For advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
121
142
 
122
143
  ## Example
123
144
 
124
145
  <x3d-canvas src="https://create3000.github.io/media/examples/Rendering/IndexedTriangleFanSet/IndexedTriangleFanSet.x3d" update="auto"></x3d-canvas>
125
146
 
126
- ## External Links
147
+ ## See Also
127
148
 
128
- - [X3D Specification of IndexedTriangleFanSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedTriangleFanSet){:target="_blank"}
149
+ - [X3D Specification of IndexedTriangleFanSet node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedTriangleFanSet){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: IndexedTriangleSet
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Rendering
5
5
  categories: [components, Rendering]
6
6
  tags: [IndexedTriangleSet, Rendering]
@@ -13,9 +13,9 @@ tags: [IndexedTriangleSet, Rendering]
13
13
 
14
14
  ## Overview
15
15
 
16
- IndexedTriangleSet is a geometry node that can contain a Color/ColorRGBA, Coordinate/CoordinateDouble, Normal and TextureCoordinate nodes.
16
+ IndexedTriangleSet is a geometry node containing a Coordinate or CoordinateDouble node, and can also contain Color or ColorRGBA, Normal and TextureCoordinate nodes.
17
17
 
18
- The IndexedTriangleSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available since X3D version 3.0 or later.
18
+ The IndexedTriangleSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available from X3D version 3.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,23 +30,25 @@ The IndexedTriangleSet node belongs to the **Rendering** component and its defau
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
34
 
35
- ### MFInt32 [in] **set_index** <small>[0,∞)</small>
35
+ #### Hint
36
36
 
37
- *index* list specifies triangles by connecting Coordinate vertices.
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
38
38
 
39
- #### Warning
39
+ ### MFInt32 [in] **set_index** <small>[0,∞)</small>
40
40
 
41
- - -1 sentinel values are not allowed.
41
+ Input field *set_index*.
42
42
 
43
43
  ### SFBool [ ] **solid** TRUE
44
44
 
45
- Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
45
+ Setting *solid* true means draw only one side of polygons (backface culling on), setting *solid* false means draw both sides of polygons (backface culling off).
46
46
 
47
- #### Hint
47
+ #### Hints
48
48
 
49
- - If in doubt, use solid='false' for maximum visibility.
49
+ - Mnemonic "this geometry is *solid* like a brick" (you don't render the inside of a brick).
50
+ - If in doubt, use *solid*='false' for maximum visibility.
51
+ - (X3D version 4.0 draft) accessType relaxed to inputOutput in order to support animation and visualization.
50
52
 
51
53
  #### Warning
52
54
 
@@ -54,23 +56,37 @@ Setting solid true means draw only one side of polygons (backface culling on), s
54
56
 
55
57
  ### SFBool [ ] **ccw** TRUE
56
58
 
57
- *ccw* = counterclockwise: ordering of vertex coordinates orientation.
59
+ *ccw* defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
58
60
 
59
- #### Hint
61
+ #### Hints
62
+
63
+ - A good debugging technique for problematic polygons is to try changing the value of *ccw*, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
64
+ - [Clockwise](https://en.wikipedia.org/wiki/Clockwise){:target="_blank"}
65
+
66
+ #### Warning
60
67
 
61
- - *ccw* false can reverse solid (backface culling) and normal-vector orientation.
68
+ - Consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
62
69
 
63
70
  ### SFBool [ ] **colorPerVertex** TRUE
64
71
 
65
- Whether Color node color values are applied to each vertex (true) or to each polygon face (false).
72
+ Whether Color or ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
66
73
 
67
- #### See Also
74
+ #### Hint
68
75
 
69
76
  - [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
70
77
 
78
+ #### Warnings
79
+
80
+ - The provided value of IndexedTriangleSet *colorPerVertex* field is ignored and always treated as true.
81
+ - If child Color or ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
82
+
71
83
  ### SFBool [ ] **normalPerVertex** TRUE
72
84
 
73
- Whether Normal node vector values are applied to each vertex (true) or to each polygon face (false).
85
+ Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
86
+
87
+ #### Hint
88
+
89
+ - If no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
74
90
 
75
91
  ### MFInt32 [ ] **index** [ ] <small>[0,∞)</small>
76
92
 
@@ -82,7 +98,7 @@ Whether Normal node vector values are applied to each vertex (true) or to each p
82
98
 
83
99
  ### MFNode [in, out] **attrib** [ ] <small>[X3DVertexAttributeNode]</small>
84
100
 
85
- Multiple contained FloatVertexAttribute nodes that can specify list of per-vertex attribute information for programmable shaders.
101
+ Single contained FloatVertexAttribute node that can specify list of per-vertex attribute information for programmable shaders.
86
102
 
87
103
  #### Hint
88
104
 
@@ -94,7 +110,7 @@ Single contained FogCoordinate node that can specify depth parameters for fog in
94
110
 
95
111
  ### SFNode [in, out] **color** NULL <small>[X3DColorNode]</small>
96
112
 
97
- Single contained Color or ColorRGBA node that can specify color values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
113
+ Single contained Color or ColorRGBA node that can specify *color* values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
98
114
 
99
115
  ### SFNode [in, out] **texCoord** NULL <small>[X3DTextureCoordinateNode]</small>
100
116
 
@@ -108,21 +124,26 @@ Single contained Normal node that can specify perpendicular vectors for correspo
108
124
 
109
125
  - Useful for special effects. Normal vector computation by 3D graphics hardware is quite fast so adding normals to a scene is typically unnecessary.
110
126
 
127
+ #### Warning
128
+
129
+ - *normal* vectors increase file size, typically doubling geometry definitions.
130
+
111
131
  ### SFNode [in, out] **coord** NULL <small>[X3DCoordinateNode]</small>
112
132
 
113
133
  Single contained Coordinate or CoordinateDouble node that can specify a list of vertex values.
114
134
 
115
- ## Description
135
+ ## Advisories
116
136
 
117
137
  ### Hints
118
138
 
139
+ - Color, normal and texCoord values are applied in the same order as coord values.
119
140
  - Insert a Shape node before adding geometry or Appearance.
120
- - You can also substitute a type-matched ProtoInstance node for contained content.
141
+ - For advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
121
142
 
122
143
  ## Example
123
144
 
124
- <x3d-canvas src="https://create3000.github.io/media/examples/Rendering/IndexedTriangleSet/IndexedTriangleSet.x3d" update="auto"></x3d-canvas>[/c3-source-example]
145
+ <x3d-canvas src="https://create3000.github.io/media/examples/Rendering/IndexedTriangleSet/IndexedTriangleSet.x3d" update="auto"></x3d-canvas>
125
146
 
126
- ## External Links
147
+ ## See Also
127
148
 
128
- - [X3D Specification of IndexedTriangleSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedTriangleSet){:target="_blank"}
149
+ - [X3D Specification of IndexedTriangleSet node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedTriangleSet){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: IndexedTriangleStripSet
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Rendering
5
5
  categories: [components, Rendering]
6
6
  tags: [IndexedTriangleStripSet, Rendering]
@@ -13,9 +13,9 @@ tags: [IndexedTriangleStripSet, Rendering]
13
13
 
14
14
  ## Overview
15
15
 
16
- IndexedTriangleStripSet is a geometry node that can contain a Color/ColorRGBA, Coordinate/CoordinateDouble, Normal and TextureCoordinate nodes.
16
+ IndexedTriangleStripSet is a geometry node containing a Coordinate or CoordinateDouble node, and can also contain Color or ColorRGBA, Normal and TextureCoordinate nodes.
17
17
 
18
- The IndexedTriangleStripSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available since X3D version 3.0 or later.
18
+ The IndexedTriangleStripSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available from X3D version 3.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,19 +30,25 @@ The IndexedTriangleStripSet node belongs to the **Rendering** component and its
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
+
35
+ #### Hint
36
+
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
38
 
35
39
  ### MFInt32 [in] **set_index** <small>[0,∞) or −1</small>
36
40
 
37
- *index* list specifies triangles by connecting Coordinate vertices for each individual strip, separated by -1 sentinel values.
41
+ Input field *set_index*.
38
42
 
39
43
  ### SFBool [ ] **solid** TRUE
40
44
 
41
- Setting solid true means draw only one side of polygons (backface culling on), setting solid false means draw both sides of polygons (backface culling off).
45
+ Setting *solid* true means draw only one side of polygons (backface culling on), setting *solid* false means draw both sides of polygons (backface culling off).
42
46
 
43
- #### Hint
47
+ #### Hints
44
48
 
45
- - If in doubt, use solid='false' for maximum visibility.
49
+ - Mnemonic "this geometry is *solid* like a brick" (you don't render the inside of a brick).
50
+ - If in doubt, use *solid*='false' for maximum visibility.
51
+ - (X3D version 4.0 draft) accessType relaxed to inputOutput in order to support animation and visualization.
46
52
 
47
53
  #### Warning
48
54
 
@@ -50,23 +56,37 @@ Setting solid true means draw only one side of polygons (backface culling on), s
50
56
 
51
57
  ### SFBool [ ] **ccw** TRUE
52
58
 
53
- *ccw* = counterclockwise: ordering of vertex coordinates orientation.
59
+ *ccw* defines clockwise/counterclockwise ordering of vertex coordinates, which in turn defines front/back orientation of polygon normals according to Right-Hand Rule (RHR).
54
60
 
55
- #### Hint
61
+ #### Hints
62
+
63
+ - A good debugging technique for problematic polygons is to try changing the value of *ccw*, which can reverse solid effects (single-sided backface culling) and normal-vector direction.
64
+ - [Clockwise](https://en.wikipedia.org/wiki/Clockwise){:target="_blank"}
65
+
66
+ #### Warning
56
67
 
57
- - *ccw* false can reverse solid (backface culling) and normal-vector orientation.
68
+ - Consistent and correct ordering of left-handed or right-handed point sequences is important throughout the coord array of point values.
58
69
 
59
70
  ### SFBool [ ] **colorPerVertex** TRUE
60
71
 
61
- Whether Color node color values are applied to each vertex (true) or to each polygon face (false).
72
+ Whether Color or ColorRGBA values are applied to each point vertex (true) or to each polygon face (false).
62
73
 
63
- #### See Also
74
+ #### Hint
64
75
 
65
76
  - [X3D Scene Authoring Hints, Color](https://www.web3d.org/x3d/content/examples/X3dSceneAuthoringHints.html#Color){:target="_blank"}
66
77
 
78
+ #### Warnings
79
+
80
+ - The provided value of IndexedTriangleStripSet *colorPerVertex* field is ignored and always treated as true.
81
+ - If child Color or ColorRGBA node is not provided, then geometry is rendered using corresponding Appearance and material/texture values.
82
+
67
83
  ### SFBool [ ] **normalPerVertex** TRUE
68
84
 
69
- Whether Normal node vector values are applied to each vertex (true) or to each polygon face (false).
85
+ Whether Normal node vector values are applied to each point vertex (true) or to each polygon face (false).
86
+
87
+ #### Hint
88
+
89
+ - If no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
70
90
 
71
91
  ### MFInt32 [ ] **index** [ ] <small>[0,∞) or −1</small>
72
92
 
@@ -74,7 +94,7 @@ Whether Normal node vector values are applied to each vertex (true) or to each p
74
94
 
75
95
  ### MFNode [in, out] **attrib** [ ] <small>[X3DVertexAttributeNode]</small>
76
96
 
77
- Multiple contained FloatVertexAttribute nodes that can specify list of per-vertex attribute information for programmable shaders.
97
+ Single contained FloatVertexAttribute node that can specify list of per-vertex attribute information for programmable shaders.
78
98
 
79
99
  #### Hint
80
100
 
@@ -86,7 +106,7 @@ Single contained FogCoordinate node that can specify depth parameters for fog in
86
106
 
87
107
  ### SFNode [in, out] **color** NULL <small>[X3DColorNode]</small>
88
108
 
89
- Single contained Color or ColorRGBA node that can specify color values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
109
+ Single contained Color or ColorRGBA node that can specify *color* values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
90
110
 
91
111
  ### SFNode [in, out] **texCoord** NULL <small>[X3DTextureCoordinateNode]</small>
92
112
 
@@ -100,17 +120,22 @@ Single contained Normal node that can specify perpendicular vectors for correspo
100
120
 
101
121
  - Useful for special effects. Normal vector computation by 3D graphics hardware is quite fast so adding normals to a scene is typically unnecessary.
102
122
 
123
+ #### Warning
124
+
125
+ - *normal* vectors increase file size, typically doubling geometry definitions.
126
+
103
127
  ### SFNode [in, out] **coord** NULL <small>[X3DCoordinateNode]</small>
104
128
 
105
129
  Single contained Coordinate or CoordinateDouble node that can specify a list of vertex values.
106
130
 
107
- ## Description
131
+ ## Advisories
108
132
 
109
133
  ### Hints
110
134
 
135
+ - Color, normal and texCoord values are applied in the same order as coord values.
111
136
  - Insert a Shape node before adding geometry or Appearance.
112
- - You can also substitute a type-matched ProtoInstance node for contained content.
137
+ - For advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
113
138
 
114
- ## External Links
139
+ ## See Also
115
140
 
116
- - [X3D Specification of IndexedTriangleStripSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedTriangleStripSet){:target="_blank"}
141
+ - [X3D Specification of IndexedTriangleStripSet node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedTriangleStripSet){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: LineSet
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Rendering
5
5
  categories: [components, Rendering]
6
6
  tags: [LineSet, Rendering]
@@ -13,9 +13,9 @@ tags: [LineSet, Rendering]
13
13
 
14
14
  ## Overview
15
15
 
16
- LineSet is a geometry node that can contain a Coordinate/CoordinateDouble node and an (optional) Color/ColorRGBA node. Color values or a sibling Material emissiveColor is used to draw lines and points. Lines are not lit, are not texture-mapped, and do not participate in collision detection.
16
+ LineSet is a geometry node that can contain a Coordinate or CoordinateDouble node and optionally a Color or ColorRGBA node.
17
17
 
18
- The LineSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available since X3D version 3.0 or later.
18
+ The LineSet node belongs to the **Rendering** component and its default container field is *geometry.* It is available from X3D version 3.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -29,15 +29,19 @@ The LineSet node belongs to the **Rendering** component and its default containe
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
  ### MFInt32 [in, out] **vertexCount** [ ] <small>[2,∞)</small>
35
39
 
36
- *vertexCount* describes how many vertices are used in each individual polyline segment from the Coordinate point values. Coordinate point values are assigned as a block of points to each line by taking vertexCount[n] vertices at a time.
40
+ Vertices at a time.
37
41
 
38
42
  ### MFNode [in, out] **attrib** [ ] <small>[X3DVertexAttributeNode]</small>
39
43
 
40
- Multiple contained FloatVertexAttribute nodes that can specify list of per-vertex attribute information for programmable shaders.
44
+ Single contained FloatVertexAttribute node that can specify list of per-vertex attribute information for programmable shaders.
41
45
 
42
46
  #### Hint
43
47
 
@@ -49,7 +53,7 @@ Single contained FogCoordinate node that can specify depth parameters for fog in
49
53
 
50
54
  ### SFNode [in, out] **color** NULL <small>[X3DColorNode]</small>
51
55
 
52
- Single contained Color or ColorRGBA node that can specify color values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
56
+ Single contained Color or ColorRGBA node that can specify *color* values applied to corresponding vertices according to colorIndex and colorPerVertex fields.
53
57
 
54
58
  ### SFNode [in, out] **normal** NULL <small>[X3DNormalNode]</small>
55
59
 
@@ -61,25 +65,33 @@ Single contained Normal node that can specify perpendicular vectors for correspo
61
65
 
62
66
  #### Warning
63
67
 
64
- - Normal vectors increase file size, typically doubling geometry definitions.
68
+ - *normal* vectors increase file size, typically doubling geometry definitions.
65
69
 
66
70
  ### SFNode [in, out] **coord** NULL <small>[X3DCoordinateNode]</small>
67
71
 
68
72
  Single contained Coordinate or CoordinateDouble node that can specify a list of vertex values.
69
73
 
70
- ## Description
74
+ ## Advisories
71
75
 
72
76
  ### Hints
73
77
 
74
- - Use a different color (or emissiveColor) than the background color. Linear interpolation of colors can be used as a good scientific visualization technique to map arbitrary function values to a color map.
78
+ - [Polygonal chain](https://en.wikipedia.org/wiki/Polygonal_chain){:target="_blank"}
79
+ - Either values in a contained Color node, or else Material emissiveColor in corresponding Appearance node, are used for rendering lines and points.
80
+ - Adding LineProperties to the corresponding Appearance node can modify the rendering style of these lines.
81
+ - Step-wise variation or linear interpolation of color values can be used as a good scientific visualization technique to map arbitrary function values to a color map.
75
82
  - Insert a Shape node before adding geometry or Appearance.
76
- - You can also substitute a type-matched ProtoInstance node for contained content.
77
- - Consider including Fog to provide further depth cueing for LineSet (LS).
83
+ - For advanced extensibility, authors can substitute a type-matched ProtoInstance node (with correct containerField value) for contained node content.
84
+ - Consider including Fog (with Fog color matching Background color) to provide further depth cueing for LineSet (LS).
85
+
86
+ ### Warnings
87
+
88
+ - Lines are not lit, are not texture-mapped, and do not participate in collision detection.
89
+ - Use a different color (or Material emissiveColor) than the Background color, otherwise geometry is invisible.
78
90
 
79
91
  ## Example
80
92
 
81
93
  <x3d-canvas src="https://create3000.github.io/media/examples/Rendering/LineSet/LineSet.x3d" update="auto"></x3d-canvas>
82
94
 
83
- ## External Links
95
+ ## See Also
84
96
 
85
- - [X3D Specification of LineSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#LineSet){:target="_blank"}
97
+ - [X3D Specification of LineSet node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#LineSet){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: Normal
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-Rendering
5
5
  categories: [components, Rendering]
6
6
  tags: [Normal, Rendering]
@@ -13,9 +13,9 @@ tags: [Normal, Rendering]
13
13
 
14
14
  ## Overview
15
15
 
16
- Normal defines a set of 3D surface-normal vectors that apply either to a sibling Coordinate/CoordinateDouble node, or else to a parent ElevationGrid node. Normal values are perpendicular directions that are used per-polygon or per-vertex when computing lighting and shading.
16
+ Normal defines a set of 3D surface-normal vectors that apply either to a sibling Coordinate or CoordinateDouble node, or else to a parent ElevationGrid node. Normal values are perpendicular directions that are used per-polygon or per-vertex when computing lighting and shading.
17
17
 
18
- The Normal node belongs to the **Rendering** component and its default container field is *normal.* It is available since X3D version 2.0 or later.
18
+ The Normal node belongs to the **Rendering** component and its default container field is *normal.* It is available from X3D version 2.0 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,12 +30,34 @@ The Normal node belongs to the **Rendering** component and its default container
30
30
 
31
31
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
32
 
33
- Metadata are not part of the X3D world and not interpreted by the X3D browser, but they can be accessed via the ECMAScript interface.
33
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
34
+
35
+ #### Hint
36
+
37
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
38
 
35
39
  ### MFVec3f [in, out] **vector** [ ] <small>[-1,1]</small>
36
40
 
37
41
  Set of unit-length normal vectors, corresponding to indexed polygons or vertices.
38
42
 
39
- ## External Links
43
+ #### Warning
44
+
45
+ - Unit length means a magnitude of 1.0, so normal values of (0,0,0) are invalid.
46
+
47
+ ## Advisories
48
+
49
+ ### Hints
50
+
51
+ - Normal values are typically only calculated or applied once, during initial loading of model geometry.
52
+ - Custom Normal values can produce special effects.
53
+ - If no child Normal node is provided, the X3D browser shall automatically generate normals, using creaseAngle to determine smoothed shading across shared vertices.
54
+ - Computation of normal values is performed quite quickly on modern 3D graphics hardware, often with no perceptible delay.
55
+ - [Normal vectors perpendicular to 3D surface](https://en.wikipedia.org/wiki/Normal_(geometry)){:target="_blank"}
56
+
57
+ ### Warning
58
+
59
+ - Adding normal values to a model might significantly increase file size. Testing can help determine proper tradeoffs between file size, network transmission delays and initial rendering speed.
60
+
61
+ ## See Also
40
62
 
41
- - [X3D Specification of Normal](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Normal){:target="_blank"}
63
+ - [X3D Specification of Normal node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Normal){:target="_blank"}