text: define(["./when-54c2dc71","./Check-6c0211bc","./Math-fc8cecf5","./Cartesian3-e5933291","./WebGLConstants-76bb35d1","./ComponentDatatype-6d99a1ee","./Cartesian2-062e3760","./Transforms-7e4f9763","./RuntimeError-2109023a","./GeometryAttribute-8f568314","./GeometryAttributes-4fcfcf40","./IndexDatatype-53503fee","./GeometryOffsetAttribute-7350d9af","./EllipsoidRhumbLine-db1dc7f1","./PolygonPipeline-143466d4","./RectangleGeometryLibrary-952ae9b8"],function(h,e,y,t,i,E,c,m,a,A,G,R,b,r,P,w){"use strict";var _=new m.BoundingSphere,v=new m.BoundingSphere,C=new t.Cartesian3,L=new c.Rectangle;function D(e,t){var i=e._ellipsoid,a=t.height,r=t.width,n=t.northCap,o=t.southCap,l=a,u=2,s=0,c=4;n&&(--u,--l,s+=1,c-=2),o&&(--u,--l,s+=1,c-=2),s+=u*r+2*l-c;var p,d=new Float64Array(3*s),f=0,g=0,h=C;if(n)w.RectangleGeometryLibrary.computePosition(t,i,!1,g,0,h),d[f++]=h.x,d[f++]=h.y,d[f++]=h.z;else for(p=0;p<r;p++)w.RectangleGeometryLibrary.computePosition(t,i,!1,g,p,h),d[f++]=h.x,d[f++]=h.y,d[f++]=h.z;for(p=r-1,g=1;g<a;g++)w.RectangleGeometryLibrary.computePosition(t,i,!1,g,p,h),d[f++]=h.x,d[f++]=h.y,d[f++]=h.z;if(g=a-1,!o)for(p=r-2;0<=p;p--)w.RectangleGeometryLibrary.computePosition(t,i,!1,g,p,h),d[f++]=h.x,d[f++]=h.y,d[f++]=h.z;for(p=0,g=a-2;0<g;g--)w.RectangleGeometryLibrary.computePosition(t,i,!1,g,p,h),d[f++]=h.x,d[f++]=h.y,d[f++]=h.z;for(var y=d.length/3*2,m=R.IndexDatatype.createTypedArray(d.length/3,y),b=0,_=0;_<d.length/3-1;_++)m[b++]=_,m[b++]=_+1;m[b++]=d.length/3-1,m[b++]=0;var v=new A.Geometry({attributes:new G.GeometryAttributes,primitiveType:A.PrimitiveType.LINES});return v.attributes.position=new A.GeometryAttribute({componentDatatype:E.ComponentDatatype.DOUBLE,componentsPerAttribute:3,values:d}),v.indices=m,v}function p(e){var t=(e=h.defaultValue(e,h.defaultValue.EMPTY_OBJECT)).rectangle,i=h.defaultValue(e.granularity,y.CesiumMath.RADIANS_PER_DEGREE),a=h.defaultValue(e.ellipsoid,c.Ellipsoid.WGS84),r=h.defaultValue(e.rotation,0),n=h.defaultValue(e.height,0),o=h.defaultValue(e.extrudedHeight,n);this._rectangle=c.Rectangle.clone(t),this._granularity=i,this._ellipsoid=a,this._surfaceHeight=Math.max(n,o),this._rotation=r,this._extrudedHeight=Math.min(n,o),this._offsetAttribute=e.offsetAttribute,this._workerName="createRectangleOutlineGeometry"}p.packedLength=c.Rectangle.packedLength+c.Ellipsoid.packedLength+5,p.pack=function(e,t,i){return i=h.defaultValue(i,0),c.Rectangle.pack(e._rectangle,t,i),i+=c.Rectangle.packedLength,c.Ellipsoid.pack(e._ellipsoid,t,i),i+=c.Ellipsoid.packedLength,t[i++]=e._granularity,t[i++]=e._surfaceHeight,t[i++]=e._rotation,t[i++]=e._extrudedHeight,t[i]=h.defaultValue(e._offsetAttribute,-1),t};var d=new c.Rectangle,f=c.Ellipsoid.clone(c.Ellipsoid.UNIT_SPHERE),g={rectangle:d,ellipsoid:f,granularity:void 0,height:void 0,rotation:void 0,extrudedHeight:void 0,offsetAttribute:void 0};p.unpack=function(e,t,i){t=h.defaultValue(t,0);var a=c.Rectangle.unpack(e,t,d);t+=c.Rectangle.packedLength;var r=c.Ellipsoid.unpack(e,t,f);t+=c.Ellipsoid.packedLength;var n=e[t++],o=e[t++],l=e[t++],u=e[t++],s=e[t];return h.defined(i)?(i._rectangle=c.Rectangle.clone(a,i._rectangle),i._ellipsoid=c.Ellipsoid.clone(r,i._ellipsoid),i._surfaceHeight=o,i._rotation=l,i._extrudedHeight=u,i._offsetAttribute=-1===s?void 0:s,i):(g.granularity=n,g.height=o,g.rotation=l,g.extrudedHeight=u,g.offsetAttribute=-1===s?void 0:s,new p(g))};var x=new c.Cartographic;return p.createGeometry=function(e){var t=e._rectangle,i=e._ellipsoid,a=w.RectangleGeometryLibrary.computeOptions(t,e._granularity,e._rotation,0,L,x);if(!y.CesiumMath.equalsEpsilon(t.north,t.south,y.CesiumMath.EPSILON10)&&!y.CesiumMath.equalsEpsilon(t.east,t.west,y.CesiumMath.EPSILON10)){var r,n,o,l,u,s,c,p,d,f=e._surfaceHeight,g=e._extrudedHeight;return s=!y.CesiumMath.equalsEpsilon(f,g,0,y.CesiumMath.EPSILON2)?(o=function(e,t){var i=e._surfaceHeight,a=e._extrudedHeight,r=e._ellipsoid,n=a,o=i,l=D(e,t),u=t.height,s=t.width,c=P.PolygonPipeline.scaleToGeodeticHeight(l.attributes.position.values,o,r,!1),p=c.length,d=new Float64Array(2*p);d.set(c);var f=P.PolygonPipeline.scaleToGeodeticHeight(l.attributes.position.values,n,r);d.set(f,p),l.attributes.position.values=d;var g=t.northCap,h=t.southCap,y=4;g&&--y,h&&--y;for(var m,b,_,v=2*(d.length/3+y),E=R.IndexDatatype.createTypedArray(d.length/3,v),p=d.length/6,A=0,G=0;G<p-1;G++)E[A++]=G,E[A++]=G+1,E[A++]=G+p,E[A++]=G+p+1;return E[A++]=p-1,E[A++]=0,E[A++]=p+p-1,E[A++]=p,E[A++]=0,E[A++]=p,m=g?u-1:(b=s-1,E[A++]=b,E[A++]=b+p,s+u-2),E[A++]=m,E[A++]=m+p,h||(_=s+m-1,E[A++]=_,E[A]=_+p),l.indices=E,l}(e,a),h.defined(e._offsetAttribute)&&(r=o.attributes.position.values.length/3,n=new Uint8Array(r),n=e._offsetAttribute===b.GeometryOffsetAttribute.TOP?b.arrayFill(n,1,0,r/2):(d=e._offsetAttribute===b.GeometryOffsetAttribute.NONE?0:1,b.arrayFill(n,d)),o.attributes.applyOffset=new A.GeometryAttribute({componentDatatype:E.ComponentDatatype.UNSIGNED_BYTE,componentsPerAttribute:1,values:n})),l=m.BoundingSphere.fromRectangle3D(t,i,f,v),u=m.BoundingSphere.fromRectangle3D(t,i,g,_),m.BoundingSphere.union(l,u)):((o=D(e,a)).attributes.position.values=P.PolygonPipeline.scaleToGeodeticHeight(o.attributes.position.values,f,i,!1),h.defined(e._offsetAttribute)&&(c=o.attributes.position.values.length,p=new Uint8Array(c/3),d=e._offsetAttribute===b.GeometryOffsetAttribute.NONE?0:1,b.arrayFill(p,d),o.attributes.applyOffset=new A.GeometryAttribute({componentDatatype:E.ComponentDatatype.UNSIGNED_BYTE,componentsPerAttribute:1,values:p})),m.BoundingSphere.fromRectangle3D(t,i,f)),new A.Geometry({attributes:o.attributes,indices:o.indices,primitiveType:A.PrimitiveType.LINES,boundingSphere:s,offsetAttribute:e._offsetAttribute})}},function(e,t){return h.defined(t)&&(e=p.unpack(e,t)),e._ellipsoid=c.Ellipsoid.clone(e._ellipsoid),e._rectangle=c.Rectangle.clone(e._rectangle),p.createGeometry(e)}});
  