define(["./when-515d5295","./Rectangle-e170be8b","./ArcType-98a7a011","./arrayFill-4d3cc415","./BoundingRectangle-409afd17","./buildModuleUrl-dba4ec07","./Cartesian2-1b9b0d8a","./Cartographic-1bbcab04","./Check-3aa71481","./ComponentDatatype-d430c7f7","./EllipsoidGeodesic-e5406761","./EllipsoidTangentPlane-fd839d7b","./GeometryAttribute-9bc31a7f","./GeometryInstance-c11993d9","./GeometryOffsetAttribute-800f7650","./GeometryPipeline-137aa28e","./IndexDatatype-eefd5922","./Math-5e38123d","./PrimitiveType-b38a4004","./PolygonGeometryLibrary-e3bb7139","./PolygonPipeline-b8b35011","./VertexFormat-e844760b","./WindingOrder-8479ef05","./Intersect-53434a77","./Event-9821f5d9","./RuntimeError-350acae3","./WebGLConstants-77a84876","./Cartesian4-034d54d5","./IntersectionTests-5fa33dbd","./Plane-92c15089","./FeatureDetection-7fae0d5a","./AttributeCompression-f9ee669b","./EncodedCartesian3-d74c1b81","./arrayRemoveDuplicates-a4c6347e","./EllipsoidRhumbLine-f50fdea6","./GeometryAttributes-7d904f0f"],(function(t,e,o,r,a,i,n,s,l,u,p,c,g,d,h,m,y,f,_,v,b,T,w,x,P,A,I,C,E,H,D,N,O,R,F,G){"use strict";var B=new s.i,S=new s.i;function L(t,e,o,r){var a=r.cartesianToCartographic(t,B).height,i=r.cartesianToCartographic(e,S);i.height=a,r.cartographicToCartesian(i,e);var n=r.cartesianToCartographic(o,S);n.height=a-100,r.cartographicToCartesian(n,o)}var V=new a.n,k=new s.a,M=new s.a,z=new s.a,U=new s.a,W=new s.a,Y=new s.a,j=new s.a,q=new s.a,K=new s.a,Q=new n.r,Z=new n.r,J=new s.a,X=new g.a,$=new _.r,tt=new _.r;function et(e){var o=e.vertexFormat,a=e.geometry,i=e.shadowVolume,l=a.attributes.position.values,p=l.length,c=e.wall,d=e.top,m=e.bottom;if(o.st||o.normal||o.tangent||o.bitangent||i){var y=e.boundingRectangle,v=e.tangentPlane,b=e.ellipsoid,T=e.stRotation,w=e.perPositionHeight,x=Q;x.x=y.x,x.y=y.y;var P,A=e.isComputeTexCoord?new Float32Array(p):new Float32Array(p/3*2),I=o.st?A:void 0;o.normal&&(P=w&&d&&!c?a.attributes.normal.values:new Float32Array(p));var C=o.tangent?new Float32Array(p):void 0,E=o.bitangent?new Float32Array(p):void 0,H=i?new Float32Array(p):void 0,D=0,N=0,O=M,R=z,F=U,G=!0,B=$,S=tt;if(0!==T){var V=g.a.fromAxisAngle(v._plane.normal,T,X);B=_.r.fromQuaternion(V,B),V=g.a.fromAxisAngle(v._plane.normal,-T,X),S=_.r.fromQuaternion(V,S)}else B=_.r.clone(_.r.IDENTITY,B),S=_.r.clone(_.r.IDENTITY,S);var et=0;(d&&m||c)&&(et=p/2,p/=2);var ot=1,rt=[];if(o.st&&c&&e.isComputeTexCoord){let t=[...e.outerPositions,e.outerPositions[0]];for(let e=1;e1){let t=Math.ceil(at/6)-1;lt=rt[t]?rt[t]/ot:0,I[D]=1-lt,I[D+1]=1,I[D+2]=0,I[D+et]=1-lt,I[D+1+et]=0,I[D+2+et]=0}m&&(I[D+et]=lt,I[D+1+et]=ut,e.isComputeTexCoord&&(I[D+2+et]=-1)),d&&(I[D]=lt,I[D+1]=ut,e.isComputeTexCoord&&(I[D+2]=1)),e.isComputeTexCoord?D+=3:D+=2}if(o.normal||o.tangent||o.bitangent||i){var pt=N+1,ct=N+2;if(c){if(at+3at.west-at.east&&(s.east=at.east,s.west=at.west),s}var st=new s.i;function lt(t,e,o,r){for(var a=t.surfaceDistance,i=Math.ceil(a*e),n=i>0?a/(i-1):Number.POSITIVE_INFINITY,s=0,l=0;l0?Math.min(p,r.west):r.west,r.east=p<0?Math.max(p,r.east):r.east}}var ut=[];function pt(t,e,o,r,a,i,n,s,l,u,p){var g,h={walls:[]};if(i||n){var m,f,_=v.g.createGeometryFromPositions(t,e,o,a,s,l),T=_.attributes.position.values,x=_.indices;if(i&&n){var P=T.concat(T);m=P.length/3,(f=y.IndexDatatype.createTypedArray(m,2*x.length)).set(x);var A=x.length,I=m/2;for(g=0;g