1 |
- import{eL as C,ap as S,a7 as A,k as R,cX as j,aL as k,A as B,eM as O,eN as q}from"./index.6c049565.js";import{O as G}from"./quantizationUtils.4f3ed95a.js";import{c as M,x as L,m as Y,f as _,d as U,V as X,T as Z,F as H,D as J,N as K,S as Q}from"./utils.5216fcae.js";import"./generateRendererUtils.03b1f269.js";let x=null;function W(e,a,o){return e.x<0?e.x+=a:e.x>o&&(e.x-=a),e}function aa(e,a,o,l){const n=C(o)?S(o):null,s=n?Math.round((n.valid[1]-n.valid[0])/a.scale[0]):null;return e.map(t=>{const i=new A(R(t.geometry));return G(a,i,i,i.hasZ,i.hasM),t.geometry=n?W(i,s,l[0]):i,t})}function ea(e,a=18,o,l,n,s){const t=new Float64Array(n*s);a=Math.round(B(a));let i=Number.POSITIVE_INFINITY,r=Number.NEGATIVE_INFINITY,m=0,f=0,d=0,c=0;const I=O(l,o);for(const{geometry:T,attributes:v}of e){const{x:p,y:u}=T,y=Math.max(0,p-a),V=Math.max(0,u-a),D=Math.min(s,u+a),g=Math.min(n,p+a),P=+I(v);for(let w=V;w<D;w++)for(let h=y;h<g;h++){const E=w*n+h,N=q(h-p,w-u,a),b=t[E];m=t[E]+=N*P;const $=m-b;f+=$,d+=$*$,m<i&&(i=m),m>r&&(r=m),c++}}if(!c)return{mean:0,stddev:0,min:0,max:0,mid:0,count:0};const z=(r-i)/2;return{mean:f/c,stdDev:Math.sqrt((d-f*f/c)/c),min:i,max:r,mid:z,count:c}}async function F(e,a){if(!a)return[];const{field:o,field2:l,field3:n,fieldDelimiter:s}=e,t=e.valueExpression,i=e.normalizationType,r=e.normalizationField,m=e.normalizationTotal,f=[],d=e.viewInfoParams;let c=null,I=null;if(t){if(!x){const{arcadeUtils:v}=await j();x=v}c=x.createFunction(t),I=d&&x.getViewInfo({viewingMode:d.viewingMode,scale:d.scale,spatialReference:new k(d.spatialReference)})}const z=e.fieldInfos,T=!(a[0]&&"declaredClass"in a[0]&&a[0].declaredClass==="esri.Graphic")&&z?{fields:z}:null;return a.forEach(v=>{const p=v.attributes;let u;if(t){const y=T?{...v,layer:T}:v,V=x.createExecContext(y,I);u=x.executeFunction(c,V)}else p&&(u=p[o],l&&(u=`${M(u)}${s}${M(p[l])}`,n&&(u=`${u}${s}${M(p[n])}`)));if(i&&typeof u=="number"&&isFinite(u)){const y=p&&parseFloat(p[r]);u=L(u,i,y,m)}f.push(u)}),f}async function oa(e){const{attribute:a,features:o}=e,{normalizationType:l,normalizationField:n,minValue:s,maxValue:t,fieldType:i}=a,r=await F({field:a.field,valueExpression:a.valueExpression,normalizationType:l,normalizationField:n,normalizationTotal:a.normalizationTotal,viewInfoParams:a.viewInfoParams,fieldInfos:a.fieldInfos},o),m=Y({normalizationType:l,normalizationField:n,minValue:s,maxValue:t}),f={value:.5,fieldType:i},d=i==="esriFieldTypeString"?_({values:r,supportsNullCount:m,percentileParams:f}):U({values:r,minValue:s,maxValue:t,useSampleStdDev:!l,supportsNullCount:m,percentileParams:f});return X(d,i==="esriFieldTypeDate")}async function sa(e){const{attribute:a,features:o}=e,l=await F({field:a.field,field2:a.field2,field3:a.field3,fieldDelimiter:a.fieldDelimiter,valueExpression:a.valueExpression,viewInfoParams:a.viewInfoParams,fieldInfos:a.fieldInfos},o),n=Z(l);return H(n,a.domains,a.returnAllCodedValues,a.fieldDelimiter)}async function ra(e){const{attribute:a,features:o}=e,{field:l,normalizationType:n,normalizationField:s,normalizationTotal:t,classificationMethod:i}=a,r=await F({field:l,valueExpression:a.valueExpression,normalizationType:n,normalizationField:s,normalizationTotal:t,viewInfoParams:a.viewInfoParams,fieldInfos:a.fieldInfos},o),m=J(r,{field:l,normalizationType:n,normalizationField:s,normalizationTotal:t,classificationMethod:i,standardDeviationInterval:a.standardDeviationInterval,numClasses:a.numClasses,minValue:a.minValue,maxValue:a.maxValue});return K(m,i)}async function ma(e){const{attribute:a,features:o}=e,{field:l,normalizationType:n,normalizationField:s,normalizationTotal:t,classificationMethod:i}=a,r=await F({field:l,valueExpression:a.valueExpression,normalizationType:n,normalizationField:s,normalizationTotal:t,viewInfoParams:a.viewInfoParams,fieldInfos:a.fieldInfos},o);return Q(r,{field:l,normalizationType:n,normalizationField:s,normalizationTotal:t,classificationMethod:i,standardDeviationInterval:a.standardDeviationInterval,numBins:a.numBins,minValue:a.minValue,maxValue:a.maxValue})}async function ua(e){const{attribute:a,features:o}=e,{field:l,radius:n,fieldOffset:s,transform:t,spatialReference:i,size:r}=a,m=aa(o,t,i,r),{count:f,min:d,max:c,mean:I,stdDev:z}=ea(m,n,s,l,r[0],r[1]);return{count:f,min:d,max:c,avg:I,stddev:z}}export{ra as classBreaks,ua as heatmapStatistics,ma as histogram,oa as summaryStatistics,sa as uniqueValues};
|