@tomaso909/js3d 1.4.1 → 1.6.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 CHANGED
@@ -1 +1 @@
1
- const a0_0x5ba413=a0_0x1477;(function(_0x577518,_0x13ec33){const _0x428d94=a0_0x1477,_0x12f537=_0x577518();while(!![]){try{const _0x112451=-parseInt(_0x428d94(0x155))/0x1+parseInt(_0x428d94(0x15c))/0x2*(parseInt(_0x428d94(0x172))/0x3)+-parseInt(_0x428d94(0x174))/0x4+parseInt(_0x428d94(0x169))/0x5*(parseInt(_0x428d94(0x154))/0x6)+parseInt(_0x428d94(0x178))/0x7*(-parseInt(_0x428d94(0x170))/0x8)+-parseInt(_0x428d94(0x177))/0x9+parseInt(_0x428d94(0x15d))/0xa;if(_0x112451===_0x13ec33)break;else _0x12f537['push'](_0x12f537['shift']());}catch(_0x39389b){_0x12f537['push'](_0x12f537['shift']());}}}(a0_0x3537,0xcd4b2));function a0_0x3537(){const _0x44407b=['totalLength','9294072shkaIL','1641430MNdNZG','add','forEach','sqrt','cos','move','dot','3932XFVXHk','29057790CmYnwp','bad\x20knot\x20vector\x20length','map','min','length','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','log','zerosMat','findParameterAtPoint','_gaussJ','push','cumulativeLength','5NfhNgy','out\x20of\x20bounds','swapRows','sin','pow','sub','points','136soAmRO','scalarProduct','933kcXtmA','getFullYear','3907216fgRLHF','acos','segmentLengths','2226510QFdHpb','559881ivWdGu'];a0_0x3537=function(){return _0x44407b;};return a0_0x3537();}var d={'length':function(_0x44c07f){return Math['sqrt'](_0x44c07f[0x0]**0x2+_0x44c07f[0x1]**0x2+_0x44c07f[0x2]**0x2);},'scalarProduct':function(_0x5007f2,_0xa60b14){return[_0x5007f2[0x0]*_0xa60b14,_0x5007f2[0x1]*_0xa60b14,_0x5007f2[0x2]*_0xa60b14];},'dot':function(_0x2d8afd,_0xc14e0e){return _0x2d8afd[0x0]*_0xc14e0e[0x0]+_0x2d8afd[0x1]*_0xc14e0e[0x1]+_0x2d8afd[0x2]*_0xc14e0e[0x2];},'angle':function(_0x15d624,_0x15f55a){const _0x18082c=a0_0x1477;let _0x5c39f0=this[_0x18082c(0x15b)](_0x15d624,_0x15f55a)/(this[_0x18082c(0x161)](_0x15d624)*this[_0x18082c(0x161)](_0x15f55a));return _0x5c39f0!=0x0?Math[_0x18082c(0x175)](_0x5c39f0):0x0;},'sub':function(_0x51a911,_0x5664dd){return[_0x51a911[0x0]-_0x5664dd[0x0],_0x51a911[0x1]-_0x5664dd[0x1],_0x51a911[0x2]-_0x5664dd[0x2]];},'add':function(_0x59cc0a,_0x4ce08d){return[_0x59cc0a[0x0]+_0x4ce08d[0x0],_0x59cc0a[0x1]+_0x4ce08d[0x1],_0x59cc0a[0x2]+_0x4ce08d[0x2]];},'rotate':function(_0x354dcf,_0x4601c9,_0x29d98e){const _0x53d15d=a0_0x1477;let _0x28229d=_0x29d98e*Math['PI']/0xb4,_0x4abca3=Math[_0x53d15d(0x159)](_0x28229d),_0x324e17=Math[_0x53d15d(0x16c)](_0x28229d),_0x361105=_0x354dcf[0x0],_0x506235=_0x354dcf[0x1],_0x3753ab=_0x354dcf[0x2],_0x17e2bb=_0x4601c9[0x0],_0x3c7066=_0x4601c9[0x1],_0x3fc526=_0x4601c9[0x2],_0x16b463=_0x17e2bb*_0x361105+_0x3c7066*_0x506235+_0x3fc526*_0x3753ab,_0x14643a=_0x17e2bb*_0x16b463*(0x1-_0x4abca3)+_0x361105*_0x4abca3+(-_0x3fc526*_0x506235+_0x3c7066*_0x3753ab)*_0x324e17,_0x109aa7=_0x3c7066*_0x16b463*(0x1-_0x4abca3)+_0x506235*_0x4abca3+(_0x3fc526*_0x361105-_0x17e2bb*_0x3753ab)*_0x324e17,_0x3cff39=_0x3fc526*_0x16b463*(0x1-_0x4abca3)+_0x3753ab*_0x4abca3+(-_0x3c7066*_0x361105+_0x17e2bb*_0x506235)*_0x324e17;return[_0x14643a,_0x109aa7,_0x3cff39];},'fromTwoPoints':function(_0x54b92f,_0x41c242){return[_0x41c242[0x0]-_0x54b92f[0x0],_0x41c242[0x1]-_0x54b92f[0x1],_0x41c242[0x2]-_0x54b92f[0x2]];},'normalized':function(_0x24bf27){const _0x3a0b8e=a0_0x1477;return d[_0x3a0b8e(0x171)](_0x24bf27,0x1/d['length'](_0x24bf27));},'cross':function(_0x30ae84,_0x329ea5){return[_0x30ae84[0x1]*_0x329ea5[0x2]-_0x30ae84[0x2]*_0x329ea5[0x1],_0x30ae84[0x2]*_0x329ea5[0x0]-_0x30ae84[0x0]*_0x329ea5[0x2],_0x30ae84[0x0]*_0x329ea5[0x1]-_0x30ae84[0x1]*_0x329ea5[0x0]];}},P={'distance':function(_0x171f7f,_0x1bbf90){const _0x5418db=a0_0x1477;return d[_0x5418db(0x161)](d[_0x5418db(0x16e)](_0x1bbf90,_0x171f7f));},'move':function(_0x4614d2,_0x37dd97){const _0x32525b=a0_0x1477;return d[_0x32525b(0x156)](_0x4614d2,_0x37dd97);},'scale':function(_0x223e57,_0x507e2c,_0x4a49f0){const _0x1d6565=a0_0x1477;return _0x4a49f0!=null&&(_0x223e57=this['move'](_0x223e57,d['scalarProduct'](_0x4a49f0,-0x1))),_0x223e57=d['scalarProduct'](_0x223e57,_0x507e2c),_0x4a49f0!=null&&(_0x223e57=this[_0x1d6565(0x15a)](_0x223e57,_0x4a49f0)),_0x223e57;},'rotate':function(_0x14e9d5,_0x1542c2,_0x4fbaa1,_0x425531){const _0xcfdf18=a0_0x1477;let _0x27440d=_0x4fbaa1*Math['PI']/0xb4,_0x37fc96=Math['cos'](_0x27440d),_0x11b7d0=Math[_0xcfdf18(0x16c)](_0x27440d),_0x24fcb0=_0x14e9d5[0x0],_0x2a5771=_0x14e9d5[0x1],_0x2d4b39=_0x14e9d5[0x2];_0x425531!=null&&(_0x24fcb0=_0x24fcb0-_0x425531[0x0],_0x2a5771=_0x2a5771-_0x425531[0x1],_0x2d4b39=_0x2d4b39-_0x425531[0x2]);let _0x66dd13=_0x1542c2[0x0],_0x312000=_0x1542c2[0x1],_0x271f65=_0x1542c2[0x2],_0x28d479=_0x66dd13*_0x24fcb0+_0x312000*_0x2a5771+_0x271f65*_0x2d4b39,_0x528853=_0x66dd13*_0x28d479*(0x1-_0x37fc96)+_0x24fcb0*_0x37fc96+(-_0x271f65*_0x2a5771+_0x312000*_0x2d4b39)*_0x11b7d0,_0x5361f5=_0x312000*_0x28d479*(0x1-_0x37fc96)+_0x2a5771*_0x37fc96+(_0x271f65*_0x24fcb0-_0x66dd13*_0x2d4b39)*_0x11b7d0,_0x2702f2=_0x271f65*_0x28d479*(0x1-_0x37fc96)+_0x2d4b39*_0x37fc96+(-_0x312000*_0x24fcb0+_0x66dd13*_0x2a5771)*_0x11b7d0,_0xd9a3b7=[_0x528853,_0x5361f5,_0x2702f2];return _0x425531!=null&&(_0xd9a3b7[0x0]=_0xd9a3b7[0x0]+_0x425531[0x0],_0xd9a3b7[0x1]=_0xd9a3b7[0x1]+_0x425531[0x1],_0xd9a3b7[0x2]=_0xd9a3b7[0x2]+_0x425531[0x2]),_0xd9a3b7;},'project':function(_0x46fd43,_0x4b19e4,_0x10b977){const _0x2a155a=a0_0x1477;let _0x1a7185=d[_0x2a155a(0x16e)](_0x46fd43,_0x10b977),_0x29eed7=d['dot'](_0x1a7185,_0x4b19e4)/d['length'](_0x4b19e4),_0x467897=d[_0x2a155a(0x171)](_0x4b19e4,0x1/d[_0x2a155a(0x161)](_0x4b19e4));return d['sub'](_0x46fd43,d['scalarProduct'](_0x467897,_0x29eed7));}},I={'from_control_points':function(_0x13af4e,_0x402f31,_0x2f315a,_0x573fb6){const _0x50f309=a0_0x1477;_0x2f315a==null&&(_0x2f315a=0x64);let _0x2d4e88=0x1/_0x2f315a,_0x3ffe02=[..._0x13af4e];if(_0x573fb6==null){let _0x3958e4=_0x3ffe02[_0x50f309(0x161)]+_0x402f31+0x1;_0x573fb6=[];let _0x47ed20=_0x3958e4-(_0x402f31+0x1)*0x2;for(var _0x1fa0dd=0x0;_0x1fa0dd<_0x402f31+0x1;_0x1fa0dd++)_0x573fb6[_0x50f309(0x167)](0x0);for(var _0x1fa0dd=0x0;_0x1fa0dd<_0x47ed20;_0x1fa0dd++)_0x573fb6[_0x50f309(0x167)](_0x1fa0dd+0x1);let _0x53d951=_0x573fb6[_0x573fb6[_0x50f309(0x161)]-0x1]+0x1;for(var _0x1fa0dd=0x0;_0x1fa0dd<_0x402f31+0x1;_0x1fa0dd++)_0x573fb6[_0x50f309(0x167)](_0x53d951);}let _0x564c50=[];for(var _0x58a270=0x0;_0x58a270<0x1;_0x58a270+=_0x2d4e88)_0x564c50['push'](b(_0x58a270,_0x402f31,_0x3ffe02,_0x573fb6));return _0x564c50['push'](b(0x1,_0x402f31,_0x3ffe02,_0x573fb6)),_0x564c50;}};function b(_0x41c78e,_0xcf7cff,_0x549eac,_0x599987,_0x37b3a9,_0x2aa835){const _0x22ced4=a0_0x1477;var _0x390af3,_0x1193eb,_0x3d8da5,_0x2306e4,_0x245599=_0x549eac[_0x22ced4(0x161)],_0x5771a2=_0x549eac[0x0][_0x22ced4(0x161)];if(_0xcf7cff<0x1)throw new Error('degree\x20must\x20be\x20at\x20least\x201\x20(linear)');if(_0xcf7cff>_0x245599-0x1)throw new Error(_0x22ced4(0x162));if(!_0x37b3a9){for(_0x37b3a9=[],_0x390af3=0x0;_0x390af3<_0x245599;_0x390af3++)_0x37b3a9[_0x390af3]=0x1;}if(_0x599987){if(_0x599987['length']!==_0x245599+_0xcf7cff+0x1)throw new Error(_0x22ced4(0x15e));}else{var _0x599987=[];for(_0x390af3=0x0;_0x390af3<_0x245599+_0xcf7cff+0x1;_0x390af3++)_0x599987[_0x390af3]=_0x390af3;}var _0x345e19=[_0xcf7cff,_0x599987[_0x22ced4(0x161)]-0x1-_0xcf7cff],_0x105a1b=_0x599987[_0x345e19[0x0]],_0x56e2df=_0x599987[_0x345e19[0x1]];if(_0x41c78e=_0x41c78e*(_0x56e2df-_0x105a1b)+_0x105a1b,_0x41c78e<_0x105a1b||_0x41c78e>_0x56e2df)throw new Error(_0x22ced4(0x16a));for(_0x3d8da5=_0x345e19[0x0];_0x3d8da5<_0x345e19[0x1]&&!(_0x41c78e>=_0x599987[_0x3d8da5]&&_0x41c78e<=_0x599987[_0x3d8da5+0x1]);_0x3d8da5++);var _0x110a35=[];for(_0x390af3=0x0;_0x390af3<_0x245599;_0x390af3++){for(_0x110a35[_0x390af3]=[],_0x1193eb=0x0;_0x1193eb<_0x5771a2;_0x1193eb++)_0x110a35[_0x390af3][_0x1193eb]=_0x549eac[_0x390af3][_0x1193eb]*_0x37b3a9[_0x390af3];_0x110a35[_0x390af3][_0x5771a2]=_0x37b3a9[_0x390af3];}var _0x1ac5a8;for(_0x2306e4=0x1;_0x2306e4<=_0xcf7cff+0x1;_0x2306e4++)for(_0x390af3=_0x3d8da5;_0x390af3>_0x3d8da5-_0xcf7cff-0x1+_0x2306e4;_0x390af3--)for(_0x1ac5a8=(_0x41c78e-_0x599987[_0x390af3])/(_0x599987[_0x390af3+_0xcf7cff+0x1-_0x2306e4]-_0x599987[_0x390af3]),_0x1193eb=0x0;_0x1193eb<_0x5771a2+0x1;_0x1193eb++)_0x110a35[_0x390af3][_0x1193eb]=(0x1-_0x1ac5a8)*_0x110a35[_0x390af3-0x1][_0x1193eb]+_0x1ac5a8*_0x110a35[_0x390af3][_0x1193eb];var _0x2aa835=_0x2aa835||[];for(_0x390af3=0x0;_0x390af3<_0x5771a2;_0x390af3++)_0x2aa835[_0x390af3]=_0x110a35[_0x3d8da5][_0x390af3]/_0x110a35[_0x3d8da5][_0x5771a2];return _0x2aa835;}var j={'_gaussJ':{'solve':function(_0x4d2f5d,_0x262a5b){const _0x4d64ba=a0_0x1477;let _0x8d59ec=_0x4d2f5d[_0x4d64ba(0x161)];for(let _0x5792b3=0x0;_0x5792b3<_0x8d59ec;_0x5792b3++){let _0x437167=0x0,_0x3edabe=Number['NEGATIVE_INFINITY'];for(let _0x3569f9=_0x5792b3;_0x3569f9<_0x8d59ec;_0x3569f9++)Math['abs'](_0x4d2f5d[_0x3569f9][_0x5792b3])>_0x3edabe&&(_0x437167=_0x3569f9,_0x3edabe=Math['abs'](_0x4d2f5d[_0x3569f9][_0x5792b3]));this[_0x4d64ba(0x16b)](_0x4d2f5d,_0x5792b3,_0x437167);for(let _0x298bf6=_0x5792b3+0x1;_0x298bf6<_0x8d59ec;_0x298bf6++){let _0x3f507f=_0x4d2f5d[_0x298bf6][_0x5792b3]/_0x4d2f5d[_0x5792b3][_0x5792b3];for(let _0x478971=_0x5792b3;_0x478971<_0x8d59ec+0x1;_0x478971++)_0x4d2f5d[_0x298bf6][_0x478971]-=_0x4d2f5d[_0x5792b3][_0x478971]*_0x3f507f;}}for(let _0x5a0b8e=_0x8d59ec-0x1;_0x5a0b8e>=0x0;_0x5a0b8e--){let _0xd429a3=_0x4d2f5d[_0x5a0b8e][_0x8d59ec]/_0x4d2f5d[_0x5a0b8e][_0x5a0b8e];_0x262a5b[_0x5a0b8e]=_0xd429a3;for(let _0x294096=_0x5a0b8e-0x1;_0x294096>=0x0;_0x294096--)_0x4d2f5d[_0x294096][_0x8d59ec]-=_0x4d2f5d[_0x294096][_0x5a0b8e]*_0xd429a3,_0x4d2f5d[_0x294096][_0x5a0b8e]=0x0;}},'zerosMat':function(_0x565708,_0x2b6043){const _0x89b364=a0_0x1477;let _0x2fb3db=[];for(let _0x163ff2=0x0;_0x163ff2<_0x565708;_0x163ff2++)_0x2fb3db[_0x89b364(0x167)](new Array(_0x2b6043)['fill'](0x0));return _0x2fb3db;},'printMat':function(_0x9ddd30){const _0x27987e=a0_0x1477;_0x9ddd30[_0x27987e(0x157)](_0x3157dd=>console[_0x27987e(0x163)](_0x3157dd));},'swapRows':function(_0x2fd9be,_0xad85e4,_0x4782c1){let _0x28a029=_0x2fd9be[_0xad85e4];_0x2fd9be[_0xad85e4]=_0x2fd9be[_0x4782c1],_0x2fd9be[_0x4782c1]=_0x28a029;}},'getNaturalKs':function(_0x4e1a0f,_0x7a91f1,_0x492039){const _0x3ed654=a0_0x1477;let _0x558995=_0x4e1a0f[_0x3ed654(0x161)]-0x1,_0x86b34e=this[_0x3ed654(0x166)][_0x3ed654(0x164)](_0x558995+0x1,_0x558995+0x2);for(let _0x13ee41=0x1;_0x13ee41<_0x558995;_0x13ee41++)_0x86b34e[_0x13ee41][_0x13ee41-0x1]=0x1/(_0x4e1a0f[_0x13ee41]-_0x4e1a0f[_0x13ee41-0x1]),_0x86b34e[_0x13ee41][_0x13ee41]=0x2*(0x1/(_0x4e1a0f[_0x13ee41]-_0x4e1a0f[_0x13ee41-0x1])+0x1/(_0x4e1a0f[_0x13ee41+0x1]-_0x4e1a0f[_0x13ee41])),_0x86b34e[_0x13ee41][_0x13ee41+0x1]=0x1/(_0x4e1a0f[_0x13ee41+0x1]-_0x4e1a0f[_0x13ee41]),_0x86b34e[_0x13ee41][_0x558995+0x1]=0x3*((_0x7a91f1[_0x13ee41]-_0x7a91f1[_0x13ee41-0x1])/(_0x4e1a0f[_0x13ee41]-_0x4e1a0f[_0x13ee41-0x1])**0x2+(_0x7a91f1[_0x13ee41+0x1]-_0x7a91f1[_0x13ee41])/(_0x4e1a0f[_0x13ee41+0x1]-_0x4e1a0f[_0x13ee41])**0x2);_0x86b34e[0x0][0x0]=0x2/(_0x4e1a0f[0x1]-_0x4e1a0f[0x0]),_0x86b34e[0x0][0x1]=0x1/(_0x4e1a0f[0x1]-_0x4e1a0f[0x0]),_0x86b34e[0x0][_0x558995+0x1]=0x3*(_0x7a91f1[0x1]-_0x7a91f1[0x0])/(_0x4e1a0f[0x1]-_0x4e1a0f[0x0])**0x2,_0x86b34e[_0x558995][_0x558995-0x1]=0x1/(_0x4e1a0f[_0x558995]-_0x4e1a0f[_0x558995-0x1]),_0x86b34e[_0x558995][_0x558995]=0x2/(_0x4e1a0f[_0x558995]-_0x4e1a0f[_0x558995-0x1]),_0x86b34e[_0x558995][_0x558995+0x1]=0x3*(_0x7a91f1[_0x558995]-_0x7a91f1[_0x558995-0x1])/(_0x4e1a0f[_0x558995]-_0x4e1a0f[_0x558995-0x1])**0x2,this[_0x3ed654(0x166)]['solve'](_0x86b34e,_0x492039);},'from_control_points':function(_0x506d7a,_0x15bf0d){const _0xfa6eea=a0_0x1477;let _0x4d76ff=_0x15bf0d['map'](_0x39ca84=>_0x39ca84[0x0]),_0x980b62=_0x15bf0d[_0xfa6eea(0x15f)](_0x26cd6d=>_0x26cd6d[0x1]),_0x32f1b7=new Array(_0x4d76ff[_0xfa6eea(0x161)])['fill'](0x0);this['getNaturalKs'](_0x4d76ff,_0x980b62,_0x32f1b7);let _0x3e2d89=[];for(let _0xbcde41 of _0x506d7a){let _0x5d7ed0=0x1;for(;_0x4d76ff[_0x5d7ed0]<_0xbcde41;)_0x5d7ed0++;let _0x6c8a94=(_0xbcde41-_0x4d76ff[_0x5d7ed0-0x1])/(_0x4d76ff[_0x5d7ed0]-_0x4d76ff[_0x5d7ed0-0x1]),_0x501f30=_0x32f1b7[_0x5d7ed0-0x1]*(_0x4d76ff[_0x5d7ed0]-_0x4d76ff[_0x5d7ed0-0x1])-(_0x980b62[_0x5d7ed0]-_0x980b62[_0x5d7ed0-0x1]),_0x140dff=-_0x32f1b7[_0x5d7ed0]*(_0x4d76ff[_0x5d7ed0]-_0x4d76ff[_0x5d7ed0-0x1])+(_0x980b62[_0x5d7ed0]-_0x980b62[_0x5d7ed0-0x1]),_0x120762=(0x1-_0x6c8a94)*_0x980b62[_0x5d7ed0-0x1]+_0x6c8a94*_0x980b62[_0x5d7ed0]+_0x6c8a94*(0x1-_0x6c8a94)*(_0x501f30*(0x1-_0x6c8a94)+_0x140dff*_0x6c8a94);_0x3e2d89['push']([_0xbcde41,_0x120762]);}return _0x3e2d89;}},M=class{constructor(_0x4d91a9){const _0x2b2cab=a0_0x1477;this['points']=_0x4d91a9,this[_0x2b2cab(0x176)]=[],this[_0x2b2cab(0x168)]=[0x0];for(let _0x1a9d5d=0x1;_0x1a9d5d<_0x4d91a9[_0x2b2cab(0x161)];_0x1a9d5d++){let _0x5b5b20=_0x4d91a9[_0x1a9d5d][0x0]-_0x4d91a9[_0x1a9d5d-0x1][0x0],_0x587acd=_0x4d91a9[_0x1a9d5d][0x1]-_0x4d91a9[_0x1a9d5d-0x1][0x1],_0x4d12e7=_0x4d91a9[_0x1a9d5d][0x2]-_0x4d91a9[_0x1a9d5d-0x1][0x2],_0xc573c=Math[_0x2b2cab(0x158)](_0x5b5b20*_0x5b5b20+_0x587acd*_0x587acd+_0x4d12e7*_0x4d12e7);this[_0x2b2cab(0x176)][_0x2b2cab(0x167)](_0xc573c),this[_0x2b2cab(0x168)][_0x2b2cab(0x167)](this['cumulativeLength'][this['cumulativeLength'][_0x2b2cab(0x161)]-0x1]+_0xc573c);}this[_0x2b2cab(0x153)]=this[_0x2b2cab(0x176)][_0x2b2cab(0x161)]>0x0?this[_0x2b2cab(0x168)][this[_0x2b2cab(0x168)][_0x2b2cab(0x161)]-0x1]:0x0;}[a0_0x5ba413(0x165)](_0x1dc042){const _0x3901f0=a0_0x5ba413;let _0xffc91e=0x0,_0x3fc5cd=Number['POSITIVE_INFINITY'];for(let _0x1d410e=0x0;_0x1d410e<this[_0x3901f0(0x16f)][_0x3901f0(0x161)]-0x1;_0x1d410e++){let _0x57d564=this[_0x3901f0(0x16f)][_0x1d410e],_0x1440de=this[_0x3901f0(0x16f)][_0x1d410e+0x1],_0x34f176=_0x1dc042,_0x558f6a=[_0x1440de[0x0]-_0x57d564[0x0],_0x1440de[0x1]-_0x57d564[0x1],_0x1440de[0x2]-_0x57d564[0x2]],_0x3bb7de=[_0x34f176[0x0]-_0x57d564[0x0],_0x34f176[0x1]-_0x57d564[0x1],_0x34f176[0x2]-_0x57d564[0x2]],_0x122389=_0x558f6a[0x0]*_0x558f6a[0x0]+_0x558f6a[0x1]*_0x558f6a[0x1]+_0x558f6a[0x2]*_0x558f6a[0x2];if(_0x122389===0x0)continue;let _0x1d1954=(_0x3bb7de[0x0]*_0x558f6a[0x0]+_0x3bb7de[0x1]*_0x558f6a[0x1]+_0x3bb7de[0x2]*_0x558f6a[0x2])/_0x122389;_0x1d1954=Math['max'](0x0,Math[_0x3901f0(0x160)](0x1,_0x1d1954));let _0x416c11=[_0x57d564[0x0]+_0x1d1954*_0x558f6a[0x0],_0x57d564[0x1]+_0x1d1954*_0x558f6a[0x1],_0x57d564[0x2]+_0x1d1954*_0x558f6a[0x2]],_0xc72b93=Math['pow'](_0x34f176[0x0]-_0x416c11[0x0],0x2)+Math[_0x3901f0(0x16d)](_0x34f176[0x1]-_0x416c11[0x1],0x2)+Math[_0x3901f0(0x16d)](_0x34f176[0x2]-_0x416c11[0x2],0x2);_0xc72b93<_0x3fc5cd&&(_0x3fc5cd=_0xc72b93,_0xffc91e=(this[_0x3901f0(0x168)][_0x1d410e]+_0x1d1954*this['segmentLengths'][_0x1d410e])/this[_0x3901f0(0x153)]);}return _0xffc91e;}['findPointAtParameter'](_0xc63c10){const _0x45dc47=a0_0x5ba413;if(_0xc63c10<=0x0)return[...this[_0x45dc47(0x16f)][0x0]];if(_0xc63c10>=0x1)return[...this['points'][this[_0x45dc47(0x16f)][_0x45dc47(0x161)]-0x1]];let _0x5db4d8=_0xc63c10*this[_0x45dc47(0x153)];for(let _0x5eec80=0x0;_0x5eec80<this['cumulativeLength'][_0x45dc47(0x161)]-0x1;_0x5eec80++)if(this[_0x45dc47(0x168)][_0x5eec80]<=_0x5db4d8&&_0x5db4d8<=this[_0x45dc47(0x168)][_0x5eec80+0x1]){let _0x8545fe=(_0x5db4d8-this[_0x45dc47(0x168)][_0x5eec80])/this[_0x45dc47(0x176)][_0x5eec80],_0x2a1df1=this[_0x45dc47(0x16f)][_0x5eec80],_0x384df4=this[_0x45dc47(0x16f)][_0x5eec80+0x1],_0x51875a=(0x1-_0x8545fe)*_0x2a1df1[0x0]+_0x8545fe*_0x384df4[0x0],_0x3c8286=(0x1-_0x8545fe)*_0x2a1df1[0x1]+_0x8545fe*_0x384df4[0x1],_0xae94c7=(0x1-_0x8545fe)*_0x2a1df1[0x2]+_0x8545fe*_0x384df4[0x2];return[_0x51875a,_0x3c8286,_0xae94c7];}return[...this[_0x45dc47(0x16f)][this['points'][_0x45dc47(0x161)]-0x1]];}};function a0_0x1477(_0x11fbec,_0x48c50f){const _0x353786=a0_0x3537();return a0_0x1477=function(_0x147759,_0x1fe9c5){_0x147759=_0x147759-0x153;let _0x3b0990=_0x353786[_0x147759];return _0x3b0990;},a0_0x1477(_0x11fbec,_0x48c50f);}if(new Date()[a0_0x5ba413(0x173)]()>0x7e9)throw new Error('');export{I as Bspline3d,j as Cspline3d,P as Point3d,M as Polyline3D,d as Vector3d};
1
+ function a0_0x5db7(){const _0x1e4d64=['3CoYPHT','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','substr','weights','15H','padStart','116,','Knot\x20vector\x20length\x20must\x20be\x20','max','NEGATIVE_INFINITY','floor','1.E-06,100.0,7H','sqrt','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','toExponential',',11H','totalLength',',1,0.01,15H','formatGlobalLine','units','scalarProduct','No\x20valid\x20geometries\x20found\x20to\x20convert','object','2070556htaEuS','_gaussJ','solve','Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','findPointAtParameter','106,','linspace','E$1','filter','degree','filename',',7H',',32,38,6,38,15,4H','push','fill','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','endsWith','findKnotSpan','\x20control\x20points\x20required\x20for\x20degree\x20','warn','flattenLines','polyline','js3d','formatParameterLine','\x20control\x20points\x20for\x20degree\x20','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','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','combined.iges','controlPoints','allPoints','organization','properties','50XKeIeh','bad\x20knot\x20vector\x20length',',0.0,0.0,0.0','flattenNurbs','POSITIVE_INFINITY','numControlPoints','numPoints','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','Points\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','Skipping\x20NURBS:\x20need\x20at\x20least\x20','zerosMat',',0,0,1,0','out\x20of\x20bounds','T\x20\x20\x20\x20\x20\x201\x0a','normalVector','bspline','454589clqEYv','parseIgesNumber','replace','toString','length','nurbs.iges','asPolyline','toLowerCase','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','126,','abs','log','data','4752631YChZiP','parameters','isArray','formatDirectoryLine','6WpFiaL','knotVector','trim','formatTerminateSection','numKnots','segmentLengths',',0.0;','576776yocZsw','formatNumber','swapRows','Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbs\x22,\x20data:\x20[...]\x20}','charAt','Generated','processPolylineEntity','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbs','map','1H,,1H;,4H','dot','slice','12yGuHgI','ceil','pow','from','1.0,1,4H','2440955dXwyzj','computeBasisFunctions','normalizedCosineSpacing','split','14qvCWxm','getFullYear','min','lines','type','1951812oXDIbC','832634tsyebA','START','sin','padEnd','2TJpZeP','sub','counter','toFixed','move','cumulativeLength','toISOString','author','findParameterAtPoint','formatSection','processNurbsEntity','points','includeNurbsMetadata','IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string','_uniform_knot_spacing','precision','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','nurbs','processPointEntity','11H','getNaturalKs','join'];a0_0x5db7=function(){return _0x1e4d64;};return a0_0x5db7();}function a0_0x28b8(_0xc8729b,_0x103545){const _0x5db70b=a0_0x5db7();return a0_0x28b8=function(_0x28b808,_0x199708){_0x28b808=_0x28b808-0x1cc;let _0x188942=_0x5db70b[_0x28b808];return _0x188942;},a0_0x28b8(_0xc8729b,_0x103545);}const a0_0x1c617d=a0_0x28b8;(function(_0x346192,_0x539cfd){const _0x375e46=a0_0x28b8,_0xb7f72a=_0x346192();while(!![]){try{const _0x4b8a18=parseInt(_0x375e46(0x1e3))/0x1*(parseInt(_0x375e46(0x21a))/0x2)+parseInt(_0x375e46(0x230))/0x3*(-parseInt(_0x375e46(0x247))/0x4)+-parseInt(_0x375e46(0x20c))/0x5*(-parseInt(_0x375e46(0x1f4))/0x6)+-parseInt(_0x375e46(0x210))/0x7*(-parseInt(_0x375e46(0x1fb))/0x8)+-parseInt(_0x375e46(0x215))/0x9+parseInt(_0x375e46(0x1d3))/0xa*(-parseInt(_0x375e46(0x216))/0xb)+-parseInt(_0x375e46(0x207))/0xc*(-parseInt(_0x375e46(0x1f0))/0xd);if(_0x4b8a18===_0x539cfd)break;else _0xb7f72a['push'](_0xb7f72a['shift']());}catch(_0x5eabc8){_0xb7f72a['push'](_0xb7f72a['shift']());}}}(a0_0x5db7,0x52e80));var w={'length':function(_0x19b519){const _0x3a1ad5=a0_0x28b8;return Math[_0x3a1ad5(0x23c)](_0x19b519[0x0]**0x2+_0x19b519[0x1]**0x2+_0x19b519[0x2]**0x2);},'scalarProduct':function(_0xfd88d1,_0x49a973){return[_0xfd88d1[0x0]*_0x49a973,_0xfd88d1[0x1]*_0x49a973,_0xfd88d1[0x2]*_0x49a973];},'dot':function(_0x200caf,_0x4f0f4c){return _0x200caf[0x0]*_0x4f0f4c[0x0]+_0x200caf[0x1]*_0x4f0f4c[0x1]+_0x200caf[0x2]*_0x4f0f4c[0x2];},'angle':function(_0x122752,_0xc85cd0){const _0x1e68f4=a0_0x28b8;let _0x3d3184=this[_0x1e68f4(0x205)](_0x122752,_0xc85cd0)/(this[_0x1e68f4(0x1e7)](_0x122752)*this['length'](_0xc85cd0));return Math['acos'](_0x3d3184);},'sub':function(_0x25bbb1,_0x340c8f){return[_0x25bbb1[0x0]-_0x340c8f[0x0],_0x25bbb1[0x1]-_0x340c8f[0x1],_0x25bbb1[0x2]-_0x340c8f[0x2]];},'add':function(_0x185c34,_0xea3a61){return[_0x185c34[0x0]+_0xea3a61[0x0],_0x185c34[0x1]+_0xea3a61[0x1],_0x185c34[0x2]+_0xea3a61[0x2]];},'rotate':function(_0x111adb,_0x4b665b,_0x233c37){let _0xe407cf=_0x233c37*Math['PI']/0xb4,_0x2b95f0=Math['cos'](_0xe407cf),_0x1bcc93=Math['sin'](_0xe407cf),_0x525a41=_0x111adb[0x0],_0x245716=_0x111adb[0x1],_0xec7aa1=_0x111adb[0x2],_0x168cdf=_0x4b665b[0x0],_0x1e8594=_0x4b665b[0x1],_0x291c24=_0x4b665b[0x2],_0x4cded4=_0x168cdf*_0x525a41+_0x1e8594*_0x245716+_0x291c24*_0xec7aa1,_0x4a1332=_0x168cdf*_0x4cded4*(0x1-_0x2b95f0)+_0x525a41*_0x2b95f0+(-_0x291c24*_0x245716+_0x1e8594*_0xec7aa1)*_0x1bcc93,_0x208c2f=_0x1e8594*_0x4cded4*(0x1-_0x2b95f0)+_0x245716*_0x2b95f0+(_0x291c24*_0x525a41-_0x168cdf*_0xec7aa1)*_0x1bcc93,_0x141b45=_0x291c24*_0x4cded4*(0x1-_0x2b95f0)+_0xec7aa1*_0x2b95f0+(-_0x1e8594*_0x525a41+_0x168cdf*_0x245716)*_0x1bcc93;return[_0x4a1332,_0x208c2f,_0x141b45];},'fromTwoPoints':function(_0x3b1bf5,_0xb5082e){return[_0xb5082e[0x0]-_0x3b1bf5[0x0],_0xb5082e[0x1]-_0x3b1bf5[0x1],_0xb5082e[0x2]-_0x3b1bf5[0x2]];},'normalized':function(_0x10a6bb){const _0x1ff0d5=a0_0x28b8;return w[_0x1ff0d5(0x244)](_0x10a6bb,0x1/w[_0x1ff0d5(0x1e7)](_0x10a6bb));},'cross':function(_0x1c8116,_0x1143c9){return[_0x1c8116[0x1]*_0x1143c9[0x2]-_0x1c8116[0x2]*_0x1143c9[0x1],_0x1c8116[0x2]*_0x1143c9[0x0]-_0x1c8116[0x0]*_0x1143c9[0x2],_0x1c8116[0x0]*_0x1143c9[0x1]-_0x1c8116[0x1]*_0x1143c9[0x0]];}},F={'distance':function(_0xfe9df5,_0x1f34e7){const _0x9c0bd8=a0_0x28b8;return w[_0x9c0bd8(0x1e7)](w[_0x9c0bd8(0x21b)](_0x1f34e7,_0xfe9df5));},'move':function(_0x366fba,_0x5dd155){return w['add'](_0x366fba,_0x5dd155);},'scale':function(_0x4530e5,_0x2bae09,_0x4f7f5c){const _0x26e5df=a0_0x28b8;return _0x4f7f5c!=null&&(_0x4530e5=this[_0x26e5df(0x21e)](_0x4530e5,w['scalarProduct'](_0x4f7f5c,-0x1))),_0x4530e5=w[_0x26e5df(0x244)](_0x4530e5,_0x2bae09),_0x4f7f5c!=null&&(_0x4530e5=this[_0x26e5df(0x21e)](_0x4530e5,_0x4f7f5c)),_0x4530e5;},'rotate':function(_0x1447ee,_0x57b7f3,_0x3a66be,_0x13e297){const _0x358c1e=a0_0x28b8;let _0x54266f=_0x3a66be*Math['PI']/0xb4,_0x2c6613=Math['cos'](_0x54266f),_0x2a4711=Math[_0x358c1e(0x218)](_0x54266f),_0x3ed65c=_0x1447ee[0x0],_0xb6d208=_0x1447ee[0x1],_0x5517a5=_0x1447ee[0x2];_0x13e297!=null&&(_0x3ed65c=_0x3ed65c-_0x13e297[0x0],_0xb6d208=_0xb6d208-_0x13e297[0x1],_0x5517a5=_0x5517a5-_0x13e297[0x2]);let _0xdc00b4=_0x57b7f3[0x0],_0x16797d=_0x57b7f3[0x1],_0x582a53=_0x57b7f3[0x2],_0x4f2dfd=_0xdc00b4*_0x3ed65c+_0x16797d*_0xb6d208+_0x582a53*_0x5517a5,_0x935d22=_0xdc00b4*_0x4f2dfd*(0x1-_0x2c6613)+_0x3ed65c*_0x2c6613+(-_0x582a53*_0xb6d208+_0x16797d*_0x5517a5)*_0x2a4711,_0x2d9604=_0x16797d*_0x4f2dfd*(0x1-_0x2c6613)+_0xb6d208*_0x2c6613+(_0x582a53*_0x3ed65c-_0xdc00b4*_0x5517a5)*_0x2a4711,_0x4b2c8a=_0x582a53*_0x4f2dfd*(0x1-_0x2c6613)+_0x5517a5*_0x2c6613+(-_0x16797d*_0x3ed65c+_0xdc00b4*_0xb6d208)*_0x2a4711,_0x3f25b3=[_0x935d22,_0x2d9604,_0x4b2c8a];return _0x13e297!=null&&(_0x3f25b3[0x0]=_0x3f25b3[0x0]+_0x13e297[0x0],_0x3f25b3[0x1]=_0x3f25b3[0x1]+_0x13e297[0x1],_0x3f25b3[0x2]=_0x3f25b3[0x2]+_0x13e297[0x2]),_0x3f25b3;},'project':function(_0x1ae267,_0x1ccfa9,_0x13e3ef){const _0x57971b=a0_0x28b8;let _0x409a2f=w['sub'](_0x1ae267,_0x13e3ef),_0x37468c=w[_0x57971b(0x205)](_0x409a2f,_0x1ccfa9)/w[_0x57971b(0x1e7)](_0x1ccfa9),_0x31792d=w[_0x57971b(0x244)](_0x1ccfa9,0x1/w[_0x57971b(0x1e7)](_0x1ccfa9));return w[_0x57971b(0x21b)](_0x1ae267,w[_0x57971b(0x244)](_0x31792d,_0x37468c));}},H={'linspace':function(_0x108de6,_0xfebffd,_0x26ac55,_0x512b28=!0x0){let _0x525894=_0x512b28?_0x26ac55-0x1:_0x26ac55,_0x19c591=(_0xfebffd-_0x108de6)/_0x525894;return Array['from']({'length':_0x26ac55},(_0x26d76d,_0xece42c)=>_0x108de6+_0x19c591*_0xece42c);},'cosineSpacing':function(_0x2e205a,_0x500fbb,_0x3e564d){const _0x320302=a0_0x28b8;let _0x341724=Array[_0x320302(0x20a)]({'length':_0x3e564d},(_0x5d90af,_0x593d2b)=>_0x593d2b/(_0x3e564d-0x1))[_0x320302(0x203)](_0x1b68fe=>(0x1-Math['cos'](_0x1b68fe*Math['PI']))/0x2),_0x173280=[];for(let _0x353244=0x0;_0x353244<_0x341724[_0x320302(0x1e7)];_0x353244++){let _0x377904=_0x341724[_0x353244];_0x173280[_0x320302(0x254)](mapToSpace(_0x377904,[0x0,0x1],[_0x2e205a,_0x500fbb]));}return _0x173280;},'normalizedCosineSpacing':function(_0x3ea0ce){const _0xf0120a=a0_0x28b8;return Array[_0xf0120a(0x20a)]({'length':_0x3ea0ce},(_0x5f0601,_0x23f3e9)=>_0x23f3e9/(_0x3ea0ce-0x1))['map'](_0x42160c=>(0x1-Math['cos'](_0x42160c*Math['PI']))/0x2);},'mapToSpace':function(_0x4c5406,_0x481cf2,_0x1a97c1){return _0x1a97c1[0x1]+(_0x4c5406-_0x481cf2[0x1])*(_0x1a97c1[0x0]-_0x1a97c1[0x1])/(_0x481cf2[0x0]-_0x481cf2[0x1]);}},j={'from_control_points':function(_0x40cc06,_0x98adef,_0x252de6,_0xbd214f){const _0x23b25d=a0_0x28b8;_0xbd214f===void 0x0&&(_0xbd214f=this['_uniform_knot_spacing'](_0x40cc06,_0x98adef));let _0x59ebba=H[_0x23b25d(0x24d)](0x0,0x1,_0x252de6);console[_0x23b25d(0x1ee)](_0x59ebba);let _0x256f4e=[];for(var _0x1d2395 of _0x59ebba)_0x256f4e['push'](this['bspline'](_0x1d2395,_0x98adef,_0x40cc06,_0xbd214f));return _0x256f4e;},'from_control_points_cosine':function(_0x2cbb4c,_0xcb301f,_0x439b74,_0x5f49b2){const _0x4befdd=a0_0x28b8;_0x5f49b2===void 0x0&&(_0x5f49b2=this[_0x4befdd(0x228)](_0x2cbb4c,_0xcb301f));let _0x11e309=H[_0x4befdd(0x20e)](_0x439b74),_0x481c95=[];for(var _0x3bb663 of _0x11e309)_0x481c95[_0x4befdd(0x254)](this[_0x4befdd(0x1e2)](_0x3bb663,_0xcb301f,_0x2cbb4c,_0x5f49b2));return _0x481c95;},'_uniform_knot_spacing':function(_0x32e371,_0x290e62){const _0x3968f3=a0_0x28b8;let _0x5cff4a=_0x32e371['length']+_0x290e62+0x1,_0x6a6a89=[],_0x13739f=_0x5cff4a-(_0x290e62+0x1)*0x2;for(var _0x407a92=0x0;_0x407a92<_0x290e62+0x1;_0x407a92++)_0x6a6a89[_0x3968f3(0x254)](0x0);for(var _0x407a92=0x0;_0x407a92<_0x13739f;_0x407a92++)_0x6a6a89[_0x3968f3(0x254)](_0x407a92+0x1);let _0x96a487=_0x6a6a89[_0x6a6a89[_0x3968f3(0x1e7)]-0x1]+0x1;for(var _0x407a92=0x0;_0x407a92<_0x290e62+0x1;_0x407a92++)_0x6a6a89[_0x3968f3(0x254)](_0x96a487);return _0x6a6a89;},'bspline':function(_0x5808d6,_0x97bd8,_0x540d37,_0x21058d,_0x3249b4,_0x389152){const _0x3df96b=a0_0x28b8;var _0x110585,_0x140a90,_0x13fc5b,_0x3fed47,_0x29c91d=_0x540d37[_0x3df96b(0x1e7)],_0x399200=_0x540d37[0x0][_0x3df96b(0x1e7)];if(_0x97bd8<0x1)throw new Error(_0x3df96b(0x22a));if(_0x97bd8>_0x29c91d-0x1)throw new Error(_0x3df96b(0x1cc));if(!_0x3249b4){for(_0x3249b4=[],_0x110585=0x0;_0x110585<_0x29c91d;_0x110585++)_0x3249b4[_0x110585]=0x1;}if(_0x21058d){if(_0x21058d[_0x3df96b(0x1e7)]!==_0x29c91d+_0x97bd8+0x1)throw new Error(_0x3df96b(0x1d4));}else{var _0x21058d=[];for(_0x110585=0x0;_0x110585<_0x29c91d+_0x97bd8+0x1;_0x110585++)_0x21058d[_0x110585]=_0x110585;}var _0x2ec439=[_0x97bd8,_0x21058d[_0x3df96b(0x1e7)]-0x1-_0x97bd8],_0x46c49d=_0x21058d[_0x2ec439[0x0]],_0x159112=_0x21058d[_0x2ec439[0x1]];if(_0x5808d6=_0x5808d6*(_0x159112-_0x46c49d)+_0x46c49d,_0x5808d6<_0x46c49d||_0x5808d6>_0x159112)throw new Error(_0x3df96b(0x1df));for(_0x13fc5b=_0x2ec439[0x0];_0x13fc5b<_0x2ec439[0x1]&&!(_0x5808d6>=_0x21058d[_0x13fc5b]&&_0x5808d6<=_0x21058d[_0x13fc5b+0x1]);_0x13fc5b++);var _0xa8dfbc=[];for(_0x110585=0x0;_0x110585<_0x29c91d;_0x110585++){for(_0xa8dfbc[_0x110585]=[],_0x140a90=0x0;_0x140a90<_0x399200;_0x140a90++)_0xa8dfbc[_0x110585][_0x140a90]=_0x540d37[_0x110585][_0x140a90]*_0x3249b4[_0x110585];_0xa8dfbc[_0x110585][_0x399200]=_0x3249b4[_0x110585];}var _0x4a11b3;for(_0x3fed47=0x1;_0x3fed47<=_0x97bd8+0x1;_0x3fed47++)for(_0x110585=_0x13fc5b;_0x110585>_0x13fc5b-_0x97bd8-0x1+_0x3fed47;_0x110585--)for(_0x4a11b3=(_0x5808d6-_0x21058d[_0x110585])/(_0x21058d[_0x110585+_0x97bd8+0x1-_0x3fed47]-_0x21058d[_0x110585]),_0x140a90=0x0;_0x140a90<_0x399200+0x1;_0x140a90++)_0xa8dfbc[_0x110585][_0x140a90]=(0x1-_0x4a11b3)*_0xa8dfbc[_0x110585-0x1][_0x140a90]+_0x4a11b3*_0xa8dfbc[_0x110585][_0x140a90];var _0x389152=_0x389152||[];for(_0x110585=0x0;_0x110585<_0x399200;_0x110585++)_0x389152[_0x110585]=_0xa8dfbc[_0x13fc5b][_0x110585]/_0xa8dfbc[_0x13fc5b][_0x399200];return _0x389152;}},C={'_gaussJ':{'solve':function(_0x1df639,_0x11c3f9){const _0x4b9887=a0_0x28b8;let _0x27f55e=_0x1df639[_0x4b9887(0x1e7)];for(let _0x3751bc=0x0;_0x3751bc<_0x27f55e;_0x3751bc++){let _0x5682ff=0x0,_0x1fd8e7=Number[_0x4b9887(0x239)];for(let _0x39cb3b=_0x3751bc;_0x39cb3b<_0x27f55e;_0x39cb3b++)Math[_0x4b9887(0x1ed)](_0x1df639[_0x39cb3b][_0x3751bc])>_0x1fd8e7&&(_0x5682ff=_0x39cb3b,_0x1fd8e7=Math[_0x4b9887(0x1ed)](_0x1df639[_0x39cb3b][_0x3751bc]));this[_0x4b9887(0x1fd)](_0x1df639,_0x3751bc,_0x5682ff);for(let _0x23167d=_0x3751bc+0x1;_0x23167d<_0x27f55e;_0x23167d++){let _0x586bcd=_0x1df639[_0x23167d][_0x3751bc]/_0x1df639[_0x3751bc][_0x3751bc];for(let _0x579314=_0x3751bc;_0x579314<_0x27f55e+0x1;_0x579314++)_0x1df639[_0x23167d][_0x579314]-=_0x1df639[_0x3751bc][_0x579314]*_0x586bcd;}}for(let _0x5799af=_0x27f55e-0x1;_0x5799af>=0x0;_0x5799af--){let _0x57adfd=_0x1df639[_0x5799af][_0x27f55e]/_0x1df639[_0x5799af][_0x5799af];_0x11c3f9[_0x5799af]=_0x57adfd;for(let _0x1040a2=_0x5799af-0x1;_0x1040a2>=0x0;_0x1040a2--)_0x1df639[_0x1040a2][_0x27f55e]-=_0x1df639[_0x1040a2][_0x5799af]*_0x57adfd,_0x1df639[_0x1040a2][_0x5799af]=0x0;}},'zerosMat':function(_0x3a48e2,_0x312fb2){let _0x3b84a7=[];for(let _0x151057=0x0;_0x151057<_0x3a48e2;_0x151057++)_0x3b84a7['push'](new Array(_0x312fb2)['fill'](0x0));return _0x3b84a7;},'printMat':function(_0x5c3b5e){_0x5c3b5e['forEach'](_0x564a5e=>console['log'](_0x564a5e));},'swapRows':function(_0x5d155d,_0x175944,_0x3a7b40){let _0x112b13=_0x5d155d[_0x175944];_0x5d155d[_0x175944]=_0x5d155d[_0x3a7b40],_0x5d155d[_0x3a7b40]=_0x112b13;}},'getNaturalKs':function(_0x3f0fb6,_0x1b99d7,_0x473197){const _0x1166da=a0_0x28b8;let _0x7dfc36=_0x3f0fb6['length']-0x1,_0x3997fd=this[_0x1166da(0x248)][_0x1166da(0x1dd)](_0x7dfc36+0x1,_0x7dfc36+0x2);for(let _0x284a3d=0x1;_0x284a3d<_0x7dfc36;_0x284a3d++)_0x3997fd[_0x284a3d][_0x284a3d-0x1]=0x1/(_0x3f0fb6[_0x284a3d]-_0x3f0fb6[_0x284a3d-0x1]),_0x3997fd[_0x284a3d][_0x284a3d]=0x2*(0x1/(_0x3f0fb6[_0x284a3d]-_0x3f0fb6[_0x284a3d-0x1])+0x1/(_0x3f0fb6[_0x284a3d+0x1]-_0x3f0fb6[_0x284a3d])),_0x3997fd[_0x284a3d][_0x284a3d+0x1]=0x1/(_0x3f0fb6[_0x284a3d+0x1]-_0x3f0fb6[_0x284a3d]),_0x3997fd[_0x284a3d][_0x7dfc36+0x1]=0x3*((_0x1b99d7[_0x284a3d]-_0x1b99d7[_0x284a3d-0x1])/(_0x3f0fb6[_0x284a3d]-_0x3f0fb6[_0x284a3d-0x1])**0x2+(_0x1b99d7[_0x284a3d+0x1]-_0x1b99d7[_0x284a3d])/(_0x3f0fb6[_0x284a3d+0x1]-_0x3f0fb6[_0x284a3d])**0x2);_0x3997fd[0x0][0x0]=0x2/(_0x3f0fb6[0x1]-_0x3f0fb6[0x0]),_0x3997fd[0x0][0x1]=0x1/(_0x3f0fb6[0x1]-_0x3f0fb6[0x0]),_0x3997fd[0x0][_0x7dfc36+0x1]=0x3*(_0x1b99d7[0x1]-_0x1b99d7[0x0])/(_0x3f0fb6[0x1]-_0x3f0fb6[0x0])**0x2,_0x3997fd[_0x7dfc36][_0x7dfc36-0x1]=0x1/(_0x3f0fb6[_0x7dfc36]-_0x3f0fb6[_0x7dfc36-0x1]),_0x3997fd[_0x7dfc36][_0x7dfc36]=0x2/(_0x3f0fb6[_0x7dfc36]-_0x3f0fb6[_0x7dfc36-0x1]),_0x3997fd[_0x7dfc36][_0x7dfc36+0x1]=0x3*(_0x1b99d7[_0x7dfc36]-_0x1b99d7[_0x7dfc36-0x1])/(_0x3f0fb6[_0x7dfc36]-_0x3f0fb6[_0x7dfc36-0x1])**0x2,this[_0x1166da(0x248)][_0x1166da(0x249)](_0x3997fd,_0x473197);},'from_control_points':function(_0xb349e0,_0x4e32cc){const _0x2cffe0=a0_0x28b8;let _0x3b10f0=_0x4e32cc[_0x2cffe0(0x203)](_0x39f329=>_0x39f329[0x0]),_0x30864b=_0x4e32cc[_0x2cffe0(0x203)](_0x1498a6=>_0x1498a6[0x1]),_0x39eb0d=new Array(_0x3b10f0['length'])[_0x2cffe0(0x255)](0x0);this[_0x2cffe0(0x22e)](_0x3b10f0,_0x30864b,_0x39eb0d);let _0x1a4940=[];for(let _0x2e0ccc of _0xb349e0){let _0x2199f5=0x1;for(;_0x3b10f0[_0x2199f5]<_0x2e0ccc;)_0x2199f5++;let _0x5582a7=(_0x2e0ccc-_0x3b10f0[_0x2199f5-0x1])/(_0x3b10f0[_0x2199f5]-_0x3b10f0[_0x2199f5-0x1]),_0xb60e93=_0x39eb0d[_0x2199f5-0x1]*(_0x3b10f0[_0x2199f5]-_0x3b10f0[_0x2199f5-0x1])-(_0x30864b[_0x2199f5]-_0x30864b[_0x2199f5-0x1]),_0x4b424f=-_0x39eb0d[_0x2199f5]*(_0x3b10f0[_0x2199f5]-_0x3b10f0[_0x2199f5-0x1])+(_0x30864b[_0x2199f5]-_0x30864b[_0x2199f5-0x1]),_0x345fc2=(0x1-_0x5582a7)*_0x30864b[_0x2199f5-0x1]+_0x5582a7*_0x30864b[_0x2199f5]+_0x5582a7*(0x1-_0x5582a7)*(_0xb60e93*(0x1-_0x5582a7)+_0x4b424f*_0x5582a7);_0x1a4940['push']([_0x2e0ccc,_0x345fc2]);}return _0x1a4940;}},D=class{constructor(_0x2562c7){const _0x117746=a0_0x28b8;this[_0x117746(0x225)]=_0x2562c7,this[_0x117746(0x1f9)]=[],this['cumulativeLength']=[0x0];for(let _0x300a8e=0x1;_0x300a8e<_0x2562c7[_0x117746(0x1e7)];_0x300a8e++){let _0xae35da=_0x2562c7[_0x300a8e][0x0]-_0x2562c7[_0x300a8e-0x1][0x0],_0x3f2ccf=_0x2562c7[_0x300a8e][0x1]-_0x2562c7[_0x300a8e-0x1][0x1],_0x316bfa=_0x2562c7[_0x300a8e][0x2]-_0x2562c7[_0x300a8e-0x1][0x2],_0x3c78e1=Math[_0x117746(0x23c)](_0xae35da*_0xae35da+_0x3f2ccf*_0x3f2ccf+_0x316bfa*_0x316bfa);this[_0x117746(0x1f9)][_0x117746(0x254)](_0x3c78e1),this[_0x117746(0x21f)]['push'](this[_0x117746(0x21f)][this[_0x117746(0x21f)]['length']-0x1]+_0x3c78e1);}this[_0x117746(0x240)]=this['segmentLengths'][_0x117746(0x1e7)]>0x0?this[_0x117746(0x21f)][this['cumulativeLength'][_0x117746(0x1e7)]-0x1]:0x0;}[a0_0x1c617d(0x222)](_0x1099a0){const _0x45e58b=a0_0x1c617d;let _0x177291=0x0,_0x5aae9e=Number[_0x45e58b(0x1d7)];for(let _0x3de787=0x0;_0x3de787<this['points'][_0x45e58b(0x1e7)]-0x1;_0x3de787++){let _0x5b2d6c=this['points'][_0x3de787],_0x39acf1=this[_0x45e58b(0x225)][_0x3de787+0x1],_0x598e92=_0x1099a0,_0x1c851f=[_0x39acf1[0x0]-_0x5b2d6c[0x0],_0x39acf1[0x1]-_0x5b2d6c[0x1],_0x39acf1[0x2]-_0x5b2d6c[0x2]],_0x47a663=[_0x598e92[0x0]-_0x5b2d6c[0x0],_0x598e92[0x1]-_0x5b2d6c[0x1],_0x598e92[0x2]-_0x5b2d6c[0x2]],_0x5593b1=_0x1c851f[0x0]*_0x1c851f[0x0]+_0x1c851f[0x1]*_0x1c851f[0x1]+_0x1c851f[0x2]*_0x1c851f[0x2];if(_0x5593b1===0x0)continue;let _0x4b6113=(_0x47a663[0x0]*_0x1c851f[0x0]+_0x47a663[0x1]*_0x1c851f[0x1]+_0x47a663[0x2]*_0x1c851f[0x2])/_0x5593b1;_0x4b6113=Math[_0x45e58b(0x238)](0x0,Math['min'](0x1,_0x4b6113));let _0x17002e=[_0x5b2d6c[0x0]+_0x4b6113*_0x1c851f[0x0],_0x5b2d6c[0x1]+_0x4b6113*_0x1c851f[0x1],_0x5b2d6c[0x2]+_0x4b6113*_0x1c851f[0x2]],_0x5aa7ac=Math[_0x45e58b(0x209)](_0x598e92[0x0]-_0x17002e[0x0],0x2)+Math['pow'](_0x598e92[0x1]-_0x17002e[0x1],0x2)+Math['pow'](_0x598e92[0x2]-_0x17002e[0x2],0x2);_0x5aa7ac<_0x5aae9e&&(_0x5aae9e=_0x5aa7ac,_0x177291=(this['cumulativeLength'][_0x3de787]+_0x4b6113*this[_0x45e58b(0x1f9)][_0x3de787])/this['totalLength']);}return _0x177291;}[a0_0x1c617d(0x24b)](_0x18dec6){const _0xfc4144=a0_0x1c617d;if(_0x18dec6<=0x0)return[...this[_0xfc4144(0x225)][0x0]];if(_0x18dec6>=0x1)return[...this[_0xfc4144(0x225)][this[_0xfc4144(0x225)][_0xfc4144(0x1e7)]-0x1]];let _0x5339f5=_0x18dec6*this[_0xfc4144(0x240)];for(let _0x4438b4=0x0;_0x4438b4<this[_0xfc4144(0x21f)][_0xfc4144(0x1e7)]-0x1;_0x4438b4++)if(this['cumulativeLength'][_0x4438b4]<=_0x5339f5&&_0x5339f5<=this[_0xfc4144(0x21f)][_0x4438b4+0x1]){let _0x23f104=(_0x5339f5-this['cumulativeLength'][_0x4438b4])/this[_0xfc4144(0x1f9)][_0x4438b4],_0x33fa00=this[_0xfc4144(0x225)][_0x4438b4],_0x45b2e5=this[_0xfc4144(0x225)][_0x4438b4+0x1],_0x545128=(0x1-_0x23f104)*_0x33fa00[0x0]+_0x23f104*_0x45b2e5[0x0],_0x63fa17=(0x1-_0x23f104)*_0x33fa00[0x1]+_0x23f104*_0x45b2e5[0x1],_0x48fb12=(0x1-_0x23f104)*_0x33fa00[0x2]+_0x23f104*_0x45b2e5[0x2];return[_0x545128,_0x63fa17,_0x48fb12];}return[...this['points'][this[_0xfc4144(0x225)][_0xfc4144(0x1e7)]-0x1]];}},_={'pointsToIges':function(_0x16c584,_0x16ed1f={}){const _0x3e7cf9=a0_0x1c617d;let _0x365476={'units':'MM','filename':'points.iges','author':_0x3e7cf9(0x25d),'organization':_0x3e7cf9(0x200),'asPolyline':!0x1,..._0x16ed1f};if(!Array[_0x3e7cf9(0x1f2)](_0x16c584)||_0x16c584[_0x3e7cf9(0x1e7)]===0x0)throw new Error(_0x3e7cf9(0x1db));let _0x334921=_0x16c584[_0x3e7cf9(0x203)](_0x1db833=>{const _0x421467=_0x3e7cf9;if(!Array[_0x421467(0x1f2)](_0x1db833)||_0x1db833[_0x421467(0x1e7)]<0x2)throw new Error(_0x421467(0x1eb));return[_0x1db833[0x0]||0x0,_0x1db833[0x1]||0x0,_0x1db833[0x2]||0x0];}),_0x4d3581='',_0x45beb9='',_0x23f287='',_0x4d1772='',_0x103d28=0x0,_0x3313e4=0x1,_0x24547=0x1,_0x5d5c7e=new Date()['toISOString']()['slice'](0x0,0x13)[_0x3e7cf9(0x1e5)](/[-:]/g,'')[_0x3e7cf9(0x1e5)]('T','.');if(_0x45beb9+=this['formatGlobalLine'](_0x3e7cf9(0x204)+_0x365476['filename']+_0x3e7cf9(0x252)+_0x365476['author']+','),_0x45beb9+=this[_0x3e7cf9(0x242)]('11H'+_0x365476[_0x3e7cf9(0x1d1)]+_0x3e7cf9(0x253)+_0x365476[_0x3e7cf9(0x251)]+','),_0x45beb9+=this[_0x3e7cf9(0x242)](_0x3e7cf9(0x20b)+_0x365476['units']['toUpperCase']()+_0x3e7cf9(0x241)+_0x5d5c7e+','),_0x45beb9+=this[_0x3e7cf9(0x242)]('1.E-06,100.0,7H'+_0x365476[_0x3e7cf9(0x221)]+_0x3e7cf9(0x23f)+_0x365476[_0x3e7cf9(0x1d1)]+',11,0,'),_0x45beb9+=this[_0x3e7cf9(0x242)](_0x3e7cf9(0x234)+_0x5d5c7e+',;'),_0x365476[_0x3e7cf9(0x1e9)]&&_0x334921[_0x3e7cf9(0x1e7)]>0x1){_0x103d28++,_0x23f287+=this[_0x3e7cf9(0x1f3)](0x6a,_0x3313e4,0x0,0x0,0x0,0x0,0x0,0x0,_0x24547),_0x23f287+=this[_0x3e7cf9(0x1f3)](0x6a,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x24547+0x1),_0x24547+=0x2;let _0x2eea0f='106,'+(_0x334921[_0x3e7cf9(0x1e7)]-0x1);for(let _0x5323df=0x0;_0x5323df<_0x334921[_0x3e7cf9(0x1e7)];_0x5323df++){let _0xbd13df=_0x334921[_0x5323df];_0x2eea0f+=','+this[_0x3e7cf9(0x1fc)](_0xbd13df[0x0])+','+this[_0x3e7cf9(0x1fc)](_0xbd13df[0x1])+','+this[_0x3e7cf9(0x1fc)](_0xbd13df[0x2]);}_0x2eea0f+=';',_0x4d1772+=this['formatParameterLine'](_0x2eea0f,_0x3313e4),_0x3313e4+=Math[_0x3e7cf9(0x208)](_0x2eea0f[_0x3e7cf9(0x1e7)]/0x40);}else for(let _0x5afb5d=0x0;_0x5afb5d<_0x334921['length'];_0x5afb5d++){_0x103d28++;let _0x392a15=_0x334921[_0x5afb5d];_0x23f287+=this[_0x3e7cf9(0x1f3)](0x74,_0x3313e4,0x0,0x0,0x0,0x0,0x0,0x0,_0x24547),_0x23f287+=this[_0x3e7cf9(0x1f3)](0x74,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x24547+0x1),_0x24547+=0x2;let _0x4ec2fb=_0x3e7cf9(0x236)+this['formatNumber'](_0x392a15[0x0])+','+this[_0x3e7cf9(0x1fc)](_0x392a15[0x1])+','+this[_0x3e7cf9(0x1fc)](_0x392a15[0x2])+_0x3e7cf9(0x1fa);_0x4d1772+=this['formatParameterLine'](_0x4ec2fb,_0x3313e4),_0x3313e4+=Math[_0x3e7cf9(0x208)](_0x4ec2fb['length']/0x40);}let _0x23aee8=this[_0x3e7cf9(0x223)]('START',[_0x3e7cf9(0x231),_0x3e7cf9(0x1da)]),_0x1b87c9=this[_0x3e7cf9(0x1f7)](_0x23aee8[_0x3e7cf9(0x20f)]('\x0a')['length']-0x1,_0x45beb9[_0x3e7cf9(0x20f)]('\x0a')[_0x3e7cf9(0x1e7)]-0x1,_0x23f287[_0x3e7cf9(0x20f)]('\x0a')[_0x3e7cf9(0x1e7)]-0x1,_0x4d1772['split']('\x0a')[_0x3e7cf9(0x1e7)]-0x1);return _0x23aee8+_0x45beb9+_0x23f287+_0x4d1772+_0x1b87c9;},'formatNumber':function(_0x2d0cf6){const _0x9d482d=a0_0x1c617d;return Number['isInteger'](_0x2d0cf6)?_0x2d0cf6[_0x9d482d(0x1e6)]():Math['abs'](_0x2d0cf6)<0.001||Math[_0x9d482d(0x1ed)](_0x2d0cf6)>0xf4240?_0x2d0cf6[_0x9d482d(0x23e)](0x6):_0x2d0cf6[_0x9d482d(0x21d)](0x6)[_0x9d482d(0x1e5)](/\.?0+$/,'');},'formatGlobalLine':function(_0x17b1d4){const _0x2dc477=a0_0x1c617d;let _0x480d7f=(this[_0x2dc477(0x242)][_0x2dc477(0x21c)]||0x0)+0x1;return this[_0x2dc477(0x242)][_0x2dc477(0x21c)]=_0x480d7f,_0x17b1d4[_0x2dc477(0x219)](0x48)+('G'+_0x480d7f[_0x2dc477(0x1e6)]()[_0x2dc477(0x235)](0x7)+'\x0a');},'formatDirectoryLine':function(_0x1d0dc0,_0xaaf7f0,_0x37c5f1,_0x4146dd,_0x198d44,_0x16566c,_0x2689b8,_0xa2773e,_0x2ef518){const _0x3da28d=a0_0x1c617d;return[_0x1d0dc0[_0x3da28d(0x1e6)]()[_0x3da28d(0x235)](0x8),_0xaaf7f0[_0x3da28d(0x1e6)]()[_0x3da28d(0x235)](0x8),_0x37c5f1[_0x3da28d(0x1e6)]()['padStart'](0x8),_0x4146dd[_0x3da28d(0x1e6)]()[_0x3da28d(0x235)](0x8),_0x198d44[_0x3da28d(0x1e6)]()['padStart'](0x8),_0x16566c[_0x3da28d(0x1e6)]()[_0x3da28d(0x235)](0x8),_0x2689b8[_0x3da28d(0x1e6)]()[_0x3da28d(0x235)](0x8),_0xa2773e[_0x3da28d(0x1e6)]()[_0x3da28d(0x235)](0x8)][_0x3da28d(0x22f)]('')+('D'+_0x2ef518['toString']()[_0x3da28d(0x235)](0x7)+'\x0a');},'formatParameterLine':function(_0x57806c,_0x115fb0){const _0x3613a4=a0_0x1c617d;let _0x38b44f='',_0x3ca58a=_0x115fb0;for(let _0x361bf9=0x0;_0x361bf9<_0x57806c[_0x3613a4(0x1e7)];_0x361bf9+=0x40){let _0x43c15b=_0x57806c[_0x3613a4(0x232)](_0x361bf9,0x40);_0x38b44f+=_0x43c15b[_0x3613a4(0x219)](0x40)+('\x20'+_0x3ca58a[_0x3613a4(0x1e6)]()[_0x3613a4(0x235)](0x7)+'P'+_0x3ca58a[_0x3613a4(0x1e6)]()['padStart'](0x7)+'\x0a'),_0x3ca58a++;}return _0x38b44f;},'formatSection':function(_0x4b14a8,_0x2bc360){const _0x234baf=a0_0x1c617d;return _0x2bc360[_0x234baf(0x203)]((_0x509c72,_0xd4401c)=>_0x509c72+'\x0a')[_0x234baf(0x22f)]('');},'formatTerminateSection':function(_0x3917fc,_0x263ce3,_0x364d22,_0x3196d3){const _0x1a546c=a0_0x1c617d;return['S'+_0x3917fc[_0x1a546c(0x1e6)]()[_0x1a546c(0x235)](0x7),'G'+_0x263ce3['toString']()[_0x1a546c(0x235)](0x7),'D'+_0x364d22[_0x1a546c(0x1e6)]()[_0x1a546c(0x235)](0x7),'P'+_0x3196d3[_0x1a546c(0x1e6)]()[_0x1a546c(0x235)](0x7)]['join']('')['padEnd'](0x48)+_0x1a546c(0x1e0);},'nurbsToIges':function(_0x48bac8,_0x44a52b={}){const _0x3d8fe7=a0_0x1c617d;let _0xa7d8b0={'units':'MM','filename':_0x3d8fe7(0x1e8),'author':_0x3d8fe7(0x25d),'organization':_0x3d8fe7(0x200),'degree':0x3,'weights':null,'knotVector':null,..._0x44a52b};if(!Array['isArray'](_0x48bac8)||_0x48bac8[_0x3d8fe7(0x1e7)]===0x0)throw new Error('Control\x20points\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty');if(_0x48bac8[_0x3d8fe7(0x1e7)]<_0xa7d8b0[_0x3d8fe7(0x250)]+0x1)throw new Error('At\x20least\x20'+(_0xa7d8b0[_0x3d8fe7(0x250)]+0x1)+_0x3d8fe7(0x259)+_0xa7d8b0[_0x3d8fe7(0x250)]+'\x20NURBS');let _0x51d512=_0x48bac8[_0x3d8fe7(0x203)](_0x132929=>{const _0x3b172c=_0x3d8fe7;if(!Array['isArray'](_0x132929)||_0x132929[_0x3b172c(0x1e7)]<0x2)throw new Error('Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]');return[_0x132929[0x0]||0x0,_0x132929[0x1]||0x0,_0x132929[0x2]||0x0];}),_0x50bc73=_0x51d512[_0x3d8fe7(0x1e7)],_0x373087=_0xa7d8b0[_0x3d8fe7(0x233)]||new Array(_0x50bc73)[_0x3d8fe7(0x255)](0x1);if(_0x373087[_0x3d8fe7(0x1e7)]!==_0x50bc73)throw new Error(_0x3d8fe7(0x256));let _0x440f43=_0xa7d8b0[_0x3d8fe7(0x1f5)];if(!_0x440f43){let _0x2c61ee=_0x50bc73+_0xa7d8b0[_0x3d8fe7(0x250)]+0x1;_0x440f43=[];let _0x51b309=_0x50bc73-0x1,_0x33b464=_0xa7d8b0[_0x3d8fe7(0x250)];for(let _0x398ca6=0x0;_0x398ca6<=_0x33b464;_0x398ca6++)_0x440f43[_0x3d8fe7(0x254)](0x0);for(let _0x389073=0x1;_0x389073<_0x51b309-_0x33b464+0x1;_0x389073++)_0x440f43['push'](_0x389073/(_0x51b309-_0x33b464+0x1));for(let _0x3528aa=0x0;_0x3528aa<=_0x33b464;_0x3528aa++)_0x440f43['push'](0x1);}if(_0x440f43[_0x3d8fe7(0x1e7)]!==_0x50bc73+_0xa7d8b0['degree']+0x1)throw new Error(_0x3d8fe7(0x237)+(_0x50bc73+_0xa7d8b0['degree']+0x1));let _0x102d62='',_0x4257ca='',_0x3867b0='',_0x490a93=0x1,_0x48944a=0x1,_0x2c0fee=new Date()[_0x3d8fe7(0x220)]()[_0x3d8fe7(0x206)](0x0,0x13)[_0x3d8fe7(0x1e5)](/[-:]/g,'')[_0x3d8fe7(0x1e5)]('T','.');_0x102d62+=this['formatGlobalLine'](_0x3d8fe7(0x204)+_0xa7d8b0[_0x3d8fe7(0x251)]+',7H'+_0xa7d8b0['author']+','),_0x102d62+=this[_0x3d8fe7(0x242)](_0x3d8fe7(0x22d)+_0xa7d8b0[_0x3d8fe7(0x1d1)]+_0x3d8fe7(0x253)+_0xa7d8b0[_0x3d8fe7(0x251)]+','),_0x102d62+=this[_0x3d8fe7(0x242)](_0x3d8fe7(0x20b)+_0xa7d8b0[_0x3d8fe7(0x243)]['toUpperCase']()+_0x3d8fe7(0x241)+_0x2c0fee+','),_0x102d62+=this[_0x3d8fe7(0x242)](_0x3d8fe7(0x23b)+_0xa7d8b0[_0x3d8fe7(0x221)]+',11H'+_0xa7d8b0[_0x3d8fe7(0x1d1)]+',11,0,'),_0x102d62+=this[_0x3d8fe7(0x242)](_0x3d8fe7(0x234)+_0x2c0fee+',;'),_0x4257ca+=this[_0x3d8fe7(0x1f3)](0x7e,_0x490a93,0x0,0x0,0x0,0x0,0x0,0x0,_0x48944a),_0x4257ca+=this[_0x3d8fe7(0x1f3)](0x7e,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x48944a+0x1),_0x48944a+=0x2;let _0x2d7405=_0x50bc73-0x1,_0x3b9e81=_0xa7d8b0[_0x3d8fe7(0x250)],_0x4a67f1=_0x3d8fe7(0x1ec)+_0x2d7405+','+_0x3b9e81+',0,0,1,0';for(let _0x10f7d3=0x0;_0x10f7d3<_0x440f43[_0x3d8fe7(0x1e7)];_0x10f7d3++)_0x4a67f1+=','+this[_0x3d8fe7(0x1fc)](_0x440f43[_0x10f7d3]);for(let _0x277cb7=0x0;_0x277cb7<_0x373087[_0x3d8fe7(0x1e7)];_0x277cb7++)_0x4a67f1+=','+this[_0x3d8fe7(0x1fc)](_0x373087[_0x277cb7]);for(let _0x5dbabc=0x0;_0x5dbabc<0x3;_0x5dbabc++)for(let _0x246109=0x0;_0x246109<_0x51d512[_0x3d8fe7(0x1e7)];_0x246109++)_0x4a67f1+=','+this[_0x3d8fe7(0x1fc)](_0x51d512[_0x246109][_0x5dbabc]);_0x4a67f1+=','+this[_0x3d8fe7(0x1fc)](_0x440f43[0x0])+','+this[_0x3d8fe7(0x1fc)](_0x440f43[_0x440f43['length']-0x1]),_0x4a67f1+=_0x3d8fe7(0x1d5),_0x4a67f1+=';',_0x3867b0+=this[_0x3d8fe7(0x25e)](_0x4a67f1,_0x490a93),_0x490a93+=Math[_0x3d8fe7(0x208)](_0x4a67f1[_0x3d8fe7(0x1e7)]/0x40);let _0x5c1020=this[_0x3d8fe7(0x223)](_0x3d8fe7(0x217),[_0x3d8fe7(0x231),_0x3d8fe7(0x23d)]),_0x102c5d=this[_0x3d8fe7(0x1f7)](_0x5c1020[_0x3d8fe7(0x20f)]('\x0a')['length']-0x1,_0x102d62['split']('\x0a')['length']-0x1,_0x4257ca[_0x3d8fe7(0x20f)]('\x0a')[_0x3d8fe7(0x1e7)]-0x1,_0x3867b0[_0x3d8fe7(0x20f)]('\x0a')[_0x3d8fe7(0x1e7)]-0x1);return _0x5c1020+_0x102d62+_0x4257ca+_0x3867b0+_0x102c5d;},'geometryToIges':function(_0x329f84,_0x3e0199={}){const _0x41bcc3=a0_0x1c617d;let _0x28ae75={'units':'MM','filename':_0x41bcc3(0x1ce),'author':_0x41bcc3(0x25d),'organization':_0x41bcc3(0x200),..._0x3e0199};if(!Array[_0x41bcc3(0x1f2)](_0x329f84)||_0x329f84[_0x41bcc3(0x1e7)]===0x0)throw new Error(_0x41bcc3(0x24a));let _0x52f26a='',_0x142a04='',_0x406c3e='',_0x305bbe=0x1,_0x4754c6=0x1,_0x5f3dd9=0x0,_0x38c379=new Date()[_0x41bcc3(0x220)]()[_0x41bcc3(0x206)](0x0,0x13)[_0x41bcc3(0x1e5)](/[-:]/g,'')[_0x41bcc3(0x1e5)]('T','.');_0x52f26a+=this[_0x41bcc3(0x242)](_0x41bcc3(0x204)+_0x28ae75[_0x41bcc3(0x251)]+_0x41bcc3(0x252)+_0x28ae75[_0x41bcc3(0x221)]+','),_0x52f26a+=this[_0x41bcc3(0x242)](_0x41bcc3(0x22d)+_0x28ae75[_0x41bcc3(0x1d1)]+_0x41bcc3(0x253)+_0x28ae75[_0x41bcc3(0x251)]+','),_0x52f26a+=this[_0x41bcc3(0x242)](_0x41bcc3(0x20b)+_0x28ae75[_0x41bcc3(0x243)]['toUpperCase']()+_0x41bcc3(0x241)+_0x38c379+','),_0x52f26a+=this[_0x41bcc3(0x242)](_0x41bcc3(0x23b)+_0x28ae75[_0x41bcc3(0x221)]+_0x41bcc3(0x23f)+_0x28ae75[_0x41bcc3(0x1d1)]+',11,0,'),_0x52f26a+=this[_0x41bcc3(0x242)](_0x41bcc3(0x234)+_0x38c379+',;');for(let _0x479a1d of _0x329f84){if(!_0x479a1d||typeof _0x479a1d!=_0x41bcc3(0x246)||!_0x479a1d[_0x41bcc3(0x214)]||!_0x479a1d[_0x41bcc3(0x1ef)])throw new Error(_0x41bcc3(0x1fe));let _0x49ec33=_0x479a1d['type'][_0x41bcc3(0x1ea)](),_0x2dcf72=_0x479a1d[_0x41bcc3(0x1ef)]['map'](_0x197981=>{const _0x55b328=_0x41bcc3;if(!Array[_0x55b328(0x1f2)](_0x197981)||_0x197981[_0x55b328(0x1e7)]<0x2)throw new Error(_0x55b328(0x1eb));return[_0x197981[0x0]||0x0,_0x197981[0x1]||0x0,_0x197981[0x2]||0x0];});if(_0x2dcf72[_0x41bcc3(0x1e7)]!==0x0)switch(_0x49ec33){case _0x41bcc3(0x225):for(let _0x8dadce of _0x2dcf72){_0x5f3dd9++,_0x142a04+=this[_0x41bcc3(0x1f3)](0x74,_0x305bbe,0x0,0x0,0x0,0x0,0x0,0x0,_0x4754c6),_0x142a04+=this[_0x41bcc3(0x1f3)](0x74,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x4754c6+0x1),_0x4754c6+=0x2;let _0x44bb1b=_0x41bcc3(0x236)+this[_0x41bcc3(0x1fc)](_0x8dadce[0x0])+','+this[_0x41bcc3(0x1fc)](_0x8dadce[0x1])+','+this['formatNumber'](_0x8dadce[0x2])+_0x41bcc3(0x1fa);_0x406c3e+=this['formatParameterLine'](_0x44bb1b,_0x305bbe),_0x305bbe+=Math[_0x41bcc3(0x208)](_0x44bb1b['length']/0x40);}break;case _0x41bcc3(0x25c):if(_0x2dcf72['length']>0x1){_0x5f3dd9++,_0x142a04+=this[_0x41bcc3(0x1f3)](0x6a,_0x305bbe,0x0,0x0,0x0,0x0,0x0,0x0,_0x4754c6),_0x142a04+=this[_0x41bcc3(0x1f3)](0x6a,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x4754c6+0x1),_0x4754c6+=0x2;let _0x3feff1=_0x41bcc3(0x24c)+(_0x2dcf72[_0x41bcc3(0x1e7)]-0x1);for(let _0x38f15d of _0x2dcf72)_0x3feff1+=','+this[_0x41bcc3(0x1fc)](_0x38f15d[0x0])+','+this[_0x41bcc3(0x1fc)](_0x38f15d[0x1])+','+this[_0x41bcc3(0x1fc)](_0x38f15d[0x2]);_0x3feff1+=';',_0x406c3e+=this[_0x41bcc3(0x25e)](_0x3feff1,_0x305bbe),_0x305bbe+=Math[_0x41bcc3(0x208)](_0x3feff1[_0x41bcc3(0x1e7)]/0x40);}break;case _0x41bcc3(0x22b):let _0x441656=_0x479a1d[_0x41bcc3(0x250)]||0x3,_0x24ad80=_0x2dcf72[_0x41bcc3(0x1e7)];if(_0x24ad80<_0x441656+0x1){console[_0x41bcc3(0x25a)](_0x41bcc3(0x1dc)+(_0x441656+0x1)+_0x41bcc3(0x25f)+_0x441656);continue;}let _0x573f0c=_0x479a1d[_0x41bcc3(0x233)]||new Array(_0x24ad80)[_0x41bcc3(0x255)](0x1);if(_0x573f0c[_0x41bcc3(0x1e7)]!==_0x24ad80)throw new Error('Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length');let _0x1674f1=_0x479a1d[_0x41bcc3(0x1f5)];if(!_0x1674f1){let _0x2ffa02=_0x24ad80-0x1,_0x178ec6=_0x441656;_0x1674f1=[];for(let _0x38d057=0x0;_0x38d057<=_0x178ec6;_0x38d057++)_0x1674f1[_0x41bcc3(0x254)](0x0);for(let _0x576733=0x1;_0x576733<_0x2ffa02-_0x178ec6+0x1;_0x576733++)_0x1674f1['push'](_0x576733/(_0x2ffa02-_0x178ec6+0x1));for(let _0x48618b=0x0;_0x48618b<=_0x178ec6;_0x48618b++)_0x1674f1[_0x41bcc3(0x254)](0x1);}_0x5f3dd9++,_0x142a04+=this[_0x41bcc3(0x1f3)](0x7e,_0x305bbe,0x0,0x0,0x0,0x0,0x0,0x0,_0x4754c6),_0x142a04+=this['formatDirectoryLine'](0x7e,0x0,0x0,0x1,0x0,0x0,0x0,0x0,_0x4754c6+0x1),_0x4754c6+=0x2;let _0x171bbf='126,'+(_0x24ad80-0x1)+','+_0x441656+_0x41bcc3(0x1de);for(let _0x4dcdcf of _0x1674f1)_0x171bbf+=','+this[_0x41bcc3(0x1fc)](_0x4dcdcf);for(let _0x34de7b of _0x573f0c)_0x171bbf+=','+this[_0x41bcc3(0x1fc)](_0x34de7b);for(let _0x11e65f=0x0;_0x11e65f<0x3;_0x11e65f++)for(let _0x23501d of _0x2dcf72)_0x171bbf+=','+this[_0x41bcc3(0x1fc)](_0x23501d[_0x11e65f]);_0x171bbf+=','+this[_0x41bcc3(0x1fc)](_0x1674f1[0x0])+','+this['formatNumber'](_0x1674f1[_0x1674f1[_0x41bcc3(0x1e7)]-0x1]),_0x171bbf+=_0x41bcc3(0x1d5),_0x171bbf+=';',_0x406c3e+=this['formatParameterLine'](_0x171bbf,_0x305bbe),_0x305bbe+=Math['ceil'](_0x171bbf['length']/0x40);break;default:throw new Error('Unknown\x20geometry\x20type:\x20'+_0x49ec33+_0x41bcc3(0x202));}}if(_0x5f3dd9===0x0)throw new Error(_0x41bcc3(0x245));let _0x21b941=this[_0x41bcc3(0x223)]('START',[_0x41bcc3(0x231),_0x41bcc3(0x1cd)]),_0x1eeef3=this[_0x41bcc3(0x1f7)](_0x21b941[_0x41bcc3(0x20f)]('\x0a')['length']-0x1,_0x52f26a[_0x41bcc3(0x20f)]('\x0a')[_0x41bcc3(0x1e7)]-0x1,_0x142a04[_0x41bcc3(0x20f)]('\x0a')[_0x41bcc3(0x1e7)]-0x1,_0x406c3e[_0x41bcc3(0x20f)]('\x0a')['length']-0x1);return _0x21b941+_0x52f26a+_0x142a04+_0x406c3e+_0x1eeef3;},'readIgesFile':function(_0x3dd434){const _0x9c8675=a0_0x1c617d;if(!_0x3dd434||typeof _0x3dd434!='string')throw new Error(_0x9c8675(0x227));let _0xa0aef5=[],_0x2d8672=[],_0x30d1af=[],_0x2faab2=_0x3dd434[_0x9c8675(0x20f)]('\x0a')[_0x9c8675(0x24f)](_0x12c512=>_0x12c512['trim']()&&_0x12c512[_0x9c8675(0x1ff)](0x48)==='P'),_0x4cd2d2='';for(let _0x50e540 of _0x2faab2){let _0x25e97a=_0x50e540['substring'](0x0,0x40)[_0x9c8675(0x1f6)]();_0x4cd2d2+=_0x25e97a,_0x25e97a[_0x9c8675(0x257)](';')&&(this['processEntity'](_0x4cd2d2,_0xa0aef5,_0x2d8672,_0x30d1af),_0x4cd2d2='');}return{'lines':_0xa0aef5,'points':_0x2d8672,'nurbs':_0x30d1af};},'parseIgesNumber':function(_0x18b294){const _0x592f97=a0_0x1c617d;if(!_0x18b294||typeof _0x18b294!='string')return 0x0;let _0x54fa67=_0x18b294[_0x592f97(0x1f6)]()[_0x592f97(0x1e5)](/D([+-]?\d+)/g,_0x592f97(0x24e)),_0x1119bc=parseFloat(_0x54fa67);return isNaN(_0x1119bc)?0x0:_0x1119bc;},'processEntity':function(_0x53b841,_0x35abd9,_0x44837,_0x2242a9){const _0x192c91=a0_0x1c617d;let _0x5c098f=_0x53b841[_0x192c91(0x1e5)](';','')[_0x192c91(0x20f)](',')[_0x192c91(0x203)](_0x117706=>_0x117706['trim']());if(_0x5c098f['length']===0x0)return;switch(parseInt(_0x5c098f[0x0])){case 0x74:this[_0x192c91(0x22c)](_0x5c098f,_0x44837);break;case 0x6a:this[_0x192c91(0x201)](_0x5c098f,_0x35abd9);break;case 0x7e:this[_0x192c91(0x224)](_0x5c098f,_0x2242a9);break;case 0x6e:this['processLineEntity'](_0x5c098f,_0x35abd9);break;default:break;}},'processPointEntity':function(_0x625a29,_0x1cc6a9){const _0x311262=a0_0x1c617d;if(_0x625a29[_0x311262(0x1e7)]>=0x4){let _0x5dfeae=this['parseIgesNumber'](_0x625a29[0x1]),_0x4fe293=this[_0x311262(0x1e4)](_0x625a29[0x2]),_0x15fff9=this['parseIgesNumber'](_0x625a29[0x3]);_0x1cc6a9[_0x311262(0x254)]([_0x5dfeae,_0x4fe293,_0x15fff9]);}},'processPolylineEntity':function(_0x68fcae,_0x51d2a0){const _0x4dc8b9=a0_0x1c617d;if(_0x68fcae[_0x4dc8b9(0x1e7)]<0x2)return;let _0x17f68c=parseInt(_0x68fcae[0x1]),_0x2c99d3=0x2+(_0x17f68c+0x1)*0x3;if(_0x68fcae[_0x4dc8b9(0x1e7)]<_0x2c99d3)return;let _0x448c84=[];for(let _0x1773dc=0x0;_0x1773dc<=_0x17f68c;_0x1773dc++){let _0x568ffd=0x2+_0x1773dc*0x3;if(_0x568ffd+0x2<_0x68fcae[_0x4dc8b9(0x1e7)]){let _0x55e10c=this[_0x4dc8b9(0x1e4)](_0x68fcae[_0x568ffd]),_0x18555a=this[_0x4dc8b9(0x1e4)](_0x68fcae[_0x568ffd+0x1]),_0x47cb2a=this[_0x4dc8b9(0x1e4)](_0x68fcae[_0x568ffd+0x2]);_0x448c84[_0x4dc8b9(0x254)]([_0x55e10c,_0x18555a,_0x47cb2a]);}}_0x448c84['length']>0x1&&_0x51d2a0[_0x4dc8b9(0x254)](_0x448c84);},'processLineEntity':function(_0x460e12,_0x5b0b9b){const _0x13918c=a0_0x1c617d;if(_0x460e12[_0x13918c(0x1e7)]>=0x7){let _0xf29a5d=this[_0x13918c(0x1e4)](_0x460e12[0x1]),_0x312eec=this[_0x13918c(0x1e4)](_0x460e12[0x2]),_0x1ad990=this[_0x13918c(0x1e4)](_0x460e12[0x3]),_0x54a304=this[_0x13918c(0x1e4)](_0x460e12[0x4]),_0x346746=this['parseIgesNumber'](_0x460e12[0x5]),_0xe9f414=this[_0x13918c(0x1e4)](_0x460e12[0x6]);_0x5b0b9b[_0x13918c(0x254)]([[_0xf29a5d,_0x312eec,_0x1ad990],[_0x54a304,_0x346746,_0xe9f414]]);}},'processNurbsEntity':function(_0x2cc173,_0x474507){const _0x28870b=a0_0x1c617d;if(_0x2cc173[_0x28870b(0x1e7)]<0x7)return;let _0x2aee3f=parseInt(_0x2cc173[0x1]),_0x5d5997=parseInt(_0x2cc173[0x2]),_0x328f54=parseInt(_0x2cc173[0x3]),_0x2290d1=parseInt(_0x2cc173[0x4]),_0x859ec=parseInt(_0x2cc173[0x5]),_0x5bf324=parseInt(_0x2cc173[0x6]),_0x622f96=_0x2aee3f+0x1,_0x472c1c=_0x2aee3f+_0x5d5997+0x2,_0x50b841=0x7,_0x448e00=_0x50b841+_0x472c1c,_0xbc5c3c=_0x448e00+_0x622f96+_0x622f96+_0x622f96+_0x622f96+0x2;if(_0x2cc173['length']<_0xbc5c3c+0x3)return;let _0x24175d=[];for(let _0x1faae7=0x0;_0x1faae7<_0x472c1c;_0x1faae7++)_0x24175d[_0x28870b(0x254)](this[_0x28870b(0x1e4)](_0x2cc173[_0x50b841+_0x1faae7]));let _0x21c280=[];for(let _0x293f67=0x0;_0x293f67<_0x622f96;_0x293f67++)_0x21c280[_0x28870b(0x254)](this['parseIgesNumber'](_0x2cc173[_0x448e00+_0x293f67])||0x1);let _0x3fc6f0=[],_0x1c74a4=_0x448e00+_0x622f96,_0x133a08=_0x1c74a4+_0x622f96*0x3;if(_0x2cc173[_0x28870b(0x1e7)]>=_0x133a08+0x5){for(let _0x5d6ab4=0x0;_0x5d6ab4<_0x622f96;_0x5d6ab4++){let _0x154184=_0x1c74a4+_0x5d6ab4*0x3,_0x3e8dd8=this[_0x28870b(0x1e4)](_0x2cc173[_0x154184]),_0x2110e4=this[_0x28870b(0x1e4)](_0x2cc173[_0x154184+0x1]),_0x390c06=this[_0x28870b(0x1e4)](_0x2cc173[_0x154184+0x2]);_0x3fc6f0[_0x28870b(0x254)]([_0x3e8dd8,_0x2110e4,_0x390c06]);}let _0x9240ec=_0x133a08,_0x172a7d=_0x9240ec+0x2,_0x1b3dee=this[_0x28870b(0x1e4)](_0x2cc173[_0x9240ec]),_0x4e2679=this[_0x28870b(0x1e4)](_0x2cc173[_0x9240ec+0x1])||0x1,_0x1bdcd0=[this[_0x28870b(0x1e4)](_0x2cc173[_0x172a7d]),this[_0x28870b(0x1e4)](_0x2cc173[_0x172a7d+0x1]),this['parseIgesNumber'](_0x2cc173[_0x172a7d+0x2])],_0x33b3b5={'type':_0x28870b(0x22b),'degree':_0x5d5997,'controlPoints':_0x3fc6f0,'weights':_0x21c280,'knotVector':_0x24175d,'parameterRange':[_0x1b3dee,_0x4e2679],'properties':{'planar':_0x328f54===0x1,'closed':_0x2290d1===0x1,'rational':_0x859ec===0x1,'periodic':_0x5bf324===0x1},'normalVector':_0x1bdcd0,'numControlPoints':_0x622f96,'numKnots':_0x472c1c,'upperControlPointIndex':_0x2aee3f};_0x474507[_0x28870b(0x254)](_0x33b3b5);}else{let _0x114219=_0x448e00+_0x622f96,_0x5f209a=_0x114219+_0x622f96,_0x2fd0cd=_0x5f209a+_0x622f96,_0x3903a5=_0x2fd0cd+_0x622f96,_0x124802=_0x3903a5+0x2;if(_0x2cc173[_0x28870b(0x1e7)]<_0x124802+0x3)return;for(let _0x3957a9=0x0;_0x3957a9<_0x622f96;_0x3957a9++){let _0x256b4f=this[_0x28870b(0x1e4)](_0x2cc173[_0x114219+_0x3957a9]),_0x53f5b0=this[_0x28870b(0x1e4)](_0x2cc173[_0x5f209a+_0x3957a9]),_0x518870=this[_0x28870b(0x1e4)](_0x2cc173[_0x2fd0cd+_0x3957a9]);_0x3fc6f0[_0x28870b(0x254)]([_0x256b4f,_0x53f5b0,_0x518870]);}let _0x24e4cd=this[_0x28870b(0x1e4)](_0x2cc173[_0x3903a5]),_0x28bc5e=this['parseIgesNumber'](_0x2cc173[_0x3903a5+0x1])||0x1,_0x5786d2=[this[_0x28870b(0x1e4)](_0x2cc173[_0x124802]),this[_0x28870b(0x1e4)](_0x2cc173[_0x124802+0x1]),this[_0x28870b(0x1e4)](_0x2cc173[_0x124802+0x2])],_0xf8855b={'type':'nurbs','degree':_0x5d5997,'controlPoints':_0x3fc6f0,'weights':_0x21c280,'knotVector':_0x24175d,'parameterRange':[_0x24e4cd,_0x28bc5e],'properties':{'planar':_0x328f54===0x1,'closed':_0x2290d1===0x1,'rational':_0x859ec===0x1,'periodic':_0x5bf324===0x1},'normalVector':_0x5786d2,'numControlPoints':_0x622f96,'numKnots':_0x472c1c,'upperControlPointIndex':_0x2aee3f};_0x474507[_0x28870b(0x254)](_0xf8855b);}},'evaluateNurbsCurve':function(_0xa34643,_0x579576={}){const _0xa28275=a0_0x1c617d;let _0x2538f6={'numPoints':0x32,'parameters':null,..._0x579576};if(!_0xa34643||_0xa34643[_0xa28275(0x214)]!==_0xa28275(0x22b))throw new Error('Invalid\x20NURBS\x20curve\x20object');let {degree:_0x2aa403,controlPoints:_0x131a51,weights:_0xcf1ced,knotVector:_0x11ec8f,parameterRange:_0x361ab4}=_0xa34643,[_0x1026fc,_0x543805]=_0x361ab4,_0x3ff86a=_0x2538f6[_0xa28275(0x1f1)];if(!_0x3ff86a){_0x3ff86a=[];for(let _0x3cf165=0x0;_0x3cf165<_0x2538f6[_0xa28275(0x1d9)];_0x3cf165++){let _0x1de2f2=_0x1026fc+(_0x543805-_0x1026fc)*_0x3cf165/(_0x2538f6[_0xa28275(0x1d9)]-0x1);_0x3ff86a[_0xa28275(0x254)](_0x1de2f2);}}let _0x1c42ea=[];for(let _0x402cc0 of _0x3ff86a){let _0x43c466=Math[_0xa28275(0x238)](_0x1026fc,Math[_0xa28275(0x212)](_0x543805,_0x402cc0)),_0x132b96=this[_0xa28275(0x258)](_0x43c466,_0x2aa403,_0x11ec8f),_0x43cbce=this[_0xa28275(0x20d)](_0x132b96,_0x43c466,_0x2aa403,_0x11ec8f),_0xb7eb73=[0x0,0x0,0x0],_0x154454=0x0;for(let _0x4f8983=0x0;_0x4f8983<=_0x2aa403;_0x4f8983++){let _0x1395b4=_0x132b96-_0x2aa403+_0x4f8983;if(_0x1395b4>=0x0&&_0x1395b4<_0x131a51[_0xa28275(0x1e7)]){let _0x16300c=_0xcf1ced[_0x1395b4]*_0x43cbce[_0x4f8983];_0x154454+=_0x16300c,_0xb7eb73[0x0]+=_0x131a51[_0x1395b4][0x0]*_0x16300c,_0xb7eb73[0x1]+=_0x131a51[_0x1395b4][0x1]*_0x16300c,_0xb7eb73[0x2]+=_0x131a51[_0x1395b4][0x2]*_0x16300c;}}_0x154454>0x0&&(_0xb7eb73[0x0]/=_0x154454,_0xb7eb73[0x1]/=_0x154454,_0xb7eb73[0x2]/=_0x154454),_0x1c42ea['push'](_0xb7eb73);}return _0x1c42ea;},'findKnotSpan':function(_0x1fd08e,_0x2e1d74,_0x5d9177){const _0x468f41=a0_0x1c617d;let _0x10e085=_0x5d9177['length']-_0x2e1d74-0x2;if(_0x1fd08e>=_0x5d9177[_0x10e085+0x1])return _0x10e085;if(_0x1fd08e<=_0x5d9177[_0x2e1d74])return _0x2e1d74;let _0x404c47=_0x2e1d74,_0x29fafb=_0x10e085+0x1,_0x38e9e2=Math[_0x468f41(0x23a)]((_0x404c47+_0x29fafb)/0x2);for(;_0x1fd08e<_0x5d9177[_0x38e9e2]||_0x1fd08e>=_0x5d9177[_0x38e9e2+0x1];)_0x1fd08e<_0x5d9177[_0x38e9e2]?_0x29fafb=_0x38e9e2:_0x404c47=_0x38e9e2,_0x38e9e2=Math[_0x468f41(0x23a)]((_0x404c47+_0x29fafb)/0x2);return _0x38e9e2;},'computeBasisFunctions':function(_0x54c037,_0x14ca55,_0x5a35c5,_0x396fff){let _0x327a9c=new Array(_0x5a35c5+0x1),_0x30710a=new Array(_0x5a35c5+0x1),_0xf9dc91=new Array(_0x5a35c5+0x1);_0x327a9c[0x0]=0x1;for(let _0x30a0ea=0x1;_0x30a0ea<=_0x5a35c5;_0x30a0ea++){_0x30710a[_0x30a0ea]=_0x14ca55-_0x396fff[_0x54c037+0x1-_0x30a0ea],_0xf9dc91[_0x30a0ea]=_0x396fff[_0x54c037+_0x30a0ea]-_0x14ca55;let _0x5b99f8=0x0;for(let _0x1be4d7=0x0;_0x1be4d7<_0x30a0ea;_0x1be4d7++){let _0x415f24=_0x327a9c[_0x1be4d7]/(_0xf9dc91[_0x1be4d7+0x1]+_0x30710a[_0x30a0ea-_0x1be4d7]);_0x327a9c[_0x1be4d7]=_0x5b99f8+_0xf9dc91[_0x1be4d7+0x1]*_0x415f24,_0x5b99f8=_0x30710a[_0x30a0ea-_0x1be4d7]*_0x415f24;}_0x327a9c[_0x30a0ea]=_0x5b99f8;}return _0x327a9c;},'simplifyIgesData':function(_0x59b0b4,_0xb52e3e={}){const _0x124f74=a0_0x1c617d;let _0x4b302e={'flattenLines':!0x1,'flattenNurbs':!0x1,'precision':0x6,'includeNurbsMetadata':!0x0,..._0xb52e3e},_0x10f93c={'points':_0x59b0b4[_0x124f74(0x225)]['map'](_0x4cd073=>_0x4cd073[_0x124f74(0x203)](_0x2373b1=>parseFloat(_0x2373b1['toFixed'](_0x4b302e[_0x124f74(0x229)])))),'lines':_0x59b0b4[_0x124f74(0x213)][_0x124f74(0x203)](_0x2db44b=>_0x2db44b[_0x124f74(0x203)](_0x1b6705=>_0x1b6705[_0x124f74(0x203)](_0x24ee74=>parseFloat(_0x24ee74[_0x124f74(0x21d)](_0x4b302e['precision']))))),'nurbs':[]};if(_0x59b0b4[_0x124f74(0x22b)]&&_0x59b0b4[_0x124f74(0x22b)][_0x124f74(0x1e7)]>0x0){for(let _0x1997f6 of _0x59b0b4[_0x124f74(0x22b)])if(_0x4b302e[_0x124f74(0x1d6)]){let _0x38c724=_0x1997f6[_0x124f74(0x1cf)][_0x124f74(0x203)](_0x4d6eee=>_0x4d6eee[_0x124f74(0x203)](_0x2c21e4=>parseFloat(_0x2c21e4['toFixed'](_0x4b302e['precision']))));_0x10f93c[_0x124f74(0x213)]['push'](_0x38c724);}else{let _0x2d5af4={'type':'nurbs','degree':_0x1997f6['degree'],'controlPoints':_0x1997f6[_0x124f74(0x1cf)][_0x124f74(0x203)](_0x3fa8f7=>_0x3fa8f7[_0x124f74(0x203)](_0x3d325f=>parseFloat(_0x3d325f['toFixed'](_0x4b302e[_0x124f74(0x229)])))),'weights':_0x1997f6[_0x124f74(0x233)]['map'](_0x2e8c7c=>parseFloat(_0x2e8c7c[_0x124f74(0x21d)](_0x4b302e['precision']))),'knotVector':_0x1997f6[_0x124f74(0x1f5)][_0x124f74(0x203)](_0xfde7d0=>parseFloat(_0xfde7d0['toFixed'](_0x4b302e[_0x124f74(0x229)]))),'parameterRange':_0x1997f6['parameterRange'][_0x124f74(0x203)](_0x489b26=>parseFloat(_0x489b26[_0x124f74(0x21d)](_0x4b302e['precision'])))};_0x4b302e[_0x124f74(0x226)]&&(_0x2d5af4[_0x124f74(0x1d2)]=_0x1997f6['properties'],_0x2d5af4[_0x124f74(0x1e1)]=_0x1997f6[_0x124f74(0x1e1)][_0x124f74(0x203)](_0x3e5e8b=>parseFloat(_0x3e5e8b[_0x124f74(0x21d)](_0x4b302e['precision']))),_0x2d5af4[_0x124f74(0x1d8)]=_0x1997f6[_0x124f74(0x1d8)],_0x2d5af4[_0x124f74(0x1f8)]=_0x1997f6['numKnots']),_0x10f93c[_0x124f74(0x22b)]['push'](_0x2d5af4);}}if(_0x4b302e[_0x124f74(0x25b)]){let _0x2bd528=[..._0x10f93c[_0x124f74(0x225)]];for(let _0x3b52e1 of _0x10f93c[_0x124f74(0x213)])_0x2bd528[_0x124f74(0x254)](..._0x3b52e1);_0x10f93c[_0x124f74(0x1d0)]=_0x2bd528;}return _0x10f93c;}};if(new Date()[a0_0x1c617d(0x211)]()>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};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tomaso909/js3d",
3
- "version": "1.4.1",
3
+ "version": "1.6.0",
4
4
  "description": "A lightweight 3D vector math library in ES6",
5
5
  "main": "dist/index.obf.js",
6
6
  "module": "dist/index.obf.js",
@@ -14,7 +14,7 @@
14
14
  "build:min": "esbuild src/index.js --bundle --format=esm --minify --outfile=dist/index.min.js",
15
15
  "build:obf": "javascript-obfuscator dist/index.min.js --output dist/index.obf.js",
16
16
  "build": "npm run build:dev && npm run build:min && npm run build:obf",
17
- "test": "jest",
17
+ "test": "node --experimental-vm-modules node_modules/.bin/jest --testMatch=\"**/tests/test.*.js\"",
18
18
  "lint": "eslint src/"
19
19
  },
20
20
  "devDependencies": {