bmh_cesium/public/lib/cesiumjs/CesiumUnminified/Workers/EllipsoidRhumbLine-357c11e7.js

2 lines
7.1 KiB
JavaScript
Raw Normal View History

2025-03-09 23:23:50 +00:00
/* 2020-9-22 15:23:26 | 版权所有 军懋国兴 */
define(["exports","./when-cbf8cd21","./Check-35e1a91d","./Math-69007a69","./Cartesian2-43e3a3be"],function(t,m,w,S,q){"use strict";function L(t,i,e){if(0===t)return i*e;var a=t*t,n=a*a,s=n*a,h=s*a,u=h*a,d=u*a,r=e;return i*((1-a/4-3*n/64-5*s/256-175*h/16384-441*u/65536-4851*d/1048576)*r-(3*a/8+3*n/32+45*s/1024+105*h/4096+2205*u/131072+6237*d/524288)*Math.sin(2*r)+(15*n/256+45*s/1024+525*h/16384+1575*u/65536+155925*d/8388608)*Math.sin(4*r)-(35*s/3072+175*h/12288+3675*u/262144+13475*d/1048576)*Math.sin(6*r)+(315*h/131072+2205*u/524288+43659*d/8388608)*Math.sin(8*r)-(693*u/1310720+6237*d/5242880)*Math.sin(10*r)+1001*d/8388608*Math.sin(12*r))}function W(t,i){if(0===t)return Math.log(Math.tan(.5*(S.CesiumMath.PI_OVER_TWO+i)));var e=t*Math.sin(i);return Math.log(Math.tan(.5*(S.CesiumMath.PI_OVER_TWO+i)))-t/2*Math.log((1+e)/(1-e))}var V=new q.Cartesian3,k=new q.Cartesian3;function n(t,i,e,a){var n=q.Cartesian3.normalize(a.cartographicToCartesian(i,k),V),s=q.Cartesian3.normalize(a.cartographicToCartesian(e,k),k);w.Check.typeOf.number.greaterThanOrEquals("value",Math.abs(Math.abs(q.Cartesian3.angleBetween(n,s))-Math.PI),.0125);var h,u,d,r,o,l,c,M,m,_,g,p,C,f,P,O,E,v,I,T=a.maximumRadius,y=a.minimumRadius,R=T*T,b=y*y;t._ellipticitySquared=(R-b)/R,t._ellipticity=Math.sqrt(t._ellipticitySquared),t._start=q.Cartographic.clone(i,t._start),t._start.height=0,t._end=q.Cartographic.clone(e,t._end),t._end.height=0,t._heading=(h=t,u=i.longitude,d=i.latitude,r=e.longitude,o=e.latitude,l=W(h._ellipticity,d),c=W(h._ellipticity,o),Math.atan2(S.CesiumMath.negativePiToPi(r-u),c-l)),t._distance=(M=t,m=a.maximumRadius,_=a.minimumRadius,g=i.longitude,p=i.latitude,C=e.longitude,f=e.latitude,E=M._heading,v=C-g,I=0,I=S.CesiumMath.equalsEpsilon(Math.abs(E),S.CesiumMath.PI_OVER_TWO,S.CesiumMath.EPSILON8)?m===_?m*Math.cos(p)*S.CesiumMath.negativePiToPi(v):(P=Math.sin(p),m*Math.cos(p)*S.CesiumMath.negativePiToPi(v)/Math.sqrt(1-M._ellipticitySquared*P*P)):(O=L(M._ellipticity,m,p),(L(M._ellipticity,m,f)-O)/Math.cos(E)),Math.abs(I))}function c(t,i,e,a,n,s){var h,u,d,r,o,l,c=n*n;return o=Math.abs(S.CesiumMath.PI_OVER_TWO-Math.abs(i))>S.CesiumMath.EPSILON8?(h=function(t,i,e){var a=t/e;if(0===i)return a;var n=a*a,s=n*a,h=s*a,u=i*i,d=u*u,r=d*u,o=r*u,l=o*u,c=l*u,M=Math.sin(2*a),m=Math.cos(2*a),_=Math.sin(4*a),g=Math.cos(4*a),p=Math.sin(6*a),C=Math.cos(6*a),f=Math.sin(8*a),P=Math.cos(8*a),O=Math.sin(10*a);return a+a*u/4+7*a*d/64+15*a*r/256+579*a*o/16384+1515*a*l/65536+16837*a*c/1048576+(3*a*d/16+45*a*r/256-a*(32*n-561)*o/4096-a*(232*n-1677)*l/16384+a*(399985-90560*n+512*h)*c/5242880)*m+(21*a*r/256+483*a*o/4096-a*(224*n-1969)*l/16384-a*(33152*n-112599)*c/1048576)*g+(151*a*o/4096+4681*a*l/65536+1479*a*c/16384-453*s*c/32768)*C+(1097*a*l/65536+42783*a*c/1048576)*P+8011*a*c/1048576*Math.cos(10*a)+(3*u/8+3*d/16+213*r/2048-3*n*r/64+255*o/4096-33*n*o/512+20861*l/524288-33*n*l/512+h*l/1024+28273*c/1048576-471*n*c/8192+9*h*c/4096)*M+(21*d/256+21*r/256+533*o/8192-21*n*o/512+197*l/4096-315*n*l/4096+584039*c/16777216-12517*n*c/131072+7*h*c/2048)*_+(151*r/6144+151*o/4096+5019*l/131072-453*n*l/16384+26965*c/786432-8607*n*c/131072)*p+(1097*o/131072+1097*l/65536+225797*c/10485760-1097*n*c/65536)*f+(8011*l/2621440+8011*c/1048576)*O+293393*c/251658240*Math.sin(12*a)}(L(n,a,t.latitude)+e*Math.cos(i),n,a),u=W(n,t.latitude),d=W(n,h),r=Math.tan(i)*(d-u),S.CesiumMath.negativePiToPi(t.longitude+r)):(h=t.latitude,r=e/(0===n?a*Math.cos(t.latitude):(l=Math.sin(t.latitude),a*Math.cos(t.latitude)/Math.sqrt(1-c*l*l))),0<i?S.CesiumMath.negativePiToPi(t.longitude+r):S.CesiumMath.negativePiToPi(t.longitude-r)),m.defined(s)?(s.longitude=o,s.latitude=h,s.height=0,s):new q.Cartographic(o,h,0)}function M(t,i,e){var a=m.defaultValue(e,q.Ellipsoid.WGS84);this._ellipsoid=a,this._start=new q.Cartographic,this._end=new q.Cartographic,this._heading=void 0,this._distance=void 0,this._ellipticity=void 0,this._ellipticitySquared=void 0,m.defined(t)&&m.defined(i)&&n(this,t,i,a)}Object.defineProperties(M.prototype,{ellipsoid:{get:function(){return this._ellipsoid}},surfaceDistance:{get:function(){return w.Check.de