// All material copyright Esri, All Rights Reserved, unless otherwise specified. // See https://js.arcgis.com/4.30/esri/copyright.txt for details. //>>built define(["require","exports","../assets","../core/has"],function(z,a,A,B){function w(){return!!a._pe}function x(){return!!B("esri-wasm")}function y(){return u?u:u=(new Promise((c,d)=>z(["./pe-wasm"],c,d))).then(c=>c.peWasm).then(({default:c})=>c({locateFile:d=>A.getAssetUrl(`esri/geometry/support/${d}`)})).then(c=>{v(c)})}function v(c){function d(e,b,f){e[b]=f(e[b])}a._pe=c;a.PeDefs.init();a.PeGTlistExtended.init();a.PeNotationMgrs.init();a.PeNotationUtm.init();a.PePCSInfo.init();a.PeGCSExtent=class extends a._pe.PeGCSExtent{destroy(){a._pe.destroy(this)}}; c=[a._pe.PeDatum,a._pe.PeGeogcs,a._pe.PeGeogtran,a._pe.PeObject,a._pe.PeParameter,a._pe.PePrimem,a._pe.PeProjcs,a._pe.PeSpheroid,a._pe.PeUnit];for(var k of c)d(k.prototype,"getName",e=>function(){return e.call(this,Array(a.PeDefs.PE_NAME_MAX))});for(const e of[a._pe.PeGeogtran,a._pe.PeProjcs])d(e.prototype,"getParameters",b=>function(){const f=Array(a.PeDefs.PE_PARM_MAX);let h=b.call(this);for(let l=0;lfunction(){const b=this.getSize();if(!b)return null;const f=[],h=e.call(this);q(f,b,h);return f});d(a._pe.PeGTlistExtendedEntry.prototype,"getEntries",e=>{const b=a._pe._pe_getPeGTlistExtendedGTsSize();return function(){let f=null;var h=e.call(this);if(!a._pe.compare(h,a._pe.NULL)){f=[h];const l=this.getSteps();if(1function(){let b=this._cache;b||(this._cache=b=new Map);if(b.has(e))return b.get(e);let f=null;var h=e.call(this);if(!a._pe.compare(h,a._pe.NULL)){f=[h];const l=h.getNump();if(1{d.push(k[0],k[1])})):d=c;return d}function q(c,d,k,g=!1){if(g)for(g=0;g<2*d;g++)c[g]=a._pe.getValue(k+ g*Float64Array.BYTES_PER_ELEMENT,"double");else{g=0===c.length;for(let e=0;e{if(b){const f=b.getType();switch(f){case a.PeDefs.PE_TYPE_GEOGCS:b= a._pe.castObject(b,a._pe.PeGeogcs);break;case a.PeDefs.PE_TYPE_PROJCS:b=a._pe.castObject(b,a._pe.PeProjcs);break;case a.PeDefs.PE_TYPE_GEOGTRAN:b=a._pe.castObject(b,a._pe.PeGeogtran);break;default:f&a.PeDefs.PE_TYPE_UNIT&&(b=a._pe.castObject(b,a._pe.PeUnit))}}return b};c.initialize=function(){a._pe.PeFactory.prototype.initialize(null)};c.coordsys=function(b){return d(a.PeDefs.PE_TYPE_COORDSYS,b)};c.factoryByType=d;c.fromString=function(b,f){let h=null,l=g[b];l||(l={},g[b]=l);l.hasOwnProperty(f)?h= l[f]:(b=a._pe.PeFactory.prototype.fromString(b,f),a._pe.compare(b,a._pe.NULL)||(h=b,l[f]=h));return h=e(h)};c.geogcs=function(b){return d(a.PeDefs.PE_TYPE_GEOGCS,b)};c.geogtran=function(b){return d(a.PeDefs.PE_TYPE_GEOGTRAN,b)};c.getCode=function(b){return a._pe.PeFactory.prototype.getCode(b)};c.projcs=function(b){return d(a.PeDefs.PE_TYPE_PROJCS,b)};c.unit=function(b){return d(a.PeDefs.PE_TYPE_UNIT,b)}})(a.PeFactory||(a.PeFactory={}));a.PeGCSExtent=null;a.PeGTlistExtended=void 0;(function(c){let d; c.init=function(){c.PE_GTLIST_OPTS_COMMON=a._pe.PeGTlistExtended.prototype.PE_GTLIST_OPTS_COMMON;d=a._pe._pe_getPeGTlistExtendedEntrySize()};c.getGTlist=function(k,g,e,b,f,h){let l=null;const m=new a._pe.PeInteger(h);try{const p=a._pe.PeGTlistExtended.prototype.getGTlist(k,g,e,b,f,m);if(h=m.val)if(l=[p],1{n(g);g=g.getGeogtran();n(g);g.getParameters().forEach(n);[g.getGeogcs1(),g.getGeogcs2()].forEach(e=>{n(e);const b=e.getDatum();n(b);n(b.getSpheroid());n(e.getPrimem());n(e.getUnit())})});a._pe.PeGTlistExtendedEntry.prototype.Delete(d[0])}}})(a.PeGTlistExtendedEntry||(a.PeGTlistExtendedEntry={}));a.PeGTTransformations=void 0;(function(c){c.geogToGeog=function(d,k,g,e,b){a._pe.ensureCache.prepare(); var f=r(g);const h=g===f;f=a._pe.ensureFloat64(f);let l=0;e&&(l=a._pe.ensureFloat64(e));(d=a._pe._pe_geog_to_geog(a._pe.getPointer(d),k,f,l,b))&&q(g,k,f,h);return d}})(a.PeGTTransformations||(a.PeGTTransformations={}));a.PeNotationDms=void 0;(function(c){const d=(g,e,b,f,h,l)=>{a._pe.ensureCache.prepare();switch(g){case "dd":var m=a._pe._pe_geog_to_dd;var p=a.PeDefs.PE_DD_MAX;break;case "ddm":m=a._pe._pe_geog_to_ddm;p=a.PeDefs.PE_DDM_MAX;break;case "dms":m=a._pe._pe_geog_to_dms,p=a.PeDefs.PE_DMS_MAX}g= 0;e&&(g=a._pe.getPointer(e));e=r(f);e=a._pe.ensureFloat64(e);p=t(b,p);f=a._pe.ensureInt32(p);if(h=m(g,b,e,h,f))for(m=0;m{a._pe.ensureCache.prepare();switch(g){case "dd":var l=a._pe._pe_dd_to_geog;break;case "ddm":l=a._pe._pe_ddm_to_geog;break;case "dms":l=a._pe._pe_dms_to_geog}g=0;e&&(g=a._pe.getPointer(e));e=f.map(m=>a._pe.ensureString(m));f=a._pe.ensureInt32(e);e=a._pe.ensureFloat64(Array(2*b));(l=l(g,b,f,e))&&q(h,b,e);return l};c.geogToDms= function(g,e,b,f,h){return d("dms",g,e,b,f,h)};c.dmsToGeog=function(g,e,b,f){return k("dms",g,e,b,f)};c.geogToDdm=function(g,e,b,f,h){return d("ddm",g,e,b,f,h)};c.ddmToGeog=function(g,e,b,f){return k("ddm",g,e,b,f)};c.geogToDd=function(g,e,b,f,h){return d("dd",g,e,b,f,h)};c.ddToGeog=function(g,e,b,f){return k("dd",g,e,b,f)}})(a.PeNotationDms||(a.PeNotationDms={}));a.PeNotationMgrs=void 0;(function(c){c.init=function(){c.PE_MGRS_STYLE_NEW=a._pe.PeNotationMgrs.prototype.PE_MGRS_STYLE_NEW;c.PE_MGRS_STYLE_OLD= a._pe.PeNotationMgrs.prototype.PE_MGRS_STYLE_OLD;c.PE_MGRS_STYLE_AUTO=a._pe.PeNotationMgrs.prototype.PE_MGRS_STYLE_AUTO;c.PE_MGRS_180_ZONE_1_PLUS=a._pe.PeNotationMgrs.prototype.PE_MGRS_180_ZONE_1_PLUS;c.PE_MGRS_ADD_SPACES=a._pe.PeNotationMgrs.prototype.PE_MGRS_ADD_SPACES};c.geogToMgrsExtended=function(d,k,g,e,b,f,h){a._pe.ensureCache.prepare();let l=0;d&&(l=a._pe.getPointer(d));d=r(g);g=a._pe.ensureFloat64(d);d=t(k,a.PeDefs.PE_MGRS_MAX);const m=a._pe.ensureInt32(d);if(e=a._pe._pe_geog_to_mgrs_extended(l, k,g,e,b,f,m))for(b=0;ba._pe.ensureString(h));g=a._pe.ensureInt32(d);d=a._pe.ensureFloat64(Array(2*k));(e=a._pe._pe_mgrs_to_geog_extended(f,k,g,e,d))&&q(b,k,d);return e}})(a.PeNotationMgrs||(a.PeNotationMgrs={}));a.PeNotationUsng=void 0;(function(c){c.geogToUsng=function(d,k,g,e,b,f,h){a._pe.ensureCache.prepare();let l=0;d&&(l=a._pe.getPointer(d)); d=r(g);g=a._pe.ensureFloat64(d);d=t(k,a.PeDefs.PE_MGRS_MAX);const m=a._pe.ensureInt32(d);if(e=a._pe._pe_geog_to_usng(l,k,g,e,b,f,m))for(b=0;ba._pe.ensureString(f));g=a._pe.ensureInt32(d);d=a._pe.ensureFloat64(Array(2*k));(b=a._pe._pe_usng_to_geog(b,k,g,d))&&q(e,k,d);return b}})(a.PeNotationUsng||(a.PeNotationUsng={}));a.PeNotationUtm=void 0;(function(c){c.init= function(){c.PE_UTM_OPTS_NONE=a._pe.PeNotationUtm.prototype.PE_UTM_OPTS_NONE;c.PE_UTM_OPTS_ADD_SPACES=a._pe.PeNotationUtm.prototype.PE_UTM_OPTS_ADD_SPACES;c.PE_UTM_OPTS_NS=a._pe.PeNotationUtm.prototype.PE_UTM_OPTS_NS};c.geogToUtm=function(d,k,g,e,b){a._pe.ensureCache.prepare();var f=0;d&&(f=a._pe.getPointer(d));d=r(g);g=a._pe.ensureFloat64(d);d=t(k,a.PeDefs.PE_UTM_MAX);const h=a._pe.ensureInt32(d);if(e=a._pe._pe_geog_to_utm(f,k,g,e,h))for(f=0;fa._pe.ensureString(h));g=a._pe.ensureInt32(d);d=a._pe.ensureFloat64(Array(2*k));(e=a._pe._pe_utm_to_geog(f,k,g,e,d))&&q(b,k,d);return e}})(a.PeNotationUtm||(a.PeNotationUtm={}));a.PePCSInfo=void 0;(function(c){const d=new Map;c.init=function(){c.PE_PCSINFO_OPTION_NONE=a._pe.PePCSInfo.prototype.PE_PCSINFO_OPTION_NONE;c.PE_PCSINFO_OPTION_DOMAIN=a._pe.PePCSInfo.prototype.PE_PCSINFO_OPTION_DOMAIN;c.PE_POLE_OUTSIDE_BOUNDARY= a._pe.PePCSInfo.prototype.PE_POLE_OUTSIDE_BOUNDARY;c.PE_POLE_POINT=a._pe.PePCSInfo.prototype.PE_POLE_POINT};c.generate=function(k,g=c.PE_PCSINFO_OPTION_DOMAIN){let e=null,b=null;d.has(k)&&(b=d.get(k),b[g]&&(e=b[g]));e||(e=a._pe.PePCSInfo.prototype.generate(k,g),b||(b=[],d.set(k,b)),b[g]=e);return e}})(a.PePCSInfo||(a.PePCSInfo={}));a.PeVersion=void 0;(function(c){c.versionString=function(){return a._pe.PeVersion.prototype.version_string()}})(a.PeVersion||(a.PeVersion={}));const D=Object.freeze(Object.defineProperty({__proto__:null, get PeCSTransformations(){return a.PeCSTransformations},get PeDefs(){return a.PeDefs},get PeFactory(){return a.PeFactory},get PeGCSExtent(){return a.PeGCSExtent},get PeGTTransformations(){return a.PeGTTransformations},get PeGTlistExtended(){return a.PeGTlistExtended},get PeGTlistExtendedEntry(){return a.PeGTlistExtendedEntry},get PeNotationDms(){return a.PeNotationDms},get PeNotationMgrs(){return a.PeNotationMgrs},get PeNotationUsng(){return a.PeNotationUsng},get PeNotationUtm(){return a.PeNotationUtm}, get PePCSInfo(){return a.PePCSInfo},get PeVersion(){return a.PeVersion},_init:v,get _pe(){return a._pe},isLoaded:w,isSupported:x,load:y},Symbol.toStringTag,{value:"Module"}));a._init=v;a.isLoaded=w;a.isSupported=x;a.load=y;a.pe=D});