x_ite 8.8.7 → 8.9.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (341) hide show
  1. package/Makefile +6 -0
  2. package/build/docs/nodes.pl +434 -0
  3. package/dist/assets/components/Annotation.js +13 -13
  4. package/dist/assets/components/Annotation.min.js +1 -1
  5. package/dist/assets/components/CADGeometry.js +13 -13
  6. package/dist/assets/components/CADGeometry.min.js +1 -1
  7. package/dist/assets/components/CubeMapTexturing.js +26 -26
  8. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  9. package/dist/assets/components/DIS.js +14 -14
  10. package/dist/assets/components/DIS.min.js +1 -1
  11. package/dist/assets/components/EventUtilities.js +9 -9
  12. package/dist/assets/components/EventUtilities.min.js +1 -1
  13. package/dist/assets/components/Geometry2D.js +19 -19
  14. package/dist/assets/components/Geometry2D.min.js +1 -1
  15. package/dist/assets/components/Geospatial.js +33 -33
  16. package/dist/assets/components/Geospatial.min.js +1 -1
  17. package/dist/assets/components/HAnim.js +18 -18
  18. package/dist/assets/components/HAnim.min.js +1 -1
  19. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  20. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  21. package/dist/assets/components/Layout.js +27 -27
  22. package/dist/assets/components/Layout.min.js +1 -1
  23. package/dist/assets/components/NURBS.js +24 -24
  24. package/dist/assets/components/NURBS.min.js +1 -1
  25. package/dist/assets/components/ParticleSystems.js +24 -24
  26. package/dist/assets/components/ParticleSystems.min.js +1 -1
  27. package/dist/assets/components/Picking.js +18 -18
  28. package/dist/assets/components/Picking.min.js +1 -1
  29. package/dist/assets/components/RigidBodyPhysics.js +18 -18
  30. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  31. package/dist/assets/components/Scripting.js +37 -37
  32. package/dist/assets/components/Scripting.min.js +1 -1
  33. package/dist/assets/components/Text.js +24 -24
  34. package/dist/assets/components/Text.min.js +1 -1
  35. package/dist/assets/components/TextureProjector.js +14 -14
  36. package/dist/assets/components/TextureProjector.min.js +1 -1
  37. package/dist/assets/components/Texturing3D.js +30 -30
  38. package/dist/assets/components/Texturing3D.min.js +1 -1
  39. package/dist/assets/components/VolumeRendering.js +18 -18
  40. package/dist/assets/components/VolumeRendering.min.js +1 -1
  41. package/dist/assets/components/X_ITE.js +9 -9
  42. package/dist/assets/components/X_ITE.min.js +1 -1
  43. package/dist/x_ite.css +1 -1
  44. package/dist/x_ite.js +965 -96
  45. package/dist/x_ite.min.js +1 -1
  46. package/dist/x_ite.zip +0 -0
  47. package/docs/_config.yml +2 -2
  48. package/docs/_posts/components/CADGeometry/CADAssembly.md +45 -19
  49. package/docs/_posts/components/CADGeometry/CADFace.md +44 -18
  50. package/docs/_posts/components/CADGeometry/CADLayer.md +48 -19
  51. package/docs/_posts/components/CADGeometry/CADPart.md +54 -24
  52. package/docs/_posts/components/CADGeometry/IndexedQuadSet.md +55 -26
  53. package/docs/_posts/components/CADGeometry/QuadSet.md +52 -20
  54. package/docs/_posts/components/Core/MetadataBoolean.md +29 -18
  55. package/docs/_posts/components/Core/MetadataDouble.md +31 -16
  56. package/docs/_posts/components/Core/MetadataFloat.md +31 -16
  57. package/docs/_posts/components/Core/MetadataInteger.md +31 -16
  58. package/docs/_posts/components/Core/MetadataSet.md +30 -15
  59. package/docs/_posts/components/Core/MetadataString.md +31 -16
  60. package/docs/_posts/components/Core/WorldInfo.md +21 -10
  61. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +30 -25
  62. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +19 -10
  63. package/docs/_posts/components/CubeMapTexturing/ImageCubeMapTexture.md +22 -18
  64. package/docs/_posts/components/DIS/DISEntityManager.md +40 -15
  65. package/docs/_posts/components/DIS/DISEntityTypeMapping.md +34 -25
  66. package/docs/_posts/components/DIS/EspduTransform.md +174 -41
  67. package/docs/_posts/components/DIS/ReceiverPdu.md +77 -27
  68. package/docs/_posts/components/DIS/SignalPdu.md +82 -28
  69. package/docs/_posts/components/DIS/TransmitterPdu.md +86 -36
  70. package/docs/_posts/components/EnvironmentalEffects/Background.md +80 -39
  71. package/docs/_posts/components/EnvironmentalEffects/Fog.md +39 -18
  72. package/docs/_posts/components/EnvironmentalEffects/FogCoordinate.md +10 -6
  73. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +21 -14
  74. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +83 -31
  75. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +36 -8
  76. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +31 -7
  77. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +23 -7
  78. package/docs/_posts/components/EventUtilities/BooleanFilter.md +23 -10
  79. package/docs/_posts/components/EventUtilities/BooleanSequencer.md +46 -17
  80. package/docs/_posts/components/EventUtilities/BooleanToggle.md +29 -8
  81. package/docs/_posts/components/EventUtilities/BooleanTrigger.md +24 -7
  82. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +46 -17
  83. package/docs/_posts/components/EventUtilities/IntegerTrigger.md +34 -9
  84. package/docs/_posts/components/EventUtilities/TimeTrigger.md +30 -9
  85. package/docs/_posts/components/Followers/ColorChaser.md +35 -11
  86. package/docs/_posts/components/Followers/ColorDamper.md +32 -12
  87. package/docs/_posts/components/Followers/CoordinateChaser.md +33 -9
  88. package/docs/_posts/components/Followers/CoordinateDamper.md +30 -10
  89. package/docs/_posts/components/Followers/OrientationChaser.md +34 -10
  90. package/docs/_posts/components/Followers/OrientationDamper.md +31 -11
  91. package/docs/_posts/components/Followers/PositionChaser.md +33 -9
  92. package/docs/_posts/components/Followers/PositionChaser2D.md +33 -9
  93. package/docs/_posts/components/Followers/PositionDamper.md +30 -10
  94. package/docs/_posts/components/Followers/PositionDamper2D.md +30 -10
  95. package/docs/_posts/components/Followers/ScalarChaser.md +33 -9
  96. package/docs/_posts/components/Followers/ScalarDamper.md +30 -10
  97. package/docs/_posts/components/Followers/TexCoordChaser2D.md +33 -9
  98. package/docs/_posts/components/Followers/TexCoordDamper2D.md +30 -10
  99. package/docs/_posts/components/Geometry2D/Arc2D.md +39 -14
  100. package/docs/_posts/components/Geometry2D/ArcClose2D.md +43 -19
  101. package/docs/_posts/components/Geometry2D/Circle2D.md +21 -10
  102. package/docs/_posts/components/Geometry2D/Disk2D.md +32 -14
  103. package/docs/_posts/components/Geometry2D/Polyline2D.md +24 -9
  104. package/docs/_posts/components/Geometry2D/Polypoint2D.md +16 -8
  105. package/docs/_posts/components/Geometry2D/Rectangle2D.md +23 -12
  106. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +23 -12
  107. package/docs/_posts/components/Geometry3D/Box.md +26 -13
  108. package/docs/_posts/components/Geometry3D/Cone.md +30 -22
  109. package/docs/_posts/components/Geometry3D/Cylinder.md +30 -26
  110. package/docs/_posts/components/Geometry3D/ElevationGrid.md +73 -29
  111. package/docs/_posts/components/Geometry3D/Extrusion.md +100 -48
  112. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +92 -38
  113. package/docs/_posts/components/Geometry3D/Sphere.md +25 -13
  114. package/docs/_posts/components/Geospatial/GeoCoordinate.md +30 -14
  115. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +82 -37
  116. package/docs/_posts/components/Geospatial/GeoLOD.md +66 -27
  117. package/docs/_posts/components/Geospatial/GeoLocation.md +64 -26
  118. package/docs/_posts/components/Geospatial/GeoMetadata.md +28 -22
  119. package/docs/_posts/components/Geospatial/GeoOrigin.md +34 -19
  120. package/docs/_posts/components/Geospatial/GeoPositionInterpolator.md +64 -18
  121. package/docs/_posts/components/Geospatial/GeoProximitySensor.md +67 -18
  122. package/docs/_posts/components/Geospatial/GeoTouchSensor.md +63 -18
  123. package/docs/_posts/components/Geospatial/GeoTransform.md +72 -28
  124. package/docs/_posts/components/Geospatial/GeoViewpoint.md +79 -40
  125. package/docs/_posts/components/Grouping/Group.md +32 -16
  126. package/docs/_posts/components/Grouping/StaticGroup.md +37 -16
  127. package/docs/_posts/components/Grouping/Switch.md +39 -20
  128. package/docs/_posts/components/Grouping/Transform.md +45 -28
  129. package/docs/_posts/components/HAnim/HAnimDisplacer.md +38 -27
  130. package/docs/_posts/components/HAnim/HAnimHumanoid.md +197 -38
  131. package/docs/_posts/components/HAnim/HAnimJoint.md +104 -38
  132. package/docs/_posts/components/HAnim/HAnimMotion.md +117 -7
  133. package/docs/_posts/components/HAnim/HAnimSegment.md +72 -32
  134. package/docs/_posts/components/HAnim/HAnimSite.md +75 -32
  135. package/docs/_posts/components/Interpolation/ColorInterpolator.md +41 -11
  136. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +39 -13
  137. package/docs/_posts/components/Interpolation/CoordinateInterpolator2D.md +43 -14
  138. package/docs/_posts/components/Interpolation/EaseInEaseOut.md +36 -12
  139. package/docs/_posts/components/Interpolation/NormalInterpolator.md +40 -10
  140. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +40 -10
  141. package/docs/_posts/components/Interpolation/PositionInterpolator.md +40 -10
  142. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +43 -14
  143. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +39 -13
  144. package/docs/_posts/components/Interpolation/SplinePositionInterpolator.md +41 -16
  145. package/docs/_posts/components/Interpolation/SplinePositionInterpolator2D.md +41 -16
  146. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +40 -24
  147. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +35 -11
  148. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +51 -9
  149. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +31 -9
  150. package/docs/_posts/components/Layering/Layer.md +27 -14
  151. package/docs/_posts/components/Layering/LayerSet.md +19 -13
  152. package/docs/_posts/components/Layering/Viewport.md +31 -15
  153. package/docs/_posts/components/Layout/Layout.md +27 -16
  154. package/docs/_posts/components/Layout/LayoutGroup.md +34 -18
  155. package/docs/_posts/components/Layout/LayoutLayer.md +28 -15
  156. package/docs/_posts/components/Layout/ScreenFontStyle.md +72 -45
  157. package/docs/_posts/components/Layout/ScreenGroup.md +32 -16
  158. package/docs/_posts/components/Lighting/DirectionalLight.md +19 -11
  159. package/docs/_posts/components/Lighting/EnvironmentLight.md +2 -6
  160. package/docs/_posts/components/Lighting/PointLight.md +23 -11
  161. package/docs/_posts/components/Lighting/SpotLight.md +32 -19
  162. package/docs/_posts/components/NURBS/Contour2D.md +17 -9
  163. package/docs/_posts/components/NURBS/ContourPolyline2D.md +10 -6
  164. package/docs/_posts/components/NURBS/CoordinateDouble.md +13 -9
  165. package/docs/_posts/components/NURBS/NurbsCurve.md +15 -11
  166. package/docs/_posts/components/NURBS/NurbsCurve2D.md +14 -10
  167. package/docs/_posts/components/NURBS/NurbsOrientationInterpolator.md +28 -12
  168. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +19 -13
  169. package/docs/_posts/components/NURBS/NurbsPositionInterpolator.md +27 -11
  170. package/docs/_posts/components/NURBS/NurbsSet.md +48 -14
  171. package/docs/_posts/components/NURBS/NurbsSurfaceInterpolator.md +31 -11
  172. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +31 -14
  173. package/docs/_posts/components/NURBS/NurbsSwungSurface.md +25 -14
  174. package/docs/_posts/components/NURBS/NurbsTextureCoordinate.md +11 -7
  175. package/docs/_posts/components/NURBS/NurbsTrimmedSurface.md +26 -16
  176. package/docs/_posts/components/Navigation/Billboard.md +33 -17
  177. package/docs/_posts/components/Navigation/Collision.md +59 -22
  178. package/docs/_posts/components/Navigation/LOD.md +53 -23
  179. package/docs/_posts/components/Navigation/NavigationInfo.md +68 -25
  180. package/docs/_posts/components/Navigation/OrthoViewpoint.md +80 -37
  181. package/docs/_posts/components/Navigation/Viewpoint.md +86 -39
  182. package/docs/_posts/components/Navigation/ViewpointGroup.md +28 -17
  183. package/docs/_posts/components/Networking/Anchor.md +54 -56
  184. package/docs/_posts/components/Networking/Inline.md +42 -29
  185. package/docs/_posts/components/Networking/LoadSensor.md +41 -9
  186. package/docs/_posts/components/ParticleSystems/BoundedPhysicsModel.md +16 -8
  187. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +25 -10
  188. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +18 -11
  189. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +15 -8
  190. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +92 -46
  191. package/docs/_posts/components/ParticleSystems/PointEmitter.md +19 -12
  192. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +23 -15
  193. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +21 -14
  194. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +25 -18
  195. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +11 -7
  196. package/docs/_posts/components/Picking/LinePickSensor.md +37 -15
  197. package/docs/_posts/components/Picking/PickableGroup.md +40 -22
  198. package/docs/_posts/components/Picking/PointPickSensor.md +29 -12
  199. package/docs/_posts/components/Picking/PrimitivePickSensor.md +25 -17
  200. package/docs/_posts/components/Picking/VolumePickSensor.md +25 -12
  201. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +43 -18
  202. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +40 -17
  203. package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +35 -13
  204. package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +48 -14
  205. package/docs/_posts/components/Rendering/ClipPlane.md +20 -15
  206. package/docs/_posts/components/Rendering/Color.md +14 -14
  207. package/docs/_posts/components/Rendering/ColorRGBA.md +13 -9
  208. package/docs/_posts/components/Rendering/Coordinate.md +11 -7
  209. package/docs/_posts/components/Rendering/IndexedLineSet.md +58 -24
  210. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +44 -23
  211. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +45 -24
  212. package/docs/_posts/components/Rendering/IndexedTriangleStripSet.md +45 -20
  213. package/docs/_posts/components/Rendering/LineSet.md +26 -14
  214. package/docs/_posts/components/Rendering/Normal.md +28 -6
  215. package/docs/_posts/components/Rendering/PointSet.md +24 -11
  216. package/docs/_posts/components/Rendering/TriangleFanSet.md +44 -19
  217. package/docs/_posts/components/Rendering/TriangleSet.md +44 -19
  218. package/docs/_posts/components/Rendering/TriangleStripSet.md +45 -20
  219. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +22 -10
  220. package/docs/_posts/components/RigidBodyPhysics/CollidableOffset.md +37 -14
  221. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +34 -16
  222. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +17 -12
  223. package/docs/_posts/components/RigidBodyPhysics/CollisionSensor.md +21 -12
  224. package/docs/_posts/components/RigidBodyPhysics/CollisionSpace.md +31 -12
  225. package/docs/_posts/components/RigidBodyPhysics/Contact.md +19 -15
  226. package/docs/_posts/components/RigidBodyPhysics/DoubleAxisHingeJoint.md +33 -27
  227. package/docs/_posts/components/RigidBodyPhysics/MotorJoint.md +63 -11
  228. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +22 -12
  229. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +30 -14
  230. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +26 -14
  231. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +24 -12
  232. package/docs/_posts/components/RigidBodyPhysics/UniversalJoint.md +23 -15
  233. package/docs/_posts/components/Scripting/Script.md +43 -27
  234. package/docs/_posts/components/Shaders/ComposedShader.md +30 -17
  235. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +18 -9
  236. package/docs/_posts/components/Shaders/Matrix3VertexAttribute.md +17 -8
  237. package/docs/_posts/components/Shaders/Matrix4VertexAttribute.md +17 -8
  238. package/docs/_posts/components/Shaders/PackagedShader.md +36 -30
  239. package/docs/_posts/components/Shaders/ProgramShader.md +35 -15
  240. package/docs/_posts/components/Shaders/ShaderPart.md +27 -18
  241. package/docs/_posts/components/Shaders/ShaderProgram.md +28 -17
  242. package/docs/_posts/components/Shape/AcousticProperties.md +34 -6
  243. package/docs/_posts/components/Shape/Appearance.md +29 -22
  244. package/docs/_posts/components/Shape/FillProperties.md +19 -12
  245. package/docs/_posts/components/Shape/LineProperties.md +18 -10
  246. package/docs/_posts/components/Shape/Material.md +64 -38
  247. package/docs/_posts/components/Shape/PhysicalMaterial.md +49 -25
  248. package/docs/_posts/components/Shape/PointProperties.md +21 -14
  249. package/docs/_posts/components/Shape/Shape.md +35 -17
  250. package/docs/_posts/components/Shape/TwoSidedMaterial.md +35 -36
  251. package/docs/_posts/components/Shape/UnlitMaterial.md +29 -17
  252. package/docs/_posts/components/Sound/Analyser.md +133 -4
  253. package/docs/_posts/components/Sound/AudioClip.md +64 -30
  254. package/docs/_posts/components/Sound/AudioDestination.md +76 -4
  255. package/docs/_posts/components/Sound/BiquadFilter.md +143 -4
  256. package/docs/_posts/components/Sound/BufferAudioSource.md +165 -13
  257. package/docs/_posts/components/Sound/ChannelMerger.md +62 -4
  258. package/docs/_posts/components/Sound/ChannelSelector.md +64 -4
  259. package/docs/_posts/components/Sound/ChannelSplitter.md +68 -4
  260. package/docs/_posts/components/Sound/Convolver.md +124 -4
  261. package/docs/_posts/components/Sound/Delay.md +119 -4
  262. package/docs/_posts/components/Sound/DynamicsCompressor.md +127 -4
  263. package/docs/_posts/components/Sound/Gain.md +115 -4
  264. package/docs/_posts/components/Sound/ListenerPointSource.md +109 -4
  265. package/docs/_posts/components/Sound/MicrophoneSource.md +91 -4
  266. package/docs/_posts/components/Sound/OscillatorSource.md +95 -4
  267. package/docs/_posts/components/Sound/PeriodicWave.md +43 -5
  268. package/docs/_posts/components/Sound/Sound.md +53 -20
  269. package/docs/_posts/components/Sound/SpatialSound.md +120 -4
  270. package/docs/_posts/components/Sound/StreamAudioDestination.md +80 -4
  271. package/docs/_posts/components/Sound/StreamAudioSource.md +91 -4
  272. package/docs/_posts/components/Sound/WaveShaper.md +123 -4
  273. package/docs/_posts/components/Text/FontStyle.md +73 -47
  274. package/docs/_posts/components/Text/Text.md +48 -26
  275. package/docs/_posts/components/TextureProjector/TextureProjector.md +55 -6
  276. package/docs/_posts/components/TextureProjector/TextureProjectorParallel.md +56 -6
  277. package/docs/_posts/components/Texturing/ImageTexture.md +28 -20
  278. package/docs/_posts/components/Texturing/MovieTexture.md +69 -38
  279. package/docs/_posts/components/Texturing/MultiTexture.md +47 -19
  280. package/docs/_posts/components/Texturing/MultiTextureCoordinate.md +27 -10
  281. package/docs/_posts/components/Texturing/MultiTextureTransform.md +32 -10
  282. package/docs/_posts/components/Texturing/PixelTexture.md +34 -14
  283. package/docs/_posts/components/Texturing/TextureCoordinate.md +20 -10
  284. package/docs/_posts/components/Texturing/TextureCoordinateGenerator.md +22 -12
  285. package/docs/_posts/components/Texturing/TextureProperties.md +44 -19
  286. package/docs/_posts/components/Texturing/TextureTransform.md +17 -8
  287. package/docs/_posts/components/Texturing3D/ComposedTexture3D.md +21 -13
  288. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +32 -23
  289. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +22 -16
  290. package/docs/_posts/components/Texturing3D/PixelTexture3D.md +25 -13
  291. package/docs/_posts/components/Texturing3D/TextureCoordinate3D.md +22 -10
  292. package/docs/_posts/components/Texturing3D/TextureCoordinate4D.md +21 -9
  293. package/docs/_posts/components/Texturing3D/TextureTransform3D.md +17 -8
  294. package/docs/_posts/components/Texturing3D/TextureTransformMatrix3D.md +20 -10
  295. package/docs/_posts/components/Time/TimeSensor.md +66 -23
  296. package/docs/_posts/components/VolumeRendering/BlendedVolumeStyle.md +36 -15
  297. package/docs/_posts/components/VolumeRendering/BoundaryEnhancementVolumeStyle.md +15 -5
  298. package/docs/_posts/components/VolumeRendering/CartoonVolumeStyle.md +20 -17
  299. package/docs/_posts/components/VolumeRendering/ComposedVolumeStyle.md +15 -7
  300. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +16 -8
  301. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +43 -21
  302. package/docs/_posts/components/VolumeRendering/OpacityMapVolumeStyle.md +16 -8
  303. package/docs/_posts/components/VolumeRendering/ProjectionVolumeStyle.md +17 -7
  304. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +50 -17
  305. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +18 -10
  306. package/docs/_posts/components/VolumeRendering/SilhouetteEnhancementVolumeStyle.md +16 -8
  307. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +20 -11
  308. package/docs/_posts/components/VolumeRendering/VolumeData.md +32 -15
  309. package/docs/_posts/components/X_ITE/BlendMode.md +9 -2
  310. package/docs/_posts/getting-started.md +1 -0
  311. package/docs/_posts/laboratory/x3d-file-converter.md +1 -1
  312. package/package.json +1 -1
  313. package/src/x_ite/Browser/Core/X3DCoreContext.js +10 -3
  314. package/src/x_ite/Browser/DOMIntegration.js +13 -8
  315. package/src/x_ite/Browser/VERSION.js +1 -1
  316. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +1 -1
  317. package/src/x_ite/Components/DIS/DISEntityManager.js +1 -1
  318. package/src/x_ite/Components/Grouping/Switch.js +1 -1
  319. package/src/x_ite/Components/Layering/X3DLayerNode.js +1 -1
  320. package/src/x_ite/Components/Lighting/DirectionalLight.js +1 -1
  321. package/src/x_ite/Components/Navigation/Collision.js +1 -1
  322. package/src/x_ite/Components/Navigation/LOD.js +1 -1
  323. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +1 -1
  324. package/src/x_ite/Components/Networking/LoadSensor.js +1 -1
  325. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +1 -1
  326. package/src/x_ite/Components/Shape/AcousticProperties.js +1 -1
  327. package/src/x_ite/Components/Shape/Appearance.js +1 -1
  328. package/src/x_ite/Components/Shape/Material.js +1 -1
  329. package/src/x_ite/Components/Shape/TwoSidedMaterial.js +1 -1
  330. package/src/x_ite/Components/Sound/PeriodicWave.js +1 -1
  331. package/src/x_ite/Components/Texturing/TextureProperties.js +1 -1
  332. package/src/x_ite/Fields/ArrayFields.js +2 -2
  333. package/src/x_ite/Fields/SFColor.js +1 -1
  334. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +1 -1
  335. package/src/x_ite/Fields/SFRotation.js +3 -3
  336. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +1 -1
  337. package/src/x_ite/Parser/GoldenGate.js +16 -5
  338. package/src/x_ite/Parser/PLYAParser.js +615 -0
  339. package/src/x_ite/Parser/PLYBParser.js +222 -0
  340. package/src/x_ite/Parser/STLAParser.js +0 -1
  341. /package/build/{bin → docs}/components.js +0 -0
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: VolumeData
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-VolumeRendering
5
5
  categories: [components, VolumeRendering]
6
6
  tags: [VolumeData, VolumeRendering]
@@ -15,7 +15,7 @@ tags: [VolumeData, VolumeRendering]
15
15
 
16
16
  VolumeData displays a simple non-segmented voxel dataset with a single RenderStyle node.
17
17
 
18
- The VolumeData node belongs to the **VolumeRendering** component and its default container field is *children.* It is available since X3D version 3.3 or later.
18
+ The VolumeData node belongs to the **VolumeRendering** component and its default container field is *children.* It is available from X3D version 3.3 or higher.
19
19
 
20
20
  ## Hierarchy
21
21
 
@@ -30,20 +30,24 @@ The VolumeData node belongs to the **VolumeRendering** component and its default
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
  ### SFVec3f [in, out] **dimensions** 1 1 1 <small>(0,∞)</small>
36
40
 
37
- Actual-size X-Y-Z dimensions of volume data in local coordinate system.
41
+ Actual-size X-Y-Z *dimensions* of volume data in local coordinate system.
38
42
 
39
43
  ### SFBool [in, out] **visible** TRUE
40
44
 
41
45
  Whether or not renderable content within this node is visually displayed.
42
46
 
43
- #### Hint
47
+ #### Hints
44
48
 
45
- - The visible field has no effect on animation behaviors, event passing or other non-visual characteristics.
46
- - Content must be visible to be collidable and to be pickable.
49
+ - The *visible* field has no effect on animation behaviors, event passing or other non-visual characteristics.
50
+ - Content must be *visible* to be collidable and to be pickable.
47
51
 
48
52
  ### SFBool [in, out] **bboxDisplay** FALSE
49
53
 
@@ -57,32 +61,45 @@ Whether to display bounding box for associated geometry, aligned with world coor
57
61
 
58
62
  Bounding box size is usually omitted, and can easily be calculated automatically by an X3D player at scene-loading time with minimal computational cost. Bounding box size can also be defined as an optional authoring hint that suggests an optimization or constraint.
59
63
 
60
- #### Hint
64
+ #### Hints
61
65
 
62
66
  - Can be useful for collision computations or inverse-kinematics (IK) engines.
67
+ - Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
68
+ - [X3D Architecture, 10.2.2 Bounding boxes](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#BoundingBoxes){:target="_blank"}
69
+ - [X3D Architecture, 10.3.1 X3DBoundedObject](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#X3DBoundedObject){:target="_blank"}
63
70
 
64
71
  ### SFVec3f [ ] **bboxCenter** 0 0 0 <small>(-∞,∞)</small>
65
72
 
66
- Bounding box center: optional hint for position offset from origin of local coordinate system.
73
+ Bounding box center accompanies bboxSize and provides an optional hint for bounding box position offset from origin of local coordinate system.
74
+
75
+ #### Hints
76
+
77
+ - Precomputation and inclusion of bounding box information can speed up the initialization of large detailed models, with a corresponding cost of increased file size.
78
+ - [X3D Architecture, 10.2.2 Bounding boxes](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#BoundingBoxes){:target="_blank"}
79
+ - [X3D Architecture, 10.3.1 X3DBoundedObject](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/grouping.html#X3DBoundedObject){:target="_blank"}
67
80
 
68
81
  ### SFNode [in, out] **renderStyle** NULL <small>[X3DVolumeRenderStyleNode]</small>
69
82
 
70
- Input/Output field renderStyle.
83
+ Single contained X3DVolumeRenderStyleNode node that defines specific rendering technique for this volumetric object. If field is not defined, default is OpacityMapVolumeStyle node.
71
84
 
72
85
  ### SFNode [in, out] **voxels** NULL <small>[X3DTexture3DNode]</small>
73
86
 
74
- Input/Output field voxels.
87
+ Single contained X3DTexture3DNode (ComposedTexture3D, ImageTexture3D, PixelTexture3D) that provides raw voxel information utilized by corresponding rendering styles. Any number of color components (1-4) may be defined.
75
88
 
76
- ## Description
89
+ ## Advisories
77
90
 
78
91
  ### Hint
79
92
 
80
- - VolumeData can contain a single Texture3D node with containerField='voxels' and a single RenderStyle node.
93
+ - VolumeData can contain a single Texture3D node with `containerField='voxels'` and a single RenderStyle node.
94
+
95
+ ### Warning
96
+
97
+ - Requires X3D `profile='Full'` or else include `<component name='VolumeRendering' level='1'/>`
81
98
 
82
99
  ## Example
83
100
 
84
101
  <x3d-canvas src="https://create3000.github.io/media/examples/VolumeRendering/VolumeData/VolumeData.x3d" update="auto"></x3d-canvas>
85
102
 
86
- ## External Links
103
+ ## See Also
87
104
 
88
- - [X3D Specification of VolumeData](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/volume.html#VolumeData){:target="_blank"}
105
+ - [X3D Specification of VolumeData node](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/volume.html#VolumeData){:target="_blank"}
@@ -1,6 +1,6 @@
1
1
  ---
2
2
  title: BlendMode
3
- date: 2022-01-07
3
+ date: 2023-01-07
4
4
  nav: components-X_ITE
5
5
  categories: [components, X_ITE]
6
6
  tags: [BlendMode, X_ITE]
@@ -17,6 +17,9 @@ BlendMode controls how pixels of an objects are drawn. Pixels can be drawn using
17
17
 
18
18
  The BlendMode node belongs to the **X_ITE** component and its default container field is *blendMode.* It is available in Titania and X_ITE.
19
19
 
20
+ >**Info:** Please note that the functionality of this node is still experimental.
21
+ {: .prompt-info }
22
+
20
23
  ## Hierarchy
21
24
 
22
25
  ```
@@ -30,7 +33,11 @@ The BlendMode node belongs to the **X_ITE** component and its default container
30
33
 
31
34
  ### SFNode [in, out] **metadata** NULL <small>[X3DMetadataObject]</small>
32
35
 
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.
36
+ Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node.
37
+
38
+ #### Hint
39
+
40
+ - [X3D Architecture 7.2.4 Metadata](https://www.web3d.org/specifications/X3Dv4Draft/ISO-IEC19775-1v4-CD1/Part01/components/core.html#Metadata){:target="_blank"}
34
41
 
35
42
  ### SFColorRGBA [in, out] **blendColor** 0 0 0 0 <small>[0,1]</small>
36
43
 
@@ -644,6 +644,7 @@ X_ITE can load several file formats, either directly as the source of the \<x3d-
644
644
  | glTF | .gltf, .glb | model/gltf+json |
645
645
  | Wavefront OBJ | .obj | model/obj |
646
646
  | STL | .stl | model/stl |
647
+ | PLY | .ply | model/ply |
647
648
  | SVG Document | .svg, .svgz | image/svg+xml |
648
649
 
649
650
  >**Tip:** All files can be compressed using GZip compression. This saves bandwidth and speeds up download time.
@@ -157,7 +157,7 @@ $(() =>
157
157
 
158
158
  ## Upload and Convert
159
159
 
160
- Convert **X3D, VRML, glTF (GLB), OBJ, STL,** and **SVG** to an X3D format of your choice.
160
+ Convert **X3D, VRML, glTF (GLB), OBJ, STL, PLY,** and **SVG** to an X3D format of your choice.
161
161
 
162
162
  <div id="drop-zone">
163
163
  <p id="open-files" class="center">
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "x_ite",
3
- "version": "8.8.7",
3
+ "version": "8.9.0",
4
4
  "description": "X_ITE X3D Browser, view and manipulate X3D and VRML scenes in HTML.",
5
5
  "homepage": "https://create3000.github.io/x_ite/",
6
6
  "author": "Holger Seelig <holger.seelig@gmail.com>",
@@ -420,11 +420,18 @@ Object .assign (X3DCoreContext .prototype,
420
420
  },
421
421
  parseUrlAttribute (urlCharacters)
422
422
  {
423
- const url = new Fields .MFString ();
423
+ try
424
+ {
425
+ const url = new Fields .MFString ();
424
426
 
425
- url .fromString ("[" + urlCharacters + "]", this .getExecutionContext ());
427
+ url .fromString ("[" + urlCharacters + "]", this .getExecutionContext ());
426
428
 
427
- return url;
429
+ return url;
430
+ }
431
+ catch
432
+ {
433
+ throw new Error ("Couldn't parse url attribute.");
434
+ }
428
435
  },
429
436
  callBrowserEventHandler: (() =>
430
437
  {
@@ -135,15 +135,17 @@ class DOMIntegration
135
135
 
136
136
  processAttribute (mutation, element)
137
137
  {
138
- const parser = this .parser;
138
+ const
139
+ parser = this .parser,
140
+ node = $.data (element, "node");
139
141
 
140
- if ($.data (element, "node"))
142
+ if (node)
141
143
  {
142
144
  const
143
145
  attributeName = mutation .attributeName,
144
146
  attribute = element .attributes .getNamedItem (attributeName);
145
147
 
146
- parser .nodeAttribute (attribute, $.data (element, "node"));
148
+ parser .nodeAttribute (attribute, node);
147
149
  }
148
150
  else
149
151
  {
@@ -153,11 +155,14 @@ class DOMIntegration
153
155
  parentNode = element .parentNode,
154
156
  node = $.data (parentNode, "node");
155
157
 
156
- parser .pushExecutionContext (node .getExecutionContext ());
157
- parser .pushParent (node);
158
- parser .childElement (element);
159
- parser .popParent ();
160
- parser .popExecutionContext ();
158
+ if (node)
159
+ {
160
+ parser .pushExecutionContext (node .getExecutionContext ());
161
+ parser .pushParent (node);
162
+ parser .childElement (element);
163
+ parser .popParent ();
164
+ parser .popExecutionContext ();
165
+ }
161
166
  }
162
167
  }
163
168
 
@@ -45,4 +45,4 @@
45
45
  *
46
46
  ******************************************************************************/
47
47
 
48
- export default "8.8.7";
48
+ export default "8.9.0";
@@ -59,7 +59,7 @@ function ComposedCubeMapTexture (executionContext)
59
59
 
60
60
  this .addType (X3DConstants .ComposedCubeMapTexture);
61
61
 
62
- if (executionContext .getSpecificationVersion () < 4)
62
+ if (executionContext .getSpecificationVersion () < 4.0)
63
63
  {
64
64
  this .addAlias ("front", this ._frontTexture);
65
65
  this .addAlias ("back", this ._backTexture);
@@ -57,7 +57,7 @@ function DISEntityManager (executionContext)
57
57
 
58
58
  this .addType (X3DConstants .DISEntityManager);
59
59
 
60
- if (executionContext .getSpecificationVersion () < 4)
60
+ if (executionContext .getSpecificationVersion () <= 3.3)
61
61
  this .addAlias ("mapping", this ._children);
62
62
  }
63
63
 
@@ -59,7 +59,7 @@ function Switch (executionContext)
59
59
 
60
60
  this .addType (X3DConstants .Switch);
61
61
 
62
- if (executionContext .getSpecificationVersion () === "2.0")
62
+ if (executionContext .getSpecificationVersion () == 2.0)
63
63
  this .addAlias ("choice", this ._children);
64
64
 
65
65
  this .childNode = null;
@@ -66,7 +66,7 @@ function X3DLayerNode (executionContext, defaultViewpoint, groupNode)
66
66
 
67
67
  this .addType (X3DConstants .X3DLayerNode);
68
68
 
69
- if (executionContext .getSpecificationVersion () < 4.0)
69
+ if (executionContext .getSpecificationVersion () <= 3.3)
70
70
  this .addAlias ("isPickable", this ._pickable);
71
71
 
72
72
  this .groupNode = groupNode;
@@ -235,7 +235,7 @@ function DirectionalLight (executionContext)
235
235
 
236
236
  this .addType (X3DConstants .DirectionalLight);
237
237
 
238
- if (executionContext .getSpecificationVersion () === "2.0")
238
+ if (executionContext .getSpecificationVersion () == 2.0)
239
239
  this ._global = true;
240
240
  }
241
241
 
@@ -61,7 +61,7 @@ function Collision (executionContext)
61
61
 
62
62
  this .addType (X3DConstants .Collision);
63
63
 
64
- if (executionContext .getSpecificationVersion () === "2.0")
64
+ if (executionContext .getSpecificationVersion () == 2.0)
65
65
  this .addAlias ("collide", this ._enabled); // VRML2
66
66
  }
67
67
 
@@ -61,7 +61,7 @@ function LOD (executionContext)
61
61
 
62
62
  this .addType (X3DConstants .LOD);
63
63
 
64
- if (executionContext .getSpecificationVersion () === "2.0")
64
+ if (executionContext .getSpecificationVersion () == 2.0)
65
65
  this .addAlias ("level", this ._children); // VRML2
66
66
 
67
67
  this ._center .setUnit ("length");
@@ -288,7 +288,7 @@ Object .assign (Object .setPrototypeOf (X3DViewpointNode .prototype, X3DBindable
288
288
 
289
289
  // VRML behavior
290
290
 
291
- if (this .getExecutionContext () .getSpecificationVersion () === "2.0")
291
+ if (this .getExecutionContext () .getSpecificationVersion () == 2.0)
292
292
  {
293
293
  if (this .getVRMLTransition ())
294
294
  transitionType = "LINEAR";
@@ -58,7 +58,7 @@ function LoadSensor (executionContext)
58
58
 
59
59
  this .addType (X3DConstants .LoadSensor);
60
60
 
61
- if (executionContext .getSpecificationVersion () < 4)
61
+ if (executionContext .getSpecificationVersion () <= 3.3)
62
62
  this .addAlias ("watchList", this ._children);
63
63
 
64
64
  this .urlObjects = [ ];
@@ -106,7 +106,7 @@ function ParticleSystem (executionContext)
106
106
 
107
107
  this ._particleSize .setUnit ("length");
108
108
 
109
- if (executionContext .getSpecificationVersion () < 4)
109
+ if (executionContext .getSpecificationVersion () <= 3.3)
110
110
  {
111
111
  this .addAlias ("colorRamp", this ._color);
112
112
  this .addAlias ("texCoordRamp", this ._texCoord);
@@ -74,7 +74,7 @@ Object .defineProperties (AcousticProperties,
74
74
  },
75
75
  containerField:
76
76
  {
77
- value: "AcousticProperties",
77
+ value: "acousticProperties",
78
78
  enumerable: true,
79
79
  },
80
80
  specificationRange:
@@ -438,6 +438,7 @@ Object .defineProperties (Appearance,
438
438
  {
439
439
  value: new FieldDefinitionArray ([
440
440
  new X3DFieldDefinition (X3DConstants .inputOutput, "metadata", new Fields .SFNode ()),
441
+ new X3DFieldDefinition (X3DConstants .inputOutput, "acousticProperties", new Fields .SFNode ()),
441
442
  new X3DFieldDefinition (X3DConstants .inputOutput, "alphaMode", new Fields .SFString ("AUTO")),
442
443
  new X3DFieldDefinition (X3DConstants .inputOutput, "alphaCutoff", new Fields .SFFloat (0.5)),
443
444
  new X3DFieldDefinition (X3DConstants .inputOutput, "pointProperties", new Fields .SFNode ()),
@@ -449,7 +450,6 @@ Object .defineProperties (Appearance,
449
450
  new X3DFieldDefinition (X3DConstants .inputOutput, "textureTransform", new Fields .SFNode ()),
450
451
  new X3DFieldDefinition (X3DConstants .inputOutput, "shaders", new Fields .MFNode ()),
451
452
  new X3DFieldDefinition (X3DConstants .inputOutput, "blendMode", new Fields .SFNode ()),
452
- new X3DFieldDefinition (X3DConstants .inputOutput, "acousticProperties", new Fields .SFNode ()),
453
453
  ]),
454
454
  enumerable: true,
455
455
  },
@@ -60,7 +60,7 @@ function Material (executionContext)
60
60
 
61
61
  this .addType (X3DConstants .Material);
62
62
 
63
- if (executionContext .getSpecificationVersion () < 4.0)
63
+ if (executionContext .getSpecificationVersion () <= 3.3)
64
64
  this .getMaterialKey = getMaterialKey;
65
65
 
66
66
  this .diffuseColor = new Float32Array (3);
@@ -264,7 +264,7 @@ Object .defineProperties (TwoSidedMaterial,
264
264
  },
265
265
  specificationRange:
266
266
  {
267
- value: Object .freeze (["3.2", "Infinity"]),
267
+ value: Object .freeze (["3.2", "4.0"]),
268
268
  enumerable: true,
269
269
  },
270
270
  fieldDefinitions:
@@ -88,9 +88,9 @@ Object .defineProperties (PeriodicWave,
88
88
  new X3DFieldDefinition (X3DConstants .inputOutput, "metadata", new Fields .SFNode ()),
89
89
  new X3DFieldDefinition (X3DConstants .inputOutput, "description", new Fields .SFString ()),
90
90
  new X3DFieldDefinition (X3DConstants .inputOutput, "enabled", new Fields .SFBool (true)),
91
+ new X3DFieldDefinition (X3DConstants .inputOutput, "type", new Fields .SFString ("SQUARE")),
91
92
  new X3DFieldDefinition (X3DConstants .inputOutput, "optionsReal", new Fields .MFFloat ()),
92
93
  new X3DFieldDefinition (X3DConstants .inputOutput, "optionsImag", new Fields .MFFloat ()),
93
- new X3DFieldDefinition (X3DConstants .inputOutput, "type", new Fields .SFString ("SQUARE")),
94
94
  ]),
95
95
  enumerable: true,
96
96
  },
@@ -58,7 +58,7 @@ function TextureProperties (executionContext)
58
58
 
59
59
  this .addType (X3DConstants .TextureProperties);
60
60
 
61
- if (executionContext .getSpecificationVersion () < 4.0)
61
+ if (executionContext .getSpecificationVersion () <= 3.3)
62
62
  {
63
63
  this ._minificationFilter = "DEFAULT";
64
64
  this ._magnificationFilter = "DEFAULT";
@@ -140,7 +140,7 @@ Object .assign (Object .setPrototypeOf (MFNode .prototype, X3DObjectArrayField .
140
140
  {
141
141
  generator .string += generator .Indent ();
142
142
  array [i] .toStream (generator);
143
- generator .string += generator .TidyBreak ();
143
+ generator .string += generator .Break ();
144
144
  }
145
145
 
146
146
  generator .DecIndent ();
@@ -188,7 +188,7 @@ Object .assign (Object .setPrototypeOf (MFNode .prototype, X3DObjectArrayField .
188
188
  {
189
189
  generator .string += generator .Indent ();
190
190
  element .toVRMLStream (generator);
191
- generator .string += generator .TidyBreak ();
191
+ generator .string += generator .Break ();
192
192
  }
193
193
 
194
194
  generator .DecIndent ();
@@ -130,7 +130,7 @@ Object .assign (Object .setPrototypeOf (SFColor .prototype, X3DField .prototype)
130
130
  for (let i = 0; i < last; ++ i)
131
131
  {
132
132
  generator .string += generator .FloatFormat (value [i]);
133
- generator .string += generator .TidySpace ();
133
+ generator .string += generator .Space ();
134
134
  }
135
135
 
136
136
  generator .string += generator .FloatFormat (value [last]);
@@ -147,7 +147,7 @@ function SFMatrixPrototypeTemplate (Constructor, TypeName, Matrix, SFVec, double
147
147
  for (let i = 0; i < last; ++ i)
148
148
  {
149
149
  generator .string += generator [_formatter] (value [i]);
150
- generator .string += generator .TidySpace ();
150
+ generator .string += generator .Space ();
151
151
  }
152
152
 
153
153
  generator .string += generator [_formatter] (value [last]);
@@ -158,11 +158,11 @@ Object .assign (Object .setPrototypeOf (SFRotation .prototype, X3DField .prototy
158
158
  const { x, y, z, angle } = this .getValue ();
159
159
 
160
160
  generator .string += generator .DoubleFormat (x);
161
- generator .string += generator .TidySpace ();
161
+ generator .string += generator .Space ();
162
162
  generator .string += generator .DoubleFormat (y);
163
- generator .string += generator .TidySpace ();
163
+ generator .string += generator .Space ();
164
164
  generator .string += generator .DoubleFormat (z);
165
- generator .string += generator .TidySpace ();
165
+ generator .string += generator .Space ();
166
166
  generator .string += generator .DoubleFormat (generator .ToUnit ("angle", angle));
167
167
  },
168
168
  toVRMLStream (generator)
@@ -156,7 +156,7 @@ function SFVecPrototypeTemplate (Constructor, TypeName, Vector, double)
156
156
  for (let i = 0; i < last; ++ i)
157
157
  {
158
158
  generator .string += generator [_formatter] (generator .ToUnit (category, value [i]));
159
- generator .string += generator .TidySpace ();
159
+ generator .string += generator .Space ();
160
160
  }
161
161
 
162
162
  generator .string += generator [_formatter] (generator .ToUnit (category, value [last]));
@@ -54,6 +54,8 @@ import GLB2Parser from "./GLB2Parser.js";
54
54
  import OBJParser from "./OBJParser.js";
55
55
  import STLAParser from "./STLAParser.js";
56
56
  import STLBParser from "./STLBParser.js";
57
+ import PLYAParser from "./PLYAParser.js";
58
+ import PLYBParser from "./PLYBParser.js";
57
59
  import SVGParser from "./SVGParser.js";
58
60
 
59
61
  function GoldenGate (scene)
@@ -105,14 +107,21 @@ Object .assign (Object .setPrototypeOf (GoldenGate .prototype, X3DParser .protot
105
107
  },
106
108
  getInput (encoding, x3dSyntax)
107
109
  {
108
- if (this .inputs .has (encoding))
109
- return this .inputs .get (encoding);
110
+ if (Array .isArray (encoding))
111
+ {
112
+ return encoding .map (encoding => this .getInput (encoding));
113
+ }
114
+ else
115
+ {
116
+ if (this .inputs .has (encoding))
117
+ return this .inputs .get (encoding);
110
118
 
111
- const input = this .createInput (encoding, x3dSyntax);
119
+ const input = this .createInput (encoding, x3dSyntax);
112
120
 
113
- this .inputs .set (encoding, input);
121
+ this .inputs .set (encoding, input);
114
122
 
115
- return input;
123
+ return input;
124
+ }
116
125
  },
117
126
  createInput (encoding, x3dSyntax)
118
127
  {
@@ -147,6 +156,8 @@ GoldenGate .Parser = [
147
156
  OBJParser,
148
157
  STLAParser,
149
158
  STLBParser,
159
+ PLYAParser,
160
+ PLYBParser,
150
161
  ];
151
162
 
152
163
  export default GoldenGate;