UNPKG

@arcgis/core

Version:

ArcGIS Maps SDK for JavaScript: A complete 2D and 3D mapping and data visualization API

1 lines • 7.8 kB
"use strict";(self.webpackChunkRemoteClient=self.webpackChunkRemoteClient||[]).push([[7087],{34727(e,t,n){n.d(t,{$8:()=>B,Cc:()=>s,Hx:()=>g,Io:()=>y,KJ:()=>u,OS:()=>U,Sp:()=>m,XM:()=>f,YN:()=>c,ZH:()=>d,b6:()=>b,cU:()=>a,gg:()=>h,hs:()=>l,kU:()=>o,or:()=>v,pF:()=>I,pq:()=>D,qE:()=>r});const i=new Float32Array(1);function a(e){--e;for(let t=1;t<32;t<<=1)e|=e>>t;return e+1}function r(e,t,n){return Math.min(Math.max(e,t),n)}function s(e,t,n){return e+(t-e)*n}function l(e,t,n,i,a){return s(i,a,(e-t)/(n-t))}function o(e){return e*Math.PI/180}function u(e){return 180*e/Math.PI}function f(e){return Math.acos(r(e,-1,1))}function c(e){return Math.asin(r(e,-1,1))}function m(e,t,n=1e-6){return e===t||!(!Number.isFinite(e)||!Number.isFinite(t))&&(e>t?e-t:t-e)<=n}function h(e,t,n=1e-6){return!m(e,t,n)&&e>t}function d(e,t,n=1e-6){return!m(e,t,n)&&e<t}function g(e,t,n=1e-6){return m(e,t,n)||e>t}const k=new DataView(new ArrayBuffer(Float64Array.BYTES_PER_ELEMENT));function x(e){return k.setFloat64(0,e),k.getBigInt64(0)}const p=1000000n,w=M(1);function M(e){const t=x(e=Math.abs(e)),n=function(e){return k.setBigInt64(0,e),k.getFloat64(0)}(t<=p?p:t-p);return Math.abs(e-n)}function y(e,t,n=w){if(e===t)return!0;if(!Number.isFinite(e)||!Number.isFinite(t))return!1;if(null!=n&&M(Math.min(Math.abs(e),Math.abs(t)))<n)return Math.abs(e-t)<=n;const i=x(e),a=x(t);return i<0==a<0&&!((i<a?a-i:i-a)>p)}function b(e,t,n=1e-6){if(e===t)return!0;if(!Number.isFinite(e)||!Number.isFinite(t))return!1;const i=Math.abs(e-t),a=Math.abs(e),r=Math.abs(t);if(0===e||0===t||a<1e-12&&r<1e-12){if(i>.01*n)return!1}else if(i/(a+r)>n)return!1;return!0}function B(e){return V(Math.max(-D,Math.min(e,D)))}function V(e){return i[0]=e,i[0]}function v(e){const t=e[0]*e[0]+e[1]*e[1]+e[2]*e[2],n=e[3]*e[3]+e[4]*e[4]+e[5]*e[5],i=e[6]*e[6]+e[7]*e[7]+e[8]*e[8];return!(m(t,1)&&m(n,1)&&m(i,1))}function U(e,t){return(e%t+t)%t}const D=V(34028234663852886e22);function I(e,t,n){if(void 0===n||0===+n)return Math[e](t);if(t=+t,n=+n,isNaN(t)||"number"!=typeof n||n%1!=0)return NaN;let i=t.toString().split("e");return i=(t=Math[e](+(i[0]+"e"+(i[1]?+i[1]-n:-n)))).toString().split("e"),+(i[0]+"e"+(i[1]?+i[1]+n:n))}},57087(e,t,n){n.r(t),n.d(t,{default:()=>m});var i=n(34727),a={};a.defaultNoDataValue=(0,i.$8)(-1/0),a.decode=function(e,t){var n=(t=t||{}).encodedMaskData||null===t.encodedMaskData,u=o(e,t.inputOffset||0,n),f=null!=t.noDataValue?(0,i.$8)(t.noDataValue):a.defaultNoDataValue,c=r(u,t.pixelType||Float32Array,t.encodedMaskData,f,t.returnMask),m={width:u.width,height:u.height,pixelData:c.resultPixels,minValue:u.pixels.minValue,maxValue:u.pixels.maxValue,noDataValue:f};return c.resultMask&&(m.maskData=c.resultMask),t.returnEncodedMask&&u.mask&&(m.encodedMaskData=u.mask.bitset?u.mask.bitset:null),t.returnFileInfo&&(m.fileInfo=s(u,f),t.computeUsedBitDepths&&(m.fileInfo.bitDepths=l(u))),m};var r=function(e,t,n,i,a){var r,s,l=0,o=e.pixels.numBlocksX,f=e.pixels.numBlocksY,c=Math.floor(e.width/o),m=Math.floor(e.height/f),h=2*e.maxZError;n=n||(e.mask?e.mask.bitset:null),r=new t(e.width*e.height),a&&n&&(s=new Uint8Array(e.width*e.height));for(var d,g,k=new Float32Array(c*m),x=0;x<=f;x++){var p=x!==f?m:e.height%f;if(0!==p)for(var w=0;w<=o;w++){var M=w!==o?c:e.width%o;if(0!==M){var y,b,B,V,v=x*e.width*m+w*c,U=e.width-M,D=e.pixels.blocks[l];if(D.encoding<2?(0===D.encoding?y=D.rawData:(u(D.stuffedData,D.bitsPerPixel,D.numValidPixels,D.offset,h,k,e.pixels.maxValue),y=k),b=0):B=2===D.encoding?0:D.offset,n)for(g=0;g<p;g++){for(7&v&&(V=n[v>>3],V<<=7&v),d=0;d<M;d++)7&v||(V=n[v>>3]),128&V?(s&&(s[v]=1),r[v++]=D.encoding<2?y[b++]:B):(s&&(s[v]=0),r[v++]=i),V<<=1;v+=U}else if(D.encoding<2)for(g=0;g<p;g++){for(d=0;d<M;d++)r[v++]=y[b++];v+=U}else for(g=0;g<p;g++)if(r.fill)r.fill(B,v,v+M),v+=M+U;else{for(d=0;d<M;d++)r[v++]=B;v+=U}if(1===D.encoding&&b!==D.numValidPixels)throw"Block and Mask do not match";l++}}}return{resultPixels:r,resultMask:s}},s=function(e,t){return{fileIdentifierString:e.fileIdentifierString,fileVersion:e.fileVersion,imageType:e.imageType,height:e.height,width:e.width,maxZError:e.maxZError,eofOffset:e.eofOffset,mask:e.mask?{numBlocksX:e.mask.numBlocksX,numBlocksY:e.mask.numBlocksY,numBytes:e.mask.numBytes,maxValue:e.mask.maxValue}:null,pixels:{numBlocksX:e.pixels.numBlocksX,numBlocksY:e.pixels.numBlocksY,numBytes:e.pixels.numBytes,maxValue:e.pixels.maxValue,minValue:e.pixels.minValue,noDataValue:t}}},l=function(e){for(var t=e.pixels.numBlocksX*e.pixels.numBlocksY,n={},i=0;i<t;i++){var a=e.pixels.blocks[i];0===a.encoding?n.float32=!0:1===a.encoding?n[a.bitsPerPixel]=!0:n[0]=!0}return Object.keys(n)},o=function(e,t,n){var i={},a=new Uint8Array(e,t,10);if(i.fileIdentifierString=String.fromCharCode.apply(null,a),"CntZImage"!=i.fileIdentifierString.trim())throw"Unexpected file identifier string: "+i.fileIdentifierString;t+=10;var r=new DataView(e,t,24);if(i.fileVersion=r.getInt32(0,!0),i.imageType=r.getInt32(4,!0),i.height=r.getUint32(8,!0),i.width=r.getUint32(12,!0),i.maxZError=r.getFloat64(16,!0),t+=24,!n)if(r=new DataView(e,t,16),i.mask={},i.mask.numBlocksY=r.getUint32(0,!0),i.mask.numBlocksX=r.getUint32(4,!0),i.mask.numBytes=r.getUint32(8,!0),i.mask.maxValue=r.getFloat32(12,!0),t+=16,i.mask.numBytes>0){var s=new Uint8Array(Math.ceil(i.width*i.height/8)),l=(r=new DataView(e,t,i.mask.numBytes)).getInt16(0,!0),o=2,u=0;do{if(l>0)for(;l--;)s[u++]=r.getUint8(o++);else{var f=r.getUint8(o++);for(l=-l;l--;)s[u++]=f}l=r.getInt16(o,!0),o+=2}while(o<i.mask.numBytes);if(-32768!==l||u<s.length)throw"Unexpected end of mask RLE encoding";i.mask.bitset=s,t+=i.mask.numBytes}else 0===(i.mask.numBytes|i.mask.numBlocksY|i.mask.maxValue)&&(s=new Uint8Array(Math.ceil(i.width*i.height/8)),i.mask.bitset=s);r=new DataView(e,t,16),i.pixels={},i.pixels.numBlocksY=r.getUint32(0,!0),i.pixels.numBlocksX=r.getUint32(4,!0),i.pixels.numBytes=r.getUint32(8,!0),i.pixels.maxValue=r.getFloat32(12,!0),t+=16;var c=i.pixels.numBlocksX,m=i.pixels.numBlocksY,h=c+(i.width%c>0?1:0),d=m+(i.height%m>0?1:0);i.pixels.blocks=new Array(h*d);for(var g=1e9,k=0,x=0;x<d;x++)for(var p=0;p<h;p++){var w=0,M=e.byteLength-t;r=new DataView(e,t,Math.min(10,M));var y={};i.pixels.blocks[k++]=y;var b=r.getUint8(0);if(w++,y.encoding=63&b,y.encoding>3)throw"Invalid block encoding ("+y.encoding+")";if(2!==y.encoding){if(0!==b&&2!==b){if(b>>=6,y.offsetType=b,2===b)y.offset=r.getInt8(1),w++;else if(1===b)y.offset=r.getInt16(1,!0),w+=2;else{if(0!==b)throw"Invalid block offset type";y.offset=r.getFloat32(1,!0),w+=4}if(g=Math.min(y.offset,g),1===y.encoding)if(b=r.getUint8(w),w++,y.bitsPerPixel=63&b,b>>=6,y.numValidPixelsType=b,2===b)y.numValidPixels=r.getUint8(w),w++;else if(1===b)y.numValidPixels=r.getUint16(w,!0),w+=2;else{if(0!==b)throw"Invalid valid pixel count type";y.numValidPixels=r.getUint32(w,!0),w+=4}}var B;if(t+=w,3!=y.encoding)if(0===y.encoding){var V=(i.pixels.numBytes-1)/4;if(V!==Math.floor(V))throw"uncompressed block has invalid length";B=new ArrayBuffer(4*V),new Uint8Array(B).set(new Uint8Array(e,t,4*V));for(var v=new Float32Array(B),U=0;U<v.length;U++)g=Math.min(g,v[U]);y.rawData=v,t+=4*V}else if(1===y.encoding){var D=Math.ceil(y.numValidPixels*y.bitsPerPixel/8),I=Math.ceil(D/4);B=new ArrayBuffer(4*I),new Uint8Array(B).set(new Uint8Array(e,t,D)),y.stuffedData=new Uint32Array(B),t+=D}}else t++,g=Math.min(g,0)}return i.pixels.minValue=g,i.eofOffset=t,i},u=function(e,t,n,i,a,r,s){var l,o,u,f=(1<<t)-1,c=0,m=0,h=Math.ceil((s-i)/a),d=4*e.length-Math.ceil(t*n/8);for(e[e.length-1]<<=8*d,l=0;l<n;l++){if(0===m&&(u=e[c++],m=32),m>=t)o=u>>>m-t&f,m-=t;else{var g=t-m;o=(u&f)<<g&f,o+=(u=e[c++])>>>(m=32-g)}r[l]=o<h?i+o*a:s}return r};const f=a.decode;class c{_decode(e){const t=f(e.buffer,e.options);return Promise.resolve({result:t,transferList:[t.pixelData.buffer]})}}function m(){return new c}}}]);