define(["./when-cbf8cd21","./Check-35e1a91d","./Math-e66fad2a","./Cartesian2-44433f55","./Transforms-d9350502","./RuntimeError-f4c64df1","./WebGLConstants-95ceb4e9","./ComponentDatatype-7ee14e67","./GeometryAttribute-424f2c6a","./GeometryAttributes-90846c5f","./AttributeCompression-170b3be0","./GeometryPipeline-5896d55c","./EncodedCartesian3-86f19ac2","./IndexDatatype-66caba23","./IntersectionTests-d04ec592","./Plane-94f78648","./GeometryOffsetAttribute-84f7eff3","./VertexFormat-cc24f342","./GeometryInstance-505d80ea","./arrayRemoveDuplicates-b817241d","./BoundingRectangle-d1dbcdbd","./EllipsoidTangentPlane-d3a474ef","./ArcType-2b58731c","./EllipsoidRhumbLine-862a2df4","./PolygonPipeline-94be9b1d","./PolygonGeometryLibrary-f3f95c31","./EllipsoidGeodesic-7779e55a"],function(Y,e,U,j,Q,t,r,q,K,a,o,D,i,L,n,s,Z,b,N,l,u,H,p,c,R,M,y){"use strict";var J=new j.Cartographic,X=new j.Cartographic;var S=new u.BoundingRectangle,$=new j.Cartesian3,ee=new j.Cartesian3,te=new j.Cartesian3,re=new j.Cartesian3,ae=new j.Cartesian3,oe=new j.Cartesian3,ie=new j.Cartesian3,ne=new j.Cartesian3,se=new j.Cartesian3,le=new j.Cartesian2,ue=new j.Cartesian2,ce=new j.Cartesian3,pe=new Q.Quaternion,ye=new Q.Matrix3,me=new Q.Matrix3;function B(e){var t,r,a,o=e.vertexFormat,i=e.geometry,n=e.shadowVolume,s=i.attributes.position.values,l=s.length,u=e.wall,c=e.top||u,p=e.bottom||u;if(o.st||o.normal||o.tangent||o.bitangent||n){var y=e.boundingRectangle,m=e.tangentPlane,g=e.ellipsoid,d=e.stRotation,h=e.perPositionHeight,f=le;f.x=y.x,f.y=y.y;var b,v=o.st?new Float32Array(l/3*2):void 0;o.normal&&(b=h&&c&&!u?i.attributes.normal.values:new Float32Array(l));var _,P=o.tangent?new Float32Array(l):void 0,C=o.bitangent?new Float32Array(l):void 0,w=n?new Float32Array(l):void 0,x=0,T=0,I=ee,A=te,E=re,G=!0,O=ye,V=me;V=0!==d?(_=Q.Quaternion.fromAxisAngle(m._plane.normal,d,pe),O=Q.Matrix3.fromQuaternion(_,O),_=Q.Quaternion.fromAxisAngle(m._plane.normal,-d,pe),Q.Matrix3.fromQuaternion(_,V)):(O=Q.Matrix3.clone(Q.Matrix3.IDENTITY,O),Q.Matrix3.clone(Q.Matrix3.IDENTITY,V));var F=0,D=0;c&&p&&(F=l/2,D=l/3,l/=2);for(var L=0;Ld.eastOverIDL-d.westOverIDL&&(o.west=d.westOverIDL,o.east=d.eastOverIDL,o.east>U.CesiumMath.PI&&(o.east=o.east-U.CesiumMath.TWO_PI),o.west>U.CesiumMath.PI&&(o.west=o.west-U.CesiumMath.TWO_PI)),o}var v=new j.Cartographic;function _(e,t,r,a){for(var o=e.surfaceDistance,i=Math.ceil(o*t),n=0