x_ite 14.0.8 → 14.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (55) hide show
  1. package/README.md +22 -8
  2. package/dist/X3DUOM.xml +174 -3
  3. package/dist/assets/components/AnnotationComponent.js +2 -2
  4. package/dist/assets/components/AnnotationComponent.min.js +2 -2
  5. package/dist/assets/components/CADGeometryComponent.js +3 -2
  6. package/dist/assets/components/CADGeometryComponent.min.js +2 -2
  7. package/dist/assets/components/CubeMapTexturingComponent.js +35 -132
  8. package/dist/assets/components/CubeMapTexturingComponent.min.js +2 -2
  9. package/dist/assets/components/DISComponent.js +2 -2
  10. package/dist/assets/components/DISComponent.min.js +2 -2
  11. package/dist/assets/components/EventUtilitiesComponent.js +2 -2
  12. package/dist/assets/components/EventUtilitiesComponent.min.js +2 -2
  13. package/dist/assets/components/Geometry2DComponent.js +2 -2
  14. package/dist/assets/components/Geometry2DComponent.min.js +2 -2
  15. package/dist/assets/components/Geometry3DComponent.js +2 -2
  16. package/dist/assets/components/Geometry3DComponent.min.js +2 -2
  17. package/dist/assets/components/GeospatialComponent.js +2 -2
  18. package/dist/assets/components/GeospatialComponent.min.js +2 -2
  19. package/dist/assets/components/HAnimComponent.js +2 -2
  20. package/dist/assets/components/HAnimComponent.min.js +2 -2
  21. package/dist/assets/components/KeyDeviceSensorComponent.js +2 -2
  22. package/dist/assets/components/KeyDeviceSensorComponent.min.js +2 -2
  23. package/dist/assets/components/LayoutComponent.js +4 -3
  24. package/dist/assets/components/LayoutComponent.min.js +2 -2
  25. package/dist/assets/components/NURBSComponent.js +2 -2
  26. package/dist/assets/components/NURBSComponent.min.js +2 -2
  27. package/dist/assets/components/ParticleSystemsComponent.js +3 -3
  28. package/dist/assets/components/ParticleSystemsComponent.min.js +2 -2
  29. package/dist/assets/components/PickingComponent.js +2 -2
  30. package/dist/assets/components/PickingComponent.min.js +2 -2
  31. package/dist/assets/components/RigidBodyPhysicsComponent.js +9 -2
  32. package/dist/assets/components/RigidBodyPhysicsComponent.min.js +2 -2
  33. package/dist/assets/components/ScriptingComponent.js +2 -2
  34. package/dist/assets/components/ScriptingComponent.min.js +2 -2
  35. package/dist/assets/components/TextComponent.js +2 -2
  36. package/dist/assets/components/TextComponent.min.js +2 -2
  37. package/dist/assets/components/TextureProjectionComponent.js +30 -8
  38. package/dist/assets/components/TextureProjectionComponent.min.js +2 -2
  39. package/dist/assets/components/Texturing3DComponent.js +10 -10
  40. package/dist/assets/components/Texturing3DComponent.min.js +2 -2
  41. package/dist/assets/components/VolumeRenderingComponent.js +5 -9
  42. package/dist/assets/components/VolumeRenderingComponent.min.js +2 -2
  43. package/dist/assets/components/WebXRComponent.js +2 -2
  44. package/dist/assets/components/WebXRComponent.min.js +2 -2
  45. package/dist/assets/components/X_ITEComponent.js +86 -58
  46. package/dist/assets/components/X_ITEComponent.min.js +2 -2
  47. package/dist/example.html +1 -1
  48. package/dist/x_ite.css +1 -1
  49. package/dist/x_ite.d.ts +172 -11
  50. package/dist/x_ite.js +1317 -644
  51. package/dist/x_ite.min.js +2 -2
  52. package/dist/x_ite.min.mjs +2 -2
  53. package/dist/x_ite.mjs +1316 -643
  54. package/dist/x_ite.zip +0 -0
  55. package/package.json +6 -5
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@14.0.8/dist/x_ite.min.js"></script>
39
+ <script defer src="https://cdn.jsdelivr.net/npm/x_ite@14.1.0/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@14.0.8/dist/x_ite.min.mjs";
42
+ import X3D from "https://cdn.jsdelivr.net/npm/x_ite@14.1.0/dist/x_ite.min.mjs";
43
43
  </script>
44
44
  ```
45
45
 
@@ -65,10 +65,24 @@ $ npm install x_ite-node
65
65
 
66
66
  This script initializes an X3D canvas within an HTML page, configuring it to contain a scene, a camera and a geometric cube with default material properties. It then animates the rotation of the cube within the scene, ensuring that the camera captures the dynamic action.
67
67
 
68
+ ### External File
69
+
70
+ You can include an external file:
71
+
72
+ ```html
73
+ <script defer src="https://cdn.jsdelivr.net/npm/x_ite@14.1.0/dist/x_ite.min.js"></script>
74
+ <x3d-canvas
75
+ src="box.x3d"
76
+ contentScale="auto"
77
+ update="auto"></x3d-canvas>
78
+ ```
79
+
68
80
  ### Declarative Syntax
69
81
 
82
+ However, you can also include and manipulate the XML directly:
83
+
70
84
  ```html
71
- <script defer src="https://cdn.jsdelivr.net/npm/x_ite@14.0.8/dist/x_ite.min.js"></script>
85
+ <script defer src="https://cdn.jsdelivr.net/npm/x_ite@14.1.0/dist/x_ite.min.js"></script>
72
86
  <x3d-canvas contentScale="auto" update="auto">
73
87
  <X3D profile='Interchange' version='4.1'>
74
88
  <head>
@@ -107,7 +121,7 @@ The same scene can also be created using pure JavaScript:
107
121
 
108
122
  ```html
109
123
  <script type="module">
110
- import X3D from "https://cdn.jsdelivr.net/npm/x_ite@14.0.8/dist/x_ite.min.mjs";
124
+ import X3D from "https://cdn.jsdelivr.net/npm/x_ite@14.1.0/dist/x_ite.min.mjs";
111
125
 
112
126
  const
113
127
  canvas = document .createElement ("x3d-canvas"), // Or get an already inserted <x3d-canvas> element.
@@ -197,7 +211,7 @@ X_ITE is free software and licensed under the [MIT License](LICENSE.md).
197
211
 
198
212
  ## See Also
199
213
 
200
- * [x_ite-node](https://www.npmjs.com/package/x_ite-node) — Pure Node.js version of X_ITE
201
- * [x3d-tidy](https://www.npmjs.com/package/x3d-tidy) — X3D converter, beautifier and minimizer
202
- * [x3d-image](https://www.npmjs.com/package/x3d-image) — render image files from X3D
203
- * [sunrize](https://www.npmjs.com/package/sunrize) — a multi-platform X3D editor
214
+ * [x_ite-node](https://www.npmjs.com/package/x_ite-node) — Pure Node.js Version of X_ITE
215
+ * [x3d-tidy](https://www.npmjs.com/package/x3d-tidy) — X3D Converter, Beautifier and Minimizer
216
+ * [x3d-image](https://www.npmjs.com/package/x3d-image) — Render Image Files from X3D
217
+ * [sunrize](https://www.npmjs.com/package/sunrize) — A Multi-Platform X3D Editor
package/dist/X3DUOM.xml CHANGED
@@ -37,7 +37,18 @@
37
37
  type="SFBool"
38
38
  accessType="inputOutput"
39
39
  default="TRUE"
40
- description="pointerEvents defines whether this Shape becomes target for pointer events."
40
+ description="pointerEvents defines whether this shape becomes target for pointer events."
41
+ />
42
+ </InterfaceDefinition>
43
+ </AbstractNodeType>
44
+
45
+ <AbstractNodeType name="X3DLayerNode">
46
+ <InterfaceDefinition>
47
+ <field name="pointerEvents"
48
+ type="SFBool"
49
+ accessType="inputOutput"
50
+ default="TRUE"
51
+ description="pointerEvents defines whether this layer becomes target for pointer events."
41
52
  />
42
53
  </InterfaceDefinition>
43
54
  </AbstractNodeType>
@@ -678,7 +689,7 @@
678
689
  type="SFBool"
679
690
  accessType="inputOutput"
680
691
  default="TRUE"
681
- description="pointerEvents defines whether this Shape becomes target for pointer events."
692
+ description="pointerEvents defines whether this ParticleSystem becomes target for pointer events."
682
693
  />
683
694
  </InterfaceDefinition>
684
695
  </ConcreteNode>
@@ -725,7 +736,7 @@
725
736
  type="SFBool"
726
737
  accessType="inputOutput"
727
738
  default="TRUE"
728
- description="pointerEvents defines whether this Shape becomes target for pointer events."
739
+ description="pointerEvents defines whether this InstancedShape becomes target for pointer events."
729
740
  />
730
741
  <field name="castShadow"
731
742
  type="SFBool"
@@ -776,6 +787,28 @@
776
787
  </InterfaceDefinition>
777
788
  </ConcreteNode>
778
789
 
790
+ <ConcreteNode name="Layer">
791
+ <InterfaceDefinition>
792
+ <field name="pointerEvents"
793
+ type="SFBool"
794
+ accessType="inputOutput"
795
+ default="TRUE"
796
+ description="pointerEvents defines whether this Layer becomes target for pointer events."
797
+ />
798
+ </InterfaceDefinition>
799
+ </ConcreteNode>
800
+
801
+ <ConcreteNode name="LayoutLayer">
802
+ <InterfaceDefinition>
803
+ <field name="pointerEvents"
804
+ type="SFBool"
805
+ accessType="inputOutput"
806
+ default="TRUE"
807
+ description="pointerEvents defines whether this LayoutLayer becomes target for pointer events."
808
+ />
809
+ </InterfaceDefinition>
810
+ </ConcreteNode>
811
+
779
812
  <ConcreteNode name="IridescenceMaterialExtension">
780
813
  <InterfaceDefinition
781
814
  specificationUrl="https://create3000.github.io/x_ite/components/x-ite/iridescencematerialextension"
@@ -1226,6 +1259,19 @@
1226
1259
  maxInclusive="1"
1227
1260
  description="The multi-scatter albedo."
1228
1261
  />
1262
+ <field name="multiscatterColorTextureMapping"
1263
+ type="SFString"
1264
+ accessType="inputOutput"
1265
+ default=""
1266
+ description="Input/Output field multiscatterColorTextureMapping."
1267
+ />
1268
+ <field name="multiscatterColorTexture"
1269
+ type="SFNode"
1270
+ accessType="inputOutput"
1271
+ default="NULL"
1272
+ acceptableNodeTypes="X3DSingleTextureNode"
1273
+ description="A surface texture that defines the multi-scatter albedo at the volume's entry point. Stored in the RGB channels and encoded in sRGB. This will be multiplied by the multiscatterColorFactor."
1274
+ />
1229
1275
  <field name="scatterAnisotropy"
1230
1276
  type="SFFloat"
1231
1277
  accessType="inputOutput"
@@ -1515,5 +1561,130 @@
1515
1561
  </InterfaceDefinition>
1516
1562
  </ConcreteNode>
1517
1563
 
1564
+ <ConcreteNode name="RenderedTexture">
1565
+ <InterfaceDefinition specificationUrl="https://www.web3d.org/specifications/X3Dv4/ISO-IEC19775-1v4-IS/Part01/components/texturing.html#RenderedTexture"
1566
+ appinfo="A RenderedTexture is a texture node that renders a separate scene or viewpoint into an offscreen buffer, producing an image that can be applied to geometry in real time.">
1567
+ <componentInfo name="Texturing" level="4"/>
1568
+ <Inheritance baseType="X3DTexture2DNode"/>
1569
+ <field name="description"
1570
+ type="SFString"
1571
+ accessType="inputOutput"
1572
+ inheritedFrom="X3DTextureNode"
1573
+ description="Author-provided prose that describes intended purpose of the url asset."/>
1574
+ <field name="IS"
1575
+ type="SFNode"
1576
+ accessType="inputOutput"
1577
+ default="NULL"
1578
+ acceptableNodeTypes="IS"
1579
+ inheritedFrom="X3DNode"/>
1580
+ <field name="metadata"
1581
+ type="SFNode"
1582
+ accessType="inputOutput"
1583
+ default="NULL"
1584
+ acceptableNodeTypes="X3DMetadataObject"
1585
+ inheritedFrom="X3DNode"
1586
+ description="Information about this node can be contained in a MetadataBoolean, MetadataDouble, MetadataFloat, MetadataInteger, MetadataString or MetadataSet node."/>
1587
+ <field name="repeatS"
1588
+ type="SFBool"
1589
+ accessType="initializeOnly"
1590
+ default="true"
1591
+ inheritedFrom="X3DTexture2DNode"
1592
+ description="Whether to repeat texture along S axis horizontally from left to right."/>
1593
+ <field name="repeatT"
1594
+ type="SFBool"
1595
+ accessType="initializeOnly"
1596
+ default="true"
1597
+ inheritedFrom="X3DTexture2DNode"
1598
+ description="Whether to repeat texture along T axis vertically from top to bottom."/>
1599
+ <field name="textureProperties"
1600
+ type="SFNode"
1601
+ accessType="initializeOnly"
1602
+ default="NULL"
1603
+ acceptableNodeTypes="TextureProperties"
1604
+ inheritedFrom="X3DTexture2DNode"
1605
+ description="Optional single contained TextureProperties node that can specify additional visual attributes applied to corresponding texture images."/>
1606
+ <field name="DEF"
1607
+ type="SFString"
1608
+ accessType="inputOutput"
1609
+ inheritedFrom="X3DNode"
1610
+ baseType="xs:ID"
1611
+ description="DEF defines a unique ID name for this node, referenceable by other nodes."/>
1612
+ <field name="USE"
1613
+ type="SFString"
1614
+ accessType="inputOutput"
1615
+ inheritedFrom="X3DNode"
1616
+ baseType="xs:IDREF"
1617
+ description="USE means reuse an already DEF-ed node ID, excluding all child nodes and all other attributes (except for containerField, which can have a different value)."/>
1618
+ <field name="class"
1619
+ type="SFString"
1620
+ accessType="inputOutput"
1621
+ inheritedFrom="X3DNode"
1622
+ baseType="xs:NMTOKENS"
1623
+ description="The class attribute on each X3D node and statement is a space-separated list of classes, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets."/>
1624
+ <field name="id"
1625
+ type="SFString"
1626
+ accessType="inputOutput"
1627
+ inheritedFrom="X3DNode"
1628
+ baseType="xs:NMTOKEN"
1629
+ description="The id attribute on each X3D node and statement is considered a unique identifier when used as part of an encompassing HTML/DOM context."/>
1630
+ <field name="style"
1631
+ type="SFString"
1632
+ accessType="inputOutput"
1633
+ inheritedFrom="X3DNode"
1634
+ description="The style attribute on each X3D node and statement provides an inline block of CSS source for element styling, reserved for use by Cascading Style Sheets (CSS) and XML stylesheets."/>
1635
+ <field name="update"
1636
+ type="SFString"
1637
+ accessType="inputOutput"
1638
+ default="NONE"
1639
+ additionalEnumerationValuesAllowed="false"
1640
+ simpleType="generatedCubeMapTextureUpdateChoices"
1641
+ baseType="xs:NMTOKEN"
1642
+ description="update controls regeneration of the texture.">
1643
+ <enumeration value="NONE" appinfo="no further texture updates are rendered."/>
1644
+ <enumeration value="NEXT_FRAME_ONLY" appinfo="render texture once at end of frame."/>
1645
+ <enumeration value="ALWAYS" appinfo="texture to be rendered every frame."/>
1646
+ </field>
1647
+ <field name="dimensions"
1648
+ type="MFInt32"
1649
+ accessType="inputOutput"
1650
+ description="Sets the width, height, color components (and number of MRTs)."/>
1651
+ <field name="depthMap"
1652
+ type="SFBool"
1653
+ accessType="initializeOnly"
1654
+ default="false"
1655
+ description="The generated texture will contain the depth buffer of the image (instead of the color buffer as usual)."/>
1656
+ <field name="background"
1657
+ type="SFNode"
1658
+ accessType="inputOutput"
1659
+ default="NULL"
1660
+ description="Allows you to specify a background node explicitly, which will then be used during the render-to-texture process. If the value is NULL the currently bound background in the scene is used."
1661
+ acceptableNodeTypes="X3DBackgroundNode"/>
1662
+ <field name="fog"
1663
+ type="SFNode"
1664
+ accessType="inputOutput"
1665
+ default="NULL"
1666
+ description="Allows you to specify a fog node explicitly, which will then be used during the render-to-texture process. If the value is NULL the currently bound fog in the scene is used."
1667
+ acceptableNodeTypes="X3DFogObject"/>
1668
+ <field name="viewpoint"
1669
+ type="SFNode"
1670
+ accessType="inputOutput"
1671
+ default="NULL"
1672
+ description="Allows you to explicitly specify a viewpoint node from which to render to texture. If the value is NULL the currently bound viewpoint in the scene is used."
1673
+ acceptableNodeTypes="X3DViewpointNode"/>
1674
+ <field name="scene"
1675
+ type="SFNode"
1676
+ accessType="inputOutput"
1677
+ default="NULL"
1678
+ description="Sets a separate, potentially independent, subscene. If the value is NULL the current scene is used."
1679
+ acceptableNodeTypes="X3DChildNode"/>
1680
+ <containerField default="texture" type="containerFieldChoicesX3DTexture2DNode"/>
1681
+ <ContentModel>
1682
+ <GroupContentModel name="ChildContentModelCore" minOccurs="0"/>
1683
+ <NodeContentModel name="TextureProperties"/>
1684
+ <NodeContentModel name="ProtoInstance"/>
1685
+ </ContentModel>
1686
+ </InterfaceDefinition>
1687
+ </ConcreteNode>
1688
+
1518
1689
  </ConcreteNodes>
1519
1690
  </X3dUnifiedObjectModel>
@@ -1,5 +1,5 @@
1
- /* X_ITE v14.0.8 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-14.0.8")];
1
+ /* X_ITE v14.1.0 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-14.1.0")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope
@@ -1,2 +1,2 @@
1
- /* X_ITE v14.0.8 */
2
- const t=window[Symbol.for("X_ITE.X3D-14.0.8")];(()=>{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 b=n.n(S);const f=t.X3DConstants;var h=n.n(f);const F=t.Namespace;var g=n.n(F);function A(t){w().call(this,t,new(O())(t),new(b())(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",void 0)})();
1
+ /* X_ITE v14.1.0 */
2
+ const t=window[Symbol.for("X_ITE.X3D-14.1.0")];(()=>{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 b=n.n(S);const f=t.X3DConstants;var h=n.n(f);const F=t.Namespace;var g=n.n(F);function A(t){w().call(this,t,new(O())(t),new(b())(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",void 0)})();
@@ -1,5 +1,5 @@
1
- /* X_ITE v14.0.8 */
2
- const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-14.0.8")];
1
+ /* X_ITE v14.1.0 */
2
+ const __X_ITE_X3D__ = window [Symbol .for ("X_ITE.X3D-14.1.0")];
3
3
  /******/ (() => { // webpackBootstrap
4
4
  /******/ "use strict";
5
5
  /******/ // The require scope
@@ -379,6 +379,7 @@ Object .assign (Object .setPrototypeOf (CADFace .prototype, CADGeometry_X3DProdu
379
379
  this .collisionObject ?.traverse (type, renderObject);
380
380
  return;
381
381
  }
382
+ case (external_X_ITE_X3D_TraverseType_default()).DEPTH:
382
383
  case (external_X_ITE_X3D_TraverseType_default()).SHADOW:
383
384
  {
384
385
  this .shadowObject ?.traverse (type, renderObject);
@@ -1,2 +1,2 @@
1
- /* X_ITE v14.0.8 */
2
- const e=window[Symbol.for("X_ITE.X3D-14.0.8")];(()=>{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,v=S().add("CADAssembly",g),C=e.X3DBoundedObject;var D=t.n(C);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:[v,V,q,G,K,J],abstractNodes:[F]});S().add("CADGeometryComponent",void 0)})();
1
+ /* X_ITE v14.1.0 */
2
+ const e=window[Symbol.for("X_ITE.X3D-14.1.0")];(()=>{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,v=S().add("CADAssembly",g),C=e.X3DBoundedObject;var D=t.n(C);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().DEPTH: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:[v,V,q,G,K,J],abstractNodes:[F]});S().add("CADGeometryComponent",void 0)})();