@tomaso909/js3d 1.7.0 → 1.9.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.
- package/dist/index.obf.js +1 -1
- package/package.json +1 -1
package/dist/index.obf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function a0_0x3fdb(_0x2c8870,_0x48d465){const _0x15f8a6=a0_0x15f8();return a0_0x3fdb=function(_0x3fdbde,_0x3594fb){_0x3fdbde=_0x3fdbde-0x81;let _0x464bcd=_0x15f8a6[_0x3fdbde];return _0x464bcd;},a0_0x3fdb(_0x2c8870,_0x48d465);}const a0_0x1afce0=a0_0x3fdb;(function(_0x271cd5,_0x4e37cf){const _0x5d8dc2=a0_0x3fdb,_0x2a4887=_0x271cd5();while(!![]){try{const _0x51bb9f=-parseInt(_0x5d8dc2(0xd7))/0x1+-parseInt(_0x5d8dc2(0xae))/0x2*(-parseInt(_0x5d8dc2(0xe6))/0x3)+-parseInt(_0x5d8dc2(0xb8))/0x4+-parseInt(_0x5d8dc2(0x10a))/0x5*(-parseInt(_0x5d8dc2(0xed))/0x6)+parseInt(_0x5d8dc2(0x92))/0x7+-parseInt(_0x5d8dc2(0xb9))/0x8+parseInt(_0x5d8dc2(0x104))/0x9;if(_0x51bb9f===_0x4e37cf)break;else _0x2a4887['push'](_0x2a4887['shift']());}catch(_0x2f5e3f){_0x2a4887['push'](_0x2a4887['shift']());}}}(a0_0x15f8,0x67dda));var w={'length':function(_0x36f7d4){const _0x3bed4c=a0_0x3fdb;return Math[_0x3bed4c(0xa8)](_0x36f7d4[0x0]**0x2+_0x36f7d4[0x1]**0x2+_0x36f7d4[0x2]**0x2);},'scalarProduct':function(_0x94d0bd,_0x546c8d){return[_0x94d0bd[0x0]*_0x546c8d,_0x94d0bd[0x1]*_0x546c8d,_0x94d0bd[0x2]*_0x546c8d];},'dot':function(_0x57aed2,_0x24c064){return _0x57aed2[0x0]*_0x24c064[0x0]+_0x57aed2[0x1]*_0x24c064[0x1]+_0x57aed2[0x2]*_0x24c064[0x2];},'angle':function(_0x58a70d,_0x4a0c87,_0x53fb53=!0x1){const _0x46b8d2=a0_0x3fdb;let _0x12503d=this[_0x46b8d2(0xeb)](_0x58a70d,_0x4a0c87)/(this[_0x46b8d2(0x84)](_0x58a70d)*this['length'](_0x4a0c87)),_0x1fc532=Math[_0x46b8d2(0xaa)](_0x12503d);return _0x53fb53&&_0x1fc532>Math['PI']/0x2&&(_0x1fc532=Math['PI']-_0x1fc532),_0x1fc532;},'sub':function(_0x56a6b0,_0x21ebb9){return[_0x56a6b0[0x0]-_0x21ebb9[0x0],_0x56a6b0[0x1]-_0x21ebb9[0x1],_0x56a6b0[0x2]-_0x21ebb9[0x2]];},'add':function(_0x5236ab,_0x12c038){return[_0x5236ab[0x0]+_0x12c038[0x0],_0x5236ab[0x1]+_0x12c038[0x1],_0x5236ab[0x2]+_0x12c038[0x2]];},'rotate':function(_0x2674ee,_0xfabd30,_0x309631){const _0x4b3cd3=a0_0x3fdb;let _0x19f34e=_0x309631*Math['PI']/0xb4,_0x376526=Math['cos'](_0x19f34e),_0x5eed1e=Math[_0x4b3cd3(0x96)](_0x19f34e),_0x1f7c0b=_0x2674ee[0x0],_0x15379a=_0x2674ee[0x1],_0x4f06b3=_0x2674ee[0x2],_0x1788bc=_0xfabd30[0x0],_0x5a4cea=_0xfabd30[0x1],_0x712f0f=_0xfabd30[0x2],_0x4fa88d=_0x1788bc*_0x1f7c0b+_0x5a4cea*_0x15379a+_0x712f0f*_0x4f06b3,_0x5e6847=_0x1788bc*_0x4fa88d*(0x1-_0x376526)+_0x1f7c0b*_0x376526+(-_0x712f0f*_0x15379a+_0x5a4cea*_0x4f06b3)*_0x5eed1e,_0x102659=_0x5a4cea*_0x4fa88d*(0x1-_0x376526)+_0x15379a*_0x376526+(_0x712f0f*_0x1f7c0b-_0x1788bc*_0x4f06b3)*_0x5eed1e,_0x649b35=_0x712f0f*_0x4fa88d*(0x1-_0x376526)+_0x4f06b3*_0x376526+(-_0x5a4cea*_0x1f7c0b+_0x1788bc*_0x15379a)*_0x5eed1e;return[_0x5e6847,_0x102659,_0x649b35];},'fromTwoPoints':function(_0x3e11ff,_0x4f74ab){return[_0x4f74ab[0x0]-_0x3e11ff[0x0],_0x4f74ab[0x1]-_0x3e11ff[0x1],_0x4f74ab[0x2]-_0x3e11ff[0x2]];},'normalized':function(_0x33eed7){const _0x177a07=a0_0x3fdb;return w[_0x177a07(0xf8)](_0x33eed7,0x1/w[_0x177a07(0x84)](_0x33eed7));},'cross':function(_0x4f4a61,_0x533b5c){return[_0x4f4a61[0x1]*_0x533b5c[0x2]-_0x4f4a61[0x2]*_0x533b5c[0x1],_0x4f4a61[0x2]*_0x533b5c[0x0]-_0x4f4a61[0x0]*_0x533b5c[0x2],_0x4f4a61[0x0]*_0x533b5c[0x1]-_0x4f4a61[0x1]*_0x533b5c[0x0]];}},F={'distance':function(_0x4305d3,_0x56391d){const _0x50dda4=a0_0x3fdb;return w[_0x50dda4(0x84)](w[_0x50dda4(0x109)](_0x56391d,_0x4305d3));},'move':function(_0x2c6591,_0x5804bb){return w['add'](_0x2c6591,_0x5804bb);},'scale':function(_0x52a64c,_0x313e55,_0x4e0b7a){const _0x28e21c=a0_0x3fdb;return _0x4e0b7a!=null&&(_0x52a64c=this['move'](_0x52a64c,w[_0x28e21c(0xf8)](_0x4e0b7a,-0x1))),_0x52a64c=w[_0x28e21c(0xf8)](_0x52a64c,_0x313e55),_0x4e0b7a!=null&&(_0x52a64c=this['move'](_0x52a64c,_0x4e0b7a)),_0x52a64c;},'rotate':function(_0x235159,_0x16e84a,_0x1dee28,_0x2fe49e){const _0x43a961=a0_0x3fdb;let _0x2f3a97=_0x1dee28*Math['PI']/0xb4,_0x570d6e=Math[_0x43a961(0x108)](_0x2f3a97),_0x5aa22e=Math[_0x43a961(0x96)](_0x2f3a97),_0x21c90b=_0x235159[0x0],_0x8682a4=_0x235159[0x1],_0x5203e9=_0x235159[0x2];_0x2fe49e!=null&&(_0x21c90b=_0x21c90b-_0x2fe49e[0x0],_0x8682a4=_0x8682a4-_0x2fe49e[0x1],_0x5203e9=_0x5203e9-_0x2fe49e[0x2]);let _0x3a7007=_0x16e84a[0x0],_0xb34eb5=_0x16e84a[0x1],_0x2e3236=_0x16e84a[0x2],_0x5da7ac=_0x3a7007*_0x21c90b+_0xb34eb5*_0x8682a4+_0x2e3236*_0x5203e9,_0x57b1e1=_0x3a7007*_0x5da7ac*(0x1-_0x570d6e)+_0x21c90b*_0x570d6e+(-_0x2e3236*_0x8682a4+_0xb34eb5*_0x5203e9)*_0x5aa22e,_0x5e8a1d=_0xb34eb5*_0x5da7ac*(0x1-_0x570d6e)+_0x8682a4*_0x570d6e+(_0x2e3236*_0x21c90b-_0x3a7007*_0x5203e9)*_0x5aa22e,_0x13c732=_0x2e3236*_0x5da7ac*(0x1-_0x570d6e)+_0x5203e9*_0x570d6e+(-_0xb34eb5*_0x21c90b+_0x3a7007*_0x8682a4)*_0x5aa22e,_0x500920=[_0x57b1e1,_0x5e8a1d,_0x13c732];return _0x2fe49e!=null&&(_0x500920[0x0]=_0x500920[0x0]+_0x2fe49e[0x0],_0x500920[0x1]=_0x500920[0x1]+_0x2fe49e[0x1],_0x500920[0x2]=_0x500920[0x2]+_0x2fe49e[0x2]),_0x500920;},'project':function(_0x5b30c4,_0x228581,_0x2372f8){const _0x5532d6=a0_0x3fdb;let _0x3b64cb=w[_0x5532d6(0x109)](_0x5b30c4,_0x2372f8),_0x1b1af5=w[_0x5532d6(0xeb)](_0x3b64cb,_0x228581)/w[_0x5532d6(0x84)](_0x228581),_0x45edcf=w[_0x5532d6(0xf8)](_0x228581,0x1/w['length'](_0x228581));return w[_0x5532d6(0x109)](_0x5b30c4,w[_0x5532d6(0xf8)](_0x45edcf,_0x1b1af5));}},H={'linspace':function(_0x517722,_0x19837c,_0x390b86,_0x56b108=!0x0){const _0x5cac70=a0_0x3fdb;let _0x10dc12=_0x56b108?_0x390b86-0x1:_0x390b86,_0x1d4438=(_0x19837c-_0x517722)/_0x10dc12;return Array[_0x5cac70(0x9a)]({'length':_0x390b86},(_0xa07cc4,_0x5197d6)=>_0x517722+_0x1d4438*_0x5197d6);},'cosineSpacing':function(_0x2ee3f8,_0x55cd76,_0x2bdbfe){const _0x54c7df=a0_0x3fdb;let _0x51a0f6=Array[_0x54c7df(0x9a)]({'length':_0x2bdbfe},(_0x17e6fc,_0x5921e2)=>_0x5921e2/(_0x2bdbfe-0x1))['map'](_0x1055d0=>(0x1-Math[_0x54c7df(0x108)](_0x1055d0*Math['PI']))/0x2),_0x317577=[];for(let _0x1c598b=0x0;_0x1c598b<_0x51a0f6[_0x54c7df(0x84)];_0x1c598b++){let _0x1ba31a=_0x51a0f6[_0x1c598b];_0x317577[_0x54c7df(0xdf)](mapToSpace(_0x1ba31a,[0x0,0x1],[_0x2ee3f8,_0x55cd76]));}return _0x317577;},'normalizedCosineSpacing':function(_0x5ade41){const _0x8fdda5=a0_0x3fdb;return Array['from']({'length':_0x5ade41},(_0x5a5e1a,_0x55045e)=>_0x55045e/(_0x5ade41-0x1))['map'](_0x5d0be3=>(0x1-Math[_0x8fdda5(0x108)](_0x5d0be3*Math['PI']))/0x2);},'mapToSpace':function(_0xb4b7f0,_0x2fcd43,_0x19661c){return _0x19661c[0x1]+(_0xb4b7f0-_0x2fcd43[0x1])*(_0x19661c[0x0]-_0x19661c[0x1])/(_0x2fcd43[0x0]-_0x2fcd43[0x1]);}},j={'from_control_points':function(_0x4cb2a9,_0x1c467c,_0x5a1771,_0x1234f3){const _0x39063b=a0_0x3fdb;_0x1234f3===void 0x0&&(_0x1234f3=this['_uniform_knot_spacing'](_0x4cb2a9,_0x1c467c));let _0x5e1d1c=H['linspace'](0x0,0x1,_0x5a1771);console[_0x39063b(0xaf)](_0x5e1d1c);let _0xbcd376=[];for(var _0x42f3fd of _0x5e1d1c)_0xbcd376[_0x39063b(0xdf)](this[_0x39063b(0xda)](_0x42f3fd,_0x1c467c,_0x4cb2a9,_0x1234f3));return _0xbcd376;},'from_control_points_cosine':function(_0x19ec33,_0x5815b8,_0x5c9a31,_0x4a4616){const _0x47b247=a0_0x3fdb;_0x4a4616===void 0x0&&(_0x4a4616=this[_0x47b247(0xef)](_0x19ec33,_0x5815b8));let _0x5e1c59=H['normalizedCosineSpacing'](_0x5c9a31),_0x24a152=[];for(var _0x5877be of _0x5e1c59)_0x24a152[_0x47b247(0xdf)](this[_0x47b247(0xda)](_0x5877be,_0x5815b8,_0x19ec33,_0x4a4616));return _0x24a152;},'_uniform_knot_spacing':function(_0x11f15c,_0x4a55cd){const _0x2177d5=a0_0x3fdb;let _0x29fe23=_0x11f15c[_0x2177d5(0x84)]+_0x4a55cd+0x1,_0x2d15cc=[],_0x42ff70=_0x29fe23-(_0x4a55cd+0x1)*0x2;for(var _0x82c2fd=0x0;_0x82c2fd<_0x4a55cd+0x1;_0x82c2fd++)_0x2d15cc[_0x2177d5(0xdf)](0x0);for(var _0x82c2fd=0x0;_0x82c2fd<_0x42ff70;_0x82c2fd++)_0x2d15cc[_0x2177d5(0xdf)](_0x82c2fd+0x1);let _0x540b91=_0x2d15cc[_0x2d15cc[_0x2177d5(0x84)]-0x1]+0x1;for(var _0x82c2fd=0x0;_0x82c2fd<_0x4a55cd+0x1;_0x82c2fd++)_0x2d15cc[_0x2177d5(0xdf)](_0x540b91);return _0x2d15cc;},'bspline':function(_0x1c060d,_0x3151b0,_0x31685a,_0x1fa0d3,_0x327774,_0x3d95cc){const _0x2b64bb=a0_0x3fdb;var _0x11a09b,_0x397348,_0x37af8b,_0x32362b,_0x523c1b=_0x31685a['length'],_0x370e10=_0x31685a[0x0]['length'];if(_0x3151b0<0x1)throw new Error(_0x2b64bb(0xdb));if(_0x3151b0>_0x523c1b-0x1)throw new Error(_0x2b64bb(0x88));if(!_0x327774){for(_0x327774=[],_0x11a09b=0x0;_0x11a09b<_0x523c1b;_0x11a09b++)_0x327774[_0x11a09b]=0x1;}if(_0x1fa0d3){if(_0x1fa0d3[_0x2b64bb(0x84)]!==_0x523c1b+_0x3151b0+0x1)throw new Error('bad\x20knot\x20vector\x20length');}else{var _0x1fa0d3=[];for(_0x11a09b=0x0;_0x11a09b<_0x523c1b+_0x3151b0+0x1;_0x11a09b++)_0x1fa0d3[_0x11a09b]=_0x11a09b;}var _0x397818=[_0x3151b0,_0x1fa0d3[_0x2b64bb(0x84)]-0x1-_0x3151b0],_0x49715b=_0x1fa0d3[_0x397818[0x0]],_0x38a4c9=_0x1fa0d3[_0x397818[0x1]];if(_0x1c060d=_0x1c060d*(_0x38a4c9-_0x49715b)+_0x49715b,_0x1c060d<_0x49715b||_0x1c060d>_0x38a4c9)throw new Error(_0x2b64bb(0xb3));for(_0x37af8b=_0x397818[0x0];_0x37af8b<_0x397818[0x1]&&!(_0x1c060d>=_0x1fa0d3[_0x37af8b]&&_0x1c060d<=_0x1fa0d3[_0x37af8b+0x1]);_0x37af8b++);var _0x4d14b7=[];for(_0x11a09b=0x0;_0x11a09b<_0x523c1b;_0x11a09b++){for(_0x4d14b7[_0x11a09b]=[],_0x397348=0x0;_0x397348<_0x370e10;_0x397348++)_0x4d14b7[_0x11a09b][_0x397348]=_0x31685a[_0x11a09b][_0x397348]*_0x327774[_0x11a09b];_0x4d14b7[_0x11a09b][_0x370e10]=_0x327774[_0x11a09b];}var _0x5c5b91;for(_0x32362b=0x1;_0x32362b<=_0x3151b0+0x1;_0x32362b++)for(_0x11a09b=_0x37af8b;_0x11a09b>_0x37af8b-_0x3151b0-0x1+_0x32362b;_0x11a09b--)for(_0x5c5b91=(_0x1c060d-_0x1fa0d3[_0x11a09b])/(_0x1fa0d3[_0x11a09b+_0x3151b0+0x1-_0x32362b]-_0x1fa0d3[_0x11a09b]),_0x397348=0x0;_0x397348<_0x370e10+0x1;_0x397348++)_0x4d14b7[_0x11a09b][_0x397348]=(0x1-_0x5c5b91)*_0x4d14b7[_0x11a09b-0x1][_0x397348]+_0x5c5b91*_0x4d14b7[_0x11a09b][_0x397348];var _0x3d95cc=_0x3d95cc||[];for(_0x11a09b=0x0;_0x11a09b<_0x370e10;_0x11a09b++)_0x3d95cc[_0x11a09b]=_0x4d14b7[_0x37af8b][_0x11a09b]/_0x4d14b7[_0x37af8b][_0x370e10];return _0x3d95cc;}},C={'_gaussJ':{'solve':function(_0x2f6b2c,_0x3bb448){const _0x4f7d7f=a0_0x3fdb;let _0x542216=_0x2f6b2c[_0x4f7d7f(0x84)];for(let _0x560e47=0x0;_0x560e47<_0x542216;_0x560e47++){let _0x171241=0x0,_0x441a6c=Number[_0x4f7d7f(0xc3)];for(let _0x5a18b6=_0x560e47;_0x5a18b6<_0x542216;_0x5a18b6++)Math[_0x4f7d7f(0xcb)](_0x2f6b2c[_0x5a18b6][_0x560e47])>_0x441a6c&&(_0x171241=_0x5a18b6,_0x441a6c=Math[_0x4f7d7f(0xcb)](_0x2f6b2c[_0x5a18b6][_0x560e47]));this[_0x4f7d7f(0x9d)](_0x2f6b2c,_0x560e47,_0x171241);for(let _0x4acb35=_0x560e47+0x1;_0x4acb35<_0x542216;_0x4acb35++){let _0x153b9f=_0x2f6b2c[_0x4acb35][_0x560e47]/_0x2f6b2c[_0x560e47][_0x560e47];for(let _0x37ba72=_0x560e47;_0x37ba72<_0x542216+0x1;_0x37ba72++)_0x2f6b2c[_0x4acb35][_0x37ba72]-=_0x2f6b2c[_0x560e47][_0x37ba72]*_0x153b9f;}}for(let _0x480976=_0x542216-0x1;_0x480976>=0x0;_0x480976--){let _0x4540ae=_0x2f6b2c[_0x480976][_0x542216]/_0x2f6b2c[_0x480976][_0x480976];_0x3bb448[_0x480976]=_0x4540ae;for(let _0x526c7d=_0x480976-0x1;_0x526c7d>=0x0;_0x526c7d--)_0x2f6b2c[_0x526c7d][_0x542216]-=_0x2f6b2c[_0x526c7d][_0x480976]*_0x4540ae,_0x2f6b2c[_0x526c7d][_0x480976]=0x0;}},'zerosMat':function(_0x4e3deb,_0x3b6ac6){const _0x5ed299=a0_0x3fdb;let _0x46127e=[];for(let _0x26f89c=0x0;_0x26f89c<_0x4e3deb;_0x26f89c++)_0x46127e[_0x5ed299(0xdf)](new Array(_0x3b6ac6)['fill'](0x0));return _0x46127e;},'printMat':function(_0x1bdece){const _0x5d9b90=a0_0x3fdb;_0x1bdece[_0x5d9b90(0x90)](_0x1fe1e6=>console[_0x5d9b90(0xaf)](_0x1fe1e6));},'swapRows':function(_0x5bc106,_0x59e75a,_0x5270b0){let _0x3cdc87=_0x5bc106[_0x59e75a];_0x5bc106[_0x59e75a]=_0x5bc106[_0x5270b0],_0x5bc106[_0x5270b0]=_0x3cdc87;}},'getNaturalKs':function(_0x432bbf,_0x416f8c,_0x4daab5){const _0x652d75=a0_0x3fdb;let _0x2ee2bb=_0x432bbf[_0x652d75(0x84)]-0x1,_0x537997=this['_gaussJ']['zerosMat'](_0x2ee2bb+0x1,_0x2ee2bb+0x2);for(let _0x3d7ec4=0x1;_0x3d7ec4<_0x2ee2bb;_0x3d7ec4++)_0x537997[_0x3d7ec4][_0x3d7ec4-0x1]=0x1/(_0x432bbf[_0x3d7ec4]-_0x432bbf[_0x3d7ec4-0x1]),_0x537997[_0x3d7ec4][_0x3d7ec4]=0x2*(0x1/(_0x432bbf[_0x3d7ec4]-_0x432bbf[_0x3d7ec4-0x1])+0x1/(_0x432bbf[_0x3d7ec4+0x1]-_0x432bbf[_0x3d7ec4])),_0x537997[_0x3d7ec4][_0x3d7ec4+0x1]=0x1/(_0x432bbf[_0x3d7ec4+0x1]-_0x432bbf[_0x3d7ec4]),_0x537997[_0x3d7ec4][_0x2ee2bb+0x1]=0x3*((_0x416f8c[_0x3d7ec4]-_0x416f8c[_0x3d7ec4-0x1])/(_0x432bbf[_0x3d7ec4]-_0x432bbf[_0x3d7ec4-0x1])**0x2+(_0x416f8c[_0x3d7ec4+0x1]-_0x416f8c[_0x3d7ec4])/(_0x432bbf[_0x3d7ec4+0x1]-_0x432bbf[_0x3d7ec4])**0x2);_0x537997[0x0][0x0]=0x2/(_0x432bbf[0x1]-_0x432bbf[0x0]),_0x537997[0x0][0x1]=0x1/(_0x432bbf[0x1]-_0x432bbf[0x0]),_0x537997[0x0][_0x2ee2bb+0x1]=0x3*(_0x416f8c[0x1]-_0x416f8c[0x0])/(_0x432bbf[0x1]-_0x432bbf[0x0])**0x2,_0x537997[_0x2ee2bb][_0x2ee2bb-0x1]=0x1/(_0x432bbf[_0x2ee2bb]-_0x432bbf[_0x2ee2bb-0x1]),_0x537997[_0x2ee2bb][_0x2ee2bb]=0x2/(_0x432bbf[_0x2ee2bb]-_0x432bbf[_0x2ee2bb-0x1]),_0x537997[_0x2ee2bb][_0x2ee2bb+0x1]=0x3*(_0x416f8c[_0x2ee2bb]-_0x416f8c[_0x2ee2bb-0x1])/(_0x432bbf[_0x2ee2bb]-_0x432bbf[_0x2ee2bb-0x1])**0x2,this[_0x652d75(0xe8)][_0x652d75(0x95)](_0x537997,_0x4daab5);},'from_control_points':function(_0x44e852,_0x1cc6c0){const _0x25fea1=a0_0x3fdb;let _0x361df1=_0x1cc6c0[_0x25fea1(0xa6)](_0x2549ad=>_0x2549ad[0x0]),_0x341c8b=_0x1cc6c0[_0x25fea1(0xa6)](_0x5955ec=>_0x5955ec[0x1]),_0x30f8a8=new Array(_0x361df1[_0x25fea1(0x84)])[_0x25fea1(0xdd)](0x0);this['getNaturalKs'](_0x361df1,_0x341c8b,_0x30f8a8);let _0x26af9a=[];for(let _0x43fee3 of _0x44e852){let _0xfd81fe=0x1;for(;_0x361df1[_0xfd81fe]<_0x43fee3;)_0xfd81fe++;let _0x465c03=(_0x43fee3-_0x361df1[_0xfd81fe-0x1])/(_0x361df1[_0xfd81fe]-_0x361df1[_0xfd81fe-0x1]),_0x42d3b8=_0x30f8a8[_0xfd81fe-0x1]*(_0x361df1[_0xfd81fe]-_0x361df1[_0xfd81fe-0x1])-(_0x341c8b[_0xfd81fe]-_0x341c8b[_0xfd81fe-0x1]),_0x1e1a49=-_0x30f8a8[_0xfd81fe]*(_0x361df1[_0xfd81fe]-_0x361df1[_0xfd81fe-0x1])+(_0x341c8b[_0xfd81fe]-_0x341c8b[_0xfd81fe-0x1]),_0x595c44=(0x1-_0x465c03)*_0x341c8b[_0xfd81fe-0x1]+_0x465c03*_0x341c8b[_0xfd81fe]+_0x465c03*(0x1-_0x465c03)*(_0x42d3b8*(0x1-_0x465c03)+_0x1e1a49*_0x465c03);_0x26af9a[_0x25fea1(0xdf)]([_0x43fee3,_0x595c44]);}return _0x26af9a;}},D=class{constructor(_0x3b7100){const _0x1a8561=a0_0x3fdb;this['points']=_0x3b7100,this[_0x1a8561(0xfe)]=[],this[_0x1a8561(0xf7)]=[0x0];for(let _0xfc0953=0x1;_0xfc0953<_0x3b7100[_0x1a8561(0x84)];_0xfc0953++){let _0x16eec2=_0x3b7100[_0xfc0953][0x0]-_0x3b7100[_0xfc0953-0x1][0x0],_0x12d2a0=_0x3b7100[_0xfc0953][0x1]-_0x3b7100[_0xfc0953-0x1][0x1],_0x585a07=_0x3b7100[_0xfc0953][0x2]-_0x3b7100[_0xfc0953-0x1][0x2],_0x1a0608=Math[_0x1a8561(0xa8)](_0x16eec2*_0x16eec2+_0x12d2a0*_0x12d2a0+_0x585a07*_0x585a07);this[_0x1a8561(0xfe)][_0x1a8561(0xdf)](_0x1a0608),this[_0x1a8561(0xf7)][_0x1a8561(0xdf)](this[_0x1a8561(0xf7)][this['cumulativeLength'][_0x1a8561(0x84)]-0x1]+_0x1a0608);}this['totalLength']=this['segmentLengths'][_0x1a8561(0x84)]>0x0?this['cumulativeLength'][this[_0x1a8561(0xf7)]['length']-0x1]:0x0;}[a0_0x1afce0(0xa2)](_0x4d79cf){const _0x381bd6=a0_0x1afce0;let _0x1fcf8f=0x0,_0x2bdf05=Number[_0x381bd6(0x9c)];for(let _0x28b72a=0x0;_0x28b72a<this[_0x381bd6(0xa4)][_0x381bd6(0x84)]-0x1;_0x28b72a++){let _0x1cb410=this[_0x381bd6(0xa4)][_0x28b72a],_0x460d87=this[_0x381bd6(0xa4)][_0x28b72a+0x1],_0x431b63=_0x4d79cf,_0x56c5c2=[_0x460d87[0x0]-_0x1cb410[0x0],_0x460d87[0x1]-_0x1cb410[0x1],_0x460d87[0x2]-_0x1cb410[0x2]],_0x861144=[_0x431b63[0x0]-_0x1cb410[0x0],_0x431b63[0x1]-_0x1cb410[0x1],_0x431b63[0x2]-_0x1cb410[0x2]],_0x5c80e0=_0x56c5c2[0x0]*_0x56c5c2[0x0]+_0x56c5c2[0x1]*_0x56c5c2[0x1]+_0x56c5c2[0x2]*_0x56c5c2[0x2];if(_0x5c80e0===0x0)continue;let _0x51aa09=(_0x861144[0x0]*_0x56c5c2[0x0]+_0x861144[0x1]*_0x56c5c2[0x1]+_0x861144[0x2]*_0x56c5c2[0x2])/_0x5c80e0;_0x51aa09=Math[_0x381bd6(0x89)](0x0,Math[_0x381bd6(0xd3)](0x1,_0x51aa09));let _0x34eec1=[_0x1cb410[0x0]+_0x51aa09*_0x56c5c2[0x0],_0x1cb410[0x1]+_0x51aa09*_0x56c5c2[0x1],_0x1cb410[0x2]+_0x51aa09*_0x56c5c2[0x2]],_0x211ff2=Math[_0x381bd6(0xa0)](_0x431b63[0x0]-_0x34eec1[0x0],0x2)+Math[_0x381bd6(0xa0)](_0x431b63[0x1]-_0x34eec1[0x1],0x2)+Math[_0x381bd6(0xa0)](_0x431b63[0x2]-_0x34eec1[0x2],0x2);_0x211ff2<_0x2bdf05&&(_0x2bdf05=_0x211ff2,_0x1fcf8f=(this[_0x381bd6(0xf7)][_0x28b72a]+_0x51aa09*this[_0x381bd6(0xfe)][_0x28b72a])/this[_0x381bd6(0xbc)]);}return _0x1fcf8f;}['findPointAtParameter'](_0x4f1a9d){const _0x317e4a=a0_0x1afce0;if(_0x4f1a9d<=0x0)return[...this['points'][0x0]];if(_0x4f1a9d>=0x1)return[...this[_0x317e4a(0xa4)][this[_0x317e4a(0xa4)][_0x317e4a(0x84)]-0x1]];let _0xc8b148=_0x4f1a9d*this[_0x317e4a(0xbc)];for(let _0x58c1e2=0x0;_0x58c1e2<this[_0x317e4a(0xf7)][_0x317e4a(0x84)]-0x1;_0x58c1e2++)if(this[_0x317e4a(0xf7)][_0x58c1e2]<=_0xc8b148&&_0xc8b148<=this[_0x317e4a(0xf7)][_0x58c1e2+0x1]){let _0x4027c0=(_0xc8b148-this['cumulativeLength'][_0x58c1e2])/this[_0x317e4a(0xfe)][_0x58c1e2],_0x69d137=this['points'][_0x58c1e2],_0x242580=this[_0x317e4a(0xa4)][_0x58c1e2+0x1],_0x45c930=(0x1-_0x4027c0)*_0x69d137[0x0]+_0x4027c0*_0x242580[0x0],_0x5b72ad=(0x1-_0x4027c0)*_0x69d137[0x1]+_0x4027c0*_0x242580[0x1],_0x5c8794=(0x1-_0x4027c0)*_0x69d137[0x2]+_0x4027c0*_0x242580[0x2];return[_0x45c930,_0x5b72ad,_0x5c8794];}return[...this[_0x317e4a(0xa4)][this[_0x317e4a(0xa4)][_0x317e4a(0x84)]-0x1]];}},_={'pointsToIges':function(_0x4720e3,_0x1bf519={}){const _0x2b5470=a0_0x1afce0;let _0x560004={'units':'MM','filename':'points.iges','author':_0x2b5470(0x91),'organization':_0x2b5470(0xe4),'asPolyline':!0x1,..._0x1bf519};if(!Array[_0x2b5470(0xb0)](_0x4720e3)||_0x4720e3['length']===0x0)throw new Error(_0x2b5470(0xbe));let _0x3f54a9=_0x4720e3[_0x2b5470(0xa6)](_0x453288=>{const _0x135dfa=_0x2b5470;if(!Array[_0x135dfa(0xb0)](_0x453288)||_0x453288[_0x135dfa(0x84)]<0x2)throw new Error(_0x135dfa(0xe0));return[_0x453288[0x0]||0x0,_0x453288[0x1]||0x0,_0x453288[0x2]||0x0];}),_0xeb45df='',_0x51a20b='',_0xf3ab15='',_0x2d582e='',_0x4930cb=0x0,_0x3d3a13=0x1,_0x50ba1a=0x1,_0x2a6acc=new Date()['toISOString']()['slice'](0x0,0x13)[_0x2b5470(0xbb)](/[-:]/g,'')[_0x2b5470(0xbb)]('T','.');if(_0x51a20b+=this['formatGlobalLine'](_0x2b5470(0xc6)+_0x560004['filename']+_0x2b5470(0xbf)+_0x560004[_0x2b5470(0x101)]+','),_0x51a20b+=this[_0x2b5470(0x8e)](_0x2b5470(0x93)+_0x560004[_0x2b5470(0xf5)]+_0x2b5470(0x9b)+_0x560004[_0x2b5470(0x106)]+','),_0x51a20b+=this[_0x2b5470(0x8e)](_0x2b5470(0xe2)+_0x560004['units'][_0x2b5470(0x103)]()+_0x2b5470(0xf3)+_0x2a6acc+','),_0x51a20b+=this[_0x2b5470(0x8e)](_0x2b5470(0x8a)+_0x560004['author']+_0x2b5470(0x9f)+_0x560004['organization']+_0x2b5470(0xc5)),_0x51a20b+=this[_0x2b5470(0x8e)](_0x2b5470(0xf1)+_0x2a6acc+',;'),_0x560004['asPolyline']&&_0x3f54a9[_0x2b5470(0x84)]>0x1){_0x4930cb++,_0xf3ab15+=this['formatDirectoryLine'](0x6a,_0x3d3a13,0x0,0x0,0x0,0x0,0x0,0x0,_0x50ba1a),_0xf3ab15+=this[_0x2b5470(0xb7)](0x6a,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x50ba1a+0x1),_0x50ba1a+=0x2;let _0x126d80='106,'+(_0x3f54a9['length']-0x1);for(let _0x3b0e24=0x0;_0x3b0e24<_0x3f54a9['length'];_0x3b0e24++){let _0x2b8b3c=_0x3f54a9[_0x3b0e24];_0x126d80+=','+this['formatNumber'](_0x2b8b3c[0x0])+','+this['formatNumber'](_0x2b8b3c[0x1])+','+this['formatNumber'](_0x2b8b3c[0x2]);}_0x126d80+=';',_0x2d582e+=this['formatParameterLine'](_0x126d80,_0x3d3a13),_0x3d3a13+=Math[_0x2b5470(0xde)](_0x126d80[_0x2b5470(0x84)]/0x40);}else for(let _0x32f183=0x0;_0x32f183<_0x3f54a9[_0x2b5470(0x84)];_0x32f183++){_0x4930cb++;let _0x1e3ff9=_0x3f54a9[_0x32f183];_0xf3ab15+=this['formatDirectoryLine'](0x74,_0x3d3a13,0x0,0x0,0x0,0x0,0x0,0x0,_0x50ba1a),_0xf3ab15+=this[_0x2b5470(0xb7)](0x74,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x50ba1a+0x1),_0x50ba1a+=0x2;let _0x44cbe5='116,'+this['formatNumber'](_0x1e3ff9[0x0])+','+this[_0x2b5470(0xf0)](_0x1e3ff9[0x1])+','+this['formatNumber'](_0x1e3ff9[0x2])+',0.0;';_0x2d582e+=this[_0x2b5470(0x82)](_0x44cbe5,_0x3d3a13),_0x3d3a13+=Math[_0x2b5470(0xde)](_0x44cbe5['length']/0x40);}let _0x5750fb=this['formatSection'](_0x2b5470(0xa5),[_0x2b5470(0xd2),_0x2b5470(0x99)]),_0x2c62d4=this[_0x2b5470(0xc2)](_0x5750fb[_0x2b5470(0xfd)]('\x0a')['length']-0x1,_0x51a20b['split']('\x0a')[_0x2b5470(0x84)]-0x1,_0xf3ab15[_0x2b5470(0xfd)]('\x0a')[_0x2b5470(0x84)]-0x1,_0x2d582e[_0x2b5470(0xfd)]('\x0a')[_0x2b5470(0x84)]-0x1);return _0x5750fb+_0x51a20b+_0xf3ab15+_0x2d582e+_0x2c62d4;},'formatNumber':function(_0x4fcb90){const _0x586ee7=a0_0x1afce0;return Number[_0x586ee7(0x107)](_0x4fcb90)?_0x4fcb90['toString']():Math[_0x586ee7(0xcb)](_0x4fcb90)<0.001||Math[_0x586ee7(0xcb)](_0x4fcb90)>0xf4240?_0x4fcb90[_0x586ee7(0x81)](0x6):_0x4fcb90[_0x586ee7(0xf4)](0x6)['replace'](/\.?0+$/,'');},'formatGlobalLine':function(_0xdd3823){const _0x26a18b=a0_0x1afce0;let _0x2e08f6=(this[_0x26a18b(0x8e)][_0x26a18b(0xf2)]||0x0)+0x1;return this['formatGlobalLine'][_0x26a18b(0xf2)]=_0x2e08f6,_0xdd3823[_0x26a18b(0xd0)](0x48)+('G'+_0x2e08f6['toString']()['padStart'](0x7)+'\x0a');},'formatDirectoryLine':function(_0x2b5c30,_0x14172e,_0x2d06b4,_0x1bc943,_0x595bca,_0x56557f,_0x182d98,_0x2e8ac4,_0x3a6dfb){const _0x5699df=a0_0x1afce0;return[_0x2b5c30[_0x5699df(0xfa)]()['padStart'](0x8),_0x14172e[_0x5699df(0xfa)]()[_0x5699df(0x8b)](0x8),_0x2d06b4[_0x5699df(0xfa)]()['padStart'](0x8),_0x1bc943['toString']()[_0x5699df(0x8b)](0x8),_0x595bca['toString']()[_0x5699df(0x8b)](0x8),_0x56557f[_0x5699df(0xfa)]()['padStart'](0x8),_0x182d98[_0x5699df(0xfa)]()[_0x5699df(0x8b)](0x8),_0x2e8ac4[_0x5699df(0xfa)]()[_0x5699df(0x8b)](0x8)]['join']('')+('D'+_0x3a6dfb[_0x5699df(0xfa)]()[_0x5699df(0x8b)](0x7)+'\x0a');},'formatParameterLine':function(_0x5cb60a,_0x426de){const _0x2a22f0=a0_0x1afce0;let _0x2fa0cf='',_0x390ebc=_0x426de;for(let _0x2b2529=0x0;_0x2b2529<_0x5cb60a[_0x2a22f0(0x84)];_0x2b2529+=0x40){let _0x18160c=_0x5cb60a[_0x2a22f0(0x100)](_0x2b2529,0x40);_0x2fa0cf+=_0x18160c[_0x2a22f0(0xd0)](0x40)+('\x20'+_0x390ebc[_0x2a22f0(0xfa)]()[_0x2a22f0(0x8b)](0x7)+'P'+_0x390ebc[_0x2a22f0(0xfa)]()[_0x2a22f0(0x8b)](0x7)+'\x0a'),_0x390ebc++;}return _0x2fa0cf;},'formatSection':function(_0x1b8a95,_0x29a897){const _0x3ea862=a0_0x1afce0;return _0x29a897[_0x3ea862(0xa6)]((_0x249c0e,_0x1ccd63)=>_0x249c0e+'\x0a')['join']('');},'formatTerminateSection':function(_0xb509c1,_0x55bf24,_0x39ba00,_0x549286){const _0x522b4d=a0_0x1afce0;return['S'+_0xb509c1[_0x522b4d(0xfa)]()[_0x522b4d(0x8b)](0x7),'G'+_0x55bf24[_0x522b4d(0xfa)]()[_0x522b4d(0x8b)](0x7),'D'+_0x39ba00[_0x522b4d(0xfa)]()[_0x522b4d(0x8b)](0x7),'P'+_0x549286[_0x522b4d(0xfa)]()[_0x522b4d(0x8b)](0x7)][_0x522b4d(0xe7)]('')[_0x522b4d(0xd0)](0x48)+_0x522b4d(0xb5);},'nurbsToIges':function(_0x4292c0,_0x570768={}){const _0x1163f8=a0_0x1afce0;let _0xa332d={'units':'MM','filename':'nurbs.iges','author':'js3d','organization':'Generated','degree':0x3,'weights':null,'knotVector':null,..._0x570768};if(!Array['isArray'](_0x4292c0)||_0x4292c0[_0x1163f8(0x84)]===0x0)throw new Error(_0x1163f8(0xc4));if(_0x4292c0[_0x1163f8(0x84)]<_0xa332d['degree']+0x1)throw new Error(_0x1163f8(0xb4)+(_0xa332d['degree']+0x1)+_0x1163f8(0xd5)+_0xa332d[_0x1163f8(0xc8)]+_0x1163f8(0xd9));let _0x21a50e=_0x4292c0[_0x1163f8(0xa6)](_0x595993=>{const _0x4e6295=_0x1163f8;if(!Array[_0x4e6295(0xb0)](_0x595993)||_0x595993['length']<0x2)throw new Error(_0x4e6295(0xca));return[_0x595993[0x0]||0x0,_0x595993[0x1]||0x0,_0x595993[0x2]||0x0];}),_0x2b4f9f=_0x21a50e[_0x1163f8(0x84)],_0x3b6184=_0xa332d[_0x1163f8(0xe3)]||new Array(_0x2b4f9f)[_0x1163f8(0xdd)](0x1);if(_0x3b6184['length']!==_0x2b4f9f)throw new Error('Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length');let _0x1312fb=_0xa332d[_0x1163f8(0x85)];if(!_0x1312fb){let _0x51f253=_0x2b4f9f+_0xa332d['degree']+0x1;_0x1312fb=[];let _0x2d52a6=_0x2b4f9f-0x1,_0x2d45ab=_0xa332d['degree'];for(let _0x23d5ba=0x0;_0x23d5ba<=_0x2d45ab;_0x23d5ba++)_0x1312fb[_0x1163f8(0xdf)](0x0);for(let _0x22f37b=0x1;_0x22f37b<_0x2d52a6-_0x2d45ab+0x1;_0x22f37b++)_0x1312fb['push'](_0x22f37b/(_0x2d52a6-_0x2d45ab+0x1));for(let _0x17c2b6=0x0;_0x17c2b6<=_0x2d45ab;_0x17c2b6++)_0x1312fb['push'](0x1);}if(_0x1312fb[_0x1163f8(0x84)]!==_0x2b4f9f+_0xa332d['degree']+0x1)throw new Error(_0x1163f8(0xc0)+(_0x2b4f9f+_0xa332d[_0x1163f8(0xc8)]+0x1));let _0x1fd870='',_0x5ca746='',_0x16a325='',_0xc4e4a4=0x1,_0x198276=0x1,_0x341d64=new Date()[_0x1163f8(0x98)]()[_0x1163f8(0xd8)](0x0,0x13)['replace'](/[-:]/g,'')[_0x1163f8(0xbb)]('T','.');_0x1fd870+=this['formatGlobalLine']('1H,,1H;,4H'+_0xa332d['filename']+_0x1163f8(0xbf)+_0xa332d[_0x1163f8(0x101)]+','),_0x1fd870+=this['formatGlobalLine'](_0x1163f8(0x93)+_0xa332d['organization']+_0x1163f8(0x9b)+_0xa332d[_0x1163f8(0x106)]+','),_0x1fd870+=this[_0x1163f8(0x8e)](_0x1163f8(0xe2)+_0xa332d[_0x1163f8(0x94)][_0x1163f8(0x103)]()+_0x1163f8(0xf3)+_0x341d64+','),_0x1fd870+=this[_0x1163f8(0x8e)]('1.E-06,100.0,7H'+_0xa332d['author']+_0x1163f8(0x9f)+_0xa332d[_0x1163f8(0xf5)]+',11,0,'),_0x1fd870+=this[_0x1163f8(0x8e)](_0x1163f8(0xf1)+_0x341d64+',;'),_0x5ca746+=this[_0x1163f8(0xb7)](0x7e,_0xc4e4a4,0x0,0x0,0x0,0x0,0x0,0x0,_0x198276),_0x5ca746+=this[_0x1163f8(0xb7)](0x7e,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x198276+0x1),_0x198276+=0x2;let _0x5e8896=_0x2b4f9f-0x1,_0x10911e=_0xa332d['degree'],_0xc2ea2b=_0x1163f8(0xa3)+_0x5e8896+','+_0x10911e+_0x1163f8(0x8d);for(let _0x2bf7a6=0x0;_0x2bf7a6<_0x1312fb[_0x1163f8(0x84)];_0x2bf7a6++)_0xc2ea2b+=','+this[_0x1163f8(0xf0)](_0x1312fb[_0x2bf7a6]);for(let _0x287bc6=0x0;_0x287bc6<_0x3b6184['length'];_0x287bc6++)_0xc2ea2b+=','+this['formatNumber'](_0x3b6184[_0x287bc6]);for(let _0x53dcf8=0x0;_0x53dcf8<0x3;_0x53dcf8++)for(let _0x1c0b13=0x0;_0x1c0b13<_0x21a50e[_0x1163f8(0x84)];_0x1c0b13++)_0xc2ea2b+=','+this[_0x1163f8(0xf0)](_0x21a50e[_0x1c0b13][_0x53dcf8]);_0xc2ea2b+=','+this['formatNumber'](_0x1312fb[0x0])+','+this['formatNumber'](_0x1312fb[_0x1312fb[_0x1163f8(0x84)]-0x1]),_0xc2ea2b+=_0x1163f8(0xf6),_0xc2ea2b+=';',_0x16a325+=this[_0x1163f8(0x82)](_0xc2ea2b,_0xc4e4a4),_0xc4e4a4+=Math[_0x1163f8(0xde)](_0xc2ea2b[_0x1163f8(0x84)]/0x40);let _0x3f78a5=this['formatSection']('START',[_0x1163f8(0xd2),_0x1163f8(0xb1)]),_0x5aacf6=this[_0x1163f8(0xc2)](_0x3f78a5[_0x1163f8(0xfd)]('\x0a')[_0x1163f8(0x84)]-0x1,_0x1fd870['split']('\x0a')[_0x1163f8(0x84)]-0x1,_0x5ca746[_0x1163f8(0xfd)]('\x0a')['length']-0x1,_0x16a325[_0x1163f8(0xfd)]('\x0a')[_0x1163f8(0x84)]-0x1);return _0x3f78a5+_0x1fd870+_0x5ca746+_0x16a325+_0x5aacf6;},'geometryToIges':function(_0x3bdf59,_0x251043={}){const _0x3af77c=a0_0x1afce0;let _0x4be1ea={'units':'MM','filename':_0x3af77c(0xc1),'author':'js3d','organization':_0x3af77c(0xe4),..._0x251043};if(!Array[_0x3af77c(0xb0)](_0x3bdf59)||_0x3bdf59[_0x3af77c(0x84)]===0x0)throw new Error(_0x3af77c(0xb6));let _0x383052='',_0x40705e='',_0x136e6b='',_0x5b0470=0x1,_0x3f42b7=0x1,_0x39ca4b=0x0,_0x5c0fb8=new Date()[_0x3af77c(0x98)]()[_0x3af77c(0xd8)](0x0,0x13)[_0x3af77c(0xbb)](/[-:]/g,'')['replace']('T','.');_0x383052+=this['formatGlobalLine'](_0x3af77c(0xc6)+_0x4be1ea[_0x3af77c(0x106)]+_0x3af77c(0xbf)+_0x4be1ea[_0x3af77c(0x101)]+','),_0x383052+=this[_0x3af77c(0x8e)](_0x3af77c(0x93)+_0x4be1ea[_0x3af77c(0xf5)]+_0x3af77c(0x9b)+_0x4be1ea[_0x3af77c(0x106)]+','),_0x383052+=this[_0x3af77c(0x8e)](_0x3af77c(0xe2)+_0x4be1ea['units']['toUpperCase']()+_0x3af77c(0xf3)+_0x5c0fb8+','),_0x383052+=this['formatGlobalLine'](_0x3af77c(0x8a)+_0x4be1ea['author']+_0x3af77c(0x9f)+_0x4be1ea[_0x3af77c(0xf5)]+_0x3af77c(0xc5)),_0x383052+=this[_0x3af77c(0x8e)](_0x3af77c(0xf1)+_0x5c0fb8+',;');for(let _0x40c00d of _0x3bdf59){if(!_0x40c00d||typeof _0x40c00d!='object'||!_0x40c00d[_0x3af77c(0xa9)]||!_0x40c00d[_0x3af77c(0x97)])throw new Error(_0x3af77c(0xd1));let _0xa7184c=_0x40c00d[_0x3af77c(0xa9)][_0x3af77c(0x105)](),_0x5bb5e8=_0x40c00d[_0x3af77c(0x97)][_0x3af77c(0xa6)](_0x2767a4=>{const _0x552628=_0x3af77c;if(!Array[_0x552628(0xb0)](_0x2767a4)||_0x2767a4[_0x552628(0x84)]<0x2)throw new Error(_0x552628(0xe0));return[_0x2767a4[0x0]||0x0,_0x2767a4[0x1]||0x0,_0x2767a4[0x2]||0x0];});if(_0x5bb5e8['length']!==0x0)switch(_0xa7184c){case _0x3af77c(0xa4):for(let _0x389e6c of _0x5bb5e8){_0x39ca4b++,_0x40705e+=this[_0x3af77c(0xb7)](0x74,_0x5b0470,0x0,0x0,0x0,0x0,0x0,0x0,_0x3f42b7),_0x40705e+=this[_0x3af77c(0xb7)](0x74,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x3f42b7+0x1),_0x3f42b7+=0x2;let _0x19b288=_0x3af77c(0xdc)+this[_0x3af77c(0xf0)](_0x389e6c[0x0])+','+this[_0x3af77c(0xf0)](_0x389e6c[0x1])+','+this[_0x3af77c(0xf0)](_0x389e6c[0x2])+',0.0;';_0x136e6b+=this['formatParameterLine'](_0x19b288,_0x5b0470),_0x5b0470+=Math[_0x3af77c(0xde)](_0x19b288[_0x3af77c(0x84)]/0x40);}break;case'polyline':if(_0x5bb5e8['length']>0x1){_0x39ca4b++,_0x40705e+=this[_0x3af77c(0xb7)](0x6a,_0x5b0470,0x0,0x0,0x0,0x0,0x0,0x0,_0x3f42b7),_0x40705e+=this[_0x3af77c(0xb7)](0x6a,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x3f42b7+0x1),_0x3f42b7+=0x2;let _0x16d1de=_0x3af77c(0xea)+(_0x5bb5e8['length']-0x1);for(let _0x328ad6 of _0x5bb5e8)_0x16d1de+=','+this['formatNumber'](_0x328ad6[0x0])+','+this[_0x3af77c(0xf0)](_0x328ad6[0x1])+','+this[_0x3af77c(0xf0)](_0x328ad6[0x2]);_0x16d1de+=';',_0x136e6b+=this[_0x3af77c(0x82)](_0x16d1de,_0x5b0470),_0x5b0470+=Math['ceil'](_0x16d1de[_0x3af77c(0x84)]/0x40);}break;case'nurbs':let _0x5b46b6=_0x40c00d[_0x3af77c(0xc8)]||0x3,_0xb7e0d0=_0x5bb5e8[_0x3af77c(0x84)];if(_0xb7e0d0<_0x5b46b6+0x1){console[_0x3af77c(0xc7)](_0x3af77c(0x86)+(_0x5b46b6+0x1)+_0x3af77c(0x8f)+_0x5b46b6);continue;}let _0x573d77=_0x40c00d[_0x3af77c(0xe3)]||new Array(_0xb7e0d0)['fill'](0x1);if(_0x573d77[_0x3af77c(0x84)]!==_0xb7e0d0)throw new Error(_0x3af77c(0x102));let _0x84c464=_0x40c00d[_0x3af77c(0x85)];if(!_0x84c464){let _0x2357d7=_0xb7e0d0-0x1,_0x3b7b26=_0x5b46b6;_0x84c464=[];for(let _0x963c2c=0x0;_0x963c2c<=_0x3b7b26;_0x963c2c++)_0x84c464['push'](0x0);for(let _0x4c8e7b=0x1;_0x4c8e7b<_0x2357d7-_0x3b7b26+0x1;_0x4c8e7b++)_0x84c464[_0x3af77c(0xdf)](_0x4c8e7b/(_0x2357d7-_0x3b7b26+0x1));for(let _0x86bc6e=0x0;_0x86bc6e<=_0x3b7b26;_0x86bc6e++)_0x84c464[_0x3af77c(0xdf)](0x1);}_0x39ca4b++,_0x40705e+=this[_0x3af77c(0xb7)](0x7e,_0x5b0470,0x0,0x0,0x0,0x0,0x0,0x0,_0x3f42b7),_0x40705e+=this['formatDirectoryLine'](0x7e,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x3f42b7+0x1),_0x3f42b7+=0x2;let _0xdd5e65='126,'+(_0xb7e0d0-0x1)+','+_0x5b46b6+_0x3af77c(0x8d);for(let _0x370d53 of _0x84c464)_0xdd5e65+=','+this[_0x3af77c(0xf0)](_0x370d53);for(let _0x59321a of _0x573d77)_0xdd5e65+=','+this[_0x3af77c(0xf0)](_0x59321a);for(let _0x2a1d33=0x0;_0x2a1d33<0x3;_0x2a1d33++)for(let _0x3a792d of _0x5bb5e8)_0xdd5e65+=','+this['formatNumber'](_0x3a792d[_0x2a1d33]);_0xdd5e65+=','+this['formatNumber'](_0x84c464[0x0])+','+this['formatNumber'](_0x84c464[_0x84c464[_0x3af77c(0x84)]-0x1]),_0xdd5e65+=_0x3af77c(0xf6),_0xdd5e65+=';',_0x136e6b+=this[_0x3af77c(0x82)](_0xdd5e65,_0x5b0470),_0x5b0470+=Math['ceil'](_0xdd5e65[_0x3af77c(0x84)]/0x40);break;default:throw new Error(_0x3af77c(0xa7)+_0xa7184c+_0x3af77c(0xad));}}if(_0x39ca4b===0x0)throw new Error(_0x3af77c(0xac));let _0x19442d=this[_0x3af77c(0x8c)](_0x3af77c(0xa5),[_0x3af77c(0xd2),'Combined\x20geometry\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202']),_0x225d98=this[_0x3af77c(0xc2)](_0x19442d[_0x3af77c(0xfd)]('\x0a')[_0x3af77c(0x84)]-0x1,_0x383052[_0x3af77c(0xfd)]('\x0a')['length']-0x1,_0x40705e['split']('\x0a')[_0x3af77c(0x84)]-0x1,_0x136e6b['split']('\x0a')[_0x3af77c(0x84)]-0x1);return _0x19442d+_0x383052+_0x40705e+_0x136e6b+_0x225d98;},'readIgesFile':function(_0x29ec7e){const _0x5d030e=a0_0x1afce0;if(!_0x29ec7e||typeof _0x29ec7e!=_0x5d030e(0xab))throw new Error(_0x5d030e(0xf9));let _0xa0708e=[],_0x3a67c0=[],_0x9aea1e=[],_0x27ffd4=_0x29ec7e[_0x5d030e(0xfd)]('\x0a')[_0x5d030e(0xa1)](_0x381213=>_0x381213['trim']()&&_0x381213[_0x5d030e(0xba)](0x48)==='P'),_0x34a556='';for(let _0x47d117 of _0x27ffd4){let _0x52be2d=_0x47d117['substring'](0x0,0x40)[_0x5d030e(0x83)]();_0x34a556+=_0x52be2d,_0x52be2d[_0x5d030e(0xe5)](';')&&(this['processEntity'](_0x34a556,_0xa0708e,_0x3a67c0,_0x9aea1e),_0x34a556='');}return{'lines':_0xa0708e,'points':_0x3a67c0,'nurbs':_0x9aea1e};},'parseIgesNumber':function(_0x11ad9a){const _0x150e74=a0_0x1afce0;if(!_0x11ad9a||typeof _0x11ad9a!=_0x150e74(0xab))return 0x0;let _0x1cee55=_0x11ad9a[_0x150e74(0x83)]()[_0x150e74(0xbb)](/D([+-]?\d+)/g,_0x150e74(0xee)),_0x2a5b1b=parseFloat(_0x1cee55);return isNaN(_0x2a5b1b)?0x0:_0x2a5b1b;},'processEntity':function(_0x445374,_0x29cb9a,_0x5f36f6,_0x443a44){const _0x27779d=a0_0x1afce0;let _0x8eaebe=_0x445374[_0x27779d(0xbb)](';','')[_0x27779d(0xfd)](',')[_0x27779d(0xa6)](_0x1f9770=>_0x1f9770[_0x27779d(0x83)]());if(_0x8eaebe[_0x27779d(0x84)]===0x0)return;switch(parseInt(_0x8eaebe[0x0])){case 0x74:this['processPointEntity'](_0x8eaebe,_0x5f36f6);break;case 0x6a:this[_0x27779d(0xc9)](_0x8eaebe,_0x29cb9a);break;case 0x7e:this['processNurbsEntity'](_0x8eaebe,_0x443a44);break;case 0x6e:this['processLineEntity'](_0x8eaebe,_0x29cb9a);break;default:break;}},'processPointEntity':function(_0x276e4c,_0x30387d){const _0x93bad6=a0_0x1afce0;if(_0x276e4c[_0x93bad6(0x84)]>=0x4){let _0xd4973f=this[_0x93bad6(0xd6)](_0x276e4c[0x1]),_0x55872f=this[_0x93bad6(0xd6)](_0x276e4c[0x2]),_0x33ea02=this[_0x93bad6(0xd6)](_0x276e4c[0x3]);_0x30387d[_0x93bad6(0xdf)]([_0xd4973f,_0x55872f,_0x33ea02]);}},'processPolylineEntity':function(_0x3a661e,_0x47c1a0){const _0x5e065d=a0_0x1afce0;if(_0x3a661e[_0x5e065d(0x84)]<0x2)return;let _0x40c4eb=parseInt(_0x3a661e[0x1]),_0x46b7f4=0x2+(_0x40c4eb+0x1)*0x3;if(_0x3a661e[_0x5e065d(0x84)]<_0x46b7f4)return;let _0xf60602=[];for(let _0x20338c=0x0;_0x20338c<=_0x40c4eb;_0x20338c++){let _0x28895b=0x2+_0x20338c*0x3;if(_0x28895b+0x2<_0x3a661e[_0x5e065d(0x84)]){let _0xa586db=this[_0x5e065d(0xd6)](_0x3a661e[_0x28895b]),_0x42d8eb=this['parseIgesNumber'](_0x3a661e[_0x28895b+0x1]),_0x293a11=this[_0x5e065d(0xd6)](_0x3a661e[_0x28895b+0x2]);_0xf60602[_0x5e065d(0xdf)]([_0xa586db,_0x42d8eb,_0x293a11]);}}_0xf60602[_0x5e065d(0x84)]>0x1&&_0x47c1a0[_0x5e065d(0xdf)](_0xf60602);},'processLineEntity':function(_0x2d3303,_0x2a782e){const _0x108559=a0_0x1afce0;if(_0x2d3303['length']>=0x7){let _0x60b261=this[_0x108559(0xd6)](_0x2d3303[0x1]),_0x1aae78=this[_0x108559(0xd6)](_0x2d3303[0x2]),_0x2ccce8=this[_0x108559(0xd6)](_0x2d3303[0x3]),_0x16bf68=this[_0x108559(0xd6)](_0x2d3303[0x4]),_0x5a5438=this[_0x108559(0xd6)](_0x2d3303[0x5]),_0xf082f0=this['parseIgesNumber'](_0x2d3303[0x6]);_0x2a782e['push']([[_0x60b261,_0x1aae78,_0x2ccce8],[_0x16bf68,_0x5a5438,_0xf082f0]]);}},'processNurbsEntity':function(_0x13e99c,_0x23e782){const _0x1a2f46=a0_0x1afce0;if(_0x13e99c['length']<0x7)return;let _0x43da8f=parseInt(_0x13e99c[0x1]),_0x53c810=parseInt(_0x13e99c[0x2]),_0x181f7d=parseInt(_0x13e99c[0x3]),_0x1897e9=parseInt(_0x13e99c[0x4]),_0x4b6748=parseInt(_0x13e99c[0x5]),_0x205fb9=parseInt(_0x13e99c[0x6]),_0x3d0225=_0x43da8f+0x1,_0x1e391=_0x43da8f+_0x53c810+0x2,_0x470151=0x7,_0x263c00=_0x470151+_0x1e391,_0x463baf=_0x263c00+_0x3d0225+_0x3d0225+_0x3d0225+_0x3d0225+0x2;if(_0x13e99c[_0x1a2f46(0x84)]<_0x463baf+0x3)return;let _0x4d2758=[];for(let _0x7c91a7=0x0;_0x7c91a7<_0x1e391;_0x7c91a7++)_0x4d2758[_0x1a2f46(0xdf)](this[_0x1a2f46(0xd6)](_0x13e99c[_0x470151+_0x7c91a7]));let _0x1125ab=[];for(let _0x519764=0x0;_0x519764<_0x3d0225;_0x519764++)_0x1125ab[_0x1a2f46(0xdf)](this['parseIgesNumber'](_0x13e99c[_0x263c00+_0x519764])||0x1);let _0x2ba667=[],_0x54d5a1=_0x263c00+_0x3d0225,_0x2d9246=_0x54d5a1+_0x3d0225*0x3;if(_0x13e99c['length']>=_0x2d9246+0x5){for(let _0x35366f=0x0;_0x35366f<_0x3d0225;_0x35366f++){let _0x1e307f=_0x54d5a1+_0x35366f*0x3,_0x3c025=this[_0x1a2f46(0xd6)](_0x13e99c[_0x1e307f]),_0x419c40=this['parseIgesNumber'](_0x13e99c[_0x1e307f+0x1]),_0x30508f=this['parseIgesNumber'](_0x13e99c[_0x1e307f+0x2]);_0x2ba667[_0x1a2f46(0xdf)]([_0x3c025,_0x419c40,_0x30508f]);}let _0x2f1ca2=_0x2d9246,_0x14db6c=_0x2f1ca2+0x2,_0x38891e=this[_0x1a2f46(0xd6)](_0x13e99c[_0x2f1ca2]),_0x4c6748=this[_0x1a2f46(0xd6)](_0x13e99c[_0x2f1ca2+0x1])||0x1,_0x238891=[this['parseIgesNumber'](_0x13e99c[_0x14db6c]),this[_0x1a2f46(0xd6)](_0x13e99c[_0x14db6c+0x1]),this[_0x1a2f46(0xd6)](_0x13e99c[_0x14db6c+0x2])],_0x5309b5={'type':'nurbs','degree':_0x53c810,'controlPoints':_0x2ba667,'weights':_0x1125ab,'knotVector':_0x4d2758,'parameterRange':[_0x38891e,_0x4c6748],'properties':{'planar':_0x181f7d===0x1,'closed':_0x1897e9===0x1,'rational':_0x4b6748===0x1,'periodic':_0x205fb9===0x1},'normalVector':_0x238891,'numControlPoints':_0x3d0225,'numKnots':_0x1e391,'upperControlPointIndex':_0x43da8f};_0x23e782[_0x1a2f46(0xdf)](_0x5309b5);}else{let _0x49b48d=_0x263c00+_0x3d0225,_0x49635e=_0x49b48d+_0x3d0225,_0x194907=_0x49635e+_0x3d0225,_0x26e138=_0x194907+_0x3d0225,_0x187568=_0x26e138+0x2;if(_0x13e99c['length']<_0x187568+0x3)return;for(let _0x5ea2ee=0x0;_0x5ea2ee<_0x3d0225;_0x5ea2ee++){let _0x5a1f91=this['parseIgesNumber'](_0x13e99c[_0x49b48d+_0x5ea2ee]),_0xa56ba4=this[_0x1a2f46(0xd6)](_0x13e99c[_0x49635e+_0x5ea2ee]),_0x210e97=this[_0x1a2f46(0xd6)](_0x13e99c[_0x194907+_0x5ea2ee]);_0x2ba667['push']([_0x5a1f91,_0xa56ba4,_0x210e97]);}let _0xca8657=this[_0x1a2f46(0xd6)](_0x13e99c[_0x26e138]),_0x4706cb=this['parseIgesNumber'](_0x13e99c[_0x26e138+0x1])||0x1,_0x4ea68=[this[_0x1a2f46(0xd6)](_0x13e99c[_0x187568]),this[_0x1a2f46(0xd6)](_0x13e99c[_0x187568+0x1]),this[_0x1a2f46(0xd6)](_0x13e99c[_0x187568+0x2])],_0x477a41={'type':'nurbs','degree':_0x53c810,'controlPoints':_0x2ba667,'weights':_0x1125ab,'knotVector':_0x4d2758,'parameterRange':[_0xca8657,_0x4706cb],'properties':{'planar':_0x181f7d===0x1,'closed':_0x1897e9===0x1,'rational':_0x4b6748===0x1,'periodic':_0x205fb9===0x1},'normalVector':_0x4ea68,'numControlPoints':_0x3d0225,'numKnots':_0x1e391,'upperControlPointIndex':_0x43da8f};_0x23e782['push'](_0x477a41);}},'evaluateNurbsCurve':function(_0x22302a,_0x1d1e5a={}){const _0x1a2bca=a0_0x1afce0;let _0x2fcecb={'numPoints':0x32,'parameters':null,..._0x1d1e5a};if(!_0x22302a||_0x22302a['type']!==_0x1a2bca(0xcc))throw new Error(_0x1a2bca(0xe1));let {degree:_0x47cc8d,controlPoints:_0x3736c6,weights:_0x204aa8,knotVector:_0x461cc7,parameterRange:_0x4025d5}=_0x22302a,[_0x14318c,_0x102dc0]=_0x4025d5,_0x11bae5=_0x2fcecb[_0x1a2bca(0xfb)];if(!_0x11bae5){_0x11bae5=[];for(let _0x13a50e=0x0;_0x13a50e<_0x2fcecb[_0x1a2bca(0xfc)];_0x13a50e++){let _0x1bece0=_0x14318c+(_0x102dc0-_0x14318c)*_0x13a50e/(_0x2fcecb['numPoints']-0x1);_0x11bae5[_0x1a2bca(0xdf)](_0x1bece0);}}let _0x3de1b3=[];for(let _0x513436 of _0x11bae5){let _0x37373b=Math[_0x1a2bca(0x89)](_0x14318c,Math['min'](_0x102dc0,_0x513436)),_0x34f710=this[_0x1a2bca(0xb2)](_0x37373b,_0x47cc8d,_0x461cc7),_0x3c3ffe=this['computeBasisFunctions'](_0x34f710,_0x37373b,_0x47cc8d,_0x461cc7),_0x39365d=[0x0,0x0,0x0],_0x2488c3=0x0;for(let _0x1cdcb9=0x0;_0x1cdcb9<=_0x47cc8d;_0x1cdcb9++){let _0x1fc909=_0x34f710-_0x47cc8d+_0x1cdcb9;if(_0x1fc909>=0x0&&_0x1fc909<_0x3736c6['length']){let _0x3ce289=_0x204aa8[_0x1fc909]*_0x3c3ffe[_0x1cdcb9];_0x2488c3+=_0x3ce289,_0x39365d[0x0]+=_0x3736c6[_0x1fc909][0x0]*_0x3ce289,_0x39365d[0x1]+=_0x3736c6[_0x1fc909][0x1]*_0x3ce289,_0x39365d[0x2]+=_0x3736c6[_0x1fc909][0x2]*_0x3ce289;}}_0x2488c3>0x0&&(_0x39365d[0x0]/=_0x2488c3,_0x39365d[0x1]/=_0x2488c3,_0x39365d[0x2]/=_0x2488c3),_0x3de1b3['push'](_0x39365d);}return _0x3de1b3;},'findKnotSpan':function(_0xe23da6,_0x318be0,_0x347455){const _0x51074e=a0_0x1afce0;let _0x51444e=_0x347455[_0x51074e(0x84)]-_0x318be0-0x2;if(_0xe23da6>=_0x347455[_0x51444e+0x1])return _0x51444e;if(_0xe23da6<=_0x347455[_0x318be0])return _0x318be0;let _0x22110d=_0x318be0,_0xd9b78b=_0x51444e+0x1,_0x5f8a2d=Math['floor']((_0x22110d+_0xd9b78b)/0x2);for(;_0xe23da6<_0x347455[_0x5f8a2d]||_0xe23da6>=_0x347455[_0x5f8a2d+0x1];)_0xe23da6<_0x347455[_0x5f8a2d]?_0xd9b78b=_0x5f8a2d:_0x22110d=_0x5f8a2d,_0x5f8a2d=Math[_0x51074e(0x10b)]((_0x22110d+_0xd9b78b)/0x2);return _0x5f8a2d;},'computeBasisFunctions':function(_0x1043e6,_0x555c1f,_0x38b221,_0x1a14c0){let _0x28befb=new Array(_0x38b221+0x1),_0x19ae90=new Array(_0x38b221+0x1),_0x2280cc=new Array(_0x38b221+0x1);_0x28befb[0x0]=0x1;for(let _0x2146d4=0x1;_0x2146d4<=_0x38b221;_0x2146d4++){_0x19ae90[_0x2146d4]=_0x555c1f-_0x1a14c0[_0x1043e6+0x1-_0x2146d4],_0x2280cc[_0x2146d4]=_0x1a14c0[_0x1043e6+_0x2146d4]-_0x555c1f;let _0x5ab16a=0x0;for(let _0xef358a=0x0;_0xef358a<_0x2146d4;_0xef358a++){let _0x535a7d=_0x28befb[_0xef358a]/(_0x2280cc[_0xef358a+0x1]+_0x19ae90[_0x2146d4-_0xef358a]);_0x28befb[_0xef358a]=_0x5ab16a+_0x2280cc[_0xef358a+0x1]*_0x535a7d,_0x5ab16a=_0x19ae90[_0x2146d4-_0xef358a]*_0x535a7d;}_0x28befb[_0x2146d4]=_0x5ab16a;}return _0x28befb;},'simplifyIgesData':function(_0x2b8c7c,_0x12ab3f={}){const _0x178203=a0_0x1afce0;let _0x53bc96={'flattenLines':!0x1,'flattenNurbs':!0x1,'precision':0x6,'includeNurbsMetadata':!0x0,..._0x12ab3f},_0x4a86be={'points':_0x2b8c7c[_0x178203(0xa4)]['map'](_0x45fa76=>_0x45fa76[_0x178203(0xa6)](_0x4bf14e=>parseFloat(_0x4bf14e[_0x178203(0xf4)](_0x53bc96['precision'])))),'lines':_0x2b8c7c[_0x178203(0xe9)]['map'](_0x162d02=>_0x162d02[_0x178203(0xa6)](_0x5127fb=>_0x5127fb[_0x178203(0xa6)](_0x329d5d=>parseFloat(_0x329d5d[_0x178203(0xf4)](_0x53bc96[_0x178203(0xec)]))))),'nurbs':[]};if(_0x2b8c7c[_0x178203(0xcc)]&&_0x2b8c7c[_0x178203(0xcc)][_0x178203(0x84)]>0x0){for(let _0x399ab2 of _0x2b8c7c[_0x178203(0xcc)])if(_0x53bc96['flattenNurbs']){let _0x488e43=_0x399ab2['controlPoints'][_0x178203(0xa6)](_0xfbc79e=>_0xfbc79e[_0x178203(0xa6)](_0x373e3c=>parseFloat(_0x373e3c[_0x178203(0xf4)](_0x53bc96[_0x178203(0xec)]))));_0x4a86be[_0x178203(0xe9)][_0x178203(0xdf)](_0x488e43);}else{let _0x84d229={'type':_0x178203(0xcc),'degree':_0x399ab2[_0x178203(0xc8)],'controlPoints':_0x399ab2[_0x178203(0xcf)]['map'](_0x5211a5=>_0x5211a5[_0x178203(0xa6)](_0x2ea55f=>parseFloat(_0x2ea55f[_0x178203(0xf4)](_0x53bc96[_0x178203(0xec)])))),'weights':_0x399ab2['weights'][_0x178203(0xa6)](_0x3a12b0=>parseFloat(_0x3a12b0[_0x178203(0xf4)](_0x53bc96['precision']))),'knotVector':_0x399ab2[_0x178203(0x85)][_0x178203(0xa6)](_0x19d0c2=>parseFloat(_0x19d0c2[_0x178203(0xf4)](_0x53bc96[_0x178203(0xec)]))),'parameterRange':_0x399ab2[_0x178203(0x9e)][_0x178203(0xa6)](_0x175b14=>parseFloat(_0x175b14[_0x178203(0xf4)](_0x53bc96[_0x178203(0xec)])))};_0x53bc96[_0x178203(0xd4)]&&(_0x84d229[_0x178203(0xff)]=_0x399ab2[_0x178203(0xff)],_0x84d229[_0x178203(0xce)]=_0x399ab2[_0x178203(0xce)][_0x178203(0xa6)](_0x1e7882=>parseFloat(_0x1e7882[_0x178203(0xf4)](_0x53bc96[_0x178203(0xec)]))),_0x84d229[_0x178203(0xbd)]=_0x399ab2[_0x178203(0xbd)],_0x84d229['numKnots']=_0x399ab2['numKnots']),_0x4a86be['nurbs'][_0x178203(0xdf)](_0x84d229);}}if(_0x53bc96[_0x178203(0xcd)]){let _0x27f5a1=[..._0x4a86be['points']];for(let _0x321cb7 of _0x4a86be[_0x178203(0xe9)])_0x27f5a1[_0x178203(0xdf)](..._0x321cb7);_0x4a86be['allPoints']=_0x27f5a1;}return _0x4a86be;}};function a0_0x15f8(){const _0x5dcaae=['findParameterAtPoint','126,','points','START','map','Unknown\x20geometry\x20type:\x20','sqrt','type','acos','string','No\x20valid\x20geometries\x20found\x20to\x20convert','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbs','621552RnrijD','log','isArray','NURBS\x20curve\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','findKnotSpan','out\x20of\x20bounds','At\x20least\x20','T\x20\x20\x20\x20\x20\x201\x0a','Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','formatDirectoryLine','1537732bjyeok','6499128QRmRyP','charAt','replace','totalLength','numControlPoints','Points\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty',',7H','Knot\x20vector\x20length\x20must\x20be\x20','combined.iges','formatTerminateSection','NEGATIVE_INFINITY','Control\x20points\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty',',11,0,','1H,,1H;,4H','warn','degree','processPolylineEntity','Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','abs','nurbs','flattenLines','normalVector','controlPoints','padEnd','Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbs\x22,\x20data:\x20[...]\x20}','Generated\x20by\x20js3d\x20IGES\x20converter\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x201','min','includeNurbsMetadata','\x20control\x20points\x20required\x20for\x20degree\x20','parseIgesNumber','42125FRIhxO','slice','\x20NURBS','bspline','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','116,','fill','ceil','push','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','Invalid\x20NURBS\x20curve\x20object','1.0,1,4H','weights','Generated','endsWith','3DwPylr','join','_gaussJ','lines','106,','dot','precision','137190ECmVSi','E$1','_uniform_knot_spacing','formatNumber','15H','counter',',1,0.01,15H','toFixed','organization',',0.0,0.0,0.0','cumulativeLength','scalarProduct','IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string','toString','parameters','numPoints','split','segmentLengths','properties','substr','author','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','toUpperCase','3641022QrzLqe','toLowerCase','filename','isInteger','cos','sub','50SCfbqn','floor','toExponential','formatParameterLine','trim','length','knotVector','Skipping\x20NURBS:\x20need\x20at\x20least\x20','getFullYear','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','max','1.E-06,100.0,7H','padStart','formatSection',',0,0,1,0','formatGlobalLine','\x20control\x20points\x20for\x20degree\x20','forEach','js3d','5042793PyokFX','11H','units','solve','sin','data','toISOString','Points\x20to\x20IGES\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','from',',32,38,6,38,15,4H','POSITIVE_INFINITY','swapRows','parameterRange',',11H','pow','filter'];a0_0x15f8=function(){return _0x5dcaae;};return a0_0x15f8();}if(new Date()[a0_0x1afce0(0x87)]()>0x7e9)throw new Error('');export{j as Bspline3d,C as Cspline3d,_ as Iges,F as Point3d,D as Polyline3D,H as Utils,w as Vector3d};
|
|
1
|
+
function a0_0x9db0(){const _0xfce07e=['No\x20valid\x20geometries\x20found\x20to\x20convert','_parseIgesNumber','5209824mvPwhI','_processPolylineEntity','move','string','resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201','Auto-generation\x20of\x20knot\x20vectors\x20not\x20fully\x20implemented.\x20Please\x20provide\x20knotsU\x20and\x20knotsV.','geometry.iges',',0,0,1,0,0','135519mTdFDB','_formatNumber','T\x20\x20\x20\x20\x20\x201\x0a','Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbsCurve|nurbsSurface\x22,\x20data:\x20[...]\x20}','Generated\x20by\x20js3d\x20IGES\x20converter\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x201','308','_createPointEntity','degreeV','6NEmjUp','normalizedCosineSpacing','_processLineEntity','fill','push','\x20control\x20points\x20for\x20degree\x20','_createNurbsSurfaceEntity','trim','pow','totalLength','sub','length','_formatParameterLine','findParameterAtPoint','Control\x20points\x202D\x20array\x20is\x20required','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','toFixed','split','uniform_knot_spacing','_toHollerith','_createNurbsCurveEntity','getFullYear','bad\x20knot\x20vector\x20length','min','Need\x20at\x20least\x202\x20points\x20to\x20approximate','1H;','segmentLengths','_createPolylineEntity','map','_formatTerminateSection','_generateGlobalSection','isArray','join','data','4704602CgDYsg','Knots\x20U\x20and\x20V\x20are\x20required\x20for\x20NURBS\x20surface','1662370bqIvUM','20GzbCGP','NURBS\x20surface\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','1000.0','parameterEntry','nurbsSurface','replace','charAt','3752790NTOWie','LiftLab','substring','dot','type','_formatSection','padEnd','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbsCurve,\x20nurbsSurface','342125iiSjHD','cos','IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string','organization','Unknown\x20geometry\x20type:\x20','weights','_processNurbsSurfaceEntity','out\x20of\x20bounds',',0,0,1,0','parameterRangeV','START','degreeU','units','scalarProduct','Skipping\x20NURBS\x20surface:\x20insufficient\x20control\x20points','Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','abs','multiplyTranspose','warn','toString','isInteger','Combined\x20geometry\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','128,','polyline',',0.0,0.0,0.0','_processNurbsCurveEntity','floor','toISOString','author','lineCount','solve','_approximate_knot_vector','js3d\x201.0','9VgXmPc','from','lastIndexOf','points','NEGATIVE_INFINITY','0.01','1.0','vectorMultiplyTranspose','126,','swapRows','_chord_length_parameterization','object','_gaussJ','E$1','controlPoints','acos','Insufficient\x20control\x20points\x20for\x20specified\x20degrees','degree','js3d','padStart','394122INcvtY','116,','nurbsCurve','directoryEntry','Skipping\x20NURBS\x20curve:\x20need\x20at\x20least\x20','_formatDirectoryLine','filename','knotsU','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','sqrt','slice','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','1H,','endsWith','log','_processEntity','knots','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','linspace','solveLinearSystem','_basis_function','cumulativeLength'];a0_0x9db0=function(){return _0xfce07e;};return a0_0x9db0();}const a0_0x464df3=a0_0x23cc;function a0_0x23cc(_0x46c91a,_0x35ac96){const _0x9db0a2=a0_0x9db0();return a0_0x23cc=function(_0x23ccf8,_0x20306d){_0x23ccf8=_0x23ccf8-0x1db;let _0x4c7b95=_0x9db0a2[_0x23ccf8];return _0x4c7b95;},a0_0x23cc(_0x46c91a,_0x35ac96);}(function(_0x50e4c1,_0x398587){const _0x5b1f8e=a0_0x23cc,_0x560472=_0x50e4c1();while(!![]){try{const _0x32da8d=-parseInt(_0x5b1f8e(0x212))/0x1+-parseInt(_0x5b1f8e(0x247))/0x2+-parseInt(_0x5b1f8e(0x268))/0x3*(-parseInt(_0x5b1f8e(0x203))/0x4)+-parseInt(_0x5b1f8e(0x202))/0x5*(-parseInt(_0x5b1f8e(0x1de))/0x6)+-parseInt(_0x5b1f8e(0x200))/0x7+parseInt(_0x5b1f8e(0x260))/0x8+-parseInt(_0x5b1f8e(0x233))/0x9*(-parseInt(_0x5b1f8e(0x20a))/0xa);if(_0x32da8d===_0x398587)break;else _0x560472['push'](_0x560472['shift']());}catch(_0xd7618e){_0x560472['push'](_0x560472['shift']());}}}(a0_0x9db0,0x5b346));var w={'length':function(_0x55053b){return Math['sqrt'](_0x55053b[0x0]**0x2+_0x55053b[0x1]**0x2+_0x55053b[0x2]**0x2);},'scalarProduct':function(_0x1367d5,_0x35943c){return[_0x1367d5[0x0]*_0x35943c,_0x1367d5[0x1]*_0x35943c,_0x1367d5[0x2]*_0x35943c];},'dot':function(_0x3778a0,_0x387b85){return _0x3778a0[0x0]*_0x387b85[0x0]+_0x3778a0[0x1]*_0x387b85[0x1]+_0x3778a0[0x2]*_0x387b85[0x2];},'angle':function(_0x2888d5,_0x50b94b,_0x5e9c2a=!0x1){const _0x1adb37=a0_0x23cc;let _0x115078=this[_0x1adb37(0x20d)](_0x2888d5,_0x50b94b)/(this[_0x1adb37(0x1e9)](_0x2888d5)*this[_0x1adb37(0x1e9)](_0x50b94b)),_0x1bed3c=Math[_0x1adb37(0x242)](_0x115078);return _0x5e9c2a&&_0x1bed3c>Math['PI']/0x2&&(_0x1bed3c=Math['PI']-_0x1bed3c),_0x1bed3c;},'sub':function(_0x431bb1,_0x45486a){return[_0x431bb1[0x0]-_0x45486a[0x0],_0x431bb1[0x1]-_0x45486a[0x1],_0x431bb1[0x2]-_0x45486a[0x2]];},'add':function(_0xbcf606,_0xc0c32a){return[_0xbcf606[0x0]+_0xc0c32a[0x0],_0xbcf606[0x1]+_0xc0c32a[0x1],_0xbcf606[0x2]+_0xc0c32a[0x2]];},'rotate':function(_0x3cf9c9,_0x441864,_0x5d98c7){const _0x580251=a0_0x23cc;let _0x4d6a8c=_0x5d98c7*Math['PI']/0xb4,_0x3fcf06=Math[_0x580251(0x213)](_0x4d6a8c),_0x5edd45=Math['sin'](_0x4d6a8c),_0x31e4c4=_0x3cf9c9[0x0],_0x35be97=_0x3cf9c9[0x1],_0x2a23a2=_0x3cf9c9[0x2],_0x148f57=_0x441864[0x0],_0x4421eb=_0x441864[0x1],_0x3beb=_0x441864[0x2],_0x279a07=_0x148f57*_0x31e4c4+_0x4421eb*_0x35be97+_0x3beb*_0x2a23a2,_0xa242f0=_0x148f57*_0x279a07*(0x1-_0x3fcf06)+_0x31e4c4*_0x3fcf06+(-_0x3beb*_0x35be97+_0x4421eb*_0x2a23a2)*_0x5edd45,_0x4f0960=_0x4421eb*_0x279a07*(0x1-_0x3fcf06)+_0x35be97*_0x3fcf06+(_0x3beb*_0x31e4c4-_0x148f57*_0x2a23a2)*_0x5edd45,_0x1e4676=_0x3beb*_0x279a07*(0x1-_0x3fcf06)+_0x2a23a2*_0x3fcf06+(-_0x4421eb*_0x31e4c4+_0x148f57*_0x35be97)*_0x5edd45;return[_0xa242f0,_0x4f0960,_0x1e4676];},'fromTwoPoints':function(_0x262214,_0x4d70cb){return[_0x4d70cb[0x0]-_0x262214[0x0],_0x4d70cb[0x1]-_0x262214[0x1],_0x4d70cb[0x2]-_0x262214[0x2]];},'normalized':function(_0x52725f){const _0x41cd02=a0_0x23cc;return w['scalarProduct'](_0x52725f,0x1/w[_0x41cd02(0x1e9)](_0x52725f));},'cross':function(_0x303a06,_0x44fea4){return[_0x303a06[0x1]*_0x44fea4[0x2]-_0x303a06[0x2]*_0x44fea4[0x1],_0x303a06[0x2]*_0x44fea4[0x0]-_0x303a06[0x0]*_0x44fea4[0x2],_0x303a06[0x0]*_0x44fea4[0x1]-_0x303a06[0x1]*_0x44fea4[0x0]];}},D={'distance':function(_0x30b7a4,_0x2c73ab){return w['length'](w['sub'](_0x2c73ab,_0x30b7a4));},'move':function(_0x10e6c5,_0x26f88d){return w['add'](_0x10e6c5,_0x26f88d);},'scale':function(_0x43abad,_0x41ef66,_0x2ac07b){const _0x2698cf=a0_0x23cc;return _0x2ac07b!=null&&(_0x43abad=this[_0x2698cf(0x262)](_0x43abad,w[_0x2698cf(0x21f)](_0x2ac07b,-0x1))),_0x43abad=w['scalarProduct'](_0x43abad,_0x41ef66),_0x2ac07b!=null&&(_0x43abad=this['move'](_0x43abad,_0x2ac07b)),_0x43abad;},'rotate':function(_0x36eb83,_0x33526d,_0x575cac,_0x5c69fb){const _0x220d51=a0_0x23cc;let _0x374dcb=_0x575cac*Math['PI']/0xb4,_0x321878=Math[_0x220d51(0x213)](_0x374dcb),_0x31343e=Math['sin'](_0x374dcb),_0x1c6627=_0x36eb83[0x0],_0x4eb813=_0x36eb83[0x1],_0x196784=_0x36eb83[0x2];_0x5c69fb!=null&&(_0x1c6627=_0x1c6627-_0x5c69fb[0x0],_0x4eb813=_0x4eb813-_0x5c69fb[0x1],_0x196784=_0x196784-_0x5c69fb[0x2]);let _0x2dbf7f=_0x33526d[0x0],_0x13c80f=_0x33526d[0x1],_0x4f9b96=_0x33526d[0x2],_0xa1ada6=_0x2dbf7f*_0x1c6627+_0x13c80f*_0x4eb813+_0x4f9b96*_0x196784,_0x590d41=_0x2dbf7f*_0xa1ada6*(0x1-_0x321878)+_0x1c6627*_0x321878+(-_0x4f9b96*_0x4eb813+_0x13c80f*_0x196784)*_0x31343e,_0x4a1058=_0x13c80f*_0xa1ada6*(0x1-_0x321878)+_0x4eb813*_0x321878+(_0x4f9b96*_0x1c6627-_0x2dbf7f*_0x196784)*_0x31343e,_0x20de6e=_0x4f9b96*_0xa1ada6*(0x1-_0x321878)+_0x196784*_0x321878+(-_0x13c80f*_0x1c6627+_0x2dbf7f*_0x4eb813)*_0x31343e,_0x3d3461=[_0x590d41,_0x4a1058,_0x20de6e];return _0x5c69fb!=null&&(_0x3d3461[0x0]=_0x3d3461[0x0]+_0x5c69fb[0x0],_0x3d3461[0x1]=_0x3d3461[0x1]+_0x5c69fb[0x1],_0x3d3461[0x2]=_0x3d3461[0x2]+_0x5c69fb[0x2]),_0x3d3461;},'project':function(_0x3c56df,_0x1e7f83,_0x194472){const _0xf0e850=a0_0x23cc;let _0x550403=w[_0xf0e850(0x1e8)](_0x3c56df,_0x194472),_0x37b398=w[_0xf0e850(0x20d)](_0x550403,_0x1e7f83)/w['length'](_0x1e7f83),_0x5a7300=w[_0xf0e850(0x21f)](_0x1e7f83,0x1/w[_0xf0e850(0x1e9)](_0x1e7f83));return w[_0xf0e850(0x1e8)](_0x3c56df,w[_0xf0e850(0x21f)](_0x5a7300,_0x37b398));}},k={'linspace':function(_0x4a12fc,_0x476b1b,_0x3abd4f,_0x11c236=!0x0){let _0x3d7024=_0x11c236?_0x3abd4f-0x1:_0x3abd4f,_0x12286a=(_0x476b1b-_0x4a12fc)/_0x3d7024;return Array['from']({'length':_0x3abd4f},(_0x5546e1,_0x232f89)=>_0x4a12fc+_0x12286a*_0x232f89);},'cosineSpacing':function(_0x8f1bf3,_0x2e21ec,_0x590140){const _0x31840a=a0_0x23cc;let _0x7de6cc=Array[_0x31840a(0x234)]({'length':_0x590140},(_0x4f02a7,_0x3a09e7)=>_0x3a09e7/(_0x590140-0x1))[_0x31840a(0x1fa)](_0x5245d3=>(0x1-Math[_0x31840a(0x213)](_0x5245d3*Math['PI']))/0x2),_0x52ecc3=[];for(let _0x35e505=0x0;_0x35e505<_0x7de6cc[_0x31840a(0x1e9)];_0x35e505++){let _0x13ed2f=_0x7de6cc[_0x35e505];_0x52ecc3['push'](mapToSpace(_0x13ed2f,[0x0,0x1],[_0x8f1bf3,_0x2e21ec]));}return _0x52ecc3;},'normalizedCosineSpacing':function(_0x28df9a){const _0x1d4fe7=a0_0x23cc;return Array[_0x1d4fe7(0x234)]({'length':_0x28df9a},(_0x4e8066,_0x29edda)=>_0x29edda/(_0x28df9a-0x1))[_0x1d4fe7(0x1fa)](_0x5e9bc8=>(0x1-Math['cos'](_0x5e9bc8*Math['PI']))/0x2);},'mapToSpace':function(_0x20276f,_0x3d8df8,_0x17d60b){return _0x17d60b[0x1]+(_0x20276f-_0x3d8df8[0x1])*(_0x17d60b[0x0]-_0x17d60b[0x1])/(_0x3d8df8[0x0]-_0x3d8df8[0x1]);},'solveLinearSystem':function(_0x5aa583,_0x116c3b){const _0x39e6ca=a0_0x23cc;let _0x4dc2d1=_0x5aa583[_0x39e6ca(0x1e9)],_0x357c60=[];for(let _0x2012f6=0x0;_0x2012f6<_0x4dc2d1;_0x2012f6++)_0x357c60[_0x2012f6]=_0x5aa583[_0x2012f6][_0x39e6ca(0x251)](),_0x357c60[_0x2012f6]['push'](_0x116c3b[_0x2012f6]);for(let _0x476787=0x0;_0x476787<_0x4dc2d1;_0x476787++){let _0x8afd5c=_0x476787;for(let _0x490b1f=_0x476787+0x1;_0x490b1f<_0x4dc2d1;_0x490b1f++)Math['abs'](_0x357c60[_0x490b1f][_0x476787])>Math[_0x39e6ca(0x222)](_0x357c60[_0x8afd5c][_0x476787])&&(_0x8afd5c=_0x490b1f);[_0x357c60[_0x476787],_0x357c60[_0x8afd5c]]=[_0x357c60[_0x8afd5c],_0x357c60[_0x476787]];for(let _0x2efe04=_0x476787+0x1;_0x2efe04<_0x4dc2d1;_0x2efe04++){let _0x2532f3=_0x357c60[_0x2efe04][_0x476787]/_0x357c60[_0x476787][_0x476787];for(let _0x2274ea=_0x476787;_0x2274ea<=_0x4dc2d1;_0x2274ea++)_0x357c60[_0x2efe04][_0x2274ea]-=_0x2532f3*_0x357c60[_0x476787][_0x2274ea];}}let _0x3b03aa=new Array(_0x4dc2d1);for(let _0x5abf4a=_0x4dc2d1-0x1;_0x5abf4a>=0x0;_0x5abf4a--){_0x3b03aa[_0x5abf4a]=_0x357c60[_0x5abf4a][_0x4dc2d1];for(let _0x4a0e47=_0x5abf4a+0x1;_0x4a0e47<_0x4dc2d1;_0x4a0e47++)_0x3b03aa[_0x5abf4a]-=_0x357c60[_0x5abf4a][_0x4a0e47]*_0x3b03aa[_0x4a0e47];_0x3b03aa[_0x5abf4a]/=_0x357c60[_0x5abf4a][_0x5abf4a];}return _0x3b03aa;}},T={'multiplyTranspose':function(_0x1c8e8f,_0x130342){const _0x3bde9e=a0_0x23cc;let _0x1cb883=_0x1c8e8f[0x0][_0x3bde9e(0x1e9)],_0x356802=_0x130342[0x0][_0x3bde9e(0x1e9)],_0x6b51a4=[];for(let _0x58e9ab=0x0;_0x58e9ab<_0x1cb883;_0x58e9ab++){_0x6b51a4[_0x58e9ab]=[];for(let _0x4f0c51=0x0;_0x4f0c51<_0x356802;_0x4f0c51++){let _0x396b08=0x0;for(let _0x4613b4=0x0;_0x4613b4<_0x1c8e8f[_0x3bde9e(0x1e9)];_0x4613b4++)_0x396b08+=_0x1c8e8f[_0x4613b4][_0x58e9ab]*_0x130342[_0x4613b4][_0x4f0c51];_0x6b51a4[_0x58e9ab][_0x4f0c51]=_0x396b08;}}return _0x6b51a4;},'vectorMultiplyTranspose':function(_0x306219,_0x121e5e){const _0x267b3f=a0_0x23cc;let _0x4cb5e3=_0x306219[0x0]['length'],_0x488874=[];for(let _0x470d7d=0x0;_0x470d7d<_0x4cb5e3;_0x470d7d++){let _0x590721=0x0;for(let _0x17a936=0x0;_0x17a936<_0x306219[_0x267b3f(0x1e9)];_0x17a936++)_0x590721+=_0x306219[_0x17a936][_0x470d7d]*_0x121e5e[_0x17a936];_0x488874[_0x470d7d]=_0x590721;}return _0x488874;}},O={'from_control_points':function(_0x1b33bc,_0x1b710a,_0x2b080b,_0x359cbc){const _0x2ab027=a0_0x23cc;_0x359cbc===void 0x0&&(_0x359cbc=this[_0x2ab027(0x1f0)](_0x1b33bc,_0x1b710a));let _0x5cfa1a=k[_0x2ab027(0x25a)](0x0,0x1,_0x2b080b),_0x2136d7=[];for(var _0x9cd954 of _0x5cfa1a)_0x2136d7[_0x2ab027(0x1e2)](this['bspline'](_0x9cd954,_0x1b710a,_0x1b33bc,_0x359cbc));return _0x2136d7;},'from_control_points_cosine':function(_0x152f16,_0x144935,_0x4e5d65,_0x1e37b2){const _0xd03036=a0_0x23cc;_0x1e37b2===void 0x0&&(_0x1e37b2=this['uniform_knot_spacing'](_0x152f16,_0x144935));let _0x560e33=k[_0xd03036(0x1df)](_0x4e5d65),_0x140eef=[];for(var _0x31681a of _0x560e33)_0x140eef['push'](this['bspline'](_0x31681a,_0x144935,_0x152f16,_0x1e37b2));return _0x140eef;},'approximate_curve':function(_0x3afd11,_0xde0c7b,_0x4a18dd=0x3){const _0x2f7bd2=a0_0x23cc;if(_0xde0c7b<_0x4a18dd+0x1)throw new Error(_0x2f7bd2(0x264));if(_0x3afd11['length']<0x2)throw new Error(_0x2f7bd2(0x1f6));let _0x18009b=_0x3afd11[_0x2f7bd2(0x1e9)],_0x12a91f=_0xde0c7b,_0x3a4813=_0x3afd11[0x0][_0x2f7bd2(0x1e9)],_0x5ddb05=this[_0x2f7bd2(0x23d)](_0x3afd11),_0x346439=this[_0x2f7bd2(0x231)](_0x5ddb05,_0x12a91f,_0x4a18dd),_0x173097=[];for(let _0x13f296=0x0;_0x13f296<_0x18009b;_0x13f296++){_0x173097[_0x13f296]=[];for(let _0x5da360=0x0;_0x5da360<_0x12a91f;_0x5da360++)_0x173097[_0x13f296][_0x5da360]=this[_0x2f7bd2(0x25c)](_0x5da360,_0x4a18dd,_0x5ddb05[_0x13f296],_0x346439);}let _0x39068f=[];for(let _0x1bfb94=0x0;_0x1bfb94<_0x3a4813;_0x1bfb94++){let _0x4944e9=_0x3afd11['map'](_0x41ec7b=>_0x41ec7b[_0x1bfb94]),_0x10d67d=T[_0x2f7bd2(0x223)](_0x173097,_0x173097),_0x1afc4e=T[_0x2f7bd2(0x23a)](_0x173097,_0x4944e9),_0x57096d=k[_0x2f7bd2(0x25b)](_0x10d67d,_0x1afc4e);for(let _0x48b333=0x0;_0x48b333<_0x12a91f;_0x48b333++)_0x39068f[_0x48b333]||(_0x39068f[_0x48b333]=[]),_0x39068f[_0x48b333][_0x1bfb94]=_0x57096d[_0x48b333];}return{'controlPoints':_0x39068f,'knots':_0x346439,'degree':_0x4a18dd};},'approximate_curve_with_clamped_ends':function(_0x2acf7e,_0x161878,_0x2031f5=0x3){const _0x3df267=a0_0x23cc;if(_0x161878<_0x2031f5+0x1)throw new Error(_0x3df267(0x264));if(_0x161878<0x2)throw new Error('Need\x20at\x20least\x202\x20control\x20points\x20for\x20endpoint\x20constraints');if(_0x2acf7e[_0x3df267(0x1e9)]<0x2)throw new Error(_0x3df267(0x1f6));let _0x4fa404=_0x2acf7e['length'],_0x3ae94f=_0x161878,_0x4f2321=_0x2acf7e[0x0][_0x3df267(0x1e9)],_0x43a4b8=this[_0x3df267(0x23d)](_0x2acf7e),_0x12fddb=this[_0x3df267(0x231)](_0x43a4b8,_0x3ae94f,_0x2031f5),_0x4b6dbc=[];for(let _0x4970c2=0x0;_0x4970c2<_0x4fa404;_0x4970c2++){_0x4b6dbc[_0x4970c2]=[];for(let _0x35df23=0x0;_0x35df23<_0x3ae94f;_0x35df23++)_0x4b6dbc[_0x4970c2][_0x35df23]=this[_0x3df267(0x25c)](_0x35df23,_0x2031f5,_0x43a4b8[_0x4970c2],_0x12fddb);}let _0x553805=new Array(_0x3ae94f);for(let _0x794a83=0x0;_0x794a83<_0x3ae94f;_0x794a83++)_0x553805[_0x794a83]=new Array(_0x4f2321);_0x553805[0x0]=[..._0x2acf7e[0x0]],_0x553805[_0x3ae94f-0x1]=[..._0x2acf7e[_0x2acf7e[_0x3df267(0x1e9)]-0x1]];for(let _0x320b8a=0x0;_0x320b8a<_0x4f2321;_0x320b8a++){let _0x2765d1=_0x2acf7e[_0x3df267(0x1fa)](_0x46efa8=>_0x46efa8[_0x320b8a]),_0x40863c=[];for(let _0x5b8634=0x1;_0x5b8634<_0x3ae94f-0x1;_0x5b8634++)_0x40863c[_0x3df267(0x1e2)](_0x5b8634);if(_0x40863c[_0x3df267(0x1e9)]===0x0)continue;let _0x40c76b=[],_0x2f8f2a=[];for(let _0x4586f3=0x0;_0x4586f3<_0x4fa404;_0x4586f3++){_0x40c76b[_0x4586f3]=[];for(let _0x2fedce of _0x40863c)_0x40c76b[_0x4586f3][_0x3df267(0x1e2)](_0x4b6dbc[_0x4586f3][_0x2fedce]);_0x2f8f2a[_0x4586f3]=_0x2765d1[_0x4586f3]-_0x4b6dbc[_0x4586f3][0x0]*_0x553805[0x0][_0x320b8a]-_0x4b6dbc[_0x4586f3][_0x3ae94f-0x1]*_0x553805[_0x3ae94f-0x1][_0x320b8a];}let _0x508293=T[_0x3df267(0x223)](_0x40c76b,_0x40c76b),_0x4bd4a2=T[_0x3df267(0x23a)](_0x40c76b,_0x2f8f2a),_0x5cfa8f=k[_0x3df267(0x25b)](_0x508293,_0x4bd4a2);for(let _0x27cd3b=0x0;_0x27cd3b<_0x40863c[_0x3df267(0x1e9)];_0x27cd3b++)_0x553805[_0x40863c[_0x27cd3b]][_0x320b8a]=_0x5cfa8f[_0x27cd3b];}return{'controlPoints':_0x553805,'knots':_0x12fddb,'degree':_0x2031f5};},'_chord_length_parameterization':function(_0x35f08f){const _0x2380a3=a0_0x23cc;let _0x4592b6=[0x0],_0x1061b4=[0x0],_0x174e8b=0x0;for(let _0x6a0d9f=0x1;_0x6a0d9f<_0x35f08f[_0x2380a3(0x1e9)];_0x6a0d9f++){let _0x4aecde=0x0;for(let _0x15c9d3=0x0;_0x15c9d3<_0x35f08f[_0x6a0d9f][_0x2380a3(0x1e9)];_0x15c9d3++)_0x4aecde+=Math['pow'](_0x35f08f[_0x6a0d9f][_0x15c9d3]-_0x35f08f[_0x6a0d9f-0x1][_0x15c9d3],0x2);_0x4aecde=Math[_0x2380a3(0x250)](_0x4aecde),_0x174e8b+=_0x4aecde,_0x1061b4[_0x2380a3(0x1e2)](_0x174e8b);}for(let _0x1d40b3=0x1;_0x1d40b3<_0x35f08f[_0x2380a3(0x1e9)];_0x1d40b3++)_0x4592b6[_0x2380a3(0x1e2)](_0x1061b4[_0x1d40b3]/_0x174e8b);return _0x4592b6;},'_approximate_knot_vector':function(_0x527b21,_0x4a264d,_0xb00b93){const _0x355cf8=a0_0x23cc;let _0x11d679=_0x527b21[_0x355cf8(0x1e9)],_0x4a1e2a=_0x4a264d,_0x3ae061=[];for(let _0x467091=0x0;_0x467091<=_0xb00b93;_0x467091++)_0x3ae061['push'](0x0);let _0x3a1e18=(_0x11d679-0x1)/(_0x4a1e2a-_0xb00b93);for(let _0x307aa5=0x1;_0x307aa5<_0x4a1e2a-_0xb00b93;_0x307aa5++){let _0x49ff4f=0x0;for(let _0x9b4f76=Math[_0x355cf8(0x22c)](_0x307aa5*_0x3a1e18);_0x9b4f76<Math[_0x355cf8(0x22c)]((_0x307aa5+0x1)*_0x3a1e18);_0x9b4f76++)_0x49ff4f+=_0x527b21[Math[_0x355cf8(0x1f5)](_0x9b4f76+_0xb00b93,_0x11d679-0x1)];_0x3ae061[_0x355cf8(0x1e2)](_0x49ff4f/(Math[_0x355cf8(0x22c)]((_0x307aa5+0x1)*_0x3a1e18)-Math['floor'](_0x307aa5*_0x3a1e18)));}for(let _0x291082=0x0;_0x291082<=_0xb00b93;_0x291082++)_0x3ae061[_0x355cf8(0x1e2)](0x1);return _0x3ae061;},'_basis_function':function(_0x1c97dd,_0x3d1dd5,_0x28aae8,_0xa04fd9){const _0x1c4658=a0_0x23cc;if(_0x3d1dd5===0x0)return _0x28aae8>=_0xa04fd9[_0x1c97dd]&&_0x28aae8<_0xa04fd9[_0x1c97dd+0x1]?0x1:0x0;let _0x4ea3d4=0x0,_0x276e6c=0x0,_0x1ca1eb=_0xa04fd9[_0x1c97dd+_0x3d1dd5]-_0xa04fd9[_0x1c97dd];_0x1ca1eb!==0x0&&(_0x4ea3d4=(_0x28aae8-_0xa04fd9[_0x1c97dd])/_0x1ca1eb*this[_0x1c4658(0x25c)](_0x1c97dd,_0x3d1dd5-0x1,_0x28aae8,_0xa04fd9));let _0x29703a=_0xa04fd9[_0x1c97dd+_0x3d1dd5+0x1]-_0xa04fd9[_0x1c97dd+0x1];return _0x29703a!==0x0&&(_0x276e6c=(_0xa04fd9[_0x1c97dd+_0x3d1dd5+0x1]-_0x28aae8)/_0x29703a*this[_0x1c4658(0x25c)](_0x1c97dd+0x1,_0x3d1dd5-0x1,_0x28aae8,_0xa04fd9)),_0x4ea3d4+_0x276e6c;},'uniform_knot_spacing':function(_0x43b8b3,_0xbdd5ae){const _0xe0c777=a0_0x23cc;let _0x1f3a16=_0x43b8b3[_0xe0c777(0x1e9)]+_0xbdd5ae+0x1,_0x4ee796=[],_0x89eb84=_0x1f3a16-(_0xbdd5ae+0x1)*0x2;for(var _0xaf5fdd=0x0;_0xaf5fdd<_0xbdd5ae+0x1;_0xaf5fdd++)_0x4ee796[_0xe0c777(0x1e2)](0x0);for(var _0xaf5fdd=0x0;_0xaf5fdd<_0x89eb84;_0xaf5fdd++)_0x4ee796['push'](_0xaf5fdd+0x1);let _0x7b183=_0x4ee796[_0x4ee796['length']-0x1]+0x1;for(var _0xaf5fdd=0x0;_0xaf5fdd<_0xbdd5ae+0x1;_0xaf5fdd++)_0x4ee796[_0xe0c777(0x1e2)](_0x7b183);return _0x4ee796;},'uniform_knot_spacing_normalized':function(_0x2b93b0,_0x11e91c){const _0x5317a8=a0_0x23cc;let _0xf27f=_0x2b93b0,_0x11f69d=[],_0x215c97=_0xf27f+_0x11e91c+0x1-(_0x11e91c+0x1)*0x2;for(let _0x4fa05d=0x0;_0x4fa05d<=_0x11e91c;_0x4fa05d++)_0x11f69d[_0x5317a8(0x1e2)](0x0);if(_0x215c97>0x0){let _0x201888=0x1/(_0x215c97+0x1);for(let _0x2fb030=0x0;_0x2fb030<_0x215c97;_0x2fb030++)_0x11f69d['push']((_0x2fb030+0x1)*_0x201888);}for(let _0x58422b=0x0;_0x58422b<=_0x11e91c;_0x58422b++)_0x11f69d[_0x5317a8(0x1e2)](0x1);return _0x11f69d;},'bspline':function(_0x20d11a,_0x398496,_0x26ddc9,_0x5639db,_0x52241f,_0x188a13){const _0x57c9f5=a0_0x23cc;var _0x512e14,_0x14cf97,_0x2fe5c5,_0x78e0aa,_0x5cedcb=_0x26ddc9[_0x57c9f5(0x1e9)],_0x4f2312=_0x26ddc9[0x0][_0x57c9f5(0x1e9)];if(_0x398496<0x1)throw new Error(_0x57c9f5(0x1ed));if(_0x398496>_0x5cedcb-0x1)throw new Error(_0x57c9f5(0x258));if(!_0x52241f){for(_0x52241f=[],_0x512e14=0x0;_0x512e14<_0x5cedcb;_0x512e14++)_0x52241f[_0x512e14]=0x1;}if(_0x5639db){if(_0x5639db['length']!==_0x5cedcb+_0x398496+0x1)throw new Error(_0x57c9f5(0x1f4));}else{var _0x5639db=[];for(_0x512e14=0x0;_0x512e14<_0x5cedcb+_0x398496+0x1;_0x512e14++)_0x5639db[_0x512e14]=_0x512e14;}var _0x50daf8=[_0x398496,_0x5639db[_0x57c9f5(0x1e9)]-0x1-_0x398496],_0x3fe93c=_0x5639db[_0x50daf8[0x0]],_0x341dbe=_0x5639db[_0x50daf8[0x1]];if(_0x20d11a=_0x20d11a*(_0x341dbe-_0x3fe93c)+_0x3fe93c,_0x20d11a<_0x3fe93c||_0x20d11a>_0x341dbe)throw new Error(_0x57c9f5(0x219));for(_0x2fe5c5=_0x50daf8[0x0];_0x2fe5c5<_0x50daf8[0x1]&&!(_0x20d11a>=_0x5639db[_0x2fe5c5]&&_0x20d11a<=_0x5639db[_0x2fe5c5+0x1]);_0x2fe5c5++);var _0x10ca16=[];for(_0x512e14=0x0;_0x512e14<_0x5cedcb;_0x512e14++){for(_0x10ca16[_0x512e14]=[],_0x14cf97=0x0;_0x14cf97<_0x4f2312;_0x14cf97++)_0x10ca16[_0x512e14][_0x14cf97]=_0x26ddc9[_0x512e14][_0x14cf97]*_0x52241f[_0x512e14];_0x10ca16[_0x512e14][_0x4f2312]=_0x52241f[_0x512e14];}var _0x583a12;for(_0x78e0aa=0x1;_0x78e0aa<=_0x398496+0x1;_0x78e0aa++)for(_0x512e14=_0x2fe5c5;_0x512e14>_0x2fe5c5-_0x398496-0x1+_0x78e0aa;_0x512e14--)for(_0x583a12=(_0x20d11a-_0x5639db[_0x512e14])/(_0x5639db[_0x512e14+_0x398496+0x1-_0x78e0aa]-_0x5639db[_0x512e14]),_0x14cf97=0x0;_0x14cf97<_0x4f2312+0x1;_0x14cf97++)_0x10ca16[_0x512e14][_0x14cf97]=(0x1-_0x583a12)*_0x10ca16[_0x512e14-0x1][_0x14cf97]+_0x583a12*_0x10ca16[_0x512e14][_0x14cf97];var _0x188a13=_0x188a13||[];for(_0x512e14=0x0;_0x512e14<_0x4f2312;_0x512e14++)_0x188a13[_0x512e14]=_0x10ca16[_0x2fe5c5][_0x512e14]/_0x10ca16[_0x2fe5c5][_0x4f2312];return _0x188a13;}},A={'_gaussJ':{'solve':function(_0x2c41b3,_0x5dc015){const _0xecc5d5=a0_0x23cc;let _0x4c4c21=_0x2c41b3[_0xecc5d5(0x1e9)];for(let _0x5a804e=0x0;_0x5a804e<_0x4c4c21;_0x5a804e++){let _0x4bd602=0x0,_0x3139ef=Number[_0xecc5d5(0x237)];for(let _0x589db8=_0x5a804e;_0x589db8<_0x4c4c21;_0x589db8++)Math['abs'](_0x2c41b3[_0x589db8][_0x5a804e])>_0x3139ef&&(_0x4bd602=_0x589db8,_0x3139ef=Math[_0xecc5d5(0x222)](_0x2c41b3[_0x589db8][_0x5a804e]));this[_0xecc5d5(0x23c)](_0x2c41b3,_0x5a804e,_0x4bd602);for(let _0x455e2a=_0x5a804e+0x1;_0x455e2a<_0x4c4c21;_0x455e2a++){let _0x266ad4=_0x2c41b3[_0x455e2a][_0x5a804e]/_0x2c41b3[_0x5a804e][_0x5a804e];for(let _0x4331b8=_0x5a804e;_0x4331b8<_0x4c4c21+0x1;_0x4331b8++)_0x2c41b3[_0x455e2a][_0x4331b8]-=_0x2c41b3[_0x5a804e][_0x4331b8]*_0x266ad4;}}for(let _0x3366aa=_0x4c4c21-0x1;_0x3366aa>=0x0;_0x3366aa--){let _0xb6d2f7=_0x2c41b3[_0x3366aa][_0x4c4c21]/_0x2c41b3[_0x3366aa][_0x3366aa];_0x5dc015[_0x3366aa]=_0xb6d2f7;for(let _0x442c18=_0x3366aa-0x1;_0x442c18>=0x0;_0x442c18--)_0x2c41b3[_0x442c18][_0x4c4c21]-=_0x2c41b3[_0x442c18][_0x3366aa]*_0xb6d2f7,_0x2c41b3[_0x442c18][_0x3366aa]=0x0;}},'zerosMat':function(_0x113433,_0x228da6){const _0x3929a2=a0_0x23cc;let _0x43650c=[];for(let _0xeabf6e=0x0;_0xeabf6e<_0x113433;_0xeabf6e++)_0x43650c[_0x3929a2(0x1e2)](new Array(_0x228da6)[_0x3929a2(0x1e1)](0x0));return _0x43650c;},'printMat':function(_0x386721){const _0x4506b7=a0_0x23cc;_0x386721['forEach'](_0x1ba7c3=>console[_0x4506b7(0x255)](_0x1ba7c3));},'swapRows':function(_0x1dfaa2,_0x44213f,_0x162b84){let _0x320929=_0x1dfaa2[_0x44213f];_0x1dfaa2[_0x44213f]=_0x1dfaa2[_0x162b84],_0x1dfaa2[_0x162b84]=_0x320929;}},'getNaturalKs':function(_0xdfd6fa,_0x58c528,_0x27c082){const _0xfd5a01=a0_0x23cc;let _0x24793b=_0xdfd6fa[_0xfd5a01(0x1e9)]-0x1,_0x100519=this[_0xfd5a01(0x23f)]['zerosMat'](_0x24793b+0x1,_0x24793b+0x2);for(let _0x2804e9=0x1;_0x2804e9<_0x24793b;_0x2804e9++)_0x100519[_0x2804e9][_0x2804e9-0x1]=0x1/(_0xdfd6fa[_0x2804e9]-_0xdfd6fa[_0x2804e9-0x1]),_0x100519[_0x2804e9][_0x2804e9]=0x2*(0x1/(_0xdfd6fa[_0x2804e9]-_0xdfd6fa[_0x2804e9-0x1])+0x1/(_0xdfd6fa[_0x2804e9+0x1]-_0xdfd6fa[_0x2804e9])),_0x100519[_0x2804e9][_0x2804e9+0x1]=0x1/(_0xdfd6fa[_0x2804e9+0x1]-_0xdfd6fa[_0x2804e9]),_0x100519[_0x2804e9][_0x24793b+0x1]=0x3*((_0x58c528[_0x2804e9]-_0x58c528[_0x2804e9-0x1])/(_0xdfd6fa[_0x2804e9]-_0xdfd6fa[_0x2804e9-0x1])**0x2+(_0x58c528[_0x2804e9+0x1]-_0x58c528[_0x2804e9])/(_0xdfd6fa[_0x2804e9+0x1]-_0xdfd6fa[_0x2804e9])**0x2);_0x100519[0x0][0x0]=0x2/(_0xdfd6fa[0x1]-_0xdfd6fa[0x0]),_0x100519[0x0][0x1]=0x1/(_0xdfd6fa[0x1]-_0xdfd6fa[0x0]),_0x100519[0x0][_0x24793b+0x1]=0x3*(_0x58c528[0x1]-_0x58c528[0x0])/(_0xdfd6fa[0x1]-_0xdfd6fa[0x0])**0x2,_0x100519[_0x24793b][_0x24793b-0x1]=0x1/(_0xdfd6fa[_0x24793b]-_0xdfd6fa[_0x24793b-0x1]),_0x100519[_0x24793b][_0x24793b]=0x2/(_0xdfd6fa[_0x24793b]-_0xdfd6fa[_0x24793b-0x1]),_0x100519[_0x24793b][_0x24793b+0x1]=0x3*(_0x58c528[_0x24793b]-_0x58c528[_0x24793b-0x1])/(_0xdfd6fa[_0x24793b]-_0xdfd6fa[_0x24793b-0x1])**0x2,this[_0xfd5a01(0x23f)][_0xfd5a01(0x230)](_0x100519,_0x27c082);},'from_control_points':function(_0x16615c,_0x2ecec2){const _0x37375e=a0_0x23cc;let _0x98de73=_0x2ecec2[_0x37375e(0x1fa)](_0x2091e8=>_0x2091e8[0x0]),_0x5decb4=_0x2ecec2[_0x37375e(0x1fa)](_0x4ba210=>_0x4ba210[0x1]),_0x1024e7=new Array(_0x98de73[_0x37375e(0x1e9)])['fill'](0x0);this['getNaturalKs'](_0x98de73,_0x5decb4,_0x1024e7);let _0x245349=[];for(let _0x3f239f of _0x16615c){let _0x77efd5=0x1;for(;_0x98de73[_0x77efd5]<_0x3f239f;)_0x77efd5++;let _0x32d40d=(_0x3f239f-_0x98de73[_0x77efd5-0x1])/(_0x98de73[_0x77efd5]-_0x98de73[_0x77efd5-0x1]),_0x1fed68=_0x1024e7[_0x77efd5-0x1]*(_0x98de73[_0x77efd5]-_0x98de73[_0x77efd5-0x1])-(_0x5decb4[_0x77efd5]-_0x5decb4[_0x77efd5-0x1]),_0x4dc68b=-_0x1024e7[_0x77efd5]*(_0x98de73[_0x77efd5]-_0x98de73[_0x77efd5-0x1])+(_0x5decb4[_0x77efd5]-_0x5decb4[_0x77efd5-0x1]),_0x26c0ec=(0x1-_0x32d40d)*_0x5decb4[_0x77efd5-0x1]+_0x32d40d*_0x5decb4[_0x77efd5]+_0x32d40d*(0x1-_0x32d40d)*(_0x1fed68*(0x1-_0x32d40d)+_0x4dc68b*_0x32d40d);_0x245349[_0x37375e(0x1e2)]([_0x3f239f,_0x26c0ec]);}return _0x245349;}},j=class{constructor(_0x2c2554){const _0x10cd9e=a0_0x23cc;this['points']=_0x2c2554,this[_0x10cd9e(0x1f8)]=[],this[_0x10cd9e(0x25d)]=[0x0];for(let _0xe0c902=0x1;_0xe0c902<_0x2c2554[_0x10cd9e(0x1e9)];_0xe0c902++){let _0x424f75=_0x2c2554[_0xe0c902][0x0]-_0x2c2554[_0xe0c902-0x1][0x0],_0x22d2d9=_0x2c2554[_0xe0c902][0x1]-_0x2c2554[_0xe0c902-0x1][0x1],_0x1aefad=_0x2c2554[_0xe0c902][0x2]-_0x2c2554[_0xe0c902-0x1][0x2],_0x4154ed=Math['sqrt'](_0x424f75*_0x424f75+_0x22d2d9*_0x22d2d9+_0x1aefad*_0x1aefad);this[_0x10cd9e(0x1f8)][_0x10cd9e(0x1e2)](_0x4154ed),this[_0x10cd9e(0x25d)][_0x10cd9e(0x1e2)](this['cumulativeLength'][this[_0x10cd9e(0x25d)][_0x10cd9e(0x1e9)]-0x1]+_0x4154ed);}this[_0x10cd9e(0x1e7)]=this['segmentLengths']['length']>0x0?this['cumulativeLength'][this[_0x10cd9e(0x25d)]['length']-0x1]:0x0;}[a0_0x464df3(0x1eb)](_0x25b998){const _0x4f00b7=a0_0x464df3;let _0x4214b9=0x0,_0x56325e=Number['POSITIVE_INFINITY'];for(let _0x32a8a8=0x0;_0x32a8a8<this['points']['length']-0x1;_0x32a8a8++){let _0x5ab32f=this[_0x4f00b7(0x236)][_0x32a8a8],_0x33cafe=this['points'][_0x32a8a8+0x1],_0x33d633=_0x25b998,_0x3814=[_0x33cafe[0x0]-_0x5ab32f[0x0],_0x33cafe[0x1]-_0x5ab32f[0x1],_0x33cafe[0x2]-_0x5ab32f[0x2]],_0x4ded09=[_0x33d633[0x0]-_0x5ab32f[0x0],_0x33d633[0x1]-_0x5ab32f[0x1],_0x33d633[0x2]-_0x5ab32f[0x2]],_0x2d9e16=_0x3814[0x0]*_0x3814[0x0]+_0x3814[0x1]*_0x3814[0x1]+_0x3814[0x2]*_0x3814[0x2];if(_0x2d9e16===0x0)continue;let _0x1d6e24=(_0x4ded09[0x0]*_0x3814[0x0]+_0x4ded09[0x1]*_0x3814[0x1]+_0x4ded09[0x2]*_0x3814[0x2])/_0x2d9e16;_0x1d6e24=Math['max'](0x0,Math['min'](0x1,_0x1d6e24));let _0x3850c1=[_0x5ab32f[0x0]+_0x1d6e24*_0x3814[0x0],_0x5ab32f[0x1]+_0x1d6e24*_0x3814[0x1],_0x5ab32f[0x2]+_0x1d6e24*_0x3814[0x2]],_0x57740f=Math[_0x4f00b7(0x1e6)](_0x33d633[0x0]-_0x3850c1[0x0],0x2)+Math[_0x4f00b7(0x1e6)](_0x33d633[0x1]-_0x3850c1[0x1],0x2)+Math['pow'](_0x33d633[0x2]-_0x3850c1[0x2],0x2);_0x57740f<_0x56325e&&(_0x56325e=_0x57740f,_0x4214b9=(this[_0x4f00b7(0x25d)][_0x32a8a8]+_0x1d6e24*this['segmentLengths'][_0x32a8a8])/this[_0x4f00b7(0x1e7)]);}return _0x4214b9;}['findPointAtParameter'](_0x2f9b97){const _0x3bd69a=a0_0x464df3;if(_0x2f9b97<=0x0)return[...this[_0x3bd69a(0x236)][0x0]];if(_0x2f9b97>=0x1)return[...this[_0x3bd69a(0x236)][this[_0x3bd69a(0x236)][_0x3bd69a(0x1e9)]-0x1]];let _0x1d8bdb=_0x2f9b97*this['totalLength'];for(let _0x32e5fb=0x0;_0x32e5fb<this[_0x3bd69a(0x25d)][_0x3bd69a(0x1e9)]-0x1;_0x32e5fb++)if(this['cumulativeLength'][_0x32e5fb]<=_0x1d8bdb&&_0x1d8bdb<=this[_0x3bd69a(0x25d)][_0x32e5fb+0x1]){let _0x591fd0=(_0x1d8bdb-this[_0x3bd69a(0x25d)][_0x32e5fb])/this[_0x3bd69a(0x1f8)][_0x32e5fb],_0x1f15aa=this[_0x3bd69a(0x236)][_0x32e5fb],_0x2f30cc=this[_0x3bd69a(0x236)][_0x32e5fb+0x1],_0x27efe9=(0x1-_0x591fd0)*_0x1f15aa[0x0]+_0x591fd0*_0x2f30cc[0x0],_0xafe901=(0x1-_0x591fd0)*_0x1f15aa[0x1]+_0x591fd0*_0x2f30cc[0x1],_0x44fa16=(0x1-_0x591fd0)*_0x1f15aa[0x2]+_0x591fd0*_0x2f30cc[0x2];return[_0x27efe9,_0xafe901,_0x44fa16];}return[...this['points'][this[_0x3bd69a(0x236)][_0x3bd69a(0x1e9)]-0x1]];}},K={'_formatNumber':function(_0x22c801){const _0x37553d=a0_0x464df3;return Number[_0x37553d(0x226)](_0x22c801)?_0x22c801[_0x37553d(0x225)]():Math[_0x37553d(0x222)](_0x22c801)<0.001||Math['abs'](_0x22c801)>0xf4240?_0x22c801['toExponential'](0x6):_0x22c801[_0x37553d(0x1ee)](0x6)[_0x37553d(0x208)](/\.?0+$/,'');},'_toHollerith':function(_0x4fc0a3){const _0x53b147=a0_0x464df3;return _0x4fc0a3?_0x4fc0a3[_0x53b147(0x1e9)]+'H'+_0x4fc0a3:'0H';},'_generateGlobalSection':function(_0x477bdd){const _0x242ef9=a0_0x464df3;let _0x5f18d1=new Date()[_0x242ef9(0x22d)]()[_0x242ef9(0x251)](0x0,0x13)['replace'](/[-:]/g,'')[_0x242ef9(0x208)]('T','.'),_0x18d3d7=[_0x242ef9(0x253),_0x242ef9(0x1f7),this[_0x242ef9(0x1f1)](_0x477bdd[_0x242ef9(0x24d)]),this['_toHollerith'](_0x477bdd[_0x242ef9(0x24d)]),this['_toHollerith'](_0x477bdd['organization']),this[_0x242ef9(0x1f1)](_0x242ef9(0x232)),'32','38','6',_0x242ef9(0x1db),'15',this[_0x242ef9(0x1f1)](_0x477bdd[_0x242ef9(0x24d)]),_0x242ef9(0x239),'3',this[_0x242ef9(0x1f1)](_0x477bdd[_0x242ef9(0x21e)]['toUpperCase']()),'1',_0x242ef9(0x238),this[_0x242ef9(0x1f1)](_0x5f18d1),'0.0001',_0x242ef9(0x205),this[_0x242ef9(0x1f1)](_0x477bdd[_0x242ef9(0x22e)]),this[_0x242ef9(0x1f1)](_0x477bdd[_0x242ef9(0x215)]),'11','0',this[_0x242ef9(0x1f1)](_0x5f18d1)][_0x242ef9(0x1fe)](',')+';',_0x20b0db='',_0x201a32=0x1,_0x419ba0=0x0;for(;_0x419ba0<_0x18d3d7[_0x242ef9(0x1e9)];){let _0x30f42a=_0x18d3d7['substr'](_0x419ba0,0x48);_0x20b0db+=_0x30f42a[_0x242ef9(0x210)](0x48)+('G'+_0x201a32['toString']()['padStart'](0x7)+'\x0a'),_0x419ba0+=0x48,_0x201a32++;}return _0x20b0db;},'_formatDirectoryLine':function(_0x3bcc4f,_0x2f9a41,_0x19c63a,_0x4436c5,_0x5f508b,_0x105c0d,_0x5d028c,_0x73fa9a,_0x25d0b0){const _0x1bb4c1=a0_0x464df3;return[_0x3bcc4f[_0x1bb4c1(0x225)]()[_0x1bb4c1(0x246)](0x8),_0x2f9a41[_0x1bb4c1(0x225)]()[_0x1bb4c1(0x246)](0x8),_0x19c63a[_0x1bb4c1(0x225)]()[_0x1bb4c1(0x246)](0x8),_0x4436c5['toString']()['padStart'](0x8),_0x5f508b[_0x1bb4c1(0x225)]()[_0x1bb4c1(0x246)](0x8),_0x105c0d[_0x1bb4c1(0x225)]()[_0x1bb4c1(0x246)](0x8),_0x5d028c[_0x1bb4c1(0x225)]()['padStart'](0x8),_0x73fa9a[_0x1bb4c1(0x225)]()[_0x1bb4c1(0x246)](0x8)][_0x1bb4c1(0x1fe)]('')[_0x1bb4c1(0x210)](0x48)+('D'+_0x25d0b0['toString']()[_0x1bb4c1(0x246)](0x7)+'\x0a');},'_formatParameterLine':function(_0x172580,_0x29c1c2,_0x39cf34){const _0x34ac3c=a0_0x464df3;let _0x4a263c='',_0x3db1c5=_0x29c1c2,_0x5d93a5=0x0;for(;_0x5d93a5<_0x172580[_0x34ac3c(0x1e9)];){let _0x20cd8a=Math[_0x34ac3c(0x1f5)](_0x5d93a5+0x40,_0x172580[_0x34ac3c(0x1e9)]);if(_0x20cd8a<_0x172580[_0x34ac3c(0x1e9)]&&_0x172580[_0x20cd8a]!==','){let _0x4b8e6f=_0x172580[_0x34ac3c(0x235)](',',_0x20cd8a);_0x4b8e6f>_0x5d93a5&&(_0x20cd8a=_0x4b8e6f+0x1);}let _0x3d106d=_0x172580[_0x34ac3c(0x20c)](_0x5d93a5,_0x20cd8a);_0x4a263c+=_0x3d106d[_0x34ac3c(0x210)](0x40)+('\x20'+_0x39cf34[_0x34ac3c(0x225)]()['padStart'](0x7)+'P'+_0x3db1c5['toString']()['padStart'](0x7)+'\x0a'),_0x5d93a5=_0x20cd8a,_0x3db1c5++;}return _0x4a263c;},'_formatSection':function(_0x47b3cf,_0x45455e){const _0x1bc49c=a0_0x464df3;return _0x45455e[_0x1bc49c(0x1fa)]((_0x456247,_0x98e852)=>_0x456247['replace'](/\n$/,'')+'\x0a')[_0x1bc49c(0x1fe)]('');},'_formatTerminateSection':function(_0x1f1f22,_0x1f03c0,_0x340b91,_0x17537e){const _0x3cdb36=a0_0x464df3;return['S'+_0x1f1f22[_0x3cdb36(0x225)]()[_0x3cdb36(0x246)](0x7),'G'+_0x1f03c0[_0x3cdb36(0x225)]()[_0x3cdb36(0x246)](0x7),'D'+_0x340b91[_0x3cdb36(0x225)]()[_0x3cdb36(0x246)](0x7),'P'+_0x17537e[_0x3cdb36(0x225)]()['padStart'](0x7)]['join']('')[_0x3cdb36(0x210)](0x48)+_0x3cdb36(0x26a);},'_createPointEntity':function(_0x1ba41e,_0x2f8fdc,_0x5be8f6){const _0x20cd30=a0_0x464df3;let _0x3d0137=_0x20cd30(0x248)+this[_0x20cd30(0x269)](_0x1ba41e[0x0])+','+this[_0x20cd30(0x269)](_0x1ba41e[0x1])+','+this['_formatNumber'](_0x1ba41e[0x2])+',0.0;',_0x33f816=_0x2f8fdc,_0xe90578=this[_0x20cd30(0x1ea)](_0x3d0137,_0x5be8f6,_0x33f816),_0x41ada7=_0xe90578[_0x20cd30(0x1ef)]('\x0a')['length']-0x1,_0x67d63e=this['_formatDirectoryLine'](0x74,_0x5be8f6,0x0,0x0,0x0,0x0,0x0,0x0,_0x2f8fdc);return _0x67d63e+=this[_0x20cd30(0x24c)](0x74,0x0,0x0,_0x41ada7,0x0,0x0,0x0,0x0,_0x2f8fdc+0x1),{'directoryEntry':_0x67d63e,'parameterEntry':_0xe90578,'lineCount':_0x41ada7};},'_createPolylineEntity':function(_0x49c0af,_0xe5f6ee,_0x4ba0b4){const _0x5b81dc=a0_0x464df3;let _0x4c104d='106,'+(_0x49c0af[_0x5b81dc(0x1e9)]-0x1);for(let _0x5b1ac1=0x0;_0x5b1ac1<_0x49c0af[_0x5b81dc(0x1e9)];_0x5b1ac1++){let _0x2ebdfe=_0x49c0af[_0x5b1ac1];_0x4c104d+=','+this[_0x5b81dc(0x269)](_0x2ebdfe[0x0])+','+this[_0x5b81dc(0x269)](_0x2ebdfe[0x1])+','+this[_0x5b81dc(0x269)](_0x2ebdfe[0x2]);}_0x4c104d+=';';let _0x4e645d=_0xe5f6ee,_0x4dd6fb=this['_formatParameterLine'](_0x4c104d,_0x4ba0b4,_0x4e645d),_0x30b9a0=_0x4dd6fb[_0x5b81dc(0x1ef)]('\x0a')[_0x5b81dc(0x1e9)]-0x1,_0xb63c1=this[_0x5b81dc(0x24c)](0x6a,_0x4ba0b4,0x0,0x0,0x0,0x0,0x0,0x0,_0xe5f6ee);return _0xb63c1+=this[_0x5b81dc(0x24c)](0x6a,0x0,0x0,_0x30b9a0,0x0,0x0,0x0,0x0,_0xe5f6ee+0x1),{'directoryEntry':_0xb63c1,'parameterEntry':_0x4dd6fb,'lineCount':_0x30b9a0};},'_createNurbsCurveEntity':function(_0x360695,_0x1cf5ee,_0xa7e19f,_0x2cda4b,_0x19d803,_0x676d6a){const _0x3162b2=a0_0x464df3;let _0x2004a8=_0x3162b2(0x23b)+(_0x360695[_0x3162b2(0x1e9)]-0x1)+','+_0x2cda4b+_0x3162b2(0x21a);for(let _0x13b300 of _0xa7e19f)_0x2004a8+=','+this[_0x3162b2(0x269)](_0x13b300);for(let _0x2f599a of _0x1cf5ee)_0x2004a8+=','+this[_0x3162b2(0x269)](_0x2f599a);for(let _0x271d65=0x0;_0x271d65<_0x360695[_0x3162b2(0x1e9)];_0x271d65++){let _0x39cdf3=_0x360695[_0x271d65];_0x2004a8+=','+this['_formatNumber'](_0x39cdf3[0x0])+','+this['_formatNumber'](_0x39cdf3[0x1])+','+this[_0x3162b2(0x269)](_0x39cdf3[0x2]);}_0x2004a8+=','+this[_0x3162b2(0x269)](_0xa7e19f[0x0])+','+this[_0x3162b2(0x269)](_0xa7e19f[_0xa7e19f[_0x3162b2(0x1e9)]-0x1]),_0x2004a8+=_0x3162b2(0x22a),_0x2004a8+=';';let _0x399aa4=_0x19d803,_0x3e8440=this[_0x3162b2(0x1ea)](_0x2004a8,_0x676d6a,_0x399aa4),_0x1d5201=_0x3e8440[_0x3162b2(0x1ef)]('\x0a')[_0x3162b2(0x1e9)]-0x1,_0x401bea=this[_0x3162b2(0x24c)](0x7e,_0x676d6a,0x0,0x0,0x0,0x0,0x0,0x0,_0x19d803);return _0x401bea+=this['_formatDirectoryLine'](0x7e,0x0,0x0,_0x1d5201,0x0,0x0,0x0,0x0,_0x19d803+0x1),{'directoryEntry':_0x401bea,'parameterEntry':_0x3e8440,'lineCount':_0x1d5201};},'_createNurbsSurfaceEntity':function(_0xc23839,_0x2997b9,_0x5ec9bc,_0x12044e,_0xd346a8,_0x17f64c,_0x3cde5c,_0x35a3d3){const _0x8fd376=a0_0x464df3;let _0x598553=_0xc23839[_0x8fd376(0x1e9)],_0x16dd50=_0xc23839[0x0][_0x8fd376(0x1e9)],_0x42d95a=_0x598553-0x1,_0xf64417=_0x16dd50-0x1,_0xc666f9=_0x8fd376(0x228)+_0x42d95a+','+_0xf64417+','+_0xd346a8+','+_0x17f64c+_0x8fd376(0x267);for(let _0x22de14 of _0x5ec9bc)_0xc666f9+=','+this[_0x8fd376(0x269)](_0x22de14);for(let _0x3c0d8e of _0x12044e)_0xc666f9+=','+this[_0x8fd376(0x269)](_0x3c0d8e);for(let _0x39a872=0x0;_0x39a872<=_0xf64417;_0x39a872++)for(let _0x57cfae=0x0;_0x57cfae<=_0x42d95a;_0x57cfae++)_0xc666f9+=','+this['_formatNumber'](_0x2997b9[_0x57cfae][_0x39a872]);for(let _0x29279e=0x0;_0x29279e<=_0xf64417;_0x29279e++)for(let _0x597a6e=0x0;_0x597a6e<=_0x42d95a;_0x597a6e++){let _0x4bbebd=_0xc23839[_0x597a6e][_0x29279e];_0xc666f9+=','+this['_formatNumber'](_0x4bbebd[0x0])+','+this[_0x8fd376(0x269)](_0x4bbebd[0x1])+','+this[_0x8fd376(0x269)](_0x4bbebd[0x2]);}_0xc666f9+=','+this[_0x8fd376(0x269)](_0x5ec9bc[0x0])+','+this[_0x8fd376(0x269)](_0x5ec9bc[_0x5ec9bc['length']-0x1]),_0xc666f9+=','+this['_formatNumber'](_0x12044e[0x0])+','+this[_0x8fd376(0x269)](_0x12044e[_0x12044e[_0x8fd376(0x1e9)]-0x1]),_0xc666f9+=';';let _0x3ac444=_0x3cde5c,_0x2ebe93=this[_0x8fd376(0x1ea)](_0xc666f9,_0x35a3d3,_0x3ac444),_0x2d0b19=_0x2ebe93[_0x8fd376(0x1ef)]('\x0a')[_0x8fd376(0x1e9)]-0x1,_0x48fc39=this[_0x8fd376(0x24c)](0x80,_0x35a3d3,0x0,0x0,0x0,0x0,0x0,0x0,_0x3cde5c);return _0x48fc39+=this['_formatDirectoryLine'](0x80,0x0,0x0,_0x2d0b19,0x0,0x0,0x0,0x0,_0x3cde5c+0x1),{'directoryEntry':_0x48fc39,'parameterEntry':_0x2ebe93,'lineCount':_0x2d0b19};},'nurbsSurfaceToIges':function(_0x13d393,_0x4da875={}){const _0x2c44ff=a0_0x464df3;let _0x4fcff0={'units':'MM','filename':'nurbs_surface.iges','author':_0x2c44ff(0x245),'organization':'D#','degreeU':0x3,'degreeV':0x3,'weights':null,'knotsU':null,'knotsV':null,..._0x4da875};if(!Array[_0x2c44ff(0x1fd)](_0x13d393)||_0x13d393['length']===0x0||!Array[_0x2c44ff(0x1fd)](_0x13d393[0x0]))throw new Error(_0x2c44ff(0x1ec));let _0x2f6499=_0x13d393[_0x2c44ff(0x1e9)],_0xede4ab=_0x13d393[0x0]['length'];if(_0x2f6499<_0x4fcff0[_0x2c44ff(0x21d)]+0x1||_0xede4ab<_0x4fcff0['degreeV']+0x1)throw new Error(_0x2c44ff(0x243));let _0x3e5d2c=_0x13d393[_0x2c44ff(0x1fa)](_0x3665e7=>_0x3665e7[_0x2c44ff(0x1fa)](_0x1bde0c=>{const _0x28c896=_0x2c44ff;if(!Array[_0x28c896(0x1fd)](_0x1bde0c)||_0x1bde0c[_0x28c896(0x1e9)]<0x2)throw new Error(_0x28c896(0x259));return[_0x1bde0c[0x0]||0x0,_0x1bde0c[0x1]||0x0,_0x1bde0c[0x2]||0x0];})),_0x108073=_0x4fcff0['weights'];_0x108073||(_0x108073=new Array(_0x2f6499)[_0x2c44ff(0x1e1)](0x0)[_0x2c44ff(0x1fa)](()=>new Array(_0xede4ab)[_0x2c44ff(0x1e1)](0x1)));let _0x4c86b9=_0x4fcff0[_0x2c44ff(0x24e)];if(!_0x4c86b9)throw new Error(_0x2c44ff(0x265));let _0x7d259a=_0x4fcff0['knotsV'];if(!_0x7d259a)throw new Error(_0x2c44ff(0x265));let _0x2cd481='',_0x3ed3b9='',_0x56023c='',_0x4b3ef9=0x1,_0x1c9133=0x1;_0x2cd481=this[_0x2c44ff(0x1fc)](_0x4fcff0);let _0x58dccd=this[_0x2c44ff(0x1e4)](_0x3e5d2c,_0x108073,_0x4c86b9,_0x7d259a,_0x4fcff0[_0x2c44ff(0x21d)],_0x4fcff0['degreeV'],_0x1c9133,_0x4b3ef9);_0x3ed3b9+=_0x58dccd[_0x2c44ff(0x24a)],_0x56023c+=_0x58dccd['parameterEntry'],_0x1c9133+=0x2,_0x4b3ef9+=_0x58dccd['lineCount'];let _0x54fe78=this[_0x2c44ff(0x20f)](_0x2c44ff(0x21c),[_0x2c44ff(0x26c),_0x2c44ff(0x204)]),_0xc7b68d=this['_formatTerminateSection'](_0x54fe78['split']('\x0a')[_0x2c44ff(0x1e9)]-0x1,_0x2cd481[_0x2c44ff(0x1ef)]('\x0a')[_0x2c44ff(0x1e9)]-0x1,_0x3ed3b9[_0x2c44ff(0x1ef)]('\x0a')[_0x2c44ff(0x1e9)]-0x1,_0x56023c[_0x2c44ff(0x1ef)]('\x0a')[_0x2c44ff(0x1e9)]-0x1);return _0x54fe78+_0x2cd481+_0x3ed3b9+_0x56023c+_0xc7b68d;},'geometryToIges':function(_0x2b5e6c,_0x50b082={}){const _0x44745c=a0_0x464df3;let _0xdd4fb={'units':'MM','filename':_0x44745c(0x266),'author':_0x44745c(0x20b),'organization':'D3',..._0x50b082};if(!Array[_0x44745c(0x1fd)](_0x2b5e6c)||_0x2b5e6c[_0x44745c(0x1e9)]===0x0)throw new Error(_0x44745c(0x221));let _0x28d0b6='',_0x434142='',_0x1c825f='',_0x3962c6=0x1,_0x2efddc=0x1,_0x68dded=0x0;_0x28d0b6=this[_0x44745c(0x1fc)](_0xdd4fb);for(let _0x435561 of _0x2b5e6c){if(!_0x435561||typeof _0x435561!=_0x44745c(0x23e)||!_0x435561[_0x44745c(0x20e)]||!_0x435561[_0x44745c(0x1ff)])throw new Error(_0x44745c(0x26b));let _0x3cd2cc=_0x435561[_0x44745c(0x20e)],_0x58eb69=_0x435561[_0x44745c(0x1ff)],_0x59622d;if(_0x3cd2cc===_0x44745c(0x207)?_0x59622d=_0x58eb69[_0x44745c(0x1fa)](_0x440976=>_0x440976[_0x44745c(0x1fa)](_0x12014d=>{const _0x90c5e8=_0x44745c;if(!Array[_0x90c5e8(0x1fd)](_0x12014d)||_0x12014d[_0x90c5e8(0x1e9)]<0x2)throw new Error(_0x90c5e8(0x24f));return[_0x12014d[0x0]||0x0,_0x12014d[0x1]||0x0,_0x12014d[0x2]||0x0];})):_0x59622d=_0x58eb69[_0x44745c(0x1fa)](_0xa4c230=>{const _0x2c5da1=_0x44745c;if(!Array[_0x2c5da1(0x1fd)](_0xa4c230)||_0xa4c230[_0x2c5da1(0x1e9)]<0x2)throw new Error(_0x2c5da1(0x24f));return[_0xa4c230[0x0]||0x0,_0xa4c230[0x1]||0x0,_0xa4c230[0x2]||0x0];}),_0x59622d['length']!==0x0)switch(_0x3cd2cc){case _0x44745c(0x236):for(let _0x28d19c of _0x59622d){_0x68dded++;let _0x2f010=this[_0x44745c(0x1dc)](_0x28d19c,_0x2efddc,_0x3962c6);_0x434142+=_0x2f010[_0x44745c(0x24a)],_0x1c825f+=_0x2f010[_0x44745c(0x206)],_0x2efddc+=0x2,_0x3962c6+=_0x2f010[_0x44745c(0x22f)];}break;case _0x44745c(0x229):if(_0x59622d['length']>0x1){_0x68dded++;let _0x2ee9a9=this[_0x44745c(0x1f9)](_0x59622d,_0x2efddc,_0x3962c6);_0x434142+=_0x2ee9a9[_0x44745c(0x24a)],_0x1c825f+=_0x2ee9a9[_0x44745c(0x206)],_0x2efddc+=0x2,_0x3962c6+=_0x2ee9a9['lineCount'];}break;case _0x44745c(0x249):let _0x396939=_0x435561[_0x44745c(0x244)]||0x3,_0x449962=_0x59622d[_0x44745c(0x1e9)];if(_0x449962<_0x396939+0x1){console[_0x44745c(0x224)](_0x44745c(0x24b)+(_0x396939+0x1)+_0x44745c(0x1e3)+_0x396939);continue;}let _0x2cb3cc=_0x435561[_0x44745c(0x217)]||new Array(_0x449962)['fill'](0x1);if(_0x2cb3cc[_0x44745c(0x1e9)]!==_0x449962)throw new Error(_0x44745c(0x252));let _0x2d5605=_0x435561[_0x44745c(0x257)],_0x30c345=_0x449962+_0x396939+0x1;if(_0x2d5605['length']!==_0x30c345)throw new Error('Invalid\x20knot\x20vector\x20length:\x20expected\x20'+_0x30c345+',\x20got\x20'+_0x2d5605[_0x44745c(0x1e9)]);_0x68dded++;let _0x1a8314=this[_0x44745c(0x1f2)](_0x59622d,_0x2cb3cc,_0x2d5605,_0x396939,_0x2efddc,_0x3962c6);_0x434142+=_0x1a8314['directoryEntry'],_0x1c825f+=_0x1a8314[_0x44745c(0x206)],_0x2efddc+=0x2,_0x3962c6+=_0x1a8314[_0x44745c(0x22f)];break;case _0x44745c(0x207):let _0x4464d9=_0x435561[_0x44745c(0x21d)]||0x3,_0x55a92e=_0x435561[_0x44745c(0x1dd)]||0x3,_0x577018=_0x59622d[_0x44745c(0x1e9)],_0x9afc37=_0x59622d[0x0][_0x44745c(0x1e9)];if(_0x577018<_0x4464d9+0x1||_0x9afc37<_0x55a92e+0x1){console['warn'](_0x44745c(0x220));continue;}let _0x5cf0e1=_0x435561['weights'];_0x5cf0e1||(_0x5cf0e1=new Array(_0x577018)[_0x44745c(0x1e1)](0x0)[_0x44745c(0x1fa)](()=>new Array(_0x9afc37)[_0x44745c(0x1e1)](0x1)));let _0x395347=_0x435561[_0x44745c(0x24e)],_0x4b96bd=_0x435561['knotsV'];if(!_0x395347||!_0x4b96bd)throw new Error(_0x44745c(0x201));_0x68dded++;let _0x3cf3a9=this['_createNurbsSurfaceEntity'](_0x59622d,_0x5cf0e1,_0x395347,_0x4b96bd,_0x4464d9,_0x55a92e,_0x2efddc,_0x3962c6);_0x434142+=_0x3cf3a9[_0x44745c(0x24a)],_0x1c825f+=_0x3cf3a9[_0x44745c(0x206)],_0x2efddc+=0x2,_0x3962c6+=_0x3cf3a9[_0x44745c(0x22f)];break;default:throw new Error(_0x44745c(0x216)+_0x3cd2cc+_0x44745c(0x211));}}if(_0x68dded===0x0)throw new Error(_0x44745c(0x25e));let _0xd1513b=this[_0x44745c(0x20f)]('START',[_0x44745c(0x26c),_0x44745c(0x227)]),_0x376dd8=this[_0x44745c(0x1fb)](_0xd1513b[_0x44745c(0x1ef)]('\x0a')[_0x44745c(0x1e9)]-0x1,_0x28d0b6['split']('\x0a')[_0x44745c(0x1e9)]-0x1,_0x434142['split']('\x0a')[_0x44745c(0x1e9)]-0x1,_0x1c825f[_0x44745c(0x1ef)]('\x0a')[_0x44745c(0x1e9)]-0x1);return _0xd1513b+_0x28d0b6+_0x434142+_0x1c825f+_0x376dd8;},'_parseIgesNumber':function(_0xfec897){const _0x51624c=a0_0x464df3;if(!_0xfec897||typeof _0xfec897!=_0x51624c(0x263))return 0x0;let _0x3f548f=_0xfec897[_0x51624c(0x1e5)]()[_0x51624c(0x208)](/D([+-]?\d+)/g,_0x51624c(0x240)),_0x260363=parseFloat(_0x3f548f);return isNaN(_0x260363)?0x0:_0x260363;},'_processEntity':function(_0x29c496,_0x264da6,_0x261d50,_0x33a16f,_0x30c880){const _0x95dddc=a0_0x464df3;let _0x53e8bf=_0x29c496[_0x95dddc(0x208)](';','')[_0x95dddc(0x1ef)](',')[_0x95dddc(0x1fa)](_0x42215f=>_0x42215f[_0x95dddc(0x1e5)]());if(_0x53e8bf[_0x95dddc(0x1e9)]===0x0)return;switch(parseInt(_0x53e8bf[0x0])){case 0x74:this['_processPointEntity'](_0x53e8bf,_0x261d50);break;case 0x6a:this[_0x95dddc(0x261)](_0x53e8bf,_0x264da6);break;case 0x7e:this[_0x95dddc(0x22b)](_0x53e8bf,_0x33a16f);break;case 0x80:_0x30c880&&this[_0x95dddc(0x218)](_0x53e8bf,_0x30c880);break;case 0x6e:this[_0x95dddc(0x1e0)](_0x53e8bf,_0x264da6);break;default:break;}},'_processPointEntity':function(_0x20eee4,_0x3f1710){const _0x2b57a9=a0_0x464df3;if(_0x20eee4[_0x2b57a9(0x1e9)]>=0x4){let _0xfe894a=this[_0x2b57a9(0x25f)](_0x20eee4[0x1]),_0x5198e1=this[_0x2b57a9(0x25f)](_0x20eee4[0x2]),_0x1012fe=this[_0x2b57a9(0x25f)](_0x20eee4[0x3]);_0x3f1710[_0x2b57a9(0x1e2)]([_0xfe894a,_0x5198e1,_0x1012fe]);}},'_processPolylineEntity':function(_0x4f3778,_0x214cd8){const _0x3e3f6d=a0_0x464df3;if(_0x4f3778[_0x3e3f6d(0x1e9)]<0x2)return;let _0x10dc4a=parseInt(_0x4f3778[0x1]),_0x683a17=0x2+(_0x10dc4a+0x1)*0x3;if(_0x4f3778[_0x3e3f6d(0x1e9)]<_0x683a17)return;let _0x45e777=[];for(let _0x2412e8=0x0;_0x2412e8<=_0x10dc4a;_0x2412e8++){let _0x301a46=0x2+_0x2412e8*0x3;if(_0x301a46+0x2<_0x4f3778[_0x3e3f6d(0x1e9)]){let _0x526d54=this[_0x3e3f6d(0x25f)](_0x4f3778[_0x301a46]),_0x808fb2=this['_parseIgesNumber'](_0x4f3778[_0x301a46+0x1]),_0x3467d8=this[_0x3e3f6d(0x25f)](_0x4f3778[_0x301a46+0x2]);_0x45e777[_0x3e3f6d(0x1e2)]([_0x526d54,_0x808fb2,_0x3467d8]);}}_0x45e777[_0x3e3f6d(0x1e9)]>0x1&&_0x214cd8[_0x3e3f6d(0x1e2)](_0x45e777);},'_processLineEntity':function(_0x4d8306,_0xdd070b){const _0x5f59d6=a0_0x464df3;if(_0x4d8306[_0x5f59d6(0x1e9)]>=0x7){let _0x177f13=this[_0x5f59d6(0x25f)](_0x4d8306[0x1]),_0x1a3efc=this['_parseIgesNumber'](_0x4d8306[0x2]),_0x45a3c4=this[_0x5f59d6(0x25f)](_0x4d8306[0x3]),_0x203aaa=this[_0x5f59d6(0x25f)](_0x4d8306[0x4]),_0x39a60b=this[_0x5f59d6(0x25f)](_0x4d8306[0x5]),_0x5830a1=this[_0x5f59d6(0x25f)](_0x4d8306[0x6]);_0xdd070b[_0x5f59d6(0x1e2)]([[_0x177f13,_0x1a3efc,_0x45a3c4],[_0x203aaa,_0x39a60b,_0x5830a1]]);}},'_processNurbsCurveEntity':function(_0x1504a9,_0x3a0054){const _0x30715e=a0_0x464df3;if(_0x1504a9[_0x30715e(0x1e9)]<0x7)return;let _0x4f82ff=parseInt(_0x1504a9[0x1]),_0x531a0d=parseInt(_0x1504a9[0x2]),_0x33207f=parseInt(_0x1504a9[0x3]),_0x59cfab=parseInt(_0x1504a9[0x4]),_0x41721e=parseInt(_0x1504a9[0x5]),_0x11e532=parseInt(_0x1504a9[0x6]),_0x69e921=_0x4f82ff+0x1,_0x2af17b=_0x4f82ff+_0x531a0d+0x2,_0x152bbe=0x7,_0x26dce0=_0x152bbe+_0x2af17b,_0x5658ea=_0x26dce0+_0x69e921+_0x69e921+_0x69e921+_0x69e921+0x2;if(_0x1504a9['length']<_0x5658ea+0x3)return;let _0x33202b=[];for(let _0x7d7d08=0x0;_0x7d7d08<_0x2af17b;_0x7d7d08++)_0x33202b[_0x30715e(0x1e2)](this[_0x30715e(0x25f)](_0x1504a9[_0x152bbe+_0x7d7d08]));let _0x12c53f=[];for(let _0x34f378=0x0;_0x34f378<_0x69e921;_0x34f378++)_0x12c53f[_0x30715e(0x1e2)](this[_0x30715e(0x25f)](_0x1504a9[_0x26dce0+_0x34f378])||0x1);let _0xd09443=[],_0x11075b=_0x26dce0+_0x69e921,_0x5b9185=_0x11075b+_0x69e921*0x3;if(_0x1504a9[_0x30715e(0x1e9)]>=_0x5b9185+0x5){for(let _0x3bacd5=0x0;_0x3bacd5<_0x69e921;_0x3bacd5++){let _0x2930bd=_0x11075b+_0x3bacd5*0x3,_0x49c4f9=this[_0x30715e(0x25f)](_0x1504a9[_0x2930bd]),_0x3acc52=this[_0x30715e(0x25f)](_0x1504a9[_0x2930bd+0x1]),_0x7581b8=this['_parseIgesNumber'](_0x1504a9[_0x2930bd+0x2]);_0xd09443['push']([_0x49c4f9,_0x3acc52,_0x7581b8]);}let _0x38bfbb=_0x5b9185,_0x188fcb=_0x38bfbb+0x2,_0x2f3da2=this['_parseIgesNumber'](_0x1504a9[_0x38bfbb]),_0x5b763d=this[_0x30715e(0x25f)](_0x1504a9[_0x38bfbb+0x1])||0x1,_0x33ae57=[this[_0x30715e(0x25f)](_0x1504a9[_0x188fcb]),this[_0x30715e(0x25f)](_0x1504a9[_0x188fcb+0x1]),this[_0x30715e(0x25f)](_0x1504a9[_0x188fcb+0x2])],_0x579f17={'type':_0x30715e(0x249),'degree':_0x531a0d,'controlPoints':_0xd09443,'weights':_0x12c53f,'knots':_0x33202b,'parameterRange':[_0x2f3da2,_0x5b763d],'properties':{'planar':_0x33207f===0x1,'closed':_0x59cfab===0x1,'rational':_0x41721e===0x1,'periodic':_0x11e532===0x1},'normalVector':_0x33ae57,'numControlPoints':_0x69e921,'numKnots':_0x2af17b,'upperControlPointIndex':_0x4f82ff};_0x3a0054['push'](_0x579f17);}else{let _0x21c2ba=_0x26dce0+_0x69e921,_0x32c9ee=_0x21c2ba+_0x69e921,_0x80b778=_0x32c9ee+_0x69e921,_0x11f9a9=_0x80b778+_0x69e921,_0x15f812=_0x11f9a9+0x2;if(_0x1504a9[_0x30715e(0x1e9)]<_0x15f812+0x3)return;for(let _0x52c6f0=0x0;_0x52c6f0<_0x69e921;_0x52c6f0++){let _0x30a348=this[_0x30715e(0x25f)](_0x1504a9[_0x21c2ba+_0x52c6f0]),_0x10e1ba=this['_parseIgesNumber'](_0x1504a9[_0x32c9ee+_0x52c6f0]),_0x38688d=this['_parseIgesNumber'](_0x1504a9[_0x80b778+_0x52c6f0]);_0xd09443[_0x30715e(0x1e2)]([_0x30a348,_0x10e1ba,_0x38688d]);}let _0x3dfc07=this['_parseIgesNumber'](_0x1504a9[_0x11f9a9]),_0xc0832=this[_0x30715e(0x25f)](_0x1504a9[_0x11f9a9+0x1])||0x1,_0x4e3e76=[this['_parseIgesNumber'](_0x1504a9[_0x15f812]),this[_0x30715e(0x25f)](_0x1504a9[_0x15f812+0x1]),this['_parseIgesNumber'](_0x1504a9[_0x15f812+0x2])],_0x4cf46c={'type':_0x30715e(0x249),'degree':_0x531a0d,'controlPoints':_0xd09443,'weights':_0x12c53f,'knots':_0x33202b,'parameterRange':[_0x3dfc07,_0xc0832],'properties':{'planar':_0x33207f===0x1,'closed':_0x59cfab===0x1,'rational':_0x41721e===0x1,'periodic':_0x11e532===0x1},'normalVector':_0x4e3e76,'numControlPoints':_0x69e921,'numKnots':_0x2af17b,'upperControlPointIndex':_0x4f82ff};_0x3a0054[_0x30715e(0x1e2)](_0x4cf46c);}},'_processNurbsSurfaceEntity':function(_0xdc009a,_0x5df62f){const _0x976c36=a0_0x464df3;if(_0xdc009a[_0x976c36(0x1e9)]<0xa)return;let _0x460d40=parseInt(_0xdc009a[0x1]),_0x45894f=parseInt(_0xdc009a[0x2]),_0x2fc692=parseInt(_0xdc009a[0x3]),_0x3df92b=parseInt(_0xdc009a[0x4]),_0xa9299=parseInt(_0xdc009a[0x5]),_0x483c27=parseInt(_0xdc009a[0x6]),_0x58906f=parseInt(_0xdc009a[0x7]),_0x212bce=parseInt(_0xdc009a[0x8]),_0x1d3ab3=parseInt(_0xdc009a[0x9]),_0x3e1e05=_0x460d40+0x1,_0x193e7c=_0x45894f+0x1,_0x45a3ab=_0x460d40+_0x2fc692+0x2,_0x3253c7=_0x45894f+_0x3df92b+0x2,_0x6ca7eb=0xa,_0x49d09d=[];for(let _0x4f165e=0x0;_0x4f165e<_0x45a3ab;_0x4f165e++)_0x49d09d[_0x976c36(0x1e2)](this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++]));let _0x4ae0f0=[];for(let _0xbc1042=0x0;_0xbc1042<_0x3253c7;_0xbc1042++)_0x4ae0f0[_0x976c36(0x1e2)](this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++]));let _0x7ce329={'type':'nurbsSurface','degreeU':_0x2fc692,'degreeV':_0x3df92b,'controlPoints':[],'weights':[],'knotsU':_0x49d09d,'knotsV':_0x4ae0f0,'properties':{'closedU':_0xa9299===0x1,'closedV':_0x483c27===0x1,'rational':_0x58906f===0x1,'periodicU':_0x212bce===0x1,'periodicV':_0x1d3ab3===0x1}};for(let _0x96b321=0x0;_0x96b321<_0x3e1e05;_0x96b321++)_0x7ce329[_0x976c36(0x217)][_0x976c36(0x1e2)](new Array(_0x193e7c)),_0x7ce329['controlPoints'][_0x976c36(0x1e2)](new Array(_0x193e7c));for(let _0x16a187=0x0;_0x16a187<_0x193e7c;_0x16a187++)for(let _0x12b646=0x0;_0x12b646<_0x3e1e05;_0x12b646++)_0x7ce329['weights'][_0x12b646][_0x16a187]=this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++])||0x1;for(let _0x169b0a=0x0;_0x169b0a<_0x193e7c;_0x169b0a++)for(let _0x4da741=0x0;_0x4da741<_0x3e1e05;_0x4da741++){let _0x28e85b=this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++]),_0x3d72fd=this['_parseIgesNumber'](_0xdc009a[_0x6ca7eb++]),_0x25b4d3=this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++]);_0x7ce329[_0x976c36(0x241)][_0x4da741][_0x169b0a]=[_0x28e85b,_0x3d72fd,_0x25b4d3];}if(_0x6ca7eb+0x4<=_0xdc009a[_0x976c36(0x1e9)]){let _0x33d166=this['_parseIgesNumber'](_0xdc009a[_0x6ca7eb++]),_0x11edb0=this['_parseIgesNumber'](_0xdc009a[_0x6ca7eb++]),_0x54d953=this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++]),_0xf9bde6=this[_0x976c36(0x25f)](_0xdc009a[_0x6ca7eb++]);_0x7ce329['parameterRangeU']=[_0x33d166,_0x11edb0],_0x7ce329[_0x976c36(0x21b)]=[_0x54d953,_0xf9bde6];}_0x5df62f['push'](_0x7ce329);},'igesToGeometry':function(_0x2a4f78){const _0x490fe3=a0_0x464df3;if(!_0x2a4f78||typeof _0x2a4f78!=_0x490fe3(0x263))throw new Error(_0x490fe3(0x214));let _0x3cc8c2=[],_0x5c36aa=[],_0x4c6275=[],_0x2c5077=[],_0x1f6f2f=_0x2a4f78[_0x490fe3(0x1ef)]('\x0a')['filter'](_0x47bab3=>_0x47bab3[_0x490fe3(0x1e5)]()&&_0x47bab3[_0x490fe3(0x209)](0x48)==='P'),_0x27e310='';for(let _0x598e28 of _0x1f6f2f){let _0x444deb=_0x598e28[_0x490fe3(0x20c)](0x0,0x40)[_0x490fe3(0x1e5)]();_0x27e310+=_0x444deb,_0x444deb[_0x490fe3(0x254)](';')&&(this[_0x490fe3(0x256)](_0x27e310,_0x3cc8c2,_0x5c36aa,_0x4c6275,_0x2c5077),_0x27e310='');}return{'lines':_0x3cc8c2,'points':_0x5c36aa,'nurbsCurves':_0x4c6275,'nurbsSurfaces':_0x2c5077};}};if(new Date()[a0_0x464df3(0x1f3)]()>0x7ea)throw new Error('');export{O as Bspline3d,A as Cspline3d,K as Iges,T as Matrix,D as Point3d,j as Polyline3D,k as Utils,w as Vector3d};
|