Custom Gis Application with Arcgis Javascript API with modern layouting
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 

11 lines
4.1 KiB

// All material copyright Esri, All Rights Reserved, unless otherwise specified.
// See https://js.arcgis.com/4.30/esri/copyright.txt for details.
//>>built
define("exports ../core/has ../core/mathUtils ../geometry/Extent ../geometry/Polygon ../geometry/SpatialReference ../geometry/support/Ellipsoid ../layers/graphics/featureConversionUtils ../layers/graphics/OptimizedGeometry ../layers/graphics/data/projectionSupport".split(" "),function(r,N,B,J,K,v,C,L,M,D){function z(a,b,g,d){if(d.isWebMercator)return a=B.rad2deg(a/C.earth.radius),a-=360*Math.floor((a+180)/360),b=B.rad2deg(Math.PI/2-2*Math.atan(Math.exp(-b/C.earth.radius))),d=[0,0],A(d,0,b,a,g),d;
b=D.project({x:a,y:b},d,v.WGS84);if(!b)return null;a=[0,0];A(a,0,b.y,b.x,g);return a}function w(a){return 57>=a?a-48:104>=a?a-88:107>=a?a-89:110>=a?a-90:a-91}function x(a,b,g){a[0]=b;a[1]=g;return a}function t(a,b){const g=(a[0]+a[1])/2,d=!b;a[0]=d*a[0]+b*g;a[1]=d*g+b*a[1]}function u(a,b){b=b>(a[0]+a[1])/2;t(a,b);return b}function A(a,b,g,d,f){f%2&&(f+=1);let e=0,h=0,c=-90,k=90,m=-180,p=180;for(let y=0;y<f/2;y++){for(var n=0;5>n;n++){var l=(m+p)/2,q=d>l?1:0;e|=q<<29-(n+5*y);m=(1-q)*m+q*l;p=(1-q)*
l+q*p}for(n=0;5>n;n++)l=(c+k)/2,q=g>l?1:0,h|=q<<29-(n+5*y),c=(1-q)*c+q*l,k=(1-q)*l+q*k}a[2*b]=e;a[2*b+1]=h}function E(a,b){return b?1&a|(4&a)>>1|(16&a)>>2:(2&a)>>1|(8&a)>>2}function F(a,b){return b?(2&a)>>1|(8&a)>>2:1&a|(4&a)>>1|(16&a)>>2}function G(a,b,g){var d=!((a.length-1)%2);const f=a.substring(0,a.length-1);var e=w(a.charCodeAt(a.length-1)),h=0,c=0;let k=0;var m=0;d?(h=8,c=4,k=1&e|(4&e)>>1|(16&e)>>2,m=(2&e)>>1|(8&e)>>2):(h=4,c=8,m=1&e|(4&e)>>1|(16&e)>>2,k=(2&e)>>1|(8&e)>>2);b=k+b;e=m+g;g=Math.floor(b/
h);m=Math.floor(e/c);h=b-g*h;c=e-m*c;d="0123456789bcdefghjkmnpqrstuvwxyz"[d?h&1|(c&1)<<1|(h&2)<<1|(c&2)<<2|(h&4)<<2:c&1|(h&1)<<1|(c&2)<<1|(h&2)<<2|(c&4)<<2];return 1<a.length&&(g||m)?G(f,g,m)+d:f+d}const H=new Float64Array(2),I=new Float64Array(2);r.convertGeohash32ToXY=function(a,b){let g=a=0,d=30,f=30;for(let c=0;c<b.length;c++){var e=b.charCodeAt(c),h=w(e);e=0===c%2;const k=E(h,e);h=F(h,e);d-=e?3:2;f-=e?2:3;a|=k<<d;g|=h<<f}return{geohashX:a,geohashY:g}};r.decodeBase32Char=w;r.decodeGeohash=function(a,
b){const g=x(H,-90,90),d=x(I,-180,180);for(let e=0;e<b.length;e++){var f=b.charCodeAt(e);f=w(f);0===e%2?(t(d,!!(16&f)),t(d,!!(4&f)),t(d,!!(1&f)),t(g,!!(8&f)),t(g,!!(2&f))):(t(g,!!(16&f)),t(g,!!(4&f)),t(g,!!(1&f)),t(d,!!(8&f)),t(d,!!(2&f)))}a[0]=(g[0]+g[1])/2;a[1]=(d[0]+d[1])/2;return a};r.decodeGeohashXY=function(a,b){let g=-90,d=90,f=-180,e=180;for(let n=0;n<b;n++){var h=Math.ceil((n+1)/2),c=Math.floor((n+1)/2),k=1-n%2,m=30-(3*h+2*c),p=30-(2*h+3*c);c=3*k+2*(1-k);h=2*k+3*(1-k);m=(7*k+3*(1-k)<<m&a.geohashX)>>
m;k=(3*k+7*(1-k)<<p&a.geohashY)>>p;for(--c;0<=c;c--){p=(f+e)/2;const l=m&1<<c?1:0;f=(1-l)*f+l*p;e=(1-l)*p+l*e}for(--h;0<=h;h--)m=(g+d)/2,c=k&1<<h?1:0,g=(1-c)*g+c*m,d=(1-c)*m+c*d}return[f,g,e,d]};r.encodeBase32Char=function(a){return"0123456789bcdefghjkmnpqrstuvwxyz"[a]};r.encodeGeohash=function(a,b,g){let d="";const f=x(H,-90,90),e=x(I,-180,180);for(let h=0;h<g;h++){let c=0;h%2?(c|=u(f,a)<<4,c|=u(e,b)<<3,c|=u(f,a)<<2,c|=u(e,b)<<1,c|=u(f,a)<<0):(c|=u(e,b)<<4,c|=u(f,a)<<3,c|=u(e,b)<<2,c|=u(f,a)<<1,
c|=u(e,b)<<0);d+="0123456789bcdefghjkmnpqrstuvwxyz"[c]}return d};r.getGeohash=z;r.getGeohashBounds=function(a,b,g,d){a=[a.xmin,a.ymin,a.xmax,a.ymax];var f=K.fromExtent(J.fromBounds(a,d));b=D.project(f,d,v.WGS84,{densificationStep:64*b});if(!b)return null;b=L.convertFromPolygon(new M,b,!1,!1);f=b.coords.filter((h,c)=>!(c%2));var e=b.coords.filter((h,c)=>c%2);b=Math.min(...f);d=Math.min(...e);f=Math.max(...f);e=Math.max(...e);b=z(b,d,g,v.WGS84);d=z(f,e,g,v.WGS84);return b&&d?{bounds:a,geohashBounds:{xLL:b[0],
yLL:b[1],xTR:d[0],yTR:d[1]},level:g}:null};r.getRelativeGeohash=G;r.setGeohashBuf=A;r.setGeohashXY=function(a,b,g,d){d%2&&(d+=1);let f=0,e=0,h=-90,c=90,k=-180,m=180;for(let q=0;q<d/2;q++){for(var p=0;5>p;p++){var n=(k+m)/2,l=g>n?1:0;f|=l<<29-(p+5*q);k=(1-l)*k+l*n;m=(1-l)*n+l*m}for(p=0;5>p;p++)n=(h+c)/2,l=b>n?1:0,e|=l<<29-(p+5*q),h=(1-l)*h+l*n,c=(1-l)*n+l*c}a.geohashX=f;a.geohashY=e};r.unpackXBits=E;r.unpackYBits=F;Object.defineProperty(r,Symbol.toStringTag,{value:"Module"})});