x_ite 9.0.2 → 9.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 (47) hide show
  1. package/dist/assets/components/Annotation.js +33 -33
  2. package/dist/assets/components/Annotation.min.js +1 -1
  3. package/dist/assets/components/CADGeometry.js +34 -34
  4. package/dist/assets/components/CADGeometry.min.js +1 -1
  5. package/dist/assets/components/CubeMapTexturing.js +99 -105
  6. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  7. package/dist/assets/components/DIS.js +92 -47
  8. package/dist/assets/components/DIS.min.js +1 -1
  9. package/dist/assets/components/EventUtilities.js +34 -34
  10. package/dist/assets/components/EventUtilities.min.js +1 -1
  11. package/dist/assets/components/Geometry2D.js +45 -45
  12. package/dist/assets/components/Geometry2D.min.js +1 -1
  13. package/dist/assets/components/Geospatial.js +90 -76
  14. package/dist/assets/components/Geospatial.min.js +1 -1
  15. package/dist/assets/components/HAnim.js +171 -149
  16. package/dist/assets/components/HAnim.min.js +1 -1
  17. package/dist/assets/components/KeyDeviceSensor.js +18 -16
  18. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  19. package/dist/assets/components/Layout.js +64 -54
  20. package/dist/assets/components/Layout.min.js +1 -1
  21. package/dist/assets/components/NURBS.js +68 -173
  22. package/dist/assets/components/NURBS.min.js +1 -1
  23. package/dist/assets/components/ParticleSystems.js +123 -106
  24. package/dist/assets/components/ParticleSystems.min.js +1 -1
  25. package/dist/assets/components/Picking.js +106 -102
  26. package/dist/assets/components/Picking.min.js +1 -1
  27. package/dist/assets/components/RigidBodyPhysics.js +214 -125
  28. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  29. package/dist/assets/components/Scripting.js +43 -43
  30. package/dist/assets/components/Scripting.min.js +1 -1
  31. package/dist/assets/components/Text.js +34 -33
  32. package/dist/assets/components/Text.min.js +1 -1
  33. package/dist/assets/components/TextureProjection.js +48 -48
  34. package/dist/assets/components/TextureProjection.min.js +1 -1
  35. package/dist/assets/components/Texturing3D.js +60 -64
  36. package/dist/assets/components/Texturing3D.min.js +1 -1
  37. package/dist/assets/components/VolumeRendering.js +66 -66
  38. package/dist/assets/components/VolumeRendering.min.js +1 -1
  39. package/dist/assets/components/X_ITE.js +171 -14
  40. package/dist/assets/components/X_ITE.min.js +1 -1
  41. package/dist/x_ite.css +1 -1
  42. package/dist/x_ite.js +1401 -1000
  43. package/dist/x_ite.min.js +1 -1
  44. package/dist/x_ite.min.mjs +1 -1
  45. package/dist/x_ite.mjs +1401 -1000
  46. package/dist/x_ite.zip +0 -0
  47. package/package.json +2 -2
@@ -1,11 +1,11 @@
1
- /* X_ITE v9.0.2 */(() => { // webpackBootstrap
1
+ /* X_ITE v9.1.0 */(() => { // webpackBootstrap
2
2
  /******/ "use strict";
3
3
  /******/ var __webpack_modules__ = ({
4
4
 
5
5
  /***/ 355:
6
6
  /***/ ((module) => {
7
7
 
8
- module.exports = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("lib/jquery");
8
+ module.exports = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("lib/jquery");
9
9
 
10
10
  /***/ })
11
11
 
@@ -73,22 +73,22 @@ var __webpack_exports__ = {};
73
73
  // UNUSED EXPORTS: default
74
74
 
75
75
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components\")"
76
- const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components");
76
+ const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components");
77
77
  var Components_default = /*#__PURE__*/__webpack_require__.n(Components_namespaceObject);
78
78
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Texturing/TextureProperties\")"
79
- const TextureProperties_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Texturing/TextureProperties");
79
+ const TextureProperties_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Texturing/TextureProperties");
80
80
  var TextureProperties_default = /*#__PURE__*/__webpack_require__.n(TextureProperties_namespaceObject);
81
81
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Vector3\")"
82
- const Vector3_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Numbers/Vector3");
82
+ const Vector3_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Numbers/Vector3");
83
83
  var Vector3_default = /*#__PURE__*/__webpack_require__.n(Vector3_namespaceObject);
84
84
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Matrix4\")"
85
- const Matrix4_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Numbers/Matrix4");
85
+ const Matrix4_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Numbers/Matrix4");
86
86
  var Matrix4_default = /*#__PURE__*/__webpack_require__.n(Matrix4_namespaceObject);
87
87
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Geometry/ViewVolume\")"
88
- const ViewVolume_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Geometry/ViewVolume");
88
+ const ViewVolume_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Geometry/ViewVolume");
89
89
  var ViewVolume_default = /*#__PURE__*/__webpack_require__.n(ViewVolume_namespaceObject);
90
90
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Namespace\")"
91
- const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Namespace");
91
+ const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Namespace");
92
92
  var Namespace_default = /*#__PURE__*/__webpack_require__.n(Namespace_namespaceObject);
93
93
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Layout/X3DLayoutContext.js
94
94
  /*******************************************************************************
@@ -177,7 +177,7 @@ Object .assign (X3DLayoutContext .prototype,
177
177
  screenPoint = new (Vector3_default()) (0, 0, 0),
178
178
  screenMatrix = new (Matrix4_default()) ();
179
179
 
180
- return function (renderObject, matrix, contentScale)
180
+ return function (renderObject, matrix, contentScale, snap)
181
181
  {
182
182
  // throws domain error
183
183
 
@@ -203,15 +203,18 @@ Object .assign (X3DLayoutContext .prototype,
203
203
 
204
204
  // Snap to whole pixel.
205
205
 
206
- ViewVolume_default().projectPoint ((Vector3_default()).Zero, screenMatrix, projectionMatrix, viewport, screenPoint);
206
+ if (snap)
207
+ {
208
+ ViewVolume_default().projectPoint ((Vector3_default()).Zero, screenMatrix, projectionMatrix, viewport, screenPoint);
207
209
 
208
- screenPoint .x = Math .round (screenPoint .x);
209
- screenPoint .y = Math .round (screenPoint .y);
210
+ screenPoint .x = Math .round (screenPoint .x);
211
+ screenPoint .y = Math .round (screenPoint .y);
210
212
 
211
- ViewVolume_default().unProjectPoint (screenPoint .x, screenPoint .y, screenPoint .z, screenMatrix, projectionMatrix, viewport, screenPoint);
213
+ ViewVolume_default().unProjectPoint (screenPoint .x, screenPoint .y, screenPoint .z, screenMatrix, projectionMatrix, viewport, screenPoint);
212
214
 
213
- screenPoint .z = 0;
214
- screenMatrix .translate (screenPoint);
215
+ screenPoint .z = 0;
216
+ screenMatrix .translate (screenPoint);
217
+ }
215
218
 
216
219
  // Assign relative matrix.
217
220
 
@@ -226,19 +229,19 @@ const __default__ = X3DLayoutContext;
226
229
  Namespace_default().add ("X3DLayoutContext", "x_ite/Browser/Layout/X3DLayoutContext", __default__);
227
230
  /* harmony default export */ const Layout_X3DLayoutContext = (__default__);
228
231
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Fields\")"
229
- const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Fields");
232
+ const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Fields");
230
233
  var Fields_default = /*#__PURE__*/__webpack_require__.n(Fields_namespaceObject);
231
234
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DFieldDefinition\")"
232
- const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Base/X3DFieldDefinition");
235
+ const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Base/X3DFieldDefinition");
233
236
  var X3DFieldDefinition_default = /*#__PURE__*/__webpack_require__.n(X3DFieldDefinition_namespaceObject);
234
237
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/FieldDefinitionArray\")"
235
- const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Base/FieldDefinitionArray");
238
+ const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Base/FieldDefinitionArray");
236
239
  var FieldDefinitionArray_default = /*#__PURE__*/__webpack_require__.n(FieldDefinitionArray_namespaceObject);
237
240
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Core/X3DChildNode\")"
238
- const X3DChildNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Core/X3DChildNode");
241
+ const X3DChildNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Core/X3DChildNode");
239
242
  var X3DChildNode_default = /*#__PURE__*/__webpack_require__.n(X3DChildNode_namespaceObject);
240
243
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DConstants\")"
241
- const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Base/X3DConstants");
244
+ const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Base/X3DConstants");
242
245
  var X3DConstants_default = /*#__PURE__*/__webpack_require__.n(X3DConstants_namespaceObject);
243
246
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Layout/X3DLayoutNode.js
244
247
  /*******************************************************************************
@@ -307,9 +310,9 @@ Object .defineProperties (X3DLayoutNode,
307
310
  value: "X3DLayoutNode",
308
311
  enumerable: true,
309
312
  },
310
- componentName:
313
+ componentInfo:
311
314
  {
312
- value: "Layout",
315
+ value: Object .freeze ({ name: "Layout", level: 1 }),
313
316
  enumerable: true,
314
317
  },
315
318
  });
@@ -320,13 +323,13 @@ const X3DLayoutNode_default_ = X3DLayoutNode;
320
323
  Namespace_default().add ("X3DLayoutNode", "x_ite/Components/Layout/X3DLayoutNode", X3DLayoutNode_default_);
321
324
  /* harmony default export */ const Layout_X3DLayoutNode = (X3DLayoutNode_default_);
322
325
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DCast\")"
323
- const X3DCast_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Base/X3DCast");
326
+ const X3DCast_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Base/X3DCast");
324
327
  var X3DCast_default = /*#__PURE__*/__webpack_require__.n(X3DCast_namespaceObject);
325
328
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Vector2\")"
326
- const Vector2_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Numbers/Vector2");
329
+ const Vector2_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Numbers/Vector2");
327
330
  var Vector2_default = /*#__PURE__*/__webpack_require__.n(Vector2_namespaceObject);
328
331
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Rotation4\")"
329
- const Rotation4_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Numbers/Rotation4");
332
+ const Rotation4_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Numbers/Rotation4");
330
333
  var Rotation4_default = /*#__PURE__*/__webpack_require__.n(Rotation4_namespaceObject);
331
334
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Layout/Layout.js
332
335
  /*******************************************************************************
@@ -940,9 +943,9 @@ Object .defineProperties (Layout,
940
943
  value: "Layout",
941
944
  enumerable: true,
942
945
  },
943
- componentName:
946
+ componentInfo:
944
947
  {
945
- value: "Layout",
948
+ value: Object .freeze ({ name: "Layout", level: 1 }),
946
949
  enumerable: true,
947
950
  },
948
951
  containerField:
@@ -952,7 +955,7 @@ Object .defineProperties (Layout,
952
955
  },
953
956
  specificationRange:
954
957
  {
955
- value: Object .freeze (["3.2", "Infinity"]),
958
+ value: Object .freeze ({ from: "3.2", to: "Infinity" }),
956
959
  enumerable: true,
957
960
  },
958
961
  fieldDefinitions:
@@ -976,10 +979,10 @@ const Layout_default_ = Layout;
976
979
  Namespace_default().add ("Layout", "x_ite/Components/Layout/Layout", Layout_default_);
977
980
  /* harmony default export */ const Layout_Layout = (Layout_default_);
978
981
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Grouping/X3DGroupingNode\")"
979
- const X3DGroupingNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Grouping/X3DGroupingNode");
982
+ const X3DGroupingNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Grouping/X3DGroupingNode");
980
983
  var X3DGroupingNode_default = /*#__PURE__*/__webpack_require__.n(X3DGroupingNode_namespaceObject);
981
984
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Rendering/TraverseType\")"
982
- const TraverseType_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Rendering/TraverseType");
985
+ const TraverseType_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Rendering/TraverseType");
983
986
  var TraverseType_default = /*#__PURE__*/__webpack_require__.n(TraverseType_namespaceObject);
984
987
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Layout/LayoutGroup.js
985
988
  /*******************************************************************************
@@ -1136,9 +1139,9 @@ Object .defineProperties (LayoutGroup,
1136
1139
  value: "LayoutGroup",
1137
1140
  enumerable: true,
1138
1141
  },
1139
- componentName:
1142
+ componentInfo:
1140
1143
  {
1141
- value: "Layout",
1144
+ value: Object .freeze ({ name: "Layout", level: 1 }),
1142
1145
  enumerable: true,
1143
1146
  },
1144
1147
  containerField:
@@ -1148,7 +1151,7 @@ Object .defineProperties (LayoutGroup,
1148
1151
  },
1149
1152
  specificationRange:
1150
1153
  {
1151
- value: Object .freeze (["3.2", "Infinity"]),
1154
+ value: Object .freeze ({ from: "3.2", to: "Infinity" }),
1152
1155
  enumerable: true,
1153
1156
  },
1154
1157
  fieldDefinitions:
@@ -1175,10 +1178,10 @@ const LayoutGroup_default_ = LayoutGroup;
1175
1178
  Namespace_default().add ("LayoutGroup", "x_ite/Components/Layout/LayoutGroup", LayoutGroup_default_);
1176
1179
  /* harmony default export */ const Layout_LayoutGroup = (LayoutGroup_default_);
1177
1180
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Layering/X3DLayerNode\")"
1178
- const X3DLayerNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Layering/X3DLayerNode");
1181
+ const X3DLayerNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Layering/X3DLayerNode");
1179
1182
  var X3DLayerNode_default = /*#__PURE__*/__webpack_require__.n(X3DLayerNode_namespaceObject);
1180
1183
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Navigation/OrthoViewpoint\")"
1181
- const OrthoViewpoint_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Navigation/OrthoViewpoint");
1184
+ const OrthoViewpoint_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Navigation/OrthoViewpoint");
1182
1185
  var OrthoViewpoint_default = /*#__PURE__*/__webpack_require__.n(OrthoViewpoint_namespaceObject);
1183
1186
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Layout/LayoutLayer.js
1184
1187
  /*******************************************************************************
@@ -1272,9 +1275,9 @@ Object .defineProperties (LayoutLayer,
1272
1275
  value: "LayoutLayer",
1273
1276
  enumerable: true,
1274
1277
  },
1275
- componentName:
1278
+ componentInfo:
1276
1279
  {
1277
- value: "Layout",
1280
+ value: Object .freeze ({ name: "Layout", level: 1 }),
1278
1281
  enumerable: true,
1279
1282
  },
1280
1283
  containerField:
@@ -1284,7 +1287,7 @@ Object .defineProperties (LayoutLayer,
1284
1287
  },
1285
1288
  specificationRange:
1286
1289
  {
1287
- value: Object .freeze (["3.2", "Infinity"]),
1290
+ value: Object .freeze ({ from: "3.2", to: "Infinity" }),
1288
1291
  enumerable: true,
1289
1292
  },
1290
1293
  fieldDefinitions:
@@ -1310,25 +1313,25 @@ const LayoutLayer_default_ = LayoutLayer;
1310
1313
  Namespace_default().add ("LayoutLayer", "x_ite/Components/Layout/LayoutLayer", LayoutLayer_default_);
1311
1314
  /* harmony default export */ const Layout_LayoutLayer = (LayoutLayer_default_);
1312
1315
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Text/X3DFontStyleNode\")"
1313
- const X3DFontStyleNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Text/X3DFontStyleNode");
1316
+ const X3DFontStyleNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Text/X3DFontStyleNode");
1314
1317
  var X3DFontStyleNode_default = /*#__PURE__*/__webpack_require__.n(X3DFontStyleNode_namespaceObject);
1315
1318
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Browser/Text/X3DTextGeometry\")"
1316
- const X3DTextGeometry_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Browser/Text/X3DTextGeometry");
1319
+ const X3DTextGeometry_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Browser/Text/X3DTextGeometry");
1317
1320
  var X3DTextGeometry_default = /*#__PURE__*/__webpack_require__.n(X3DTextGeometry_namespaceObject);
1318
1321
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Browser/Text/TextAlignment\")"
1319
- const TextAlignment_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Browser/Text/TextAlignment");
1322
+ const TextAlignment_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Browser/Text/TextAlignment");
1320
1323
  var TextAlignment_default = /*#__PURE__*/__webpack_require__.n(TextAlignment_namespaceObject);
1321
1324
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Texturing/PixelTexture\")"
1322
- const PixelTexture_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Texturing/PixelTexture");
1325
+ const PixelTexture_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Texturing/PixelTexture");
1323
1326
  var PixelTexture_default = /*#__PURE__*/__webpack_require__.n(PixelTexture_namespaceObject);
1324
1327
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Rendering/X3DGeometryNode\")"
1325
- const X3DGeometryNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("x_ite/Components/Rendering/X3DGeometryNode");
1328
+ const X3DGeometryNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Components/Rendering/X3DGeometryNode");
1326
1329
  var X3DGeometryNode_default = /*#__PURE__*/__webpack_require__.n(X3DGeometryNode_namespaceObject);
1327
1330
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Geometry/Box3\")"
1328
- const Box3_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Geometry/Box3");
1331
+ const Box3_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Geometry/Box3");
1329
1332
  var Box3_default = /*#__PURE__*/__webpack_require__.n(Box3_namespaceObject);
1330
1333
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Algorithm\")"
1331
- const Algorithm_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.0.2")] .require ("standard/Math/Algorithm");
1334
+ const Algorithm_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("standard/Math/Algorithm");
1332
1335
  var Algorithm_default = /*#__PURE__*/__webpack_require__.n(Algorithm_namespaceObject);
1333
1336
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/Layout/ScreenText.js
1334
1337
  /* provided dependency */ var $ = __webpack_require__(355);
@@ -1711,7 +1714,7 @@ Object .assign (Object .setPrototypeOf (ScreenText .prototype, (X3DTextGeometry_
1711
1714
 
1712
1715
  return function (type, renderObject)
1713
1716
  {
1714
- this .getBrowser () .getScreenScaleMatrix (renderObject, this .matrix, 1);
1717
+ this .getBrowser () .getScreenScaleMatrix (renderObject, this .matrix, 1, true);
1715
1718
 
1716
1719
  // Update Text bbox.
1717
1720
 
@@ -1835,9 +1838,9 @@ Object .defineProperties (ScreenFontStyle,
1835
1838
  value: "ScreenFontStyle",
1836
1839
  enumerable: true,
1837
1840
  },
1838
- componentName:
1841
+ componentInfo:
1839
1842
  {
1840
- value: "Layout",
1843
+ value: Object .freeze ({ name: "Layout", level: 2 }),
1841
1844
  enumerable: true,
1842
1845
  },
1843
1846
  containerField:
@@ -1847,7 +1850,7 @@ Object .defineProperties (ScreenFontStyle,
1847
1850
  },
1848
1851
  specificationRange:
1849
1852
  {
1850
- value: Object .freeze (["3.2", "Infinity"]),
1853
+ value: Object .freeze ({ from: "3.2", to: "Infinity" }),
1851
1854
  enumerable: true,
1852
1855
  },
1853
1856
  fieldDefinitions:
@@ -1873,6 +1876,9 @@ const ScreenFontStyle_default_ = ScreenFontStyle;
1873
1876
 
1874
1877
  Namespace_default().add ("ScreenFontStyle", "x_ite/Components/Layout/ScreenFontStyle", ScreenFontStyle_default_);
1875
1878
  /* harmony default export */ const Layout_ScreenFontStyle = (ScreenFontStyle_default_);
1879
+ ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Prototype/X3DProtoDeclaration\")"
1880
+ const X3DProtoDeclaration_namespaceObject = window [Symbol .for ("X_ITE.X3D-9.1.0")] .require ("x_ite/Prototype/X3DProtoDeclaration");
1881
+ var X3DProtoDeclaration_default = /*#__PURE__*/__webpack_require__.n(X3DProtoDeclaration_namespaceObject);
1876
1882
  ;// CONCATENATED MODULE: ./src/x_ite/Components/Layout/ScreenGroup.js
1877
1883
  /*******************************************************************************
1878
1884
  *
@@ -1929,13 +1935,17 @@ Namespace_default().add ("ScreenFontStyle", "x_ite/Components/Layout/ScreenFontS
1929
1935
 
1930
1936
 
1931
1937
 
1938
+
1932
1939
  function ScreenGroup (executionContext)
1933
1940
  {
1934
1941
  X3DGroupingNode_default().call (this, executionContext);
1935
1942
 
1936
1943
  this .addType ((X3DConstants_default()).ScreenGroup);
1937
1944
 
1938
- this .matrix = new (Matrix4_default()) (0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,1);
1945
+ if (executionContext .getOuterNode () instanceof (X3DProtoDeclaration_default()))
1946
+ this .matrix = new (Matrix4_default()) ();
1947
+ else
1948
+ this .matrix = new (Matrix4_default()) (0,0,0,0, 0,0,0,0, 0,0,0,0, 0,0,0,0);
1939
1949
  }
1940
1950
 
1941
1951
  Object .assign (Object .setPrototypeOf (ScreenGroup .prototype, (X3DGroupingNode_default()).prototype),
@@ -1961,7 +1971,7 @@ Object .assign (Object .setPrototypeOf (ScreenGroup .prototype, (X3DGroupingNode
1961
1971
  {
1962
1972
  const browser = this .getBrowser ();
1963
1973
 
1964
- browser .getScreenScaleMatrix (renderObject, this .matrix, browser .getRenderingProperty ("ContentScale"));
1974
+ browser .getScreenScaleMatrix (renderObject, this .matrix, browser .getRenderingProperty ("ContentScale"), false);
1965
1975
  break;
1966
1976
  }
1967
1977
  }
@@ -1984,9 +1994,9 @@ Object .defineProperties (ScreenGroup,
1984
1994
  value: "ScreenGroup",
1985
1995
  enumerable: true,
1986
1996
  },
1987
- componentName:
1997
+ componentInfo:
1988
1998
  {
1989
- value: "Layout",
1999
+ value: Object .freeze ({ name: "Layout", level: 2 }),
1990
2000
  enumerable: true,
1991
2001
  },
1992
2002
  containerField:
@@ -1996,7 +2006,7 @@ Object .defineProperties (ScreenGroup,
1996
2006
  },
1997
2007
  specificationRange:
1998
2008
  {
1999
- value: Object .freeze (["3.2", "Infinity"]),
2009
+ value: Object .freeze ({ from: "3.2", to: "Infinity" }),
2000
2010
  enumerable: true,
2001
2011
  },
2002
2012
  fieldDefinitions:
@@ -1 +1 @@
1
- /* X_ITE v9.0.2 */(()=>{"use strict";var e={355:e=>{e.exports=window[Symbol.for("X_ITE.X3D-9.0.2")].require("lib/jquery")}},t={};function i(n){var s=t[n];if(void 0!==s)return s.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,i),o.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 n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components");var t=i.n(e);const n=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Texturing/TextureProperties");var s=i.n(n);const o=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Numbers/Vector3");var r=i.n(o);const a=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Numbers/Matrix4");var l=i.n(a);const h=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Geometry/ViewVolume");var u=i.n(h);const c=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Namespace");var d=i.n(c);const p=Symbol();function y(){}Object.assign(y.prototype,{getScreenTextureProperties(){return this[p]=new(s())(this.getPrivateScene()),this[p]._boundaryModeS="CLAMP_TO_EDGE",this[p]._boundaryModeT="CLAMP_TO_EDGE",this[p]._boundaryModeR="CLAMP_TO_EDGE",this[p]._minificationFilter="NEAREST_PIXEL",this[p]._magnificationFilter="NEAREST_PIXEL",this[p]._generateMipMaps=!1,this[p]._textureCompression="DEFAULT",this[p].setup(),this.getScreenTextureProperties=function(){return this[p]},Object.defineProperty(this,"getScreenTextureProperties",{enumerable:!1}),this[p]},getScreenScaleMatrix:(()=>{const e=new(r())(0,0,0),t=new(r())(0,0,0),i=new(l());return function(n,s,o){const a=n.getModelViewMatrix().get(),l=n.getProjectionMatrix().get(),h=n.getViewVolume().getViewport();n.getViewpoint().getScreenScale(a.origin,h,e);const c=a.xAxis.normalize().multiply(e.x*o),d=a.yAxis.normalize().multiply(e.y*o),p=a.zAxis.normalize().multiply(e.x*o);i.set(c.x,c.y,c.z,0,d.x,d.y,d.z,0,p.x,p.y,p.z,0,a[12],a[13],a[14],1),u().projectPoint(r().Zero,i,l,h,t),t.x=Math.round(t.x),t.y=Math.round(t.y),u().unProjectPoint(t.x,t.y,t.z,i,l,h,t),t.z=0,i.translate(t),s.assign(a).inverse().multLeft(i)}})()});const g=y;d().add("X3DLayoutContext","x_ite/Browser/Layout/X3DLayoutContext",g);const w=g,f=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Fields");var x=i.n(f);const _=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Base/X3DFieldDefinition");var m=i.n(_);const S=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Base/FieldDefinitionArray");var b=i.n(S);const X=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Core/X3DChildNode");var M=i.n(X);const O=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Base/X3DConstants");var v=i.n(O);function z(e){M().call(this,e),this.addType(v().X3DLayoutNode)}Object.setPrototypeOf(z.prototype,M().prototype),Object.defineProperties(z,{typeName:{value:"X3DLayoutNode",enumerable:!0},componentName:{value:"Layout",enumerable:!0}});const T=z;d().add("X3DLayoutNode","x_ite/Components/Layout/X3DLayoutNode",T);const N=T,F=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Base/X3DCast");var L=i.n(F);const I=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Numbers/Vector2");var E=i.n(I);const U=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Numbers/Rotation4");var D=i.n(U);let C=0;const B=C++,Y=C++,P=C++,R=C++,G=C++,V=C++,j=C++,A=C++,q=C++,k=C++;function W(e){N.call(this,e),this.addType(v().Layout),this.alignX=Y,this.alignY=Y,this.offsetUnitX=V,this.offsetUnitY=V,this.offsetX=0,this.offsetY=0,this.sizeUnitX=V,this.sizeUnitY=V,this.sizeX=1,this.sizeY=1,this.scaleModeX=q,this.scaleModeY=q,this.parent=null,this.rectangleCenter=new(E())(0,0),this.rectangleSize=new(E())(0,0),this.matrix=new(l())}Object.assign(Object.setPrototypeOf(W.prototype,N.prototype),{viewportPixel:new(E())(0,0),pixelSize:new(E())(0,0),translation:new(r())(0,0,0),offset:new(r())(0,0,0),scale:new(r())(1,1,1),currentTranslation:new(r())(0,0,0),currentRotation:new(D()),currentScale:new(r())(0,0,0),modelViewMatrix:new(l()),initialize(){N.prototype.initialize.call(this),this._align.addInterest("set_align__",this),this._offsetUnits.addInterest("set_offsetUnits__",this),this._offset.addInterest("set_offset__",this),this._sizeUnits.addInterest("set_sizeUnits__",this),this._size.addInterest("set_size__",this),this._scaleMode.addInterest("set_scaleMode__",this),this.set_align__(),this.set_offsetUnits__(),this.set_offset__(),this.set_sizeUnits__(),this.set_size__(),this.set_scaleMode__()},set_align__(){this._align.length>0?"LEFT"===this._align[0]?this.alignX=B:"RIGHT"===this._align[0]?this.alignX=P:this.alignX=Y:this.alignX=Y,this._align.length>1?"BOTTOM"===this._align[1]?this.alignY=R:"TOP"===this._align[1]?this.alignY=G:this.alignY=Y:this.alignY=Y},set_offsetUnits__(){this._offsetUnits.length>0?("FRACTION"===this._offsetUnits[0]?this.offsetUnitX=j:"PIXEL"===this._offsetUnits[0]?this.offsetUnitX=A:this.offsetUnitX=V,this._offsetUnits.length>1?"FRACTION"===this._offsetUnits[1]?this.offsetUnitY=j:"PIXEL"===this._offsetUnits[1]?this.offsetUnitY=A:this.offsetUnitY=V:this.offsetUnitY=this.offsetUnitX):(this.offsetUnitX=V,this.offsetUnitY=V)},set_offset__(){this._offset.length>0?(this.offsetX=this._offset[0],this._offset.length>1?this.offsetY=this._offset[1]:this.offsetY=offsetX):(this.offsetX=0,this.offsetY=0)},set_sizeUnits__(){this._sizeUnits.length>0?("FRACTION"===this._sizeUnits[0]?this.sizeUnitX=j:"PIXEL"===this._sizeUnits[0]?this.sizeUnitX=A:this.sizeUnitX=V,this._sizeUnits.length>1?"FRACTION"===this._sizeUnits[1]?this.sizeUnitY=j:"PIXEL"===this._sizeUnits[1]?this.sizeUnitY=A:this.sizeUnitY=V:this.sizeUnitY=this.sizeUnitX):(this.sizeUnitX=V,this.sizeUnitY=V)},set_size__(){this._size.length>0?(this.sizeX=this._size[0],this._size.length>1?this.sizeY=this._size[1]:this.sizeY=this.sizeX):(this.sizeX=0,this.sizeY=0)},set_scaleMode__(){this._scaleMode.length>0?("FRACTION"===this._scaleMode[0]?this.scaleModeX=j:"PIXEL"===this._scaleMode[0]?this.scaleModeX=A:"STRETCH"===this._scaleMode[0]?this.scaleModeX=k:this.scaleModeX=q,this._scaleMode.length>1?"FRACTION"===this._scaleMode[1]?this.scaleModeY=j:"PIXEL"===this._scaleMode[1]?this.scaleModeY=A:"STRETCH"===this._scaleMode[1]?this.scaleModeY=k:this.scaleModeY=q:this.scaleModeY=this.scaleModeX):(this.scaleModeX=q,this.scaleModeY=q)},getRectangleCenter(){return this.rectangleCenter},getRectangleSize(){return this.rectangleSize},getAlignX(){return this.alignX},getAlignY(){return this.alignY},getOffsetUnitX(){return this.offsetUnitX===V?this.parent?this.parent.getOffsetUnitX():j:this.offsetUnitX},getOffsetUnitY(){return this.offsetUnitY===V?this.parent?this.parent.getOffsetUnitY():j:this.offsetUnitY},getOffsetX(){return this.offsetX},getOffsetY(){return this.offsetY},getSizeUnitX(){return this.sizeUnitX===V?this.parent?this.parent.getSizeUnitX():j:this.sizeUnitX},getSizeUnitY(){return this.sizeUnitY===V?this.parent?this.parent.getSizeUnitY():j:this.sizeUnitY},getSizeX(){return this.sizeX},getSizeY(){return this.sizeY},getScaleModeX(){return this.parent?this.scaleModeX:this.scaleModeX===q?j:this.scaleModeX},getScaleModeY(){return this.parent?this.scaleModeY:this.scaleModeY===q?j:this.scaleModeY},transform(e,t){const i=this.parent=t.getParentLayout(),n=this.getBrowser().getRenderingProperty("ContentScale"),s=this.matrix,o=t.getViewpoint(),r=t.getNavigationInfo().getNearValue(),a=t.getViewVolume().getScissor(),l=o.getViewportSize(a,r),h=this.viewportPixel,u=this.pixelSize,c=i?i.getRectangleSize():l,d=this.rectangleSize,p=this.rectangleCenter;switch(h.set(a[2],a[3]).divide(n),u.assign(l).divVec(h),this.getSizeUnitX()){case j:d.x=this.sizeX*c.x;break;case A:d.x=this.sizeX*u.x}switch(this.getSizeUnitY()){case j:d.y=this.sizeY*c.y;break;case A:d.y=this.sizeY*u.y}const y=this.translation.set(0,0,0);switch(this.getAlignX()){case B:y.x=-(c.x-d.x)/2;break;case Y:this.getSizeUnitX()===A&&1&h.x&&(y.x=-u.x/2);break;case P:y.x=(c.x-d.x)/2}switch(this.getAlignY()){case R:y.y=-(c.y-d.y)/2;break;case Y:this.getSizeUnitX===A&&1&h.y&&(y.y=-u.y/2);break;case G:y.y=(c.y-d.y)/2}const g=this.offset.set(0,0,0);switch(this.getOffsetUnitX()){case j:g.x=this.offsetX*c.x;break;case A:g.x=this.offsetX*l.x/h.x}switch(this.getOffsetUnitY()){case j:g.y=this.offsetY*c.y;break;case A:g.y=this.offsetY*l.y/h.y}const w=this.scale.set(1,1,1),f=this.currentTranslation,x=this.currentRotation,_=this.currentScale;switch(t.getModelViewMatrix().get().get(f,x,_),this.getScaleModeX()){case q:w.x=_.x;break;case j:w.x=d.x;break;case k:break;case A:w.x=l.x/h.x}switch(this.getScaleModeY()){case q:w.y=_.y;break;case j:w.y=d.y;break;case k:break;case A:w.y=l.y/h.y}return this.getScaleModeX()===k?this.getScaleModeY()===k?d.x>d.y?(w.x=d.x,w.y=w.x):(w.y=d.y,w.x=w.y):w.x=w.y:this.getScaleModeY()===k&&(w.y=w.x),p.assign(y.add(g)),s.set(f,x),s.translate(y),s.scale(w),s}}),Object.defineProperties(W,{typeName:{value:"Layout",enumerable:!0},componentName:{value:"Layout",enumerable:!0},containerField:{value:"layout",enumerable:!0},specificationRange:{value:Object.freeze(["3.2","Infinity"]),enumerable:!0},fieldDefinitions:{value:new(b())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"align",new(x().MFString)("CENTER","CENTER")),new(m())(v().inputOutput,"offsetUnits",new(x().MFString)("WORLD","WORLD")),new(m())(v().inputOutput,"offset",new(x().MFFloat)(0,0)),new(m())(v().inputOutput,"sizeUnits",new(x().MFString)("WORLD","WORLD")),new(m())(v().inputOutput,"size",new(x().MFFloat)(1,1)),new(m())(v().inputOutput,"scaleMode",new(x().MFString)("NONE","NONE"))]),enumerable:!0}});const H=W;d().add("Layout","x_ite/Components/Layout/Layout",H);const K=H,Z=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Grouping/X3DGroupingNode");var Q=i.n(Z);const J=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Rendering/TraverseType");var $=i.n(J);function ee(e){Q().call(this,e),this.addType(v().LayoutGroup),this.viewportNode=null,this.layoutNode=null,this.matrix=new(l()),this.modelViewMatrix=new(l()),this.screenMatrix=new(l())}Object.assign(Object.setPrototypeOf(ee.prototype,Q().prototype),{initialize(){Q().prototype.initialize.call(this),this._viewport.addInterest("set_viewport__",this),this._layout.addInterest("set_layout__",this),this.set_viewport__(),this.set_layout__()},set_viewport__(){this.viewportNode=L()(v().X3DViewportNode,this._viewport)},set_layout__(){this.layoutNode=L()(v().X3DLayoutNode,this._layout)},getBBox(e,t){return Q().prototype.getBBox.call(this,e,t).multRight(this.getMatrix())},getMatrix(){return this.layoutNode?this.matrix.assign(this.modelViewMatrix).inverse().multLeft(this.screenMatrix):this.matrix.identity()},getLayout(){return this.layoutNode},traverse(e,t){if(e!==$().COLLISION){if(this.viewportNode&&this.viewportNode.push(),this.layoutNode){const i=t.getModelViewMatrix();this.modelViewMatrix.assign(i.get()),this.screenMatrix.assign(this.layoutNode.transform(e,t)),i.pushMatrix(this.screenMatrix),t.getLayouts().push(this.layoutNode),Q().prototype.traverse.call(this,e,t),t.getLayouts().pop(),i.pop()}else Q().prototype.traverse.call(this,e,t);this.viewportNode&&this.viewportNode.pop()}}}),Object.defineProperties(ee,{typeName:{value:"LayoutGroup",enumerable:!0},componentName:{value:"Layout",enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze(["3.2","Infinity"]),enumerable:!0},fieldDefinitions:{value:new(b())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"layout",new(x().SFNode)),new(m())(v().inputOutput,"viewport",new(x().SFNode)),new(m())(v().inputOutput,"visible",new(x().SFBool)(!0)),new(m())(v().inputOutput,"bboxDisplay",new(x().SFBool)),new(m())(v().initializeOnly,"bboxSize",new(x().SFVec3f)(-1,-1,-1)),new(m())(v().initializeOnly,"bboxCenter",new(x().SFVec3f)),new(m())(v().inputOnly,"addChildren",new(x().MFNode)),new(m())(v().inputOnly,"removeChildren",new(x().MFNode)),new(m())(v().inputOutput,"children",new(x().MFNode))]),enumerable:!0}});const te=ee;d().add("LayoutGroup","x_ite/Components/Layout/LayoutGroup",te);const ie=te,ne=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Layering/X3DLayerNode");var se=i.n(ne);const oe=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Navigation/OrthoViewpoint");var re=i.n(oe);function ae(e){se().call(this,e,new(re())(e),new ie(e)),this.addType(v().LayoutLayer)}Object.assign(Object.setPrototypeOf(ae.prototype,se().prototype),{initialize(){se().prototype.initialize.call(this),this._layout.addFieldInterest(this.getGroup()._layout),this._addChildren.addFieldInterest(this.getGroup()._addChildren),this._removeChildren.addFieldInterest(this.getGroup()._removeChildren),this._children.addFieldInterest(this.getGroup()._children),this.getGroup()._layout=this._layout,this.getGroup()._children=this._children,this.getGroup().setPrivate(!0),this.getGroup().setup()}}),Object.defineProperties(ae,{typeName:{value:"LayoutLayer",enumerable:!0},componentName:{value:"Layout",enumerable:!0},containerField:{value:"layers",enumerable:!0},specificationRange:{value:Object.freeze(["3.2","Infinity"]),enumerable:!0},fieldDefinitions:{value:new(b())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"pickable",new(x().SFBool)(!0)),new(m())(v().inputOutput,"objectType",new(x().MFString)("ALL")),new(m())(v().inputOutput,"visible",new(x().SFBool)(!0)),new(m())(v().inputOutput,"layout",new(x().SFNode)),new(m())(v().inputOutput,"viewport",new(x().SFNode)),new(m())(v().inputOnly,"addChildren",new(x().MFNode)),new(m())(v().inputOnly,"removeChildren",new(x().MFNode)),new(m())(v().inputOutput,"children",new(x().MFNode))]),enumerable:!0}});const le=ae;d().add("LayoutLayer","x_ite/Components/Layout/LayoutLayer",le);const he=le,ue=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Text/X3DFontStyleNode");var ce=i.n(ue);const de=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Browser/Text/X3DTextGeometry");var pe=i.n(de);const ye=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Browser/Text/TextAlignment");var ge=i.n(ye);const we=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Texturing/PixelTexture");var fe=i.n(we);const xe=window[Symbol.for("X_ITE.X3D-9.0.2")].require("x_ite/Components/Rendering/X3DGeometryNode");var _e=i.n(xe);const me=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Geometry/Box3");var Se=i.n(me);const be=window[Symbol.for("X_ITE.X3D-9.0.2")].require("standard/Math/Algorithm");var Xe=i.n(be),Me=i(355);function Oe(e,t){pe().call(this,e,t),e.setTransparent(!0),this.texCoordArray=_e().createArray(),this.textureNode=new(fe())(e.getExecutionContext()),this.canvas=Me("<canvas></canvas>"),this.context=this.canvas[0].getContext("2d",{willReadFrequently:!0}),this.matrix=new(l()),this.textureNode._textureProperties=t.getBrowser().getScreenTextureProperties(),this.textureNode.setup()}Object.assign(Object.setPrototypeOf(Oe.prototype,pe().prototype),{modelViewMatrix:new(l()),isTransparent:()=>!0,getMatrix(){return this.matrix},update:(()=>{const e=new(r())(0,0,0),t=new(r())(1,1,0);return function(){pe().prototype.update.call(this);const i=this.getFontStyle(),n=this.getText();switch(n._textBounds.x=Math.ceil(n._textBounds.x)+1,n._textBounds.y=Math.ceil(n._textBounds.y)+1,this.getBBox().getExtents(e,t),e.x-=1,e.y-=1,i.getMajorAlignment()){case ge().BEGIN:case ge().FIRST:e.x=Math.floor(e.x),t.x=e.x+n._textBounds.x;break;case ge().MIDDLE:e.x=Math.round(e.x),t.x=e.x+n._textBounds.x;break;case ge().END:t.x=Math.ceil(t.x),e.x=t.x-n._textBounds.x}switch(i.getMinorAlignment()){case ge().BEGIN:case ge().FIRST:t.y=Math.ceil(t.y),e.y=t.y-n._textBounds.y;break;case ge().MIDDLE:t.y=Math.round(t.y),e.y=t.y-n._textBounds.y;break;case ge().END:e.y=Math.floor(e.y),t.y=e.y+n._textBounds.y}n._origin.x=e.x,n._origin.y=t.y,this.getBBox().setExtents(e,t)}})(),build:(()=>{const e=new(r())(0,0,0),t=new(r())(1,1,0);return function(){const i=this.getFontStyle(),n=i.getFont();if(!n)return;const s=this.getText(),o=this.getGlyphs(),r=this.getMinorAlignment(),a=this.getTranslations(),l=this.getCharSpacings(),h=i.getScale(),u=h/n.unitsPerEm,c=this.texCoordArray,d=s.getNormals(),p=s.getVertices(),y=this.canvas[0],g=this.context;c.length=0,s.getMultiTexCoords().push(c),this.getBBox().getExtents(e,t),d.push(0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1),p.push(e.x,e.y,0,1,t.x,e.y,0,1,t.x,t.y,0,1,e.x,e.y,0,1,t.x,t.y,0,1,e.x,t.y,0,1);const w=s._textBounds.x,f=s._textBounds.y;y.width=Xe().nextPowerOfTwo(w),y.height=Xe().nextPowerOfTwo(f);const x=w/y.width,_=1-f/y.height;if(c.push(0,_,0,1,x,_,0,1,x,1,0,1,0,_,0,1,x,1,0,1,0,1,0,1),g.fillStyle="rgba(255,255,255,0)",g.fillRect(0,0,y.width,y.height),g.fillStyle="rgba(255,255,255,1)",g.save(),g.translate(0,y.height),g.scale(1,-1),i._horizontal.getValue())for(let i=0,s=o.length;i<s;++i){const s=o[i],c=l[i],d=a[i];let p=0;for(let i=0,o=s.length;i<o;++i){const o=s[i],a=r.x+d.x+p+i*c-e.x,l=r.y+d.y-t.y;this.drawGlyph(g,n,o,a,l,h);let y=0;i+1<s.length&&(y=n.getKerningValue(o,s[i+1])),p+=(o.advanceWidth+y)*u}}else{const l=i._leftToRight.getValue(),u=i._topToBottom.getValue(),c=l?0:s._string.length-1,d=l?s._string.length:-1,p=l?1:-1;for(let i=c,s=0;i!==d;i+=p){const l=o[i],c=l.length,d=u?c:-1,p=u?1:-1;for(let i=u?0:c-1;i!==d;i+=p,++s){const o=a[s],u=r.x+o.x-e.x,c=r.y+o.y-t.y;this.drawGlyph(g,n,l[i],u,c,h)}}}g.restore();const m=g.getImageData(0,0,y.width,y.height);m?this.textureNode.setTextureFromData(y.width,y.height,!0,!0,new Uint8Array(m.data.buffer)):this.textureNode.clear()}})(),drawGlyph(e,t,i,n,s,o){const r=i.getPath(n,-s,o),a=r.commands;e.beginPath();for(let t=0,i=a.length;t<i;++t){const i=a[t];switch(i.type){case"M":e.moveTo(i.x,i.y);continue;case"Z":e.closePath();continue;case"L":e.lineTo(i.x,i.y);continue;case"Q":e.quadraticCurveTo(i.x1,i.y1,i.x,i.y);continue;case"C":e.bezierCurveTo(i.x1,i.y1,i.x2,i.y2,i.x,i.y);continue}}r.fill&&e.fill(),r.stroke&&(e.lineWidth=r.strokeWidth,e.stroke())},getGlyphExtents(e,t,i,n,s){const o=e.unitsPerEm;n.set((t.xMin||0)/o,(t.yMin||0)/o,0),s.set((t.xMax||0)/o,(t.yMax||0)/o,0)},traverse:(()=>{const e=new(Se());return function(t,i){this.getBrowser().getScreenScaleMatrix(i,this.matrix,1),e.assign(this.getBBox()).multRight(this.matrix),this.getText().setBBox(e)}})(),display(e,t){l().prototype.multLeft.call(t.modelViewMatrix,this.matrix),t.textureNode=this.textureNode},transformLine:(()=>{const e=new(l());return function(t){return t.multLineMatrix(e.assign(this.matrix).inverse())}})(),transformMatrix(e){return e.multLeft(this.matrix)}});const ve=Oe;d().add("ScreenText","x_ite/Browser/Layout/ScreenText",ve);const ze=ve;function Te(e){ce().call(this,e),this.addType(v().ScreenFontStyle)}Object.assign(Object.setPrototypeOf(Te.prototype,ce().prototype),{initialize(){ce().prototype.initialize.call(this),this.getBrowser().getRenderingProperties()._ContentScale.addInterest("addNodeEvent",this)},getTextGeometry(e){return new ze(e,this)},getScale(){return this._pointSize.getValue()*this.getBrowser().getPixelsPerPoint()}}),Object.defineProperties(Te,{typeName:{value:"ScreenFontStyle",enumerable:!0},componentName:{value:"Layout",enumerable:!0},containerField:{value:"fontStyle",enumerable:!0},specificationRange:{value:Object.freeze(["3.2","Infinity"]),enumerable:!0},fieldDefinitions:{value:new(b())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"language",new(x().SFString)),new(m())(v().inputOutput,"family",new(x().MFString)("SERIF")),new(m())(v().inputOutput,"style",new(x().SFString)("PLAIN")),new(m())(v().inputOutput,"pointSize",new(x().SFFloat)(12)),new(m())(v().inputOutput,"spacing",new(x().SFFloat)(1)),new(m())(v().inputOutput,"horizontal",new(x().SFBool)(!0)),new(m())(v().inputOutput,"leftToRight",new(x().SFBool)(!0)),new(m())(v().inputOutput,"topToBottom",new(x().SFBool)(!0)),new(m())(v().inputOutput,"justify",new(x().MFString)("BEGIN"))]),enumerable:!0}});const Ne=Te;d().add("ScreenFontStyle","x_ite/Components/Layout/ScreenFontStyle",Ne);const Fe=Ne;function Le(e){Q().call(this,e),this.addType(v().ScreenGroup),this.matrix=new(l())(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1)}Object.assign(Object.setPrototypeOf(Le.prototype,Q().prototype),{getBBox(e,t){return this.getSubBBox(e,t).multRight(this.matrix)},getMatrix(){return this.matrix},traverse(e,t){switch(e){case $().CAMERA:case $().PICKING:case $().SHADOW:break;default:{const e=this.getBrowser();e.getScreenScaleMatrix(t,this.matrix,e.getRenderingProperty("ContentScale"));break}}const i=t.getModelViewMatrix();i.push(),i.multLeft(this.matrix),Q().prototype.traverse.call(this,e,t),i.pop()}}),Object.defineProperties(Le,{typeName:{value:"ScreenGroup",enumerable:!0},componentName:{value:"Layout",enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze(["3.2","Infinity"]),enumerable:!0},fieldDefinitions:{value:new(b())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"visible",new(x().SFBool)(!0)),new(m())(v().inputOutput,"bboxDisplay",new(x().SFBool)),new(m())(v().initializeOnly,"bboxSize",new(x().SFVec3f)(-1,-1,-1)),new(m())(v().initializeOnly,"bboxCenter",new(x().SFVec3f)),new(m())(v().inputOnly,"addChildren",new(x().MFNode)),new(m())(v().inputOnly,"removeChildren",new(x().MFNode)),new(m())(v().inputOutput,"children",new(x().MFNode))]),enumerable:!0}});const Ie=Le;d().add("ScreenGroup","x_ite/Components/Layout/ScreenGroup",Ie);const Ee=Ie;t().add({name:"Layout",concreteNodes:[K,ie,he,Fe,Ee],abstractNodes:[N],browserContext:w});const Ue=void 0;d().add("Layout","assets/components/Layout",Ue)})()})();
1
+ /* X_ITE v9.1.0 */(()=>{"use strict";var e={355:e=>{e.exports=window[Symbol.for("X_ITE.X3D-9.1.0")].require("lib/jquery")}},t={};function i(n){var s=t[n];if(void 0!==s)return s.exports;var o=t[n]={exports:{}};return e[n](o,o.exports,i),o.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 n in t)i.o(t,n)&&!i.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},i.o=(e,t)=>Object.prototype.hasOwnProperty.call(e,t),(()=>{const e=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components");var t=i.n(e);const n=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Texturing/TextureProperties");var s=i.n(n);const o=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Numbers/Vector3");var r=i.n(o);const a=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Numbers/Matrix4");var l=i.n(a);const h=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Geometry/ViewVolume");var u=i.n(h);const c=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Namespace");var d=i.n(c);const p=Symbol();function y(){}Object.assign(y.prototype,{getScreenTextureProperties(){return this[p]=new(s())(this.getPrivateScene()),this[p]._boundaryModeS="CLAMP_TO_EDGE",this[p]._boundaryModeT="CLAMP_TO_EDGE",this[p]._boundaryModeR="CLAMP_TO_EDGE",this[p]._minificationFilter="NEAREST_PIXEL",this[p]._magnificationFilter="NEAREST_PIXEL",this[p]._generateMipMaps=!1,this[p]._textureCompression="DEFAULT",this[p].setup(),this.getScreenTextureProperties=function(){return this[p]},Object.defineProperty(this,"getScreenTextureProperties",{enumerable:!1}),this[p]},getScreenScaleMatrix:(()=>{const e=new(r())(0,0,0),t=new(r())(0,0,0),i=new(l());return function(n,s,o,a){const l=n.getModelViewMatrix().get(),h=n.getProjectionMatrix().get(),c=n.getViewVolume().getViewport();n.getViewpoint().getScreenScale(l.origin,c,e);const d=l.xAxis.normalize().multiply(e.x*o),p=l.yAxis.normalize().multiply(e.y*o),y=l.zAxis.normalize().multiply(e.x*o);i.set(d.x,d.y,d.z,0,p.x,p.y,p.z,0,y.x,y.y,y.z,0,l[12],l[13],l[14],1),a&&(u().projectPoint(r().Zero,i,h,c,t),t.x=Math.round(t.x),t.y=Math.round(t.y),u().unProjectPoint(t.x,t.y,t.z,i,h,c,t),t.z=0,i.translate(t)),s.assign(l).inverse().multLeft(i)}})()});const f=y;d().add("X3DLayoutContext","x_ite/Browser/Layout/X3DLayoutContext",f);const g=f,w=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Fields");var x=i.n(w);const _=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Base/X3DFieldDefinition");var m=i.n(_);const b=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Base/FieldDefinitionArray");var S=i.n(b);const X=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Core/X3DChildNode");var M=i.n(X);const O=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Base/X3DConstants");var v=i.n(O);function z(e){M().call(this,e),this.addType(v().X3DLayoutNode)}Object.setPrototypeOf(z.prototype,M().prototype),Object.defineProperties(z,{typeName:{value:"X3DLayoutNode",enumerable:!0},componentInfo:{value:Object.freeze({name:"Layout",level:1}),enumerable:!0}});const T=z;d().add("X3DLayoutNode","x_ite/Components/Layout/X3DLayoutNode",T);const N=T,F=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Base/X3DCast");var I=i.n(F);const L=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Numbers/Vector2");var D=i.n(L);const E=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Numbers/Rotation4");var U=i.n(E);let C=0;const P=C++,B=C++,Y=C++,R=C++,j=C++,G=C++,V=C++,A=C++,q=C++,k=C++;function W(e){N.call(this,e),this.addType(v().Layout),this.alignX=B,this.alignY=B,this.offsetUnitX=G,this.offsetUnitY=G,this.offsetX=0,this.offsetY=0,this.sizeUnitX=G,this.sizeUnitY=G,this.sizeX=1,this.sizeY=1,this.scaleModeX=q,this.scaleModeY=q,this.parent=null,this.rectangleCenter=new(D())(0,0),this.rectangleSize=new(D())(0,0),this.matrix=new(l())}Object.assign(Object.setPrototypeOf(W.prototype,N.prototype),{viewportPixel:new(D())(0,0),pixelSize:new(D())(0,0),translation:new(r())(0,0,0),offset:new(r())(0,0,0),scale:new(r())(1,1,1),currentTranslation:new(r())(0,0,0),currentRotation:new(U()),currentScale:new(r())(0,0,0),modelViewMatrix:new(l()),initialize(){N.prototype.initialize.call(this),this._align.addInterest("set_align__",this),this._offsetUnits.addInterest("set_offsetUnits__",this),this._offset.addInterest("set_offset__",this),this._sizeUnits.addInterest("set_sizeUnits__",this),this._size.addInterest("set_size__",this),this._scaleMode.addInterest("set_scaleMode__",this),this.set_align__(),this.set_offsetUnits__(),this.set_offset__(),this.set_sizeUnits__(),this.set_size__(),this.set_scaleMode__()},set_align__(){this._align.length>0?"LEFT"===this._align[0]?this.alignX=P:"RIGHT"===this._align[0]?this.alignX=Y:this.alignX=B:this.alignX=B,this._align.length>1?"BOTTOM"===this._align[1]?this.alignY=R:"TOP"===this._align[1]?this.alignY=j:this.alignY=B:this.alignY=B},set_offsetUnits__(){this._offsetUnits.length>0?("FRACTION"===this._offsetUnits[0]?this.offsetUnitX=V:"PIXEL"===this._offsetUnits[0]?this.offsetUnitX=A:this.offsetUnitX=G,this._offsetUnits.length>1?"FRACTION"===this._offsetUnits[1]?this.offsetUnitY=V:"PIXEL"===this._offsetUnits[1]?this.offsetUnitY=A:this.offsetUnitY=G:this.offsetUnitY=this.offsetUnitX):(this.offsetUnitX=G,this.offsetUnitY=G)},set_offset__(){this._offset.length>0?(this.offsetX=this._offset[0],this._offset.length>1?this.offsetY=this._offset[1]:this.offsetY=offsetX):(this.offsetX=0,this.offsetY=0)},set_sizeUnits__(){this._sizeUnits.length>0?("FRACTION"===this._sizeUnits[0]?this.sizeUnitX=V:"PIXEL"===this._sizeUnits[0]?this.sizeUnitX=A:this.sizeUnitX=G,this._sizeUnits.length>1?"FRACTION"===this._sizeUnits[1]?this.sizeUnitY=V:"PIXEL"===this._sizeUnits[1]?this.sizeUnitY=A:this.sizeUnitY=G:this.sizeUnitY=this.sizeUnitX):(this.sizeUnitX=G,this.sizeUnitY=G)},set_size__(){this._size.length>0?(this.sizeX=this._size[0],this._size.length>1?this.sizeY=this._size[1]:this.sizeY=this.sizeX):(this.sizeX=0,this.sizeY=0)},set_scaleMode__(){this._scaleMode.length>0?("FRACTION"===this._scaleMode[0]?this.scaleModeX=V:"PIXEL"===this._scaleMode[0]?this.scaleModeX=A:"STRETCH"===this._scaleMode[0]?this.scaleModeX=k:this.scaleModeX=q,this._scaleMode.length>1?"FRACTION"===this._scaleMode[1]?this.scaleModeY=V:"PIXEL"===this._scaleMode[1]?this.scaleModeY=A:"STRETCH"===this._scaleMode[1]?this.scaleModeY=k:this.scaleModeY=q:this.scaleModeY=this.scaleModeX):(this.scaleModeX=q,this.scaleModeY=q)},getRectangleCenter(){return this.rectangleCenter},getRectangleSize(){return this.rectangleSize},getAlignX(){return this.alignX},getAlignY(){return this.alignY},getOffsetUnitX(){return this.offsetUnitX===G?this.parent?this.parent.getOffsetUnitX():V:this.offsetUnitX},getOffsetUnitY(){return this.offsetUnitY===G?this.parent?this.parent.getOffsetUnitY():V:this.offsetUnitY},getOffsetX(){return this.offsetX},getOffsetY(){return this.offsetY},getSizeUnitX(){return this.sizeUnitX===G?this.parent?this.parent.getSizeUnitX():V:this.sizeUnitX},getSizeUnitY(){return this.sizeUnitY===G?this.parent?this.parent.getSizeUnitY():V:this.sizeUnitY},getSizeX(){return this.sizeX},getSizeY(){return this.sizeY},getScaleModeX(){return this.parent?this.scaleModeX:this.scaleModeX===q?V:this.scaleModeX},getScaleModeY(){return this.parent?this.scaleModeY:this.scaleModeY===q?V:this.scaleModeY},transform(e,t){const i=this.parent=t.getParentLayout(),n=this.getBrowser().getRenderingProperty("ContentScale"),s=this.matrix,o=t.getViewpoint(),r=t.getNavigationInfo().getNearValue(),a=t.getViewVolume().getScissor(),l=o.getViewportSize(a,r),h=this.viewportPixel,u=this.pixelSize,c=i?i.getRectangleSize():l,d=this.rectangleSize,p=this.rectangleCenter;switch(h.set(a[2],a[3]).divide(n),u.assign(l).divVec(h),this.getSizeUnitX()){case V:d.x=this.sizeX*c.x;break;case A:d.x=this.sizeX*u.x}switch(this.getSizeUnitY()){case V:d.y=this.sizeY*c.y;break;case A:d.y=this.sizeY*u.y}const y=this.translation.set(0,0,0);switch(this.getAlignX()){case P:y.x=-(c.x-d.x)/2;break;case B:this.getSizeUnitX()===A&&1&h.x&&(y.x=-u.x/2);break;case Y:y.x=(c.x-d.x)/2}switch(this.getAlignY()){case R:y.y=-(c.y-d.y)/2;break;case B:this.getSizeUnitX===A&&1&h.y&&(y.y=-u.y/2);break;case j:y.y=(c.y-d.y)/2}const f=this.offset.set(0,0,0);switch(this.getOffsetUnitX()){case V:f.x=this.offsetX*c.x;break;case A:f.x=this.offsetX*l.x/h.x}switch(this.getOffsetUnitY()){case V:f.y=this.offsetY*c.y;break;case A:f.y=this.offsetY*l.y/h.y}const g=this.scale.set(1,1,1),w=this.currentTranslation,x=this.currentRotation,_=this.currentScale;switch(t.getModelViewMatrix().get().get(w,x,_),this.getScaleModeX()){case q:g.x=_.x;break;case V:g.x=d.x;break;case k:break;case A:g.x=l.x/h.x}switch(this.getScaleModeY()){case q:g.y=_.y;break;case V:g.y=d.y;break;case k:break;case A:g.y=l.y/h.y}return this.getScaleModeX()===k?this.getScaleModeY()===k?d.x>d.y?(g.x=d.x,g.y=g.x):(g.y=d.y,g.x=g.y):g.x=g.y:this.getScaleModeY()===k&&(g.y=g.x),p.assign(y.add(f)),s.set(w,x),s.translate(y),s.scale(g),s}}),Object.defineProperties(W,{typeName:{value:"Layout",enumerable:!0},componentInfo:{value:Object.freeze({name:"Layout",level:1}),enumerable:!0},containerField:{value:"layout",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(S())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"align",new(x().MFString)("CENTER","CENTER")),new(m())(v().inputOutput,"offsetUnits",new(x().MFString)("WORLD","WORLD")),new(m())(v().inputOutput,"offset",new(x().MFFloat)(0,0)),new(m())(v().inputOutput,"sizeUnits",new(x().MFString)("WORLD","WORLD")),new(m())(v().inputOutput,"size",new(x().MFFloat)(1,1)),new(m())(v().inputOutput,"scaleMode",new(x().MFString)("NONE","NONE"))]),enumerable:!0}});const H=W;d().add("Layout","x_ite/Components/Layout/Layout",H);const K=H,Z=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Grouping/X3DGroupingNode");var Q=i.n(Z);const J=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Rendering/TraverseType");var $=i.n(J);function ee(e){Q().call(this,e),this.addType(v().LayoutGroup),this.viewportNode=null,this.layoutNode=null,this.matrix=new(l()),this.modelViewMatrix=new(l()),this.screenMatrix=new(l())}Object.assign(Object.setPrototypeOf(ee.prototype,Q().prototype),{initialize(){Q().prototype.initialize.call(this),this._viewport.addInterest("set_viewport__",this),this._layout.addInterest("set_layout__",this),this.set_viewport__(),this.set_layout__()},set_viewport__(){this.viewportNode=I()(v().X3DViewportNode,this._viewport)},set_layout__(){this.layoutNode=I()(v().X3DLayoutNode,this._layout)},getBBox(e,t){return Q().prototype.getBBox.call(this,e,t).multRight(this.getMatrix())},getMatrix(){return this.layoutNode?this.matrix.assign(this.modelViewMatrix).inverse().multLeft(this.screenMatrix):this.matrix.identity()},getLayout(){return this.layoutNode},traverse(e,t){if(e!==$().COLLISION){if(this.viewportNode&&this.viewportNode.push(),this.layoutNode){const i=t.getModelViewMatrix();this.modelViewMatrix.assign(i.get()),this.screenMatrix.assign(this.layoutNode.transform(e,t)),i.pushMatrix(this.screenMatrix),t.getLayouts().push(this.layoutNode),Q().prototype.traverse.call(this,e,t),t.getLayouts().pop(),i.pop()}else Q().prototype.traverse.call(this,e,t);this.viewportNode&&this.viewportNode.pop()}}}),Object.defineProperties(ee,{typeName:{value:"LayoutGroup",enumerable:!0},componentInfo:{value:Object.freeze({name:"Layout",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(S())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"layout",new(x().SFNode)),new(m())(v().inputOutput,"viewport",new(x().SFNode)),new(m())(v().inputOutput,"visible",new(x().SFBool)(!0)),new(m())(v().inputOutput,"bboxDisplay",new(x().SFBool)),new(m())(v().initializeOnly,"bboxSize",new(x().SFVec3f)(-1,-1,-1)),new(m())(v().initializeOnly,"bboxCenter",new(x().SFVec3f)),new(m())(v().inputOnly,"addChildren",new(x().MFNode)),new(m())(v().inputOnly,"removeChildren",new(x().MFNode)),new(m())(v().inputOutput,"children",new(x().MFNode))]),enumerable:!0}});const te=ee;d().add("LayoutGroup","x_ite/Components/Layout/LayoutGroup",te);const ie=te,ne=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Layering/X3DLayerNode");var se=i.n(ne);const oe=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Navigation/OrthoViewpoint");var re=i.n(oe);function ae(e){se().call(this,e,new(re())(e),new ie(e)),this.addType(v().LayoutLayer)}Object.assign(Object.setPrototypeOf(ae.prototype,se().prototype),{initialize(){se().prototype.initialize.call(this),this._layout.addFieldInterest(this.getGroup()._layout),this._addChildren.addFieldInterest(this.getGroup()._addChildren),this._removeChildren.addFieldInterest(this.getGroup()._removeChildren),this._children.addFieldInterest(this.getGroup()._children),this.getGroup()._layout=this._layout,this.getGroup()._children=this._children,this.getGroup().setPrivate(!0),this.getGroup().setup()}}),Object.defineProperties(ae,{typeName:{value:"LayoutLayer",enumerable:!0},componentInfo:{value:Object.freeze({name:"Layout",level:1}),enumerable:!0},containerField:{value:"layers",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(S())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"pickable",new(x().SFBool)(!0)),new(m())(v().inputOutput,"objectType",new(x().MFString)("ALL")),new(m())(v().inputOutput,"visible",new(x().SFBool)(!0)),new(m())(v().inputOutput,"layout",new(x().SFNode)),new(m())(v().inputOutput,"viewport",new(x().SFNode)),new(m())(v().inputOnly,"addChildren",new(x().MFNode)),new(m())(v().inputOnly,"removeChildren",new(x().MFNode)),new(m())(v().inputOutput,"children",new(x().MFNode))]),enumerable:!0}});const le=ae;d().add("LayoutLayer","x_ite/Components/Layout/LayoutLayer",le);const he=le,ue=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Text/X3DFontStyleNode");var ce=i.n(ue);const de=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Browser/Text/X3DTextGeometry");var pe=i.n(de);const ye=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Browser/Text/TextAlignment");var fe=i.n(ye);const ge=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Texturing/PixelTexture");var we=i.n(ge);const xe=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Components/Rendering/X3DGeometryNode");var _e=i.n(xe);const me=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Geometry/Box3");var be=i.n(me);const Se=window[Symbol.for("X_ITE.X3D-9.1.0")].require("standard/Math/Algorithm");var Xe=i.n(Se),Me=i(355);function Oe(e,t){pe().call(this,e,t),e.setTransparent(!0),this.texCoordArray=_e().createArray(),this.textureNode=new(we())(e.getExecutionContext()),this.canvas=Me("<canvas></canvas>"),this.context=this.canvas[0].getContext("2d",{willReadFrequently:!0}),this.matrix=new(l()),this.textureNode._textureProperties=t.getBrowser().getScreenTextureProperties(),this.textureNode.setup()}Object.assign(Object.setPrototypeOf(Oe.prototype,pe().prototype),{modelViewMatrix:new(l()),isTransparent:()=>!0,getMatrix(){return this.matrix},update:(()=>{const e=new(r())(0,0,0),t=new(r())(1,1,0);return function(){pe().prototype.update.call(this);const i=this.getFontStyle(),n=this.getText();switch(n._textBounds.x=Math.ceil(n._textBounds.x)+1,n._textBounds.y=Math.ceil(n._textBounds.y)+1,this.getBBox().getExtents(e,t),e.x-=1,e.y-=1,i.getMajorAlignment()){case fe().BEGIN:case fe().FIRST:e.x=Math.floor(e.x),t.x=e.x+n._textBounds.x;break;case fe().MIDDLE:e.x=Math.round(e.x),t.x=e.x+n._textBounds.x;break;case fe().END:t.x=Math.ceil(t.x),e.x=t.x-n._textBounds.x}switch(i.getMinorAlignment()){case fe().BEGIN:case fe().FIRST:t.y=Math.ceil(t.y),e.y=t.y-n._textBounds.y;break;case fe().MIDDLE:t.y=Math.round(t.y),e.y=t.y-n._textBounds.y;break;case fe().END:e.y=Math.floor(e.y),t.y=e.y+n._textBounds.y}n._origin.x=e.x,n._origin.y=t.y,this.getBBox().setExtents(e,t)}})(),build:(()=>{const e=new(r())(0,0,0),t=new(r())(1,1,0);return function(){const i=this.getFontStyle(),n=i.getFont();if(!n)return;const s=this.getText(),o=this.getGlyphs(),r=this.getMinorAlignment(),a=this.getTranslations(),l=this.getCharSpacings(),h=i.getScale(),u=h/n.unitsPerEm,c=this.texCoordArray,d=s.getNormals(),p=s.getVertices(),y=this.canvas[0],f=this.context;c.length=0,s.getMultiTexCoords().push(c),this.getBBox().getExtents(e,t),d.push(0,0,1,0,0,1,0,0,1,0,0,1,0,0,1,0,0,1),p.push(e.x,e.y,0,1,t.x,e.y,0,1,t.x,t.y,0,1,e.x,e.y,0,1,t.x,t.y,0,1,e.x,t.y,0,1);const g=s._textBounds.x,w=s._textBounds.y;y.width=Xe().nextPowerOfTwo(g),y.height=Xe().nextPowerOfTwo(w);const x=g/y.width,_=1-w/y.height;if(c.push(0,_,0,1,x,_,0,1,x,1,0,1,0,_,0,1,x,1,0,1,0,1,0,1),f.fillStyle="rgba(255,255,255,0)",f.fillRect(0,0,y.width,y.height),f.fillStyle="rgba(255,255,255,1)",f.save(),f.translate(0,y.height),f.scale(1,-1),i._horizontal.getValue())for(let i=0,s=o.length;i<s;++i){const s=o[i],c=l[i],d=a[i];let p=0;for(let i=0,o=s.length;i<o;++i){const o=s[i],a=r.x+d.x+p+i*c-e.x,l=r.y+d.y-t.y;this.drawGlyph(f,n,o,a,l,h);let y=0;i+1<s.length&&(y=n.getKerningValue(o,s[i+1])),p+=(o.advanceWidth+y)*u}}else{const l=i._leftToRight.getValue(),u=i._topToBottom.getValue(),c=l?0:s._string.length-1,d=l?s._string.length:-1,p=l?1:-1;for(let i=c,s=0;i!==d;i+=p){const l=o[i],c=l.length,d=u?c:-1,p=u?1:-1;for(let i=u?0:c-1;i!==d;i+=p,++s){const o=a[s],u=r.x+o.x-e.x,c=r.y+o.y-t.y;this.drawGlyph(f,n,l[i],u,c,h)}}}f.restore();const m=f.getImageData(0,0,y.width,y.height);m?this.textureNode.setTextureFromData(y.width,y.height,!0,!0,new Uint8Array(m.data.buffer)):this.textureNode.clear()}})(),drawGlyph(e,t,i,n,s,o){const r=i.getPath(n,-s,o),a=r.commands;e.beginPath();for(let t=0,i=a.length;t<i;++t){const i=a[t];switch(i.type){case"M":e.moveTo(i.x,i.y);continue;case"Z":e.closePath();continue;case"L":e.lineTo(i.x,i.y);continue;case"Q":e.quadraticCurveTo(i.x1,i.y1,i.x,i.y);continue;case"C":e.bezierCurveTo(i.x1,i.y1,i.x2,i.y2,i.x,i.y);continue}}r.fill&&e.fill(),r.stroke&&(e.lineWidth=r.strokeWidth,e.stroke())},getGlyphExtents(e,t,i,n,s){const o=e.unitsPerEm;n.set((t.xMin||0)/o,(t.yMin||0)/o,0),s.set((t.xMax||0)/o,(t.yMax||0)/o,0)},traverse:(()=>{const e=new(be());return function(t,i){this.getBrowser().getScreenScaleMatrix(i,this.matrix,1,!0),e.assign(this.getBBox()).multRight(this.matrix),this.getText().setBBox(e)}})(),display(e,t){l().prototype.multLeft.call(t.modelViewMatrix,this.matrix),t.textureNode=this.textureNode},transformLine:(()=>{const e=new(l());return function(t){return t.multLineMatrix(e.assign(this.matrix).inverse())}})(),transformMatrix(e){return e.multLeft(this.matrix)}});const ve=Oe;d().add("ScreenText","x_ite/Browser/Layout/ScreenText",ve);const ze=ve;function Te(e){ce().call(this,e),this.addType(v().ScreenFontStyle)}Object.assign(Object.setPrototypeOf(Te.prototype,ce().prototype),{initialize(){ce().prototype.initialize.call(this),this.getBrowser().getRenderingProperties()._ContentScale.addInterest("addNodeEvent",this)},getTextGeometry(e){return new ze(e,this)},getScale(){return this._pointSize.getValue()*this.getBrowser().getPixelsPerPoint()}}),Object.defineProperties(Te,{typeName:{value:"ScreenFontStyle",enumerable:!0},componentInfo:{value:Object.freeze({name:"Layout",level:2}),enumerable:!0},containerField:{value:"fontStyle",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(S())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"language",new(x().SFString)),new(m())(v().inputOutput,"family",new(x().MFString)("SERIF")),new(m())(v().inputOutput,"style",new(x().SFString)("PLAIN")),new(m())(v().inputOutput,"pointSize",new(x().SFFloat)(12)),new(m())(v().inputOutput,"spacing",new(x().SFFloat)(1)),new(m())(v().inputOutput,"horizontal",new(x().SFBool)(!0)),new(m())(v().inputOutput,"leftToRight",new(x().SFBool)(!0)),new(m())(v().inputOutput,"topToBottom",new(x().SFBool)(!0)),new(m())(v().inputOutput,"justify",new(x().MFString)("BEGIN"))]),enumerable:!0}});const Ne=Te;d().add("ScreenFontStyle","x_ite/Components/Layout/ScreenFontStyle",Ne);const Fe=Ne,Ie=window[Symbol.for("X_ITE.X3D-9.1.0")].require("x_ite/Prototype/X3DProtoDeclaration");var Le=i.n(Ie);function De(e){Q().call(this,e),this.addType(v().ScreenGroup),e.getOuterNode()instanceof Le()?this.matrix=new(l()):this.matrix=new(l())(0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0)}Object.assign(Object.setPrototypeOf(De.prototype,Q().prototype),{getBBox(e,t){return this.getSubBBox(e,t).multRight(this.matrix)},getMatrix(){return this.matrix},traverse(e,t){switch(e){case $().CAMERA:case $().PICKING:case $().SHADOW:break;default:{const e=this.getBrowser();e.getScreenScaleMatrix(t,this.matrix,e.getRenderingProperty("ContentScale"),!1);break}}const i=t.getModelViewMatrix();i.push(),i.multLeft(this.matrix),Q().prototype.traverse.call(this,e,t),i.pop()}}),Object.defineProperties(De,{typeName:{value:"ScreenGroup",enumerable:!0},componentInfo:{value:Object.freeze({name:"Layout",level:2}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(S())([new(m())(v().inputOutput,"metadata",new(x().SFNode)),new(m())(v().inputOutput,"visible",new(x().SFBool)(!0)),new(m())(v().inputOutput,"bboxDisplay",new(x().SFBool)),new(m())(v().initializeOnly,"bboxSize",new(x().SFVec3f)(-1,-1,-1)),new(m())(v().initializeOnly,"bboxCenter",new(x().SFVec3f)),new(m())(v().inputOnly,"addChildren",new(x().MFNode)),new(m())(v().inputOnly,"removeChildren",new(x().MFNode)),new(m())(v().inputOutput,"children",new(x().MFNode))]),enumerable:!0}});const Ee=De;d().add("ScreenGroup","x_ite/Components/Layout/ScreenGroup",Ee);const Ue=Ee;t().add({name:"Layout",concreteNodes:[K,ie,he,Fe,Ue],abstractNodes:[N],browserContext:g});const Ce=void 0;d().add("Layout","assets/components/Layout",Ce)})()})();