拖旺项目:聊城公交辅助决策系统
zhaoxing
2022-05-08 d5859b70023f40c195c58f81d3abcd14980cb722
1
define(["exports","./arrayRemoveDuplicates-7cd4e18c","./Matrix2-f0fc6cd3","./when-229515d6","./ComponentDatatype-5f63ec93","./PolylinePipeline-8d9de722"],(function(e,t,i,n,o,r){"use strict";const s={};function a(e,t){return o.CesiumMath.equalsEpsilon(e.latitude,t.latitude,o.CesiumMath.EPSILON10)&&o.CesiumMath.equalsEpsilon(e.longitude,t.longitude,o.CesiumMath.EPSILON10)}const l=new i.Cartographic,h=new i.Cartographic;const c=new Array(2),g=new Array(2),p={positions:void 0,height:void 0,granularity:void 0,ellipsoid:void 0};s.computePositions=function(e,s,u,d,y,m){const f=function(e,o,r,s){const c=(o=t.arrayRemoveDuplicates(o,i.Cartesian3.equalsEpsilon)).length;if(c<2)return;const g=n.defined(s),p=n.defined(r),u=new Array(c),d=new Array(c),y=new Array(c),m=o[0];u[0]=m;const f=e.cartesianToCartographic(m,l);p&&(f.height=r[0]),d[0]=f.height,y[0]=g?s[0]:0;let P=d[0]===y[0],A=1;for(let t=1;t<c;++t){const n=o[t],l=e.cartesianToCartographic(n,h);p&&(l.height=r[t]),P=P&&0===l.height,a(f,l)?f.height<l.height&&(d[A-1]=l.height):(u[A]=n,d[A]=l.height,y[A]=g?s[t]:0,P=P&&d[A]===y[A],i.Cartographic.clone(l,f),++A)}return P||A<2?void 0:(u.length=A,d.length=A,y.length=A,{positions:u,topHeights:d,bottomHeights:y})}(e,s,u,d);if(!n.defined(f))return;s=f.positions,u=f.topHeights,d=f.bottomHeights;const P=s.length,A=P-2;let C,w;const v=o.CesiumMath.chordLength(y,e.maximumRadius),M=p;if(M.minDistance=v,M.ellipsoid=e,m){let e,t=0;for(e=0;e<P-1;e++)t+=r.PolylinePipeline.numberOfPoints(s[e],s[e+1],v)+1;C=new Float64Array(3*t),w=new Float64Array(3*t);const i=c,n=g;M.positions=i,M.height=n;let o=0;for(e=0;e<P-1;e++){i[0]=s[e],i[1]=s[e+1],n[0]=u[e],n[1]=u[e+1];const t=r.PolylinePipeline.generateArc(M);C.set(t,o),n[0]=d[e],n[1]=d[e+1],w.set(r.PolylinePipeline.generateArc(M),o),o+=t.length}}else M.positions=s,M.height=u,C=new Float64Array(r.PolylinePipeline.generateArc(M)),M.height=d,w=new Float64Array(r.PolylinePipeline.generateArc(M));return{bottomPositions:w,topPositions:C,numCorners:A}},e.WallGeometryLibrary=s}));