UNPKG

@besovideo/gps-convert

Version:

@besovideo/gps-convert desc

2 lines (1 loc) 1.55 kB
const t=52.35987755982988,n=3.141592653589793,a=6378245,s=.006693421622965943,h=function([n,a]){const s=(n=+n)-.0065,h=(a=+a)-.006,M=Math.sqrt(s*s+h*h)-2e-5*Math.sin(h*t),i=Math.atan2(h,s)-3e-6*Math.cos(s*t);return[M*Math.cos(i),M*Math.sin(i)]},M=function([n,a]){a=+a,n=+n;const s=Math.sqrt(n*n+a*a)+2e-5*Math.sin(a*t),h=Math.atan2(a,n)+3e-6*Math.cos(n*t);return[s*Math.cos(h)+.0065,s*Math.sin(h)+.006]},i=function([t,h]){if(e([t=+t,h=+h]))return[t,h];{let M=o([t-105,h-35]),i=c([t-105,h-35]);const r=h/180*n;let e=Math.sin(r);e=1-s*e*e;const u=Math.sqrt(e);return M=180*M/(a*(1-s)/(e*u)*n),i=180*i/(a/u*Math.cos(r)*n),[t+i,h+M]}},r=function([t,h]){if(e([t=+t,h=+h]))return[t,h];{let M=o([t-105,h-35]),i=c([t-105,h-35]);const r=h/180*n;let e=Math.sin(r);e=1-s*e*e;const u=Math.sqrt(e);M=180*M/(a*(1-s)/(e*u)*n),i=180*i/(a/u*Math.cos(r)*n);return[2*t-(t+i),2*h-(h+M)]}},o=function([t,a]){let s=2*(t=+t)-100+3*(a=+a)+.2*a*a+.1*t*a+.2*Math.sqrt(Math.abs(t));return s+=2*(20*Math.sin(6*t*n)+20*Math.sin(2*t*n))/3,s+=2*(20*Math.sin(a*n)+40*Math.sin(a/3*n))/3,s+=2*(160*Math.sin(a/12*n)+320*Math.sin(a*n/30))/3,s},c=function([t,a]){let s=300+(t=+t)+2*(a=+a)+.1*t*t+.1*t*a+.1*Math.sqrt(Math.abs(t));return s+=2*(20*Math.sin(6*t*n)+20*Math.sin(2*t*n))/3,s+=2*(20*Math.sin(t*n)+40*Math.sin(t/3*n))/3,s+=2*(150*Math.sin(t/12*n)+300*Math.sin(t/30*n))/3,s},e=function([t,n]){return n=+n,!((t=+t)>73.66&&t<135.05&&n>3.86&&n<53.55)};export{h as bd09togcj02,M as gcj02tobd09,r as gcj02towgs84,e as out_of_china,o as transformlat,c as transformlng,i as wgs84togcj02};