x_ite 11.6.6 → 12.0.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 (51) hide show
  1. package/README.md +4 -4
  2. package/dist/assets/components/AnnotationComponent.js +2 -2
  3. package/dist/assets/components/AnnotationComponent.min.js +2 -2
  4. package/dist/assets/components/CADGeometryComponent.js +27 -10
  5. package/dist/assets/components/CADGeometryComponent.min.js +2 -2
  6. package/dist/assets/components/CubeMapTexturingComponent.js +2 -2
  7. package/dist/assets/components/CubeMapTexturingComponent.min.js +2 -2
  8. package/dist/assets/components/DISComponent.js +23 -2
  9. package/dist/assets/components/DISComponent.min.js +2 -2
  10. package/dist/assets/components/EventUtilitiesComponent.js +2 -2
  11. package/dist/assets/components/EventUtilitiesComponent.min.js +2 -2
  12. package/dist/assets/components/Geometry2DComponent.js +2 -2
  13. package/dist/assets/components/Geometry2DComponent.min.js +2 -2
  14. package/dist/assets/components/GeospatialComponent.js +48 -25
  15. package/dist/assets/components/GeospatialComponent.min.js +2 -2
  16. package/dist/assets/components/HAnimComponent.js +47 -37
  17. package/dist/assets/components/HAnimComponent.min.js +2 -2
  18. package/dist/assets/components/KeyDeviceSensorComponent.js +2 -2
  19. package/dist/assets/components/KeyDeviceSensorComponent.min.js +2 -2
  20. package/dist/assets/components/LayoutComponent.js +15 -24
  21. package/dist/assets/components/LayoutComponent.min.js +2 -2
  22. package/dist/assets/components/NURBSComponent.js +256 -249
  23. package/dist/assets/components/NURBSComponent.min.js +2 -2
  24. package/dist/assets/components/ParticleSystemsComponent.js +8 -4
  25. package/dist/assets/components/ParticleSystemsComponent.min.js +2 -2
  26. package/dist/assets/components/PickingComponent.js +33 -58
  27. package/dist/assets/components/PickingComponent.min.js +2 -2
  28. package/dist/assets/components/RigidBodyPhysicsComponent.js +48 -23
  29. package/dist/assets/components/RigidBodyPhysicsComponent.min.js +2 -2
  30. package/dist/assets/components/ScriptingComponent.js +4 -3
  31. package/dist/assets/components/ScriptingComponent.min.js +2 -2
  32. package/dist/assets/components/TextComponent.js +3 -3
  33. package/dist/assets/components/TextComponent.min.js +2 -2
  34. package/dist/assets/components/TextureProjectionComponent.js +8 -10
  35. package/dist/assets/components/TextureProjectionComponent.min.js +2 -2
  36. package/dist/assets/components/Texturing3DComponent.js +66 -64
  37. package/dist/assets/components/Texturing3DComponent.min.js +2 -2
  38. package/dist/assets/components/VolumeRenderingComponent.js +2 -2
  39. package/dist/assets/components/VolumeRenderingComponent.min.js +2 -2
  40. package/dist/assets/components/WebXRComponent.js +5 -4
  41. package/dist/assets/components/WebXRComponent.min.js +2 -2
  42. package/dist/assets/components/X_ITEComponent.js +12 -9
  43. package/dist/assets/components/X_ITEComponent.min.js +2 -2
  44. package/dist/example.html +1 -1
  45. package/dist/x_ite.css +1 -1
  46. package/dist/x_ite.js +75765 -75730
  47. package/dist/x_ite.min.js +2 -2
  48. package/dist/x_ite.min.mjs +2 -2
  49. package/dist/x_ite.mjs +80872 -80837
  50. package/dist/x_ite.zip +0 -0
  51. package/package.json +1 -1
package/README.md CHANGED
@@ -36,10 +36,10 @@ If you are going to use X_ITE in a production environment, you should use a fixe
36
36
  jsDelivr is an open-source content delivery network (CDN) renowned for its no-cost access, swift performance, and reliable service.
37
37
 
38
38
  ```html
39
- <script defer src="https://cdn.jsdelivr.net/npm/x_ite@11.6.6/dist/x_ite.min.js"></script>
39
+ <script defer src="https://cdn.jsdelivr.net/npm/x_ite@12.0.1/dist/x_ite.min.js"></script>
40
40
  <!-- or as ES module for use in scripts -->
41
41
  <script type="module">
42
- import X3D from "https://cdn.jsdelivr.net/npm/x_ite@11.6.6/dist/x_ite.min.mjs";
42
+ import X3D from "https://cdn.jsdelivr.net/npm/x_ite@12.0.1/dist/x_ite.min.mjs";
43
43
  </script>
44
44
  ```
45
45
 
@@ -68,7 +68,7 @@ This script initializes an X3D canvas within an HTML page, configuring it to con
68
68
  ### Declarative Syntax
69
69
 
70
70
  ```html
71
- <script defer src="https://cdn.jsdelivr.net/npm/x_ite@11.6.6/dist/x_ite.min.js"></script>
71
+ <script defer src="https://cdn.jsdelivr.net/npm/x_ite@12.0.1/dist/x_ite.min.js"></script>
72
72
  <x3d-canvas update="auto" contentScale="auto">
73
73
  <X3D profile='Interchange' version='4.0'>
74
74
  <head>
@@ -107,7 +107,7 @@ The same scene can also be created using pure JavaScript:
107
107
 
108
108
  ```html
109
109
  <script type="module">
110
- import X3D from "https://cdn.jsdelivr.net/npm/x_ite@11.6.6/dist/x_ite.min.mjs";
110
+ import X3D from "https://cdn.jsdelivr.net/npm/x_ite@12.0.1/dist/x_ite.min.mjs";
111
111
 
112
112
  const
113
113
  canvas = document .createElement ("x3d-canvas"), // Or get an already inserted <x3d-canvas> element.
@@ -1,5 +1,5 @@
1
- /* X_ITE v11.6.6 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.6.6")];
1
+ /* X_ITE v12.0.1 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.0.1")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope
@@ -1,2 +1,2 @@
1
- /* X_ITE v11.6.6 */
2
- const t=window[Symbol.for("X_ITE.X3D-11.6.6")];(()=>{var n={n:t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},d:(t,e)=>{for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},o:(t,n)=>Object.prototype.hasOwnProperty.call(t,n)};const e=t.Components;var i=n.n(e);const o=t.Fields;var a=n.n(o);const p=t.X3DFieldDefinition;var r=n.n(p);const u=t.FieldDefinitionArray;var l=n.n(u);const s=t.X3DNode;var d=n.n(s);const c=t.X3DLayerNode;var w=n.n(c);const y=t.Viewpoint;var O=n.n(y);const S=t.Group;var f=n.n(S);const b=t.X3DConstants;var h=n.n(b);const F=t.Namespace;var g=n.n(F);function A(t){w().call(this,t,new(O())(t),new(f())(t)),this.addType(h().AnnotationLayer)}Object.assign(Object.setPrototypeOf(A.prototype,w().prototype),{initialize(){w().prototype.initialize.call(this)}}),Object.defineProperties(A,{...d().getStaticProperties("AnnotationLayer","Annotation",1,"layers","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"isPickable",new(a().SFBool)(!0)),new(r())(h().inputOutput,"layoutPolicy",new(a().MFString)),new(r())(h().inputOutput,"shownGroupID",new(a().MFString)),new(r())(h().inputOutput,"viewport",new(a().SFNode))]),enumerable:!0}});const P=A,N=g().add("AnnotationLayer",P),m=t.X3DChildNode;var v=n.n(m);function D(t){v().call(this,t),this.addType(h().AnnotationTarget)}Object.assign(Object.setPrototypeOf(D.prototype,v().prototype),{initialize(){v().prototype.initialize.call(this)}}),Object.defineProperties(D,{...d().getStaticProperties("AnnotationTarget","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"referencePoint",new(a().SFVec3f)),new(r())(h().inputOutput,"leadLineStyle",new(a().SFNode)),new(r())(h().inputOutput,"marker",new(a().SFNode)),new(r())(h().inputOutput,"annotations",new(a().MFNode))]),enumerable:!0}});const j=D,z=g().add("AnnotationTarget",j),T=t.X3DGroupingNode;var X=n.n(T);function G(t){v().call(this,t),this.addType(h().X3DAnnotationNode)}Object.assign(Object.setPrototypeOf(G.prototype,v().prototype),{initialize(){v().prototype.initialize.call(this)}}),Object.defineProperties(G,d().getStaticProperties("X3DAnnotationNode","Annotation",1));const I=G,L=g().add("X3DAnnotationNode",I);function E(t){X().call(this,t),L.call(this,t),this.addType(h().GroupAnnotation)}Object.assign(Object.setPrototypeOf(E.prototype,X().prototype),L.prototype,{initialize(){X().prototype.initialize.call(this),L.prototype.initialize.call(this)},dispose(){L.prototype.dispose.call(this),X().prototype.dispose.call(this)}}),Object.defineProperties(E,{...d().getStaticProperties("GroupAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"visible",new(a().SFBool)(!0)),new(r())(h().inputOutput,"bboxDisplay",new(a().SFBool)),new(r())(h().initializeOnly,"bboxSize",new(a().SFVec3f)(-1,-1,-1)),new(r())(h().initializeOnly,"bboxCenter",new(a().SFVec3f)),new(r())(h().inputOnly,"addChildren",new(a().MFNode)),new(r())(h().inputOnly,"removeChildren",new(a().MFNode)),new(r())(h().inputOutput,"children",new(a().MFNode))]),enumerable:!0}});const M=E,R=g().add("GroupAnnotation",M),x=t.X3DUrlObject;var V=n.n(x);function B(t){L.call(this,t),V().call(this,t),this.addType(h().IconAnnotation)}Object.assign(Object.setPrototypeOf(B.prototype,L.prototype),V().prototype,{initialize(){L.prototype.initialize.call(this),V().prototype.initialize.call(this)},async requestImmediateLoad(t=!0){},dispose(){V().prototype.dispose.call(this),L.prototype.dispose.call(this)}}),Object.defineProperties(B,{...d().getStaticProperties("IconAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"url",new(a().MFString)),new(r())(h().inputOutput,"autoRefresh",new(a().SFTime)(0)),new(r())(h().inputOutput,"autoRefreshTimeLimit",new(a().SFTime)(3600))]),enumerable:!0}});const C=B,U=g().add("IconAnnotation",C);function _(t){L.call(this,t),this.addType(h().TextAnnotation)}Object.assign(Object.setPrototypeOf(_.prototype,L.prototype),{initialize(){L.prototype.initialize.call(this)}}),Object.defineProperties(_,{...d().getStaticProperties("TextAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"contentType",new(a().SFString)("text/plain")),new(r())(h().inputOutput,"text",new(a().SFString))]),enumerable:!0}});const k=_,q=g().add("TextAnnotation",k);function H(t){L.call(this,t),this.addType(h().URLAnnotation)}Object.assign(Object.setPrototypeOf(H.prototype,L.prototype),{initialize(){L.prototype.initialize.call(this)}}),Object.defineProperties(H,{...d().getStaticProperties("URLAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"url",new(a().MFString))]),enumerable:!0}});const J=H,K=g().add("URLAnnotation",J);i().add({name:"Annotation",concreteNodes:[N,z,R,U,q,K],abstractNodes:[L]});g().add("AnnotationComponent",undefined)})();
1
+ /* X_ITE v12.0.1 */
2
+ const t=window[Symbol.for("X_ITE.X3D-12.0.1")];(()=>{var n={n:t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},d:(t,e)=>{for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},o:(t,n)=>Object.prototype.hasOwnProperty.call(t,n)};const e=t.Components;var i=n.n(e);const o=t.Fields;var a=n.n(o);const p=t.X3DFieldDefinition;var r=n.n(p);const u=t.FieldDefinitionArray;var l=n.n(u);const s=t.X3DNode;var d=n.n(s);const c=t.X3DLayerNode;var w=n.n(c);const y=t.Viewpoint;var O=n.n(y);const S=t.Group;var f=n.n(S);const b=t.X3DConstants;var h=n.n(b);const F=t.Namespace;var g=n.n(F);function A(t){w().call(this,t,new(O())(t),new(f())(t)),this.addType(h().AnnotationLayer)}Object.assign(Object.setPrototypeOf(A.prototype,w().prototype),{initialize(){w().prototype.initialize.call(this)}}),Object.defineProperties(A,{...d().getStaticProperties("AnnotationLayer","Annotation",1,"layers","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"isPickable",new(a().SFBool)(!0)),new(r())(h().inputOutput,"layoutPolicy",new(a().MFString)),new(r())(h().inputOutput,"shownGroupID",new(a().MFString)),new(r())(h().inputOutput,"viewport",new(a().SFNode))]),enumerable:!0}});const P=A,N=g().add("AnnotationLayer",P),m=t.X3DChildNode;var v=n.n(m);function D(t){v().call(this,t),this.addType(h().AnnotationTarget)}Object.assign(Object.setPrototypeOf(D.prototype,v().prototype),{initialize(){v().prototype.initialize.call(this)}}),Object.defineProperties(D,{...d().getStaticProperties("AnnotationTarget","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"referencePoint",new(a().SFVec3f)),new(r())(h().inputOutput,"leadLineStyle",new(a().SFNode)),new(r())(h().inputOutput,"marker",new(a().SFNode)),new(r())(h().inputOutput,"annotations",new(a().MFNode))]),enumerable:!0}});const j=D,z=g().add("AnnotationTarget",j),T=t.X3DGroupingNode;var X=n.n(T);function G(t){v().call(this,t),this.addType(h().X3DAnnotationNode)}Object.assign(Object.setPrototypeOf(G.prototype,v().prototype),{initialize(){v().prototype.initialize.call(this)}}),Object.defineProperties(G,d().getStaticProperties("X3DAnnotationNode","Annotation",1));const I=G,L=g().add("X3DAnnotationNode",I);function E(t){X().call(this,t),L.call(this,t),this.addType(h().GroupAnnotation)}Object.assign(Object.setPrototypeOf(E.prototype,X().prototype),L.prototype,{initialize(){X().prototype.initialize.call(this),L.prototype.initialize.call(this)},dispose(){L.prototype.dispose.call(this),X().prototype.dispose.call(this)}}),Object.defineProperties(E,{...d().getStaticProperties("GroupAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"visible",new(a().SFBool)(!0)),new(r())(h().inputOutput,"bboxDisplay",new(a().SFBool)),new(r())(h().initializeOnly,"bboxSize",new(a().SFVec3f)(-1,-1,-1)),new(r())(h().initializeOnly,"bboxCenter",new(a().SFVec3f)),new(r())(h().inputOnly,"addChildren",new(a().MFNode)),new(r())(h().inputOnly,"removeChildren",new(a().MFNode)),new(r())(h().inputOutput,"children",new(a().MFNode))]),enumerable:!0}});const M=E,R=g().add("GroupAnnotation",M),x=t.X3DUrlObject;var V=n.n(x);function B(t){L.call(this,t),V().call(this,t),this.addType(h().IconAnnotation)}Object.assign(Object.setPrototypeOf(B.prototype,L.prototype),V().prototype,{initialize(){L.prototype.initialize.call(this),V().prototype.initialize.call(this)},async requestImmediateLoad(t=!0){},dispose(){V().prototype.dispose.call(this),L.prototype.dispose.call(this)}}),Object.defineProperties(B,{...d().getStaticProperties("IconAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"url",new(a().MFString)),new(r())(h().inputOutput,"autoRefresh",new(a().SFTime)(0)),new(r())(h().inputOutput,"autoRefreshTimeLimit",new(a().SFTime)(3600))]),enumerable:!0}});const C=B,U=g().add("IconAnnotation",C);function _(t){L.call(this,t),this.addType(h().TextAnnotation)}Object.assign(Object.setPrototypeOf(_.prototype,L.prototype),{initialize(){L.prototype.initialize.call(this)}}),Object.defineProperties(_,{...d().getStaticProperties("TextAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"contentType",new(a().SFString)("text/plain")),new(r())(h().inputOutput,"text",new(a().SFString))]),enumerable:!0}});const k=_,q=g().add("TextAnnotation",k);function H(t){L.call(this,t),this.addType(h().URLAnnotation)}Object.assign(Object.setPrototypeOf(H.prototype,L.prototype),{initialize(){L.prototype.initialize.call(this)}}),Object.defineProperties(H,{...d().getStaticProperties("URLAnnotation","Annotation",1,"children","4.0"),fieldDefinitions:{value:new(l())([new(r())(h().inputOutput,"metadata",new(a().SFNode)),new(r())(h().inputOutput,"enabled",new(a().SFBool)(!0)),new(r())(h().inputOutput,"annotationGroupID",new(a().SFString)),new(r())(h().inputOutput,"displayPolicy",new(a().SFString)("NEVER")),new(r())(h().inputOutput,"url",new(a().MFString))]),enumerable:!0}});const J=H,K=g().add("URLAnnotation",J);i().add({name:"Annotation",concreteNodes:[N,z,R,U,q,K],abstractNodes:[L]});g().add("AnnotationComponent",undefined)})();
@@ -1,5 +1,5 @@
1
- /* X_ITE v11.6.6 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.6.6")];
1
+ /* X_ITE v12.0.1 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.0.1")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope
@@ -163,6 +163,10 @@ function CADFace (executionContext)
163
163
  this .setCollisionObject (true);
164
164
  this .setShadowObject (true);
165
165
  this .setVisibleObject (true);
166
+
167
+ // Private properties
168
+
169
+ this .visibleObjects = [ ];
166
170
  }
167
171
 
168
172
  Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProductStructureChildNode .prototype),
@@ -186,6 +190,13 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
186
190
 
187
191
  return bbox .set (this ._bboxSize .getValue (), this ._bboxCenter .getValue ());
188
192
  },
193
+ getShapes (shapes, modelMatrix)
194
+ {
195
+ for (const visibleObject of this .visibleObjects)
196
+ visibleObject .getShapes (shapes, modelMatrix);
197
+
198
+ return shapes;
199
+ },
189
200
  requestRebuild ()
190
201
  {
191
202
  this ._rebuild .addEvent ();
@@ -226,8 +237,8 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
226
237
  this .pickableObject = null;
227
238
  this .collisionObject = null;
228
239
  this .shadowObject = null;
229
- this .visibleObject = null;
230
- this .bboxObject = null;
240
+
241
+ this .visibleObjects .length = 0;
231
242
 
232
243
  // Add node.
233
244
 
@@ -274,7 +285,7 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
274
285
  this .shadowObject = childNode;
275
286
 
276
287
  if (childNode .isVisibleObject ())
277
- this .visibleObject = childNode;
288
+ this .visibleObjects .push (childNode);
278
289
  }
279
290
 
280
291
  if (external_X_ITE_X3D_X3DCast_default() ((external_X_ITE_X3D_X3DConstants_default()).X3DBoundedObject, childNode))
@@ -283,7 +294,7 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
283
294
  childNode ._bboxDisplay .addInterest ("requestRebuild", this);
284
295
 
285
296
  if (childNode .isBBoxVisible ())
286
- this .bboxObject = childNode;
297
+ this .visibleObjects .push (childNode .getBBoxNode ());
287
298
  }
288
299
 
289
300
  break;
@@ -330,7 +341,7 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
330
341
  },
331
342
  set_visibleObjects__ ()
332
343
  {
333
- this .setVisibleObject (this .visibleObject || this .bboxObject);
344
+ this .setVisibleObject (this .visibleObjects .length);
334
345
  },
335
346
  traverse (type, renderObject)
336
347
  {
@@ -352,9 +363,14 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
352
363
  // so we do not need to add this node to the pickingHierarchy.
353
364
 
354
365
  if (this .getBrowser () .getPickable () .at (-1))
355
- this .visibleObject ?.traverse (type, renderObject);
366
+ {
367
+ for (const visibleObject of this .visibleObjects)
368
+ visibleObject .traverse (type, renderObject);
369
+ }
356
370
  else
371
+ {
357
372
  this .pickableObject ?.traverse (type, renderObject);
373
+ }
358
374
 
359
375
  return;
360
376
  }
@@ -370,8 +386,9 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
370
386
  }
371
387
  case (external_X_ITE_X3D_TraverseType_default()).DISPLAY:
372
388
  {
373
- this .visibleObject ?.traverse (type, renderObject);
374
- this .bboxObject ?.displayBBox (type, renderObject);
389
+ for (const visibleObject of this .visibleObjects)
390
+ visibleObject .traverse (type, renderObject);
391
+
375
392
  return;
376
393
  }
377
394
  }
@@ -1,2 +1,2 @@
1
- /* X_ITE v11.6.6 */
2
- const e=window[Symbol.for("X_ITE.X3D-11.6.6")];(()=>{var t={n:e=>{var i=e&&e.__esModule?()=>e.default:()=>e;return t.d(i,{a:i}),i},d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const i=e.Components;var n=t.n(i);const s=e.Fields;var o=t.n(s);const r=e.X3DFieldDefinition;var l=t.n(r);const d=e.FieldDefinitionArray;var u=t.n(d);const a=e.X3DNode;var c=t.n(a);const b=e.X3DGroupingNode;var p=t.n(b);const O=e.X3DChildNode;var h=t.n(O);const w=e.X3DConstants;var j=t.n(w);const y=e.Namespace;var S=t.n(y);function _(e){h().call(this,e),this.addType(j().X3DProductStructureChildNode)}Object.setPrototypeOf(_.prototype,h().prototype),Object.defineProperties(_,c().getStaticProperties("X3DProductStructureChildNode","CADGeometry",2));const m=_,F=S().add("X3DProductStructureChildNode",m);function f(e){p().call(this,e),F.call(this,e),this.addType(j().CADAssembly)}Object.setPrototypeOf(f.prototype,p().prototype),Object.defineProperties(f,{...c().getStaticProperties("CADAssembly","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOnly,"addChildren",new(o().MFNode)),new(l())(j().inputOnly,"removeChildren",new(o().MFNode)),new(l())(j().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const C=f,v=S().add("CADAssembly",C),g=e.X3DBoundedObject;var D=t.n(g);const N=e.TraverseType;var P=t.n(N);const x=e.X3DCast;var B=t.n(x);function I(e){F.call(this,e),D().call(this,e),this.addType(j().CADFace),this.addChildObjects(j().outputOnly,"rebuild",new(o().SFTime)),this.setBoundedObject(!0),this.setPointingObject(!0),this.setCollisionObject(!0),this.setShadowObject(!0),this.setVisibleObject(!0)}Object.assign(Object.setPrototypeOf(I.prototype,F.prototype),D().prototype,{initialize(){F.prototype.initialize.call(this),D().prototype.initialize.call(this),this._rebuild.addInterest("set_children__",this),this._bboxSize.addInterest("set_boundedObjects__",this),this._shape.addInterest("requestRebuild",this),this.set_children__()},getBBox(e,t){return this.isDefaultBBoxSize()?this.boundedObject?.getBBox(e,t)??e.set():e.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},requestRebuild(){this._rebuild.addEvent()},set_children__(){this.setChild(B()(j().X3DChildNode,this._shape))},setChild(e){if(this.childNode){const e=this.childNode;e._isBoundedObject.removeInterest("requestRebuild",this),e._isPointingObject.removeInterest("requestRebuild",this),e._isCameraObject.removeInterest("requestRebuild",this),e._isPickableObject.removeInterest("requestRebuild",this),e._isCollisionObject.removeInterest("requestRebuild",this),e._isShadowObject.removeInterest("requestRebuild",this),e._isVisibleObject.removeInterest("requestRebuild",this),B()(j().X3DBoundedObject,e)&&(e._display.removeInterest("requestRebuild",this),e._bboxDisplay.removeInterest("requestRebuild",this))}if(this.childNode=null,this.boundedObject=null,this.pointingObject=null,this.cameraObject=null,this.pickableObject=null,this.collisionObject=null,this.shadowObject=null,this.visibleObject=null,this.bboxObject=null,e){const t=e.getType();for(let i=t.length-1;i>=0;--i){switch(t[i]){case j().LOD:case j().Transform:case j().X3DShapeNode:e._isBoundedObject.addInterest("requestRebuild",this),e._isPointingObject.addInterest("requestRebuild",this),e._isCameraObject.addInterest("requestRebuild",this),e._isPickableObject.addInterest("requestRebuild",this),e._isCollisionObject.addInterest("requestRebuild",this),e._isShadowObject.addInterest("requestRebuild",this),e._isVisibleObject.addInterest("requestRebuild",this),this.childNode=e,e.isVisible()&&(e.isBoundedObject()&&(this.boundedObject=e),e.isPointingObject()&&(this.pointingObject=e),e.isCameraObject()&&(this.cameraObject=e),e.isPickableObject()&&(this.pickableObject=e),e.isCollisionObject()&&(this.collisionObject=e),e.isShadowObject()&&(this.shadowObject=e),e.isVisibleObject()&&(this.visibleObject=e)),B()(j().X3DBoundedObject,e)&&(e._display.addInterest("requestRebuild",this),e._bboxDisplay.addInterest("requestRebuild",this),e.isBBoxVisible()&&(this.bboxObject=e));break;default:continue}break}}this.set_pointingObjects__(),this.set_cameraObjects__(),this.set_pickableObjects__(),this.set_collisionObjects__(),this.set_shadowObjects__(),this.set_visibleObjects__(),this.set_boundedObjects__()},set_boundedObjects__(){this.setBoundedObject(this.boundedObject||!this.isDefaultBBoxSize())},set_pointingObjects__(){this.setPointingObject(this.pointingObject)},set_cameraObjects__(){this.setCameraObject(this.cameraObject)},set_pickableObjects__(){this.setPickableObject(this.getTransformSensors().size||this.pickableObject)},set_collisionObjects__(){this.setCollisionObject(this.collisionObject)},set_shadowObjects__(){this.setShadowObject(this.shadowObject)},set_visibleObjects__(){this.setVisibleObject(this.visibleObject||this.bboxObject)},traverse(e,t){switch(e){case P().POINTER:return void this.pointingObject?.traverse(e,t);case P().CAMERA:return void this.cameraObject?.traverse(e,t);case P().PICKING:return void(this.getBrowser().getPickable().at(-1)?this.visibleObject?.traverse(e,t):this.pickableObject?.traverse(e,t));case P().COLLISION:return void this.collisionObject?.traverse(e,t);case P().SHADOW:return void this.shadowObject?.traverse(e,t);case P().DISPLAY:return this.visibleObject?.traverse(e,t),void this.bboxObject?.displayBBox(e,t)}},dispose(){D().prototype.dispose.call(this),F.prototype.dispose.call(this)}}),Object.defineProperties(I,{...c().getStaticProperties("CADFace","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOutput,"shape",new(o().SFNode))]),enumerable:!0}});const z=I,V=S().add("CADFace",z);function A(e){p().call(this,e),this.addType(j().CADLayer)}Object.setPrototypeOf(A.prototype,p().prototype),Object.defineProperties(A,{...c().getStaticProperties("CADLayer","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOnly,"addChildren",new(o().MFNode)),new(l())(j().inputOnly,"removeChildren",new(o().MFNode)),new(l())(j().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const R=A,q=S().add("CADLayer",R),T=e.X3DTransformNode;var X=t.n(T);function k(e){X().call(this,e),F.call(this,e),this.addType(j().CADPart)}Object.setPrototypeOf(k.prototype,X().prototype),Object.defineProperties(k,{...c().getStaticProperties("CADPart","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"translation",new(o().SFVec3f)),new(l())(j().inputOutput,"rotation",new(o().SFRotation)),new(l())(j().inputOutput,"scale",new(o().SFVec3f)(1,1,1)),new(l())(j().inputOutput,"scaleOrientation",new(o().SFRotation)),new(l())(j().inputOutput,"center",new(o().SFVec3f)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOnly,"addChildren",new(o().MFNode)),new(l())(j().inputOnly,"removeChildren",new(o().MFNode)),new(l())(j().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const M=k,G=S().add("CADPart",M),L=e.X3DComposedGeometryNode;var Q=t.n(L);function E(e){Q().call(this,e),this.addType(j().IndexedQuadSet)}Object.assign(Object.setPrototypeOf(E.prototype,Q().prototype),{initialize(){Q().prototype.initialize.call(this),this._set_index.addFieldInterest(this._index)},getTriangleIndex:(()=>{const e=[0,1,2,0,2,3];return function(t){const i=t%6;return(t-i)/6*4+e[i]}})(),getPolygonIndex(e){return this._index[e]},getVerticesPerPolygon:()=>4,getNumVertices(){return this.checkVertexCount(this._index.length,4)},build(){const e=this.getNumVertices();Q().prototype.build.call(this,4,e,6,e/4*6)}}),Object.defineProperties(E,{...c().getStaticProperties("IndexedQuadSet","CADGeometry",1,"geometry","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOnly,"set_index",new(o().MFInt32)),new(l())(j().initializeOnly,"solid",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"ccw",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"colorPerVertex",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"normalPerVertex",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"index",new(o().MFInt32)),new(l())(j().inputOutput,"attrib",new(o().MFNode)),new(l())(j().inputOutput,"fogCoord",new(o().SFNode)),new(l())(j().inputOutput,"color",new(o().SFNode)),new(l())(j().inputOutput,"texCoord",new(o().SFNode)),new(l())(j().inputOutput,"tangent",new(o().SFNode)),new(l())(j().inputOutput,"normal",new(o().SFNode)),new(l())(j().inputOutput,"coord",new(o().SFNode))]),enumerable:!0}});const H=E,K=S().add("IndexedQuadSet",H);function W(e){Q().call(this,e),this.addType(j().QuadSet)}Object.assign(Object.setPrototypeOf(W.prototype,Q().prototype),{getTriangleIndex:(()=>{const e=[0,1,2,0,2,3];return function(t){const i=t%6;return(t-i)/6*4+e[i]}})(),getVerticesPerPolygon:()=>4,getNumVertices(){return this.checkVertexCount(this.getCoord()?.getSize()??0,4)},build(){const e=this.getNumVertices();Q().prototype.build.call(this,4,e,6,e/4*6)},createNormals(e,t,i){return this.createFaceNormals(e,t,i)}}),Object.defineProperties(W,{...c().getStaticProperties("QuadSet","CADGeometry",1,"geometry","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().initializeOnly,"solid",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"ccw",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"colorPerVertex",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"normalPerVertex",new(o().SFBool)(!0)),new(l())(j().inputOutput,"attrib",new(o().MFNode)),new(l())(j().inputOutput,"fogCoord",new(o().SFNode)),new(l())(j().inputOutput,"color",new(o().SFNode)),new(l())(j().inputOutput,"texCoord",new(o().SFNode)),new(l())(j().inputOutput,"tangent",new(o().SFNode)),new(l())(j().inputOutput,"normal",new(o().SFNode)),new(l())(j().inputOutput,"coord",new(o().SFNode))]),enumerable:!0}});const Y=W,J=S().add("QuadSet",Y);n().add({name:"CADGeometry",concreteNodes:[v,V,q,G,K,J],abstractNodes:[F]});S().add("CADGeometryComponent",undefined)})();
1
+ /* X_ITE v12.0.1 */
2
+ const e=window[Symbol.for("X_ITE.X3D-12.0.1")];(()=>{var t={n:e=>{var i=e&&e.__esModule?()=>e.default:()=>e;return t.d(i,{a:i}),i},d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const i=e.Components;var n=t.n(i);const s=e.Fields;var o=t.n(s);const r=e.X3DFieldDefinition;var l=t.n(r);const d=e.FieldDefinitionArray;var u=t.n(d);const a=e.X3DNode;var c=t.n(a);const b=e.X3DGroupingNode;var p=t.n(b);const O=e.X3DChildNode;var h=t.n(O);const w=e.X3DConstants;var j=t.n(w);const y=e.Namespace;var S=t.n(y);function _(e){h().call(this,e),this.addType(j().X3DProductStructureChildNode)}Object.setPrototypeOf(_.prototype,h().prototype),Object.defineProperties(_,c().getStaticProperties("X3DProductStructureChildNode","CADGeometry",2));const m=_,F=S().add("X3DProductStructureChildNode",m);function f(e){p().call(this,e),F.call(this,e),this.addType(j().CADAssembly)}Object.setPrototypeOf(f.prototype,p().prototype),Object.defineProperties(f,{...c().getStaticProperties("CADAssembly","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOnly,"addChildren",new(o().MFNode)),new(l())(j().inputOnly,"removeChildren",new(o().MFNode)),new(l())(j().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const g=f,C=S().add("CADAssembly",g),v=e.X3DBoundedObject;var D=t.n(v);const N=e.TraverseType;var P=t.n(N);const x=e.X3DCast;var B=t.n(x);function I(e){F.call(this,e),D().call(this,e),this.addType(j().CADFace),this.addChildObjects(j().outputOnly,"rebuild",new(o().SFTime)),this.setBoundedObject(!0),this.setPointingObject(!0),this.setCollisionObject(!0),this.setShadowObject(!0),this.setVisibleObject(!0),this.visibleObjects=[]}Object.assign(Object.setPrototypeOf(I.prototype,F.prototype),D().prototype,{initialize(){F.prototype.initialize.call(this),D().prototype.initialize.call(this),this._rebuild.addInterest("set_children__",this),this._bboxSize.addInterest("set_boundedObjects__",this),this._shape.addInterest("requestRebuild",this),this.set_children__()},getBBox(e,t){return this.isDefaultBBoxSize()?this.boundedObject?.getBBox(e,t)??e.set():e.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},getShapes(e,t){for(const i of this.visibleObjects)i.getShapes(e,t);return e},requestRebuild(){this._rebuild.addEvent()},set_children__(){this.setChild(B()(j().X3DChildNode,this._shape))},setChild(e){if(this.childNode){const e=this.childNode;e._isBoundedObject.removeInterest("requestRebuild",this),e._isPointingObject.removeInterest("requestRebuild",this),e._isCameraObject.removeInterest("requestRebuild",this),e._isPickableObject.removeInterest("requestRebuild",this),e._isCollisionObject.removeInterest("requestRebuild",this),e._isShadowObject.removeInterest("requestRebuild",this),e._isVisibleObject.removeInterest("requestRebuild",this),B()(j().X3DBoundedObject,e)&&(e._display.removeInterest("requestRebuild",this),e._bboxDisplay.removeInterest("requestRebuild",this))}if(this.childNode=null,this.boundedObject=null,this.pointingObject=null,this.cameraObject=null,this.pickableObject=null,this.collisionObject=null,this.shadowObject=null,this.visibleObjects.length=0,e){const t=e.getType();for(let i=t.length-1;i>=0;--i){switch(t[i]){case j().LOD:case j().Transform:case j().X3DShapeNode:e._isBoundedObject.addInterest("requestRebuild",this),e._isPointingObject.addInterest("requestRebuild",this),e._isCameraObject.addInterest("requestRebuild",this),e._isPickableObject.addInterest("requestRebuild",this),e._isCollisionObject.addInterest("requestRebuild",this),e._isShadowObject.addInterest("requestRebuild",this),e._isVisibleObject.addInterest("requestRebuild",this),this.childNode=e,e.isVisible()&&(e.isBoundedObject()&&(this.boundedObject=e),e.isPointingObject()&&(this.pointingObject=e),e.isCameraObject()&&(this.cameraObject=e),e.isPickableObject()&&(this.pickableObject=e),e.isCollisionObject()&&(this.collisionObject=e),e.isShadowObject()&&(this.shadowObject=e),e.isVisibleObject()&&this.visibleObjects.push(e)),B()(j().X3DBoundedObject,e)&&(e._display.addInterest("requestRebuild",this),e._bboxDisplay.addInterest("requestRebuild",this),e.isBBoxVisible()&&this.visibleObjects.push(e.getBBoxNode()));break;default:continue}break}}this.set_pointingObjects__(),this.set_cameraObjects__(),this.set_pickableObjects__(),this.set_collisionObjects__(),this.set_shadowObjects__(),this.set_visibleObjects__(),this.set_boundedObjects__()},set_boundedObjects__(){this.setBoundedObject(this.boundedObject||!this.isDefaultBBoxSize())},set_pointingObjects__(){this.setPointingObject(this.pointingObject)},set_cameraObjects__(){this.setCameraObject(this.cameraObject)},set_pickableObjects__(){this.setPickableObject(this.getTransformSensors().size||this.pickableObject)},set_collisionObjects__(){this.setCollisionObject(this.collisionObject)},set_shadowObjects__(){this.setShadowObject(this.shadowObject)},set_visibleObjects__(){this.setVisibleObject(this.visibleObjects.length)},traverse(e,t){switch(e){case P().POINTER:return void this.pointingObject?.traverse(e,t);case P().CAMERA:return void this.cameraObject?.traverse(e,t);case P().PICKING:if(this.getBrowser().getPickable().at(-1))for(const i of this.visibleObjects)i.traverse(e,t);else this.pickableObject?.traverse(e,t);return;case P().COLLISION:return void this.collisionObject?.traverse(e,t);case P().SHADOW:return void this.shadowObject?.traverse(e,t);case P().DISPLAY:for(const i of this.visibleObjects)i.traverse(e,t);return}},dispose(){D().prototype.dispose.call(this),F.prototype.dispose.call(this)}}),Object.defineProperties(I,{...c().getStaticProperties("CADFace","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOutput,"shape",new(o().SFNode))]),enumerable:!0}});const z=I,V=S().add("CADFace",z);function A(e){p().call(this,e),this.addType(j().CADLayer)}Object.setPrototypeOf(A.prototype,p().prototype),Object.defineProperties(A,{...c().getStaticProperties("CADLayer","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOnly,"addChildren",new(o().MFNode)),new(l())(j().inputOnly,"removeChildren",new(o().MFNode)),new(l())(j().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const R=A,q=S().add("CADLayer",R),T=e.X3DTransformNode;var X=t.n(T);function k(e){X().call(this,e),F.call(this,e),this.addType(j().CADPart)}Object.setPrototypeOf(k.prototype,X().prototype),Object.defineProperties(k,{...c().getStaticProperties("CADPart","CADGeometry",2,"children","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOutput,"name",new(o().SFString)),new(l())(j().inputOutput,"translation",new(o().SFVec3f)),new(l())(j().inputOutput,"rotation",new(o().SFRotation)),new(l())(j().inputOutput,"scale",new(o().SFVec3f)(1,1,1)),new(l())(j().inputOutput,"scaleOrientation",new(o().SFRotation)),new(l())(j().inputOutput,"center",new(o().SFVec3f)),new(l())(j().inputOutput,"visible",new(o().SFBool)(!0)),new(l())(j().inputOutput,"bboxDisplay",new(o().SFBool)),new(l())(j().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(l())(j().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(l())(j().inputOnly,"addChildren",new(o().MFNode)),new(l())(j().inputOnly,"removeChildren",new(o().MFNode)),new(l())(j().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const M=k,G=S().add("CADPart",M),L=e.X3DComposedGeometryNode;var Q=t.n(L);function E(e){Q().call(this,e),this.addType(j().IndexedQuadSet)}Object.assign(Object.setPrototypeOf(E.prototype,Q().prototype),{initialize(){Q().prototype.initialize.call(this),this._set_index.addFieldInterest(this._index)},getTriangleIndex:(()=>{const e=[0,1,2,0,2,3];return function(t){const i=t%6;return(t-i)/6*4+e[i]}})(),getPolygonIndex(e){return this._index[e]},getVerticesPerPolygon:()=>4,getNumVertices(){return this.checkVertexCount(this._index.length,4)},build(){const e=this.getNumVertices();Q().prototype.build.call(this,4,e,6,e/4*6)}}),Object.defineProperties(E,{...c().getStaticProperties("IndexedQuadSet","CADGeometry",1,"geometry","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().inputOnly,"set_index",new(o().MFInt32)),new(l())(j().initializeOnly,"solid",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"ccw",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"colorPerVertex",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"normalPerVertex",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"index",new(o().MFInt32)),new(l())(j().inputOutput,"attrib",new(o().MFNode)),new(l())(j().inputOutput,"fogCoord",new(o().SFNode)),new(l())(j().inputOutput,"color",new(o().SFNode)),new(l())(j().inputOutput,"texCoord",new(o().SFNode)),new(l())(j().inputOutput,"tangent",new(o().SFNode)),new(l())(j().inputOutput,"normal",new(o().SFNode)),new(l())(j().inputOutput,"coord",new(o().SFNode))]),enumerable:!0}});const H=E,K=S().add("IndexedQuadSet",H);function W(e){Q().call(this,e),this.addType(j().QuadSet)}Object.assign(Object.setPrototypeOf(W.prototype,Q().prototype),{getTriangleIndex:(()=>{const e=[0,1,2,0,2,3];return function(t){const i=t%6;return(t-i)/6*4+e[i]}})(),getVerticesPerPolygon:()=>4,getNumVertices(){return this.checkVertexCount(this.getCoord()?.getSize()??0,4)},build(){const e=this.getNumVertices();Q().prototype.build.call(this,4,e,6,e/4*6)},createNormals(e,t,i){return this.createFaceNormals(e,t,i)}}),Object.defineProperties(W,{...c().getStaticProperties("QuadSet","CADGeometry",1,"geometry","3.1"),fieldDefinitions:{value:new(u())([new(l())(j().inputOutput,"metadata",new(o().SFNode)),new(l())(j().initializeOnly,"solid",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"ccw",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"colorPerVertex",new(o().SFBool)(!0)),new(l())(j().initializeOnly,"normalPerVertex",new(o().SFBool)(!0)),new(l())(j().inputOutput,"attrib",new(o().MFNode)),new(l())(j().inputOutput,"fogCoord",new(o().SFNode)),new(l())(j().inputOutput,"color",new(o().SFNode)),new(l())(j().inputOutput,"texCoord",new(o().SFNode)),new(l())(j().inputOutput,"tangent",new(o().SFNode)),new(l())(j().inputOutput,"normal",new(o().SFNode)),new(l())(j().inputOutput,"coord",new(o().SFNode))]),enumerable:!0}});const Y=W,J=S().add("QuadSet",Y);n().add({name:"CADGeometry",concreteNodes:[C,V,q,G,K,J],abstractNodes:[F]});S().add("CADGeometryComponent",undefined)})();
@@ -1,5 +1,5 @@
1
- /* X_ITE v11.6.6 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.6.6")];
1
+ /* X_ITE v12.0.1 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.0.1")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ var __webpack_modules__ = ({
@@ -1,2 +1,2 @@
1
- /* X_ITE v11.6.6 */
2
- const e=window[Symbol.for("X_ITE.X3D-11.6.6")];(()=>{var t={254:t=>{t.exports=e.jquery}},r={};function i(e){var s=r[e];if(void 0!==s)return s.exports;var a=r[e]={exports:{}};return t[e](a,a.exports,i),a.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);const s=e.Components;var a=i.n(s);const n=e.Namespace;var o=i.n(n);const u=o().add("Panorama2.fs","#version 300 es\nprecision highp float;precision highp int;precision highp sampler2D;const float M_PI=3.1415926535897932384626433832795;in vec2 texCoord;out vec4 x3d_FragColor;uniform sampler2D x3d_PanoramaTextureEXT;uniform int x3d_CurrentFaceEXT;vec3 uvToXYZ(const in int face,const in vec2 uv){switch(face){case 0:return vec3(1.,uv.y,uv.x);case 1:return vec3(-1.,uv.y,-uv.x);case 2:return vec3(uv.x,uv.y,-1.);case 3:return vec3(-uv.x,uv.y,1.);case 4:return vec3(uv.y,-1.,uv.x);default:return vec3(-uv.y,1.,uv.x);}}vec2 dirToUV(const in vec3 dir){return vec2(.5+.5*atan(dir.z,dir.x)/M_PI,1.-acos(dir.y)/M_PI);}vec3 panoramaToCubeMap(const in int face,const in vec2 texCoord){vec3 scan=uvToXYZ(face,texCoord);vec3 direction=normalize(scan);vec2 src=dirToUV(direction);return texture(x3d_PanoramaTextureEXT,src).rgb;}void main(){x3d_FragColor=vec4(panoramaToCubeMap(x3d_CurrentFaceEXT,texCoord),1.);}"),h=Symbol();function d(){}Object.assign(d.prototype,{getPanoramaShader(){return this[h]??=this.createShader("Panorama","FullScreen",`data:x-shader/x-fragment,${u}`,[],["x3d_PanoramaTextureEXT","x3d_CurrentFaceEXT"])}});const T=d,p=o().add("X3DCubeMapTexturingContext",T),c=e.Fields;var g=i.n(c);const x=e.X3DFieldDefinition;var l=i.n(x);const _=e.FieldDefinitionArray;var E=i.n(_);const f=e.X3DNode;var m=i.n(f);const w=e.X3DSingleTextureNode;var b=i.n(w);const R=e.X3DConstants;var M=i.n(R);function S(e){b().call(this,e),this.addType(M().X3DEnvironmentTextureNode);const t=this.getBrowser().getContext();this.target=t.TEXTURE_CUBE_MAP,this.targets=[t.TEXTURE_CUBE_MAP_POSITIVE_Z,t.TEXTURE_CUBE_MAP_NEGATIVE_Z,t.TEXTURE_CUBE_MAP_NEGATIVE_X,t.TEXTURE_CUBE_MAP_POSITIVE_X,t.TEXTURE_CUBE_MAP_POSITIVE_Y,t.TEXTURE_CUBE_MAP_NEGATIVE_Y],this.size=1,this.levels=0}Object.assign(Object.setPrototypeOf(S.prototype,b().prototype),{getTarget(){return this.target},getTextureType:()=>4,getTargets(){return this.targets},getSize(){return this.size},setSize(e){this.size=e,this.levels=Math.floor(Math.log2(Math.max(e,1)))},getLevels(){return this.levels},clearTexture:(()=>{const e=new Uint8Array([255,255,255,255]);return function(){const t=this.getBrowser().getContext();t.bindTexture(this.getTarget(),this.getTexture());for(const r of this.getTargets())t.texImage2D(r,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,e);this.setSize(1),this.setTransparent(!1),this.updateTextureParameters()}})(),updateTextureParameters(){b().prototype.updateTextureParameters.call(this,this.target,this._textureProperties.getValue(),this.texturePropertiesNode,this.size,this.size,!1,!1,!1)},setShaderUniforms(e,t,r,i=t.x3d_Texture[0]){const s=this.getBrowser().getTextureUnit();e.activeTexture(e.TEXTURE0+s),e.bindTexture(e.TEXTURE_CUBE_MAP,this.getTexture()),e.uniform1i(i.textureCube,s)}}),Object.defineProperties(S,m().getStaticProperties("X3DEnvironmentTextureNode","CubeMapTexturing",1));const v=S,C=o().add("X3DEnvironmentTextureNode",v),U=e.X3DCast;var y=i.n(U);const O=e.BitSet;var A=i.n(O);function P(e){C.call(this,e),this.addType(M().ComposedCubeMapTexture),this.addChildObjects(M().outputOnly,"update",new(g().SFTime)),e.getSpecificationVersion()<=3.3&&(this.addAlias("front",this._frontTexture),this.addAlias("back",this._backTexture),this.addAlias("left",this._leftTexture),this.addAlias("right",this._rightTexture),this.addAlias("top",this._topTexture),this.addAlias("bottom",this._bottomTexture)),this.textureNodes=[null,null,null,null,null,null],this.textureBits=new(A())}Object.assign(Object.setPrototypeOf(P.prototype,C.prototype),{initialize(){C.prototype.initialize.call(this);const e=this.getBrowser().getContext();this.frameBuffer=e.createFramebuffer(),this.clearTexture(),this._frontTexture.addInterest("set_texture__",this,0),this._backTexture.addInterest("set_texture__",this,1),this._leftTexture.addInterest("set_texture__",this,2),this._rightTexture.addInterest("set_texture__",this,3),this._topTexture.addInterest("set_texture__",this,5),this._bottomTexture.addInterest("set_texture__",this,4),this._update.addInterest("update",this),this.set_texture__(0,this._frontTexture),this.set_texture__(1,this._backTexture),this.set_texture__(2,this._leftTexture),this.set_texture__(3,this._rightTexture),this.set_texture__(4,this._topTexture),this.set_texture__(5,this._bottomTexture)},set_texture__(e,t){let r=this.textureNodes[e];r?.removeInterest(`set_loadState${e}__`,this),r=this.textureNodes[e]=y()(M().X3DTexture2DNode,t),r?.addInterest(`set_loadState${e}__`,this,e,r),this.set_loadState__(e,r)},set_loadState__(e,t){this.setTextureBit(e,t?.checkLoadState()),this._update.addEvent()},setTextureBit(e,t){this.textureBits.set(e,t===M().COMPLETE_STATE)},isComplete(){if(63!==+this.textureBits)return!1;const e=this.textureNodes,t=e[0].getWidth();for(const r of e){if(r.getWidth()!==t)return!1;if(r.getHeight()!==t)return!1}return!0},update(){if(this.isComplete()){const e=this.getBrowser().getContext(),t=this.textureNodes,r=t[0].getWidth();if(r!==this.getSize()){const t=new Uint8Array(r*r*4);e.bindTexture(this.getTarget(),this.getTexture());for(let i=0;i<6;++i)e.texImage2D(this.getTargets()[i],0,e.RGBA,r,r,0,e.RGBA,e.UNSIGNED_BYTE,t);this.setSize(r),this.updateTextureParameters()}e.bindFramebuffer(e.FRAMEBUFFER,this.frameBuffer);for(let i=0;i<6;++i){const s=t[i];if(e.bindTexture(e.TEXTURE_2D,s.getTexture()),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,s.getTexture(),0),e.bindTexture(this.getTarget(),this.getTexture()),1===s.getTextureType())e.copyTexSubImage2D(this.getTargets()[i],0,0,0,0,0,r,r);else for(let t=0;t<r;++t)e.copyTexSubImage2D(this.getTargets()[i],0,0,r-t-1,0,t,r,1)}this.setTransparent(t.some(e=>e.isTransparent())),this.setLinear(t.some(e=>e.isLinear())),this.setMipMaps(t.every(e=>e.canMipMaps())),this.updateTextureParameters(),this.addNodeEvent()}else this.clearTexture(),this.addNodeEvent()}}),Object.defineProperties(P,{...m().getStaticProperties("ComposedCubeMapTexture","CubeMapTexturing",1,"texture","3.1"),fieldDefinitions:{value:new(E())([new(l())(M().inputOutput,"metadata",new(g().SFNode)),new(l())(M().inputOutput,"description",new(g().SFString)),new(l())(M().inputOutput,"frontTexture",new(g().SFNode)),new(l())(M().inputOutput,"backTexture",new(g().SFNode)),new(l())(M().inputOutput,"leftTexture",new(g().SFNode)),new(l())(M().inputOutput,"rightTexture",new(g().SFNode)),new(l())(M().inputOutput,"topTexture",new(g().SFNode)),new(l())(M().inputOutput,"bottomTexture",new(g().SFNode)),new(l())(M().initializeOnly,"textureProperties",new(g().SFNode))]),enumerable:!0}});for(let e=0;e<6;++e)P.prototype[`set_loadState${e}__`]=function(e,t){this.set_loadState__(e,t)};const F=P,I=o().add("ComposedCubeMapTexture",F),N=e.X3DBaseNode;var D=i.n(N);const B=e.X3DRenderObject;var X=i.n(B);const L=e.TraverseType;var z=i.n(L);function V(e,t,r){D().call(this,e),X().call(this,e),this.renderObject=t,this.node=r,this.framebuffers=[]}Object.assign(Object.setPrototypeOf(V.prototype,D().prototype),X().prototype,{initialize(){D().prototype.initialize.call(this),X().prototype.initialize.call(this)},isIndependent:()=>!1,getNode(){return this.node},getLayer(){return this.renderObject.getLayer()},getBackground(){return this.renderObject.getBackground()},getFog(){return this.renderObject.getFog()},getNavigationInfo(){return this.renderObject.getNavigationInfo()},getViewpoint(){return this.renderObject.getViewpoint()},getViewpointStack(){return this.renderObject.getViewpointStack()},getLightContainer(){return this.renderObject.getLights()[this.lightIndex++]},getFramebuffers(){return this.framebuffers},setFramebuffer(e){this.framebuffers[0]=e},render(e,t,r){switch(e){case z().COLLISION:case z().SHADOW:X().prototype.render.call(this,e,t,r);break;case z().DISPLAY:this.lightIndex=0,X().prototype.render.call(this,e,t,r);for(const e of this.renderObject.getLights())e.modelViewMatrix.pop()}}});for(const e of Object.keys(V.prototype))Object.defineProperty(V.prototype,e,{enumerable:!1});const j=V,G=o().add("DependentRenderer",j),k=e.TextureBuffer;var Y=i.n(k);const W=e.Camera;var H=i.n(W);const $=e.ViewVolume;var K=i.n($);const Z=e.Rotation4;var q=i.n(Z);const J=e.Vector3;var Q=i.n(J);const ee=e.Vector4;var te=i.n(ee);const re=e.Matrix4;var ie=i.n(re);const se=e.Algorithm;var ae=i.n(se);function ne(e){C.call(this,e),this.addType(M().GeneratedCubeMapTexture),this.dependentRenderers=new WeakMap,this.projectionMatrix=new(ie()),this.modelMatrix=new(ie()),this.viewVolume=new(K())}Object.assign(Object.setPrototypeOf(ne.prototype,C.prototype),{initialize(){C.prototype.initialize.call(this),this.clearTexture(),this._size.addInterest("set_size__",this),this.set_size__()},set_size__(){const e=this.getBrowser().getContext(),t=this._size.getValue();if(t>0){const r=new Uint8Array(t*t*4);e.bindTexture(this.getTarget(),this.getTexture());for(const i of this.getTargets())e.texImage2D(i,0,e.RGBA,t,t,0,e.RGBA,e.UNSIGNED_BYTE,r);this.updateTextureParameters(),this.viewport=new(te())(0,0,t,t),this.frameBuffer=new(Y())({browser:this.getBrowser(),width:t,height:t}),this.setSize(t)}else this.frameBuffer=null,this.setSize(0)},traverse(e,t){"NONE"!==this._update.getValue()&&t.isIndependent()&&this.frameBuffer&&(t.getGeneratedCubeMapTextures().push(this),this.modelMatrix.assign(t.getModelViewMatrix().get()).multRight(t.getCameraSpaceMatrix().get()))},renderTexture:(()=>{const e=[new(q())(Q().zAxis,new(Q())(0,0,-1)),new(q())(Q().zAxis,new(Q())(0,0,1)),new(q())(Q().zAxis,new(Q())(1,0,0)),new(q())(Q().zAxis,new(Q())(-1,0,0)),new(q())(Q().zAxis,new(Q())(0,-1,0)),new(q())(Q().zAxis,new(Q())(0,1,0))],t=[new(Q())(-1,-1,1),new(Q())(-1,-1,1),new(Q())(-1,-1,1),new(Q())(-1,-1,1),new(Q())(1,1,1),new(Q())(1,1,1)],r=new(ie());return function(i){if(!this.dependentRenderers.has(i)){const e=new G(this.getExecutionContext(),i,this);e.setup(),this.dependentRenderers.set(i,e)}const s=this.dependentRenderers.get(i),a=this.getBrowser(),n=i.getLayer(),o=a.getContext(),u=s.getBackground(),h=s.getNavigationInfo(),d=s.getViewpoint(),T=a.getHeadlight(),p=h._headlight.getValue(),c=d.getNearDistance(h),g=d.getFarDistance(h),x=H().perspective(ae().radians(90),c,g,1,1,this.projectionMatrix),l=this.frameBuffer.getWidth(),_=this.frameBuffer.getHeight();this.setTransparent(u.isTransparent()),s.setFramebuffer(this.frameBuffer),s.getViewVolumes().push(this.viewVolume.set(x,this.viewport,this.viewport)),s.getProjectionMatrix().push(x),o.bindTexture(this.getTarget(),this.getTexture());for(let i=0;i<6;++i)o.clear(o.COLOR_BUFFER_BIT),s.getCameraSpaceMatrix().push(this.modelMatrix),s.getCameraSpaceMatrix().rotate(e[i]),s.getCameraSpaceMatrix().scale(t[i]),s.getViewMatrix().push(r.assign(s.getCameraSpaceMatrix().get()).inverse()),s.getModelViewMatrix().push(r),p&&(T.modelViewMatrix.push(r),T.modelViewMatrix.multLeft(d.getCameraSpaceMatrix())),n.traverse(z().DISPLAY,s),p&&T.modelViewMatrix.pop(),s.getModelViewMatrix().pop(),s.getCameraSpaceMatrix().pop(),s.getViewMatrix().pop(),o.bindTexture(this.getTarget(),this.getTexture()),o.copyTexSubImage2D(this.getTargets()[i],0,0,0,0,0,l,_);this.updateTextureParameters(),s.getProjectionMatrix().pop(),s.getViewVolumes().pop(),"NEXT_FRAME_ONLY"===this._update.getValue()&&(this._update="NONE")}})(),setShaderUniforms:(()=>{const e=new Float32Array(16);return function(t,r,i,s){C.prototype.setShaderUniforms.call(this,t,r,i,s),i.getNode()===this&&t.uniformMatrix4fv(r.x3d_ModelViewMatrix,!1,e)}})()}),Object.defineProperties(ne,{...m().getStaticProperties("GeneratedCubeMapTexture","CubeMapTexturing",3,"texture","3.0"),fieldDefinitions:{value:new(E())([new(l())(M().inputOutput,"metadata",new(g().SFNode)),new(l())(M().inputOutput,"description",new(g().SFString)),new(l())(M().inputOutput,"update",new(g().SFString)("NONE")),new(l())(M().initializeOnly,"size",new(g().SFInt32)(128)),new(l())(M().initializeOnly,"textureProperties",new(g().SFNode))]),enumerable:!0}});const oe=ne,ue=o().add("GeneratedCubeMapTexture",oe),he=e.X3DUrlObject;var de=i.n(he);const Te=e.Vector2;var pe=i.n(Te);const ce=e.DEVELOPMENT;var ge=i.n(ce),xe=i(254);function le(e){C.call(this,e),de().call(this,e),this.addType(M().ImageCubeMapTexture),this.image=xe("<img></img>"),this.urlStack=new(g().MFString)}Object.assign(Object.setPrototypeOf(le.prototype,C.prototype),de().prototype,{initialize(){C.prototype.initialize.call(this),de().prototype.initialize.call(this),this.clearTexture(),this.image.on("load",this.setImage.bind(this)).on("abort error",this.setError.bind(this)).attr("crossorigin","anonymous"),this.requestImmediateLoad().catch(Function.prototype)},unloadData(){this.clearTexture()},loadData(){this.urlStack.setValue(this._url),this.loadNext()},loadNext(){if(0===this.urlStack.length)return this.clearTexture(),this.setLoadState(M().FAILED_STATE),void this.addNodeEvent();this.URL=new URL(this.urlStack.shift(),this.getExecutionContext().getBaseURL()),this.URL.pathname.match(/\.ktx2?(?:\.gz)?$/)||this.URL.href.match(/^data:image\/ktx2[;,]/)?(this.setLinear(!0),this.setMipMaps(!1),this.getBrowser().getKTXDecoder().then(e=>e.loadKTXFromURL(this.URL,this.getCache())).then(e=>this.setKTXTexture(e)).catch(e=>this.setError({type:e.message}))):(this.setLinear(!1),this.setMipMaps(!0),"data:"!==this.URL.protocol&&(this.getCache()||this.URL.searchParams.set("_",Date.now())),this.image.attr("src",this.URL))},setError(e){"data:"!==this.URL.protocol&&console.warn(`Error loading image '${decodeURI(this.URL)}':`,e.type),this.loadNext()},setKTXTexture(e){if(e.target!==this.getTarget())return this.setError({type:"Invalid KTX texture target, must be 'TEXTURE_CUBE_MAP'."});ge()&&"data:"!==this.URL.protocol&&console.info(`Done loading image cube map texture '${decodeURI(this.URL)}'.`);try{this.setTexture(e),this.setTransparent(!1),this.setSize(e.baseWidth),this.updateTextureParameters(),this.setLoadState(M().COMPLETE_STATE),this.addNodeEvent()}catch(e){this.setError({type:e.message})}},setImage(){ge()&&"data:"!==this.URL.protocol&&console.info(`Done loading image cube map texture '${decodeURI(this.URL)}'.`);try{const e=this.getBrowser().getContext(),t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,this.image[0]),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),this.imageToCubeMap(t,this.image.prop("width"),this.image.prop("height"),!1),this.setLoadState(M().COMPLETE_STATE),this.addNodeEvent()}catch(e){this.setError({type:e.message})}},imageToCubeMap(e,t,r){const i=t/r;Math.abs(i-4/3)<.01&&this.skyBoxToCubeMap(e,t,r),Math.abs(i-2)<.01&&this.panoramaToCubeMap(e,t,r),this.updateTextureParameters()},skyBoxToCubeMap:(()=>{const e=[new(pe())(1,1),new(pe())(3,1),new(pe())(0,1),new(pe())(2,1),new(pe())(1,0),new(pe())(1,2)];return function(t,r,i){const s=this.getBrowser().getContext(),a=s.createFramebuffer(),n=Math.floor(r/4),o=Math.floor(i/3),u=new Uint8Array(n*o*4);s.bindTexture(this.getTarget(),this.getTexture());for(let e=0;e<6;++e)s.texImage2D(this.getTargets()[e],0,s.RGBA,n,o,0,s.RGBA,s.UNSIGNED_BYTE,null);s.bindFramebuffer(s.FRAMEBUFFER,a),s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,s.TEXTURE_2D,t,0);let h=!1;s.bindTexture(this.getTarget(),this.getTexture());for(let t=0;t<6;++t)s.copyTexSubImage2D(this.getTargets()[t],0,0,0,e[t].x*n,e[t].y*o,n,o),h||(s.readPixels(e[t].x*n,e[t].y*o,n,o,s.RGBA,s.UNSIGNED_BYTE,u),h=this.isImageTransparent(u));s.deleteFramebuffer(a),s.deleteTexture(t),this.setTransparent(h),this.setSize(n)}})(),panoramaToCubeMap(e,t,r){const i=this.getBrowser(),s=i.getContext(),a=i.getPanoramaShader(),n=s.createFramebuffer(),o=i.getTextureUnit(),u=Math.floor(r/2),h=new Uint8Array(u*u*4);s.bindTexture(s.TEXTURE_2D,e),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_S,s.MIRRORED_REPEAT),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_T,s.MIRRORED_REPEAT),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MIN_FILTER,s.LINEAR),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MAG_FILTER,s.LINEAR),s.bindTexture(this.getTarget(),this.getTexture());for(let e=0;e<6;++e)s.texImage2D(this.getTargets()[e],0,s.RGBA,u,u,0,s.RGBA,s.UNSIGNED_BYTE,null);s.useProgram(a.getProgram()),s.activeTexture(s.TEXTURE0+o),s.bindTexture(s.TEXTURE_2D,e),s.uniform1i(a.x3d_PanoramaTextureEXT,o),s.bindFramebuffer(s.FRAMEBUFFER,n),s.viewport(0,0,u,u),s.scissor(0,0,u,u),s.disable(s.DEPTH_TEST),s.enable(s.CULL_FACE),s.frontFace(s.CCW),s.clearColor(0,0,0,0),s.bindVertexArray(i.getFullscreenVertexArrayObject());let d=!1;for(let e=0;e<6;++e)s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,this.getTargets()[e],this.getTexture(),0),s.clear(s.COLOR_BUFFER_BIT),s.uniform1i(a.x3d_CurrentFaceEXT,e),s.drawArrays(s.TRIANGLES,0,6),d||(s.readPixels(0,0,u,u,s.RGBA,s.UNSIGNED_BYTE,h),d=this.isImageTransparent(h));s.enable(s.DEPTH_TEST),s.deleteFramebuffer(n),s.deleteTexture(e),i.resetTextureUnits(),this.setTransparent(d),this.setSize(u)},dispose(){de().prototype.dispose.call(this),C.prototype.dispose.call(this)}}),Object.defineProperties(le,{...m().getStaticProperties("ImageCubeMapTexture","CubeMapTexturing",2,"texture","3.0"),fieldDefinitions:{value:new(E())([new(l())(M().inputOutput,"metadata",new(g().SFNode)),new(l())(M().inputOutput,"description",new(g().SFString)),new(l())(M().inputOutput,"load",new(g().SFBool)(!0)),new(l())(M().inputOutput,"url",new(g().MFString)),new(l())(M().inputOutput,"autoRefresh",new(g().SFTime)(0)),new(l())(M().inputOutput,"autoRefreshTimeLimit",new(g().SFTime)(3600)),new(l())(M().initializeOnly,"textureProperties",new(g().SFNode))]),enumerable:!0}});const _e=le,Ee=o().add("ImageCubeMapTexture",_e);a().add({name:"CubeMapTexturing",concreteNodes:[I,ue,Ee],abstractNodes:[C],browserContext:p});o().add("CubeMapTexturingComponent",undefined)})();
1
+ /* X_ITE v12.0.1 */
2
+ const e=window[Symbol.for("X_ITE.X3D-12.0.1")];(()=>{var t={254:t=>{t.exports=e.jquery}},r={};function i(e){var s=r[e];if(void 0!==s)return s.exports;var a=r[e]={exports:{}};return t[e](a,a.exports,i),a.exports}i.n=e=>{var t=e&&e.__esModule?()=>e.default:()=>e;return i.d(t,{a:t}),t},i.d=(e,t)=>{for(var r in t)i.o(t,r)&&!i.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t);const s=e.Components;var a=i.n(s);const n=e.Namespace;var o=i.n(n);const u=o().add("Panorama2.fs","#version 300 es\nprecision highp float;precision highp int;precision highp sampler2D;const float M_PI=3.1415926535897932384626433832795;in vec2 texCoord;out vec4 x3d_FragColor;uniform sampler2D x3d_PanoramaTextureEXT;uniform int x3d_CurrentFaceEXT;vec3 uvToXYZ(const in int face,const in vec2 uv){switch(face){case 0:return vec3(1.,uv.y,uv.x);case 1:return vec3(-1.,uv.y,-uv.x);case 2:return vec3(uv.x,uv.y,-1.);case 3:return vec3(-uv.x,uv.y,1.);case 4:return vec3(uv.y,-1.,uv.x);default:return vec3(-uv.y,1.,uv.x);}}vec2 dirToUV(const in vec3 dir){return vec2(.5+.5*atan(dir.z,dir.x)/M_PI,1.-acos(dir.y)/M_PI);}vec3 panoramaToCubeMap(const in int face,const in vec2 texCoord){vec3 scan=uvToXYZ(face,texCoord);vec3 direction=normalize(scan);vec2 src=dirToUV(direction);return texture(x3d_PanoramaTextureEXT,src).rgb;}void main(){x3d_FragColor=vec4(panoramaToCubeMap(x3d_CurrentFaceEXT,texCoord),1.);}"),h=Symbol();function d(){}Object.assign(d.prototype,{getPanoramaShader(){return this[h]??=this.createShader("Panorama","FullScreen",`data:x-shader/x-fragment,${u}`,[],["x3d_PanoramaTextureEXT","x3d_CurrentFaceEXT"])}});const T=d,p=o().add("X3DCubeMapTexturingContext",T),c=e.Fields;var g=i.n(c);const x=e.X3DFieldDefinition;var l=i.n(x);const _=e.FieldDefinitionArray;var E=i.n(_);const f=e.X3DNode;var m=i.n(f);const w=e.X3DSingleTextureNode;var b=i.n(w);const R=e.X3DConstants;var M=i.n(R);function S(e){b().call(this,e),this.addType(M().X3DEnvironmentTextureNode);const t=this.getBrowser().getContext();this.target=t.TEXTURE_CUBE_MAP,this.targets=[t.TEXTURE_CUBE_MAP_POSITIVE_Z,t.TEXTURE_CUBE_MAP_NEGATIVE_Z,t.TEXTURE_CUBE_MAP_NEGATIVE_X,t.TEXTURE_CUBE_MAP_POSITIVE_X,t.TEXTURE_CUBE_MAP_POSITIVE_Y,t.TEXTURE_CUBE_MAP_NEGATIVE_Y],this.size=1,this.levels=0}Object.assign(Object.setPrototypeOf(S.prototype,b().prototype),{getTarget(){return this.target},getTextureType:()=>4,getTargets(){return this.targets},getSize(){return this.size},setSize(e){this.size=e,this.levels=Math.floor(Math.log2(Math.max(e,1)))},getLevels(){return this.levels},clearTexture:(()=>{const e=new Uint8Array([255,255,255,255]);return function(){const t=this.getBrowser().getContext();t.bindTexture(this.getTarget(),this.getTexture());for(const r of this.getTargets())t.texImage2D(r,0,t.RGBA,1,1,0,t.RGBA,t.UNSIGNED_BYTE,e);this.setSize(1),this.setTransparent(!1),this.updateTextureParameters()}})(),updateTextureParameters(){b().prototype.updateTextureParameters.call(this,this.target,this._textureProperties.getValue(),this.texturePropertiesNode,this.size,this.size,!1,!1,!1)},setShaderUniforms(e,t,r,i=t.x3d_Texture[0]){const s=this.getBrowser().getTextureUnit();e.activeTexture(e.TEXTURE0+s),e.bindTexture(e.TEXTURE_CUBE_MAP,this.getTexture()),e.uniform1i(i.textureCube,s)}}),Object.defineProperties(S,m().getStaticProperties("X3DEnvironmentTextureNode","CubeMapTexturing",1));const v=S,C=o().add("X3DEnvironmentTextureNode",v),U=e.X3DCast;var y=i.n(U);const O=e.BitSet;var A=i.n(O);function P(e){C.call(this,e),this.addType(M().ComposedCubeMapTexture),this.addChildObjects(M().outputOnly,"update",new(g().SFTime)),e.getSpecificationVersion()<=3.3&&(this.addAlias("front",this._frontTexture),this.addAlias("back",this._backTexture),this.addAlias("left",this._leftTexture),this.addAlias("right",this._rightTexture),this.addAlias("top",this._topTexture),this.addAlias("bottom",this._bottomTexture)),this.textureNodes=[null,null,null,null,null,null],this.textureBits=new(A())}Object.assign(Object.setPrototypeOf(P.prototype,C.prototype),{initialize(){C.prototype.initialize.call(this);const e=this.getBrowser().getContext();this.frameBuffer=e.createFramebuffer(),this.clearTexture(),this._frontTexture.addInterest("set_texture__",this,0),this._backTexture.addInterest("set_texture__",this,1),this._leftTexture.addInterest("set_texture__",this,2),this._rightTexture.addInterest("set_texture__",this,3),this._topTexture.addInterest("set_texture__",this,5),this._bottomTexture.addInterest("set_texture__",this,4),this._update.addInterest("update",this),this.set_texture__(0,this._frontTexture),this.set_texture__(1,this._backTexture),this.set_texture__(2,this._leftTexture),this.set_texture__(3,this._rightTexture),this.set_texture__(4,this._topTexture),this.set_texture__(5,this._bottomTexture)},set_texture__(e,t){let r=this.textureNodes[e];r?.removeInterest(`set_loadState${e}__`,this),r=this.textureNodes[e]=y()(M().X3DTexture2DNode,t),r?.addInterest(`set_loadState${e}__`,this,e,r),this.set_loadState__(e,r)},set_loadState__(e,t){this.setTextureBit(e,t?.checkLoadState()),this._update.addEvent()},setTextureBit(e,t){this.textureBits.set(e,t===M().COMPLETE_STATE)},isComplete(){if(63!==+this.textureBits)return!1;const e=this.textureNodes,t=e[0].getWidth();for(const r of e){if(r.getWidth()!==t)return!1;if(r.getHeight()!==t)return!1}return!0},update(){if(this.isComplete()){const e=this.getBrowser().getContext(),t=this.textureNodes,r=t[0].getWidth();if(r!==this.getSize()){const t=new Uint8Array(r*r*4);e.bindTexture(this.getTarget(),this.getTexture());for(let i=0;i<6;++i)e.texImage2D(this.getTargets()[i],0,e.RGBA,r,r,0,e.RGBA,e.UNSIGNED_BYTE,t);this.setSize(r),this.updateTextureParameters()}e.bindFramebuffer(e.FRAMEBUFFER,this.frameBuffer);for(let i=0;i<6;++i){const s=t[i];if(e.bindTexture(e.TEXTURE_2D,s.getTexture()),e.framebufferTexture2D(e.FRAMEBUFFER,e.COLOR_ATTACHMENT0,e.TEXTURE_2D,s.getTexture(),0),e.bindTexture(this.getTarget(),this.getTexture()),1===s.getTextureType())e.copyTexSubImage2D(this.getTargets()[i],0,0,0,0,0,r,r);else for(let t=0;t<r;++t)e.copyTexSubImage2D(this.getTargets()[i],0,0,r-t-1,0,t,r,1)}this.setTransparent(t.some(e=>e.isTransparent())),this.setLinear(t.some(e=>e.isLinear())),this.setMipMaps(t.every(e=>e.canMipMaps())),this.updateTextureParameters(),this.addNodeEvent()}else this.clearTexture(),this.addNodeEvent()}}),Object.defineProperties(P,{...m().getStaticProperties("ComposedCubeMapTexture","CubeMapTexturing",1,"texture","3.1"),fieldDefinitions:{value:new(E())([new(l())(M().inputOutput,"metadata",new(g().SFNode)),new(l())(M().inputOutput,"description",new(g().SFString)),new(l())(M().inputOutput,"frontTexture",new(g().SFNode)),new(l())(M().inputOutput,"backTexture",new(g().SFNode)),new(l())(M().inputOutput,"leftTexture",new(g().SFNode)),new(l())(M().inputOutput,"rightTexture",new(g().SFNode)),new(l())(M().inputOutput,"topTexture",new(g().SFNode)),new(l())(M().inputOutput,"bottomTexture",new(g().SFNode)),new(l())(M().initializeOnly,"textureProperties",new(g().SFNode))]),enumerable:!0}});for(let e=0;e<6;++e)P.prototype[`set_loadState${e}__`]=function(e,t){this.set_loadState__(e,t)};const F=P,I=o().add("ComposedCubeMapTexture",F),N=e.X3DBaseNode;var D=i.n(N);const B=e.X3DRenderObject;var X=i.n(B);const L=e.TraverseType;var z=i.n(L);function V(e,t,r){D().call(this,e),X().call(this,e),this.renderObject=t,this.node=r,this.framebuffers=[]}Object.assign(Object.setPrototypeOf(V.prototype,D().prototype),X().prototype,{initialize(){D().prototype.initialize.call(this),X().prototype.initialize.call(this)},isIndependent:()=>!1,getNode(){return this.node},getLayer(){return this.renderObject.getLayer()},getBackground(){return this.renderObject.getBackground()},getFog(){return this.renderObject.getFog()},getNavigationInfo(){return this.renderObject.getNavigationInfo()},getViewpoint(){return this.renderObject.getViewpoint()},getViewpointStack(){return this.renderObject.getViewpointStack()},getLightContainer(){return this.renderObject.getLights()[this.lightIndex++]},getFramebuffers(){return this.framebuffers},setFramebuffer(e){this.framebuffers[0]=e},render(e,t,r){switch(e){case z().COLLISION:case z().SHADOW:X().prototype.render.call(this,e,t,r);break;case z().DISPLAY:this.lightIndex=0,X().prototype.render.call(this,e,t,r);for(const e of this.renderObject.getLights())e.modelViewMatrix.pop()}}});for(const e of Object.keys(V.prototype))Object.defineProperty(V.prototype,e,{enumerable:!1});const j=V,G=o().add("DependentRenderer",j),k=e.TextureBuffer;var Y=i.n(k);const W=e.Camera;var H=i.n(W);const $=e.ViewVolume;var K=i.n($);const Z=e.Rotation4;var q=i.n(Z);const J=e.Vector3;var Q=i.n(J);const ee=e.Vector4;var te=i.n(ee);const re=e.Matrix4;var ie=i.n(re);const se=e.Algorithm;var ae=i.n(se);function ne(e){C.call(this,e),this.addType(M().GeneratedCubeMapTexture),this.dependentRenderers=new WeakMap,this.projectionMatrix=new(ie()),this.modelMatrix=new(ie()),this.viewVolume=new(K())}Object.assign(Object.setPrototypeOf(ne.prototype,C.prototype),{initialize(){C.prototype.initialize.call(this),this.clearTexture(),this._size.addInterest("set_size__",this),this.set_size__()},set_size__(){const e=this.getBrowser().getContext(),t=this._size.getValue();if(t>0){const r=new Uint8Array(t*t*4);e.bindTexture(this.getTarget(),this.getTexture());for(const i of this.getTargets())e.texImage2D(i,0,e.RGBA,t,t,0,e.RGBA,e.UNSIGNED_BYTE,r);this.updateTextureParameters(),this.viewport=new(te())(0,0,t,t),this.frameBuffer=new(Y())({browser:this.getBrowser(),width:t,height:t}),this.setSize(t)}else this.frameBuffer=null,this.setSize(0)},traverse(e,t){"NONE"!==this._update.getValue()&&t.isIndependent()&&this.frameBuffer&&(t.getGeneratedCubeMapTextures().push(this),this.modelMatrix.assign(t.getModelViewMatrix().get()).multRight(t.getCameraSpaceMatrix().get()))},renderTexture:(()=>{const e=[new(q())(Q().zAxis,new(Q())(0,0,-1)),new(q())(Q().zAxis,new(Q())(0,0,1)),new(q())(Q().zAxis,new(Q())(1,0,0)),new(q())(Q().zAxis,new(Q())(-1,0,0)),new(q())(Q().zAxis,new(Q())(0,-1,0)),new(q())(Q().zAxis,new(Q())(0,1,0))],t=[new(Q())(-1,-1,1),new(Q())(-1,-1,1),new(Q())(-1,-1,1),new(Q())(-1,-1,1),new(Q())(1,1,1),new(Q())(1,1,1)],r=new(ie());return function(i){if(!this.dependentRenderers.has(i)){const e=new G(this.getExecutionContext(),i,this);e.setup(),this.dependentRenderers.set(i,e)}const s=this.dependentRenderers.get(i),a=this.getBrowser(),n=i.getLayer(),o=a.getContext(),u=s.getBackground(),h=s.getNavigationInfo(),d=s.getViewpoint(),T=a.getHeadlight(),p=h._headlight.getValue(),c=d.getNearDistance(h),g=d.getFarDistance(h),x=H().perspective(ae().radians(90),c,g,1,1,this.projectionMatrix),l=this.frameBuffer.getWidth(),_=this.frameBuffer.getHeight();this.setTransparent(u.isTransparent()),s.setFramebuffer(this.frameBuffer),s.getViewVolumes().push(this.viewVolume.set(x,this.viewport,this.viewport)),s.getProjectionMatrix().push(x),o.bindTexture(this.getTarget(),this.getTexture());for(let i=0;i<6;++i)o.clear(o.COLOR_BUFFER_BIT),s.getCameraSpaceMatrix().push(this.modelMatrix),s.getCameraSpaceMatrix().rotate(e[i]),s.getCameraSpaceMatrix().scale(t[i]),s.getViewMatrix().push(r.assign(s.getCameraSpaceMatrix().get()).inverse()),s.getModelViewMatrix().push(r),p&&(T.modelViewMatrix.push(r),T.modelViewMatrix.multLeft(d.getCameraSpaceMatrix())),n.traverse(z().DISPLAY,s),p&&T.modelViewMatrix.pop(),s.getModelViewMatrix().pop(),s.getCameraSpaceMatrix().pop(),s.getViewMatrix().pop(),o.bindTexture(this.getTarget(),this.getTexture()),o.copyTexSubImage2D(this.getTargets()[i],0,0,0,0,0,l,_);this.updateTextureParameters(),s.getProjectionMatrix().pop(),s.getViewVolumes().pop(),"NEXT_FRAME_ONLY"===this._update.getValue()&&(this._update="NONE")}})(),setShaderUniforms:(()=>{const e=new Float32Array(16);return function(t,r,i,s){C.prototype.setShaderUniforms.call(this,t,r,i,s),i.getNode()===this&&t.uniformMatrix4fv(r.x3d_ModelViewMatrix,!1,e)}})()}),Object.defineProperties(ne,{...m().getStaticProperties("GeneratedCubeMapTexture","CubeMapTexturing",3,"texture","3.0"),fieldDefinitions:{value:new(E())([new(l())(M().inputOutput,"metadata",new(g().SFNode)),new(l())(M().inputOutput,"description",new(g().SFString)),new(l())(M().inputOutput,"update",new(g().SFString)("NONE")),new(l())(M().initializeOnly,"size",new(g().SFInt32)(128)),new(l())(M().initializeOnly,"textureProperties",new(g().SFNode))]),enumerable:!0}});const oe=ne,ue=o().add("GeneratedCubeMapTexture",oe),he=e.X3DUrlObject;var de=i.n(he);const Te=e.Vector2;var pe=i.n(Te);const ce=e.DEVELOPMENT;var ge=i.n(ce),xe=i(254);function le(e){C.call(this,e),de().call(this,e),this.addType(M().ImageCubeMapTexture),this.image=xe("<img></img>"),this.urlStack=new(g().MFString)}Object.assign(Object.setPrototypeOf(le.prototype,C.prototype),de().prototype,{initialize(){C.prototype.initialize.call(this),de().prototype.initialize.call(this),this.clearTexture(),this.image.on("load",this.setImage.bind(this)).on("abort error",this.setError.bind(this)).attr("crossorigin","anonymous"),this.requestImmediateLoad().catch(Function.prototype)},unloadData(){this.clearTexture()},loadData(){this.urlStack.setValue(this._url),this.loadNext()},loadNext(){if(0===this.urlStack.length)return this.clearTexture(),this.setLoadState(M().FAILED_STATE),void this.addNodeEvent();this.URL=new URL(this.urlStack.shift(),this.getExecutionContext().getBaseURL()),this.URL.pathname.match(/\.ktx2?(?:\.gz)?$/)||this.URL.href.match(/^data:image\/ktx2[;,]/)?(this.setLinear(!0),this.setMipMaps(!1),this.getBrowser().getKTXDecoder().then(e=>e.loadKTXFromURL(this.URL,this.getCache())).then(e=>this.setKTXTexture(e)).catch(e=>this.setError({type:e.message}))):(this.setLinear(!1),this.setMipMaps(!0),"data:"!==this.URL.protocol&&(this.getCache()||this.URL.searchParams.set("_",Date.now())),this.image.attr("src",this.URL))},setError(e){"data:"!==this.URL.protocol&&console.warn(`Error loading image '${decodeURI(this.URL)}':`,e.type),this.loadNext()},setKTXTexture(e){if(e.target!==this.getTarget())return this.setError({type:"Invalid KTX texture target, must be 'TEXTURE_CUBE_MAP'."});ge()&&"data:"!==this.URL.protocol&&console.info(`Done loading image cube map texture '${decodeURI(this.URL)}'.`);try{this.setTexture(e),this.setTransparent(!1),this.setSize(e.baseWidth),this.updateTextureParameters(),this.setLoadState(M().COMPLETE_STATE),this.addNodeEvent()}catch(e){this.setError({type:e.message})}},setImage(){ge()&&"data:"!==this.URL.protocol&&console.info(`Done loading image cube map texture '${decodeURI(this.URL)}'.`);try{const e=this.getBrowser().getContext(),t=e.createTexture();e.bindTexture(e.TEXTURE_2D,t),e.texImage2D(e.TEXTURE_2D,0,e.RGBA,e.RGBA,e.UNSIGNED_BYTE,this.image[0]),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),this.imageToCubeMap(t,this.image.prop("width"),this.image.prop("height"),!1),this.setLoadState(M().COMPLETE_STATE),this.addNodeEvent()}catch(e){this.setError({type:e.message})}},imageToCubeMap(e,t,r){const i=t/r;Math.abs(i-4/3)<.01&&this.skyBoxToCubeMap(e,t,r),Math.abs(i-2)<.01&&this.panoramaToCubeMap(e,t,r),this.updateTextureParameters()},skyBoxToCubeMap:(()=>{const e=[new(pe())(1,1),new(pe())(3,1),new(pe())(0,1),new(pe())(2,1),new(pe())(1,0),new(pe())(1,2)];return function(t,r,i){const s=this.getBrowser().getContext(),a=s.createFramebuffer(),n=Math.floor(r/4),o=Math.floor(i/3),u=new Uint8Array(n*o*4);s.bindTexture(this.getTarget(),this.getTexture());for(let e=0;e<6;++e)s.texImage2D(this.getTargets()[e],0,s.RGBA,n,o,0,s.RGBA,s.UNSIGNED_BYTE,null);s.bindFramebuffer(s.FRAMEBUFFER,a),s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,s.TEXTURE_2D,t,0);let h=!1;s.bindTexture(this.getTarget(),this.getTexture());for(let t=0;t<6;++t)s.copyTexSubImage2D(this.getTargets()[t],0,0,0,e[t].x*n,e[t].y*o,n,o),h||(s.readPixels(e[t].x*n,e[t].y*o,n,o,s.RGBA,s.UNSIGNED_BYTE,u),h=this.isImageTransparent(u));s.deleteFramebuffer(a),s.deleteTexture(t),this.setTransparent(h),this.setSize(n)}})(),panoramaToCubeMap(e,t,r){const i=this.getBrowser(),s=i.getContext(),a=i.getPanoramaShader(),n=s.createFramebuffer(),o=i.getTextureUnit(),u=Math.floor(r/2),h=new Uint8Array(u*u*4);s.bindTexture(s.TEXTURE_2D,e),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_S,s.MIRRORED_REPEAT),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_WRAP_T,s.MIRRORED_REPEAT),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MIN_FILTER,s.LINEAR),s.texParameteri(s.TEXTURE_2D,s.TEXTURE_MAG_FILTER,s.LINEAR),s.bindTexture(this.getTarget(),this.getTexture());for(let e=0;e<6;++e)s.texImage2D(this.getTargets()[e],0,s.RGBA,u,u,0,s.RGBA,s.UNSIGNED_BYTE,null);s.useProgram(a.getProgram()),s.activeTexture(s.TEXTURE0+o),s.bindTexture(s.TEXTURE_2D,e),s.uniform1i(a.x3d_PanoramaTextureEXT,o),s.bindFramebuffer(s.FRAMEBUFFER,n),s.viewport(0,0,u,u),s.scissor(0,0,u,u),s.disable(s.DEPTH_TEST),s.enable(s.CULL_FACE),s.frontFace(s.CCW),s.clearColor(0,0,0,0),s.bindVertexArray(i.getFullscreenVertexArrayObject());let d=!1;for(let e=0;e<6;++e)s.framebufferTexture2D(s.FRAMEBUFFER,s.COLOR_ATTACHMENT0,this.getTargets()[e],this.getTexture(),0),s.clear(s.COLOR_BUFFER_BIT),s.uniform1i(a.x3d_CurrentFaceEXT,e),s.drawArrays(s.TRIANGLES,0,6),d||(s.readPixels(0,0,u,u,s.RGBA,s.UNSIGNED_BYTE,h),d=this.isImageTransparent(h));s.enable(s.DEPTH_TEST),s.deleteFramebuffer(n),s.deleteTexture(e),i.resetTextureUnits(),this.setTransparent(d),this.setSize(u)},dispose(){de().prototype.dispose.call(this),C.prototype.dispose.call(this)}}),Object.defineProperties(le,{...m().getStaticProperties("ImageCubeMapTexture","CubeMapTexturing",2,"texture","3.0"),fieldDefinitions:{value:new(E())([new(l())(M().inputOutput,"metadata",new(g().SFNode)),new(l())(M().inputOutput,"description",new(g().SFString)),new(l())(M().inputOutput,"load",new(g().SFBool)(!0)),new(l())(M().inputOutput,"url",new(g().MFString)),new(l())(M().inputOutput,"autoRefresh",new(g().SFTime)(0)),new(l())(M().inputOutput,"autoRefreshTimeLimit",new(g().SFTime)(3600)),new(l())(M().initializeOnly,"textureProperties",new(g().SFNode))]),enumerable:!0}});const _e=le,Ee=o().add("ImageCubeMapTexture",_e);a().add({name:"CubeMapTexturing",concreteNodes:[I,ue,Ee],abstractNodes:[C],browserContext:p});o().add("CubeMapTexturingComponent",undefined)})();
@@ -1,5 +1,5 @@
1
- /* X_ITE v11.6.6 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.6.6")];
1
+ /* X_ITE v12.0.1 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.0.1")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope
@@ -376,6 +376,13 @@ Object .assign (Object .setPrototypeOf (ReceiverPdu .prototype, (external_X_ITE_
376
376
  external_X_ITE_X3D_X3DSensorNode_default().prototype .initialize .call (this);
377
377
  external_X_ITE_X3D_X3DBoundedObject_default().prototype .initialize .call (this);
378
378
  },
379
+ getBBox (bbox, shadows)
380
+ {
381
+ if (this .isDefaultBBoxSize ())
382
+ return bbox .set ();
383
+
384
+ return bbox .set (this ._bboxSize .getValue (), this ._bboxCenter .getValue ());
385
+ },
379
386
  dispose ()
380
387
  {
381
388
  external_X_ITE_X3D_X3DBoundedObject_default().prototype .dispose .call (this);
@@ -468,6 +475,13 @@ Object .assign (Object .setPrototypeOf (SignalPdu .prototype, (external_X_ITE_X3
468
475
  external_X_ITE_X3D_X3DSensorNode_default().prototype .initialize .call (this);
469
476
  external_X_ITE_X3D_X3DBoundedObject_default().prototype .initialize .call (this);
470
477
  },
478
+ getBBox (bbox, shadows)
479
+ {
480
+ if (this .isDefaultBBoxSize ())
481
+ return bbox .set ();
482
+
483
+ return bbox .set (this ._bboxSize .getValue (), this ._bboxCenter .getValue ());
484
+ },
471
485
  dispose ()
472
486
  {
473
487
  external_X_ITE_X3D_X3DBoundedObject_default().prototype .dispose .call (this);
@@ -560,6 +574,13 @@ Object .assign (Object .setPrototypeOf (TransmitterPdu .prototype, (external_X_I
560
574
  external_X_ITE_X3D_X3DSensorNode_default().prototype .initialize .call (this);
561
575
  external_X_ITE_X3D_X3DBoundedObject_default().prototype .initialize .call (this);
562
576
  },
577
+ getBBox (bbox, shadows)
578
+ {
579
+ if (this .isDefaultBBoxSize ())
580
+ return bbox .set ();
581
+
582
+ return bbox .set (this ._bboxSize .getValue (), this ._bboxCenter .getValue ());
583
+ },
563
584
  dispose ()
564
585
  {
565
586
  external_X_ITE_X3D_X3DBoundedObject_default().prototype .dispose .call (this);
@@ -1,2 +1,2 @@
1
- /* X_ITE v11.6.6 */
2
- const t=window[Symbol.for("X_ITE.X3D-11.6.6")];(()=>{var n={n:t=>{var e=t&&t.__esModule?()=>t.default:()=>t;return n.d(e,{a:e}),e},d:(t,e)=>{for(var i in e)n.o(e,i)&&!n.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:e[i]})},o:(t,n)=>Object.prototype.hasOwnProperty.call(t,n)};const e=t.Components;var i=n.n(e);const u=t.Fields;var p=n.n(u);const o=t.X3DFieldDefinition;var a=n.n(o);const w=t.FieldDefinitionArray;var l=n.n(w);const r=t.X3DNode;var S=n.n(r);const s=t.X3DChildNode;var O=n.n(s);const F=t.X3DConstants;var d=n.n(F);const c=t.Namespace;var y=n.n(c);function I(t){O().call(this,t),this.addType(d().DISEntityManager),t.getSpecificationVersion()<=3.3&&this.addAlias("mapping",this._children)}Object.setPrototypeOf(I.prototype,O().prototype),Object.defineProperties(I,{...S().getStaticProperties("DISEntityManager","DIS",2,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"children",new(p().MFNode)),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().outputOnly,"addedEntities",new(p().MFNode)),new(a())(d().outputOnly,"removedEntities",new(p().MFNode))]),enumerable:!0}});const m=I,h=y().add("DISEntityManager",m),g=t.X3DInfoNode;var D=n.n(g);const f=t.X3DUrlObject;var b=n.n(f);function P(t){D().call(this,t),b().call(this,t),this.addType(d().DISEntityTypeMapping)}Object.assign(Object.setPrototypeOf(P.prototype,D().prototype),b().prototype,{initialize(){D().prototype.initialize.call(this),b().prototype.initialize.call(this)},dispose(){b().prototype.dispose.call(this),D().prototype.dispose.call(this)}}),Object.defineProperties(P,{...S().getStaticProperties("DISEntityTypeMapping","DIS",2,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"load",new(p().SFBool)(!0)),new(a())(d().inputOutput,"url",new(p().MFString)),new(a())(d().inputOutput,"autoRefresh",new(p().SFTime)(0)),new(a())(d().inputOutput,"autoRefreshTimeLimit",new(p().SFTime)(3600)),new(a())(d().initializeOnly,"category",new(p().SFInt32)),new(a())(d().initializeOnly,"country",new(p().SFInt32)),new(a())(d().initializeOnly,"domain",new(p().SFInt32)),new(a())(d().initializeOnly,"extra",new(p().SFInt32)),new(a())(d().initializeOnly,"kind",new(p().SFInt32)),new(a())(d().initializeOnly,"specific",new(p().SFInt32)),new(a())(d().initializeOnly,"subcategory",new(p().SFInt32))]),enumerable:!0}});const T=P,v=y().add("DISEntityTypeMapping",T),V=t.X3DGroupingNode;var B=n.n(V);const z=t.X3DSensorNode;var E=n.n(z);function M(t){B().call(this,t),E().call(this,t),this.addType(d().EspduTransform),t.getSpecificationVersion()<=3.3&&(this._applicationID=1,this._munitionApplicationID=1)}Object.assign(Object.setPrototypeOf(M.prototype,B().prototype),E().prototype,{initialize(){B().prototype.initialize.call(this),E().prototype.initialize.call(this)}}),Object.defineProperties(M,{...S().getStaticProperties("EspduTransform","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOnly,"addChildren",new(p().MFNode)),new(a())(d().inputOnly,"removeChildren",new(p().MFNode)),new(a())(d().inputOutput,"children",new(p().MFNode)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOnly,"set_articulationParameterValue0",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue1",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue2",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue3",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue4",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue5",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue6",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue7",new(p().SFFloat)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"articulationParameterCount",new(p().SFInt32)),new(a())(d().inputOutput,"articulationParameterDesignatorArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterChangeIndicatorArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterIdPartAttachedToArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterTypeArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterArray",new(p().MFFloat)),new(a())(d().inputOutput,"center",new(p().SFVec3f)),new(a())(d().inputOutput,"collisionType",new(p().SFInt32)),new(a())(d().inputOutput,"deadReckoning",new(p().SFInt32)),new(a())(d().inputOutput,"detonationLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"detonationRelativeLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"detonationResult",new(p().SFInt32)),new(a())(d().inputOutput,"entityCategory",new(p().SFInt32)),new(a())(d().inputOutput,"entityCountry",new(p().SFInt32)),new(a())(d().inputOutput,"entityDomain",new(p().SFInt32)),new(a())(d().inputOutput,"entityExtra",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"entityKind",new(p().SFInt32)),new(a())(d().inputOutput,"entitySpecific",new(p().SFInt32)),new(a())(d().inputOutput,"entitySubcategory",new(p().SFInt32)),new(a())(d().inputOutput,"eventApplicationID",new(p().SFInt32)),new(a())(d().inputOutput,"eventEntityID",new(p().SFInt32)),new(a())(d().inputOutput,"eventNumber",new(p().SFInt32)),new(a())(d().inputOutput,"eventSiteID",new(p().SFInt32)),new(a())(d().inputOutput,"fired1",new(p().SFBool)),new(a())(d().inputOutput,"fired2",new(p().SFBool)),new(a())(d().inputOutput,"fireMissionIndex",new(p().SFInt32)),new(a())(d().inputOutput,"firingRange",new(p().SFFloat)),new(a())(d().inputOutput,"firingRate",new(p().SFInt32)),new(a())(d().inputOutput,"forceID",new(p().SFInt32)),new(a())(d().inputOutput,"fuse",new(p().SFInt32)),new(a())(d().inputOutput,"linearVelocity",new(p().SFVec3f)),new(a())(d().inputOutput,"linearAcceleration",new(p().SFVec3f)),new(a())(d().inputOutput,"marking",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"munitionApplicationID",new(p().SFInt32)),new(a())(d().inputOutput,"munitionEndPoint",new(p().SFVec3f)),new(a())(d().inputOutput,"munitionEntityID",new(p().SFInt32)),new(a())(d().inputOutput,"munitionQuantity",new(p().SFInt32)),new(a())(d().inputOutput,"munitionSiteID",new(p().SFInt32)),new(a())(d().inputOutput,"munitionStartPoint",new(p().SFVec3f)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"rotation",new(p().SFRotation)),new(a())(d().inputOutput,"scale",new(p().SFVec3f)(1,1,1)),new(a())(d().inputOutput,"scaleOrientation",new(p().SFRotation)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"translation",new(p().SFVec3f)),new(a())(d().inputOutput,"warhead",new(p().SFInt32)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"articulationParameterValue0_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue1_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue2_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue3_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue4_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue5_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue6_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue7_changed",new(p().SFFloat)),new(a())(d().outputOnly,"collideTime",new(p().SFTime)),new(a())(d().outputOnly,"detonateTime",new(p().SFTime)),new(a())(d().outputOnly,"firedTime",new(p().SFTime)),new(a())(d().outputOnly,"isCollided",new(p().SFBool)),new(a())(d().outputOnly,"isDetonated",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const N=M,R=y().add("EspduTransform",N),A=t.X3DBoundedObject;var _=n.n(A);function j(t){E().call(this,t),_().call(this,t),this.addType(d().ReceiverPdu),t.getSpecificationVersion()<=3.3&&(this._applicationID=1,this._transmitterApplicationID=1)}Object.assign(Object.setPrototypeOf(j.prototype,E().prototype),_().prototype,{initialize(){E().prototype.initialize.call(this),_().prototype.initialize.call(this)},dispose(){_().prototype.dispose.call(this),E().prototype.dispose.call(this)}}),Object.defineProperties(j,{...S().getStaticProperties("ReceiverPdu","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"radioID",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"receivedPower",new(p().SFFloat)),new(a())(d().inputOutput,"receiverState",new(p().SFInt32)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterApplicationID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterEntityID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterRadioID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterSiteID",new(p().SFInt32)),new(a())(d().inputOutput,"whichGeometry",new(p().SFInt32)(1)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const C=j,x=y().add("ReceiverPdu",C);function H(t){E().call(this,t),_().call(this,t),this.addType(d().SignalPdu),t.getSpecificationVersion()<=3.3&&(this._applicationID=1)}Object.assign(Object.setPrototypeOf(H.prototype,E().prototype),_().prototype,{initialize(){E().prototype.initialize.call(this),_().prototype.initialize.call(this)},dispose(){_().prototype.dispose.call(this),E().prototype.dispose.call(this)}}),Object.defineProperties(H,{...S().getStaticProperties("SignalPdu","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"data",new(p().MFInt32)),new(a())(d().inputOutput,"dataLength",new(p().SFInt32)),new(a())(d().inputOutput,"encodingScheme",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"radioID",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"sampleRate",new(p().SFInt32)),new(a())(d().inputOutput,"samples",new(p().SFInt32)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"tdlType",new(p().SFInt32)),new(a())(d().inputOutput,"whichGeometry",new(p().SFInt32)(1)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const k=H,X=y().add("SignalPdu",k);function G(t){E().call(this,t),_().call(this,t),this.addType(d().TransmitterPdu),t.getSpecificationVersion()<=3.3&&(this._applicationID=1)}Object.assign(Object.setPrototypeOf(G.prototype,E().prototype),_().prototype,{initialize(){E().prototype.initialize.call(this),_().prototype.initialize.call(this)},dispose(){_().prototype.dispose.call(this),E().prototype.dispose.call(this)}}),Object.defineProperties(G,{...S().getStaticProperties("TransmitterPdu","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"antennaLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"antennaPatternLength",new(p().SFInt32)),new(a())(d().inputOutput,"antennaPatternType",new(p().SFInt32)),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"cryptoKeyID",new(p().SFInt32)),new(a())(d().inputOutput,"cryptoSystem",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"frequency",new(p().SFInt32)),new(a())(d().inputOutput,"inputSource",new(p().SFInt32)),new(a())(d().inputOutput,"lengthOfModulationParameters",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeDetail",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeMajor",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeSpreadSpectrum",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeSystem",new(p().SFInt32)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"power",new(p().SFFloat)),new(a())(d().inputOutput,"radioEntityTypeCategory",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeCountry",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeDomain",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeKind",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeNomenclature",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeNomenclatureVersion",new(p().SFInt32)),new(a())(d().inputOutput,"radioID",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"relativeAntennaLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitFrequencyBandwidth",new(p().SFFloat)),new(a())(d().inputOutput,"transmitState",new(p().SFInt32)),new(a())(d().inputOutput,"whichGeometry",new(p().SFInt32)(1)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const W=G,L=y().add("TransmitterPdu",W);i().add({name:"DIS",concreteNodes:[h,v,R,x,X,L],abstractNodes:[]});y().add("DISComponent",undefined)})();
1
+ /* X_ITE v12.0.1 */
2
+ const t=window[Symbol.for("X_ITE.X3D-12.0.1")];(()=>{var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:(t,e)=>Object.prototype.hasOwnProperty.call(t,e)};const n=t.Components;var i=e.n(n);const u=t.Fields;var p=e.n(u);const o=t.X3DFieldDefinition;var a=e.n(o);const w=t.FieldDefinitionArray;var l=e.n(w);const r=t.X3DNode;var S=e.n(r);const s=t.X3DChildNode;var O=e.n(s);const F=t.X3DConstants;var d=e.n(F);const c=t.Namespace;var y=e.n(c);function I(t){O().call(this,t),this.addType(d().DISEntityManager),t.getSpecificationVersion()<=3.3&&this.addAlias("mapping",this._children)}Object.setPrototypeOf(I.prototype,O().prototype),Object.defineProperties(I,{...S().getStaticProperties("DISEntityManager","DIS",2,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"children",new(p().MFNode)),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().outputOnly,"addedEntities",new(p().MFNode)),new(a())(d().outputOnly,"removedEntities",new(p().MFNode))]),enumerable:!0}});const m=I,h=y().add("DISEntityManager",m),g=t.X3DInfoNode;var D=e.n(g);const f=t.X3DUrlObject;var b=e.n(f);function P(t){D().call(this,t),b().call(this,t),this.addType(d().DISEntityTypeMapping)}Object.assign(Object.setPrototypeOf(P.prototype,D().prototype),b().prototype,{initialize(){D().prototype.initialize.call(this),b().prototype.initialize.call(this)},dispose(){b().prototype.dispose.call(this),D().prototype.dispose.call(this)}}),Object.defineProperties(P,{...S().getStaticProperties("DISEntityTypeMapping","DIS",2,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"load",new(p().SFBool)(!0)),new(a())(d().inputOutput,"url",new(p().MFString)),new(a())(d().inputOutput,"autoRefresh",new(p().SFTime)(0)),new(a())(d().inputOutput,"autoRefreshTimeLimit",new(p().SFTime)(3600)),new(a())(d().initializeOnly,"category",new(p().SFInt32)),new(a())(d().initializeOnly,"country",new(p().SFInt32)),new(a())(d().initializeOnly,"domain",new(p().SFInt32)),new(a())(d().initializeOnly,"extra",new(p().SFInt32)),new(a())(d().initializeOnly,"kind",new(p().SFInt32)),new(a())(d().initializeOnly,"specific",new(p().SFInt32)),new(a())(d().initializeOnly,"subcategory",new(p().SFInt32))]),enumerable:!0}});const B=P,T=y().add("DISEntityTypeMapping",B),V=t.X3DGroupingNode;var v=e.n(V);const z=t.X3DSensorNode;var _=e.n(z);function x(t){v().call(this,t),_().call(this,t),this.addType(d().EspduTransform),t.getSpecificationVersion()<=3.3&&(this._applicationID=1,this._munitionApplicationID=1)}Object.assign(Object.setPrototypeOf(x.prototype,v().prototype),_().prototype,{initialize(){v().prototype.initialize.call(this),_().prototype.initialize.call(this)}}),Object.defineProperties(x,{...S().getStaticProperties("EspduTransform","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOnly,"addChildren",new(p().MFNode)),new(a())(d().inputOnly,"removeChildren",new(p().MFNode)),new(a())(d().inputOutput,"children",new(p().MFNode)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOnly,"set_articulationParameterValue0",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue1",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue2",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue3",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue4",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue5",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue6",new(p().SFFloat)),new(a())(d().inputOnly,"set_articulationParameterValue7",new(p().SFFloat)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"articulationParameterCount",new(p().SFInt32)),new(a())(d().inputOutput,"articulationParameterDesignatorArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterChangeIndicatorArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterIdPartAttachedToArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterTypeArray",new(p().MFInt32)),new(a())(d().inputOutput,"articulationParameterArray",new(p().MFFloat)),new(a())(d().inputOutput,"center",new(p().SFVec3f)),new(a())(d().inputOutput,"collisionType",new(p().SFInt32)),new(a())(d().inputOutput,"deadReckoning",new(p().SFInt32)),new(a())(d().inputOutput,"detonationLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"detonationRelativeLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"detonationResult",new(p().SFInt32)),new(a())(d().inputOutput,"entityCategory",new(p().SFInt32)),new(a())(d().inputOutput,"entityCountry",new(p().SFInt32)),new(a())(d().inputOutput,"entityDomain",new(p().SFInt32)),new(a())(d().inputOutput,"entityExtra",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"entityKind",new(p().SFInt32)),new(a())(d().inputOutput,"entitySpecific",new(p().SFInt32)),new(a())(d().inputOutput,"entitySubcategory",new(p().SFInt32)),new(a())(d().inputOutput,"eventApplicationID",new(p().SFInt32)),new(a())(d().inputOutput,"eventEntityID",new(p().SFInt32)),new(a())(d().inputOutput,"eventNumber",new(p().SFInt32)),new(a())(d().inputOutput,"eventSiteID",new(p().SFInt32)),new(a())(d().inputOutput,"fired1",new(p().SFBool)),new(a())(d().inputOutput,"fired2",new(p().SFBool)),new(a())(d().inputOutput,"fireMissionIndex",new(p().SFInt32)),new(a())(d().inputOutput,"firingRange",new(p().SFFloat)),new(a())(d().inputOutput,"firingRate",new(p().SFInt32)),new(a())(d().inputOutput,"forceID",new(p().SFInt32)),new(a())(d().inputOutput,"fuse",new(p().SFInt32)),new(a())(d().inputOutput,"linearVelocity",new(p().SFVec3f)),new(a())(d().inputOutput,"linearAcceleration",new(p().SFVec3f)),new(a())(d().inputOutput,"marking",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"munitionApplicationID",new(p().SFInt32)),new(a())(d().inputOutput,"munitionEndPoint",new(p().SFVec3f)),new(a())(d().inputOutput,"munitionEntityID",new(p().SFInt32)),new(a())(d().inputOutput,"munitionQuantity",new(p().SFInt32)),new(a())(d().inputOutput,"munitionSiteID",new(p().SFInt32)),new(a())(d().inputOutput,"munitionStartPoint",new(p().SFVec3f)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"rotation",new(p().SFRotation)),new(a())(d().inputOutput,"scale",new(p().SFVec3f)(1,1,1)),new(a())(d().inputOutput,"scaleOrientation",new(p().SFRotation)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"translation",new(p().SFVec3f)),new(a())(d().inputOutput,"warhead",new(p().SFInt32)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"articulationParameterValue0_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue1_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue2_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue3_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue4_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue5_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue6_changed",new(p().SFFloat)),new(a())(d().outputOnly,"articulationParameterValue7_changed",new(p().SFFloat)),new(a())(d().outputOnly,"collideTime",new(p().SFTime)),new(a())(d().outputOnly,"detonateTime",new(p().SFTime)),new(a())(d().outputOnly,"firedTime",new(p().SFTime)),new(a())(d().outputOnly,"isCollided",new(p().SFBool)),new(a())(d().outputOnly,"isDetonated",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const E=x,M=y().add("EspduTransform",E),N=t.X3DBoundedObject;var R=e.n(N);function A(t){_().call(this,t),R().call(this,t),this.addType(d().ReceiverPdu),t.getSpecificationVersion()<=3.3&&(this._applicationID=1,this._transmitterApplicationID=1)}Object.assign(Object.setPrototypeOf(A.prototype,_().prototype),R().prototype,{initialize(){_().prototype.initialize.call(this),R().prototype.initialize.call(this)},getBBox(t,e){return this.isDefaultBBoxSize()?t.set():t.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},dispose(){R().prototype.dispose.call(this),_().prototype.dispose.call(this)}}),Object.defineProperties(A,{...S().getStaticProperties("ReceiverPdu","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"radioID",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"receivedPower",new(p().SFFloat)),new(a())(d().inputOutput,"receiverState",new(p().SFInt32)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterApplicationID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterEntityID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterRadioID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitterSiteID",new(p().SFInt32)),new(a())(d().inputOutput,"whichGeometry",new(p().SFInt32)(1)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const C=A,j=y().add("ReceiverPdu",C);function H(t){_().call(this,t),R().call(this,t),this.addType(d().SignalPdu),t.getSpecificationVersion()<=3.3&&(this._applicationID=1)}Object.assign(Object.setPrototypeOf(H.prototype,_().prototype),R().prototype,{initialize(){_().prototype.initialize.call(this),R().prototype.initialize.call(this)},getBBox(t,e){return this.isDefaultBBoxSize()?t.set():t.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},dispose(){R().prototype.dispose.call(this),_().prototype.dispose.call(this)}}),Object.defineProperties(H,{...S().getStaticProperties("SignalPdu","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"data",new(p().MFInt32)),new(a())(d().inputOutput,"dataLength",new(p().SFInt32)),new(a())(d().inputOutput,"encodingScheme",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"radioID",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"sampleRate",new(p().SFInt32)),new(a())(d().inputOutput,"samples",new(p().SFInt32)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"tdlType",new(p().SFInt32)),new(a())(d().inputOutput,"whichGeometry",new(p().SFInt32)(1)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const k=H,X=y().add("SignalPdu",k);function G(t){_().call(this,t),R().call(this,t),this.addType(d().TransmitterPdu),t.getSpecificationVersion()<=3.3&&(this._applicationID=1)}Object.assign(Object.setPrototypeOf(G.prototype,_().prototype),R().prototype,{initialize(){_().prototype.initialize.call(this),R().prototype.initialize.call(this)},getBBox(t,e){return this.isDefaultBBoxSize()?t.set():t.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},dispose(){R().prototype.dispose.call(this),_().prototype.dispose.call(this)}}),Object.defineProperties(G,{...S().getStaticProperties("TransmitterPdu","DIS",1,"children","3.0"),fieldDefinitions:{value:new(l())([new(a())(d().inputOutput,"metadata",new(p().SFNode)),new(a())(d().inputOutput,"description",new(p().SFString)),new(a())(d().inputOutput,"visible",new(p().SFBool)(!0)),new(a())(d().inputOutput,"bboxDisplay",new(p().SFBool)),new(a())(d().initializeOnly,"bboxSize",new(p().SFVec3f)(-1,-1,-1)),new(a())(d().initializeOnly,"bboxCenter",new(p().SFVec3f)),new(a())(d().inputOutput,"enabled",new(p().SFBool)(!0)),new(a())(d().outputOnly,"isActive",new(p().SFBool)),new(a())(d().inputOutput,"address",new(p().SFString)("localhost")),new(a())(d().inputOutput,"antennaLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"antennaPatternLength",new(p().SFInt32)),new(a())(d().inputOutput,"antennaPatternType",new(p().SFInt32)),new(a())(d().inputOutput,"applicationID",new(p().SFInt32)),new(a())(d().inputOutput,"cryptoKeyID",new(p().SFInt32)),new(a())(d().inputOutput,"cryptoSystem",new(p().SFInt32)),new(a())(d().inputOutput,"entityID",new(p().SFInt32)),new(a())(d().inputOutput,"frequency",new(p().SFInt32)),new(a())(d().inputOutput,"inputSource",new(p().SFInt32)),new(a())(d().inputOutput,"lengthOfModulationParameters",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeDetail",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeMajor",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeSpreadSpectrum",new(p().SFInt32)),new(a())(d().inputOutput,"modulationTypeSystem",new(p().SFInt32)),new(a())(d().inputOutput,"multicastRelayHost",new(p().SFString)),new(a())(d().inputOutput,"multicastRelayPort",new(p().SFInt32)),new(a())(d().inputOutput,"networkMode",new(p().SFString)("standAlone")),new(a())(d().inputOutput,"port",new(p().SFInt32)),new(a())(d().inputOutput,"power",new(p().SFFloat)),new(a())(d().inputOutput,"radioEntityTypeCategory",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeCountry",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeDomain",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeKind",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeNomenclature",new(p().SFInt32)),new(a())(d().inputOutput,"radioEntityTypeNomenclatureVersion",new(p().SFInt32)),new(a())(d().inputOutput,"radioID",new(p().SFInt32)),new(a())(d().inputOutput,"readInterval",new(p().SFTime)(.1)),new(a())(d().inputOutput,"relativeAntennaLocation",new(p().SFVec3f)),new(a())(d().inputOutput,"rtpHeaderExpected",new(p().SFBool)),new(a())(d().inputOutput,"siteID",new(p().SFInt32)),new(a())(d().inputOutput,"transmitFrequencyBandwidth",new(p().SFFloat)),new(a())(d().inputOutput,"transmitState",new(p().SFInt32)),new(a())(d().inputOutput,"whichGeometry",new(p().SFInt32)(1)),new(a())(d().inputOutput,"writeInterval",new(p().SFTime)(1)),new(a())(d().outputOnly,"isNetworkReader",new(p().SFBool)),new(a())(d().outputOnly,"isNetworkWriter",new(p().SFBool)),new(a())(d().outputOnly,"isRtpHeaderHeard",new(p().SFBool)),new(a())(d().outputOnly,"isStandAlone",new(p().SFBool)),new(a())(d().outputOnly,"timestamp",new(p().SFTime)),new(a())(d().inputOutput,"geoCoords",new(p().SFVec3d)),new(a())(d().initializeOnly,"geoSystem",new(p().MFString)("GD","WE"))]),enumerable:!0}});const W=G,L=y().add("TransmitterPdu",W);i().add({name:"DIS",concreteNodes:[h,T,M,j,X,L],abstractNodes:[]});y().add("DISComponent",undefined)})();
@@ -1,5 +1,5 @@
1
- /* X_ITE v11.6.6 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.6.6")];
1
+ /* X_ITE v12.0.1 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.0.1")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope
@@ -1,2 +1,2 @@
1
- /* X_ITE v11.6.6 */
2
- const e=window[Symbol.for("X_ITE.X3D-11.6.6")];(()=>{var t={n:e=>{var i=e&&e.__esModule?()=>e.default:()=>e;return t.d(i,{a:i}),i},d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const i=e.Components;var n=t.n(i);const o=e.Fields;var s=t.n(o);const r=e.X3DFieldDefinition;var a=t.n(r);const l=e.FieldDefinitionArray;var p=t.n(l);const u=e.X3DNode;var d=t.n(u);const c=e.X3DChildNode;var _=t.n(c);const h=e.X3DConstants;var g=t.n(h);const y=e.Namespace;var w=t.n(y);function O(e){_().call(this,e),this.addType(g().BooleanFilter)}Object.assign(Object.setPrototypeOf(O.prototype,_().prototype),{initialize(){_().prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){const e=this._set_boolean.getValue();e?this._inputTrue=!0:this._inputFalse=!1,this._inputNegate=!e}}),Object.defineProperties(O,{...d().getStaticProperties("BooleanFilter","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().outputOnly,"inputTrue",new(s().SFBool)),new(a())(g().outputOnly,"inputFalse",new(s().SFBool)),new(a())(g().outputOnly,"inputNegate",new(s().SFBool))]),enumerable:!0}});const f=O,b=w().add("BooleanFilter",f),S=e.Algorithm;var F=t.n(S);function T(e){_().call(this,e),this.addType(g().X3DSequencerNode),this.index=-1}Object.assign(Object.setPrototypeOf(T.prototype,_().prototype),{initialize(){_().prototype.initialize.call(this),this._set_fraction.addInterest("set_fraction__",this),this._previous.addInterest("set_previous__",this),this._next.addInterest("set_next__",this),this._key.addInterest("set_index__",this)},set_fraction__(){const e=this._set_fraction.getValue(),t=this._key,i=t.length;if(0===i)return;let n=0;if(1===i||e<=t[0])n=0;else if(e>=t[i-1])n=this.getSize()-1;else{n=F().upperBound(t,0,i,e)-1}n!==this.index&&n<this.getSize()&&this.sequence(this.index=n)},set_previous__(){this._previous.getValue()&&(this.index<=0?this.index=this.getSize()-1:--this.index,this.index<this.getSize()&&this.sequence(this.index))},set_next__(){this._next.getValue()&&(this.index>=this.getSize()-1?this.index=0:++this.index,this.index<this.getSize()&&this.sequence(this.index))},set_index__(){this.index=-1}}),Object.defineProperties(T,d().getStaticProperties("X3DSequencerNode","EventUtilities",1));const v=T,m=w().add("X3DSequencerNode",v);function B(e){m.call(this,e),this.addType(g().BooleanSequencer)}Object.assign(Object.setPrototypeOf(B.prototype,m.prototype),{initialize(){m.prototype.initialize.call(this),this._keyValue.addInterest("set_index__",this)},getSize(){return this._keyValue.length},sequence(e){this._value_changed=this._keyValue[e]}}),Object.defineProperties(B,{...d().getStaticProperties("BooleanSequencer","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_fraction",new(s().SFFloat)),new(a())(g().inputOnly,"previous",new(s().SFBool)),new(a())(g().inputOnly,"next",new(s().SFBool)),new(a())(g().inputOutput,"key",new(s().MFFloat)),new(a())(g().inputOutput,"keyValue",new(s().MFBool)),new(a())(g().outputOnly,"value_changed",new(s().SFBool))]),enumerable:!0}});const P=B,j=w().add("BooleanSequencer",P);function x(e){_().call(this,e),this.addType(g().BooleanToggle)}Object.assign(Object.setPrototypeOf(x.prototype,_().prototype),{initialize(){_().prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){this._set_boolean.getValue()&&(this._toggle=!this._toggle.getValue())}}),Object.defineProperties(x,{...d().getStaticProperties("BooleanToggle","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().inputOutput,"toggle",new(s().SFBool))]),enumerable:!0}});const z=x,I=w().add("BooleanToggle",z);function D(e){_().call(this,e),this.addType(g().X3DTriggerNode)}Object.setPrototypeOf(D.prototype,_().prototype),Object.defineProperties(D,d().getStaticProperties("X3DTriggerNode","EventUtilities",1));const N=D,V=w().add("X3DTriggerNode",N);function q(e){V.call(this,e),this.addType(g().BooleanTrigger)}Object.assign(Object.setPrototypeOf(q.prototype,V.prototype),{initialize(){V.prototype.initialize.call(this),this._set_triggerTime.addInterest("set_triggerTime__",this)},set_triggerTime__(){this._triggerTrue=!0}}),Object.defineProperties(q,{...d().getStaticProperties("BooleanTrigger","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_triggerTime",new(s().SFTime)),new(a())(g().outputOnly,"triggerTrue",new(s().SFBool))]),enumerable:!0}});const k=q,E=w().add("BooleanTrigger",k);function X(e){m.call(this,e),this.addType(g().IntegerSequencer)}Object.assign(Object.setPrototypeOf(X.prototype,m.prototype),{initialize(){m.prototype.initialize.call(this),this._keyValue.addInterest("set_index__",this)},getSize(){return this._keyValue.length},sequence(e){this._value_changed=this._keyValue[e]}}),Object.defineProperties(X,{...d().getStaticProperties("IntegerSequencer","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_fraction",new(s().SFFloat)),new(a())(g().inputOnly,"previous",new(s().SFBool)),new(a())(g().inputOnly,"next",new(s().SFBool)),new(a())(g().inputOutput,"key",new(s().MFFloat)),new(a())(g().inputOutput,"keyValue",new(s().MFInt32)),new(a())(g().outputOnly,"value_changed",new(s().SFInt32))]),enumerable:!0}});const U=X,C=w().add("IntegerSequencer",U);function M(e){V.call(this,e),this.addType(g().IntegerTrigger)}Object.assign(Object.setPrototypeOf(M.prototype,V.prototype),{initialize(){V.prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){this._triggerValue=this._integerKey}}),Object.defineProperties(M,{...d().getStaticProperties("IntegerTrigger","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().inputOutput,"integerKey",new(s().SFInt32)(-1)),new(a())(g().outputOnly,"triggerValue",new(s().SFInt32))]),enumerable:!0}});const A=M,K=w().add("IntegerTrigger",A);function G(e){V.call(this,e),this.addType(g().TimeTrigger)}Object.assign(Object.setPrototypeOf(G.prototype,V.prototype),{initialize(){V.prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){this._triggerTime=this.getBrowser().getCurrentTime()}}),Object.defineProperties(G,{...d().getStaticProperties("TimeTrigger","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().outputOnly,"triggerTime",new(s().SFTime))]),enumerable:!0}});const H=G,J=w().add("TimeTrigger",H);n().add({name:"EventUtilities",concreteNodes:[b,j,I,E,C,K,J],abstractNodes:[m,V]});w().add("EventUtilitiesComponent",undefined)})();
1
+ /* X_ITE v12.0.1 */
2
+ const e=window[Symbol.for("X_ITE.X3D-12.0.1")];(()=>{var t={n:e=>{var i=e&&e.__esModule?()=>e.default:()=>e;return t.d(i,{a:i}),i},d:(e,i)=>{for(var n in i)t.o(i,n)&&!t.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:i[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const i=e.Components;var n=t.n(i);const o=e.Fields;var s=t.n(o);const r=e.X3DFieldDefinition;var a=t.n(r);const l=e.FieldDefinitionArray;var p=t.n(l);const u=e.X3DNode;var d=t.n(u);const c=e.X3DChildNode;var _=t.n(c);const h=e.X3DConstants;var g=t.n(h);const y=e.Namespace;var w=t.n(y);function O(e){_().call(this,e),this.addType(g().BooleanFilter)}Object.assign(Object.setPrototypeOf(O.prototype,_().prototype),{initialize(){_().prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){const e=this._set_boolean.getValue();e?this._inputTrue=!0:this._inputFalse=!1,this._inputNegate=!e}}),Object.defineProperties(O,{...d().getStaticProperties("BooleanFilter","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().outputOnly,"inputTrue",new(s().SFBool)),new(a())(g().outputOnly,"inputFalse",new(s().SFBool)),new(a())(g().outputOnly,"inputNegate",new(s().SFBool))]),enumerable:!0}});const f=O,b=w().add("BooleanFilter",f),S=e.Algorithm;var F=t.n(S);function T(e){_().call(this,e),this.addType(g().X3DSequencerNode),this.index=-1}Object.assign(Object.setPrototypeOf(T.prototype,_().prototype),{initialize(){_().prototype.initialize.call(this),this._set_fraction.addInterest("set_fraction__",this),this._previous.addInterest("set_previous__",this),this._next.addInterest("set_next__",this),this._key.addInterest("set_index__",this)},set_fraction__(){const e=this._set_fraction.getValue(),t=this._key,i=t.length;if(0===i)return;let n=0;if(1===i||e<=t[0])n=0;else if(e>=t[i-1])n=this.getSize()-1;else{n=F().upperBound(t,0,i,e)-1}n!==this.index&&n<this.getSize()&&this.sequence(this.index=n)},set_previous__(){this._previous.getValue()&&(this.index<=0?this.index=this.getSize()-1:--this.index,this.index<this.getSize()&&this.sequence(this.index))},set_next__(){this._next.getValue()&&(this.index>=this.getSize()-1?this.index=0:++this.index,this.index<this.getSize()&&this.sequence(this.index))},set_index__(){this.index=-1}}),Object.defineProperties(T,d().getStaticProperties("X3DSequencerNode","EventUtilities",1));const v=T,m=w().add("X3DSequencerNode",v);function B(e){m.call(this,e),this.addType(g().BooleanSequencer)}Object.assign(Object.setPrototypeOf(B.prototype,m.prototype),{initialize(){m.prototype.initialize.call(this),this._keyValue.addInterest("set_index__",this)},getSize(){return this._keyValue.length},sequence(e){this._value_changed=this._keyValue[e]}}),Object.defineProperties(B,{...d().getStaticProperties("BooleanSequencer","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_fraction",new(s().SFFloat)),new(a())(g().inputOnly,"previous",new(s().SFBool)),new(a())(g().inputOnly,"next",new(s().SFBool)),new(a())(g().inputOutput,"key",new(s().MFFloat)),new(a())(g().inputOutput,"keyValue",new(s().MFBool)),new(a())(g().outputOnly,"value_changed",new(s().SFBool))]),enumerable:!0}});const P=B,j=w().add("BooleanSequencer",P);function x(e){_().call(this,e),this.addType(g().BooleanToggle)}Object.assign(Object.setPrototypeOf(x.prototype,_().prototype),{initialize(){_().prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){this._set_boolean.getValue()&&(this._toggle=!this._toggle.getValue())}}),Object.defineProperties(x,{...d().getStaticProperties("BooleanToggle","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().inputOutput,"toggle",new(s().SFBool))]),enumerable:!0}});const z=x,I=w().add("BooleanToggle",z);function D(e){_().call(this,e),this.addType(g().X3DTriggerNode)}Object.setPrototypeOf(D.prototype,_().prototype),Object.defineProperties(D,d().getStaticProperties("X3DTriggerNode","EventUtilities",1));const N=D,V=w().add("X3DTriggerNode",N);function q(e){V.call(this,e),this.addType(g().BooleanTrigger)}Object.assign(Object.setPrototypeOf(q.prototype,V.prototype),{initialize(){V.prototype.initialize.call(this),this._set_triggerTime.addInterest("set_triggerTime__",this)},set_triggerTime__(){this._triggerTrue=!0}}),Object.defineProperties(q,{...d().getStaticProperties("BooleanTrigger","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_triggerTime",new(s().SFTime)),new(a())(g().outputOnly,"triggerTrue",new(s().SFBool))]),enumerable:!0}});const k=q,E=w().add("BooleanTrigger",k);function X(e){m.call(this,e),this.addType(g().IntegerSequencer)}Object.assign(Object.setPrototypeOf(X.prototype,m.prototype),{initialize(){m.prototype.initialize.call(this),this._keyValue.addInterest("set_index__",this)},getSize(){return this._keyValue.length},sequence(e){this._value_changed=this._keyValue[e]}}),Object.defineProperties(X,{...d().getStaticProperties("IntegerSequencer","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_fraction",new(s().SFFloat)),new(a())(g().inputOnly,"previous",new(s().SFBool)),new(a())(g().inputOnly,"next",new(s().SFBool)),new(a())(g().inputOutput,"key",new(s().MFFloat)),new(a())(g().inputOutput,"keyValue",new(s().MFInt32)),new(a())(g().outputOnly,"value_changed",new(s().SFInt32))]),enumerable:!0}});const U=X,C=w().add("IntegerSequencer",U);function M(e){V.call(this,e),this.addType(g().IntegerTrigger)}Object.assign(Object.setPrototypeOf(M.prototype,V.prototype),{initialize(){V.prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){this._triggerValue=this._integerKey}}),Object.defineProperties(M,{...d().getStaticProperties("IntegerTrigger","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().inputOutput,"integerKey",new(s().SFInt32)(-1)),new(a())(g().outputOnly,"triggerValue",new(s().SFInt32))]),enumerable:!0}});const A=M,K=w().add("IntegerTrigger",A);function G(e){V.call(this,e),this.addType(g().TimeTrigger)}Object.assign(Object.setPrototypeOf(G.prototype,V.prototype),{initialize(){V.prototype.initialize.call(this),this._set_boolean.addInterest("set_boolean__",this)},set_boolean__(){this._triggerTime=this.getBrowser().getCurrentTime()}}),Object.defineProperties(G,{...d().getStaticProperties("TimeTrigger","EventUtilities",1,"children","3.0"),fieldDefinitions:{value:new(p())([new(a())(g().inputOutput,"metadata",new(s().SFNode)),new(a())(g().inputOnly,"set_boolean",new(s().SFBool)),new(a())(g().outputOnly,"triggerTime",new(s().SFTime))]),enumerable:!0}});const H=G,J=w().add("TimeTrigger",H);n().add({name:"EventUtilities",concreteNodes:[b,j,I,E,C,K,J],abstractNodes:[m,V]});w().add("EventUtilitiesComponent",undefined)})();
@@ -1,5 +1,5 @@
1
- /* X_ITE v11.6.6 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-11.6.6")];
1
+ /* X_ITE v12.0.1 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-12.0.1")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope