x_ite 8.4.3 → 8.5.3

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 (568) hide show
  1. package/.vscode/settings.json +5 -1
  2. package/Makefile +0 -3
  3. package/build/bin/components.js +173 -0
  4. package/build/bin/tags.pl +28 -0
  5. package/build/bin/tests.pl +80 -2
  6. package/build/bin/version.pl +12 -7
  7. package/dist/assets/components/Annotation.js +13 -13
  8. package/dist/assets/components/Annotation.min.js +1 -1
  9. package/dist/assets/components/CADGeometry.js +13 -13
  10. package/dist/assets/components/CADGeometry.min.js +1 -1
  11. package/dist/assets/components/CubeMapTexturing.js +28 -29
  12. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  13. package/dist/assets/components/DIS.js +13 -13
  14. package/dist/assets/components/DIS.min.js +1 -1
  15. package/dist/assets/components/EventUtilities.js +9 -9
  16. package/dist/assets/components/EventUtilities.min.js +1 -1
  17. package/dist/assets/components/Geometry2D.js +19 -19
  18. package/dist/assets/components/Geometry2D.min.js +1 -1
  19. package/dist/assets/components/Geospatial.js +33 -33
  20. package/dist/assets/components/Geospatial.min.js +1 -1
  21. package/dist/assets/components/HAnim.js +63 -42
  22. package/dist/assets/components/HAnim.min.js +1 -1
  23. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  24. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  25. package/dist/assets/components/Layout.js +37 -29
  26. package/dist/assets/components/Layout.min.js +1 -1
  27. package/dist/assets/components/NURBS.js +29 -31
  28. package/dist/assets/components/NURBS.min.js +1 -1
  29. package/dist/assets/components/ParticleSystems.js +23 -23
  30. package/dist/assets/components/ParticleSystems.min.js +1 -1
  31. package/dist/assets/components/Picking.js +19 -19
  32. package/dist/assets/components/Picking.min.js +1 -1
  33. package/dist/assets/components/RigidBodyPhysics.js +24 -19
  34. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  35. package/dist/assets/components/Scripting.js +30 -30
  36. package/dist/assets/components/Scripting.min.js +1 -1
  37. package/dist/assets/components/Text.js +172 -594
  38. package/dist/assets/components/Text.min.js +1 -1
  39. package/dist/assets/components/TextureProjector.js +31 -47
  40. package/dist/assets/components/TextureProjector.min.js +1 -1
  41. package/dist/assets/components/Texturing3D.js +367 -346
  42. package/dist/assets/components/Texturing3D.min.js +1 -1
  43. package/dist/assets/components/VolumeRendering.js +19 -19
  44. package/dist/assets/components/VolumeRendering.min.js +1 -1
  45. package/dist/assets/components/X_ITE.js +9 -9
  46. package/dist/assets/components/X_ITE.min.js +1 -1
  47. package/dist/x_ite.css +1 -1
  48. package/dist/x_ite.js +12174 -3553
  49. package/dist/x_ite.min.js +1 -1
  50. package/dist/x_ite.zip +0 -0
  51. package/docs/_config.yml +5 -136
  52. package/docs/_data/nav/components-CADGeometry.yml +14 -0
  53. package/docs/_data/nav/components-Core.yml +16 -0
  54. package/docs/_data/nav/components-CubeMapTexturing.yml +8 -0
  55. package/docs/_data/nav/components-DIS.yml +14 -0
  56. package/docs/_data/nav/components-EnvironmentalEffects.yml +12 -0
  57. package/docs/_data/nav/components-EnvironmentalSensor.yml +8 -0
  58. package/docs/_data/nav/components-EventUtilities.yml +16 -0
  59. package/docs/_data/nav/components-Followers.yml +30 -0
  60. package/docs/_data/nav/components-Geometry2D.yml +18 -0
  61. package/docs/_data/nav/components-Geometry3D.yml +16 -0
  62. package/docs/_data/nav/components-Geospatial.yml +24 -0
  63. package/docs/_data/nav/components-Grouping.yml +10 -0
  64. package/docs/_data/nav/components-HAnim.yml +14 -0
  65. package/docs/_data/nav/components-Interpolation.yml +28 -0
  66. package/docs/_data/nav/components-KeyDeviceSensor.yml +6 -0
  67. package/docs/_data/nav/components-Layering.yml +8 -0
  68. package/docs/_data/nav/components-Layout.yml +12 -0
  69. package/docs/_data/nav/components-Lighting.yml +10 -0
  70. package/docs/_data/nav/components-NURBS.yml +30 -0
  71. package/docs/_data/nav/components-Navigation.yml +16 -0
  72. package/docs/_data/nav/components-Networking.yml +8 -0
  73. package/docs/_data/nav/components-ParticleSystems.yml +22 -0
  74. package/docs/_data/nav/components-Picking.yml +12 -0
  75. package/docs/_data/nav/components-PointingDeviceSensor.yml +10 -0
  76. package/docs/_data/nav/components-Rendering.yml +30 -0
  77. package/docs/_data/nav/components-RigidBodyPhysics.yml +30 -0
  78. package/docs/_data/nav/components-Scripting.yml +4 -0
  79. package/docs/_data/nav/components-Shaders.yml +18 -0
  80. package/docs/_data/nav/components-Shape.yml +22 -0
  81. package/docs/_data/nav/components-Sound.yml +44 -0
  82. package/docs/_data/nav/components-Text.yml +6 -0
  83. package/docs/_data/nav/components-TextureProjector.yml +6 -0
  84. package/docs/_data/nav/components-Texturing.yml +22 -0
  85. package/docs/_data/nav/components-Texturing3D.yml +18 -0
  86. package/docs/_data/nav/components-Time.yml +4 -0
  87. package/docs/_data/nav/components-VolumeRendering.yml +28 -0
  88. package/docs/_data/nav/components-X_ITE.yml +4 -0
  89. package/docs/_data/nav/main.yml +26 -0
  90. package/docs/_data/nav/reference.yml +18 -0
  91. package/docs/_data/nav/tutorials-animation-sensors-and-geometry.yml +18 -0
  92. package/docs/_data/nav/tutorials-basic.yml +6 -0
  93. package/docs/_data/nav/tutorials-optimize-your-scene.yml +6 -0
  94. package/docs/_data/nav/tutorials-scripts-and-prototypes.yml +12 -0
  95. package/docs/_data/nav/tutorials-shapes-geometry-and-appearance.yml +16 -0
  96. package/docs/_data/nav/tutorials-textures-lights-and-environment.yml +20 -0
  97. package/docs/_includes/nav.html +2 -2
  98. package/docs/_includes/scripts.html +2 -1
  99. package/docs/_posts/accessing-the-external-browser.md +1 -1
  100. package/docs/_posts/browser-support.md +1 -1
  101. package/docs/_posts/components/CADGeometry/CADAssembly.md +83 -0
  102. package/docs/_posts/components/CADGeometry/CADFace.md +70 -0
  103. package/docs/_posts/components/CADGeometry/CADLayer.md +84 -0
  104. package/docs/_posts/components/CADGeometry/CADPart.md +117 -0
  105. package/docs/_posts/components/CADGeometry/IndexedQuadSet.md +125 -0
  106. package/docs/_posts/components/CADGeometry/QuadSet.md +113 -0
  107. package/docs/_posts/components/Core/MetadataBoolean.md +90 -0
  108. package/docs/_posts/components/Core/MetadataDouble.md +67 -0
  109. package/docs/_posts/components/Core/MetadataFloat.md +67 -0
  110. package/docs/_posts/components/Core/MetadataInteger.md +66 -0
  111. package/docs/_posts/components/Core/MetadataSet.md +63 -0
  112. package/docs/_posts/components/Core/MetadataString.md +66 -0
  113. package/docs/_posts/components/Core/WorldInfo.md +54 -0
  114. package/docs/_posts/components/CubeMapTexturing/ComposedCubeMapTexture.md +76 -0
  115. package/docs/_posts/components/CubeMapTexturing/GeneratedCubeMapTexture.md +65 -0
  116. package/docs/_posts/components/CubeMapTexturing/ImageCubeMapTexture.md +66 -0
  117. package/docs/_posts/components/DIS/DISEntityManager.md +73 -0
  118. package/docs/_posts/components/DIS/DISEntityTypeMapping.md +88 -0
  119. package/docs/_posts/components/DIS/EspduTransform.md +416 -0
  120. package/docs/_posts/components/DIS/ReceiverPdu.md +168 -0
  121. package/docs/_posts/components/DIS/SignalPdu.md +168 -0
  122. package/docs/_posts/components/DIS/TransmitterPdu.md +232 -0
  123. package/docs/_posts/components/EnvironmentalEffects/Background.md +189 -0
  124. package/docs/_posts/components/EnvironmentalEffects/Fog.md +97 -0
  125. package/docs/_posts/components/EnvironmentalEffects/FogCoordinate.md +40 -0
  126. package/docs/_posts/components/EnvironmentalEffects/LocalFog.md +84 -0
  127. package/docs/_posts/components/EnvironmentalEffects/TextureBackground.md +142 -0
  128. package/docs/_posts/components/EnvironmentalSensor/ProximitySensor.md +90 -0
  129. package/docs/_posts/components/EnvironmentalSensor/TransformSensor.md +91 -0
  130. package/docs/_posts/components/EnvironmentalSensor/VisibilitySensor.md +73 -0
  131. package/docs/_posts/components/EventUtilities/BooleanFilter.md +62 -0
  132. package/docs/_posts/components/EventUtilities/BooleanSequencer.md +86 -0
  133. package/docs/_posts/components/EventUtilities/BooleanToggle.md +46 -0
  134. package/docs/_posts/components/EventUtilities/BooleanTrigger.md +47 -0
  135. package/docs/_posts/components/EventUtilities/IntegerSequencer.md +90 -0
  136. package/docs/_posts/components/EventUtilities/IntegerTrigger.md +51 -0
  137. package/docs/_posts/components/EventUtilities/TimeTrigger.md +47 -0
  138. package/docs/_posts/components/Followers/ColorChaser.md +77 -0
  139. package/docs/_posts/components/Followers/ColorDamper.md +85 -0
  140. package/docs/_posts/components/Followers/CoordinateChaser.md +76 -0
  141. package/docs/_posts/components/Followers/CoordinateDamper.md +80 -0
  142. package/docs/_posts/components/Followers/OrientationChaser.md +72 -0
  143. package/docs/_posts/components/Followers/OrientationDamper.md +80 -0
  144. package/docs/_posts/components/Followers/PositionChaser.md +72 -0
  145. package/docs/_posts/components/Followers/PositionChaser2D.md +72 -0
  146. package/docs/_posts/components/Followers/PositionDamper.md +80 -0
  147. package/docs/_posts/components/Followers/PositionDamper2D.md +80 -0
  148. package/docs/_posts/components/Followers/ScalarChaser.md +76 -0
  149. package/docs/_posts/components/Followers/ScalarDamper.md +80 -0
  150. package/docs/_posts/components/Followers/TexCoordChaser2D.md +72 -0
  151. package/docs/_posts/components/Followers/TexCoordDamper2D.md +80 -0
  152. package/docs/_posts/components/Geometry2D/Arc2D.md +71 -0
  153. package/docs/_posts/components/Geometry2D/ArcClose2D.md +91 -0
  154. package/docs/_posts/components/Geometry2D/Circle2D.md +55 -0
  155. package/docs/_posts/components/Geometry2D/Disk2D.md +75 -0
  156. package/docs/_posts/components/Geometry2D/Polyline2D.md +54 -0
  157. package/docs/_posts/components/Geometry2D/Polypoint2D.md +54 -0
  158. package/docs/_posts/components/Geometry2D/Rectangle2D.md +66 -0
  159. package/docs/_posts/components/Geometry2D/TriangleSet2D.md +66 -0
  160. package/docs/_posts/components/Geometry3D/Box.md +66 -0
  161. package/docs/_posts/components/Geometry3D/Cone.md +90 -0
  162. package/docs/_posts/components/Geometry3D/Cylinder.md +98 -0
  163. package/docs/_posts/components/Geometry3D/ElevationGrid.md +162 -0
  164. package/docs/_posts/components/Geometry3D/Extrusion.md +170 -0
  165. package/docs/_posts/components/Geometry3D/IndexedFaceSet.md +208 -0
  166. package/docs/_posts/components/Geometry3D/Sphere.md +66 -0
  167. package/docs/_posts/components/Geospatial/GeoCoordinate.md +65 -0
  168. package/docs/_posts/components/Geospatial/GeoElevationGrid.md +180 -0
  169. package/docs/_posts/components/Geospatial/GeoLOD.md +128 -0
  170. package/docs/_posts/components/Geospatial/GeoLocation.md +93 -0
  171. package/docs/_posts/components/Geospatial/GeoMetadata.md +75 -0
  172. package/docs/_posts/components/Geospatial/GeoOrigin.md +69 -0
  173. package/docs/_posts/components/Geospatial/GeoPositionInterpolator.md +95 -0
  174. package/docs/_posts/components/Geospatial/GeoProximitySensor.md +109 -0
  175. package/docs/_posts/components/Geospatial/GeoTouchSensor.md +108 -0
  176. package/docs/_posts/components/Geospatial/GeoTransform.md +121 -0
  177. package/docs/_posts/components/Geospatial/GeoViewpoint.md +126 -0
  178. package/docs/_posts/components/Grouping/Group.md +75 -0
  179. package/docs/_posts/components/Grouping/StaticGroup.md +65 -0
  180. package/docs/_posts/components/Grouping/Switch.md +89 -0
  181. package/docs/_posts/components/Grouping/Transform.md +126 -0
  182. package/docs/_posts/components/HAnim/HAnimDisplacer.md +89 -0
  183. package/docs/_posts/components/HAnim/HAnimHumanoid.md +136 -0
  184. package/docs/_posts/components/HAnim/HAnimJoint.md +165 -0
  185. package/docs/_posts/components/HAnim/HAnimMotion.md +68 -0
  186. package/docs/_posts/components/HAnim/HAnimSegment.md +107 -0
  187. package/docs/_posts/components/HAnim/HAnimSite.md +108 -0
  188. package/docs/_posts/components/Interpolation/ColorInterpolator.md +73 -0
  189. package/docs/_posts/components/Interpolation/CoordinateInterpolator.md +76 -0
  190. package/docs/_posts/components/Interpolation/CoordinateInterpolator2D.md +73 -0
  191. package/docs/_posts/components/Interpolation/EaseInEaseOut.md +67 -0
  192. package/docs/_posts/components/Interpolation/NormalInterpolator.md +68 -0
  193. package/docs/_posts/components/Interpolation/OrientationInterpolator.md +72 -0
  194. package/docs/_posts/components/Interpolation/PositionInterpolator.md +72 -0
  195. package/docs/_posts/components/Interpolation/PositionInterpolator2D.md +77 -0
  196. package/docs/_posts/components/Interpolation/ScalarInterpolator.md +76 -0
  197. package/docs/_posts/components/Interpolation/SplinePositionInterpolator.md +93 -0
  198. package/docs/_posts/components/Interpolation/SplinePositionInterpolator2D.md +93 -0
  199. package/docs/_posts/components/Interpolation/SplineScalarInterpolator.md +106 -0
  200. package/docs/_posts/components/Interpolation/SquadOrientationInterpolator.md +78 -0
  201. package/docs/_posts/components/KeyDeviceSensor/KeySensor.md +78 -0
  202. package/docs/_posts/components/KeyDeviceSensor/StringSensor.md +70 -0
  203. package/docs/_posts/components/Layering/Layer.md +67 -0
  204. package/docs/_posts/components/Layering/LayerSet.md +78 -0
  205. package/docs/_posts/components/Layering/Viewport.md +80 -0
  206. package/docs/_posts/components/Layout/Layout.md +107 -0
  207. package/docs/_posts/components/Layout/LayoutGroup.md +85 -0
  208. package/docs/_posts/components/Layout/LayoutLayer.md +74 -0
  209. package/docs/_posts/components/Layout/ScreenFontStyle.md +137 -0
  210. package/docs/_posts/components/Layout/ScreenGroup.md +71 -0
  211. package/docs/_posts/components/Lighting/DirectionalLight.md +100 -0
  212. package/docs/_posts/components/Lighting/EnvironmentLight.md +91 -0
  213. package/docs/_posts/components/Lighting/PointLight.md +103 -0
  214. package/docs/_posts/components/Lighting/SpotLight.md +132 -0
  215. package/docs/_posts/components/NURBS/Contour2D.md +57 -0
  216. package/docs/_posts/components/NURBS/ContourPolyline2D.md +46 -0
  217. package/docs/_posts/components/NURBS/CoordinateDouble.md +47 -0
  218. package/docs/_posts/components/NURBS/NurbsCurve.md +71 -0
  219. package/docs/_posts/components/NURBS/NurbsCurve2D.md +66 -0
  220. package/docs/_posts/components/NURBS/NurbsOrientationInterpolator.md +70 -0
  221. package/docs/_posts/components/NURBS/NurbsPatchSurface.md +106 -0
  222. package/docs/_posts/components/NURBS/NurbsPositionInterpolator.md +70 -0
  223. package/docs/_posts/components/NURBS/NurbsSet.md +66 -0
  224. package/docs/_posts/components/NURBS/NurbsSurfaceInterpolator.md +90 -0
  225. package/docs/_posts/components/NURBS/NurbsSweptSurface.md +69 -0
  226. package/docs/_posts/components/NURBS/NurbsSwungSurface.md +65 -0
  227. package/docs/_posts/components/NURBS/NurbsTextureCoordinate.md +77 -0
  228. package/docs/_posts/components/NURBS/NurbsTrimmedSurface.md +114 -0
  229. package/docs/_posts/components/Navigation/Billboard.md +88 -0
  230. package/docs/_posts/components/Navigation/Collision.md +102 -0
  231. package/docs/_posts/components/Navigation/LOD.md +99 -0
  232. package/docs/_posts/components/Navigation/NavigationInfo.md +122 -0
  233. package/docs/_posts/components/Navigation/OrthoViewpoint.md +117 -0
  234. package/docs/_posts/components/Navigation/Viewpoint.md +117 -0
  235. package/docs/_posts/components/Navigation/ViewpointGroup.md +80 -0
  236. package/docs/_posts/components/Networking/Anchor.md +111 -0
  237. package/docs/_posts/components/Networking/Inline.md +115 -0
  238. package/docs/_posts/components/Networking/LoadSensor.md +91 -0
  239. package/docs/_posts/components/ParticleSystems/BoundedPhysicsModel.md +54 -0
  240. package/docs/_posts/components/ParticleSystems/ConeEmitter.md +76 -0
  241. package/docs/_posts/components/ParticleSystems/ExplosionEmitter.md +72 -0
  242. package/docs/_posts/components/ParticleSystems/ForcePhysicsModel.md +58 -0
  243. package/docs/_posts/components/ParticleSystems/ParticleSystem.md +177 -0
  244. package/docs/_posts/components/ParticleSystems/PointEmitter.md +76 -0
  245. package/docs/_posts/components/ParticleSystems/PolylineEmitter.md +94 -0
  246. package/docs/_posts/components/ParticleSystems/SurfaceEmitter.md +90 -0
  247. package/docs/_posts/components/ParticleSystems/VolumeEmitter.md +90 -0
  248. package/docs/_posts/components/ParticleSystems/WindPhysicsModel.md +68 -0
  249. package/docs/_posts/components/Picking/LinePickSensor.md +125 -0
  250. package/docs/_posts/components/Picking/PickableGroup.md +93 -0
  251. package/docs/_posts/components/Picking/PointPickSensor.md +112 -0
  252. package/docs/_posts/components/Picking/PrimitivePickSensor.md +114 -0
  253. package/docs/_posts/components/Picking/VolumePickSensor.md +107 -0
  254. package/docs/_posts/components/PointingDeviceSensor/CylinderSensor.md +122 -0
  255. package/docs/_posts/components/PointingDeviceSensor/PlaneSensor.md +114 -0
  256. package/docs/_posts/components/PointingDeviceSensor/SphereSensor.md +89 -0
  257. package/docs/_posts/components/PointingDeviceSensor/TouchSensor.md +87 -0
  258. package/docs/_posts/components/Rendering/ClipPlane.md +67 -0
  259. package/docs/_posts/components/Rendering/Color.md +56 -0
  260. package/docs/_posts/components/Rendering/ColorRGBA.md +61 -0
  261. package/docs/_posts/components/Rendering/Coordinate.md +45 -0
  262. package/docs/_posts/components/Rendering/IndexedLineSet.md +128 -0
  263. package/docs/_posts/components/Rendering/IndexedTriangleFanSet.md +128 -0
  264. package/docs/_posts/components/Rendering/IndexedTriangleSet.md +128 -0
  265. package/docs/_posts/components/Rendering/IndexedTriangleStripSet.md +116 -0
  266. package/docs/_posts/components/Rendering/LineSet.md +85 -0
  267. package/docs/_posts/components/Rendering/Normal.md +41 -0
  268. package/docs/_posts/components/Rendering/PointSet.md +76 -0
  269. package/docs/_posts/components/Rendering/TriangleFanSet.md +112 -0
  270. package/docs/_posts/components/Rendering/TriangleSet.md +108 -0
  271. package/docs/_posts/components/Rendering/TriangleStripSet.md +116 -0
  272. package/docs/_posts/components/RigidBodyPhysics/BallJoint.md +78 -0
  273. package/docs/_posts/components/RigidBodyPhysics/CollidableOffset.md +75 -0
  274. package/docs/_posts/components/RigidBodyPhysics/CollidableShape.md +83 -0
  275. package/docs/_posts/components/RigidBodyPhysics/CollisionCollection.md +90 -0
  276. package/docs/_posts/components/RigidBodyPhysics/CollisionSensor.md +65 -0
  277. package/docs/_posts/components/RigidBodyPhysics/CollisionSpace.md +70 -0
  278. package/docs/_posts/components/RigidBodyPhysics/Contact.md +117 -0
  279. package/docs/_posts/components/RigidBodyPhysics/DoubleAxisHingeJoint.md +162 -0
  280. package/docs/_posts/components/RigidBodyPhysics/MotorJoint.md +183 -0
  281. package/docs/_posts/components/RigidBodyPhysics/RigidBody.md +175 -0
  282. package/docs/_posts/components/RigidBodyPhysics/RigidBodyCollection.md +120 -0
  283. package/docs/_posts/components/RigidBodyPhysics/SingleAxisHingeJoint.md +108 -0
  284. package/docs/_posts/components/RigidBodyPhysics/SliderJoint.md +106 -0
  285. package/docs/_posts/components/RigidBodyPhysics/UniversalJoint.md +119 -0
  286. package/docs/_posts/components/Scripting/Script.md +81 -0
  287. package/docs/_posts/components/Shaders/ComposedShader.md +81 -0
  288. package/docs/_posts/components/Shaders/FloatVertexAttribute.md +65 -0
  289. package/docs/_posts/components/Shaders/Matrix3VertexAttribute.md +53 -0
  290. package/docs/_posts/components/Shaders/Matrix4VertexAttribute.md +53 -0
  291. package/docs/_posts/components/Shaders/PackagedShader.md +77 -0
  292. package/docs/_posts/components/Shaders/ProgramShader.md +71 -0
  293. package/docs/_posts/components/Shaders/ShaderPart.md +76 -0
  294. package/docs/_posts/components/Shaders/ShaderProgram.md +68 -0
  295. package/docs/_posts/components/Shape/AcousticProperties.md +52 -0
  296. package/docs/_posts/components/Shape/Appearance.md +123 -0
  297. package/docs/_posts/components/Shape/FillProperties.md +67 -0
  298. package/docs/_posts/components/Shape/LineProperties.md +63 -0
  299. package/docs/_posts/components/Shape/Material.md +217 -0
  300. package/docs/_posts/components/Shape/PhysicalMaterial.md +173 -0
  301. package/docs/_posts/components/Shape/PointProperties.md +84 -0
  302. package/docs/_posts/components/Shape/Shape.md +63 -0
  303. package/docs/_posts/components/Shape/TwoSidedMaterial.md +149 -0
  304. package/docs/_posts/components/Shape/UnlitMaterial.md +115 -0
  305. package/docs/_posts/components/Sound/Analyser.md +72 -0
  306. package/docs/_posts/components/Sound/AudioClip.md +139 -0
  307. package/docs/_posts/components/Sound/AudioDestination.md +52 -0
  308. package/docs/_posts/components/Sound/BiquadFilter.md +70 -0
  309. package/docs/_posts/components/Sound/BufferAudioSource.md +86 -0
  310. package/docs/_posts/components/Sound/ChannelMerger.md +46 -0
  311. package/docs/_posts/components/Sound/ChannelSelector.md +48 -0
  312. package/docs/_posts/components/Sound/ChannelSplitter.md +48 -0
  313. package/docs/_posts/components/Sound/Convolver.md +66 -0
  314. package/docs/_posts/components/Sound/Delay.md +66 -0
  315. package/docs/_posts/components/Sound/DynamicsCompressor.md +74 -0
  316. package/docs/_posts/components/Sound/Gain.md +62 -0
  317. package/docs/_posts/components/Sound/ListenerPointSource.md +62 -0
  318. package/docs/_posts/components/Sound/MicrophoneSource.md +54 -0
  319. package/docs/_posts/components/Sound/OscillatorSource.md +58 -0
  320. package/docs/_posts/components/Sound/PeriodicWave.md +42 -0
  321. package/docs/_posts/components/Sound/Sound.md +92 -0
  322. package/docs/_posts/components/Sound/SpatialSound.md +68 -0
  323. package/docs/_posts/components/Sound/StreamAudioDestination.md +52 -0
  324. package/docs/_posts/components/Sound/StreamAudioSource.md +54 -0
  325. package/docs/_posts/components/Sound/WaveShaper.md +66 -0
  326. package/docs/_posts/components/Text/FontStyle.md +145 -0
  327. package/docs/_posts/components/Text/Text.md +102 -0
  328. package/docs/_posts/components/TextureProjector/TextureProjector.md +52 -0
  329. package/docs/_posts/components/TextureProjector/TextureProjectorParallel.md +52 -0
  330. package/docs/_posts/components/Texturing/ImageTexture.md +134 -0
  331. package/docs/_posts/components/Texturing/MovieTexture.md +221 -0
  332. package/docs/_posts/components/Texturing/MultiTexture.md +100 -0
  333. package/docs/_posts/components/Texturing/MultiTextureCoordinate.md +47 -0
  334. package/docs/_posts/components/Texturing/MultiTextureTransform.md +47 -0
  335. package/docs/_posts/components/Texturing/PixelTexture.md +80 -0
  336. package/docs/_posts/components/Texturing/TextureCoordinate.md +52 -0
  337. package/docs/_posts/components/Texturing/TextureCoordinateGenerator.md +64 -0
  338. package/docs/_posts/components/Texturing/TextureProperties.md +137 -0
  339. package/docs/_posts/components/Texturing/TextureTransform.md +73 -0
  340. package/docs/_posts/components/Texturing3D/ComposedTexture3D.md +76 -0
  341. package/docs/_posts/components/Texturing3D/ImageTexture3D.md +132 -0
  342. package/docs/_posts/components/Texturing3D/ImageTextureAtlas.md +131 -0
  343. package/docs/_posts/components/Texturing3D/PixelTexture3D.md +75 -0
  344. package/docs/_posts/components/Texturing3D/TextureCoordinate3D.md +53 -0
  345. package/docs/_posts/components/Texturing3D/TextureCoordinate4D.md +52 -0
  346. package/docs/_posts/components/Texturing3D/TextureTransform3D.md +69 -0
  347. package/docs/_posts/components/Texturing3D/TextureTransformMatrix3D.md +57 -0
  348. package/docs/_posts/components/Time/TimeSensor.md +136 -0
  349. package/docs/_posts/components/VolumeRendering/BlendedVolumeStyle.md +92 -0
  350. package/docs/_posts/components/VolumeRendering/BoundaryEnhancementVolumeStyle.md +53 -0
  351. package/docs/_posts/components/VolumeRendering/CartoonVolumeStyle.md +83 -0
  352. package/docs/_posts/components/VolumeRendering/ComposedVolumeStyle.md +51 -0
  353. package/docs/_posts/components/VolumeRendering/EdgeEnhancementVolumeStyle.md +67 -0
  354. package/docs/_posts/components/VolumeRendering/IsoSurfaceVolumeData.md +99 -0
  355. package/docs/_posts/components/VolumeRendering/OpacityMapVolumeStyle.md +51 -0
  356. package/docs/_posts/components/VolumeRendering/ProjectionVolumeStyle.md +48 -0
  357. package/docs/_posts/components/VolumeRendering/SegmentedVolumeData.md +80 -0
  358. package/docs/_posts/components/VolumeRendering/ShadedVolumeStyle.md +75 -0
  359. package/docs/_posts/components/VolumeRendering/SilhouetteEnhancementVolumeStyle.md +63 -0
  360. package/docs/_posts/components/VolumeRendering/ToneMappedVolumeStyle.md +71 -0
  361. package/docs/_posts/components/VolumeRendering/VolumeData.md +71 -0
  362. package/docs/_posts/components/X_ITE/BlendMode.md +94 -0
  363. package/docs/_posts/custom-shaders.md +9 -4
  364. package/docs/_posts/dom-integration.md +1 -6
  365. package/docs/_posts/features.md +2 -2
  366. package/docs/_posts/getting-started.md +100 -57
  367. package/docs/_posts/glossary.md +1 -1
  368. package/docs/_posts/how-to-configure-your-web-server.md +1 -1
  369. package/docs/_posts/reference/browser-services.md +78 -18
  370. package/docs/_posts/reference/constants-services.md +1 -1
  371. package/docs/_posts/reference/ecmascript-object-and-function-definitions.md +1 -1
  372. package/docs/_posts/reference/field-services-and-objects.md +8 -8
  373. package/docs/_posts/reference/prototype-services.md +7 -7
  374. package/docs/_posts/reference/route-services.md +1 -1
  375. package/docs/_posts/reference/scene-services.md +5 -5
  376. package/docs/_posts/reference/script-node-authoring-interface.md +1 -1
  377. package/docs/_posts/report-a-bug.md +1 -1
  378. package/docs/_posts/setup-a-localhost-server.md +5 -1
  379. package/docs/_posts/supported-nodes.md +239 -238
  380. package/docs/_posts/tutorials/adding-backgrounds.md +3 -3
  381. package/docs/_posts/tutorials/adding-fog.md +2 -2
  382. package/docs/_posts/tutorials/adding-sound.md +19 -19
  383. package/docs/_posts/tutorials/animating-transforms.md +17 -17
  384. package/docs/_posts/tutorials/basic-nodes.md +30 -30
  385. package/docs/_posts/tutorials/building-a-x3d-world.md +3 -3
  386. package/docs/_posts/tutorials/building-elevation-grids.md +7 -7
  387. package/docs/_posts/tutorials/building-extruded-shapes.md +7 -7
  388. package/docs/_posts/tutorials/building-primitive-shapes.md +13 -13
  389. package/docs/_posts/tutorials/building-shapes-out-of-points-lines-and-faces.md +21 -21
  390. package/docs/_posts/tutorials/controlling-appearance-with-materials.md +7 -7
  391. package/docs/_posts/tutorials/controlling-color-on-coordinate-based-geometry.md +11 -11
  392. package/docs/_posts/tutorials/controlling-detail.md +4 -4
  393. package/docs/_posts/tutorials/controlling-how-textures-are-mapped.md +7 -7
  394. package/docs/_posts/tutorials/controlling-navigation.md +3 -3
  395. package/docs/_posts/tutorials/controlling-shading-on-coordinate-based-geometry.md +13 -13
  396. package/docs/_posts/tutorials/controlling-the-viewpoint.md +3 -3
  397. package/docs/_posts/tutorials/creating-new-node-types.md +4 -4
  398. package/docs/_posts/tutorials/grouping-nodes.md +13 -13
  399. package/docs/_posts/tutorials/hello-world.md +1 -1
  400. package/docs/_posts/tutorials/improving-performance.md +1 -1
  401. package/docs/_posts/tutorials/increasing-rendering-speed.md +1 -1
  402. package/docs/_posts/tutorials/introducing-animation.md +10 -10
  403. package/docs/_posts/tutorials/introducing-script-use.md +3 -3
  404. package/docs/_posts/tutorials/introducing-x3d.md +1 -1
  405. package/docs/_posts/tutorials/lighting-your-world.md +4 -4
  406. package/docs/_posts/tutorials/mapping-textures.md +7 -7
  407. package/docs/_posts/tutorials/naming-nodes.md +1 -1
  408. package/docs/_posts/tutorials/overview.md +1 -1
  409. package/docs/_posts/tutorials/providing-information-about-your-world.md +2 -2
  410. package/docs/_posts/tutorials/sensing-the-viewer.md +15 -15
  411. package/docs/_posts/tutorials/sensing-viewer-actions.md +10 -10
  412. package/docs/_posts/tutorials/transforming-shapes.md +4 -4
  413. package/docs/_posts/tutorials/writing-program-scripts-with-ecmascript.md +5 -5
  414. package/docs/_posts/what's-new.md +40 -2
  415. package/docs/_tabs/components.md +383 -0
  416. package/docs/_tabs/imprint.md +1 -1
  417. package/docs/_tabs/laboratory.md +38 -6
  418. package/docs/_tabs/playground.html +22 -66
  419. package/docs/_tabs/reference.md +2 -1
  420. package/docs/_tabs/tags.md +1 -1
  421. package/docs/_tabs/tutorials.md +1 -1
  422. package/docs/assets/X3D/Michroma-Regular.ttf +0 -0
  423. package/docs/assets/X3D/peakpx.jpg +0 -0
  424. package/docs/assets/X3D/teaser.x3d +55 -0
  425. package/docs/assets/css/style.scss +120 -11
  426. package/docs/assets/img/laboratory/blend-mode.png +0 -0
  427. package/docs/assets/img/laboratory/dicom-nrrd.png +0 -0
  428. package/docs/assets/img/laboratory/earthquake.png +0 -0
  429. package/docs/assets/img/laboratory/gltf.png +0 -0
  430. package/docs/assets/img/laboratory/l-system.png +0 -0
  431. package/docs/assets/js/autoupdate.js +25 -0
  432. package/docs/laboratory/gltf-sample-viewer.html +318 -0
  433. package/docs/laboratory/x3d-visual-blend-mode-editor.html +1 -0
  434. package/package.json +9 -2
  435. package/src/assets/components/Texturing3D.js +5 -3
  436. package/src/assets/shaders/Types.glsl.js +5 -5
  437. package/src/assets/shaders/webgl1/PBR.fs.js +1 -1
  438. package/src/assets/shaders/webgl1/include/Colors.glsl.js +5 -7
  439. package/src/assets/shaders/webgl1/include/Fragment.glsl.js +4 -0
  440. package/src/assets/shaders/webgl1/include/Hatch.glsl.js +1 -1
  441. package/src/assets/shaders/webgl1/include/Texture.glsl.js +3 -3
  442. package/src/assets/shaders/webgl2/include/Colors.glsl.js +5 -7
  443. package/src/assets/shaders/webgl2/include/Hatch.glsl.js +1 -1
  444. package/src/assets/shaders/webgl2/include/Particle.glsl.js +2 -2
  445. package/src/assets/shaders/webgl2/include/Texture.glsl.js +2 -2
  446. package/src/bookmarks.js +12 -8
  447. package/src/examples.js +3 -0
  448. package/src/lib/jquery.js +20 -0
  449. package/src/lib/libgif/libgif.js +1004 -0
  450. package/src/lib/libtess.js +1 -0
  451. package/src/lib/nurbs/extras/sample.js +5 -7
  452. package/src/standard/Math/Algorithms/Bezier.js +175 -33
  453. package/src/standard/Math/Geometry/Box2.js +15 -55
  454. package/src/standard/Math/Geometry/Box3.js +19 -66
  455. package/src/standard/Math/Geometry/Triangle3.js +14 -79
  456. package/src/standard/Math/Numbers/Color3.js +4 -0
  457. package/src/standard/Math/Numbers/Color4.js +4 -0
  458. package/src/standard/Math/Numbers/Matrix3.js +11 -3
  459. package/src/standard/Math/Numbers/Matrix4.js +9 -6
  460. package/src/standard/Math/Numbers/Rotation4.js +72 -65
  461. package/src/tests.js +3 -0
  462. package/src/x_ite/Base/X3DArrayField.js +0 -2
  463. package/src/x_ite/Base/X3DInfoArray.js +2 -2
  464. package/src/x_ite/Base/X3DObjectArrayField.js +19 -0
  465. package/src/x_ite/Base/X3DTypedArrayField.js +149 -0
  466. package/src/x_ite/Browser/Core/BrowserOptions.js +108 -64
  467. package/src/x_ite/Browser/Core/Context.js +1 -1
  468. package/src/x_ite/Browser/Core/ContextMenu.js +2 -2
  469. package/src/x_ite/Browser/Core/Notification.js +1 -1
  470. package/src/x_ite/Browser/Core/RenderingProperties.js +4 -0
  471. package/src/x_ite/Browser/Core/X3DCoreContext.js +99 -54
  472. package/src/x_ite/Browser/Navigation/ExamineViewer.js +4 -14
  473. package/src/x_ite/Browser/Navigation/LookAtViewer.js +3 -13
  474. package/src/x_ite/Browser/Navigation/PlaneViewer.js +3 -12
  475. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +25 -22
  476. package/src/x_ite/Browser/Navigation/X3DViewer.js +12 -3
  477. package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +2 -2
  478. package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +19 -15
  479. package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +30 -10
  480. package/src/x_ite/Browser/Shaders/X3DShadersContext.js +1 -1
  481. package/src/x_ite/Browser/Shape/X3DShapeContext.js +30 -3
  482. package/src/x_ite/Browser/Text/PolygonText.js +137 -134
  483. package/src/x_ite/Browser/Texturing/GifMedia.js +113 -0
  484. package/src/x_ite/Browser/Texturing3D/DICOMParser.js +1 -6
  485. package/src/x_ite/Browser/Texturing3D/NRRDParser.js +81 -310
  486. package/src/x_ite/Browser/VERSION.js +1 -1
  487. package/src/x_ite/Browser/X3DBrowser.js +162 -122
  488. package/src/x_ite/Browser/X3DBrowserContext.js +7 -5
  489. package/src/x_ite/Components/Core/WorldInfo.js +3 -3
  490. package/src/x_ite/Components/Core/X3DNode.js +7 -7
  491. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +1 -1
  492. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +2 -3
  493. package/src/x_ite/Components/Geometry3D/Extrusion.js +27 -23
  494. package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +10 -19
  495. package/src/x_ite/Components/Grouping/X3DBoundedObject.js +1 -3
  496. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +39 -15
  497. package/src/x_ite/Components/HAnim/HAnimJoint.js +6 -9
  498. package/src/x_ite/Components/Layering/X3DLayerNode.js +21 -2
  499. package/src/x_ite/Components/Layout/Layout.js +4 -2
  500. package/src/x_ite/Components/Layout/ScreenFontStyle.js +6 -0
  501. package/src/x_ite/Components/Lighting/DirectionalLight.js +4 -11
  502. package/src/x_ite/Components/Lighting/EnvironmentLight.js +1 -1
  503. package/src/x_ite/Components/Lighting/PointLight.js +4 -11
  504. package/src/x_ite/Components/Lighting/SpotLight.js +4 -11
  505. package/src/x_ite/Components/Lighting/X3DLightNode.js +7 -9
  506. package/src/x_ite/Components/Navigation/OrthoViewpoint.js +2 -2
  507. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +14 -6
  508. package/src/x_ite/Components/Networking/Inline.js +48 -59
  509. package/src/x_ite/Components/Networking/X3DUrlObject.js +1 -1
  510. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +2 -2
  511. package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +7 -13
  512. package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +4 -2
  513. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +4 -2
  514. package/src/x_ite/Components/Scripting/Script.js +2 -2
  515. package/src/x_ite/Components/Shaders/ShaderPart.js +1 -1
  516. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +1 -3
  517. package/src/x_ite/Components/Shape/Appearance.js +27 -1
  518. package/src/x_ite/Components/Shape/FillProperties.js +1 -0
  519. package/src/x_ite/Components/Shape/LineProperties.js +15 -9
  520. package/src/x_ite/Components/Shape/Material.js +33 -22
  521. package/src/x_ite/Components/Shape/PhysicalMaterial.js +22 -15
  522. package/src/x_ite/Components/Shape/PointProperties.js +23 -7
  523. package/src/x_ite/Components/Shape/UnlitMaterial.js +3 -2
  524. package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +25 -19
  525. package/src/x_ite/Components/Sound/AudioClip.js +5 -5
  526. package/src/x_ite/Components/Sound/X3DSoundSourceNode.js +26 -34
  527. package/src/x_ite/Components/Text/X3DFontStyleNode.js +1 -1
  528. package/src/x_ite/Components/TextureProjector/TextureProjector.js +4 -12
  529. package/src/x_ite/Components/TextureProjector/TextureProjectorParallel.js +6 -14
  530. package/src/x_ite/Components/TextureProjector/X3DTextureProjectorNode.js +7 -7
  531. package/src/x_ite/Components/Texturing/ImageTexture.js +15 -10
  532. package/src/x_ite/Components/Texturing/MovieTexture.js +51 -11
  533. package/src/x_ite/Components/Texturing3D/ImageTexture3D.js +2 -2
  534. package/src/x_ite/Components/Texturing3D/ImageTextureAtlas.js +230 -0
  535. package/src/x_ite/Components/Time/X3DTimeDependentNode.js +12 -10
  536. package/src/x_ite/Execution/BindableList.js +35 -37
  537. package/src/x_ite/Execution/BindableStack.js +25 -7
  538. package/src/x_ite/Execution/X3DScene.js +2 -2
  539. package/src/x_ite/Execution/X3DWorld.js +1 -1
  540. package/src/x_ite/Fields/SFRotation.js +2 -1
  541. package/src/x_ite/Fields/SFString.js +1 -1
  542. package/src/x_ite/InputOutput/FileLoader.js +105 -236
  543. package/src/x_ite/InputOutput/Generator.js +12 -8
  544. package/src/x_ite/Parser/Expressions.js +85 -0
  545. package/src/x_ite/Parser/GLB2Parser.js +147 -0
  546. package/src/x_ite/Parser/GLTF2Parser.js +2221 -0
  547. package/src/x_ite/Parser/GoldenGate.js +64 -13
  548. package/src/x_ite/Parser/JSONParser.js +7 -36
  549. package/src/x_ite/Parser/OBJParser.js +1076 -0
  550. package/src/x_ite/Parser/STLAParser.js +376 -0
  551. package/src/x_ite/Parser/STLBParser.js +156 -0
  552. package/src/x_ite/Parser/SVGParser.js +2476 -0
  553. package/src/x_ite/Parser/VRMLParser.js +127 -183
  554. package/src/x_ite/Parser/X3DOptimizer.js +191 -0
  555. package/src/x_ite/Parser/X3DParser.js +34 -0
  556. package/src/x_ite/Parser/XMLParser.js +11 -109
  557. package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +2 -2
  558. package/src/x_ite/Prototype/X3DProtoDeclaration.js +3 -3
  559. package/src/x_ite/Rendering/DependentRenderer.js +1 -1
  560. package/src/x_ite/Rendering/MultiSampleFrameBuffer.js +150 -0
  561. package/src/x_ite/Rendering/TextureBuffer.js +3 -5
  562. package/src/x_ite/Rendering/X3DRenderObject.js +2 -7
  563. package/src/x_ite/X3D.js +1 -0
  564. package/src/x_ite/X3DCanvas.js +10 -0
  565. package/src/x_ite.html +39 -17
  566. package/webpack.config.js +1 -0
  567. package/x_ite.min.html +38 -17
  568. package/src/standard/Networking/BinaryTransport.js +0 -116
@@ -3,7 +3,7 @@ title: Grouping Nodes
3
3
  date: 2022-11-28
4
4
  nav: tutorials-shapes-geometry-and-appearance
5
5
  categories: [Tutorials]
6
- tags: [grouping, nodes]
6
+ tags: [Grouping, Nodes]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -37,7 +37,7 @@ and more
37
37
 
38
38
  ## Syntax: Group
39
39
 
40
- The [Group](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Group){:target="_blank"} node creates a basic grouping.
40
+ The [Group](../components/grouping/group) node creates a basic grouping.
41
41
 
42
42
  - Every child node in the group is displayed.
43
43
 
@@ -59,7 +59,7 @@ Group {
59
59
 
60
60
  ## Syntax: Switch
61
61
 
62
- The [Switch](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Switch){:target="_blank"} group node creates a switched group
62
+ The [Switch](../components/grouping/switch) group node creates a switched group
63
63
 
64
64
  - Only one child node in the group is displayed
65
65
  - You select which child
@@ -86,7 +86,7 @@ Switch {
86
86
 
87
87
  ## Syntax: Transform
88
88
 
89
- The [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} group node creates a group with its own coordinate system.
89
+ The [Transform](../components/grouping/transform) group node creates a group with its own coordinate system.
90
90
 
91
91
  - Every child node in the group is displayed.
92
92
 
@@ -114,7 +114,7 @@ Transform {
114
114
 
115
115
  ## Syntax: Billboard
116
116
 
117
- The [Billboard](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Billboard){:target="_blank"} group node creates a group with a special coordinate system.
117
+ The [Billboard](../components/navigation/billboard) group node creates a group with a special coordinate system.
118
118
 
119
119
  - Every child node in the group is displayed.
120
120
  - The coordinate system is turned to face viewer.
@@ -183,7 +183,7 @@ Billboard {
183
183
 
184
184
  ## Syntax: Anchor
185
185
 
186
- An [Anchor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#Anchor){:target="_blank"} node creates a group that acts as a clickable anchor
186
+ An [Anchor](../components/networking/anchor) node creates a group that acts as a clickable anchor
187
187
 
188
188
  - Every child node in the group is displayed
189
189
  - Clicking any child follows a URL
@@ -211,7 +211,7 @@ Anchor {
211
211
 
212
212
  ## Syntax: Inline
213
213
 
214
- An [Inline](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#Inline){:target="_blank"} node creates a special group from another X3D file's contents
214
+ An [Inline](../components/networking/inline) node creates a special group from another X3D file's contents
215
215
 
216
216
  - Children read from file selected by a URL
217
217
  - Every child node in group is displayed
@@ -233,10 +233,10 @@ Inline {
233
233
 
234
234
  ## Summary
235
235
 
236
- - The [Group](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Group){:target="_blank"} node creates a basic group
237
- - The [Switch](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Switch){:target="_blank"} node creates a group with 1 choice used
238
- - The [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} node creates a group with a new coordinate system
239
- - The [Billboard](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Billboard){:target="_blank"} node creates a group with a coordinate system that rotates to face the viewer
240
- - The [Anchor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#Anchor){:target="_blank"} node creates a clickable group
236
+ - The [Group](../components/grouping/group) node creates a basic group
237
+ - The [Switch](../components/grouping/switch) node creates a group with 1 choice used
238
+ - The [Transform](../components/grouping/transform) node creates a group with a new coordinate system
239
+ - The [Billboard](../components/navigation/billboard) node creates a group with a coordinate system that rotates to face the viewer
240
+ - The [Anchor](../components/networking/anchor) node creates a clickable group
241
241
  - Clicking any child in the group loads a URL
242
- - The [Inline](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#Inline){:target="_blank"} node creates a special group loaded from another X3D file
242
+ - The [Inline](../components/networking/inline) node creates a special group loaded from another X3D file
@@ -3,7 +3,7 @@ title: Hello, World!
3
3
  date: 2022-11-28
4
4
  nav: tutorials-basic
5
5
  categories: [Tutorials]
6
- tags: [hello, world]
6
+ tags: [Hello, World]
7
7
  ---
8
8
  ## Overview
9
9
 
@@ -3,7 +3,7 @@ title: Improving Performance
3
3
  date: 2022-11-28
4
4
  nav: tutorials-optimize-your-scene
5
5
  categories: [Tutorials]
6
- tags: [improving, performance]
6
+ tags: [Improving, Performance]
7
7
  ---
8
8
  ## Overview
9
9
 
@@ -3,7 +3,7 @@ title: Increasing Rendering Speed
3
3
  date: 2022-11-28
4
4
  nav: tutorials-optimize-your-scene
5
5
  categories: [Tutorials]
6
- tags: [increasing, rendering, speed]
6
+ tags: [Increasing, Rendering, Speed]
7
7
  ---
8
8
  ## Overivew
9
9
 
@@ -3,11 +3,11 @@ title: Introducing Animations
3
3
  date: 2022-11-28
4
4
  nav: tutorials-animation-sensors-and-geometry
5
5
  categories: [Tutorials]
6
- tags: [introducing, animations]
6
+ tags: [Introducing, Animations]
7
7
  ---
8
8
  ## Motivation
9
9
 
10
- - Nodes like [Billboard](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Billboard){:target="_blank"} and [Anchor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#Anchor){:target="_blank"} have built-in behavior
10
+ - Nodes like [Billboard](../components/navigation/billboard) and [Anchor](../components/networking/anchor) have built-in behavior
11
11
  - You can create your own behaviors to make shapes move, rotate, scale, blink, and more
12
12
  - We need a means to trigger, time, and respond to a sequence of events in order to provide better user/world interactions
13
13
 
@@ -28,11 +28,11 @@ An event is a message sent between nodes
28
28
 
29
29
  To spin a shape:
30
30
 
31
- - Connect a node that sends rotation events to a [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} node's *rotation* field
31
+ - Connect a node that sends rotation events to a [Transform](../components/grouping/transform) node's *rotation* field
32
32
 
33
33
  To blink a shape:
34
34
 
35
- - Connect a node that sends color events to a [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"} node's *diffuseColor* field
35
+ - Connect a node that sends color events to a [Material](../components/shape/material) node's *diffuseColor* field
36
36
 
37
37
  ## Routing events
38
38
 
@@ -56,13 +56,13 @@ An inputOutput field is a short-hand for a initializeOnly, inputOnly, and output
56
56
 
57
57
  ## Sample inputs
58
58
 
59
- A [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} node has these input fields:
59
+ A [Transform](../components/grouping/transform) node has these input fields:
60
60
 
61
61
  - *set\_translation*
62
62
  - *set\_rotation*
63
63
  - *set\_scale*
64
64
 
65
- A [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"} node has these input fields:
65
+ A [Material](../components/shape/material) node has these input fields:
66
66
 
67
67
  - *set\_diffuseColor*
68
68
  - *set\_emissiveColor*
@@ -70,15 +70,15 @@ A [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/
70
70
 
71
71
  ## Sample outputs
72
72
 
73
- An [OrientationInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#OrientationInterpolator){:target="_blank"} node has this output field:
73
+ An [OrientationInterpolator](../components/interpolation/orientationinterpolator) node has this output field:
74
74
 
75
75
  - *value\_changed* to send rotation values
76
76
 
77
- A [PositionInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#PositionInterpolator){:target="_blank"} node has this output field:
77
+ A [PositionInterpolator](../components/interpolation/positioninterpolator) node has this output field:
78
78
 
79
79
  - *value\_changed* to send position (translation) values
80
80
 
81
- A [TimeSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/time.html#TimeSensor){:target="_blank"} node has this output field:
81
+ A [TimeSensor](../components/time/timesensor) node has this output field:
82
82
 
83
83
  - *time* to send time values
84
84
 
@@ -151,7 +151,7 @@ If the inputOutput field name is *xxx*, then:
151
151
  - *xxx\_changed* is an output that sends when the field changes
152
152
  - The *set\_* and *\_changed* sufixes are optional but recommended for clarity
153
153
 
154
- The [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} node has:
154
+ The [Transform](../components/grouping/transform) node has:
155
155
 
156
156
  - *rotation* field
157
157
  - *set\_rotation* input
@@ -3,7 +3,7 @@ title: Introducing Script Use
3
3
  date: 2022-11-28
4
4
  nav: tutorials-scripts-and-prototypes
5
5
  categories: [Tutorials]
6
- tags: [introducing, script]
6
+ tags: [Introducing, Script]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -20,7 +20,7 @@ You can create new sensors, interpolators, etc., using program scripts written i
20
20
 
21
21
  ## Syntax: Script
22
22
 
23
- A [Script](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/scripting.html#Script){:target="_blank"} node selects a program script to run:
23
+ A [Script](../components/scripting/script) node selects a program script to run:
24
24
 
25
25
  - *url* - choice of program script
26
26
 
@@ -123,7 +123,7 @@ ROUTE Bouncer.value_changed TO Ball.set_translation
123
123
 
124
124
  ## Summary
125
125
 
126
- The [Script](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/scripting.html#Script){:target="_blank"} node selects a program script, specified by a URL.
126
+ The [Script](../components/scripting/script) node selects a program script, specified by a URL.
127
127
 
128
128
  Program scripts have field and event interface declarations, each with:
129
129
 
@@ -3,7 +3,7 @@ title: Introducing X3D
3
3
  date: 2022-11-28
4
4
  nav: tutorials-shapes-geometry-and-appearance
5
5
  categories: [Tutorials]
6
- tags: [introducing]
6
+ tags: [Introducing]
7
7
  ---
8
8
  ## What is X3D?
9
9
 
@@ -3,7 +3,7 @@ title: Lighting Your World
3
3
  date: 2022-11-28
4
4
  nav: tutorials-textures-lights-and-environment
5
5
  categories: [Tutorials]
6
- tags: [lighting, world]
6
+ tags: [Lighting, World]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -43,7 +43,7 @@ Directional lights and spot lights also have:
43
43
 
44
44
  ## Syntax: PointLight
45
45
 
46
- A [PointLight](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/lighting.html#PointLight){:target="_blank"} node illuminates radially from a point:
46
+ A [PointLight](../components/lighting/pointlight) node illuminates radially from a point:
47
47
 
48
48
  ### XML Encoding
49
49
 
@@ -66,7 +66,7 @@ PointLight {
66
66
 
67
67
  ## Syntax: DirectionalLight
68
68
 
69
- A [DirectionalLight](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/lighting.html#DirectionalLight){:target="_blank"} node illuminates in one direction from infinitely far away:
69
+ A [DirectionalLight](../components/lighting/directionallight) node illuminates in one direction from infinitely far away:
70
70
 
71
71
  ### XML Encoding
72
72
 
@@ -89,7 +89,7 @@ DirectionalLight {
89
89
 
90
90
  ## Syntax: SpotLight
91
91
 
92
- A [SpotLight](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/lighting.html#SpotLight){:target="_blank"} node illuminates from a point, in one direction, within a cone:
92
+ A [SpotLight](../components/lighting/spotlight) node illuminates from a point, in one direction, within a cone:
93
93
 
94
94
  ### XML Encoding
95
95
 
@@ -3,7 +3,7 @@ title: Mapping Textures
3
3
  date: 2022-11-28
4
4
  nav: tutorials-textures-lights-and-environment
5
5
  categories: [Tutorials]
6
- tags: [mapping, textures]
6
+ tags: [Mapping, Textures]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -52,7 +52,7 @@ Movie texture:
52
52
 
53
53
  ## Syntax: Appearance
54
54
 
55
- An [Appearance](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Appearance){:target="_blank"} node describes overall shape appearance:
55
+ An [Appearance](../components/shape/appearance) node describes overall shape appearance:
56
56
 
57
57
  - *texture* - texture source
58
58
 
@@ -82,7 +82,7 @@ Shape {
82
82
 
83
83
  ## Syntax: ImageTexture
84
84
 
85
- An [ImageTexture](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/texturing.html#ImageTexture){:target="_blank"} node selects a texture image for texture mapping:
85
+ An [ImageTexture](../components/texturing/imagetexture) node selects a texture image for texture mapping:
86
86
 
87
87
  - *url* - texture image file URL
88
88
 
@@ -115,7 +115,7 @@ Shape {
115
115
 
116
116
  ## Syntax: PixelTexture
117
117
 
118
- A [PixelTexture](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/texturing.html#PixelTexture){:target="_blank"} node specifies texture image pixels for texture mapping:
118
+ A [PixelTexture](../components/texturing/pixeltexture) node specifies texture image pixels for texture mapping:
119
119
 
120
120
  - *image* - texture image pixels
121
121
  - Image data - width, height, bytes/pixel, pixel values
@@ -151,7 +151,7 @@ Shape {
151
151
 
152
152
  ## Syntax: MovieTexture
153
153
 
154
- A [MovieTexture](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/texturing.html#MovieTexture){:target="_blank"} node selects a texture movie for texture mapping:
154
+ A [MovieTexture](../components/texturing/movietexture) node selects a texture movie for texture mapping:
155
155
 
156
156
  - *url* - texture movie file URL
157
157
  - When to play the movie, and how quickly (like a TimeSensor node)
@@ -193,7 +193,7 @@ Shape {
193
193
 
194
194
  ## Using materials with textures
195
195
 
196
- - Color textures override the color in a [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"} node
196
+ - Color textures override the color in a [Material](../components/shape/material) node
197
197
  - Grayscale textures multiply with the Material node color
198
198
  - Good for colorizing grayscale textures
199
199
  - If there is no Material node, the texture is applied emissively
@@ -212,6 +212,6 @@ Pixel transparency enables you to make parts of a shape transparent:
212
212
  ## Summary
213
213
 
214
214
  - A texture is like a decal pasted to a shape
215
- - Specify the texture using an [ImageTexture](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/texturing.html#ImageTexture){:target="_blank"}, [PixelTexture](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/texturing.html#PixelTexture){:target="_blank"}, or [MovieTexture](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/texturing.html#MovieTexture){:target="_blank"} node in an [Appearance](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Appearance){:target="_blank"} node
215
+ - Specify the texture using an [ImageTexture](../components/texturing/imagetexture), [PixelTexture](../components/texturing/pixeltexture), or [MovieTexture](../components/texturing/movietexture) node in an [Appearance](../components/shape/appearance) node
216
216
  - Color textures override material, grayscale textures multiply
217
217
  - Textures with transparency create holes
@@ -3,7 +3,7 @@ title: Naming Nodes
3
3
  date: 2022-11-28
4
4
  nav: tutorials-shapes-geometry-and-appearance
5
5
  categories: [Tutorials]
6
- tags: [naming, nodes]
6
+ tags: [Naming, Nodes]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -3,7 +3,7 @@ title: Tutorials
3
3
  date: 2022-11-28
4
4
  nav: none
5
5
  categories: [Tutorials]
6
- tags: [tutorials]
6
+ tags: [Tutorials]
7
7
  ---
8
8
  ## Overview
9
9
 
@@ -3,7 +3,7 @@ title: Providing Information About Your World
3
3
  date: 2022-11-28
4
4
  nav: tutorials-scripts-and-prototypes
5
5
  categories: [Tutorials]
6
- tags: [providing, information, world]
6
+ tags: [Providing, Information, World]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -12,7 +12,7 @@ tags: [providing, information, world]
12
12
 
13
13
  ## Syntax: WorldInfo
14
14
 
15
- A [WorldInfo](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/core.html#WorldInfo){:target="_blank"} node provides title and description information for your world:
15
+ A [WorldInfo](../components/core/worldinfo) node provides title and description information for your world:
16
16
 
17
17
  - *title* - the name for your world
18
18
  - *info* - any additional information
@@ -3,7 +3,7 @@ title: Sensing the Viewer
3
3
  date: 2022-11-28
4
4
  nav: tutorials-textures-lights-and-environment
5
5
  categories: [Tutorials]
6
- tags: [sensing, viewer]
6
+ tags: [Sensing, Viewer]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -13,19 +13,19 @@ Sensing the viewer enables you to trigger animations:
13
13
  - when the viewer is within a region
14
14
  - when the viewer collides with a shape
15
15
 
16
- The [LOD](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#LOD){:target="_blank"} and [Billboard](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Billboard){:target="_blank"} nodes are special-purpose viewer sensors with built-in responses.
16
+ The [LOD](../components/navigation/lod) and [Billboard](../components/navigation/billboard) nodes are special-purpose viewer sensors with built-in responses.
17
17
 
18
18
  ## Sensing the viewer
19
19
 
20
20
  There are three types of viewer sensors:
21
21
 
22
- - A [VisibilitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#VisibilitySensor){:target="_blank"} node senses if the viewer can see a region
23
- - A [ProximitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#ProximitySensor){:target="_blank"} node senses if the viewer is within a region
24
- - A [Collision](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Collision){:target="_blank"} node senses if the viewer has collided with shapes
22
+ - A [VisibilitySensor](../components/environmentalsensor/visibilitysensor) node senses if the viewer can see a region
23
+ - A [ProximitySensor](../components/environmentalsensor/proximitysensor) node senses if the viewer is within a region
24
+ - A [Collision](../components/navigation/collision) node senses if the viewer has collided with shapes
25
25
 
26
26
  ## Using visibility and proximity sensors
27
27
 
28
- [VisibilitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#VisibilitySensor){:target="_blank"} and [ProximitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#ProximitySensor){:target="_blank"} nodes sense a box-shaped region:
28
+ [VisibilitySensor](../components/environmentalsensor/visibilitysensor) and [ProximitySensor](../components/environmentalsensor/proximitysensor) nodes sense a box-shaped region:
29
29
 
30
30
  - *center* - region center
31
31
  - *size* - region dimensions
@@ -38,7 +38,7 @@ Both nodes have similar outputs:
38
38
 
39
39
  ## Syntax: VisibilitySensor
40
40
 
41
- A [VisibilitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/e#VisibilitySensor){:target="_blank"} node senses if the viewer sees or stops seeing a region:
41
+ A [VisibilitySensor](../components/environmentalsensor/visibilitysensor) node senses if the viewer sees or stops seeing a region:
42
42
 
43
43
  - *center* and *size* - the region's location and size
44
44
  - *enterTime* and *exitTime* - sends time on entry/exit
@@ -67,7 +67,7 @@ ROUTE Sensor.enterTime TO Clock.set_startTime
67
67
 
68
68
  ## Syntax: ProximitySensor
69
69
 
70
- A [ProximitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/nvironmentalSensor.html#ProximitySensor){:target="_blank"} node senses if the viewer enters or leaves a region:
70
+ A [ProximitySensor](../components/environmentalsensor/proximitysensor) node senses if the viewer enters or leaves a region:
71
71
 
72
72
  - *center* and *size* - the region's location and size
73
73
  - *enterTime* and *exitTime* - sends time on entry/exit
@@ -94,7 +94,7 @@ DEF Sensor ProximitySensor {
94
94
  ROUTE Sensor.enterTime TO Clock.set_startTime
95
95
  ```
96
96
 
97
- A [ProximitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#ProximitySensor){:target="_blank"} node senses the viewer while in a region:
97
+ A [ProximitySensor](../components/environmentalsensor/proximitysensor) node senses the viewer while in a region:
98
98
 
99
99
  - *position* and *orientation* - sends position and orientation while viewer is in the region
100
100
 
@@ -116,14 +116,14 @@ ROUTE Sensor.position_changed TO PetRobotFollower.set_translation
116
116
 
117
117
  ## Detecting viewer-shape collision
118
118
 
119
- A [Collision](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Collision){:target="_blank"} grouping node senses shapes within the group:
119
+ A [Collision](../components/navigation/collision) grouping node senses shapes within the group:
120
120
 
121
121
  - Detects if the viewer collides with any shape in the group
122
122
  - Automatically stops the viewer from going through the shape
123
123
 
124
124
  Collision occurs when the viewer's avatar gets close to a shape:
125
125
 
126
- - Collision distance is controlled by the avatar size in the [NavigationInfo](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#NavigationInfo){:target="_blank"} node
126
+ - Collision distance is controlled by the avatar size in the [NavigationInfo](../components/navigation/navigationinfo) node
127
127
 
128
128
  ## Creating collision groups
129
129
 
@@ -139,7 +139,7 @@ A collision group with a proxy shape, but no children, creates an invisible coll
139
139
 
140
140
  ## Syntax: Collision
141
141
 
142
- A [Collision](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Collision){:target="_blank"} grouping node senses if the viewer collides with group shapes:
142
+ A [Collision](../components/navigation/collision) grouping node senses if the viewer collides with group shapes:
143
143
 
144
144
  - *enabled* - enable/disable sensor
145
145
  - *proxy* - simple shape to sense instead of children
@@ -191,20 +191,20 @@ Any number of sensors can sense at the same time:
191
191
 
192
192
  ## Summary
193
193
 
194
- A [VisibilitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#VisibilitySensor){:target="_blank"} node checks if a region is visible to the viewer:
194
+ A [VisibilitySensor](../components/environmentalsensor/visibilitysensor) node checks if a region is visible to the viewer:
195
195
 
196
196
  - The region is described by a center and a size
197
197
  - Time is sent on entry and exit of visibility
198
198
  - True/false is sent on entry and exit of visibility
199
199
 
200
- A [ProximitySensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/environmentalSensor.html#ProximitySensor){:target="_blank"} node checks if the viewer is within a region:
200
+ A [ProximitySensor](../components/environmentalsensor/proximitysensor) node checks if the viewer is within a region:
201
201
 
202
202
  - The region is described by a center and a size
203
203
  - Time is sent on viewer entry and exit
204
204
  - True/false is sent on viewer entry and exit
205
205
  - Position and orientation of the viewer is sent while within the sensed region
206
206
 
207
- A [Collision](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/navigation.html#Collision){:target="_blank"} grouping node checks if the viewer has run into a shape:
207
+ A [Collision](../components/navigation/collision) grouping node checks if the viewer has run into a shape:
208
208
 
209
209
  - The shapes are defined by the group's children or a proxy
210
210
  - Collision time is sent on contact
@@ -3,7 +3,7 @@ title: Sensing Viewer Actions
3
3
  date: 2022-11-28
4
4
  nav: tutorials-animation-sensors-and-geometry
5
5
  categories: [Tutorials]
6
- tags: [sensing, viewer, actions]
6
+ tags: [Sensing, Viewer, Actions]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -22,12 +22,12 @@ What can you do:
22
22
 
23
23
  There are four main action sensor types:
24
24
 
25
- - [TouchSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#TouchSensor){:target="_blank"} senses touch
26
- - [SphereSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#SphereSensor){:target="_blank"} senses drags
27
- - [CylinderSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#CylinderSensor){:target="_blank"} senses drags
28
- - [PlaneSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#PlaneSensor){:target="_blank"} senses drags
25
+ - [TouchSensor](../components/pointingdevicesensor/touchsensor) senses touch
26
+ - [SphereSensor](../components/pointingdevicesensor/spheresensor) senses drags
27
+ - [CylinderSensor](../components/pointingdevicesensor/cylindersensor) senses drags
28
+ - [PlaneSensor](../components/pointingdevicesensor/planesensor) senses drags
29
29
 
30
- The [Anchor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/networking.html#Anchor){:target="_blank"} node is a special-purpose action sensor with a built-in response.
30
+ The [Anchor](../components/networking/anchor) node is a special-purpose action sensor with a built-in response.
31
31
 
32
32
  ## Sensing shapes
33
33
 
@@ -36,7 +36,7 @@ The [Anchor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/
36
36
 
37
37
  ## Syntax: TouchSensor
38
38
 
39
- A [TouchSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#TouchSensor){:target="_blank"} node senses the cursor's touch:
39
+ A [TouchSensor](../components/pointingdevicesensor/touchsensor) node senses the cursor's touch:
40
40
 
41
41
  - *isOver* - send true/false when cursor over/not over
42
42
  - *isActive* - send true/false when mouse button pressed/released
@@ -106,7 +106,7 @@ ROUTE Rot1.value_changed TO Frame1.set_rotation
106
106
 
107
107
  ## Syntax: SphereSensor
108
108
 
109
- A [SphereSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#SphereSensor){:target="_blank"} node senses a cursor drag and generates rotations as if rotating a ball:
109
+ A [SphereSensor](../components/pointingdevicesensor/spheresensor) node senses a cursor drag and generates rotations as if rotating a ball:
110
110
 
111
111
  - *isActive* - sends true/false when mouse button pressed/released
112
112
  - *rotation\_changed* - sends rotation during a drag
@@ -135,7 +135,7 @@ ROUTE Rotator.rotation_changed TO RotateMe.set_rotation
135
135
 
136
136
  ## Syntax: CylinderSensor
137
137
 
138
- A [CylinderSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#CylinderSensor){:target="_blank"} node senses a cursor drag and generates rotations as if rotating a cylinder:
138
+ A [CylinderSensor](../components/pointingdevicesensor/cylindersensor) node senses a cursor drag and generates rotations as if rotating a cylinder:
139
139
 
140
140
  - *isActive* - sends true/false when mouse button pressed/released
141
141
  - *rotation\_changed* - sends rotation during a drag
@@ -164,7 +164,7 @@ ROUTE Rotator.rotation_changed TO RotateMe.set_rotation
164
164
 
165
165
  ## Syntax: PlaneSensor
166
166
 
167
- A [PlaneSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#PlaneSensor){:target="_blank"} node senses a cursor drag and generates translations as if sliding on a plane:
167
+ A [PlaneSensor](../components/pointingdevicesensor/planesensor) node senses a cursor drag and generates translations as if sliding on a plane:
168
168
 
169
169
  - *isActive* - sends true/false when mouse button pressed/released
170
170
  - *translation\_changed* - sends translations during a drag
@@ -3,7 +3,7 @@ title: Transforming Shapes
3
3
  date: 2022-11-28
4
4
  nav: tutorials-shapes-geometry-and-appearance
5
5
  categories: [Tutorials]
6
- tags: [transforming, shapes]
6
+ tags: [Transforming, Shapes]
7
7
  ---
8
8
  ## Motivation
9
9
 
@@ -33,7 +33,7 @@ Shapes built in the new coordinate system are positioned, rotated, and scaled al
33
33
 
34
34
  ## Syntax: Transform
35
35
 
36
- The [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} group node creates a group with its own coordinate system
36
+ The [Transform](../components/grouping/transform) group node creates a group with its own coordinate system
37
37
 
38
38
  - *translation* - position
39
39
  - *rotation* - orientation
@@ -268,8 +268,8 @@ Transform {
268
268
  ## Summary
269
269
 
270
270
  - All shapes are built in a coordinate system
271
- - The [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} node creates a new coordinate system relative to its parent
272
- - [Transform](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/grouping.html#Transform){:target="_blank"} node fields do
271
+ - The [Transform](../components/grouping/transform) node creates a new coordinate system relative to its parent
272
+ - [Transform](../components/grouping/transform) node fields do
273
273
  - *translation*
274
274
  - *rotation*
275
275
  - *scale*
@@ -3,11 +3,11 @@ title: Writing Program Scripts with ECMAScript
3
3
  date: 2022-11-28
4
4
  nav: tutorials-scripts-and-prototypes
5
5
  categories: [Tutorials]
6
- tags: [program, scripts, ecmascript, javascript]
6
+ tags: [Program, Scripts, Ecmascript, Javascript]
7
7
  ---
8
8
  ## Motivation
9
9
 
10
- A program script implements the [Script](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/scripting.html#Script){:target="_blank"} node using values from the interface:
10
+ A program script implements the [Script](../components/scripting/script) node using values from the interface:
11
11
 
12
12
  - The script responds to inputs and sends outputs
13
13
 
@@ -59,7 +59,7 @@ function initialize ()
59
59
 
60
60
  Initialization occurs when:
61
61
 
62
- - the [Script](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/scripting.html#Script){:target="_blank"} node is created (typically when the browser loads the world)
62
+ - the [Script](../components/scripting/script) node is created (typically when the browser loads the world)
63
63
 
64
64
  ## Shutting down a program script
65
65
 
@@ -74,7 +74,7 @@ function shutdown ()
74
74
 
75
75
  Shutdown occurs when:
76
76
 
77
- - the [Script](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/scripting.html#Script){:target="_blank"} node is deleted
77
+ - the [Script](../components/scripting/script) node is deleted
78
78
  - the browser loads a new world
79
79
 
80
80
  ## Responding to events
@@ -469,7 +469,7 @@ Program scripts can be used to help create 3D user interface widgets:
469
469
 
470
470
  A toggle script turns on at 1st touch, off at 2nd:
471
471
 
472
- - A [TouchSensor](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/pointingDeviceSensor.html#TouchSensor){:target="_blank"} node can supply touch events
472
+ - A [TouchSensor](../components/pointingdevicesensor/touchsensor) node can supply touch events
473
473
 
474
474
  ### XML Encoding
475
475