@tomaso909/js3d 1.6.0 → 1.7.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
- 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};
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};
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@tomaso909/js3d",
3
- "version": "1.6.0",
3
+ "version": "1.7.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",