x_ite 8.0.0 → 8.3.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 (795) hide show
  1. package/.github/workflows/pages-deploy.yml +64 -0
  2. package/.gitmodules +3 -0
  3. package/.vscode/settings.json +3 -2
  4. package/Makefile +9 -4
  5. package/README.md +6 -6
  6. package/build/bin/version.pl +3 -11
  7. package/dist/LICENSE.md +0 -2
  8. package/dist/assets/components/Annotation.js +55 -28
  9. package/dist/assets/components/Annotation.min.js +1 -1
  10. package/dist/assets/components/CADGeometry.js +55 -28
  11. package/dist/assets/components/CADGeometry.min.js +1 -1
  12. package/dist/assets/components/CubeMapTexturing.js +197 -38
  13. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  14. package/dist/assets/components/DIS.js +50 -26
  15. package/dist/assets/components/DIS.min.js +1 -1
  16. package/dist/assets/components/EventUtilities.js +61 -28
  17. package/dist/assets/components/EventUtilities.min.js +1 -1
  18. package/dist/assets/components/Geometry2D.js +96 -48
  19. package/dist/assets/components/Geometry2D.min.js +1 -1
  20. package/dist/assets/components/Geospatial.js +186 -193
  21. package/dist/assets/components/Geospatial.min.js +1 -1
  22. package/dist/assets/components/HAnim.js +92 -53
  23. package/dist/assets/components/HAnim.min.js +1 -1
  24. package/dist/assets/components/KeyDeviceSensor.js +35 -17
  25. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  26. package/dist/assets/components/Layout.js +77 -45
  27. package/dist/assets/components/Layout.min.js +1 -1
  28. package/dist/assets/components/NURBS.js +209 -96
  29. package/dist/assets/components/NURBS.min.js +1 -1
  30. package/dist/assets/components/ParticleSystems.js +125 -62
  31. package/dist/assets/components/ParticleSystems.min.js +1 -1
  32. package/dist/assets/components/Picking.js +105 -70
  33. package/dist/assets/components/Picking.min.js +1 -1
  34. package/dist/assets/components/ProjectiveTextureMapping.js +69 -46
  35. package/dist/assets/components/ProjectiveTextureMapping.min.js +1 -1
  36. package/dist/assets/components/RigidBodyPhysics.js +125 -63
  37. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  38. package/dist/assets/components/Scripting.js +56 -38
  39. package/dist/assets/components/Scripting.min.js +1 -1
  40. package/dist/assets/components/Text.js +16857 -0
  41. package/dist/assets/components/Text.min.js +1 -0
  42. package/dist/assets/components/Texturing3D.js +114 -77
  43. package/dist/assets/components/Texturing3D.min.js +1 -1
  44. package/dist/assets/components/VolumeRendering.js +126 -60
  45. package/dist/assets/components/VolumeRendering.min.js +1 -1
  46. package/dist/assets/components/X_ITE.js +21 -12
  47. package/dist/assets/components/X_ITE.min.js +1 -1
  48. package/dist/x_ite.css +1 -1
  49. package/dist/x_ite.js +17800 -31195
  50. package/dist/x_ite.min.js +1 -1
  51. package/dist/x_ite.zip +0 -0
  52. package/docs/Gemfile +11 -33
  53. package/docs/Gemfile.lock +53 -59
  54. package/docs/LICENSE +21 -0
  55. package/docs/README.md +46 -0
  56. package/docs/_config.yml +320 -127
  57. package/docs/_data/assets/cross_origin.yml +62 -0
  58. package/docs/_data/assets/self_host.yml +51 -0
  59. package/docs/_data/contact.yml +30 -0
  60. package/docs/_data/locales/bg-BG.yml +83 -0
  61. package/docs/_data/locales/de-DE.yml +82 -0
  62. package/docs/_data/locales/en.yml +93 -0
  63. package/docs/_data/locales/es-ES.yml +79 -0
  64. package/docs/_data/locales/fr-FR.yml +79 -0
  65. package/docs/_data/locales/hu-HU.yml +81 -0
  66. package/docs/_data/locales/id-ID.yml +79 -0
  67. package/docs/_data/locales/ko-KR.yml +86 -0
  68. package/docs/_data/locales/my-MM.yml +79 -0
  69. package/docs/_data/locales/pt-BR.yml +79 -0
  70. package/docs/_data/locales/ru-RU.yml +79 -0
  71. package/docs/_data/locales/tr-TR.yml +79 -0
  72. package/docs/_data/locales/uk-UA.yml +79 -0
  73. package/docs/_data/locales/vi-VN.yml +77 -0
  74. package/docs/_data/locales/zh-CN.yml +85 -0
  75. package/docs/_data/share.yml +27 -0
  76. package/docs/_includes/nav.html +19 -0
  77. package/docs/_includes/scripts.html +15 -0
  78. package/docs/_layouts/compress.html +11 -0
  79. package/docs/_layouts/redirect-page.html +6 -0
  80. package/docs/_layouts/wide.html +52 -0
  81. package/docs/_layouts/wrap.html +4 -0
  82. package/docs/_layouts/x_ite.html +8 -0
  83. package/docs/_plugins/no_date.rb +11 -0
  84. package/docs/_plugins/posts-lastmod-hook.rb +14 -0
  85. package/docs/{Accessing-the-External-Browser.md → _posts/accessing-the-external-browser.md} +26 -25
  86. package/docs/_posts/browser-support.md +53 -0
  87. package/docs/{Custom-Shaders.md → _posts/custom-shaders.md} +18 -14
  88. package/docs/{DOM-Integration.md → _posts/dom-integration.md} +29 -22
  89. package/docs/{Features.md → _posts/features.md} +11 -12
  90. package/docs/{index.md → _posts/getting-started.md} +203 -245
  91. package/docs/{Glossary.md → _posts/glossary.md} +5 -6
  92. package/docs/{How-To-Configure-Your-Web-Server.md → _posts/how-to-configure-your-web-server.md} +5 -6
  93. package/docs/{reference/Browser-Services.md → _posts/reference/browser-services.md} +8 -9
  94. package/docs/{reference/Constants-Services.md → _posts/reference/constants-services.md} +14 -15
  95. package/docs/{reference/ECMAScript-Object-and-Function-Definitions.md → _posts/reference/ecmascript-object-and-function-definitions.md} +14 -15
  96. package/docs/_posts/reference/field-services-and-objects.md +1127 -0
  97. package/docs/{reference/Prototype-Services.md → _posts/reference/prototype-services.md} +8 -14
  98. package/docs/{reference/Route-Services.md → _posts/reference/route-services.md} +6 -10
  99. package/docs/{reference/Scene-Services.md → _posts/reference/scene-services.md} +11 -21
  100. package/docs/{reference/Script-Node-Authoring-Interface.md → _posts/reference/script-node-authoring-interface.md} +10 -11
  101. package/docs/_posts/report-a-bug.md +15 -0
  102. package/docs/_posts/setup-a-localhost-server.md +42 -0
  103. package/docs/_posts/supported-nodes.md +377 -0
  104. package/docs/{tutorials/Adding-backgrounds.md → _posts/tutorials/adding-backgrounds.md} +13 -14
  105. package/docs/{tutorials/Adding-fog.md → _posts/tutorials/adding-fog.md} +6 -7
  106. package/docs/{tutorials/Adding-sound.md → _posts/tutorials/adding-sound.md} +27 -26
  107. package/docs/{tutorials/Animating-transforms.md → _posts/tutorials/animating-transforms.md} +36 -37
  108. package/docs/{tutorials/Basic-Nodes.md → _posts/tutorials/basic-nodes.md} +38 -49
  109. package/docs/{tutorials/Building-a-X3D-world.md → _posts/tutorials/building-a-x3d-world.md} +16 -16
  110. package/docs/{tutorials/Building-elevation-grids.md → _posts/tutorials/building-elevation-grids.md} +15 -14
  111. package/docs/{tutorials/Building-extruded-shapes.md → _posts/tutorials/building-extruded-shapes.md} +11 -12
  112. package/docs/{tutorials/Building-primitive-shapes.md → _posts/tutorials/building-primitive-shapes.md} +29 -28
  113. package/docs/{tutorials/Building-shapes-out-of-points,-lines,-and-faces.md → _posts/tutorials/building-shapes-out-of-points-lines-and-faces.md} +25 -27
  114. package/docs/{tutorials/Controlling-appearance-with-materials.md → _posts/tutorials/controlling-appearance-with-materials.md} +20 -19
  115. package/docs/{tutorials/Controlling-color-on-coordinate-based-geometry.md → _posts/tutorials/controlling-color-on-coordinate-based-geometry.md} +15 -16
  116. package/docs/{tutorials/Controlling-detail.md → _posts/tutorials/controlling-detail.md} +12 -11
  117. package/docs/{tutorials/Controlling-how-textures-are-mapped.md → _posts/tutorials/controlling-how-textures-are-mapped.md} +11 -12
  118. package/docs/{tutorials/Controlling-navigation.md → _posts/tutorials/controlling-navigation.md} +7 -8
  119. package/docs/{tutorials/Controlling-shading-on-coordinate-based-geometry.md → _posts/tutorials/controlling-shading-on-coordinate-based-geometry.md} +19 -20
  120. package/docs/{tutorials/Controlling-the-viewpoint.md → _posts/tutorials/controlling-the-viewpoint.md} +7 -8
  121. package/docs/{tutorials/Creating-new-node-types.md → _posts/tutorials/creating-new-node-types.md} +8 -9
  122. package/docs/{tutorials/Grouping-nodes.md → _posts/tutorials/grouping-nodes.md} +17 -18
  123. package/docs/{tutorials/Hello,-World!.md → _posts/tutorials/hello-world.md} +16 -28
  124. package/docs/{tutorials/Improving-Performance.md → _posts/tutorials/improving-performance.md} +7 -11
  125. package/docs/{tutorials/Increasing-Rendering-Speed.md → _posts/tutorials/increasing-rendering-speed.md} +5 -6
  126. package/docs/{tutorials/Introducing-animation.md → _posts/tutorials/introducing-animation.md} +14 -15
  127. package/docs/{tutorials/Introducing-script-use.md → _posts/tutorials/introducing-script-use.md} +7 -8
  128. package/docs/{tutorials/Introducing-X3D.md → _posts/tutorials/introducing-x3d.md} +7 -7
  129. package/docs/{tutorials/Lighting-your-world.md → _posts/tutorials/lighting-your-world.md} +8 -9
  130. package/docs/{tutorials/Mapping-textures.md → _posts/tutorials/mapping-textures.md} +11 -12
  131. package/docs/{tutorials/Naming-nodes.md → _posts/tutorials/naming-nodes.md} +9 -8
  132. package/docs/_posts/tutorials/overview.md +83 -0
  133. package/docs/{tutorials/Providing-information-about-your-world.md → _posts/tutorials/providing-information-about-your-world.md} +6 -7
  134. package/docs/{tutorials/Sensing-the-viewer.md → _posts/tutorials/sensing-the-viewer.md} +19 -20
  135. package/docs/{tutorials/Sensing-viewer-actions.md → _posts/tutorials/sensing-viewer-actions.md} +14 -15
  136. package/docs/{tutorials/Transforming-Shapes.md → _posts/tutorials/transforming-shapes.md} +8 -9
  137. package/docs/{tutorials/Writing-program-scripts-with-ECMAScript.md → _posts/tutorials/writing-program-scripts-with-ecmascript.md} +15 -15
  138. package/docs/{What's-New.md → _posts/what's-new.md} +152 -530
  139. package/docs/_tabs/imprint.md +52 -0
  140. package/docs/_tabs/laboratory.md +14 -0
  141. package/docs/_tabs/playground.html +246 -0
  142. package/docs/_tabs/reference.md +7 -0
  143. package/docs/_tabs/tags.md +5 -0
  144. package/docs/_tabs/tutorials.md +7 -0
  145. package/docs/assets/css/style.scss +194 -0
  146. package/docs/assets/img/favicons/android-chrome-192x192.png +0 -0
  147. package/docs/assets/img/favicons/android-chrome-512x512.png +0 -0
  148. package/docs/assets/img/favicons/apple-touch-icon.png +0 -0
  149. package/docs/assets/img/favicons/favicon-16x16.png +0 -0
  150. package/docs/assets/img/favicons/favicon-32x32.png +0 -0
  151. package/docs/assets/img/favicons/favicon.ico +0 -0
  152. package/docs/assets/img/favicons/mstile-150x150.png +0 -0
  153. package/docs/assets/img/favicons/safari-pinned-tab.svg +71 -0
  154. package/docs/assets/{images → img}/logo.png +0 -0
  155. package/docs/assets/js/example.js +34 -0
  156. package/docs/laboratory/3d-l-system-generator.html +169 -0
  157. package/docs/laboratory/online-dicom-and-nrrd-file-viewer.html +72 -0
  158. package/docs/laboratory/real-time-earth-quake-information.html +50 -0
  159. package/docs/laboratory/x3d-visual-blend-mode-editor.html +227 -0
  160. package/package.json +4 -4
  161. package/src/LICENSE.txt +1 -1
  162. package/src/assets/components/Annotation.js +1 -1
  163. package/src/assets/components/CADGeometry.js +1 -1
  164. package/src/assets/components/CubeMapTexturing.js +1 -1
  165. package/src/assets/components/DIS.js +1 -1
  166. package/src/assets/components/EventUtilities.js +1 -1
  167. package/src/assets/components/Geometry2D.js +1 -1
  168. package/src/assets/components/Geospatial.js +1 -1
  169. package/src/assets/components/HAnim.js +1 -1
  170. package/src/assets/components/KeyDeviceSensor.js +1 -1
  171. package/src/assets/components/Layout.js +1 -1
  172. package/src/assets/components/NURBS.js +1 -1
  173. package/src/assets/components/ParticleSystems.js +1 -1
  174. package/src/assets/components/Picking.js +1 -1
  175. package/src/assets/components/ProjectiveTextureMapping.js +6 -6
  176. package/src/assets/components/RigidBodyPhysics.js +1 -6
  177. package/src/assets/components/Scripting.js +1 -1
  178. package/src/{x_ite/Components → assets/components}/Text.js +19 -21
  179. package/src/assets/components/Texturing3D.js +1 -1
  180. package/src/assets/components/VolumeRendering.js +1 -1
  181. package/src/assets/components/X_ITE.js +1 -1
  182. package/src/assets/shaders/Types.glsl.js +1 -1
  183. package/src/assets/shaders/webgl1/include/Fragment.glsl.js +1 -1
  184. package/src/assets/shaders/webgl1/include/PointSize.glsl.js +6 -6
  185. package/src/assets/shaders/webgl1/include/Vertex.glsl.js +4 -4
  186. package/src/assets/shaders/webgl2/LineTransform.vs.js +11 -11
  187. package/src/assets/shaders/webgl2/include/Fragment.glsl.js +1 -1
  188. package/src/assets/shaders/webgl2/include/PointSize.glsl.js +6 -6
  189. package/src/assets/shaders/webgl2/include/Vertex.glsl.js +4 -4
  190. package/src/bookmarks.js +1 -1
  191. package/src/examples.js +3 -3
  192. package/src/lib/ammojs/AmmoClass.js +1 -1
  193. package/src/lib/jquery.js +1 -1
  194. package/src/locale/gettext.js +1 -1
  195. package/src/shim.js +1 -2
  196. package/src/standard/Geospatial/Geodetic.js +1 -1
  197. package/src/standard/Geospatial/ReferenceEllipsoids.js +3 -3
  198. package/src/standard/Geospatial/UniversalTransverseMercator.js +1 -1
  199. package/src/standard/Math/Algorithm.js +55 -45
  200. package/src/standard/Math/Algorithms/Bezier.js +1 -1
  201. package/src/standard/Math/Algorithms/MergeSort.js +1 -1
  202. package/src/standard/Math/Algorithms/PartialSort.js +1 -1
  203. package/src/standard/Math/Algorithms/QuickSort.js +1 -1
  204. package/src/standard/Math/Algorithms/SAT.js +2 -2
  205. package/src/standard/Math/Algorithms/eigen_decomposition.js +5 -3
  206. package/src/standard/Math/Geometry/Box2.js +1 -1
  207. package/src/standard/Math/Geometry/Box3.js +1 -1
  208. package/src/standard/Math/Geometry/Camera.js +4 -2
  209. package/src/standard/Math/Geometry/Cylinder3.js +1 -1
  210. package/src/standard/Math/Geometry/Line2.js +1 -1
  211. package/src/standard/Math/Geometry/Line3.js +1 -1
  212. package/src/standard/Math/Geometry/Plane3.js +1 -1
  213. package/src/standard/Math/Geometry/Sphere3.js +1 -1
  214. package/src/standard/Math/Geometry/Spheroid3.js +1 -1
  215. package/src/standard/Math/Geometry/Triangle2.js +4 -2
  216. package/src/standard/Math/Geometry/Triangle3.js +4 -2
  217. package/src/standard/Math/Geometry/ViewVolume.js +1 -1
  218. package/src/standard/Math/Numbers/Color3.js +3 -1
  219. package/src/standard/Math/Numbers/Color4.js +4 -1
  220. package/src/standard/Math/Numbers/Complex.js +1 -1
  221. package/src/standard/Math/Numbers/Matrix2.js +1 -1
  222. package/src/standard/Math/Numbers/Matrix3.js +1 -1
  223. package/src/standard/Math/Numbers/Matrix4.js +1 -1
  224. package/src/standard/Math/Numbers/Quaternion.js +1 -1
  225. package/src/standard/Math/Numbers/Rotation4.js +1 -1
  226. package/src/standard/Math/Numbers/Vector2.js +1 -1
  227. package/src/standard/Math/Numbers/Vector3.js +1 -1
  228. package/src/standard/Math/Numbers/Vector4.js +1 -1
  229. package/src/standard/Math/Utility/BVH.js +1 -1
  230. package/src/standard/Math/Utility/MatrixStack.js +1 -1
  231. package/src/standard/Networking/BinaryTransport.js +5 -3
  232. package/src/standard/Time/MicroTime.js +1 -1
  233. package/src/standard/Utility/BitSet.js +1 -1
  234. package/src/standard/Utility/DataStorage.js +1 -1
  235. package/src/standard/Utility/MapUtilities.js +1 -1
  236. package/src/standard/Utility/ObjectCache.js +5 -3
  237. package/src/standard/Utility/Shuffle.js +5 -3
  238. package/src/tests.js +3 -0
  239. package/src/x_ite/Base/Events.js +4 -2
  240. package/src/x_ite/Base/FieldArray.js +1 -1
  241. package/src/x_ite/Base/FieldDefinitionArray.js +1 -1
  242. package/src/x_ite/Base/X3DArrayField.js +8 -4
  243. package/src/x_ite/Base/X3DBaseNode.js +1 -1
  244. package/src/x_ite/Base/X3DCast.js +5 -3
  245. package/src/x_ite/Base/X3DChildObject.js +1 -1
  246. package/src/x_ite/Base/X3DConstants.js +1 -1
  247. package/src/x_ite/Base/X3DEventObject.js +1 -1
  248. package/src/x_ite/Base/X3DField.js +2 -13
  249. package/src/x_ite/Base/X3DFieldDefinition.js +1 -1
  250. package/src/x_ite/Base/X3DInfoArray.js +1 -1
  251. package/src/x_ite/Base/X3DObject.js +1 -1
  252. package/src/x_ite/Base/X3DObjectArrayField.js +1 -1
  253. package/src/x_ite/Base/X3DTypedArrayField.js +59 -33
  254. package/src/x_ite/Browser/Core/BrowserOptions.js +22 -30
  255. package/src/x_ite/Browser/Core/BrowserProperties.js +1 -1
  256. package/src/x_ite/Browser/Core/BrowserTimings.js +1 -1
  257. package/src/x_ite/Browser/Core/Context.js +1 -1
  258. package/src/x_ite/Browser/Core/ContextMenu.js +1 -1
  259. package/src/x_ite/Browser/Core/Notification.js +1 -1
  260. package/src/x_ite/Browser/Core/PrimitiveQuality.js +1 -1
  261. package/src/x_ite/Browser/Core/RenderingProperties.js +1 -1
  262. package/src/x_ite/Browser/Core/Shading.js +1 -1
  263. package/src/x_ite/Browser/Core/TextureQuality.js +1 -1
  264. package/src/x_ite/Browser/Core/X3DCoreContext.js +11 -8
  265. package/src/x_ite/Browser/DOMIntegration.js +25 -26
  266. package/src/x_ite/Browser/EnvironmentalEffects/X3DEnvironmentalEffectsContext.js +1 -1
  267. package/src/x_ite/Browser/Followers/X3DArrayChaserTemplate.js +5 -3
  268. package/src/x_ite/Browser/Followers/X3DArrayFollowerTemplate.js +5 -3
  269. package/src/x_ite/Browser/Geometry2D/Arc2DOptions.js +1 -1
  270. package/src/x_ite/Browser/Geometry2D/ArcClose2DOptions.js +1 -1
  271. package/src/x_ite/Browser/Geometry2D/Circle2DOptions.js +1 -1
  272. package/src/x_ite/Browser/Geometry2D/Disk2DOptions.js +1 -1
  273. package/src/x_ite/Browser/Geometry2D/Rectangle2DOptions.js +1 -1
  274. package/src/x_ite/Browser/Geometry2D/X3DGeometry2DContext.js +1 -1
  275. package/src/x_ite/Browser/Geometry3D/BoxOptions.js +1 -1
  276. package/src/x_ite/Browser/Geometry3D/ConeOptions.js +1 -1
  277. package/src/x_ite/Browser/Geometry3D/CylinderOptions.js +1 -1
  278. package/src/x_ite/Browser/Geometry3D/IcoSphere.js +1 -1
  279. package/src/x_ite/Browser/Geometry3D/IcoSphereOptions.js +1 -1
  280. package/src/x_ite/Browser/Geometry3D/QuadSphereOptions.js +1 -1
  281. package/src/x_ite/Browser/Geometry3D/X3DGeometry3DContext.js +1 -1
  282. package/src/x_ite/Browser/Geospatial/Geocentric.js +1 -2
  283. package/src/x_ite/Browser/Geospatial/Geospatial.js +1 -1
  284. package/src/x_ite/Browser/Grouping/X3DGroupingContext.js +1 -1
  285. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolator.js +1 -1
  286. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolator1.js +1 -1
  287. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolator2.js +4 -2
  288. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolator3.js +4 -2
  289. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolatorTemplate.js +5 -3
  290. package/src/x_ite/Browser/Interpolation/SquatInterpolator.js +1 -1
  291. package/src/x_ite/Browser/KeyDeviceSensor/X3DKeyDeviceSensorContext.js +1 -1
  292. package/src/x_ite/Browser/Layering/X3DLayeringContext.js +1 -1
  293. package/src/x_ite/Browser/Layout/ScreenText.js +1 -1
  294. package/src/x_ite/Browser/Layout/X3DLayoutContext.js +1 -1
  295. package/src/x_ite/Browser/Legacy.js +64 -0
  296. package/src/x_ite/Browser/Lighting/X3DLightingContext.js +1 -1
  297. package/src/x_ite/Browser/NURBS/NURBS.js +1 -1
  298. package/src/x_ite/Browser/Navigation/ExamineViewer.js +6 -39
  299. package/src/x_ite/Browser/Navigation/FlyViewer.js +1 -1
  300. package/src/x_ite/Browser/Navigation/LookAtViewer.js +1 -1
  301. package/src/x_ite/Browser/Navigation/NoneViewer.js +1 -1
  302. package/src/x_ite/Browser/Navigation/PlaneViewer.js +1 -4
  303. package/src/x_ite/Browser/Navigation/WalkViewer.js +1 -1
  304. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +1 -1
  305. package/src/x_ite/Browser/Navigation/X3DNavigationContext.js +3 -2
  306. package/src/x_ite/Browser/Navigation/X3DViewer.js +3 -3
  307. package/src/x_ite/Browser/Networking/Features.js +52 -0
  308. package/src/x_ite/Browser/Networking/URLs.js +11 -12
  309. package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +9 -22
  310. package/src/x_ite/Browser/ParticleSystems/GeometryTypes.js +1 -1
  311. package/src/x_ite/Browser/ParticleSystems/X3DParticleSystemsContext.js +1 -1
  312. package/src/x_ite/Browser/Picking/IntersectionType.js +1 -1
  313. package/src/x_ite/Browser/Picking/MatchCriterion.js +1 -1
  314. package/src/x_ite/Browser/Picking/SortOrder.js +1 -1
  315. package/src/x_ite/Browser/Picking/VolumePicker.js +2 -4
  316. package/src/x_ite/Browser/Picking/X3DPickingContext.js +1 -1
  317. package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +1 -1
  318. package/src/x_ite/Browser/PointingDeviceSensor/PointingDeviceSensorContainer.js +1 -1
  319. package/src/x_ite/Browser/PointingDeviceSensor/X3DPointingDeviceSensorContext.js +1 -1
  320. package/src/x_ite/Browser/Rendering/GeometryContext.js +1 -1
  321. package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +1 -1
  322. package/src/x_ite/Browser/RigidBodyPhysics/AppliedParametersType.js +1 -1
  323. package/src/x_ite/Browser/Scripting/X3DScriptingContext.js +1 -1
  324. package/src/x_ite/Browser/Scripting/evaluate.js +5 -3
  325. package/src/x_ite/Browser/Shaders/ShaderCompiler.js +1 -1
  326. package/src/x_ite/Browser/Shaders/ShaderSource.js +5 -5
  327. package/src/x_ite/Browser/Shaders/Shaders.js +1 -1
  328. package/src/x_ite/Browser/Shaders/X3DShadersContext.js +1 -1
  329. package/src/x_ite/Browser/Shape/AlphaMode.js +1 -1
  330. package/src/x_ite/Browser/Shape/X3DShapeContext.js +4 -4
  331. package/src/x_ite/Browser/Sound/X3DSoundContext.js +1 -1
  332. package/src/x_ite/Browser/Text/PolygonText.js +1 -1
  333. package/src/x_ite/Browser/Text/TextAlignment.js +1 -1
  334. package/src/x_ite/Browser/Text/X3DTextContext.js +1 -1
  335. package/src/x_ite/Browser/Text/X3DTextGeometry.js +1 -1
  336. package/src/x_ite/Browser/Texturing/FunctionType.js +1 -1
  337. package/src/x_ite/Browser/Texturing/ModeType.js +1 -1
  338. package/src/x_ite/Browser/Texturing/SourceType.js +1 -1
  339. package/src/x_ite/Browser/Texturing/TextureCoordinateGeneratorModeType.js +1 -1
  340. package/src/x_ite/Browser/Texturing/X3DTexturingContext.js +1 -1
  341. package/src/x_ite/Browser/Texturing3D/DICOMParser.js +3 -3
  342. package/src/x_ite/Browser/Texturing3D/NRRDParser.js +2 -2
  343. package/src/x_ite/Browser/Time/X3DTimeContext.js +1 -1
  344. package/src/x_ite/Browser/VERSION.js +2 -2
  345. package/src/x_ite/Browser/VolumeRendering/VolumeMaterial.js +1 -1
  346. package/src/x_ite/Browser/VolumeRendering/X3DVolumeRenderingContext.js +1 -1
  347. package/src/x_ite/Browser/X3DBrowser.js +43 -52
  348. package/src/x_ite/Browser/X3DBrowserContext.js +1 -5
  349. package/src/x_ite/Components/Annotation/AnnotationLayer.js +1 -1
  350. package/src/x_ite/Components/Annotation/AnnotationTarget.js +1 -1
  351. package/src/x_ite/Components/Annotation/GroupAnnotation.js +1 -1
  352. package/src/x_ite/Components/Annotation/IconAnnotation.js +1 -1
  353. package/src/x_ite/Components/Annotation/TextAnnotation.js +1 -1
  354. package/src/x_ite/Components/Annotation/URLAnnotation.js +1 -1
  355. package/src/x_ite/Components/Annotation/X3DAnnotationNode.js +1 -1
  356. package/src/x_ite/Components/CADGeometry/CADAssembly.js +1 -1
  357. package/src/x_ite/Components/CADGeometry/CADFace.js +1 -1
  358. package/src/x_ite/Components/CADGeometry/CADLayer.js +1 -1
  359. package/src/x_ite/Components/CADGeometry/CADPart.js +1 -1
  360. package/src/x_ite/Components/CADGeometry/IndexedQuadSet.js +1 -1
  361. package/src/x_ite/Components/CADGeometry/QuadSet.js +1 -1
  362. package/src/x_ite/Components/CADGeometry/X3DProductStructureChildNode.js +1 -1
  363. package/src/x_ite/Components/Core/MetadataBoolean.js +1 -1
  364. package/src/x_ite/Components/Core/MetadataDouble.js +1 -1
  365. package/src/x_ite/Components/Core/MetadataFloat.js +1 -1
  366. package/src/x_ite/Components/Core/MetadataInteger.js +1 -1
  367. package/src/x_ite/Components/Core/MetadataSet.js +1 -1
  368. package/src/x_ite/Components/Core/MetadataString.js +1 -1
  369. package/src/x_ite/Components/Core/WorldInfo.js +1 -1
  370. package/src/x_ite/Components/Core/X3DBindableNode.js +1 -1
  371. package/src/x_ite/Components/Core/X3DChildNode.js +1 -1
  372. package/src/x_ite/Components/Core/X3DInfoNode.js +1 -1
  373. package/src/x_ite/Components/Core/X3DMetadataObject.js +1 -1
  374. package/src/x_ite/Components/Core/X3DNode.js +5 -5
  375. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +2 -2
  376. package/src/x_ite/Components/Core/X3DSensorNode.js +1 -1
  377. package/src/x_ite/Components/Core.js +1 -1
  378. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +1 -1
  379. package/src/x_ite/Components/CubeMapTexturing/GeneratedCubeMapTexture.js +1 -1
  380. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +1 -1
  381. package/src/x_ite/Components/CubeMapTexturing/X3DEnvironmentTextureNode.js +1 -1
  382. package/src/x_ite/Components/DIS/DISEntityManager.js +1 -1
  383. package/src/x_ite/Components/DIS/DISEntityTypeMapping.js +1 -1
  384. package/src/x_ite/Components/DIS/EspduTransform.js +1 -1
  385. package/src/x_ite/Components/DIS/ReceiverPdu.js +1 -1
  386. package/src/x_ite/Components/DIS/SignalPdu.js +1 -1
  387. package/src/x_ite/Components/DIS/TransmitterPdu.js +1 -1
  388. package/src/x_ite/Components/EnvironmentalEffects/Background.js +1 -1
  389. package/src/x_ite/Components/EnvironmentalEffects/Fog.js +1 -1
  390. package/src/x_ite/Components/EnvironmentalEffects/FogCoordinate.js +1 -1
  391. package/src/x_ite/Components/EnvironmentalEffects/LocalFog.js +1 -1
  392. package/src/x_ite/Components/EnvironmentalEffects/TextureBackground.js +1 -1
  393. package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +6 -12
  394. package/src/x_ite/Components/EnvironmentalEffects/X3DFogObject.js +1 -1
  395. package/src/x_ite/Components/EnvironmentalEffects.js +1 -1
  396. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +1 -1
  397. package/src/x_ite/Components/EnvironmentalSensor/TransformSensor.js +1 -1
  398. package/src/x_ite/Components/EnvironmentalSensor/VisibilitySensor.js +1 -1
  399. package/src/x_ite/Components/EnvironmentalSensor/X3DEnvironmentalSensorNode.js +1 -1
  400. package/src/x_ite/Components/EnvironmentalSensor.js +1 -1
  401. package/src/x_ite/Components/EventUtilities/BooleanFilter.js +1 -1
  402. package/src/x_ite/Components/EventUtilities/BooleanSequencer.js +1 -1
  403. package/src/x_ite/Components/EventUtilities/BooleanToggle.js +1 -1
  404. package/src/x_ite/Components/EventUtilities/BooleanTrigger.js +1 -1
  405. package/src/x_ite/Components/EventUtilities/IntegerSequencer.js +1 -1
  406. package/src/x_ite/Components/EventUtilities/IntegerTrigger.js +1 -1
  407. package/src/x_ite/Components/EventUtilities/TimeTrigger.js +1 -1
  408. package/src/x_ite/Components/EventUtilities/X3DSequencerNode.js +1 -1
  409. package/src/x_ite/Components/EventUtilities/X3DTriggerNode.js +1 -1
  410. package/src/x_ite/Components/Followers/ColorChaser.js +1 -1
  411. package/src/x_ite/Components/Followers/ColorDamper.js +1 -1
  412. package/src/x_ite/Components/Followers/CoordinateChaser.js +1 -1
  413. package/src/x_ite/Components/Followers/CoordinateDamper.js +1 -1
  414. package/src/x_ite/Components/Followers/OrientationChaser.js +1 -1
  415. package/src/x_ite/Components/Followers/OrientationDamper.js +1 -1
  416. package/src/x_ite/Components/Followers/PositionChaser.js +1 -1
  417. package/src/x_ite/Components/Followers/PositionChaser2D.js +1 -1
  418. package/src/x_ite/Components/Followers/PositionDamper.js +1 -1
  419. package/src/x_ite/Components/Followers/PositionDamper2D.js +1 -1
  420. package/src/x_ite/Components/Followers/ScalarChaser.js +1 -1
  421. package/src/x_ite/Components/Followers/ScalarDamper.js +1 -1
  422. package/src/x_ite/Components/Followers/TexCoordChaser2D.js +1 -1
  423. package/src/x_ite/Components/Followers/TexCoordDamper2D.js +1 -1
  424. package/src/x_ite/Components/Followers/X3DChaserNode.js +1 -1
  425. package/src/x_ite/Components/Followers/X3DDamperNode.js +1 -1
  426. package/src/x_ite/Components/Followers/X3DFollowerNode.js +1 -1
  427. package/src/x_ite/Components/Followers.js +1 -1
  428. package/src/x_ite/Components/Geometry2D/Arc2D.js +1 -1
  429. package/src/x_ite/Components/Geometry2D/ArcClose2D.js +1 -1
  430. package/src/x_ite/Components/Geometry2D/Circle2D.js +1 -1
  431. package/src/x_ite/Components/Geometry2D/Disk2D.js +1 -1
  432. package/src/x_ite/Components/Geometry2D/Polyline2D.js +1 -1
  433. package/src/x_ite/Components/Geometry2D/Polypoint2D.js +1 -1
  434. package/src/x_ite/Components/Geometry2D/Rectangle2D.js +1 -1
  435. package/src/x_ite/Components/Geometry2D/TriangleSet2D.js +1 -1
  436. package/src/x_ite/Components/Geometry3D/Box.js +1 -1
  437. package/src/x_ite/Components/Geometry3D/Cone.js +3 -3
  438. package/src/x_ite/Components/Geometry3D/Cylinder.js +4 -4
  439. package/src/x_ite/Components/Geometry3D/ElevationGrid.js +1 -1
  440. package/src/x_ite/Components/Geometry3D/Extrusion.js +1 -1
  441. package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +1 -1
  442. package/src/x_ite/Components/Geometry3D/Sphere.js +1 -1
  443. package/src/x_ite/Components/Geometry3D.js +1 -1
  444. package/src/x_ite/Components/Geospatial/GeoCoordinate.js +1 -1
  445. package/src/x_ite/Components/Geospatial/GeoElevationGrid.js +1 -1
  446. package/src/x_ite/Components/Geospatial/GeoLOD.js +1 -1
  447. package/src/x_ite/Components/Geospatial/GeoLocation.js +1 -1
  448. package/src/x_ite/Components/Geospatial/GeoMetadata.js +1 -1
  449. package/src/x_ite/Components/Geospatial/GeoOrigin.js +1 -1
  450. package/src/x_ite/Components/Geospatial/GeoPositionInterpolator.js +17 -13
  451. package/src/x_ite/Components/Geospatial/GeoProximitySensor.js +1 -1
  452. package/src/x_ite/Components/Geospatial/GeoTouchSensor.js +1 -1
  453. package/src/x_ite/Components/Geospatial/GeoTransform.js +1 -1
  454. package/src/x_ite/Components/Geospatial/GeoViewpoint.js +39 -106
  455. package/src/x_ite/Components/Geospatial/X3DGeospatialObject.js +1 -1
  456. package/src/x_ite/Components/Grouping/Group.js +1 -1
  457. package/src/x_ite/Components/Grouping/StaticGroup.js +1 -1
  458. package/src/x_ite/Components/Grouping/Switch.js +1 -1
  459. package/src/x_ite/Components/Grouping/Transform.js +1 -1
  460. package/src/x_ite/Components/Grouping/X3DBoundedObject.js +1 -1
  461. package/src/x_ite/Components/Grouping/X3DGroupingNode.js +1 -1
  462. package/src/x_ite/Components/Grouping/X3DTransformMatrix3DNode.js +1 -1
  463. package/src/x_ite/Components/Grouping/X3DTransformNode.js +1 -1
  464. package/src/x_ite/Components/Grouping.js +1 -1
  465. package/src/x_ite/Components/HAnim/HAnimDisplacer.js +2 -1
  466. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +32 -23
  467. package/src/x_ite/Components/HAnim/HAnimJoint.js +2 -1
  468. package/src/x_ite/Components/HAnim/HAnimMotion.js +3 -1
  469. package/src/x_ite/Components/HAnim/HAnimSegment.js +2 -1
  470. package/src/x_ite/Components/HAnim/HAnimSite.js +2 -1
  471. package/src/x_ite/Components/Interpolation/ColorInterpolator.js +2 -2
  472. package/src/x_ite/Components/Interpolation/CoordinateInterpolator.js +1 -1
  473. package/src/x_ite/Components/Interpolation/CoordinateInterpolator2D.js +1 -1
  474. package/src/x_ite/Components/Interpolation/EaseInEaseOut.js +1 -1
  475. package/src/x_ite/Components/Interpolation/NormalInterpolator.js +1 -1
  476. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +1 -1
  477. package/src/x_ite/Components/Interpolation/PositionInterpolator.js +1 -1
  478. package/src/x_ite/Components/Interpolation/PositionInterpolator2D.js +1 -1
  479. package/src/x_ite/Components/Interpolation/ScalarInterpolator.js +1 -1
  480. package/src/x_ite/Components/Interpolation/SplinePositionInterpolator.js +1 -1
  481. package/src/x_ite/Components/Interpolation/SplinePositionInterpolator2D.js +1 -1
  482. package/src/x_ite/Components/Interpolation/SplineScalarInterpolator.js +1 -1
  483. package/src/x_ite/Components/Interpolation/SquadOrientationInterpolator.js +1 -1
  484. package/src/x_ite/Components/Interpolation/X3DInterpolatorNode.js +1 -1
  485. package/src/x_ite/Components/Interpolation.js +1 -1
  486. package/src/x_ite/Components/KeyDeviceSensor/KeySensor.js +1 -1
  487. package/src/x_ite/Components/KeyDeviceSensor/StringSensor.js +1 -1
  488. package/src/x_ite/Components/KeyDeviceSensor/X3DKeyDeviceSensorNode.js +1 -1
  489. package/src/x_ite/Components/Layering/Layer.js +4 -2
  490. package/src/x_ite/Components/Layering/LayerSet.js +1 -1
  491. package/src/x_ite/Components/Layering/Viewport.js +4 -4
  492. package/src/x_ite/Components/Layering/X3DLayerNode.js +66 -49
  493. package/src/x_ite/Components/Layering/X3DViewportNode.js +1 -1
  494. package/src/x_ite/Components/Layering.js +1 -1
  495. package/src/x_ite/Components/Layout/Layout.js +1 -1
  496. package/src/x_ite/Components/Layout/LayoutGroup.js +1 -1
  497. package/src/x_ite/Components/Layout/LayoutLayer.js +4 -2
  498. package/src/x_ite/Components/Layout/ScreenFontStyle.js +1 -1
  499. package/src/x_ite/Components/Layout/ScreenGroup.js +1 -1
  500. package/src/x_ite/Components/Layout/X3DLayoutNode.js +1 -1
  501. package/src/x_ite/Components/Lighting/DirectionalLight.js +9 -5
  502. package/src/x_ite/Components/Lighting/EnvironmentLight.js +143 -0
  503. package/src/x_ite/Components/Lighting/PointLight.js +9 -5
  504. package/src/x_ite/Components/Lighting/SpotLight.js +9 -5
  505. package/src/x_ite/Components/Lighting/X3DLightNode.js +1 -1
  506. package/src/x_ite/Components/Lighting.js +3 -1
  507. package/src/x_ite/Components/NURBS/Contour2D.js +1 -1
  508. package/src/x_ite/Components/NURBS/ContourPolyline2D.js +1 -1
  509. package/src/x_ite/Components/NURBS/CoordinateDouble.js +1 -1
  510. package/src/x_ite/Components/NURBS/NurbsCurve.js +1 -1
  511. package/src/x_ite/Components/NURBS/NurbsCurve2D.js +1 -1
  512. package/src/x_ite/Components/NURBS/NurbsOrientationInterpolator.js +1 -1
  513. package/src/x_ite/Components/NURBS/NurbsPatchSurface.js +1 -1
  514. package/src/x_ite/Components/NURBS/NurbsPositionInterpolator.js +1 -1
  515. package/src/x_ite/Components/NURBS/NurbsSet.js +1 -1
  516. package/src/x_ite/Components/NURBS/NurbsSurfaceInterpolator.js +1 -1
  517. package/src/x_ite/Components/NURBS/NurbsSweptSurface.js +1 -1
  518. package/src/x_ite/Components/NURBS/NurbsSwungSurface.js +1 -1
  519. package/src/x_ite/Components/NURBS/NurbsTextureCoordinate.js +1 -1
  520. package/src/x_ite/Components/NURBS/NurbsTrimmedSurface.js +1 -1
  521. package/src/x_ite/Components/NURBS/X3DNurbsControlCurveNode.js +1 -1
  522. package/src/x_ite/Components/NURBS/X3DNurbsSurfaceGeometryNode.js +1 -1
  523. package/src/x_ite/Components/NURBS/X3DParametricGeometryNode.js +1 -1
  524. package/src/x_ite/Components/Navigation/Billboard.js +1 -1
  525. package/src/x_ite/Components/Navigation/Collision.js +1 -1
  526. package/src/x_ite/Components/Navigation/LOD.js +1 -1
  527. package/src/x_ite/Components/Navigation/NavigationInfo.js +2 -1
  528. package/src/x_ite/Components/Navigation/OrthoViewpoint.js +100 -68
  529. package/src/x_ite/Components/Navigation/Viewpoint.js +16 -16
  530. package/src/x_ite/Components/Navigation/ViewpointGroup.js +1 -1
  531. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +219 -111
  532. package/src/x_ite/Components/Navigation.js +1 -1
  533. package/src/x_ite/Components/Networking/Anchor.js +1 -1
  534. package/src/x_ite/Components/Networking/Inline.js +99 -14
  535. package/src/x_ite/Components/Networking/LoadSensor.js +9 -9
  536. package/src/x_ite/Components/Networking/X3DNetworkSensorNode.js +1 -1
  537. package/src/x_ite/Components/Networking/X3DUrlObject.js +3 -3
  538. package/src/x_ite/Components/Networking.js +1 -1
  539. package/src/x_ite/Components/ParticleSystems/BoundedPhysicsModel.js +1 -1
  540. package/src/x_ite/Components/ParticleSystems/ConeEmitter.js +1 -1
  541. package/src/x_ite/Components/ParticleSystems/ExplosionEmitter.js +1 -1
  542. package/src/x_ite/Components/ParticleSystems/ForcePhysicsModel.js +1 -1
  543. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +1 -1
  544. package/src/x_ite/Components/ParticleSystems/PointEmitter.js +1 -1
  545. package/src/x_ite/Components/ParticleSystems/PolylineEmitter.js +1 -1
  546. package/src/x_ite/Components/ParticleSystems/SurfaceEmitter.js +1 -1
  547. package/src/x_ite/Components/ParticleSystems/VolumeEmitter.js +1 -1
  548. package/src/x_ite/Components/ParticleSystems/WindPhysicsModel.js +1 -1
  549. package/src/x_ite/Components/ParticleSystems/X3DParticleEmitterNode.js +1 -1
  550. package/src/x_ite/Components/ParticleSystems/X3DParticlePhysicsModelNode.js +1 -1
  551. package/src/x_ite/Components/Picking/LinePickSensor.js +1 -1
  552. package/src/x_ite/Components/Picking/PickableGroup.js +1 -1
  553. package/src/x_ite/Components/Picking/PointPickSensor.js +2 -4
  554. package/src/x_ite/Components/Picking/PrimitivePickSensor.js +1 -1
  555. package/src/x_ite/Components/Picking/VolumePickSensor.js +1 -1
  556. package/src/x_ite/Components/Picking/X3DPickSensorNode.js +1 -1
  557. package/src/x_ite/Components/Picking/X3DPickableObject.js +1 -1
  558. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +1 -1
  559. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +1 -1
  560. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +1 -1
  561. package/src/x_ite/Components/PointingDeviceSensor/TouchSensor.js +1 -1
  562. package/src/x_ite/Components/PointingDeviceSensor/X3DDragSensorNode.js +1 -1
  563. package/src/x_ite/Components/PointingDeviceSensor/X3DPointingDeviceSensorNode.js +1 -1
  564. package/src/x_ite/Components/PointingDeviceSensor/X3DTouchSensorNode.js +1 -1
  565. package/src/x_ite/Components/PointingDeviceSensor.js +1 -1
  566. package/src/x_ite/Components/ProjectiveTextureMapping/{TextureProjectorPerspective.js → TextureProjector.js} +17 -13
  567. package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorParallel.js +17 -13
  568. package/src/x_ite/Components/ProjectiveTextureMapping/X3DTextureProjectorNode.js +1 -1
  569. package/src/x_ite/Components/Rendering/ClipPlane.js +1 -1
  570. package/src/x_ite/Components/Rendering/Color.js +1 -1
  571. package/src/x_ite/Components/Rendering/ColorRGBA.js +1 -1
  572. package/src/x_ite/Components/Rendering/Coordinate.js +1 -1
  573. package/src/x_ite/Components/Rendering/IndexedLineSet.js +6 -1
  574. package/src/x_ite/Components/Rendering/IndexedTriangleFanSet.js +1 -1
  575. package/src/x_ite/Components/Rendering/IndexedTriangleSet.js +1 -1
  576. package/src/x_ite/Components/Rendering/IndexedTriangleStripSet.js +1 -1
  577. package/src/x_ite/Components/Rendering/LineSet.js +6 -1
  578. package/src/x_ite/Components/Rendering/Normal.js +31 -1
  579. package/src/x_ite/Components/Rendering/PointSet.js +6 -1
  580. package/src/x_ite/Components/Rendering/TriangleFanSet.js +1 -1
  581. package/src/x_ite/Components/Rendering/TriangleSet.js +1 -1
  582. package/src/x_ite/Components/Rendering/TriangleStripSet.js +1 -1
  583. package/src/x_ite/Components/Rendering/X3DColorNode.js +1 -1
  584. package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +1 -1
  585. package/src/x_ite/Components/Rendering/X3DCoordinateNode.js +1 -1
  586. package/src/x_ite/Components/Rendering/X3DGeometricPropertyNode.js +1 -1
  587. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +40 -35
  588. package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +24 -6
  589. package/src/x_ite/Components/Rendering/X3DNormalNode.js +1 -1
  590. package/src/x_ite/Components/Rendering/X3DPointGeometryNode.js +7 -1
  591. package/src/x_ite/Components/Rendering.js +1 -1
  592. package/src/x_ite/Components/RigidBodyPhysics/BallJoint.js +1 -1
  593. package/src/x_ite/Components/RigidBodyPhysics/CollidableOffset.js +1 -1
  594. package/src/x_ite/Components/RigidBodyPhysics/CollidableShape.js +1 -1
  595. package/src/x_ite/Components/RigidBodyPhysics/CollisionCollection.js +1 -1
  596. package/src/x_ite/Components/RigidBodyPhysics/CollisionSensor.js +1 -1
  597. package/src/x_ite/Components/RigidBodyPhysics/CollisionSpace.js +1 -1
  598. package/src/x_ite/Components/RigidBodyPhysics/Contact.js +1 -1
  599. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +1 -1
  600. package/src/x_ite/Components/RigidBodyPhysics/MotorJoint.js +1 -1
  601. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +1 -1
  602. package/src/x_ite/Components/RigidBodyPhysics/RigidBodyCollection.js +1 -1
  603. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +3 -2
  604. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +1 -1
  605. package/src/x_ite/Components/RigidBodyPhysics/UniversalJoint.js +1 -1
  606. package/src/x_ite/Components/RigidBodyPhysics/X3DNBodyCollidableNode.js +1 -1
  607. package/src/x_ite/Components/RigidBodyPhysics/X3DNBodyCollisionSpaceNode.js +1 -1
  608. package/src/x_ite/Components/RigidBodyPhysics/X3DRigidJointNode.js +1 -1
  609. package/src/x_ite/Components/Scripting/Script.js +2 -1
  610. package/src/x_ite/Components/Scripting/X3DScriptNode.js +1 -1
  611. package/src/x_ite/Components/Shaders/ComposedShader.js +1 -1
  612. package/src/x_ite/Components/Shaders/FloatVertexAttribute.js +1 -1
  613. package/src/x_ite/Components/Shaders/Matrix3VertexAttribute.js +1 -1
  614. package/src/x_ite/Components/Shaders/Matrix4VertexAttribute.js +1 -1
  615. package/src/x_ite/Components/Shaders/PackagedShader.js +2 -1
  616. package/src/x_ite/Components/Shaders/ProgramShader.js +1 -1
  617. package/src/x_ite/Components/Shaders/ShaderPart.js +2 -1
  618. package/src/x_ite/Components/Shaders/ShaderProgram.js +2 -1
  619. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +13 -10
  620. package/src/x_ite/Components/Shaders/X3DShaderNode.js +1 -1
  621. package/src/x_ite/Components/Shaders/X3DVertexAttributeNode.js +1 -1
  622. package/src/x_ite/Components/Shaders.js +1 -1
  623. package/src/x_ite/Components/Shape/AcousticProperties.js +1 -1
  624. package/src/x_ite/Components/Shape/Appearance.js +2 -2
  625. package/src/x_ite/Components/Shape/FillProperties.js +4 -1
  626. package/src/x_ite/Components/Shape/LineProperties.js +4 -1
  627. package/src/x_ite/Components/Shape/Material.js +24 -16
  628. package/src/x_ite/Components/Shape/PhysicalMaterial.js +1 -1
  629. package/src/x_ite/Components/Shape/PointProperties.js +14 -20
  630. package/src/x_ite/Components/Shape/Shape.js +1 -1
  631. package/src/x_ite/Components/Shape/TwoSidedMaterial.js +1 -1
  632. package/src/x_ite/Components/Shape/UnlitMaterial.js +1 -1
  633. package/src/x_ite/Components/Shape/X3DAppearanceChildNode.js +1 -1
  634. package/src/x_ite/Components/Shape/X3DAppearanceNode.js +1 -1
  635. package/src/x_ite/Components/Shape/X3DMaterialNode.js +1 -1
  636. package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +2 -2
  637. package/src/x_ite/Components/Shape/X3DShapeNode.js +1 -1
  638. package/src/x_ite/Components/Shape.js +1 -1
  639. package/src/x_ite/Components/Sound/Analyser.js +105 -0
  640. package/src/x_ite/Components/Sound/AudioClip.js +1 -1
  641. package/src/x_ite/Components/Sound/AudioDestination.js +94 -0
  642. package/src/x_ite/Components/Sound/BiquadFilter.js +104 -0
  643. package/src/x_ite/Components/Sound/BufferAudioSource.js +127 -0
  644. package/src/x_ite/Components/Sound/ChannelMerger.js +91 -0
  645. package/src/x_ite/Components/Sound/ChannelSelector.js +92 -0
  646. package/src/x_ite/Components/Sound/ChannelSplitter.js +92 -0
  647. package/src/x_ite/Components/Sound/Convolver.js +102 -0
  648. package/src/x_ite/Components/Sound/Delay.js +102 -0
  649. package/src/x_ite/Components/Sound/DynamicsCompressor.js +106 -0
  650. package/src/x_ite/Components/Sound/Gain.js +100 -0
  651. package/src/x_ite/Components/Sound/ListenerPointSource.js +102 -0
  652. package/src/x_ite/Components/Sound/MicrophoneSource.js +96 -0
  653. package/src/x_ite/Components/Sound/OscillatorSource.js +98 -0
  654. package/src/x_ite/Components/Sound/PeriodicWave.js +86 -0
  655. package/src/x_ite/Components/Sound/Sound.js +16 -13
  656. package/src/x_ite/Components/Sound/SpatialSound.js +103 -0
  657. package/src/x_ite/Components/Sound/StreamAudioDestination.js +94 -0
  658. package/src/x_ite/Components/Sound/StreamAudioSource.js +96 -0
  659. package/src/x_ite/Components/Sound/WaveShaper.js +102 -0
  660. package/src/x_ite/Components/Sound/X3DSoundChannelNode.js +63 -0
  661. package/src/x_ite/Components/Sound/X3DSoundDestinationNode.js +63 -0
  662. package/src/x_ite/Components/Sound/X3DSoundNode.js +1 -1
  663. package/src/x_ite/Components/Sound/X3DSoundProcessingNode.js +63 -0
  664. package/src/x_ite/Components/Sound/X3DSoundSourceNode.js +1 -1
  665. package/src/x_ite/Components/Sound.js +54 -10
  666. package/src/x_ite/Components/Text/FontStyle.js +1 -1
  667. package/src/x_ite/Components/Text/Text.js +1 -1
  668. package/src/x_ite/Components/Text/X3DFontStyleNode.js +1 -1
  669. package/src/x_ite/Components/Texturing/ImageTexture.js +1 -1
  670. package/src/x_ite/Components/Texturing/MovieTexture.js +1 -1
  671. package/src/x_ite/Components/Texturing/MultiTexture.js +1 -1
  672. package/src/x_ite/Components/Texturing/MultiTextureCoordinate.js +1 -1
  673. package/src/x_ite/Components/Texturing/MultiTextureTransform.js +1 -1
  674. package/src/x_ite/Components/Texturing/PixelTexture.js +1 -1
  675. package/src/x_ite/Components/Texturing/TextureCoordinate.js +1 -1
  676. package/src/x_ite/Components/Texturing/TextureCoordinateGenerator.js +1 -1
  677. package/src/x_ite/Components/Texturing/TextureProperties.js +8 -1
  678. package/src/x_ite/Components/Texturing/TextureTransform.js +1 -1
  679. package/src/x_ite/Components/Texturing/X3DSingleTextureCoordinateNode.js +1 -1
  680. package/src/x_ite/Components/Texturing/X3DSingleTextureNode.js +1 -1
  681. package/src/x_ite/Components/Texturing/X3DSingleTextureTransformNode.js +1 -1
  682. package/src/x_ite/Components/Texturing/X3DTexture2DNode.js +1 -1
  683. package/src/x_ite/Components/Texturing/X3DTextureCoordinateNode.js +1 -1
  684. package/src/x_ite/Components/Texturing/X3DTextureNode.js +1 -1
  685. package/src/x_ite/Components/Texturing/X3DTextureTransformNode.js +1 -1
  686. package/src/x_ite/Components/Texturing.js +1 -1
  687. package/src/x_ite/Components/Texturing3D/ComposedTexture3D.js +1 -1
  688. package/src/x_ite/Components/Texturing3D/ImageTexture3D.js +1 -1
  689. package/src/x_ite/Components/Texturing3D/PixelTexture3D.js +1 -1
  690. package/src/x_ite/Components/Texturing3D/TextureCoordinate3D.js +1 -1
  691. package/src/x_ite/Components/Texturing3D/TextureCoordinate4D.js +1 -1
  692. package/src/x_ite/Components/Texturing3D/TextureTransform3D.js +1 -1
  693. package/src/x_ite/Components/Texturing3D/TextureTransformMatrix3D.js +1 -1
  694. package/src/x_ite/Components/Texturing3D/X3DTexture3DNode.js +1 -1
  695. package/src/x_ite/Components/Time/TimeSensor.js +2 -1
  696. package/src/x_ite/Components/Time/X3DTimeDependentNode.js +1 -1
  697. package/src/x_ite/Components/Time.js +1 -1
  698. package/src/x_ite/Components/VolumeRendering/BlendedVolumeStyle.js +1 -1
  699. package/src/x_ite/Components/VolumeRendering/BoundaryEnhancementVolumeStyle.js +1 -1
  700. package/src/x_ite/Components/VolumeRendering/CartoonVolumeStyle.js +1 -1
  701. package/src/x_ite/Components/VolumeRendering/ComposedVolumeStyle.js +1 -1
  702. package/src/x_ite/Components/VolumeRendering/EdgeEnhancementVolumeStyle.js +1 -1
  703. package/src/x_ite/Components/VolumeRendering/IsoSurfaceVolumeData.js +1 -1
  704. package/src/x_ite/Components/VolumeRendering/OpacityMapVolumeStyle.js +1 -1
  705. package/src/x_ite/Components/VolumeRendering/ProjectionVolumeStyle.js +1 -1
  706. package/src/x_ite/Components/VolumeRendering/SegmentedVolumeData.js +1 -1
  707. package/src/x_ite/Components/VolumeRendering/ShadedVolumeStyle.js +1 -1
  708. package/src/x_ite/Components/VolumeRendering/SilhouetteEnhancementVolumeStyle.js +1 -1
  709. package/src/x_ite/Components/VolumeRendering/ToneMappedVolumeStyle.js +1 -1
  710. package/src/x_ite/Components/VolumeRendering/VolumeData.js +1 -1
  711. package/src/x_ite/Components/VolumeRendering/X3DComposableVolumeRenderStyleNode.js +1 -1
  712. package/src/x_ite/Components/VolumeRendering/X3DVolumeDataNode.js +1 -1
  713. package/src/x_ite/Components/VolumeRendering/X3DVolumeRenderStyleNode.js +1 -1
  714. package/src/x_ite/Components/X_ITE/BlendMode.js +1 -1
  715. package/src/x_ite/Components.js +6 -28
  716. package/src/x_ite/Configuration/ComponentInfo.js +10 -7
  717. package/src/x_ite/Configuration/ComponentInfoArray.js +2 -6
  718. package/src/x_ite/Configuration/ProfileInfo.js +1 -1
  719. package/src/x_ite/Configuration/ProfileInfoArray.js +1 -1
  720. package/src/x_ite/Configuration/SupportedComponents.js +136 -154
  721. package/src/x_ite/Configuration/SupportedNodes.js +7 -10
  722. package/src/x_ite/Configuration/SupportedProfiles.js +1 -1
  723. package/src/x_ite/Configuration/UnitInfo.js +1 -1
  724. package/src/x_ite/Configuration/UnitInfoArray.js +1 -1
  725. package/src/x_ite/DEBUG.js +1 -1
  726. package/src/x_ite/Execution/BindableList.js +1 -1
  727. package/src/x_ite/Execution/BindableStack.js +12 -12
  728. package/src/x_ite/Execution/ExportedNodesArray.js +1 -1
  729. package/src/x_ite/Execution/ImportedNodesArray.js +1 -1
  730. package/src/x_ite/Execution/NamedNodesArray.js +1 -1
  731. package/src/x_ite/Execution/Scene.js +13 -13
  732. package/src/x_ite/Execution/X3DExecutionContext.js +882 -882
  733. package/src/x_ite/Execution/X3DExportedNode.js +1 -1
  734. package/src/x_ite/Execution/X3DImportedNode.js +1 -1
  735. package/src/x_ite/Execution/X3DScene.js +14 -22
  736. package/src/x_ite/Execution/X3DWorld.js +1 -1
  737. package/src/x_ite/Fallback.js +1 -6
  738. package/src/x_ite/Fields/ArrayFields.js +1 -1
  739. package/src/x_ite/Fields/SFBool.js +1 -1
  740. package/src/x_ite/Fields/SFColor.js +2 -5
  741. package/src/x_ite/Fields/SFColorRGBA.js +2 -6
  742. package/src/x_ite/Fields/SFDouble.js +1 -1
  743. package/src/x_ite/Fields/SFFloat.js +1 -1
  744. package/src/x_ite/Fields/SFImage.js +1 -1
  745. package/src/x_ite/Fields/SFInt32.js +1 -1
  746. package/src/x_ite/Fields/SFMatrix3.js +16 -11
  747. package/src/x_ite/Fields/SFMatrix4.js +18 -11
  748. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +15 -4
  749. package/src/x_ite/Fields/SFNode.js +1 -1
  750. package/src/x_ite/Fields/SFNodeCache.js +3 -5
  751. package/src/x_ite/Fields/SFRotation.js +27 -6
  752. package/src/x_ite/Fields/SFString.js +1 -1
  753. package/src/x_ite/Fields/SFTime.js +1 -1
  754. package/src/x_ite/Fields/SFVec2.js +5 -11
  755. package/src/x_ite/Fields/SFVec3.js +5 -11
  756. package/src/x_ite/Fields/SFVec4.js +5 -11
  757. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +27 -17
  758. package/src/x_ite/Fields.js +1 -1
  759. package/src/x_ite/InputOutput/FileLoader.js +3 -3
  760. package/src/x_ite/InputOutput/Generator.js +1 -1
  761. package/src/x_ite/Namespace.js +2 -758
  762. package/src/x_ite/Parser/GoldenGate.js +1 -1
  763. package/src/x_ite/Parser/HTMLSupport.js +1 -1
  764. package/src/x_ite/Parser/JSONParser.js +4 -4
  765. package/src/x_ite/Parser/VRMLParser.js +15 -1
  766. package/src/x_ite/Parser/X3DParser.js +1 -1
  767. package/src/x_ite/Parser/XMLParser.js +1 -1
  768. package/src/x_ite/Prototype/ExternProtoDeclarationArray.js +1 -1
  769. package/src/x_ite/Prototype/ProtoDeclarationArray.js +1 -1
  770. package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +1 -1
  771. package/src/x_ite/Prototype/X3DProtoDeclaration.js +1 -1
  772. package/src/x_ite/Prototype/X3DProtoDeclarationNode.js +1 -1
  773. package/src/x_ite/Rendering/DependentRenderer.js +1 -1
  774. package/src/x_ite/Rendering/TextureBuffer.js +1 -1
  775. package/src/x_ite/Rendering/TraverseType.js +1 -1
  776. package/src/x_ite/Rendering/VertexArray.js +2 -2
  777. package/src/x_ite/Rendering/X3DRenderObject.js +10 -7
  778. package/src/x_ite/Routing/RouteArray.js +1 -1
  779. package/src/x_ite/Routing/X3DRoute.js +1 -1
  780. package/src/x_ite/Routing/X3DRoutingContext.js +1 -1
  781. package/src/x_ite/X3D.js +25 -37
  782. package/src/x_ite/X3DCanvas.js +10 -12
  783. package/src/x_ite.css +20 -0
  784. package/src/x_ite.html +80 -77
  785. package/src/x_ite.js +1 -1
  786. package/webpack.config.js +79 -8
  787. package/x_ite.min.html +78 -76
  788. package/build/bin/namespace.mjs +0 -86
  789. package/docs/404.md +0 -11
  790. package/docs/Browser-Support.md +0 -53
  791. package/docs/Supported-Nodes.md +0 -378
  792. package/docs/_data/navigation.yml +0 -137
  793. package/docs/assets/css/main.scss +0 -126
  794. package/docs/reference/Field-Services-and-Objects.md +0 -1110
  795. package/docs/tutorials/index.md +0 -84
@@ -1,11 +1,10 @@
1
1
  ---
2
- # Feel free to add content and custom Front Matter to this file.
3
- # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
4
-
5
- layout: single
2
+ title: Building a X3D World
3
+ date: 2022-11-28
4
+ nav: tutorials-shapes-geometry-and-appearance
5
+ categories: [Tutorials]
6
+ tags: [building, world]
6
7
  ---
7
- # Building a X3D World
8
-
9
8
  ## X3D file structure
10
9
 
11
10
  X3D files contain:
@@ -24,8 +23,7 @@ X3D files contain:
24
23
 
25
24
  ```xml
26
25
  <?xml version="1.0" encoding="UTF-8"?>
27
-
28
- <X3D profile='Full' version='3.3' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-3.3.xsd'>
26
+ <X3D profile='Full' version='4.0' xmlns:xsd='https://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-4.0.xsd'>
29
27
  <Scene>
30
28
  <!-- A Cylinder -->
31
29
  <Shape>
@@ -43,7 +41,7 @@ X3D files contain:
43
41
  ### Classic Encoding
44
42
 
45
43
  ```js
46
- #X3D V3.3 utf8
44
+ #X3D V4.0 utf8
47
45
  # A Cylinder
48
46
  Shape {
49
47
  appearance Appearance {
@@ -56,18 +54,20 @@ Shape {
56
54
  }
57
55
  ```
58
56
 
59
- [![Cylinder](https://create3000.github.io/media/tutorials/scenes/cylinder1/screenshot.png)](https://create3000.github.io/media/tutorials/scenes/cylinder1/example.html)
57
+ ### Example
60
58
 
61
- [View scene in this window.](https://create3000.github.io/media/tutorials/scenes/cylinder1/example.html)
59
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.x3dv">
60
+ <img src="https://create3000.github.io/media/tutorials/scenes/cylinder1/screenshot.png" alt="Cylinder"/>
61
+ </x3d-canvas>
62
62
 
63
63
  [Download ZIP Archive](https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.zip)
64
64
 
65
65
  ## Understanding the header
66
66
 
67
- **\#X3D V3.3 utf8**
67
+ **\#X3D V4.0 utf8**
68
68
 
69
69
  - **\#X3D:** File contains X3D text
70
- - **V3.3 :** Text conforms to version 3.3 syntax
70
+ - **V4.0 :** Text conforms to version 4.0 syntax
71
71
  - **utf8 :** Text uses UTF8 character set
72
72
 
73
73
  ## Understanding UTF8
@@ -75,7 +75,7 @@ Shape {
75
75
  - utf8 is an international character set standard
76
76
  - utf8 stands for:
77
77
  - UCS (Universal Character Set) Transformation Format, 8-bit
78
- - Encodes 24,000+ characters for many languages
78
+ - Can encodes up to 2,164,864 characters for many languages
79
79
  - ASCII is a subset
80
80
 
81
81
  ## Using comments
@@ -103,7 +103,7 @@ Cylinder {
103
103
 
104
104
  - Nodes describe shapes, lights, sounds, etc.
105
105
  - Every node has:
106
- - A node type ([Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape), [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cylinder), etc.)
106
+ - A node type ([Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"}, [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Cylinder){:target="_blank"}, etc.)
107
107
  - A pair of curly-braces
108
108
  - Zero or more fields inside the curly-braces
109
109
 
@@ -116,7 +116,7 @@ Node type names are case sensitive:
116
116
 
117
117
  Some examples:
118
118
 
119
- [Appearance](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Appearance), [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cylinder), [Material](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Material), [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape)
119
+ [Appearance](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Appearance){:target="_blank"}, [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Cylinder){:target="_blank"}, [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"}, [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"}
120
120
 
121
121
  ## Using fields and values
122
122
 
@@ -1,22 +1,21 @@
1
1
  ---
2
- # Feel free to add content and custom Front Matter to this file.
3
- # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
4
-
5
- layout: single
2
+ title: Building Elevation Grids
3
+ date: 2022-11-28
4
+ nav: tutorials-animation-sensors-and-geometry
5
+ categories: [Tutorials]
6
+ tags: [building, elevation grids]
6
7
  ---
7
- # Building Elevation Grids
8
-
9
8
  ## Motivation
10
9
 
11
10
  - Building terrains is very common
12
11
  - Hills, valleys, mountains
13
12
  - Other tricky uses...
14
- - You can build a terrain using an [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet) node
15
- - You can build terrains more efficiently using an [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#ElevationGrid) node
13
+ - You can build a terrain using an [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"} node
14
+ - You can build terrains more efficiently using an [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#ElevationGrid){:target="_blank"} node
16
15
 
17
16
  ## Syntax: ElevationGrid
18
17
 
19
- An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#ElevationGrid) geometry node creates terrains:
18
+ An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#ElevationGrid){:target="_blank"} geometry node creates terrains:
20
19
 
21
20
  - *xDimension* and *zDimension* - grid size
22
21
  - *xSpacing* and *zSpacing* - row and column distances
@@ -50,7 +49,7 @@ Shape {
50
49
  }
51
50
  ```
52
51
 
53
- An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#ElevationGrid) geometry node creates terrains:
52
+ An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#ElevationGrid){:target="_blank"} geometry node creates terrains:
54
53
 
55
54
  - *height* - elevations at grid points
56
55
 
@@ -81,7 +80,7 @@ Shape {
81
80
  }
82
81
  ```
83
82
 
84
- An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#ElevationGrid) geometry node creates terrains
83
+ An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#ElevationGrid){:target="_blank"} geometry node creates terrains
85
84
 
86
85
  - *solid* - shape is solid
87
86
  - *ccw* - faces are counter-clockwise
@@ -162,15 +161,17 @@ Shape {
162
161
  }
163
162
  ```
164
163
 
165
- [![Elevation Grid](https://create3000.github.io/media/tutorials/scenes/elevation-grid/screenshot.png)](https://create3000.github.io/media/tutorials/scenes/elevation-grid/example.html)
164
+ ### Example
166
165
 
167
- [View scene in this window.](https://create3000.github.io/media/tutorials/scenes/elevation-grid/example.html)
166
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/elevation-grid/elevation-grid.x3dv">
167
+ <img src="https://create3000.github.io/media/tutorials/scenes/elevation-grid/screenshot.png" alt="Elevation Grid"/>
168
+ </x3d-canvas>
168
169
 
169
170
  [Download ZIP Archive](https://create3000.github.io/media/tutorials/scenes/elevation-grid/elevation-grid.zip)
170
171
 
171
172
  ## Summary
172
173
 
173
- - An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#ElevationGrid) node efficiently creates a terrain
174
+ - An [ElevationGrid](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#ElevationGrid){:target="_blank"} node efficiently creates a terrain
174
175
  - Grid size is specified in the *xDimension* and *zDimension* fields
175
176
  - Grid spacing is specified in the *xSpacing* and *zSpacing* field
176
177
  - Elevations at each grid point are specified in the *height* field
@@ -1,11 +1,10 @@
1
1
  ---
2
- # Feel free to add content and custom Front Matter to this file.
3
- # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
4
-
5
- layout: single
2
+ title: Build Extruded Shapes
3
+ date: 2022-11-28
4
+ nav: tutorials-animation-sensors-and-geometry
5
+ categories: [Tutorials]
6
+ tags: [build, extruded, shapes]
6
7
  ---
7
- # Build Extruded Shapes
8
-
9
8
  ## Motivation
10
9
 
11
10
  Extruded shapes are very common
@@ -15,8 +14,8 @@ Extruded shapes are very common
15
14
 
16
15
  How can you do it:
17
16
 
18
- - You can build extruded shapes using an [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet) node.
19
- - You can build extruded shapes more easily and efficiently using an [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Extrusion) node.
17
+ - You can build extruded shapes using an [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"} node.
18
+ - You can build extruded shapes more easily and efficiently using an [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Extrusion){:target="_blank"} node.
20
19
 
21
20
  ## Creating extruded shapes
22
21
 
@@ -32,7 +31,7 @@ Extruded shapes are like long bubbles created with a bubble wand:
32
31
 
33
32
  ## Syntax: Extrusion
34
33
 
35
- An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Extrusion) geometry node creates extruded geometry:
34
+ An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Extrusion){:target="_blank"} geometry node creates extruded geometry:
36
35
 
37
36
  - *crossSection* - 2-D cross-section
38
37
  - *spine* - 3-D sweep path
@@ -67,7 +66,7 @@ Shape {
67
66
  }
68
67
  ```
69
68
 
70
- An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Extrusion) geometry node creates extruded geometry:
69
+ An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Extrusion){:target="_blank"} geometry node creates extruded geometry:
71
70
 
72
71
  - *solid* - shape is solid
73
72
  - *ccw* - faces are counter-clockwise
@@ -113,7 +112,7 @@ You can rotate the cross-section along the spine
113
112
 
114
113
  ## Syntax: Extrusion
115
114
 
116
- An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Extrusion) geometry node creates geometry using:
115
+ An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Extrusion){:target="_blank"} geometry node creates geometry using:
117
116
 
118
117
  - *scale* - cross-section scaling per spine point
119
118
  - *orientation* - cross-section rotation per spine point
@@ -145,7 +144,7 @@ Shape {
145
144
 
146
145
  ## Summary
147
146
 
148
- - An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Extrusion) node efficiently creates extruded shapes
147
+ - An [Extrusion](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Extrusion){:target="_blank"} node efficiently creates extruded shapes
149
148
  - The *crossSection* field specifies the cross-section
150
149
  - The *spine* field specifies the sweep path
151
150
  - The *scale* and *orientation* fields specify scaling and rotation at each spine point
@@ -1,25 +1,24 @@
1
1
  ---
2
- # Feel free to add content and custom Front Matter to this file.
3
- # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
4
-
5
- layout: single
2
+ title: Building Primitive Shapes
3
+ date: 2022-11-28
4
+ nav: tutorials-shapes-geometry-and-appearance
5
+ categories: [Tutorials]
6
+ tags: [building, primitive, shapes]
6
7
  ---
7
- # Building Primitive Shapes
8
-
9
8
  ## Motivation
10
9
 
11
10
  Shapes are the building blocks of a X3D world. Primitive Shapes are standard building blocks:
12
11
 
13
- - [Box](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Box)
14
- - [Cone](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cone)
15
- - [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cylinder)
16
- - [Sphere](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Sphere)
17
- - [Text](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Text)
18
- - and more from the [CADGeometry](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/CADGeometry.html)**,** [Geometry2D](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry2D.html)**,** and [Rendering](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html) component
12
+ - [Box](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Box){:target="_blank"}
13
+ - [Cone](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Cone){:target="_blank"}
14
+ - [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Cylinder){:target="_blank"}
15
+ - [Sphere](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Sphere){:target="_blank"}
16
+ - [Text](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/text.html#Text){:target="_blank"}
17
+ - and more from the [CADGeometry](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/CADGeometry.html){:target="_blank"}**,** [Geometry2D](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry2D.html){:target="_blank"}**,** and [Rendering](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html){:target="_blank"} component
19
18
 
20
19
  ## Syntax: Shape
21
20
 
22
- - A [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape) node builds a shape
21
+ - A [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"} node builds a shape
23
22
  - *appearance* - color and texture
24
23
  - *geometry* - form, or structure
25
24
 
@@ -43,7 +42,7 @@ Shape {
43
42
 
44
43
  ## Specifying appearance
45
44
 
46
- - [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape) appearance is described by appearance nodes
45
+ - [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"} appearance is described by appearance nodes
47
46
  - For now, we'll use nodes to create a shaded white appearance:
48
47
 
49
48
  ### XML Encoding
@@ -70,7 +69,7 @@ Shape {
70
69
 
71
70
  ## Specifying geometry
72
71
 
73
- [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape) geometry is built with geometry nodes:
72
+ [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"} geometry is built with geometry nodes:
74
73
 
75
74
  ### XML Encoding
76
75
 
@@ -101,8 +100,7 @@ Text { ... }
101
100
 
102
101
  ```xml
103
102
  <?xml version="1.0" encoding="UTF-8"?>
104
-
105
- <X3D profile='Full' version='3.3' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-3.3.xsd'>
103
+ <X3D profile='Full' version='4.0' xmlns:xsd='https://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-4.0.xsd'>
106
104
  <Scene>
107
105
  <Shape>
108
106
  <Appearance>
@@ -118,7 +116,7 @@ Text { ... }
118
116
  ### Classic Encoding
119
117
 
120
118
  ```js
121
- #X3D V3.3 utf8
119
+ #X3D V4.0 utf8
122
120
  # A cylinder
123
121
  Shape {
124
122
  appearance Appearance {
@@ -131,9 +129,11 @@ Shape {
131
129
  }
132
130
  ```
133
131
 
134
- [![Cylinder](https://create3000.github.io/media/tutorials/scenes/cylinder1/screenshot.png)](https://create3000.github.io/media/tutorials/scenes/cylinder1/example.html)
132
+ ### Example
135
133
 
136
- [View scene in this window.](https://create3000.github.io/media/tutorials/scenes/cylinder1/example.html)
134
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.x3dv">
135
+ <img src="https://create3000.github.io/media/tutorials/scenes/cylinder1/screenshot.png" alt="Cylinder"/>
136
+ </x3d-canvas>
137
137
 
138
138
  [Download ZIP Archive](https://create3000.github.io/media/tutorials/scenes/cylinder1/cylinder1.zip)
139
139
 
@@ -149,8 +149,7 @@ Shape {
149
149
 
150
150
  ```xml
151
151
  <?xml version="1.0" encoding="UTF-8"?>
152
-
153
- <X3D profile='Full' version='3.3' xmlns:xsd='http://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='http://www.web3d.org/specifications/x3d-3.3.xsd'>
152
+ <X3D profile='Full' version='4.0' xmlns:xsd='https://www.w3.org/2001/XMLSchema-instance' xsd:noNamespaceSchemaLocation='https://www.web3d.org/specifications/x3d-4.0.xsd'>
154
153
  <Scene>
155
154
  <Shape>
156
155
  <Appearance>
@@ -174,7 +173,7 @@ Shape {
174
173
  ### Classic Encoding
175
174
 
176
175
  ```js
177
- #X3D V3.3 utf8
176
+ #X3D V4.0 utf8
178
177
 
179
178
  Shape {
180
179
  appearance Appearance {
@@ -197,14 +196,16 @@ Shape {
197
196
  ...
198
197
  ```
199
198
 
200
- [![Multiple Shapes](https://create3000.github.io/media/tutorials/scenes/multiple-shapes/screenshot.png)](https://create3000.github.io/media/tutorials/scenes/multiple-shapes/example.html)
199
+ ### Example
201
200
 
202
- [View scene in this window.](https://create3000.github.io/media/tutorials/scenes/multiple-shapes/example.html)
201
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/multiple-shapes/multiple-shapes.x3dv">
202
+ <img src="https://create3000.github.io/media/tutorials/scenes/multiple-shapes/screenshot.png" alt="Multiple Shapes"/>
203
+ </x3d-canvas>
203
204
 
204
205
  [Download ZIP Archive](https://create3000.github.io/media/tutorials/scenes/multiple-shapes/multiple-shapes.zip)
205
206
 
206
207
  ## Summary
207
208
 
208
- - Shapes are built using a [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape) node
209
- - [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape) geometry is built using geometry nodes, such as [Box](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Box), [Cone](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cone), [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Cylinder), [Sphere](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#Sphere), and [Text](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#Text)
210
- - Text fonts are controlled using a [FontStyle](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/text.html#FontStyle) node
209
+ - Shapes are built using a [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"} node
210
+ - [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"} geometry is built using geometry nodes, such as [Box](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Box){:target="_blank"}, [Cone](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Cone){:target="_blank"}, [Cylinder](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Cylinder){:target="_blank"}, [Sphere](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#Sphere){:target="_blank"}, and [Text](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/text.html#Text){:target="_blank"}
211
+ - Text fonts are controlled using a [FontStyle](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/text.html#FontStyle){:target="_blank"} node
@@ -1,12 +1,10 @@
1
1
  ---
2
- # Feel free to add content and custom Front Matter to this file.
3
- # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
4
-
5
- layout: single
2
+ title: Building Shapes out of Points, Lines, and Faces
3
+ date: 2022-11-28
4
+ nav: tutorials-animation-sensors-and-geometry
5
+ categories: [Tutorials]
6
+ tags: [building, shapes, points, lines, faces]
6
7
  ---
7
-
8
- # Building Shapes out of Points, Lines, and Faces
9
-
10
8
  ## Motivation
11
9
 
12
10
  Complex shapes are hard to build with primitive shapes:
@@ -30,7 +28,7 @@ A coordinate specifies a 3-D dot location. Measured relative to a coordinate sys
30
28
 
31
29
  ## Syntax: Coordinate
32
30
 
33
- A [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Coordinate) node contains a list of coordinates for use in building a shape.
31
+ A [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Coordinate){:target="_blank"} node contains a list of coordinates for use in building a shape.
34
32
 
35
33
  ### XML Encoding
36
34
 
@@ -57,15 +55,15 @@ Coordinate {
57
55
 
58
56
  Build coordinate-based shapes using geometry nodes:
59
57
 
60
- - [PointSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#PointSet)
61
- - [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#IndexedLineSet)
62
- - [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet)
58
+ - [PointSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#PointSet){:target="_blank"}
59
+ - [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedLineSet){:target="_blank"}
60
+ - [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"}
63
61
 
64
- For all three nodes, use a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Coordinate) node as the value of the coord field.
62
+ For all three nodes, use a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Coordinate){:target="_blank"} node as the value of the coord field.
65
63
 
66
64
  ## Syntax: PointSet
67
65
 
68
- A [PointSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#PointSet) geometry node creates geometry out of points:
66
+ A [PointSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#PointSet){:target="_blank"} geometry node creates geometry out of points:
69
67
 
70
68
  - One point (a dot) is placed at each coordinate
71
69
 
@@ -96,7 +94,7 @@ Shape {
96
94
 
97
95
  ## Syntax: IndexedLineSet
98
96
 
99
- An [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#IndexedLineSet) geometry node creates geometry out of lines:
97
+ An [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedLineSet){:target="_blank"} geometry node creates geometry out of lines:
100
98
 
101
99
  - A straight line is drawn between pairs of selected coordinates
102
100
 
@@ -129,7 +127,7 @@ Shape {
129
127
 
130
128
  ## Using line set coordinate indexes
131
129
 
132
- Each coordinate in a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Coordinate) node is implicitly numbered
130
+ Each coordinate in a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Coordinate){:target="_blank"} node is implicitly numbered
133
131
 
134
132
  - Index 0 is the first coordinate
135
133
  - Index **1** is the second coordinate, etc.
@@ -137,7 +135,7 @@ Each coordinate in a [Coordinate](https://www.web3d.org/documents/specifications
137
135
  To build a line shape:
138
136
 
139
137
  - Make a list of coordinates, using their indexes
140
- - List coordinate indexes in the *coordIndex* field of the [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#IndexedLineSet) node
138
+ - List coordinate indexes in the *coordIndex* field of the [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedLineSet){:target="_blank"} node
141
139
 
142
140
  A line is drawn between pairs of coordinate indexes:
143
141
 
@@ -153,7 +151,7 @@ A line is drawn between pairs of coordinate indexes:
153
151
 
154
152
  ## Syntax: IndexedFaceSet
155
153
 
156
- An [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet) geometry node creates geometry out of faces:
154
+ An [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"} geometry node creates geometry out of faces:
157
155
 
158
156
  - A flat face (polygon) is drawn using an outline specified by coordinate indexes
159
157
 
@@ -189,7 +187,7 @@ Shape {
189
187
  To build a face shape
190
188
 
191
189
  - Make a list of coordinates, using their indexes
192
- - List coordinate indexes in the *coordIndex* field of the [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet) node
190
+ - List coordinate indexes in the *coordIndex* field of the [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"} node
193
191
 
194
192
  A triangle is drawn connecting sequences of coordinate indexes:
195
193
 
@@ -206,7 +204,7 @@ A triangle is drawn connecting sequences of coordinate indexes:
206
204
 
207
205
  ## Syntax: IndexedFaceSet
208
206
 
209
- An [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet) geometry node creates geometry out of faces:
207
+ An [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"} geometry node creates geometry out of faces:
210
208
 
211
209
  - *solid* - shape is solid
212
210
  - *ccw* - faces are counter-clockwise
@@ -259,7 +257,7 @@ Faces are assumed to be convex
259
257
 
260
258
  ## Syntax: CoordinateInterpolator
261
259
 
262
- A [CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/interp.html#CoordinateInterpolator) node describes a coordinate path:
260
+ A [CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator){:target="_blank"} node describes a coordinate path:
263
261
 
264
262
  - *keys* - key fractions
265
263
  - *keyValues* - key coordinate lists (X, Y, Z lists)
@@ -281,11 +279,11 @@ CoordinateInterpolator {
281
279
  }
282
280
  ```
283
281
 
284
- Typically route into a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Coordinate) node's set\_point input.
282
+ Typically route into a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Coordinate){:target="_blank"} node's set\_point input.
285
283
 
286
284
  ## Interpolating coordinate lists
287
285
 
288
- A [CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/interp.html#CoordinateInterpolator) node interpolates lists of coordinates:
286
+ A [CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator){:target="_blank"} node interpolates lists of coordinates:
289
287
 
290
288
  - Each output is a list of coordinates
291
289
 
@@ -296,22 +294,22 @@ If n output coordinates are needed for t fractional times:
296
294
  ## Summary
297
295
 
298
296
  - Shapes are built by connecting together coordinates
299
- - Coordinates are listed in a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#Coordinate) node
297
+ - Coordinates are listed in a [Coordinate](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#Coordinate){:target="_blank"} node
300
298
  - Coordinates are implicitly numbers starting at 0
301
299
  - Coordinate index lists give the order in which to use coordinates
302
300
 
303
- The [PointSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#PointSet) node draws a dot at every coordinate:
301
+ The [PointSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#PointSet){:target="_blank"} node draws a dot at every coordinate:
304
302
 
305
303
  - The *coord* field value is a Coordinate node
306
304
 
307
- The [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/rendering.html#IndexedLineSet) node draws lines between coordinates:
305
+ The [IndexedLineSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/rendering.html#IndexedLineSet){:target="_blank"} node draws lines between coordinates:
308
306
 
309
307
  - The *coord* field value is a Coordinate node
310
308
  - The *coordIndex* field value is a list of coordinate indexes
311
309
 
312
- The [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/geometry3D.html#IndexedFaceSet) node draws faces outlined by coordinates:
310
+ The [IndexedFaceSet](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/geometry3D.html#IndexedFaceSet){:target="_blank"} node draws faces outlined by coordinates:
313
311
 
314
312
  - The *coord* field value is a Coordinate node
315
313
  - The *coordIndex* field value is a list of coordinate indexes
316
314
 
317
- The [CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/interp.html#CoordinateInterpolator) node converts times to coordinates.
315
+ The [CoordinateInterpolator](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/interpolators.html#CoordinateInterpolator){:target="_blank"} node converts times to coordinates.
@@ -1,11 +1,10 @@
1
1
  ---
2
- # Feel free to add content and custom Front Matter to this file.
3
- # To modify the layout, see https://jekyllrb.com/docs/themes/#overriding-theme-defaults
4
-
5
- layout: single
2
+ title: Controlling Appearance with Materials
3
+ date: 2022-11-28
4
+ nav: tutorials-shapes-geometry-and-appearance
5
+ categories: [Tutorials]
6
+ tags: [controlling, appearance, materials]
6
7
  ---
7
- # Controlling Appearance whith Materials
8
-
9
8
  ## Motivation
10
9
 
11
10
  The primitive shapes have a default emissive (glowing) white appearance
@@ -20,7 +19,7 @@ You can control a shape's
20
19
 
21
20
  ## Syntax: Shape
22
21
 
23
- Recall that [Shape](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Shape) nodes describe:
22
+ Recall that [Shape](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Shape){:target="_blank"} nodes describe:
24
23
 
25
24
  - *appearance* - color and texture
26
25
  - *geometry* - form, or structure
@@ -45,7 +44,7 @@ Shape {
45
44
 
46
45
  ## Syntax: Appearance
47
46
 
48
- An [Appearance](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Appearance) node describes overall shape appearance
47
+ An [Appearance](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Appearance){:target="_blank"} node describes overall shape appearance
49
48
 
50
49
  - *material* properties - color, transparency, etc.
51
50
 
@@ -73,7 +72,7 @@ Shape {
73
72
 
74
73
  ## Syntax: Material
75
74
 
76
- A [Material](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Material) node controls shape material attributes
75
+ A [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"} node controls shape material attributes
77
76
 
78
77
  - *diffuseColor* - main shading color
79
78
  - *emissiveColor* - glowing color
@@ -123,15 +122,15 @@ Colors specify:
123
122
  | Cyan | 0.0 | 1.0 | 1.0 | ![cyan][] |
124
123
  | Brown | 0.5 | 0.2 | 0 | ![brown][] |
125
124
 
126
- [white]: https://via.placeholder.com/15/ffffff/000000?text=+
127
- [red]: https://via.placeholder.com/15/ff0000/000000?text=+
128
- [yellow]: https://via.placeholder.com/15/fff000/000000?text=+
129
- [cyan]: https://via.placeholder.com/15/00ffff/000000?text=+
130
- [brown]: https://via.placeholder.com/15/692929/000000?text=+
125
+ [white]: https://via.placeholder.com/15/ffffff/ffffff
126
+ [red]: https://via.placeholder.com/15/ff0000/ff0000
127
+ [yellow]: https://via.placeholder.com/15/fff000/fff000
128
+ [cyan]: https://via.placeholder.com/15/00ffff/00ffff
129
+ [brown]: https://via.placeholder.com/15/692929/692929
131
130
 
132
131
  ## Syntax: Material
133
132
 
134
- A [Material](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Material) node also controls shape shininess
133
+ A [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"} node also controls shape shininess
135
134
 
136
135
  - *specularColor* - highlightcolor
137
136
  - *shininess* - highlightsize
@@ -173,17 +172,19 @@ Shape {
173
172
  ...
174
173
  ```
175
174
 
176
- [![Box1](https://create3000.github.io/media/tutorials/scenes/box1/screenshot.png)](https://create3000.github.io/media/tutorials/scenes/box1/example.html)
175
+ ### Example
177
176
 
178
- [View scene in this window.](https://create3000.github.io/media/tutorials/scenes/box1/example.html)
177
+ <x3d-canvas src="https://create3000.github.io/media/tutorials/scenes/box1/box1.x3dv">
178
+ <img src="https://create3000.github.io/media/tutorials/scenes/box1/screenshot.png" alt="Box 1"/>
179
+ </x3d-canvas>
179
180
 
180
181
  [Download ZIP Archive](https://create3000.github.io/media/tutorials/scenes/box1/box1.zip)
181
182
 
182
183
  ## Summary
183
184
 
184
- The [Appearance](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Appearance) node controls overall shape appearance
185
+ The [Appearance](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Appearance){:target="_blank"} node controls overall shape appearance
185
186
 
186
- The [Material](https://www.web3d.org/documents/specifications/19775-1/V3.3/Part01/components/shape.html#Material) node controls overall material properties including:
187
+ The [Material](https://www.web3d.org/documents/specifications/19775-1/V4.0/Part01/components/shape.html#Material){:target="_blank"} node controls overall material properties including:
187
188
 
188
189
  - Shading color
189
190
  - Glow color