x_ite 4.0.7-a → 4.7.6

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 (1008) hide show
  1. package/.github/ISSUE_TEMPLATE/bug_report.md +38 -0
  2. package/.vscode/launch.json +15 -0
  3. package/.vscode/settings.json +13 -0
  4. package/.vscode/tasks.json +25 -0
  5. package/Makefile +55 -15
  6. package/README.md +13 -130
  7. package/build/bin/dist.pl +156 -0
  8. package/build/bin/version-number.pl +25 -0
  9. package/build/{version.pl → bin/version.pl} +54 -14
  10. package/build/components/annotation.build.js +15 -0
  11. package/build/components/cad-geometry.build.js +15 -0
  12. package/build/components/cube-map-texturing.build.js +15 -0
  13. package/build/components/dis.build.js +15 -0
  14. package/build/components/event-utilities.build.js +15 -0
  15. package/build/components/geometry2d.build.js +15 -0
  16. package/build/components/geospatial.build.js +15 -0
  17. package/build/components/h-anim.build.js +15 -0
  18. package/build/components/key-device-sensor.build.js +15 -0
  19. package/build/components/layout.build.js +15 -0
  20. package/build/components/nurbs.build.js +15 -0
  21. package/build/components/particle-systems.build.js +15 -0
  22. package/build/components/picking.build.js +15 -0
  23. package/build/components/projective-texture-mapping.build.js +15 -0
  24. package/build/components/rigid-body-physics.build.js +15 -0
  25. package/build/components/scripting.build.js +15 -0
  26. package/build/components/texturing-3d.build.js +15 -0
  27. package/build/components/volume-rendering.build.js +15 -0
  28. package/build/components/x_ite.build.js +15 -0
  29. package/build/parts/default.end.frag +2 -0
  30. package/build/parts/default.start.frag +6 -0
  31. package/build/parts/x_ite.end.frag +23 -0
  32. package/build/parts/x_ite.start.frag +8 -0
  33. package/build/x_ite.build.js +18 -0
  34. package/dist/LICENSE.txt +49 -0
  35. package/dist/assets/components/annotation.js +813 -0
  36. package/dist/assets/components/annotation.min.js +1 -0
  37. package/dist/assets/components/cad-geometry.js +1037 -0
  38. package/dist/assets/components/cad-geometry.min.js +1 -0
  39. package/dist/assets/components/cube-map-texturing.js +1212 -0
  40. package/dist/assets/components/cube-map-texturing.min.js +1 -0
  41. package/dist/assets/components/dis.js +908 -0
  42. package/dist/assets/components/dis.min.js +1 -0
  43. package/dist/assets/components/event-utilities.js +1114 -0
  44. package/dist/assets/components/event-utilities.min.js +1 -0
  45. package/dist/assets/components/geometry2d.js +2190 -0
  46. package/dist/assets/components/geometry2d.min.js +1 -0
  47. package/dist/assets/components/geospatial.js +3850 -0
  48. package/dist/assets/components/geospatial.min.js +2 -0
  49. package/dist/assets/components/h-anim.js +1084 -0
  50. package/dist/assets/components/h-anim.min.js +1 -0
  51. package/dist/assets/components/key-device-sensor.js +850 -0
  52. package/dist/assets/components/key-device-sensor.min.js +1 -0
  53. package/dist/assets/components/layout.js +2008 -0
  54. package/dist/assets/components/layout.min.js +1 -0
  55. package/dist/assets/components/nurbs.js +5388 -0
  56. package/dist/assets/components/nurbs.min.js +2 -0
  57. package/dist/assets/components/particle-systems.js +4216 -0
  58. package/dist/assets/components/particle-systems.min.js +2 -0
  59. package/dist/assets/components/picking.js +2481 -0
  60. package/dist/assets/components/picking.min.js +1 -0
  61. package/dist/assets/components/projective-texture-mapping.js +813 -0
  62. package/dist/assets/components/projective-texture-mapping.min.js +1 -0
  63. package/dist/assets/components/rigid-body-physics.js +4569 -0
  64. package/dist/assets/components/rigid-body-physics.min.js +59 -0
  65. package/dist/assets/components/scripting.js +801 -0
  66. package/dist/assets/components/scripting.min.js +1 -0
  67. package/dist/assets/components/texturing-3d.js +10054 -0
  68. package/dist/assets/components/texturing-3d.min.js +48 -0
  69. package/dist/assets/components/volume-rendering.js +3966 -0
  70. package/dist/assets/components/volume-rendering.min.js +3 -0
  71. package/dist/assets/components/x_ite.js +285 -0
  72. package/dist/assets/components/x_ite.min.js +1 -0
  73. package/{fonts → dist/assets/fonts}/DroidSerif-Bold.ttf +0 -0
  74. package/{fonts → dist/assets/fonts}/DroidSerif-BoldItalic.ttf +0 -0
  75. package/{fonts → dist/assets/fonts}/DroidSerif-Italic.ttf +0 -0
  76. package/{fonts → dist/assets/fonts}/DroidSerif-Regular.ttf +0 -0
  77. package/{fonts → dist/assets/fonts}/Ubuntu-B.ttf +0 -0
  78. package/{fonts → dist/assets/fonts}/Ubuntu-BI.ttf +0 -0
  79. package/{fonts → dist/assets/fonts}/Ubuntu-R.ttf +0 -0
  80. package/{fonts → dist/assets/fonts}/Ubuntu-RI.ttf +0 -0
  81. package/{fonts → dist/assets/fonts}/UbuntuMono-B.ttf +0 -0
  82. package/{fonts → dist/assets/fonts}/UbuntuMono-BI.ttf +0 -0
  83. package/{fonts → dist/assets/fonts}/UbuntuMono-R.ttf +0 -0
  84. package/{fonts → dist/assets/fonts}/UbuntuMono-RI.ttf +0 -0
  85. package/dist/assets/hatching/0.png +0 -0
  86. package/dist/assets/hatching/1.png +0 -0
  87. package/dist/assets/hatching/10.png +0 -0
  88. package/dist/assets/hatching/11.png +0 -0
  89. package/dist/assets/hatching/12.png +0 -0
  90. package/dist/assets/hatching/13.png +0 -0
  91. package/dist/assets/hatching/14.png +0 -0
  92. package/dist/assets/hatching/15.png +0 -0
  93. package/dist/assets/hatching/16.png +0 -0
  94. package/dist/assets/hatching/17.png +0 -0
  95. package/dist/assets/hatching/18.png +0 -0
  96. package/dist/assets/hatching/19.png +0 -0
  97. package/dist/assets/hatching/2.png +0 -0
  98. package/dist/assets/hatching/3.png +0 -0
  99. package/dist/assets/hatching/4.png +0 -0
  100. package/dist/assets/hatching/5.png +0 -0
  101. package/dist/assets/hatching/6.png +0 -0
  102. package/dist/assets/hatching/7.png +0 -0
  103. package/dist/assets/hatching/8.png +0 -0
  104. package/dist/assets/hatching/9.png +0 -0
  105. package/dist/{images → assets/images}/ExamineViewer.png +0 -0
  106. package/dist/{images → assets/images}/FlyViewer.png +0 -0
  107. package/dist/{images → assets/images}/NoneViewer.png +0 -0
  108. package/dist/{images → assets/images}/PlaneViewer.png +0 -0
  109. package/dist/{images → assets/images}/PrimitiveQuality.png +0 -0
  110. package/dist/{images → assets/images}/TextureQuality.png +0 -0
  111. package/dist/{images → assets/images}/Time.png +0 -0
  112. package/dist/{images → assets/images}/Viewpoint.png +0 -0
  113. package/dist/{images → assets/images}/WalkViewer.png +0 -0
  114. package/dist/assets/images/go-next.png +0 -0
  115. package/dist/{images → assets/images}/gtk-fullscreen.png +0 -0
  116. package/dist/{images → assets/images}/gtk-leave-fullscreen.png +0 -0
  117. package/dist/{images → assets/images}/gtk-zoom-fit.png +0 -0
  118. package/dist/{images → assets/images}/gtk-zoom-in.png +0 -0
  119. package/dist/{images → assets/images}/help-about.png +0 -0
  120. package/dist/{images → assets/images}/icon.bw.png +0 -0
  121. package/dist/{images → assets/images}/icon.png +0 -0
  122. package/dist/assets/images/logo.128.png +0 -0
  123. package/dist/{images → assets/images}/logo.bw.png +0 -0
  124. package/dist/{images → assets/images}/logo.png +0 -0
  125. package/dist/assets/linetype/0.png +0 -0
  126. package/dist/assets/linetype/1.png +0 -0
  127. package/dist/assets/linetype/10.png +0 -0
  128. package/dist/assets/linetype/11.png +0 -0
  129. package/dist/assets/linetype/12.png +0 -0
  130. package/dist/assets/linetype/13.png +0 -0
  131. package/dist/assets/linetype/14.png +0 -0
  132. package/dist/assets/linetype/15.png +0 -0
  133. package/dist/assets/linetype/16.png +0 -0
  134. package/dist/assets/linetype/2.png +0 -0
  135. package/dist/assets/linetype/3.png +0 -0
  136. package/dist/assets/linetype/4.png +0 -0
  137. package/dist/assets/linetype/5.png +0 -0
  138. package/dist/assets/linetype/6.png +0 -0
  139. package/dist/assets/linetype/7.png +0 -0
  140. package/dist/assets/linetype/8.png +0 -0
  141. package/dist/assets/linetype/9.png +0 -0
  142. package/dist/assets/shaders/webgl1/Background.fs +23 -0
  143. package/dist/assets/shaders/webgl1/Background.vs +16 -0
  144. package/dist/assets/shaders/webgl1/Depth.fs +60 -0
  145. package/dist/assets/shaders/webgl1/Depth.vs +13 -0
  146. package/dist/assets/shaders/webgl1/Fallback.fs +28 -0
  147. package/dist/assets/shaders/webgl1/Fallback.vs +24 -0
  148. package/dist/assets/shaders/webgl1/FallbackUnlit.fs +16 -0
  149. package/dist/assets/shaders/webgl1/FallbackUnlit.vs +18 -0
  150. package/dist/assets/shaders/webgl1/Gouraud.fs +529 -0
  151. package/dist/assets/shaders/webgl1/Gouraud.vs +108 -0
  152. package/dist/assets/shaders/webgl1/Phong.fs +838 -0
  153. package/dist/assets/shaders/webgl1/Phong.vs +52 -0
  154. package/dist/assets/shaders/webgl1/PointSet.fs +541 -0
  155. package/dist/assets/shaders/webgl1/PointSet.vs +48 -0
  156. package/dist/assets/shaders/webgl1/Unlit.fs +541 -0
  157. package/dist/assets/shaders/webgl1/Unlit.vs +52 -0
  158. package/dist/assets/shaders/webgl1/Wireframe.fs +93 -0
  159. package/dist/assets/shaders/webgl1/Wireframe.vs +47 -0
  160. package/dist/assets/shaders/webgl2/Background.fs +25 -0
  161. package/dist/assets/shaders/webgl2/Background.vs +17 -0
  162. package/dist/assets/shaders/webgl2/Depth.fs +62 -0
  163. package/dist/assets/shaders/webgl2/Depth.vs +14 -0
  164. package/dist/assets/shaders/webgl2/Gouraud.fs +684 -0
  165. package/dist/assets/shaders/webgl2/Gouraud.vs +109 -0
  166. package/dist/assets/shaders/webgl2/Phong.fs +1014 -0
  167. package/dist/assets/shaders/webgl2/Phong.vs +53 -0
  168. package/dist/assets/shaders/webgl2/PointSet.fs +696 -0
  169. package/dist/assets/shaders/webgl2/PointSet.vs +49 -0
  170. package/dist/assets/shaders/webgl2/Unlit.fs +696 -0
  171. package/dist/assets/shaders/webgl2/Unlit.vs +53 -0
  172. package/dist/assets/shaders/webgl2/Wireframe.fs +102 -0
  173. package/dist/assets/shaders/webgl2/Wireframe.vs +48 -0
  174. package/dist/example.html +8 -7
  175. package/dist/x_ite.css +180 -59
  176. package/dist/x_ite.js +74592 -67939
  177. package/dist/x_ite.min.js +42 -41
  178. package/dist/x_ite.zip +0 -0
  179. package/docs/404.md +5 -0
  180. package/docs/Accessing-the-External-Browser.md +290 -0
  181. package/docs/Browser-Support.md +47 -0
  182. package/docs/Custom-Shaders.md +896 -0
  183. package/docs/Features.md +49 -0
  184. package/docs/Glossary.md +339 -0
  185. package/docs/How-To-Configure-Your-Web-Server.md +56 -0
  186. package/docs/Supported-Nodes.md +370 -0
  187. package/docs/What's-New.md +1272 -0
  188. package/docs/XHTML-DOM-Integration.md +82 -0
  189. package/docs/_config.yml +140 -0
  190. package/docs/_data/navigation.yml +137 -0
  191. package/docs/assets/css/main.scss +100 -0
  192. package/docs/assets/images/logo.png +0 -0
  193. package/docs/google3696ee938394d7b6.html +1 -0
  194. package/docs/index.md +1026 -0
  195. package/docs/reference/Browser-Services.md +333 -0
  196. package/docs/reference/Constants-Services.md +376 -0
  197. package/docs/reference/ECMAScript-Object-and-Function-Definitions.md +128 -0
  198. package/docs/reference/Field-Services-and-Objects.md +1006 -0
  199. package/docs/reference/Prototype-Services.md +121 -0
  200. package/docs/reference/Route-Services.md +49 -0
  201. package/docs/reference/Scene-Services.md +360 -0
  202. package/docs/reference/Script-Node-Authoring-Interface.md +334 -0
  203. package/docs/tutorials/Adding-backgrounds.md +268 -0
  204. package/docs/tutorials/Adding-fog.md +67 -0
  205. package/docs/tutorials/Adding-sound.md +326 -0
  206. package/docs/tutorials/Animating-transforms.md +385 -0
  207. package/docs/tutorials/Basic-Nodes.md +317 -0
  208. package/docs/tutorials/Building-a-X3D-world.md +152 -0
  209. package/docs/tutorials/Building-elevation-grids.md +170 -0
  210. package/docs/tutorials/Building-extruded-shapes.md +145 -0
  211. package/docs/tutorials/Building-primitive-shapes.md +204 -0
  212. package/docs/tutorials/Building-shapes-out-of-points,-lines,-and-faces.md +311 -0
  213. package/docs/tutorials/Controlling-appearance-with-materials.md +186 -0
  214. package/docs/tutorials/Controlling-color-on-coordinate-based-geometry.md +208 -0
  215. package/docs/tutorials/Controlling-detail.md +130 -0
  216. package/docs/tutorials/Controlling-how-textures-are-mapped.md +277 -0
  217. package/docs/tutorials/Controlling-navigation.md +70 -0
  218. package/docs/tutorials/Controlling-shading-on-coordinate-based-geometry.md +180 -0
  219. package/docs/tutorials/Controlling-the-viewpoint.md +49 -0
  220. package/docs/tutorials/Creating-new-node-types.md +313 -0
  221. package/docs/tutorials/Grouping-nodes.md +237 -0
  222. package/docs/tutorials/Hello,-World!.md +204 -0
  223. package/docs/tutorials/Improving-Performance.md +227 -0
  224. package/docs/tutorials/Increasing-Rendering-Speed.md +110 -0
  225. package/docs/tutorials/Introducing-X3D.md +94 -0
  226. package/docs/tutorials/Introducing-animation.md +211 -0
  227. package/docs/tutorials/Introducing-script-use.md +127 -0
  228. package/docs/tutorials/Lighting-your-world.md +139 -0
  229. package/docs/tutorials/Mapping-textures.md +212 -0
  230. package/docs/tutorials/Naming-nodes.md +161 -0
  231. package/docs/tutorials/Providing-information-about-your-world.md +30 -0
  232. package/docs/tutorials/Sensing-the-viewer.md +205 -0
  233. package/docs/tutorials/Sensing-viewer-actions.md +214 -0
  234. package/docs/tutorials/Transforming-Shapes.md +270 -0
  235. package/docs/tutorials/Writing-program-scripts-with-ECMAScript.md +631 -0
  236. package/docs/tutorials/index.md +78 -0
  237. package/meta/logo/logo.png +0 -0
  238. package/meta/logo/logo.svg +216 -217
  239. package/meta/web3d.html +3 -3
  240. package/package.json +47 -25
  241. package/src/assets/components/annotation.js +87 -0
  242. package/src/assets/components/cad-geometry.js +88 -0
  243. package/src/assets/components/cube-map-texturing.js +78 -0
  244. package/src/assets/components/dis.js +84 -0
  245. package/src/assets/components/event-utilities.js +93 -0
  246. package/src/assets/components/geometry2d.js +93 -0
  247. package/src/assets/components/geospatial.js +102 -0
  248. package/src/assets/components/h-anim.js +83 -0
  249. package/src/assets/components/key-device-sensor.js +78 -0
  250. package/src/assets/components/layout.js +87 -0
  251. package/src/assets/components/nurbs.js +118 -0
  252. package/src/assets/components/particle-systems.js +105 -0
  253. package/src/assets/components/picking.js +87 -0
  254. package/src/assets/components/projective-texture-mapping.js +75 -0
  255. package/src/assets/components/rigid-body-physics.js +123 -0
  256. package/src/assets/components/scripting.js +72 -0
  257. package/src/assets/components/texturing-3d.js +91 -0
  258. package/src/assets/components/volume-rendering.js +118 -0
  259. package/src/assets/components/x_ite.js +69 -0
  260. package/src/assets/fonts/DroidSerif-Bold.ttf +0 -0
  261. package/src/assets/fonts/DroidSerif-BoldItalic.ttf +0 -0
  262. package/src/assets/fonts/DroidSerif-Italic.ttf +0 -0
  263. package/src/assets/fonts/DroidSerif-Regular.ttf +0 -0
  264. package/src/assets/fonts/Ubuntu-B.ttf +0 -0
  265. package/src/assets/fonts/Ubuntu-BI.ttf +0 -0
  266. package/src/assets/fonts/Ubuntu-R.ttf +0 -0
  267. package/src/assets/fonts/Ubuntu-RI.ttf +0 -0
  268. package/src/assets/fonts/UbuntuMono-B.ttf +0 -0
  269. package/src/assets/fonts/UbuntuMono-BI.ttf +0 -0
  270. package/src/assets/fonts/UbuntuMono-R.ttf +0 -0
  271. package/src/assets/fonts/UbuntuMono-RI.ttf +0 -0
  272. package/src/assets/hatching/0.png +0 -0
  273. package/src/assets/hatching/1.png +0 -0
  274. package/src/assets/hatching/10.png +0 -0
  275. package/src/assets/hatching/11.png +0 -0
  276. package/src/assets/hatching/12.png +0 -0
  277. package/src/assets/hatching/13.png +0 -0
  278. package/src/assets/hatching/14.png +0 -0
  279. package/src/assets/hatching/15.png +0 -0
  280. package/src/assets/hatching/16.png +0 -0
  281. package/src/assets/hatching/17.png +0 -0
  282. package/src/assets/hatching/18.png +0 -0
  283. package/src/assets/hatching/19.png +0 -0
  284. package/src/assets/hatching/2.png +0 -0
  285. package/src/assets/hatching/3.png +0 -0
  286. package/src/assets/hatching/4.png +0 -0
  287. package/src/assets/hatching/5.png +0 -0
  288. package/src/assets/hatching/6.png +0 -0
  289. package/src/assets/hatching/7.png +0 -0
  290. package/src/assets/hatching/8.png +0 -0
  291. package/src/assets/hatching/9.png +0 -0
  292. package/src/{images → assets/images}/ExamineViewer.png +0 -0
  293. package/src/{images → assets/images}/FlyViewer.png +0 -0
  294. package/src/{images → assets/images}/NoneViewer.png +0 -0
  295. package/src/{images → assets/images}/PlaneViewer.png +0 -0
  296. package/src/{images → assets/images}/PrimitiveQuality.png +0 -0
  297. package/src/{images → assets/images}/TextureQuality.png +0 -0
  298. package/src/{images → assets/images}/Time.png +0 -0
  299. package/src/{images → assets/images}/Viewpoint.png +0 -0
  300. package/src/{images → assets/images}/WalkViewer.png +0 -0
  301. package/src/assets/images/go-next.png +0 -0
  302. package/src/{images → assets/images}/gtk-fullscreen.png +0 -0
  303. package/src/{images → assets/images}/gtk-leave-fullscreen.png +0 -0
  304. package/src/{images → assets/images}/gtk-zoom-fit.png +0 -0
  305. package/src/{images → assets/images}/gtk-zoom-in.png +0 -0
  306. package/src/{images → assets/images}/help-about.png +0 -0
  307. package/src/{images → assets/images}/icon.bw.png +0 -0
  308. package/src/{images → assets/images}/icon.png +0 -0
  309. package/src/assets/images/logo.128.png +0 -0
  310. package/src/{images → assets/images}/logo.bw.png +0 -0
  311. package/src/{images → assets/images}/logo.png +0 -0
  312. package/src/assets/linetype/0.png +0 -0
  313. package/src/assets/linetype/1.png +0 -0
  314. package/src/assets/linetype/10.png +0 -0
  315. package/src/assets/linetype/11.png +0 -0
  316. package/src/assets/linetype/12.png +0 -0
  317. package/src/assets/linetype/13.png +0 -0
  318. package/src/assets/linetype/14.png +0 -0
  319. package/src/assets/linetype/15.png +0 -0
  320. package/src/assets/linetype/16.png +0 -0
  321. package/src/assets/linetype/2.png +0 -0
  322. package/src/assets/linetype/3.png +0 -0
  323. package/src/assets/linetype/4.png +0 -0
  324. package/src/assets/linetype/5.png +0 -0
  325. package/src/assets/linetype/6.png +0 -0
  326. package/src/assets/linetype/7.png +0 -0
  327. package/src/assets/linetype/8.png +0 -0
  328. package/src/assets/linetype/9.png +0 -0
  329. package/src/assets/shaders/Types.glsl +102 -0
  330. package/src/assets/shaders/webgl1/Background.fs +16 -0
  331. package/src/assets/shaders/webgl1/Background.vs +22 -0
  332. package/src/assets/shaders/webgl1/Depth.fs +16 -0
  333. package/src/assets/shaders/webgl1/Depth.vs +20 -0
  334. package/src/assets/shaders/webgl1/Fallback.fs +38 -0
  335. package/src/assets/shaders/webgl1/Fallback.vs +30 -0
  336. package/src/assets/shaders/webgl1/FallbackUnlit.fs +22 -0
  337. package/src/assets/shaders/webgl1/FallbackUnlit.vs +24 -0
  338. package/src/assets/shaders/webgl1/Gouraud.fs +66 -0
  339. package/src/assets/shaders/webgl1/Gouraud.vs +148 -0
  340. package/src/assets/shaders/webgl1/Phong.fs +173 -0
  341. package/src/assets/shaders/webgl1/Phong.vs +67 -0
  342. package/src/assets/shaders/webgl1/PointSet.fs +100 -0
  343. package/src/assets/shaders/webgl1/PointSet.vs +70 -0
  344. package/src/assets/shaders/webgl1/Unlit.fs +89 -0
  345. package/src/assets/shaders/webgl1/Unlit.vs +67 -0
  346. package/src/assets/shaders/webgl1/Wireframe.fs +74 -0
  347. package/src/assets/shaders/webgl1/Wireframe.vs +63 -0
  348. package/src/assets/shaders/webgl1/include/ClipPlanes.glsl +16 -0
  349. package/src/assets/shaders/webgl1/include/Fog.glsl +38 -0
  350. package/src/assets/shaders/webgl1/include/Hatch.glsl +18 -0
  351. package/src/assets/shaders/webgl1/include/Pack.glsl +51 -0
  352. package/src/assets/shaders/webgl1/include/Perlin.glsl +40 -0
  353. package/src/assets/shaders/webgl1/include/Shadow.glsl +310 -0
  354. package/src/assets/shaders/webgl1/include/Texture.glsl +488 -0
  355. package/src/assets/shaders/webgl2/Background.fs +19 -0
  356. package/src/assets/shaders/webgl2/Background.vs +23 -0
  357. package/src/assets/shaders/webgl2/Depth.fs +19 -0
  358. package/src/assets/shaders/webgl2/Depth.vs +21 -0
  359. package/src/assets/shaders/webgl2/Gouraud.fs +64 -0
  360. package/src/assets/shaders/webgl2/Gouraud.vs +149 -0
  361. package/src/assets/shaders/webgl2/Phong.fs +171 -0
  362. package/src/assets/shaders/webgl2/Phong.vs +68 -0
  363. package/src/assets/shaders/webgl2/PointSet.fs +99 -0
  364. package/src/assets/shaders/webgl2/PointSet.vs +71 -0
  365. package/src/assets/shaders/webgl2/Unlit.fs +88 -0
  366. package/src/assets/shaders/webgl2/Unlit.vs +68 -0
  367. package/src/assets/shaders/webgl2/Wireframe.fs +73 -0
  368. package/src/assets/shaders/webgl2/Wireframe.vs +64 -0
  369. package/src/assets/shaders/webgl2/include/ClipPlanes.glsl +16 -0
  370. package/src/assets/shaders/webgl2/include/Fog.glsl +46 -0
  371. package/src/assets/shaders/webgl2/include/Hatch.glsl +18 -0
  372. package/src/assets/shaders/webgl2/include/Pack.glsl +51 -0
  373. package/src/assets/shaders/webgl2/include/Perlin.glsl +40 -0
  374. package/src/assets/shaders/webgl2/include/Shadow.glsl +324 -0
  375. package/src/assets/shaders/webgl2/include/Texture.glsl +623 -0
  376. package/src/bookmarks.js +80 -160
  377. package/src/dummy.js +1 -0
  378. package/src/example.html +8 -7
  379. package/src/examples.js +150 -0
  380. package/src/lib/ammojs/AmmoJS.js +58 -0
  381. package/src/lib/ammojs/Makefile +26 -0
  382. package/src/lib/ammojs/ammo.idl +1031 -0
  383. package/src/lib/ammojs/ammo.js +40 -0
  384. package/src/lib/jpeg/jpeg.js +1019 -0
  385. package/src/lib/nurbs/extras/sample.js +242 -0
  386. package/src/lib/nurbs/nurbs.js +342 -0
  387. package/src/lib/nurbs/src/evaluate.js +413 -0
  388. package/src/lib/nurbs/src/numerical-derivative.js +54 -0
  389. package/src/lib/nurbs/src/support.js +151 -0
  390. package/src/lib/nurbs/src/transform.js +78 -0
  391. package/src/lib/nurbs/src/utils/accessor-preamble.js +33 -0
  392. package/src/lib/nurbs/src/utils/bisection-search.js +28 -0
  393. package/src/lib/nurbs/src/utils/cache-key.js +57 -0
  394. package/src/lib/nurbs/src/utils/create-accessors.js +110 -0
  395. package/src/lib/nurbs/src/utils/infer-type.js +52 -0
  396. package/src/lib/nurbs/src/utils/is-array-like.js +10 -0
  397. package/src/lib/nurbs/src/utils/is-ndarray-like.js +18 -0
  398. package/src/lib/nurbs/src/utils/is-ndarray.js +21 -0
  399. package/src/lib/nurbs/src/utils/ndloop.js +23 -0
  400. package/src/lib/nurbs/src/utils/size-getter.js +22 -0
  401. package/src/lib/nurbs/src/utils/variable.js +31 -0
  402. package/src/locale/de.po +8 -3
  403. package/src/locale/fr.po +9 -4
  404. package/src/locale/gettext.js +3 -3
  405. package/src/spinner.css +21 -8
  406. package/src/standard/Geospatial/Geodetic.js +48 -48
  407. package/src/standard/Geospatial/ReferenceEllipsoids.js +1 -1
  408. package/src/standard/Geospatial/UniversalTransverseMercator.js +43 -43
  409. package/src/standard/Math/Algorithm.js +25 -41
  410. package/src/standard/Math/Algorithms/Bezier.js +147 -0
  411. package/src/standard/Math/Algorithms/MergeSort.js +2 -2
  412. package/src/standard/Math/Algorithms/PartialSort.js +97 -0
  413. package/src/standard/Math/Algorithms/QuickSort.js +8 -6
  414. package/src/standard/Math/Algorithms/SAT.js +4 -8
  415. package/src/standard/Math/Algorithms/eigendecomposition.js +37 -33
  416. package/src/standard/Math/Geometry/Box2.js +84 -56
  417. package/src/standard/Math/Geometry/Box3.js +457 -284
  418. package/src/standard/Math/Geometry/Camera.js +24 -15
  419. package/src/standard/Math/Geometry/Cylinder3.js +13 -13
  420. package/src/standard/Math/Geometry/Line3.js +61 -53
  421. package/src/standard/Math/Geometry/Plane3.js +16 -16
  422. package/src/standard/Math/Geometry/Sphere3.js +122 -105
  423. package/src/standard/Math/Geometry/Spheroid3.js +1 -1
  424. package/src/standard/Math/Geometry/Triangle2.js +6 -6
  425. package/src/standard/Math/Geometry/Triangle3.js +80 -88
  426. package/src/standard/Math/Geometry/ViewVolume.js +315 -116
  427. package/src/standard/Math/Numbers/Color3.js +45 -29
  428. package/src/standard/Math/Numbers/Color4.js +25 -14
  429. package/src/standard/Math/Numbers/Complex.js +15 -22
  430. package/src/standard/Math/Numbers/Matrix2.js +37 -17
  431. package/src/standard/Math/Numbers/Matrix3.js +181 -212
  432. package/src/standard/Math/Numbers/Matrix4.js +204 -262
  433. package/src/standard/Math/Numbers/Quaternion.js +60 -147
  434. package/src/standard/Math/Numbers/Rotation4.js +197 -129
  435. package/src/standard/Math/Numbers/Vector2.js +53 -109
  436. package/src/standard/Math/Numbers/Vector3.js +75 -144
  437. package/src/standard/Math/Numbers/Vector4.js +85 -155
  438. package/src/standard/Math/Utility/BVH.js +35 -30
  439. package/src/standard/Math/Utility/MatrixStack.js +6 -9
  440. package/src/standard/Networking/BinaryTransport.js +8 -8
  441. package/src/standard/Time/MicroTime.js +79 -0
  442. package/src/standard/Utility/DataStorage.js +40 -17
  443. package/src/standard/Utility/MapUtilities.js +69 -0
  444. package/src/standard/Utility/ObjectCache.js +2 -3
  445. package/src/standard/Utility/Shuffle.js +5 -6
  446. package/src/tests.js +387 -0
  447. package/src/x_ite/Base/Events.js +22 -30
  448. package/src/x_ite/Base/X3DChildObject.js +35 -19
  449. package/src/x_ite/Base/X3DEventObject.js +10 -12
  450. package/src/x_ite/Base/X3DObject.js +63 -43
  451. package/src/x_ite/Basic/FieldDefinitionArray.js +16 -10
  452. package/src/x_ite/Basic/X3DArrayField.js +3 -430
  453. package/src/x_ite/Basic/X3DBaseNode.js +551 -288
  454. package/src/x_ite/Basic/X3DField.js +133 -96
  455. package/src/x_ite/Basic/X3DFieldDefinition.js +0 -4
  456. package/src/x_ite/Basic/X3DObjectArrayField.js +545 -0
  457. package/src/x_ite/Basic/X3DTypedArrayField.js +839 -0
  458. package/src/x_ite/Bits/TraverseType.js +2 -5
  459. package/src/x_ite/Bits/X3DConstants.js +12 -322
  460. package/src/x_ite/Browser/Core/BrowserOptions.js +205 -77
  461. package/src/x_ite/Browser/Core/BrowserProperties.js +2 -4
  462. package/src/x_ite/Browser/Core/BrowserTimings.js +16 -15
  463. package/src/x_ite/Browser/Core/ContextMenu.js +202 -80
  464. package/src/x_ite/Browser/Core/Notification.js +14 -6
  465. package/src/x_ite/Browser/Core/PrimitiveQuality.js +3 -7
  466. package/src/x_ite/Browser/Core/RenderingProperties.js +10 -11
  467. package/src/x_ite/Browser/Core/Shading.js +66 -0
  468. package/src/x_ite/Browser/Core/TextureQuality.js +3 -7
  469. package/src/x_ite/Browser/Core/X3DCoreContext.js +495 -48
  470. package/src/x_ite/Browser/Core/X3DCoreContext.js.~1~ +714 -0
  471. package/src/x_ite/Browser/EnvironmentalEffects/X3DEnvironmentalEffectsContext.js +17 -23
  472. package/src/x_ite/Browser/Followers/X3DArrayChaserTemplate.js +12 -20
  473. package/src/x_ite/Browser/Followers/X3DArrayFollowerTemplate.js +82 -34
  474. package/src/x_ite/Browser/Geometry2D/Arc2DOptions.js +3 -5
  475. package/src/x_ite/Browser/Geometry2D/ArcClose2DOptions.js +3 -5
  476. package/src/x_ite/Browser/Geometry2D/Circle2DOptions.js +12 -9
  477. package/src/x_ite/Browser/Geometry2D/Disk2DOptions.js +60 -42
  478. package/src/x_ite/Browser/Geometry2D/Rectangle2DOptions.js +16 -20
  479. package/src/x_ite/Browser/Geometry2D/X3DGeometry2DContext.js +51 -12
  480. package/src/x_ite/Browser/Geometry3D/BoxOptions.js +17 -21
  481. package/src/x_ite/Browser/Geometry3D/ConeOptions.js +2 -4
  482. package/src/x_ite/Browser/Geometry3D/CylinderOptions.js +2 -4
  483. package/src/x_ite/Browser/Geometry3D/IcoSphereOptions.js +2 -4
  484. package/src/x_ite/Browser/Geometry3D/QuadSphereOptions.js +3 -5
  485. package/src/x_ite/Browser/Geometry3D/X3DGeometry3DContext.js +8 -9
  486. package/src/x_ite/Browser/Grouping/X3DGroupingContext.js +98 -0
  487. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolator.js +12 -12
  488. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolator1.js +2 -4
  489. package/src/x_ite/Browser/Interpolation/CatmullRomSplineInterpolatorTemplate.js +2 -4
  490. package/src/x_ite/Browser/KeyDeviceSensor/X3DKeyDeviceSensorContext.js +22 -200
  491. package/src/x_ite/Browser/Layout/ScreenText.js +287 -295
  492. package/src/x_ite/Browser/Layout/X3DLayoutContext.js +15 -12
  493. package/src/x_ite/Browser/Lighting/X3DLightingContext.js +18 -12
  494. package/src/x_ite/Browser/NURBS/NURBS.js +481 -0
  495. package/src/x_ite/Browser/Navigation/ExamineViewer.js +587 -127
  496. package/src/x_ite/Browser/Navigation/FlyViewer.js +23 -5
  497. package/src/x_ite/Browser/Navigation/LookAtViewer.js +402 -18
  498. package/src/x_ite/Browser/Navigation/NoneViewer.js +13 -3
  499. package/src/x_ite/Browser/Navigation/PlaneViewer.js +46 -28
  500. package/src/x_ite/Browser/Navigation/WalkViewer.js +45 -17
  501. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +414 -207
  502. package/src/x_ite/Browser/Navigation/X3DNavigationContext.js +65 -48
  503. package/src/x_ite/Browser/Navigation/X3DViewer.js +99 -45
  504. package/src/x_ite/Browser/Networking/X3DNetworkingContext.js +39 -38
  505. package/src/x_ite/Browser/Networking/urls.js +34 -5
  506. package/src/x_ite/Browser/ParticleSystems/X3DParticleSystemsContext.js +7 -9
  507. package/src/x_ite/Browser/Picking/IntersectionType.js +63 -0
  508. package/src/x_ite/Browser/Picking/MatchCriterion.js +64 -0
  509. package/src/x_ite/Browser/Picking/SortOrder.js +65 -0
  510. package/src/x_ite/Browser/Picking/VolumePicker.js +197 -0
  511. package/src/x_ite/Browser/Picking/X3DPickingContext.js +130 -0
  512. package/src/x_ite/Browser/PointingDeviceSensor/PointingDevice.js +89 -30
  513. package/src/x_ite/Browser/PointingDeviceSensor/PointingDeviceSensorContainer.js +1 -3
  514. package/src/x_ite/Browser/PointingDeviceSensor/X3DPointingDeviceSensorContext.js +33 -15
  515. package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +39 -151
  516. package/src/x_ite/Browser/RigidBodyPhysics/AppliedParametersType.js +70 -0
  517. package/src/x_ite/Browser/Shaders/Shader.js +150 -50
  518. package/src/x_ite/Browser/Shaders/ShaderSource.js +140 -0
  519. package/src/x_ite/Browser/Shaders/ShaderTest.js +94 -77
  520. package/src/x_ite/Browser/Shaders/X3DShadersContext.js +220 -5
  521. package/src/x_ite/Browser/Shape/AlphaMode.js +65 -0
  522. package/src/x_ite/Browser/Shape/LineStipples.xcf +0 -0
  523. package/src/x_ite/Browser/Shape/X3DShapeContext.js +108 -4
  524. package/src/x_ite/Browser/Sound/X3DSoundContext.js +1 -20
  525. package/src/x_ite/Browser/Text/PolygonText.js +165 -359
  526. package/src/x_ite/Browser/Text/TextAlignment.js +3 -7
  527. package/src/x_ite/Browser/Text/X3DTextContext.js +38 -30
  528. package/src/x_ite/Browser/Text/X3DTextGeometry.js +58 -84
  529. package/src/x_ite/Browser/Texturing/MultiTextureFunctionType.js +64 -0
  530. package/src/x_ite/Browser/Texturing/MultiTextureModeType.js +81 -0
  531. package/src/x_ite/Browser/Texturing/MultiTextureSourceType.js +65 -0
  532. package/src/x_ite/Browser/Texturing/TextureCoordinateGeneratorModeType.js +73 -0
  533. package/src/x_ite/Browser/Texturing/X3DTexturingContext.js +148 -41
  534. package/src/x_ite/Browser/Texturing3D/DICOMParser.js +1126 -0
  535. package/src/x_ite/Browser/Texturing3D/NRRDParser.js +686 -0
  536. package/src/x_ite/Browser/Time/X3DTimeContext.js +20 -17
  537. package/src/x_ite/Browser/VERSION.js +2 -2
  538. package/src/x_ite/Browser/VolumeRendering/VolumeStyle.fs +120 -0
  539. package/src/x_ite/Browser/VolumeRendering/VolumeStyle.vs +28 -0
  540. package/src/x_ite/Browser/VolumeRendering/X3DVolumeRenderingContext.js +114 -0
  541. package/src/x_ite/Browser/X3DBrowser.js +282 -182
  542. package/src/x_ite/Browser/X3DBrowserContext.js +65 -39
  543. package/src/x_ite/Components/Annotation/AnnotationLayer.js +108 -0
  544. package/src/x_ite/Components/Annotation/AnnotationTarget.js +101 -0
  545. package/src/x_ite/Components/{PointingDeviceSensor/TouchGroup.js → Annotation/GroupAnnotation.js} +30 -24
  546. package/src/x_ite/Components/Annotation/IconAnnotation.js +110 -0
  547. package/src/x_ite/Components/Annotation/TextAnnotation.js +102 -0
  548. package/src/x_ite/Components/Annotation/URLAnnotation.js +101 -0
  549. package/src/x_ite/Components/Annotation/X3DAnnotationNode.js +76 -0
  550. package/src/x_ite/Components/CADGeometry/CADAssembly.js +6 -8
  551. package/src/x_ite/Components/CADGeometry/CADFace.js +137 -33
  552. package/src/x_ite/Components/CADGeometry/CADLayer.js +5 -18
  553. package/src/x_ite/Components/CADGeometry/CADPart.js +6 -12
  554. package/src/x_ite/Components/CADGeometry/IndexedQuadSet.js +20 -36
  555. package/src/x_ite/Components/CADGeometry/QuadSet.js +11 -24
  556. package/src/x_ite/Components/CADGeometry/X3DProductStructureChildNode.js +2 -4
  557. package/src/x_ite/Components/Core/MetadataBoolean.js +2 -4
  558. package/src/x_ite/Components/Core/MetadataDouble.js +2 -4
  559. package/src/x_ite/Components/Core/MetadataFloat.js +2 -4
  560. package/src/x_ite/Components/Core/MetadataInteger.js +2 -4
  561. package/src/x_ite/Components/Core/MetadataSet.js +2 -4
  562. package/src/x_ite/Components/Core/MetadataString.js +2 -4
  563. package/src/x_ite/Components/Core/WorldInfo.js +18 -10
  564. package/src/x_ite/Components/Core/X3DBindableNode.js +5 -36
  565. package/src/x_ite/Components/Core/X3DChildNode.js +16 -5
  566. package/src/x_ite/Components/Core/X3DInfoNode.js +2 -4
  567. package/src/x_ite/Components/Core/X3DMetadataObject.js +1 -3
  568. package/src/x_ite/Components/Core/X3DNode.js +2 -64
  569. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +190 -210
  570. package/src/x_ite/Components/Core/X3DSensorNode.js +2 -4
  571. package/src/x_ite/Components/Core.js +111 -0
  572. package/src/x_ite/Components/CubeMapTexturing/ComposedCubeMapTexture.js +42 -50
  573. package/src/x_ite/Components/CubeMapTexturing/GeneratedCubeMapTexture.js +41 -42
  574. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +44 -59
  575. package/src/x_ite/Components/CubeMapTexturing/X3DEnvironmentTextureNode.js +48 -46
  576. package/src/x_ite/Components/DIS/DISEntityManager.js +2 -4
  577. package/src/x_ite/Components/DIS/DISEntityTypeMapping.js +2 -4
  578. package/src/x_ite/Components/DIS/EspduTransform.js +13 -9
  579. package/src/x_ite/Components/DIS/ReceiverPdu.js +13 -9
  580. package/src/x_ite/Components/DIS/SignalPdu.js +13 -9
  581. package/src/x_ite/Components/DIS/TransmitterPdu.js +13 -9
  582. package/src/x_ite/Components/EnvironmentalEffects/Background.js +2 -4
  583. package/src/x_ite/Components/EnvironmentalEffects/Fog.js +15 -18
  584. package/src/x_ite/Components/EnvironmentalEffects/FogCoordinate.js +59 -7
  585. package/src/x_ite/Components/EnvironmentalEffects/LocalFog.js +12 -10
  586. package/src/x_ite/Components/EnvironmentalEffects/TextureBackground.js +2 -4
  587. package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +149 -144
  588. package/src/x_ite/Components/EnvironmentalEffects/X3DFogObject.js +61 -22
  589. package/src/x_ite/Components/EnvironmentalEffects.js +90 -0
  590. package/src/x_ite/Components/EnvironmentalSensor/ProximitySensor.js +121 -121
  591. package/src/x_ite/Components/EnvironmentalSensor/TransformSensor.js +173 -53
  592. package/src/x_ite/Components/EnvironmentalSensor/VisibilitySensor.js +33 -31
  593. package/src/x_ite/Components/EnvironmentalSensor/X3DEnvironmentalSensorNode.js +17 -9
  594. package/src/x_ite/Components/EnvironmentalSensor.js +81 -0
  595. package/src/x_ite/Components/EventUtilities/BooleanFilter.js +2 -4
  596. package/src/x_ite/Components/EventUtilities/BooleanSequencer.js +2 -4
  597. package/src/x_ite/Components/EventUtilities/BooleanToggle.js +2 -4
  598. package/src/x_ite/Components/EventUtilities/BooleanTrigger.js +2 -4
  599. package/src/x_ite/Components/EventUtilities/IntegerSequencer.js +2 -4
  600. package/src/x_ite/Components/EventUtilities/IntegerTrigger.js +2 -4
  601. package/src/x_ite/Components/EventUtilities/TimeTrigger.js +2 -4
  602. package/src/x_ite/Components/EventUtilities/X3DSequencerNode.js +2 -4
  603. package/src/x_ite/Components/EventUtilities/X3DTriggerNode.js +2 -4
  604. package/src/x_ite/Components/Followers/ColorChaser.js +3 -7
  605. package/src/x_ite/Components/Followers/ColorDamper.js +3 -7
  606. package/src/x_ite/Components/Followers/CoordinateChaser.js +3 -11
  607. package/src/x_ite/Components/Followers/CoordinateDamper.js +2 -10
  608. package/src/x_ite/Components/Followers/OrientationChaser.js +9 -7
  609. package/src/x_ite/Components/Followers/OrientationDamper.js +9 -7
  610. package/src/x_ite/Components/Followers/PositionChaser.js +3 -7
  611. package/src/x_ite/Components/Followers/PositionChaser2D.js +3 -7
  612. package/src/x_ite/Components/Followers/PositionDamper.js +3 -7
  613. package/src/x_ite/Components/Followers/PositionDamper2D.js +3 -7
  614. package/src/x_ite/Components/Followers/ScalarChaser.js +7 -7
  615. package/src/x_ite/Components/Followers/ScalarDamper.js +3 -7
  616. package/src/x_ite/Components/Followers/TexCoordChaser2D.js +3 -11
  617. package/src/x_ite/Components/Followers/TexCoordDamper2D.js +3 -11
  618. package/src/x_ite/Components/Followers/X3DChaserNode.js +26 -26
  619. package/src/x_ite/Components/Followers/X3DDamperNode.js +6 -10
  620. package/src/x_ite/Components/Followers/X3DFollowerNode.js +11 -11
  621. package/src/x_ite/Components/Followers.js +120 -0
  622. package/src/x_ite/Components/Geometry2D/Arc2D.js +28 -30
  623. package/src/x_ite/Components/Geometry2D/ArcClose2D.js +95 -93
  624. package/src/x_ite/Components/Geometry2D/Circle2D.js +16 -15
  625. package/src/x_ite/Components/Geometry2D/Disk2D.js +80 -88
  626. package/src/x_ite/Components/Geometry2D/Polyline2D.js +13 -19
  627. package/src/x_ite/Components/Geometry2D/Polypoint2D.js +12 -18
  628. package/src/x_ite/Components/Geometry2D/Rectangle2D.js +13 -13
  629. package/src/x_ite/Components/Geometry2D/TriangleSet2D.js +31 -30
  630. package/src/x_ite/Components/Geometry3D/Box.js +12 -12
  631. package/src/x_ite/Components/Geometry3D/Cone.js +34 -36
  632. package/src/x_ite/Components/Geometry3D/Cylinder.js +52 -54
  633. package/src/x_ite/Components/Geometry3D/ElevationGrid.js +90 -52
  634. package/src/x_ite/Components/Geometry3D/Extrusion.js +472 -388
  635. package/src/x_ite/Components/Geometry3D/IndexedFaceSet.js +193 -163
  636. package/src/x_ite/Components/Geometry3D/Sphere.js +17 -19
  637. package/src/x_ite/Components/Geometry3D.js +90 -0
  638. package/src/x_ite/Components/Geospatial/GeoCoordinate.js +124 -61
  639. package/src/x_ite/Components/Geospatial/GeoElevationGrid.js +54 -36
  640. package/src/x_ite/Components/Geospatial/GeoLOD.js +190 -98
  641. package/src/x_ite/Components/Geospatial/GeoLocation.js +8 -10
  642. package/src/x_ite/Components/Geospatial/GeoMetadata.js +2 -4
  643. package/src/x_ite/Components/Geospatial/GeoOrigin.js +2 -4
  644. package/src/x_ite/Components/Geospatial/GeoPositionInterpolator.js +4 -4
  645. package/src/x_ite/Components/Geospatial/GeoProximitySensor.js +10 -7
  646. package/src/x_ite/Components/Geospatial/GeoTouchSensor.js +4 -4
  647. package/src/x_ite/Components/Geospatial/GeoTransform.js +13 -13
  648. package/src/x_ite/Components/Geospatial/GeoViewpoint.js +131 -78
  649. package/src/x_ite/Components/Geospatial/X3DGeospatialObject.js +7 -9
  650. package/src/x_ite/Components/Grouping/Group.js +5 -7
  651. package/src/x_ite/Components/Grouping/StaticGroup.js +194 -22
  652. package/src/x_ite/Components/Grouping/Switch.js +174 -25
  653. package/src/x_ite/Components/Grouping/Transform.js +5 -7
  654. package/src/x_ite/Components/Grouping/X3DBoundedObject.js +70 -16
  655. package/src/x_ite/Components/Grouping/X3DGroupingNode.js +442 -151
  656. package/src/x_ite/Components/Grouping/X3DTransformMatrix3DNode.js +53 -29
  657. package/src/x_ite/Components/Grouping/X3DTransformNode.js +6 -9
  658. package/src/x_ite/Components/Grouping.js +93 -0
  659. package/src/x_ite/Components/{H-Anim → HAnim}/HAnimDisplacer.js +8 -10
  660. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +360 -0
  661. package/src/x_ite/Components/{H-Anim → HAnim}/HAnimJoint.js +108 -23
  662. package/src/x_ite/Components/HAnim/HAnimMotion.js +113 -0
  663. package/src/x_ite/Components/{H-Anim → HAnim}/HAnimSegment.js +14 -14
  664. package/src/x_ite/Components/{H-Anim → HAnim}/HAnimSite.js +14 -16
  665. package/src/x_ite/Components/Interpolation/ColorInterpolator.js +13 -11
  666. package/src/x_ite/Components/Interpolation/CoordinateInterpolator.js +21 -13
  667. package/src/x_ite/Components/Interpolation/CoordinateInterpolator2D.js +19 -11
  668. package/src/x_ite/Components/Interpolation/EaseInEaseOut.js +8 -8
  669. package/src/x_ite/Components/Interpolation/NormalInterpolator.js +28 -14
  670. package/src/x_ite/Components/Interpolation/OrientationInterpolator.js +27 -16
  671. package/src/x_ite/Components/Interpolation/PositionInterpolator.js +10 -8
  672. package/src/x_ite/Components/Interpolation/PositionInterpolator2D.js +10 -8
  673. package/src/x_ite/Components/Interpolation/ScalarInterpolator.js +2 -4
  674. package/src/x_ite/Components/Interpolation/SplinePositionInterpolator.js +7 -9
  675. package/src/x_ite/Components/Interpolation/SplinePositionInterpolator2D.js +7 -9
  676. package/src/x_ite/Components/Interpolation/SplineScalarInterpolator.js +7 -9
  677. package/src/x_ite/Components/Interpolation/SquadOrientationInterpolator.js +10 -11
  678. package/src/x_ite/Components/Interpolation/X3DInterpolatorNode.js +2 -4
  679. package/src/x_ite/Components/Interpolation.js +111 -0
  680. package/src/x_ite/Components/KeyDeviceSensor/KeySensor.js +72 -8
  681. package/src/x_ite/Components/KeyDeviceSensor/StringSensor.js +65 -4
  682. package/src/x_ite/Components/KeyDeviceSensor/X3DKeyDeviceSensorNode.js +5 -29
  683. package/src/x_ite/Components/Layering/Layer.js +14 -6
  684. package/src/x_ite/Components/Layering/LayerSet.js +6 -10
  685. package/src/x_ite/Components/Layering/Viewport.js +10 -12
  686. package/src/x_ite/Components/Layering/X3DLayerNode.js +76 -69
  687. package/src/x_ite/Components/Layering/X3DViewportNode.js +2 -6
  688. package/src/x_ite/Components/Layering.js +84 -0
  689. package/src/x_ite/Components/Layout/Layout.js +163 -173
  690. package/src/x_ite/Components/Layout/LayoutGroup.js +20 -19
  691. package/src/x_ite/Components/Layout/LayoutLayer.js +12 -9
  692. package/src/x_ite/Components/Layout/ScreenFontStyle.js +4 -8
  693. package/src/x_ite/Components/Layout/ScreenGroup.js +63 -56
  694. package/src/x_ite/Components/Layout/X3DLayoutNode.js +2 -4
  695. package/src/x_ite/Components/Lighting/DirectionalLight.js +41 -31
  696. package/src/x_ite/Components/Lighting/PointLight.js +117 -104
  697. package/src/x_ite/Components/Lighting/SpotLight.js +77 -53
  698. package/src/x_ite/Components/Lighting/X3DLightNode.js +90 -68
  699. package/src/x_ite/Components/Lighting.js +81 -0
  700. package/src/x_ite/Components/NURBS/Contour2D.js +47 -5
  701. package/src/x_ite/Components/NURBS/ContourPolyline2D.js +69 -5
  702. package/src/x_ite/Components/NURBS/CoordinateDouble.js +2 -4
  703. package/src/x_ite/Components/NURBS/NurbsCurve.js +140 -10
  704. package/src/x_ite/Components/NURBS/NurbsCurve2D.js +117 -8
  705. package/src/x_ite/Components/NURBS/NurbsOrientationInterpolator.js +139 -10
  706. package/src/x_ite/Components/NURBS/NurbsPatchSurface.js +3 -5
  707. package/src/x_ite/Components/NURBS/NurbsPositionInterpolator.js +125 -10
  708. package/src/x_ite/Components/NURBS/NurbsSet.js +92 -11
  709. package/src/x_ite/Components/NURBS/NurbsSurfaceInterpolator.js +96 -12
  710. package/src/x_ite/Components/NURBS/NurbsSweptSurface.js +88 -7
  711. package/src/x_ite/Components/NURBS/NurbsSwungSurface.js +88 -7
  712. package/src/x_ite/Components/NURBS/NurbsTextureCoordinate.js +62 -13
  713. package/src/x_ite/Components/NURBS/NurbsTrimmedSurface.js +41 -6
  714. package/src/x_ite/Components/NURBS/X3DNurbsControlCurveNode.js +2 -4
  715. package/src/x_ite/Components/NURBS/X3DNurbsSurfaceGeometryNode.js +333 -7
  716. package/src/x_ite/Components/NURBS/X3DParametricGeometryNode.js +9 -5
  717. package/src/x_ite/Components/Navigation/Billboard.js +14 -15
  718. package/src/x_ite/Components/Navigation/Collision.js +13 -12
  719. package/src/x_ite/Components/Navigation/LOD.js +221 -66
  720. package/src/x_ite/Components/Navigation/NavigationInfo.js +110 -99
  721. package/src/x_ite/Components/Navigation/OrthoViewpoint.js +138 -45
  722. package/src/x_ite/Components/Navigation/Viewpoint.js +55 -33
  723. package/src/x_ite/Components/Navigation/ViewpointGroup.js +18 -10
  724. package/src/x_ite/Components/Navigation/X3DViewpointNode.js +241 -181
  725. package/src/x_ite/Components/Navigation.js +93 -0
  726. package/src/x_ite/Components/Networking/Anchor.js +24 -28
  727. package/src/x_ite/Components/Networking/Inline.js +68 -50
  728. package/src/x_ite/Components/Networking/LoadSensor.js +2 -4
  729. package/src/x_ite/Components/Networking/X3DNetworkSensorNode.js +2 -4
  730. package/src/x_ite/Components/Networking/X3DUrlObject.js +93 -11
  731. package/src/x_ite/Components/Networking.js +84 -0
  732. package/src/x_ite/Components/ParticleSystems/BoundedPhysicsModel.js +6 -8
  733. package/src/x_ite/Components/ParticleSystems/ConeEmitter.js +8 -4
  734. package/src/x_ite/Components/ParticleSystems/ExplosionEmitter.js +7 -4
  735. package/src/x_ite/Components/ParticleSystems/ForcePhysicsModel.js +4 -4
  736. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +447 -283
  737. package/src/x_ite/Components/ParticleSystems/PointEmitter.js +7 -4
  738. package/src/x_ite/Components/ParticleSystems/PolylineEmitter.js +53 -40
  739. package/src/x_ite/Components/ParticleSystems/SurfaceEmitter.js +62 -55
  740. package/src/x_ite/Components/ParticleSystems/VolumeEmitter.js +133 -123
  741. package/src/x_ite/Components/ParticleSystems/WindPhysicsModel.js +25 -22
  742. package/src/x_ite/Components/ParticleSystems/X3DParticleEmitterNode.js +28 -27
  743. package/src/x_ite/Components/ParticleSystems/X3DParticlePhysicsModelNode.js +2 -4
  744. package/src/x_ite/Components/Picking/LinePickSensor.js +253 -10
  745. package/src/x_ite/Components/Picking/PickableGroup.js +121 -10
  746. package/src/x_ite/Components/Picking/PointPickSensor.js +262 -12
  747. package/src/x_ite/Components/Picking/PrimitivePickSensor.js +176 -8
  748. package/src/x_ite/Components/Picking/VolumePickSensor.js +152 -8
  749. package/src/x_ite/Components/Picking/X3DPickSensorNode.js +378 -7
  750. package/src/x_ite/Components/Picking/X3DPickableObject.js +22 -4
  751. package/src/x_ite/Components/PointingDeviceSensor/CylinderSensor.js +33 -15
  752. package/src/x_ite/Components/PointingDeviceSensor/PlaneSensor.js +7 -4
  753. package/src/x_ite/Components/PointingDeviceSensor/SphereSensor.js +2 -4
  754. package/src/x_ite/Components/PointingDeviceSensor/TouchSensor.js +4 -4
  755. package/src/x_ite/Components/PointingDeviceSensor/X3DDragSensorNode.js +4 -4
  756. package/src/x_ite/Components/PointingDeviceSensor/X3DPointingDeviceSensorNode.js +3 -5
  757. package/src/x_ite/Components/PointingDeviceSensor/X3DTouchSensorNode.js +2 -4
  758. package/src/x_ite/Components/PointingDeviceSensor.js +90 -0
  759. package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorParallel.js +282 -0
  760. package/src/x_ite/Components/ProjectiveTextureMapping/TextureProjectorPerspective.js +227 -0
  761. package/src/x_ite/Components/ProjectiveTextureMapping/X3DTextureProjectorNode.js +217 -0
  762. package/src/x_ite/Components/Rendering/ClipPlane.js +12 -16
  763. package/src/x_ite/Components/Rendering/Color.js +62 -17
  764. package/src/x_ite/Components/Rendering/ColorRGBA.js +65 -17
  765. package/src/x_ite/Components/Rendering/Coordinate.js +4 -4
  766. package/src/x_ite/Components/Rendering/IndexedLineSet.js +68 -81
  767. package/src/x_ite/Components/Rendering/IndexedTriangleFanSet.js +20 -19
  768. package/src/x_ite/Components/Rendering/IndexedTriangleSet.js +10 -7
  769. package/src/x_ite/Components/Rendering/IndexedTriangleStripSet.js +21 -23
  770. package/src/x_ite/Components/Rendering/LineSet.js +54 -37
  771. package/src/x_ite/Components/Rendering/Normal.js +65 -13
  772. package/src/x_ite/Components/Rendering/PointSet.js +52 -33
  773. package/src/x_ite/Components/Rendering/TriangleFanSet.js +10 -14
  774. package/src/x_ite/Components/Rendering/TriangleSet.js +2 -4
  775. package/src/x_ite/Components/Rendering/TriangleStripSet.js +9 -13
  776. package/src/x_ite/Components/Rendering/X3DColorNode.js +13 -12
  777. package/src/x_ite/Components/Rendering/X3DComposedGeometryNode.js +118 -79
  778. package/src/x_ite/Components/Rendering/X3DCoordinateNode.js +103 -44
  779. package/src/x_ite/Components/Rendering/X3DGeometricPropertyNode.js +2 -4
  780. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +737 -592
  781. package/src/x_ite/Components/Rendering/X3DLineGeometryNode.js +163 -92
  782. package/src/x_ite/Components/Rendering/X3DNormalNode.js +2 -4
  783. package/src/x_ite/Components/Rendering.js +132 -0
  784. package/src/x_ite/Components/RigidBodyPhysics/BallJoint.js +116 -7
  785. package/src/x_ite/Components/RigidBodyPhysics/CollidableOffset.js +199 -11
  786. package/src/x_ite/Components/RigidBodyPhysics/CollidableShape.js +436 -11
  787. package/src/x_ite/Components/RigidBodyPhysics/CollisionCollection.js +118 -10
  788. package/src/x_ite/Components/RigidBodyPhysics/CollisionSensor.js +192 -9
  789. package/src/x_ite/Components/RigidBodyPhysics/CollisionSpace.js +84 -8
  790. package/src/x_ite/Components/RigidBodyPhysics/Contact.js +20 -14
  791. package/src/x_ite/Components/RigidBodyPhysics/DoubleAxisHingeJoint.js +200 -12
  792. package/src/x_ite/Components/RigidBodyPhysics/MotorJoint.js +14 -4
  793. package/src/x_ite/Components/RigidBodyPhysics/RigidBody.js +424 -17
  794. package/src/x_ite/Components/RigidBodyPhysics/RigidBodyCollection.js +295 -19
  795. package/src/x_ite/Components/RigidBodyPhysics/SingleAxisHingeJoint.js +162 -10
  796. package/src/x_ite/Components/RigidBodyPhysics/SliderJoint.js +135 -8
  797. package/src/x_ite/Components/RigidBodyPhysics/UniversalJoint.js +10 -6
  798. package/src/x_ite/Components/RigidBodyPhysics/X3DNBodyCollidableNode.js +93 -9
  799. package/src/x_ite/Components/RigidBodyPhysics/X3DNBodyCollisionSpaceNode.js +5 -8
  800. package/src/x_ite/Components/RigidBodyPhysics/X3DRigidJointNode.js +150 -4
  801. package/src/x_ite/Components/Scripting/Script.js +156 -105
  802. package/src/x_ite/Components/Scripting/X3DScriptNode.js +3 -7
  803. package/src/x_ite/Components/Shaders/ComposedShader.js +38 -53
  804. package/src/x_ite/Components/Shaders/FloatVertexAttribute.js +38 -15
  805. package/src/x_ite/Components/Shaders/Matrix3VertexAttribute.js +32 -14
  806. package/src/x_ite/Components/Shaders/Matrix4VertexAttribute.js +32 -14
  807. package/src/x_ite/Components/Shaders/PackagedShader.js +19 -17
  808. package/src/x_ite/Components/Shaders/ProgramShader.js +2 -4
  809. package/src/x_ite/Components/Shaders/ShaderPart.js +38 -26
  810. package/src/x_ite/Components/Shaders/ShaderProgram.js +16 -14
  811. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +836 -699
  812. package/src/x_ite/Components/Shaders/X3DShaderNode.js +61 -101
  813. package/src/x_ite/Components/Shaders/X3DVertexAttributeNode.js +2 -4
  814. package/src/x_ite/Components/Shaders.js +102 -0
  815. package/src/x_ite/Components/Shape/Appearance.js +179 -69
  816. package/src/x_ite/Components/Shape/FillProperties.js +65 -8
  817. package/src/x_ite/Components/Shape/LineProperties.js +29 -9
  818. package/src/x_ite/Components/Shape/Material.js +50 -64
  819. package/src/x_ite/Components/Shape/PointProperties.js +162 -0
  820. package/src/x_ite/Components/Shape/Shape.js +116 -68
  821. package/src/x_ite/Components/Shape/TwoSidedMaterial.js +56 -62
  822. package/src/x_ite/Components/Shape/UnlitMaterial.js +109 -0
  823. package/src/x_ite/Components/Shape/X3DAppearanceChildNode.js +2 -4
  824. package/src/x_ite/Components/Shape/X3DAppearanceNode.js +14 -11
  825. package/src/x_ite/Components/Shape/X3DMaterialNode.js +17 -6
  826. package/src/x_ite/Components/Shape/X3DOneSidedMaterialNode.js +111 -0
  827. package/src/x_ite/Components/Shape/X3DShapeNode.js +54 -29
  828. package/src/x_ite/Components/Shape.js +108 -0
  829. package/src/x_ite/Components/Sound/AudioClip.js +47 -57
  830. package/src/x_ite/Components/Sound/Sound.js +177 -83
  831. package/src/x_ite/Components/Sound/X3DSoundNode.js +2 -4
  832. package/src/x_ite/Components/Sound/X3DSoundSourceNode.js +37 -23
  833. package/src/x_ite/Components/Sound.js +81 -0
  834. package/src/x_ite/Components/Text/FontStyle.js +4 -6
  835. package/src/x_ite/Components/Text/Text.js +21 -18
  836. package/src/x_ite/Components/Text/X3DFontStyleNode.js +58 -93
  837. package/src/x_ite/Components/Text.js +78 -0
  838. package/src/x_ite/Components/Texturing/ImageTexture.js +57 -67
  839. package/src/x_ite/Components/Texturing/MovieTexture.js +57 -68
  840. package/src/x_ite/Components/Texturing/MultiTexture.js +238 -15
  841. package/src/x_ite/Components/Texturing/MultiTextureCoordinate.js +85 -8
  842. package/src/x_ite/Components/Texturing/MultiTextureTransform.js +47 -8
  843. package/src/x_ite/Components/Texturing/PixelTexture.js +61 -27
  844. package/src/x_ite/Components/Texturing/TextureCoordinate.js +72 -22
  845. package/src/x_ite/Components/Texturing/TextureCoordinateGenerator.js +69 -11
  846. package/src/x_ite/Components/Texturing/TextureProperties.js +98 -69
  847. package/src/x_ite/Components/Texturing/TextureTransform.js +58 -52
  848. package/src/x_ite/Components/Texturing/X3DSingleTextureCoordinateNode.js +91 -0
  849. package/src/x_ite/Components/Texturing/X3DSingleTextureNode.js +183 -0
  850. package/src/x_ite/Components/Texturing/X3DSingleTextureTransformNode.js +77 -0
  851. package/src/x_ite/Components/Texturing/X3DTexture2DNode.js +42 -97
  852. package/src/x_ite/Components/Texturing/X3DTexture2DNode.js.~1~ +209 -0
  853. package/src/x_ite/Components/Texturing/X3DTextureCoordinateNode.js +4 -12
  854. package/src/x_ite/Components/Texturing/X3DTextureNode.js +10 -71
  855. package/src/x_ite/Components/Texturing/X3DTextureTransformNode.js +5 -14
  856. package/src/x_ite/Components/Texturing.js +120 -0
  857. package/src/x_ite/Components/Texturing3D/ComposedTexture3D.js +90 -8
  858. package/src/x_ite/Components/Texturing3D/ImageTexture3D.js +106 -16
  859. package/src/x_ite/Components/Texturing3D/PixelTexture3D.js +126 -8
  860. package/src/x_ite/Components/Texturing3D/TextureCoordinate3D.js +75 -25
  861. package/src/x_ite/Components/Texturing3D/TextureCoordinate4D.js +74 -24
  862. package/src/x_ite/Components/Texturing3D/TextureTransform3D.js +42 -36
  863. package/src/x_ite/Components/Texturing3D/TextureTransformMatrix3D.js +19 -16
  864. package/src/x_ite/Components/Texturing3D/X3DTexture3DNode.js +110 -8
  865. package/src/x_ite/Components/Time/TimeSensor.js +29 -27
  866. package/src/x_ite/Components/Time/X3DTimeDependentNode.js +17 -15
  867. package/src/x_ite/Components/Time.js +75 -0
  868. package/src/x_ite/Components/VolumeRendering/BlendedVolumeStyle.js +311 -12
  869. package/src/x_ite/Components/VolumeRendering/BoundaryEnhancementVolumeStyle.js +60 -8
  870. package/src/x_ite/Components/VolumeRendering/CartoonVolumeStyle.js +219 -10
  871. package/src/x_ite/Components/VolumeRendering/ComposedVolumeStyle.js +134 -7
  872. package/src/x_ite/Components/VolumeRendering/EdgeEnhancementVolumeStyle.js +88 -9
  873. package/src/x_ite/Components/VolumeRendering/IsoSurfaceVolumeData.js +311 -15
  874. package/src/x_ite/Components/VolumeRendering/OpacityMapVolumeStyle.js +87 -7
  875. package/src/x_ite/Components/VolumeRendering/ProjectionVolumeStyle.js +136 -6
  876. package/src/x_ite/Components/VolumeRendering/SegmentedVolumeData.js +224 -13
  877. package/src/x_ite/Components/VolumeRendering/ShadedVolumeStyle.js +193 -12
  878. package/src/x_ite/Components/VolumeRendering/SilhouetteEnhancementVolumeStyle.js +87 -10
  879. package/src/x_ite/Components/VolumeRendering/ToneMappedVolumeStyle.js +97 -9
  880. package/src/x_ite/Components/VolumeRendering/VolumeData.js +155 -12
  881. package/src/x_ite/Components/VolumeRendering/X3DComposableVolumeRenderStyleNode.js +2 -4
  882. package/src/x_ite/Components/VolumeRendering/X3DVolumeDataNode.js +155 -5
  883. package/src/x_ite/Components/VolumeRendering/X3DVolumeRenderStyleNode.js +64 -4
  884. package/src/x_ite/Components/X_ITE/BlendMode.js +206 -0
  885. package/src/x_ite/Components.js +110 -0
  886. package/src/x_ite/Configuration/ComponentInfo.js +21 -15
  887. package/src/x_ite/Configuration/ComponentInfoArray.js +11 -16
  888. package/src/x_ite/Configuration/ProfileInfo.js +10 -10
  889. package/src/x_ite/Configuration/ProfileInfoArray.js +10 -3
  890. package/src/x_ite/Configuration/SupportedComponents.js +312 -303
  891. package/src/x_ite/Configuration/SupportedNodes.js +44 -716
  892. package/src/x_ite/Configuration/SupportedProfiles.js +196 -168
  893. package/src/x_ite/Configuration/UnitInfo.js +22 -8
  894. package/src/x_ite/Configuration/UnitInfoArray.js +2 -3
  895. package/src/x_ite/Configuration/X3DInfoArray.js +46 -26
  896. package/src/x_ite/DEBUG.js +4 -5
  897. package/src/x_ite/Execution/BindableList.js +99 -34
  898. package/src/x_ite/Execution/BindableStack.js +65 -74
  899. package/src/x_ite/Execution/ExportedNode.js +32 -9
  900. package/src/x_ite/Execution/ImportedNode.js +144 -63
  901. package/src/x_ite/Execution/Scene.js +33 -35
  902. package/src/x_ite/Execution/World.js +31 -29
  903. package/src/x_ite/Execution/X3DExecutionContext.js +452 -194
  904. package/src/x_ite/Execution/X3DScene.js +303 -74
  905. package/src/x_ite/{Error.js → Fallback.js} +25 -24
  906. package/src/x_ite/Fields/ArrayFields.js +315 -112
  907. package/src/x_ite/Fields/SFBool.js +11 -10
  908. package/src/x_ite/Fields/SFColor.js +43 -19
  909. package/src/x_ite/Fields/SFColorRGBA.js +40 -18
  910. package/src/x_ite/Fields/SFDouble.js +17 -10
  911. package/src/x_ite/Fields/SFFloat.js +18 -11
  912. package/src/x_ite/Fields/SFImage.js +47 -38
  913. package/src/x_ite/Fields/SFInt32.js +10 -9
  914. package/src/x_ite/Fields/SFMatrix3.js +24 -17
  915. package/src/x_ite/Fields/SFMatrix4.js +24 -17
  916. package/src/x_ite/Fields/SFMatrixPrototypeTemplate.js +15 -8
  917. package/src/x_ite/Fields/SFNode.js +118 -38
  918. package/src/x_ite/Fields/SFNodeCache.js +89 -0
  919. package/src/x_ite/Fields/SFRotation.js +42 -27
  920. package/src/x_ite/Fields/SFString.js +14 -15
  921. package/src/x_ite/Fields/SFTime.js +12 -11
  922. package/src/x_ite/Fields/SFVec2.js +17 -14
  923. package/src/x_ite/Fields/SFVec3.js +23 -17
  924. package/src/x_ite/Fields/SFVec4.js +25 -19
  925. package/src/x_ite/Fields/SFVecPrototypeTemplate.js +47 -23
  926. package/src/x_ite/Fields.js +3 -9
  927. package/src/x_ite/InputOutput/FileLoader.js +264 -181
  928. package/src/x_ite/InputOutput/Generator.js +136 -60
  929. package/src/x_ite/Parser/HTMLSupport.js +3 -596
  930. package/src/x_ite/Parser/JSONParser.js +446 -0
  931. package/src/x_ite/Parser/Parser.js +617 -652
  932. package/src/x_ite/Parser/X3DParser.js +176 -0
  933. package/src/x_ite/Parser/XMLParser.js +359 -94
  934. package/src/x_ite/Prototype/ExternProtoDeclarationArray.js +19 -3
  935. package/src/x_ite/Prototype/ProtoDeclarationArray.js +19 -3
  936. package/src/x_ite/Prototype/X3DExternProtoDeclaration.js +120 -61
  937. package/src/x_ite/Prototype/X3DProtoDeclaration.js +144 -59
  938. package/src/x_ite/Prototype/X3DProtoDeclarationNode.js +16 -18
  939. package/src/x_ite/Rendering/DependentRenderer.js +9 -13
  940. package/src/x_ite/Rendering/{DepthBuffer.js → TextureBuffer.js} +84 -53
  941. package/src/x_ite/Rendering/X3DRenderObject.js +640 -531
  942. package/src/x_ite/Routing/RouteArray.js +38 -16
  943. package/src/x_ite/Routing/X3DRoute.js +67 -68
  944. package/src/x_ite/Routing/X3DRoutingContext.js +6 -6
  945. package/src/x_ite/X3D.js +74 -70
  946. package/src/x_ite.config.js +91 -0
  947. package/src/x_ite.css +175 -53
  948. package/src/x_ite.html +128 -439
  949. package/src/x_ite.js +87 -25
  950. package/tests/{SEE.txt → README.md} +1 -0
  951. package/tests/tests.mdproj +1 -1
  952. package/x_ite.min.html +128 -439
  953. package/.bzrignore +0 -3
  954. package/.npmignore +0 -3
  955. package/AUTHORS.md +0 -6
  956. package/STYLE_GUIDE.md +0 -51
  957. package/X_ITE.sln +0 -56
  958. package/X_ITE.userprefs +0 -17
  959. package/build/build.mdproj +0 -24
  960. package/build/dist.pl +0 -97
  961. package/build/parts/end.frag +0 -10
  962. package/build/parts/start.frag +0 -7
  963. package/dist/LICENCES.txt +0 -344
  964. package/dist/dist.mdproj +0 -45
  965. package/dist/images/logo.128.png +0 -0
  966. package/fonts/fonts.mdproj +0 -29
  967. package/meta/meta.mdproj +0 -35
  968. package/require.build.js +0 -15
  969. package/require.build.min.js +0 -15
  970. package/src/images/logo.128.png +0 -0
  971. package/src/lib/jquery-contextMenu/README.md +0 -355
  972. package/src/lib/jquery-contextMenu/dist/images/cut.png +0 -0
  973. package/src/lib/jquery-contextMenu/dist/images/door.png +0 -0
  974. package/src/lib/jquery-contextMenu/dist/images/page_white_add.png +0 -0
  975. package/src/lib/jquery-contextMenu/dist/images/page_white_copy.png +0 -0
  976. package/src/lib/jquery-contextMenu/dist/images/page_white_delete.png +0 -0
  977. package/src/lib/jquery-contextMenu/dist/images/page_white_edit.png +0 -0
  978. package/src/lib/jquery-contextMenu/dist/images/page_white_paste.png +0 -0
  979. package/src/lib/jquery-contextMenu/dist/jquery.contextMenu.css +0 -155
  980. package/src/lib/jquery-contextMenu/dist/jquery.contextMenu.js +0 -1811
  981. package/src/lib/jquery-contextMenu/dist/jquery.contextMenu.min.css +0 -16
  982. package/src/lib/jquery-contextMenu/dist/jquery.contextMenu.min.css.map +0 -1
  983. package/src/lib/jquery-contextMenu/dist/jquery.contextMenu.min.js +0 -18
  984. package/src/lib/jquery-contextMenu/dist/jquery.contextMenu.min.js.map +0 -1
  985. package/src/lib/jquery-contextMenu/dist/jquery.ui.position.js +0 -517
  986. package/src/lib/jquery-contextMenu/dist/jquery.ui.position.min.js +0 -4
  987. package/src/lib/jquery-contextMenu/package.json +0 -99
  988. package/src/lib/opentype.js/.npmignore +0 -5
  989. package/src/locale/de.mo +0 -0
  990. package/src/locale/fr.mo +0 -0
  991. package/src/require.config.js +0 -51
  992. package/src/src.mdproj +0 -729
  993. package/src/standard/Networking/URI.js +0 -687
  994. package/src/x_ite/Browser/Shaders/BackgroundSphereFragmentShader.fs +0 -29
  995. package/src/x_ite/Browser/Shaders/BackgroundSphereVertexShader.vs +0 -22
  996. package/src/x_ite/Browser/Shaders/Bits/Line3.h +0 -14
  997. package/src/x_ite/Browser/Shaders/Bits/Plane3.h +0 -47
  998. package/src/x_ite/Browser/Shaders/Bits/Random.h +0 -31
  999. package/src/x_ite/Browser/Shaders/Depth.fs +0 -51
  1000. package/src/x_ite/Browser/Shaders/Depth.vs +0 -20
  1001. package/src/x_ite/Browser/Shaders/Gouraud.fs +0 -110
  1002. package/src/x_ite/Browser/Shaders/Gouraud.vs +0 -188
  1003. package/src/x_ite/Browser/Shaders/Phong.fs +0 -255
  1004. package/src/x_ite/Browser/Shaders/Phong.vs +0 -38
  1005. package/src/x_ite/Browser/Shaders/PointSet.fs +0 -64
  1006. package/src/x_ite/Browser/Shaders/Wireframe.fs +0 -61
  1007. package/src/x_ite/Browser/Shaders/Wireframe.vs +0 -55
  1008. package/src/x_ite/Components/H-Anim/HAnimHumanoid.js +0 -118
@@ -0,0 +1,38 @@
1
+ ---
2
+ name: Bug report
3
+ about: Create a report to help us improve
4
+ title: ''
5
+ labels: bug
6
+ assignees: ''
7
+
8
+ ---
9
+
10
+ **Describe the bug**
11
+ A clear and concise description of what the bug is.
12
+
13
+ **To Reproduce**
14
+ Steps to reproduce the behavior:
15
+ 1. Go to '...'
16
+ 2. Click on '....'
17
+ 3. Scroll down to '....'
18
+ 4. See error
19
+
20
+ **Expected behavior**
21
+ A clear and concise description of what you expected to happen.
22
+
23
+ **Screenshots**
24
+ If applicable, add screenshots to help explain your problem.
25
+
26
+ **Desktop (please complete the following information):**
27
+ - OS: [e.g. iOS]
28
+ - Browser [e.g. chrome, safari]
29
+ - Version [e.g. 22]
30
+
31
+ **Smartphone (please complete the following information):**
32
+ - Device: [e.g. iPhone6]
33
+ - OS: [e.g. iOS8.1]
34
+ - Browser [e.g. stock browser, safari]
35
+ - Version [e.g. 22]
36
+
37
+ **Additional context**
38
+ Add any other context about the problem here.
@@ -0,0 +1,15 @@
1
+ {
2
+ // Verwendet IntelliSense zum Ermitteln möglicher Attribute.
3
+ // Zeigen Sie auf vorhandene Attribute, um die zugehörigen Beschreibungen anzuzeigen.
4
+ // Weitere Informationen finden Sie unter https://go.microsoft.com/fwlink/?linkid=830387
5
+ "version": "0.2.0",
6
+ "configurations": [
7
+ {
8
+ "type": "pwa-chrome",
9
+ "request": "launch",
10
+ "name": "Launch Chrome against localhost",
11
+ "url": "http://localhost/src/x_ite.html",
12
+ "webRoot": "${workspaceFolder}"
13
+ }
14
+ ]
15
+ }
@@ -0,0 +1,13 @@
1
+ {
2
+ "files.exclude": {
3
+ "**/*~": true,
4
+ "**/node_modules": true
5
+ },
6
+ "files.watcherExclude": {
7
+ "**/.bzr/**": true
8
+ },
9
+ "files.insertFinalNewline": true,
10
+ "files.trimFinalNewlines": true,
11
+ "files.trimTrailingWhitespace": true,
12
+ "files.eol": "\n"
13
+ }
@@ -0,0 +1,25 @@
1
+ {
2
+ // See https://go.microsoft.com/fwlink/?LinkId=733558
3
+ // for the documentation about the tasks.json format
4
+ "version": "2.0.0",
5
+ "tasks": [
6
+ {
7
+ "label": "Make Dist",
8
+ "type": "shell",
9
+ "command": "make",
10
+ "problemMatcher": [],
11
+ },
12
+ {
13
+ "label": "Make Version",
14
+ "type": "shell",
15
+ "command": "make version",
16
+ "problemMatcher": []
17
+ },
18
+ {
19
+ "label": "Git List Untracked Files",
20
+ "type": "shell",
21
+ "command": "git ls-files --others --exclude-standard",
22
+ "problemMatcher": []
23
+ }
24
+ ]
25
+ }
package/Makefile CHANGED
@@ -1,40 +1,80 @@
1
1
 
2
+ dist: all
3
+ echo
4
+
2
5
  configure:
3
6
  sudo npm install
4
- sudo npm install requirejs-text
5
7
 
6
8
  all:
7
- echo
9
+ perl build/bin/version-number.pl
8
10
 
9
- dist: all
10
- npm run build
11
+ perl -pi -e 's/return (?:true|false);/return false;/sg' src/x_ite/DEBUG.js
12
+
13
+ node_modules/requirejs/bin/r.js -o build/x_ite.build.js
14
+ perl -pi -e "s|define\\('text/text!assets/shaders/webgl.*?\\n||sg;" dist/x_ite.js
15
+ node_modules/uglify-js-es6/bin/uglifyjs --mangle --compress -- dist/x_ite.js > dist/x_ite.min.js
16
+ node_modules/requirejs/bin/r.js -o cssIn=src/x_ite.css out=dist/x_ite.css
17
+
18
+ $(call generate_component,annotation,--compress)
19
+ $(call generate_component,cad-geometry,--compress)
20
+ $(call generate_component,cube-map-texturing,--compress)
21
+ $(call generate_component,dis,--compress)
22
+ $(call generate_component,event-utilities,--compress)
23
+ $(call generate_component,geometry2d,--compress)
24
+ $(call generate_component,geospatial,--compress)
25
+ $(call generate_component,h-anim,--compress)
26
+ $(call generate_component,key-device-sensor,--compress)
27
+ $(call generate_component,layout,--compress)
28
+ $(call generate_component,nurbs,--compress)
29
+ $(call generate_component,particle-systems,--compress)
30
+ $(call generate_component,picking,--compress)
31
+ $(call generate_component,projective-texture-mapping,--compress)
32
+ $(call generate_component,rigid-body-physics)
33
+ $(call generate_component,scripting,--compress)
34
+ $(call generate_component,texturing-3d,--compress)
35
+ $(call generate_component,volume-rendering,--compress)
36
+ $(call generate_component,x_ite,--compress)
11
37
 
12
38
  perl -pi -e 's|text/text!|text!|sg' dist/x_ite.js
13
39
  perl -pi -e 's|text/text!|text!|sg' dist/x_ite.min.js
14
40
 
15
41
  cp src/x_ite.html x_ite.min.html
16
42
  perl -pi -e 's|\s*<script type="text/javascript" src="\.\./node_modules/requirejs/require.js"></script>\n||sg' x_ite.min.html
17
- perl -pi -e 's|\s*<script type="text/javascript" src="require.config.js"></script>\n||sg' x_ite.min.html
18
- perl -pi -e 's|"x_ite.js"|"dist/x_ite.min.js"|sg' x_ite.min.html
19
- perl -pi -e 's|"x_ite.css"|"dist/x_ite.css"|sg' x_ite.min.html
20
- perl -pi -e 's|\.\./x_ite.min.html|src/x_ite.html|sg' x_ite.min.html
21
- perl -pi -e 's|\>x_ite.min.html|>src/x_ite.html|sg' x_ite.min.html
22
- perl -pi -e 's|x_ite-dev|x_ite-min|sg' x_ite.min.html
23
- perl -pi -e 's|"bookmarks.js"|"src/bookmarks.js"|sg' x_ite.min.html
24
- perl -pi -e 's|\.\./tests/|tests/|sg' x_ite.min.html
43
+ perl -pi -e 's|\s*<script type="text/javascript" src=".*?.config.js"></script>\n||sg' x_ite.min.html
44
+
45
+ perl -pi -e 's|"x_ite.css"|"dist/x_ite.css"|sg' x_ite.min.html
46
+ perl -pi -e 's|"x_ite.js"|"dist/x_ite.min.js"|sg' x_ite.min.html
47
+
48
+ perl -pi -e 's|\.\./x_ite.min.html|src/x_ite.html|sg' x_ite.min.html
49
+ perl -pi -e 's|class="links"|class="links min-links"|sg' x_ite.min.html
50
+ perl -pi -e 's|\>x_ite.min.html|>src/x_ite.html|sg' x_ite.min.html
51
+ perl -pi -e 's|x_ite-dev|x_ite-min|sg' x_ite.min.html
52
+ perl -pi -e 's|"bookmarks.js"|"src/bookmarks.js"|sg' x_ite.min.html
53
+ perl -pi -e 's|"examples.js"|"src/examples.js"|sg' x_ite.min.html
54
+ perl -pi -e 's|"tests.js"|"src/tests.js"|sg' x_ite.min.html
55
+ perl -pi -e 's|\.\./tests/|tests/|sg' x_ite.min.html
25
56
 
26
- perl build/dist.pl
57
+ perl build/bin/dist.pl
27
58
 
28
59
  echo
29
60
  ls -la dist/x_ite.min.js
30
61
  echo
31
62
 
63
+ perl -pi -e 's/return (?:true|false);/return true;/sg' src/x_ite/DEBUG.js
32
64
 
33
- version: dist
34
- perl build/version.pl
65
+
66
+ version: all
67
+ perl build/bin/version.pl
35
68
 
36
69
 
37
70
  clean:
38
71
  rm x_ite.min.html
39
72
  rm x_ite.uncompressed.js
40
73
  rm x_ite.min.js
74
+
75
+ define generate_component
76
+ node_modules/requirejs/bin/r.js -o build/components/$(1).build.js
77
+ perl -pi -e "s|'assets/components/$(1)',||" dist/assets/components/$(1).js
78
+ perl -pi -e "s|text/text!|text!|" dist/assets/components/$(1).js
79
+ node_modules/uglify-js-es6/bin/uglifyjs --mangle $(2) -- dist/assets/components/$(1).js > dist/assets/components/$(1).min.js
80
+ endef
package/README.md CHANGED
@@ -1,144 +1,27 @@
1
- <img alt="X_ITE" src="https://rawgit.com/create3000/x_ite/master/meta/logo/logo.svg" width="60" height="60"/>
2
-
3
- [X_ITE](http://create3000.de/x_ite/) — X_ITE WebGL Browser
1
+ [X_ITE](https://create3000.github.io/x_ite/) X_ITE X3D Browser
4
2
  ==================================================
5
3
 
6
-
7
- Introduction
8
- --------------------------------------
9
-
10
- X_ITE is a work in progress. The goal is a full standard WebGL X3D browser for all major web browsers.
11
-
12
- For more information and live preview please visit [http://create3000.de/x_ite/](http://create3000.de/x_ite/).
13
-
14
-
15
- Links
16
- --------------------------------------
17
- * [Getting Started](http://create3000.de/x_ite/getting-started/)
18
- * [What’s New](http://create3000.de/x_ite/whats-new/)
19
- * [Supported Nodes](http://create3000.de/x_ite/supported-nodes/)
20
- * [Accessing the External Browser](http://create3000.de/x_ite/accessing-the-external-browser/)
21
- * [XHTML DOM Integration](http://create3000.de/x_ite/xhtml-dom-integration/)
22
- * [Custom Shaders](http://create3000.de/x_ite/shaders/)
23
-
24
- Embedding X_ITE within a Web Page
25
- --------------------------------------
26
-
27
- To display your X3D scene in a HTML5 page first save your scene as X3D XML Encoded file or as X3D Classic Encoded file, i.e. create a file with the extension .x3d ,.x3dv or .wrl.
28
-
29
- The HTML5 page is quite easy to create, the HTML5 code below shows you the minimum requirements. The path to the X3D scene is specified in the src attribute of the <X3DCanvas> tag.
30
-
31
- <!DOCTYPE html>
32
- <html>
33
- <head>
34
- <meta charset="utf-8"/>
35
- <link rel="stylesheet" type="text/css" href="https://cdn.rawgit.com/create3000/x_ite/latest/x_ite.js/x_ite.css"/>
36
- <script type="text/javascript" src="https://cdn.rawgit.com/create3000/x_ite/latest/x_ite.js/x_ite.min.js"></script>
37
- <style>
38
- X3DCanvas {
39
- width: 768px;
40
- height: 432px;
41
- }
42
- </style>
43
- </head>
44
- <body>
45
- <X3DCanvas src="path/to/your/X3D/world.x3d">
46
- <p>Your browser may not support all features required by X_ITE!</p>
47
- </X3DCanvas>
48
- </body>
49
- </html>
50
-
51
- To get X_ITE working you must include the CSS file »x_ite.css« and the JavaScript file »x_ite.min.js «. After x_ite is successfully loaded a new HTML tag <X3DCanvas> is available on your page.
52
-
53
- You can style the <X3DCanvas> tag as every HTML tag with CSS as well as you can place it everywhere within the DOM tree.
54
-
55
-
56
- ### Supported File Formats
57
-
58
- As of version 1.19, X_ITE can now parse either X3D XML Encoding or X3D Classic Encoding. This gives authors the capability to display their existing projects like .wrl worlds, too.
59
-
60
- Additionally files can be compressed using GZip compression.
61
-
62
-
63
- ### Fallback Content
64
-
65
- The <X3DCanvas> element is equal to the <canvas> element in that, it is easy to define some fallback content, to be displayed in older browsers not supporting it, like currently all other browsers than the recent version of Firefox or older versions of that. You should always provide fallback content to be displayed by those browsers.
66
-
67
- Providing fallback content is very straightforward: just insert the alternate content inside the <X3DCanvas> element. Browsers that don't support <X3DCanvas> will ignore the container and render the fallback content inside it. Browsers that do support <X3DCanvas> will ignore the content inside the container, and just render the canvas normally.
68
-
69
- For example, we could provide a text description of the X3D element or provide a static image of the dynamically rendered content. This can look something like this:
70
-
71
- <X3DCanvas src="world.x3d">
72
- <p>Current stock price: $3.15 +0.15</p>
73
- </X3DCanvas>
74
-
75
- <X3DCanvas src="world.x3dv">
76
- <img src="images/clock.png"/>
77
- </X3DCanvas>
78
-
79
-
80
- Attributes of the X3DCanvas Tag
4
+ 🛑 Attention!
81
5
  --------------------------------------
82
6
 
83
- The HTML **X3DCanvas tag** defines the main content of the X3D document. The X3DCanvas tag has two attributes that define different behaviours. All of these attributes are optional.
7
+ 👉 X_ITE is now hosted on create3000.github.io, see https://create3000.github.io/x_ite/#github-cdn. The domain http://create3000.de will be shutdown 2022 in May 😱.
84
8
 
85
-
86
- ### src
87
-
88
- A String value with the URL that should be loaded on page load. If no src attribute is specified or the src attribute is empty an empty scene is displayed.
89
-
90
-
91
- ### url
92
-
93
- A MFString value with urls that should be loaded on page load. If no url attribute is specified or the attribute is empty an empty scene is displayed. If both src and url attribute are specified the src attribute takes precedence.
94
-
95
-
96
- ### splashScreen
97
-
98
- A Boolean value (true or false) to indicate whether the splash screen should be displayed. The default value for the splashScreen attribute is true. The display of Learn more about how HTML and X3D can operate together.the splash screen can also be toggled via the browser option »SplashScreen« in JavaScript. Call Browser.setBrowserOption(„SplashScreen“, booleanValue) to toggle the display of the splash screen.
99
-
100
-
101
- ### notifications
102
-
103
- A Boolean value (true or false) to indicate whether the notification bubble should be displayed. The default value for the notifications attribute is true.
104
-
105
-
106
- ### timings
107
-
108
- A Boolean value (true or false) to indicate whether the browser timings bubble should be displayed if the context menu option is enabled. The default value for the timings attribute is true. This attribute changes the facility if browsers timings can be displayed, if browser timings are really displayed is in the hand of the user if he toggles the context menu option to true.
109
-
110
-
111
- ### contextMenu
112
-
113
- A Boolean value (true or false) to indicate whether a context menu should be displayed on right click. The default value for the contextMenu attribute is true.
114
-
115
-
116
- ### cache
117
-
118
- A Boolean value (true or false) to indicate whether files transferred over the internet should be cached on the local computer. The default value for the cache attribute is true. It works by appending „_={timestamp}“ to the GET parameters of every request.
119
-
120
-
121
- ## Example
122
-
123
- `<X3DCanvas cache="true" src="path/to/your/X3D/world.x3d"></X3DCanvas>`
124
-
125
-
126
- Programmer's Style Guide
9
+ Introduction
127
10
  --------------------------------------
128
- Programmers who want to work on X_ITE shall first read the [Style Guide](STYLE_GUIDE.md).
129
11
 
12
+ X_ITE is an X3D JavaScript WebGL Browser. It is a full standard X3D WebGL browser for all major web browsers, which also can be used as a VRML viewer.
130
13
 
131
- Tests
132
- --------------------------------------
133
- [X_ITE Test Page](http://rawgit.com/create3000/x_ite/master/x_ite.min.html)
134
-
14
+ For more information and live preview please have a look at the [Home Page](https://create3000.github.io/x_ite/).
135
15
 
136
- Authors
16
+ Quick Links
137
17
  --------------------------------------
138
- All authors contributed to this project can be found in the [list of authors](AUTHORS.md).
139
-
18
+ * [Getting Started](https://create3000.github.io/x_ite/)
19
+ * [Supported Nodes](https://create3000.github.io/x_ite/Supported-Nodes.html)
20
+ * [Accessing the External Browser](https://create3000.github.io/x_ite/Accessing-the-External-Browser.html)
21
+ * [XHTML DOM Integration](https://create3000.github.io/x_ite/XHTML-DOM-Integration.html)
22
+ * [Custom Shaders](https://create3000.github.io/x_ite/Custom-Shaders.html)
140
23
 
141
24
  License
142
25
  --------------------------------------
143
- X_ITE is free software: you can redistribute it and/or modify it under the terms of
26
+ X_ITE is free software: you can redistribute it and/or modify it under the terms of
144
27
  the [GNU General Public License version 3](LICENSE.md) only, as published by the Free Software Foundation.
@@ -0,0 +1,156 @@
1
+ #!/usr/bin/perl
2
+ # -*- Mode: Perl; coding: utf-8; tab-width: 3; indent-tabs-mode: t; c-basic-offset: 3 -*-
3
+
4
+ use strict;
5
+ use warnings;
6
+ use v5.10.0;
7
+ use utf8;
8
+ use open qw/:std :utf8/;
9
+
10
+ use File::Basename qw (dirname basename);
11
+
12
+ my $CWD = `pwd`;
13
+ chomp $CWD;
14
+
15
+ say $CWD;
16
+
17
+ my $VERSION;
18
+ my $ALPHA;
19
+ my $REVISION;
20
+
21
+ sub check_version {
22
+ $VERSION = `cat package.json`;
23
+ $VERSION =~ /"version":\s*"(.*?)"/;
24
+ $VERSION = $1;
25
+
26
+ $ALPHA = $VERSION =~ /a$/;
27
+
28
+ $REVISION = `cat package.json`;
29
+ $REVISION =~ /"revision":\s*"(.*?)"/;
30
+ $REVISION = $1 + 1;
31
+
32
+ say "VERSION »$VERSION«";
33
+ }
34
+
35
+ sub shader_source {
36
+ my $filename = shift;
37
+
38
+ my $dirname = dirname ($filename);
39
+ my @lines = `cat $filename`;
40
+ my $source = "";
41
+
42
+ foreach my $line (@lines)
43
+ {
44
+ if ($line =~ /^#pragma\s+X3D\s+include\s+"(.*?[^\/]+\.glsl)"\s*$/)
45
+ {
46
+ $source .= shader_source ("$dirname/$1");
47
+ }
48
+ else
49
+ {
50
+ $line =~ s|^\s+||;
51
+
52
+ $source .= $line;
53
+ }
54
+ }
55
+
56
+ $source =~ s|//.*?\n|\n|sg;
57
+ $source =~ s|/\*.*?\*/||sg;
58
+ $source =~ s|[ \t]+| |sg;
59
+ $source =~ s|\n+|\n|sg;
60
+
61
+ return $source;
62
+ }
63
+
64
+ sub shader {
65
+ my $filename = shift;
66
+ my $dist = shift;
67
+ chomp $filename;
68
+
69
+ return if -d $filename;
70
+
71
+ my $basename = basename ($filename);
72
+ my $source = shader_source $filename;
73
+
74
+ open FILE, ">", "$dist/$basename";
75
+ print FILE $source;
76
+ close FILE;
77
+ }
78
+
79
+ sub shaders {
80
+ shader ("src/assets/shaders/webgl1/$_", "dist/assets/shaders/webgl1") foreach `ls -C1 src/assets/shaders/webgl1`;
81
+ shader ("src/assets/shaders/webgl2/$_", "dist/assets/shaders/webgl2") foreach `ls -C1 src/assets/shaders/webgl2`;
82
+ }
83
+
84
+ sub dist {
85
+ my $css = `cat dist/x_ite.css`;
86
+ open CSS, ">", "dist/x_ite.css";
87
+ print CSS "/* X_ITE v$VERSION-$REVISION */", $css;
88
+ close CSS;
89
+
90
+ my $js = `cat dist/x_ite.js`;
91
+ open JS, ">", "dist/x_ite.js";
92
+ print JS "/* X_ITE v$VERSION-$REVISION */\n\n", $js;
93
+ close JS;
94
+
95
+ my $js_min = `cat dist/x_ite.min.js`;
96
+ open JS, ">", "dist/x_ite.min.js";
97
+ print JS "/* X_ITE X3D v$VERSION-$REVISION\n * See LICENSE.txt for a detailed listing of used licences. */\n", $js_min;
98
+ close JS;
99
+
100
+ $css = `cat dist/x_ite.css`;
101
+ open CSS, ">", "dist/x_ite.css";
102
+ $css =~ s/content: "X_ITE Browser";/content: "X_ITE Browser v$VERSION";/;
103
+ print CSS $css;
104
+ close CSS;
105
+
106
+ say "Copying files";
107
+ system "rsync", "-r", "-x", "-c", "-v", "-t", "--progress", "--delete", "src/assets/fonts", "dist/assets/";
108
+ system "rsync", "-r", "-x", "-c", "-v", "-t", "--progress", "--delete", "src/assets/hatching", "dist/assets/";
109
+ system "rsync", "-r", "-x", "-c", "-v", "-t", "--progress", "--delete", "src/assets/images", "dist/assets/";
110
+ system "rsync", "-r", "-x", "-c", "-v", "-t", "--progress", "--delete", "src/assets/linetype", "dist/assets/";
111
+ system "cp", "-v", "src/example.html", "dist/";
112
+
113
+ system "perl", "-pi", "-e", "s|/latest/|/alpha/|sg", "dist/example.html" if $ALPHA;
114
+ system "perl", "-pi", "-e", "s|/latest/|/$VERSION/|sg", "dist/example.html" unless $ALPHA;
115
+
116
+ shaders;
117
+ }
118
+
119
+ sub licenses {
120
+ my $min = `cat 'dist/x_ite.min.js'`;
121
+
122
+ $min =~ m!^((?:\s+|/\*.*?\*/|//.*?\n)+)!sg;
123
+
124
+ my $licenses = $1;
125
+
126
+ $min =~ s!^((?:\s+|/\*.*?\*/|//.*?\n)+)!!sg;
127
+
128
+ open MIN, ">", "dist/x_ite.min.js";
129
+ print MIN $min;
130
+ close MIN;
131
+
132
+ open LICENSE, ">", "dist/LICENSE.txt";
133
+ say LICENSE `cat src/LICENSE.txt`;
134
+ print LICENSE $licenses;
135
+ close LICENSE;
136
+ }
137
+
138
+ sub zip {
139
+ my $ZIP_DIR = "x_ite-$VERSION";
140
+
141
+ system "cp", "-r", "dist", $ZIP_DIR;
142
+
143
+ system "zip", "-x", "*.mdproj", "-x", "*.zip", "-r", "$ZIP_DIR.zip", $ZIP_DIR;
144
+ system "mv", "-v", "$ZIP_DIR.zip", "dist/x_ite.zip";
145
+
146
+ system "rm", "-v", "-r", $ZIP_DIR;
147
+ }
148
+
149
+ check_version;
150
+
151
+ say "Making version '$VERSION' now.";
152
+
153
+ shaders;
154
+ licenses;
155
+ dist;
156
+ zip;
@@ -0,0 +1,25 @@
1
+ #!/usr/bin/perl
2
+ # -*- Mode: Perl; coding: utf-8; tab-width: 3; indent-tabs-mode: t; c-basic-offset: 3 -*-
3
+
4
+ use strict;
5
+ use warnings;
6
+ use v5.10.0;
7
+ use utf8;
8
+ use open qw/:std :utf8/;
9
+
10
+ sub check_version {
11
+ my $VERSION = `cat package.json`;
12
+ $VERSION =~ /"version":\s*"(.*?)"/;
13
+ $VERSION = $1;
14
+
15
+ say "VERSION »$VERSION«";
16
+
17
+ my $BROWSER = `cat src/x_ite/Browser/VERSION.js`;
18
+ $BROWSER =~ s/"(.*?a?)"/"$VERSION"/;
19
+
20
+ open BROWSER, ">", "src/x_ite/Browser/VERSION.js";
21
+ print BROWSER $BROWSER;
22
+ close $BROWSER;
23
+ }
24
+
25
+ check_version;
@@ -4,11 +4,12 @@
4
4
  use strict;
5
5
  use warnings;
6
6
  use v5.10.0;
7
+ use utf8;
7
8
  use open qw/:std :utf8/;
8
9
 
9
- my $CWD = `pwd`;
10
- chomp $CWD;
10
+ use Cwd;
11
11
 
12
+ my $CWD = cwd;
12
13
  say $CWD;
13
14
 
14
15
  my $VERSION;
@@ -30,7 +31,6 @@ sub commit
30
31
  system "git", "commit", "-am", "Published version $VERSION-$REVISION";
31
32
  system "git", "push";
32
33
  system "git", "push", "origin";
33
- system "git", "push", "github";
34
34
  }
35
35
 
36
36
  sub publish
@@ -39,22 +39,56 @@ sub publish
39
39
 
40
40
  system "git", "tag", "--delete", "$version";
41
41
  system "git", "push", "--delete", "origin", "$version";
42
- system "git", "push", "--delete", "github", "$version";
43
42
 
44
43
  system "git", "tag", "$version";
45
44
  system "git", "push", "origin", "--tags";
46
- system "git", "push", "github", "--tags";
47
45
  }
48
46
 
49
- sub rsync
47
+ sub update
50
48
  {
51
49
  my $release = shift;
52
- my $ftp = "/run/user/1000/gvfs/ftp:host=create3000.de/html/create3000.de/code/htdocs/x_ite";
50
+ my $dist = "$CWD/dist";
51
+ my $code = "$CWD/../code/docs/x_ite/$release";
53
52
 
54
53
  say "Uploading $release";
55
54
 
56
- system "mkdir", "-p", "$ftp/$release/dist/";
57
- system "rsync", "-r", "-x", "-c", "-v", "--progress", "--delete", "/home/holger/Projekte/X_ITE/dist/", "$ftp/$release/dist/";
55
+ system "rm", "-r", "$code/dist";
56
+
57
+ system "mkdir", "-p", $code;
58
+ system "cp", "-r", $dist, "$code/dist";
59
+ }
60
+
61
+ sub upload
62
+ {
63
+ my $code = "$CWD/../code";
64
+
65
+ chdir $code;
66
+
67
+ system "git", "add", "-A";
68
+ system "git", "commit", "-am", "Published version $VERSION-$REVISION";
69
+ system "git", "push";
70
+ system "git", "push", "origin";
71
+ }
72
+
73
+ sub docs
74
+ {
75
+ my $VERSION = shift;
76
+
77
+ my $config = `cat '$CWD/docs/_config.yml'`;
78
+
79
+ $config =~ s|"Version\s+.*?"|"Version $VERSION"|sgo;
80
+
81
+ open CONFIG, ">", "$CWD/docs/_config.yml";
82
+ print CONFIG $config;
83
+ close CONFIG;
84
+
85
+ my $home = `cat '$CWD/docs/index.md'`;
86
+
87
+ $home =~ s|/x_ite/\d+\.\d+\.\d+/dist/|/x_ite/$VERSION/dist/|sgo;
88
+
89
+ open HOME, ">", "$CWD/docs/index.md";
90
+ print HOME $home;
91
+ close HOME;
58
92
  }
59
93
 
60
94
  my $result = system "zenity", "--question", "--text=Do you really want to publish X_ITE X3D v$VERSION-$REVISION now?", "--ok-label=Yes", "--cancel-label=No";
@@ -66,23 +100,29 @@ if ($result == 0)
66
100
  # Increment revision number.
67
101
  system "perl", "-pi", "-e", "s|\"revision\":\\s*\"(.*?)\"|\"revision\": \"$REVISION\"|sg", "package.json";
68
102
 
103
+ # docs
104
+
105
+ docs ($VERSION) unless $ALPHA;
106
+
69
107
  # GitHub
70
108
 
71
109
  commit;
72
110
 
73
111
  unless ($ALPHA)
74
112
  {
75
- publish ("$VERSION");
113
+ publish ($VERSION);
76
114
  publish ("latest");
77
115
  }
78
116
 
79
- # FTP
117
+ # code
80
118
 
81
- rsync ("alpha");
119
+ update ("alpha");
82
120
 
83
121
  unless ($ALPHA)
84
122
  {
85
- rsync ("latest");
86
- rsync ($VERSION);
123
+ update ("latest");
124
+ update ($VERSION);
87
125
  }
126
+
127
+ upload;
88
128
  }
@@ -0,0 +1,15 @@
1
+
2
+ ({
3
+ baseUrl: "../../src",
4
+ name: "assets/components/annotation",
5
+ out: "../../dist/assets/components/annotation.js",
6
+ optimize: "none",
7
+ mainConfigFile: "../../src/x_ite.config.js",
8
+ exclude: [
9
+ "x_ite"
10
+ ],
11
+ wrap: {
12
+ startFile: "../parts/default.start.frag",
13
+ endFile: "../parts/default.end.frag"
14
+ },
15
+ })