1 |
- define(["exports","./arrayRemoveDuplicates-bb548aa3","./Matrix2-f2da41d4","./when-229515d6","./ComponentDatatype-17b06483","./PolylinePipeline-a3ba6f24"],(function(e,i,t,a,r,n){"use strict";var o={};function l(e,i){return r.CesiumMath.equalsEpsilon(e.latitude,i.latitude,r.CesiumMath.EPSILON10)&&r.CesiumMath.equalsEpsilon(e.longitude,i.longitude,r.CesiumMath.EPSILON10)}var s=new t.Cartographic,h=new t.Cartographic;var g=new Array(2),p=new Array(2),u={positions:void 0,height:void 0,granularity:void 0,ellipsoid:void 0};o.computePositions=function(e,o,c,d,y,v){var m=function(e,r,n,o){var g=(r=i.arrayRemoveDuplicates(r,t.Cartesian3.equalsEpsilon)).length;if(!(g<2)){var p=a.defined(o),u=a.defined(n),c=new Array(g),d=new Array(g),y=new Array(g),v=r[0];c[0]=v;var m=e.cartesianToCartographic(v,s);u&&(m.height=n[0]),d[0]=m.height,y[0]=p?o[0]:0;for(var f=d[0]===y[0],P=1,A=1;A<g;++A){var C=r[A],w=e.cartesianToCartographic(C,h);u&&(w.height=n[A]),f=f&&0===w.height,l(m,w)?m.height<w.height&&(d[P-1]=w.height):(c[P]=C,d[P]=w.height,y[P]=p?o[A]:0,f=f&&d[P]===y[P],t.Cartographic.clone(w,m),++P)}if(!(f||P<2))return c.length=P,d.length=P,y.length=P,{positions:c,topHeights:d,bottomHeights:y}}}(e,o,c,d);if(a.defined(m)){o=m.positions,c=m.topHeights,d=m.bottomHeights;var f,P,A=o.length,C=A-2,w=r.CesiumMath.chordLength(y,e.maximumRadius),b=u;if(b.minDistance=w,b.ellipsoid=e,v){var M,E=0;for(M=0;M<A-1;M++)E+=n.PolylinePipeline.numberOfPoints(o[M],o[M+1],w)+1;f=new Float64Array(3*E),P=new Float64Array(3*E);var D=g,F=p;b.positions=D,b.height=F;var H=0;for(M=0;M<A-1;M++){D[0]=o[M],D[1]=o[M+1],F[0]=c[M],F[1]=c[M+1];var L=n.PolylinePipeline.generateArc(b);f.set(L,H),F[0]=d[M],F[1]=d[M+1],P.set(n.PolylinePipeline.generateArc(b),H),H+=L.length}}else b.positions=o,b.height=c,f=new Float64Array(n.PolylinePipeline.generateArc(b)),b.height=d,P=new Float64Array(n.PolylinePipeline.generateArc(b));return{bottomPositions:P,topPositions:f,numCorners:C}}},e.WallGeometryLibrary=o}));
|