x_ite 8.10.1 → 8.11.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (137) hide show
  1. package/Makefile +3 -0
  2. package/build/bin/version.pl +28 -20
  3. package/build/docs/glTF-samples.pl +151 -0
  4. package/build/docs/nodes.pl +1 -1
  5. package/build/src/nodes.pl +41 -0
  6. package/dist/assets/components/Annotation.js +13 -13
  7. package/dist/assets/components/Annotation.min.js +1 -1
  8. package/dist/assets/components/CADGeometry.js +13 -13
  9. package/dist/assets/components/CADGeometry.min.js +1 -1
  10. package/dist/assets/components/CubeMapTexturing.js +30 -26
  11. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  12. package/dist/assets/components/DIS.js +14 -14
  13. package/dist/assets/components/DIS.min.js +1 -1
  14. package/dist/assets/components/EventUtilities.js +9 -9
  15. package/dist/assets/components/EventUtilities.min.js +1 -1
  16. package/dist/assets/components/Geometry2D.js +19 -19
  17. package/dist/assets/components/Geometry2D.min.js +1 -1
  18. package/dist/assets/components/Geospatial.js +33 -33
  19. package/dist/assets/components/Geospatial.min.js +1 -1
  20. package/dist/assets/components/HAnim.js +394 -30
  21. package/dist/assets/components/HAnim.min.js +1 -1
  22. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  23. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  24. package/dist/assets/components/Layout.js +26 -26
  25. package/dist/assets/components/Layout.min.js +1 -1
  26. package/dist/assets/components/NURBS.js +24 -24
  27. package/dist/assets/components/NURBS.min.js +1 -1
  28. package/dist/assets/components/ParticleSystems.js +73 -74
  29. package/dist/assets/components/ParticleSystems.min.js +1 -1
  30. package/dist/assets/components/Picking.js +18 -18
  31. package/dist/assets/components/Picking.min.js +1 -1
  32. package/dist/assets/components/RigidBodyPhysics.js +18 -18
  33. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  34. package/dist/assets/components/Scripting.js +37 -37
  35. package/dist/assets/components/Scripting.min.js +1 -1
  36. package/dist/assets/components/Text.js +55 -63
  37. package/dist/assets/components/Text.min.js +1 -1
  38. package/dist/assets/components/TextureProjector.js +14 -14
  39. package/dist/assets/components/TextureProjector.min.js +1 -1
  40. package/dist/assets/components/Texturing3D.js +35 -31
  41. package/dist/assets/components/Texturing3D.min.js +1 -1
  42. package/dist/assets/components/VolumeRendering.js +20 -20
  43. package/dist/assets/components/VolumeRendering.min.js +1 -1
  44. package/dist/assets/components/X_ITE.js +9 -9
  45. package/dist/assets/components/X_ITE.min.js +1 -1
  46. package/dist/x_ite.css +1 -1
  47. package/dist/x_ite.js +1456 -844
  48. package/dist/x_ite.min.js +1 -1
  49. package/dist/x_ite.zip +0 -0
  50. package/docs/_config.yml +2 -2
  51. package/docs/_posts/components/Core/MetadataBoolean.md +6 -4
  52. package/docs/_posts/components/Core/MetadataDouble.md +6 -4
  53. package/docs/_posts/components/Core/MetadataFloat.md +6 -4
  54. package/docs/_posts/components/Core/MetadataInteger.md +6 -4
  55. package/docs/_posts/components/Core/MetadataSet.md +6 -4
  56. package/docs/_posts/components/Core/MetadataString.md +6 -4
  57. package/docs/_posts/components/DIS/DISEntityTypeMapping.md +1 -1
  58. package/docs/_posts/components/HAnim/HAnimMotion.md +48 -48
  59. package/docs/_posts/components/RigidBodyPhysics/Contact.md +1 -1
  60. package/docs/_posts/getting-started.md +45 -35
  61. package/docs/_posts/reference/browser-services.md +6 -0
  62. package/docs/_tabs/playground.html +215 -15
  63. package/docs/assets/css/style.scss +35 -2
  64. package/docs/assets/js/example.js +95 -3
  65. package/docs/laboratory/gltf-sample-viewer.html +603 -235
  66. package/package.json +2 -2
  67. package/src/assets/shaders/Types.glsl.js +4 -0
  68. package/src/assets/shaders/webgl1/include/Hatch.glsl.js +2 -3
  69. package/src/assets/shaders/webgl2/Compose.fs.js +29 -0
  70. package/src/assets/shaders/webgl2/Compose.vs.js +14 -0
  71. package/src/assets/shaders/webgl2/include/Fragment.glsl.js +24 -2
  72. package/src/assets/shaders/webgl2/include/Hatch.glsl.js +2 -3
  73. package/src/assets/shaders/webgl2/include/Stipple.glsl.js +5 -3
  74. package/src/bookmarks.js +92 -5
  75. package/src/examples.js +1 -0
  76. package/src/standard/Math/Numbers/Quaternion.js +191 -13
  77. package/src/standard/Math/Numbers/Rotation4.js +23 -0
  78. package/src/standard/Time/{MicroTime.js → Time.js} +21 -28
  79. package/src/x_ite/Base/X3DChildObject.js +5 -4
  80. package/src/x_ite/Browser/Core/BrowserOptions.js +71 -60
  81. package/src/x_ite/Browser/Core/Context.js +2 -2
  82. package/src/x_ite/Browser/Core/X3DCoreContext.js +6 -0
  83. package/src/x_ite/Browser/DOMIntegration.js +0 -17
  84. package/src/x_ite/Browser/Navigation/ExamineViewer.js +5 -4
  85. package/src/x_ite/Browser/Navigation/X3DFlyViewer.js +7 -4
  86. package/src/x_ite/Browser/Rendering/X3DRenderingContext.js +20 -15
  87. package/src/x_ite/Browser/Shaders/Shaders.js +19 -15
  88. package/src/x_ite/Browser/Text/X3DTextContext.js +16 -16
  89. package/src/x_ite/Browser/Time/X3DTimeContext.js +3 -2
  90. package/src/x_ite/Browser/VERSION.js +1 -1
  91. package/src/x_ite/Browser/VolumeRendering/VolumeMaterial.js +2 -2
  92. package/src/x_ite/Browser/X3DBrowser.js +1 -2
  93. package/src/x_ite/Browser/X3DBrowserContext.js +0 -5
  94. package/src/x_ite/Components/Core/MetadataBoolean.js +8 -1
  95. package/src/x_ite/Components/Core/MetadataDouble.js +8 -1
  96. package/src/x_ite/Components/Core/MetadataFloat.js +8 -1
  97. package/src/x_ite/Components/Core/MetadataInteger.js +8 -1
  98. package/src/x_ite/Components/Core/MetadataSet.js +8 -1
  99. package/src/x_ite/Components/Core/MetadataString.js +8 -1
  100. package/src/x_ite/Components/Core/X3DPrototypeInstance.js +9 -6
  101. package/src/x_ite/Components/CubeMapTexturing/ImageCubeMapTexture.js +2 -1
  102. package/src/x_ite/Components/DIS/DISEntityTypeMapping.js +1 -1
  103. package/src/x_ite/Components/EnvironmentalEffects/X3DBackgroundNode.js +5 -1
  104. package/src/x_ite/Components/Grouping/X3DGroupingNode.js +2 -0
  105. package/src/x_ite/Components/HAnim/HAnimHumanoid.js +34 -2
  106. package/src/x_ite/Components/HAnim/HAnimMotion.js +331 -15
  107. package/src/x_ite/Components/Lighting/DirectionalLight.js +1 -3
  108. package/src/x_ite/Components/Lighting/PointLight.js +1 -3
  109. package/src/x_ite/Components/Lighting/SpotLight.js +1 -3
  110. package/src/x_ite/Components/Networking/X3DUrlObject.js +5 -4
  111. package/src/x_ite/Components/ParticleSystems/ParticleSystem.js +47 -51
  112. package/src/x_ite/Components/Rendering/X3DGeometryNode.js +4 -2
  113. package/src/x_ite/Components/RigidBodyPhysics/Contact.js +1 -1
  114. package/src/x_ite/Components/Shaders/X3DProgrammableShaderObject.js +1 -1
  115. package/src/x_ite/Components/Shape/FillProperties.js +4 -0
  116. package/src/x_ite/Components/Shape/LineProperties.js +4 -0
  117. package/src/x_ite/Components/Shape/PointProperties.js +4 -0
  118. package/src/x_ite/Components/Shape/X3DMaterialNode.js +44 -20
  119. package/src/x_ite/Components/Sound/AudioClip.js +2 -1
  120. package/src/x_ite/Components/Text/X3DFontStyleNode.js +13 -23
  121. package/src/x_ite/Components/Texturing/ImageTexture.js +2 -1
  122. package/src/x_ite/Components/Texturing/MovieTexture.js +2 -1
  123. package/src/x_ite/Components/Texturing3D/ImageTextureAtlas.js +2 -1
  124. package/src/x_ite/Components/Time/TimeSensor.js +25 -24
  125. package/src/x_ite/Components/Time/X3DTimeDependentNode.js +5 -4
  126. package/src/x_ite/Execution/BindableList.js +3 -3
  127. package/src/x_ite/Execution/X3DScene.js +2 -0
  128. package/src/x_ite/Parser/XMLParser.js +12 -2
  129. package/src/x_ite/Rendering/MultiSampleFrameBuffer.js +264 -26
  130. package/src/x_ite/Rendering/PointingBuffer.js +5 -7
  131. package/src/x_ite/Rendering/TextureBuffer.js +6 -14
  132. package/src/x_ite/Rendering/X3DRenderObject.js +28 -28
  133. package/src/x_ite/X3D.js +0 -1
  134. package/src/x_ite/X3DCanvasElement.js +2 -0
  135. package/src/x_ite.html +23 -24
  136. package/x_ite.min.html +23 -24
  137. /package/build/{bin → docs}/tags.pl +0 -0
@@ -3,6 +3,7 @@ $("table.examples a") .on ("click", function ()
3
3
  let
4
4
  div = $("div.example"),
5
5
  header = div .find (".header"),
6
+ toolbar = div .find (".toolbar"),
6
7
  canvas = div .find ("x3d-canvas"),
7
8
  zip = div .find ("zip");
8
9
 
@@ -13,9 +14,10 @@ $("table.examples a") .on ("click", function ()
13
14
  }
14
15
  else
15
16
  {
16
- div = $("<div></div>") .addClass ("example") .appendTo ("body");
17
- header = $("<p></p>") .addClass ("header") .appendTo (div);
18
- canvas = $("<x3d-canvas></x3d-canvas>") .appendTo (div);
17
+ div = $("<div></div>") .addClass ("example") .appendTo ("body");
18
+ header = $("<p></p>") .addClass ("header") .appendTo (div);
19
+ toolbar = $("<p></p>") .addClass ("toolbar") .appendTo (div);
20
+ canvas = $("<x3d-canvas></x3d-canvas>") .appendTo (div);
19
21
 
20
22
  $("<i></i>") .addClass (["fas", "fa-solid", "fa-circle-xmark", "fa-fw"]) .appendTo (div) .on ("click", function ()
21
23
  {
@@ -26,11 +28,101 @@ $("table.examples a") .on ("click", function ()
26
28
  zip = $("<a></a>") .addClass ("zip") .text ("Download ZIP Archive") .appendTo ($("<p></p>") .appendTo (div));
27
29
  }
28
30
 
31
+ canvas .prop ("browser") .getBrowserOptions () .reset ();
32
+
29
33
  header .text ($(this) .attr ("title"));
30
34
  canvas .attr ("src", $(this) .attr ("href"));
31
35
  zip .attr ("href", $(this) .attr ("href") .replace (/\.x3d$/, ".zip"));
32
36
 
37
+ updateToolbar (toolbar, canvas)
38
+
33
39
  console .log (`Loading ${$(this) .attr ("title")} ...`);
34
40
 
35
41
  return false;
36
42
  });
43
+
44
+ function updateToolbar (toolbar, canvas)
45
+ {
46
+ const browser = canvas .prop ("browser");
47
+
48
+ toolbar .empty ();
49
+
50
+ const antialiased = $("<span></span>")
51
+ .text ("antialiased")
52
+ .attr ("title", "Toggle antialiasing.")
53
+ .addClass (browser .getBrowserOption ("Antialiased") ? "selected" : "")
54
+ .on ("click", () =>
55
+ {
56
+ const value = !browser .getBrowserOption ("Antialiased");
57
+
58
+ browser .setBrowserOption ("Antialiased", value);
59
+
60
+ antialiased .toggleClass ("selected");
61
+ })
62
+ .appendTo (toolbar);
63
+
64
+ $("<span></span>") .addClass ("dot") .appendTo (toolbar);
65
+
66
+ const contentScale = $("<span></span>")
67
+ .text ("contentScale 1.0")
68
+ .attr ("title", "Toggle contentScale between 0.1, 1.0 and 2.0.")
69
+ .on ("click", () =>
70
+ {
71
+ const
72
+ index = ((contentScale .attr ("index") ?? 1) + 1) % 3,
73
+ value = [0.1, 1, 2][index];
74
+
75
+ browser .setBrowserOption ("ContentScale", value);
76
+
77
+ contentScale
78
+ .attr ("index", index)
79
+ .text ("contentScale " + value .toFixed (1))
80
+ })
81
+ .appendTo (toolbar);
82
+
83
+ $("<span></span>") .addClass ("dot") .appendTo (toolbar);
84
+
85
+ const pixelated = $("<span></span>")
86
+ .text ("pixelated")
87
+ .attr ("title", "Set CSS property image-rendering to pixelated.")
88
+ .addClass (canvas .css ("image-rendering") === "pixelated" ? "selected" : "")
89
+ .on ("click", () =>
90
+ {
91
+ canvas .css ("image-rendering", pixelated .hasClass ("selected") ? "unset" : "pixelated");
92
+
93
+ pixelated .toggleClass ("selected");
94
+ })
95
+ .appendTo (toolbar);
96
+
97
+ $("<span></span>") .addClass ("separator") .appendTo (toolbar);
98
+
99
+ const oit = $("<span></span>")
100
+ .text ("oit")
101
+ .attr ("title", "Toggle order independent transparency.")
102
+ .addClass (browser .getBrowserOption ("OrderIndependentTransparency") ? "selected" : "")
103
+ .on ("click", () =>
104
+ {
105
+ const value = !browser .getBrowserOption ("OrderIndependentTransparency");
106
+
107
+ browser .setBrowserOption ("OrderIndependentTransparency", value);
108
+
109
+ oit .toggleClass ("selected");
110
+ })
111
+ .appendTo (toolbar);
112
+
113
+ $("<span></span>") .addClass ("dot") .appendTo (toolbar);
114
+
115
+ const log = $("<span></span>")
116
+ .text ("log")
117
+ .attr ("title", "Toggle logarithmic depth buffer.")
118
+ .addClass (browser .getBrowserOption ("LogarithmicDepthBuffer") ? "selected" : "")
119
+ .on ("click", () =>
120
+ {
121
+ const value = !browser .getBrowserOption ("LogarithmicDepthBuffer");
122
+
123
+ browser .setBrowserOption ("LogarithmicDepthBuffer", value);
124
+
125
+ log .toggleClass ("selected");
126
+ })
127
+ .appendTo (toolbar);
128
+ }