define(["./when-92c6cf3c","./buildModuleUrl-3d15f25c","./Cartographic-67e73ef9","./Check-52a7d806","./ComponentDatatype-81047f82","./FrustumGeometry-643144da","./GeometryAttribute-ef657318","./GeometryAttributes-7f66ea53","./PrimitiveType-cdfe443e","./Rectangle-bab7abf0","./Math-92c3b5f7","./Intersect-b97e930a","./Event-3390cd7d","./RuntimeError-c6a62a80","./WebGLConstants-71f10989","./Cartesian4-ad128b5d","./Plane-f8d22530","./VertexFormat-f496a3f1","./Cartesian2-6033fa5d","./FeatureDetection-067cb23c"],(function(e,t,n,a,r,o,i,c,u,p,f,s,d,m,_,k,g,h,y,l){"use strict";function b(t){a.o.typeOf.object("options",t),a.o.typeOf.object("options.frustum",t.frustum),a.o.typeOf.object("options.origin",t.origin),a.o.typeOf.object("options.orientation",t.orientation);var r,c,u=t.frustum,p=t.orientation,f=t.origin,s=e.u(t._drawNearPlane,!0);u instanceof o.o?(r=0,c=o.o.packedLength):u instanceof o.a&&(r=1,c=o.a.packedLength),this._frustumType=r,this._frustum=u.clone(),this._origin=n.t.clone(f),this._orientation=i.n.clone(p),this._drawNearPlane=s,this._workerName="createFrustumOutlineGeometry",this.packedLength=2+c+n.t.packedLength+i.n.packedLength}b.pack=function(t,r,c){a.o.typeOf.object("value",t),a.o.defined("array",r),c=e.u(c,0);var u=t._frustumType,p=t._frustum;return r[c++]=u,0===u?(o.o.pack(p,r,c),c+=o.o.packedLength):(o.a.pack(p,r,c),c+=o.a.packedLength),n.t.pack(t._origin,r,c),c+=n.t.packedLength,i.n.pack(t._orientation,r,c),r[c+=i.n.packedLength]=t._drawNearPlane?1:0,r};var w=new o.o,L=new o.a,v=new i.n,P=new n.t;return b.unpack=function(t,r,c){a.o.defined("array",t),r=e.u(r,0);var u,p=t[r++];0===p?(u=o.o.unpack(t,r,w),r+=o.o.packedLength):(u=o.a.unpack(t,r,L),r+=o.a.packedLength);var f=n.t.unpack(t,r,P);r+=n.t.packedLength;var s=i.n.unpack(t,r,v),d=1===t[r+=i.n.packedLength];if(!e.e(c))return new b({frustum:u,origin:f,orientation:s,_drawNearPlane:d});var m=p===c._frustumType?c._frustum:void 0;return c._frustum=u.clone(m),c._frustumType=p,c._origin=n.t.clone(f,c._origin),c._orientation=i.n.clone(s,c._orientation),c._drawNearPlane=d,c},b.createGeometry=function(e){var n=e._frustumType,a=e._frustum,p=e._origin,f=e._orientation,s=e._drawNearPlane,d=new Float64Array(24);o.z._computeNearFarPlanes(p,f,n,a,d);for(var m,_,k=new c.a({position:new i.o({componentDatatype:r.ComponentDatatype.DOUBLE,componentsPerAttribute:3,values:d})}),g=s?2:1,h=new Uint16Array(8*(g+1)),y=s?0:1;y<2;++y)_=4*y,h[m=s?8*y:0]=_,h[m+1]=_+1,h[m+2]=_+1,h[m+3]=_+2,h[m+4]=_+2,h[m+5]=_+3,h[m+6]=_+3,h[m+7]=_;for(y=0;y<2;++y)_=4*y,h[m=8*(g+y)]=_,h[m+1]=_+4,h[m+2]=_+1,h[m+3]=_+5,h[m+4]=_+2,h[m+5]=_+6,h[m+6]=_+3,h[m+7]=_+7;return new i.I({attributes:k,indices:h,primitiveType:u._0x29ba75.LINES,boundingSphere:t.i.fromVertices(d)})},function(t,n){return e.e(n)&&(t=b.unpack(t,n)),b.createGeometry(t)}}));