4x/irrigation-monitoring-platf.../public/Cesium/Workers/PolygonGeometryLibrary-db85...

2 lines
8.2 KiB
JavaScript
Raw Normal View History

2024-12-26 19:24:07 +08:00
define(["exports","./ArcType-98ec98bf","./arrayRemoveDuplicates-18786327","./Matrix2-9aa31791","./ComponentDatatype-93750d1a","./when-4bbc8319","./EllipsoidRhumbLine-30c47ff4","./GeometryAttribute-43536dc0","./GeometryAttributes-7827a6c2","./GeometryPipeline-b1a36b18","./IndexDatatype-b7d979a6","./PolygonPipeline-da7fc5ca","./Transforms-d13cc04e"],(function(e,t,r,i,n,a,o,s,u,l,h,c,f){"use strict";function p(){this._array=[],this._offset=0,this._length=0}Object.defineProperties(p.prototype,{length:{get:function(){return this._length}}}),p.prototype.enqueue=function(e){this._array.push(e),this._length++},p.prototype.dequeue=function(){if(0!==this._length){var e=this._array,t=this._offset,r=e[t];return e[t]=void 0,++t>10&&2*t>e.length&&(this._array=e.slice(t),t=0),this._offset=t,this._length--,r}},p.prototype.peek=function(){if(0!==this._length)return this._array[this._offset]},p.prototype.contains=function(e){return-1!==this._array.indexOf(e)},p.prototype.clear=function(){this._array.length=this._offset=this._length=0},p.prototype.sort=function(e){this._offset>0&&(this._array=this._array.slice(this._offset),this._offset=0),this._array.sort(e)};var d={computeHierarchyPackedLength:function(e){for(var t=0,r=[e];r.length>0;){var n=r.pop();if(a.defined(n)){t+=2;var o=n.positions,s=n.holes;if(a.defined(o)&&(t+=o.length*i.Cartesian3.packedLength),a.defined(s))for(var u=s.length,l=0;l<u;++l)r.push(s[l])}}return t},packPolygonHierarchy:function(e,t,r){for(var n=[e];n.length>0;){var o=n.pop();if(a.defined(o)){var s=o.positions,u=o.holes;if(t[r++]=a.defined(s)?s.length:0,t[r++]=a.defined(u)?u.length:0,a.defined(s))for(var l=s.length,h=0;h<l;++h,r+=3)i.Cartesian3.pack(s[h],t,r);if(a.defined(u))for(var c=u.length,f=0;f<c;++f)n.push(u[f])}}return r},unpackPolygonHierarchy:function(e,t){for(var r=e[t++],n=e[t++],a=new Array(r),o=n>0?new Array(n):void 0,s=0;s<r;++s,t+=i.Cartesian3.packedLength)a[s]=i.Cartesian3.unpack(e,t);for(var u=0;u<n;++u)o[u]=d.unpackPolygonHierarchy(e,t),t=o[u].startingIndex,delete o[u].startingIndex;return{positions:a,holes:o,startingIndex:t}}},y=new i.Cartesian3;function g(e,t,r,n){return i.Cartesian3.subtract(t,e,y),i.Cartesian3.multiplyByScalar(y,r/n,y),i.Cartesian3.add(e,y,y),[y.x,y.y,y.z]}d.subdivideLineCount=function(e,t,r){var a=i.Cartesian3.distance(e,t)/r,o=Math.max(0,Math.ceil(n.CesiumMath.log2(a)));return Math.pow(2,o)};var v=new i.Cartographic,m=new i.Cartographic,C=new i.Cartographic,b=new i.Cartesian3;d.subdivideRhumbLineCount=function(e,t,r,i){var a=e.cartesianToCartographic(t,v),s=e.cartesianToCartographic(r,m),u=new o.EllipsoidRhumbLine(a,s,e).surfaceDistance/i,l=Math.max(0,Math.ceil(n.CesiumMath.log2(u)));return Math.pow(2,l)},d.subdivideLine=function(e,t,r,n){var o=d.subdivideLineCount(e,t,r),s=i.Cartesian3.distance(e,t),u=s/o;a.defined(n)||(n=[]);var l=n;l.length=3*o;for(var h=0,c=0;c<o;c++){var f=g(e,t,c*u,s);l[h++]=f[0],l[h++]=f[1],l[h++]=f[2]}return l},d.subdivideRhumbLine=function(e,t,r,i,s){var u=e.cartesianToCartographic(t,v),l=e.cartesianToCartographic(r,m),h=new o.EllipsoidRhumbLine(u,l,e),c=h.surfaceDistance/i,f=Math.max(0,Math.ceil(n.CesiumMath.log2(c))),p=Math.pow(2,f),d=h.surfaceDistance/p;a.defined(s)||(s=[]);var y=s;y.length=3*p;for(var g=0,w=0;w<p;w++){var T=h.interpolateUsingSurfaceDistance(w*d,C),I=e.cartographicToCartesian(T,b);y[g++]=I.x,y[g++]=I.y,y[g++]=I.z}return y};var w=new i.Cartesian3,T=new i.Cartesian3,I=new i.Cartesian3,x=new i.Cartesian3;d.scaleToGeodeticHeightExtruded=function(e,t,r,n,o){n=a.defaultValue(n,i.Ellipsoid.WGS84);var s=w,u=T,l=I,h=x;if(a.defined(e)&&a.defined(e.attributes)&&a.defined(e.attributes.position))for(var c=e.attributes.position.values,f=c.length/2,p=0;p<f;p+=3)i.Cartesian3.fromArray(c,p,l),n.geodeticSurfaceNormal(l,s),h=n.scaleToGeodeticSurface(l,h),u=i.Cartesian3.multiplyByScalar(s,r,u),u=i.Cartesian3.add(h,u,u),c[p+f]=u.x,c[p+1+f]=u.y,c[p+2+f]=u.z,o&&(h=i.Cartesian3.clone(l,h)),u=i.Cartesian3.multiplyByScalar(s,t,u),u=i.Cartesian3.add(h,u,u),c[p]=u.x,c[p+1]=u.y,c[p+2]=u.z;return e},d.polygonOutlinesFromHierarchy=function(e,t,n){var o,s,u,l=[