1 |
- define(["./arrayRemoveDuplicates-bb548aa3","./Transforms-7cd3197b","./Matrix2-f2da41d4","./RuntimeError-ffe03243","./ComponentDatatype-17b06483","./CoplanarPolygonGeometryLibrary-4653bf5b","./when-229515d6","./GeometryAttribute-80036e07","./GeometryAttributes-b253752a","./GeometryInstance-16601d2a","./GeometryPipeline-5b3fba53","./IndexDatatype-b10faa0b","./PolygonGeometryLibrary-f129e954","./combine-8ce3f24b","./WebGLConstants-4e26b85a","./OrientedBoundingBox-86debc5a","./EllipsoidTangentPlane-b27cd2f7","./AxisAlignedBoundingBox-1feb0c48","./IntersectionTests-1b8a3cb9","./Plane-0421a8be","./AttributeCompression-0af3c035","./EncodedCartesian3-d4f305ce","./ArcType-1da7fdca","./EllipsoidRhumbLine-afd6cd20","./PolygonPipeline-5582b1ec"],(function(e,t,r,n,o,a,i,y,l,c,p,s,u,d,m,b,f,g,h,P,G,v,L,T,E){"use strict";function A(e){for(var t=e.length,r=new Float64Array(3*t),n=s.IndexDatatype.createTypedArray(t,2*t),a=0,i=0,c=0;c<t;c++){var p=e[c];r[a++]=p.x,r[a++]=p.y,r[a++]=p.z,n[i++]=c,n[i++]=(c+1)%t}var u=new l.GeometryAttributes({position:new y.GeometryAttribute({componentDatatype:o.ComponentDatatype.DOUBLE,componentsPerAttribute:3,values:r})});return new y.Geometry({attributes:u,indices:n,primitiveType:y.PrimitiveType.LINES})}function C(e){var t=(e=i.defaultValue(e,i.defaultValue.EMPTY_OBJECT)).polygonHierarchy;this._polygonHierarchy=t,this._workerName="createCoplanarPolygonOutlineGeometry",this.packedLength=u.PolygonGeometryLibrary.computeHierarchyPackedLength(t)+1}C.fromPositions=function(e){return new C({polygonHierarchy:{positions:(e=i.defaultValue(e,i.defaultValue.EMPTY_OBJECT)).positions}})},C.pack=function(e,t,r){return r=i.defaultValue(r,0),t[r=u.PolygonGeometryLibrary.packPolygonHierarchy(e._polygonHierarchy,t,r)]=e.packedLength,t};var H={polygonHierarchy:{}};return C.unpack=function(e,t,r){t=i.defaultValue(t,0);var n=u.PolygonGeometryLibrary.unpackPolygonHierarchy(e,t);t=n.startingIndex,delete n.startingIndex;var o=e[t];return i.defined(r)||(r=new C(H)),r._polygonHierarchy=n,r.packedLength=o,r},C.createGeometry=function(n){var o=n._polygonHierarchy,i=o.positions;if(!((i=e.arrayRemoveDuplicates(i,r.Cartesian3.equalsEpsilon,!0)).length<3)&&a.CoplanarPolygonGeometryLibrary.validOutline(i)){var l=u.PolygonGeometryLibrary.polygonOutlinesFromHierarchy(o,!1);if(0!==l.length){for(var s=[],d=0;d<l.length;d++){var m=new c.GeometryInstance({geometry:A(l[d])});s.push(m)}var b=p.GeometryPipeline.combineInstances(s)[0],f=t.BoundingSphere.fromPoints(o.positions);return new y.Geometry({attributes:b.attributes,indices:b.indices,primitiveType:b.primitiveType,boundingSphere:f})}}},function(e,t){return i.defined(t)&&(e=C.unpack(e,t)),e._ellipsoid=r.Ellipsoid.clone(e._ellipsoid),C.createGeometry(e)}}));
|