x_ite 10.1.0 → 10.2.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 (71) hide show
  1. package/README.md +18 -18
  2. package/dist/X3DUOM.xml +69 -11
  3. package/dist/assets/components/Annotation.js +13 -13
  4. package/dist/assets/components/Annotation.min.js +1 -1
  5. package/dist/assets/components/CADGeometry.js +16 -16
  6. package/dist/assets/components/CADGeometry.min.js +1 -1
  7. package/dist/assets/components/CubeMapTexturing.js +39 -27
  8. package/dist/assets/components/CubeMapTexturing.min.js +1 -1
  9. package/dist/assets/components/DIS.js +13 -13
  10. package/dist/assets/components/DIS.min.js +1 -1
  11. package/dist/assets/components/EventUtilities.js +9 -9
  12. package/dist/assets/components/EventUtilities.min.js +1 -1
  13. package/dist/assets/components/Geometry2D.js +51 -35
  14. package/dist/assets/components/Geometry2D.min.js +1 -1
  15. package/dist/assets/components/Geospatial.js +34 -34
  16. package/dist/assets/components/Geospatial.min.js +1 -1
  17. package/dist/assets/components/HAnim.js +23 -23
  18. package/dist/assets/components/HAnim.min.js +1 -1
  19. package/dist/assets/components/KeyDeviceSensor.js +8 -8
  20. package/dist/assets/components/KeyDeviceSensor.min.js +1 -1
  21. package/dist/assets/components/Layout.js +27 -27
  22. package/dist/assets/components/Layout.min.js +1 -1
  23. package/dist/assets/components/NURBS.js +25 -25
  24. package/dist/assets/components/NURBS.min.js +1 -1
  25. package/dist/assets/components/ParticleSystems.js +26 -26
  26. package/dist/assets/components/ParticleSystems.min.js +1 -1
  27. package/dist/assets/components/Picking.js +18 -18
  28. package/dist/assets/components/Picking.min.js +1 -1
  29. package/dist/assets/components/RigidBodyPhysics.js +17 -17
  30. package/dist/assets/components/RigidBodyPhysics.min.js +1 -1
  31. package/dist/assets/components/Scripting.js +38 -38
  32. package/dist/assets/components/Scripting.min.js +1 -1
  33. package/dist/assets/components/Text.js +40 -42
  34. package/dist/assets/components/Text.min.js +1 -1
  35. package/dist/assets/components/TextureProjection.js +15 -15
  36. package/dist/assets/components/TextureProjection.min.js +1 -1
  37. package/dist/assets/components/Texturing3D.js +28 -28
  38. package/dist/assets/components/Texturing3D.min.js +1 -1
  39. package/dist/assets/components/VolumeRendering.js +19 -19
  40. package/dist/assets/components/VolumeRendering.min.js +1 -1
  41. package/dist/assets/components/X_ITE.js +1254 -1053
  42. package/dist/assets/components/X_ITE.min.js +1 -1
  43. package/dist/assets/fonts/PT_Sans/OFL.txt +94 -0
  44. package/dist/assets/fonts/PT_Sans/PTSans-Bold.ttf +0 -0
  45. package/dist/assets/fonts/PT_Sans/PTSans-BoldItalic.ttf +0 -0
  46. package/dist/assets/fonts/PT_Sans/PTSans-Italic.ttf +0 -0
  47. package/dist/assets/fonts/PT_Sans/PTSans-Regular.ttf +0 -0
  48. package/dist/assets/lib/mikktspace_bg.wasm +0 -0
  49. package/dist/example.html +1 -1
  50. package/dist/x_ite.css +1 -1
  51. package/dist/x_ite.d.ts +60 -11
  52. package/dist/x_ite.js +851 -600
  53. package/dist/x_ite.min.js +1 -1
  54. package/dist/x_ite.min.mjs +1 -1
  55. package/dist/x_ite.mjs +851 -600
  56. package/dist/x_ite.zip +0 -0
  57. package/package.json +1 -1
  58. /package/dist/assets/fonts/{DroidSerif Apache License.txt → Droid/DroidSerif Apache License.txt} +0 -0
  59. /package/dist/assets/fonts/{DroidSerif-Bold.ttf → Droid/DroidSerif-Bold.ttf} +0 -0
  60. /package/dist/assets/fonts/{DroidSerif-BoldItalic.ttf → Droid/DroidSerif-BoldItalic.ttf} +0 -0
  61. /package/dist/assets/fonts/{DroidSerif-Italic.ttf → Droid/DroidSerif-Italic.ttf} +0 -0
  62. /package/dist/assets/fonts/{DroidSerif-Regular.ttf → Droid/DroidSerif-Regular.ttf} +0 -0
  63. /package/dist/assets/fonts/{Ubuntu LICENCE.txt → Ubuntu/Ubuntu LICENCE.txt} +0 -0
  64. /package/dist/assets/fonts/{Ubuntu-B.ttf → Ubuntu/Ubuntu-B.ttf} +0 -0
  65. /package/dist/assets/fonts/{Ubuntu-BI.ttf → Ubuntu/Ubuntu-BI.ttf} +0 -0
  66. /package/dist/assets/fonts/{Ubuntu-R.ttf → Ubuntu/Ubuntu-R.ttf} +0 -0
  67. /package/dist/assets/fonts/{Ubuntu-RI.ttf → Ubuntu/Ubuntu-RI.ttf} +0 -0
  68. /package/dist/assets/fonts/{UbuntuMono-B.ttf → Ubuntu/UbuntuMono-B.ttf} +0 -0
  69. /package/dist/assets/fonts/{UbuntuMono-BI.ttf → Ubuntu/UbuntuMono-BI.ttf} +0 -0
  70. /package/dist/assets/fonts/{UbuntuMono-R.ttf → Ubuntu/UbuntuMono-R.ttf} +0 -0
  71. /package/dist/assets/fonts/{UbuntuMono-RI.ttf → Ubuntu/UbuntuMono-RI.ttf} +0 -0
@@ -1 +1 @@
1
- /* X_ITE v10.1.0 */(()=>{"use strict";var e={n:t=>{var i=t&&t.__esModule?()=>t.default:()=>t;return e.d(i,{a:i}),i},d:(t,i)=>{for(var n in i)e.o(i,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:i[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components");var i=e.n(t);const n=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Fields");var o=e.n(n);const s=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/X3DFieldDefinition");var r=e.n(s);const a=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/FieldDefinitionArray");var l=e.n(a);const h=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Rendering/X3DCoordinateNode");var d=e.n(h);const c=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/X3DConstants");var u=e.n(c);const p=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Namespace");var g=e.n(p);function _(e,t){switch(arguments.length){case 0:this.semiMajorAxis=0,this.semiMinorAxis=0;break;case 2:this.semiMajorAxis=e,this.semiMinorAxis=t;break;case 3:const i=arguments[1];this.semiMajorAxis=e,this.semiMinorAxis=e*(1-1/i)}}Object.assign(_.prototype,{getSemiMajorAxis(){return this.semiMajorAxis},getSemiMinorAxis(){return this.semiMinorAxis},toString(){return`${this.semiMajorAxis} ${this.semiMinorAxis}`}});const w=_;g().add("Spheroid3","standard/Math/Geometry/Spheroid3",w);const m=w,O={AA:new m(6377563.396,299.3249646,!0),AM:new m(6377340.189,299.3249646,!0),AN:new m(6378160,298.25,!0),BN:new m(6377483.865,299.1528128,!0),BR:new m(6377397.155,299.1528128,!0),CC:new m(6378206.4,294.9786982,!0),CD:new m(6378249.145,293.465,!0),EA:new m(6377276.345,300.8017,!0),EB:new m(6377298.556,300.8017,!0),EC:new m(6377301.243,300.8017,!0),ED:new m(6377295.664,300.8017,!0),EE:new m(6377304.063,300.8017,!0),EF:new m(6377309.613,300.8017,!0),FA:new m(6378155,298.3,!0),HE:new m(6378200,298.3,!0),HO:new m(6378270,297,!0),ID:new m(6378160,298.247,!0),IN:new m(6378388,297,!0),KA:new m(6378245,298.3,!0),RF:new m(6378137,298.257222101,!0),SA:new m(6378160,298.25,!0),WD:new m(6378135,298.26,!0),WE:new m(6378137,298.257223563,!0),SUN:new m(696342e3,1/9e-6,!0),MERCURY:new m(2439700,2439700),VENUS:new m(6051800,6051800),MOON:new m(1738140,1735970),MARS:new m(3395428,3377678),JUPITER:new m(71492e3,66854e3),SATURN:new m(60268e3,54364e3),URANUS:new m(2555e3,24973e3),NEPTUNE:new m(24764e3,24341e3),PLUTO:new m(1153e3,1153e3)};g().add("ReferenceEllipsoids","standard/Geospatial/ReferenceEllipsoids",O);const y=O;function f(e,t,i){this.longitudeFirst=!t,this.degrees=!i,this.a=e.getSemiMajorAxis(),this.c=e.getSemiMinorAxis(),this.c2a2=(e.getSemiMinorAxis()/this.a)**2,this.ecc2=1-this.c2a2}Object.assign(f.prototype,{convert(e,t){const i=e.z;if(this.longitudeFirst)var n=e.y,o=e.x;else n=e.x,o=e.y;return this.degrees&&(n*=Math.PI/180,o*=Math.PI/180),this.convertRadians(n,o,i,t)},convertRadians(e,t,i,n){const o=Math.sin(e),s=o**2,r=Math.cos(e),a=this.a/Math.sqrt(1-this.ecc2*s),l=(a+i)*r;return n.set(l*Math.cos(t),l*Math.sin(t),(a*this.c2a2+i)*o)},apply(e,t){if(this.applyRadians(e,t),this.degrees&&(t.x*=180/Math.PI,t.y*=180/Math.PI),this.longitudeFirst){const e=t.x;t.x=t.y,t.y=e}return t},applyRadians(e,t){const i=e.x,n=e.y,o=e.z,s=Math.sqrt(i*i+n*n);if(0==s)return t.set(Math.PI,0,o-this.c);let r=0,a=Math.atan2(n,i),l=0,h=this.a,d=h,c=this.ecc2;for(let e=0;e<30;++e){const e=l,t=r;r=Math.atan(o/s/(1-c*d/(d+l)));const i=Math.sin(r);if(d=h/Math.sqrt(1-c*i*i),l=s/Math.cos(r)-d,Math.abs(l-e)<.001&&Math.abs(r-t)<1e-10)break}return t.set(r,a,l)},normal(e,t){const i=this.applyRadians(e,t),n=i.x,o=i.y,s=Math.cos(n),r=Math.cos(o)*s,a=Math.sin(o)*s,l=Math.sin(n);return t.set(r,a,l)}});const b=f;g().add("Geodetic","standard/Geospatial/Geodetic",b);const S=b,I=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Algorithm");var v=e.n(I);const F=1e7,x=5e5,C=.9996;function N(e,t,i,n){const o=e.getSemiMajorAxis(),s=1-(e.getSemiMinorAxis()/o)**2,r=s/(1-s),a=(1-Math.sqrt(1-s))/(1+Math.sqrt(1-s));this.southernHemisphere=!i,this.eastingFirst=!n,this.a=o,this.ecc2=s,this.EE=r,this.E8=8*r,this.E9=9*r,this.E252=252*r,this.e1=a,this.A=C*(o*(1-s/4-3*s*s/64-5*s*s*s/256)),this.B=3*a/2-7*a*a*a/32,this.C=21*a*a/16-55*a*a*a*a/32,this.D=151*a*a*a/96,this.E=o*(1-s),this.W=1-s/4-3*s*s/64-5*s*s*s/256,this.X=3*s/8+3*s*s/32+45*s*s*s/1024,this.Y=15*s*s/256+45*s*s*s/1024,this.Z=35*s*s*s/3072,this.longitude0=v().radians(6*t-183),this.geodeticConverter=new S(e,!0,!0)}Object.assign(N.prototype,{convert(e,t){if(this.eastingFirst)var i=e.y,n=e.x;else i=e.x,n=e.y;let o=this.southernHemisphere;i<0&&(o=!this.southernHemisphere,i=-i),o&&(i-=F),n-=x;const s=i/this.A,r=s+this.B*Math.sin(2*s)+this.C*Math.sin(4*s)+this.D*Math.sin(6*s),a=Math.sin(r)**2,l=Math.cos(r),h=Math.tan(r),d=this.a/Math.sqrt(1-this.ecc2*a),c=h**2,u=h**8,p=this.EE*c,g=p*p,_=this.E/(1-this.ecc2*a)**1.5,w=n/(d*C),m=(5+3*c+10*p-4*g-this.E9)*w**4/24,O=(61+90*c+298*p+45*u-this.E252-3*g)*w**6/720,y=(5-2*p+28*c-3*g+this.E8+24*u)*w**5/120,f=r-d*h/_*(w*w/2-m+O),b=this.longitude0+(w-(1+2*c+p)*w**3/6+y)/l;return this.geodeticConverter.convertRadians(f,b,e.z,t)},apply(e,t){const i=this.geodeticConverter.applyRadians(e,t),n=i.x,o=i.y,s=Math.tan(n),r=Math.cos(n),a=this.EE,l=this.a/Math.sqrt(1-this.ecc2*Math.sin(n)**2),h=s*s,d=h*h*h,c=a*r*r,u=r*(o-this.longitude0),p=this.a*(this.W*n-this.X*Math.sin(2*n)+this.Y*Math.sin(4*n)-this.Z*Math.sin(6*n)),g=C*l*(u+(1-h+c)*u**3/6+(5-18*d+72*c-58*a)*u**5/120)+x;let _=C*(p+l*s*(u*u/2+(5-h+9*c+4*c*c)*u**4/24+(61-58*d+600*c-330*a)*u**6/720));return n<0?(_+=F,this.southernHemisphere||(_=-_)):this.southernHemisphere&&(_=-_),this.eastingFirst?t.set(g,_,i.z):t.set(_,g,i.z)}});const j=N;g().add("UniversalTransverseMercator","standard/Geospatial/UniversalTransverseMercator",j);const M=j;function G(){}Object.assign(G.prototype,{convert:(e,t)=>t.assign(e),apply:(e,t)=>t.assign(e),slerp(e,t,i){const n=e.magnitude(),o=t.magnitude();return e.normalize(),t.normalize(),v().simpleSlerp(e,t,i).multiply(v().lerp(n,o,i))}});const z=G;g().add("Geocentric","x_ite/Browser/Geospatial/Geocentric",z);const V=z;let T=0;const D=T++,P=T++,E=T++,X={GD:D,GDC:D,UTM:P,GC:E,GCC:E,GS:E},R=/^Z(\d+)$/,k={GD:D,UTM:P,GC:E,getReferenceFrame(e,t){switch(this.getCoordinateSystem(e)){case D:return new S(this.getEllipsoid(e),this.getLatitudeFirst(e),t);case P:return new M(this.getEllipsoid(e),this.getZone(e),this.getNorthernHemisphere(e),this.getNorthingFirst(e));case E:return new V}return new S(y.WE,!0,t)},getElevationFrame(e,t){return new S(this.getEllipsoid(e),!0,t)},getCoordinateSystem(e){for(const t of e){const e=X[t];if(void 0!==e)return e}return D},getEllipsoid(e){for(const t of e){const e=y[t];if(void 0!==e)return e}return y.WE},getEllipsoidString(e){for(const t of e){if(void 0!==y[t])return t}return"WE"},isStandardOrder(e){switch(this.getCoordinateSystem(e)){case D:return this.getLatitudeFirst(e);case P:return this.getNorthingFirst(e);case E:return!0}return this.getLatitudeFirst(e)},getLatitudeFirst(e){for(const t of e)if("longitude_first"===t)return!1;return!0},getNorthingFirst(e){for(const t of e)if("easting_first"===t)return!1;return!0},getZone(e){for(const t of e){const e=t.match(R);if(e)return parseInt(e[1])}return 1},getNorthernHemisphere(e){for(const t of e)if("S"===t)return!1;return!0}};g().add("GeospatialObject","x_ite/Browser/Geospatial/GeospatialObject",k);const L=k,A=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/X3DCast");var B=e.n(A);const U=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Vector3");var q=e.n(U);const W=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Matrix4");var H=e.n(W);const Y=new(q()),Z=new(q()),$=new(q()),K=new(q()),J=new(q()),Q=new(q());function ee(e){this.addType(u().X3DGeospatialObject),this.radians=!1,this.origin=new(q()),this.originMatrix=new(H()),this.invOriginMatrix=new(H())}function te(e,t){return this.invOriginMatrix.multVecMatrix(this.referenceFrame.convert(e,t))}function ie(e,t){return this.referenceFrame.apply(this.originMatrix.multVecMatrix(Y.assign(e)),t)}function ne(e,t){return this.invOriginMatrix.multDirMatrix(this.elevationFrame.normal(this.originMatrix.multVecMatrix(Y.assign(e)),t))}function oe(e,t){return se.call(this,e,t).multRight(this.invOriginMatrix)}function se(e,t){return this.referenceFrame.convert(e,$),this.elevationFrame.normal($,J),K.set(0,0,1).cross(J),K.equals(q().Zero)&&K.set(1,0,0),Q.assign(K).cross(J),K.normalize(),Q.normalize(),t.set(K.x,K.y,K.z,0,J.x,J.y,J.z,0,Q.x,Q.y,Q.z,0,$.x,$.y,$.z,1)}Object.assign(ee.prototype,{initialize(){this._geoSystem.addInterest("set_geoSystem__",this),this._geoOrigin.addInterest("set_geoOrigin__",this),this.set_geoSystem__(),this.set_geoOrigin__()},set_geoSystem__(){this.coordinateSystem=L.getCoordinateSystem(this._geoSystem),this.referenceFrame=L.getReferenceFrame(this._geoSystem,this.radians),this.elevationFrame=L.getElevationFrame(this._geoSystem,this.radians),this.standardOrder=L.isStandardOrder(this._geoSystem)},set_geoOrigin__(){this.geoOriginNode&&(this.geoOriginNode.removeInterest("set_origin__",this),this.geoOriginNode.removeInterest("set_rotateYUp__",this),this.geoOriginNode.removeInterest("addNodeEvent",this)),this.geoOriginNode=B()(u().GeoOrigin,this._geoOrigin),this.geoOriginNode&&(this.geoOriginNode.addInterest("set_origin__",this),this.geoOriginNode.addInterest("set_rotateYUp__",this),this.geoOriginNode.addInterest("addNodeEvent",this)),this.set_origin__(),this.set_rotateYUp__()},set_origin__(){this.geoOriginNode?this.geoOriginNode.getOrigin(this.origin):this.origin.set(0,0,0),this.set_originMatrix__()},set_originMatrix__(){if(this.geoOriginNode){var e=this.origin;this.elevationFrame.normal(e,J),K.set(0,0,1).cross(J),K.equals(q().Zero)&&K.set(1,0,0),Q.assign(K).cross(J),K.normalize(),Q.normalize(),this.originMatrix.set(K.x,K.y,K.z,0,J.x,J.y,J.z,0,Q.x,Q.y,Q.z,0,e.x,e.y,e.z,1),this.invOriginMatrix.assign(this.originMatrix).inverse()}},set_rotateYUp__(){this.geoOriginNode&&this.geoOriginNode._rotateYUp.getValue()?(this.getCoord=te,this.getGeoCoord=ie,this.getGeoUpVector=ne,this.getLocationMatrix=oe):(delete this.getCoord,delete this.getGeoCoord,delete this.getGeoUpVector,delete this.getLocationMatrix)},getReferenceFrame(){return this.referenceFrame},getStandardOrder(){return this.standardOrder},getCoord(e,t){return this.referenceFrame.convert(e,t).subtract(this.origin)},getGeoCoord(e,t){return this.referenceFrame.apply(Y.assign(e).add(this.origin),t)},getGeoElevation(e){return this.getGeoCoord(e,Z).z},getGeoUpVector(e,t){return this.elevationFrame.normal(Y.assign(e).add(this.origin),t)},getLocationMatrix(e,t){var i=this.origin,n=se.call(this,e,t);return n[12]-=i.x,n[13]-=i.y,n[14]-=i.z,n},dispose(){}}),Object.defineProperties(ee,{typeName:{value:"X3DGeospatialObject",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0}});const re=ee;g().add("X3DGeospatialObject","x_ite/Components/Geospatial/X3DGeospatialObject",re);const ae=re,le=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Geometry/Triangle3");var he=e.n(le);function de(e){d().call(this,e),ae.call(this,e),this.addType(u().GeoCoordinate)}Object.assign(Object.setPrototypeOf(de.prototype,d().prototype),ae.prototype,{initialize(){d().prototype.initialize.call(this),ae.prototype.initialize.call(this)},set1Point:(()=>{const e=new(q());return function(t,i){this._point[t]=this.getGeoCoord(i,e)}})(),get1Point:(()=>{const e=new(q());return function(t,i){if(t<this.length){const n=this.point;return t*=3,this.getCoord(e.set(n[t],n[t+1],n[t+2]),i)}return i.set(0,0,0)}})(),addPoint:(()=>{const e=new(q()),t=new(q());return function(i,n){if(i<this.length){const o=this.point;i*=3,this.getCoord(e.set(o[i],o[i+1],o[i+2]),t),n.push(t[0],t[1],t[2],1)}else n.push(0,0,0,1)}})(),addPoints:(()=>{const e=new(q()),t=new(q());return function(i){const n=this.point,o=3*this.length;for(let s=0;s<o;s+=3)this.getCoord(e.set(n[s],n[s+1],n[s+2]),t),i.push(t[0],t[1],t[2],1);return i}})(),getNormal:(()=>{const e=new(q()),t=new(q()),i=new(q());return function(n,o,s){const r=this.length;return n<r&&o<r&&s<r?he().normal(this.get1Point(n,e),this.get1Point(o,t),this.get1Point(s,i),new(q())):new(q())}})(),getQuadNormal:(()=>{const e=new(q()),t=new(q()),i=new(q()),n=new(q());return function(o,s,r,a){const l=this.length;return o<l&&s<l&&r<l&&a<l?he().quadNormal(this.get1Point(o,e),this.get1Point(s,t),this.get1Point(r,i),this.get1Point(a,n),new(q())):new(q())}})(),dispose(){ae.prototype.dispose.call(this),d().prototype.dispose.call(this)}}),Object.defineProperties(de,{typeName:{value:"GeoCoordinate",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"coord",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"point",new(o().MFVec3d))]),enumerable:!0}});const ce=de;g().add("GeoCoordinate","x_ite/Components/Geospatial/GeoCoordinate",ce);const ue=ce,pe=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Rendering/X3DGeometryNode");var ge=e.n(pe);const _e=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Vector2");var we=e.n(_e);function me(e){ge().call(this,e),ae.call(this,e),this.addType(u().GeoElevationGrid),this._set_height.setUnit("length"),this._creaseAngle.setUnit("angle"),this._height.setUnit("length"),this.colorNode=null,this.texCoordNode=null,this.normalNode=null}Object.assign(Object.setPrototypeOf(me.prototype,ge().prototype),ae.prototype,{initialize(){ge().prototype.initialize.call(this),ae.prototype.initialize.call(this),this._set_height.addFieldInterest(this._height),this._color.addInterest("set_color__",this),this._texCoord.addInterest("set_texCoord__",this),this._normal.addInterest("set_normal__",this),this.set_color__(),this.set_texCoord__(),this.set_normal__()},set_color__(){this.colorNode?.removeInterest("requestRebuild",this),this.colorNode=B()(u().X3DColorNode,this._color),this.colorNode?.addInterest("requestRebuild",this),this.setTransparent(this.colorNode?.isTransparent())},set_texCoord__(){this.texCoordNode?.removeInterest("requestRebuild",this),this.texCoordNode=B()(u().X3DTextureCoordinateNode,this._texCoord),this.texCoordNode?.addInterest("requestRebuild",this),this.setTextureCoordinate(this.texCoordNode)},set_normal__(){this.normalNode?.removeInterest("requestRebuild",this),this.normalNode=B()(u().X3DNormalNode,this._normal),this.normalNode?.addInterest("requestRebuild",this)},getColor(){return this.colorNode},getTexCoord(){return this.texCoordNode},getNormal(){return this.normalNode},getTangent(){return this.tangentNode},getHeight(e){return e<this._height.length?this._height[e]*this._yScale.getValue():0},createTexCoords(){const e=[],t=this._xDimension.getValue(),i=this._zDimension.getValue(),n=t-1,o=i-1;for(let s=0;s<i;++s)for(let i=0;i<t;++i)e.push(new(we())(i/n,s/o));return e},createNormals(e,t,i){const n=!this._ccw.getValue(),o=new Map,s=[];for(let t=0;t<e.length;++t)o.set(t,[]);for(let i=0;i<t.length;i+=3){const r=t[i],a=t[i+1],l=t[i+2];o.get(r).push(s.length),o.get(a).push(s.length+1),o.get(l).push(s.length+2);const h=he().normal(e[r],e[a],e[l],new(q()));n&&h.negate(),s.push(h),s.push(h),s.push(h)}return this._normalPerVertex.getValue()?this.refineNormals(o,s,i??this._creaseAngle.getValue()):s},createCoordIndex(){const e=[],t=this._xDimension.getValue(),i=t-1,n=this._zDimension.getValue()-1;for(let o=0;o<n;++o)for(let n=0;n<i;++n){const i=o*t+n,s=(o+1)*t+n,r=(o+1)*t+(n+1),a=o*t+(n+1);e.push(i),e.push(r),e.push(s),e.push(i),e.push(a),e.push(r)}return e},createPoints(){const e=[],t=this._xDimension.getValue(),i=this._zDimension.getValue(),n=this._xSpacing.getValue(),o=this._zSpacing.getValue();if(this.getStandardOrder())for(let s=0;s<i;++s)for(let i=0;i<t;++i){const r=new(q())(o*s,n*i,this.getHeight(i+s*t));r.add(this._geoGridOrigin.getValue()),e.push(this.getCoord(r,r))}else for(let s=0;s<i;++s)for(let i=0;i<t;++i){const r=new(q())(n*i,o*s,this.getHeight(i+s*t));r.add(this._geoGridOrigin.getValue()),e.push(this.getCoord(r,r))}return e},build(){if(this._xDimension.getValue()<2||this._zDimension.getValue()<2)return;const e=this._colorPerVertex.getValue(),t=this._normalPerVertex.getValue(),i=this.createCoordIndex(),n=this.getColor(),o=this.getTexCoord(),s=this.getNormal(),r=this.getTangent(),a=this.createPoints(),l=this.getColors(),h=this.getMultiTexCoords(),d=this.getNormals(),c=this.getTangent(),u=this.getVertices();let p=0;if(o)o.init(h);else{var g=this.createTexCoords(),_=this.getTexCoords();h.push(_)}for(let w=0;w<i.length;++p)for(let m=0;m<6;++m,++w){const m=i[w],{x:O,y,z:f}=a[m];if(n?.addColor(e?m:p,l),o)o.addPoint(m,h);else{const{x:e,y:t}=g[m];_.push(e,t,0,1)}s?.addVector(t?m:p,d),r?.addVector(t?m:p,c),u.push(O,y,f,1)}if(!s){const e=this.createNormals(a,i);for(const{x:t,y:i,z:n}of e)d.push(t,i,n)}this.setSolid(this._solid.getValue()),this.setCCW(this._ccw.getValue())},dispose(){ae.prototype.dispose.call(this),ge().prototype.dispose.call(this)}}),Object.defineProperties(me,{typeName:{value:"GeoElevationGrid",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"geometry",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOnly,"set_height",new(o().MFDouble)),new(r())(u().initializeOnly,"geoGridOrigin",new(o().SFVec3d)),new(r())(u().initializeOnly,"xDimension",new(o().SFInt32)),new(r())(u().initializeOnly,"zDimension",new(o().SFInt32)),new(r())(u().initializeOnly,"xSpacing",new(o().SFDouble)(1)),new(r())(u().initializeOnly,"zSpacing",new(o().SFDouble)(1)),new(r())(u().inputOutput,"yScale",new(o().SFFloat)(1)),new(r())(u().initializeOnly,"solid",new(o().SFBool)(!0)),new(r())(u().initializeOnly,"ccw",new(o().SFBool)(!0)),new(r())(u().initializeOnly,"creaseAngle",new(o().SFDouble)),new(r())(u().initializeOnly,"colorPerVertex",new(o().SFBool)(!0)),new(r())(u().initializeOnly,"normalPerVertex",new(o().SFBool)(!0)),new(r())(u().inputOutput,"color",new(o().SFNode)),new(r())(u().inputOutput,"texCoord",new(o().SFNode)),new(r())(u().inputOutput,"normal",new(o().SFNode)),new(r())(u().inputOutput,"tangent",new(o().SFNode)),new(r())(u().initializeOnly,"height",new(o().MFDouble)(0,0))]),enumerable:!0}});const Oe=me;g().add("GeoElevationGrid","x_ite/Components/Geospatial/GeoElevationGrid",Oe);const ye=Oe,fe=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Core/X3DChildNode");var be=e.n(fe);const Se=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/X3DBoundedObject");var Ie=e.n(Se);const ve=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Rendering/TraverseType");var Fe=e.n(ve);const xe=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/Group");var Ce=e.n(xe);const Ne=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Networking/Inline");var je=e.n(Ne);const Me=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Geometry/Box3");var Ge=e.n(Me),ze=new(q());function Ve(e){be().call(this,e),Ie().call(this,e),ae.call(this,e),this.addType(u().GeoLOD),this._range.setUnit("length"),this.unload=!1,this.rootGroup=new(Ce())(this.getBrowser().getPrivateScene()),this.rootInline=new(je())(e),this.child1Inline=new(je())(e),this.child2Inline=new(je())(e),this.child3Inline=new(je())(e),this.child4Inline=new(je())(e),this.childrenLoaded=!1,this.childBBox=new(Ge()),this.keepCurrentLevel=!1,this.modelViewMatrix=new(H())}Object.assign(Object.setPrototypeOf(Ve.prototype,be().prototype),Ie().prototype,ae.prototype,{initialize(){be().prototype.initialize.call(this),Ie().prototype.initialize.call(this),ae.prototype.initialize.call(this),this._rootNode.addFieldInterest(this.rootGroup._children),this.rootGroup._children=this._rootNode,this.rootGroup.setPrivate(!0),this.rootGroup.setup(),this.rootInline._loadState.addInterest("set_rootLoadState__",this),this.child1Inline._loadState.addInterest("set_childLoadState__",this),this.child2Inline._loadState.addInterest("set_childLoadState__",this),this.child3Inline._loadState.addInterest("set_childLoadState__",this),this.child4Inline._loadState.addInterest("set_childLoadState__",this),this._rootUrl.addFieldInterest(this.rootInline._url),this._child1Url.addFieldInterest(this.child1Inline._url),this._child2Url.addFieldInterest(this.child2Inline._url),this._child3Url.addFieldInterest(this.child3Inline._url),this._child4Url.addFieldInterest(this.child4Inline._url),this.rootInline._load=!0,this.child1Inline._load=!1,this.child2Inline._load=!1,this.child3Inline._load=!1,this.child4Inline._load=!1,this.rootInline._url=this._rootUrl,this.child1Inline._url=this._child1Url,this.child2Inline._url=this._child2Url,this.child3Inline._url=this._child3Url,this.child4Inline._url=this._child4Url,this.rootInline.setup(),this.child1Inline.setup(),this.child2Inline.setup(),this.child3Inline.setup(),this.child4Inline.setup()},getBBox(e,t){if(this._bboxSize.getValue().equals(this.getDefaultBBoxSize())){switch(this.childrenLoaded?this._level_changed.getValue():0){case 0:return this._rootNode.length?this.rootGroup.getBBox(e,t):this.rootInline.getBBox(e,t);case 1:{const i=this.childBBox;return e.set(),e.add(this.child1Inline.getBBox(i,t)),e.add(this.child2Inline.getBBox(i,t)),e.add(this.child3Inline.getBBox(i,t)),e.add(this.child4Inline.getBBox(i,t)),e}}return e.set()}return e.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},set_rootLoadState__(){0===this._level_changed.getValue()&&(this._rootNode.length||this.rootInline.checkLoadState()===u().COMPLETE_STATE&&(this._children=this.rootInline.getInternalScene().getRootNodes(),this.childrenLoaded=!1))},set_childLoadState__(){if(1===this._level_changed.getValue()){var e=0;if(this.child1Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child1Inline.checkLoadState()!==u().FAILED_STATE||++e,this.child2Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child2Inline.checkLoadState()!==u().FAILED_STATE||++e,this.child3Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child3Inline.checkLoadState()!==u().FAILED_STATE||++e,this.child4Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child4Inline.checkLoadState()!==u().FAILED_STATE||++e,4===e){this.childrenLoaded=!0;var t=this._children;t.length=0;for(var i=0,n=(o=this.child1Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i]);for(i=0,n=(o=this.child2Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i]);for(i=0,n=(o=this.child3Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i]);var o;for(i=0,n=(o=this.child4Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i])}}},set_childCameraObject__(){this.setCameraObject(this.child1Inline.isCameraObject()||this.child2Inline.isCameraObject()||this.child3Inline.isCameraObject()||this.child4Inline.isCameraObject())},set_childPickableObject__(){this.setPickableObject(this.child1Inline.isPickableObject()||this.child2Inline.isPickableObject()||this.child3Inline.isPickableObject()||this.child4Inline.isPickableObject())},getLevel(e){return this.getDistance(e)<this._range.getValue()?1:0},getDistance(e){return e.translate(this.getCoord(this._center.getValue(),ze)),e.origin.magnitude()},traverse(e,t){switch(e){case Fe().PICKING:var i=this.getBrowser().getPickingHierarchy();return i.push(this),this.traverseChildren(e,t),void i.pop();case Fe().DISPLAY:var n=this.getLevel(this.modelViewMatrix.assign(t.getModelViewMatrix().get()));if(n!==this._level_changed.getValue())switch(this._level_changed=n,n){case 0:this.child1Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child2Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child3Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child4Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child1Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this.child2Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this.child3Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this.child4Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this._rootNode.length?(this.rootGroup._isCameraObject.addFieldInterest(this._isCameraObject),this.rootGroup._isPickableObject.addFieldInterest(this._isPickableObject),this.setCameraObject(this.rootGroup.isCameraObject()),this.setPickableObject(this.rootGroup.isPickableObject()),this._children=this._rootNode,this.childrenLoaded=!1):this.rootInline.checkLoadState()==u().COMPLETE_STATE&&(this.rootInline._isCameraObject.addFieldInterest(this._isCameraObject),this.rootInline._isPickableObject.addFieldInterest(this._isPickableObject),this.setCameraObject(this.rootInline.isCameraObject()),this.setPickableObject(this.rootInline.isPickableObject()),this._children=this.rootInline.getInternalScene().getRootNodes(),this.childrenLoaded=!1),this.unload&&(this.child1Inline._load=!1,this.child2Inline._load=!1,this.child3Inline._load=!1,this.child4Inline._load=!1);break;case 1:this._rootNode.length?(this.rootGroup._isCameraObject.removeFieldInterest(this._isCameraObject),this.rootGroup._isPickableObject.removeFieldInterest(this._isPickableObject)):(this.rootInline._isCameraObject.removeFieldInterest(this._isCameraObject),this.rootInline._isPickableObject.removeFieldInterest(this._isPickableObject)),this.child1Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child2Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child3Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child4Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child1Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.child2Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.child3Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.child4Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.set_childCameraObject__(),this.set_childPickableObject__(),this.child1Inline._load.getValue()?this.set_childLoadState__():(this.child1Inline._load=!0,this.child2Inline._load=!0,this.child3Inline._load=!0,this.child4Inline._load=!0)}return void this.traverseChildren(e,t);default:return void this.traverseChildren(e,t)}},traverseChildren(e,t){switch(this.childrenLoaded?this._level_changed.getValue():0){case 0:this._rootNode.length?this.rootGroup.traverse(e,t):this.rootInline.traverse(e,t);break;case 1:this.child1Inline.traverse(e,t),this.child2Inline.traverse(e,t),this.child3Inline.traverse(e,t),this.child4Inline.traverse(e,t)}},dispose(){ae.prototype.dispose.call(this),Ie().prototype.dispose.call(this),be().prototype.dispose.call(this)}}),Object.defineProperties(Ve,{typeName:{value:"GeoLOD",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().initializeOnly,"rootUrl",new(o().MFString)),new(r())(u().initializeOnly,"child1Url",new(o().MFString)),new(r())(u().initializeOnly,"child2Url",new(o().MFString)),new(r())(u().initializeOnly,"child3Url",new(o().MFString)),new(r())(u().initializeOnly,"child4Url",new(o().MFString)),new(r())(u().initializeOnly,"center",new(o().SFVec3d)),new(r())(u().initializeOnly,"range",new(o().SFFloat)(10)),new(r())(u().outputOnly,"level_changed",new(o().SFInt32)(-1)),new(r())(u().inputOutput,"visible",new(o().SFBool)(!0)),new(r())(u().inputOutput,"bboxDisplay",new(o().SFBool)),new(r())(u().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(r())(u().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(r())(u().initializeOnly,"rootNode",new(o().MFNode)),new(r())(u().outputOnly,"children",new(o().MFNode))]),enumerable:!0}});const Te=Ve;g().add("GeoLOD","x_ite/Components/Geospatial/GeoLOD",Te);const De=Te,Pe=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/X3DTransformMatrix3DNode");var Ee=e.n(Pe),Xe=new(H());function Re(e){Ee().call(this,e),ae.call(this,e),this.addType(u().GeoLocation)}Object.assign(Object.setPrototypeOf(Re.prototype,Ee().prototype),ae.prototype,{initialize(){Ee().prototype.initialize.call(this),ae.prototype.initialize.call(this),this.addInterest("eventsProcessed",this),this.eventsProcessed()},eventsProcessed(){this.setMatrix(this.getLocationMatrix(this._geoCoords.getValue(),Xe))},dispose(){ae.prototype.dispose.call(this),Ee().prototype.dispose.call(this)}}),Object.defineProperties(Re,{typeName:{value:"GeoLocation",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"geoCoords",new(o().SFVec3d)),new(r())(u().inputOutput,"visible",new(o().SFBool)(!0)),new(r())(u().inputOutput,"bboxDisplay",new(o().SFBool)),new(r())(u().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(r())(u().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(r())(u().inputOnly,"addChildren",new(o().MFNode)),new(r())(u().inputOnly,"removeChildren",new(o().MFNode)),new(r())(u().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const ke=Re;g().add("GeoLocation","x_ite/Components/Geospatial/GeoLocation",ke);const Le=ke,Ae=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Core/X3DInfoNode");var Be=e.n(Ae);const Ue=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Networking/X3DUrlObject");var qe=e.n(Ue);function We(e){Be().call(this,e),qe().call(this,e),this.addType(u().GeoMetadata)}Object.assign(Object.setPrototypeOf(We.prototype,Be().prototype),qe().prototype,{initialize(){Be().prototype.initialize.call(this),qe().prototype.initialize.call(this)},requestImmediateLoad(e=!0){},dispose(){qe().prototype.dispose.call(this),Be().prototype.dispose.call(this)}}),Object.defineProperties(We,{typeName:{value:"GeoMetadata",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().inputOutput,"load",new(o().SFBool)(!0)),new(r())(u().inputOutput,"url",new(o().MFString)),new(r())(u().inputOutput,"autoRefresh",new(o().SFTime)),new(r())(u().inputOutput,"autoRefreshTimeLimit",new(o().SFTime)(3600)),new(r())(u().inputOutput,"summary",new(o().MFString)),new(r())(u().inputOutput,"data",new(o().MFNode))]),enumerable:!0}});const He=We;g().add("GeoMetadata","x_ite/Components/Geospatial/GeoMetadata",He);const Ye=He,Ze=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Core/X3DNode");var $e=e.n(Ze);function Ke(e){$e().call(this,e),this.addType(u().GeoOrigin),this.radians=!1}Object.assign(Object.setPrototypeOf(Ke.prototype,$e().prototype),{initialize(){$e().prototype.initialize.call(this),this._geoSystem.addInterest("set_geoSystem__",this),this.set_geoSystem__()},set_geoSystem__(){this.referenceFrame=L.getReferenceFrame(this._geoSystem,this.radians)},getOrigin(e){return this.referenceFrame.convert(this._geoCoords.getValue(),e)}}),Object.defineProperties(Ke,{typeName:{value:"GeoOrigin",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"geoOrigin",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"geoCoords",new(o().SFVec3d)),new(r())(u().initializeOnly,"rotateYUp",new(o().SFBool))]),enumerable:!0}});const Je=Ke;g().add("GeoOrigin","x_ite/Components/Geospatial/GeoOrigin",Je);const Qe=Je,et=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Interpolation/X3DInterpolatorNode");var tt=e.n(et);function it(e){tt().call(this,e),ae.call(this,e),this.addType(u().GeoPositionInterpolator),this._value_changed.setUnit("length"),this.geocentric=new V}Object.assign(Object.setPrototypeOf(it.prototype,tt().prototype),ae.prototype,{setup(){ae.prototype.initialize.call(this),tt().prototype.setup.call(this)},initialize(){tt().prototype.initialize.call(this),this._keyValue.addInterest("set_keyValue__",this)},set_keyValue__(){const e=this._key,t=this._keyValue;t.length<e.length&&t.resize(e.length,t.length?t[t.length-1]:new(o().SFVec3f))},interpolate:(()=>{const e=new(q()),t=new(q()),i=new(q());return function(n,o,s){this.getCoord(this._keyValue[n].getValue(),e),this.getCoord(this._keyValue[o].getValue(),t);const r=this.geocentric.slerp(e,t,s);this._geovalue_changed=this.getGeoCoord(r,i),this._value_changed=r}})(),dispose(){ae.prototype.dispose.call(this),tt().prototype.dispose.call(this)}}),Object.defineProperties(it,{typeName:{value:"GeoPositionInterpolator",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOnly,"set_fraction",new(o().SFFloat)),new(r())(u().inputOutput,"key",new(o().MFFloat)),new(r())(u().inputOutput,"keyValue",new(o().MFVec3d)),new(r())(u().outputOnly,"value_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"geovalue_changed",new(o().SFVec3d))]),enumerable:!0}});const nt=it;g().add("GeoPositionInterpolator","x_ite/Components/Geospatial/GeoPositionInterpolator",nt);const ot=nt,st=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/EnvironmentalSensor/X3DEnvironmentalSensorNode");var rt=e.n(st);const at=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/EnvironmentalSensor/ProximitySensor");var lt=e.n(at),ht=new(q());function dt(e){rt().call(this,e),ae.call(this,e),this.addType(u().GeoProximitySensor),this._position_changed.setUnit("length"),this._centerOfRotation_changed.setUnit("length"),this.proximitySensor=new(lt())(e),this.setCameraObject(this.proximitySensor.isCameraObject()),this.setPickableObject(this.proximitySensor.isPickableObject())}Object.assign(Object.setPrototypeOf(dt.prototype,rt().prototype),ae.prototype,{initialize(){rt().prototype.initialize.call(this),ae.prototype.initialize.call(this),this._enabled.addFieldInterest(this.proximitySensor._enabled),this._size.addFieldInterest(this.proximitySensor._size),this._center.addFieldInterest(this.proximitySensor._center),this._geoCenter.addFieldInterest(this._center),this.proximitySensor._isCameraObject.addFieldInterest(this._isCameraObject),this.proximitySensor._isPickableObject.addFieldInterest(this._isPickableObject),this.proximitySensor._isActive.addFieldInterest(this._isActive),this.proximitySensor._enterTime.addFieldInterest(this._enterTime),this.proximitySensor._exitTime.addFieldInterest(this._exitTime),this.proximitySensor._position_changed.addFieldInterest(this._position_changed),this.proximitySensor._orientation_changed.addFieldInterest(this._orientation_changed),this.proximitySensor._centerOfRotation_changed.addFieldInterest(this._centerOfRotation_changed),this.proximitySensor._position_changed.addInterest("set_position__",this),this.proximitySensor._enabled=this._enabled,this.proximitySensor._size=this._size,this.proximitySensor._center=this._center,this.proximitySensor.setup()},set_position__(e){this._geoCoord_changed=this.getGeoCoord(this.proximitySensor._position_changed.getValue(),ht)},traverse(e,t){this.proximitySensor.traverse(e,t)},dispose(){ae.prototype.dispose.call(this),rt().prototype.dispose.call(this)}}),Object.defineProperties(dt,{typeName:{value:"GeoProximitySensor",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:2}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"enabled",new(o().SFBool)(!0)),new(r())(u().inputOutput,"size",new(o().SFVec3f)),new(r())(u().inputOutput,"center",new(o().SFVec3d)),new(r())(u().inputOutput,"geoCenter",new(o().SFVec3d)),new(r())(u().outputOnly,"isActive",new(o().SFBool)),new(r())(u().outputOnly,"enterTime",new(o().SFTime)),new(r())(u().outputOnly,"exitTime",new(o().SFTime)),new(r())(u().outputOnly,"geoCoord_changed",new(o().SFVec3d)),new(r())(u().outputOnly,"position_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"orientation_changed",new(o().SFRotation)),new(r())(u().outputOnly,"centerOfRotation_changed",new(o().SFVec3f))]),enumerable:!0}});const ct=dt;g().add("GeoProximitySensor","x_ite/Components/Geospatial/GeoProximitySensor",ct);const ut=ct,pt=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/PointingDeviceSensor/X3DTouchSensorNode");var gt=e.n(pt);function _t(e){gt().call(this,e),ae.call(this,e),this.addType(u().GeoTouchSensor),this._hitPoint_changed.setUnit("length")}Object.assign(Object.setPrototypeOf(_t.prototype,gt().prototype),ae.prototype,{initialize(){gt().prototype.initialize.call(this),ae.prototype.initialize.call(this)},set_over__:(()=>{const e=new(q());return function(t,i,n,o,s){gt().prototype.set_over__.call(this,t,i,n,o,s),this._isOver.getValue()&&(this._hitGeoCoord_changed=this.getGeoCoord(this._hitPoint_changed.getValue(),e))}})(),dispose(){ae.prototype.dispose.call(this),gt().prototype.dispose.call(this)}}),Object.defineProperties(_t,{typeName:{value:"GeoTouchSensor",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"enabled",new(o().SFBool)(!0)),new(r())(u().outputOnly,"hitTexCoord_changed",new(o().SFVec2f)),new(r())(u().outputOnly,"hitNormal_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"hitPoint_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"hitGeoCoord_changed",new(o().SFVec3d)),new(r())(u().outputOnly,"isOver",new(o().SFBool)),new(r())(u().outputOnly,"isActive",new(o().SFBool)),new(r())(u().outputOnly,"touchTime",new(o().SFTime))]),enumerable:!0}});const wt=_t;g().add("GeoTouchSensor","x_ite/Components/Geospatial/GeoTouchSensor",wt);const mt=wt;var Ot=new(H()),yt=new(H());function ft(e){Ee().call(this,e),ae.call(this,e),this.addType(u().GeoTransform),this._translation.setUnit("length")}Object.assign(Object.setPrototypeOf(ft.prototype,Ee().prototype),ae.prototype,{initialize(){Ee().prototype.initialize.call(this),ae.prototype.initialize.call(this),this.addInterest("eventsProcessed",this),this.eventsProcessed()},eventsProcessed(){this.getLocationMatrix(this._geoCenter.getValue(),yt),Ot.set(this._translation.getValue(),this._rotation.getValue(),this._scale.getValue(),this._scaleOrientation.getValue()),this.setMatrix(Ot.multRight(yt).multLeft(yt.inverse()))},dispose(){ae.prototype.dispose.call(this),Ee().prototype.dispose.call(this)}}),Object.defineProperties(ft,{typeName:{value:"GeoTransform",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:2}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"translation",new(o().SFVec3f)),new(r())(u().inputOutput,"rotation",new(o().SFRotation)),new(r())(u().inputOutput,"scale",new(o().SFVec3f)(1,1,1)),new(r())(u().inputOutput,"scaleOrientation",new(o().SFRotation)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"geoCenter",new(o().SFVec3d)),new(r())(u().inputOutput,"visible",new(o().SFBool)(!0)),new(r())(u().inputOutput,"bboxDisplay",new(o().SFBool)),new(r())(u().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(r())(u().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(r())(u().inputOnly,"addChildren",new(o().MFNode)),new(r())(u().inputOnly,"removeChildren",new(o().MFNode)),new(r())(u().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const bt=ft;g().add("GeoTransform","x_ite/Components/Geospatial/GeoTransform",bt);const St=bt,It=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Navigation/X3DViewpointNode");var vt=e.n(It);const Ft=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Navigation/Viewpoint");var xt=e.n(Ft);const Ct=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Navigation/NavigationInfo");var Nt=e.n(Ct);const jt=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Rotation4");var Mt=e.n(jt);function Gt(e){vt().call(this,e),ae.call(this,e),this.addType(u().GeoViewpoint),this.addChildObjects(u().inputOutput,"navType",new(o().MFString)("EXAMINE","ANY"),u().inputOutput,"headlight",new(o().SFBool)(!0)),this._centerOfRotation.setUnit("length"),this._fieldOfView.setUnit("angle"),e.getSpecificationVersion()<=3.2&&(this.addAlias("navType",this._navType),this.addAlias("headlight",this._headlight),this.traverse=zt),this.geoNavigationInfoNode=new(Nt())(e),this.projectionMatrix=new(H()),this.elevation=0}function zt(e,t){vt().prototype.traverse.call(this,e,t),this.geoNavigationInfoNode.traverse(e,t)}Object.assign(Object.setPrototypeOf(Gt.prototype,vt().prototype),ae.prototype,{initialize(){vt().prototype.initialize.call(this),ae.prototype.initialize.call(this);const e=this.getBrowser().getContext();this.logarithmicDepthBuffer=e.HAS_FEATURE_FRAG_DEPTH,this._position.addInterest("set_position__",this),this._positionOffset.addInterest("set_position__",this),this._navType.addFieldInterest(this.geoNavigationInfoNode._type),this._headlight.addFieldInterest(this.geoNavigationInfoNode._headlight),this.geoNavigationInfoNode._type=this._navType,this.geoNavigationInfoNode._headlight=this._headlight,this.geoNavigationInfoNode.setup(),this.getExecutionContext().getSpecificationVersion()<=3.2&&(this._navigationInfo=this.geoNavigationInfoNode),this.set_position__()},getRelativeTransformation:xt().prototype.getRelativeTransformation,setInterpolators:xt().prototype.setInterpolators,getFieldOfView:xt().prototype.getFieldOfView,setFieldOfView:xt().prototype.setFieldOfView,getUserFieldOfView:xt().prototype.getUserFieldOfView,getScreenScale:xt().prototype.getScreenScale,getViewportSize:xt().prototype.getViewportSize,getLookAtDistance:xt().prototype.getLookAtDistance,getProjectionMatrixWithLimits:xt().prototype.getProjectionMatrixWithLimits,getLogarithmicDepthBuffer(){return this.logarithmicDepthBuffer},getPosition:(()=>{const e=new(q());return function(){return this.getCoord(this._position.getValue(),e)}})(),setPosition:(()=>{const e=new(q());return function(t){this._position.setValue(this.getGeoCoord(t,e))}})(),set_position__:(()=>{const e=new(q());return function(){this.getCoord(this._position.getValue(),e),this.elevation=this.getGeoElevation(e.add(this._positionOffset.getValue()))}})(),getOrientation:(()=>{const e=new(H()),t=new(Mt());return function(){const i=this.getLocationMatrix(this._position.getValue(),e).submatrix;return t.setMatrix(i),t.multLeft(this._orientation.getValue())}})(),setOrientation:(()=>{const e=new(H()),t=new(Mt());return function(i){const n=this.getLocationMatrix(this._position.getValue(),e).submatrix;t.setMatrix(n),this._orientation.setValue(t.inverse().multLeft(i))}})(),getCenterOfRotation:(()=>{const e=new(q());return function(){return this.getCoord(this._centerOfRotation.getValue(),e)}})(),setCenterOfRotation:(()=>{const e=new(q());return function(t){this._centerOfRotation.setValue(this.getGeoCoord(t,e))}})(),getMaxFarValue:()=>1e9,getUpVector:(()=>{const e=new(q()),t=new(q());return function(i=!1){return!i||this.getUserPosition().magnitude()<65e5?(this.getCoord(this._position.getValue(),e),this.getGeoUpVector(e.add(this._positionOffset.getValue()),t)):t.assign(q().zAxis)}})(),getSpeedFactor(){return(Math.max(this.elevation,0)+10)/10*this._speedFactor.getValue()},dispose(){ae.prototype.dispose.call(this),vt().prototype.dispose.call(this)}}),Object.defineProperties(Gt,{typeName:{value:"GeoViewpoint",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOnly,"set_bind",new(o().SFBool)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().inputOutput,"position",new(o().SFVec3d)(0,0,1e5)),new(r())(u().inputOutput,"orientation",new(o().SFRotation)),new(r())(u().inputOutput,"centerOfRotation",new(o().SFVec3d)),new(r())(u().inputOutput,"fieldOfView",new(o().SFFloat)(.785398)),new(r())(u().inputOutput,"nearDistance",new(o().SFFloat)(-1)),new(r())(u().inputOutput,"farDistance",new(o().SFFloat)(-1)),new(r())(u().inputOutput,"viewAll",new(o().SFBool)),new(r())(u().inputOutput,"jump",new(o().SFBool)(!0)),new(r())(u().inputOutput,"retainUserOffsets",new(o().SFBool)),new(r())(u().initializeOnly,"speedFactor",new(o().SFFloat)(1)),new(r())(u().outputOnly,"isBound",new(o().SFBool)),new(r())(u().outputOnly,"bindTime",new(o().SFTime)),new(r())(u().inputOutput,"navigationInfo",new(o().SFNode))]),enumerable:!0}});const Vt=Gt;g().add("GeoViewpoint","x_ite/Components/Geospatial/GeoViewpoint",Vt);const Tt=Vt;i().add({name:"Geospatial",concreteNodes:[ue,ye,De,Le,Ye,Qe,ot,ut,mt,St,Tt],abstractNodes:[ae]});const Dt=void 0;g().add("Geospatial","assets/components/Geospatial",Dt)})();
1
+ /* X_ITE v10.2.0 */(()=>{"use strict";var e={n:t=>{var i=t&&t.__esModule?()=>t.default:()=>t;return e.d(i,{a:i}),i},d:(t,i)=>{for(var n in i)e.o(i,n)&&!e.o(t,n)&&Object.defineProperty(t,n,{enumerable:!0,get:i[n]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components");var i=e.n(t);const n=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Fields");var o=e.n(n);const s=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/X3DFieldDefinition");var r=e.n(s);const a=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/FieldDefinitionArray");var l=e.n(a);const h=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Rendering/X3DCoordinateNode");var d=e.n(h);const c=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/X3DConstants");var u=e.n(c);const p=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Namespace");var g=e.n(p);function _(e,t){switch(arguments.length){case 0:this.semiMajorAxis=0,this.semiMinorAxis=0;break;case 2:this.semiMajorAxis=e,this.semiMinorAxis=t;break;case 3:const i=arguments[1];this.semiMajorAxis=e,this.semiMinorAxis=e*(1-1/i)}}Object.assign(_.prototype,{getSemiMajorAxis(){return this.semiMajorAxis},getSemiMinorAxis(){return this.semiMinorAxis},toString(){return`${this.semiMajorAxis} ${this.semiMinorAxis}`}});const w=_;g().add("Spheroid3","standard/Math/Geometry/Spheroid3",w);const m=w,O={AA:new m(6377563.396,299.3249646,!0),AM:new m(6377340.189,299.3249646,!0),AN:new m(6378160,298.25,!0),BN:new m(6377483.865,299.1528128,!0),BR:new m(6377397.155,299.1528128,!0),CC:new m(6378206.4,294.9786982,!0),CD:new m(6378249.145,293.465,!0),EA:new m(6377276.345,300.8017,!0),EB:new m(6377298.556,300.8017,!0),EC:new m(6377301.243,300.8017,!0),ED:new m(6377295.664,300.8017,!0),EE:new m(6377304.063,300.8017,!0),EF:new m(6377309.613,300.8017,!0),FA:new m(6378155,298.3,!0),HE:new m(6378200,298.3,!0),HO:new m(6378270,297,!0),ID:new m(6378160,298.247,!0),IN:new m(6378388,297,!0),KA:new m(6378245,298.3,!0),RF:new m(6378137,298.257222101,!0),SA:new m(6378160,298.25,!0),WD:new m(6378135,298.26,!0),WE:new m(6378137,298.257223563,!0),SUN:new m(696342e3,1/9e-6,!0),MERCURY:new m(2439700,2439700),VENUS:new m(6051800,6051800),MOON:new m(1738140,1735970),MARS:new m(3395428,3377678),JUPITER:new m(71492e3,66854e3),SATURN:new m(60268e3,54364e3),URANUS:new m(2555e3,24973e3),NEPTUNE:new m(24764e3,24341e3),PLUTO:new m(1153e3,1153e3)};g().add("ReferenceEllipsoids","standard/Geospatial/ReferenceEllipsoids",O);const y=O;function f(e,t,i){this.longitudeFirst=!t,this.degrees=!i,this.a=e.getSemiMajorAxis(),this.c=e.getSemiMinorAxis(),this.c2a2=(e.getSemiMinorAxis()/this.a)**2,this.ecc2=1-this.c2a2}Object.assign(f.prototype,{convert(e,t){const i=e.z;if(this.longitudeFirst)var n=e.y,o=e.x;else n=e.x,o=e.y;return this.degrees&&(n*=Math.PI/180,o*=Math.PI/180),this.convertRadians(n,o,i,t)},convertRadians(e,t,i,n){const o=Math.sin(e),s=o**2,r=Math.cos(e),a=this.a/Math.sqrt(1-this.ecc2*s),l=(a+i)*r;return n.set(l*Math.cos(t),l*Math.sin(t),(a*this.c2a2+i)*o)},apply(e,t){if(this.applyRadians(e,t),this.degrees&&(t.x*=180/Math.PI,t.y*=180/Math.PI),this.longitudeFirst){const e=t.x;t.x=t.y,t.y=e}return t},applyRadians(e,t){const i=e.x,n=e.y,o=e.z,s=Math.sqrt(i*i+n*n);if(0==s)return t.set(Math.PI,0,o-this.c);let r=0,a=Math.atan2(n,i),l=0,h=this.a,d=h,c=this.ecc2;for(let e=0;e<30;++e){const e=l,t=r;r=Math.atan(o/s/(1-c*d/(d+l)));const i=Math.sin(r);if(d=h/Math.sqrt(1-c*i*i),l=s/Math.cos(r)-d,Math.abs(l-e)<.001&&Math.abs(r-t)<1e-10)break}return t.set(r,a,l)},normal(e,t){const i=this.applyRadians(e,t),n=i.x,o=i.y,s=Math.cos(n),r=Math.cos(o)*s,a=Math.sin(o)*s,l=Math.sin(n);return t.set(r,a,l)}});const b=f;g().add("Geodetic","standard/Geospatial/Geodetic",b);const S=b,I=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Algorithm");var v=e.n(I);const F=1e7,x=5e5,C=.9996;function N(e,t,i,n){const o=e.getSemiMajorAxis(),s=1-(e.getSemiMinorAxis()/o)**2,r=s/(1-s),a=(1-Math.sqrt(1-s))/(1+Math.sqrt(1-s));this.southernHemisphere=!i,this.eastingFirst=!n,this.a=o,this.ecc2=s,this.EE=r,this.E8=8*r,this.E9=9*r,this.E252=252*r,this.e1=a,this.A=C*(o*(1-s/4-3*s*s/64-5*s*s*s/256)),this.B=3*a/2-7*a*a*a/32,this.C=21*a*a/16-55*a*a*a*a/32,this.D=151*a*a*a/96,this.E=o*(1-s),this.W=1-s/4-3*s*s/64-5*s*s*s/256,this.X=3*s/8+3*s*s/32+45*s*s*s/1024,this.Y=15*s*s/256+45*s*s*s/1024,this.Z=35*s*s*s/3072,this.longitude0=v().radians(6*t-183),this.geodeticConverter=new S(e,!0,!0)}Object.assign(N.prototype,{convert(e,t){if(this.eastingFirst)var i=e.y,n=e.x;else i=e.x,n=e.y;let o=this.southernHemisphere;i<0&&(o=!this.southernHemisphere,i=-i),o&&(i-=F),n-=x;const s=i/this.A,r=s+this.B*Math.sin(2*s)+this.C*Math.sin(4*s)+this.D*Math.sin(6*s),a=Math.sin(r)**2,l=Math.cos(r),h=Math.tan(r),d=this.a/Math.sqrt(1-this.ecc2*a),c=h**2,u=h**8,p=this.EE*c,g=p*p,_=this.E/(1-this.ecc2*a)**1.5,w=n/(d*C),m=(5+3*c+10*p-4*g-this.E9)*w**4/24,O=(61+90*c+298*p+45*u-this.E252-3*g)*w**6/720,y=(5-2*p+28*c-3*g+this.E8+24*u)*w**5/120,f=r-d*h/_*(w*w/2-m+O),b=this.longitude0+(w-(1+2*c+p)*w**3/6+y)/l;return this.geodeticConverter.convertRadians(f,b,e.z,t)},apply(e,t){const i=this.geodeticConverter.applyRadians(e,t),n=i.x,o=i.y,s=Math.tan(n),r=Math.cos(n),a=this.EE,l=this.a/Math.sqrt(1-this.ecc2*Math.sin(n)**2),h=s*s,d=h*h*h,c=a*r*r,u=r*(o-this.longitude0),p=this.a*(this.W*n-this.X*Math.sin(2*n)+this.Y*Math.sin(4*n)-this.Z*Math.sin(6*n)),g=C*l*(u+(1-h+c)*u**3/6+(5-18*d+72*c-58*a)*u**5/120)+x;let _=C*(p+l*s*(u*u/2+(5-h+9*c+4*c*c)*u**4/24+(61-58*d+600*c-330*a)*u**6/720));return n<0?(_+=F,this.southernHemisphere||(_=-_)):this.southernHemisphere&&(_=-_),this.eastingFirst?t.set(g,_,i.z):t.set(_,g,i.z)}});const j=N;g().add("UniversalTransverseMercator","standard/Geospatial/UniversalTransverseMercator",j);const M=j;function G(){}Object.assign(G.prototype,{convert:(e,t)=>t.assign(e),apply:(e,t)=>t.assign(e),slerp(e,t,i){const n=e.magnitude(),o=t.magnitude();return e.normalize(),t.normalize(),v().simpleSlerp(e,t,i).multiply(v().lerp(n,o,i))}});const z=G;g().add("Geocentric","x_ite/Browser/Geospatial/Geocentric",z);const V=z;let T=0;const D=T++,P=T++,E=T++,X={GD:D,GDC:D,UTM:P,GC:E,GCC:E,GS:E},R=/^Z(\d+)$/,k={GD:D,UTM:P,GC:E,getReferenceFrame(e,t){switch(this.getCoordinateSystem(e)){case D:return new S(this.getEllipsoid(e),this.getLatitudeFirst(e),t);case P:return new M(this.getEllipsoid(e),this.getZone(e),this.getNorthernHemisphere(e),this.getNorthingFirst(e));case E:return new V}return new S(y.WE,!0,t)},getElevationFrame(e,t){return new S(this.getEllipsoid(e),!0,t)},getCoordinateSystem(e){for(const t of e){const e=X[t];if(void 0!==e)return e}return D},getEllipsoid(e){for(const t of e){const e=y[t];if(void 0!==e)return e}return y.WE},getEllipsoidString(e){for(const t of e){if(void 0!==y[t])return t}return"WE"},isStandardOrder(e){switch(this.getCoordinateSystem(e)){case D:return this.getLatitudeFirst(e);case P:return this.getNorthingFirst(e);case E:return!0}return this.getLatitudeFirst(e)},getLatitudeFirst(e){for(const t of e)if("longitude_first"===t)return!1;return!0},getNorthingFirst(e){for(const t of e)if("easting_first"===t)return!1;return!0},getZone(e){for(const t of e){const e=t.match(R);if(e)return parseInt(e[1])}return 1},getNorthernHemisphere(e){for(const t of e)if("S"===t)return!1;return!0}};g().add("GeospatialObject","x_ite/Browser/Geospatial/GeospatialObject",k);const L=k,A=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/X3DCast");var B=e.n(A);const U=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Vector3");var q=e.n(U);const W=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Matrix4");var H=e.n(W);const Y=new(q()),Z=new(q()),$=new(q()),K=new(q()),J=new(q()),Q=new(q());function ee(e){this.addType(u().X3DGeospatialObject),this.radians=!1,this.origin=new(q()),this.originMatrix=new(H()),this.invOriginMatrix=new(H())}function te(e,t){return this.invOriginMatrix.multVecMatrix(this.referenceFrame.convert(e,t))}function ie(e,t){return this.referenceFrame.apply(this.originMatrix.multVecMatrix(Y.assign(e)),t)}function ne(e,t){return this.invOriginMatrix.multDirMatrix(this.elevationFrame.normal(this.originMatrix.multVecMatrix(Y.assign(e)),t))}function oe(e,t){return se.call(this,e,t).multRight(this.invOriginMatrix)}function se(e,t){return this.referenceFrame.convert(e,$),this.elevationFrame.normal($,J),K.set(0,0,1).cross(J),K.equals(q().Zero)&&K.set(1,0,0),Q.assign(K).cross(J),K.normalize(),Q.normalize(),t.set(K.x,K.y,K.z,0,J.x,J.y,J.z,0,Q.x,Q.y,Q.z,0,$.x,$.y,$.z,1)}Object.assign(ee.prototype,{initialize(){this._geoSystem.addInterest("set_geoSystem__",this),this._geoOrigin.addInterest("set_geoOrigin__",this),this.set_geoSystem__(),this.set_geoOrigin__()},set_geoSystem__(){this.coordinateSystem=L.getCoordinateSystem(this._geoSystem),this.referenceFrame=L.getReferenceFrame(this._geoSystem,this.radians),this.elevationFrame=L.getElevationFrame(this._geoSystem,this.radians),this.standardOrder=L.isStandardOrder(this._geoSystem)},set_geoOrigin__(){this.geoOriginNode&&(this.geoOriginNode.removeInterest("set_origin__",this),this.geoOriginNode.removeInterest("set_rotateYUp__",this),this.geoOriginNode.removeInterest("addNodeEvent",this)),this.geoOriginNode=B()(u().GeoOrigin,this._geoOrigin),this.geoOriginNode&&(this.geoOriginNode.addInterest("set_origin__",this),this.geoOriginNode.addInterest("set_rotateYUp__",this),this.geoOriginNode.addInterest("addNodeEvent",this)),this.set_origin__(),this.set_rotateYUp__()},set_origin__(){this.geoOriginNode?this.geoOriginNode.getOrigin(this.origin):this.origin.set(0,0,0),this.set_originMatrix__()},set_originMatrix__(){if(this.geoOriginNode){var e=this.origin;this.elevationFrame.normal(e,J),K.set(0,0,1).cross(J),K.equals(q().Zero)&&K.set(1,0,0),Q.assign(K).cross(J),K.normalize(),Q.normalize(),this.originMatrix.set(K.x,K.y,K.z,0,J.x,J.y,J.z,0,Q.x,Q.y,Q.z,0,e.x,e.y,e.z,1),this.invOriginMatrix.assign(this.originMatrix).inverse()}},set_rotateYUp__(){this.geoOriginNode&&this.geoOriginNode._rotateYUp.getValue()?(this.getCoord=te,this.getGeoCoord=ie,this.getGeoUpVector=ne,this.getLocationMatrix=oe):(delete this.getCoord,delete this.getGeoCoord,delete this.getGeoUpVector,delete this.getLocationMatrix)},getReferenceFrame(){return this.referenceFrame},getStandardOrder(){return this.standardOrder},getCoord(e,t){return this.referenceFrame.convert(e,t).subtract(this.origin)},getGeoCoord(e,t){return this.referenceFrame.apply(Y.assign(e).add(this.origin),t)},getGeoElevation(e){return this.getGeoCoord(e,Z).z},getGeoUpVector(e,t){return this.elevationFrame.normal(Y.assign(e).add(this.origin),t)},getLocationMatrix(e,t){var i=this.origin,n=se.call(this,e,t);return n[12]-=i.x,n[13]-=i.y,n[14]-=i.z,n},dispose(){}}),Object.defineProperties(ee,{typeName:{value:"X3DGeospatialObject",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0}});const re=ee;g().add("X3DGeospatialObject","x_ite/Components/Geospatial/X3DGeospatialObject",re);const ae=re,le=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Geometry/Triangle3");var he=e.n(le);function de(e){d().call(this,e),ae.call(this,e),this.addType(u().GeoCoordinate)}Object.assign(Object.setPrototypeOf(de.prototype,d().prototype),ae.prototype,{initialize(){d().prototype.initialize.call(this),ae.prototype.initialize.call(this)},set1Point:(()=>{const e=new(q());return function(t,i){this._point[t]=this.getGeoCoord(i,e)}})(),get1Point:(()=>{const e=new(q());return function(t,i){if(t<this.length){const n=this.point;return t*=3,this.getCoord(e.set(n[t],n[t+1],n[t+2]),i)}return i.set(0,0,0)}})(),addPoint:(()=>{const e=new(q()),t=new(q());return function(i,n){if(i<this.length){const o=this.point;i*=3,this.getCoord(e.set(o[i],o[i+1],o[i+2]),t),n.push(t[0],t[1],t[2],1)}else n.push(0,0,0,1)}})(),addPoints:(()=>{const e=new(q()),t=new(q());return function(i){const n=this.point,o=3*this.length;for(let s=0;s<o;s+=3)this.getCoord(e.set(n[s],n[s+1],n[s+2]),t),i.push(t[0],t[1],t[2],1);return i}})(),getNormal:(()=>{const e=new(q()),t=new(q()),i=new(q());return function(n,o,s){const r=this.length;return n<r&&o<r&&s<r?he().normal(this.get1Point(n,e),this.get1Point(o,t),this.get1Point(s,i),new(q())):new(q())}})(),getQuadNormal:(()=>{const e=new(q()),t=new(q()),i=new(q()),n=new(q());return function(o,s,r,a){const l=this.length;return o<l&&s<l&&r<l&&a<l?he().quadNormal(this.get1Point(o,e),this.get1Point(s,t),this.get1Point(r,i),this.get1Point(a,n),new(q())):new(q())}})(),dispose(){ae.prototype.dispose.call(this),d().prototype.dispose.call(this)}}),Object.defineProperties(de,{typeName:{value:"GeoCoordinate",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"coord",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"point",new(o().MFVec3d))]),enumerable:!0}});const ce=de;g().add("GeoCoordinate","x_ite/Components/Geospatial/GeoCoordinate",ce);const ue=ce,pe=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Rendering/X3DGeometryNode");var ge=e.n(pe);const _e=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Vector2");var we=e.n(_e);function me(e){ge().call(this,e),ae.call(this,e),this.addType(u().GeoElevationGrid),this._set_height.setUnit("length"),this._creaseAngle.setUnit("angle"),this._height.setUnit("length"),this.colorNode=null,this.texCoordNode=null,this.normalNode=null}Object.assign(Object.setPrototypeOf(me.prototype,ge().prototype),ae.prototype,{initialize(){ge().prototype.initialize.call(this),ae.prototype.initialize.call(this),this._set_height.addFieldInterest(this._height),this._color.addInterest("set_color__",this),this._texCoord.addInterest("set_texCoord__",this),this._normal.addInterest("set_normal__",this),this.set_color__(),this.set_texCoord__(),this.set_normal__()},set_color__(){this.colorNode?.removeInterest("requestRebuild",this),this.colorNode=B()(u().X3DColorNode,this._color),this.colorNode?.addInterest("requestRebuild",this),this.setTransparent(this.colorNode?.isTransparent())},set_texCoord__(){this.texCoordNode?.removeInterest("requestRebuild",this),this.texCoordNode=B()(u().X3DTextureCoordinateNode,this._texCoord),this.texCoordNode?.addInterest("requestRebuild",this),this.setTextureCoordinate(this.texCoordNode)},set_normal__(){this.normalNode?.removeInterest("requestRebuild",this),this.normalNode=B()(u().X3DNormalNode,this._normal),this.normalNode?.addInterest("requestRebuild",this)},getColor(){return this.colorNode},getTexCoord(){return this.texCoordNode},getNormal(){return this.normalNode},getTangent(){return this.tangentNode},getHeight(e){return e<this._height.length?this._height[e]*this._yScale.getValue():0},createTexCoords(){const e=[],t=this._xDimension.getValue(),i=this._zDimension.getValue(),n=t-1,o=i-1;for(let s=0;s<i;++s)for(let i=0;i<t;++i)e.push(new(we())(i/n,s/o));return e},createNormals(e,t,i){const n=!this._ccw.getValue(),o=new Map,s=[];for(let t=0;t<e.length;++t)o.set(t,[]);for(let i=0;i<t.length;i+=3){const r=t[i],a=t[i+1],l=t[i+2];o.get(r).push(s.length),o.get(a).push(s.length+1),o.get(l).push(s.length+2);const h=he().normal(e[r],e[a],e[l],new(q()));n&&h.negate(),s.push(h),s.push(h),s.push(h)}return this._normalPerVertex.getValue()?this.refineNormals(o,s,i??this._creaseAngle.getValue()):s},createCoordIndex(){const e=[],t=this._xDimension.getValue(),i=t-1,n=this._zDimension.getValue()-1;for(let o=0;o<n;++o)for(let n=0;n<i;++n){const i=o*t+n,s=(o+1)*t+n,r=(o+1)*t+(n+1),a=o*t+(n+1);e.push(i),e.push(r),e.push(s),e.push(i),e.push(a),e.push(r)}return e},createPoints(){const e=[],t=this._xDimension.getValue(),i=this._zDimension.getValue(),n=this._xSpacing.getValue(),o=this._zSpacing.getValue();if(this.getStandardOrder())for(let s=0;s<i;++s)for(let i=0;i<t;++i){const r=new(q())(o*s,n*i,this.getHeight(i+s*t));r.add(this._geoGridOrigin.getValue()),e.push(this.getCoord(r,r))}else for(let s=0;s<i;++s)for(let i=0;i<t;++i){const r=new(q())(n*i,o*s,this.getHeight(i+s*t));r.add(this._geoGridOrigin.getValue()),e.push(this.getCoord(r,r))}return e},build(){if(this._xDimension.getValue()<2||this._zDimension.getValue()<2)return;const e=this._colorPerVertex.getValue(),t=this._normalPerVertex.getValue(),i=this.createCoordIndex(),n=this.getColor(),o=this.getTexCoord(),s=this.getNormal(),r=this.getTangent(),a=this.createPoints(),l=this.getColors(),h=this.getMultiTexCoords(),d=this.getNormals(),c=this.getTangent(),u=this.getVertices();let p=0;if(o)o.init(h);else{var g=this.createTexCoords(),_=this.getTexCoords();h.push(_)}for(let w=0;w<i.length;++p)for(let m=0;m<6;++m,++w){const m=i[w],{x:O,y,z:f}=a[m];if(n?.addColor(e?m:p,l),o)o.addPoint(m,h);else{const{x:e,y:t}=g[m];_.push(e,t,0,1)}s?.addVector(t?m:p,d),r?.addVector(t?m:p,c),u.push(O,y,f,1)}if(!s){const e=this.createNormals(a,i);for(const{x:t,y:i,z:n}of e)d.push(t,i,n)}this.setSolid(this._solid.getValue()),this.setCCW(this._ccw.getValue())},dispose(){ae.prototype.dispose.call(this),ge().prototype.dispose.call(this)}}),Object.defineProperties(me,{typeName:{value:"GeoElevationGrid",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"geometry",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOnly,"set_height",new(o().MFDouble)),new(r())(u().initializeOnly,"geoGridOrigin",new(o().SFVec3d)),new(r())(u().initializeOnly,"xDimension",new(o().SFInt32)),new(r())(u().initializeOnly,"zDimension",new(o().SFInt32)),new(r())(u().initializeOnly,"xSpacing",new(o().SFDouble)(1)),new(r())(u().initializeOnly,"zSpacing",new(o().SFDouble)(1)),new(r())(u().inputOutput,"yScale",new(o().SFFloat)(1)),new(r())(u().initializeOnly,"solid",new(o().SFBool)(!0)),new(r())(u().initializeOnly,"ccw",new(o().SFBool)(!0)),new(r())(u().initializeOnly,"creaseAngle",new(o().SFDouble)),new(r())(u().initializeOnly,"colorPerVertex",new(o().SFBool)(!0)),new(r())(u().initializeOnly,"normalPerVertex",new(o().SFBool)(!0)),new(r())(u().inputOutput,"color",new(o().SFNode)),new(r())(u().inputOutput,"texCoord",new(o().SFNode)),new(r())(u().inputOutput,"tangent",new(o().SFNode)),new(r())(u().inputOutput,"normal",new(o().SFNode)),new(r())(u().initializeOnly,"height",new(o().MFDouble)(0,0))]),enumerable:!0}});const Oe=me;g().add("GeoElevationGrid","x_ite/Components/Geospatial/GeoElevationGrid",Oe);const ye=Oe,fe=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Core/X3DChildNode");var be=e.n(fe);const Se=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/X3DBoundedObject");var Ie=e.n(Se);const ve=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Rendering/TraverseType");var Fe=e.n(ve);const xe=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/Group");var Ce=e.n(xe);const Ne=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Networking/Inline");var je=e.n(Ne);const Me=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Geometry/Box3");var Ge=e.n(Me),ze=new(q());function Ve(e){be().call(this,e),Ie().call(this,e),ae.call(this,e),this.addType(u().GeoLOD),this._range.setUnit("length"),this.unload=!1,this.rootGroup=new(Ce())(this.getBrowser().getPrivateScene()),this.rootInline=new(je())(e),this.child1Inline=new(je())(e),this.child2Inline=new(je())(e),this.child3Inline=new(je())(e),this.child4Inline=new(je())(e),this.childrenLoaded=!1,this.childBBox=new(Ge()),this.keepCurrentLevel=!1,this.modelViewMatrix=new(H())}Object.assign(Object.setPrototypeOf(Ve.prototype,be().prototype),Ie().prototype,ae.prototype,{initialize(){be().prototype.initialize.call(this),Ie().prototype.initialize.call(this),ae.prototype.initialize.call(this),this._rootNode.addFieldInterest(this.rootGroup._children),this.rootGroup._children=this._rootNode,this.rootGroup.setPrivate(!0),this.rootGroup.setup(),this.rootInline._loadState.addInterest("set_rootLoadState__",this),this.child1Inline._loadState.addInterest("set_childLoadState__",this),this.child2Inline._loadState.addInterest("set_childLoadState__",this),this.child3Inline._loadState.addInterest("set_childLoadState__",this),this.child4Inline._loadState.addInterest("set_childLoadState__",this),this._rootUrl.addFieldInterest(this.rootInline._url),this._child1Url.addFieldInterest(this.child1Inline._url),this._child2Url.addFieldInterest(this.child2Inline._url),this._child3Url.addFieldInterest(this.child3Inline._url),this._child4Url.addFieldInterest(this.child4Inline._url),this.rootInline._load=!0,this.child1Inline._load=!1,this.child2Inline._load=!1,this.child3Inline._load=!1,this.child4Inline._load=!1,this.rootInline._url=this._rootUrl,this.child1Inline._url=this._child1Url,this.child2Inline._url=this._child2Url,this.child3Inline._url=this._child3Url,this.child4Inline._url=this._child4Url,this.rootInline.setup(),this.child1Inline.setup(),this.child2Inline.setup(),this.child3Inline.setup(),this.child4Inline.setup()},getBBox(e,t){if(this._bboxSize.getValue().equals(this.getDefaultBBoxSize())){switch(this.childrenLoaded?this._level_changed.getValue():0){case 0:return this._rootNode.length?this.rootGroup.getBBox(e,t):this.rootInline.getBBox(e,t);case 1:{const i=this.childBBox;return e.set(),e.add(this.child1Inline.getBBox(i,t)),e.add(this.child2Inline.getBBox(i,t)),e.add(this.child3Inline.getBBox(i,t)),e.add(this.child4Inline.getBBox(i,t)),e}}return e.set()}return e.set(this._bboxSize.getValue(),this._bboxCenter.getValue())},set_rootLoadState__(){0===this._level_changed.getValue()&&(this._rootNode.length||this.rootInline.checkLoadState()===u().COMPLETE_STATE&&(this._children=this.rootInline.getInternalScene().getRootNodes(),this.childrenLoaded=!1))},set_childLoadState__(){if(1===this._level_changed.getValue()){var e=0;if(this.child1Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child1Inline.checkLoadState()!==u().FAILED_STATE||++e,this.child2Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child2Inline.checkLoadState()!==u().FAILED_STATE||++e,this.child3Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child3Inline.checkLoadState()!==u().FAILED_STATE||++e,this.child4Inline.checkLoadState()!==u().COMPLETE_STATE&&this.child4Inline.checkLoadState()!==u().FAILED_STATE||++e,4===e){this.childrenLoaded=!0;var t=this._children;t.length=0;for(var i=0,n=(o=this.child1Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i]);for(i=0,n=(o=this.child2Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i]);for(i=0,n=(o=this.child3Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i]);var o;for(i=0,n=(o=this.child4Inline.getInternalScene().getRootNodes()).length;i<n;++i)t.push(o[i])}}},set_childCameraObject__(){this.setCameraObject(this.child1Inline.isCameraObject()||this.child2Inline.isCameraObject()||this.child3Inline.isCameraObject()||this.child4Inline.isCameraObject())},set_childPickableObject__(){this.setPickableObject(this.child1Inline.isPickableObject()||this.child2Inline.isPickableObject()||this.child3Inline.isPickableObject()||this.child4Inline.isPickableObject())},getLevel(e){return this.getDistance(e)<this._range.getValue()?1:0},getDistance(e){return e.translate(this.getCoord(this._center.getValue(),ze)),e.origin.magnitude()},traverse(e,t){switch(e){case Fe().PICKING:var i=this.getBrowser().getPickingHierarchy();return i.push(this),this.traverseChildren(e,t),void i.pop();case Fe().DISPLAY:var n=this.getLevel(this.modelViewMatrix.assign(t.getModelViewMatrix().get()));if(n!==this._level_changed.getValue())switch(this._level_changed=n,n){case 0:this.child1Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child2Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child3Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child4Inline._isCameraObject.removeInterest("set_childCameraObject__",this),this.child1Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this.child2Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this.child3Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this.child4Inline._isPickableObject.removeInterest("set_childPickableObject__",this),this._rootNode.length?(this.rootGroup._isCameraObject.addFieldInterest(this._isCameraObject),this.rootGroup._isPickableObject.addFieldInterest(this._isPickableObject),this.setCameraObject(this.rootGroup.isCameraObject()),this.setPickableObject(this.rootGroup.isPickableObject()),this._children=this._rootNode,this.childrenLoaded=!1):this.rootInline.checkLoadState()==u().COMPLETE_STATE&&(this.rootInline._isCameraObject.addFieldInterest(this._isCameraObject),this.rootInline._isPickableObject.addFieldInterest(this._isPickableObject),this.setCameraObject(this.rootInline.isCameraObject()),this.setPickableObject(this.rootInline.isPickableObject()),this._children=this.rootInline.getInternalScene().getRootNodes(),this.childrenLoaded=!1),this.unload&&(this.child1Inline._load=!1,this.child2Inline._load=!1,this.child3Inline._load=!1,this.child4Inline._load=!1);break;case 1:this._rootNode.length?(this.rootGroup._isCameraObject.removeFieldInterest(this._isCameraObject),this.rootGroup._isPickableObject.removeFieldInterest(this._isPickableObject)):(this.rootInline._isCameraObject.removeFieldInterest(this._isCameraObject),this.rootInline._isPickableObject.removeFieldInterest(this._isPickableObject)),this.child1Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child2Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child3Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child4Inline._isCameraObject.addInterest("set_childCameraObject__",this),this.child1Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.child2Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.child3Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.child4Inline._isPickableObject.addInterest("set_childPickableObject__",this),this.set_childCameraObject__(),this.set_childPickableObject__(),this.child1Inline._load.getValue()?this.set_childLoadState__():(this.child1Inline._load=!0,this.child2Inline._load=!0,this.child3Inline._load=!0,this.child4Inline._load=!0)}return void this.traverseChildren(e,t);default:return void this.traverseChildren(e,t)}},traverseChildren(e,t){switch(this.childrenLoaded?this._level_changed.getValue():0){case 0:this._rootNode.length?this.rootGroup.traverse(e,t):this.rootInline.traverse(e,t);break;case 1:this.child1Inline.traverse(e,t),this.child2Inline.traverse(e,t),this.child3Inline.traverse(e,t),this.child4Inline.traverse(e,t)}},dispose(){ae.prototype.dispose.call(this),Ie().prototype.dispose.call(this),be().prototype.dispose.call(this)}}),Object.defineProperties(Ve,{typeName:{value:"GeoLOD",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().initializeOnly,"rootUrl",new(o().MFString)),new(r())(u().initializeOnly,"child1Url",new(o().MFString)),new(r())(u().initializeOnly,"child2Url",new(o().MFString)),new(r())(u().initializeOnly,"child3Url",new(o().MFString)),new(r())(u().initializeOnly,"child4Url",new(o().MFString)),new(r())(u().initializeOnly,"center",new(o().SFVec3d)),new(r())(u().initializeOnly,"range",new(o().SFFloat)(10)),new(r())(u().outputOnly,"level_changed",new(o().SFInt32)(-1)),new(r())(u().inputOutput,"visible",new(o().SFBool)(!0)),new(r())(u().inputOutput,"bboxDisplay",new(o().SFBool)),new(r())(u().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(r())(u().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(r())(u().initializeOnly,"rootNode",new(o().MFNode)),new(r())(u().outputOnly,"children",new(o().MFNode))]),enumerable:!0}});const Te=Ve;g().add("GeoLOD","x_ite/Components/Geospatial/GeoLOD",Te);const De=Te,Pe=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/X3DTransformMatrix3DNode");var Ee=e.n(Pe),Xe=new(H());function Re(e){Ee().call(this,e),ae.call(this,e),this.addType(u().GeoLocation)}Object.assign(Object.setPrototypeOf(Re.prototype,Ee().prototype),ae.prototype,{initialize(){Ee().prototype.initialize.call(this),ae.prototype.initialize.call(this),this.addInterest("eventsProcessed",this),this.eventsProcessed()},eventsProcessed(){this.setMatrix(this.getLocationMatrix(this._geoCoords.getValue(),Xe))},dispose(){ae.prototype.dispose.call(this),Ee().prototype.dispose.call(this)}}),Object.defineProperties(Re,{typeName:{value:"GeoLocation",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"geoCoords",new(o().SFVec3d)),new(r())(u().inputOutput,"visible",new(o().SFBool)(!0)),new(r())(u().inputOutput,"bboxDisplay",new(o().SFBool)),new(r())(u().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(r())(u().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(r())(u().inputOnly,"addChildren",new(o().MFNode)),new(r())(u().inputOnly,"removeChildren",new(o().MFNode)),new(r())(u().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const ke=Re;g().add("GeoLocation","x_ite/Components/Geospatial/GeoLocation",ke);const Le=ke,Ae=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Core/X3DInfoNode");var Be=e.n(Ae);const Ue=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Networking/X3DUrlObject");var qe=e.n(Ue);function We(e){Be().call(this,e),qe().call(this,e),this.addType(u().GeoMetadata)}Object.assign(Object.setPrototypeOf(We.prototype,Be().prototype),qe().prototype,{initialize(){Be().prototype.initialize.call(this),qe().prototype.initialize.call(this)},requestImmediateLoad(e=!0){},dispose(){qe().prototype.dispose.call(this),Be().prototype.dispose.call(this)}}),Object.defineProperties(We,{typeName:{value:"GeoMetadata",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().inputOutput,"load",new(o().SFBool)(!0)),new(r())(u().inputOutput,"url",new(o().MFString)),new(r())(u().inputOutput,"autoRefresh",new(o().SFTime)),new(r())(u().inputOutput,"autoRefreshTimeLimit",new(o().SFTime)(3600)),new(r())(u().inputOutput,"summary",new(o().MFString)),new(r())(u().inputOutput,"data",new(o().MFNode))]),enumerable:!0}});const He=We;g().add("GeoMetadata","x_ite/Components/Geospatial/GeoMetadata",He);const Ye=He,Ze=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Core/X3DNode");var $e=e.n(Ze);function Ke(e){$e().call(this,e),this.addType(u().GeoOrigin),this.radians=!1}Object.assign(Object.setPrototypeOf(Ke.prototype,$e().prototype),{initialize(){$e().prototype.initialize.call(this),this._geoSystem.addInterest("set_geoSystem__",this),this.set_geoSystem__()},set_geoSystem__(){this.referenceFrame=L.getReferenceFrame(this._geoSystem,this.radians)},getOrigin(e){return this.referenceFrame.convert(this._geoCoords.getValue(),e)}}),Object.defineProperties(Ke,{typeName:{value:"GeoOrigin",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"geoOrigin",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"geoCoords",new(o().SFVec3d)),new(r())(u().initializeOnly,"rotateYUp",new(o().SFBool))]),enumerable:!0}});const Je=Ke;g().add("GeoOrigin","x_ite/Components/Geospatial/GeoOrigin",Je);const Qe=Je,et=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Interpolation/X3DInterpolatorNode");var tt=e.n(et);function it(e){tt().call(this,e),ae.call(this,e),this.addType(u().GeoPositionInterpolator),this._value_changed.setUnit("length"),this.geocentric=new V}Object.assign(Object.setPrototypeOf(it.prototype,tt().prototype),ae.prototype,{setup(){ae.prototype.initialize.call(this),tt().prototype.setup.call(this)},initialize(){tt().prototype.initialize.call(this),this._keyValue.addInterest("set_keyValue__",this)},set_keyValue__(){const e=this._key,t=this._keyValue;t.length<e.length&&t.resize(e.length,t.length?t[t.length-1]:new(o().SFVec3f))},interpolate:(()=>{const e=new(q()),t=new(q()),i=new(q());return function(n,o,s){this.getCoord(this._keyValue[n].getValue(),e),this.getCoord(this._keyValue[o].getValue(),t);const r=this.geocentric.slerp(e,t,s);this._geovalue_changed=this.getGeoCoord(r,i),this._value_changed=r}})(),dispose(){ae.prototype.dispose.call(this),tt().prototype.dispose.call(this)}}),Object.defineProperties(it,{typeName:{value:"GeoPositionInterpolator",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOnly,"set_fraction",new(o().SFFloat)),new(r())(u().inputOutput,"key",new(o().MFFloat)),new(r())(u().inputOutput,"keyValue",new(o().MFVec3d)),new(r())(u().outputOnly,"value_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"geovalue_changed",new(o().SFVec3d))]),enumerable:!0}});const nt=it;g().add("GeoPositionInterpolator","x_ite/Components/Geospatial/GeoPositionInterpolator",nt);const ot=nt,st=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/EnvironmentalSensor/X3DEnvironmentalSensorNode");var rt=e.n(st);const at=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/EnvironmentalSensor/ProximitySensor");var lt=e.n(at),ht=new(q());function dt(e){rt().call(this,e),ae.call(this,e),this.addType(u().GeoProximitySensor),this._position_changed.setUnit("length"),this._centerOfRotation_changed.setUnit("length"),this.proximitySensor=new(lt())(e),this.setCameraObject(this.proximitySensor.isCameraObject()),this.setPickableObject(this.proximitySensor.isPickableObject())}Object.assign(Object.setPrototypeOf(dt.prototype,rt().prototype),ae.prototype,{initialize(){rt().prototype.initialize.call(this),ae.prototype.initialize.call(this),this._enabled.addFieldInterest(this.proximitySensor._enabled),this._size.addFieldInterest(this.proximitySensor._size),this._center.addFieldInterest(this.proximitySensor._center),this._geoCenter.addFieldInterest(this._center),this.proximitySensor._isCameraObject.addFieldInterest(this._isCameraObject),this.proximitySensor._isPickableObject.addFieldInterest(this._isPickableObject),this.proximitySensor._isActive.addFieldInterest(this._isActive),this.proximitySensor._enterTime.addFieldInterest(this._enterTime),this.proximitySensor._exitTime.addFieldInterest(this._exitTime),this.proximitySensor._position_changed.addFieldInterest(this._position_changed),this.proximitySensor._orientation_changed.addFieldInterest(this._orientation_changed),this.proximitySensor._centerOfRotation_changed.addFieldInterest(this._centerOfRotation_changed),this.proximitySensor._position_changed.addInterest("set_position__",this),this.proximitySensor._enabled=this._enabled,this.proximitySensor._size=this._size,this.proximitySensor._center=this._center,this.proximitySensor.setup()},set_position__(e){this._geoCoord_changed=this.getGeoCoord(this.proximitySensor._position_changed.getValue(),ht)},traverse(e,t){this.proximitySensor.traverse(e,t)},dispose(){ae.prototype.dispose.call(this),rt().prototype.dispose.call(this)}}),Object.defineProperties(dt,{typeName:{value:"GeoProximitySensor",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:2}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.2",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"enabled",new(o().SFBool)(!0)),new(r())(u().inputOutput,"size",new(o().SFVec3f)),new(r())(u().inputOutput,"center",new(o().SFVec3d)),new(r())(u().inputOutput,"geoCenter",new(o().SFVec3d)),new(r())(u().outputOnly,"isActive",new(o().SFBool)),new(r())(u().outputOnly,"enterTime",new(o().SFTime)),new(r())(u().outputOnly,"exitTime",new(o().SFTime)),new(r())(u().outputOnly,"geoCoord_changed",new(o().SFVec3d)),new(r())(u().outputOnly,"position_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"orientation_changed",new(o().SFRotation)),new(r())(u().outputOnly,"centerOfRotation_changed",new(o().SFVec3f))]),enumerable:!0}});const ct=dt;g().add("GeoProximitySensor","x_ite/Components/Geospatial/GeoProximitySensor",ct);const ut=ct,pt=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/PointingDeviceSensor/X3DTouchSensorNode");var gt=e.n(pt);function _t(e){gt().call(this,e),ae.call(this,e),this.addType(u().GeoTouchSensor),this._hitPoint_changed.setUnit("length")}Object.assign(Object.setPrototypeOf(_t.prototype,gt().prototype),ae.prototype,{initialize(){gt().prototype.initialize.call(this),ae.prototype.initialize.call(this)},set_over__:(()=>{const e=new(q());return function(t,i,n,o,s){gt().prototype.set_over__.call(this,t,i,n,o,s),this._isOver.getValue()&&(this._hitGeoCoord_changed=this.getGeoCoord(this._hitPoint_changed.getValue(),e))}})(),dispose(){ae.prototype.dispose.call(this),gt().prototype.dispose.call(this)}}),Object.defineProperties(_t,{typeName:{value:"GeoTouchSensor",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"enabled",new(o().SFBool)(!0)),new(r())(u().outputOnly,"hitTexCoord_changed",new(o().SFVec2f)),new(r())(u().outputOnly,"hitNormal_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"hitPoint_changed",new(o().SFVec3f)),new(r())(u().outputOnly,"hitGeoCoord_changed",new(o().SFVec3d)),new(r())(u().outputOnly,"isOver",new(o().SFBool)),new(r())(u().outputOnly,"isActive",new(o().SFBool)),new(r())(u().outputOnly,"touchTime",new(o().SFTime))]),enumerable:!0}});const wt=_t;g().add("GeoTouchSensor","x_ite/Components/Geospatial/GeoTouchSensor",wt);const mt=wt;var Ot=new(H()),yt=new(H());function ft(e){Ee().call(this,e),ae.call(this,e),this.addType(u().GeoTransform),this._translation.setUnit("length")}Object.assign(Object.setPrototypeOf(ft.prototype,Ee().prototype),ae.prototype,{initialize(){Ee().prototype.initialize.call(this),ae.prototype.initialize.call(this),this.addInterest("eventsProcessed",this),this.eventsProcessed()},eventsProcessed(){this.getLocationMatrix(this._geoCenter.getValue(),yt),Ot.set(this._translation.getValue(),this._rotation.getValue(),this._scale.getValue(),this._scaleOrientation.getValue()),this.setMatrix(Ot.multRight(yt).multLeft(yt.inverse()))},dispose(){ae.prototype.dispose.call(this),Ee().prototype.dispose.call(this)}}),Object.defineProperties(ft,{typeName:{value:"GeoTransform",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:2}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().inputOutput,"translation",new(o().SFVec3f)),new(r())(u().inputOutput,"rotation",new(o().SFRotation)),new(r())(u().inputOutput,"scale",new(o().SFVec3f)(1,1,1)),new(r())(u().inputOutput,"scaleOrientation",new(o().SFRotation)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOutput,"geoCenter",new(o().SFVec3d)),new(r())(u().inputOutput,"visible",new(o().SFBool)(!0)),new(r())(u().inputOutput,"bboxDisplay",new(o().SFBool)),new(r())(u().initializeOnly,"bboxSize",new(o().SFVec3f)(-1,-1,-1)),new(r())(u().initializeOnly,"bboxCenter",new(o().SFVec3f)),new(r())(u().inputOnly,"addChildren",new(o().MFNode)),new(r())(u().inputOnly,"removeChildren",new(o().MFNode)),new(r())(u().inputOutput,"children",new(o().MFNode))]),enumerable:!0}});const bt=ft;g().add("GeoTransform","x_ite/Components/Geospatial/GeoTransform",bt);const St=bt,It=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Navigation/X3DViewpointNode");var vt=e.n(It);const Ft=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Navigation/Viewpoint");var xt=e.n(Ft);const Ct=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Navigation/NavigationInfo");var Nt=e.n(Ct);const jt=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Rotation4");var Mt=e.n(jt);function Gt(e){vt().call(this,e),ae.call(this,e),this.addType(u().GeoViewpoint),this.addChildObjects(u().inputOutput,"navType",new(o().MFString)("EXAMINE","ANY"),u().inputOutput,"headlight",new(o().SFBool)(!0)),this._centerOfRotation.setUnit("length"),this._fieldOfView.setUnit("angle"),e.getSpecificationVersion()<=3.2&&(this.addAlias("navType",this._navType),this.addAlias("headlight",this._headlight),this.traverse=zt),this.geoNavigationInfoNode=new(Nt())(e),this.projectionMatrix=new(H()),this.elevation=0}function zt(e,t){vt().prototype.traverse.call(this,e,t),this.geoNavigationInfoNode.traverse(e,t)}Object.assign(Object.setPrototypeOf(Gt.prototype,vt().prototype),ae.prototype,{initialize(){vt().prototype.initialize.call(this),ae.prototype.initialize.call(this);const e=this.getBrowser().getContext();this.logarithmicDepthBuffer=e.HAS_FEATURE_FRAG_DEPTH,this._position.addInterest("set_position__",this),this._positionOffset.addInterest("set_position__",this),this._navType.addFieldInterest(this.geoNavigationInfoNode._type),this._headlight.addFieldInterest(this.geoNavigationInfoNode._headlight),this.geoNavigationInfoNode._type=this._navType,this.geoNavigationInfoNode._headlight=this._headlight,this.geoNavigationInfoNode.setup(),this.getExecutionContext().getSpecificationVersion()<=3.2&&(this._navigationInfo=this.geoNavigationInfoNode),this.set_position__()},getRelativeTransformation:xt().prototype.getRelativeTransformation,setInterpolators:xt().prototype.setInterpolators,getFieldOfView:xt().prototype.getFieldOfView,setFieldOfView:xt().prototype.setFieldOfView,getUserFieldOfView:xt().prototype.getUserFieldOfView,getScreenScale:xt().prototype.getScreenScale,getViewportSize:xt().prototype.getViewportSize,getLookAtDistance:xt().prototype.getLookAtDistance,getProjectionMatrixWithLimits:xt().prototype.getProjectionMatrixWithLimits,getLogarithmicDepthBuffer(){return this.logarithmicDepthBuffer},getPosition:(()=>{const e=new(q());return function(){return this.getCoord(this._position.getValue(),e)}})(),setPosition:(()=>{const e=new(q());return function(t){this._position.setValue(this.getGeoCoord(t,e))}})(),set_position__:(()=>{const e=new(q());return function(){this.getCoord(this._position.getValue(),e),this.elevation=this.getGeoElevation(e.add(this._positionOffset.getValue()))}})(),getOrientation:(()=>{const e=new(H()),t=new(Mt());return function(){const i=this.getLocationMatrix(this._position.getValue(),e).submatrix;return t.setMatrix(i),t.multLeft(this._orientation.getValue())}})(),setOrientation:(()=>{const e=new(H()),t=new(Mt());return function(i){const n=this.getLocationMatrix(this._position.getValue(),e).submatrix;t.setMatrix(n),this._orientation.setValue(t.inverse().multLeft(i))}})(),getCenterOfRotation:(()=>{const e=new(q());return function(){return this.getCoord(this._centerOfRotation.getValue(),e)}})(),setCenterOfRotation:(()=>{const e=new(q());return function(t){this._centerOfRotation.setValue(this.getGeoCoord(t,e))}})(),getMaxFarValue:()=>1e9,getUpVector:(()=>{const e=new(q()),t=new(q());return function(i=!1){return!i||this.getUserPosition().magnitude()<65e5?(this.getCoord(this._position.getValue(),e),this.getGeoUpVector(e.add(this._positionOffset.getValue()),t)):t.assign(q().zAxis)}})(),getSpeedFactor(){return(Math.max(this.elevation,0)+10)/10*this._speedFactor.getValue()},dispose(){ae.prototype.dispose.call(this),vt().prototype.dispose.call(this)}}),Object.defineProperties(Gt,{typeName:{value:"GeoViewpoint",enumerable:!0},componentInfo:{value:Object.freeze({name:"Geospatial",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(l())([new(r())(u().inputOutput,"metadata",new(o().SFNode)),new(r())(u().initializeOnly,"geoOrigin",new(o().SFNode)),new(r())(u().initializeOnly,"geoSystem",new(o().MFString)("GD","WE")),new(r())(u().inputOnly,"set_bind",new(o().SFBool)),new(r())(u().inputOutput,"description",new(o().SFString)),new(r())(u().inputOutput,"position",new(o().SFVec3d)(0,0,1e5)),new(r())(u().inputOutput,"orientation",new(o().SFRotation)),new(r())(u().inputOutput,"centerOfRotation",new(o().SFVec3d)),new(r())(u().inputOutput,"fieldOfView",new(o().SFFloat)(.785398)),new(r())(u().inputOutput,"nearDistance",new(o().SFFloat)(-1)),new(r())(u().inputOutput,"farDistance",new(o().SFFloat)(-1)),new(r())(u().inputOutput,"viewAll",new(o().SFBool)),new(r())(u().inputOutput,"jump",new(o().SFBool)(!0)),new(r())(u().inputOutput,"retainUserOffsets",new(o().SFBool)),new(r())(u().initializeOnly,"speedFactor",new(o().SFFloat)(1)),new(r())(u().outputOnly,"isBound",new(o().SFBool)),new(r())(u().outputOnly,"bindTime",new(o().SFTime)),new(r())(u().inputOutput,"navigationInfo",new(o().SFNode))]),enumerable:!0}});const Vt=Gt;g().add("GeoViewpoint","x_ite/Components/Geospatial/GeoViewpoint",Vt);const Tt=Vt;i().add({name:"Geospatial",concreteNodes:[ue,ye,De,Le,Ye,Qe,ot,ut,mt,St,Tt],abstractNodes:[ae]});const Dt=void 0;g().add("Geospatial","assets/components/Geospatial",Dt)})();
@@ -1,4 +1,4 @@
1
- /* X_ITE v10.1.0 */(() => { // webpackBootstrap
1
+ /* X_ITE v10.2.0 */(() => { // webpackBootstrap
2
2
  /******/ "use strict";
3
3
  /******/ // The require scope
4
4
  /******/ var __webpack_require__ = {};
@@ -38,25 +38,25 @@
38
38
  // UNUSED EXPORTS: default
39
39
 
40
40
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components\")"
41
- const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components");
41
+ const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components");
42
42
  var Components_default = /*#__PURE__*/__webpack_require__.n(Components_namespaceObject);
43
43
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Fields\")"
44
- const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Fields");
44
+ const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Fields");
45
45
  var Fields_default = /*#__PURE__*/__webpack_require__.n(Fields_namespaceObject);
46
46
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DFieldDefinition\")"
47
- const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/X3DFieldDefinition");
47
+ const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/X3DFieldDefinition");
48
48
  var X3DFieldDefinition_default = /*#__PURE__*/__webpack_require__.n(X3DFieldDefinition_namespaceObject);
49
49
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/FieldDefinitionArray\")"
50
- const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/FieldDefinitionArray");
50
+ const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/FieldDefinitionArray");
51
51
  var FieldDefinitionArray_default = /*#__PURE__*/__webpack_require__.n(FieldDefinitionArray_namespaceObject);
52
52
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Rendering/X3DGeometricPropertyNode\")"
53
- const X3DGeometricPropertyNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Rendering/X3DGeometricPropertyNode");
53
+ const X3DGeometricPropertyNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Rendering/X3DGeometricPropertyNode");
54
54
  var X3DGeometricPropertyNode_default = /*#__PURE__*/__webpack_require__.n(X3DGeometricPropertyNode_namespaceObject);
55
55
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DConstants\")"
56
- const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/X3DConstants");
56
+ const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/X3DConstants");
57
57
  var X3DConstants_default = /*#__PURE__*/__webpack_require__.n(X3DConstants_namespaceObject);
58
58
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Namespace\")"
59
- const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Namespace");
59
+ const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Namespace");
60
60
  var Namespace_default = /*#__PURE__*/__webpack_require__.n(Namespace_namespaceObject);
61
61
  ;// CONCATENATED MODULE: ./src/x_ite/Components/HAnim/HAnimDisplacer.js
62
62
  /*******************************************************************************
@@ -165,28 +165,28 @@ const __default__ = HAnimDisplacer;
165
165
  Namespace_default().add ("HAnimDisplacer", "x_ite/Components/HAnim/HAnimDisplacer", __default__);
166
166
  /* harmony default export */ const HAnim_HAnimDisplacer = (__default__);
167
167
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Core/X3DChildNode\")"
168
- const X3DChildNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Core/X3DChildNode");
168
+ const X3DChildNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Core/X3DChildNode");
169
169
  var X3DChildNode_default = /*#__PURE__*/__webpack_require__.n(X3DChildNode_namespaceObject);
170
170
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Grouping/Group\")"
171
- const Group_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Grouping/Group");
171
+ const Group_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Grouping/Group");
172
172
  var Group_default = /*#__PURE__*/__webpack_require__.n(Group_namespaceObject);
173
173
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Grouping/Transform\")"
174
- const Transform_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Grouping/Transform");
174
+ const Transform_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Grouping/Transform");
175
175
  var Transform_default = /*#__PURE__*/__webpack_require__.n(Transform_namespaceObject);
176
176
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Grouping/X3DBoundedObject\")"
177
- const X3DBoundedObject_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Grouping/X3DBoundedObject");
177
+ const X3DBoundedObject_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Grouping/X3DBoundedObject");
178
178
  var X3DBoundedObject_default = /*#__PURE__*/__webpack_require__.n(X3DBoundedObject_namespaceObject);
179
179
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Rendering/TraverseType\")"
180
- const TraverseType_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Rendering/TraverseType");
180
+ const TraverseType_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Rendering/TraverseType");
181
181
  var TraverseType_default = /*#__PURE__*/__webpack_require__.n(TraverseType_namespaceObject);
182
182
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DCast\")"
183
- const X3DCast_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/X3DCast");
183
+ const X3DCast_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/X3DCast");
184
184
  var X3DCast_default = /*#__PURE__*/__webpack_require__.n(X3DCast_namespaceObject);
185
185
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Matrix4\")"
186
- const Matrix4_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("standard/Math/Numbers/Matrix4");
186
+ const Matrix4_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("standard/Math/Numbers/Matrix4");
187
187
  var Matrix4_default = /*#__PURE__*/__webpack_require__.n(Matrix4_namespaceObject);
188
188
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Algorithm\")"
189
- const Algorithm_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("standard/Math/Algorithm");
189
+ const Algorithm_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("standard/Math/Algorithm");
190
190
  var Algorithm_default = /*#__PURE__*/__webpack_require__.n(Algorithm_namespaceObject);
191
191
  ;// CONCATENATED MODULE: ./src/x_ite/Components/HAnim/HAnimHumanoid.js
192
192
  /*******************************************************************************
@@ -881,10 +881,10 @@ const HAnimHumanoid_default_ = HAnimHumanoid;
881
881
  Namespace_default().add ("HAnimHumanoid", "x_ite/Components/HAnim/HAnimHumanoid", HAnimHumanoid_default_);
882
882
  /* harmony default export */ const HAnim_HAnimHumanoid = (HAnimHumanoid_default_);
883
883
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Grouping/X3DTransformNode\")"
884
- const X3DTransformNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Grouping/X3DTransformNode");
884
+ const X3DTransformNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Grouping/X3DTransformNode");
885
885
  var X3DTransformNode_default = /*#__PURE__*/__webpack_require__.n(X3DTransformNode_namespaceObject);
886
886
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Vector3\")"
887
- const Vector3_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("standard/Math/Numbers/Vector3");
887
+ const Vector3_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("standard/Math/Numbers/Vector3");
888
888
  var Vector3_default = /*#__PURE__*/__webpack_require__.n(Vector3_namespaceObject);
889
889
  ;// CONCATENATED MODULE: ./src/x_ite/Components/HAnim/HAnimJoint.js
890
890
  /*******************************************************************************
@@ -1090,16 +1090,16 @@ const HAnimJoint_default_ = HAnimJoint;
1090
1090
  Namespace_default().add ("HAnimJoint", "x_ite/Components/HAnim/HAnimJoint", HAnimJoint_default_);
1091
1091
  /* harmony default export */ const HAnim_HAnimJoint = (HAnimJoint_default_);
1092
1092
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Time/TimeSensor\")"
1093
- const TimeSensor_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Time/TimeSensor");
1093
+ const TimeSensor_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Time/TimeSensor");
1094
1094
  var TimeSensor_default = /*#__PURE__*/__webpack_require__.n(TimeSensor_namespaceObject);
1095
1095
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Interpolation/PositionInterpolator\")"
1096
- const PositionInterpolator_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Interpolation/PositionInterpolator");
1096
+ const PositionInterpolator_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Interpolation/PositionInterpolator");
1097
1097
  var PositionInterpolator_default = /*#__PURE__*/__webpack_require__.n(PositionInterpolator_namespaceObject);
1098
1098
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Interpolation/OrientationInterpolator\")"
1099
- const OrientationInterpolator_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Interpolation/OrientationInterpolator");
1099
+ const OrientationInterpolator_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Interpolation/OrientationInterpolator");
1100
1100
  var OrientationInterpolator_default = /*#__PURE__*/__webpack_require__.n(OrientationInterpolator_namespaceObject);
1101
1101
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"standard/Math/Numbers/Rotation4\")"
1102
- const Rotation4_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("standard/Math/Numbers/Rotation4");
1102
+ const Rotation4_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("standard/Math/Numbers/Rotation4");
1103
1103
  var Rotation4_default = /*#__PURE__*/__webpack_require__.n(Rotation4_namespaceObject);
1104
1104
  ;// CONCATENATED MODULE: ./src/x_ite/Components/HAnim/HAnimMotion.js
1105
1105
  /*******************************************************************************
@@ -1530,7 +1530,7 @@ const HAnimMotion_default_ = HAnimMotion;
1530
1530
  Namespace_default().add ("HAnimMotion", "x_ite/Components/HAnim/HAnimMotion", HAnimMotion_default_);
1531
1531
  /* harmony default export */ const HAnim_HAnimMotion = (HAnimMotion_default_);
1532
1532
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Grouping/X3DGroupingNode\")"
1533
- const X3DGroupingNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Grouping/X3DGroupingNode");
1533
+ const X3DGroupingNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Grouping/X3DGroupingNode");
1534
1534
  var X3DGroupingNode_default = /*#__PURE__*/__webpack_require__.n(X3DGroupingNode_namespaceObject);
1535
1535
  ;// CONCATENATED MODULE: ./src/x_ite/Components/HAnim/HAnimSegment.js
1536
1536
  /*******************************************************************************
@@ -1 +1 @@
1
- /* X_ITE v10.1.0 */(()=>{"use strict";var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components");var n=e.n(t);const i=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Fields");var s=e.n(i);const o=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/X3DFieldDefinition");var r=e.n(o);const a=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/FieldDefinitionArray");var d=e.n(a);const l=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Rendering/X3DGeometricPropertyNode");var u=e.n(l);const h=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/X3DConstants");var p=e.n(h);const c=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Namespace");var _=e.n(c);function m(e){u().call(this,e),this.addType(p().HAnimDisplacer),this._displacements.setUnit("length")}Object.setPrototypeOf(m.prototype,u().prototype),Object.defineProperties(m,{typeName:{value:"HAnimDisplacer",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"displacers",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"weight",new(s().SFFloat)),new(r())(p().inputOutput,"coordIndex",new(s().MFInt32)),new(r())(p().inputOutput,"displacements",new(s().MFVec3f))]),enumerable:!0}});const w=m;_().add("HAnimDisplacer","x_ite/Components/HAnim/HAnimDisplacer",w);const f=w,g=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Core/X3DChildNode");var I=e.n(g);const F=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/Group");var b=e.n(F);const x=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/Transform");var O=e.n(x);const T=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/X3DBoundedObject");var S=e.n(T);const v=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Rendering/TraverseType");var y=e.n(v);const N=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Base/X3DCast");var E=e.n(N);const j=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Matrix4");var M=e.n(j);const D=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Algorithm");var C=e.n(D);function A(e){I().call(this,e),S().call(this,e),this.addType(p().HAnimHumanoid),this.addChildObjects(p().inputOutput,"jointTextures",new(s().SFTime),p().inputOutput,"displacementsTexture",new(s().SFTime),p().inputOutput,"displacementWeightsTexture",new(s().SFTime)),this._translation.setUnit("length"),this._center.setUnit("length"),this._bboxSize.setUnit("length"),this._bboxCenter.setUnit("length"),e.getSpecificationVersion()<=3.3&&(this._version=""),this.skeletonNode=new(b())(e),this.viewpointsNode=new(b())(e),this.skinNode=new(b())(e),this.transformNode=new(O())(e),this.motionNodes=[],this.jointNodes=[],this.jointBindingMatrices=[],this.displacementWeights=[],this.numJoints=0,this.numDisplacements=0,this.skinCoordNode=null,this.change=new X,this.skinning=Function.prototype}Object.assign(Object.setPrototypeOf(A.prototype,I().prototype),S().prototype,{initialize(){I().prototype.initialize.call(this),S().prototype.initialize.call(this),this.skeletonNode.setAllowedTypes(p().HAnimJoint,p().HAnimSite),this.viewpointsNode.setAllowedTypes(p().HAnimSite),this._skeleton.addFieldInterest(this.skeletonNode._children),this._viewpoints.addFieldInterest(this.viewpointsNode._children),this._skin.addFieldInterest(this.skinNode._children),this.skeletonNode._children=this._skeleton,this.viewpointsNode._children=this._viewpoints,this.skinNode._children=this._skin,this.skeletonNode.setPrivate(!0),this.viewpointsNode.setPrivate(!0),this.skinNode.setPrivate(!0),this._translation.addFieldInterest(this.transformNode._translation),this._rotation.addFieldInterest(this.transformNode._rotation),this._scale.addFieldInterest(this.transformNode._scale),this._scaleOrientation.addFieldInterest(this.transformNode._scaleOrientation),this._center.addFieldInterest(this.transformNode._center),this._bboxDisplay.addFieldInterest(this.transformNode._bboxDisplay),this._bboxSize.addFieldInterest(this.transformNode._bboxSize),this._bboxCenter.addFieldInterest(this.transformNode._bboxCenter),this.transformNode._translation=this._translation,this.transformNode._rotation=this._rotation,this.transformNode._scale=this._scale,this.transformNode._scaleOrientation=this._scaleOrientation,this.transformNode._center=this._center,this.transformNode._bboxDisplay=this._bboxDisplay,this.transformNode._bboxSize=this._bboxSize,this.transformNode._bboxCenter=this._bboxCenter,this.transformNode._children=[this.skeletonNode,this.viewpointsNode,this.skinNode],this.transformNode._isCameraObject.addFieldInterest(this._isCameraObject),this.transformNode._isPickableObject.addFieldInterest(this._isPickableObject),this.skeletonNode.setup(),this.viewpointsNode.setup(),this.skinNode.setup(),this.transformNode.setup(),this.setCameraObject(this.transformNode.isCameraObject()),this.setPickableObject(this.transformNode.isPickableObject());const e=this.getBrowser().getContext();if(1!==e.getVersion()){this.skinNode.traverse=function(e,t,n){n.getHumanoids().push(e),b().prototype.traverse.call(this,t,n),n.getHumanoids().pop()}.bind(this.skinNode,this),this.jointsTexture=e.createTexture(),this.displacementsTexture=e.createTexture(),this.jointMatricesTexture=e.createTexture();for(const t of[this.jointsTexture,this.displacementsTexture,this.jointMatricesTexture])e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR);this._motionsEnabled.addInterest("set_motions__",this),this._motions.addInterest("set_motions__",this),this._jointBindingPositions.addInterest("set_joints__",this),this._jointBindingRotations.addInterest("set_joints__",this),this._jointBindingScales.addInterest("set_joints__",this),this._joints.addInterest("set_joints__",this),this._jointTextures.addInterest("set_jointTextures__",this),this._displacementsTexture.addInterest("set_displacementsTexture__",this),this._displacementWeightsTexture.addInterest("set_displacementWeightsTexture__",this),this._skinCoord.addInterest("set_skinCoord__",this),this.set_motions__(),this.set_joints__(),this.set_skinCoord__()}},getBBox(e,t){return this.transformNode.getBBox(e,t)},getSubBBox(e,t){return this.transformNode.getSubBBox(e,t)},getMatrix(){return this.transformNode.getMatrix()},getHumanoidKey(){return this.humanoidKey},getNumJoints(){return this.numJoints},getNumDisplacements(){return this.numDisplacements},set_humanoidKey__(){this.humanoidKey=`[${this.numJoints}.${this.numDisplacements}]`},set_motions__(){const e=this._motionsEnabled,t=this.motionNodes;for(const e of t)e._joints.removeInterest("set_connectJoints__",this),e._channelsEnabled.removeInterest("set_connectJoints__",this),e._channels.removeInterest("set_connectJoints__",this),e._values.removeInterest("set_connectJoints__",this),e.disconnectJoints(this.jointNodes);t.length=0;for(const[n,i]of this._motions.entries()){if(n<e.length&&!e[n])continue;const s=E()(p().HAnimMotion,i);s&&t.push(s)}for(const e of t)e._joints.addInterest("set_connectJoints__",this,e),e._channelsEnabled.addInterest("set_connectJoints__",this,e),e._channels.addInterest("set_connectJoints__",this,e),e._values.addInterest("set_connectJoints__",this,e),e.connectJoints(this.jointNodes)},set_connectJoints__(e){e.disconnectJoints(this.jointNodes),e.connectJoints(this.jointNodes)},set_joints__(){const e=this.jointNodes,t=this.jointBindingMatrices,n=this._jointBindingPositions,i=this._jointBindingRotations,s=this._jointBindingScales,o=n.length,r=i.length,a=s.length;for(const t of this.motionNodes)t.disconnectJoints(e);for(const t of e)t.removeInterest("enable",this.change),t._skinCoordIndex.removeInterest("addEvent",this._jointTextures),t._skinCoordWeight.removeInterest("addEvent",this._jointTextures),t._displacements.removeInterest("addEvent",this._displacementsTexture),t._displacementWeights.removeInterest("addEvent",this._displacementWeightsTexture);e.length=0,t.length=0;for(const[d,l]of this._joints.entries()){const u=E()(p().HAnimJoint,l);if(!u)continue;const h=o?n[Math.min(d,o-1)].getValue():null,c=r?i[Math.min(d,r-1)].getValue():null,_=a?s[Math.min(d,a-1)].getValue():null;e.push(u),t.push((new(M())).set(h,c,_))}for(const t of e)t.addInterest("enable",this.change),t._skinCoordIndex.addInterest("addEvent",this._jointTextures),t._skinCoordWeight.addInterest("addEvent",this._jointTextures),t._displacements.addInterest("addEvent",this._displacementsTexture),t._displacementWeights.addInterest("addEvent",this._displacementWeightsTexture);for(const t of this.motionNodes)t.connectJoints(e);const d=Math.ceil(Math.sqrt(8*e.length));this.jointMatricesArray=new Float32Array(d*d*4),this._jointTextures.addEvent(),this._displacementsTexture.addEvent(),this._displacementWeightsTexture.addEvent()},set_jointTextures__(){const e=this.skinCoordNode?._point.length||1,t=Array.from({length:e},(()=>[])),n=Array.from({length:e},(()=>[]));for(const[e,i]of this.jointNodes.entries()){const s=i._skinCoordWeight.getValue();for(const[o,r]of i._skinCoordIndex.entries()){const i=s[o];0!==i&&(t[r]?.push(e),n[r]?.push(i))}}const i=C().roundToMultiple(t.reduce(((e,t)=>Math.max(e,t.length)),0),4),s=2*i,o=Math.ceil(Math.sqrt(e*s))||1,r=new Float32Array(o*o*4);for(let o=0;o<e;++o)r.set(t[o],o*s),r.set(n[o],o*s+i);this.numJoints=i;const a=this.getBrowser().getContext();a.bindTexture(a.TEXTURE_2D,this.jointsTexture),a.texImage2D(a.TEXTURE_2D,0,a.RGBA32F,o,o,0,a.RGBA,a.FLOAT,r),this.change.enable(),this.set_humanoidKey__()},set_displacementsTexture__(){const e=this.skinCoordNode?._point.length||1,t=Array.from({length:e},(()=>[]));for(const[e,n]of this.jointNodes.entries())for(const i of n.getDisplacers()){const n=i._displacements;for(const[s,o]of i._coordIndex.entries())t[o]?.push(...n[s],e)}const n=t.reduce(((e,t)=>Math.max(e,t.length)),0)/4,i=4*n,s=C().roundToMultiple(Math.ceil(Math.sqrt(e*n*2))||1,2),o=new Float32Array(s*s*4);for(let n=0;n<e;++n)o.set(t[n],n*i);this.numDisplacements=n;const r=this.getBrowser().getContext();r.bindTexture(r.TEXTURE_2D,this.displacementsTexture),r.texImage2D(r.TEXTURE_2D,0,r.RGBA32F,s,s,0,r.RGBA,r.FLOAT,o);const a=this.displacementWeights;for(let t=a.length;t<e;++t)a[t]=[];a.length=e,this.displacementWeightsArray=new Float32Array(s*s*2),this.change.enable(),this.set_humanoidKey__()},set_displacementWeightsTexture__(){const e=this.skinCoordNode?._point.length||1,t=this.displacementWeights;for(const e of t)e.length=0;for(const e of this.jointNodes)for(const n of e.getDisplacers()){const e=n._weight;for(const i of n._coordIndex)t[i]?.push(e,0,0,0)}const n=this.numDisplacements,i=4*n,s=C().roundToMultiple(Math.ceil(Math.sqrt(e*n*2))||1,2),o=this.displacementWeightsArray;for(let n=0;n<e;++n)o.set(t[n],n*i);const r=this.getBrowser().getContext();r.bindTexture(r.TEXTURE_2D,this.displacementsTexture),r.texSubImage2D(r.TEXTURE_2D,0,0,s/2,s,s/2,r.RGBA,r.FLOAT,o),this.change.enable()},set_skinCoord__(){this.skinCoordNode&&(this.skinCoordNode.removeInterest("addEvent",this._jointTextures),this.skinCoordNode.removeInterest("addEvent",this._displacementsTexture),this.skinCoordNode.removeInterest("addEvent",this._displacementWeightsTexture)),this.skinCoordNode=E()(p().X3DCoordinateNode,this._skinCoord),this.skinCoordNode?(delete this.skinning,this.skinCoordNode.addInterest("addEvent",this._jointTextures),this.skinCoordNode.addInterest("addEvent",this._displacementsTexture),this.skinCoordNode.addInterest("addEvent",this._displacementWeightsTexture)):this.skinning=Function.prototype,this._jointTextures.addEvent(),this._displacementsTexture.addEvent(),this._displacementWeightsTexture.addEvent()},traverse(e,t){this.transformNode.traverse(e,t),this.skinning(e,t)},skinning:(()=>{const e=new(M());return function(t,n){if(t!==y().DISPLAY||this.change.lock())return;e.assign(this.transformNode.getMatrix()).multRight(n.getModelViewMatrix().get()).inverse();const i=this.jointNodes,s=i.length,o=this.jointBindingMatrices,r=this.jointMatricesArray,a=Math.ceil(Math.sqrt(8*s));for(let t=0;t<s;++t){const n=i[t],s=o[t],a=n.getModelViewMatrix().multRight(e).multLeft(s),d=a.submatrix.transpose().inverse();r.set(a,32*t+0),r.set(d,32*t+16)}const d=this.getBrowser().getContext();d.bindTexture(d.TEXTURE_2D,this.jointMatricesTexture),d.texImage2D(d.TEXTURE_2D,0,d.RGBA32F,a,a,0,d.RGBA,d.FLOAT,r)}})(),setShaderUniforms(e,t){const n=this.getBrowser().getTexture2DUnit(),i=this.getBrowser().getTexture2DUnit(),s=this.getBrowser().getTexture2DUnit();e.activeTexture(e.TEXTURE0+n),e.bindTexture(e.TEXTURE_2D,this.jointsTexture),e.uniform1i(t.x3d_JointsTexture,n),e.activeTexture(e.TEXTURE0+i),e.bindTexture(e.TEXTURE_2D,this.displacementsTexture),e.uniform1i(t.x3d_DisplacementsTexture,i),e.activeTexture(e.TEXTURE0+s),e.bindTexture(e.TEXTURE_2D,this.jointMatricesTexture),e.uniform1i(t.x3d_JointMatricesTexture,s)},dispose(){S().prototype.dispose.call(this),I().prototype.dispose.call(this)}}),Object.defineProperties(A,{typeName:{value:"HAnimHumanoid",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"version",new(s().SFString)("2.0")),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"info",new(s().MFString)),new(r())(p().inputOutput,"skeletalConfiguration",new(s().SFString)("BASIC")),new(r())(p().inputOutput,"loa",new(s().SFInt32)(-1)),new(r())(p().inputOutput,"translation",new(s().SFVec3f)),new(r())(p().inputOutput,"rotation",new(s().SFRotation)),new(r())(p().inputOutput,"scale",new(s().SFVec3f)(1,1,1)),new(r())(p().inputOutput,"scaleOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"center",new(s().SFVec3f)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOutput,"skeleton",new(s().MFNode)),new(r())(p().inputOutput,"viewpoints",new(s().MFNode)),new(r())(p().inputOutput,"sites",new(s().MFNode)),new(r())(p().inputOutput,"segments",new(s().MFNode)),new(r())(p().inputOutput,"motionsEnabled",new(s().MFBool)),new(r())(p().inputOutput,"motions",new(s().MFNode)),new(r())(p().inputOutput,"jointBindingPositions",new(s().MFVec3f)),new(r())(p().inputOutput,"jointBindingRotations",new(s().MFRotation)),new(r())(p().inputOutput,"jointBindingScales",new(s().MFVec3f)),new(r())(p().inputOutput,"joints",new(s().MFNode)),new(r())(p().inputOutput,"skinBindingNormals",new(s().SFNode)),new(r())(p().inputOutput,"skinBindingCoords",new(s().SFNode)),new(r())(p().inputOutput,"skinNormal",new(s().SFNode)),new(r())(p().inputOutput,"skinCoord",new(s().SFNode)),new(r())(p().inputOutput,"skin",new(s().MFNode))]),enumerable:!0}});class X{#e=!0;enable(){this.#e=!1}lock(){const e=this.#e;return this.#e=!0,e}}const k=A;_().add("HAnimHumanoid","x_ite/Components/HAnim/HAnimHumanoid",k);const R=k,V=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/X3DTransformNode");var B=e.n(V);const H=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Vector3");var P=e.n(H);function z(e){B().call(this,e),this.addType(p().HAnimJoint),this.addChildObjects(p().outputOnly,"displacements",new(s().SFTime),p().outputOnly,"displacementWeights",new(s().SFTime)),this.setAllowedTypes(p().HAnimJoint,p().HAnimSegment,p().HAnimSite),this.displacerNodes=[],this.modelViewMatrix=new(M())}Object.assign(Object.setPrototypeOf(z.prototype,B().prototype),{initialize(){B().prototype.initialize.call(this),this._displacers.addInterest("set_displacers__",this),this.set_displacers__()},getModelViewMatrix(){return this.modelViewMatrix},getDisplacers(){return this.displacerNodes},set_displacers__(){const e=this.displacerNodes;for(const t of e)t._coordIndex.removeInterest("addEvent",this._displacements),t._displacements.removeInterest("addEvent",this._displacements),t._coordIndex.removeInterest("addEvent",this._displacementWeights),t._weight.removeInterest("addEvent",this._displacementWeights);e.length=0;for(const t of this._displacers){const n=E()(p().HAnimDisplacer,t);n&&e.push(n)}for(const t of e)t._coordIndex.addInterest("addEvent",this._displacements),t._displacements.addInterest("addEvent",this._displacements),t._coordIndex.addInterest("addEvent",this._displacementWeights),t._weight.addInterest("addEvent",this._displacementWeights)},traverse(e,t){const n=t.getModelViewMatrix();n.push(),n.multLeft(this.getMatrix()),e===y().DISPLAY&&this.modelViewMatrix.assign(n.get()),B().prototype.groupTraverse.call(this,e,t),n.pop()},groupTraverse(e,t){e===y().DISPLAY&&this.modelViewMatrix.assign(t.getModelViewMatrix().get()),B().prototype.groupTraverse.call(this,e,t)}}),Object.defineProperties(z,{typeName:{value:"HAnimJoint",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"translation",new(s().SFVec3f)),new(r())(p().inputOutput,"rotation",new(s().SFRotation)),new(r())(p().inputOutput,"scale",new(s().SFVec3f)(1,1,1)),new(r())(p().inputOutput,"scaleOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"center",new(s().SFVec3f)),new(r())(p().inputOutput,"llimit",new(s().MFFloat)(0,0,0)),new(r())(p().inputOutput,"ulimit",new(s().MFFloat)(0,0,0)),new(r())(p().inputOutput,"limitOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"stiffness",new(s().MFFloat)(0,0,0)),new(r())(p().inputOutput,"skinCoordIndex",new(s().MFInt32)),new(r())(p().inputOutput,"skinCoordWeight",new(s().MFFloat)),new(r())(p().inputOutput,"displacers",new(s().MFNode)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOnly,"addChildren",new(s().MFNode)),new(r())(p().inputOnly,"removeChildren",new(s().MFNode)),new(r())(p().inputOutput,"children",new(s().MFNode))]),enumerable:!0}});const J=z;_().add("HAnimJoint","x_ite/Components/HAnim/HAnimJoint",J);const U=J,W=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Time/TimeSensor");var q=e.n(W);const G=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Interpolation/PositionInterpolator");var L=e.n(G);const Y=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Interpolation/OrientationInterpolator");var K=e.n(Y);const Z=window[Symbol.for("X_ITE.X3D-10.1.0")].require("standard/Math/Numbers/Rotation4");var $=e.n(Z);function Q(e){I().call(this,e),this.addType(p().HAnimMotion),this.timeSensor=new(q())(this.getExecutionContext()),this.interpolators=[]}Object.assign(Object.setPrototypeOf(Q.prototype,I().prototype),{initialize(){I().prototype.initialize.call(this),this._loop.addFieldInterest(this.timeSensor._loop),this.timeSensor._cycleTime.addFieldInterest(this._cycleTime),this.timeSensor._elapsedTime.addFieldInterest(this._elapsedTime),this.timeSensor._enabled=!1,this.timeSensor._loop=this._loop,this.timeSensor._stopTime=1,this.timeSensor.setup(),this._enabled.addInterest("set_enabled__",this),this._joints.addInterest("set_joints__",this),this._channels.addInterest("set_interpolators__",this),this._values.addInterest("set_interpolators__",this),this._next.addInterest("set_next_or_previous__",this,1),this._previous.addInterest("set_next_or_previous__",this,-1),this._frameIndex.addInterest("set_frameIndex__",this),this._frameDuration.addInterest("set_frameDuration__",this),this._frameIncrement.addInterest("set_frameIncrement__",this),this._startFrame.addInterest("set_start_or_endFrame__",this),this._endFrame.addInterest("set_start_or_endFrame__",this),this.set_enabled__(),this.set_joints__(),this.set_frameIncrement__(),this.set_interpolators__()},connectJoints(e){const t=this._channelsEnabled,n=this.joints,i=this.getJointsIndex(e);for(const[e,{positionInterpolator:s,orientationInterpolator:o,scaleInterpolator:r}]of this.interpolators.entries()){if(e<t.length&&!t[e])continue;const a=i.get(n[e]);a&&(s?._value_changed.addFieldInterest(a._translation),o?._value_changed.addFieldInterest(a._rotation),r?._value_changed.addFieldInterest(a._scale))}},disconnectJoints(e){const t=this.joints,n=this.getJointsIndex(e);for(const[e,{positionInterpolator:i,orientationInterpolator:s,scaleInterpolator:o}]of this.interpolators.entries()){const r=n.get(t[e]);r&&(i?._value_changed.removeFieldInterest(r._translation),s?._value_changed.removeFieldInterest(r._rotation),o?._value_changed.removeFieldInterest(r._scale))}},getJointsIndex(e){const t=new Map(e.map((e=>[e._name.getValue().trim(),e])));return t.delete("IGNORED"),t.set("HumanoidRoot",t.get("humanoid_root")),t},set_enabled__(){this._enabled.getValue()?this.timeSensor._startTime=Date.now()/1e3:this.timeSensor._stopTime=Date.now()/1e3},set_joints__(){this.joints=this._joints.getValue().replace(/^[\s,]+|[\s,]+$/gs,"").split(/[\s,]+/s);for(const{positionInterpolator:e,orientationInterpolator:t,scaleInterpolator:n}of this.interpolators)e?._value_changed.getFieldInterests().forEach((t=>e._value_changed.removeFieldInterest(t))),t?._value_changed.getFieldInterests().forEach((e=>t._value_changed.removeFieldInterest(e))),n?._value_changed.getFieldInterests().forEach((e=>n._value_changed.removeFieldInterest(e)))},set_interpolators__(){const e=this.timeSensor;e._fraction_changed.getFieldInterests().forEach((t=>e._fraction_changed.removeFieldInterest(t)));const t=this._channels.getValue().replace(/^[\s,\d]+|[\s,\d]+$/gs,"").split(/[\s,]+\d+[\s,]+/s).map((e=>e.split(/[\s,]+/s))),n=this._values,i=t.reduce(((e,t)=>e+t.length),0),s=Math.floor(i?n.length/i:0),o=new Map,r=Array.from({length:t.length},(()=>({})));this.interpolators=r;for(let i=0,a=0;i<s;++i)for(const[d,l]of t.entries()){o.clear();for(const e of l)o.set(e,n[a++]);if(o.has("Xposition")||o.has("Yposition")||o.has("Zposition")){const t=r[d].positionInterpolator??this.createPositionInterpolator(r,d),n=i/(s-1),a=new(P())(o.get("Xposition")??0,o.get("Yposition")??0,o.get("Zposition")??0);t._key.push(n),t._keyValue.push(a),e._fraction_changed.addFieldInterest(t._set_fraction)}if(o.has("Xrotation")||o.has("Yrotation")||o.has("Zrotation")){const t=r[d].orientationInterpolator??this.createOrientationInterpolator(r,d),n=i/(s-1),a=$().fromEuler(C().radians(o.get("Xrotation")??0),C().radians(o.get("Yrotation")??0),C().radians(o.get("Zrotation")??0));t._key.push(n),t._keyValue.push(a),e._fraction_changed.addFieldInterest(t._set_fraction)}if(o.has("Xscale")||o.has("Yscale")||o.has("Zscale")){const t=r[d].scaleInterpolator??this.createScaleInterpolator(r,d),n=i/(s-1),a=new(P())(o.get("Xscale")??1,o.get("Yscale")??1,o.get("Zscale")??1);t._key.push(n),t._keyValue.push(a),e._fraction_changed.addFieldInterest(t._set_fraction)}}for(const{positionInterpolator:e,orientationInterpolator:t,scaleInterpolator:n}of r)e?.setup(),t?.setup(),n?.setup();this._frameIndex=0,this._startFrame=0,this._endFrame=s-1,this._frameCount=s,this.set_frameDuration__()},set_next_or_previous__(e,t){if(!t.getValue())return;const n=this.getFraction(),i=this._frameCount.getValue(),s=this._frameIncrement.getValue(),o=(i>1?Math.floor(n*(i-1)):0)+s*e;if(o>this.endFrame){if(!this._loop.getValue())return;this._frameIndex=this.startFrame}else if(o<this.startFrame){if(!this._loop.getValue())return;this._frameIndex=this.endFrame}else this._frameIndex=o},set_frameIndex__(){const e=this._frameCount.getValue(),t=C().clamp(this._frameIndex.getValue(),0,e),n=e>1?t/(e-1):0;if(this.timeSensor._range[0]=n,!this.timeSensor._isActive.getValue())for(const e of this.timeSensor._fraction_changed.getFieldInterests())e.setValue(n)},set_frameDuration__(){const e=this._frameCount.getValue(),t=Math.max(this._frameDuration.getValue(),0);this.timeSensor._cycleInterval=e>1?(e-1)*t:0},set_frameIncrement__(){this.timeSensor._enabled=this._frameIncrement.getValue()},set_start_or_endFrame__(){const e=this._frameCount.getValue(),t=C().clamp(this._startFrame.getValue(),0,e),n=C().clamp(this._endFrame.getValue(),0,e);this.startFrame=Math.min(t,n),this.endFrame=Math.max(t,n),this.timeSensor._range[1]=e>1?this.startFrame/(e-1):0,this.timeSensor._range[2]=e>1?this.endFrame/(e-1):0},createPositionInterpolator(e,t){return e[t].positionInterpolator=new(L())(this.getExecutionContext())},createOrientationInterpolator(e,t){return e[t].orientationInterpolator=new(K())(this.getExecutionContext())},createScaleInterpolator(e,t){return e[t].scaleInterpolator=new(L())(this.getExecutionContext())},getFraction(){for(const e of this.timeSensor._fraction_changed.getFieldInterests())return e.getValue();return 0}}),Object.defineProperties(Q,{typeName:{value:"HAnimMotion",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:2}),enumerable:!0},containerField:{value:"motions",enumerable:!0},specificationRange:{value:Object.freeze({from:"4.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"enabled",new(s().SFBool)(!0)),new(r())(p().inputOutput,"loa",new(s().SFInt32)(-1)),new(r())(p().inputOutput,"joints",new(s().SFString)),new(r())(p().inputOutput,"channelsEnabled",new(s().MFBool)),new(r())(p().inputOutput,"channels",new(s().SFString)),new(r())(p().inputOutput,"values",new(s().MFFloat)),new(r())(p().inputOutput,"loop",new(s().SFBool)),new(r())(p().inputOnly,"next",new(s().SFBool)),new(r())(p().inputOnly,"previous",new(s().SFBool)),new(r())(p().inputOutput,"frameIndex",new(s().SFInt32)),new(r())(p().inputOutput,"frameDuration",new(s().SFTime)(.1)),new(r())(p().inputOutput,"frameIncrement",new(s().SFInt32)(1)),new(r())(p().inputOutput,"startFrame",new(s().SFInt32)),new(r())(p().inputOutput,"endFrame",new(s().SFInt32)),new(r())(p().outputOnly,"cycleTime",new(s().SFTime)),new(r())(p().outputOnly,"elapsedTime",new(s().SFTime)),new(r())(p().outputOnly,"frameCount",new(s().SFInt32))]),enumerable:!0}});const ee=Q;_().add("HAnimMotion","x_ite/Components/HAnim/HAnimMotion",ee);const te=ee,ne=window[Symbol.for("X_ITE.X3D-10.1.0")].require("x_ite/Components/Grouping/X3DGroupingNode");var ie=e.n(ne);function se(e){ie().call(this,e),this.addType(p().HAnimSegment),this._mass.setUnit("mass")}Object.setPrototypeOf(se.prototype,ie().prototype),Object.defineProperties(se,{typeName:{value:"HAnimSegment",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"mass",new(s().SFFloat)),new(r())(p().inputOutput,"centerOfMass",new(s().SFVec3f)),new(r())(p().inputOutput,"momentsOfInertia",new(s().MFFloat)(0,0,0,0,0,0,0,0,0)),new(r())(p().inputOutput,"displacers",new(s().MFNode)),new(r())(p().inputOutput,"coord",new(s().SFNode)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOnly,"addChildren",new(s().MFNode)),new(r())(p().inputOnly,"removeChildren",new(s().MFNode)),new(r())(p().inputOutput,"children",new(s().MFNode))]),enumerable:!0}});const oe=se;_().add("HAnimSegment","x_ite/Components/HAnim/HAnimSegment",oe);const re=oe;function ae(e){B().call(this,e),this.addType(p().HAnimSite)}Object.setPrototypeOf(ae.prototype,B().prototype),Object.defineProperties(ae,{typeName:{value:"HAnimSite",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"translation",new(s().SFVec3f)),new(r())(p().inputOutput,"rotation",new(s().SFRotation)),new(r())(p().inputOutput,"scale",new(s().SFVec3f)(1,1,1)),new(r())(p().inputOutput,"scaleOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"center",new(s().SFVec3f)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOnly,"addChildren",new(s().MFNode)),new(r())(p().inputOnly,"removeChildren",new(s().MFNode)),new(r())(p().inputOutput,"children",new(s().MFNode))]),enumerable:!0}});const de=ae;_().add("HAnimSite","x_ite/Components/HAnim/HAnimSite",de);const le=de;n().add({name:"HAnim",concreteNodes:[f,R,U,te,re,le],abstractNodes:[]});const ue=void 0;_().add("HAnim","assets/components/HAnim",ue)})();
1
+ /* X_ITE v10.2.0 */(()=>{"use strict";var e={n:t=>{var n=t&&t.__esModule?()=>t.default:()=>t;return e.d(n,{a:n}),n},d:(t,n)=>{for(var i in n)e.o(n,i)&&!e.o(t,i)&&Object.defineProperty(t,i,{enumerable:!0,get:n[i]})},o:(e,t)=>Object.prototype.hasOwnProperty.call(e,t)};const t=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components");var n=e.n(t);const i=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Fields");var s=e.n(i);const o=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/X3DFieldDefinition");var r=e.n(o);const a=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/FieldDefinitionArray");var d=e.n(a);const l=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Rendering/X3DGeometricPropertyNode");var u=e.n(l);const h=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/X3DConstants");var p=e.n(h);const c=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Namespace");var _=e.n(c);function m(e){u().call(this,e),this.addType(p().HAnimDisplacer),this._displacements.setUnit("length")}Object.setPrototypeOf(m.prototype,u().prototype),Object.defineProperties(m,{typeName:{value:"HAnimDisplacer",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"displacers",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"weight",new(s().SFFloat)),new(r())(p().inputOutput,"coordIndex",new(s().MFInt32)),new(r())(p().inputOutput,"displacements",new(s().MFVec3f))]),enumerable:!0}});const w=m;_().add("HAnimDisplacer","x_ite/Components/HAnim/HAnimDisplacer",w);const f=w,g=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Core/X3DChildNode");var I=e.n(g);const F=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/Group");var b=e.n(F);const x=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/Transform");var O=e.n(x);const T=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/X3DBoundedObject");var S=e.n(T);const v=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Rendering/TraverseType");var y=e.n(v);const N=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Base/X3DCast");var E=e.n(N);const j=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Matrix4");var M=e.n(j);const D=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Algorithm");var C=e.n(D);function A(e){I().call(this,e),S().call(this,e),this.addType(p().HAnimHumanoid),this.addChildObjects(p().inputOutput,"jointTextures",new(s().SFTime),p().inputOutput,"displacementsTexture",new(s().SFTime),p().inputOutput,"displacementWeightsTexture",new(s().SFTime)),this._translation.setUnit("length"),this._center.setUnit("length"),this._bboxSize.setUnit("length"),this._bboxCenter.setUnit("length"),e.getSpecificationVersion()<=3.3&&(this._version=""),this.skeletonNode=new(b())(e),this.viewpointsNode=new(b())(e),this.skinNode=new(b())(e),this.transformNode=new(O())(e),this.motionNodes=[],this.jointNodes=[],this.jointBindingMatrices=[],this.displacementWeights=[],this.numJoints=0,this.numDisplacements=0,this.skinCoordNode=null,this.change=new X,this.skinning=Function.prototype}Object.assign(Object.setPrototypeOf(A.prototype,I().prototype),S().prototype,{initialize(){I().prototype.initialize.call(this),S().prototype.initialize.call(this),this.skeletonNode.setAllowedTypes(p().HAnimJoint,p().HAnimSite),this.viewpointsNode.setAllowedTypes(p().HAnimSite),this._skeleton.addFieldInterest(this.skeletonNode._children),this._viewpoints.addFieldInterest(this.viewpointsNode._children),this._skin.addFieldInterest(this.skinNode._children),this.skeletonNode._children=this._skeleton,this.viewpointsNode._children=this._viewpoints,this.skinNode._children=this._skin,this.skeletonNode.setPrivate(!0),this.viewpointsNode.setPrivate(!0),this.skinNode.setPrivate(!0),this._translation.addFieldInterest(this.transformNode._translation),this._rotation.addFieldInterest(this.transformNode._rotation),this._scale.addFieldInterest(this.transformNode._scale),this._scaleOrientation.addFieldInterest(this.transformNode._scaleOrientation),this._center.addFieldInterest(this.transformNode._center),this._bboxDisplay.addFieldInterest(this.transformNode._bboxDisplay),this._bboxSize.addFieldInterest(this.transformNode._bboxSize),this._bboxCenter.addFieldInterest(this.transformNode._bboxCenter),this.transformNode._translation=this._translation,this.transformNode._rotation=this._rotation,this.transformNode._scale=this._scale,this.transformNode._scaleOrientation=this._scaleOrientation,this.transformNode._center=this._center,this.transformNode._bboxDisplay=this._bboxDisplay,this.transformNode._bboxSize=this._bboxSize,this.transformNode._bboxCenter=this._bboxCenter,this.transformNode._children=[this.skeletonNode,this.viewpointsNode,this.skinNode],this.transformNode._isCameraObject.addFieldInterest(this._isCameraObject),this.transformNode._isPickableObject.addFieldInterest(this._isPickableObject),this.skeletonNode.setup(),this.viewpointsNode.setup(),this.skinNode.setup(),this.transformNode.setup(),this.setCameraObject(this.transformNode.isCameraObject()),this.setPickableObject(this.transformNode.isPickableObject());const e=this.getBrowser().getContext();if(1!==e.getVersion()){this.skinNode.traverse=function(e,t,n){n.getHumanoids().push(e),b().prototype.traverse.call(this,t,n),n.getHumanoids().pop()}.bind(this.skinNode,this),this.jointsTexture=e.createTexture(),this.displacementsTexture=e.createTexture(),this.jointMatricesTexture=e.createTexture();for(const t of[this.jointsTexture,this.displacementsTexture,this.jointMatricesTexture])e.bindTexture(e.TEXTURE_2D,t),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_S,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_WRAP_T,e.CLAMP_TO_EDGE),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MIN_FILTER,e.LINEAR),e.texParameteri(e.TEXTURE_2D,e.TEXTURE_MAG_FILTER,e.LINEAR);this._motionsEnabled.addInterest("set_motions__",this),this._motions.addInterest("set_motions__",this),this._jointBindingPositions.addInterest("set_joints__",this),this._jointBindingRotations.addInterest("set_joints__",this),this._jointBindingScales.addInterest("set_joints__",this),this._joints.addInterest("set_joints__",this),this._jointTextures.addInterest("set_jointTextures__",this),this._displacementsTexture.addInterest("set_displacementsTexture__",this),this._displacementWeightsTexture.addInterest("set_displacementWeightsTexture__",this),this._skinCoord.addInterest("set_skinCoord__",this),this.set_motions__(),this.set_joints__(),this.set_skinCoord__()}},getBBox(e,t){return this.transformNode.getBBox(e,t)},getSubBBox(e,t){return this.transformNode.getSubBBox(e,t)},getMatrix(){return this.transformNode.getMatrix()},getHumanoidKey(){return this.humanoidKey},getNumJoints(){return this.numJoints},getNumDisplacements(){return this.numDisplacements},set_humanoidKey__(){this.humanoidKey=`[${this.numJoints}.${this.numDisplacements}]`},set_motions__(){const e=this._motionsEnabled,t=this.motionNodes;for(const e of t)e._joints.removeInterest("set_connectJoints__",this),e._channelsEnabled.removeInterest("set_connectJoints__",this),e._channels.removeInterest("set_connectJoints__",this),e._values.removeInterest("set_connectJoints__",this),e.disconnectJoints(this.jointNodes);t.length=0;for(const[n,i]of this._motions.entries()){if(n<e.length&&!e[n])continue;const s=E()(p().HAnimMotion,i);s&&t.push(s)}for(const e of t)e._joints.addInterest("set_connectJoints__",this,e),e._channelsEnabled.addInterest("set_connectJoints__",this,e),e._channels.addInterest("set_connectJoints__",this,e),e._values.addInterest("set_connectJoints__",this,e),e.connectJoints(this.jointNodes)},set_connectJoints__(e){e.disconnectJoints(this.jointNodes),e.connectJoints(this.jointNodes)},set_joints__(){const e=this.jointNodes,t=this.jointBindingMatrices,n=this._jointBindingPositions,i=this._jointBindingRotations,s=this._jointBindingScales,o=n.length,r=i.length,a=s.length;for(const t of this.motionNodes)t.disconnectJoints(e);for(const t of e)t.removeInterest("enable",this.change),t._skinCoordIndex.removeInterest("addEvent",this._jointTextures),t._skinCoordWeight.removeInterest("addEvent",this._jointTextures),t._displacements.removeInterest("addEvent",this._displacementsTexture),t._displacementWeights.removeInterest("addEvent",this._displacementWeightsTexture);e.length=0,t.length=0;for(const[d,l]of this._joints.entries()){const u=E()(p().HAnimJoint,l);if(!u)continue;const h=o?n[Math.min(d,o-1)].getValue():null,c=r?i[Math.min(d,r-1)].getValue():null,_=a?s[Math.min(d,a-1)].getValue():null;e.push(u),t.push((new(M())).set(h,c,_))}for(const t of e)t.addInterest("enable",this.change),t._skinCoordIndex.addInterest("addEvent",this._jointTextures),t._skinCoordWeight.addInterest("addEvent",this._jointTextures),t._displacements.addInterest("addEvent",this._displacementsTexture),t._displacementWeights.addInterest("addEvent",this._displacementWeightsTexture);for(const t of this.motionNodes)t.connectJoints(e);const d=Math.ceil(Math.sqrt(8*e.length));this.jointMatricesArray=new Float32Array(d*d*4),this._jointTextures.addEvent(),this._displacementsTexture.addEvent(),this._displacementWeightsTexture.addEvent()},set_jointTextures__(){const e=this.skinCoordNode?._point.length||1,t=Array.from({length:e},(()=>[])),n=Array.from({length:e},(()=>[]));for(const[e,i]of this.jointNodes.entries()){const s=i._skinCoordWeight.getValue();for(const[o,r]of i._skinCoordIndex.entries()){const i=s[o];0!==i&&(t[r]?.push(e),n[r]?.push(i))}}const i=C().roundToMultiple(t.reduce(((e,t)=>Math.max(e,t.length)),0),4),s=2*i,o=Math.ceil(Math.sqrt(e*s))||1,r=new Float32Array(o*o*4);for(let o=0;o<e;++o)r.set(t[o],o*s),r.set(n[o],o*s+i);this.numJoints=i;const a=this.getBrowser().getContext();a.bindTexture(a.TEXTURE_2D,this.jointsTexture),a.texImage2D(a.TEXTURE_2D,0,a.RGBA32F,o,o,0,a.RGBA,a.FLOAT,r),this.change.enable(),this.set_humanoidKey__()},set_displacementsTexture__(){const e=this.skinCoordNode?._point.length||1,t=Array.from({length:e},(()=>[]));for(const[e,n]of this.jointNodes.entries())for(const i of n.getDisplacers()){const n=i._displacements;for(const[s,o]of i._coordIndex.entries())t[o]?.push(...n[s],e)}const n=t.reduce(((e,t)=>Math.max(e,t.length)),0)/4,i=4*n,s=C().roundToMultiple(Math.ceil(Math.sqrt(e*n*2))||1,2),o=new Float32Array(s*s*4);for(let n=0;n<e;++n)o.set(t[n],n*i);this.numDisplacements=n;const r=this.getBrowser().getContext();r.bindTexture(r.TEXTURE_2D,this.displacementsTexture),r.texImage2D(r.TEXTURE_2D,0,r.RGBA32F,s,s,0,r.RGBA,r.FLOAT,o);const a=this.displacementWeights;for(let t=a.length;t<e;++t)a[t]=[];a.length=e,this.displacementWeightsArray=new Float32Array(s*s*2),this.change.enable(),this.set_humanoidKey__()},set_displacementWeightsTexture__(){const e=this.skinCoordNode?._point.length||1,t=this.displacementWeights;for(const e of t)e.length=0;for(const e of this.jointNodes)for(const n of e.getDisplacers()){const e=n._weight;for(const i of n._coordIndex)t[i]?.push(e,0,0,0)}const n=this.numDisplacements,i=4*n,s=C().roundToMultiple(Math.ceil(Math.sqrt(e*n*2))||1,2),o=this.displacementWeightsArray;for(let n=0;n<e;++n)o.set(t[n],n*i);const r=this.getBrowser().getContext();r.bindTexture(r.TEXTURE_2D,this.displacementsTexture),r.texSubImage2D(r.TEXTURE_2D,0,0,s/2,s,s/2,r.RGBA,r.FLOAT,o),this.change.enable()},set_skinCoord__(){this.skinCoordNode&&(this.skinCoordNode.removeInterest("addEvent",this._jointTextures),this.skinCoordNode.removeInterest("addEvent",this._displacementsTexture),this.skinCoordNode.removeInterest("addEvent",this._displacementWeightsTexture)),this.skinCoordNode=E()(p().X3DCoordinateNode,this._skinCoord),this.skinCoordNode?(delete this.skinning,this.skinCoordNode.addInterest("addEvent",this._jointTextures),this.skinCoordNode.addInterest("addEvent",this._displacementsTexture),this.skinCoordNode.addInterest("addEvent",this._displacementWeightsTexture)):this.skinning=Function.prototype,this._jointTextures.addEvent(),this._displacementsTexture.addEvent(),this._displacementWeightsTexture.addEvent()},traverse(e,t){this.transformNode.traverse(e,t),this.skinning(e,t)},skinning:(()=>{const e=new(M());return function(t,n){if(t!==y().DISPLAY||this.change.lock())return;e.assign(this.transformNode.getMatrix()).multRight(n.getModelViewMatrix().get()).inverse();const i=this.jointNodes,s=i.length,o=this.jointBindingMatrices,r=this.jointMatricesArray,a=Math.ceil(Math.sqrt(8*s));for(let t=0;t<s;++t){const n=i[t],s=o[t],a=n.getModelViewMatrix().multRight(e).multLeft(s),d=a.submatrix.transpose().inverse();r.set(a,32*t+0),r.set(d,32*t+16)}const d=this.getBrowser().getContext();d.bindTexture(d.TEXTURE_2D,this.jointMatricesTexture),d.texImage2D(d.TEXTURE_2D,0,d.RGBA32F,a,a,0,d.RGBA,d.FLOAT,r)}})(),setShaderUniforms(e,t){const n=this.getBrowser().getTexture2DUnit(),i=this.getBrowser().getTexture2DUnit(),s=this.getBrowser().getTexture2DUnit();e.activeTexture(e.TEXTURE0+n),e.bindTexture(e.TEXTURE_2D,this.jointsTexture),e.uniform1i(t.x3d_JointsTexture,n),e.activeTexture(e.TEXTURE0+i),e.bindTexture(e.TEXTURE_2D,this.displacementsTexture),e.uniform1i(t.x3d_DisplacementsTexture,i),e.activeTexture(e.TEXTURE0+s),e.bindTexture(e.TEXTURE_2D,this.jointMatricesTexture),e.uniform1i(t.x3d_JointMatricesTexture,s)},dispose(){S().prototype.dispose.call(this),I().prototype.dispose.call(this)}}),Object.defineProperties(A,{typeName:{value:"HAnimHumanoid",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"version",new(s().SFString)("2.0")),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"info",new(s().MFString)),new(r())(p().inputOutput,"skeletalConfiguration",new(s().SFString)("BASIC")),new(r())(p().inputOutput,"loa",new(s().SFInt32)(-1)),new(r())(p().inputOutput,"translation",new(s().SFVec3f)),new(r())(p().inputOutput,"rotation",new(s().SFRotation)),new(r())(p().inputOutput,"scale",new(s().SFVec3f)(1,1,1)),new(r())(p().inputOutput,"scaleOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"center",new(s().SFVec3f)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOutput,"skeleton",new(s().MFNode)),new(r())(p().inputOutput,"viewpoints",new(s().MFNode)),new(r())(p().inputOutput,"sites",new(s().MFNode)),new(r())(p().inputOutput,"segments",new(s().MFNode)),new(r())(p().inputOutput,"motionsEnabled",new(s().MFBool)),new(r())(p().inputOutput,"motions",new(s().MFNode)),new(r())(p().inputOutput,"jointBindingPositions",new(s().MFVec3f)),new(r())(p().inputOutput,"jointBindingRotations",new(s().MFRotation)),new(r())(p().inputOutput,"jointBindingScales",new(s().MFVec3f)),new(r())(p().inputOutput,"joints",new(s().MFNode)),new(r())(p().inputOutput,"skinBindingNormals",new(s().SFNode)),new(r())(p().inputOutput,"skinBindingCoords",new(s().SFNode)),new(r())(p().inputOutput,"skinNormal",new(s().SFNode)),new(r())(p().inputOutput,"skinCoord",new(s().SFNode)),new(r())(p().inputOutput,"skin",new(s().MFNode))]),enumerable:!0}});class X{#e=!0;enable(){this.#e=!1}lock(){const e=this.#e;return this.#e=!0,e}}const k=A;_().add("HAnimHumanoid","x_ite/Components/HAnim/HAnimHumanoid",k);const R=k,V=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/X3DTransformNode");var B=e.n(V);const H=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Vector3");var P=e.n(H);function z(e){B().call(this,e),this.addType(p().HAnimJoint),this.addChildObjects(p().outputOnly,"displacements",new(s().SFTime),p().outputOnly,"displacementWeights",new(s().SFTime)),this.setAllowedTypes(p().HAnimJoint,p().HAnimSegment,p().HAnimSite),this.displacerNodes=[],this.modelViewMatrix=new(M())}Object.assign(Object.setPrototypeOf(z.prototype,B().prototype),{initialize(){B().prototype.initialize.call(this),this._displacers.addInterest("set_displacers__",this),this.set_displacers__()},getModelViewMatrix(){return this.modelViewMatrix},getDisplacers(){return this.displacerNodes},set_displacers__(){const e=this.displacerNodes;for(const t of e)t._coordIndex.removeInterest("addEvent",this._displacements),t._displacements.removeInterest("addEvent",this._displacements),t._coordIndex.removeInterest("addEvent",this._displacementWeights),t._weight.removeInterest("addEvent",this._displacementWeights);e.length=0;for(const t of this._displacers){const n=E()(p().HAnimDisplacer,t);n&&e.push(n)}for(const t of e)t._coordIndex.addInterest("addEvent",this._displacements),t._displacements.addInterest("addEvent",this._displacements),t._coordIndex.addInterest("addEvent",this._displacementWeights),t._weight.addInterest("addEvent",this._displacementWeights)},traverse(e,t){const n=t.getModelViewMatrix();n.push(),n.multLeft(this.getMatrix()),e===y().DISPLAY&&this.modelViewMatrix.assign(n.get()),B().prototype.groupTraverse.call(this,e,t),n.pop()},groupTraverse(e,t){e===y().DISPLAY&&this.modelViewMatrix.assign(t.getModelViewMatrix().get()),B().prototype.groupTraverse.call(this,e,t)}}),Object.defineProperties(z,{typeName:{value:"HAnimJoint",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"translation",new(s().SFVec3f)),new(r())(p().inputOutput,"rotation",new(s().SFRotation)),new(r())(p().inputOutput,"scale",new(s().SFVec3f)(1,1,1)),new(r())(p().inputOutput,"scaleOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"center",new(s().SFVec3f)),new(r())(p().inputOutput,"llimit",new(s().MFFloat)(0,0,0)),new(r())(p().inputOutput,"ulimit",new(s().MFFloat)(0,0,0)),new(r())(p().inputOutput,"limitOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"stiffness",new(s().MFFloat)(0,0,0)),new(r())(p().inputOutput,"skinCoordIndex",new(s().MFInt32)),new(r())(p().inputOutput,"skinCoordWeight",new(s().MFFloat)),new(r())(p().inputOutput,"displacers",new(s().MFNode)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOnly,"addChildren",new(s().MFNode)),new(r())(p().inputOnly,"removeChildren",new(s().MFNode)),new(r())(p().inputOutput,"children",new(s().MFNode))]),enumerable:!0}});const J=z;_().add("HAnimJoint","x_ite/Components/HAnim/HAnimJoint",J);const U=J,W=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Time/TimeSensor");var q=e.n(W);const G=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Interpolation/PositionInterpolator");var L=e.n(G);const Y=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Interpolation/OrientationInterpolator");var K=e.n(Y);const Z=window[Symbol.for("X_ITE.X3D-10.2.0")].require("standard/Math/Numbers/Rotation4");var $=e.n(Z);function Q(e){I().call(this,e),this.addType(p().HAnimMotion),this.timeSensor=new(q())(this.getExecutionContext()),this.interpolators=[]}Object.assign(Object.setPrototypeOf(Q.prototype,I().prototype),{initialize(){I().prototype.initialize.call(this),this._loop.addFieldInterest(this.timeSensor._loop),this.timeSensor._cycleTime.addFieldInterest(this._cycleTime),this.timeSensor._elapsedTime.addFieldInterest(this._elapsedTime),this.timeSensor._enabled=!1,this.timeSensor._loop=this._loop,this.timeSensor._stopTime=1,this.timeSensor.setup(),this._enabled.addInterest("set_enabled__",this),this._joints.addInterest("set_joints__",this),this._channels.addInterest("set_interpolators__",this),this._values.addInterest("set_interpolators__",this),this._next.addInterest("set_next_or_previous__",this,1),this._previous.addInterest("set_next_or_previous__",this,-1),this._frameIndex.addInterest("set_frameIndex__",this),this._frameDuration.addInterest("set_frameDuration__",this),this._frameIncrement.addInterest("set_frameIncrement__",this),this._startFrame.addInterest("set_start_or_endFrame__",this),this._endFrame.addInterest("set_start_or_endFrame__",this),this.set_enabled__(),this.set_joints__(),this.set_frameIncrement__(),this.set_interpolators__()},connectJoints(e){const t=this._channelsEnabled,n=this.joints,i=this.getJointsIndex(e);for(const[e,{positionInterpolator:s,orientationInterpolator:o,scaleInterpolator:r}]of this.interpolators.entries()){if(e<t.length&&!t[e])continue;const a=i.get(n[e]);a&&(s?._value_changed.addFieldInterest(a._translation),o?._value_changed.addFieldInterest(a._rotation),r?._value_changed.addFieldInterest(a._scale))}},disconnectJoints(e){const t=this.joints,n=this.getJointsIndex(e);for(const[e,{positionInterpolator:i,orientationInterpolator:s,scaleInterpolator:o}]of this.interpolators.entries()){const r=n.get(t[e]);r&&(i?._value_changed.removeFieldInterest(r._translation),s?._value_changed.removeFieldInterest(r._rotation),o?._value_changed.removeFieldInterest(r._scale))}},getJointsIndex(e){const t=new Map(e.map((e=>[e._name.getValue().trim(),e])));return t.delete("IGNORED"),t.set("HumanoidRoot",t.get("humanoid_root")),t},set_enabled__(){this._enabled.getValue()?this.timeSensor._startTime=Date.now()/1e3:this.timeSensor._stopTime=Date.now()/1e3},set_joints__(){this.joints=this._joints.getValue().replace(/^[\s,]+|[\s,]+$/gs,"").split(/[\s,]+/s);for(const{positionInterpolator:e,orientationInterpolator:t,scaleInterpolator:n}of this.interpolators)e?._value_changed.getFieldInterests().forEach((t=>e._value_changed.removeFieldInterest(t))),t?._value_changed.getFieldInterests().forEach((e=>t._value_changed.removeFieldInterest(e))),n?._value_changed.getFieldInterests().forEach((e=>n._value_changed.removeFieldInterest(e)))},set_interpolators__(){const e=this.timeSensor;e._fraction_changed.getFieldInterests().forEach((t=>e._fraction_changed.removeFieldInterest(t)));const t=this._channels.getValue().replace(/^[\s,\d]+|[\s,\d]+$/gs,"").split(/[\s,]+\d+[\s,]+/s).map((e=>e.split(/[\s,]+/s))),n=this._values,i=t.reduce(((e,t)=>e+t.length),0),s=Math.floor(i?n.length/i:0),o=new Map,r=Array.from({length:t.length},(()=>({})));this.interpolators=r;for(let i=0,a=0;i<s;++i)for(const[d,l]of t.entries()){o.clear();for(const e of l)o.set(e,n[a++]);if(o.has("Xposition")||o.has("Yposition")||o.has("Zposition")){const t=r[d].positionInterpolator??this.createPositionInterpolator(r,d),n=i/(s-1),a=new(P())(o.get("Xposition")??0,o.get("Yposition")??0,o.get("Zposition")??0);t._key.push(n),t._keyValue.push(a),e._fraction_changed.addFieldInterest(t._set_fraction)}if(o.has("Xrotation")||o.has("Yrotation")||o.has("Zrotation")){const t=r[d].orientationInterpolator??this.createOrientationInterpolator(r,d),n=i/(s-1),a=$().fromEuler(C().radians(o.get("Xrotation")??0),C().radians(o.get("Yrotation")??0),C().radians(o.get("Zrotation")??0));t._key.push(n),t._keyValue.push(a),e._fraction_changed.addFieldInterest(t._set_fraction)}if(o.has("Xscale")||o.has("Yscale")||o.has("Zscale")){const t=r[d].scaleInterpolator??this.createScaleInterpolator(r,d),n=i/(s-1),a=new(P())(o.get("Xscale")??1,o.get("Yscale")??1,o.get("Zscale")??1);t._key.push(n),t._keyValue.push(a),e._fraction_changed.addFieldInterest(t._set_fraction)}}for(const{positionInterpolator:e,orientationInterpolator:t,scaleInterpolator:n}of r)e?.setup(),t?.setup(),n?.setup();this._frameIndex=0,this._startFrame=0,this._endFrame=s-1,this._frameCount=s,this.set_frameDuration__()},set_next_or_previous__(e,t){if(!t.getValue())return;const n=this.getFraction(),i=this._frameCount.getValue(),s=this._frameIncrement.getValue(),o=(i>1?Math.floor(n*(i-1)):0)+s*e;if(o>this.endFrame){if(!this._loop.getValue())return;this._frameIndex=this.startFrame}else if(o<this.startFrame){if(!this._loop.getValue())return;this._frameIndex=this.endFrame}else this._frameIndex=o},set_frameIndex__(){const e=this._frameCount.getValue(),t=C().clamp(this._frameIndex.getValue(),0,e),n=e>1?t/(e-1):0;if(this.timeSensor._range[0]=n,!this.timeSensor._isActive.getValue())for(const e of this.timeSensor._fraction_changed.getFieldInterests())e.setValue(n)},set_frameDuration__(){const e=this._frameCount.getValue(),t=Math.max(this._frameDuration.getValue(),0);this.timeSensor._cycleInterval=e>1?(e-1)*t:0},set_frameIncrement__(){this.timeSensor._enabled=this._frameIncrement.getValue()},set_start_or_endFrame__(){const e=this._frameCount.getValue(),t=C().clamp(this._startFrame.getValue(),0,e),n=C().clamp(this._endFrame.getValue(),0,e);this.startFrame=Math.min(t,n),this.endFrame=Math.max(t,n),this.timeSensor._range[1]=e>1?this.startFrame/(e-1):0,this.timeSensor._range[2]=e>1?this.endFrame/(e-1):0},createPositionInterpolator(e,t){return e[t].positionInterpolator=new(L())(this.getExecutionContext())},createOrientationInterpolator(e,t){return e[t].orientationInterpolator=new(K())(this.getExecutionContext())},createScaleInterpolator(e,t){return e[t].scaleInterpolator=new(L())(this.getExecutionContext())},getFraction(){for(const e of this.timeSensor._fraction_changed.getFieldInterests())return e.getValue();return 0}}),Object.defineProperties(Q,{typeName:{value:"HAnimMotion",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:2}),enumerable:!0},containerField:{value:"motions",enumerable:!0},specificationRange:{value:Object.freeze({from:"4.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"enabled",new(s().SFBool)(!0)),new(r())(p().inputOutput,"loa",new(s().SFInt32)(-1)),new(r())(p().inputOutput,"joints",new(s().SFString)),new(r())(p().inputOutput,"channelsEnabled",new(s().MFBool)),new(r())(p().inputOutput,"channels",new(s().SFString)),new(r())(p().inputOutput,"values",new(s().MFFloat)),new(r())(p().inputOutput,"loop",new(s().SFBool)),new(r())(p().inputOnly,"next",new(s().SFBool)),new(r())(p().inputOnly,"previous",new(s().SFBool)),new(r())(p().inputOutput,"frameIndex",new(s().SFInt32)),new(r())(p().inputOutput,"frameDuration",new(s().SFTime)(.1)),new(r())(p().inputOutput,"frameIncrement",new(s().SFInt32)(1)),new(r())(p().inputOutput,"startFrame",new(s().SFInt32)),new(r())(p().inputOutput,"endFrame",new(s().SFInt32)),new(r())(p().outputOnly,"cycleTime",new(s().SFTime)),new(r())(p().outputOnly,"elapsedTime",new(s().SFTime)),new(r())(p().outputOnly,"frameCount",new(s().SFInt32))]),enumerable:!0}});const ee=Q;_().add("HAnimMotion","x_ite/Components/HAnim/HAnimMotion",ee);const te=ee,ne=window[Symbol.for("X_ITE.X3D-10.2.0")].require("x_ite/Components/Grouping/X3DGroupingNode");var ie=e.n(ne);function se(e){ie().call(this,e),this.addType(p().HAnimSegment),this._mass.setUnit("mass")}Object.setPrototypeOf(se.prototype,ie().prototype),Object.defineProperties(se,{typeName:{value:"HAnimSegment",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"mass",new(s().SFFloat)),new(r())(p().inputOutput,"centerOfMass",new(s().SFVec3f)),new(r())(p().inputOutput,"momentsOfInertia",new(s().MFFloat)(0,0,0,0,0,0,0,0,0)),new(r())(p().inputOutput,"displacers",new(s().MFNode)),new(r())(p().inputOutput,"coord",new(s().SFNode)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOnly,"addChildren",new(s().MFNode)),new(r())(p().inputOnly,"removeChildren",new(s().MFNode)),new(r())(p().inputOutput,"children",new(s().MFNode))]),enumerable:!0}});const oe=se;_().add("HAnimSegment","x_ite/Components/HAnim/HAnimSegment",oe);const re=oe;function ae(e){B().call(this,e),this.addType(p().HAnimSite)}Object.setPrototypeOf(ae.prototype,B().prototype),Object.defineProperties(ae,{typeName:{value:"HAnimSite",enumerable:!0},componentInfo:{value:Object.freeze({name:"HAnim",level:1}),enumerable:!0},containerField:{value:"children",enumerable:!0},specificationRange:{value:Object.freeze({from:"3.0",to:"Infinity"}),enumerable:!0},fieldDefinitions:{value:new(d())([new(r())(p().inputOutput,"metadata",new(s().SFNode)),new(r())(p().inputOutput,"description",new(s().SFString)),new(r())(p().inputOutput,"name",new(s().SFString)),new(r())(p().inputOutput,"translation",new(s().SFVec3f)),new(r())(p().inputOutput,"rotation",new(s().SFRotation)),new(r())(p().inputOutput,"scale",new(s().SFVec3f)(1,1,1)),new(r())(p().inputOutput,"scaleOrientation",new(s().SFRotation)),new(r())(p().inputOutput,"center",new(s().SFVec3f)),new(r())(p().inputOutput,"visible",new(s().SFBool)(!0)),new(r())(p().inputOutput,"bboxDisplay",new(s().SFBool)),new(r())(p().initializeOnly,"bboxSize",new(s().SFVec3f)(-1,-1,-1)),new(r())(p().initializeOnly,"bboxCenter",new(s().SFVec3f)),new(r())(p().inputOnly,"addChildren",new(s().MFNode)),new(r())(p().inputOnly,"removeChildren",new(s().MFNode)),new(r())(p().inputOutput,"children",new(s().MFNode))]),enumerable:!0}});const de=ae;_().add("HAnimSite","x_ite/Components/HAnim/HAnimSite",de);const le=de;n().add({name:"HAnim",concreteNodes:[f,R,U,te,re,le],abstractNodes:[]});const ue=void 0;_().add("HAnim","assets/components/HAnim",ue)})();
@@ -1,4 +1,4 @@
1
- /* X_ITE v10.1.0 */(() => { // webpackBootstrap
1
+ /* X_ITE v10.2.0 */(() => { // webpackBootstrap
2
2
  /******/ "use strict";
3
3
  /******/ // The require scope
4
4
  /******/ var __webpack_require__ = {};
@@ -38,10 +38,10 @@
38
38
  // UNUSED EXPORTS: default
39
39
 
40
40
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components\")"
41
- const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components");
41
+ const Components_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components");
42
42
  var Components_default = /*#__PURE__*/__webpack_require__.n(Components_namespaceObject);
43
43
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Namespace\")"
44
- const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Namespace");
44
+ const Namespace_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Namespace");
45
45
  var Namespace_default = /*#__PURE__*/__webpack_require__.n(Namespace_namespaceObject);
46
46
  ;// CONCATENATED MODULE: ./src/x_ite/Browser/KeyDeviceSensor/X3DKeyDeviceSensorContext.js
47
47
  /*******************************************************************************
@@ -144,19 +144,19 @@ const __default__ = X3DKeyDeviceSensorContext;
144
144
  Namespace_default().add ("X3DKeyDeviceSensorContext", "x_ite/Browser/KeyDeviceSensor/X3DKeyDeviceSensorContext", __default__);
145
145
  /* harmony default export */ const KeyDeviceSensor_X3DKeyDeviceSensorContext = (__default__);
146
146
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Fields\")"
147
- const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Fields");
147
+ const Fields_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Fields");
148
148
  var Fields_default = /*#__PURE__*/__webpack_require__.n(Fields_namespaceObject);
149
149
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DFieldDefinition\")"
150
- const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/X3DFieldDefinition");
150
+ const X3DFieldDefinition_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/X3DFieldDefinition");
151
151
  var X3DFieldDefinition_default = /*#__PURE__*/__webpack_require__.n(X3DFieldDefinition_namespaceObject);
152
152
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/FieldDefinitionArray\")"
153
- const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/FieldDefinitionArray");
153
+ const FieldDefinitionArray_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/FieldDefinitionArray");
154
154
  var FieldDefinitionArray_default = /*#__PURE__*/__webpack_require__.n(FieldDefinitionArray_namespaceObject);
155
155
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Components/Core/X3DSensorNode\")"
156
- const X3DSensorNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Components/Core/X3DSensorNode");
156
+ const X3DSensorNode_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Components/Core/X3DSensorNode");
157
157
  var X3DSensorNode_default = /*#__PURE__*/__webpack_require__.n(X3DSensorNode_namespaceObject);
158
158
  ;// CONCATENATED MODULE: external "window [Symbol .for (\"X_ITE.X3D\")] .require (\"x_ite/Base/X3DConstants\")"
159
- const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.1.0")] .require ("x_ite/Base/X3DConstants");
159
+ const X3DConstants_namespaceObject = window [Symbol .for ("X_ITE.X3D-10.2.0")] .require ("x_ite/Base/X3DConstants");
160
160
  var X3DConstants_default = /*#__PURE__*/__webpack_require__.n(X3DConstants_namespaceObject);
161
161
  ;// CONCATENATED MODULE: ./src/x_ite/Components/KeyDeviceSensor/X3DKeyDeviceSensorNode.js
162
162
  /*******************************************************************************