@tomaso909/js3d 1.14.0 → 1.18.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.obf.js +1 -1
- package/package.json +1 -1
package/dist/index.obf.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a0_0x2ad885=a0_0x2f9e;(function(_0x5143a3,_0xd41484){const _0xc891ba=a0_0x2f9e,_0x4335e1=_0x5143a3();while(!![]){try{const _0x3136b0=parseInt(_0xc891ba(0x1ea))/0x1+-parseInt(_0xc891ba(0x21f))/0x2+parseInt(_0xc891ba(0x1c4))/0x3*(parseInt(_0xc891ba(0x1f6))/0x4)+parseInt(_0xc891ba(0x1f3))/0x5*(-parseInt(_0xc891ba(0x21a))/0x6)+parseInt(_0xc891ba(0x205))/0x7+-parseInt(_0xc891ba(0x1e5))/0x8+parseInt(_0xc891ba(0x192))/0x9;if(_0x3136b0===_0xd41484)break;else _0x4335e1['push'](_0x4335e1['shift']());}catch(_0x46202d){_0x4335e1['push'](_0x4335e1['shift']());}}}(a0_0x11cd,0x33bdb));var b={'length':function(_0x1dd558){const _0x597452=a0_0x2f9e;return Math[_0x597452(0x1c7)](_0x1dd558[0x0]**0x2+_0x1dd558[0x1]**0x2+_0x1dd558[0x2]**0x2);},'scalarProduct':function(_0x1cdc20,_0x3c26fb){return[_0x1cdc20[0x0]*_0x3c26fb,_0x1cdc20[0x1]*_0x3c26fb,_0x1cdc20[0x2]*_0x3c26fb];},'dot':function(_0x387362,_0x279edf){return _0x387362[0x0]*_0x279edf[0x0]+_0x387362[0x1]*_0x279edf[0x1]+_0x387362[0x2]*_0x279edf[0x2];},'angle':function(_0x42a234,_0x582036,_0x48a01a=!0x1){const _0x86f7d1=a0_0x2f9e;let _0x2ab147=this[_0x86f7d1(0x1be)](_0x42a234,_0x582036)/(this[_0x86f7d1(0x202)](_0x42a234)*this[_0x86f7d1(0x202)](_0x582036)),_0x49bc53=Math[_0x86f7d1(0x19e)](_0x2ab147);return _0x48a01a&&_0x49bc53>Math['PI']/0x2&&(_0x49bc53=Math['PI']-_0x49bc53),_0x49bc53;},'signedAngle':function(_0x2074e8,_0x498166,_0x575ef3){const _0xa6772c=a0_0x2f9e;let _0x40a22b=this['angle'](_0x2074e8,_0x498166),_0x56973c=this['cross'](_0x2074e8,_0x498166);return(this[_0xa6772c(0x1be)](_0x56973c,_0x575ef3)>=0x0?0x1:-0x1)*_0x40a22b;},'sub':function(_0x3e9135,_0xdd60de){return[_0x3e9135[0x0]-_0xdd60de[0x0],_0x3e9135[0x1]-_0xdd60de[0x1],_0x3e9135[0x2]-_0xdd60de[0x2]];},'add':function(_0x12f2e8,_0x4795a1){return[_0x12f2e8[0x0]+_0x4795a1[0x0],_0x12f2e8[0x1]+_0x4795a1[0x1],_0x12f2e8[0x2]+_0x4795a1[0x2]];},'rotate':function(_0x35b7c7,_0x3d8c0e,_0x574bbf){const _0x55949f=a0_0x2f9e;let _0x355062=_0x574bbf*Math['PI']/0xb4,_0x4a9510=Math[_0x55949f(0x1b3)](_0x355062),_0x59bbb=Math[_0x55949f(0x1b0)](_0x355062),_0x5b279f=_0x35b7c7[0x0],_0x57d2bf=_0x35b7c7[0x1],_0x32d098=_0x35b7c7[0x2],_0x544404=_0x3d8c0e[0x0],_0x1f1926=_0x3d8c0e[0x1],_0x1cd54e=_0x3d8c0e[0x2],_0x11f875=_0x544404*_0x5b279f+_0x1f1926*_0x57d2bf+_0x1cd54e*_0x32d098,_0x2ffc82=_0x544404*_0x11f875*(0x1-_0x4a9510)+_0x5b279f*_0x4a9510+(-_0x1cd54e*_0x57d2bf+_0x1f1926*_0x32d098)*_0x59bbb,_0xef368f=_0x1f1926*_0x11f875*(0x1-_0x4a9510)+_0x57d2bf*_0x4a9510+(_0x1cd54e*_0x5b279f-_0x544404*_0x32d098)*_0x59bbb,_0x29aea6=_0x1cd54e*_0x11f875*(0x1-_0x4a9510)+_0x32d098*_0x4a9510+(-_0x1f1926*_0x5b279f+_0x544404*_0x57d2bf)*_0x59bbb;return[_0x2ffc82,_0xef368f,_0x29aea6];},'fromTwoPoints':function(_0x3ec2e2,_0x44985f){return[_0x44985f[0x0]-_0x3ec2e2[0x0],_0x44985f[0x1]-_0x3ec2e2[0x1],_0x44985f[0x2]-_0x3ec2e2[0x2]];},'normalized':function(_0x42352b){const _0x22aefc=a0_0x2f9e;return b['scalarProduct'](_0x42352b,0x1/b[_0x22aefc(0x202)](_0x42352b));},'cross':function(_0x544aa0,_0xf79572){return[_0x544aa0[0x1]*_0xf79572[0x2]-_0x544aa0[0x2]*_0xf79572[0x1],_0x544aa0[0x2]*_0xf79572[0x0]-_0x544aa0[0x0]*_0xf79572[0x2],_0x544aa0[0x0]*_0xf79572[0x1]-_0x544aa0[0x1]*_0xf79572[0x0]];}},k={'distance':function(_0xfb93ee,_0x8bf9d){const _0x11329a=a0_0x2f9e;return b[_0x11329a(0x202)](b[_0x11329a(0x1ac)](_0x8bf9d,_0xfb93ee));},'move':function(_0x77172a,_0x28e3f7){const _0x418d4f=a0_0x2f9e;return b[_0x418d4f(0x219)](_0x77172a,_0x28e3f7);},'scale':function(_0x1295e1,_0x1b5639,_0x326b96){const _0x2a9ad2=a0_0x2f9e;return _0x326b96!=null&&(_0x1295e1=this[_0x2a9ad2(0x223)](_0x1295e1,b[_0x2a9ad2(0x1e7)](_0x326b96,-0x1))),_0x1295e1=b[_0x2a9ad2(0x1e7)](_0x1295e1,_0x1b5639),_0x326b96!=null&&(_0x1295e1=this[_0x2a9ad2(0x223)](_0x1295e1,_0x326b96)),_0x1295e1;},'rotate':function(_0x329d0c,_0x177ca0,_0x24934a,_0xbfef6a){const _0x27b537=a0_0x2f9e;let _0x269259=_0x24934a*Math['PI']/0xb4,_0x4aad62=Math[_0x27b537(0x1b3)](_0x269259),_0x31e588=Math[_0x27b537(0x1b0)](_0x269259),_0x578a3d=_0x329d0c[0x0],_0x5eff69=_0x329d0c[0x1],_0x3afa01=_0x329d0c[0x2];_0xbfef6a!=null&&(_0x578a3d=_0x578a3d-_0xbfef6a[0x0],_0x5eff69=_0x5eff69-_0xbfef6a[0x1],_0x3afa01=_0x3afa01-_0xbfef6a[0x2]);let _0x33ff79=_0x177ca0[0x0],_0x2b765d=_0x177ca0[0x1],_0x4ffe25=_0x177ca0[0x2],_0x53f3ce=_0x33ff79*_0x578a3d+_0x2b765d*_0x5eff69+_0x4ffe25*_0x3afa01,_0x2beecf=_0x33ff79*_0x53f3ce*(0x1-_0x4aad62)+_0x578a3d*_0x4aad62+(-_0x4ffe25*_0x5eff69+_0x2b765d*_0x3afa01)*_0x31e588,_0x4fdb90=_0x2b765d*_0x53f3ce*(0x1-_0x4aad62)+_0x5eff69*_0x4aad62+(_0x4ffe25*_0x578a3d-_0x33ff79*_0x3afa01)*_0x31e588,_0x1a9341=_0x4ffe25*_0x53f3ce*(0x1-_0x4aad62)+_0x3afa01*_0x4aad62+(-_0x2b765d*_0x578a3d+_0x33ff79*_0x5eff69)*_0x31e588,_0x32a5f5=[_0x2beecf,_0x4fdb90,_0x1a9341];return _0xbfef6a!=null&&(_0x32a5f5[0x0]=_0x32a5f5[0x0]+_0xbfef6a[0x0],_0x32a5f5[0x1]=_0x32a5f5[0x1]+_0xbfef6a[0x1],_0x32a5f5[0x2]=_0x32a5f5[0x2]+_0xbfef6a[0x2]),_0x32a5f5;},'project':function(_0x152dfd,_0x25ebd3,_0x397db5){const _0x3676bb=a0_0x2f9e;let _0x28aa47=b[_0x3676bb(0x1ac)](_0x152dfd,_0x397db5),_0xfdd731=b[_0x3676bb(0x1be)](_0x28aa47,_0x25ebd3)/b['length'](_0x25ebd3),_0x319214=b[_0x3676bb(0x1e7)](_0x25ebd3,0x1/b[_0x3676bb(0x202)](_0x25ebd3));return b[_0x3676bb(0x1ac)](_0x152dfd,b[_0x3676bb(0x1e7)](_0x319214,_0xfdd731));},'mirror':function(_0x5b517f,_0x46ecf7,_0x5e2329=[0x0,0x0,0x0]){const _0x37d2d1=a0_0x2f9e;let _0x1654c0=b['sub'](_0x5b517f,_0x5e2329),_0x5b657c=b[_0x37d2d1(0x202)](_0x46ecf7),_0x5e3f53=b['dot'](_0x1654c0,_0x46ecf7)/_0x5b657c,_0x57978b=b[_0x37d2d1(0x1e7)](_0x46ecf7,0x1/_0x5b657c);return b['sub'](_0x5b517f,b[_0x37d2d1(0x1e7)](_0x57978b,0x2*_0x5e3f53));}},v={'linspace':function(_0x5bc2f6,_0x7409a9,_0x350b9b,_0x18ec23=!0x0){const _0x20ef50=a0_0x2f9e;let _0x431403=_0x18ec23?_0x350b9b-0x1:_0x350b9b,_0x2aea77=(_0x7409a9-_0x5bc2f6)/_0x431403;return Array[_0x20ef50(0x21c)]({'length':_0x350b9b},(_0x31a231,_0x274197)=>_0x5bc2f6+_0x2aea77*_0x274197);},'cosineSpacing':function(_0xcb5f84,_0x1d4e1c,_0x2c7ee1){const _0x13b72c=a0_0x2f9e;let _0x26fb76=Array[_0x13b72c(0x21c)]({'length':_0x2c7ee1},(_0x19c242,_0x53728a)=>_0x53728a/(_0x2c7ee1-0x1))['map'](_0x594205=>(0x1-Math['cos'](_0x594205*Math['PI']))/0x2),_0x498339=[];for(let _0x18abba=0x0;_0x18abba<_0x26fb76[_0x13b72c(0x202)];_0x18abba++){let _0x470ceb=_0x26fb76[_0x18abba];_0x498339[_0x13b72c(0x1a7)](mapToSpace(_0x470ceb,[0x0,0x1],[_0xcb5f84,_0x1d4e1c]));}return _0x498339;},'normalizedCosineSpacing':function(_0x5158c9){const _0x57bbf6=a0_0x2f9e;return Array[_0x57bbf6(0x21c)]({'length':_0x5158c9},(_0x4b4257,_0x155f16)=>_0x155f16/(_0x5158c9-0x1))[_0x57bbf6(0x1d6)](_0x3865d1=>(0x1-Math['cos'](_0x3865d1*Math['PI']))/0x2);},'mapToSpace':function(_0x67765,_0x302aee,_0x2f2272){return _0x2f2272[0x1]+(_0x67765-_0x302aee[0x1])*(_0x2f2272[0x0]-_0x2f2272[0x1])/(_0x302aee[0x0]-_0x302aee[0x1]);},'solveLinearSystem':function(_0x499b40,_0x50f18e){const _0x51e95a=a0_0x2f9e;let _0x2d0ca7=_0x499b40[_0x51e95a(0x202)],_0x510c6a=[];for(let _0x10dfdb=0x0;_0x10dfdb<_0x2d0ca7;_0x10dfdb++)_0x510c6a[_0x10dfdb]=_0x499b40[_0x10dfdb]['slice'](),_0x510c6a[_0x10dfdb]['push'](_0x50f18e[_0x10dfdb]);for(let _0x29fd3a=0x0;_0x29fd3a<_0x2d0ca7;_0x29fd3a++){let _0x306b4e=_0x29fd3a;for(let _0x139347=_0x29fd3a+0x1;_0x139347<_0x2d0ca7;_0x139347++)Math[_0x51e95a(0x20b)](_0x510c6a[_0x139347][_0x29fd3a])>Math[_0x51e95a(0x20b)](_0x510c6a[_0x306b4e][_0x29fd3a])&&(_0x306b4e=_0x139347);[_0x510c6a[_0x29fd3a],_0x510c6a[_0x306b4e]]=[_0x510c6a[_0x306b4e],_0x510c6a[_0x29fd3a]];for(let _0x50e78d=_0x29fd3a+0x1;_0x50e78d<_0x2d0ca7;_0x50e78d++){let _0x5c61e7=_0x510c6a[_0x50e78d][_0x29fd3a]/_0x510c6a[_0x29fd3a][_0x29fd3a];for(let _0x43d047=_0x29fd3a;_0x43d047<=_0x2d0ca7;_0x43d047++)_0x510c6a[_0x50e78d][_0x43d047]-=_0x5c61e7*_0x510c6a[_0x29fd3a][_0x43d047];}}let _0x97cfc2=new Array(_0x2d0ca7);for(let _0x2ac8d5=_0x2d0ca7-0x1;_0x2ac8d5>=0x0;_0x2ac8d5--){_0x97cfc2[_0x2ac8d5]=_0x510c6a[_0x2ac8d5][_0x2d0ca7];for(let _0x1df691=_0x2ac8d5+0x1;_0x1df691<_0x2d0ca7;_0x1df691++)_0x97cfc2[_0x2ac8d5]-=_0x510c6a[_0x2ac8d5][_0x1df691]*_0x97cfc2[_0x1df691];_0x97cfc2[_0x2ac8d5]/=_0x510c6a[_0x2ac8d5][_0x2ac8d5];}return _0x97cfc2;},'equalWithPrecision':function(_0xbfa36a,_0x3cc58c,_0x4dc40d=0x6){const _0x6baa0b=a0_0x2f9e;let _0x58f9ac=Math[_0x6baa0b(0x1d8)](0xa,_0x4dc40d);return Math['round'](_0xbfa36a*_0x58f9ac)===Math[_0x6baa0b(0x218)](_0x3cc58c*_0x58f9ac);}},T={'multiplyTranspose':function(_0x38847c,_0x33e058){const _0x4e1d87=a0_0x2f9e;let _0x3c07d7=_0x38847c[0x0][_0x4e1d87(0x202)],_0x509f04=_0x33e058[0x0][_0x4e1d87(0x202)],_0xfd2933=[];for(let _0x398798=0x0;_0x398798<_0x3c07d7;_0x398798++){_0xfd2933[_0x398798]=[];for(let _0x34ecc4=0x0;_0x34ecc4<_0x509f04;_0x34ecc4++){let _0x1b2b77=0x0;for(let _0x13f1b9=0x0;_0x13f1b9<_0x38847c[_0x4e1d87(0x202)];_0x13f1b9++)_0x1b2b77+=_0x38847c[_0x13f1b9][_0x398798]*_0x33e058[_0x13f1b9][_0x34ecc4];_0xfd2933[_0x398798][_0x34ecc4]=_0x1b2b77;}}return _0xfd2933;},'vectorMultiplyTranspose':function(_0x358af6,_0x4d2765){const _0x55713e=a0_0x2f9e;let _0x248eb6=_0x358af6[0x0][_0x55713e(0x202)],_0x262c97=[];for(let _0x239ef4=0x0;_0x239ef4<_0x248eb6;_0x239ef4++){let _0x440218=0x0;for(let _0x4421cf=0x0;_0x4421cf<_0x358af6[_0x55713e(0x202)];_0x4421cf++)_0x440218+=_0x358af6[_0x4421cf][_0x239ef4]*_0x4d2765[_0x4421cf];_0x262c97[_0x239ef4]=_0x440218;}return _0x262c97;}},O={'from_control_points':function(_0x4470a5,_0x482afa,_0x4bb605,_0x5611c2){const _0x5af877=a0_0x2f9e;_0x5611c2===void 0x0&&(_0x5611c2=this['uniform_knot_spacing'](_0x4470a5,_0x482afa));let _0x2178b9=v[_0x5af877(0x201)](0x0,0x1,_0x4bb605),_0x1a4e3a=[];for(var _0x438543 of _0x2178b9)_0x1a4e3a['push'](this[_0x5af877(0x198)](_0x438543,_0x482afa,_0x4470a5,_0x5611c2));return _0x1a4e3a;},'from_control_points_cosine':function(_0x465c3d,_0x118ae4,_0x7c03d9,_0x33b5be){const _0x2b4118=a0_0x2f9e;_0x33b5be===void 0x0&&(_0x33b5be=this[_0x2b4118(0x1e3)](_0x465c3d,_0x118ae4));let _0x2a9475=v['normalizedCosineSpacing'](_0x7c03d9),_0x5407aa=[];for(var _0x24afc4 of _0x2a9475)_0x5407aa[_0x2b4118(0x1a7)](this[_0x2b4118(0x198)](_0x24afc4,_0x118ae4,_0x465c3d,_0x33b5be));return _0x5407aa;},'approximate_curve':function(_0x5e8feb,_0x325534,_0xc2683c=0x3,_0x441b03=!0x1){const _0x6447e5=a0_0x2f9e;if(_0x325534<_0xc2683c+0x1)throw new Error(_0x6447e5(0x1f8));if(_0x5e8feb['length']<0x2)throw new Error(_0x6447e5(0x193));let _0x5421f9=_0x5e8feb[_0x6447e5(0x202)],_0x388fe5=_0x325534,_0x2ebb06=_0x5e8feb[0x0]['length'],_0x542301=this[_0x6447e5(0x1d5)](_0x5e8feb),_0x5dda3a=this['_approximate_knot_vector'](_0x542301,_0x388fe5,_0xc2683c),_0x891436=[];for(let _0x310160=0x0;_0x310160<_0x5421f9;_0x310160++){_0x891436[_0x310160]=[];for(let _0x3fd645=0x0;_0x3fd645<_0x388fe5;_0x3fd645++)_0x891436[_0x310160][_0x3fd645]=this[_0x6447e5(0x1d4)](_0x3fd645,_0xc2683c,_0x542301[_0x310160],_0x5dda3a);}let _0x3e8752=new Array(_0x388fe5);for(let _0x4d4a88=0x0;_0x4d4a88<_0x388fe5;_0x4d4a88++)_0x3e8752[_0x4d4a88]=new Array(_0x2ebb06);if(_0x441b03){_0x3e8752[0x0]=[..._0x5e8feb[0x0]],_0x3e8752[_0x388fe5-0x1]=[..._0x5e8feb[_0x5e8feb['length']-0x1]];let _0x203e28=[];for(let _0x474c62=0x1;_0x474c62<_0x388fe5-0x1;_0x474c62++)_0x203e28['push'](_0x474c62);for(let _0x156ef4=0x0;_0x156ef4<_0x2ebb06;_0x156ef4++){let _0x121fe4=_0x5e8feb[_0x6447e5(0x1d6)](_0x16a9dd=>_0x16a9dd[_0x156ef4]);if(_0x203e28[_0x6447e5(0x202)]===0x0)continue;let _0x58b197=[],_0x26d119=[];for(let _0xf7bf8d=0x0;_0xf7bf8d<_0x5421f9;_0xf7bf8d++){_0x58b197[_0xf7bf8d]=[];for(let _0x5badea of _0x203e28)_0x58b197[_0xf7bf8d][_0x6447e5(0x1a7)](_0x891436[_0xf7bf8d][_0x5badea]);_0x26d119[_0xf7bf8d]=_0x121fe4[_0xf7bf8d]-_0x891436[_0xf7bf8d][0x0]*_0x3e8752[0x0][_0x156ef4]-_0x891436[_0xf7bf8d][_0x388fe5-0x1]*_0x3e8752[_0x388fe5-0x1][_0x156ef4];}let _0xd3bae3=T['multiplyTranspose'](_0x58b197,_0x58b197),_0x3aaace=T['vectorMultiplyTranspose'](_0x58b197,_0x26d119),_0x288668=v[_0x6447e5(0x222)](_0xd3bae3,_0x3aaace);for(let _0x3e8769=0x0;_0x3e8769<_0x203e28[_0x6447e5(0x202)];_0x3e8769++)_0x3e8752[_0x203e28[_0x3e8769]][_0x156ef4]=_0x288668[_0x3e8769];}}else for(let _0x2451c7=0x0;_0x2451c7<_0x2ebb06;_0x2451c7++){let _0x36b85a=_0x5e8feb[_0x6447e5(0x1d6)](_0x5c6c2a=>_0x5c6c2a[_0x2451c7]),_0x277ce6=T[_0x6447e5(0x1bb)](_0x891436,_0x891436),_0x4febcb=T[_0x6447e5(0x1cb)](_0x891436,_0x36b85a),_0x3b4913=v[_0x6447e5(0x222)](_0x277ce6,_0x4febcb);for(let _0x1c5533=0x0;_0x1c5533<_0x388fe5;_0x1c5533++)_0x3e8752[_0x1c5533][_0x2451c7]=_0x3b4913[_0x1c5533];}return{'controlPoints':_0x3e8752,'knots':_0x5dda3a,'degree':_0xc2683c};},'_chord_length_parameterization':function(_0x2b0389){const _0x1535ce=a0_0x2f9e;let _0x241812=[0x0],_0x5451b2=[0x0],_0x41dd5e=0x0;for(let _0xa90d3c=0x1;_0xa90d3c<_0x2b0389[_0x1535ce(0x202)];_0xa90d3c++){let _0xdfc2a0=0x0;for(let _0x47de9a=0x0;_0x47de9a<_0x2b0389[_0xa90d3c][_0x1535ce(0x202)];_0x47de9a++)_0xdfc2a0+=Math[_0x1535ce(0x1d8)](_0x2b0389[_0xa90d3c][_0x47de9a]-_0x2b0389[_0xa90d3c-0x1][_0x47de9a],0x2);_0xdfc2a0=Math['sqrt'](_0xdfc2a0),_0x41dd5e+=_0xdfc2a0,_0x5451b2[_0x1535ce(0x1a7)](_0x41dd5e);}for(let _0x11e687=0x1;_0x11e687<_0x2b0389[_0x1535ce(0x202)];_0x11e687++)_0x241812['push'](_0x5451b2[_0x11e687]/_0x41dd5e);return _0x241812;},'_approximate_knot_vector':function(_0x2d069f,_0x4fad8d,_0x2ce62e){const _0x3c666b=a0_0x2f9e;let _0x1befb9=_0x2d069f[_0x3c666b(0x202)],_0x52fc89=_0x4fad8d,_0x1cab7c=[];for(let _0x198e7c=0x0;_0x198e7c<=_0x2ce62e;_0x198e7c++)_0x1cab7c[_0x3c666b(0x1a7)](0x0);let _0x5a81b4=(_0x1befb9-0x1)/(_0x52fc89-_0x2ce62e);for(let _0x33943f=0x1;_0x33943f<_0x52fc89-_0x2ce62e;_0x33943f++){let _0x1b04d3=0x0;for(let _0x5b18a6=Math[_0x3c666b(0x1b5)](_0x33943f*_0x5a81b4);_0x5b18a6<Math[_0x3c666b(0x1b5)]((_0x33943f+0x1)*_0x5a81b4);_0x5b18a6++)_0x1b04d3+=_0x2d069f[Math[_0x3c666b(0x210)](_0x5b18a6+_0x2ce62e,_0x1befb9-0x1)];_0x1cab7c[_0x3c666b(0x1a7)](_0x1b04d3/(Math[_0x3c666b(0x1b5)]((_0x33943f+0x1)*_0x5a81b4)-Math[_0x3c666b(0x1b5)](_0x33943f*_0x5a81b4)));}for(let _0x5eb223=0x0;_0x5eb223<=_0x2ce62e;_0x5eb223++)_0x1cab7c[_0x3c666b(0x1a7)](0x1);return _0x1cab7c;},'_basis_function':function(_0x6c3f3d,_0x29124f,_0x89e8a7,_0x513a94){const _0x308156=a0_0x2f9e;if(_0x29124f===0x0)return _0x89e8a7===_0x513a94[_0x513a94[_0x308156(0x202)]-0x1]&&_0x89e8a7===_0x513a94[_0x6c3f3d+0x1]&&_0x89e8a7>_0x513a94[_0x6c3f3d]||_0x89e8a7>=_0x513a94[_0x6c3f3d]&&_0x89e8a7<_0x513a94[_0x6c3f3d+0x1]?0x1:0x0;let _0x30ac34=0x0,_0x23a6cf=0x0,_0x39d8b7=_0x513a94[_0x6c3f3d+_0x29124f]-_0x513a94[_0x6c3f3d];_0x39d8b7!==0x0&&(_0x30ac34=(_0x89e8a7-_0x513a94[_0x6c3f3d])/_0x39d8b7*this['_basis_function'](_0x6c3f3d,_0x29124f-0x1,_0x89e8a7,_0x513a94));let _0x2a87d9=_0x513a94[_0x6c3f3d+_0x29124f+0x1]-_0x513a94[_0x6c3f3d+0x1];return _0x2a87d9!==0x0&&(_0x23a6cf=(_0x513a94[_0x6c3f3d+_0x29124f+0x1]-_0x89e8a7)/_0x2a87d9*this['_basis_function'](_0x6c3f3d+0x1,_0x29124f-0x1,_0x89e8a7,_0x513a94)),_0x30ac34+_0x23a6cf;},'uniform_knot_spacing':function(_0x2a4f60,_0x334687){const _0x212bf7=a0_0x2f9e;let _0x295799=_0x2a4f60['length']+_0x334687+0x1,_0x2d297e=[],_0x97197=_0x295799-(_0x334687+0x1)*0x2;for(var _0x3a8371=0x0;_0x3a8371<_0x334687+0x1;_0x3a8371++)_0x2d297e[_0x212bf7(0x1a7)](0x0);for(var _0x3a8371=0x0;_0x3a8371<_0x97197;_0x3a8371++)_0x2d297e['push'](_0x3a8371+0x1);let _0x1f08b4=_0x2d297e[_0x2d297e[_0x212bf7(0x202)]-0x1]+0x1;for(var _0x3a8371=0x0;_0x3a8371<_0x334687+0x1;_0x3a8371++)_0x2d297e['push'](_0x1f08b4);return _0x2d297e;},'uniform_knot_spacing_normalized':function(_0x445d19,_0x4d4fd6){const _0x4c5e86=a0_0x2f9e;let _0x45209a=_0x445d19,_0x38a324=[],_0x54d794=_0x45209a+_0x4d4fd6+0x1-(_0x4d4fd6+0x1)*0x2;for(let _0x158cda=0x0;_0x158cda<=_0x4d4fd6;_0x158cda++)_0x38a324[_0x4c5e86(0x1a7)](0x0);if(_0x54d794>0x0){let _0x2d0a49=0x1/(_0x54d794+0x1);for(let _0x529368=0x0;_0x529368<_0x54d794;_0x529368++)_0x38a324[_0x4c5e86(0x1a7)]((_0x529368+0x1)*_0x2d0a49);}for(let _0x325ddf=0x0;_0x325ddf<=_0x4d4fd6;_0x325ddf++)_0x38a324[_0x4c5e86(0x1a7)](0x1);return _0x38a324;},'bspline':function(_0x1aeff9,_0x493625,_0x21c449,_0x8b2994,_0x5ab742,_0x7e8ff7){const _0x107c3b=a0_0x2f9e;var _0x2f1956,_0x595b26,_0x468d3a,_0x26338c,_0x50d199=_0x21c449[_0x107c3b(0x202)],_0x494c0a=_0x21c449[0x0][_0x107c3b(0x202)];if(_0x493625<0x1)throw new Error(_0x107c3b(0x1d7));if(_0x493625>_0x50d199-0x1)throw new Error('degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201');if(!_0x5ab742){for(_0x5ab742=[],_0x2f1956=0x0;_0x2f1956<_0x50d199;_0x2f1956++)_0x5ab742[_0x2f1956]=0x1;}if(_0x8b2994){if(_0x8b2994[_0x107c3b(0x202)]!==_0x50d199+_0x493625+0x1)throw new Error(_0x107c3b(0x195));}else{var _0x8b2994=[];for(_0x2f1956=0x0;_0x2f1956<_0x50d199+_0x493625+0x1;_0x2f1956++)_0x8b2994[_0x2f1956]=_0x2f1956;}var _0x1cf2c4=[_0x493625,_0x8b2994[_0x107c3b(0x202)]-0x1-_0x493625],_0xd41bfa=_0x8b2994[_0x1cf2c4[0x0]],_0x990caa=_0x8b2994[_0x1cf2c4[0x1]];if(_0x1aeff9=_0x1aeff9*(_0x990caa-_0xd41bfa)+_0xd41bfa,_0x1aeff9<_0xd41bfa||_0x1aeff9>_0x990caa)throw new Error(_0x107c3b(0x1a9));for(_0x468d3a=_0x1cf2c4[0x0];_0x468d3a<_0x1cf2c4[0x1]&&!(_0x1aeff9>=_0x8b2994[_0x468d3a]&&_0x1aeff9<=_0x8b2994[_0x468d3a+0x1]);_0x468d3a++);var _0x16994c=[];for(_0x2f1956=0x0;_0x2f1956<_0x50d199;_0x2f1956++){for(_0x16994c[_0x2f1956]=[],_0x595b26=0x0;_0x595b26<_0x494c0a;_0x595b26++)_0x16994c[_0x2f1956][_0x595b26]=_0x21c449[_0x2f1956][_0x595b26]*_0x5ab742[_0x2f1956];_0x16994c[_0x2f1956][_0x494c0a]=_0x5ab742[_0x2f1956];}var _0x3391f5;for(_0x26338c=0x1;_0x26338c<=_0x493625+0x1;_0x26338c++)for(_0x2f1956=_0x468d3a;_0x2f1956>_0x468d3a-_0x493625-0x1+_0x26338c;_0x2f1956--)for(_0x3391f5=(_0x1aeff9-_0x8b2994[_0x2f1956])/(_0x8b2994[_0x2f1956+_0x493625+0x1-_0x26338c]-_0x8b2994[_0x2f1956]),_0x595b26=0x0;_0x595b26<_0x494c0a+0x1;_0x595b26++)_0x16994c[_0x2f1956][_0x595b26]=(0x1-_0x3391f5)*_0x16994c[_0x2f1956-0x1][_0x595b26]+_0x3391f5*_0x16994c[_0x2f1956][_0x595b26];var _0x7e8ff7=_0x7e8ff7||[];for(_0x2f1956=0x0;_0x2f1956<_0x494c0a;_0x2f1956++)_0x7e8ff7[_0x2f1956]=_0x16994c[_0x468d3a][_0x2f1956]/_0x16994c[_0x468d3a][_0x494c0a];return _0x7e8ff7;}},A={'_gaussJ':{'solve':function(_0xfe442b,_0x57f032){const _0x590f39=a0_0x2f9e;let _0x172433=_0xfe442b[_0x590f39(0x202)];for(let _0x4d8978=0x0;_0x4d8978<_0x172433;_0x4d8978++){let _0x235d1e=0x0,_0x5a8488=Number[_0x590f39(0x21d)];for(let _0xe539e2=_0x4d8978;_0xe539e2<_0x172433;_0xe539e2++)Math['abs'](_0xfe442b[_0xe539e2][_0x4d8978])>_0x5a8488&&(_0x235d1e=_0xe539e2,_0x5a8488=Math[_0x590f39(0x20b)](_0xfe442b[_0xe539e2][_0x4d8978]));this[_0x590f39(0x1b1)](_0xfe442b,_0x4d8978,_0x235d1e);for(let _0x393015=_0x4d8978+0x1;_0x393015<_0x172433;_0x393015++){let _0x4c808d=_0xfe442b[_0x393015][_0x4d8978]/_0xfe442b[_0x4d8978][_0x4d8978];for(let _0x85d8c4=_0x4d8978;_0x85d8c4<_0x172433+0x1;_0x85d8c4++)_0xfe442b[_0x393015][_0x85d8c4]-=_0xfe442b[_0x4d8978][_0x85d8c4]*_0x4c808d;}}for(let _0x77d579=_0x172433-0x1;_0x77d579>=0x0;_0x77d579--){let _0x36d7d1=_0xfe442b[_0x77d579][_0x172433]/_0xfe442b[_0x77d579][_0x77d579];_0x57f032[_0x77d579]=_0x36d7d1;for(let _0x597daa=_0x77d579-0x1;_0x597daa>=0x0;_0x597daa--)_0xfe442b[_0x597daa][_0x172433]-=_0xfe442b[_0x597daa][_0x77d579]*_0x36d7d1,_0xfe442b[_0x597daa][_0x77d579]=0x0;}},'zerosMat':function(_0x145add,_0x558f2d){const _0x24fcac=a0_0x2f9e;let _0x23ab66=[];for(let _0x3b9ffa=0x0;_0x3b9ffa<_0x145add;_0x3b9ffa++)_0x23ab66[_0x24fcac(0x1a7)](new Array(_0x558f2d)[_0x24fcac(0x1df)](0x0));return _0x23ab66;},'printMat':function(_0x39e736){const _0x5bd773=a0_0x2f9e;_0x39e736[_0x5bd773(0x1e0)](_0x582f9b=>console[_0x5bd773(0x1ce)](_0x582f9b));},'swapRows':function(_0x221bc6,_0x49c40b,_0x596722){let _0xfaf035=_0x221bc6[_0x49c40b];_0x221bc6[_0x49c40b]=_0x221bc6[_0x596722],_0x221bc6[_0x596722]=_0xfaf035;}},'getNaturalKs':function(_0x14dd51,_0x51d7bc,_0x4661b3){const _0x36e085=a0_0x2f9e;let _0x517c92=_0x14dd51[_0x36e085(0x202)]-0x1,_0x460a95=this[_0x36e085(0x1ff)][_0x36e085(0x1e8)](_0x517c92+0x1,_0x517c92+0x2);for(let _0x2b1cc7=0x1;_0x2b1cc7<_0x517c92;_0x2b1cc7++)_0x460a95[_0x2b1cc7][_0x2b1cc7-0x1]=0x1/(_0x14dd51[_0x2b1cc7]-_0x14dd51[_0x2b1cc7-0x1]),_0x460a95[_0x2b1cc7][_0x2b1cc7]=0x2*(0x1/(_0x14dd51[_0x2b1cc7]-_0x14dd51[_0x2b1cc7-0x1])+0x1/(_0x14dd51[_0x2b1cc7+0x1]-_0x14dd51[_0x2b1cc7])),_0x460a95[_0x2b1cc7][_0x2b1cc7+0x1]=0x1/(_0x14dd51[_0x2b1cc7+0x1]-_0x14dd51[_0x2b1cc7]),_0x460a95[_0x2b1cc7][_0x517c92+0x1]=0x3*((_0x51d7bc[_0x2b1cc7]-_0x51d7bc[_0x2b1cc7-0x1])/(_0x14dd51[_0x2b1cc7]-_0x14dd51[_0x2b1cc7-0x1])**0x2+(_0x51d7bc[_0x2b1cc7+0x1]-_0x51d7bc[_0x2b1cc7])/(_0x14dd51[_0x2b1cc7+0x1]-_0x14dd51[_0x2b1cc7])**0x2);_0x460a95[0x0][0x0]=0x2/(_0x14dd51[0x1]-_0x14dd51[0x0]),_0x460a95[0x0][0x1]=0x1/(_0x14dd51[0x1]-_0x14dd51[0x0]),_0x460a95[0x0][_0x517c92+0x1]=0x3*(_0x51d7bc[0x1]-_0x51d7bc[0x0])/(_0x14dd51[0x1]-_0x14dd51[0x0])**0x2,_0x460a95[_0x517c92][_0x517c92-0x1]=0x1/(_0x14dd51[_0x517c92]-_0x14dd51[_0x517c92-0x1]),_0x460a95[_0x517c92][_0x517c92]=0x2/(_0x14dd51[_0x517c92]-_0x14dd51[_0x517c92-0x1]),_0x460a95[_0x517c92][_0x517c92+0x1]=0x3*(_0x51d7bc[_0x517c92]-_0x51d7bc[_0x517c92-0x1])/(_0x14dd51[_0x517c92]-_0x14dd51[_0x517c92-0x1])**0x2,this[_0x36e085(0x1ff)]['solve'](_0x460a95,_0x4661b3);},'from_control_points':function(_0x11c518,_0x118805){const _0x5989ba=a0_0x2f9e;let _0x56a097=_0x118805[_0x5989ba(0x1d6)](_0x22f50d=>_0x22f50d[0x0]),_0x157dbd=_0x118805['map'](_0x58ec72=>_0x58ec72[0x1]),_0x1da719=new Array(_0x56a097[_0x5989ba(0x202)])[_0x5989ba(0x1df)](0x0);this[_0x5989ba(0x1dc)](_0x56a097,_0x157dbd,_0x1da719);let _0x2d1781=[];for(let _0x32cc0d of _0x11c518){let _0x177cda=0x1;for(;_0x56a097[_0x177cda]<_0x32cc0d;)_0x177cda++;let _0x2d2154=(_0x32cc0d-_0x56a097[_0x177cda-0x1])/(_0x56a097[_0x177cda]-_0x56a097[_0x177cda-0x1]),_0x24c244=_0x1da719[_0x177cda-0x1]*(_0x56a097[_0x177cda]-_0x56a097[_0x177cda-0x1])-(_0x157dbd[_0x177cda]-_0x157dbd[_0x177cda-0x1]),_0x19f572=-_0x1da719[_0x177cda]*(_0x56a097[_0x177cda]-_0x56a097[_0x177cda-0x1])+(_0x157dbd[_0x177cda]-_0x157dbd[_0x177cda-0x1]),_0x4ebc6c=(0x1-_0x2d2154)*_0x157dbd[_0x177cda-0x1]+_0x2d2154*_0x157dbd[_0x177cda]+_0x2d2154*(0x1-_0x2d2154)*(_0x24c244*(0x1-_0x2d2154)+_0x19f572*_0x2d2154);_0x2d1781['push']([_0x32cc0d,_0x4ebc6c]);}return _0x2d1781;}},V=class{constructor(_0x5762c3){const _0x46168a=a0_0x2f9e;this['points']=_0x5762c3,this[_0x46168a(0x1ab)]=[],this[_0x46168a(0x1f5)]=[0x0];for(let _0x52a4fa=0x1;_0x52a4fa<_0x5762c3['length'];_0x52a4fa++){let _0x36a9e0=_0x5762c3[_0x52a4fa][0x0]-_0x5762c3[_0x52a4fa-0x1][0x0],_0xb1f803=_0x5762c3[_0x52a4fa][0x1]-_0x5762c3[_0x52a4fa-0x1][0x1],_0x5874e8=_0x5762c3[_0x52a4fa][0x2]-_0x5762c3[_0x52a4fa-0x1][0x2],_0xbbe3fd=Math[_0x46168a(0x1c7)](_0x36a9e0*_0x36a9e0+_0xb1f803*_0xb1f803+_0x5874e8*_0x5874e8);this[_0x46168a(0x1ab)][_0x46168a(0x1a7)](_0xbbe3fd),this[_0x46168a(0x1f5)][_0x46168a(0x1a7)](this[_0x46168a(0x1f5)][this[_0x46168a(0x1f5)]['length']-0x1]+_0xbbe3fd);}this[_0x46168a(0x20f)]=this['segmentLengths'][_0x46168a(0x202)]>0x0?this['cumulativeLength'][this[_0x46168a(0x1f5)][_0x46168a(0x202)]-0x1]:0x0;}[a0_0x2ad885(0x1db)](_0x5df404){const _0x49d4cd=a0_0x2ad885;let _0x3e99bc=0x0,_0x590bef=Number[_0x49d4cd(0x1bd)];for(let _0x4a89ca=0x0;_0x4a89ca<this[_0x49d4cd(0x1fb)]['length']-0x1;_0x4a89ca++){let _0x460bbc=this[_0x49d4cd(0x1fb)][_0x4a89ca],_0x3d6e31=this[_0x49d4cd(0x1fb)][_0x4a89ca+0x1],_0x1828f7=_0x5df404,_0x5898cc=[_0x3d6e31[0x0]-_0x460bbc[0x0],_0x3d6e31[0x1]-_0x460bbc[0x1],_0x3d6e31[0x2]-_0x460bbc[0x2]],_0x241697=[_0x1828f7[0x0]-_0x460bbc[0x0],_0x1828f7[0x1]-_0x460bbc[0x1],_0x1828f7[0x2]-_0x460bbc[0x2]],_0x360bef=_0x5898cc[0x0]*_0x5898cc[0x0]+_0x5898cc[0x1]*_0x5898cc[0x1]+_0x5898cc[0x2]*_0x5898cc[0x2];if(_0x360bef===0x0)continue;let _0x53eba1=(_0x241697[0x0]*_0x5898cc[0x0]+_0x241697[0x1]*_0x5898cc[0x1]+_0x241697[0x2]*_0x5898cc[0x2])/_0x360bef;_0x53eba1=Math[_0x49d4cd(0x191)](0x0,Math[_0x49d4cd(0x210)](0x1,_0x53eba1));let _0x429721=[_0x460bbc[0x0]+_0x53eba1*_0x5898cc[0x0],_0x460bbc[0x1]+_0x53eba1*_0x5898cc[0x1],_0x460bbc[0x2]+_0x53eba1*_0x5898cc[0x2]],_0x223975=Math[_0x49d4cd(0x1d8)](_0x1828f7[0x0]-_0x429721[0x0],0x2)+Math[_0x49d4cd(0x1d8)](_0x1828f7[0x1]-_0x429721[0x1],0x2)+Math[_0x49d4cd(0x1d8)](_0x1828f7[0x2]-_0x429721[0x2],0x2);_0x223975<_0x590bef&&(_0x590bef=_0x223975,_0x3e99bc=(this['cumulativeLength'][_0x4a89ca]+_0x53eba1*this[_0x49d4cd(0x1ab)][_0x4a89ca])/this['totalLength']);}return _0x3e99bc;}[a0_0x2ad885(0x19f)](_0x18db46){const _0x202a6e=a0_0x2ad885;if(_0x18db46<=0x0)return[...this[_0x202a6e(0x1fb)][0x0]];if(_0x18db46>=0x1)return[...this[_0x202a6e(0x1fb)][this['points']['length']-0x1]];let _0x1462c3=_0x18db46*this['totalLength'];for(let _0x43f85a=0x0;_0x43f85a<this[_0x202a6e(0x1f5)]['length']-0x1;_0x43f85a++)if(this[_0x202a6e(0x1f5)][_0x43f85a]<=_0x1462c3&&_0x1462c3<=this['cumulativeLength'][_0x43f85a+0x1]){let _0x1bef95=(_0x1462c3-this['cumulativeLength'][_0x43f85a])/this['segmentLengths'][_0x43f85a],_0xde6edc=this[_0x202a6e(0x1fb)][_0x43f85a],_0x46a20c=this[_0x202a6e(0x1fb)][_0x43f85a+0x1],_0x1a0942=(0x1-_0x1bef95)*_0xde6edc[0x0]+_0x1bef95*_0x46a20c[0x0],_0xb99fe4=(0x1-_0x1bef95)*_0xde6edc[0x1]+_0x1bef95*_0x46a20c[0x1],_0x2fc4c5=(0x1-_0x1bef95)*_0xde6edc[0x2]+_0x1bef95*_0x46a20c[0x2];return[_0x1a0942,_0xb99fe4,_0x2fc4c5];}return[...this[_0x202a6e(0x1fb)][this[_0x202a6e(0x1fb)][_0x202a6e(0x202)]-0x1]];}},K={'_formatNumber':function(_0x37c4ce){const _0x36a6a0=a0_0x2ad885;return Number[_0x36a6a0(0x1b6)](_0x37c4ce)?_0x37c4ce[_0x36a6a0(0x199)]():Math[_0x36a6a0(0x20b)](_0x37c4ce)<0.001||Math[_0x36a6a0(0x20b)](_0x37c4ce)>0xf4240?_0x37c4ce['toExponential'](0x6):_0x37c4ce[_0x36a6a0(0x1a4)](0x6)['replace'](/\.?0+$/,'');},'_toHollerith':function(_0x5a30f7){return _0x5a30f7?_0x5a30f7['length']+'H'+_0x5a30f7:'0H';},'_generateGlobalSection':function(_0xe30d1a){const _0x5280f2=a0_0x2ad885;let _0xc7f09=new Date()[_0x5280f2(0x1e6)]()[_0x5280f2(0x1cf)](0x0,0x13)['replace'](/[-:]/g,'')[_0x5280f2(0x20d)]('T','.'),_0x2e7013=['1H,',_0x5280f2(0x1fd),this[_0x5280f2(0x203)](_0xe30d1a['filename']),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x1ec)]),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x208)]),this[_0x5280f2(0x203)](_0x5280f2(0x19d)),'32','38','6',_0x5280f2(0x20e),'15',this[_0x5280f2(0x203)](_0xe30d1a['filename']),_0x5280f2(0x212),'3',this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x1ae)][_0x5280f2(0x20a)]()),'1','0.01',this[_0x5280f2(0x203)](_0xc7f09),_0x5280f2(0x220),_0x5280f2(0x1aa),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x1f1)]),this[_0x5280f2(0x203)](_0xe30d1a[_0x5280f2(0x208)]),'11','0',this[_0x5280f2(0x203)](_0xc7f09)][_0x5280f2(0x19c)](',')+';',_0x1badce='',_0x3f73e0=0x1,_0x1ed3f7=0x0;for(;_0x1ed3f7<_0x2e7013[_0x5280f2(0x202)];){let _0x141dd1=_0x2e7013[_0x5280f2(0x1cc)](_0x1ed3f7,0x48);_0x1badce+=_0x141dd1[_0x5280f2(0x1ba)](0x48)+('G'+_0x3f73e0[_0x5280f2(0x199)]()['padStart'](0x7)+'\x0a'),_0x1ed3f7+=0x48,_0x3f73e0++;}return _0x1badce;},'_formatDirectoryLine':function(_0x52a90f,_0x31fcb9,_0x485441,_0x4bf04a,_0x42780d,_0x466123,_0x250a01,_0x46be3c,_0x1af6a8){const _0x412a86=a0_0x2ad885;return[_0x52a90f[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x31fcb9[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x485441[_0x412a86(0x199)]()['padStart'](0x8),_0x4bf04a[_0x412a86(0x199)]()['padStart'](0x8),_0x42780d[_0x412a86(0x199)]()['padStart'](0x8),_0x466123[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x250a01[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8),_0x46be3c[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x8)][_0x412a86(0x19c)]('')['padEnd'](0x48)+('D'+_0x1af6a8[_0x412a86(0x199)]()[_0x412a86(0x19b)](0x7)+'\x0a');},'_formatParameterLine':function(_0x26cfbf,_0x40e663,_0x2e38bc){const _0xe48171=a0_0x2ad885;let _0x20b36d='',_0x6b9e0f=_0x40e663,_0xae7b69=0x0;for(;_0xae7b69<_0x26cfbf[_0xe48171(0x202)];){let _0x3389=Math[_0xe48171(0x210)](_0xae7b69+0x40,_0x26cfbf['length']);if(_0x3389<_0x26cfbf[_0xe48171(0x202)]&&_0x26cfbf[_0x3389]!==','){let _0x21ca73=_0x26cfbf[_0xe48171(0x1b2)](',',_0x3389);_0x21ca73>_0xae7b69&&(_0x3389=_0x21ca73+0x1);}let _0x1e0663=_0x26cfbf[_0xe48171(0x1c2)](_0xae7b69,_0x3389);_0x20b36d+=_0x1e0663[_0xe48171(0x1ba)](0x40)+('\x20'+_0x2e38bc[_0xe48171(0x199)]()['padStart'](0x7)+'P'+_0x6b9e0f[_0xe48171(0x199)]()[_0xe48171(0x19b)](0x7)+'\x0a'),_0xae7b69=_0x3389,_0x6b9e0f++;}return _0x20b36d;},'_formatSection':function(_0x579f8e,_0x27e781){const _0x1ecb9d=a0_0x2ad885;return _0x27e781['map']((_0x24f4fc,_0x4a42f9)=>_0x24f4fc[_0x1ecb9d(0x20d)](/\n$/,'')+'\x0a')[_0x1ecb9d(0x19c)]('');},'_formatTerminateSection':function(_0x1ff42b,_0x1a07da,_0x2eb6ce,_0x4a3850){const _0x5e355e=a0_0x2ad885;return['S'+_0x1ff42b[_0x5e355e(0x199)]()[_0x5e355e(0x19b)](0x7),'G'+_0x1a07da[_0x5e355e(0x199)]()['padStart'](0x7),'D'+_0x2eb6ce[_0x5e355e(0x199)]()['padStart'](0x7),'P'+_0x4a3850[_0x5e355e(0x199)]()[_0x5e355e(0x19b)](0x7)]['join']('')[_0x5e355e(0x1ba)](0x48)+'T\x20\x20\x20\x20\x20\x201\x0a';},'_createPointEntity':function(_0x36d125,_0x313d8b,_0x24cc36){const _0xda233d=a0_0x2ad885;let _0x8e6735=_0xda233d(0x1ca)+this[_0xda233d(0x224)](_0x36d125[0x0])+','+this[_0xda233d(0x224)](_0x36d125[0x1])+','+this[_0xda233d(0x224)](_0x36d125[0x2])+',0.0;',_0x48da02=_0x313d8b,_0x1b49e6=this[_0xda233d(0x211)](_0x8e6735,_0x24cc36,_0x48da02),_0x292ec2=_0x1b49e6[_0xda233d(0x1af)]('\x0a')[_0xda233d(0x202)]-0x1,_0x17146f=this[_0xda233d(0x1eb)](0x74,_0x24cc36,0x0,0x0,0x0,0x0,0x0,0x0,_0x313d8b);return _0x17146f+=this[_0xda233d(0x1eb)](0x74,0x0,0x0,_0x292ec2,0x0,0x0,0x0,0x0,_0x313d8b+0x1),{'directoryEntry':_0x17146f,'parameterEntry':_0x1b49e6,'lineCount':_0x292ec2};},'_createPolylineEntity':function(_0x28dc47,_0x2dca66,_0x2b61a2){const _0x309db1=a0_0x2ad885;let _0x30641d=_0x309db1(0x1fa)+(_0x28dc47[_0x309db1(0x202)]-0x1);for(let _0x539b35=0x0;_0x539b35<_0x28dc47[_0x309db1(0x202)];_0x539b35++){let _0x49c860=_0x28dc47[_0x539b35];_0x30641d+=','+this[_0x309db1(0x224)](_0x49c860[0x0])+','+this[_0x309db1(0x224)](_0x49c860[0x1])+','+this[_0x309db1(0x224)](_0x49c860[0x2]);}_0x30641d+=';';let _0x304ca1=_0x2dca66,_0x285870=this['_formatParameterLine'](_0x30641d,_0x2b61a2,_0x304ca1),_0x471c89=_0x285870[_0x309db1(0x1af)]('\x0a')[_0x309db1(0x202)]-0x1,_0x1e157a=this['_formatDirectoryLine'](0x6a,_0x2b61a2,0x0,0x0,0x0,0x0,0x0,0x0,_0x2dca66);return _0x1e157a+=this['_formatDirectoryLine'](0x6a,0x0,0x0,_0x471c89,0x0,0x0,0x0,0x0,_0x2dca66+0x1),{'directoryEntry':_0x1e157a,'parameterEntry':_0x285870,'lineCount':_0x471c89};},'_createNurbsCurveEntity':function(_0x306c5a,_0x46bb97,_0x5bf8c0,_0x3d9249,_0x28b51f,_0x116bab){const _0x3a5543=a0_0x2ad885;let _0x5c6abc=_0x3a5543(0x1b4)+(_0x306c5a[_0x3a5543(0x202)]-0x1)+','+_0x3d9249+',0,0,1,0';for(let _0x5b8b6b of _0x5bf8c0)_0x5c6abc+=','+this[_0x3a5543(0x224)](_0x5b8b6b);for(let _0xb2561b of _0x46bb97)_0x5c6abc+=','+this[_0x3a5543(0x224)](_0xb2561b);for(let _0x58b2ab=0x0;_0x58b2ab<_0x306c5a[_0x3a5543(0x202)];_0x58b2ab++){let _0x152fd7=_0x306c5a[_0x58b2ab];_0x5c6abc+=','+this[_0x3a5543(0x224)](_0x152fd7[0x0])+','+this[_0x3a5543(0x224)](_0x152fd7[0x1])+','+this[_0x3a5543(0x224)](_0x152fd7[0x2]);}_0x5c6abc+=','+this['_formatNumber'](_0x5bf8c0[0x0])+','+this[_0x3a5543(0x224)](_0x5bf8c0[_0x5bf8c0[_0x3a5543(0x202)]-0x1]),_0x5c6abc+=_0x3a5543(0x215),_0x5c6abc+=';';let _0x3fd24e=_0x28b51f,_0x459725=this[_0x3a5543(0x211)](_0x5c6abc,_0x116bab,_0x3fd24e),_0x2b5647=_0x459725[_0x3a5543(0x1af)]('\x0a')['length']-0x1,_0x40638b=this[_0x3a5543(0x1eb)](0x7e,_0x116bab,0x0,0x0,0x0,0x0,0x0,0x0,_0x28b51f);return _0x40638b+=this['_formatDirectoryLine'](0x7e,0x0,0x0,_0x2b5647,0x0,0x0,0x0,0x0,_0x28b51f+0x1),{'directoryEntry':_0x40638b,'parameterEntry':_0x459725,'lineCount':_0x2b5647};},'_createNurbsSurfaceEntity':function(_0x1e9e1a,_0x2034db,_0x426ae7,_0x3bf382,_0x12a843,_0x580111,_0x31a59a,_0x354305){const _0x267352=a0_0x2ad885;let _0x28d761=_0x1e9e1a[_0x267352(0x202)],_0x13501a=_0x1e9e1a[0x0][_0x267352(0x202)],_0x302201=_0x28d761-0x1,_0x5245fb=_0x13501a-0x1,_0x3268ee=_0x267352(0x1ad)+_0x302201+','+_0x5245fb+','+_0x12a843+','+_0x580111+_0x267352(0x217);for(let _0x68e0c5 of _0x426ae7)_0x3268ee+=','+this[_0x267352(0x224)](_0x68e0c5);for(let _0x2e384f of _0x3bf382)_0x3268ee+=','+this[_0x267352(0x224)](_0x2e384f);for(let _0x2cb275=0x0;_0x2cb275<=_0x5245fb;_0x2cb275++)for(let _0x5eed8d=0x0;_0x5eed8d<=_0x302201;_0x5eed8d++)_0x3268ee+=','+this[_0x267352(0x224)](_0x2034db[_0x5eed8d][_0x2cb275]);for(let _0x4252fc=0x0;_0x4252fc<=_0x5245fb;_0x4252fc++)for(let _0x50e83d=0x0;_0x50e83d<=_0x302201;_0x50e83d++){let _0x3d1339=_0x1e9e1a[_0x50e83d][_0x4252fc];_0x3268ee+=','+this[_0x267352(0x224)](_0x3d1339[0x0])+','+this['_formatNumber'](_0x3d1339[0x1])+','+this['_formatNumber'](_0x3d1339[0x2]);}_0x3268ee+=','+this[_0x267352(0x224)](_0x426ae7[0x0])+','+this[_0x267352(0x224)](_0x426ae7[_0x426ae7['length']-0x1]),_0x3268ee+=','+this['_formatNumber'](_0x3bf382[0x0])+','+this[_0x267352(0x224)](_0x3bf382[_0x3bf382[_0x267352(0x202)]-0x1]),_0x3268ee+=';';let _0x185c9d=_0x31a59a,_0x2c195b=this[_0x267352(0x211)](_0x3268ee,_0x354305,_0x185c9d),_0x48777d=_0x2c195b[_0x267352(0x1af)]('\x0a')[_0x267352(0x202)]-0x1,_0x344e5f=this[_0x267352(0x1eb)](0x80,_0x354305,0x0,0x0,0x0,0x0,0x0,0x0,_0x31a59a);return _0x344e5f+=this[_0x267352(0x1eb)](0x80,0x0,0x0,_0x48777d,0x0,0x0,0x0,0x0,_0x31a59a+0x1),{'directoryEntry':_0x344e5f,'parameterEntry':_0x2c195b,'lineCount':_0x48777d};},'nurbsSurfaceToIges':function(_0x3e4dab,_0x163cb0={}){const _0x360acb=a0_0x2ad885;let _0x55c2c8={'units':'MM','filename':'nurbs_surface.iges','author':_0x360acb(0x206),'organization':'D#','degreeU':0x3,'degreeV':0x3,'weights':null,'knotsU':null,'knotsV':null,..._0x163cb0};if(!Array[_0x360acb(0x1c1)](_0x3e4dab)||_0x3e4dab[_0x360acb(0x202)]===0x0||!Array['isArray'](_0x3e4dab[0x0]))throw new Error(_0x360acb(0x21b));let _0x45e42c=_0x3e4dab['length'],_0x224f0b=_0x3e4dab[0x0]['length'];if(_0x45e42c<_0x55c2c8[_0x360acb(0x1ef)]+0x1||_0x224f0b<_0x55c2c8[_0x360acb(0x1a3)]+0x1)throw new Error(_0x360acb(0x1e2));let _0x2ba281=_0x3e4dab[_0x360acb(0x1d6)](_0x849b=>_0x849b[_0x360acb(0x1d6)](_0x4a737f=>{const _0x1de8a7=_0x360acb;if(!Array[_0x1de8a7(0x1c1)](_0x4a737f)||_0x4a737f[_0x1de8a7(0x202)]<0x2)throw new Error('Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]');return[_0x4a737f[0x0]||0x0,_0x4a737f[0x1]||0x0,_0x4a737f[0x2]||0x0];})),_0x302164=_0x55c2c8['weights'];_0x302164||(_0x302164=new Array(_0x45e42c)[_0x360acb(0x1df)](0x0)[_0x360acb(0x1d6)](()=>new Array(_0x224f0b)[_0x360acb(0x1df)](0x1)));let _0x32f191=_0x55c2c8[_0x360acb(0x1b8)];if(!_0x32f191)throw new Error(_0x360acb(0x1a2));let _0xf846fe=_0x55c2c8[_0x360acb(0x1c8)];if(!_0xf846fe)throw new Error(_0x360acb(0x1a2));let _0x355552='',_0x433e24='',_0x203236='',_0x2d23a2=0x1,_0x33efcf=0x1;_0x355552=this[_0x360acb(0x226)](_0x55c2c8);let _0x1889e7=this[_0x360acb(0x1d1)](_0x2ba281,_0x302164,_0x32f191,_0xf846fe,_0x55c2c8[_0x360acb(0x1ef)],_0x55c2c8['degreeV'],_0x33efcf,_0x2d23a2);_0x433e24+=_0x1889e7['directoryEntry'],_0x203236+=_0x1889e7[_0x360acb(0x1fe)],_0x33efcf+=0x2,_0x2d23a2+=_0x1889e7[_0x360acb(0x20c)];let _0x2e2284=this[_0x360acb(0x1bf)](_0x360acb(0x1da),[_0x360acb(0x229),_0x360acb(0x1c6)]),_0x1c15d2=this[_0x360acb(0x1ed)](_0x2e2284[_0x360acb(0x1af)]('\x0a')[_0x360acb(0x202)]-0x1,_0x355552[_0x360acb(0x1af)]('\x0a')[_0x360acb(0x202)]-0x1,_0x433e24['split']('\x0a')[_0x360acb(0x202)]-0x1,_0x203236[_0x360acb(0x1af)]('\x0a')[_0x360acb(0x202)]-0x1);return _0x2e2284+_0x355552+_0x433e24+_0x203236+_0x1c15d2;},'geometryToIges':function(_0x2ecab0,_0x4a6531={}){const _0x489484=a0_0x2ad885;let _0x59fa43={'units':'MM','filename':'geometry.iges','author':'LiftLab','organization':'D3',..._0x4a6531};if(!Array[_0x489484(0x1c1)](_0x2ecab0)||_0x2ecab0[_0x489484(0x202)]===0x0)throw new Error(_0x489484(0x1f4));let _0x157532='',_0x22b1fc='',_0x490cbd='',_0x553f4c=0x1,_0xa4d92d=0x1,_0x23687b=0x0;_0x157532=this[_0x489484(0x226)](_0x59fa43);for(let _0x3b74bf of _0x2ecab0){if(!_0x3b74bf||typeof _0x3b74bf!=_0x489484(0x1f2)||!_0x3b74bf[_0x489484(0x216)]||!_0x3b74bf[_0x489484(0x1c5)])throw new Error('Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbsCurve|nurbsSurface\x22,\x20data:\x20[...]\x20}');let _0x44a55b=_0x3b74bf[_0x489484(0x216)],_0x3a64cf=_0x3b74bf['data'],_0x4a9cc4;if(_0x44a55b===_0x489484(0x200)?_0x4a9cc4=_0x3a64cf[_0x489484(0x1d6)](_0xacca06=>_0xacca06['map'](_0x35024e=>{const _0x28a6f2=_0x489484;if(!Array['isArray'](_0x35024e)||_0x35024e['length']<0x2)throw new Error(_0x28a6f2(0x1e4));return[_0x35024e[0x0]||0x0,_0x35024e[0x1]||0x0,_0x35024e[0x2]||0x0];})):_0x4a9cc4=_0x3a64cf[_0x489484(0x1d6)](_0x562119=>{const _0xc19a32=_0x489484;if(!Array[_0xc19a32(0x1c1)](_0x562119)||_0x562119[_0xc19a32(0x202)]<0x2)throw new Error(_0xc19a32(0x1e4));return[_0x562119[0x0]||0x0,_0x562119[0x1]||0x0,_0x562119[0x2]||0x0];}),_0x4a9cc4[_0x489484(0x202)]!==0x0)switch(_0x44a55b){case _0x489484(0x1fb):for(let _0x545459 of _0x4a9cc4){_0x23687b++;let _0x4cc1e1=this[_0x489484(0x1b7)](_0x545459,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0x4cc1e1[_0x489484(0x194)],_0x490cbd+=_0x4cc1e1[_0x489484(0x1fe)],_0xa4d92d+=0x2,_0x553f4c+=_0x4cc1e1[_0x489484(0x20c)];}break;case'polyline':if(_0x4a9cc4[_0x489484(0x202)]>0x1){_0x23687b++;let _0x2fd199=this[_0x489484(0x221)](_0x4a9cc4,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0x2fd199[_0x489484(0x194)],_0x490cbd+=_0x2fd199[_0x489484(0x1fe)],_0xa4d92d+=0x2,_0x553f4c+=_0x2fd199[_0x489484(0x20c)];}break;case _0x489484(0x1a8):let _0x11082b=_0x3b74bf[_0x489484(0x207)]||0x3,_0x2be275=_0x4a9cc4[_0x489484(0x202)];if(_0x2be275<_0x11082b+0x1){console[_0x489484(0x1a6)](_0x489484(0x19a)+(_0x11082b+0x1)+'\x20control\x20points\x20for\x20degree\x20'+_0x11082b);continue;}let _0x1190ca=_0x3b74bf[_0x489484(0x1e1)]||new Array(_0x2be275)[_0x489484(0x1df)](0x1);if(_0x1190ca['length']!==_0x2be275)throw new Error(_0x489484(0x1f0));let _0x2aa55c=_0x3b74bf[_0x489484(0x1bc)],_0x876bac=_0x2be275+_0x11082b+0x1;if(_0x2aa55c[_0x489484(0x202)]!==_0x876bac)throw new Error('Invalid\x20knot\x20vector\x20length:\x20expected\x20'+_0x876bac+_0x489484(0x1d2)+_0x2aa55c[_0x489484(0x202)]);_0x23687b++;let _0x5c5d90=this[_0x489484(0x1dd)](_0x4a9cc4,_0x1190ca,_0x2aa55c,_0x11082b,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0x5c5d90['directoryEntry'],_0x490cbd+=_0x5c5d90['parameterEntry'],_0xa4d92d+=0x2,_0x553f4c+=_0x5c5d90[_0x489484(0x20c)];break;case _0x489484(0x200):let _0x21e53f=_0x3b74bf[_0x489484(0x1ef)]||0x3,_0x45ffed=_0x3b74bf[_0x489484(0x1a3)]||0x3,_0xdfb9da=_0x4a9cc4[_0x489484(0x202)],_0x35d408=_0x4a9cc4[0x0][_0x489484(0x202)];if(_0xdfb9da<_0x21e53f+0x1||_0x35d408<_0x45ffed+0x1){console['warn']('Skipping\x20NURBS\x20surface:\x20insufficient\x20control\x20points');continue;}let _0x33a6cc=_0x3b74bf[_0x489484(0x1e1)];_0x33a6cc||(_0x33a6cc=new Array(_0xdfb9da)['fill'](0x0)[_0x489484(0x1d6)](()=>new Array(_0x35d408)[_0x489484(0x1df)](0x1)));let _0x439fda=_0x3b74bf['knotsU'],_0x58df99=_0x3b74bf[_0x489484(0x1c8)];if(!_0x439fda||!_0x58df99)throw new Error(_0x489484(0x1f7));_0x23687b++;let _0xc32d50=this['_createNurbsSurfaceEntity'](_0x4a9cc4,_0x33a6cc,_0x439fda,_0x58df99,_0x21e53f,_0x45ffed,_0xa4d92d,_0x553f4c);_0x22b1fc+=_0xc32d50['directoryEntry'],_0x490cbd+=_0xc32d50[_0x489484(0x1fe)],_0xa4d92d+=0x2,_0x553f4c+=_0xc32d50[_0x489484(0x20c)];break;default:throw new Error(_0x489484(0x1d0)+_0x44a55b+_0x489484(0x21e));}}if(_0x23687b===0x0)throw new Error(_0x489484(0x1a1));let _0x5ca41f=this[_0x489484(0x1bf)]('START',[_0x489484(0x229),_0x489484(0x1de)]),_0x3e7a51=this[_0x489484(0x1ed)](_0x5ca41f[_0x489484(0x1af)]('\x0a')['length']-0x1,_0x157532[_0x489484(0x1af)]('\x0a')[_0x489484(0x202)]-0x1,_0x22b1fc[_0x489484(0x1af)]('\x0a')['length']-0x1,_0x490cbd[_0x489484(0x1af)]('\x0a')[_0x489484(0x202)]-0x1);return _0x5ca41f+_0x157532+_0x22b1fc+_0x490cbd+_0x3e7a51;},'_parseIgesNumber':function(_0x4bc00e){const _0x4259b7=a0_0x2ad885;if(!_0x4bc00e||typeof _0x4bc00e!=_0x4259b7(0x1e9))return 0x0;let _0x56e2f5=_0x4bc00e[_0x4259b7(0x1cd)]()[_0x4259b7(0x20d)](/D([+-]?\d+)/g,_0x4259b7(0x214)),_0x53a2da=parseFloat(_0x56e2f5);return isNaN(_0x53a2da)?0x0:_0x53a2da;},'_processEntity':function(_0x2ebe3b,_0x518b40,_0x1660fb,_0x59280a,_0x51effd){const _0x447c2b=a0_0x2ad885;let _0x2def76=_0x2ebe3b[_0x447c2b(0x20d)](';','')[_0x447c2b(0x1af)](',')[_0x447c2b(0x1d6)](_0x29eb02=>_0x29eb02[_0x447c2b(0x1cd)]());if(_0x2def76[_0x447c2b(0x202)]===0x0)return;switch(parseInt(_0x2def76[0x0])){case 0x74:this[_0x447c2b(0x196)](_0x2def76,_0x1660fb);break;case 0x6a:this[_0x447c2b(0x1fc)](_0x2def76,_0x518b40);break;case 0x7e:this[_0x447c2b(0x1a5)](_0x2def76,_0x59280a);break;case 0x80:_0x51effd&&this['_processNurbsSurfaceEntity'](_0x2def76,_0x51effd);break;case 0x6e:this['_processLineEntity'](_0x2def76,_0x518b40);break;default:break;}},'_processPointEntity':function(_0x42cd2c,_0x13da0f){const _0x586009=a0_0x2ad885;if(_0x42cd2c[_0x586009(0x202)]>=0x4){let _0x27c8f9=this[_0x586009(0x1c0)](_0x42cd2c[0x1]),_0x5840a7=this['_parseIgesNumber'](_0x42cd2c[0x2]),_0x5a5167=this['_parseIgesNumber'](_0x42cd2c[0x3]);_0x13da0f['push']([_0x27c8f9,_0x5840a7,_0x5a5167]);}},'_processPolylineEntity':function(_0x31f0bb,_0x11f62a){const _0x3bc89f=a0_0x2ad885;if(_0x31f0bb[_0x3bc89f(0x202)]<0x2)return;let _0x28ad4e=parseInt(_0x31f0bb[0x1]),_0x2dbd0a=0x2+(_0x28ad4e+0x1)*0x3;if(_0x31f0bb[_0x3bc89f(0x202)]<_0x2dbd0a)return;let _0x11f0bc=[];for(let _0x4972ae=0x0;_0x4972ae<=_0x28ad4e;_0x4972ae++){let _0x524f41=0x2+_0x4972ae*0x3;if(_0x524f41+0x2<_0x31f0bb[_0x3bc89f(0x202)]){let _0x30603c=this['_parseIgesNumber'](_0x31f0bb[_0x524f41]),_0x44ed28=this[_0x3bc89f(0x1c0)](_0x31f0bb[_0x524f41+0x1]),_0x56cfb9=this[_0x3bc89f(0x1c0)](_0x31f0bb[_0x524f41+0x2]);_0x11f0bc[_0x3bc89f(0x1a7)]([_0x30603c,_0x44ed28,_0x56cfb9]);}}_0x11f0bc[_0x3bc89f(0x202)]>0x1&&_0x11f62a[_0x3bc89f(0x1a7)](_0x11f0bc);},'_processLineEntity':function(_0x4112de,_0x24a0cf){const _0x79ca5c=a0_0x2ad885;if(_0x4112de[_0x79ca5c(0x202)]>=0x7){let _0x3270fa=this[_0x79ca5c(0x1c0)](_0x4112de[0x1]),_0x19b290=this[_0x79ca5c(0x1c0)](_0x4112de[0x2]),_0x3b6213=this[_0x79ca5c(0x1c0)](_0x4112de[0x3]),_0x4b40b5=this[_0x79ca5c(0x1c0)](_0x4112de[0x4]),_0x3ca203=this['_parseIgesNumber'](_0x4112de[0x5]),_0x5ebea8=this['_parseIgesNumber'](_0x4112de[0x6]);_0x24a0cf[_0x79ca5c(0x1a7)]([[_0x3270fa,_0x19b290,_0x3b6213],[_0x4b40b5,_0x3ca203,_0x5ebea8]]);}},'_processNurbsCurveEntity':function(_0x50d178,_0x3ef779){const _0xa937e3=a0_0x2ad885;if(_0x50d178[_0xa937e3(0x202)]<0x7)return;let _0x1fe6e0=parseInt(_0x50d178[0x1]),_0x6e3d58=parseInt(_0x50d178[0x2]),_0x366bef=parseInt(_0x50d178[0x3]),_0x578b5a=parseInt(_0x50d178[0x4]),_0x601340=parseInt(_0x50d178[0x5]),_0x3bf250=parseInt(_0x50d178[0x6]),_0x133658=_0x1fe6e0+0x1,_0x1dc178=_0x1fe6e0+_0x6e3d58+0x2,_0x1e3b1e=0x7,_0x42affb=_0x1e3b1e+_0x1dc178,_0x1aa158=_0x42affb+_0x133658+_0x133658+_0x133658+_0x133658+0x2;if(_0x50d178['length']<_0x1aa158+0x3)return;let _0x3bd1be=[];for(let _0x1a4d8e=0x0;_0x1a4d8e<_0x1dc178;_0x1a4d8e++)_0x3bd1be[_0xa937e3(0x1a7)](this[_0xa937e3(0x1c0)](_0x50d178[_0x1e3b1e+_0x1a4d8e]));let _0x596d9e=[];for(let _0x294151=0x0;_0x294151<_0x133658;_0x294151++)_0x596d9e['push'](this['_parseIgesNumber'](_0x50d178[_0x42affb+_0x294151])||0x1);let _0x5a12ed=[],_0x3c9c4=_0x42affb+_0x133658,_0x58d5cc=_0x3c9c4+_0x133658*0x3;if(_0x50d178[_0xa937e3(0x202)]>=_0x58d5cc+0x5){for(let _0xb82a22=0x0;_0xb82a22<_0x133658;_0xb82a22++){let _0x4c2f2b=_0x3c9c4+_0xb82a22*0x3,_0x1a6e1d=this[_0xa937e3(0x1c0)](_0x50d178[_0x4c2f2b]),_0x46ad6a=this[_0xa937e3(0x1c0)](_0x50d178[_0x4c2f2b+0x1]),_0x290d8b=this[_0xa937e3(0x1c0)](_0x50d178[_0x4c2f2b+0x2]);_0x5a12ed[_0xa937e3(0x1a7)]([_0x1a6e1d,_0x46ad6a,_0x290d8b]);}let _0x134f44=_0x58d5cc,_0x34c565=_0x134f44+0x2,_0x59ccc3=this[_0xa937e3(0x1c0)](_0x50d178[_0x134f44]),_0x32a052=this[_0xa937e3(0x1c0)](_0x50d178[_0x134f44+0x1])||0x1,_0x2184ad=[this[_0xa937e3(0x1c0)](_0x50d178[_0x34c565]),this[_0xa937e3(0x1c0)](_0x50d178[_0x34c565+0x1]),this['_parseIgesNumber'](_0x50d178[_0x34c565+0x2])],_0x367fb2={'type':_0xa937e3(0x1a8),'degree':_0x6e3d58,'controlPoints':_0x5a12ed,'weights':_0x596d9e,'knots':_0x3bd1be,'parameterRange':[_0x59ccc3,_0x32a052],'properties':{'planar':_0x366bef===0x1,'closed':_0x578b5a===0x1,'rational':_0x601340===0x1,'periodic':_0x3bf250===0x1},'normalVector':_0x2184ad,'numControlPoints':_0x133658,'numKnots':_0x1dc178,'upperControlPointIndex':_0x1fe6e0};_0x3ef779['push'](_0x367fb2);}else{let _0x422bb6=_0x42affb+_0x133658,_0x6a33a7=_0x422bb6+_0x133658,_0x55d7df=_0x6a33a7+_0x133658,_0x3b7990=_0x55d7df+_0x133658,_0x4ecc58=_0x3b7990+0x2;if(_0x50d178[_0xa937e3(0x202)]<_0x4ecc58+0x3)return;for(let _0x4aab03=0x0;_0x4aab03<_0x133658;_0x4aab03++){let _0x3cbe2a=this[_0xa937e3(0x1c0)](_0x50d178[_0x422bb6+_0x4aab03]),_0x30a5e8=this['_parseIgesNumber'](_0x50d178[_0x6a33a7+_0x4aab03]),_0x2faf1c=this[_0xa937e3(0x1c0)](_0x50d178[_0x55d7df+_0x4aab03]);_0x5a12ed[_0xa937e3(0x1a7)]([_0x3cbe2a,_0x30a5e8,_0x2faf1c]);}let _0x240bd4=this[_0xa937e3(0x1c0)](_0x50d178[_0x3b7990]),_0x18199f=this[_0xa937e3(0x1c0)](_0x50d178[_0x3b7990+0x1])||0x1,_0x2319cb=[this[_0xa937e3(0x1c0)](_0x50d178[_0x4ecc58]),this[_0xa937e3(0x1c0)](_0x50d178[_0x4ecc58+0x1]),this[_0xa937e3(0x1c0)](_0x50d178[_0x4ecc58+0x2])],_0x3bddfe={'type':'nurbsCurve','degree':_0x6e3d58,'controlPoints':_0x5a12ed,'weights':_0x596d9e,'knots':_0x3bd1be,'parameterRange':[_0x240bd4,_0x18199f],'properties':{'planar':_0x366bef===0x1,'closed':_0x578b5a===0x1,'rational':_0x601340===0x1,'periodic':_0x3bf250===0x1},'normalVector':_0x2319cb,'numControlPoints':_0x133658,'numKnots':_0x1dc178,'upperControlPointIndex':_0x1fe6e0};_0x3ef779[_0xa937e3(0x1a7)](_0x3bddfe);}},'_processNurbsSurfaceEntity':function(_0x37eab4,_0x4cb889){const _0x590d5e=a0_0x2ad885;if(_0x37eab4['length']<0xa)return;let _0x111127=parseInt(_0x37eab4[0x1]),_0x5c433b=parseInt(_0x37eab4[0x2]),_0x46bd2f=parseInt(_0x37eab4[0x3]),_0x2eab26=parseInt(_0x37eab4[0x4]),_0x1c2634=parseInt(_0x37eab4[0x5]),_0x5d1b30=parseInt(_0x37eab4[0x6]),_0x3a0a1c=parseInt(_0x37eab4[0x7]),_0x4d9689=parseInt(_0x37eab4[0x8]),_0x4eada2=parseInt(_0x37eab4[0x9]),_0x40eb7d=_0x111127+0x1,_0x17832e=_0x5c433b+0x1,_0x9ffb02=_0x111127+_0x46bd2f+0x2,_0x5e9660=_0x5c433b+_0x2eab26+0x2,_0x4e133b=0xa,_0x1314e8=[];for(let _0x268b82=0x0;_0x268b82<_0x9ffb02;_0x268b82++)_0x1314e8[_0x590d5e(0x1a7)](this['_parseIgesNumber'](_0x37eab4[_0x4e133b++]));let _0x153e63=[];for(let _0x16de3f=0x0;_0x16de3f<_0x5e9660;_0x16de3f++)_0x153e63[_0x590d5e(0x1a7)](this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]));let _0x2ab09a={'type':_0x590d5e(0x200),'degreeU':_0x46bd2f,'degreeV':_0x2eab26,'controlPoints':[],'weights':[],'knotsU':_0x1314e8,'knotsV':_0x153e63,'properties':{'closedU':_0x1c2634===0x1,'closedV':_0x5d1b30===0x1,'rational':_0x3a0a1c===0x1,'periodicU':_0x4d9689===0x1,'periodicV':_0x4eada2===0x1}};for(let _0x49aa1a=0x0;_0x49aa1a<_0x40eb7d;_0x49aa1a++)_0x2ab09a[_0x590d5e(0x1e1)]['push'](new Array(_0x17832e)),_0x2ab09a[_0x590d5e(0x227)][_0x590d5e(0x1a7)](new Array(_0x17832e));for(let _0x3f29ee=0x0;_0x3f29ee<_0x17832e;_0x3f29ee++)for(let _0x194c13=0x0;_0x194c13<_0x40eb7d;_0x194c13++)_0x2ab09a['weights'][_0x194c13][_0x3f29ee]=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++])||0x1;for(let _0x2e3a0c=0x0;_0x2e3a0c<_0x17832e;_0x2e3a0c++)for(let _0x55a92b=0x0;_0x55a92b<_0x40eb7d;_0x55a92b++){let _0xf971d7=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x12c873=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x3f08c2=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]);_0x2ab09a[_0x590d5e(0x227)][_0x55a92b][_0x2e3a0c]=[_0xf971d7,_0x12c873,_0x3f08c2];}if(_0x4e133b+0x4<=_0x37eab4['length']){let _0xe1c9ba=this['_parseIgesNumber'](_0x37eab4[_0x4e133b++]),_0x42023a=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x2a3d5c=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]),_0x21d76c=this[_0x590d5e(0x1c0)](_0x37eab4[_0x4e133b++]);_0x2ab09a['parameterRangeU']=[_0xe1c9ba,_0x42023a],_0x2ab09a[_0x590d5e(0x213)]=[_0x2a3d5c,_0x21d76c];}_0x4cb889[_0x590d5e(0x1a7)](_0x2ab09a);},'igesToGeometry':function(_0x10b9ce){const _0x1d8178=a0_0x2ad885;if(!_0x10b9ce||typeof _0x10b9ce!='string')throw new Error('IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string');let _0x509d3c=[],_0x1c9e4f=[],_0x166e7d=[],_0x243624=[],_0x1949ca=_0x10b9ce[_0x1d8178(0x1af)]('\x0a')[_0x1d8178(0x1b9)](_0x2436b4=>_0x2436b4[_0x1d8178(0x1cd)]()&&_0x2436b4[_0x1d8178(0x1d9)](0x48)==='P'),_0x34ee38='';for(let _0x298772 of _0x1949ca){let _0x3b4332=_0x298772['substring'](0x0,0x40)[_0x1d8178(0x1cd)]();_0x34ee38+=_0x3b4332,_0x3b4332['endsWith'](';')&&(this['_processEntity'](_0x34ee38,_0x509d3c,_0x1c9e4f,_0x166e7d,_0x243624),_0x34ee38='');}return{'lines':_0x509d3c,'points':_0x1c9e4f,'nurbsCurves':_0x166e7d,'nurbsSurfaces':_0x243624};}},H={'polylinePlaneIntersections3D':function(_0x5af17b,_0x390350){const _0x25b5a2=a0_0x2ad885;let _0x4d35d9=[];for(let _0x5d4806=0x0;_0x5d4806<_0x5af17b['length']-0x1;_0x5d4806++){let _0x75deca=_0x5af17b[_0x5d4806],_0x34a01c=_0x5af17b[_0x5d4806+0x1],_0x160b60=[_0x34a01c[0x0]-_0x75deca[0x0],_0x34a01c[0x1]-_0x75deca[0x1],_0x34a01c[0x2]-_0x75deca[0x2]],_0x35ecf7={'origin':_0x75deca,'dir':_0x160b60},_0x3f910f=this[_0x25b5a2(0x209)](_0x35ecf7,_0x390350);if(_0x3f910f){let _0x44bf28=_0x160b60[0x0]!==0x0?(_0x3f910f[0x0]-_0x75deca[0x0])/_0x160b60[0x0]:_0x160b60[0x1]!==0x0?(_0x3f910f[0x1]-_0x75deca[0x1])/_0x160b60[0x1]:_0x160b60[0x2]!==0x0?(_0x3f910f[0x2]-_0x75deca[0x2])/_0x160b60[0x2]:0x0;_0x44bf28>=0x0&&_0x44bf28<=0x1&&(_0x4d35d9[_0x25b5a2(0x1f9)](_0x17fc24=>{let _0x323e94=_0x17fc24[0x0]-_0x3f910f[0x0],_0x39a4fd=_0x17fc24[0x1]-_0x3f910f[0x1],_0x33fb47=_0x17fc24[0x2]-_0x3f910f[0x2];return Math['sqrt'](_0x323e94*_0x323e94+_0x39a4fd*_0x39a4fd+_0x33fb47*_0x33fb47)<1e-10;})||_0x4d35d9['push'](_0x3f910f));}}return _0x4d35d9;},'rayPlaneIntersection3D':function(_0x2bab27,_0x2ef641){const _0x184fce=a0_0x2ad885;let _0x250e87=_0x2bab27[_0x184fce(0x1c3)],_0x4cdb04=_0x2bab27[_0x184fce(0x204)],_0x21cdc7=_0x2ef641[_0x184fce(0x197)],_0x4430fb=_0x2ef641['normal'],_0x3e7795=_0x4cdb04[0x0]*_0x4430fb[0x0]+_0x4cdb04[0x1]*_0x4430fb[0x1]+_0x4cdb04[0x2]*_0x4430fb[0x2];if(Math[_0x184fce(0x20b)](_0x3e7795)<1e-10)return null;let _0xac250a=((_0x21cdc7[0x0]-_0x250e87[0x0])*_0x4430fb[0x0]+(_0x21cdc7[0x1]-_0x250e87[0x1])*_0x4430fb[0x1]+(_0x21cdc7[0x2]-_0x250e87[0x2])*_0x4430fb[0x2])/_0x3e7795;return _0xac250a<0x0?null:[_0x250e87[0x0]+_0xac250a*_0x4cdb04[0x0],_0x250e87[0x1]+_0xac250a*_0x4cdb04[0x1],_0x250e87[0x2]+_0xac250a*_0x4cdb04[0x2]];},'polylineIntersections3D':function(_0x485d54,_0x2764b1,_0x32d0d1=0.000001){const _0x401176=a0_0x2ad885;function _0x20529f(_0x3483ec,_0x48674e,_0x4f6648,_0x13339a){const _0x4d9324=a0_0x2f9e;let _0x2eccc0=[_0x48674e[0x0]-_0x3483ec[0x0],_0x48674e[0x1]-_0x3483ec[0x1],_0x48674e[0x2]-_0x3483ec[0x2]],_0x11a63a=[_0x13339a[0x0]-_0x4f6648[0x0],_0x13339a[0x1]-_0x4f6648[0x1],_0x13339a[0x2]-_0x4f6648[0x2]],_0x3f647f=[_0x3483ec[0x0]-_0x4f6648[0x0],_0x3483ec[0x1]-_0x4f6648[0x1],_0x3483ec[0x2]-_0x4f6648[0x2]],_0x3d9035=_0x4862bd(_0x2eccc0,_0x2eccc0),_0x4018ed=_0x4862bd(_0x2eccc0,_0x11a63a),_0x20c294=_0x4862bd(_0x11a63a,_0x11a63a),_0x1acd2d=_0x4862bd(_0x2eccc0,_0x3f647f),_0x4b0b50=_0x4862bd(_0x11a63a,_0x3f647f),_0x1f6e02=_0x3d9035*_0x20c294-_0x4018ed*_0x4018ed,_0x5bbc24,_0x2a17fb;_0x1f6e02===0x0?(_0x5bbc24=0x0,_0x2a17fb=_0x4018ed>_0x20c294?_0x1acd2d/_0x4018ed:_0x4b0b50/_0x20c294):(_0x5bbc24=(_0x4018ed*_0x4b0b50-_0x20c294*_0x1acd2d)/_0x1f6e02,_0x2a17fb=(_0x3d9035*_0x4b0b50-_0x4018ed*_0x1acd2d)/_0x1f6e02),_0x5bbc24=Math[_0x4d9324(0x191)](0x0,Math[_0x4d9324(0x210)](0x1,_0x5bbc24)),_0x2a17fb=Math[_0x4d9324(0x191)](0x0,Math[_0x4d9324(0x210)](0x1,_0x2a17fb));let _0x277390=[_0x3483ec[0x0]+_0x5bbc24*_0x2eccc0[0x0],_0x3483ec[0x1]+_0x5bbc24*_0x2eccc0[0x1],_0x3483ec[0x2]+_0x5bbc24*_0x2eccc0[0x2]],_0x3c0fbd=[_0x4f6648[0x0]+_0x2a17fb*_0x11a63a[0x0],_0x4f6648[0x1]+_0x2a17fb*_0x11a63a[0x1],_0x4f6648[0x2]+_0x2a17fb*_0x11a63a[0x2]];return{'pt1':_0x277390,'pt2':_0x3c0fbd,'distance':Math['sqrt']((_0x277390[0x0]-_0x3c0fbd[0x0])**0x2+(_0x277390[0x1]-_0x3c0fbd[0x1])**0x2+(_0x277390[0x2]-_0x3c0fbd[0x2])**0x2)};}function _0x4862bd(_0x53bd4a,_0x2c6e02){return _0x53bd4a[0x0]*_0x2c6e02[0x0]+_0x53bd4a[0x1]*_0x2c6e02[0x1]+_0x53bd4a[0x2]*_0x2c6e02[0x2];}let _0x21599e=[];for(let _0x52673f=0x0;_0x52673f<_0x485d54[_0x401176(0x202)]-0x1;_0x52673f++)for(let _0x5c3af4=0x0;_0x5c3af4<_0x2764b1[_0x401176(0x202)]-0x1;_0x5c3af4++){let {pt1:_0x960a4f,pt2:_0x4b86c0,distance:_0x223a2f}=_0x20529f(_0x485d54[_0x52673f],_0x485d54[_0x52673f+0x1],_0x2764b1[_0x5c3af4],_0x2764b1[_0x5c3af4+0x1]);_0x223a2f<_0x32d0d1&&_0x21599e[_0x401176(0x1a7)]({'point':[(_0x960a4f[0x0]+_0x4b86c0[0x0])/0x2,(_0x960a4f[0x1]+_0x4b86c0[0x1])/0x2,(_0x960a4f[0x2]+_0x4b86c0[0x2])/0x2],'seg1':_0x52673f,'seg2':_0x5c3af4,'distance':_0x223a2f});}return _0x21599e;}},G={'projectTo2d':function(_0x43e485){const _0x118f1c=a0_0x2ad885;let _0x2aa485=[..._0x43e485];if(_0x2aa485[_0x118f1c(0x202)]<0x3)throw new Error(_0x118f1c(0x1ee));let _0x3b4c31=_0x2aa485[0x0],_0x361d1f=null,_0x56e684=null,_0x2c004a=1e-10;for(let _0x1306c6=0x1;_0x1306c6<_0x2aa485['length'];_0x1306c6++){let _0x23dfc6=b[_0x118f1c(0x1c9)](_0x3b4c31,_0x2aa485[_0x1306c6]);if(b[_0x118f1c(0x202)](_0x23dfc6)>_0x2c004a){_0x361d1f=_0x2aa485[_0x1306c6],_0x56e684=_0x23dfc6;break;}}if(!_0x56e684)throw new Error(_0x118f1c(0x225));let _0x6df7ad=null;for(let _0x15b677=0x1;_0x15b677<_0x2aa485[_0x118f1c(0x202)];_0x15b677++){if(_0x2aa485[_0x15b677]===_0x361d1f)continue;let _0x44b428=b[_0x118f1c(0x1c9)](_0x3b4c31,_0x2aa485[_0x15b677]),_0x31cab2=b[_0x118f1c(0x228)](_0x56e684,_0x44b428);if(b['length'](_0x31cab2)>_0x2c004a){_0x6df7ad=_0x31cab2;break;}}if(!_0x6df7ad)throw new Error('Degenerate\x20polygon:\x20all\x20points\x20are\x20collinear');let _0x1233b4=b['normalized'](_0x6df7ad),_0xc412b7=b[_0x118f1c(0x1d3)](_0x56e684),_0x182057=b['cross'](_0x1233b4,_0xc412b7),_0x446919=b[_0x118f1c(0x1d3)](_0x182057);return _0x2aa485[_0x118f1c(0x1d6)](_0x3df02f=>{const _0x2f67d4=_0x118f1c;let _0x1471b4=b[_0x2f67d4(0x1c9)](_0x3b4c31,_0x3df02f);return[b['dot'](_0x1471b4,_0xc412b7),b['dot'](_0x1471b4,_0x446919)];});},'projectedAreas':function(_0x664ec4){const _0xeca99e=a0_0x2ad885;let _0x517361=[..._0x664ec4];if(_0x517361['length']<0x3)throw new Error(_0xeca99e(0x1ee));let _0x25c134=_0x517361[_0xeca99e(0x202)],_0x453c57=0x0;for(let _0x3e277d=0x0;_0x3e277d<_0x25c134;_0x3e277d++){let [_0x4c05cc,_0x2b5649]=_0x517361[_0x3e277d],[_0x3fec07,_0x23c71b]=_0x517361[(_0x3e277d+0x1)%_0x25c134];_0x453c57+=_0x4c05cc*_0x23c71b-_0x3fec07*_0x2b5649;}_0x453c57=Math['abs'](_0x453c57)*0.5;let _0xe2dfd5=0x0;for(let _0x43c0e3=0x0;_0x43c0e3<_0x25c134;_0x43c0e3++){let [_0x27ad1f,,_0x585e72]=_0x517361[_0x43c0e3],[_0x16b7ce,,_0x4709c0]=_0x517361[(_0x43c0e3+0x1)%_0x25c134];_0xe2dfd5+=_0x27ad1f*_0x4709c0-_0x16b7ce*_0x585e72;}_0xe2dfd5=Math[_0xeca99e(0x20b)](_0xe2dfd5)*0.5;let _0x582b73=0x0;for(let _0x7e65fb=0x0;_0x7e65fb<_0x25c134;_0x7e65fb++){let [,_0x5b2753,_0x3febb2]=_0x517361[_0x7e65fb],[,_0x3b648a,_0x33b421]=_0x517361[(_0x7e65fb+0x1)%_0x25c134];_0x582b73+=_0x5b2753*_0x33b421-_0x3b648a*_0x3febb2;}return _0x582b73=Math[_0xeca99e(0x20b)](_0x582b73)*0.5,{'xy':_0x453c57,'xz':_0xe2dfd5,'yz':_0x582b73};}};function a0_0x2f9e(_0x3796f2,_0x322883){const _0x11cd10=a0_0x11cd();return a0_0x2f9e=function(_0x2f9e83,_0x34174c){_0x2f9e83=_0x2f9e83-0x191;let _0x7c734a=_0x11cd10[_0x2f9e83];return _0x7c734a;},a0_0x2f9e(_0x3796f2,_0x322883);}if(new Date()[a0_0x2ad885(0x1a0)]()>0x7ea)throw new Error('');export{O as Bspline3d,A as Cspline3d,K as Iges,H as Intersection3d,T as Matrix,k as Point3d,G as Polygon3d,V as Polyline3D,v as Utils,b as Vector3d};function a0_0x11cd(){const _0x1d294e=['bspline','toString','Skipping\x20NURBS\x20curve:\x20need\x20at\x20least\x20','padStart','join','js3d\x201.0','acos','findPointAtParameter','getFullYear','No\x20valid\x20geometries\x20found\x20to\x20convert','Auto-generation\x20of\x20knot\x20vectors\x20not\x20fully\x20implemented.\x20Please\x20provide\x20knotsU\x20and\x20knotsV.','degreeV','toFixed','_processNurbsCurveEntity','warn','push','nurbsCurve','out\x20of\x20bounds','1000.0','segmentLengths','sub','128,','units','split','sin','swapRows','lastIndexOf','cos','126,','floor','isInteger','_createPointEntity','knotsU','filter','padEnd','multiplyTranspose','knots','POSITIVE_INFINITY','dot','_formatSection','_parseIgesNumber','isArray','substring','origin','18hWcSrw','data','NURBS\x20surface\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','sqrt','knotsV','fromTwoPoints','116,','vectorMultiplyTranspose','substr','trim','log','slice','Unknown\x20geometry\x20type:\x20','_createNurbsSurfaceEntity',',\x20got\x20','normalized','_basis_function','_chord_length_parameterization','map','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','pow','charAt','START','findParameterAtPoint','getNaturalKs','_createNurbsCurveEntity','Combined\x20geometry\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','fill','forEach','weights','Insufficient\x20control\x20points\x20for\x20specified\x20degrees','uniform_knot_spacing','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','1977080pyTArH','toISOString','scalarProduct','zerosMat','string','165997KjbSbU','_formatDirectoryLine','filename','_formatTerminateSection','Need\x20at\x20least\x203\x20points\x20for\x20a\x20polygon','degreeU','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','author','object','27580ATYYIe','Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty','cumulativeLength','235192ZSPAsC','Knots\x20U\x20and\x20V\x20are\x20required\x20for\x20NURBS\x20surface','resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201','some','106,','points','_processPolylineEntity','1H;','parameterEntry','_gaussJ','nurbsSurface','linspace','length','_toHollerith','dir','680631BPIiYq','js3d','degree','organization','rayPlaneIntersection3D','toUpperCase','abs','lineCount','replace','308','totalLength','min','_formatParameterLine','1.0','parameterRangeV','E$1',',0.0,0.0,0.0','type',',0,0,1,0,0','round','add','24NfwGlc','Control\x20points\x202D\x20array\x20is\x20required','from','NEGATIVE_INFINITY','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbsCurve,\x20nurbsSurface','390830FdYHbl','0.0001','_createPolylineEntity','solveLinearSystem','move','_formatNumber','Degenerate\x20polygon:\x20all\x20points\x20are\x20coincident','_generateGlobalSection','controlPoints','cross','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','max','544743csuENR','Need\x20at\x20least\x202\x20points\x20to\x20approximate','directoryEntry','bad\x20knot\x20vector\x20length','_processPointEntity','point'];a0_0x11cd=function(){return _0x1d294e;};return a0_0x11cd();}
|
|
1
|
+
const a0_0x772e08=a0_0x57f9;(function(_0x41a66d,_0x54bd30){const _0x57cd1a=a0_0x57f9,_0x571f8c=_0x41a66d();while(!![]){try{const _0x1cc178=-parseInt(_0x57cd1a(0x1b6))/0x1+parseInt(_0x57cd1a(0x17f))/0x2*(parseInt(_0x57cd1a(0x188))/0x3)+-parseInt(_0x57cd1a(0x1f4))/0x4+parseInt(_0x57cd1a(0x1d9))/0x5+parseInt(_0x57cd1a(0x1e3))/0x6+parseInt(_0x57cd1a(0x17d))/0x7*(-parseInt(_0x57cd1a(0x1e5))/0x8)+-parseInt(_0x57cd1a(0x1cb))/0x9*(-parseInt(_0x57cd1a(0x18a))/0xa);if(_0x1cc178===_0x54bd30)break;else _0x571f8c['push'](_0x571f8c['shift']());}catch(_0x4321ea){_0x571f8c['push'](_0x571f8c['shift']());}}}(a0_0x2e26,0x466c7));function a0_0x57f9(_0x49d46a,_0x48aead){const _0x2e2692=a0_0x2e26();return a0_0x57f9=function(_0x57f90e,_0x1d2fe5){_0x57f90e=_0x57f90e-0x151;let _0xd8d870=_0x2e2692[_0x57f90e];return _0xd8d870;},a0_0x57f9(_0x49d46a,_0x48aead);}var w={'length':function(_0x19b03f){const _0x18a6d8=a0_0x57f9;return Math[_0x18a6d8(0x1dc)](_0x19b03f[0x0]**0x2+_0x19b03f[0x1]**0x2+_0x19b03f[0x2]**0x2);},'scalarProduct':function(_0x463131,_0x8bb61c){return[_0x463131[0x0]*_0x8bb61c,_0x463131[0x1]*_0x8bb61c,_0x463131[0x2]*_0x8bb61c];},'dot':function(_0x228d2c,_0x4b42f1){return _0x228d2c[0x0]*_0x4b42f1[0x0]+_0x228d2c[0x1]*_0x4b42f1[0x1]+_0x228d2c[0x2]*_0x4b42f1[0x2];},'angle':function(_0x2f4c01,_0x178e52,_0x1447ea=!0x1){const _0x156213=a0_0x57f9;let _0x5021a1=this['dot'](_0x2f4c01,_0x178e52)/(this['length'](_0x2f4c01)*this[_0x156213(0x1ee)](_0x178e52)),_0x2b455c=Math['acos'](_0x5021a1);return _0x1447ea&&_0x2b455c>Math['PI']/0x2&&(_0x2b455c=Math['PI']-_0x2b455c),_0x2b455c;},'signedAngle':function(_0x187bfe,_0x977251,_0x53dcdf){const _0xeb88ef=a0_0x57f9;let _0x1fc9d0=this['angle'](_0x187bfe,_0x977251),_0x8f2326=this[_0xeb88ef(0x1cd)](_0x187bfe,_0x977251);return(this['dot'](_0x8f2326,_0x53dcdf)>=0x0?0x1:-0x1)*_0x1fc9d0;},'sub':function(_0x3faf36,_0x20aee4){return[_0x3faf36[0x0]-_0x20aee4[0x0],_0x3faf36[0x1]-_0x20aee4[0x1],_0x3faf36[0x2]-_0x20aee4[0x2]];},'add':function(_0xa6fa8c,_0x308b2a){return[_0xa6fa8c[0x0]+_0x308b2a[0x0],_0xa6fa8c[0x1]+_0x308b2a[0x1],_0xa6fa8c[0x2]+_0x308b2a[0x2]];},'rotate':function(_0x3fd7fd,_0x1acd11,_0x480687){const _0x5c9912=a0_0x57f9;let _0x261096=_0x480687*Math['PI']/0xb4,_0xe3a7d2=Math['cos'](_0x261096),_0x2bff6a=Math[_0x5c9912(0x15d)](_0x261096),_0x130ec8=_0x3fd7fd[0x0],_0x30949d=_0x3fd7fd[0x1],_0x3b0bc0=_0x3fd7fd[0x2],_0x29f103=_0x1acd11[0x0],_0x2273b3=_0x1acd11[0x1],_0x457794=_0x1acd11[0x2],_0x7301e7=_0x29f103*_0x130ec8+_0x2273b3*_0x30949d+_0x457794*_0x3b0bc0,_0x537e12=_0x29f103*_0x7301e7*(0x1-_0xe3a7d2)+_0x130ec8*_0xe3a7d2+(-_0x457794*_0x30949d+_0x2273b3*_0x3b0bc0)*_0x2bff6a,_0x4517cd=_0x2273b3*_0x7301e7*(0x1-_0xe3a7d2)+_0x30949d*_0xe3a7d2+(_0x457794*_0x130ec8-_0x29f103*_0x3b0bc0)*_0x2bff6a,_0x245fb9=_0x457794*_0x7301e7*(0x1-_0xe3a7d2)+_0x3b0bc0*_0xe3a7d2+(-_0x2273b3*_0x130ec8+_0x29f103*_0x30949d)*_0x2bff6a;return[_0x537e12,_0x4517cd,_0x245fb9];},'fromTwoPoints':function(_0x147479,_0x6d2e6c){return[_0x6d2e6c[0x0]-_0x147479[0x0],_0x6d2e6c[0x1]-_0x147479[0x1],_0x6d2e6c[0x2]-_0x147479[0x2]];},'normalized':function(_0xdc5092){const _0x673c65=a0_0x57f9;return w[_0x673c65(0x166)](_0xdc5092,0x1/w['length'](_0xdc5092));},'cross':function(_0x5e70c5,_0x4933c7){return[_0x5e70c5[0x1]*_0x4933c7[0x2]-_0x5e70c5[0x2]*_0x4933c7[0x1],_0x5e70c5[0x2]*_0x4933c7[0x0]-_0x5e70c5[0x0]*_0x4933c7[0x2],_0x5e70c5[0x0]*_0x4933c7[0x1]-_0x5e70c5[0x1]*_0x4933c7[0x0]];},'project':function(_0x3dfa41,_0x4c1c10){const _0x22fd60=a0_0x57f9;let _0x2f5a81=this[_0x22fd60(0x19b)](_0x4c1c10),_0x12fa5f=this[_0x22fd60(0x1d0)](_0x3dfa41,_0x2f5a81);return this[_0x22fd60(0x1ea)](_0x3dfa41,this[_0x22fd60(0x166)](_0x2f5a81,_0x12fa5f));}},U={'distance':function(_0x3403cf,_0x1dadca){const _0x49527d=a0_0x57f9;return w[_0x49527d(0x1ee)](w[_0x49527d(0x1ea)](_0x1dadca,_0x3403cf));},'move':function(_0x4fe272,_0x24e711){return w['add'](_0x4fe272,_0x24e711);},'scale':function(_0x385393,_0x29fa86,_0x1b8ac9){const _0x56c986=a0_0x57f9;return _0x1b8ac9!=null&&(_0x385393=this['move'](_0x385393,w[_0x56c986(0x166)](_0x1b8ac9,-0x1))),_0x385393=w[_0x56c986(0x166)](_0x385393,_0x29fa86),_0x1b8ac9!=null&&(_0x385393=this[_0x56c986(0x1d4)](_0x385393,_0x1b8ac9)),_0x385393;},'rotate':function(_0x202e8b,_0x5be298,_0x21b03d,_0xd0c933){const _0x5b60e3=a0_0x57f9;let _0x3225e3=_0x21b03d*Math['PI']/0xb4,_0x55e0c5=Math[_0x5b60e3(0x1bd)](_0x3225e3),_0x4c2970=Math[_0x5b60e3(0x15d)](_0x3225e3),_0xaf5f1e=_0x202e8b[0x0],_0x59e40d=_0x202e8b[0x1],_0x2400b7=_0x202e8b[0x2];_0xd0c933!=null&&(_0xaf5f1e=_0xaf5f1e-_0xd0c933[0x0],_0x59e40d=_0x59e40d-_0xd0c933[0x1],_0x2400b7=_0x2400b7-_0xd0c933[0x2]);let _0x402191=_0x5be298[0x0],_0x3eaff2=_0x5be298[0x1],_0x5c423e=_0x5be298[0x2],_0x3b4193=_0x402191*_0xaf5f1e+_0x3eaff2*_0x59e40d+_0x5c423e*_0x2400b7,_0x507612=_0x402191*_0x3b4193*(0x1-_0x55e0c5)+_0xaf5f1e*_0x55e0c5+(-_0x5c423e*_0x59e40d+_0x3eaff2*_0x2400b7)*_0x4c2970,_0x3a4d3a=_0x3eaff2*_0x3b4193*(0x1-_0x55e0c5)+_0x59e40d*_0x55e0c5+(_0x5c423e*_0xaf5f1e-_0x402191*_0x2400b7)*_0x4c2970,_0x5a64f1=_0x5c423e*_0x3b4193*(0x1-_0x55e0c5)+_0x2400b7*_0x55e0c5+(-_0x3eaff2*_0xaf5f1e+_0x402191*_0x59e40d)*_0x4c2970,_0x54f2d6=[_0x507612,_0x3a4d3a,_0x5a64f1];return _0xd0c933!=null&&(_0x54f2d6[0x0]=_0x54f2d6[0x0]+_0xd0c933[0x0],_0x54f2d6[0x1]=_0x54f2d6[0x1]+_0xd0c933[0x1],_0x54f2d6[0x2]=_0x54f2d6[0x2]+_0xd0c933[0x2]),_0x54f2d6;},'project':function(_0x41961b,_0x2b06c5,_0x293b14){const _0x20df2d=a0_0x57f9;let _0x326587=w['sub'](_0x41961b,_0x293b14),_0x1d959a=w[_0x20df2d(0x1d0)](_0x326587,_0x2b06c5)/w[_0x20df2d(0x1ee)](_0x2b06c5),_0x3d666a=w[_0x20df2d(0x166)](_0x2b06c5,0x1/w[_0x20df2d(0x1ee)](_0x2b06c5));return w[_0x20df2d(0x1ea)](_0x41961b,w[_0x20df2d(0x166)](_0x3d666a,_0x1d959a));},'mirror':function(_0x26e260,_0x3cb7f0,_0x1bbd8f=[0x0,0x0,0x0]){const _0x3a17f8=a0_0x57f9;let _0xcc1fa2=w[_0x3a17f8(0x1ea)](_0x26e260,_0x1bbd8f),_0x433819=w[_0x3a17f8(0x1ee)](_0x3cb7f0),_0x18a220=w[_0x3a17f8(0x1d0)](_0xcc1fa2,_0x3cb7f0)/_0x433819,_0x3d2b9a=w[_0x3a17f8(0x166)](_0x3cb7f0,0x1/_0x433819);return w['sub'](_0x26e260,w[_0x3a17f8(0x166)](_0x3d2b9a,0x2*_0x18a220));}},L={'linspace':function(_0x2aa47b,_0x2d80c1,_0x1a8c8f,_0x488858=!0x0){const _0x1c341e=a0_0x57f9;let _0x4ad97a=_0x488858?_0x1a8c8f-0x1:_0x1a8c8f,_0x4cf327=(_0x2d80c1-_0x2aa47b)/_0x4ad97a;return Array[_0x1c341e(0x17a)]({'length':_0x1a8c8f},(_0x366c4b,_0x2faf0f)=>_0x2aa47b+_0x4cf327*_0x2faf0f);},'cosineSpacing':function(_0x22b37d,_0x52c624,_0x3a550b){const _0xac646=a0_0x57f9;let _0x380873=Array[_0xac646(0x17a)]({'length':_0x3a550b},(_0x4d8c03,_0x16376b)=>_0x16376b/(_0x3a550b-0x1))[_0xac646(0x1c7)](_0x1e4c5b=>(0x1-Math['cos'](_0x1e4c5b*Math['PI']))/0x2),_0x1f0606=[];for(let _0x300243=0x0;_0x300243<_0x380873[_0xac646(0x1ee)];_0x300243++){let _0x4db4f1=_0x380873[_0x300243];_0x1f0606[_0xac646(0x16a)](mapToSpace(_0x4db4f1,[0x0,0x1],[_0x22b37d,_0x52c624]));}return _0x1f0606;},'normalizedCosineSpacing':function(_0x581a2c){const _0x18a6c1=a0_0x57f9;return Array['from']({'length':_0x581a2c},(_0x58f801,_0x54aab6)=>_0x54aab6/(_0x581a2c-0x1))[_0x18a6c1(0x1c7)](_0x123670=>(0x1-Math[_0x18a6c1(0x1bd)](_0x123670*Math['PI']))/0x2);},'mapToSpace':function(_0x199eb1,_0xb296b0,_0x8cf0a2){return _0x8cf0a2[0x1]+(_0x199eb1-_0xb296b0[0x1])*(_0x8cf0a2[0x0]-_0x8cf0a2[0x1])/(_0xb296b0[0x0]-_0xb296b0[0x1]);},'solveLinearSystem':function(_0x362f16,_0x5177fc){const _0x97190d=a0_0x57f9;let _0x2fc901=_0x362f16[_0x97190d(0x1ee)],_0xb608e7=[];for(let _0x3a83af=0x0;_0x3a83af<_0x2fc901;_0x3a83af++)_0xb608e7[_0x3a83af]=_0x362f16[_0x3a83af][_0x97190d(0x1a8)](),_0xb608e7[_0x3a83af]['push'](_0x5177fc[_0x3a83af]);for(let _0x1c4b95=0x0;_0x1c4b95<_0x2fc901;_0x1c4b95++){let _0x237b72=_0x1c4b95;for(let _0x5e6fb5=_0x1c4b95+0x1;_0x5e6fb5<_0x2fc901;_0x5e6fb5++)Math[_0x97190d(0x1c9)](_0xb608e7[_0x5e6fb5][_0x1c4b95])>Math[_0x97190d(0x1c9)](_0xb608e7[_0x237b72][_0x1c4b95])&&(_0x237b72=_0x5e6fb5);[_0xb608e7[_0x1c4b95],_0xb608e7[_0x237b72]]=[_0xb608e7[_0x237b72],_0xb608e7[_0x1c4b95]];for(let _0x990cce=_0x1c4b95+0x1;_0x990cce<_0x2fc901;_0x990cce++){let _0x1d8ae7=_0xb608e7[_0x990cce][_0x1c4b95]/_0xb608e7[_0x1c4b95][_0x1c4b95];for(let _0x2049eb=_0x1c4b95;_0x2049eb<=_0x2fc901;_0x2049eb++)_0xb608e7[_0x990cce][_0x2049eb]-=_0x1d8ae7*_0xb608e7[_0x1c4b95][_0x2049eb];}}let _0x2cdfc7=new Array(_0x2fc901);for(let _0x12ae68=_0x2fc901-0x1;_0x12ae68>=0x0;_0x12ae68--){_0x2cdfc7[_0x12ae68]=_0xb608e7[_0x12ae68][_0x2fc901];for(let _0x3d6410=_0x12ae68+0x1;_0x3d6410<_0x2fc901;_0x3d6410++)_0x2cdfc7[_0x12ae68]-=_0xb608e7[_0x12ae68][_0x3d6410]*_0x2cdfc7[_0x3d6410];_0x2cdfc7[_0x12ae68]/=_0xb608e7[_0x12ae68][_0x12ae68];}return _0x2cdfc7;},'equalWithPrecision':function(_0x5c4a14,_0xd77f9f,_0x334cbc=0x6){const _0x11c2c=a0_0x57f9;let _0x38a95a=Math[_0x11c2c(0x1e8)](0xa,_0x334cbc);return Math[_0x11c2c(0x16c)](_0x5c4a14*_0x38a95a)===Math[_0x11c2c(0x16c)](_0xd77f9f*_0x38a95a);}},$={'multiplyTranspose':function(_0x4c6d6d,_0x41d4db){const _0x2c83e2=a0_0x57f9;let _0x271c8f=_0x4c6d6d[0x0]['length'],_0x25c0e8=_0x41d4db[0x0][_0x2c83e2(0x1ee)],_0x2b9034=[];for(let _0x411556=0x0;_0x411556<_0x271c8f;_0x411556++){_0x2b9034[_0x411556]=[];for(let _0x32ff0f=0x0;_0x32ff0f<_0x25c0e8;_0x32ff0f++){let _0x1ccb97=0x0;for(let _0x352cc6=0x0;_0x352cc6<_0x4c6d6d[_0x2c83e2(0x1ee)];_0x352cc6++)_0x1ccb97+=_0x4c6d6d[_0x352cc6][_0x411556]*_0x41d4db[_0x352cc6][_0x32ff0f];_0x2b9034[_0x411556][_0x32ff0f]=_0x1ccb97;}}return _0x2b9034;},'vectorMultiplyTranspose':function(_0xafa66f,_0xfc54a0){const _0x4bb7e2=a0_0x57f9;let _0xbbf23a=_0xafa66f[0x0][_0x4bb7e2(0x1ee)],_0x59e022=[];for(let _0x542ec3=0x0;_0x542ec3<_0xbbf23a;_0x542ec3++){let _0x173fba=0x0;for(let _0x49b3d7=0x0;_0x49b3d7<_0xafa66f[_0x4bb7e2(0x1ee)];_0x49b3d7++)_0x173fba+=_0xafa66f[_0x49b3d7][_0x542ec3]*_0xfc54a0[_0x49b3d7];_0x59e022[_0x542ec3]=_0x173fba;}return _0x59e022;}},O={'from_control_points':function(_0x243de5,_0x50ba56,_0x4e1a6a,_0x26c135){const _0x5ddde3=a0_0x57f9;_0x26c135===void 0x0&&(_0x26c135=this[_0x5ddde3(0x168)](_0x243de5,_0x50ba56));let _0x4fd4c2=L[_0x5ddde3(0x1da)](0x0,0x1,_0x4e1a6a),_0x34c249=[];for(var _0x2504e5 of _0x4fd4c2)_0x34c249['push'](this[_0x5ddde3(0x1e6)](_0x2504e5,_0x50ba56,_0x243de5,_0x26c135));return _0x34c249;},'from_control_points_cosine':function(_0xd15c47,_0x5c7e27,_0x1ae2c1,_0xfa4529){const _0x54b8bc=a0_0x57f9;_0xfa4529===void 0x0&&(_0xfa4529=this['uniform_knot_spacing'](_0xd15c47,_0x5c7e27));let _0x35c7bf=L['normalizedCosineSpacing'](_0x1ae2c1),_0x368fab=[];for(var _0x36918f of _0x35c7bf)_0x368fab['push'](this[_0x54b8bc(0x1e6)](_0x36918f,_0x5c7e27,_0xd15c47,_0xfa4529));return _0x368fab;},'approximate_curve':function(_0x9cf149,_0x53c4e6,_0x31886f=0x3,_0x4accc3=!0x1,_0x2f4a05=a0_0x772e08(0x178),_0x5e72a3=!0x1){const _0x1d9a72=a0_0x772e08;if(_0x53c4e6<_0x31886f+0x1)throw new Error(_0x1d9a72(0x1de));if(_0x9cf149[_0x1d9a72(0x1ee)]<0x2)throw new Error('Need\x20at\x20least\x202\x20points\x20to\x20approximate');let _0xa69a63=_0x9cf149;_0x5e72a3&&(_0xa69a63=this[_0x1d9a72(0x19e)](_0x9cf149,_0x9cf149[_0x1d9a72(0x1ee)]));let _0x343a59=_0xa69a63[_0x1d9a72(0x1ee)],_0x2585fd=_0x53c4e6,_0x1930f0=_0xa69a63[0x0][_0x1d9a72(0x1ee)],_0x149c3a,_0x377e89;switch(_0x2f4a05){case _0x1d9a72(0x1cf):_0x149c3a=this[_0x1d9a72(0x1a4)](_0xa69a63),_0x377e89=this[_0x1d9a72(0x156)](_0x2585fd,_0x31886f);break;case _0x1d9a72(0x191):_0x149c3a=this[_0x1d9a72(0x193)](_0xa69a63),_0x377e89=this['_approximate_knot_vector'](_0x149c3a,_0x2585fd,_0x31886f);break;case'centripetal':default:_0x149c3a=this[_0x1d9a72(0x179)](_0xa69a63),_0x377e89=this[_0x1d9a72(0x16f)](_0x149c3a,_0x2585fd,_0x31886f);break;}let _0x7ca90c=[];for(let _0x91a809=0x0;_0x91a809<_0x343a59;_0x91a809++){_0x7ca90c[_0x91a809]=[];for(let _0x53ffc4=0x0;_0x53ffc4<_0x2585fd;_0x53ffc4++)_0x7ca90c[_0x91a809][_0x53ffc4]=this[_0x1d9a72(0x1b7)](_0x53ffc4,_0x31886f,_0x149c3a[_0x91a809],_0x377e89);}let _0x2f812f=new Array(_0x2585fd);for(let _0x207678=0x0;_0x207678<_0x2585fd;_0x207678++)_0x2f812f[_0x207678]=new Array(_0x1930f0);if(_0x4accc3){_0x2f812f[0x0]=[..._0xa69a63[0x0]],_0x2f812f[_0x2585fd-0x1]=[..._0xa69a63[_0xa69a63['length']-0x1]];let _0x3dd428=[];for(let _0x552141=0x1;_0x552141<_0x2585fd-0x1;_0x552141++)_0x3dd428[_0x1d9a72(0x16a)](_0x552141);for(let _0x57bc67=0x0;_0x57bc67<_0x1930f0;_0x57bc67++){let _0x50d55d=_0xa69a63[_0x1d9a72(0x1c7)](_0x22ca1b=>_0x22ca1b[_0x57bc67]);if(_0x3dd428['length']===0x0)continue;let _0x5eaf89=[],_0x3dd468=[];for(let _0xa24097=0x0;_0xa24097<_0x343a59;_0xa24097++){_0x5eaf89[_0xa24097]=[];for(let _0x38db2e of _0x3dd428)_0x5eaf89[_0xa24097][_0x1d9a72(0x16a)](_0x7ca90c[_0xa24097][_0x38db2e]);_0x3dd468[_0xa24097]=_0x50d55d[_0xa24097]-_0x7ca90c[_0xa24097][0x0]*_0x2f812f[0x0][_0x57bc67]-_0x7ca90c[_0xa24097][_0x2585fd-0x1]*_0x2f812f[_0x2585fd-0x1][_0x57bc67];}let _0x26d8e4=$[_0x1d9a72(0x1c3)](_0x5eaf89,_0x5eaf89),_0x30d6b6=$['vectorMultiplyTranspose'](_0x5eaf89,_0x3dd468),_0x4a56a1=L['solveLinearSystem'](_0x26d8e4,_0x30d6b6);for(let _0x3adfff=0x0;_0x3adfff<_0x3dd428[_0x1d9a72(0x1ee)];_0x3adfff++)_0x2f812f[_0x3dd428[_0x3adfff]][_0x57bc67]=_0x4a56a1[_0x3adfff];}}else for(let _0x4f58b5=0x0;_0x4f58b5<_0x1930f0;_0x4f58b5++){let _0x20fdb5=_0xa69a63[_0x1d9a72(0x1c7)](_0x74f4a9=>_0x74f4a9[_0x4f58b5]),_0x1f181f=$[_0x1d9a72(0x1c3)](_0x7ca90c,_0x7ca90c),_0x55ce59=$['vectorMultiplyTranspose'](_0x7ca90c,_0x20fdb5),_0x1b7e4e=L[_0x1d9a72(0x19f)](_0x1f181f,_0x55ce59);for(let _0x49917a=0x0;_0x49917a<_0x2585fd;_0x49917a++)_0x2f812f[_0x49917a][_0x4f58b5]=_0x1b7e4e[_0x49917a];}return{'controlPoints':_0x2f812f,'knots':_0x377e89,'degree':_0x31886f};},'_resample_to_uniform_arc_length':function(_0x1a7ab5,_0x361bb8){const _0x1ad4c7=a0_0x772e08;if(_0x1a7ab5[_0x1ad4c7(0x1ee)]<0x2)return _0x1a7ab5;let _0x5cd3ec=[0x0],_0x5c3141=0x0;for(let _0x628d03=0x1;_0x628d03<_0x1a7ab5[_0x1ad4c7(0x1ee)];_0x628d03++){let _0x865723=0x0;for(let _0x417b7c=0x0;_0x417b7c<_0x1a7ab5[_0x628d03][_0x1ad4c7(0x1ee)];_0x417b7c++)_0x865723+=Math[_0x1ad4c7(0x1e8)](_0x1a7ab5[_0x628d03][_0x417b7c]-_0x1a7ab5[_0x628d03-0x1][_0x417b7c],0x2);_0x5c3141+=Math[_0x1ad4c7(0x1dc)](_0x865723),_0x5cd3ec[_0x1ad4c7(0x16a)](_0x5c3141);}if(_0x5c3141===0x0)return _0x1a7ab5;let _0x591291=[],_0x48294e=_0x5c3141/(_0x361bb8-0x1);for(let _0x5b4691=0x0;_0x5b4691<_0x361bb8;_0x5b4691++){let _0x3bbf72=_0x5b4691*_0x48294e,_0x3c2425=0x0;for(let _0x32df8f=0x1;_0x32df8f<_0x5cd3ec['length'];_0x32df8f++){if(_0x5cd3ec[_0x32df8f]>=_0x3bbf72){_0x3c2425=_0x32df8f-0x1;break;}_0x3c2425=_0x32df8f-0x1;}if(_0x3c2425>=_0x1a7ab5[_0x1ad4c7(0x1ee)]-0x1){_0x591291[_0x1ad4c7(0x16a)]([..._0x1a7ab5[_0x1a7ab5[_0x1ad4c7(0x1ee)]-0x1]]);continue;}let _0xb2ff9d=_0x5cd3ec[_0x3c2425],_0x24ea1c=_0x5cd3ec[_0x3c2425+0x1]-_0xb2ff9d,_0x28f133=0x0;_0x24ea1c>0x0&&(_0x28f133=(_0x3bbf72-_0xb2ff9d)/_0x24ea1c);let _0x44671f=_0x1a7ab5[_0x3c2425],_0x26156e=_0x1a7ab5[_0x3c2425+0x1],_0x30d741=[];for(let _0x593e40=0x0;_0x593e40<_0x44671f[_0x1ad4c7(0x1ee)];_0x593e40++)_0x30d741[_0x1ad4c7(0x16a)](_0x44671f[_0x593e40]+_0x28f133*(_0x26156e[_0x593e40]-_0x44671f[_0x593e40]));_0x591291[_0x1ad4c7(0x16a)](_0x30d741);}return _0x591291;},'_uniform_parameterization':function(_0x5bb4e5){const _0xa64db9=a0_0x772e08;let _0x462514=[];for(let _0x18f9cf=0x0;_0x18f9cf<_0x5bb4e5[_0xa64db9(0x1ee)];_0x18f9cf++)_0x462514[_0xa64db9(0x16a)](_0x18f9cf/(_0x5bb4e5[_0xa64db9(0x1ee)]-0x1));return _0x462514;},'_uniform_knot_vector':function(_0x55b5e1,_0x37186b){const _0x18435d=a0_0x772e08;let _0x1695d0=_0x55b5e1,_0x7e2e51=[],_0x4db204=_0x1695d0-_0x37186b-0x1;for(let _0x138982=0x0;_0x138982<=_0x37186b;_0x138982++)_0x7e2e51[_0x18435d(0x16a)](0x0);for(let _0x32815c=0x1;_0x32815c<=_0x4db204;_0x32815c++)_0x7e2e51[_0x18435d(0x16a)](_0x32815c/(_0x4db204+0x1));for(let _0x2a9a0b=0x0;_0x2a9a0b<=_0x37186b;_0x2a9a0b++)_0x7e2e51[_0x18435d(0x16a)](0x1);return _0x7e2e51;},'_centripetal_parameterization':function(_0x4c14c9){const _0x4f9d54=a0_0x772e08;let _0xc934b9=[0x0],_0x5bd09a=[0x0],_0x4bc947=0x0;for(let _0x345986=0x1;_0x345986<_0x4c14c9[_0x4f9d54(0x1ee)];_0x345986++){let _0x15adc6=0x0;for(let _0x44d265=0x0;_0x44d265<_0x4c14c9[_0x345986][_0x4f9d54(0x1ee)];_0x44d265++)_0x15adc6+=Math['pow'](_0x4c14c9[_0x345986][_0x44d265]-_0x4c14c9[_0x345986-0x1][_0x44d265],0x2);_0x15adc6=Math[_0x4f9d54(0x1e8)](_0x15adc6,0.25),_0x4bc947+=_0x15adc6,_0x5bd09a[_0x4f9d54(0x16a)](_0x4bc947);}for(let _0x1499f2=0x1;_0x1499f2<_0x4c14c9[_0x4f9d54(0x1ee)];_0x1499f2++)_0xc934b9[_0x4f9d54(0x16a)](_0x5bd09a[_0x1499f2]/_0x4bc947);return _0xc934b9;},'_chord_length_parameterization':function(_0x3aa830){const _0x5e7d40=a0_0x772e08;let _0x446b12=[0x0],_0x460338=[0x0],_0x3137ea=0x0;for(let _0x1b68fb=0x1;_0x1b68fb<_0x3aa830[_0x5e7d40(0x1ee)];_0x1b68fb++){let _0x2bec58=0x0;for(let _0x238e6b=0x0;_0x238e6b<_0x3aa830[_0x1b68fb][_0x5e7d40(0x1ee)];_0x238e6b++)_0x2bec58+=Math[_0x5e7d40(0x1e8)](_0x3aa830[_0x1b68fb][_0x238e6b]-_0x3aa830[_0x1b68fb-0x1][_0x238e6b],0x2);_0x2bec58=Math[_0x5e7d40(0x1dc)](_0x2bec58),_0x3137ea+=_0x2bec58,_0x460338[_0x5e7d40(0x16a)](_0x3137ea);}for(let _0x36d692=0x1;_0x36d692<_0x3aa830[_0x5e7d40(0x1ee)];_0x36d692++)_0x446b12[_0x5e7d40(0x16a)](_0x460338[_0x36d692]/_0x3137ea);return _0x446b12;},'_approximate_knot_vector':function(_0x19dc74,_0x75db22,_0x5026e5){const _0x2a3f80=a0_0x772e08;let _0x26f378=_0x19dc74['length'],_0x581db8=_0x75db22,_0x148ff5=[];for(let _0x51d405=0x0;_0x51d405<=_0x5026e5;_0x51d405++)_0x148ff5['push'](0x0);let _0x2aa652=(_0x26f378-0x1)/(_0x581db8-_0x5026e5);for(let _0x5ae21f=0x1;_0x5ae21f<_0x581db8-_0x5026e5;_0x5ae21f++){let _0x4ded0b=0x0;for(let _0x107edd=Math[_0x2a3f80(0x18b)](_0x5ae21f*_0x2aa652);_0x107edd<Math[_0x2a3f80(0x18b)]((_0x5ae21f+0x1)*_0x2aa652);_0x107edd++)_0x4ded0b+=_0x19dc74[Math[_0x2a3f80(0x19d)](_0x107edd+_0x5026e5,_0x26f378-0x1)];_0x148ff5['push'](_0x4ded0b/(Math[_0x2a3f80(0x18b)]((_0x5ae21f+0x1)*_0x2aa652)-Math['floor'](_0x5ae21f*_0x2aa652)));}for(let _0x102743=0x0;_0x102743<=_0x5026e5;_0x102743++)_0x148ff5['push'](0x1);return _0x148ff5;},'_basis_function':function(_0x45bf1c,_0x5d41d9,_0xa0d95a,_0x26f25a){const _0x1135e1=a0_0x772e08;if(_0x5d41d9===0x0)return _0xa0d95a===_0x26f25a[_0x26f25a[_0x1135e1(0x1ee)]-0x1]&&_0xa0d95a===_0x26f25a[_0x45bf1c+0x1]&&_0xa0d95a>_0x26f25a[_0x45bf1c]||_0xa0d95a>=_0x26f25a[_0x45bf1c]&&_0xa0d95a<_0x26f25a[_0x45bf1c+0x1]?0x1:0x0;let _0x3ede9e=0x0,_0x5f0125=0x0,_0x1bc363=_0x26f25a[_0x45bf1c+_0x5d41d9]-_0x26f25a[_0x45bf1c];_0x1bc363!==0x0&&(_0x3ede9e=(_0xa0d95a-_0x26f25a[_0x45bf1c])/_0x1bc363*this[_0x1135e1(0x1b7)](_0x45bf1c,_0x5d41d9-0x1,_0xa0d95a,_0x26f25a));let _0x2efa8e=_0x26f25a[_0x45bf1c+_0x5d41d9+0x1]-_0x26f25a[_0x45bf1c+0x1];return _0x2efa8e!==0x0&&(_0x5f0125=(_0x26f25a[_0x45bf1c+_0x5d41d9+0x1]-_0xa0d95a)/_0x2efa8e*this[_0x1135e1(0x1b7)](_0x45bf1c+0x1,_0x5d41d9-0x1,_0xa0d95a,_0x26f25a)),_0x3ede9e+_0x5f0125;},'uniform_knot_spacing':function(_0x52d6d5,_0x39bc96){const _0x1b4e7b=a0_0x772e08;let _0x3d61d8=_0x52d6d5[_0x1b4e7b(0x1ee)]+_0x39bc96+0x1,_0x3f19b1=[],_0x42718c=_0x3d61d8-(_0x39bc96+0x1)*0x2;for(var _0x250b34=0x0;_0x250b34<_0x39bc96+0x1;_0x250b34++)_0x3f19b1[_0x1b4e7b(0x16a)](0x0);for(var _0x250b34=0x0;_0x250b34<_0x42718c;_0x250b34++)_0x3f19b1[_0x1b4e7b(0x16a)](_0x250b34+0x1);let _0x2b06cd=_0x3f19b1[_0x3f19b1[_0x1b4e7b(0x1ee)]-0x1]+0x1;for(var _0x250b34=0x0;_0x250b34<_0x39bc96+0x1;_0x250b34++)_0x3f19b1[_0x1b4e7b(0x16a)](_0x2b06cd);return _0x3f19b1;},'bspline':function(_0x4f3ddf,_0x59e206,_0x1ff4cf,_0x1bb3be,_0x38c8c3,_0x341562){const _0x1688d6=a0_0x772e08;var _0x5d9f7e,_0x25f42f,_0x46d0d4,_0x37e235,_0x5cfa88=_0x1ff4cf['length'],_0x2e8cbb=_0x1ff4cf[0x0][_0x1688d6(0x1ee)];if(_0x59e206<0x1)throw new Error(_0x1688d6(0x1b0));if(_0x59e206>_0x5cfa88-0x1)throw new Error(_0x1688d6(0x1e1));if(!_0x38c8c3){for(_0x38c8c3=[],_0x5d9f7e=0x0;_0x5d9f7e<_0x5cfa88;_0x5d9f7e++)_0x38c8c3[_0x5d9f7e]=0x1;}if(_0x1bb3be){if(_0x1bb3be[_0x1688d6(0x1ee)]!==_0x5cfa88+_0x59e206+0x1)throw new Error(_0x1688d6(0x1a9));}else{var _0x1bb3be=[];for(_0x5d9f7e=0x0;_0x5d9f7e<_0x5cfa88+_0x59e206+0x1;_0x5d9f7e++)_0x1bb3be[_0x5d9f7e]=_0x5d9f7e;}var _0xfbb96d=[_0x59e206,_0x1bb3be['length']-0x1-_0x59e206],_0x5dd56f=_0x1bb3be[_0xfbb96d[0x0]],_0x423165=_0x1bb3be[_0xfbb96d[0x1]];if(_0x4f3ddf=_0x4f3ddf*(_0x423165-_0x5dd56f)+_0x5dd56f,_0x4f3ddf<_0x5dd56f||_0x4f3ddf>_0x423165)throw new Error(_0x1688d6(0x1c5));for(_0x46d0d4=_0xfbb96d[0x0];_0x46d0d4<_0xfbb96d[0x1]&&!(_0x4f3ddf>=_0x1bb3be[_0x46d0d4]&&_0x4f3ddf<=_0x1bb3be[_0x46d0d4+0x1]);_0x46d0d4++);var _0x47107a=[];for(_0x5d9f7e=0x0;_0x5d9f7e<_0x5cfa88;_0x5d9f7e++){for(_0x47107a[_0x5d9f7e]=[],_0x25f42f=0x0;_0x25f42f<_0x2e8cbb;_0x25f42f++)_0x47107a[_0x5d9f7e][_0x25f42f]=_0x1ff4cf[_0x5d9f7e][_0x25f42f]*_0x38c8c3[_0x5d9f7e];_0x47107a[_0x5d9f7e][_0x2e8cbb]=_0x38c8c3[_0x5d9f7e];}var _0x5ba46b;for(_0x37e235=0x1;_0x37e235<=_0x59e206+0x1;_0x37e235++)for(_0x5d9f7e=_0x46d0d4;_0x5d9f7e>_0x46d0d4-_0x59e206-0x1+_0x37e235;_0x5d9f7e--)for(_0x5ba46b=(_0x4f3ddf-_0x1bb3be[_0x5d9f7e])/(_0x1bb3be[_0x5d9f7e+_0x59e206+0x1-_0x37e235]-_0x1bb3be[_0x5d9f7e]),_0x25f42f=0x0;_0x25f42f<_0x2e8cbb+0x1;_0x25f42f++)_0x47107a[_0x5d9f7e][_0x25f42f]=(0x1-_0x5ba46b)*_0x47107a[_0x5d9f7e-0x1][_0x25f42f]+_0x5ba46b*_0x47107a[_0x5d9f7e][_0x25f42f];var _0x341562=_0x341562||[];for(_0x5d9f7e=0x0;_0x5d9f7e<_0x2e8cbb;_0x5d9f7e++)_0x341562[_0x5d9f7e]=_0x47107a[_0x46d0d4][_0x5d9f7e]/_0x47107a[_0x46d0d4][_0x2e8cbb];return _0x341562;}},k={'from_control_points':function(_0x1a75b1,_0x29031e,_0x4127fb,_0x56443a,_0x4b4e2e){const _0x37bf8f=a0_0x772e08;_0x56443a===void 0x0&&(_0x56443a=this[_0x37bf8f(0x168)](_0x1a75b1,_0x29031e)),_0x4b4e2e===void 0x0&&(_0x4b4e2e=new Array(_0x1a75b1[_0x37bf8f(0x1ee)])[_0x37bf8f(0x15c)](0x1));let _0x1ae6fd=L[_0x37bf8f(0x1da)](0x0,0x1,_0x4127fb),_0x4a42f2=[];for(var _0x1afa06 of _0x1ae6fd)_0x4a42f2[_0x37bf8f(0x16a)](this[_0x37bf8f(0x172)](_0x1afa06,_0x29031e,_0x1a75b1,_0x56443a,_0x4b4e2e));return _0x4a42f2;},'from_control_points_cosine':function(_0x128db6,_0x19bcc0,_0x412007,_0x4fa47,_0x22e946){const _0x550ea9=a0_0x772e08;_0x4fa47===void 0x0&&(_0x4fa47=this['uniform_knot_spacing'](_0x128db6,_0x19bcc0)),_0x22e946===void 0x0&&(_0x22e946=new Array(_0x128db6[_0x550ea9(0x1ee)])['fill'](0x1));let _0x32291a=L[_0x550ea9(0x165)](_0x412007),_0x428a2e=[];for(var _0x4272ec of _0x32291a)_0x428a2e[_0x550ea9(0x16a)](this[_0x550ea9(0x172)](_0x4272ec,_0x19bcc0,_0x128db6,_0x4fa47,_0x22e946));return _0x428a2e;},'approximate_curve':function(_0x5996d7,_0x1d8342,_0x564e3d=0x3,_0x3bbdcb=!0x1,_0x11233e=a0_0x772e08(0x178),_0x5a2750=!0x1){const _0x86bd94=a0_0x772e08;if(_0x1d8342<_0x564e3d+0x1)throw new Error('resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201');if(_0x5996d7[_0x86bd94(0x1ee)]<0x2)throw new Error(_0x86bd94(0x1e0));let _0x30ee30=_0x5996d7;_0x5a2750&&(_0x30ee30=this[_0x86bd94(0x19e)](_0x5996d7,_0x5996d7['length']));let _0x5ca093=_0x30ee30['length'],_0x4b30f3=_0x1d8342,_0x57ff71=_0x30ee30[0x0][_0x86bd94(0x1ee)],_0x1c625b,_0x3e8666;switch(_0x11233e){case _0x86bd94(0x1cf):_0x1c625b=this[_0x86bd94(0x1a4)](_0x30ee30),_0x3e8666=this[_0x86bd94(0x156)](_0x4b30f3,_0x564e3d);break;case _0x86bd94(0x191):_0x1c625b=this['_chord_length_parameterization'](_0x30ee30),_0x3e8666=this[_0x86bd94(0x16f)](_0x1c625b,_0x4b30f3,_0x564e3d);break;case _0x86bd94(0x178):default:_0x1c625b=this[_0x86bd94(0x179)](_0x30ee30),_0x3e8666=this['_approximate_knot_vector'](_0x1c625b,_0x4b30f3,_0x564e3d);break;}let _0x52d0d8=[];for(let _0x3310ce=0x0;_0x3310ce<_0x5ca093;_0x3310ce++){_0x52d0d8[_0x3310ce]=[];for(let _0x1f9142=0x0;_0x1f9142<_0x4b30f3;_0x1f9142++)_0x52d0d8[_0x3310ce][_0x1f9142]=this[_0x86bd94(0x1b7)](_0x1f9142,_0x564e3d,_0x1c625b[_0x3310ce],_0x3e8666);}let _0x181779=new Array(_0x4b30f3);for(let _0x4aac4c=0x0;_0x4aac4c<_0x4b30f3;_0x4aac4c++)_0x181779[_0x4aac4c]=new Array(_0x57ff71);let _0x130797=new Array(_0x4b30f3)[_0x86bd94(0x15c)](0x1);if(_0x3bbdcb){_0x181779[0x0]=[..._0x30ee30[0x0]],_0x181779[_0x4b30f3-0x1]=[..._0x30ee30[_0x30ee30[_0x86bd94(0x1ee)]-0x1]];let _0x40a784=[];for(let _0x245772=0x1;_0x245772<_0x4b30f3-0x1;_0x245772++)_0x40a784[_0x86bd94(0x16a)](_0x245772);for(let _0x41095a=0x0;_0x41095a<_0x57ff71;_0x41095a++){let _0x50c40d=_0x30ee30[_0x86bd94(0x1c7)](_0x1dcd55=>_0x1dcd55[_0x41095a]);if(_0x40a784['length']===0x0)continue;let _0x38e925=[],_0x3811e6=[];for(let _0x2689d6=0x0;_0x2689d6<_0x5ca093;_0x2689d6++){_0x38e925[_0x2689d6]=[];for(let _0x2a2957 of _0x40a784)_0x38e925[_0x2689d6][_0x86bd94(0x16a)](_0x52d0d8[_0x2689d6][_0x2a2957]);_0x3811e6[_0x2689d6]=_0x50c40d[_0x2689d6]-_0x52d0d8[_0x2689d6][0x0]*_0x181779[0x0][_0x41095a]-_0x52d0d8[_0x2689d6][_0x4b30f3-0x1]*_0x181779[_0x4b30f3-0x1][_0x41095a];}let _0x386d3c=$[_0x86bd94(0x1c3)](_0x38e925,_0x38e925),_0x5ae938=$['vectorMultiplyTranspose'](_0x38e925,_0x3811e6),_0x52bed9=L[_0x86bd94(0x19f)](_0x386d3c,_0x5ae938);for(let _0x37bf4c=0x0;_0x37bf4c<_0x40a784[_0x86bd94(0x1ee)];_0x37bf4c++)_0x181779[_0x40a784[_0x37bf4c]][_0x41095a]=_0x52bed9[_0x37bf4c];}}else for(let _0x3f8e0f=0x0;_0x3f8e0f<_0x57ff71;_0x3f8e0f++){let _0x49ca1c=_0x30ee30[_0x86bd94(0x1c7)](_0x179a0c=>_0x179a0c[_0x3f8e0f]),_0x2c26ad=$[_0x86bd94(0x1c3)](_0x52d0d8,_0x52d0d8),_0x371ff2=$[_0x86bd94(0x1bc)](_0x52d0d8,_0x49ca1c),_0x324d52=L[_0x86bd94(0x19f)](_0x2c26ad,_0x371ff2);for(let _0x439fe2=0x0;_0x439fe2<_0x4b30f3;_0x439fe2++)_0x181779[_0x439fe2][_0x3f8e0f]=_0x324d52[_0x439fe2];}return{'controlPoints':_0x181779,'knots':_0x3e8666,'weights':_0x130797,'degree':_0x564e3d};},'_resample_to_uniform_arc_length':function(_0x5e64dd,_0x2f088d){const _0x5e7426=a0_0x772e08;if(_0x5e64dd[_0x5e7426(0x1ee)]<0x2)return _0x5e64dd;let _0x5030ad=[0x0],_0x2a9477=0x0;for(let _0x5376e9=0x1;_0x5376e9<_0x5e64dd[_0x5e7426(0x1ee)];_0x5376e9++){let _0x3f861a=0x0;for(let _0x1bf346=0x0;_0x1bf346<_0x5e64dd[_0x5376e9][_0x5e7426(0x1ee)];_0x1bf346++)_0x3f861a+=Math[_0x5e7426(0x1e8)](_0x5e64dd[_0x5376e9][_0x1bf346]-_0x5e64dd[_0x5376e9-0x1][_0x1bf346],0x2);_0x2a9477+=Math['sqrt'](_0x3f861a),_0x5030ad[_0x5e7426(0x16a)](_0x2a9477);}if(_0x2a9477===0x0)return _0x5e64dd;let _0x345039=[],_0xb32b35=_0x2a9477/(_0x2f088d-0x1);for(let _0x51c37f=0x0;_0x51c37f<_0x2f088d;_0x51c37f++){let _0x2c530a=_0x51c37f*_0xb32b35,_0x102241=0x0;for(let _0x80341b=0x1;_0x80341b<_0x5030ad[_0x5e7426(0x1ee)];_0x80341b++){if(_0x5030ad[_0x80341b]>=_0x2c530a){_0x102241=_0x80341b-0x1;break;}_0x102241=_0x80341b-0x1;}if(_0x102241>=_0x5e64dd[_0x5e7426(0x1ee)]-0x1){_0x345039[_0x5e7426(0x16a)]([..._0x5e64dd[_0x5e64dd[_0x5e7426(0x1ee)]-0x1]]);continue;}let _0x3a529c=_0x5030ad[_0x102241],_0x23281c=_0x5030ad[_0x102241+0x1]-_0x3a529c,_0xfe6daa=0x0;_0x23281c>0x0&&(_0xfe6daa=(_0x2c530a-_0x3a529c)/_0x23281c);let _0xc3cdd9=_0x5e64dd[_0x102241],_0xa162b4=_0x5e64dd[_0x102241+0x1],_0x238e24=[];for(let _0x2d6324=0x0;_0x2d6324<_0xc3cdd9[_0x5e7426(0x1ee)];_0x2d6324++)_0x238e24['push'](_0xc3cdd9[_0x2d6324]+_0xfe6daa*(_0xa162b4[_0x2d6324]-_0xc3cdd9[_0x2d6324]));_0x345039['push'](_0x238e24);}return _0x345039;},'_uniform_parameterization':function(_0x1efe39){const _0x4deed4=a0_0x772e08;let _0x289614=[];for(let _0x451583=0x0;_0x451583<_0x1efe39[_0x4deed4(0x1ee)];_0x451583++)_0x289614[_0x4deed4(0x16a)](_0x451583/(_0x1efe39[_0x4deed4(0x1ee)]-0x1));return _0x289614;},'_uniform_knot_vector':function(_0x4cffcb,_0x454f52){const _0x12f340=a0_0x772e08;let _0x3cc3a3=_0x4cffcb,_0x107504=[],_0x2757be=_0x3cc3a3-_0x454f52-0x1;for(let _0x459787=0x0;_0x459787<=_0x454f52;_0x459787++)_0x107504['push'](0x0);for(let _0x2a2ef9=0x1;_0x2a2ef9<=_0x2757be;_0x2a2ef9++)_0x107504[_0x12f340(0x16a)](_0x2a2ef9/(_0x2757be+0x1));for(let _0x3d3bc7=0x0;_0x3d3bc7<=_0x454f52;_0x3d3bc7++)_0x107504[_0x12f340(0x16a)](0x1);return _0x107504;},'_centripetal_parameterization':function(_0x5c9678){const _0x400e4c=a0_0x772e08;let _0x440321=[0x0],_0x4e02c0=[0x0],_0x1e3fa7=0x0;for(let _0x5a2296=0x1;_0x5a2296<_0x5c9678[_0x400e4c(0x1ee)];_0x5a2296++){let _0x419390=0x0;for(let _0x28bfbb=0x0;_0x28bfbb<_0x5c9678[_0x5a2296][_0x400e4c(0x1ee)];_0x28bfbb++)_0x419390+=Math[_0x400e4c(0x1e8)](_0x5c9678[_0x5a2296][_0x28bfbb]-_0x5c9678[_0x5a2296-0x1][_0x28bfbb],0x2);_0x419390=Math[_0x400e4c(0x1e8)](_0x419390,0.25),_0x1e3fa7+=_0x419390,_0x4e02c0[_0x400e4c(0x16a)](_0x1e3fa7);}for(let _0x427d7f=0x1;_0x427d7f<_0x5c9678[_0x400e4c(0x1ee)];_0x427d7f++)_0x440321['push'](_0x4e02c0[_0x427d7f]/_0x1e3fa7);return _0x440321;},'_chord_length_parameterization':function(_0x3aea77){const _0x21aabf=a0_0x772e08;let _0xb4499=[0x0],_0x32ddd1=[0x0],_0x364714=0x0;for(let _0x59e595=0x1;_0x59e595<_0x3aea77[_0x21aabf(0x1ee)];_0x59e595++){let _0x154c82=0x0;for(let _0x345c8a=0x0;_0x345c8a<_0x3aea77[_0x59e595][_0x21aabf(0x1ee)];_0x345c8a++)_0x154c82+=Math[_0x21aabf(0x1e8)](_0x3aea77[_0x59e595][_0x345c8a]-_0x3aea77[_0x59e595-0x1][_0x345c8a],0x2);_0x154c82=Math[_0x21aabf(0x1dc)](_0x154c82),_0x364714+=_0x154c82,_0x32ddd1[_0x21aabf(0x16a)](_0x364714);}for(let _0x1df89a=0x1;_0x1df89a<_0x3aea77[_0x21aabf(0x1ee)];_0x1df89a++)_0xb4499['push'](_0x32ddd1[_0x1df89a]/_0x364714);return _0xb4499;},'_approximate_knot_vector':function(_0x244b4b,_0x5975b8,_0xaedf98){const _0x114ce7=a0_0x772e08;let _0x3be09e=_0x244b4b[_0x114ce7(0x1ee)],_0x4a7dad=_0x5975b8,_0x4088d1=[];for(let _0x528330=0x0;_0x528330<=_0xaedf98;_0x528330++)_0x4088d1[_0x114ce7(0x16a)](0x0);let _0x282af0=(_0x3be09e-0x1)/(_0x4a7dad-_0xaedf98);for(let _0x3ed634=0x1;_0x3ed634<_0x4a7dad-_0xaedf98;_0x3ed634++){let _0x299f5b=0x0;for(let _0xdb67a9=Math[_0x114ce7(0x18b)](_0x3ed634*_0x282af0);_0xdb67a9<Math['floor']((_0x3ed634+0x1)*_0x282af0);_0xdb67a9++)_0x299f5b+=_0x244b4b[Math['min'](_0xdb67a9+_0xaedf98,_0x3be09e-0x1)];_0x4088d1[_0x114ce7(0x16a)](_0x299f5b/(Math[_0x114ce7(0x18b)]((_0x3ed634+0x1)*_0x282af0)-Math[_0x114ce7(0x18b)](_0x3ed634*_0x282af0)));}for(let _0x2af364=0x0;_0x2af364<=_0xaedf98;_0x2af364++)_0x4088d1['push'](0x1);return _0x4088d1;},'_basis_function':function(_0x1e6678,_0x36afb6,_0x4f4635,_0x1beab6){const _0x5c4842=a0_0x772e08;if(_0x36afb6===0x0)return _0x4f4635===_0x1beab6[_0x1beab6[_0x5c4842(0x1ee)]-0x1]&&_0x4f4635===_0x1beab6[_0x1e6678+0x1]&&_0x4f4635>_0x1beab6[_0x1e6678]||_0x4f4635>=_0x1beab6[_0x1e6678]&&_0x4f4635<_0x1beab6[_0x1e6678+0x1]?0x1:0x0;let _0x331f8=0x0,_0x3aa4be=0x0,_0x1e963b=_0x1beab6[_0x1e6678+_0x36afb6]-_0x1beab6[_0x1e6678];_0x1e963b!==0x0&&(_0x331f8=(_0x4f4635-_0x1beab6[_0x1e6678])/_0x1e963b*this['_basis_function'](_0x1e6678,_0x36afb6-0x1,_0x4f4635,_0x1beab6));let _0x5208af=_0x1beab6[_0x1e6678+_0x36afb6+0x1]-_0x1beab6[_0x1e6678+0x1];return _0x5208af!==0x0&&(_0x3aa4be=(_0x1beab6[_0x1e6678+_0x36afb6+0x1]-_0x4f4635)/_0x5208af*this[_0x5c4842(0x1b7)](_0x1e6678+0x1,_0x36afb6-0x1,_0x4f4635,_0x1beab6)),_0x331f8+_0x3aa4be;},'uniform_knot_spacing':function(_0x1fa3c9,_0x110713){const _0x21606b=a0_0x772e08;let _0x20558b=_0x1fa3c9[_0x21606b(0x1ee)]+_0x110713+0x1,_0x437fde=[],_0x22924d=_0x20558b-(_0x110713+0x1)*0x2;for(var _0x228f33=0x0;_0x228f33<_0x110713+0x1;_0x228f33++)_0x437fde[_0x21606b(0x16a)](0x0);for(var _0x228f33=0x0;_0x228f33<_0x22924d;_0x228f33++)_0x437fde['push'](_0x228f33+0x1);let _0x415d64=_0x437fde[_0x437fde[_0x21606b(0x1ee)]-0x1]+0x1;for(var _0x228f33=0x0;_0x228f33<_0x110713+0x1;_0x228f33++)_0x437fde['push'](_0x415d64);return _0x437fde;},'nurbs':function(_0x32cb79,_0xc0726e,_0x26a1e6,_0x5f5154,_0x465559,_0x4944f6){const _0x5dfc24=a0_0x772e08;var _0x4892e2,_0x274b99,_0x4a4850,_0x1a0895,_0xcf4b6f=_0x26a1e6[_0x5dfc24(0x1ee)],_0x2ca382=_0x26a1e6[0x0]['length'];if(_0xc0726e<0x1)throw new Error(_0x5dfc24(0x1b0));if(_0xc0726e>_0xcf4b6f-0x1)throw new Error(_0x5dfc24(0x1e1));if(!_0x465559){for(_0x465559=[],_0x4892e2=0x0;_0x4892e2<_0xcf4b6f;_0x4892e2++)_0x465559[_0x4892e2]=0x1;}if(_0x5f5154){if(_0x5f5154[_0x5dfc24(0x1ee)]!==_0xcf4b6f+_0xc0726e+0x1)throw new Error('bad\x20knot\x20vector\x20length');}else{for(_0x5f5154=[],_0x4892e2=0x0;_0x4892e2<_0xcf4b6f+_0xc0726e+0x1;_0x4892e2++)_0x5f5154[_0x4892e2]=_0x4892e2;}var _0x5c9579=[_0xc0726e,_0x5f5154['length']-0x1-_0xc0726e],_0xcdc31c=_0x5f5154[_0x5c9579[0x0]],_0x5b4128=_0x5f5154[_0x5c9579[0x1]];if(_0x32cb79=_0x32cb79*(_0x5b4128-_0xcdc31c)+_0xcdc31c,_0x32cb79<_0xcdc31c||_0x32cb79>_0x5b4128)throw new Error('out\x20of\x20bounds');for(_0x4a4850=_0x5c9579[0x0];_0x4a4850<_0x5c9579[0x1]&&!(_0x32cb79>=_0x5f5154[_0x4a4850]&&_0x32cb79<=_0x5f5154[_0x4a4850+0x1]);_0x4a4850++);var _0x1ba311=[];for(_0x4892e2=0x0;_0x4892e2<_0xcf4b6f;_0x4892e2++){for(_0x1ba311[_0x4892e2]=[],_0x274b99=0x0;_0x274b99<_0x2ca382;_0x274b99++)_0x1ba311[_0x4892e2][_0x274b99]=_0x26a1e6[_0x4892e2][_0x274b99]*_0x465559[_0x4892e2];_0x1ba311[_0x4892e2][_0x2ca382]=_0x465559[_0x4892e2];}var _0x3671d1;for(_0x1a0895=0x1;_0x1a0895<=_0xc0726e+0x1;_0x1a0895++)for(_0x4892e2=_0x4a4850;_0x4892e2>_0x4a4850-_0xc0726e-0x1+_0x1a0895;_0x4892e2--)for(_0x3671d1=(_0x32cb79-_0x5f5154[_0x4892e2])/(_0x5f5154[_0x4892e2+_0xc0726e+0x1-_0x1a0895]-_0x5f5154[_0x4892e2]),_0x274b99=0x0;_0x274b99<_0x2ca382+0x1;_0x274b99++)_0x1ba311[_0x4892e2][_0x274b99]=(0x1-_0x3671d1)*_0x1ba311[_0x4892e2-0x1][_0x274b99]+_0x3671d1*_0x1ba311[_0x4892e2][_0x274b99];for(_0x4944f6=_0x4944f6||[],_0x4892e2=0x0;_0x4892e2<_0x2ca382;_0x4892e2++)_0x4944f6[_0x4892e2]=_0x1ba311[_0x4a4850][_0x4892e2]/_0x1ba311[_0x4a4850][_0x2ca382];return _0x4944f6;},'nurbs_derivative':function(_0x283ecb,_0x231735,_0xf7f2b5,_0x535afb,_0x2b6994){const _0x52931a=a0_0x772e08;var _0x285809=_0xf7f2b5['length'],_0x3e47dd=_0xf7f2b5[0x0][_0x52931a(0x1ee)];if(_0x2b6994||(_0x2b6994=new Array(_0x285809)[_0x52931a(0x15c)](0x1)),!_0x535afb){_0x535afb=[];for(var _0x1a9521=0x0;_0x1a9521<_0x285809+_0x231735+0x1;_0x1a9521++)_0x535afb[_0x1a9521]=_0x1a9521;}for(var _0x5e5cae=[],_0x1a9521=0x0;_0x1a9521<_0x285809;_0x1a9521++){_0x5e5cae[_0x1a9521]=[];for(var _0x5b632f=0x0;_0x5b632f<_0x3e47dd;_0x5b632f++)_0x5e5cae[_0x1a9521][_0x5b632f]=_0xf7f2b5[_0x1a9521][_0x5b632f]*_0x2b6994[_0x1a9521];_0x5e5cae[_0x1a9521][_0x3e47dd]=_0x2b6994[_0x1a9521];}for(var _0x3a045e=[],_0x1a9521=0x0;_0x1a9521<_0x285809-0x1;_0x1a9521++){_0x3a045e[_0x1a9521]=[];for(var _0x1100ba=_0x231735/(_0x535afb[_0x1a9521+_0x231735+0x1]-_0x535afb[_0x1a9521+0x1]),_0x5b632f=0x0;_0x5b632f<=_0x3e47dd;_0x5b632f++)_0x3a045e[_0x1a9521][_0x5b632f]=_0x1100ba*(_0x5e5cae[_0x1a9521+0x1][_0x5b632f]-_0x5e5cae[_0x1a9521][_0x5b632f]);}for(var _0x1136b3=[_0x231735,_0x535afb[_0x52931a(0x1ee)]-0x1-_0x231735],_0x289a13=_0x535afb[_0x1136b3[0x0]],_0x111bea=_0x535afb[_0x1136b3[0x1]],_0x186ba2=_0x283ecb*(_0x111bea-_0x289a13)+_0x289a13,_0x5233ad=this[_0x52931a(0x172)](_0x283ecb,_0x231735,_0xf7f2b5,_0x535afb,_0x2b6994),_0x32592f=_0x535afb[_0x52931a(0x1a8)](0x1,_0x535afb[_0x52931a(0x1ee)]-0x1),_0x41c272=new Array(_0x3e47dd)[_0x52931a(0x15c)](0x0),_0x2d51da=0x0,_0x1a9521=0x0;_0x1a9521<_0x285809-0x1;_0x1a9521++){for(var _0x316c6e=this[_0x52931a(0x1b7)](_0x1a9521,_0x231735-0x1,_0x186ba2,_0x32592f),_0x5b632f=0x0;_0x5b632f<_0x3e47dd;_0x5b632f++)_0x41c272[_0x5b632f]+=_0x316c6e*_0x3a045e[_0x1a9521][_0x5b632f];_0x2d51da+=_0x316c6e*_0x3a045e[_0x1a9521][_0x3e47dd];}for(var _0x5b6f4e=0x0,_0x1a9521=0x0;_0x1a9521<_0x285809;_0x1a9521++){var _0x316c6e=this[_0x52931a(0x1b7)](_0x1a9521,_0x231735,_0x186ba2,_0x535afb);_0x5b6f4e+=_0x316c6e*_0x2b6994[_0x1a9521];}for(var _0x434410=[],_0x5b632f=0x0;_0x5b632f<_0x3e47dd;_0x5b632f++)_0x434410[_0x5b632f]=(_0x41c272[_0x5b632f]-_0x2d51da*_0x5233ad[_0x5b632f])/_0x5b6f4e;return _0x434410;},'insert_knot':function(_0x1226ff,_0x5cd2f0,_0x37d410,_0x4201e3,_0x1588b2){const _0x5f4499=a0_0x772e08;var _0x1e2d5e=_0x1226ff[_0x5f4499(0x1ee)],_0x191e81=_0x1226ff[0x0][_0x5f4499(0x1ee)];_0x4201e3||(_0x4201e3=new Array(_0x1e2d5e)[_0x5f4499(0x15c)](0x1));for(var _0x5e3c70=0x0,_0x1d1ce0=0x0;_0x1d1ce0<_0x37d410[_0x5f4499(0x1ee)]-0x1;_0x1d1ce0++)if(_0x1588b2>=_0x37d410[_0x1d1ce0]&&_0x1588b2<_0x37d410[_0x1d1ce0+0x1]){_0x5e3c70=_0x1d1ce0;break;}for(var _0x4c10d9=[],_0x1d1ce0=0x0;_0x1d1ce0<_0x1e2d5e;_0x1d1ce0++){_0x4c10d9[_0x1d1ce0]=[];for(var _0x57b371=0x0;_0x57b371<_0x191e81;_0x57b371++)_0x4c10d9[_0x1d1ce0][_0x57b371]=_0x1226ff[_0x1d1ce0][_0x57b371]*_0x4201e3[_0x1d1ce0];_0x4c10d9[_0x1d1ce0][_0x191e81]=_0x4201e3[_0x1d1ce0];}for(var _0x4b5fea=[],_0x1d1ce0=0x0;_0x1d1ce0<=_0x5e3c70-_0x5cd2f0;_0x1d1ce0++)_0x4b5fea[_0x1d1ce0]=_0x4c10d9[_0x1d1ce0]['slice']();for(var _0x1d1ce0=_0x5e3c70-_0x5cd2f0+0x1;_0x1d1ce0<=_0x5e3c70;_0x1d1ce0++){var _0x9b0ad8=(_0x1588b2-_0x37d410[_0x1d1ce0])/(_0x37d410[_0x1d1ce0+_0x5cd2f0]-_0x37d410[_0x1d1ce0]);_0x4b5fea[_0x1d1ce0]=[];for(var _0x57b371=0x0;_0x57b371<=_0x191e81;_0x57b371++)_0x4b5fea[_0x1d1ce0][_0x57b371]=(0x1-_0x9b0ad8)*_0x4c10d9[_0x1d1ce0-0x1][_0x57b371]+_0x9b0ad8*_0x4c10d9[_0x1d1ce0][_0x57b371];}for(var _0x1d1ce0=_0x5e3c70+0x1;_0x1d1ce0<=_0x1e2d5e;_0x1d1ce0++)_0x4b5fea[_0x1d1ce0]=_0x4c10d9[_0x1d1ce0-0x1][_0x5f4499(0x1a8)]();for(var _0x5b6bd4=[],_0x41c321=[],_0x1d1ce0=0x0;_0x1d1ce0<_0x4b5fea[_0x5f4499(0x1ee)];_0x1d1ce0++){_0x41c321[_0x1d1ce0]=_0x4b5fea[_0x1d1ce0][_0x191e81],_0x5b6bd4[_0x1d1ce0]=[];for(var _0x57b371=0x0;_0x57b371<_0x191e81;_0x57b371++)_0x5b6bd4[_0x1d1ce0][_0x57b371]=_0x4b5fea[_0x1d1ce0][_0x57b371]/_0x41c321[_0x1d1ce0];}for(var _0x57e013=[],_0x1d1ce0=0x0;_0x1d1ce0<=_0x5e3c70;_0x1d1ce0++)_0x57e013[_0x1d1ce0]=_0x37d410[_0x1d1ce0];_0x57e013[_0x5e3c70+0x1]=_0x1588b2;for(var _0x1d1ce0=_0x5e3c70+0x1;_0x1d1ce0<_0x37d410['length'];_0x1d1ce0++)_0x57e013[_0x1d1ce0+0x1]=_0x37d410[_0x1d1ce0];return{'controlPoints':_0x5b6bd4,'knots':_0x57e013,'weights':_0x41c321,'degree':_0x5cd2f0};},'elevate_degree':function(_0x22150b,_0x5c69b9,_0x243247,_0x5573cc){const _0x2cf00f=a0_0x772e08;var _0x263337=_0x22150b[_0x2cf00f(0x1ee)],_0x2483c8=_0x22150b[0x0][_0x2cf00f(0x1ee)];_0x5573cc||(_0x5573cc=new Array(_0x263337)['fill'](0x1));for(var _0x511a54=[],_0x305f48=0x0;_0x305f48<_0x263337;_0x305f48++){_0x511a54[_0x305f48]=[];for(var _0x597885=0x0;_0x597885<_0x2483c8;_0x597885++)_0x511a54[_0x305f48][_0x597885]=_0x22150b[_0x305f48][_0x597885]*_0x5573cc[_0x305f48];_0x511a54[_0x305f48][_0x2483c8]=_0x5573cc[_0x305f48];}var _0x35f251=[],_0x1fbe9b=_0x5c69b9+0x1;_0x35f251[0x0]=_0x511a54[0x0]['slice']();for(var _0x305f48=0x1;_0x305f48<_0x263337;_0x305f48++){_0x35f251[_0x305f48]=[];for(var _0x360622=_0x305f48/_0x1fbe9b,_0x597885=0x0;_0x597885<=_0x2483c8;_0x597885++)_0x35f251[_0x305f48][_0x597885]=_0x360622*_0x511a54[_0x305f48-0x1][_0x597885]+(0x1-_0x360622)*_0x511a54[_0x305f48][_0x597885];}_0x35f251[_0x263337]=_0x511a54[_0x263337-0x1]['slice']();for(var _0x57155b=[],_0x1f1672=[],_0x305f48=0x0;_0x305f48<_0x35f251['length'];_0x305f48++){_0x1f1672[_0x305f48]=_0x35f251[_0x305f48][_0x2483c8],_0x57155b[_0x305f48]=[];for(var _0x597885=0x0;_0x597885<_0x2483c8;_0x597885++)_0x57155b[_0x305f48][_0x597885]=_0x35f251[_0x305f48][_0x597885]/_0x1f1672[_0x305f48];}var _0x14b12b=this[_0x2cf00f(0x168)](_0x57155b,_0x1fbe9b);return{'controlPoints':_0x57155b,'knots':_0x14b12b,'weights':_0x1f1672,'degree':_0x1fbe9b};},'split_curve':function(_0x3df35d,_0x42669e,_0x2a537e,_0x3f7fb1,_0x550ab9){const _0x5c214e=a0_0x772e08;_0x3f7fb1||(_0x3f7fb1=new Array(_0x3df35d[_0x5c214e(0x1ee)])[_0x5c214e(0x15c)](0x1));for(var _0x42e600=[_0x42669e,_0x2a537e[_0x5c214e(0x1ee)]-0x1-_0x42669e],_0x5dadb5=_0x2a537e[_0x42e600[0x0]],_0x5868fb=_0x2a537e[_0x42e600[0x1]],_0x3c1ade=_0x550ab9*(_0x5868fb-_0x5dadb5)+_0x5dadb5,_0x7aa39={'controlPoints':_0x3df35d,'knots':_0x2a537e,'weights':_0x3f7fb1,'degree':_0x42669e},_0x3f2c21=0x0;_0x3f2c21<_0x42669e;_0x3f2c21++)_0x7aa39=this[_0x5c214e(0x1f3)](_0x7aa39['controlPoints'],_0x42669e,_0x7aa39[_0x5c214e(0x1c2)],_0x7aa39['weights'],_0x3c1ade);for(var _0x39e588=0x0,_0x3f2c21=0x0;_0x3f2c21<_0x7aa39['knots'][_0x5c214e(0x1ee)];_0x3f2c21++)if(_0x7aa39[_0x5c214e(0x1c2)][_0x3f2c21]===_0x3c1ade){_0x39e588=_0x3f2c21-_0x42669e;break;}var _0x47d59a=_0x7aa39[_0x5c214e(0x171)]['slice'](0x0,_0x39e588+0x1),_0x209ab8=_0x7aa39[_0x5c214e(0x1af)][_0x5c214e(0x1a8)](0x0,_0x39e588+0x1),_0x1499af=this[_0x5c214e(0x168)](_0x47d59a,_0x42669e),_0x25a5e1=_0x7aa39[_0x5c214e(0x171)]['slice'](_0x39e588),_0x17c03f=_0x7aa39[_0x5c214e(0x1af)][_0x5c214e(0x1a8)](_0x39e588),_0x32667b=this[_0x5c214e(0x168)](_0x25a5e1,_0x42669e);return{'left':{'controlPoints':_0x47d59a,'knots':_0x1499af,'weights':_0x209ab8,'degree':_0x42669e},'right':{'controlPoints':_0x25a5e1,'knots':_0x32667b,'weights':_0x17c03f,'degree':_0x42669e}};},'create_arc':function(_0x8e69a2,_0x45d806,_0x25ad4e,_0x4f2363,_0x3d2689){const _0x66c457=a0_0x772e08;_0x3d2689=_0x3d2689||[0x0,0x0,0x1];var _0x186d83=_0x4f2363-_0x25ad4e;_0x186d83<0x0&&(_0x186d83+=0x2*Math['PI']);for(var _0x38e5e4=Math[_0x66c457(0x180)](_0x186d83/(Math['PI']/0x2)),_0x4a6b67=_0x186d83/_0x38e5e4,_0x51bad0=[],_0x5d8ac2=[],_0x3f8a98=Math[_0x66c457(0x1bd)](_0x4a6b67/0x2),_0x498958=0x0;_0x498958<=_0x38e5e4;_0x498958++){var _0x2295ac=_0x25ad4e+_0x498958*_0x4a6b67,_0x38e168=_0x8e69a2[0x0]+_0x45d806*Math[_0x66c457(0x1bd)](_0x2295ac),_0x4c3b0d=_0x8e69a2[0x1]+_0x45d806*Math[_0x66c457(0x15d)](_0x2295ac),_0x145ef7=_0x8e69a2[0x2]||0x0;if(_0x51bad0[_0x66c457(0x16a)]([_0x38e168,_0x4c3b0d,_0x145ef7]),_0x5d8ac2['push'](0x1),_0x498958<_0x38e5e4){var _0x4c8cd0=_0x2295ac+_0x4a6b67/0x2,_0x4bb937=_0x45d806/Math[_0x66c457(0x1bd)](_0x4a6b67/0x2),_0x21cdff=_0x8e69a2[0x0]+_0x4bb937*Math[_0x66c457(0x1bd)](_0x4c8cd0),_0x5e4a4d=_0x8e69a2[0x1]+_0x4bb937*Math['sin'](_0x4c8cd0),_0x44e759=_0x8e69a2[0x2]||0x0;_0x51bad0[_0x66c457(0x16a)]([_0x21cdff,_0x5e4a4d,_0x44e759]),_0x5d8ac2[_0x66c457(0x16a)](_0x3f8a98);}}var _0x5896b2=0x2,_0x4c7134=this[_0x66c457(0x168)](_0x51bad0,_0x5896b2);return{'controlPoints':_0x51bad0,'knots':_0x4c7134,'weights':_0x5d8ac2,'degree':_0x5896b2};},'create_circle':function(_0x397c70,_0x213c96,_0x1fb8f9){const _0x3c4582=a0_0x772e08;return this[_0x3c4582(0x1a1)](_0x397c70,_0x213c96,0x0,0x2*Math['PI'],_0x1fb8f9);}},K={'_gaussJ':{'solve':function(_0x135778,_0x26fade){const _0x32dd8c=a0_0x772e08;let _0x40553e=_0x135778[_0x32dd8c(0x1ee)];for(let _0x48e551=0x0;_0x48e551<_0x40553e;_0x48e551++){let _0x2baec3=0x0,_0x266979=Number['NEGATIVE_INFINITY'];for(let _0x5f2cb1=_0x48e551;_0x5f2cb1<_0x40553e;_0x5f2cb1++)Math[_0x32dd8c(0x1c9)](_0x135778[_0x5f2cb1][_0x48e551])>_0x266979&&(_0x2baec3=_0x5f2cb1,_0x266979=Math[_0x32dd8c(0x1c9)](_0x135778[_0x5f2cb1][_0x48e551]));this['swapRows'](_0x135778,_0x48e551,_0x2baec3);for(let _0x32da0f=_0x48e551+0x1;_0x32da0f<_0x40553e;_0x32da0f++){let _0x1b7047=_0x135778[_0x32da0f][_0x48e551]/_0x135778[_0x48e551][_0x48e551];for(let _0x3e48c7=_0x48e551;_0x3e48c7<_0x40553e+0x1;_0x3e48c7++)_0x135778[_0x32da0f][_0x3e48c7]-=_0x135778[_0x48e551][_0x3e48c7]*_0x1b7047;}}for(let _0x32aa02=_0x40553e-0x1;_0x32aa02>=0x0;_0x32aa02--){let _0x27ae8d=_0x135778[_0x32aa02][_0x40553e]/_0x135778[_0x32aa02][_0x32aa02];_0x26fade[_0x32aa02]=_0x27ae8d;for(let _0x4a242b=_0x32aa02-0x1;_0x4a242b>=0x0;_0x4a242b--)_0x135778[_0x4a242b][_0x40553e]-=_0x135778[_0x4a242b][_0x32aa02]*_0x27ae8d,_0x135778[_0x4a242b][_0x32aa02]=0x0;}},'zerosMat':function(_0x50e4c3,_0x100b2c){const _0x40e2fa=a0_0x772e08;let _0x4ac028=[];for(let _0x448aac=0x0;_0x448aac<_0x50e4c3;_0x448aac++)_0x4ac028[_0x40e2fa(0x16a)](new Array(_0x100b2c)[_0x40e2fa(0x15c)](0x0));return _0x4ac028;},'printMat':function(_0x58f17b){const _0x18198b=a0_0x772e08;_0x58f17b[_0x18198b(0x1d7)](_0x22ec47=>console[_0x18198b(0x16d)](_0x22ec47));},'swapRows':function(_0x3a4248,_0xfacba9,_0x18f6cb){let _0x114c35=_0x3a4248[_0xfacba9];_0x3a4248[_0xfacba9]=_0x3a4248[_0x18f6cb],_0x3a4248[_0x18f6cb]=_0x114c35;}},'getNaturalKs':function(_0x59e822,_0x262cbb,_0x1a4ac8){const _0x2af8da=a0_0x772e08;let _0xbe1ab4=_0x59e822['length']-0x1,_0x53c8db=this[_0x2af8da(0x176)][_0x2af8da(0x18d)](_0xbe1ab4+0x1,_0xbe1ab4+0x2);for(let _0x11de6d=0x1;_0x11de6d<_0xbe1ab4;_0x11de6d++)_0x53c8db[_0x11de6d][_0x11de6d-0x1]=0x1/(_0x59e822[_0x11de6d]-_0x59e822[_0x11de6d-0x1]),_0x53c8db[_0x11de6d][_0x11de6d]=0x2*(0x1/(_0x59e822[_0x11de6d]-_0x59e822[_0x11de6d-0x1])+0x1/(_0x59e822[_0x11de6d+0x1]-_0x59e822[_0x11de6d])),_0x53c8db[_0x11de6d][_0x11de6d+0x1]=0x1/(_0x59e822[_0x11de6d+0x1]-_0x59e822[_0x11de6d]),_0x53c8db[_0x11de6d][_0xbe1ab4+0x1]=0x3*((_0x262cbb[_0x11de6d]-_0x262cbb[_0x11de6d-0x1])/(_0x59e822[_0x11de6d]-_0x59e822[_0x11de6d-0x1])**0x2+(_0x262cbb[_0x11de6d+0x1]-_0x262cbb[_0x11de6d])/(_0x59e822[_0x11de6d+0x1]-_0x59e822[_0x11de6d])**0x2);_0x53c8db[0x0][0x0]=0x2/(_0x59e822[0x1]-_0x59e822[0x0]),_0x53c8db[0x0][0x1]=0x1/(_0x59e822[0x1]-_0x59e822[0x0]),_0x53c8db[0x0][_0xbe1ab4+0x1]=0x3*(_0x262cbb[0x1]-_0x262cbb[0x0])/(_0x59e822[0x1]-_0x59e822[0x0])**0x2,_0x53c8db[_0xbe1ab4][_0xbe1ab4-0x1]=0x1/(_0x59e822[_0xbe1ab4]-_0x59e822[_0xbe1ab4-0x1]),_0x53c8db[_0xbe1ab4][_0xbe1ab4]=0x2/(_0x59e822[_0xbe1ab4]-_0x59e822[_0xbe1ab4-0x1]),_0x53c8db[_0xbe1ab4][_0xbe1ab4+0x1]=0x3*(_0x262cbb[_0xbe1ab4]-_0x262cbb[_0xbe1ab4-0x1])/(_0x59e822[_0xbe1ab4]-_0x59e822[_0xbe1ab4-0x1])**0x2,this['_gaussJ']['solve'](_0x53c8db,_0x1a4ac8);},'from_control_points':function(_0x3b75e7,_0x2a43ec){const _0x550dd4=a0_0x772e08;let _0x1a8e60=_0x2a43ec['map'](_0xf51740=>_0xf51740[0x0]),_0x512110=_0x2a43ec[_0x550dd4(0x1c7)](_0x2be3a1=>_0x2be3a1[0x1]),_0x1882b9=new Array(_0x1a8e60[_0x550dd4(0x1ee)])[_0x550dd4(0x15c)](0x0);this[_0x550dd4(0x1b3)](_0x1a8e60,_0x512110,_0x1882b9);let _0x5214eb=[];for(let _0x193a04 of _0x3b75e7){let _0x22a08f=0x1;for(;_0x1a8e60[_0x22a08f]<_0x193a04;)_0x22a08f++;let _0x3c61e9=(_0x193a04-_0x1a8e60[_0x22a08f-0x1])/(_0x1a8e60[_0x22a08f]-_0x1a8e60[_0x22a08f-0x1]),_0x43a228=_0x1882b9[_0x22a08f-0x1]*(_0x1a8e60[_0x22a08f]-_0x1a8e60[_0x22a08f-0x1])-(_0x512110[_0x22a08f]-_0x512110[_0x22a08f-0x1]),_0x58fb78=-_0x1882b9[_0x22a08f]*(_0x1a8e60[_0x22a08f]-_0x1a8e60[_0x22a08f-0x1])+(_0x512110[_0x22a08f]-_0x512110[_0x22a08f-0x1]),_0x5c5b53=(0x1-_0x3c61e9)*_0x512110[_0x22a08f-0x1]+_0x3c61e9*_0x512110[_0x22a08f]+_0x3c61e9*(0x1-_0x3c61e9)*(_0x43a228*(0x1-_0x3c61e9)+_0x58fb78*_0x3c61e9);_0x5214eb[_0x550dd4(0x16a)]([_0x193a04,_0x5c5b53]);}return _0x5214eb;}},A=class{constructor(_0x3be29c){const _0x50efc7=a0_0x772e08;this[_0x50efc7(0x195)]=_0x3be29c,this[_0x50efc7(0x1aa)]=[],this[_0x50efc7(0x1bf)]=[0x0];for(let _0x7955a9=0x1;_0x7955a9<_0x3be29c[_0x50efc7(0x1ee)];_0x7955a9++){let _0xe3c1c1=_0x3be29c[_0x7955a9][0x0]-_0x3be29c[_0x7955a9-0x1][0x0],_0x2118fe=_0x3be29c[_0x7955a9][0x1]-_0x3be29c[_0x7955a9-0x1][0x1],_0x258d2c=_0x3be29c[_0x7955a9][0x2]-_0x3be29c[_0x7955a9-0x1][0x2],_0x59cebb=Math[_0x50efc7(0x1dc)](_0xe3c1c1*_0xe3c1c1+_0x2118fe*_0x2118fe+_0x258d2c*_0x258d2c);this[_0x50efc7(0x1aa)][_0x50efc7(0x16a)](_0x59cebb),this[_0x50efc7(0x1bf)][_0x50efc7(0x16a)](this['cumulativeLength'][this['cumulativeLength'][_0x50efc7(0x1ee)]-0x1]+_0x59cebb);}this['totalLength']=this[_0x50efc7(0x1aa)][_0x50efc7(0x1ee)]>0x0?this[_0x50efc7(0x1bf)][this[_0x50efc7(0x1bf)][_0x50efc7(0x1ee)]-0x1]:0x0;}[a0_0x772e08(0x1ce)](_0xa63123){const _0x49d6de=a0_0x772e08;let _0xec7a1b=0x0,_0x137ad0=Number[_0x49d6de(0x153)];for(let _0x2e8458=0x0;_0x2e8458<this[_0x49d6de(0x195)]['length']-0x1;_0x2e8458++){let _0x513bfa=this[_0x49d6de(0x195)][_0x2e8458],_0x25cc6b=this[_0x49d6de(0x195)][_0x2e8458+0x1],_0x16b64a=_0xa63123,_0x2b9b30=[_0x25cc6b[0x0]-_0x513bfa[0x0],_0x25cc6b[0x1]-_0x513bfa[0x1],_0x25cc6b[0x2]-_0x513bfa[0x2]],_0x561330=[_0x16b64a[0x0]-_0x513bfa[0x0],_0x16b64a[0x1]-_0x513bfa[0x1],_0x16b64a[0x2]-_0x513bfa[0x2]],_0x57e9dc=_0x2b9b30[0x0]*_0x2b9b30[0x0]+_0x2b9b30[0x1]*_0x2b9b30[0x1]+_0x2b9b30[0x2]*_0x2b9b30[0x2];if(_0x57e9dc===0x0)continue;let _0x4d5260=(_0x561330[0x0]*_0x2b9b30[0x0]+_0x561330[0x1]*_0x2b9b30[0x1]+_0x561330[0x2]*_0x2b9b30[0x2])/_0x57e9dc;_0x4d5260=Math[_0x49d6de(0x1f1)](0x0,Math['min'](0x1,_0x4d5260));let _0x4dd6de=[_0x513bfa[0x0]+_0x4d5260*_0x2b9b30[0x0],_0x513bfa[0x1]+_0x4d5260*_0x2b9b30[0x1],_0x513bfa[0x2]+_0x4d5260*_0x2b9b30[0x2]],_0x3dee1f=Math[_0x49d6de(0x1e8)](_0x16b64a[0x0]-_0x4dd6de[0x0],0x2)+Math['pow'](_0x16b64a[0x1]-_0x4dd6de[0x1],0x2)+Math[_0x49d6de(0x1e8)](_0x16b64a[0x2]-_0x4dd6de[0x2],0x2);_0x3dee1f<_0x137ad0&&(_0x137ad0=_0x3dee1f,_0xec7a1b=(this[_0x49d6de(0x1bf)][_0x2e8458]+_0x4d5260*this[_0x49d6de(0x1aa)][_0x2e8458])/this[_0x49d6de(0x19c)]);}return _0xec7a1b;}[a0_0x772e08(0x154)](_0x595fd8){const _0x50267f=a0_0x772e08;if(_0x595fd8<=0x0)return[...this[_0x50267f(0x195)][0x0]];if(_0x595fd8>=0x1)return[...this[_0x50267f(0x195)][this[_0x50267f(0x195)]['length']-0x1]];let _0xeb1de6=_0x595fd8*this[_0x50267f(0x19c)];for(let _0xd358a4=0x0;_0xd358a4<this[_0x50267f(0x1bf)][_0x50267f(0x1ee)]-0x1;_0xd358a4++)if(this[_0x50267f(0x1bf)][_0xd358a4]<=_0xeb1de6&&_0xeb1de6<=this[_0x50267f(0x1bf)][_0xd358a4+0x1]){let _0x277e75=(_0xeb1de6-this['cumulativeLength'][_0xd358a4])/this[_0x50267f(0x1aa)][_0xd358a4],_0x39bb9b=this[_0x50267f(0x195)][_0xd358a4],_0x7b1953=this['points'][_0xd358a4+0x1],_0x81a0c0=(0x1-_0x277e75)*_0x39bb9b[0x0]+_0x277e75*_0x7b1953[0x0],_0x58fdeb=(0x1-_0x277e75)*_0x39bb9b[0x1]+_0x277e75*_0x7b1953[0x1],_0x92a6f8=(0x1-_0x277e75)*_0x39bb9b[0x2]+_0x277e75*_0x7b1953[0x2];return[_0x81a0c0,_0x58fdeb,_0x92a6f8];}return[...this[_0x50267f(0x195)][this[_0x50267f(0x195)][_0x50267f(0x1ee)]-0x1]];}},H={'_formatNumber':function(_0x1b5e96){const _0x5a0f3a=a0_0x772e08;return Number['isInteger'](_0x1b5e96)?_0x1b5e96[_0x5a0f3a(0x1ad)]():Math[_0x5a0f3a(0x1c9)](_0x1b5e96)<0.001||Math['abs'](_0x1b5e96)>0xf4240?_0x1b5e96[_0x5a0f3a(0x1bb)](0x6):_0x1b5e96[_0x5a0f3a(0x177)](0x6)['replace'](/\.?0+$/,'');},'_toHollerith':function(_0x557fce){const _0x65b035=a0_0x772e08;return _0x557fce?_0x557fce[_0x65b035(0x1ee)]+'H'+_0x557fce:'0H';},'_generateGlobalSection':function(_0xe064a4){const _0x5dc4ba=a0_0x772e08;let _0x1f60db=new Date()['toISOString']()['slice'](0x0,0x13)[_0x5dc4ba(0x1ba)](/[-:]/g,'')[_0x5dc4ba(0x1ba)]('T','.'),_0x22aca6=[_0x5dc4ba(0x161),'1H;',this['_toHollerith'](_0xe064a4['filename']),this['_toHollerith'](_0xe064a4['filename']),this[_0x5dc4ba(0x1d8)](_0xe064a4[_0x5dc4ba(0x15e)]),this[_0x5dc4ba(0x1d8)]('js3d\x201.0'),'32','38','6',_0x5dc4ba(0x1f2),'15',this['_toHollerith'](_0xe064a4[_0x5dc4ba(0x184)]),_0x5dc4ba(0x1b9),'3',this[_0x5dc4ba(0x1d8)](_0xe064a4['units'][_0x5dc4ba(0x1a5)]()),'1',_0x5dc4ba(0x185),this[_0x5dc4ba(0x1d8)](_0x1f60db),_0x5dc4ba(0x18f),_0x5dc4ba(0x18e),this['_toHollerith'](_0xe064a4[_0x5dc4ba(0x18c)]),this[_0x5dc4ba(0x1d8)](_0xe064a4['organization']),'11','0',this[_0x5dc4ba(0x1d8)](_0x1f60db)][_0x5dc4ba(0x1f0)](',')+';',_0x433d86='',_0x2ac04f=0x1,_0x3fbca1=0x0;for(;_0x3fbca1<_0x22aca6[_0x5dc4ba(0x1ee)];){let _0x4c6e1c=_0x22aca6[_0x5dc4ba(0x186)](_0x3fbca1,0x48);_0x433d86+=_0x4c6e1c['padEnd'](0x48)+('G'+_0x2ac04f[_0x5dc4ba(0x1ad)]()[_0x5dc4ba(0x1c0)](0x7)+'\x0a'),_0x3fbca1+=0x48,_0x2ac04f++;}return _0x433d86;},'_formatDirectoryLine':function(_0x45499d,_0x4ad484,_0x3a90fc,_0xff7eb6,_0x46bf56,_0x204785,_0x537372,_0x4f38df,_0xf68e3e){const _0x222203=a0_0x772e08;return[_0x45499d['toString']()[_0x222203(0x1c0)](0x8),_0x4ad484[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8),_0x3a90fc[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8),_0xff7eb6['toString']()[_0x222203(0x1c0)](0x8),_0x46bf56[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8),_0x204785['toString']()['padStart'](0x8),_0x537372['toString']()[_0x222203(0x1c0)](0x8),_0x4f38df[_0x222203(0x1ad)]()[_0x222203(0x1c0)](0x8)]['join']('')[_0x222203(0x157)](0x48)+('D'+_0xf68e3e[_0x222203(0x1ad)]()['padStart'](0x7)+'\x0a');},'_formatParameterLine':function(_0x94a61e,_0x248d9d,_0x495bd3){const _0xef611f=a0_0x772e08;let _0x14be55='',_0x3612ef=_0x248d9d,_0x5755bf=0x0;for(;_0x5755bf<_0x94a61e[_0xef611f(0x1ee)];){let _0x646f8e=Math['min'](_0x5755bf+0x40,_0x94a61e[_0xef611f(0x1ee)]);if(_0x646f8e<_0x94a61e[_0xef611f(0x1ee)]&&_0x94a61e[_0x646f8e]!==','){let _0x5ab0d0=_0x94a61e[_0xef611f(0x1b1)](',',_0x646f8e);_0x5ab0d0>_0x5755bf&&(_0x646f8e=_0x5ab0d0+0x1);}let _0x1daa56=_0x94a61e[_0xef611f(0x1ef)](_0x5755bf,_0x646f8e);_0x14be55+=_0x1daa56[_0xef611f(0x157)](0x40)+('\x20'+_0x495bd3[_0xef611f(0x1ad)]()[_0xef611f(0x1c0)](0x7)+'P'+_0x3612ef[_0xef611f(0x1ad)]()[_0xef611f(0x1c0)](0x7)+'\x0a'),_0x5755bf=_0x646f8e,_0x3612ef++;}return _0x14be55;},'_formatSection':function(_0x8d223c,_0x5cc1bd){const _0x459d5a=a0_0x772e08;return _0x5cc1bd[_0x459d5a(0x1c7)]((_0x60bb52,_0x1c9b67)=>_0x60bb52['replace'](/\n$/,'')+'\x0a')[_0x459d5a(0x1f0)]('');},'_formatTerminateSection':function(_0x5727d3,_0x1f9315,_0x3a4af7,_0x3d7624){const _0x2d7f90=a0_0x772e08;return['S'+_0x5727d3[_0x2d7f90(0x1ad)]()[_0x2d7f90(0x1c0)](0x7),'G'+_0x1f9315['toString']()['padStart'](0x7),'D'+_0x3a4af7[_0x2d7f90(0x1ad)]()[_0x2d7f90(0x1c0)](0x7),'P'+_0x3d7624[_0x2d7f90(0x1ad)]()['padStart'](0x7)][_0x2d7f90(0x1f0)]('')['padEnd'](0x48)+_0x2d7f90(0x158);},'_createPointEntity':function(_0xaba1ec,_0x2e47fd,_0x42ac62){const _0x23c2f0=a0_0x772e08;let _0x4aa96d='116,'+this[_0x23c2f0(0x190)](_0xaba1ec[0x0])+','+this[_0x23c2f0(0x190)](_0xaba1ec[0x1])+','+this[_0x23c2f0(0x190)](_0xaba1ec[0x2])+',0.0;',_0x20a09d=_0x2e47fd,_0x2f1a23=this[_0x23c2f0(0x19a)](_0x4aa96d,_0x42ac62,_0x20a09d),_0x1f2080=_0x2f1a23['split']('\x0a')[_0x23c2f0(0x1ee)]-0x1,_0x2bebb0=this[_0x23c2f0(0x194)](0x74,_0x42ac62,0x0,0x0,0x0,0x0,0x0,0x0,_0x2e47fd);return _0x2bebb0+=this[_0x23c2f0(0x194)](0x74,0x0,0x0,_0x1f2080,0x0,0x0,0x0,0x0,_0x2e47fd+0x1),{'directoryEntry':_0x2bebb0,'parameterEntry':_0x2f1a23,'lineCount':_0x1f2080};},'_createPolylineEntity':function(_0x434d8f,_0x3f26f,_0x1dee99){const _0x2753fd=a0_0x772e08;let _0x1cd71d=_0x2753fd(0x173)+(_0x434d8f['length']-0x1);for(let _0x43f314=0x0;_0x43f314<_0x434d8f['length'];_0x43f314++){let _0x8b9e90=_0x434d8f[_0x43f314];_0x1cd71d+=','+this[_0x2753fd(0x190)](_0x8b9e90[0x0])+','+this[_0x2753fd(0x190)](_0x8b9e90[0x1])+','+this[_0x2753fd(0x190)](_0x8b9e90[0x2]);}_0x1cd71d+=';';let _0x16ec6c=_0x3f26f,_0x5a1414=this[_0x2753fd(0x19a)](_0x1cd71d,_0x1dee99,_0x16ec6c),_0x3ed812=_0x5a1414[_0x2753fd(0x163)]('\x0a')[_0x2753fd(0x1ee)]-0x1,_0x37aa77=this['_formatDirectoryLine'](0x6a,_0x1dee99,0x0,0x0,0x0,0x0,0x0,0x0,_0x3f26f);return _0x37aa77+=this[_0x2753fd(0x194)](0x6a,0x0,0x0,_0x3ed812,0x0,0x0,0x0,0x0,_0x3f26f+0x1),{'directoryEntry':_0x37aa77,'parameterEntry':_0x5a1414,'lineCount':_0x3ed812};},'_createNurbsCurveEntity':function(_0x5c7bb0,_0x33cd7c,_0x37167d,_0x3b5020,_0x580c36,_0xe0b554){const _0x5de38b=a0_0x772e08;let _0x491eea=_0x5de38b(0x198)+(_0x5c7bb0[_0x5de38b(0x1ee)]-0x1)+','+_0x3b5020+_0x5de38b(0x17c);for(let _0x2c68cf of _0x37167d)_0x491eea+=','+this['_formatNumber'](_0x2c68cf);for(let _0x2553d3 of _0x33cd7c)_0x491eea+=','+this['_formatNumber'](_0x2553d3);for(let _0x5389f8=0x0;_0x5389f8<_0x5c7bb0[_0x5de38b(0x1ee)];_0x5389f8++){let _0x59c903=_0x5c7bb0[_0x5389f8];_0x491eea+=','+this[_0x5de38b(0x190)](_0x59c903[0x0])+','+this[_0x5de38b(0x190)](_0x59c903[0x1])+','+this[_0x5de38b(0x190)](_0x59c903[0x2]);}_0x491eea+=','+this[_0x5de38b(0x190)](_0x37167d[0x0])+','+this[_0x5de38b(0x190)](_0x37167d[_0x37167d['length']-0x1]),_0x491eea+=_0x5de38b(0x164),_0x491eea+=';';let _0x7d4ca5=_0x580c36,_0x49edbc=this['_formatParameterLine'](_0x491eea,_0xe0b554,_0x7d4ca5),_0x117178=_0x49edbc[_0x5de38b(0x163)]('\x0a')[_0x5de38b(0x1ee)]-0x1,_0x284165=this[_0x5de38b(0x194)](0x7e,_0xe0b554,0x0,0x0,0x0,0x0,0x0,0x0,_0x580c36);return _0x284165+=this[_0x5de38b(0x194)](0x7e,0x0,0x0,_0x117178,0x0,0x0,0x0,0x0,_0x580c36+0x1),{'directoryEntry':_0x284165,'parameterEntry':_0x49edbc,'lineCount':_0x117178};},'_createNurbsSurfaceEntity':function(_0x3abb51,_0x2ccf74,_0x4b7303,_0x220829,_0x19da95,_0xd705e,_0x1b0dd7,_0x4b3750){const _0xf3e74f=a0_0x772e08;let _0x5e2fe1=_0x3abb51[_0xf3e74f(0x1ee)],_0xfebe6d=_0x3abb51[0x0][_0xf3e74f(0x1ee)],_0x4d3aca=_0x5e2fe1-0x1,_0xda6719=_0xfebe6d-0x1,_0x76bfbc=_0xf3e74f(0x181)+_0x4d3aca+','+_0xda6719+','+_0x19da95+','+_0xd705e+_0xf3e74f(0x1e4);for(let _0x30c9f1 of _0x4b7303)_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x30c9f1);for(let _0x12e2da of _0x220829)_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x12e2da);for(let _0x39d27d=0x0;_0x39d27d<=_0xda6719;_0x39d27d++)for(let _0x481c0c=0x0;_0x481c0c<=_0x4d3aca;_0x481c0c++)_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x2ccf74[_0x481c0c][_0x39d27d]);for(let _0x111387=0x0;_0x111387<=_0xda6719;_0x111387++)for(let _0x41b3a9=0x0;_0x41b3a9<=_0x4d3aca;_0x41b3a9++){let _0x45e76f=_0x3abb51[_0x41b3a9][_0x111387];_0x76bfbc+=','+this['_formatNumber'](_0x45e76f[0x0])+','+this[_0xf3e74f(0x190)](_0x45e76f[0x1])+','+this['_formatNumber'](_0x45e76f[0x2]);}_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x4b7303[0x0])+','+this[_0xf3e74f(0x190)](_0x4b7303[_0x4b7303[_0xf3e74f(0x1ee)]-0x1]),_0x76bfbc+=','+this[_0xf3e74f(0x190)](_0x220829[0x0])+','+this[_0xf3e74f(0x190)](_0x220829[_0x220829[_0xf3e74f(0x1ee)]-0x1]),_0x76bfbc+=';';let _0xb0fd0f=_0x1b0dd7,_0x4b0a93=this[_0xf3e74f(0x19a)](_0x76bfbc,_0x4b3750,_0xb0fd0f),_0x2626e9=_0x4b0a93[_0xf3e74f(0x163)]('\x0a')[_0xf3e74f(0x1ee)]-0x1,_0x1a53d0=this[_0xf3e74f(0x194)](0x80,_0x4b3750,0x0,0x0,0x0,0x0,0x0,0x0,_0x1b0dd7);return _0x1a53d0+=this['_formatDirectoryLine'](0x80,0x0,0x0,_0x2626e9,0x0,0x0,0x0,0x0,_0x1b0dd7+0x1),{'directoryEntry':_0x1a53d0,'parameterEntry':_0x4b0a93,'lineCount':_0x2626e9};},'nurbsSurfaceToIges':function(_0x45862a,_0x4d3482={}){const _0x39e373=a0_0x772e08;let _0x29c82e={'units':'MM','filename':_0x39e373(0x167),'author':_0x39e373(0x1d2),'organization':'D#','degreeU':0x3,'degreeV':0x3,'weights':null,'knotsU':null,'knotsV':null,..._0x4d3482};if(!Array[_0x39e373(0x1ac)](_0x45862a)||_0x45862a[_0x39e373(0x1ee)]===0x0||!Array[_0x39e373(0x1ac)](_0x45862a[0x0]))throw new Error(_0x39e373(0x1a2));let _0x1fcb90=_0x45862a[_0x39e373(0x1ee)],_0x216dcd=_0x45862a[0x0][_0x39e373(0x1ee)];if(_0x1fcb90<_0x29c82e[_0x39e373(0x169)]+0x1||_0x216dcd<_0x29c82e['degreeV']+0x1)throw new Error('Insufficient\x20control\x20points\x20for\x20specified\x20degrees');let _0x35068c=_0x45862a['map'](_0x35ed6a=>_0x35ed6a[_0x39e373(0x1c7)](_0x13a92b=>{const _0x11e536=_0x39e373;if(!Array[_0x11e536(0x1ac)](_0x13a92b)||_0x13a92b['length']<0x2)throw new Error('Invalid\x20control\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]');return[_0x13a92b[0x0]||0x0,_0x13a92b[0x1]||0x0,_0x13a92b[0x2]||0x0];})),_0x4907f3=_0x29c82e[_0x39e373(0x1af)];_0x4907f3||(_0x4907f3=new Array(_0x1fcb90)[_0x39e373(0x15c)](0x0)[_0x39e373(0x1c7)](()=>new Array(_0x216dcd)[_0x39e373(0x15c)](0x1)));let _0x3e32c0=_0x29c82e[_0x39e373(0x15b)];if(!_0x3e32c0)throw new Error(_0x39e373(0x1c6));let _0xbd6f69=_0x29c82e[_0x39e373(0x1dd)];if(!_0xbd6f69)throw new Error(_0x39e373(0x1c6));let _0x53ef9e='',_0x1d5ac0='',_0x5aee9c='',_0x390b4c=0x1,_0x1b3fe7=0x1;_0x53ef9e=this['_generateGlobalSection'](_0x29c82e);let _0x5d15c7=this['_createNurbsSurfaceEntity'](_0x35068c,_0x4907f3,_0x3e32c0,_0xbd6f69,_0x29c82e[_0x39e373(0x169)],_0x29c82e[_0x39e373(0x17e)],_0x1b3fe7,_0x390b4c);_0x1d5ac0+=_0x5d15c7['directoryEntry'],_0x5aee9c+=_0x5d15c7[_0x39e373(0x1d3)],_0x1b3fe7+=0x2,_0x390b4c+=_0x5d15c7[_0x39e373(0x1ec)];let _0x4eb292=this[_0x39e373(0x1e9)]('START',[_0x39e373(0x1f6),_0x39e373(0x182)]),_0x2959ae=this[_0x39e373(0x1c1)](_0x4eb292[_0x39e373(0x163)]('\x0a')[_0x39e373(0x1ee)]-0x1,_0x53ef9e[_0x39e373(0x163)]('\x0a')['length']-0x1,_0x1d5ac0['split']('\x0a')[_0x39e373(0x1ee)]-0x1,_0x5aee9c['split']('\x0a')['length']-0x1);return _0x4eb292+_0x53ef9e+_0x1d5ac0+_0x5aee9c+_0x2959ae;},'geometryToIges':function(_0x36bc7c,_0x581f1f={}){const _0x4a6064=a0_0x772e08;let _0x16a2d5={'units':'MM','filename':_0x4a6064(0x1a6),'author':_0x4a6064(0x192),'organization':'D3',..._0x581f1f};if(!Array[_0x4a6064(0x1ac)](_0x36bc7c)||_0x36bc7c[_0x4a6064(0x1ee)]===0x0)throw new Error('Geometries\x20array\x20is\x20required\x20and\x20must\x20not\x20be\x20empty');let _0x39d84d='',_0x4bc529='',_0x43b938='',_0x329804=0x1,_0x224d4c=0x1,_0x449971=0x0;_0x39d84d=this[_0x4a6064(0x1c8)](_0x16a2d5);for(let _0x453c54 of _0x36bc7c){if(!_0x453c54||typeof _0x453c54!=_0x4a6064(0x162)||!_0x453c54[_0x4a6064(0x1b5)]||!_0x453c54[_0x4a6064(0x1f7)])throw new Error(_0x4a6064(0x16b));let _0x3d8c64=_0x453c54[_0x4a6064(0x1b5)],_0x27136b=_0x453c54[_0x4a6064(0x1f7)],_0x11e3e6;if(_0x3d8c64===_0x4a6064(0x1a7)?_0x11e3e6=_0x27136b[_0x4a6064(0x1c7)](_0x59bcdc=>_0x59bcdc[_0x4a6064(0x1c7)](_0x436646=>{const _0xe41796=_0x4a6064;if(!Array[_0xe41796(0x1ac)](_0x436646)||_0x436646[_0xe41796(0x1ee)]<0x2)throw new Error(_0xe41796(0x1cc));return[_0x436646[0x0]||0x0,_0x436646[0x1]||0x0,_0x436646[0x2]||0x0];})):_0x11e3e6=_0x27136b[_0x4a6064(0x1c7)](_0xc3df4c=>{const _0x3aebea=_0x4a6064;if(!Array[_0x3aebea(0x1ac)](_0xc3df4c)||_0xc3df4c[_0x3aebea(0x1ee)]<0x2)throw new Error(_0x3aebea(0x1cc));return[_0xc3df4c[0x0]||0x0,_0xc3df4c[0x1]||0x0,_0xc3df4c[0x2]||0x0];}),_0x11e3e6[_0x4a6064(0x1ee)]!==0x0)switch(_0x3d8c64){case _0x4a6064(0x195):for(let _0x40453a of _0x11e3e6){_0x449971++;let _0x43737a=this['_createPointEntity'](_0x40453a,_0x224d4c,_0x329804);_0x4bc529+=_0x43737a[_0x4a6064(0x183)],_0x43b938+=_0x43737a[_0x4a6064(0x1d3)],_0x224d4c+=0x2,_0x329804+=_0x43737a['lineCount'];}break;case _0x4a6064(0x1ed):if(_0x11e3e6['length']>0x1){_0x449971++;let _0x112741=this[_0x4a6064(0x196)](_0x11e3e6,_0x224d4c,_0x329804);_0x4bc529+=_0x112741['directoryEntry'],_0x43b938+=_0x112741['parameterEntry'],_0x224d4c+=0x2,_0x329804+=_0x112741['lineCount'];}break;case _0x4a6064(0x1f5):let _0x2f74e7=_0x453c54['degree']||0x3,_0x4ea98c=_0x11e3e6[_0x4a6064(0x1ee)];if(_0x4ea98c<_0x2f74e7+0x1){console[_0x4a6064(0x1db)](_0x4a6064(0x1df)+(_0x2f74e7+0x1)+'\x20control\x20points\x20for\x20degree\x20'+_0x2f74e7);continue;}let _0xa2c7c0=_0x453c54['weights']||new Array(_0x4ea98c)[_0x4a6064(0x15c)](0x1);if(_0xa2c7c0[_0x4a6064(0x1ee)]!==_0x4ea98c)throw new Error(_0x4a6064(0x159));let _0x523326=_0x453c54[_0x4a6064(0x1c2)],_0x238a84=_0x4ea98c+_0x2f74e7+0x1;if(_0x523326[_0x4a6064(0x1ee)]!==_0x238a84)throw new Error(_0x4a6064(0x1b2)+_0x238a84+_0x4a6064(0x152)+_0x523326['length']);_0x449971++;let _0x1d5da5=this['_createNurbsCurveEntity'](_0x11e3e6,_0xa2c7c0,_0x523326,_0x2f74e7,_0x224d4c,_0x329804);_0x4bc529+=_0x1d5da5[_0x4a6064(0x183)],_0x43b938+=_0x1d5da5['parameterEntry'],_0x224d4c+=0x2,_0x329804+=_0x1d5da5[_0x4a6064(0x1ec)];break;case _0x4a6064(0x1a7):let _0xc53243=_0x453c54['degreeU']||0x3,_0x5e9342=_0x453c54[_0x4a6064(0x17e)]||0x3,_0x4aff77=_0x11e3e6[_0x4a6064(0x1ee)],_0x35f1a1=_0x11e3e6[0x0][_0x4a6064(0x1ee)];if(_0x4aff77<_0xc53243+0x1||_0x35f1a1<_0x5e9342+0x1){console[_0x4a6064(0x1db)](_0x4a6064(0x1e2));continue;}let _0xf736e5=_0x453c54['weights'];_0xf736e5||(_0xf736e5=new Array(_0x4aff77)[_0x4a6064(0x15c)](0x0)[_0x4a6064(0x1c7)](()=>new Array(_0x35f1a1)[_0x4a6064(0x15c)](0x1)));let _0x2a70cf=_0x453c54[_0x4a6064(0x15b)],_0x4c8d78=_0x453c54[_0x4a6064(0x1dd)];if(!_0x2a70cf||!_0x4c8d78)throw new Error(_0x4a6064(0x174));_0x449971++;let _0xfa1c9c=this[_0x4a6064(0x197)](_0x11e3e6,_0xf736e5,_0x2a70cf,_0x4c8d78,_0xc53243,_0x5e9342,_0x224d4c,_0x329804);_0x4bc529+=_0xfa1c9c['directoryEntry'],_0x43b938+=_0xfa1c9c['parameterEntry'],_0x224d4c+=0x2,_0x329804+=_0xfa1c9c[_0x4a6064(0x1ec)];break;default:throw new Error(_0x4a6064(0x15a)+_0x3d8c64+_0x4a6064(0x170));}}if(_0x449971===0x0)throw new Error(_0x4a6064(0x15f));let _0x2948b4=this[_0x4a6064(0x1e9)](_0x4a6064(0x175),[_0x4a6064(0x1f6),'Combined\x20geometry\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202']),_0xb7bdc5=this['_formatTerminateSection'](_0x2948b4[_0x4a6064(0x163)]('\x0a')['length']-0x1,_0x39d84d['split']('\x0a')['length']-0x1,_0x4bc529[_0x4a6064(0x163)]('\x0a')[_0x4a6064(0x1ee)]-0x1,_0x43b938['split']('\x0a')[_0x4a6064(0x1ee)]-0x1);return _0x2948b4+_0x39d84d+_0x4bc529+_0x43b938+_0xb7bdc5;},'_parseIgesNumber':function(_0x2f6be8){const _0x106121=a0_0x772e08;if(!_0x2f6be8||typeof _0x2f6be8!='string')return 0x0;let _0x2255fd=_0x2f6be8[_0x106121(0x199)]()[_0x106121(0x1ba)](/D([+-]?\d+)/g,_0x106121(0x1b4)),_0x47254f=parseFloat(_0x2255fd);return isNaN(_0x47254f)?0x0:_0x47254f;},'_processEntity':function(_0x3a3336,_0x5ea4ba,_0x1f257e,_0x2eafa4,_0x246181){const _0x575748=a0_0x772e08;let _0x4e82fd=_0x3a3336['replace'](';','')[_0x575748(0x163)](',')[_0x575748(0x1c7)](_0x145b93=>_0x145b93[_0x575748(0x199)]());if(_0x4e82fd['length']===0x0)return;switch(parseInt(_0x4e82fd[0x0])){case 0x74:this[_0x575748(0x187)](_0x4e82fd,_0x1f257e);break;case 0x6a:this['_processPolylineEntity'](_0x4e82fd,_0x5ea4ba);break;case 0x7e:this[_0x575748(0x1d1)](_0x4e82fd,_0x2eafa4);break;case 0x80:_0x246181&&this[_0x575748(0x1e7)](_0x4e82fd,_0x246181);break;case 0x6e:this[_0x575748(0x1b8)](_0x4e82fd,_0x5ea4ba);break;default:break;}},'_processPointEntity':function(_0x5b92c3,_0x561b41){const _0x145104=a0_0x772e08;if(_0x5b92c3[_0x145104(0x1ee)]>=0x4){let _0x37a349=this[_0x145104(0x1c4)](_0x5b92c3[0x1]),_0x1b7ff5=this[_0x145104(0x1c4)](_0x5b92c3[0x2]),_0x46491e=this[_0x145104(0x1c4)](_0x5b92c3[0x3]);_0x561b41['push']([_0x37a349,_0x1b7ff5,_0x46491e]);}},'_processPolylineEntity':function(_0x13caf4,_0x2b80e7){const _0x4be53b=a0_0x772e08;if(_0x13caf4[_0x4be53b(0x1ee)]<0x2)return;let _0x402e3a=parseInt(_0x13caf4[0x1]),_0x2a0a29=0x2+(_0x402e3a+0x1)*0x3;if(_0x13caf4['length']<_0x2a0a29)return;let _0x2e29e4=[];for(let _0x3ab7ee=0x0;_0x3ab7ee<=_0x402e3a;_0x3ab7ee++){let _0xebc892=0x2+_0x3ab7ee*0x3;if(_0xebc892+0x2<_0x13caf4[_0x4be53b(0x1ee)]){let _0x1f7e42=this['_parseIgesNumber'](_0x13caf4[_0xebc892]),_0x314139=this['_parseIgesNumber'](_0x13caf4[_0xebc892+0x1]),_0x7f7a2=this[_0x4be53b(0x1c4)](_0x13caf4[_0xebc892+0x2]);_0x2e29e4['push']([_0x1f7e42,_0x314139,_0x7f7a2]);}}_0x2e29e4['length']>0x1&&_0x2b80e7['push'](_0x2e29e4);},'_processLineEntity':function(_0x1b6343,_0x305921){const _0x3f57f4=a0_0x772e08;if(_0x1b6343[_0x3f57f4(0x1ee)]>=0x7){let _0x2567a4=this[_0x3f57f4(0x1c4)](_0x1b6343[0x1]),_0x27b743=this[_0x3f57f4(0x1c4)](_0x1b6343[0x2]),_0x5405b1=this[_0x3f57f4(0x1c4)](_0x1b6343[0x3]),_0x37bd74=this['_parseIgesNumber'](_0x1b6343[0x4]),_0x29fba6=this[_0x3f57f4(0x1c4)](_0x1b6343[0x5]),_0x3be905=this['_parseIgesNumber'](_0x1b6343[0x6]);_0x305921[_0x3f57f4(0x16a)]([[_0x2567a4,_0x27b743,_0x5405b1],[_0x37bd74,_0x29fba6,_0x3be905]]);}},'_processNurbsCurveEntity':function(_0x1bbf90,_0x1ac135){const _0x5b3f0f=a0_0x772e08;if(_0x1bbf90[_0x5b3f0f(0x1ee)]<0x7)return;let _0x3c35ae=parseInt(_0x1bbf90[0x1]),_0x33a77b=parseInt(_0x1bbf90[0x2]),_0x272d9f=parseInt(_0x1bbf90[0x3]),_0x51617f=parseInt(_0x1bbf90[0x4]),_0x385a1a=parseInt(_0x1bbf90[0x5]),_0x168fc6=parseInt(_0x1bbf90[0x6]),_0x51785a=_0x3c35ae+0x1,_0x35b336=_0x3c35ae+_0x33a77b+0x2,_0x20b8c2=0x7,_0x3e8a21=_0x20b8c2+_0x35b336,_0x25d6b6=_0x3e8a21+_0x51785a+_0x51785a+_0x51785a+_0x51785a+0x2;if(_0x1bbf90[_0x5b3f0f(0x1ee)]<_0x25d6b6+0x3)return;let _0x12d7cb=[];for(let _0x55f33e=0x0;_0x55f33e<_0x35b336;_0x55f33e++)_0x12d7cb['push'](this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x20b8c2+_0x55f33e]));let _0x5a77a9=[];for(let _0xaeea64=0x0;_0xaeea64<_0x51785a;_0xaeea64++)_0x5a77a9[_0x5b3f0f(0x16a)](this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x3e8a21+_0xaeea64])||0x1);let _0x5508df=[],_0x4635b3=_0x3e8a21+_0x51785a,_0x124122=_0x4635b3+_0x51785a*0x3;if(_0x1bbf90[_0x5b3f0f(0x1ee)]>=_0x124122+0x5){for(let _0x513b6c=0x0;_0x513b6c<_0x51785a;_0x513b6c++){let _0x890ac3=_0x4635b3+_0x513b6c*0x3,_0x3a0d29=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x890ac3]),_0x5eecf5=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x890ac3+0x1]),_0x5ea9b9=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x890ac3+0x2]);_0x5508df[_0x5b3f0f(0x16a)]([_0x3a0d29,_0x5eecf5,_0x5ea9b9]);}let _0x9dec88=_0x124122,_0x4dd240=_0x9dec88+0x2,_0xb4b781=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x9dec88]),_0x28fd42=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x9dec88+0x1])||0x1,_0x14b48f=[this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x4dd240]),this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x4dd240+0x1]),this['_parseIgesNumber'](_0x1bbf90[_0x4dd240+0x2])],_0x28c84d={'type':_0x5b3f0f(0x1f5),'degree':_0x33a77b,'controlPoints':_0x5508df,'weights':_0x5a77a9,'knots':_0x12d7cb,'parameterRange':[_0xb4b781,_0x28fd42],'properties':{'planar':_0x272d9f===0x1,'closed':_0x51617f===0x1,'rational':_0x385a1a===0x1,'periodic':_0x168fc6===0x1},'normalVector':_0x14b48f,'numControlPoints':_0x51785a,'numKnots':_0x35b336,'upperControlPointIndex':_0x3c35ae};_0x1ac135[_0x5b3f0f(0x16a)](_0x28c84d);}else{let _0x5b8acf=_0x3e8a21+_0x51785a,_0x322860=_0x5b8acf+_0x51785a,_0x3feeb5=_0x322860+_0x51785a,_0x585f44=_0x3feeb5+_0x51785a,_0x595bbc=_0x585f44+0x2;if(_0x1bbf90[_0x5b3f0f(0x1ee)]<_0x595bbc+0x3)return;for(let _0x366f74=0x0;_0x366f74<_0x51785a;_0x366f74++){let _0x1b7576=this['_parseIgesNumber'](_0x1bbf90[_0x5b8acf+_0x366f74]),_0x1ae833=this['_parseIgesNumber'](_0x1bbf90[_0x322860+_0x366f74]),_0x1d4ab4=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x3feeb5+_0x366f74]);_0x5508df[_0x5b3f0f(0x16a)]([_0x1b7576,_0x1ae833,_0x1d4ab4]);}let _0x243d43=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x585f44]),_0x410811=this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x585f44+0x1])||0x1,_0x49edeb=[this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x595bbc]),this[_0x5b3f0f(0x1c4)](_0x1bbf90[_0x595bbc+0x1]),this['_parseIgesNumber'](_0x1bbf90[_0x595bbc+0x2])],_0x43c183={'type':_0x5b3f0f(0x1f5),'degree':_0x33a77b,'controlPoints':_0x5508df,'weights':_0x5a77a9,'knots':_0x12d7cb,'parameterRange':[_0x243d43,_0x410811],'properties':{'planar':_0x272d9f===0x1,'closed':_0x51617f===0x1,'rational':_0x385a1a===0x1,'periodic':_0x168fc6===0x1},'normalVector':_0x49edeb,'numControlPoints':_0x51785a,'numKnots':_0x35b336,'upperControlPointIndex':_0x3c35ae};_0x1ac135[_0x5b3f0f(0x16a)](_0x43c183);}},'_processNurbsSurfaceEntity':function(_0x3845a2,_0x43148a){const _0x162911=a0_0x772e08;if(_0x3845a2['length']<0xa)return;let _0x157903=parseInt(_0x3845a2[0x1]),_0xa39470=parseInt(_0x3845a2[0x2]),_0x53adbc=parseInt(_0x3845a2[0x3]),_0x48abde=parseInt(_0x3845a2[0x4]),_0x20d4c0=parseInt(_0x3845a2[0x5]),_0x485b8e=parseInt(_0x3845a2[0x6]),_0x2bc77d=parseInt(_0x3845a2[0x7]),_0xf33beb=parseInt(_0x3845a2[0x8]),_0x5f3710=parseInt(_0x3845a2[0x9]),_0xf7a682=_0x157903+0x1,_0x40a288=_0xa39470+0x1,_0x339281=_0x157903+_0x53adbc+0x2,_0x54f4a9=_0xa39470+_0x48abde+0x2,_0x1b0b0c=0xa,_0x5d3278=[];for(let _0x3995f9=0x0;_0x3995f9<_0x339281;_0x3995f9++)_0x5d3278[_0x162911(0x16a)](this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]));let _0x211eb4=[];for(let _0x124f36=0x0;_0x124f36<_0x54f4a9;_0x124f36++)_0x211eb4[_0x162911(0x16a)](this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]));let _0x15923a={'type':'nurbsSurface','degreeU':_0x53adbc,'degreeV':_0x48abde,'controlPoints':[],'weights':[],'knotsU':_0x5d3278,'knotsV':_0x211eb4,'properties':{'closedU':_0x20d4c0===0x1,'closedV':_0x485b8e===0x1,'rational':_0x2bc77d===0x1,'periodicU':_0xf33beb===0x1,'periodicV':_0x5f3710===0x1}};for(let _0x5de454=0x0;_0x5de454<_0xf7a682;_0x5de454++)_0x15923a[_0x162911(0x1af)][_0x162911(0x16a)](new Array(_0x40a288)),_0x15923a[_0x162911(0x171)][_0x162911(0x16a)](new Array(_0x40a288));for(let _0x5e33ad=0x0;_0x5e33ad<_0x40a288;_0x5e33ad++)for(let _0x4d1959=0x0;_0x4d1959<_0xf7a682;_0x4d1959++)_0x15923a[_0x162911(0x1af)][_0x4d1959][_0x5e33ad]=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++])||0x1;for(let _0x52d932=0x0;_0x52d932<_0x40a288;_0x52d932++)for(let _0xf93a27=0x0;_0xf93a27<_0xf7a682;_0xf93a27++){let _0x418be1=this['_parseIgesNumber'](_0x3845a2[_0x1b0b0c++]),_0x5e9df0=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]),_0x43e00e=this['_parseIgesNumber'](_0x3845a2[_0x1b0b0c++]);_0x15923a[_0x162911(0x171)][_0xf93a27][_0x52d932]=[_0x418be1,_0x5e9df0,_0x43e00e];}if(_0x1b0b0c+0x4<=_0x3845a2['length']){let _0x314bbb=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]),_0xd34a2d=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]),_0x524764=this['_parseIgesNumber'](_0x3845a2[_0x1b0b0c++]),_0x57e90c=this[_0x162911(0x1c4)](_0x3845a2[_0x1b0b0c++]);_0x15923a[_0x162911(0x1d6)]=[_0x314bbb,_0xd34a2d],_0x15923a[_0x162911(0x160)]=[_0x524764,_0x57e90c];}_0x43148a[_0x162911(0x16a)](_0x15923a);},'igesToGeometry':function(_0x40b748){const _0x1f8b6b=a0_0x772e08;if(!_0x40b748||typeof _0x40b748!=_0x1f8b6b(0x155))throw new Error('IGES\x20content\x20must\x20be\x20a\x20non-empty\x20string');let _0x47421f=[],_0x52d1ea=[],_0x520b72=[],_0x3237ad=[],_0x2fc0ff=_0x40b748[_0x1f8b6b(0x163)]('\x0a')[_0x1f8b6b(0x189)](_0xfefac6=>_0xfefac6[_0x1f8b6b(0x199)]()&&_0xfefac6[_0x1f8b6b(0x1be)](0x48)==='P'),_0x2b0fc4='';for(let _0x198c39 of _0x2fc0ff){let _0x407e39=_0x198c39[_0x1f8b6b(0x1ef)](0x0,0x40)[_0x1f8b6b(0x199)]();_0x2b0fc4+=_0x407e39,_0x407e39['endsWith'](';')&&(this[_0x1f8b6b(0x1ab)](_0x2b0fc4,_0x47421f,_0x52d1ea,_0x520b72,_0x3237ad),_0x2b0fc4='');}return{'lines':_0x47421f,'points':_0x52d1ea,'nurbsCurves':_0x520b72,'nurbsSurfaces':_0x3237ad};}},G={'polylinePlaneIntersections3D':function(_0x4fed81,_0x4806f6){const _0x29e710=a0_0x772e08;let _0x46e9bd=[];for(let _0x505be2=0x0;_0x505be2<_0x4fed81[_0x29e710(0x1ee)]-0x1;_0x505be2++){let _0x3b7dee=_0x4fed81[_0x505be2],_0x32f4f1=_0x4fed81[_0x505be2+0x1],_0x2b024a=[_0x32f4f1[0x0]-_0x3b7dee[0x0],_0x32f4f1[0x1]-_0x3b7dee[0x1],_0x32f4f1[0x2]-_0x3b7dee[0x2]],_0x2f0a2a={'origin':_0x3b7dee,'dir':_0x2b024a},_0x33e8a9=this[_0x29e710(0x16e)](_0x2f0a2a,_0x4806f6);if(_0x33e8a9){let _0x4ce6a6=_0x2b024a[0x0]!==0x0?(_0x33e8a9[0x0]-_0x3b7dee[0x0])/_0x2b024a[0x0]:_0x2b024a[0x1]!==0x0?(_0x33e8a9[0x1]-_0x3b7dee[0x1])/_0x2b024a[0x1]:_0x2b024a[0x2]!==0x0?(_0x33e8a9[0x2]-_0x3b7dee[0x2])/_0x2b024a[0x2]:0x0;_0x4ce6a6>=0x0&&_0x4ce6a6<=0x1&&(_0x46e9bd[_0x29e710(0x17b)](_0x5e4cb6=>{const _0x7dcd55=_0x29e710;let _0x219b74=_0x5e4cb6[0x0]-_0x33e8a9[0x0],_0x47e490=_0x5e4cb6[0x1]-_0x33e8a9[0x1],_0x2a8ab1=_0x5e4cb6[0x2]-_0x33e8a9[0x2];return Math[_0x7dcd55(0x1dc)](_0x219b74*_0x219b74+_0x47e490*_0x47e490+_0x2a8ab1*_0x2a8ab1)<1e-10;})||_0x46e9bd[_0x29e710(0x16a)](_0x33e8a9));}}return _0x46e9bd;},'rayPlaneIntersection3D':function(_0x56e7f1,_0x1f9fbb){const _0x155dcc=a0_0x772e08;let _0x33fcc3=_0x56e7f1['origin'],_0x19329d=_0x56e7f1['dir'],_0x2f7862=_0x1f9fbb[_0x155dcc(0x1ca)],_0x259b76=_0x1f9fbb['normal'],_0x7e2446=_0x19329d[0x0]*_0x259b76[0x0]+_0x19329d[0x1]*_0x259b76[0x1]+_0x19329d[0x2]*_0x259b76[0x2];if(Math[_0x155dcc(0x1c9)](_0x7e2446)<1e-10)return null;let _0x7cb561=((_0x2f7862[0x0]-_0x33fcc3[0x0])*_0x259b76[0x0]+(_0x2f7862[0x1]-_0x33fcc3[0x1])*_0x259b76[0x1]+(_0x2f7862[0x2]-_0x33fcc3[0x2])*_0x259b76[0x2])/_0x7e2446;return _0x7cb561<0x0?null:[_0x33fcc3[0x0]+_0x7cb561*_0x19329d[0x0],_0x33fcc3[0x1]+_0x7cb561*_0x19329d[0x1],_0x33fcc3[0x2]+_0x7cb561*_0x19329d[0x2]];},'polylineIntersections3D':function(_0x5754e6,_0x1173cb,_0x5c4ba5=0.000001){const _0x20251e=a0_0x772e08;function _0x4a6f32(_0x2eadbb,_0x29638c,_0x4bd014,_0x5b619c){const _0xc8562b=a0_0x57f9;let _0x3efb33=[_0x29638c[0x0]-_0x2eadbb[0x0],_0x29638c[0x1]-_0x2eadbb[0x1],_0x29638c[0x2]-_0x2eadbb[0x2]],_0x2b7266=[_0x5b619c[0x0]-_0x4bd014[0x0],_0x5b619c[0x1]-_0x4bd014[0x1],_0x5b619c[0x2]-_0x4bd014[0x2]],_0x1b4d3e=[_0x2eadbb[0x0]-_0x4bd014[0x0],_0x2eadbb[0x1]-_0x4bd014[0x1],_0x2eadbb[0x2]-_0x4bd014[0x2]],_0x2ef7c0=_0x23a158(_0x3efb33,_0x3efb33),_0x42010f=_0x23a158(_0x3efb33,_0x2b7266),_0x52e2b2=_0x23a158(_0x2b7266,_0x2b7266),_0x22b91c=_0x23a158(_0x3efb33,_0x1b4d3e),_0x1aa340=_0x23a158(_0x2b7266,_0x1b4d3e),_0x20c17c=_0x2ef7c0*_0x52e2b2-_0x42010f*_0x42010f,_0x16c8d4,_0x514d42;_0x20c17c===0x0?(_0x16c8d4=0x0,_0x514d42=_0x42010f>_0x52e2b2?_0x22b91c/_0x42010f:_0x1aa340/_0x52e2b2):(_0x16c8d4=(_0x42010f*_0x1aa340-_0x52e2b2*_0x22b91c)/_0x20c17c,_0x514d42=(_0x2ef7c0*_0x1aa340-_0x42010f*_0x22b91c)/_0x20c17c),_0x16c8d4=Math[_0xc8562b(0x1f1)](0x0,Math[_0xc8562b(0x19d)](0x1,_0x16c8d4)),_0x514d42=Math[_0xc8562b(0x1f1)](0x0,Math[_0xc8562b(0x19d)](0x1,_0x514d42));let _0x2a8daf=[_0x2eadbb[0x0]+_0x16c8d4*_0x3efb33[0x0],_0x2eadbb[0x1]+_0x16c8d4*_0x3efb33[0x1],_0x2eadbb[0x2]+_0x16c8d4*_0x3efb33[0x2]],_0x55f0c1=[_0x4bd014[0x0]+_0x514d42*_0x2b7266[0x0],_0x4bd014[0x1]+_0x514d42*_0x2b7266[0x1],_0x4bd014[0x2]+_0x514d42*_0x2b7266[0x2]];return{'pt1':_0x2a8daf,'pt2':_0x55f0c1,'distance':Math['sqrt']((_0x2a8daf[0x0]-_0x55f0c1[0x0])**0x2+(_0x2a8daf[0x1]-_0x55f0c1[0x1])**0x2+(_0x2a8daf[0x2]-_0x55f0c1[0x2])**0x2)};}function _0x23a158(_0x40beb7,_0x4600f2){return _0x40beb7[0x0]*_0x4600f2[0x0]+_0x40beb7[0x1]*_0x4600f2[0x1]+_0x40beb7[0x2]*_0x4600f2[0x2];}let _0xf5e17e=[];for(let _0x2b1c4d=0x0;_0x2b1c4d<_0x5754e6[_0x20251e(0x1ee)]-0x1;_0x2b1c4d++)for(let _0xb13a02=0x0;_0xb13a02<_0x1173cb[_0x20251e(0x1ee)]-0x1;_0xb13a02++){let {pt1:_0x1b4fb5,pt2:_0x59b7dd,distance:_0x514775}=_0x4a6f32(_0x5754e6[_0x2b1c4d],_0x5754e6[_0x2b1c4d+0x1],_0x1173cb[_0xb13a02],_0x1173cb[_0xb13a02+0x1]);_0x514775<_0x5c4ba5&&_0xf5e17e[_0x20251e(0x16a)]({'point':[(_0x1b4fb5[0x0]+_0x59b7dd[0x0])/0x2,(_0x1b4fb5[0x1]+_0x59b7dd[0x1])/0x2,(_0x1b4fb5[0x2]+_0x59b7dd[0x2])/0x2],'seg1':_0x2b1c4d,'seg2':_0xb13a02,'distance':_0x514775});}return _0xf5e17e;}},B={'projectTo2d':function(_0x2ff4c0){const _0x79e8f0=a0_0x772e08;let _0x31d08e=[..._0x2ff4c0];if(_0x31d08e[_0x79e8f0(0x1ee)]<0x3)throw new Error(_0x79e8f0(0x1a0));let {normal:_0xabfd40,point:_0x54004b}=this[_0x79e8f0(0x1a3)](_0x31d08e),_0x4ce634=1e-10,_0x1c88f3=null;for(let _0x56d90a=0x1;_0x56d90a<_0x31d08e[_0x79e8f0(0x1ee)];_0x56d90a++){let _0x11881a=w[_0x79e8f0(0x1eb)](_0x54004b,_0x31d08e[_0x56d90a]);if(w[_0x79e8f0(0x1ee)](_0x11881a)>_0x4ce634){_0x1c88f3=_0x11881a;break;}}let _0x274360=w[_0x79e8f0(0x19b)](_0x1c88f3),_0x3b768f=w[_0x79e8f0(0x1cd)](_0xabfd40,_0x274360),_0x24a64a=w[_0x79e8f0(0x19b)](_0x3b768f);return _0x31d08e[_0x79e8f0(0x1c7)](_0x28f405=>{const _0x3fb82a=_0x79e8f0;let _0x44d33e=w[_0x3fb82a(0x1eb)](_0x54004b,_0x28f405);return[w[_0x3fb82a(0x1d0)](_0x44d33e,_0x274360),w[_0x3fb82a(0x1d0)](_0x44d33e,_0x24a64a)];});},'projectedAreas':function(_0x4e03aa){const _0x40a588=a0_0x772e08;let _0x24f2ab=[..._0x4e03aa];if(_0x24f2ab['length']<0x3)throw new Error(_0x40a588(0x1a0));let _0x26c6fd=_0x24f2ab[_0x40a588(0x1ee)],_0x1e6349=0x0;for(let _0x5a4697=0x0;_0x5a4697<_0x26c6fd;_0x5a4697++){let [_0x527a12,_0x1d707f]=_0x24f2ab[_0x5a4697],[_0x20970e,_0x5abb76]=_0x24f2ab[(_0x5a4697+0x1)%_0x26c6fd];_0x1e6349+=_0x527a12*_0x5abb76-_0x20970e*_0x1d707f;}_0x1e6349=Math[_0x40a588(0x1c9)](_0x1e6349)*0.5;let _0x34adef=0x0;for(let _0x188bfd=0x0;_0x188bfd<_0x26c6fd;_0x188bfd++){let [_0x391282,,_0x44f92d]=_0x24f2ab[_0x188bfd],[_0x202b8a,,_0x440c9f]=_0x24f2ab[(_0x188bfd+0x1)%_0x26c6fd];_0x34adef+=_0x391282*_0x440c9f-_0x202b8a*_0x44f92d;}_0x34adef=Math['abs'](_0x34adef)*0.5;let _0x1d6aaa=0x0;for(let _0xfadcb1=0x0;_0xfadcb1<_0x26c6fd;_0xfadcb1++){let [,_0xc0085,_0x2e01f7]=_0x24f2ab[_0xfadcb1],[,_0x36ff65,_0x2f5c54]=_0x24f2ab[(_0xfadcb1+0x1)%_0x26c6fd];_0x1d6aaa+=_0xc0085*_0x2f5c54-_0x36ff65*_0x2e01f7;}return _0x1d6aaa=Math[_0x40a588(0x1c9)](_0x1d6aaa)*0.5,{'xy':_0x1e6349,'xz':_0x34adef,'yz':_0x1d6aaa};},'plane':function(_0xd4654b){const _0x4d2756=a0_0x772e08;let _0x1dff6f=[..._0xd4654b];if(_0x1dff6f[_0x4d2756(0x1ee)]<0x3)throw new Error(_0x4d2756(0x151));let _0x5f35d4=1e-10,_0x4b2cdf=_0x1dff6f[0x0],_0x242e04=null,_0xff7228=-0x1;for(let _0x40fdbd=0x1;_0x40fdbd<_0x1dff6f['length'];_0x40fdbd++){let _0x125be9=w[_0x4d2756(0x1eb)](_0x4b2cdf,_0x1dff6f[_0x40fdbd]);if(w[_0x4d2756(0x1ee)](_0x125be9)>_0x5f35d4){_0x242e04=_0x125be9,_0xff7228=_0x40fdbd;break;}}if(!_0x242e04)throw new Error(_0x4d2756(0x1ae));let _0x47350f=null;for(let _0x5d8390=0x1;_0x5d8390<_0x1dff6f[_0x4d2756(0x1ee)];_0x5d8390++){if(_0x5d8390===_0xff7228)continue;let _0x5038bf=w[_0x4d2756(0x1eb)](_0x4b2cdf,_0x1dff6f[_0x5d8390]),_0x4adeff=w['cross'](_0x242e04,_0x5038bf);if(w[_0x4d2756(0x1ee)](_0x4adeff)>_0x5f35d4){_0x47350f=w[_0x4d2756(0x19b)](_0x4adeff);break;}}if(!_0x47350f)throw new Error('Degenerate\x20polygon:\x20all\x20points\x20are\x20collinear');let [_0x220edc,_0x4e9385,_0x4c0554]=_0x47350f,_0x2cbfd9=-(_0x220edc*_0x4b2cdf[0x0]+_0x4e9385*_0x4b2cdf[0x1]+_0x4c0554*_0x4b2cdf[0x2]);return{'a':_0x220edc,'b':_0x4e9385,'c':_0x4c0554,'d':_0x2cbfd9,'normal':_0x47350f,'point':_0x4b2cdf};}};if(new Date()[a0_0x772e08(0x1d5)]()>0x7ea)throw new Error('');export{O as Bspline3d,K as Cspline3d,H as Iges,G as Intersection3d,$ as Matrix,k as Nurbs3d,U as Point3d,B as Polygon3d,A as Polyline3D,L as Utils,w as Vector3d};function a0_0x2e26(){const _0x21d009=['normalized','totalLength','min','_resample_to_uniform_arc_length','solveLinearSystem','Need\x20at\x20least\x203\x20points\x20for\x20a\x20polygon','create_arc','Control\x20points\x202D\x20array\x20is\x20required','plane','_uniform_parameterization','toUpperCase','geometry.iges','nurbsSurface','slice','bad\x20knot\x20vector\x20length','segmentLengths','_processEntity','isArray','toString','Degenerate\x20polygon:\x20all\x20points\x20are\x20coincident','weights','degree\x20must\x20be\x20at\x20least\x201\x20(linear)','lastIndexOf','Invalid\x20knot\x20vector\x20length:\x20expected\x20','getNaturalKs','E$1','type','401009nJjDvE','_basis_function','_processLineEntity','1.0','replace','toExponential','vectorMultiplyTranspose','cos','charAt','cumulativeLength','padStart','_formatTerminateSection','knots','multiplyTranspose','_parseIgesNumber','out\x20of\x20bounds','Auto-generation\x20of\x20knot\x20vectors\x20not\x20fully\x20implemented.\x20Please\x20provide\x20knotsU\x20and\x20knotsV.','map','_generateGlobalSection','abs','point','26604FBtTMP','Invalid\x20point\x20format.\x20Expected\x20[x,\x20y,\x20z]','cross','findParameterAtPoint','uniform','dot','_processNurbsCurveEntity','js3d','parameterEntry','move','getFullYear','parameterRangeU','forEach','_toHollerith','309305zBcoXs','linspace','warn','sqrt','knotsV','resolution\x20must\x20be\x20at\x20least\x20degree\x20+\x201','Skipping\x20NURBS\x20curve:\x20need\x20at\x20least\x20','Need\x20at\x20least\x202\x20points\x20to\x20approximate','degree\x20must\x20be\x20less\x20than\x20or\x20equal\x20to\x20point\x20count\x20-\x201','Skipping\x20NURBS\x20surface:\x20insufficient\x20control\x20points','964920iAGmaq',',0,0,1,0,0','1526416SEyqUI','bspline','_processNurbsSurfaceEntity','pow','_formatSection','sub','fromTwoPoints','lineCount','polyline','length','substring','join','max','308','insert_knot','670240uTQxlO','nurbsCurve','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','data','Need\x20at\x20least\x203\x20points\x20to\x20define\x20a\x20plane',',\x20got\x20','POSITIVE_INFINITY','findPointAtParameter','string','_uniform_knot_vector','padEnd','T\x20\x20\x20\x20\x20\x201\x0a','Weights\x20array\x20length\x20must\x20match\x20control\x20points\x20length','Unknown\x20geometry\x20type:\x20','knotsU','fill','sin','organization','No\x20valid\x20geometries\x20found\x20to\x20convert','parameterRangeV','1H,','object','split',',0.0,0.0,0.0','normalizedCosineSpacing','scalarProduct','nurbs_surface.iges','uniform_knot_spacing','degreeU','push','Invalid\x20geometry\x20object.\x20Expected\x20{\x20type:\x20\x22points|polyline|nurbsCurve|nurbsSurface\x22,\x20data:\x20[...]\x20}','round','log','rayPlaneIntersection3D','_approximate_knot_vector','.\x20Supported\x20types:\x20points,\x20polyline,\x20nurbsCurve,\x20nurbsSurface','controlPoints','nurbs','106,','Knots\x20U\x20and\x20V\x20are\x20required\x20for\x20NURBS\x20surface','START','_gaussJ','toFixed','centripetal','_centripetal_parameterization','from','some',',0,0,1,0','7ACxMCJ','degreeV','580218hwHyVi','ceil','128,','NURBS\x20surface\x20conversion\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20S\x20\x20\x20\x20\x20\x202','directoryEntry','filename','0.01','substr','_processPointEntity','3XvNORY','filter','1810Yjdpjc','floor','author','zerosMat','1000.0','0.0001','_formatNumber','chordLength','LiftLab','_chord_length_parameterization','_formatDirectoryLine','points','_createPolylineEntity','_createNurbsSurfaceEntity','126,','trim','_formatParameterLine'];a0_0x2e26=function(){return _0x21d009;};return a0_0x2e26();}
|