define(["./when-77f4e3be","./Check-d71f548f","./Math-b81aa1f1","./Cartesian2-69a87134","./Transforms-03dbcaf7","./RuntimeError-34dd6124","./WebGLConstants-3e40d443","./ComponentDatatype-af4852df","./GeometryAttribute-d15db730","./GeometryAttributes-0175f743","./AttributeCompression-b43e055a","./GeometryPipeline-8501d77d","./EncodedCartesian3-ab4754c9","./IndexDatatype-41885adf","./IntersectionTests-ad3a0195","./Plane-a18bfa39","./GeometryOffsetAttribute-1d161b37","./VertexFormat-bbe2af43","./GeometryInstance-0fd1b866","./arrayRemoveDuplicates-64383b1a","./BoundingRectangle-ea4a050c","./EllipsoidTangentPlane-5dd5582e","./ArcType-861b5442","./EllipsoidRhumbLine-28fc0dda","./PolygonPipeline-9a882b7c","./PolygonGeometryLibrary-0c0d3129","./EllipsoidGeodesic-be0f0da9"],function(Q,e,q,K,Z,t,r,J,X,a,o,D,i,L,n,s,$,v,N,l,u,H,c,p,R,M,m){"use strict";var y=new K.Cartographic,g=new K.Cartographic;function ee(e,t,r,a){var o=a.cartesianToCartographic(e,y).height,i=a.cartesianToCartographic(t,g);i.height=o,a.cartographicToCartesian(i,t);var n=a.cartesianToCartographic(r,g);n.height=o-100,a.cartographicToCartesian(n,r)}var S=new u.BoundingRectangle,te=new K.Cartesian3,re=new K.Cartesian3,ae=new K.Cartesian3,oe=new K.Cartesian3,ie=new K.Cartesian3,ne=new K.Cartesian3,se=new K.Cartesian3,le=new K.Cartesian3,ue=new K.Cartesian3,pe=new K.Cartesian2,ce=new K.Cartesian2,me=new K.Cartesian3,ye=new Z.Quaternion,ge=new Z.Matrix3,de=new Z.Matrix3;function B(e){var t=e.vertexFormat,r=e.geometry,a=e.shadowVolume,o=r.attributes.position.values,i=o.length,n=e.wall,s=e.top||n,l=e.bottom||n;if(t.st||t.normal||t.tangent||t.bitangent||a){var u=e.boundingRectangle,p=e.tangentPlane,c=e.ellipsoid,m=e.stRotation,y=e.perPositionHeight,g=pe;g.x=u.x,g.y=u.y;var d,h=t.st?new Float32Array(i/3*2):void 0,f=new Float32Array(i/3),v=0;t.normal&&(d=y&&s&&!n?r.attributes.normal.values:new Float32Array(i));var b=t.tangent?new Float32Array(i):void 0,_=t.bitangent?new Float32Array(i):void 0,P=a?new Float32Array(i):void 0,C=0,w=0,T=re,x=ae,A=oe,I=!0,E=ge,G=de;if(0!==m){var O=Z.Quaternion.fromAxisAngle(p._plane.normal,m,ye);E=Z.Matrix3.fromQuaternion(O,E),O=Z.Quaternion.fromAxisAngle(p._plane.normal,-m,ye),G=Z.Matrix3.fromQuaternion(O,G)}else E=Z.Matrix3.clone(Z.Matrix3.IDENTITY,E),G=Z.Matrix3.clone(Z.Matrix3.IDENTITY,G);var F=0,V=0;s&&l&&(F=i/2,V=i/3,i/=2);for(var D=0;Df.eastOverIDL-f.westOverIDL&&(o.west=f.westOverIDL,o.east=f.eastOverIDL,o.east>q.CesiumMath.PI&&(o.east=o.east-q.CesiumMath.TWO_PI),o.west>q.CesiumMath.PI&&(o.west=o.west-q.CesiumMath.TWO_PI)),o}var P=new K.Cartographic;function C(e,t,r,a){for(var o=e.surfaceDistance,i=Math.ceil(o*t),n=0