@pggis/pg-sdk 5.0.0 → 5.0.11

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (112) hide show
  1. package/README.md +8 -8
  2. package/dist/index.js +90 -91
  3. package/dist/pggis.min.css +1 -1
  4. package/dist/pggis.min.js +4465 -4476
  5. package/dist/resources/ThirdParty/Workers/z-worker-pako.js +1 -1
  6. package/dist/resources/Workers/{chunk-WQBKKXJC.js → chunk-35SHYARM.js} +2 -2
  7. package/dist/resources/Workers/{chunk-Y53SIX6D.js → chunk-37F5JSTI.js} +2 -2
  8. package/dist/resources/Workers/{chunk-PO64KPKA.js → chunk-3SSKC3VN.js} +2 -2
  9. package/dist/resources/Workers/{chunk-I3XHKING.js → chunk-3W4GT7KQ.js} +2 -2
  10. package/dist/resources/Workers/{chunk-VMOPYKP4.js → chunk-4IW2T6GF.js} +2 -2
  11. package/dist/resources/Workers/{chunk-BTPJ3H6N.js → chunk-5YEWO3HT.js} +2 -2
  12. package/dist/resources/Workers/{chunk-FCVV6A2F.js → chunk-64RSHJUE.js} +2 -2
  13. package/dist/resources/Workers/chunk-77IHZJJ3.js +26 -0
  14. package/dist/resources/Workers/{chunk-5GVU4LLW.js → chunk-7HTKERZY.js} +2 -2
  15. package/dist/resources/Workers/{chunk-7IBY6LYM.js → chunk-A56XVLQR.js} +2 -2
  16. package/dist/resources/Workers/{chunk-335F4KMR.js → chunk-AJYK4IVJ.js} +2 -2
  17. package/dist/resources/Workers/{chunk-YC4EEWUJ.js → chunk-ARG42DC4.js} +2 -2
  18. package/dist/resources/Workers/{chunk-5EZKANRV.js → chunk-AU7IKHOH.js} +2 -2
  19. package/dist/resources/Workers/{chunk-PQSWZ6QE.js → chunk-B4AA3ARO.js} +2 -2
  20. package/dist/resources/Workers/{chunk-HMV6ETSJ.js → chunk-CNCV5UL7.js} +2 -2
  21. package/dist/resources/Workers/{chunk-JU23HGY3.js → chunk-CYCB63OH.js} +2 -2
  22. package/dist/resources/Workers/{chunk-AHKBUIAX.js → chunk-D6AA5QVT.js} +2 -2
  23. package/dist/resources/Workers/{chunk-LIEFEM73.js → chunk-D6C66QON.js} +2 -2
  24. package/dist/resources/Workers/{chunk-BCYX7GBY.js → chunk-DEPHB2WM.js} +2 -2
  25. package/dist/resources/Workers/{chunk-HLFNWOQ4.js → chunk-DMEY62ID.js} +2 -2
  26. package/dist/resources/Workers/{chunk-QJG5NRTN.js → chunk-DQQ63PYM.js} +2 -2
  27. package/dist/resources/Workers/{chunk-7RJW35V3.js → chunk-ED5JPB3S.js} +2 -2
  28. package/dist/resources/Workers/{chunk-I7WJS3WM.js → chunk-EZUYS2JF.js} +2 -2
  29. package/dist/resources/Workers/{chunk-DSXZVGY7.js → chunk-FEVXJ54I.js} +2 -2
  30. package/dist/resources/Workers/{chunk-N6G72L23.js → chunk-G5AGHVVC.js} +2 -2
  31. package/dist/resources/Workers/{chunk-AOSK7NDA.js → chunk-GBYLG25F.js} +1 -1
  32. package/dist/resources/Workers/{chunk-YL47XCQ4.js → chunk-GILIDQNQ.js} +2 -2
  33. package/dist/resources/Workers/{chunk-SNN6UCXM.js → chunk-HMIYSTF6.js} +2 -2
  34. package/dist/resources/Workers/{chunk-YDUNCXSU.js → chunk-HTFSEEMT.js} +2 -2
  35. package/dist/resources/Workers/{chunk-WNAZRVVU.js → chunk-HWXX4CWK.js} +2 -2
  36. package/dist/resources/Workers/{chunk-4QCIHDA2.js → chunk-IYTZ52EY.js} +2 -2
  37. package/dist/resources/Workers/{chunk-ATTMFTQ4.js → chunk-J6UP6FLE.js} +1 -1
  38. package/dist/resources/Workers/{chunk-R3KD5ZAI.js → chunk-LEYMRMBK.js} +2 -2
  39. package/dist/resources/Workers/{chunk-QGPFMASY.js → chunk-M3MGYQSL.js} +1 -1
  40. package/dist/resources/Workers/{chunk-SPVHGWGM.js → chunk-N4VJKXZS.js} +2 -2
  41. package/dist/resources/Workers/{chunk-ABHTLV4B.js → chunk-NB3ML6JO.js} +2 -2
  42. package/dist/resources/Workers/{chunk-LNFOIPBT.js → chunk-OFUUQVMR.js} +2 -2
  43. package/dist/resources/Workers/{chunk-JOXXXMPE.js → chunk-OSW76XDF.js} +1 -1
  44. package/dist/resources/Workers/{chunk-DGGIK7AD.js → chunk-PSPPBZWI.js} +3 -3
  45. package/dist/resources/Workers/chunk-QN3VOORQ.js +26 -0
  46. package/dist/resources/Workers/{chunk-46IDNOB6.js → chunk-QOUAJ6TL.js} +2 -2
  47. package/dist/resources/Workers/{chunk-BDLVVHOG.js → chunk-RCV6KWXS.js} +2 -2
  48. package/dist/resources/Workers/{chunk-BGQDOF2W.js → chunk-TCGIRNHN.js} +2 -2
  49. package/dist/resources/Workers/{chunk-KORWG3CG.js → chunk-U4IEOH5K.js} +2 -2
  50. package/dist/resources/Workers/{chunk-F7XR2IV5.js → chunk-UP6I5URU.js} +2 -2
  51. package/dist/resources/Workers/{chunk-GBI3IATP.js → chunk-VTAIKJXX.js} +1 -1
  52. package/dist/resources/Workers/{chunk-72ENFGTU.js → chunk-VTBDSFTG.js} +2 -2
  53. package/dist/resources/Workers/{chunk-NU4XOT2V.js → chunk-VW6VD53G.js} +2 -2
  54. package/dist/resources/Workers/{chunk-KTDI3TD2.js → chunk-WGGIH7QW.js} +2 -2
  55. package/dist/resources/Workers/{chunk-SRJEQ4WA.js → chunk-WWA5PL4H.js} +2 -2
  56. package/dist/resources/Workers/{chunk-GRCPCORO.js → chunk-WZDE3RYP.js} +2 -2
  57. package/dist/resources/Workers/{chunk-RQ3X5FSK.js → chunk-XRL4AVS5.js} +2 -2
  58. package/dist/resources/Workers/combineGeometry.js +2 -2
  59. package/dist/resources/Workers/createBoxGeometry.js +2 -2
  60. package/dist/resources/Workers/createBoxOutlineGeometry.js +2 -2
  61. package/dist/resources/Workers/createCircleGeometry.js +2 -2
  62. package/dist/resources/Workers/createCircleOutlineGeometry.js +2 -2
  63. package/dist/resources/Workers/createCoplanarPolygonGeometry.js +2 -2
  64. package/dist/resources/Workers/createCoplanarPolygonOutlineGeometry.js +2 -2
  65. package/dist/resources/Workers/createCorridorGeometry.js +2 -2
  66. package/dist/resources/Workers/createCorridorOutlineGeometry.js +2 -2
  67. package/dist/resources/Workers/createCylinderGeometry.js +2 -2
  68. package/dist/resources/Workers/createCylinderOutlineGeometry.js +2 -2
  69. package/dist/resources/Workers/createEllipseGeometry.js +2 -2
  70. package/dist/resources/Workers/createEllipseOutlineGeometry.js +2 -2
  71. package/dist/resources/Workers/createEllipsoidGeometry.js +2 -2
  72. package/dist/resources/Workers/createEllipsoidOutlineGeometry.js +2 -2
  73. package/dist/resources/Workers/createFrustumGeometry.js +2 -2
  74. package/dist/resources/Workers/createFrustumOutlineGeometry.js +2 -2
  75. package/dist/resources/Workers/createGeometry.js +2 -2
  76. package/dist/resources/Workers/createGroundPolylineGeometry.js +2 -2
  77. package/dist/resources/Workers/createPlaneGeometry.js +2 -2
  78. package/dist/resources/Workers/createPlaneOutlineGeometry.js +2 -2
  79. package/dist/resources/Workers/createPolygonGeometry.js +2 -2
  80. package/dist/resources/Workers/createPolygonOutlineGeometry.js +2 -2
  81. package/dist/resources/Workers/createPolylineGeometry.js +2 -2
  82. package/dist/resources/Workers/createPolylineVolumeGeometry.js +2 -2
  83. package/dist/resources/Workers/createPolylineVolumeOutlineGeometry.js +2 -2
  84. package/dist/resources/Workers/createRectangleGeometry.js +2 -2
  85. package/dist/resources/Workers/createRectangleOutlineGeometry.js +2 -2
  86. package/dist/resources/Workers/createSimplePolylineGeometry.js +2 -2
  87. package/dist/resources/Workers/createSphereGeometry.js +2 -2
  88. package/dist/resources/Workers/createSphereOutlineGeometry.js +2 -2
  89. package/dist/resources/Workers/createTaskProcessorWorker.js +2 -2
  90. package/dist/resources/Workers/createVectorTileClampedPolylines.js +2 -2
  91. package/dist/resources/Workers/createVectorTileGeometries.js +2 -2
  92. package/dist/resources/Workers/createVectorTilePoints.js +2 -2
  93. package/dist/resources/Workers/createVectorTilePolygons.js +2 -2
  94. package/dist/resources/Workers/createVectorTilePolylines.js +2 -2
  95. package/dist/resources/Workers/createVerticesFromGoogleEarthEnterpriseBuffer.js +2 -2
  96. package/dist/resources/Workers/createVerticesFromHeightmap.js +2 -2
  97. package/dist/resources/Workers/createVerticesFromQuantizedTerrainMesh.js +2 -2
  98. package/dist/resources/Workers/createWallGeometry.js +2 -2
  99. package/dist/resources/Workers/createWallOutlineGeometry.js +2 -2
  100. package/dist/resources/Workers/decodeDraco.js +2 -2
  101. package/dist/resources/Workers/decodeGoogleEarthEnterprisePacket.js +2 -2
  102. package/dist/resources/Workers/decodeI3S.js +2 -2
  103. package/dist/resources/Workers/gaussianSplatSorter.js +2 -2
  104. package/dist/resources/Workers/gaussianSplatTextureGenerator.js +2 -2
  105. package/dist/resources/Workers/transcodeKTX2.js +2 -2
  106. package/dist/resources/Workers/transferTypedArrayTest.js +1 -1
  107. package/dist/resources/Workers/upsampleQuantizedTerrainMesh.js +2 -2
  108. package/package.json +3 -1
  109. package/CHANGELOG.md +0 -611
  110. package/dist/dist/index.js +0 -1964
  111. package/dist/resources/Workers/chunk-3FFM6NRK.js +0 -26
  112. package/dist/resources/Workers/chunk-6EFYFFBI.js +0 -26
package/dist/index.js CHANGED
@@ -2,24 +2,23 @@
2
2
  * 盘古地理信息系统 PanGu Gis
3
3
  * PanGu Gis For Cesium SDK
4
4
  *
5
- * 版本信息:5.0.0
6
- * 编译日期:2025-07-10
5
+ * 版本信息:5.0.11
6
+ * 编译日期:2025-08-30
7
7
  * 版权所有:Copyright by PanGu Gis http://www.pggis.com
8
8
  * 使用单位:湖北蜂云软件有限公司
9
9
  */
10
- var Md=Object.defineProperty;var Ad=(l,e,t)=>e in l?Md(l,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):l[e]=t;var Ti=(l,e,t)=>(Ad(l,typeof e!="symbol"?e+"":e,t),t);var vn={};function wn(l,e){vn[l]=e}function te(l){return vn[l]}var xn={};function lt(l,e){xn[l]=e}function Ei(l){return xn[l]}import*as i from"cesium";var Cn=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Pi=1,Xe=8,Ke=class l{static from(e){if(!(e instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[t,r]=new Uint8Array(e,0,2);if(t!==219)throw new Error("Data does not appear to be in a KDBush format.");let s=r>>4;if(s!==Pi)throw new Error(`Got v${s} data when expected v${Pi}.`);let a=Cn[r&15];if(!a)throw new Error("Unrecognized array type.");let[o]=new Uint16Array(e,2,1),[n]=new Uint32Array(e,4,1);return new l(n,o,a,e)}constructor(e,t=64,r=Float64Array,s){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=r,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;let a=Cn.indexOf(this.ArrayType),o=e*2*this.ArrayType.BYTES_PER_ELEMENT,n=e*this.IndexArrayType.BYTES_PER_ELEMENT,h=(8-n%8)%8;if(a<0)throw new Error(`Unexpected typed array class: ${r}.`);s&&s instanceof ArrayBuffer?(this.data=s,this.ids=new this.IndexArrayType(this.data,Xe,e),this.coords=new this.ArrayType(this.data,Xe+n+h,e*2),this._pos=e*2,this._finished=!0):(this.data=new ArrayBuffer(Xe+o+n+h),this.ids=new this.IndexArrayType(this.data,Xe,e),this.coords=new this.ArrayType(this.data,Xe+n+h,e*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(Pi<<4)+a]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e)}add(e,t){let r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=e,this.coords[this._pos++]=t,r}finish(){let e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return Ai(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,r,s){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:a,coords:o,nodeSize:n}=this,h=[0,a.length-1,0],c=[];for(;h.length;){let p=h.pop()||0,f=h.pop()||0,y=h.pop()||0;if(f-y<=n){for(let C=y;C<=f;C++){let P=o[2*C],A=o[2*C+1];P>=e&&P<=r&&A>=t&&A<=s&&c.push(a[C])}continue}let _=y+f>>1,d=o[2*_],T=o[2*_+1];d>=e&&d<=r&&T>=t&&T<=s&&c.push(a[_]),(p===0?e<=d:t<=T)&&(h.push(y),h.push(_-1),h.push(1-p)),(p===0?r>=d:s>=T)&&(h.push(_+1),h.push(f),h.push(1-p))}return c}within(e,t,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:s,coords:a,nodeSize:o}=this,n=[0,s.length-1,0],h=[],c=r*r;for(;n.length;){let p=n.pop()||0,f=n.pop()||0,y=n.pop()||0;if(f-y<=o){for(let C=y;C<=f;C++)Tn(a[2*C],a[2*C+1],e,t)<=c&&h.push(s[C]);continue}let _=y+f>>1,d=a[2*_],T=a[2*_+1];Tn(d,T,e,t)<=c&&h.push(s[_]),(p===0?e-r<=d:t-r<=T)&&(n.push(y),n.push(_-1),n.push(1-p)),(p===0?e+r>=d:t+r>=T)&&(n.push(_+1),n.push(f),n.push(1-p))}return h}};function Ai(l,e,t,r,s,a){if(s-r<=t)return;let o=r+s>>1;En(l,e,o,r,s,a),Ai(l,e,t,r,o-1,1-a),Ai(l,e,t,o+1,s,1-a)}function En(l,e,t,r,s,a){for(;s>r;){if(s-r>600){let c=s-r+1,p=t-r+1,f=Math.log(c),y=.5*Math.exp(2*f/3),_=.5*Math.sqrt(f*y*(c-y)/c)*(p-c/2<0?-1:1),d=Math.max(r,Math.floor(t-p*y/c+_)),T=Math.min(s,Math.floor(t+(c-p)*y/c+_));En(l,e,t,d,T,a)}let o=e[2*t+a],n=r,h=s;for(Qe(l,e,r,t),e[2*s+a]>o&&Qe(l,e,r,s);n<h;){for(Qe(l,e,n,h),n++,h--;e[2*n+a]<o;)n++;for(;e[2*h+a]>o;)h--}e[2*r+a]===o?Qe(l,e,r,h):(h++,Qe(l,e,h,s)),h<=t&&(r=h+1),t<=h&&(s=h-1)}}function Qe(l,e,t,r){Mi(l,t,r),Mi(e,2*t,2*r),Mi(e,2*t+1,2*r+1)}function Mi(l,e,t){let r=l[e];l[e]=l[t],l[t]=r}function Tn(l,e,t,r){let s=l-t,a=e-r;return s*s+a*a}var bd={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:l=>l},Pn=Math.fround||(l=>e=>(l[0]=+e,l[0]))(new Float32Array(1)),Le=2,Ce=3,bi=4,xe=5,An=6,Fe=class{constructor(e){this.options=Object.assign(Object.create(bd),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){let{log:t,minZoom:r,maxZoom:s}=this.options;t&&console.time("total time");let a=`prepare ${e.length} points`;t&&console.time(a),this.points=e;let o=[];for(let h=0;h<e.length;h++){let c=e[h];if(!c.geometry)continue;let[p,f]=c.geometry.coordinates,y=Pn(ht(p)),_=Pn(ct(f));o.push(y,_,1/0,h,-1,1),this.options.reduce&&o.push(0)}let n=this.trees[s+1]=this._createTree(o);t&&console.timeEnd(a);for(let h=s;h>=r;h--){let c=+Date.now();n=this.trees[h]=this._createTree(this._cluster(n,h)),t&&console.log("z%d: %d clusters in %dms",h,n.numItems,+Date.now()-c)}return t&&console.timeEnd("total time"),this}getClusters(e,t){let r=((e[0]+180)%360+360)%360-180,s=Math.max(-90,Math.min(90,e[1])),a=e[2]===180?180:((e[2]+180)%360+360)%360-180,o=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)r=-180,a=180;else if(r>a){let f=this.getClusters([r,s,180,o],t),y=this.getClusters([-180,s,a,o],t);return f.concat(y)}let n=this.trees[this._limitZoom(t)],h=n.range(ht(r),ct(o),ht(a),ct(s)),c=n.data,p=[];for(let f of h){let y=this.stride*f;p.push(c[y+xe]>1?Mn(c,y,this.clusterProps):this.points[c[y+Ce]])}return p}getChildren(e){let t=this._getOriginId(e),r=this._getOriginZoom(e),s="No cluster with the specified id.",a=this.trees[r];if(!a)throw new Error(s);let o=a.data;if(t*this.stride>=o.length)throw new Error(s);let n=this.options.radius/(this.options.extent*Math.pow(2,r-1)),h=o[t*this.stride],c=o[t*this.stride+1],p=a.within(h,c,n),f=[];for(let y of p){let _=y*this.stride;o[_+bi]===e&&f.push(o[_+xe]>1?Mn(o,_,this.clusterProps):this.points[o[_+Ce]])}if(f.length===0)throw new Error(s);return f}getLeaves(e,t,r){t=t||10,r=r||0;let s=[];return this._appendLeaves(s,e,t,r,0),s}getTile(e,t,r){let s=this.trees[this._limitZoom(e)],a=Math.pow(2,e),{extent:o,radius:n}=this.options,h=n/o,c=(r-h)/a,p=(r+1+h)/a,f={features:[]};return this._addTileFeatures(s.range((t-h)/a,c,(t+1+h)/a,p),s.data,t,r,a,f),t===0&&this._addTileFeatures(s.range(1-h/a,c,1,p),s.data,a,r,a,f),t===a-1&&this._addTileFeatures(s.range(0,c,h/a,p),s.data,-1,r,a,f),f.features.length?f:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){let r=this.getChildren(e);if(t++,r.length!==1)break;e=r[0].properties.cluster_id}return t}_appendLeaves(e,t,r,s,a){let o=this.getChildren(t);for(let n of o){let h=n.properties;if(h&&h.cluster?a+h.point_count<=s?a+=h.point_count:a=this._appendLeaves(e,h.cluster_id,r,s,a):a<s?a++:e.push(n),e.length===r)break}return a}_createTree(e){let t=new Ke(e.length/this.stride|0,this.options.nodeSize,Float32Array);for(let r=0;r<e.length;r+=this.stride)t.add(e[r],e[r+1]);return t.finish(),t.data=e,t}_addTileFeatures(e,t,r,s,a,o){for(let n of e){let h=n*this.stride,c=t[h+xe]>1,p,f,y;if(c)p=bn(t,h,this.clusterProps),f=t[h],y=t[h+1];else{let T=this.points[t[h+Ce]];p=T.properties;let[C,P]=T.geometry.coordinates;f=ht(C),y=ct(P)}let _={type:1,geometry:[[Math.round(this.options.extent*(f*a-r)),Math.round(this.options.extent*(y*a-s))]],tags:p},d;c||this.options.generateId?d=t[h+Ce]:d=this.points[t[h+Ce]].id,d!==void 0&&(_.id=d),o.features.push(_)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){let{radius:r,extent:s,reduce:a,minPoints:o}=this.options,n=r/(s*Math.pow(2,t)),h=e.data,c=[],p=this.stride;for(let f=0;f<h.length;f+=p){if(h[f+Le]<=t)continue;h[f+Le]=t;let y=h[f],_=h[f+1],d=e.within(h[f],h[f+1],n),T=h[f+xe],C=T;for(let P of d){let A=P*p;h[A+Le]>t&&(C+=h[A+xe])}if(C>T&&C>=o){let P=y*T,A=_*T,O,H=-1,W=((f/p|0)<<5)+(t+1)+this.points.length;for(let J of d){let I=J*p;if(h[I+Le]<=t)continue;h[I+Le]=t;let G=h[I+xe];P+=h[I]*G,A+=h[I+1]*G,h[I+bi]=W,a&&(O||(O=this._map(h,f,!0),H=this.clusterProps.length,this.clusterProps.push(O)),a(O,this._map(h,I)))}h[f+bi]=W,c.push(P/C,A/C,1/0,W,-1,C),a&&c.push(H)}else{for(let P=0;P<p;P++)c.push(h[f+P]);if(C>1)for(let P of d){let A=P*p;if(!(h[A+Le]<=t)){h[A+Le]=t;for(let O=0;O<p;O++)c.push(h[A+O])}}}}return c}_getOriginId(e){return e-this.points.length>>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t,r){if(e[t+xe]>1){let o=this.clusterProps[e[t+An]];return r?Object.assign({},o):o}let s=this.points[e[t+Ce]].properties,a=this.options.map(s);return r&&a===s?Object.assign({},a):a}};function Mn(l,e,t){return{type:"Feature",id:l[e+Ce],properties:bn(l,e,t),geometry:{type:"Point",coordinates:[Sd(l[e]),Id(l[e+1])]}}}function bn(l,e,t){let r=l[e+xe],s=r>=1e4?`${Math.round(r/1e3)}k`:r>=1e3?`${Math.round(r/100)/10}k`:r,a=l[e+An],o=a===-1?{}:Object.assign({},t[a]);return Object.assign(o,{cluster:!0,cluster_id:l[e+Ce],point_count:r,point_count_abbreviated:s})}function ht(l){return l/360+.5}function ct(l){let e=Math.sin(l*Math.PI/180),t=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return t<0?0:t>1?1:t}function Sd(l){return(l-.5)*360}function Id(l){let e=(180-l*360)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}var Sn=new i.WebMercatorProjection,Si=class{static transformCartesianToWGS84(e){if(e){let t=i.Ellipsoid.WGS84.cartesianToCartographic(e);return new U(i.Math.toDegrees((t==null?void 0:t.longitude)||0),i.Math.toDegrees((t==null?void 0:t.latitude)||0),t.height||0)}return new U(0,0)}static transformCartographicToWGS84(e){return e?new U(i.Math.toDegrees((e==null?void 0:e.longitude)||0),i.Math.toDegrees((e==null?void 0:e.latitude)||0),e.height||0):new U(0,0)}static transformWGS84ToCartesian(e){return e?i.Cartesian3.fromDegrees(e.lng,e.lat,e.alt,i.Ellipsoid.WGS84):i.Cartesian3.ZERO}static transformWGS84ToCartographic(e){return e?i.Cartographic.fromDegrees(e.lng,e.lat,e.alt):i.Cartographic.ZERO}static transformCartesianArrayToWGS84Array(e){return e?e.map(t=>this.transformCartesianToWGS84(t)):[]}static transformWGS84ArrayToCartesianArray(e){return e?e.map(t=>this.transformWGS84ToCartesian(t)):[]}static transformWGS84ToMercator(e){let t=Sn.project(i.Cartographic.fromDegrees(e.lng,e.lat,e.alt));return new U(t.x,t.y,t.z)}static transformMercatorToWGS84(e){let t=Sn.unproject(new i.Cartesian3(e.lng,e.lat,e.alt));return new U(i.Math.toDegrees(t.longitude),i.Math.toDegrees(t.latitude),t.height)}static transformWindowToWGS84(e,t){let r=t.scene,s;if(r.mode===i.SceneMode.SCENE3D){let a=r.camera.getPickRay(e);s=r.globe.pick(a,r)}else s=r.camera.pickEllipsoid(e,i.Ellipsoid.WGS84);return this.transformCartesianToWGS84(s)}static transformWGS84ToWindow(e,t){let r=t.scene;return i.SceneTransforms.worldToWindowCoordinates(r,this.transformWGS84ToCartesian(e))}},u=Si;var pt=52.35987755982988,ie=3.141592653589793,In=6378245,Dn=.006693421622965943,Ii=class{static BD09ToGCJ02(e,t){let r=+e-.0065,s=+t-.006,a=Math.sqrt(r*r+s*s)-2e-5*Math.sin(s*pt),o=Math.atan2(s,r)-3e-6*Math.cos(r*pt),n=a*Math.cos(o),h=a*Math.sin(o);return[n,h]}static GCJ02ToBD09(e,t){t=+t,e=+e;let r=Math.sqrt(e*e+t*t)+2e-5*Math.sin(t*pt),s=Math.atan2(t,e)+3e-6*Math.cos(e*pt),a=r*Math.cos(s)+.0065,o=r*Math.sin(s)+.006;return[a,o]}static WGS84ToGCJ02(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];{let r=this.delta(e,t);return[e+r[0],t+r[1]]}}static GCJ02ToWGS84(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];{let r=[e,t],s=this.WGS84ToGCJ02(e,t),a=s[0]-e,o=s[1]-t;do s=this.WGS84ToGCJ02(r[0]-=a,r[1]-=o),a=s[0]-e,o=s[1]-t;while(Math.abs(a)>1e-7||Math.abs(o)>1e-7);return r}}static delta(e,t){let r=this.transformLng(e-105,t-35),s=this.transformLat(e-105,t-35),a=t/180*ie,o=Math.sin(a);o=1-Dn*o*o;let n=Math.sqrt(o);return r=r*180/(In/n*Math.cos(a)*ie),s=s*180/(In*(1-Dn)/(o*n)*ie),[r,s]}static transformLng(e,t){t=+t,e=+e;let r=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ie)+20*Math.sin(2*e*ie))*2/3,r+=(20*Math.sin(e*ie)+40*Math.sin(e/3*ie))*2/3,r+=(150*Math.sin(e/12*ie)+300*Math.sin(e/30*ie))*2/3,r}static transformLat(e,t){t=+t,e=+e;let r=-100+2*e+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ie)+20*Math.sin(2*e*ie))*2/3,r+=(20*Math.sin(t*ie)+40*Math.sin(t/3*ie))*2/3,r+=(160*Math.sin(t/12*ie)+320*Math.sin(t*ie/30))*2/3,r}static out_of_china(e,t){return t=+t,e=+e,!(e>73.66&&e<135.05&&t>3.86&&t<53.55)}},me=Ii;var Di=class l{constructor(e,t,r,s,a,o){this._lng=+e||0,this._lat=+t||0,this._alt=+r||0,this._heading=+s||0,this._pitch=+a||0,this._roll=+o||0}get lng(){return this._lng}set lng(e){this._lng=+e}get lat(){return this._lat}set lat(e){this._lat=+e}get alt(){return this._alt}set alt(e){this._alt=+e}get heading(){return this._heading}set heading(e){this._heading=+e}get pitch(){return this._pitch}set pitch(e){this._pitch=+e}get roll(){return this._roll}set roll(e){this._roll=+e}static fromArray(e){let t=new l;return Array.isArray(e)&&(t.lng=e[0]||0,t.lat=e[1]||0,t.alt=e[2]||0,t.heading=e[3]||0,t.pitch=e[4]||0,t.roll=e[5]||0),t}static fromString(e){let t=new l;if(e&&typeof e=="string"){let r=e.split(",");t=this.fromArray(r)}return t}static fromObject(e){return new l(e.lng,e.lat,e.alt,e.heading,e.pitch,e.roll)}static deserialize(e){let t=new l,r=JSON.parse(e);return r&&(t.lng=r.lng||0,t.lat=r.lat||0,t.alt=r.alt||0,t.heading=r.heading||0,t.pitch=r.pitch||0,t.roll=r.roll||0),t}serialize(){let e=new l(this._lng,this._lat,this._alt,this._heading,this._pitch,this._roll);return JSON.stringify(e)}distance(e){return!e||!(e instanceof l)?0:i.Cartesian3.distance(u.transformWGS84ToCartesian(this),u.transformWGS84ToCartesian(e))}clone(){let e=new l;return e.lng=this.lng||0,e.lat=this.lat||0,e.alt=this.alt||0,e.heading=this.heading||0,e.pitch=this.pitch||0,e.roll=this.roll||0,e}copy(){return this.clone()}toArray(){return[this.lng,this.lat,this.alt,this.heading,this.pitch,this.roll]}toString(){return`${this.lng},${this.lat},${this.alt},${this.heading},${this.pitch},${this.roll}`}toObject(){return{lng:this.lng,lat:this.lat,alt:this.alt,heading:this.heading,pitch:this.pitch,roll:this.roll}}},U=Di;var Li=class{static parsePosition(e){let t=new U;return e&&(typeof e=="string"?t=U.fromString(e):Array.isArray(e)?t=U.fromArray(e):!(Object(e)instanceof U)&&Object(e).hasOwnProperty("lng")&&Object(e).hasOwnProperty("lat")?t=U.fromObject(e):Object(e)instanceof U?t=e:Object(e)instanceof i.Cartesian3?t=u.transformCartesianToWGS84(e):Object(e)instanceof i.Cartographic&&(t=u.transformCartographicToWGS84(e))),t}static parsePositions(e){if(typeof e=="string"){if(e.indexOf("#")>=0)throw new Error("the positions invalid");e=e.split(";").filter(t=>!!t)}return e.map(t=>this.parsePosition(t))}static parsePointCoordToArray(e){return e=this.parsePosition(e),[e.lng,e.lat]}static parsePolylineCoordToArray(e){let t=[];return e=this.parsePositions(e),e.forEach(r=>{t.push([r.lng,r.lat])}),t}static parsePolygonCoordToArray(e,t=!1){let r=[];return e=this.parsePositions(e),e.forEach(s=>{r.push([s.lng,s.lat])}),t&&r.length>0&&r.push(r[0]),[r]}},g=Li;var $e={ADD:"add",REMOVE:"remove"},R={LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,MOUSE_MOVE:i.ScreenSpaceEventType.MOUSE_MOVE,WHEEL:i.ScreenSpaceEventType.WHEEL,MOUSE_OVER:"mouseover",MOUSE_OUT:"mouseout"},Ln={ADD_LAYER:"addLayer",REMOVE_LAYER:"removeLayer",ADD_EFFECT:"addEffect",REMOVE_EFFECT:"removeEffect",LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,MOUSE_MOVE:i.ScreenSpaceEventType.MOUSE_MOVE,WHEEL:i.ScreenSpaceEventType.WHEEL},D={CAMERA_MOVE_END:"cameraMoveEnd",CAMERA_CHANGED:"cameraChanged",PRE_UPDATE:"preUpdate",POST_UPDATE:"postUpdate",PRE_RENDER:"preRender",POST_RENDER:"postRender",MORPH_COMPLETE:"morphComplete",CLOCK_TICK:"clockTick",RENDER_ERROR:"renderError"},Te={...$e,LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,MOUSE_MOVE:i.ScreenSpaceEventType.MOUSE_MOVE,MOUSE_OVER:"mouseover",MOUSE_OUT:"mouseout",POSITION_UPDATE:"positionUpdate"},Re={READY:"ready",TEX_READY:"texturesReady"},Q={INITIAL_TILES_LOADED:"initialTilesLoaded",ALL_TILES_LOADED:"allTilesLoaded ",LOAD_PROGRESS:"loadProgress ",TILE_FAILED:"tileFailed ",TILE_LOAD:"tileLoad",TILE_UNLOAD:"tileUnload",TILE_VISIBLE:"tileVisible"},Ee=$e,Pe={...$e,LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK},oe={...$e,POST_RENDER:"postRender",ACTIVATE:"activate",DEACTIVATE:"deactivate",RESET_TIME_LINE:"restTimeLine"},ne={...$e,POST_RENDER:"postRender",RESET_TIME_LINE:"restTimeLine"},E={DRAW_START:"drawStart",DRAW_STOP:"drawStop",EDIT_START:"editStart",EDIT_STOP:"editEnd",DRAW_ANCHOR:"drawAnchor",CREATE_ANCHOR:"createAnchor",UPDATE_ANCHOR:"updateAnchor",ANCHOR_MOVING:"anchorMoving",EDIT_ANCHOR_STOP:"editAnchorStop",DELETE_ANCHOR:"deleteAnchor",CLEAR_ANCHOR:"clearAnchor"};var Ri=class{constructor(e){this._types=e,this._cache={}}_on(e,t,r){let s=this.getEvent(e),a;return s&&t&&(a=s.addEventListener(t,r||this)),a}_off(e,t,r){let s=this.getEvent(e),a=!1;return s&&t&&(a=s.removeEventListener(t,r||this)),a}_fire(e,t){let r=this.getEvent(e);r&&r.raiseEvent(t)}_registerEvent(){Object.keys(this._types).forEach(e=>{let t=this._types[e];this._cache[t]=new i.Event})}on(e,t,r){return this._on(e,t,r)}once(e,t,r){let s=this._on(e,a=>{t(a),s&&s()},r)}off(e,t,r){return this._off(e,t,r)}fire(e,t){this._fire(e,t)}getEvent(e){return this._cache[e]||void 0}},V=Ri;var Oi=class extends V{constructor(e,t={}){super(R),this._viewer=e,this._selected=void 0,this._enableEventPropagation=t.enableEventPropagation,this._enableMouseOver=t.enableMouseOver,this._enableMouseMovePick=t.enableMouseMovePick,this._registerEvent(),this._addDefaultEvent()}_registerEvent(){let e=new i.ScreenSpaceEventHandler(this._viewer.canvas);Object.keys(i.ScreenSpaceEventType).forEach(t=>{let r=i.ScreenSpaceEventType[t];this._cache[r]=new i.Event,e.setInputAction(s=>{this._cache[r].raiseEvent(s)},r)})}_addDefaultEvent(){this.on(this._types.LEFT_DOWN,this._leftDownHandler,this),this.on(this._types.LEFT_UP,this._leftUpHandler,this),this.on(this._types.CLICK,this._clickHandler,this),this.on(this._types.DB_CLICK,this._dbClickHandler,this),this.on(this._types.RIGHT_DOWN,this._rightDownHandler,this),this.on(this._types.RIGHT_UP,this._rightUpHandler,this),this.on(this._types.RIGHT_CLICK,this._rightClickHandler,this),this.on(this._types.MOUSE_MOVE,this._mouseMoveHandler,this),this.on(this._types.WHEEL,this._mouseWheelHandler,this)}_adjustPosition(e){let t=this._viewer.container.getBoundingClientRect(),r=this._viewer.container.offsetWidth/t.width,s=this._viewer.container.offsetHeight/t.height;return new i.Cartesian2(e.x*r,e.y*s)}_getMousePosition(e){let t=this._adjustPosition(e),r=this._viewer.scene,s,a,o,n;if(r.pickPositionSupported&&(s=r.pickPosition(t)),s){let h=i.Ellipsoid.WGS84.cartesianToCartographic(s);h&&(o={lng:i.Math.toDegrees(h.longitude),lat:i.Math.toDegrees(h.latitude),alt:h.height})}if(r.mode===i.SceneMode.SCENE3D&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)){let h=r.camera.getPickRay(t);a=r.globe.pick(h,r)}else a=r.camera.pickEllipsoid(t,i.Ellipsoid.WGS84);if(a){let h=i.Ellipsoid.WGS84.cartesianToCartographic(a);h&&(n={lng:i.Math.toDegrees(h.longitude),lat:i.Math.toDegrees(h.latitude),alt:h.height})}return{windowPosition:t,position:s,wgs84Position:o,surfacePosition:a,wgs84SurfacePosition:n}}_getMouseInfo(e){return{...this._getMousePosition(this._adjustPosition(e)),target:this._viewer.scene.pick(this._adjustPosition(e))}}_getDrillInfos(e){let t=[],s=this._viewer.scene.drillPick(e);return s&&s.length&&s.forEach(a=>{t.push(this._getTargetInfo(a))}),t}_getOverlayId(e){let t;return(e==null?void 0:e.id)instanceof i.Entity?t=e.id.overlayId:e instanceof i.Cesium3DTileFeature?t=e.tileset.overlayId:((e==null?void 0:e.primitive)instanceof i.Cesium3DTileset||e!=null&&e.primitive)&&(t=e.primitive.overlayId),t}_getTargetInfo(e){let t,r,s;return(e==null?void 0:e.id)instanceof i.Entity?(r=this._viewer.getLayers().filter(a=>a.layerId===e.id.layerId)[0],r!=null&&r.getOverlay&&(t=r.getOverlay(e.id.overlayId))):e instanceof i.Cesium3DTileFeature?(r=this._viewer.getLayers().filter(a=>a.layerId===e.tileset.layerId)[0],s=e,r!=null&&r.getOverlay&&(t=r.getOverlay(e.tileset.overlayId),s&&s.getPropertyNames&&s.getPropertyNames().forEach(o=>{t.attr[o]=s.getProperty(o)}))):(e==null?void 0:e.primitive)instanceof i.Cesium3DTileset?(r=this._viewer.getLayers().filter(a=>a.layerId===e.primitive.layerId)[0],r!=null&&r.getOverlay&&(t=r.getOverlay(e.primitive.overlayId))):e!=null&&e.primitive&&(r=this._viewer.getLayers().filter(a=>a.layerId===e.primitive.layerId)[0],r!=null&&r.getOverlay&&(t=r.getOverlay(e.primitive.overlayId))),{layer:r,overlay:t,feature:s,instanceId:e==null?void 0:e.instanceId}}_raiseEvent(e,t={}){var n;let r,s=this._getTargetInfo(t.target),a=s==null?void 0:s.overlay,o=s==null?void 0:s.layer;a!=null&&a.overlayEvent&&(r=a.overlayEvent.getEvent(e),r&&r.numberOfListeners>0&&r.raiseEvent({...s,...t})),(!r||r.numberOfListeners===0||this._enableEventPropagation)&&(o!=null&&o.layerEvent)&&(r=o.layerEvent.getEvent(e),r&&r.numberOfListeners>0&&r.raiseEvent({...s,...t})),(!r||r.numberOfListeners===0||this._eventPropagation)&&((n=this._viewer)!=null&&n.viewerEvent)&&(r=this._viewer.viewerEvent.getEvent(e),r&&r.numberOfListeners>0&&r.raiseEvent({...s,...t})),a!=null&&a.allowDrillPicking&&this._getDrillInfos(t.windowPosition).forEach(c=>{let p=c==null?void 0:c.overlay,f=c==null?void 0:c.layer;(p==null?void 0:p.overlayId)!==a.overlayId&&(p!=null&&p.overlayEvent)&&(r=p.overlayEvent.getEvent(e),(!r||r.numberOfListeners===0)&&(f!=null&&f.layerEvent)&&(r=f.layerEvent.getEvent(e)),r&&r.numberOfListeners>0&&r.raiseEvent({...c,...t}))})}_clickHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(R.CLICK,this._getMouseInfo(e.position))}_dbClickHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(R.DB_CLICK,this._getMouseInfo(e.position))}_rightClickHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(R.RIGHT_CLICK,this._getMouseInfo(e.position))}_mouseMoveHandler(e){if(!(e!=null&&e.endPosition))return!1;if(this._enableMouseMovePick){let t=this._getMouseInfo(e.endPosition);this._viewer.canvas.style.cursor=t.target?"pointer":"default",this._raiseEvent(R.MOUSE_MOVE,t),this._enableMouseOver&&(!this._selected||this._getOverlayId(this._selected.target)!==this._getOverlayId(t.target))&&(this._raiseEvent(R.MOUSE_OUT,this._selected),this._raiseEvent(R.MOUSE_OVER,t),this._selected=t)}else this._raiseEvent(R.MOUSE_MOVE,this._getMousePosition(this._adjustPosition(e.endPosition)))}_leftDownHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(R.LEFT_DOWN,this._getMouseInfo(e.position))}_leftUpHandler(e){this._raiseEvent(R.LEFT_UP,this._getMouseInfo(e.position))}_rightDownHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(R.RIGHT_DOWN,this._getMouseInfo(e.position))}_rightUpHandler(e){this._raiseEvent(R.RIGHT_UP,this._getMouseInfo(e.position))}_mouseWheelHandler(e){this._raiseEvent(R.WHEEL,{movement:e})}},ki=Oi;var zi=class extends V{constructor(){super(Ln),this._registerEvent()}},Ni=zi;var Fi=class extends V{constructor(e){super(D),this._camera=e.camera,this._scene=e.scene,this._clock=e.clock}on(e,t,r){let s;switch(e){case D.CAMERA_MOVE_END:s=this._camera.moveEnd.addEventListener(t,r||this);break;case D.CAMERA_CHANGED:s=this._camera.changed.addEventListener(t,r||this);break;case D.PRE_UPDATE:s=this._scene.preUpdate.addEventListener(t,r||this);break;case D.POST_UPDATE:s=this._scene.postUpdate.addEventListener(t,r||this);break;case D.PRE_RENDER:s=this._scene.preRender.addEventListener(t,r||this);break;case D.POST_RENDER:s=this._scene.postRender.addEventListener(t,r||this);break;case D.MORPH_COMPLETE:s=this._scene.morphComplete.addEventListener(t,r||this);break;case D.CLOCK_TICK:s=this._clock.onTick.addEventListener(t,r||this);break;case D.RENDER_ERROR:s=this._scene.renderError.addEventListener(t,r||this);break;default:break}return s}off(e,t,r){let s=!1;switch(e){case D.CAMERA_MOVE_END:s=this._camera.moveEnd.removeEventListener(t,r||this);break;case D.CAMERA_CHANGED:s=this._camera.changed.removeEventListener(t,r||this);break;case D.PRE_UPDATE:s=this._scene.preUpdate.removeEventListener(t,r||this);break;case D.POST_UPDATE:s=this._scene.postUpdate.removeEventListener(t,r||this);break;case D.PRE_RENDER:s=this._scene.preRender.removeEventListener(t,r||this);break;case D.POST_RENDER:s=this._scene.postRender.removeEventListener(t,r||this);break;case D.MORPH_COMPLETE:s=this._scene.morphComplete.removeEventListener(t,r||this);break;case D.CLOCK_TICK:s=this._clock.onTick.removeEventListener(t,r||this);break;case D.RENDER_ERROR:s=this._scene.renderError.removeEventListener(t,r||this);break;default:break}return s}},Wi=Fi;var Gi=class extends V{constructor(){super(Ee),this._registerEvent()}},Hi=Gi;var Bi=class extends V{constructor(){super(Pe),this._registerEvent()}},Ui=Bi;var Vi=class extends V{constructor(){super(Te),this._registerEvent()}},ji=Vi;var Zi=class extends V{constructor(e){super(Q),this._tileset=e}on(e,t,r){return this._tileset.then(s=>{switch(e){case Q.INITIAL_TILES_LOADED:s.initialTilesLoaded.addEventListener(t,r||this);break;case Q.ALL_TILES_LOADED:s.allTilesLoaded.addEventListener(t,r||this);break;case Q.LOAD_PROGRESS:s.loadProgress.addEventListener(t,r||this);break;case Q.TILE_FAILED:s.tileFailed.addEventListener(t,r||this);break;case Q.TILE_LOAD:s.tileLoad.addEventListener(t,r||this);break;case Q.TILE_UNLOAD:s.tileUnload.addEventListener(t,r||this);break;case Q.TILE_VISIBLE:s.tileVisible.addEventListener(t,r||this);break;default:break}}),null}off(e,t,r){return this._tileset.then(s=>{switch(e){case Q.INITIAL_TILES_LOADED:s.initialTilesLoaded.removeEventListener(t,r||this);break;case Q.ALL_TILES_LOADED:s.allTilesLoaded.removeEventListener(t,r||this);break;case Q.LOAD_PROGRESS:s.loadProgress.removeEventListener(t,r||this);break;case Q.TILE_FAILED:s.tileFailed.removeEventListener(t,r||this);break;case Q.TILE_LOAD:s.tileLoad.removeEventListener(t,r||this);break;case Q.TILE_UNLOAD:s.tileUnload.removeEventListener(t,r||this);break;case Q.TILE_VISIBLE:s.tileVisible.removeEventListener(t,r||this);break;default:break}}),!0}},Yi=Zi;var Ji=class extends V{constructor(e){super(Re),this._model=e}on(e,t,r){return this._model.then(s=>{switch(e){case Re.READY:s.readyEvent.addEventListener(t,r||this);break;case Re.TEX_READY:s.texturesReadyEvent.addEventListener(t,r||this);break;default:break}}),null}off(e,t,r){return this._model.then(s=>{switch(e){case Re.READY:s.readyEvent.removeEventListener(t,r||this);break;case Re.TEX_READY:s.texturesReadyEvent.removeEventListener(t,r||this);break;default:break}}),!0}},qi=Ji;var Xi=class extends V{constructor(){super(oe),this._registerEvent()}},Qi=Xi;var Ki=class extends V{constructor(){super(ne),this._registerEvent()}},$i=Ki;var er=class extends V{constructor(){super(E),this._registerEvent()}},et=er;var Dd={LEFT_MIDDLE:0,LEFT_RIGHT:1},Me=Dd;var Ld="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),tr=class{static uuid(e="D"){let t=[];t[8]=t[13]=t[18]=t[23]="-",t[14]="4";let r;for(let s=0;s<36;s++)t[s]||(r=0|Math.random()*16,t[s]=Ld[s===19?r&3|8:r]);return e+"-"+t.join("")}static merge(e,...t){let r,s,a,o;for(s=0,a=t.length;s<a;s++){o=t[s];for(r in o)e[r]=o[r]}return e}static splitWords(e){return this.trim(e).split(/\s+/)}static setOptions(e,t){e.hasOwnProperty("options")||(e.options=e.options?Object.create(e.options):{});for(let r in t)e.options[r]=t[r];return e.options}static formatNum(e,t){let r=Math.pow(10,t===void 0?6:t);return Math.round(e*r)/r}static trim(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}static emptyImageUrl(){return function(){return"data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="}()}static checkPosition(e){return e&&e.hasOwnProperty("_lng")&&e.hasOwnProperty("_lat")&&e.hasOwnProperty("_alt")}static debounce(e,t){let r=null;return function(){r&&clearTimeout(r),r=setTimeout(e,t)}}static throttle(e,t){let r=!0;return function(){if(!r)return!1;r=!1,setTimeout(()=>{e(),r=!0},t)}}static dataURLtoBlob(e){let t=e.split(","),r=t[0].match(/:(.*?);/)[1],s=atob(t[1]),a=s.length,o=new Uint8Array(a);for(;a--;)o[a]=s.charCodeAt(a);return new Blob([o],{type:r})}static isPromise(e){return Promise.resolve(e)==e}},x=tr;var ir=class{static get(e){return typeof e=="string"?document.getElementById(e):e}static getStyle(e,t){let r=e.style[t]||e.currentStyle&&e.currentStyle[t];if((!r||r==="auto")&&document.defaultView){let s=document.defaultView.getComputedStyle(e,null);r=s?s[t]:null}return r==="auto"?null:r}static create(e,t,r=null){let s=document.createElement(e);return s.className=t||"",r&&r.appendChild(s),s}static remove(e){let t=e.parentNode;t&&t.removeChild(e)}static empty(e){for(;e.firstChild;)e.removeChild(e.firstChild)}static hasClass(e,t){if(e.classList!==void 0)return e.classList.contains(t);let r=this.getClass(e);return r.length>0&&new RegExp("(^|\\s)"+t+"(\\s|$)").test(r)}static addClass(e,t){if(e.classList!==void 0){let r=x.splitWords(t);for(let s=0,a=r.length;s<a;s++)e.classList.add(r[s])}else if(!this.hasClass(e,t)){let r=this.getClass(e);this.setClass(e,(r?r+" ":"")+t)}}static removeClass(e,t){e.classList!==void 0?e.classList.remove(t):this.setClass(e,x.trim((" "+this.getClass(e)+" ").replace(" "+t+" "," ")))}static setClass(e,t){e.className.baseVal===void 0?e.className=t:e.className.baseVal=t}static getClass(e){return e.correspondingElement&&(e=e.correspondingElement),e.className.baseVal===void 0?e.className:e.className.baseVal}static createSvg(e,t,r,s){let a=document.createElementNS("http://www.w3.org/2000/svg","svg:svg");a.setAttribute("class","svg-path"),a.setAttribute("width",e),a.setAttribute("height",t),a.setAttribute("viewBox",`0 0 ${e} ${t}`);let o=document.createElementNS("http://www.w3.org/2000/svg","path");return o.setAttribute("d",r),a.appendChild(o),s&&s.appendChild(a),a}static parseDom(e,t,r){t=t!=null?t:!1;let s=document.createElement("div");return s.className=r||"",s.innerHTML=e,t?s:s.childNodes}static enterFullscreen(e){e&&(e.requestFullscreen?e.requestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen&&e.webkitRequestFullscreen())}static exitFullscreen(){document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}static createVideo(e,t,r=null){let s=this.create("video",t,r),a=this.create("source","",s);a.setAttribute("src",e),a.setAttribute("type","video/map4");let o=this.create("source","",s);return o.setAttribute("src",e),o.setAttribute("type","video/quicktime"),s}},b=ir;var rr=Math.PI*2,dt=100,sr=1e-4,ar=class{static distance(e,t){return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}static wholeDistance(e){let t=0;for(let r=0;r<e.length-1;r++)t+=this.distance(e[r],e[r+1]);return t}static getBaseLength(e){return Math.pow(this.wholeDistance(e),.99)}static mid(e,t){return[(e[0]+t[0])/2,(e[1]+t[1])/2]}static getCircleCenterOfThreePoints(e,t,r){let s=[(e[0]+t[0])/2,(e[1]+t[1])/2],a=[s[0]-e[1]+t[1],s[1]+e[0]-t[0]],o=[(e[0]+r[0])/2,(e[1]+r[1])/2],n=[o[0]-e[1]+r[1],o[1]+e[0]-r[0]];return this.getIntersectPoint(s,a,o,n)}static getIntersectPoint(e,t,r,s){let a,o,n,h;return e[1]===t[1]?(n=(s[0]-r[0])/(s[1]-r[1]),a=n*(e[1]-r[1])+r[0],o=e[1],[a,o]):r[1]===s[1]?(h=(t[0]-e[0])/(t[1]-e[1]),a=h*(r[1]-e[1])+e[0],o=r[1],[a,o]):(h=(t[0]-e[0])/(t[1]-e[1]),n=(s[0]-r[0])/(s[1]-r[1]),o=(h*e[1]-e[0]-n*r[1]+r[0])/(h-n),a=h*o-h*e[1]+e[0],[a,o])}static getAzimuth(e,t){let r,s=Math.asin(Math.abs(t[1]-e[1])/this.distance(e,t));return t[1]>=e[1]&&t[0]>=e[0]?r=s+Math.PI:t[1]>=e[1]&&t[0]<e[0]?r=rr-s:t[1]<e[1]&&t[0]<e[0]?r=s:t[1]<e[1]&&t[0]>=e[0]&&(r=Math.PI-s),r}static getAngleOfThreePoints(e,t,r){let s=this.getAzimuth(t,e)-this.getAzimuth(t,r);return s<0?s+rr:s}static isClockWise(e,t,r){return(r[1]-e[1])*(t[0]-e[0])>(t[1]-e[1])*(r[0]-e[0])}static getPointOnLine(e,t,r){let s=t[0]+e*(r[0]-t[0]),a=t[1]+e*(r[1]-t[1]);return[s,a]}static getCubicValue(e,t,r,s,a){e=Math.max(Math.min(e,1),0);let o=1-e,n=e*e,h=n*e,c=o*o,p=c*o,f=p*t[0]+3*c*e*r[0]+3*o*n*s[0]+h*a[0],y=p*t[1]+3*c*e*r[1]+3*o*n*s[1]+h*a[1];return[f,y]}static getThirdPoint(e,t,r,s,a){let o=this.getAzimuth(e,t),n=a?o+r:o-r,h=s*Math.cos(n),c=s*Math.sin(n);return[t[0]+h,t[1]+c]}static getArcPoints(e,t,r,s){let a,o,n=[],h=s-r;h=h<0?h+rr:h;for(let c=0;c<=dt;c++){let p=r+h*c/dt;a=e[0]+t*Math.cos(p),o=e[1]+t*Math.sin(p),n.push([a,o])}return n}static getBisectorNormals(e,t,r,s){let a=this.getNormal(t,r,s),o=Math.sqrt(a[0]*a[0]+a[1]*a[1]),n=a[0]/o,h=a[1]/o,c=this.distance(t,r),p=this.distance(r,s),f,y,_,d,T;return o>sr?this.isClockWise(t,r,s)?(f=e*c,y=r[0]-f*h,_=r[1]+f*n,T=[y,_],f=e*p,y=r[0]+f*h,_=r[1]-f*n,d=[y,_]):(f=e*c,y=r[0]+f*h,_=r[1]-f*n,T=[y,_],f=e*p,y=r[0]-f*h,_=r[1]+f*n,d=[y,_]):(y=r[0]+e*(t[0]-r[0]),_=r[1]+e*(t[1]-r[1]),T=[y,_],y=r[0]+e*(s[0]-r[0]),_=r[1]+e*(s[1]-r[1]),d=[y,_]),[T,d]}static getNormal(e,t,r){let s=e[0]-t[0],a=e[1]-t[1],o=Math.sqrt(s*s+a*a);s/=o,a/=o;let n=r[0]-t[0],h=r[1]-t[1],c=Math.sqrt(n*n+h*h);n/=c,h/=c;let p=s+n,f=a+h;return[p,f]}static getCurvePoints(e,t){let s=[this.getLeftMostControlPoint(e,t)],a,o,n,h;for(let f=0;f<t.length-2;f++)a=t[f],o=t[f+1],n=t[f+2],h=this.getBisectorNormals(e,a,o,n),s=s.concat(h);let c=this.getRightMostControlPoint(e,t);s.push(c);let p=[];for(let f=0;f<t.length-1;f++){a=t[f],o=t[f+1],p.push(a);for(let y=0;y<dt;y++){let _=this.getCubicValue(y/dt,a,s[f*2],s[f*2+1],o);p.push(_)}p.push(o)}return p}static getLeftMostControlPoint(e,t){let r=t[0],s=t[1],a=t[2],n=this.getBisectorNormals(0,r,s,a)[0],h=this.getNormal(r,s,a),c=Math.sqrt(h[0]*h[0]+h[1]*h[1]),p,f;if(c>sr){let y=this.mid(r,s),_=r[0]-y[0],d=r[1]-y[1],C=2/this.distance(r,s),P=-C*d,A=C*_,O=P*P-A*A,H=2*P*A,W=A*A-P*P,J=n[0]-y[0],I=n[1]-y[1];p=y[0]+O*J+H*I,f=y[1]+H*J+W*I}else p=r[0]+e*(s[0]-r[0]),f=r[1]+e*(s[1]-r[1]);return[p,f]}static getRightMostControlPoint(e,t){let r=t.length,s=t[r-3],a=t[r-2],o=t[r-1],h=this.getBisectorNormals(0,s,a,o)[1],c=this.getNormal(s,a,o),p=Math.sqrt(c[0]*c[0]+c[1]*c[1]),f,y;if(p>sr){let _=this.mid(a,o),d=o[0]-_[0],T=o[1]-_[1],P=2/this.distance(a,o),A=-P*T,O=P*d,H=A*A-O*O,W=2*A*O,J=O*O-A*A,I=h[0]-_[0],G=h[1]-_[1];f=_[0]+H*I+W*G,y=_[1]+W*I+J*G}else f=o[0]+e*(a[0]-o[0]),y=o[1]+e*(a[1]-o[1]);return[f,y]}static getBezierPoints(e){if(e.length<=2)return e;let t=[],r=e.length-1;for(let s=0;s<=1;s+=.01){let a=0,o=0;for(let n=0;n<=r;n++){let h=this.getBinomialFactor(r,n),c=Math.pow(s,n),p=Math.pow(1-s,r-n);a+=h*c*p*e[n][0],o+=h*c*p*e[n][1]}t.push([a,o])}return t.push(e[r]),t}static getBinomialFactor(e,t){return this.getFactorial(e)/(this.getFactorial(t)*this.getFactorial(e-t))}static getFactorial(e){if(e<=1)return 1;if(e===2)return 2;if(e===3)return 6;if(e===4)return 24;if(e===5)return 120;let t=1;for(let r=1;r<=e;r++)t*=r;return t}static getQBSplinePoints(e){if(e.length<=2)return e;let t=2,r=[],s=e.length-t-1;r.push(e[0]);for(let a=0;a<=s;a++)for(let o=0;o<=1;o+=.05){let n=0,h=0;for(let c=0;c<=t;c++){let p=this.getQuadricBSplineFactor(c,o);n+=p*e[a+c][0],h+=p*e[a+c][1]}r.push([n,h])}return r.push(e[e.length-1]),r}static getQuadricBSplineFactor(e,t){return e===0?Math.pow(t-1,2)/2:e===1?(-2*Math.pow(t,2)+2*t+1)/2:e===2?Math.pow(t,2)/2:0}},w=ar;var Rd=!0;function mt(...l){console.warn(...l)}function Oe(...l){Rd&&console.error(...l)}var or=class l{static getTransFun(e,t){if(!e||!t||(e=l.crsName2FunName(e),t=l.crsName2FunName(t),t===e))return!1;let r=e+"2"+t;return tt[r]?tt[r]:!1}static crsName2FunName(e){switch(e){case"GCJ02":return"gcj";case"BD09":return"bd";case"WGS84":default:return"wgs"}}static getPositionValue(e,t=i.JulianDate.now()){if(!e)return e;let r;return e instanceof i.Cartesian3?r=e:e._value&&e._value instanceof i.Cartesian3?r=e._value:typeof e.getValue=="function"&&(r=e.getValue(t||i.JulianDate.now())),r}static getMaxHeight(e,t=0){if(e==null||e.length===0)return t;for(let r=0;r<e.length;r++){let s=k.parse(e[r]);r===0&&(t=s.alt),s.alt>t&&(t=s.alt)}return x.formatNum(t,k.FormatAltLength)}static getMinHeight(e,t=0){if(e==null||e.length===0)return t;for(let r=0;r<e.length;r++){let s=i.Cartographic.fromCartesian(e[r]);(r===0||s.height<t)&&(t=s.height)}return x.formatNum(t,k.FormatAltLength)}static addPositionsHeight(e,t=0){if(t=Number(t),isNaN(t)||t===0)return e;if(Array.isArray(e)){let r=[];for(let s=0;s<e.length;s++){let a=i.Cartographic.fromCartesian(e[s]),o=i.Cartesian3.fromRadians(a.longitude,a.latitude,a.height+t);r.push(o)}return r}else{let r=i.Cartographic.fromCartesian(e);return i.Cartesian3.fromRadians(r.longitude,r.latitude,r.height+t)}}static setPositionsHeight(e,t=0){if(!e)return e;if(Array.isArray(e)){let r=[];for(let s=0;s<e.length;s++){let a=i.Cartographic.fromCartesian(e[s]),o=i.Cartesian3.fromRadians(a.longitude,a.latitude,t);r.push(o)}return r}else{let r=i.Cartographic.fromCartesian(e);return i.Cartesian3.fromRadians(r.longitude,r.latitude,t)}}static getHeight(e,t,r={}){var o;let s=k.toCartographic(t),a;if(e.getHeight?a=e.getHeight(s,r?r.heightReference:0):a=e.globe.getHeight(s),i.defined(a)&&a>((o=r?r.min:0)!=null?o:-999))return a;if(r&&r.original)return s.height}static pick3DTileset(e,t){if(!t)return null;t instanceof i.Cartesian3&&(t=[t]);for(let r=0,s=t.length;r<s;++r){let a=t[r],o=i.SceneTransforms.worldToWindowCoordinates(e,a);if(!i.defined(o))continue;let n=e.pick(o,10,10);if(i.defined(n)&&i.defined(n.primitive)&&n.primitive instanceof i.Cesium3DTileset)return n.primitive}return null}static getSurfaceHeight(e,t,r={}){return r.scene=e,r.position=t,new ut(r).start()}static getSurfaceTerrainHeight(e,t){let r={scene:e,position:t,has3dtiles:!1};return new ut(r).start()}static getSurfacePosition(e,t,r={}){var o;if(!t)return t;let s=k.toCartographic(t),a=l.getHeight(e,s,r);return!i.defined(a)||((o=r.greater)==null||o)&&a<s.height?t:(i.defined(r.maxHeight)&&(a=Math.min(a,r.maxHeight)),(r.heightReference===i.HeightReference.RELATIVE_TO_GROUND||r.heightReference===i.HeightReference.RELATIVE_TO_TERRAIN||r.heightReference===i.HeightReference.RELATIVE_TO_3D_TILE)&&(s.height+=a),i.Cartesian3.fromRadians(s.longitude,s.latitude,a))}static getCurrentMousePosition(e,t,r){let s;if(e.onlyVertexPosition){if(!e.vertexAdsorption)return e.vertexAdsorption=new VertexAdsorption(e),s=e.vertexAdsorption.pick(t,16,16),s}else e.vertexAdsorption&&e.vertexAdsorption.clear();let a;try{a=e.pick(t,5,5)}catch(o){mt("getCurrentMousePosition: scene.pick \u62FE\u53D6\u65F6\u5F02\u5E38",o)}if(e.resultSupported&&!e.onlyPickTerrainPosition&&i.defined(a)){let o=l.hasPickedModel(a,r);if(o){if((o.billboard||o.point||o.label)&&!o.ellipse&&!o.model&&!o.ellipsoid)return l.getPositionValue(o.position);if(o.show){if(o.show=!1,e.requestRender(),s=l.getCurrentMousePosition(e,t,r),o.show=!0,s)return s;if(s=l._geetTargetMousePosition(e,t,a),i.defined(s))return s}if(!e.globe.show&&(s=l._geetTargetMousePosition(e,t,a),i.defined(s)))return s}else{if(i.defined(a.id)){let n=a.id;if((n.billboard||n.point||n.label)&&!n.ellipse&&!n.model&&!n.ellipsoid)return l.getPositionValue(n.position)}if(s=l._geetTargetMousePosition(e,t,a),i.defined(s))return s}}if(!e.onlyPickTerrainPosition&&e.onlyPickModelPosition)return s;if(e.mode===i.SceneMode.SCENE3D){let o=e.camera.getPickRay(t);s=e.globe.pick(o,e),!s&&(s=e.camera.pickEllipsoid(t,e.globe.ellipsoid))}else s=e.camera.pickEllipsoid(t,e.globe.ellipsoid);return i.defined(s)&&e.camera.positionCartographic.height<1e4&&i.Cartographic.fromCartesian(s).height<-5e3?null:s}static _geetTargetMousePosition(e,t,r){let s=e.result(t);if(i.defined(s)){let a=i.Cartographic.fromCartesian(s);if(a.height>=0||!i.defined(r?r.id:0)&&a.height>=-5e3)return s}}static hasPickedModel(e,t){if(i.defined(e.id)){let r=e.id;if(r._noMousePick||t&&r===t)return r}if(i.defined(e.primitive)){let r=e.primitive;if(r._noMousePick||t&&r===t)return r}if(i.defined(e.tileset)){let r=e.tileset;if(r._noMousePick||t&&r===t)return r}return null}static getCurrentMouseTerrainPosition(e,t){let r;if(e.mode===i.SceneMode.SCENE3D){let s=e.camera.getPickRay(t);r=e.globe.pick(s,e),r||(r=e.camera.pickEllipsoid(t,e.globe.ellipsoid))}else r=e.camera.pickEllipsoid(t,e.globe.ellipsoid);return r}static getMidpoint(e,t,r=.5){if(!t||!e)return;let s=k.toCartographic(e),a=k.toCartographic(t),o=(s.height+a.height)/2,n=new i.EllipsoidGeodesic(s,a).interpolateUsingFraction(r);return i.Cartesian3.fromRadians(n.longitude,n.latitude,o)}static isRepeatPoint(e,t){return!t||!e?!1:Math.abs(e.x-t.x)<.1&&Math.abs(e.y-t.y)<.1&&Math.abs(e.z-t.z)<.1}static getRotateCenterPoint(e,t,r){let s=i.Cartographic.fromCartesian(e);s.height=0;let a=i.Cartographic.toCartesian(s),o=i.Cartesian3.subtract(a,e,new i.Cartesian3);o=i.Cartesian3.normalize(o,new i.Cartesian3);let n=i.Quaternion.fromAxisAngle(o,i.Math.toRadians(r)),h=i.Matrix3.fromQuaternion(n),c=i.Matrix4.fromRotationTranslation(h),p=i.Cartesian3.subtract(t,e,new i.Cartesian3),f=i.Matrix4.multiplyByPoint(c,p,new i.Cartesian3);return i.Cartesian3.add(f,e,new i.Cartesian3)}static getOnLinePointByLen(e,t,r,s){let a=i.Transforms.eastNorthUpToFixedFrame(e),o=i.Matrix4.inverse(a,new i.Matrix4);e=i.Matrix4.multiplyByPoint(o,e,new i.Cartesian3),t=i.Matrix4.multiplyByPoint(o,t,new i.Cartesian3);let n=i.Cartesian3.subtract(t,e,new i.Cartesian3),h=i.Cartesian3.distance(e,t),c=r/h;s&&(c+=1);let p=i.Cartesian3.multiplyByScalar(n,c,new i.Cartesian3);return i.Matrix4.multiplyByPoint(a,p,new i.Cartesian3)}static getPositionByHprAndOffset(e,t,r,s,a){e=k.toCartesian(e),!r&&(r=new i.HeadingPitchRoll);let o=i.Transforms.headingPitchRollQuaternion(e,r,s,a),n=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(o,new i.Matrix3),e,new i.Matrix4);return i.Matrix4.multiplyByPoint(n,t,new i.Cartesian3)}static getPositionByDirectionAndLen(e,t,r){e=k.toCartesian(e);let s=i.Transforms.eastNorthUpToFixedFrame(e),a=i.Matrix3.fromRotationZ(i.Math.toRadians(360-(t||0))),o=i.Matrix4.fromRotationTranslation(a);return i.Matrix4.multiply(s,o,s),i.Matrix4.multiplyByPoint(s,new i.Cartesian3(r,0,0),new i.Cartesian3)}static getPositionByHprAndLen(e,t,r){e=k.toCartesian(e);let s=i.Transforms.headingPitchRollQuaternion(e,t),a=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(s,new i.Matrix3),e,new i.Matrix4);return i.Matrix4.multiplyByPoint(a,new i.Cartesian3(0,0,-r),new i.Cartesian3)}static getRayEarthPosition(e,t,r,s,a){if(!e||!t)return;t instanceof i.HeadingPitchRoll&&(t=i.Transforms.headingPitchRollQuaternion(e,t,s,a));let o=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(t,new i.Matrix3),e,new i.Matrix4);return l.getRayEarthPositionByMatrix(o,r,s)}static getRayEarthPositionByMatrix(e,t,r){let s=new i.Cartesian3,a=new i.Ray;i.Matrix4.multiplyByPoint(e,i.Cartesian3.ZERO,s),s.clone(a.origin);let o=new i.Cartesian3(0,0,t?-100:100);return l.extend2Earth(o,e,a,r)}extend2Earth(e,t,r,s){s=s||i.Ellipsoid.WGS84;let a=i.Matrix4.multiplyByPoint(t,e,new i.Cartesian3);i.Cartesian3.subtract(a,r.origin,r.direction),i.Cartesian3.normalize(r.direction,r.direction);let o=i.IntersectionTests.rayEllipsoid(r,s);if(!o)return;let n=o.start>0?o.start:o.stop,h=i.Ray.getPoint(r,n,new i.Cartesian3);if(h)try{i.Cartographic.fromCartesian(h,null,new i.Cartographic)}catch{return}return h}static getHeadingPitchRollByOrientation(e,t,r,s){if(!i.defined(t)||!i.defined(e))return new i.HeadingPitchRoll;let a=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(t,new i.Matrix3),e,new i.Matrix4);return l.getHeadingPitchRollByMatrix(a,r,s)}static getHeadingPitchRollByMatrix(e,t,r,s){return i.Transforms.fixedFrameToHeadingPitchRoll(e,t,r,s)}static getHeadingPitchRollForLine(e,t,r){e=k.toCartesian(e),t=k.toCartesian(t);let s=i.Ellipsoid.WGS84,a=new i.Cartesian3,o=new i.Matrix4,n=new i.Matrix3,h=i.Cartesian3.normalize(i.Cartesian3.subtract(t,e,a),a);i.Transforms.rotationMatrixFromPositionVelocity(e,h,s,n);let c=i.Matrix4.fromRotationTranslation(n,e,o);return r?i.Matrix4.multiplyTransformation(c,i.Axis.Z_UP_TO_X_UP,c):i.Matrix4.multiplyTransformation(c,i.Axis.X_UP_TO_Z_UP,c),i.Transforms.fixedFrameToHeadingPitchRoll(c,s)}static getReflectVector(e,t){let r=t.clone(),s=e.clone(),a=2*i.Cartesian3.dot(e,t);return i.Cartesian3.multiplyByScalar(t,a,r),i.Cartesian3.subtract(e,r,s)}static getPropertyIndex(e,t,r){let s=e&&e.property,a=s&&s.times,o=a.length;if(o===0)return{index:0};let n,h=i.Cartesian3,c=s.values,p=i.binarySearch(a,t,i.JulianDate.compare);if(p<0){if(p=~p,p===0){let I=a[p];if(n=s.backwardExtrapolationDuration,s.backwardExtrapolationType===i.ExtrapolationType.NONE||n!==0&&i.JulianDate.secondsDifference(I,t)>n)return{index:p};if(s.backwardExtrapolationType===i.ExtrapolationType.HOLD)return{position:h.unpack(c,0,r),index:p}}if(p>=o){p=o-1;let I=a[p];if(n=s.forwardExtrapolationDuration,s.forwardExtrapolationType===i.ExtrapolationType.NONE||n!==0&&i.JulianDate.secondsDifference(t,I)>n)return{index:p};if(s.forwardExtrapolationType===i.ExtrapolationType.HOLD)return p=o-1,{position:h.unpack(c,p*h.packedLength,r),index:p}}let f=s.xTable,y=s.yTable,_=s.interpolationAlgorithm,d=s.packedInterpolationLength,T=s.inputOrder;if(s.updateTableLength){s.updateTableLength=!1;let I=Math.min(_.getRequiredDataPoints(s.interpolationDegree,T),o);I!==s.numberOfPoints&&(s._numberOfPoints=I,f.length=I,y.length=I*d)}let C=s.numberOfPoints-1;if(C<1)return p=0,{index:p};let P=0,A=o-1;if(A-P+1>=C+1){let I=p-(C/2|0)-1;I<P&&(I=P);let G=I+C;G>A&&(G=A,I=G-C,I<P&&(I=P)),P=I,A=G}let H=A-P+1;for(let I=0;I<H;++I)f[I]=i.JulianDate.secondsDifference(a[P+I],a[j]);if(i.defined(h.convertPackedArrayForInterpolation))h.convertPackedArrayForInterpolation(c,P,A,y);else{let I=0,G=s.packedLength,pe=P*G,Ie=(A+1)*G;for(;pe<Ie;)y[I]=c[pe],pe++,I++}let W=i.JulianDate.secondsDifference(t,a[A]),J;if(T===0||!i.defined(_.interpolate))J=_.interpolateOrderZero(W,f,y,d,s.interpolationResult);else{let I=Math.floor(d/(T+1));J=_.interpolate(W,f,y,I,T,T,s.interpolationResult)}p=P;for(let I=P;I<=A;I++)if(i.JulianDate.compare(t,a[I])<=0){p=I-1;break}return i.defined(h.unpackInterpolationResult)?{position:h.unpackInterpolationResult(J,c,P,A,r),index:p}:{position:h.unpack(J,0,r),index:p}}return{position:h.unpack(c,p*s.packedLength,r),index:p}}},_e=or;var nr=class l{static degree2dms(e){let t=1;e<0&&(t=-1),e=Math.abs(e);let r=Math.floor(e),s=Math.floor((e-r)*60),a=Math.round((e-r)*3600%60);return a===60&&(s+=1,a=0),s===60&&(r+=1,s=0),r*=t,{degree:r,minute:s,second:a,str:r+"\xB0 "+s+"' "+a+'"'}}static dms2degree(e,t,r){let s=Math.abs(e)+t/60+r/3600;return e<0&&(s*=-1),s}static getCGCS2000EPSGByLng(e,t,r=!0){let s;if(t){let a=parseInt(e/6)+1;if(a<13||a>23)return;r?s=a+4478:s=a+4489}else{let a=parseInt((e-1.5)/3)+1;if(a<25||a>45)return;r?s=a+4488:s=a+4509}return"EPSG:"+s}static getCGCS2000EPSGByX(e){let t=parseInt(e.toString().slice(0,2));return t>=13&&t<=23?"EPSG:"+(t+4478):t>=25&&t<=45?"EPSG:"+(t+4488):void 0}static cartesian2lonlat(e,t){return k.toArray(e,t)}static cartesians2lonlats(e,t){return We.toArray(e,t)}static cartesian2mercator(e){return e?k.fromCartesian(e).toMercator():null}static cartesians2mercators(e){let t=[];for(let r=0;r<e.length;r++){let s=l.cartesian2mercator(e[r]);s&&t.push(s)}return t}static lonlat2cartesian(e,t=0){return!e||e.length<2?null:i.Cartesian3.fromDegrees(e[0],e[1],e[2]||t)}static lonlats2cartesians(e,t){let r=[];for(let s=0;s<e.length;s++){let a=e[s];if(Array.isArray(a[0])){let o=l.lonlats2cartesians(a,t);o&&o.length>0&&r.push(o)}else{let o=l.lonlat2cartesian(a,t);o&&r.push(o)}}return r}static lonlat2mercator(e){return k.fromArray(e).toMercator()}static lonlats2mercators(e){let t=[];for(let r=0;r<e.length;r++){let s=l.lonlat2mercator(e[r]);t.push(s)}return t}static mercator2cartesian(e,t){if(isNaN(e[0])||isNaN(e[1]))return null;let r=k.fromMercator(e);return i.defined(t)&&(r.alt=t),r.toCartesian()}static mercators2cartesians(e,t){let r=[];for(let s=0;s<e.length;s++){let a=l.mercator2cartesian(e[s],t);a&&r.push(a)}return r}static mercator2lonlat(e){return k.fromMercator(e).toArray()}static mercators2lonlats(e){let t=[];for(let r=0;r<e.length;r++){let s=l.mercator2lonlat(e[r]);t.push(s)}return t}static bd2gcj(e){let t=Number(e[0]),r=Number(e[1]),s=t-.0065,a=r-.006,o=Math.sqrt(s*s+a*a)-2e-5*Math.sin(a*52.35987755982988),n=Math.atan2(a,s)-3e-6*Math.cos(s*52.35987755982988),h=o*Math.cos(n),c=o*Math.sin(n);return h=Number(h.toFixed(6)),c=Number(c.toFixed(6)),[h,c]}static gcj2bd(e){let t=Number(e[0]),r=Number(e[1]),s=Math.sqrt(t*t+r*r)+2e-5*Math.sin(r*52.35987755982988),a=Math.atan2(r,t)+3e-6*Math.cos(t*52.35987755982988),o=s*Math.cos(a)+.0065,n=s*Math.sin(a)+.006;return o=Number(o.toFixed(6)),n=Number(n.toFixed(6)),[o,n]}static wgs2gcj(e){let t=Number(e[0]),r=Number(e[1]);if(l.out_of_china(t,r))return[t,r];{let s=l.transformlat(t-105,r-35),a=l.transformlng(t-105,r-35),o=r/180*Math.PI,n=Math.sin(o);n=1-.00669342162296594*n*n;let h=Math.sqrt(n);s=s*180/(6335552717000426e-9/(n*h)*Math.PI),a=a*180/(6378245/h*Math.cos(o)*Math.PI);let c=r+s,p=t+a;return p=Number(p.toFixed(6)),c=Number(c.toFixed(6)),[p,c]}}static transformlat(e,t){let r=-100+2*e+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*Math.PI)+20*Math.sin(2*e*Math.PI))*2/3,r+=(20*Math.sin(t*Math.PI)+40*Math.sin(t/3*Math.PI))*2/3,r+=(160*Math.sin(t/12*Math.PI)+320*Math.sin(t*Math.PI/30))*2/3,r}static transformlng(e,t){let r=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*Math.PI)+20*Math.sin(2*e*Math.PI))*2/3,r+=(20*Math.sin(e*Math.PI)+40*Math.sin(e/3*Math.PI))*2/3,r+=(150*Math.sin(e/12*Math.PI)+300*Math.sin(e/30*Math.PI))*2/3,r}static out_of_china(e,t){return e<72.004||e>137.8347||t<.8293||t>55.8271||!1}static gcj2wgs(e){let t=Number(e[0]),r=Number(e[1]);if(l.out_of_china(t,r))return[t,r];{let s=l.transformlat(t-105,r-35),a=l.transformlng(t-105,r-35),o=r/180*Math.PI,n=Math.sin(o);n=1-.00669342162296594*n*n;let h=Math.sqrt(n);s=s*180/(6335552717000426e-9/(n*h)*Math.PI),a=a*180/(6378245/h*Math.cos(o)*Math.PI);let c=t*2-(t+a),p=r*2-(r+s);return c=Number(c.toFixed(6)),p=Number(p.toFixed(6)),[c,p]}}static bd2wgs(e){return l.gcj2wgs(l.bd2gcj(e))}static wgs2bd(e){return l.gcj2bd(l.wgs2gcj(e))}},tt=nr;var lr=class{static getViewPosition(e,t){e=g.parsePosition(e);let r=i.Math.toRadians(e.heading),s=i.Math.toRadians(e.pitch),a=s>=0?t*Math.sin(s):-1*t*Math.sin(Math.abs(s)),o=t*Math.cos(s),n,h;r<=Math.PI/2?(n=o*Math.sin(r),h=o*Math.cos(r)):r>Math.PI/2&&r<Math.PI?(n=o*Math.cos(r-Math.PI/2),h=-1*o*Math.sin(r-Math.PI/2)):r>Math.PI&&r<Math.PI*3/2?(n=-1*o*Math.sin(r-Math.PI),h=-1*o*Math.cos(r-Math.PI)):(n=-1*o*Math.sin(Math.PI*2-r),h=o*Math.cos(Math.PI*2-r));let c=i.Cartesian3.fromDegrees(e.lng,e.lat,e.alt),p=Math.sin(i.Math.toRadians(e.lng)),f=Math.cos(i.Math.toRadians(e.lng)),y=Math.sin(i.Math.toRadians(e.lat)),_=Math.cos(i.Math.toRadians(e.lat)),d=_*a-y*h;return new i.Cartesian3(c.x+(f*d-p*n),c.y+(p*d+f*n),c.z+(y*a+_*h))}static getCameraOrientation(e){let t=new i.Matrix3;return i.Matrix3.setColumn(t,0,i.Cartesian3.negate(e.rightWC,new i.Cartesian3),t),i.Matrix3.setColumn(t,1,e.upWC,t),i.Matrix3.setColumn(t,2,e.directionWC,t),i.Quaternion.fromRotationMatrix(t,new i.Quaternion)}static setCamera(e,t,r,s){e.position=t,e.direction=i.Cartesian3.normalize(i.Cartesian3.subtract(r,t,new i.Cartesian3),new i.Cartesian3);let a=new i.Matrix3;i.Matrix3.fromRotationY(-i.Math.toRadians(s)/2,a);let o=new i.Cartesian3;i.Matrix3.multiplyByVector(a,t,o),i.Cartesian3.normalize(o,o),e.up=o}},re=lr;var hr=class{constructor(e){this._viewer=e,this._options={}}_setViewerOption(){var e,t,r;return this._viewer.delegate.shadows=(t=(e=this._options)==null?void 0:e.shadows)!=null?t:!1,this._viewer.delegate.resolutionScale=((r=this._options)==null?void 0:r.resolutionScale)||1,this}_setCanvasOption(){return this._options.tabIndex&&this._viewer.scene.canvas.setAttribute("tabIndex",this._options.tabIndex),this}_setSceneOption(){var t,r,s,a;let e=this._viewer.scene;return e.skyAtmosphere.show=(t=this._options.showAtmosphere)!=null?t:!0,e.sun.show=(r=this._options.showSun)!=null?r:!0,e.moon.show=(s=this._options.showMoon)!=null?s:!0,e.postProcessStages.fxaa.enabled=(a=this._options.enableFxaa)!=null?a:!1,e.msaaSupported&&(e.msaaSamples=+this._options.msaaSamples||1),this}_setSkyBoxOption(){var t;if(!this._options.skyBox)return this;let e=this._options.skyBox;if(e instanceof i.SkyBox)this._viewer.scene.skyBox=e;else{let r=this._viewer.scene.skyBox;r.show=(t=e.show)!=null?t:!0,e.offsetAngle&&(r.offsetAngle=e.offsetAngle),e!=null&&e.sources&&(r.sources=e.sources)}return this}_setGlobeOption(){var r,s,a,o,n,h,c,p,f,y,_,d;if(!this._options.globe)return this;let e=this._viewer.scene.globe,t=this._options.globe;if(x.merge(e,{show:(r=t==null?void 0:t.show)!=null?r:!0,showGroundAtmosphere:(s=t==null?void 0:t.showGroundAtmosphere)!=null?s:!0,enableLighting:(a=t==null?void 0:t.enableLighting)!=null?a:!1,depthTestAgainstTerrain:(o=t==null?void 0:t.depthTestAgainstTerrain)!=null?o:!1,tileCacheSize:+(t==null?void 0:t.tileCacheSize)||100,preloadSiblings:(n=t==null?void 0:t.preloadSiblings)!=null?n:!1,showSkirts:(h=t==null?void 0:t.showSkirts)!=null?h:!0,baseColor:(t==null?void 0:t.baseColor)||new i.Color(0,0,.5,1),terrainExaggeration:(t==null?void 0:t.terrainExaggeration)||1,terrainExaggerationRelativeHeight:(t==null?void 0:t.terrainExaggerationRelativeHeight)||0}),x.merge(e.translucency,{enabled:(p=(c=t==null?void 0:t.translucency)==null?void 0:c.enabled)!=null?p:!1,backFaceAlpha:+((f=t==null?void 0:t.translucency)==null?void 0:f.backFaceAlpha)||1,backFaceAlphaByDistance:(y=t==null?void 0:t.translucency)==null?void 0:y.backFaceAlphaByDistance,frontFaceAlpha:+((_=t==null?void 0:t.translucency)==null?void 0:_.frontFaceAlpha)||1,frontFaceAlphaByDistance:(d=t==null?void 0:t.translucency)==null?void 0:d.frontFaceAlphaByDistance}),t!=null&&t.filterColor){let T=this._viewer.scene.globe._surfaceShaderSet.baseFragmentShaderSource,C=T.sources.pop();T.sources.push(C.replace("out_FragColor = finalColor;",`out_FragColor = finalColor * vec4${t.filterColor.toString()};`))}return this}_setCameraController(){var r,s,a,o,n,h,c;if(!((r=this._options)!=null&&r.cameraController))return this;let e=this._viewer.scene.screenSpaceCameraController,t=this._options.cameraController;return x.merge(e,{enableInputs:(s=t==null?void 0:t.enableInputs)!=null?s:!0,enableRotate:(a=t==null?void 0:t.enableRotate)!=null?a:!0,enableTilt:(o=t==null?void 0:t.enableTilt)!=null?o:!0,enableTranslate:(n=t==null?void 0:t.enableTranslate)!=null?n:!0,enableZoom:(h=t==null?void 0:t.enableZoom)!=null?h:!0,enableCollisionDetection:(c=t==null?void 0:t.enableCollisionDetection)!=null?c:!0,minimumZoomDistance:+(t==null?void 0:t.minimumZoomDistance)||1,maximumZoomDistance:+(t==null?void 0:t.maximumZoomDistance)||40489014}),this}setOptions(e){return Object.keys(e).length===0?this:(this._options={...this._options,...e},this._setViewerOption()._setCanvasOption()._setSceneOption()._setSkyBoxOption()._setGlobeOption()._setCameraController(),this)}},cr=hr;var pr=class{constructor(e){this._viewer=e,this._mouseMode=0}setPitchRange(e,t){let r=new i.ScreenSpaceEventHandler(this._viewer.scene.canvas);this._viewer.scene.mode===i.SceneMode.SCENE3D&&(r.setInputAction(s=>{r.setInputAction(a=>{let o=!0,n=a.endPosition.y<a.startPosition.y;n&&this._viewer.camera.pitch>i.Math.toRadians(t)||!n&&this._viewer.camera.pitch<i.Math.toRadians(e)?o=!1:o=!0,this._viewer.scene.screenSpaceCameraController.enableTilt=o},i.ScreenSpaceEventType.MOUSE_MOVE)},this._mouseMode===Me.LEFT_MIDDLE?i.ScreenSpaceEventType.MIDDLE_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN),r.setInputAction(s=>{this._viewer.scene.screenSpaceCameraController.enableTilt=!0,r.removeInputAction(i.ScreenSpaceEventType.MOUSE_MOVE)},this._mouseMode===Me.LEFT_MIDDLE?i.ScreenSpaceEventType.MIDDLE_UP:i.ScreenSpaceEventType.RIGHT_UP))}changeMouseMode(e){this._mouseMode=e||Me.LEFT_MIDDLE,e===Me.LEFT_MIDDLE?(this._viewer.scene.screenSpaceCameraController.tiltEventTypes=[i.CameraEventType.MIDDLE_DRAG,i.CameraEventType.PINCH,{eventType:i.CameraEventType.LEFT_DRAG,modifier:i.KeyboardEventModifier.CTRL},{eventType:i.CameraEventType.RIGHT_DRAG,modifier:i.KeyboardEventModifier.CTRL}],this._viewer.scene.screenSpaceCameraController.zoomEventTypes=[i.CameraEventType.RIGHT_DRAG,i.CameraEventType.WHEEL,i.CameraEventType.PINCH]):e===Me.LEFT_RIGHT&&(this._viewer.scene.screenSpaceCameraController.tiltEventTypes=[i.CameraEventType.RIGHT_DRAG,i.CameraEventType.PINCH,{eventType:i.CameraEventType.LEFT_DRAG,modifier:i.KeyboardEventModifier.CTRL},{eventType:i.CameraEventType.RIGHT_DRAG,modifier:i.KeyboardEventModifier.CTRL}],this._viewer.scene.screenSpaceCameraController.zoomEventTypes=[i.CameraEventType.WHEEL,i.CameraEventType.PINCH])}},dr=pr;var Od={INITIALIZED:"initialized",ADDED:"added",REMOVED:"removed",CLEARED:"cleared",INSTALLED:"installed",ENABLED:"enabled",DISABLED:"disabled",PLAY:"play",PAUSE:"pause",RESTORE:"restore"},m=Od;var kd={},mr=kd;var ur=class{constructor(){this._viewer=void 0,this._enable=!1,this._wrapper=void 0,this._ready=!1}get enable(){return this._enable}set enable(e){this._enable!==e&&(this._enable=e,this._state=this._enable?m.ENABLED:m.DISABLED,this._enableHook&&this._enableHook())}get state(){return this._state}static registerType(e){e&&(mr[e.toLocaleUpperCase()]=e.toLocaleLowerCase())}static getWidgetType(e){return mr[e.toLocaleUpperCase()]||void 0}_mountContent(){}_bindEvent(){}_unbindEvent(){}_enableHook(){!this._ready&&this._mountContent(),this._enable?(!this._wrapper.parentNode&&this._viewer.widgetContainer.appendChild(this._wrapper),this._bindEvent()):(this._unbindEvent(),this._wrapper.parentNode&&this._viewer.widgetContainer.removeChild(this._wrapper))}_updateWindowCoord(e){}_installHook(){}_getViewerOffset(){return this._viewer?this._viewer.getOffset():{x:0,y:0}}install(e){this._viewer=e,this._installHook&&this._installHook(),this._state=m.INSTALLED}setWrapper(e){return this}setContent(e){if(e&&typeof e=="string")this._wrapper.innerHTML=e;else if(e&&e instanceof Element){for(;this._wrapper.hasChildNodes();)this._wrapper.removeChild(this._wrapper.firstChild);this._wrapper.appendChild(e)}return this}hide(){this._wrapper&&(this._wrapper.style.cssText="visibility:hidden;")}},S=ur;var fr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget context-menu"),this._ulEl=void 0,this._handler=void 0,this._overlay=void 0,this._position=void 0,this._wgs84Position=void 0,this._surfacePosition=void 0,this._wgs84SurfacePosition=void 0,this._windowPosition=void 0,this._instanceId=void 0,this._config={},this._defaultMenu=[{label:"\u98DE\u5230\u9ED8\u8BA4\u4F4D\u7F6E",callback:()=>{this._viewer.camera.flyHome(1.5)},context:this},{label:"\u53D6\u6D88\u98DE\u884C",callback:()=>{this._viewer.camera.cancelFlight()},context:this}],this._overlayMenu=[],this._state=m.INITIALIZED}get type(){return S.getWidgetType("contextmenu")}set DEFAULT_MENU(e){this._defaultMenu=e}set config(e){this._config=e,e.customClass&&this._setCustomClass()}_installHook(){let e=this;Object.defineProperty(this._viewer,"contextMenu",{get(){return e}}),this._handler=new i.ScreenSpaceEventHandler(this._viewer.canvas)}_bindEvent(){this._handler.setInputAction(e=>{this._onRightClick(e)},i.ScreenSpaceEventType.RIGHT_CLICK),this._handler.setInputAction(e=>{this._onClick(e)},i.ScreenSpaceEventType.LEFT_CLICK)}_unbindEvent(){this._handler.removeInputAction(i.ScreenSpaceEventType.RIGHT_CLICK),this._handler.removeInputAction(i.ScreenSpaceEventType.LEFT_CLICK)}_mountContent(){this._ulEl=b.create("ul","menu-list",this._wrapper),this._ready=!0}_mountMenu(){for(;this._ulEl.hasChildNodes();)this._ulEl.removeChild(this._ulEl.firstChild);this._overlayMenu&&this._overlayMenu.length&&this._overlayMenu.forEach(e=>{this._addMenuItem(e.label,e.callback,e.context||this)}),this._defaultMenu&&this._defaultMenu.length&&this._defaultMenu.forEach(e=>{this._addMenuItem(e.label,e.callback,e.context||this)})}_onRightClick(e){var s;if(!this._enable)return;this._overlay=void 0;let t=this._viewer.scene;this._windowPosition=e.position;let r=t.pick(e.position);if(t.pickPositionSupported&&(this._position=t.pickPosition(e.position)),this._position){let a=i.Ellipsoid.WGS84.cartesianToCartographic(this._position);a&&(this._wgs84Position={lng:i.Math.toDegrees(a.longitude),lat:i.Math.toDegrees(a.latitude),alt:a.height})}if(t.mode===i.SceneMode.SCENE3D){let a=t.camera.getPickRay(e.position);this._surfacePosition=t.globe.pick(a,t)}else this._surfacePosition=t.camera.pickEllipsoid(e.position,i.Ellipsoid.WGS84);if(this._surfacePosition){let a=i.Ellipsoid.WGS84.cartesianToCartographic(this._surfacePosition);a&&(this._wgs84SurfacePosition={lng:i.Math.toDegrees(a.longitude),lat:i.Math.toDegrees(a.latitude),alt:a.height})}if(this._instanceId=r==null?void 0:r.instanceId,(r==null?void 0:r.id)instanceof i.Entity){let a=this._viewer.getLayers().filter(o=>o.layerId===r.id.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.id.overlayId))}else if(r instanceof i.Cesium3DTileFeature){let a=this._viewer.getLayers().filter(o=>o.layerId===r.tileset.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.tileset.overlayId))}else if((r==null?void 0:r.primitive)instanceof i.Cesium3DTileset){let a=this._viewer.getLayers().filter(o=>o.layerId===r.primitive.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.primitive.overlayId))}else if(r!=null&&r.primitive){let a=this._viewer.getLayers().filter(o=>o.layerId===r.primitive.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.primitive.overlayId))}this._overlayMenu=((s=this._overlay)==null?void 0:s.contextMenu)||[],this._mountMenu(),this._updateWindowCoord(e.position)}_onClick(e){this.hide()}_updateWindowCoord(e){let t=this._ulEl.hasChildNodes()?"visible":"hidden",{x:r,y:s}=e;this._wrapper.style.cssText=`
10
+ var Cu=Object.create;var qi=Object.defineProperty;var Tu=Object.getOwnPropertyDescriptor;var Eu=Object.getOwnPropertyNames;var Pu=Object.getPrototypeOf,Mu=Object.prototype.hasOwnProperty;var bu=(n,e,t)=>e in n?qi(n,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):n[e]=t;var de=(n,e)=>()=>(e||n((e={exports:{}}).exports,e),e.exports);var Au=(n,e,t,r)=>{if(e&&typeof e=="object"||typeof e=="function")for(let s of Eu(e))!Mu.call(n,s)&&s!==t&&qi(n,s,{get:()=>e[s],enumerable:!(r=Tu(e,s))||r.enumerable});return n};var Su=(n,e,t)=>(t=n!=null?Cu(Pu(n)):{},Au(e||!n||!n.__esModule?qi(t,"default",{value:n,enumerable:!0}):t,n));var Ji=(n,e,t)=>(bu(n,typeof e!="symbol"?e+"":e,t),t);var vh=de((fC,yh)=>{"use strict";var Tf=(n,e,t,r)=>{let s=n&65535|0,a=n>>>16&65535|0,o=0;for(;t!==0;){o=t>2e3?2e3:t,t-=o;do s=s+e[r++]|0,a=a+s|0;while(--o);s%=65521,a%=65521}return s|a<<16|0};yh.exports=Tf});var xh=de((_C,wh)=>{"use strict";var Ef=()=>{let n,e=[];for(var t=0;t<256;t++){n=t;for(var r=0;r<8;r++)n=n&1?3988292384^n>>>1:n>>>1;e[t]=n}return e},Pf=new Uint32Array(Ef()),Mf=(n,e,t,r)=>{let s=Pf,a=r+t;n^=-1;for(let o=r;o<a;o++)n=n>>>8^s[(n^e[o])&255];return n^-1};wh.exports=Mf});var Th=de((gC,Ch)=>{"use strict";Ch.exports=function(e,t){let r,s,a,o,l,h,c,d,u,_,m,p,T,v,E,M,I,A,L,H,b,R,z,O,G=e.state;r=e.next_in,z=e.input,s=r+(e.avail_in-5),a=e.next_out,O=e.output,o=a-(t-e.avail_out),l=a+(e.avail_out-257),h=G.dmax,c=G.wsize,d=G.whave,u=G.wnext,_=G.window,m=G.hold,p=G.bits,T=G.lencode,v=G.distcode,E=(1<<G.lenbits)-1,M=(1<<G.distbits)-1;e:do{p<15&&(m+=z[r++]<<p,p+=8,m+=z[r++]<<p,p+=8),I=T[m&E];t:for(;;){if(A=I>>>24,m>>>=A,p-=A,A=I>>>16&255,A===0)O[a++]=I&65535;else if(A&16){L=I&65535,A&=15,A&&(p<A&&(m+=z[r++]<<p,p+=8),L+=m&(1<<A)-1,m>>>=A,p-=A),p<15&&(m+=z[r++]<<p,p+=8,m+=z[r++]<<p,p+=8),I=v[m&M];i:for(;;){if(A=I>>>24,m>>>=A,p-=A,A=I>>>16&255,A&16){if(H=I&65535,A&=15,p<A&&(m+=z[r++]<<p,p+=8,p<A&&(m+=z[r++]<<p,p+=8)),H+=m&(1<<A)-1,H>h){e.msg="invalid distance too far back",G.mode=16209;break e}if(m>>>=A,p-=A,A=a-o,H>A){if(A=H-A,A>d&&G.sane){e.msg="invalid distance too far back",G.mode=16209;break e}if(b=0,R=_,u===0){if(b+=c-A,A<L){L-=A;do O[a++]=_[b++];while(--A);b=a-H,R=O}}else if(u<A){if(b+=c+u-A,A-=u,A<L){L-=A;do O[a++]=_[b++];while(--A);if(b=0,u<L){A=u,L-=A;do O[a++]=_[b++];while(--A);b=a-H,R=O}}}else if(b+=u-A,A<L){L-=A;do O[a++]=_[b++];while(--A);b=a-H,R=O}for(;L>2;)O[a++]=R[b++],O[a++]=R[b++],O[a++]=R[b++],L-=3;L&&(O[a++]=R[b++],L>1&&(O[a++]=R[b++]))}else{b=a-H;do O[a++]=O[b++],O[a++]=O[b++],O[a++]=O[b++],L-=3;while(L>2);L&&(O[a++]=O[b++],L>1&&(O[a++]=O[b++]))}}else if(A&64){e.msg="invalid distance code",G.mode=16209;break e}else{I=v[(I&65535)+(m&(1<<A)-1)];continue i}break}}else if(A&64)if(A&32){G.mode=16191;break e}else{e.msg="invalid literal/length code",G.mode=16209;break e}else{I=T[(I&65535)+(m&(1<<A)-1)];continue t}break}}while(r<s&&a<l);L=p>>3,r-=L,p-=L<<3,m&=(1<<p)-1,e.next_in=r,e.next_out=a,e.avail_in=r<s?5+(s-r):5-(r-s),e.avail_out=a<l?257+(l-a):257-(a-l),G.hold=m,G.bits=p}});var Ph=de((yC,Eh)=>{"use strict";var bf=new Uint16Array([3,4,5,6,7,8,9,10,11,13,15,17,19,23,27,31,35,43,51,59,67,83,99,115,131,163,195,227,258,0,0]),Af=new Uint8Array([16,16,16,16,16,16,16,16,17,17,17,17,18,18,18,18,19,19,19,19,20,20,20,20,21,21,21,21,16,72,78]),Sf=new Uint16Array([1,2,3,4,5,7,9,13,17,25,33,49,65,97,129,193,257,385,513,769,1025,1537,2049,3073,4097,6145,8193,12289,16385,24577,0,0]),If=new Uint8Array([16,16,16,16,17,17,18,18,19,19,20,20,21,21,22,22,23,23,24,24,25,25,26,26,27,27,28,28,29,29,64,64]),Df=(n,e,t,r,s,a,o,l)=>{let h=l.bits,c=0,d=0,u=0,_=0,m=0,p=0,T=0,v=0,E=0,M=0,I,A,L,H,b,R=null,z,O=new Uint16Array(16),G=new Uint16Array(16),ee=null,Ee,Pe,Me;for(c=0;c<=15;c++)O[c]=0;for(d=0;d<r;d++)O[e[t+d]]++;for(m=h,_=15;_>=1&&O[_]===0;_--);if(m>_&&(m=_),_===0)return s[a++]=1<<24|64<<16|0,s[a++]=1<<24|64<<16|0,l.bits=1,0;for(u=1;u<_&&O[u]===0;u++);for(m<u&&(m=u),v=1,c=1;c<=15;c++)if(v<<=1,v-=O[c],v<0)return-1;if(v>0&&(n===0||_!==1))return-1;for(G[1]=0,c=1;c<15;c++)G[c+1]=G[c]+O[c];for(d=0;d<r;d++)e[t+d]!==0&&(o[G[e[t+d]]++]=d);if(n===0?(R=ee=o,z=20):n===1?(R=bf,ee=Af,z=257):(R=Sf,ee=If,z=0),M=0,d=0,c=u,b=a,p=m,T=0,L=-1,E=1<<m,H=E-1,n===1&&E>852||n===2&&E>592)return 1;for(;;){Ee=c-T,o[d]+1<z?(Pe=0,Me=o[d]):o[d]>=z?(Pe=ee[o[d]-z],Me=R[o[d]-z]):(Pe=96,Me=0),I=1<<c-T,A=1<<p,u=A;do A-=I,s[b+(M>>T)+A]=Ee<<24|Pe<<16|Me|0;while(A!==0);for(I=1<<c-1;M&I;)I>>=1;if(I!==0?(M&=I-1,M+=I):M=0,d++,--O[c]===0){if(c===_)break;c=e[t+o[d]]}if(c>m&&(M&H)!==L){for(T===0&&(T=m),b+=u,p=c-T,v=1<<p;p+T<_&&(v-=O[p+T],!(v<=0));)p++,v<<=1;if(E+=1<<p,n===1&&E>852||n===2&&E>592)return 1;L=M&H,s[L]=m<<24|p<<16|b-a|0}}return M!==0&&(s[b+M]=c-T<<24|64<<16|0),l.bits=m,0};Eh.exports=Df});var Rt=de((vC,Mh)=>{"use strict";Mh.exports={Z_NO_FLUSH:0,Z_PARTIAL_FLUSH:1,Z_SYNC_FLUSH:2,Z_FULL_FLUSH:3,Z_FINISH:4,Z_BLOCK:5,Z_TREES:6,Z_OK:0,Z_STREAM_END:1,Z_NEED_DICT:2,Z_ERRNO:-1,Z_STREAM_ERROR:-2,Z_DATA_ERROR:-3,Z_MEM_ERROR:-4,Z_BUF_ERROR:-5,Z_NO_COMPRESSION:0,Z_BEST_SPEED:1,Z_BEST_COMPRESSION:9,Z_DEFAULT_COMPRESSION:-1,Z_FILTERED:1,Z_HUFFMAN_ONLY:2,Z_RLE:3,Z_FIXED:4,Z_DEFAULT_STRATEGY:0,Z_BINARY:0,Z_TEXT:1,Z_UNKNOWN:2,Z_DEFLATED:8}});var nc=de((wC,ve)=>{"use strict";var Ls=vh(),xe=xh(),Lf=Th(),_t=Ph(),Rf=0,Kh=1,$h=2,{Z_FINISH:bh,Z_BLOCK:kf,Z_TREES:kt,Z_OK:je,Z_STREAM_END:Of,Z_NEED_DICT:Nf,Z_STREAM_ERROR:fe,Z_DATA_ERROR:ec,Z_MEM_ERROR:Rs,Z_BUF_ERROR:zf,Z_DEFLATED:Ah}=Rt(),Ft=16180,Sh=16181,Ih=16182,Dh=16183,Lh=16184,Rh=16185,kh=16186,Oh=16187,Nh=16188,zh=16189,zt=16190,Se=16191,bs=16192,Fh=16193,As=16194,Gh=16195,Hh=16196,Wh=16197,Bh=16198,Ot=16199,Nt=16200,Uh=16201,Vh=16202,Zh=16203,jh=16204,Yh=16205,Ss=16206,qh=16207,Jh=16208,J=16209,ks=16210,tc=16211,Ff=852,Gf=592,Hf=15,Wf=Hf,Xh=n=>(n>>>24&255)+(n>>>8&65280)+((n&65280)<<8)+((n&255)<<24);function Bf(){this.strm=null,this.mode=0,this.last=!1,this.wrap=0,this.havedict=!1,this.flags=0,this.dmax=0,this.check=0,this.total=0,this.head=null,this.wbits=0,this.wsize=0,this.whave=0,this.wnext=0,this.window=null,this.hold=0,this.bits=0,this.length=0,this.offset=0,this.extra=0,this.lencode=null,this.distcode=null,this.lenbits=0,this.distbits=0,this.ncode=0,this.nlen=0,this.ndist=0,this.have=0,this.next=null,this.lens=new Uint16Array(320),this.work=new Uint16Array(288),this.lendyn=null,this.distdyn=null,this.sane=0,this.back=0,this.was=0}var Ye=n=>{if(!n)return 1;let e=n.state;return!e||e.strm!==n||e.mode<Ft||e.mode>tc?1:0},ic=n=>{if(Ye(n))return fe;let e=n.state;return n.total_in=n.total_out=e.total=0,n.msg="",e.wrap&&(n.adler=e.wrap&1),e.mode=Ft,e.last=0,e.havedict=0,e.flags=-1,e.dmax=32768,e.head=null,e.hold=0,e.bits=0,e.lencode=e.lendyn=new Int32Array(Ff),e.distcode=e.distdyn=new Int32Array(Gf),e.sane=1,e.back=-1,je},rc=n=>{if(Ye(n))return fe;let e=n.state;return e.wsize=0,e.whave=0,e.wnext=0,ic(n)},sc=(n,e)=>{let t;if(Ye(n))return fe;let r=n.state;return e<0?(t=0,e=-e):(t=(e>>4)+5,e<48&&(e&=15)),e&&(e<8||e>15)?fe:(r.window!==null&&r.wbits!==e&&(r.window=null),r.wrap=t,r.wbits=e,rc(n))},ac=(n,e)=>{if(!n)return fe;let t=new Bf;n.state=t,t.strm=n,t.window=null,t.mode=Ft;let r=sc(n,e);return r!==je&&(n.state=null),r},Uf=n=>ac(n,Wf),Qh=!0,Is,Ds,Vf=n=>{if(Qh){Is=new Int32Array(512),Ds=new Int32Array(32);let e=0;for(;e<144;)n.lens[e++]=8;for(;e<256;)n.lens[e++]=9;for(;e<280;)n.lens[e++]=7;for(;e<288;)n.lens[e++]=8;for(_t(Kh,n.lens,0,288,Is,0,n.work,{bits:9}),e=0;e<32;)n.lens[e++]=5;_t($h,n.lens,0,32,Ds,0,n.work,{bits:5}),Qh=!1}n.lencode=Is,n.lenbits=9,n.distcode=Ds,n.distbits=5},oc=(n,e,t,r)=>{let s,a=n.state;return a.window===null&&(a.wsize=1<<a.wbits,a.wnext=0,a.whave=0,a.window=new Uint8Array(a.wsize)),r>=a.wsize?(a.window.set(e.subarray(t-a.wsize,t),0),a.wnext=0,a.whave=a.wsize):(s=a.wsize-a.wnext,s>r&&(s=r),a.window.set(e.subarray(t-r,t-r+s),a.wnext),r-=s,r?(a.window.set(e.subarray(t-r,t),0),a.wnext=r,a.whave=a.wsize):(a.wnext+=s,a.wnext===a.wsize&&(a.wnext=0),a.whave<a.wsize&&(a.whave+=s))),0},Zf=(n,e)=>{let t,r,s,a,o,l,h,c,d,u,_,m,p,T,v=0,E,M,I,A,L,H,b,R,z=new Uint8Array(4),O,G,ee=new Uint8Array([16,17,18,0,8,7,9,6,10,5,11,4,12,3,13,2,14,1,15]);if(Ye(n)||!n.output||!n.input&&n.avail_in!==0)return fe;t=n.state,t.mode===Se&&(t.mode=bs),o=n.next_out,s=n.output,h=n.avail_out,a=n.next_in,r=n.input,l=n.avail_in,c=t.hold,d=t.bits,u=l,_=h,R=je;e:for(;;)switch(t.mode){case Ft:if(t.wrap===0){t.mode=bs;break}for(;d<16;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(t.wrap&2&&c===35615){t.wbits===0&&(t.wbits=15),t.check=0,z[0]=c&255,z[1]=c>>>8&255,t.check=xe(t.check,z,2,0),c=0,d=0,t.mode=Sh;break}if(t.head&&(t.head.done=!1),!(t.wrap&1)||(((c&255)<<8)+(c>>8))%31){n.msg="incorrect header check",t.mode=J;break}if((c&15)!==Ah){n.msg="unknown compression method",t.mode=J;break}if(c>>>=4,d-=4,b=(c&15)+8,t.wbits===0&&(t.wbits=b),b>15||b>t.wbits){n.msg="invalid window size",t.mode=J;break}t.dmax=1<<t.wbits,t.flags=0,n.adler=t.check=1,t.mode=c&512?zh:Se,c=0,d=0;break;case Sh:for(;d<16;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(t.flags=c,(t.flags&255)!==Ah){n.msg="unknown compression method",t.mode=J;break}if(t.flags&57344){n.msg="unknown header flags set",t.mode=J;break}t.head&&(t.head.text=c>>8&1),t.flags&512&&t.wrap&4&&(z[0]=c&255,z[1]=c>>>8&255,t.check=xe(t.check,z,2,0)),c=0,d=0,t.mode=Ih;case Ih:for(;d<32;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}t.head&&(t.head.time=c),t.flags&512&&t.wrap&4&&(z[0]=c&255,z[1]=c>>>8&255,z[2]=c>>>16&255,z[3]=c>>>24&255,t.check=xe(t.check,z,4,0)),c=0,d=0,t.mode=Dh;case Dh:for(;d<16;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}t.head&&(t.head.xflags=c&255,t.head.os=c>>8),t.flags&512&&t.wrap&4&&(z[0]=c&255,z[1]=c>>>8&255,t.check=xe(t.check,z,2,0)),c=0,d=0,t.mode=Lh;case Lh:if(t.flags&1024){for(;d<16;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}t.length=c,t.head&&(t.head.extra_len=c),t.flags&512&&t.wrap&4&&(z[0]=c&255,z[1]=c>>>8&255,t.check=xe(t.check,z,2,0)),c=0,d=0}else t.head&&(t.head.extra=null);t.mode=Rh;case Rh:if(t.flags&1024&&(m=t.length,m>l&&(m=l),m&&(t.head&&(b=t.head.extra_len-t.length,t.head.extra||(t.head.extra=new Uint8Array(t.head.extra_len)),t.head.extra.set(r.subarray(a,a+m),b)),t.flags&512&&t.wrap&4&&(t.check=xe(t.check,r,m,a)),l-=m,a+=m,t.length-=m),t.length))break e;t.length=0,t.mode=kh;case kh:if(t.flags&2048){if(l===0)break e;m=0;do b=r[a+m++],t.head&&b&&t.length<65536&&(t.head.name+=String.fromCharCode(b));while(b&&m<l);if(t.flags&512&&t.wrap&4&&(t.check=xe(t.check,r,m,a)),l-=m,a+=m,b)break e}else t.head&&(t.head.name=null);t.length=0,t.mode=Oh;case Oh:if(t.flags&4096){if(l===0)break e;m=0;do b=r[a+m++],t.head&&b&&t.length<65536&&(t.head.comment+=String.fromCharCode(b));while(b&&m<l);if(t.flags&512&&t.wrap&4&&(t.check=xe(t.check,r,m,a)),l-=m,a+=m,b)break e}else t.head&&(t.head.comment=null);t.mode=Nh;case Nh:if(t.flags&512){for(;d<16;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(t.wrap&4&&c!==(t.check&65535)){n.msg="header crc mismatch",t.mode=J;break}c=0,d=0}t.head&&(t.head.hcrc=t.flags>>9&1,t.head.done=!0),n.adler=t.check=0,t.mode=Se;break;case zh:for(;d<32;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}n.adler=t.check=Xh(c),c=0,d=0,t.mode=zt;case zt:if(t.havedict===0)return n.next_out=o,n.avail_out=h,n.next_in=a,n.avail_in=l,t.hold=c,t.bits=d,Nf;n.adler=t.check=1,t.mode=Se;case Se:if(e===kf||e===kt)break e;case bs:if(t.last){c>>>=d&7,d-=d&7,t.mode=Ss;break}for(;d<3;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}switch(t.last=c&1,c>>>=1,d-=1,c&3){case 0:t.mode=Fh;break;case 1:if(Vf(t),t.mode=Ot,e===kt){c>>>=2,d-=2;break e}break;case 2:t.mode=Hh;break;case 3:n.msg="invalid block type",t.mode=J}c>>>=2,d-=2;break;case Fh:for(c>>>=d&7,d-=d&7;d<32;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if((c&65535)!==(c>>>16^65535)){n.msg="invalid stored block lengths",t.mode=J;break}if(t.length=c&65535,c=0,d=0,t.mode=As,e===kt)break e;case As:t.mode=Gh;case Gh:if(m=t.length,m){if(m>l&&(m=l),m>h&&(m=h),m===0)break e;s.set(r.subarray(a,a+m),o),l-=m,a+=m,h-=m,o+=m,t.length-=m;break}t.mode=Se;break;case Hh:for(;d<14;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(t.nlen=(c&31)+257,c>>>=5,d-=5,t.ndist=(c&31)+1,c>>>=5,d-=5,t.ncode=(c&15)+4,c>>>=4,d-=4,t.nlen>286||t.ndist>30){n.msg="too many length or distance symbols",t.mode=J;break}t.have=0,t.mode=Wh;case Wh:for(;t.have<t.ncode;){for(;d<3;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}t.lens[ee[t.have++]]=c&7,c>>>=3,d-=3}for(;t.have<19;)t.lens[ee[t.have++]]=0;if(t.lencode=t.lendyn,t.lenbits=7,O={bits:t.lenbits},R=_t(Rf,t.lens,0,19,t.lencode,0,t.work,O),t.lenbits=O.bits,R){n.msg="invalid code lengths set",t.mode=J;break}t.have=0,t.mode=Bh;case Bh:for(;t.have<t.nlen+t.ndist;){for(;v=t.lencode[c&(1<<t.lenbits)-1],E=v>>>24,M=v>>>16&255,I=v&65535,!(E<=d);){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(I<16)c>>>=E,d-=E,t.lens[t.have++]=I;else{if(I===16){for(G=E+2;d<G;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(c>>>=E,d-=E,t.have===0){n.msg="invalid bit length repeat",t.mode=J;break}b=t.lens[t.have-1],m=3+(c&3),c>>>=2,d-=2}else if(I===17){for(G=E+3;d<G;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}c>>>=E,d-=E,b=0,m=3+(c&7),c>>>=3,d-=3}else{for(G=E+7;d<G;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}c>>>=E,d-=E,b=0,m=11+(c&127),c>>>=7,d-=7}if(t.have+m>t.nlen+t.ndist){n.msg="invalid bit length repeat",t.mode=J;break}for(;m--;)t.lens[t.have++]=b}}if(t.mode===J)break;if(t.lens[256]===0){n.msg="invalid code -- missing end-of-block",t.mode=J;break}if(t.lenbits=9,O={bits:t.lenbits},R=_t(Kh,t.lens,0,t.nlen,t.lencode,0,t.work,O),t.lenbits=O.bits,R){n.msg="invalid literal/lengths set",t.mode=J;break}if(t.distbits=6,t.distcode=t.distdyn,O={bits:t.distbits},R=_t($h,t.lens,t.nlen,t.ndist,t.distcode,0,t.work,O),t.distbits=O.bits,R){n.msg="invalid distances set",t.mode=J;break}if(t.mode=Ot,e===kt)break e;case Ot:t.mode=Nt;case Nt:if(l>=6&&h>=258){n.next_out=o,n.avail_out=h,n.next_in=a,n.avail_in=l,t.hold=c,t.bits=d,Lf(n,_),o=n.next_out,s=n.output,h=n.avail_out,a=n.next_in,r=n.input,l=n.avail_in,c=t.hold,d=t.bits,t.mode===Se&&(t.back=-1);break}for(t.back=0;v=t.lencode[c&(1<<t.lenbits)-1],E=v>>>24,M=v>>>16&255,I=v&65535,!(E<=d);){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(M&&!(M&240)){for(A=E,L=M,H=I;v=t.lencode[H+((c&(1<<A+L)-1)>>A)],E=v>>>24,M=v>>>16&255,I=v&65535,!(A+E<=d);){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}c>>>=A,d-=A,t.back+=A}if(c>>>=E,d-=E,t.back+=E,t.length=I,M===0){t.mode=Yh;break}if(M&32){t.back=-1,t.mode=Se;break}if(M&64){n.msg="invalid literal/length code",t.mode=J;break}t.extra=M&15,t.mode=Uh;case Uh:if(t.extra){for(G=t.extra;d<G;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}t.length+=c&(1<<t.extra)-1,c>>>=t.extra,d-=t.extra,t.back+=t.extra}t.was=t.length,t.mode=Vh;case Vh:for(;v=t.distcode[c&(1<<t.distbits)-1],E=v>>>24,M=v>>>16&255,I=v&65535,!(E<=d);){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(!(M&240)){for(A=E,L=M,H=I;v=t.distcode[H+((c&(1<<A+L)-1)>>A)],E=v>>>24,M=v>>>16&255,I=v&65535,!(A+E<=d);){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}c>>>=A,d-=A,t.back+=A}if(c>>>=E,d-=E,t.back+=E,M&64){n.msg="invalid distance code",t.mode=J;break}t.offset=I,t.extra=M&15,t.mode=Zh;case Zh:if(t.extra){for(G=t.extra;d<G;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}t.offset+=c&(1<<t.extra)-1,c>>>=t.extra,d-=t.extra,t.back+=t.extra}if(t.offset>t.dmax){n.msg="invalid distance too far back",t.mode=J;break}t.mode=jh;case jh:if(h===0)break e;if(m=_-h,t.offset>m){if(m=t.offset-m,m>t.whave&&t.sane){n.msg="invalid distance too far back",t.mode=J;break}m>t.wnext?(m-=t.wnext,p=t.wsize-m):p=t.wnext-m,m>t.length&&(m=t.length),T=t.window}else T=s,p=o-t.offset,m=t.length;m>h&&(m=h),h-=m,t.length-=m;do s[o++]=T[p++];while(--m);t.length===0&&(t.mode=Nt);break;case Yh:if(h===0)break e;s[o++]=t.length,h--,t.mode=Nt;break;case Ss:if(t.wrap){for(;d<32;){if(l===0)break e;l--,c|=r[a++]<<d,d+=8}if(_-=h,n.total_out+=_,t.total+=_,t.wrap&4&&_&&(n.adler=t.check=t.flags?xe(t.check,s,_,o-_):Ls(t.check,s,_,o-_)),_=h,t.wrap&4&&(t.flags?c:Xh(c))!==t.check){n.msg="incorrect data check",t.mode=J;break}c=0,d=0}t.mode=qh;case qh:if(t.wrap&&t.flags){for(;d<32;){if(l===0)break e;l--,c+=r[a++]<<d,d+=8}if(t.wrap&4&&c!==(t.total&4294967295)){n.msg="incorrect length check",t.mode=J;break}c=0,d=0}t.mode=Jh;case Jh:R=Of;break e;case J:R=ec;break e;case ks:return Rs;case tc:default:return fe}return n.next_out=o,n.avail_out=h,n.next_in=a,n.avail_in=l,t.hold=c,t.bits=d,(t.wsize||_!==n.avail_out&&t.mode<J&&(t.mode<Ss||e!==bh))&&oc(n,n.output,n.next_out,_-n.avail_out)?(t.mode=ks,Rs):(u-=n.avail_in,_-=n.avail_out,n.total_in+=u,n.total_out+=_,t.total+=_,t.wrap&4&&_&&(n.adler=t.check=t.flags?xe(t.check,s,_,n.next_out-_):Ls(t.check,s,_,n.next_out-_)),n.data_type=t.bits+(t.last?64:0)+(t.mode===Se?128:0)+(t.mode===Ot||t.mode===As?256:0),(u===0&&_===0||e===bh)&&R===je&&(R=zf),R)},jf=n=>{if(Ye(n))return fe;let e=n.state;return e.window&&(e.window=null),n.state=null,je},Yf=(n,e)=>{if(Ye(n))return fe;let t=n.state;return t.wrap&2?(t.head=e,e.done=!1,je):fe},qf=(n,e)=>{let t=e.length,r,s,a;return Ye(n)||(r=n.state,r.wrap!==0&&r.mode!==zt)?fe:r.mode===zt&&(s=1,s=Ls(s,e,t,0),s!==r.check)?ec:(a=oc(n,e,t,t),a?(r.mode=ks,Rs):(r.havedict=1,je))};ve.exports.inflateReset=rc;ve.exports.inflateReset2=sc;ve.exports.inflateResetKeep=ic;ve.exports.inflateInit=Uf;ve.exports.inflateInit2=ac;ve.exports.inflate=Zf;ve.exports.inflateEnd=jf;ve.exports.inflateGetHeader=Yf;ve.exports.inflateSetDictionary=qf;ve.exports.inflateInfo="pako inflate (from Nodeca project)"});var lc=de((xC,Os)=>{"use strict";var Jf=(n,e)=>Object.prototype.hasOwnProperty.call(n,e);Os.exports.assign=function(n){let e=Array.prototype.slice.call(arguments,1);for(;e.length;){let t=e.shift();if(t){if(typeof t!="object")throw new TypeError(t+"must be non-object");for(let r in t)Jf(t,r)&&(n[r]=t[r])}}return n};Os.exports.flattenChunks=n=>{let e=0;for(let r=0,s=n.length;r<s;r++)e+=n[r].length;let t=new Uint8Array(e);for(let r=0,s=0,a=n.length;r<a;r++){let o=n[r];t.set(o,s),s+=o.length}return t}});var cc=de((CC,Gt)=>{"use strict";var hc=!0;try{String.fromCharCode.apply(null,new Uint8Array(1))}catch{hc=!1}var gt=new Uint8Array(256);for(let n=0;n<256;n++)gt[n]=n>=252?6:n>=248?5:n>=240?4:n>=224?3:n>=192?2:1;gt[254]=gt[254]=1;Gt.exports.string2buf=n=>{if(typeof TextEncoder=="function"&&TextEncoder.prototype.encode)return new TextEncoder().encode(n);let e,t,r,s,a,o=n.length,l=0;for(s=0;s<o;s++)t=n.charCodeAt(s),(t&64512)===55296&&s+1<o&&(r=n.charCodeAt(s+1),(r&64512)===56320&&(t=65536+(t-55296<<10)+(r-56320),s++)),l+=t<128?1:t<2048?2:t<65536?3:4;for(e=new Uint8Array(l),a=0,s=0;a<l;s++)t=n.charCodeAt(s),(t&64512)===55296&&s+1<o&&(r=n.charCodeAt(s+1),(r&64512)===56320&&(t=65536+(t-55296<<10)+(r-56320),s++)),t<128?e[a++]=t:t<2048?(e[a++]=192|t>>>6,e[a++]=128|t&63):t<65536?(e[a++]=224|t>>>12,e[a++]=128|t>>>6&63,e[a++]=128|t&63):(e[a++]=240|t>>>18,e[a++]=128|t>>>12&63,e[a++]=128|t>>>6&63,e[a++]=128|t&63);return e};var Xf=(n,e)=>{if(e<65534&&n.subarray&&hc)return String.fromCharCode.apply(null,n.length===e?n:n.subarray(0,e));let t="";for(let r=0;r<e;r++)t+=String.fromCharCode(n[r]);return t};Gt.exports.buf2string=(n,e)=>{let t=e||n.length;if(typeof TextDecoder=="function"&&TextDecoder.prototype.decode)return new TextDecoder().decode(n.subarray(0,e));let r,s,a=new Array(t*2);for(s=0,r=0;r<t;){let o=n[r++];if(o<128){a[s++]=o;continue}let l=gt[o];if(l>4){a[s++]=65533,r+=l-1;continue}for(o&=l===2?31:l===3?15:7;l>1&&r<t;)o=o<<6|n[r++]&63,l--;if(l>1){a[s++]=65533;continue}o<65536?a[s++]=o:(o-=65536,a[s++]=55296|o>>10&1023,a[s++]=56320|o&1023)}return Xf(a,s)};Gt.exports.utf8border=(n,e)=>{e=e||n.length,e>n.length&&(e=n.length);let t=e-1;for(;t>=0&&(n[t]&192)===128;)t--;return t<0||t===0?e:t+gt[n[t]]>e?t:e}});var pc=de((TC,dc)=>{"use strict";dc.exports={2:"need dictionary",1:"stream end",0:"","-1":"file error","-2":"stream error","-3":"data error","-4":"insufficient memory","-5":"buffer error","-6":"incompatible version"}});var uc=de((EC,mc)=>{"use strict";function Qf(){this.input=null,this.next_in=0,this.avail_in=0,this.total_in=0,this.output=null,this.next_out=0,this.avail_out=0,this.total_out=0,this.msg="",this.state=null,this.data_type=2,this.adler=0}mc.exports=Qf});var _c=de((PC,fc)=>{"use strict";function Kf(){this.text=0,this.time=0,this.xflags=0,this.os=0,this.extra=null,this.extra_len=0,this.name="",this.comment="",this.hcrc=0,this.done=!1}fc.exports=Kf});var wc=de((MC,$e)=>{"use strict";var Ie=nc(),yc=lc(),Fs=cc(),Gs=pc(),$f=uc(),e_=_c(),vc=Object.prototype.toString,{Z_NO_FLUSH:t_,Z_FINISH:i_,Z_OK:yt,Z_STREAM_END:Ns,Z_NEED_DICT:zs,Z_STREAM_ERROR:r_,Z_DATA_ERROR:gc,Z_MEM_ERROR:s_}=Rt();function vt(n){this.options=yc.assign({chunkSize:1024*64,windowBits:15,to:""},n||{});let e=this.options;e.raw&&e.windowBits>=0&&e.windowBits<16&&(e.windowBits=-e.windowBits,e.windowBits===0&&(e.windowBits=-15)),e.windowBits>=0&&e.windowBits<16&&!(n&&n.windowBits)&&(e.windowBits+=32),e.windowBits>15&&e.windowBits<48&&(e.windowBits&15||(e.windowBits|=15)),this.err=0,this.msg="",this.ended=!1,this.chunks=[],this.strm=new $f,this.strm.avail_out=0;let t=Ie.inflateInit2(this.strm,e.windowBits);if(t!==yt)throw new Error(Gs[t]);if(this.header=new e_,Ie.inflateGetHeader(this.strm,this.header),e.dictionary&&(typeof e.dictionary=="string"?e.dictionary=Fs.string2buf(e.dictionary):vc.call(e.dictionary)==="[object ArrayBuffer]"&&(e.dictionary=new Uint8Array(e.dictionary)),e.raw&&(t=Ie.inflateSetDictionary(this.strm,e.dictionary),t!==yt)))throw new Error(Gs[t])}vt.prototype.push=function(n,e){let t=this.strm,r=this.options.chunkSize,s=this.options.dictionary,a,o,l;if(this.ended)return!1;for(e===~~e?o=e:o=e===!0?i_:t_,vc.call(n)==="[object ArrayBuffer]"?t.input=new Uint8Array(n):t.input=n,t.next_in=0,t.avail_in=t.input.length;;){for(t.avail_out===0&&(t.output=new Uint8Array(r),t.next_out=0,t.avail_out=r),a=Ie.inflate(t,o),a===zs&&s&&(a=Ie.inflateSetDictionary(t,s),a===yt?a=Ie.inflate(t,o):a===gc&&(a=zs));t.avail_in>0&&a===Ns&&t.state.wrap>0&&n[t.next_in]!==0;)Ie.inflateReset(t),a=Ie.inflate(t,o);switch(a){case r_:case gc:case zs:case s_:return this.onEnd(a),this.ended=!0,!1}if(l=t.avail_out,t.next_out&&(t.avail_out===0||a===Ns))if(this.options.to==="string"){let h=Fs.utf8border(t.output,t.next_out),c=t.next_out-h,d=Fs.buf2string(t.output,h);t.next_out=c,t.avail_out=r-c,c&&t.output.set(t.output.subarray(h,h+c),0),this.onData(d)}else this.onData(t.output.length===t.next_out?t.output:t.output.subarray(0,t.next_out));if(!(a===yt&&l===0)){if(a===Ns)return a=Ie.inflateEnd(this.strm),this.onEnd(a),this.ended=!0,!0;if(t.avail_in===0)break}}return!0};vt.prototype.onData=function(n){this.chunks.push(n)};vt.prototype.onEnd=function(n){n===yt&&(this.options.to==="string"?this.result=this.chunks.join(""):this.result=yc.flattenChunks(this.chunks)),this.chunks=[],this.err=n,this.msg=this.strm.msg};function Hs(n,e){let t=new vt(e);if(t.push(n),t.err)throw t.msg||Gs[t.err];return t.result}function a_(n,e){return e=e||{},e.raw=!0,Hs(n,e)}$e.exports.Inflate=vt;$e.exports.inflate=Hs;$e.exports.inflateRaw=a_;$e.exports.ungzip=Hs;$e.exports.constants=Rt()});var hl={};function cl(n,e){hl[n]=e}function oe(n){return hl[n]}var dl={};function Je(n,e){dl[n]=e}function Xi(n){return dl[n]}import*as i from"cesium";var pl=[Int8Array,Uint8Array,Uint8ClampedArray,Int16Array,Uint16Array,Int32Array,Uint32Array,Float32Array,Float64Array],Qi=1,ct=8,pt=class n{static from(e){if(!(e instanceof ArrayBuffer))throw new Error("Data must be an instance of ArrayBuffer.");let[t,r]=new Uint8Array(e,0,2);if(t!==219)throw new Error("Data does not appear to be in a KDBush format.");let s=r>>4;if(s!==Qi)throw new Error(`Got v${s} data when expected v${Qi}.`);let a=pl[r&15];if(!a)throw new Error("Unrecognized array type.");let[o]=new Uint16Array(e,2,1),[l]=new Uint32Array(e,4,1);return new n(l,o,a,e)}constructor(e,t=64,r=Float64Array,s){if(isNaN(e)||e<0)throw new Error(`Unpexpected numItems value: ${e}.`);this.numItems=+e,this.nodeSize=Math.min(Math.max(+t,2),65535),this.ArrayType=r,this.IndexArrayType=e<65536?Uint16Array:Uint32Array;let a=pl.indexOf(this.ArrayType),o=e*2*this.ArrayType.BYTES_PER_ELEMENT,l=e*this.IndexArrayType.BYTES_PER_ELEMENT,h=(8-l%8)%8;if(a<0)throw new Error(`Unexpected typed array class: ${r}.`);s&&s instanceof ArrayBuffer?(this.data=s,this.ids=new this.IndexArrayType(this.data,ct,e),this.coords=new this.ArrayType(this.data,ct+l+h,e*2),this._pos=e*2,this._finished=!0):(this.data=new ArrayBuffer(ct+o+l+h),this.ids=new this.IndexArrayType(this.data,ct,e),this.coords=new this.ArrayType(this.data,ct+l+h,e*2),this._pos=0,this._finished=!1,new Uint8Array(this.data,0,2).set([219,(Qi<<4)+a]),new Uint16Array(this.data,2,1)[0]=t,new Uint32Array(this.data,4,1)[0]=e)}add(e,t){let r=this._pos>>1;return this.ids[r]=r,this.coords[this._pos++]=e,this.coords[this._pos++]=t,r}finish(){let e=this._pos>>1;if(e!==this.numItems)throw new Error(`Added ${e} items when expected ${this.numItems}.`);return $i(this.ids,this.coords,this.nodeSize,0,this.numItems-1,0),this._finished=!0,this}range(e,t,r,s){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:a,coords:o,nodeSize:l}=this,h=[0,a.length-1,0],c=[];for(;h.length;){let d=h.pop()||0,u=h.pop()||0,_=h.pop()||0;if(u-_<=l){for(let v=_;v<=u;v++){let E=o[2*v],M=o[2*v+1];E>=e&&E<=r&&M>=t&&M<=s&&c.push(a[v])}continue}let m=_+u>>1,p=o[2*m],T=o[2*m+1];p>=e&&p<=r&&T>=t&&T<=s&&c.push(a[m]),(d===0?e<=p:t<=T)&&(h.push(_),h.push(m-1),h.push(1-d)),(d===0?r>=p:s>=T)&&(h.push(m+1),h.push(u),h.push(1-d))}return c}within(e,t,r){if(!this._finished)throw new Error("Data not yet indexed - call index.finish().");let{ids:s,coords:a,nodeSize:o}=this,l=[0,s.length-1,0],h=[],c=r*r;for(;l.length;){let d=l.pop()||0,u=l.pop()||0,_=l.pop()||0;if(u-_<=o){for(let v=_;v<=u;v++)ml(a[2*v],a[2*v+1],e,t)<=c&&h.push(s[v]);continue}let m=_+u>>1,p=a[2*m],T=a[2*m+1];ml(p,T,e,t)<=c&&h.push(s[m]),(d===0?e-r<=p:t-r<=T)&&(l.push(_),l.push(m-1),l.push(1-d)),(d===0?e+r>=p:t+r>=T)&&(l.push(m+1),l.push(u),l.push(1-d))}return h}};function $i(n,e,t,r,s,a){if(s-r<=t)return;let o=r+s>>1;ul(n,e,o,r,s,a),$i(n,e,t,r,o-1,1-a),$i(n,e,t,o+1,s,1-a)}function ul(n,e,t,r,s,a){for(;s>r;){if(s-r>600){let c=s-r+1,d=t-r+1,u=Math.log(c),_=.5*Math.exp(2*u/3),m=.5*Math.sqrt(u*_*(c-_)/c)*(d-c/2<0?-1:1),p=Math.max(r,Math.floor(t-d*_/c+m)),T=Math.min(s,Math.floor(t+(c-d)*_/c+m));ul(n,e,t,p,T,a)}let o=e[2*t+a],l=r,h=s;for(dt(n,e,r,t),e[2*s+a]>o&&dt(n,e,r,s);l<h;){for(dt(n,e,l,h),l++,h--;e[2*l+a]<o;)l++;for(;e[2*h+a]>o;)h--}e[2*r+a]===o?dt(n,e,r,h):(h++,dt(n,e,h,s)),h<=t&&(r=h+1),t<=h&&(s=h-1)}}function dt(n,e,t,r){Ki(n,t,r),Ki(e,2*t,2*r),Ki(e,2*t+1,2*r+1)}function Ki(n,e,t){let r=n[e];n[e]=n[t],n[t]=r}function ml(n,e,t,r){let s=n-t,a=e-r;return s*s+a*a}var Iu={minZoom:0,maxZoom:16,minPoints:2,radius:40,extent:512,nodeSize:64,log:!1,generateId:!1,reduce:null,map:n=>n},fl=Math.fround||(n=>e=>(n[0]=+e,n[0]))(new Float32Array(1)),Be=2,Oe=3,er=4,ke=5,gl=6,Xe=class{constructor(e){this.options=Object.assign(Object.create(Iu),e),this.trees=new Array(this.options.maxZoom+1),this.stride=this.options.reduce?7:6,this.clusterProps=[]}load(e){let{log:t,minZoom:r,maxZoom:s}=this.options;t&&console.time("total time");let a=`prepare ${e.length} points`;t&&console.time(a),this.points=e;let o=[];for(let h=0;h<e.length;h++){let c=e[h];if(!c.geometry)continue;let[d,u]=c.geometry.coordinates,_=fl(Et(d)),m=fl(Pt(u));o.push(_,m,1/0,h,-1,1),this.options.reduce&&o.push(0)}let l=this.trees[s+1]=this._createTree(o);t&&console.timeEnd(a);for(let h=s;h>=r;h--){let c=+Date.now();l=this.trees[h]=this._createTree(this._cluster(l,h)),t&&console.log("z%d: %d clusters in %dms",h,l.numItems,+Date.now()-c)}return t&&console.timeEnd("total time"),this}getClusters(e,t){let r=((e[0]+180)%360+360)%360-180,s=Math.max(-90,Math.min(90,e[1])),a=e[2]===180?180:((e[2]+180)%360+360)%360-180,o=Math.max(-90,Math.min(90,e[3]));if(e[2]-e[0]>=360)r=-180,a=180;else if(r>a){let u=this.getClusters([r,s,180,o],t),_=this.getClusters([-180,s,a,o],t);return u.concat(_)}let l=this.trees[this._limitZoom(t)],h=l.range(Et(r),Pt(o),Et(a),Pt(s)),c=l.data,d=[];for(let u of h){let _=this.stride*u;d.push(c[_+ke]>1?_l(c,_,this.clusterProps):this.points[c[_+Oe]])}return d}getChildren(e){let t=this._getOriginId(e),r=this._getOriginZoom(e),s="No cluster with the specified id.",a=this.trees[r];if(!a)throw new Error(s);let o=a.data;if(t*this.stride>=o.length)throw new Error(s);let l=this.options.radius/(this.options.extent*Math.pow(2,r-1)),h=o[t*this.stride],c=o[t*this.stride+1],d=a.within(h,c,l),u=[];for(let _ of d){let m=_*this.stride;o[m+er]===e&&u.push(o[m+ke]>1?_l(o,m,this.clusterProps):this.points[o[m+Oe]])}if(u.length===0)throw new Error(s);return u}getLeaves(e,t,r){t=t||10,r=r||0;let s=[];return this._appendLeaves(s,e,t,r,0),s}getTile(e,t,r){let s=this.trees[this._limitZoom(e)],a=Math.pow(2,e),{extent:o,radius:l}=this.options,h=l/o,c=(r-h)/a,d=(r+1+h)/a,u={features:[]};return this._addTileFeatures(s.range((t-h)/a,c,(t+1+h)/a,d),s.data,t,r,a,u),t===0&&this._addTileFeatures(s.range(1-h/a,c,1,d),s.data,a,r,a,u),t===a-1&&this._addTileFeatures(s.range(0,c,h/a,d),s.data,-1,r,a,u),u.features.length?u:null}getClusterExpansionZoom(e){let t=this._getOriginZoom(e)-1;for(;t<=this.options.maxZoom;){let r=this.getChildren(e);if(t++,r.length!==1)break;e=r[0].properties.cluster_id}return t}_appendLeaves(e,t,r,s,a){let o=this.getChildren(t);for(let l of o){let h=l.properties;if(h&&h.cluster?a+h.point_count<=s?a+=h.point_count:a=this._appendLeaves(e,h.cluster_id,r,s,a):a<s?a++:e.push(l),e.length===r)break}return a}_createTree(e){let t=new pt(e.length/this.stride|0,this.options.nodeSize,Float32Array);for(let r=0;r<e.length;r+=this.stride)t.add(e[r],e[r+1]);return t.finish(),t.data=e,t}_addTileFeatures(e,t,r,s,a,o){for(let l of e){let h=l*this.stride,c=t[h+ke]>1,d,u,_;if(c)d=yl(t,h,this.clusterProps),u=t[h],_=t[h+1];else{let T=this.points[t[h+Oe]];d=T.properties;let[v,E]=T.geometry.coordinates;u=Et(v),_=Pt(E)}let m={type:1,geometry:[[Math.round(this.options.extent*(u*a-r)),Math.round(this.options.extent*(_*a-s))]],tags:d},p;c||this.options.generateId?p=t[h+Oe]:p=this.points[t[h+Oe]].id,p!==void 0&&(m.id=p),o.features.push(m)}}_limitZoom(e){return Math.max(this.options.minZoom,Math.min(Math.floor(+e),this.options.maxZoom+1))}_cluster(e,t){let{radius:r,extent:s,reduce:a,minPoints:o}=this.options,l=r/(s*Math.pow(2,t)),h=e.data,c=[],d=this.stride;for(let u=0;u<h.length;u+=d){if(h[u+Be]<=t)continue;h[u+Be]=t;let _=h[u],m=h[u+1],p=e.within(h[u],h[u+1],l),T=h[u+ke],v=T;for(let E of p){let M=E*d;h[M+Be]>t&&(v+=h[M+ke])}if(v>T&&v>=o){let E=_*T,M=m*T,I,A=-1,L=((u/d|0)<<5)+(t+1)+this.points.length;for(let H of p){let b=H*d;if(h[b+Be]<=t)continue;h[b+Be]=t;let R=h[b+ke];E+=h[b]*R,M+=h[b+1]*R,h[b+er]=L,a&&(I||(I=this._map(h,u,!0),A=this.clusterProps.length,this.clusterProps.push(I)),a(I,this._map(h,b)))}h[u+er]=L,c.push(E/v,M/v,1/0,L,-1,v),a&&c.push(A)}else{for(let E=0;E<d;E++)c.push(h[u+E]);if(v>1)for(let E of p){let M=E*d;if(!(h[M+Be]<=t)){h[M+Be]=t;for(let I=0;I<d;I++)c.push(h[M+I])}}}}return c}_getOriginId(e){return e-this.points.length>>5}_getOriginZoom(e){return(e-this.points.length)%32}_map(e,t,r){if(e[t+ke]>1){let o=this.clusterProps[e[t+gl]];return r?Object.assign({},o):o}let s=this.points[e[t+Oe]].properties,a=this.options.map(s);return r&&a===s?Object.assign({},a):a}};function _l(n,e,t){return{type:"Feature",id:n[e+Oe],properties:yl(n,e,t),geometry:{type:"Point",coordinates:[Du(n[e]),Lu(n[e+1])]}}}function yl(n,e,t){let r=n[e+ke],s=r>=1e4?`${Math.round(r/1e3)}k`:r>=1e3?`${Math.round(r/100)/10}k`:r,a=n[e+gl],o=a===-1?{}:Object.assign({},t[a]);return Object.assign(o,{cluster:!0,cluster_id:n[e+Oe],point_count:r,point_count_abbreviated:s})}function Et(n){return n/360+.5}function Pt(n){let e=Math.sin(n*Math.PI/180),t=.5-.25*Math.log((1+e)/(1-e))/Math.PI;return t<0?0:t>1?1:t}function Du(n){return(n-.5)*360}function Lu(n){let e=(180-n*360)*Math.PI/180;return 360*Math.atan(Math.exp(e))/Math.PI-90}var vl=new i.WebMercatorProjection,tr=class{static transformCartesianToWGS84(e){if(e){let t=i.Ellipsoid.WGS84.cartesianToCartographic(e);return new q(i.Math.toDegrees((t==null?void 0:t.longitude)||0),i.Math.toDegrees((t==null?void 0:t.latitude)||0),t.height||0)}return new q(0,0)}static transformCartographicToWGS84(e){return e?new q(i.Math.toDegrees((e==null?void 0:e.longitude)||0),i.Math.toDegrees((e==null?void 0:e.latitude)||0),e.height||0):new q(0,0)}static transformWGS84ToCartesian(e){return e?i.Cartesian3.fromDegrees(e.lng,e.lat,e.alt,i.Ellipsoid.WGS84):i.Cartesian3.ZERO}static transformWGS84ToCartographic(e){return e?i.Cartographic.fromDegrees(e.lng,e.lat,e.alt):i.Cartographic.ZERO}static transformCartesianArrayToWGS84Array(e){return e?e.map(t=>this.transformCartesianToWGS84(t)):[]}static transformWGS84ArrayToCartesianArray(e){return e?e.map(t=>this.transformWGS84ToCartesian(t)):[]}static transformWGS84ToMercator(e){let t=vl.project(i.Cartographic.fromDegrees(e.lng,e.lat,e.alt));return new q(t.x,t.y,t.z)}static transformMercatorToWGS84(e){let t=vl.unproject(new i.Cartesian3(e.lng,e.lat,e.alt));return new q(i.Math.toDegrees(t.longitude),i.Math.toDegrees(t.latitude),t.height)}static transformWindowToWGS84(e,t){let r=t.scene,s;if(r.mode===i.SceneMode.SCENE3D){let a=r.camera.getPickRay(e);s=r.globe.pick(a,r)}else s=r.camera.pickEllipsoid(e,i.Ellipsoid.WGS84);return this.transformCartesianToWGS84(s)}static transformWGS84ToWindow(e,t){let r=t.scene;return i.SceneTransforms.worldToWindowCoordinates(r,this.transformWGS84ToCartesian(e))}},g=tr;var Mt=52.35987755982988,ne=3.141592653589793,wl=6378245,xl=.006693421622965943,ir=class{static BD09ToGCJ02(e,t){let r=+e-.0065,s=+t-.006,a=Math.sqrt(r*r+s*s)-2e-5*Math.sin(s*Mt),o=Math.atan2(s,r)-3e-6*Math.cos(r*Mt),l=a*Math.cos(o),h=a*Math.sin(o);return[l,h]}static GCJ02ToBD09(e,t){t=+t,e=+e;let r=Math.sqrt(e*e+t*t)+2e-5*Math.sin(t*Mt),s=Math.atan2(t,e)+3e-6*Math.cos(e*Mt),a=r*Math.cos(s)+.0065,o=r*Math.sin(s)+.006;return[a,o]}static WGS84ToGCJ02(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];{let r=this.delta(e,t);return[e+r[0],t+r[1]]}}static GCJ02ToWGS84(e,t){if(t=+t,e=+e,this.out_of_china(e,t))return[e,t];{let r=[e,t],s=this.WGS84ToGCJ02(e,t),a=s[0]-e,o=s[1]-t;do s=this.WGS84ToGCJ02(r[0]-=a,r[1]-=o),a=s[0]-e,o=s[1]-t;while(Math.abs(a)>1e-7||Math.abs(o)>1e-7);return r}}static delta(e,t){let r=this.transformLng(e-105,t-35),s=this.transformLat(e-105,t-35),a=t/180*ne,o=Math.sin(a);o=1-xl*o*o;let l=Math.sqrt(o);return r=r*180/(wl/l*Math.cos(a)*ne),s=s*180/(wl*(1-xl)/(o*l)*ne),[r,s]}static transformLng(e,t){t=+t,e=+e;let r=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ne)+20*Math.sin(2*e*ne))*2/3,r+=(20*Math.sin(e*ne)+40*Math.sin(e/3*ne))*2/3,r+=(150*Math.sin(e/12*ne)+300*Math.sin(e/30*ne))*2/3,r}static transformLat(e,t){t=+t,e=+e;let r=-100+2*e+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*ne)+20*Math.sin(2*e*ne))*2/3,r+=(20*Math.sin(t*ne)+40*Math.sin(t/3*ne))*2/3,r+=(160*Math.sin(t/12*ne)+320*Math.sin(t*ne/30))*2/3,r}static out_of_china(e,t){return t=+t,e=+e,!(e>73.66&&e<135.05&&t>3.86&&t<53.55)}},we=ir;var rr=class n{constructor(e,t,r,s,a,o){this._lng=+e||0,this._lat=+t||0,this._alt=+r||0,this._heading=+s||0,this._pitch=+a||0,this._roll=+o||0}get lng(){return this._lng}set lng(e){this._lng=+e}get lat(){return this._lat}set lat(e){this._lat=+e}get alt(){return this._alt}set alt(e){this._alt=+e}get heading(){return this._heading}set heading(e){this._heading=+e}get pitch(){return this._pitch}set pitch(e){this._pitch=+e}get roll(){return this._roll}set roll(e){this._roll=+e}static fromArray(e){let t=new n;return Array.isArray(e)&&(t.lng=e[0]||0,t.lat=e[1]||0,t.alt=e[2]||0,t.heading=e[3]||0,t.pitch=e[4]||0,t.roll=e[5]||0),t}static fromString(e){let t=new n;if(e&&typeof e=="string"){let r=e.split(",");t=this.fromArray(r)}return t}static fromObject(e){return new n(e.lng,e.lat,e.alt,e.heading,e.pitch,e.roll)}static deserialize(e){let t=new n,r=JSON.parse(e);return r&&(t.lng=r.lng||0,t.lat=r.lat||0,t.alt=r.alt||0,t.heading=r.heading||0,t.pitch=r.pitch||0,t.roll=r.roll||0),t}serialize(){let e=new n(this._lng,this._lat,this._alt,this._heading,this._pitch,this._roll);return JSON.stringify(e)}distance(e){return!e||!(e instanceof n)?0:i.Cartesian3.distance(g.transformWGS84ToCartesian(this),g.transformWGS84ToCartesian(e))}clone(){let e=new n;return e.lng=this.lng||0,e.lat=this.lat||0,e.alt=this.alt||0,e.heading=this.heading||0,e.pitch=this.pitch||0,e.roll=this.roll||0,e}copy(){return this.clone()}toArray(){return[this.lng,this.lat,this.alt,this.heading,this.pitch,this.roll]}toString(){return`${this.lng},${this.lat},${this.alt},${this.heading},${this.pitch},${this.roll}`}toObject(){return{lng:this.lng,lat:this.lat,alt:this.alt,heading:this.heading,pitch:this.pitch,roll:this.roll}}},q=rr;var sr=class{static parsePosition(e){let t=new q;return e&&(typeof e=="string"?t=q.fromString(e):Array.isArray(e)?t=q.fromArray(e):!(Object(e)instanceof q)&&Object(e).hasOwnProperty("lng")&&Object(e).hasOwnProperty("lat")?t=q.fromObject(e):Object(e)instanceof q?t=e:Object(e)instanceof i.Cartesian3?t=g.transformCartesianToWGS84(e):Object(e)instanceof i.Cartographic&&(t=g.transformCartographicToWGS84(e))),t}static parsePositions(e){if(typeof e=="string"){if(e.indexOf("#")>=0)throw new Error("the positions invalid");e=e.split(";").filter(t=>!!t)}return e.map(t=>this.parsePosition(t))}static parsePointCoordToArray(e){return e=this.parsePosition(e),[e.lng,e.lat]}static parsePolylineCoordToArray(e){let t=[];return e=this.parsePositions(e),e.forEach(r=>{t.push([r.lng,r.lat])}),t}static parsePolygonCoordToArray(e,t=!1){let r=[];return e=this.parsePositions(e),e.forEach(s=>{r.push([s.lng,s.lat])}),t&&r.length>0&&r.push(r[0]),[r]}},y=sr;var mt={ADD:"add",REMOVE:"remove"},W={LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,MOUSE_MOVE:i.ScreenSpaceEventType.MOUSE_MOVE,WHEEL:i.ScreenSpaceEventType.WHEEL,MOUSE_OVER:"mouseover",MOUSE_OUT:"mouseout"},Cl={ADD_LAYER:"addLayer",REMOVE_LAYER:"removeLayer",ADD_EFFECT:"addEffect",REMOVE_EFFECT:"removeEffect",LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,MOUSE_MOVE:i.ScreenSpaceEventType.MOUSE_MOVE,WHEEL:i.ScreenSpaceEventType.WHEEL},N={CAMERA_MOVE_END:"cameraMoveEnd",CAMERA_CHANGED:"cameraChanged",PRE_UPDATE:"preUpdate",POST_UPDATE:"postUpdate",PRE_RENDER:"preRender",POST_RENDER:"postRender",MORPH_COMPLETE:"morphComplete",CLOCK_TICK:"clockTick",RENDER_ERROR:"renderError"},Ne={...mt,LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK,MOUSE_MOVE:i.ScreenSpaceEventType.MOUSE_MOVE,MOUSE_OVER:"mouseover",MOUSE_OUT:"mouseout",POSITION_UPDATE:"positionUpdate"},Ue={READY:"ready",TEX_READY:"texturesReady"},ie={INITIAL_TILES_LOADED:"initialTilesLoaded",ALL_TILES_LOADED:"allTilesLoaded ",LOAD_PROGRESS:"loadProgress ",TILE_FAILED:"tileFailed ",TILE_LOAD:"tileLoad",TILE_UNLOAD:"tileUnload",TILE_VISIBLE:"tileVisible"},ze=mt,Fe={...mt,LEFT_DOWN:i.ScreenSpaceEventType.LEFT_DOWN,LEFT_UP:i.ScreenSpaceEventType.LEFT_UP,CLICK:i.ScreenSpaceEventType.LEFT_CLICK,RIGHT_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN,RIGHT_UP:i.ScreenSpaceEventType.RIGHT_UP,RIGHT_CLICK:i.ScreenSpaceEventType.RIGHT_CLICK,DB_CLICK:i.ScreenSpaceEventType.LEFT_DOUBLE_CLICK},pe={...mt,POST_RENDER:"postRender",ACTIVATE:"activate",DEACTIVATE:"deactivate",RESET_TIME_LINE:"restTimeLine"},me={...mt,POST_RENDER:"postRender",RESET_TIME_LINE:"restTimeLine"},P={DRAW_START:"drawStart",DRAW_STOP:"drawStop",EDIT_START:"editStart",EDIT_STOP:"editEnd",DRAW_ANCHOR:"drawAnchor",CREATE_ANCHOR:"createAnchor",UPDATE_ANCHOR:"updateAnchor",ANCHOR_MOVING:"anchorMoving",EDIT_ANCHOR_STOP:"editAnchorStop",DELETE_ANCHOR:"deleteAnchor",CLEAR_ANCHOR:"clearAnchor"};var ar=class{constructor(e){this._types=e,this._cache={}}_on(e,t,r){let s=this.getEvent(e),a;return s&&t&&(a=s.addEventListener(t,r||this)),a}_off(e,t,r){let s=this.getEvent(e),a=!1;return s&&t&&(a=s.removeEventListener(t,r||this)),a}_fire(e,t){let r=this.getEvent(e);r&&r.raiseEvent(t)}_registerEvent(){Object.keys(this._types).forEach(e=>{let t=this._types[e];this._cache[t]=new i.Event})}on(e,t,r){return this._on(e,t,r)}once(e,t,r){let s=this._on(e,a=>{t(a),s&&s()},r)}off(e,t,r){return this._off(e,t,r)}fire(e,t){this._fire(e,t)}getEvent(e){return this._cache[e]||void 0}},X=ar;var or=class extends X{constructor(e,t={}){super(W),this._viewer=e,this._selected=void 0,this._enableEventPropagation=t.enableEventPropagation,this._enableMouseOver=t.enableMouseOver,this._enableMouseMovePick=t.enableMouseMovePick,this._registerEvent(),this._addDefaultEvent()}_registerEvent(){let e=new i.ScreenSpaceEventHandler(this._viewer.canvas);Object.keys(i.ScreenSpaceEventType).forEach(t=>{let r=i.ScreenSpaceEventType[t];this._cache[r]=new i.Event,e.setInputAction(s=>{this._cache[r].raiseEvent(s)},r)})}_addDefaultEvent(){this.on(this._types.LEFT_DOWN,this._leftDownHandler,this),this.on(this._types.LEFT_UP,this._leftUpHandler,this),this.on(this._types.CLICK,this._clickHandler,this),this.on(this._types.DB_CLICK,this._dbClickHandler,this),this.on(this._types.RIGHT_DOWN,this._rightDownHandler,this),this.on(this._types.RIGHT_UP,this._rightUpHandler,this),this.on(this._types.RIGHT_CLICK,this._rightClickHandler,this),this.on(this._types.MOUSE_MOVE,this._mouseMoveHandler,this),this.on(this._types.WHEEL,this._mouseWheelHandler,this)}_adjustPosition(e){let t=this._viewer.container.getBoundingClientRect(),r=this._viewer.container.offsetWidth/t.width,s=this._viewer.container.offsetHeight/t.height;return new i.Cartesian2(e.x*r,e.y*s)}_getMousePosition(e){let t=this._adjustPosition(e),r=this._viewer.scene,s,a,o,l;if(r.pickPositionSupported&&(s=r.pickPosition(t)),s){let h=i.Ellipsoid.WGS84.cartesianToCartographic(s);h&&(o={lng:i.Math.toDegrees(h.longitude),lat:i.Math.toDegrees(h.latitude),alt:h.height})}if(r.mode===i.SceneMode.SCENE3D&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)){let h=r.camera.getPickRay(t);a=r.globe.pick(h,r)}else a=r.camera.pickEllipsoid(t,i.Ellipsoid.WGS84);if(a){let h=i.Ellipsoid.WGS84.cartesianToCartographic(a);h&&(l={lng:i.Math.toDegrees(h.longitude),lat:i.Math.toDegrees(h.latitude),alt:h.height})}return{windowPosition:t,position:s,wgs84Position:o,surfacePosition:a,wgs84SurfacePosition:l}}_getMouseInfo(e){return{...this._getMousePosition(this._adjustPosition(e)),target:this._viewer.scene.pick(this._adjustPosition(e))}}_getDrillInfos(e){let t=[],s=this._viewer.scene.drillPick(e);return s&&s.length&&s.forEach(a=>{t.push(this._getTargetInfo(a))}),t}_getOverlayId(e){let t;return(e==null?void 0:e.id)instanceof i.Entity?t=e.id.overlayId:e instanceof i.Cesium3DTileFeature?t=e.tileset.overlayId:((e==null?void 0:e.primitive)instanceof i.Cesium3DTileset||e!=null&&e.primitive)&&(t=e.primitive.overlayId),t}_getTargetInfo(e){let t,r,s;return(e==null?void 0:e.id)instanceof i.Entity?(r=this._viewer.getLayers().filter(a=>a.layerId===e.id.layerId)[0],r!=null&&r.getOverlay&&(t=r.getOverlay(e.id.overlayId))):e instanceof i.Cesium3DTileFeature?(r=this._viewer.getLayers().filter(a=>a.layerId===e.tileset.layerId)[0],s=e,r!=null&&r.getOverlay&&(t=r.getOverlay(e.tileset.overlayId),s&&s.getPropertyNames&&s.getPropertyNames().forEach(o=>{t.attr[o]=s.getProperty(o)}))):(e==null?void 0:e.primitive)instanceof i.Cesium3DTileset?(r=this._viewer.getLayers().filter(a=>a.layerId===e.primitive.layerId)[0],r!=null&&r.getOverlay&&(t=r.getOverlay(e.primitive.overlayId))):e!=null&&e.primitive&&(r=this._viewer.getLayers().filter(a=>a.layerId===e.primitive.layerId)[0],r!=null&&r.getOverlay&&(t=r.getOverlay(e.primitive.overlayId))),{layer:r,overlay:t,feature:s,instanceId:e==null?void 0:e.instanceId}}_raiseEvent(e,t={}){var l;let r,s=this._getTargetInfo(t.target),a=s==null?void 0:s.overlay,o=s==null?void 0:s.layer;a!=null&&a.overlayEvent&&(r=a.overlayEvent.getEvent(e),r&&r.numberOfListeners>0&&r.raiseEvent({...s,...t})),(!r||r.numberOfListeners===0||this._enableEventPropagation)&&(o!=null&&o.layerEvent)&&(r=o.layerEvent.getEvent(e),r&&r.numberOfListeners>0&&r.raiseEvent({...s,...t})),(!r||r.numberOfListeners===0||this._eventPropagation)&&((l=this._viewer)!=null&&l.viewerEvent)&&(r=this._viewer.viewerEvent.getEvent(e),r&&r.numberOfListeners>0&&r.raiseEvent({...s,...t})),a!=null&&a.allowDrillPicking&&this._getDrillInfos(t.windowPosition).forEach(c=>{let d=c==null?void 0:c.overlay,u=c==null?void 0:c.layer;(d==null?void 0:d.overlayId)!==a.overlayId&&(d!=null&&d.overlayEvent)&&(r=d.overlayEvent.getEvent(e),(!r||r.numberOfListeners===0)&&(u!=null&&u.layerEvent)&&(r=u.layerEvent.getEvent(e)),r&&r.numberOfListeners>0&&r.raiseEvent({...c,...t}))})}_clickHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(W.CLICK,this._getMouseInfo(e.position))}_dbClickHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(W.DB_CLICK,this._getMouseInfo(e.position))}_rightClickHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(W.RIGHT_CLICK,this._getMouseInfo(e.position))}_mouseMoveHandler(e){if(!(e!=null&&e.endPosition))return!1;if(this._enableMouseMovePick){let t=this._getMouseInfo(e.endPosition);this._viewer.canvas.style.cursor=t.target?"pointer":"default",this._raiseEvent(W.MOUSE_MOVE,t),this._enableMouseOver&&(!this._selected||this._getOverlayId(this._selected.target)!==this._getOverlayId(t.target))&&(this._raiseEvent(W.MOUSE_OUT,this._selected),this._raiseEvent(W.MOUSE_OVER,t),this._selected=t)}else this._raiseEvent(W.MOUSE_MOVE,this._getMousePosition(this._adjustPosition(e.endPosition)))}_leftDownHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(W.LEFT_DOWN,this._getMouseInfo(e.position))}_leftUpHandler(e){this._raiseEvent(W.LEFT_UP,this._getMouseInfo(e.position))}_rightDownHandler(e){if(!(e!=null&&e.position))return!1;this._raiseEvent(W.RIGHT_DOWN,this._getMouseInfo(e.position))}_rightUpHandler(e){this._raiseEvent(W.RIGHT_UP,this._getMouseInfo(e.position))}_mouseWheelHandler(e){this._raiseEvent(W.WHEEL,{movement:e})}},nr=or;var lr=class extends X{constructor(){super(Cl),this._registerEvent()}},hr=lr;var cr=class extends X{constructor(e){super(N),this._camera=e.camera,this._scene=e.scene,this._clock=e.clock}on(e,t,r){let s;switch(e){case N.CAMERA_MOVE_END:s=this._camera.moveEnd.addEventListener(t,r||this);break;case N.CAMERA_CHANGED:s=this._camera.changed.addEventListener(t,r||this);break;case N.PRE_UPDATE:s=this._scene.preUpdate.addEventListener(t,r||this);break;case N.POST_UPDATE:s=this._scene.postUpdate.addEventListener(t,r||this);break;case N.PRE_RENDER:s=this._scene.preRender.addEventListener(t,r||this);break;case N.POST_RENDER:s=this._scene.postRender.addEventListener(t,r||this);break;case N.MORPH_COMPLETE:s=this._scene.morphComplete.addEventListener(t,r||this);break;case N.CLOCK_TICK:s=this._clock.onTick.addEventListener(t,r||this);break;case N.RENDER_ERROR:s=this._scene.renderError.addEventListener(t,r||this);break;default:break}return s}off(e,t,r){let s=!1;switch(e){case N.CAMERA_MOVE_END:s=this._camera.moveEnd.removeEventListener(t,r||this);break;case N.CAMERA_CHANGED:s=this._camera.changed.removeEventListener(t,r||this);break;case N.PRE_UPDATE:s=this._scene.preUpdate.removeEventListener(t,r||this);break;case N.POST_UPDATE:s=this._scene.postUpdate.removeEventListener(t,r||this);break;case N.PRE_RENDER:s=this._scene.preRender.removeEventListener(t,r||this);break;case N.POST_RENDER:s=this._scene.postRender.removeEventListener(t,r||this);break;case N.MORPH_COMPLETE:s=this._scene.morphComplete.removeEventListener(t,r||this);break;case N.CLOCK_TICK:s=this._clock.onTick.removeEventListener(t,r||this);break;case N.RENDER_ERROR:s=this._scene.renderError.removeEventListener(t,r||this);break;default:break}return s}},dr=cr;var pr=class extends X{constructor(){super(ze),this._registerEvent()}},mr=pr;var ur=class extends X{constructor(){super(Fe),this._registerEvent()}},fr=ur;var _r=class extends X{constructor(){super(Ne),this._registerEvent()}},gr=_r;var yr=class extends X{constructor(e){super(ie),this._tileset=e}on(e,t,r){return this._tileset.then(s=>{switch(e){case ie.INITIAL_TILES_LOADED:s.initialTilesLoaded.addEventListener(t,r||this);break;case ie.ALL_TILES_LOADED:s.allTilesLoaded.addEventListener(t,r||this);break;case ie.LOAD_PROGRESS:s.loadProgress.addEventListener(t,r||this);break;case ie.TILE_FAILED:s.tileFailed.addEventListener(t,r||this);break;case ie.TILE_LOAD:s.tileLoad.addEventListener(t,r||this);break;case ie.TILE_UNLOAD:s.tileUnload.addEventListener(t,r||this);break;case ie.TILE_VISIBLE:s.tileVisible.addEventListener(t,r||this);break;default:break}}),null}off(e,t,r){return this._tileset.then(s=>{switch(e){case ie.INITIAL_TILES_LOADED:s.initialTilesLoaded.removeEventListener(t,r||this);break;case ie.ALL_TILES_LOADED:s.allTilesLoaded.removeEventListener(t,r||this);break;case ie.LOAD_PROGRESS:s.loadProgress.removeEventListener(t,r||this);break;case ie.TILE_FAILED:s.tileFailed.removeEventListener(t,r||this);break;case ie.TILE_LOAD:s.tileLoad.removeEventListener(t,r||this);break;case ie.TILE_UNLOAD:s.tileUnload.removeEventListener(t,r||this);break;case ie.TILE_VISIBLE:s.tileVisible.removeEventListener(t,r||this);break;default:break}}),!0}},vr=yr;var wr=class extends X{constructor(e){super(Ue),this._model=e}on(e,t,r){return this._model.then(s=>{switch(e){case Ue.READY:s.readyEvent.addEventListener(t,r||this);break;case Ue.TEX_READY:s.texturesReadyEvent.addEventListener(t,r||this);break;default:break}}),null}off(e,t,r){return this._model.then(s=>{switch(e){case Ue.READY:s.readyEvent.removeEventListener(t,r||this);break;case Ue.TEX_READY:s.texturesReadyEvent.removeEventListener(t,r||this);break;default:break}}),!0}},xr=wr;var Cr=class extends X{constructor(){super(pe),this._registerEvent()}},Tr=Cr;var Er=class extends X{constructor(){super(me),this._registerEvent()}},Pr=Er;var Mr=class extends X{constructor(){super(P),this._registerEvent()}},ut=Mr;var Ru={LEFT_MIDDLE:0,LEFT_RIGHT:1},Ge=Ru;var ku="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""),br=class{static uuid(e="D"){let t=[];t[8]=t[13]=t[18]=t[23]="-",t[14]="4";let r;for(let s=0;s<36;s++)t[s]||(r=0|Math.random()*16,t[s]=ku[s===19?r&3|8:r]);return e+"-"+t.join("")}static merge(e,...t){let r,s,a,o;for(s=0,a=t.length;s<a;s++){o=t[s];for(r in o)e[r]=o[r]}return e}static splitWords(e){return this.trim(e).split(/\s+/)}static setOptions(e,t){e.hasOwnProperty("options")||(e.options=e.options?Object.create(e.options):{});for(let r in t)e.options[r]=t[r];return e.options}static formatNum(e,t){let r=Math.pow(10,t===void 0?6:t);return Math.round(e*r)/r}static trim(e){return e.trim?e.trim():e.replace(/^\s+|\s+$/g,"")}static getStrLength(e){}static template(e,t,r=!1){return!e||typeof e!="string"?"":e.replace(/\{([^{}]+)\}/g,(s,a)=>{let o=a.trim();return t&&typeof t=="object"&&t.hasOwnProperty(o)?t[o]:r?"":s})}static emptyImageUrl(){return function(){return"data:image/gif;base64,R0lGODlhAQABAAD/ACwAAAAAAQABAAACADs="}()}static checkPosition(e){return e&&e.hasOwnProperty("_lng")&&e.hasOwnProperty("_lat")&&e.hasOwnProperty("_alt")}static debounce(e,t){let r=null;return function(){r&&clearTimeout(r),r=setTimeout(e,t)}}static throttle(e,t){let r=!0;return function(){if(!r)return!1;r=!1,setTimeout(()=>{e(),r=!0},t)}}static dataURLtoBlob(e){let t=e.split(","),r=t[0].match(/:(.*?);/)[1],s=atob(t[1]),a=s.length,o=new Uint8Array(a);for(;a--;)o[a]=s.charCodeAt(a);return new Blob([o],{type:r})}static isPromise(e){return Promise.resolve(e)===e}},C=br;var Ar=class{static get(e){return typeof e=="string"?document.getElementById(e):e}static getStyle(e,t){let r=e.style[t]||e.currentStyle&&e.currentStyle[t];if((!r||r==="auto")&&document.defaultView){let s=document.defaultView.getComputedStyle(e,null);r=s?s[t]:null}return r==="auto"?null:r}static create(e,t,r=null){let s=document.createElement(e);return s.className=t||"",r&&r.appendChild(s),s}static remove(e){let t=e.parentNode;t&&t.removeChild(e)}static empty(e){for(;e.firstChild;)e.removeChild(e.firstChild)}static hasClass(e,t){if(e.classList!==void 0)return e.classList.contains(t);let r=this.getClass(e);return r.length>0&&new RegExp("(^|\\s)"+t+"(\\s|$)").test(r)}static addClass(e,t){if(e.classList!==void 0){let r=C.splitWords(t);for(let s=0,a=r.length;s<a;s++)e.classList.add(r[s])}else if(!this.hasClass(e,t)){let r=this.getClass(e);this.setClass(e,(r?r+" ":"")+t)}}static removeClass(e,t){e.classList!==void 0?e.classList.remove(t):this.setClass(e,C.trim((" "+this.getClass(e)+" ").replace(" "+t+" "," ")))}static setClass(e,t){e.className.baseVal===void 0?e.className=t:e.className.baseVal=t}static getClass(e){return e.correspondingElement&&(e=e.correspondingElement),e.className.baseVal===void 0?e.className:e.className.baseVal}static createSvg(e,t,r,s){let a=document.createElementNS("http://www.w3.org/2000/svg","svg:svg");a.setAttribute("class","svg-path"),a.setAttribute("width",e),a.setAttribute("height",t),a.setAttribute("viewBox",`0 0 ${e} ${t}`);let o=document.createElementNS("http://www.w3.org/2000/svg","path");return o.setAttribute("d",r),a.appendChild(o),s&&s.appendChild(a),a}static parseDom(e,t,r){t=t!=null?t:!1;let s=document.createElement("div");return s.className=r||"",s.innerHTML=e,t?s:s.childNodes}static enterFullscreen(e){e&&(e.requestFullscreen?e.requestFullscreen():e.msRequestFullscreen?e.msRequestFullscreen():e.mozRequestFullScreen?e.mozRequestFullScreen():e.webkitRequestFullscreen&&e.webkitRequestFullscreen())}static exitFullscreen(){document.exitFullscreen?document.exitFullscreen():document.msExitFullscreen?document.msExitFullscreen():document.mozCancelFullScreen?document.mozCancelFullScreen():document.webkitExitFullscreen&&document.webkitExitFullscreen()}static createVideo(e,t,r=null){let s=this.create("video",t,r),a=this.create("source","",s);a.setAttribute("src",e),a.setAttribute("type","video/map4");let o=this.create("source","",s);return o.setAttribute("src",e),o.setAttribute("type","video/quicktime"),s}},D=Ar;var Sr=Math.PI*2,bt=100,Ir=1e-4,Dr=class{static distance(e,t){return Math.sqrt(Math.pow(e[0]-t[0],2)+Math.pow(e[1]-t[1],2))}static wholeDistance(e){let t=0;for(let r=0;r<e.length-1;r++)t+=this.distance(e[r],e[r+1]);return t}static getBaseLength(e){return Math.pow(this.wholeDistance(e),.99)}static mid(e,t){return[(e[0]+t[0])/2,(e[1]+t[1])/2]}static getCircleCenterOfThreePoints(e,t,r){let s=[(e[0]+t[0])/2,(e[1]+t[1])/2],a=[s[0]-e[1]+t[1],s[1]+e[0]-t[0]],o=[(e[0]+r[0])/2,(e[1]+r[1])/2],l=[o[0]-e[1]+r[1],o[1]+e[0]-r[0]];return this.getIntersectPoint(s,a,o,l)}static getIntersectPoint(e,t,r,s){let a,o,l,h;return e[1]===t[1]?(l=(s[0]-r[0])/(s[1]-r[1]),a=l*(e[1]-r[1])+r[0],o=e[1],[a,o]):r[1]===s[1]?(h=(t[0]-e[0])/(t[1]-e[1]),a=h*(r[1]-e[1])+e[0],o=r[1],[a,o]):(h=(t[0]-e[0])/(t[1]-e[1]),l=(s[0]-r[0])/(s[1]-r[1]),o=(h*e[1]-e[0]-l*r[1]+r[0])/(h-l),a=h*o-h*e[1]+e[0],[a,o])}static getAzimuth(e,t){let r,s=Math.asin(Math.abs(t[1]-e[1])/this.distance(e,t));return t[1]>=e[1]&&t[0]>=e[0]?r=s+Math.PI:t[1]>=e[1]&&t[0]<e[0]?r=Sr-s:t[1]<e[1]&&t[0]<e[0]?r=s:t[1]<e[1]&&t[0]>=e[0]&&(r=Math.PI-s),r}static getAngleOfThreePoints(e,t,r){let s=this.getAzimuth(t,e)-this.getAzimuth(t,r);return s<0?s+Sr:s}static isClockWise(e,t,r){return(r[1]-e[1])*(t[0]-e[0])>(t[1]-e[1])*(r[0]-e[0])}static getPointOnLine(e,t,r){let s=t[0]+e*(r[0]-t[0]),a=t[1]+e*(r[1]-t[1]);return[s,a]}static getCubicValue(e,t,r,s,a){e=Math.max(Math.min(e,1),0);let o=1-e,l=e*e,h=l*e,c=o*o,d=c*o,u=d*t[0]+3*c*e*r[0]+3*o*l*s[0]+h*a[0],_=d*t[1]+3*c*e*r[1]+3*o*l*s[1]+h*a[1];return[u,_]}static getThirdPoint(e,t,r,s,a){let o=this.getAzimuth(e,t),l=a?o+r:o-r,h=s*Math.cos(l),c=s*Math.sin(l);return[t[0]+h,t[1]+c]}static getArcPoints(e,t,r,s){let a,o,l=[],h=s-r;h=h<0?h+Sr:h;for(let c=0;c<=bt;c++){let d=r+h*c/bt;a=e[0]+t*Math.cos(d),o=e[1]+t*Math.sin(d),l.push([a,o])}return l}static getBisectorNormals(e,t,r,s){let a=this.getNormal(t,r,s),o=Math.sqrt(a[0]*a[0]+a[1]*a[1]),l=a[0]/o,h=a[1]/o,c=this.distance(t,r),d=this.distance(r,s),u,_,m,p,T;return o>Ir?this.isClockWise(t,r,s)?(u=e*c,_=r[0]-u*h,m=r[1]+u*l,T=[_,m],u=e*d,_=r[0]+u*h,m=r[1]-u*l,p=[_,m]):(u=e*c,_=r[0]+u*h,m=r[1]-u*l,T=[_,m],u=e*d,_=r[0]-u*h,m=r[1]+u*l,p=[_,m]):(_=r[0]+e*(t[0]-r[0]),m=r[1]+e*(t[1]-r[1]),T=[_,m],_=r[0]+e*(s[0]-r[0]),m=r[1]+e*(s[1]-r[1]),p=[_,m]),[T,p]}static getNormal(e,t,r){let s=e[0]-t[0],a=e[1]-t[1],o=Math.sqrt(s*s+a*a);s/=o,a/=o;let l=r[0]-t[0],h=r[1]-t[1],c=Math.sqrt(l*l+h*h);l/=c,h/=c;let d=s+l,u=a+h;return[d,u]}static getCurvePoints(e,t){let s=[this.getLeftMostControlPoint(e,t)],a,o,l,h;for(let u=0;u<t.length-2;u++)a=t[u],o=t[u+1],l=t[u+2],h=this.getBisectorNormals(e,a,o,l),s=s.concat(h);let c=this.getRightMostControlPoint(e,t);s.push(c);let d=[];for(let u=0;u<t.length-1;u++){a=t[u],o=t[u+1],d.push(a);for(let _=0;_<bt;_++){let m=this.getCubicValue(_/bt,a,s[u*2],s[u*2+1],o);d.push(m)}d.push(o)}return d}static getLeftMostControlPoint(e,t){let r=t[0],s=t[1],a=t[2],l=this.getBisectorNormals(0,r,s,a)[0],h=this.getNormal(r,s,a),c=Math.sqrt(h[0]*h[0]+h[1]*h[1]),d,u;if(c>Ir){let _=this.mid(r,s),m=r[0]-_[0],p=r[1]-_[1],v=2/this.distance(r,s),E=-v*p,M=v*m,I=E*E-M*M,A=2*E*M,L=M*M-E*E,H=l[0]-_[0],b=l[1]-_[1];d=_[0]+I*H+A*b,u=_[1]+A*H+L*b}else d=r[0]+e*(s[0]-r[0]),u=r[1]+e*(s[1]-r[1]);return[d,u]}static getRightMostControlPoint(e,t){let r=t.length,s=t[r-3],a=t[r-2],o=t[r-1],h=this.getBisectorNormals(0,s,a,o)[1],c=this.getNormal(s,a,o),d=Math.sqrt(c[0]*c[0]+c[1]*c[1]),u,_;if(d>Ir){let m=this.mid(a,o),p=o[0]-m[0],T=o[1]-m[1],E=2/this.distance(a,o),M=-E*T,I=E*p,A=M*M-I*I,L=2*M*I,H=I*I-M*M,b=h[0]-m[0],R=h[1]-m[1];u=m[0]+A*b+L*R,_=m[1]+L*b+H*R}else u=o[0]+e*(a[0]-o[0]),_=o[1]+e*(a[1]-o[1]);return[u,_]}static getBezierPoints(e){if(e.length<=2)return e;let t=[],r=e.length-1;for(let s=0;s<=1;s+=.01){let a=0,o=0;for(let l=0;l<=r;l++){let h=this.getBinomialFactor(r,l),c=Math.pow(s,l),d=Math.pow(1-s,r-l);a+=h*c*d*e[l][0],o+=h*c*d*e[l][1]}t.push([a,o])}return t.push(e[r]),t}static getBinomialFactor(e,t){return this.getFactorial(e)/(this.getFactorial(t)*this.getFactorial(e-t))}static getFactorial(e){if(e<=1)return 1;if(e===2)return 2;if(e===3)return 6;if(e===4)return 24;if(e===5)return 120;let t=1;for(let r=1;r<=e;r++)t*=r;return t}static getQBSplinePoints(e){if(e.length<=2)return e;let t=2,r=[],s=e.length-t-1;r.push(e[0]);for(let a=0;a<=s;a++)for(let o=0;o<=1;o+=.05){let l=0,h=0;for(let c=0;c<=t;c++){let d=this.getQuadricBSplineFactor(c,o);l+=d*e[a+c][0],h+=d*e[a+c][1]}r.push([l,h])}return r.push(e[e.length-1]),r}static getQuadricBSplineFactor(e,t){return e===0?Math.pow(t-1,2)/2:e===1?(-2*Math.pow(t,2)+2*t+1)/2:e===2?Math.pow(t,2)/2:0}},x=Dr;var Ou=!0;function At(...n){console.warn(...n)}function Ve(...n){Ou&&console.error(...n)}var Lr=class n{static getTransFun(e,t){if(!e||!t||(e=n.crsName2FunName(e),t=n.crsName2FunName(t),t===e))return!1;let r=e+"2"+t;return ft[r]?ft[r]:!1}static crsName2FunName(e){switch(e){case"GCJ02":return"gcj";case"BD09":return"bd";case"WGS84":default:return"wgs"}}static getPositionValue(e,t=i.JulianDate.now()){if(!e)return e;let r;return e instanceof i.Cartesian3?r=e:e._value&&e._value instanceof i.Cartesian3?r=e._value:typeof e.getValue=="function"&&(r=e.getValue(t||i.JulianDate.now())),r}static getMaxHeight(e,t=0){if(e==null||e.length===0)return t;for(let r=0;r<e.length;r++){let s=B.parse(e[r]);r===0&&(t=s.alt),s.alt>t&&(t=s.alt)}return C.formatNum(t,B.FormatAltLength)}static getMinHeight(e,t=0){if(e==null||e.length===0)return t;for(let r=0;r<e.length;r++){let s=i.Cartographic.fromCartesian(e[r]);(r===0||s.height<t)&&(t=s.height)}return C.formatNum(t,B.FormatAltLength)}static addPositionsHeight(e,t=0){if(t=Number(t),isNaN(t)||t===0)return e;if(Array.isArray(e)){let r=[];for(let s=0;s<e.length;s++){let a=i.Cartographic.fromCartesian(e[s]),o=i.Cartesian3.fromRadians(a.longitude,a.latitude,a.height+t);r.push(o)}return r}else{let r=i.Cartographic.fromCartesian(e);return i.Cartesian3.fromRadians(r.longitude,r.latitude,r.height+t)}}static setPositionsHeight(e,t=0){if(!e)return e;if(Array.isArray(e)){let r=[];for(let s=0;s<e.length;s++){let a=i.Cartographic.fromCartesian(e[s]),o=i.Cartesian3.fromRadians(a.longitude,a.latitude,t);r.push(o)}return r}else{let r=i.Cartographic.fromCartesian(e);return i.Cartesian3.fromRadians(r.longitude,r.latitude,t)}}static getHeight(e,t,r={}){var o;let s=B.toCartographic(t),a;if(e.getHeight?a=e.getHeight(s,r?r.heightReference:0):a=e.globe.getHeight(s),i.defined(a)&&a>((o=r?r.min:0)!=null?o:-999))return a;if(r&&r.original)return s.height}static pick3DTileset(e,t){if(!t)return null;t instanceof i.Cartesian3&&(t=[t]);for(let r=0,s=t.length;r<s;++r){let a=t[r],o=i.SceneTransforms.worldToWindowCoordinates(e,a);if(!i.defined(o))continue;let l=e.pick(o,10,10);if(i.defined(l)&&i.defined(l.primitive)&&l.primitive instanceof i.Cesium3DTileset)return l.primitive}return null}static getSurfaceHeight(e,t,r={}){return r.scene=e,r.position=t,new St(r).start()}static getSurfaceTerrainHeight(e,t){let r={scene:e,position:t,has3dtiles:!1};return new St(r).start()}static getSurfacePosition(e,t,r={}){var o;if(!t)return t;let s=B.toCartographic(t),a=n.getHeight(e,s,r);return!i.defined(a)||((o=r.greater)==null||o)&&a<s.height?t:(i.defined(r.maxHeight)&&(a=Math.min(a,r.maxHeight)),(r.heightReference===i.HeightReference.RELATIVE_TO_GROUND||r.heightReference===i.HeightReference.RELATIVE_TO_TERRAIN||r.heightReference===i.HeightReference.RELATIVE_TO_3D_TILE)&&(s.height+=a),i.Cartesian3.fromRadians(s.longitude,s.latitude,a))}static getCurrentMousePosition(e,t,r){let s;if(e.onlyVertexPosition){if(!e.vertexAdsorption)return e.vertexAdsorption=new VertexAdsorption(e),s=e.vertexAdsorption.pick(t,16,16),s}else e.vertexAdsorption&&e.vertexAdsorption.clear();let a;try{a=e.pick(t,5,5)}catch(o){At("getCurrentMousePosition: scene.pick \u62FE\u53D6\u65F6\u5F02\u5E38",o)}if(e.resultSupported&&!e.onlyPickTerrainPosition&&i.defined(a)){let o=n.hasPickedModel(a,r);if(o){if((o.billboard||o.point||o.label)&&!o.ellipse&&!o.model&&!o.ellipsoid)return n.getPositionValue(o.position);if(o.show){if(o.show=!1,e.requestRender(),s=n.getCurrentMousePosition(e,t,r),o.show=!0,s)return s;if(s=n._geetTargetMousePosition(e,t,a),i.defined(s))return s}if(!e.globe.show&&(s=n._geetTargetMousePosition(e,t,a),i.defined(s)))return s}else{if(i.defined(a.id)){let l=a.id;if((l.billboard||l.point||l.label)&&!l.ellipse&&!l.model&&!l.ellipsoid)return n.getPositionValue(l.position)}if(s=n._geetTargetMousePosition(e,t,a),i.defined(s))return s}}if(!e.onlyPickTerrainPosition&&e.onlyPickModelPosition)return s;if(e.mode===i.SceneMode.SCENE3D){let o=e.camera.getPickRay(t);s=e.globe.pick(o,e),!s&&(s=e.camera.pickEllipsoid(t,e.globe.ellipsoid))}else s=e.camera.pickEllipsoid(t,e.globe.ellipsoid);return i.defined(s)&&e.camera.positionCartographic.height<1e4&&i.Cartographic.fromCartesian(s).height<-5e3?null:s}static _geetTargetMousePosition(e,t,r){let s=e.result(t);if(i.defined(s)){let a=i.Cartographic.fromCartesian(s);if(a.height>=0||!i.defined(r?r.id:0)&&a.height>=-5e3)return s}}static hasPickedModel(e,t){if(i.defined(e.id)){let r=e.id;if(r._noMousePick||t&&r===t)return r}if(i.defined(e.primitive)){let r=e.primitive;if(r._noMousePick||t&&r===t)return r}if(i.defined(e.tileset)){let r=e.tileset;if(r._noMousePick||t&&r===t)return r}return null}static getCurrentMouseTerrainPosition(e,t){let r;if(e.mode===i.SceneMode.SCENE3D){let s=e.camera.getPickRay(t);r=e.globe.pick(s,e),r||(r=e.camera.pickEllipsoid(t,e.globe.ellipsoid))}else r=e.camera.pickEllipsoid(t,e.globe.ellipsoid);return r}static getMidpoint(e,t,r=.5){if(!t||!e)return;let s=B.toCartographic(e),a=B.toCartographic(t),o=(s.height+a.height)/2,l=new i.EllipsoidGeodesic(s,a).interpolateUsingFraction(r);return i.Cartesian3.fromRadians(l.longitude,l.latitude,o)}static isRepeatPoint(e,t){return!t||!e?!1:Math.abs(e.x-t.x)<.1&&Math.abs(e.y-t.y)<.1&&Math.abs(e.z-t.z)<.1}static getRotateCenterPoint(e,t,r){let s=i.Cartographic.fromCartesian(e);s.height=0;let a=i.Cartographic.toCartesian(s),o=i.Cartesian3.subtract(a,e,new i.Cartesian3);o=i.Cartesian3.normalize(o,new i.Cartesian3);let l=i.Quaternion.fromAxisAngle(o,i.Math.toRadians(r)),h=i.Matrix3.fromQuaternion(l),c=i.Matrix4.fromRotationTranslation(h),d=i.Cartesian3.subtract(t,e,new i.Cartesian3),u=i.Matrix4.multiplyByPoint(c,d,new i.Cartesian3);return i.Cartesian3.add(u,e,new i.Cartesian3)}static getOnLinePointByLen(e,t,r,s){let a=i.Transforms.eastNorthUpToFixedFrame(e),o=i.Matrix4.inverse(a,new i.Matrix4);e=i.Matrix4.multiplyByPoint(o,e,new i.Cartesian3),t=i.Matrix4.multiplyByPoint(o,t,new i.Cartesian3);let l=i.Cartesian3.subtract(t,e,new i.Cartesian3),h=i.Cartesian3.distance(e,t),c=r/h;s&&(c+=1);let d=i.Cartesian3.multiplyByScalar(l,c,new i.Cartesian3);return i.Matrix4.multiplyByPoint(a,d,new i.Cartesian3)}static getPositionByHprAndOffset(e,t,r,s,a){e=B.toCartesian(e),!r&&(r=new i.HeadingPitchRoll);let o=i.Transforms.headingPitchRollQuaternion(e,r,s,a),l=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(o,new i.Matrix3),e,new i.Matrix4);return i.Matrix4.multiplyByPoint(l,t,new i.Cartesian3)}static getPositionByDirectionAndLen(e,t,r){e=B.toCartesian(e);let s=i.Transforms.eastNorthUpToFixedFrame(e),a=i.Matrix3.fromRotationZ(i.Math.toRadians(360-(t||0))),o=i.Matrix4.fromRotationTranslation(a);return i.Matrix4.multiply(s,o,s),i.Matrix4.multiplyByPoint(s,new i.Cartesian3(r,0,0),new i.Cartesian3)}static getPositionByHprAndLen(e,t,r){e=B.toCartesian(e);let s=i.Transforms.headingPitchRollQuaternion(e,t),a=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(s,new i.Matrix3),e,new i.Matrix4);return i.Matrix4.multiplyByPoint(a,new i.Cartesian3(0,0,-r),new i.Cartesian3)}static getRayEarthPosition(e,t,r,s,a){if(!e||!t)return;t instanceof i.HeadingPitchRoll&&(t=i.Transforms.headingPitchRollQuaternion(e,t,s,a));let o=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(t,new i.Matrix3),e,new i.Matrix4);return n.getRayEarthPositionByMatrix(o,r,s)}static getRayEarthPositionByMatrix(e,t,r){let s=new i.Cartesian3,a=new i.Ray;i.Matrix4.multiplyByPoint(e,i.Cartesian3.ZERO,s),s.clone(a.origin);let o=new i.Cartesian3(0,0,t?-100:100);return n.extend2Earth(o,e,a,r)}extend2Earth(e,t,r,s){s=s||i.Ellipsoid.WGS84;let a=i.Matrix4.multiplyByPoint(t,e,new i.Cartesian3);i.Cartesian3.subtract(a,r.origin,r.direction),i.Cartesian3.normalize(r.direction,r.direction);let o=i.IntersectionTests.rayEllipsoid(r,s);if(!o)return;let l=o.start>0?o.start:o.stop,h=i.Ray.getPoint(r,l,new i.Cartesian3);if(h)try{i.Cartographic.fromCartesian(h,null,new i.Cartographic)}catch{return}return h}static getHeadingPitchRollByOrientation(e,t,r,s){if(!i.defined(t)||!i.defined(e))return new i.HeadingPitchRoll;let a=i.Matrix4.fromRotationTranslation(i.Matrix3.fromQuaternion(t,new i.Matrix3),e,new i.Matrix4);return n.getHeadingPitchRollByMatrix(a,r,s)}static getHeadingPitchRollByMatrix(e,t,r,s){return i.Transforms.fixedFrameToHeadingPitchRoll(e,t,r,s)}static getHeadingPitchRollForLine(e,t,r){e=B.toCartesian(e),t=B.toCartesian(t);let s=i.Ellipsoid.WGS84,a=new i.Cartesian3,o=new i.Matrix4,l=new i.Matrix3,h=i.Cartesian3.normalize(i.Cartesian3.subtract(t,e,a),a);i.Transforms.rotationMatrixFromPositionVelocity(e,h,s,l);let c=i.Matrix4.fromRotationTranslation(l,e,o);return r?i.Matrix4.multiplyTransformation(c,i.Axis.Z_UP_TO_X_UP,c):i.Matrix4.multiplyTransformation(c,i.Axis.X_UP_TO_Z_UP,c),i.Transforms.fixedFrameToHeadingPitchRoll(c,s)}static getReflectVector(e,t){let r=t.clone(),s=e.clone(),a=2*i.Cartesian3.dot(e,t);return i.Cartesian3.multiplyByScalar(t,a,r),i.Cartesian3.subtract(e,r,s)}static getPropertyIndex(e,t,r){let s=e&&e.property,a=s&&s.times,o=a.length;if(o===0)return{index:0};let l,h=i.Cartesian3,c=s.values,d=i.binarySearch(a,t,i.JulianDate.compare);if(d<0){if(d=~d,d===0){let b=a[d];if(l=s.backwardExtrapolationDuration,s.backwardExtrapolationType===i.ExtrapolationType.NONE||l!==0&&i.JulianDate.secondsDifference(b,t)>l)return{index:d};if(s.backwardExtrapolationType===i.ExtrapolationType.HOLD)return{position:h.unpack(c,0,r),index:d}}if(d>=o){d=o-1;let b=a[d];if(l=s.forwardExtrapolationDuration,s.forwardExtrapolationType===i.ExtrapolationType.NONE||l!==0&&i.JulianDate.secondsDifference(t,b)>l)return{index:d};if(s.forwardExtrapolationType===i.ExtrapolationType.HOLD)return d=o-1,{position:h.unpack(c,d*h.packedLength,r),index:d}}let u=s.xTable,_=s.yTable,m=s.interpolationAlgorithm,p=s.packedInterpolationLength,T=s.inputOrder;if(s.updateTableLength){s.updateTableLength=!1;let b=Math.min(m.getRequiredDataPoints(s.interpolationDegree,T),o);b!==s.numberOfPoints&&(s._numberOfPoints=b,u.length=b,_.length=b*p)}let v=s.numberOfPoints-1;if(v<1)return d=0,{index:d};let E=0,M=o-1;if(M-E+1>=v+1){let b=d-(v/2|0)-1;b<E&&(b=E);let R=b+v;R>M&&(R=M,b=R-v,b<E&&(b=E)),E=b,M=R}let A=M-E+1;for(let b=0;b<A;++b)u[b]=i.JulianDate.secondsDifference(a[E+b],a[j]);if(i.defined(h.convertPackedArrayForInterpolation))h.convertPackedArrayForInterpolation(c,E,M,_);else{let b=0,R=s.packedLength,z=E*R,O=(M+1)*R;for(;z<O;)_[b]=c[z],z++,b++}let L=i.JulianDate.secondsDifference(t,a[M]),H;if(T===0||!i.defined(m.interpolate))H=m.interpolateOrderZero(L,u,_,p,s.interpolationResult);else{let b=Math.floor(p/(T+1));H=m.interpolate(L,u,_,b,T,T,s.interpolationResult)}d=E;for(let b=E;b<=M;b++)if(i.JulianDate.compare(t,a[b])<=0){d=b-1;break}return i.defined(h.unpackInterpolationResult)?{position:h.unpackInterpolationResult(H,c,E,M,r),index:d}:{position:h.unpack(H,0,r),index:d}}return{position:h.unpack(c,d*s.packedLength,r),index:d}}},be=Lr;var Rr=class n{static degree2dms(e){let t=1;e<0&&(t=-1),e=Math.abs(e);let r=Math.floor(e),s=Math.floor((e-r)*60),a=Math.round((e-r)*3600%60);return a===60&&(s+=1,a=0),s===60&&(r+=1,s=0),r*=t,{degree:r,minute:s,second:a,str:r+"\xB0 "+s+"' "+a+'"'}}static dms2degree(e,t,r){let s=Math.abs(e)+t/60+r/3600;return e<0&&(s*=-1),s}static getCGCS2000EPSGByLng(e,t,r=!0){let s;if(t){let a=parseInt(e/6)+1;if(a<13||a>23)return;r?s=a+4478:s=a+4489}else{let a=parseInt((e-1.5)/3)+1;if(a<25||a>45)return;r?s=a+4488:s=a+4509}return"EPSG:"+s}static getCGCS2000EPSGByX(e){let t=parseInt(e.toString().slice(0,2));return t>=13&&t<=23?"EPSG:"+(t+4478):t>=25&&t<=45?"EPSG:"+(t+4488):void 0}static cartesian2lonlat(e,t){return B.toArray(e,t)}static cartesians2lonlats(e,t){return Qe.toArray(e,t)}static cartesian2mercator(e){return e?B.fromCartesian(e).toMercator():null}static cartesians2mercators(e){let t=[];for(let r=0;r<e.length;r++){let s=n.cartesian2mercator(e[r]);s&&t.push(s)}return t}static lonlat2cartesian(e,t=0){return!e||e.length<2?null:i.Cartesian3.fromDegrees(e[0],e[1],e[2]||t)}static lonlats2cartesians(e,t){let r=[];for(let s=0;s<e.length;s++){let a=e[s];if(Array.isArray(a[0])){let o=n.lonlats2cartesians(a,t);o&&o.length>0&&r.push(o)}else{let o=n.lonlat2cartesian(a,t);o&&r.push(o)}}return r}static lonlat2mercator(e){return B.fromArray(e).toMercator()}static lonlats2mercators(e){let t=[];for(let r=0;r<e.length;r++){let s=n.lonlat2mercator(e[r]);t.push(s)}return t}static mercator2cartesian(e,t){if(isNaN(e[0])||isNaN(e[1]))return null;let r=B.fromMercator(e);return i.defined(t)&&(r.alt=t),r.toCartesian()}static mercators2cartesians(e,t){let r=[];for(let s=0;s<e.length;s++){let a=n.mercator2cartesian(e[s],t);a&&r.push(a)}return r}static mercator2lonlat(e){return B.fromMercator(e).toArray()}static mercators2lonlats(e){let t=[];for(let r=0;r<e.length;r++){let s=n.mercator2lonlat(e[r]);t.push(s)}return t}static bd2gcj(e){let t=Number(e[0]),r=Number(e[1]),s=t-.0065,a=r-.006,o=Math.sqrt(s*s+a*a)-2e-5*Math.sin(a*52.35987755982988),l=Math.atan2(a,s)-3e-6*Math.cos(s*52.35987755982988),h=o*Math.cos(l),c=o*Math.sin(l);return h=Number(h.toFixed(6)),c=Number(c.toFixed(6)),[h,c]}static gcj2bd(e){let t=Number(e[0]),r=Number(e[1]),s=Math.sqrt(t*t+r*r)+2e-5*Math.sin(r*52.35987755982988),a=Math.atan2(r,t)+3e-6*Math.cos(t*52.35987755982988),o=s*Math.cos(a)+.0065,l=s*Math.sin(a)+.006;return o=Number(o.toFixed(6)),l=Number(l.toFixed(6)),[o,l]}static wgs2gcj(e){let t=Number(e[0]),r=Number(e[1]);if(n.out_of_china(t,r))return[t,r];{let s=n.transformlat(t-105,r-35),a=n.transformlng(t-105,r-35),o=r/180*Math.PI,l=Math.sin(o);l=1-.00669342162296594*l*l;let h=Math.sqrt(l);s=s*180/(6335552717000426e-9/(l*h)*Math.PI),a=a*180/(6378245/h*Math.cos(o)*Math.PI);let c=r+s,d=t+a;return d=Number(d.toFixed(6)),c=Number(c.toFixed(6)),[d,c]}}static transformlat(e,t){let r=-100+2*e+3*t+.2*t*t+.1*e*t+.2*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*Math.PI)+20*Math.sin(2*e*Math.PI))*2/3,r+=(20*Math.sin(t*Math.PI)+40*Math.sin(t/3*Math.PI))*2/3,r+=(160*Math.sin(t/12*Math.PI)+320*Math.sin(t*Math.PI/30))*2/3,r}static transformlng(e,t){let r=300+e+2*t+.1*e*e+.1*e*t+.1*Math.sqrt(Math.abs(e));return r+=(20*Math.sin(6*e*Math.PI)+20*Math.sin(2*e*Math.PI))*2/3,r+=(20*Math.sin(e*Math.PI)+40*Math.sin(e/3*Math.PI))*2/3,r+=(150*Math.sin(e/12*Math.PI)+300*Math.sin(e/30*Math.PI))*2/3,r}static out_of_china(e,t){return e<72.004||e>137.8347||t<.8293||t>55.8271||!1}static gcj2wgs(e){let t=Number(e[0]),r=Number(e[1]);if(n.out_of_china(t,r))return[t,r];{let s=n.transformlat(t-105,r-35),a=n.transformlng(t-105,r-35),o=r/180*Math.PI,l=Math.sin(o);l=1-.00669342162296594*l*l;let h=Math.sqrt(l);s=s*180/(6335552717000426e-9/(l*h)*Math.PI),a=a*180/(6378245/h*Math.cos(o)*Math.PI);let c=t*2-(t+a),d=r*2-(r+s);return c=Number(c.toFixed(6)),d=Number(d.toFixed(6)),[c,d]}}static bd2wgs(e){return n.gcj2wgs(n.bd2gcj(e))}static wgs2bd(e){return n.gcj2bd(n.wgs2gcj(e))}},ft=Rr;var kr=class{static getViewPosition(e,t){e=y.parsePosition(e);let r=i.Math.toRadians(e.heading),s=i.Math.toRadians(e.pitch),a=s>=0?t*Math.sin(s):-1*t*Math.sin(Math.abs(s)),o=t*Math.cos(s),l,h;r<=Math.PI/2?(l=o*Math.sin(r),h=o*Math.cos(r)):r>Math.PI/2&&r<Math.PI?(l=o*Math.cos(r-Math.PI/2),h=-1*o*Math.sin(r-Math.PI/2)):r>Math.PI&&r<Math.PI*3/2?(l=-1*o*Math.sin(r-Math.PI),h=-1*o*Math.cos(r-Math.PI)):(l=-1*o*Math.sin(Math.PI*2-r),h=o*Math.cos(Math.PI*2-r));let c=i.Cartesian3.fromDegrees(e.lng,e.lat,e.alt),d=Math.sin(i.Math.toRadians(e.lng)),u=Math.cos(i.Math.toRadians(e.lng)),_=Math.sin(i.Math.toRadians(e.lat)),m=Math.cos(i.Math.toRadians(e.lat)),p=m*a-_*h;return new i.Cartesian3(c.x+(u*p-d*l),c.y+(d*p+u*l),c.z+(_*a+m*h))}static getCameraOrientation(e){let t=new i.Matrix3;return i.Matrix3.setColumn(t,0,i.Cartesian3.negate(e.rightWC,new i.Cartesian3),t),i.Matrix3.setColumn(t,1,e.upWC,t),i.Matrix3.setColumn(t,2,e.directionWC,t),i.Quaternion.fromRotationMatrix(t,new i.Quaternion)}static setCamera(e,t,r,s){e.position=t,e.direction=i.Cartesian3.normalize(i.Cartesian3.subtract(r,t,new i.Cartesian3),new i.Cartesian3);let a=new i.Matrix3;i.Matrix3.fromRotationY(-i.Math.toRadians(s)/2,a);let o=new i.Cartesian3;i.Matrix3.multiplyByVector(a,t,o),i.Cartesian3.normalize(o,o),e.up=o}},le=kr;var Or=class{constructor(e){this._viewer=e,this._options={}}_setViewerOption(){var e,t,r;return this._viewer.delegate.shadows=(t=(e=this._options)==null?void 0:e.shadows)!=null?t:!1,this._viewer.delegate.resolutionScale=((r=this._options)==null?void 0:r.resolutionScale)||1,this}_setCanvasOption(){return this._options.tabIndex&&this._viewer.scene.canvas.setAttribute("tabIndex",this._options.tabIndex),this}_setSceneOption(){var t,r,s,a;let e=this._viewer.scene;return e.skyAtmosphere.show=(t=this._options.showAtmosphere)!=null?t:!0,e.sun.show=(r=this._options.showSun)!=null?r:!0,e.moon.show=(s=this._options.showMoon)!=null?s:!0,e.postProcessStages.fxaa.enabled=(a=this._options.enableFxaa)!=null?a:!1,e.msaaSupported&&(e.msaaSamples=+this._options.msaaSamples||1),this}_setSkyBoxOption(){var t;if(!this._options.skyBox)return this;let e=this._options.skyBox;if(e instanceof i.SkyBox)this._viewer.scene.skyBox=e;else{let r=this._viewer.scene.skyBox;r.show=(t=e.show)!=null?t:!0,e.offsetAngle&&(r.offsetAngle=e.offsetAngle),e!=null&&e.sources&&(r.sources=e.sources)}return this}_setGlobeOption(){var r,s,a,o,l,h,c,d,u,_,m,p;if(!this._options.globe)return this;let e=this._viewer.scene.globe,t=this._options.globe;if(C.merge(e,{show:(r=t==null?void 0:t.show)!=null?r:!0,showGroundAtmosphere:(s=t==null?void 0:t.showGroundAtmosphere)!=null?s:!0,enableLighting:(a=t==null?void 0:t.enableLighting)!=null?a:!1,depthTestAgainstTerrain:(o=t==null?void 0:t.depthTestAgainstTerrain)!=null?o:!1,tileCacheSize:+(t==null?void 0:t.tileCacheSize)||100,preloadSiblings:(l=t==null?void 0:t.preloadSiblings)!=null?l:!1,showSkirts:(h=t==null?void 0:t.showSkirts)!=null?h:!0,baseColor:(t==null?void 0:t.baseColor)||new i.Color(0,0,.5,1),terrainExaggeration:(t==null?void 0:t.terrainExaggeration)||1,terrainExaggerationRelativeHeight:(t==null?void 0:t.terrainExaggerationRelativeHeight)||0}),C.merge(e.translucency,{enabled:(d=(c=t==null?void 0:t.translucency)==null?void 0:c.enabled)!=null?d:!1,backFaceAlpha:+((u=t==null?void 0:t.translucency)==null?void 0:u.backFaceAlpha)||1,backFaceAlphaByDistance:(_=t==null?void 0:t.translucency)==null?void 0:_.backFaceAlphaByDistance,frontFaceAlpha:+((m=t==null?void 0:t.translucency)==null?void 0:m.frontFaceAlpha)||1,frontFaceAlphaByDistance:(p=t==null?void 0:t.translucency)==null?void 0:p.frontFaceAlphaByDistance}),t!=null&&t.filterColor){let T=this._viewer.scene.globe._surfaceShaderSet.baseFragmentShaderSource,v=T.sources.pop();T.sources.push(v.replace("out_FragColor = finalColor;",`out_FragColor = finalColor * vec4${t.filterColor.toString()};`))}return this}_setCameraController(){var r,s,a,o,l,h,c;if(!((r=this._options)!=null&&r.cameraController))return this;let e=this._viewer.scene.screenSpaceCameraController,t=this._options.cameraController;return C.merge(e,{enableInputs:(s=t==null?void 0:t.enableInputs)!=null?s:!0,enableRotate:(a=t==null?void 0:t.enableRotate)!=null?a:!0,enableTilt:(o=t==null?void 0:t.enableTilt)!=null?o:!0,enableTranslate:(l=t==null?void 0:t.enableTranslate)!=null?l:!0,enableZoom:(h=t==null?void 0:t.enableZoom)!=null?h:!0,enableCollisionDetection:(c=t==null?void 0:t.enableCollisionDetection)!=null?c:!0,minimumZoomDistance:+(t==null?void 0:t.minimumZoomDistance)||1,maximumZoomDistance:+(t==null?void 0:t.maximumZoomDistance)||40489014}),this}setOptions(e){return Object.keys(e).length===0?this:(this._options={...this._options,...e},this._setViewerOption()._setCanvasOption()._setSceneOption()._setSkyBoxOption()._setGlobeOption()._setCameraController(),this)}},Nr=Or;var zr=class{constructor(e){this._viewer=e,this._mouseMode=0}setPitchRange(e,t){let r=new i.ScreenSpaceEventHandler(this._viewer.scene.canvas);this._viewer.scene.mode===i.SceneMode.SCENE3D&&(r.setInputAction(s=>{r.setInputAction(a=>{let o=!0,l=a.endPosition.y<a.startPosition.y;l&&this._viewer.camera.pitch>i.Math.toRadians(t)||!l&&this._viewer.camera.pitch<i.Math.toRadians(e)?o=!1:o=!0,this._viewer.scene.screenSpaceCameraController.enableTilt=o},i.ScreenSpaceEventType.MOUSE_MOVE)},this._mouseMode===Ge.LEFT_MIDDLE?i.ScreenSpaceEventType.MIDDLE_DOWN:i.ScreenSpaceEventType.RIGHT_DOWN),r.setInputAction(s=>{this._viewer.scene.screenSpaceCameraController.enableTilt=!0,r.removeInputAction(i.ScreenSpaceEventType.MOUSE_MOVE)},this._mouseMode===Ge.LEFT_MIDDLE?i.ScreenSpaceEventType.MIDDLE_UP:i.ScreenSpaceEventType.RIGHT_UP))}changeMouseMode(e){this._mouseMode=e||Ge.LEFT_MIDDLE,e===Ge.LEFT_MIDDLE?(this._viewer.scene.screenSpaceCameraController.tiltEventTypes=[i.CameraEventType.MIDDLE_DRAG,i.CameraEventType.PINCH,{eventType:i.CameraEventType.LEFT_DRAG,modifier:i.KeyboardEventModifier.CTRL},{eventType:i.CameraEventType.RIGHT_DRAG,modifier:i.KeyboardEventModifier.CTRL}],this._viewer.scene.screenSpaceCameraController.zoomEventTypes=[i.CameraEventType.RIGHT_DRAG,i.CameraEventType.WHEEL,i.CameraEventType.PINCH]):e===Ge.LEFT_RIGHT&&(this._viewer.scene.screenSpaceCameraController.tiltEventTypes=[i.CameraEventType.RIGHT_DRAG,i.CameraEventType.PINCH,{eventType:i.CameraEventType.LEFT_DRAG,modifier:i.KeyboardEventModifier.CTRL},{eventType:i.CameraEventType.RIGHT_DRAG,modifier:i.KeyboardEventModifier.CTRL}],this._viewer.scene.screenSpaceCameraController.zoomEventTypes=[i.CameraEventType.WHEEL,i.CameraEventType.PINCH])}},Fr=zr;var Nu={INITIALIZED:"initialized",ADDED:"added",REMOVED:"removed",CLEARED:"cleared",INSTALLED:"installed",ENABLED:"enabled",DISABLED:"disabled",PLAY:"play",PAUSE:"pause",RESTORE:"restore"},f=Nu;var zu={},Gr=zu;var Hr=class{constructor(){this._viewer=void 0,this._enable=!1,this._wrapper=void 0,this._ready=!1}get enable(){return this._enable}set enable(e){this._enable!==e&&(this._enable=e,this._state=this._enable?f.ENABLED:f.DISABLED,this._enableHook&&this._enableHook())}get state(){return this._state}static registerType(e){e&&(Gr[e.toLocaleUpperCase()]=e.toLocaleLowerCase())}static getWidgetType(e){return Gr[e.toLocaleUpperCase()]||void 0}_mountContent(){}_bindEvent(){}_unbindEvent(){}_enableHook(){!this._ready&&this._mountContent(),this._enable?(!this._wrapper.parentNode&&this._viewer.widgetContainer.appendChild(this._wrapper),this._bindEvent()):(this._unbindEvent(),this._wrapper.parentNode&&this._viewer.widgetContainer.removeChild(this._wrapper))}_updateWindowCoord(e){}_installHook(){}_getViewerOffset(){return this._viewer?this._viewer.getOffset():{x:0,y:0}}install(e){this._viewer=e,this._installHook&&this._installHook(),this._state=f.INSTALLED}setWrapper(e){return this}setContent(e){if(e&&typeof e=="string")this._wrapper.innerHTML=e;else if(e&&e instanceof Element){for(;this._wrapper.hasChildNodes();)this._wrapper.removeChild(this._wrapper.firstChild);this._wrapper.appendChild(e)}return this}hide(){this._wrapper&&(this._wrapper.style.cssText="visibility:hidden;")}},k=Hr;var Wr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget context-menu"),this._ulEl=void 0,this._handler=void 0,this._overlay=void 0,this._position=void 0,this._wgs84Position=void 0,this._surfacePosition=void 0,this._wgs84SurfacePosition=void 0,this._windowPosition=void 0,this._instanceId=void 0,this._config={},this._defaultMenu=[{label:"\u98DE\u5230\u9ED8\u8BA4\u4F4D\u7F6E",callback:()=>{this._viewer.camera.flyHome(1.5)},context:this},{label:"\u53D6\u6D88\u98DE\u884C",callback:()=>{this._viewer.camera.cancelFlight()},context:this}],this._overlayMenu=[],this._state=f.INITIALIZED}get type(){return k.getWidgetType("contextmenu")}set DEFAULT_MENU(e){this._defaultMenu=e}set config(e){this._config=e,e.customClass&&this._setCustomClass()}_installHook(){let e=this;Object.defineProperty(this._viewer,"contextMenu",{get(){return e}}),this._handler=new i.ScreenSpaceEventHandler(this._viewer.canvas)}_bindEvent(){this._handler.setInputAction(e=>{this._onRightClick(e)},i.ScreenSpaceEventType.RIGHT_CLICK),this._handler.setInputAction(e=>{this._onClick(e)},i.ScreenSpaceEventType.LEFT_CLICK)}_unbindEvent(){this._handler.removeInputAction(i.ScreenSpaceEventType.RIGHT_CLICK),this._handler.removeInputAction(i.ScreenSpaceEventType.LEFT_CLICK)}_mountContent(){this._ulEl=D.create("ul","menu-list",this._wrapper),this._ready=!0}_mountMenu(){for(;this._ulEl.hasChildNodes();)this._ulEl.removeChild(this._ulEl.firstChild);this._overlayMenu&&this._overlayMenu.length&&this._overlayMenu.forEach(e=>{this._addMenuItem(e.label,e.callback,e.context||this)}),this._defaultMenu&&this._defaultMenu.length&&this._defaultMenu.forEach(e=>{this._addMenuItem(e.label,e.callback,e.context||this)})}_onRightClick(e){var s;if(!this._enable)return;this._overlay=void 0;let t=this._viewer.scene;this._windowPosition=e.position;let r=t.pick(e.position);if(t.pickPositionSupported&&(this._position=t.pickPosition(e.position)),this._position){let a=i.Ellipsoid.WGS84.cartesianToCartographic(this._position);a&&(this._wgs84Position={lng:i.Math.toDegrees(a.longitude),lat:i.Math.toDegrees(a.latitude),alt:a.height})}if(t.mode===i.SceneMode.SCENE3D){let a=t.camera.getPickRay(e.position);this._surfacePosition=t.globe.pick(a,t)}else this._surfacePosition=t.camera.pickEllipsoid(e.position,i.Ellipsoid.WGS84);if(this._surfacePosition){let a=i.Ellipsoid.WGS84.cartesianToCartographic(this._surfacePosition);a&&(this._wgs84SurfacePosition={lng:i.Math.toDegrees(a.longitude),lat:i.Math.toDegrees(a.latitude),alt:a.height})}if(this._instanceId=r==null?void 0:r.instanceId,(r==null?void 0:r.id)instanceof i.Entity){let a=this._viewer.getLayers().filter(o=>o.layerId===r.id.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.id.overlayId))}else if(r instanceof i.Cesium3DTileFeature){let a=this._viewer.getLayers().filter(o=>o.layerId===r.tileset.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.tileset.overlayId))}else if((r==null?void 0:r.primitive)instanceof i.Cesium3DTileset){let a=this._viewer.getLayers().filter(o=>o.layerId===r.primitive.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.primitive.overlayId))}else if(r!=null&&r.primitive){let a=this._viewer.getLayers().filter(o=>o.layerId===r.primitive.layerId)[0];a&&a.getOverlay&&(this._overlay=a.getOverlay(r.primitive.overlayId))}this._overlayMenu=((s=this._overlay)==null?void 0:s.contextMenu)||[],this._mountMenu(),this._updateWindowCoord(e.position)}_onClick(e){this.hide()}_updateWindowCoord(e){let t=this._ulEl.hasChildNodes()?"visible":"hidden",{x:r,y:s}=e;this._wrapper.style.cssText=`
11
11
  visibility:${t};
12
12
  z-index:1;
13
13
  transform:translate3d(${Math.round(r)}px,${Math.round(s)}px, 0);
14
- `}_setCustomClass(){b.setClass(this._wrapper,`pggis-context-menu ${this._config.customClass}`)}_addMenuItem(e,t,r){if(!e||!t)return this;let s=b.create("li","menu-item",null),a=b.create("a","",s);a.innerHTML=e,a.href="javascript:void(0)";let o=this;return t&&(a.onclick=()=>{t.call(r,{windowPosition:o._windowPosition,position:o._position,wgs84Position:o._wgs84Position,surfacePosition:o._surfacePosition,wgs84SurfacePosition:o._wgs84SurfacePosition,overlay:o._overlay,instanceId:o._instanceId}),o.hide()}),this._ulEl.appendChild(s),this}};S.registerType("contextmenu");var On=fr;var _r=class extends S{constructor(){super(),this._wrapper=b.create("div","widget location-bar"),this._mouseEl=void 0,this._cameraEl=void 0,this._fpsEl=void 0,this._msEl=void 0,this._lastMouseSampleTime=i.getTimestamp(),this._lastCameraSampleTime=i.getTimestamp(),this._lastFpsSampleTime=i.getTimestamp(),this._lastMsSampleTime=i.getTimestamp(),this._fpsFrameCount=0,this._msFrameCount=0,this._state=m.INITIALIZED}get type(){return S.getWidgetType("location_bar")}_installHook(){let e=this;Object.defineProperty(this._viewer,"locationBar",{get(){return e}})}_bindEvent(){this._viewer.on(R.MOUSE_MOVE,this._onMove,this),this._viewer.on(D.CAMERA_CHANGED,this._onCameraChanged,this),this._viewer.on(D.POST_UPDATE,this._onPostUpdate,this)}_unbindEvent(){this._viewer.off(R.MOUSE_MOVE,this._onMove,this),this._viewer.off(D.CAMERA_CHANGED,this._onCameraChanged,this),this._viewer.off(D.POST_UPDATE,this._onPostUpdate,this)}_mountContent(){this._fpsEl=b.create("div","fps-bar",this._wrapper),this._msEl=b.create("div","ms-bar",this._wrapper),this._cameraEl=b.create("div","camera-bar",this._wrapper),this._mouseEl=b.create("div","mouse-bar",this._wrapper),this._ready=!0}_onMove(e){let t=i.getTimestamp();if(t<this._lastMouseSampleTime+300)return;let r=e.wgs84SurfacePosition;this._mouseEl.innerHTML=`
14
+ `}_setCustomClass(){D.setClass(this._wrapper,`pggis-context-menu ${this._config.customClass}`)}_addMenuItem(e,t,r){if(!e||!t)return this;let s=D.create("li","menu-item",null),a=D.create("a","",s);a.innerHTML=e,a.href="javascript:void(0)";let o=this;return t&&(a.onclick=()=>{t.call(r,{windowPosition:o._windowPosition,position:o._position,wgs84Position:o._wgs84Position,surfacePosition:o._surfacePosition,wgs84SurfacePosition:o._wgs84SurfacePosition,overlay:o._overlay,instanceId:o._instanceId}),o.hide()}),this._ulEl.appendChild(s),this}};k.registerType("contextmenu");var El=Wr;var Br=class extends k{constructor(){super(),this._wrapper=D.create("div","widget location-bar"),this._mouseEl=void 0,this._cameraEl=void 0,this._fpsEl=void 0,this._msEl=void 0,this._lastMouseSampleTime=i.getTimestamp(),this._lastCameraSampleTime=i.getTimestamp(),this._lastFpsSampleTime=i.getTimestamp(),this._lastMsSampleTime=i.getTimestamp(),this._fpsFrameCount=0,this._msFrameCount=0,this._state=f.INITIALIZED}get type(){return k.getWidgetType("location_bar")}_installHook(){let e=this;Object.defineProperty(this._viewer,"locationBar",{get(){return e}})}_bindEvent(){this._viewer.on(W.MOUSE_MOVE,this._onMove,this),this._viewer.on(N.CAMERA_CHANGED,this._onCameraChanged,this),this._viewer.on(N.POST_UPDATE,this._onPostUpdate,this)}_unbindEvent(){this._viewer.off(W.MOUSE_MOVE,this._onMove,this),this._viewer.off(N.CAMERA_CHANGED,this._onCameraChanged,this),this._viewer.off(N.POST_UPDATE,this._onPostUpdate,this)}_mountContent(){this._fpsEl=D.create("div","fps-bar",this._wrapper),this._msEl=D.create("div","ms-bar",this._wrapper),this._cameraEl=D.create("div","camera-bar",this._wrapper),this._mouseEl=D.create("div","mouse-bar",this._wrapper),this._ready=!0}_onMove(e){let t=i.getTimestamp();if(t<this._lastMouseSampleTime+300)return;let r=e.wgs84SurfacePosition;this._mouseEl.innerHTML=`
15
15
  <span>\u6D77\u62D4\uFF1A${(r==null?void 0:r.alt.toFixed(2))||Number.NaN} \u7C73</span>
16
16
  <span>\u7EAC\u5EA6\uFF1A${(r==null?void 0:r.lat.toFixed(8))||Number.NaN}</span>
17
17
  <span>\u7ECF\u5EA6\uFF1A${(r==null?void 0:r.lng.toFixed(8))||Number.NaN}</span>`,this._lastMouseSampleTime=t}_onCameraChanged(){let e=i.getTimestamp();if(e<this._lastCameraSampleTime+300)return;let t=this._viewer.cameraPosition;this._cameraEl.innerHTML=`
18
18
  <span>\u89C6\u89D2\uFF1A${(+t.pitch).toFixed(2)}</span>
19
19
  <span>\u89C6\u9AD8\uFF1A${(+t.alt).toFixed(2)} \u7C73</span>
20
- `,this._lastCameraSampleTime=e}_onPostUpdate(){let e=i.getTimestamp();this._msFrameCount++;let t=e-this._lastMsSampleTime;if(t>200){let s=(t/this._msFrameCount).toFixed(2);this._msEl.innerHTML=`<span>${s} MS</span>`,this._lastMsSampleTime=e,this._msFrameCount=0}this._fpsFrameCount++;let r=e-this._lastFpsSampleTime;if(r>1e3){let s=this._fpsFrameCount*1e3/r|0;this._fpsEl.innerHTML=`<span>${s} FPS</span>`,this._lastFpsSampleTime=e,this._fpsFrameCount=0}}};S.registerType("location_bar");var kn=_r;var zd=`
21
- data:image/png;base64,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
22
- `,zn=zd;var Nd=`
20
+ `,this._lastCameraSampleTime=e}_onPostUpdate(){let e=i.getTimestamp();this._msFrameCount++;let t=e-this._lastMsSampleTime;if(t>200){let s=(t/this._msFrameCount).toFixed(2);this._msEl.innerHTML=`<span>${s} MS</span>`,this._lastMsSampleTime=e,this._msFrameCount=0}this._fpsFrameCount++;let r=e-this._lastFpsSampleTime;if(r>1e3){let s=this._fpsFrameCount*1e3/r|0;this._fpsEl.innerHTML=`<span>${s} FPS</span>`,this._lastFpsSampleTime=e,this._fpsFrameCount=0}}};k.registerType("location_bar");var Pl=Br;var Fu=`
21
+ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAKwAAAA0CAYAAAAXBNP2AAAACXBIWXMAAAsTAAALEwEAmpwYAAAE7mlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNy4xLWMwMDAgNzkuYjBmOGJlOSwgMjAyMS8xMi8wOC0xOToxMToyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIzLjIgKFdpbmRvd3MpIiB4bXA6Q3JlYXRlRGF0ZT0iMjAyNS0wOC0yOVQxMDo1NTozMiswODowMCIgeG1wOk1vZGlmeURhdGU9IjIwMjUtMDgtMjlUMTA6NTY6MDgrMDg6MDAiIHhtcDpNZXRhZGF0YURhdGU9IjIwMjUtMDgtMjlUMTA6NTY6MDgrMDg6MDAiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOmU1OGVmOTEwLWE3NTItOWM0ZC04OTY1LWM2ZGQ1MTEzMDczOCIgeG1wTU06RG9jdW1lbnRJRD0i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`,Ml=Fu;var Gu=`
23
22
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
24
23
  <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="120" height="120" viewBox="0 0 120 120">
25
24
  <defs><clipPath id="b"><rect width="120" height="120"/></clipPath></defs>
@@ -30,7 +29,7 @@ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABmCAYAAAD1ahzMAAAACXBIWXMAAA
30
29
  </g>
31
30
  </g>
32
31
  </svg>
33
- `,Nn=Nd;var Fd=`
32
+ `,bl=Gu;var Hu=`
34
33
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
35
34
  <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="96" height="96" viewBox="0 0 120 120">
36
35
  <defs><clipPath id="b"><rect width="120" height="120"/></clipPath></defs>
@@ -54,7 +53,7 @@ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABmCAYAAAD1ahzMAAAACXBIWXMAAA
54
53
  </g>
55
54
  </g>
56
55
  </svg>
57
- `,Fn=Fd;var Wd=`
56
+ `,Al=Hu;var Wu=`
58
57
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
59
58
  <svg width="92px" height="92px" viewBox="0 0 53 53" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
60
59
  <!-- Generator: Sketch 3.4.3 (16044) - http://www.bohemiancoding.com/sketch -->
@@ -68,54 +67,54 @@ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABmCAYAAAD1ahzMAAAACXBIWXMAAA
68
67
  </g>
69
68
  </g>
70
69
  </svg>
71
- `,Wn=Wd;var Gd=`
70
+ `,Sl=Wu;var Bu=`
72
71
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
73
72
  <svg width="50px" height="6px" viewBox="0 0 50 6" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
74
73
  <!-- Generator: Sketch 3.4.3 (16044) - http://www.bohemiancoding.com/sketch -->
75
74
  <title>decrease</title>
76
75
  <path d="M46.6183575,0.657894737 L3.30112724,0.657894737 C1.44927539,0.657894737 0,1.66880618 0,2.96052632 C0,4.25224645 1.44927539,5.26315789 3.30112724,5.26315789 L46.6988728,5.26315789 C48.5507246,5.26315789 50,4.25224645 50,2.96052632 C49.9194847,1.66880618 48.4702093,0.657894737 46.6183575,0.657894737 L46.6183575,0.657894737 L46.6183575,0.657894737 Z" id="Shape"></path>
77
76
  </svg>
78
- `,Gn=Gd;var Hd=`
77
+ `,Il=Bu;var Uu=`
79
78
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
80
79
  <svg width="50px" height="50px" viewBox="0 0 50 50" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
81
80
  <!-- Generator: Sketch 3.4.3 (16044) - http://www.bohemiancoding.com/sketch -->
82
81
  <title>increase</title>
83
82
  <path d="M0,25 C0,25.3514939 0.131810207,25.659051 0.373462207,25.900703 C0.615114207,26.142355 0.922671379,26.2741652 1.27416517,26.2741652 L23.7258348,26.2741652 L23.7258348,48.7258348 C23.7258348,49.0773286 23.857645,49.3848858 24.099297,49.6265378 C24.3189807,49.8462214 24.6485061,50 25,50 C25.7029877,50 26.2741652,49.4288225 26.2741652,48.7258348 L26.2741652,26.2741652 L48.7258348,26.2741652 C49.4288225,26.2741652 50,25.7029877 50,25 C50,24.2970123 49.4288225,23.7258348 48.7258348,23.7258348 L26.2741652,23.7258348 L26.2741652,1.27416517 C26.2741652,0.571177517 25.7029877,0 25,0 C24.2970123,0 23.7258348,0.571177517 23.7258348,1.27416517 L23.7258348,23.7258348 L1.27416517,23.7258348 C0.571177517,23.7258348 0,24.2970123 0,25 L0,25 L0,25 L0,25 Z" id="Shape"></path>
84
83
  </svg>
85
- `,Hn=Hd;var Bd=`
84
+ `,Dl=Uu;var Vu=`
86
85
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
87
86
  <svg width="50px" height="50px" viewBox="0 0 50 50" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:sketch="http://www.bohemiancoding.com/sketch/ns">
88
87
  <!-- Generator: Sketch 3.4.3 (16044) - http://www.bohemiancoding.com/sketch -->
89
88
  <title>refresh</title>
90
89
  <path d="M48.2758621,0 C47.2844828,0 46.5086207,0.775193846 46.5086207,1.76571923 L46.5086207,12.2308355 C42.0689655,4.78036173 34.0086207,0 25,0 C11.2068965,0 0,11.1972438 0,25.0215332 C0,38.8458226 11.2068965,50 25,50 C38.7931035,50 50,38.8027562 50,25.0215332 C50,24.0310078 49.2241379,23.2558139 48.2327587,23.2558139 C47.2413793,23.2558139 46.4655172,24.0310078 46.4655172,25.0215332 C46.4655172,36.8647717 36.8103448,46.5116279 24.9568965,46.5116279 C13.1034483,46.5116279 3.49137933,36.8217054 3.49137933,24.9784668 C3.49137933,13.1352283 13.1465517,3.48837212 25,3.48837212 C33.4913793,3.48837212 41.0775862,8.44099913 44.5258621,16.0206718 L32.1551724,16.0206718 C31.1637931,16.0206718 30.3879311,16.7958657 30.3879311,17.7863911 C30.3879311,18.7769164 31.1637931,19.5521103 32.1551724,19.5521103 L48.2327587,19.5521103 C49.2241379,19.5521103 50,18.7769164 50,17.7863911 L50,1.72265288 C50,0.775193846 49.2241379,0 48.2758621,0 L48.2758621,0 L48.2758621,0 Z" id="Shape"></path>
91
90
  </svg>
92
- `,Bn=Bd;var Ud=`
91
+ `,Ll=Vu;var Zu=`
93
92
  <?xml version="1.0" encoding="UTF-8" standalone="no"?>
94
93
  <svg width="19px" height="28px" viewBox="0 0 19 28" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink">
95
94
  <path d="M0.6551724,2.3448276 L0.6551724,25.6551724 C0.6551724,26.6454761 1.4579722,27.4482759 2.4482759,27.4482759 C3.4385796,27.4482759 4.2413793,26.6454761 4.2413793,25.6551724 L4.2413793,2.3448276 C4.2413793,1.3545239 3.4385796,0.5517241 2.4482759,0.5517241 C1.4579722,0.5517241 0.6551724,1.3545239 0.6551724,2.3448276 L0.6551724,2.3448276 Z M7.6551724,2.3448276 L7.6551724,25.6551724 C7.6551724,26.6454761 8.4579722,27.4482759 9.4482759,27.4482759 C10.4385796,27.4482759 11.2413793,26.6454761 11.2413793,25.6551724 L11.2413793,2.3448276 C11.2413793,1.3545239 10.4385796,0.5517241 9.4482759,0.5517241 C8.4579722,0.5517241 7.6551724,1.3545239 7.6551724,2.3448276 L7.6551724,2.3448276 Z M14.6551724,2.3448276 L14.6551724,25.6551724 C14.6551724,26.6454761 15.4579722,27.4482759 16.4482759,27.4482759 C17.4385796,27.4482759 18.2413793,26.6454761 18.2413793,25.6551724 L18.2413793,2.3448276 C18.2413793,1.3545239 17.4385796,0.5517241 16.4482759,0.5517241 C15.4579722,0.5517241 14.6551724,1.3545239 14.6551724,2.3448276 L14.6551724,2.3448276 Z" id="splitter"></path>
96
95
  </svg>
97
- `,Un=Ud;var Vd={logo:zn,compass_outer:Nn,compass_inner:Fn,compass_rotation_marker:Wn,decrease:Gn,increase:Hn,refresh:Bn,splitter:Un},K=Vd;var gr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget slider"),this._baseLayer=void 0,this._moveActive=!1,this._state=m.INITIALIZED}get type(){return S.getWidgetType("map_split")}_installHook(){let e=this;Object.defineProperty(this._viewer,"mapSplit",{get(){return e}})}_bindEvent(){this._viewer.scene.splitPosition=.5,this._wrapper.style.left="50%"}_unbindEvent(){this._baseLayer?this._viewer.scene.splitPosition=this._baseLayer.splitDirection>0?1:0:this._viewer.scene.splitPosition=0}_mountContent(){let e=b.parseDom(K.splitter,!0,"splitter");this._wrapper.appendChild(e);let t=new i.ScreenSpaceEventHandler(e),r=this;t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.LEFT_DOWN),t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.PINCH_START),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.MOUSE_MOVE),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.PINCH_MOVE),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.LEFT_UP),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.PINCH_END),this._ready=!0}_moveHandler(e){if(!this._moveActive||!this._enable)return;let t=e.endPosition.x,r=(this._wrapper.offsetLeft+t)/this._wrapper.parentElement.offsetWidth;this._wrapper.style.left=100*r+"%",this._viewer.scene.splitPosition=r}addBaseLayer(e,t=1){return!this._viewer||!this._enable?this:(e&&(this._baseLayer&&this._viewer.imageryLayers.remove(this._baseLayer),this._baseLayer=this._viewer.imageryLayers.addImageryProvider(e),this._baseLayer.splitDirection=t||0,this._viewer.scene.splitPosition=this._wrapper.offsetLeft/this._wrapper.parentElement.offsetWidth),this)}};S.registerType("map_split");var Vn=gr;var yr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget map-switch"),this._config=void 0,this._cache=[],this._state=m.INITIALIZED}get type(){return S.getWidgetType("map_switch")}_enableHook(){!this._wrapper.parentNode&&this._viewer&&this._viewer.widgetContainer.appendChild(this._wrapper)}_installHook(){let e=this;Object.defineProperty(this._viewer,"mapSwitch",{get(){return e}}),this.enable=!0,this._wrapper.onmouseover=()=>{let t=80,r=5;e._cache.length>0&&(t=e._cache.length*(t+r)-r),this._wrapper.style.width=`${t}px`},this._wrapper.onmouseout=()=>{e._wrapper.style.width="80px"}}_addItem(e){let t=b.create("div","map-item",this._wrapper),r=this._cache.length?this._cache.length-1:0;r===0&&b.addClass(t,"active"),t.setAttribute("data-index",String(r)),t.onclick=a=>{let o=document.getElementsByClassName("map-item active");o&&o.length&&(o[0].className="map-item"),this._viewer&&(a.target.className="map-item active",this._viewer.changeBaseLayer(+a.target.getAttribute("data-index")||0))},e.iconUrl&&(t.style.cssText=`
96
+ `,Rl=Zu;var ju={logo:Ml,compass_outer:bl,compass_inner:Al,compass_rotation_marker:Sl,decrease:Il,increase:Dl,refresh:Ll,splitter:Rl},re=ju;var Ur=class extends k{constructor(){super(),this._wrapper=D.create("div","widget slider"),this._baseLayer=void 0,this._moveActive=!1,this._state=f.INITIALIZED}get type(){return k.getWidgetType("map_split")}_installHook(){let e=this;Object.defineProperty(this._viewer,"mapSplit",{get(){return e}})}_bindEvent(){this._viewer.scene.splitPosition=.5,this._wrapper.style.left="50%"}_unbindEvent(){this._baseLayer?this._viewer.scene.splitPosition=this._baseLayer.splitDirection>0?1:0:this._viewer.scene.splitPosition=0}_mountContent(){let e=D.parseDom(re.splitter,!0,"splitter");this._wrapper.appendChild(e);let t=new i.ScreenSpaceEventHandler(e),r=this;t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.LEFT_DOWN),t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.PINCH_START),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.MOUSE_MOVE),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.PINCH_MOVE),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.LEFT_UP),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.PINCH_END),this._ready=!0}_moveHandler(e){if(!this._moveActive||!this._enable)return;let t=e.endPosition.x,r=(this._wrapper.offsetLeft+t)/this._wrapper.parentElement.offsetWidth;this._wrapper.style.left=100*r+"%",this._viewer.scene.splitPosition=r}addBaseLayer(e,t=1){return!this._viewer||!this._enable?this:(e&&(this._baseLayer&&this._viewer.imageryLayers.remove(this._baseLayer),this._baseLayer=this._viewer.imageryLayers.addImageryProvider(e),this._baseLayer.splitDirection=t||0,this._viewer.scene.splitPosition=this._wrapper.offsetLeft/this._wrapper.parentElement.offsetWidth),this)}};k.registerType("map_split");var kl=Ur;var Vr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget map-switch"),this._config=void 0,this._cache=[],this._state=f.INITIALIZED}get type(){return k.getWidgetType("map_switch")}_enableHook(){!this._wrapper.parentNode&&this._viewer&&this._viewer.widgetContainer.appendChild(this._wrapper)}_installHook(){let e=this;Object.defineProperty(this._viewer,"mapSwitch",{get(){return e}}),this.enable=!0,this._wrapper.onmouseover=()=>{let t=80,r=5;e._cache.length>0&&(t=e._cache.length*(t+r)-r),this._wrapper.style.width=`${t}px`},this._wrapper.onmouseout=()=>{e._wrapper.style.width="80px"}}_addItem(e){let t=D.create("div","map-item",this._wrapper),r=this._cache.length?this._cache.length-1:0;r===0&&D.addClass(t,"active"),t.setAttribute("data-index",String(r)),t.onclick=a=>{let o=document.getElementsByClassName("map-item active");o&&o.length&&(o[0].className="map-item"),this._viewer&&(a.target.className="map-item active",this._viewer.changeBaseLayer(+a.target.getAttribute("data-index")||0))},e.iconUrl&&(t.style.cssText=`
98
97
  background:url(${e.iconUrl});
99
- `);let s=b.create("span","",t);s.innerHTML=e.name||"\u5730\u56FE"}addMap(e={}){this._enable&&(this._cache.push(e),this._addItem(e),this._cache.length>1&&(this._wrapper.style.visibility="visible"))}};S.registerType("map_switch");var jn=yr;var vr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget popup"),this._config={customClass:""},this._position=void 0,this._state=m.INITIALIZED}get type(){return S.getWidgetType("popup")}set config(e){this._config=e,e.customClass&&this._setCustomClass()}_bindEvent(){if(this._viewer&&this._wrapper){let e=this,t=this._viewer.scene;t.postRender.addEventListener(()=>{if(e._position&&e._enable&&e._updateWindowCoord&&e._wrapper.style.visibility==="visible"){let r=i.SceneTransforms.worldToWindowCoordinates(t,e._position);r&&e._updateWindowCoord(r)}})}}_mountContent(){this._wrapper.style.visibility="hidden"}_installHook(){this.enable=!0,this._bindEvent();let e=this;Object.defineProperty(this._viewer,"popup",{get(){return e}})}_updateWindowCoord(e){let t=e.x-this._wrapper.offsetWidth/2,r=e.y-this._wrapper.offsetHeight;this._config.position==="topleft"?(t=e.x-this._wrapper.offsetWidth,r=e.y-this._wrapper.offsetHeight):this._config.position==="topright"?(t=e.x,r=e.y-this._wrapper.offsetHeight):this._config.position==="bottomleft"?(t=e.x-this._wrapper.offsetWidth,r=e.y):this._config.position==="bottomright"&&(t=e.x,r=e.y),this._wrapper.style.cssText=`
98
+ `);let s=D.create("span","",t);s.innerHTML=e.name||"\u5730\u56FE"}addMap(e={}){this._enable&&(this._cache.push(e),this._addItem(e),this._cache.length>1&&(this._wrapper.style.visibility="visible"))}};k.registerType("map_switch");var Ol=Vr;var Zr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget popup"),this._config={customClass:""},this._position=void 0,this._state=f.INITIALIZED}get type(){return k.getWidgetType("popup")}set config(e){this._config=e,e.customClass&&this._setCustomClass()}_bindEvent(){if(this._viewer&&this._wrapper){let e=this,t=this._viewer.scene;t.postRender.addEventListener(()=>{if(e._position&&e._enable&&e._updateWindowCoord&&e._wrapper.style.visibility==="visible"){let r=i.SceneTransforms.worldToWindowCoordinates(t,e._position);r&&e._updateWindowCoord(r)}})}}_mountContent(){this._wrapper.style.visibility="hidden"}_installHook(){this.enable=!0,this._bindEvent();let e=this;Object.defineProperty(this._viewer,"popup",{get(){return e}})}_updateWindowCoord(e){let t=e.x-this._wrapper.offsetWidth/2,r=e.y-this._wrapper.offsetHeight;this._config.position==="topleft"?(t=e.x-this._wrapper.offsetWidth,r=e.y-this._wrapper.offsetHeight):this._config.position==="topright"?(t=e.x,r=e.y-this._wrapper.offsetHeight):this._config.position==="bottomleft"?(t=e.x-this._wrapper.offsetWidth,r=e.y):this._config.position==="bottomright"&&(t=e.x,r=e.y),this._wrapper.style.cssText=`
100
99
  visibility:visible;
101
100
  z-index:1;
102
101
  transform:translate3d(${Math.round(t)}px,${Math.round(r)}px, 0);
103
- `}_setCustomClass(){b.setClass(this._wrapper,`widget popup ${this._config.customClass}`)}setWrapper(e){return e&&e instanceof Element&&(this._wrapper=e,b.addClass(this._wrapper,"widget popup")),this}setPosition(e){return this._position=e,this._wrapper&&(this._wrapper.style.cssText="visibility:visible;"),this}showAt(e,t){return this.setPosition(e).setContent(t),this}};S.registerType("popup");var Zn=vr;var wr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget tool-tip"),this._ready=!0,this._state=m.INITIALIZED}get type(){return S.getWidgetType("tooltip")}_installHook(){let e=this;Object.defineProperty(this._viewer,"tooltip",{get(){return e}})}_updateWindowCoord(e){let t=e.x+10,r=e.y-this._wrapper.offsetHeight/2;this._wrapper.style.cssText=`
102
+ `}_setCustomClass(){D.setClass(this._wrapper,`widget popup ${this._config.customClass}`)}setWrapper(e){return e&&e instanceof Element&&(this._wrapper=e,D.addClass(this._wrapper,"widget popup")),this}setPosition(e){return this._position=e,this._wrapper&&(this._wrapper.style.cssText="visibility:visible;"),this}showAt(e,t){return this.setPosition(e).setContent(t),this}};k.registerType("popup");var Nl=Zr;var jr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget tool-tip"),this._ready=!0,this._state=f.INITIALIZED}get type(){return k.getWidgetType("tooltip")}_installHook(){let e=this;Object.defineProperty(this._viewer,"tooltip",{get(){return e}})}_updateWindowCoord(e){let t=e.x+10,r=e.y-this._wrapper.offsetHeight/2;this._wrapper.style.cssText=`
104
103
  visibility:visible;
105
104
  z-index:1;
106
105
  transform:translate3d(${Math.round(t)}px,${Math.round(r)}px, 0);
107
- `}showAt(e,t){return this._enable?(e&&this._updateWindowCoord(e),this.setContent(t),this):this}};S.registerType("tooltip");var Yn=wr;var xr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget hawkeye-map",null),this._wrapper.setAttribute("id",x.uuid()),this._map=void 0,this._state=m.INITIALIZED}get type(){return S.getWidgetType("hawkeye_map")}_mountContent(){let e=new i.CesiumWidget(this._wrapper,{sceneMode:i.SceneMode.SCENE2D,creditContainer:document.createElement("div"),creditViewport:document.createElement("div"),baseLayer:!1});e.imageryLayers.removeAll(),e.canvas.parentNode.className="viewer-canvas",x.merge(e.scene.screenSpaceCameraController,{enableRotate:!1,enableTranslate:!1,enableZoom:!1,enableTilt:!1,enableLook:!1,maximumZoomDistance:40489014}),this._map=e,this._ready=!0}_bindEvent(){this._viewer.on(D.CAMERA_CHANGED,this._syncMap,this)}_unbindEvent(){this._viewer.off(D.CAMERA_CHANGED,this._syncMap,this)}_installHook(){let e=this;Object.defineProperty(this._viewer,"hawkeyeMap",{get(){return e}}),this._viewer.camera.percentageChanged=.01}_syncMap(){let e=new i.Cartesian2(Math.floor(this._viewer.canvas.clientWidth/2),Math.floor(this._viewer.canvas.clientHeight/2)),t=this._viewer.scene.camera.pickEllipsoid(e);if(!t)return!1;let r=i.Cartesian3.distance(t,this._viewer.scene.camera.positionWC);this._map.scene.camera.lookAt(t,new i.Cartesian3(0,0,r))}addBaseLayer(e){return!this._map||!this._enable?this:(e&&(this._map.imageryLayers.removeAll(),Array.isArray(e)||(e=[e]),e.forEach(t=>{this._map.imageryLayers.add(i.ImageryLayer.fromProviderAsync(t,{}))})),this)}};S.registerType("hawkeye_map");var Jn=xr;var Cr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget compass"),this._compassRectangle=void 0,this._outRing=void 0,this._gyro=void 0,this._rotation_marker=void 0,this._orbitCursorAngle=0,this._orbitCursorOpacity=0,this._orbitLastTimestamp=0,this._orbitFrame=void 0,this._orbitIsLook=!1,this._rotateInitialCursorAngle=void 0,this._rotateFrame=void 0,this._mouseMoveHandle=void 0,this._mouseUpHandle=void 0,this._state=m.INITIALIZED}get type(){return S.getWidgetType("compass")}_installHook(){let e=this;Object.defineProperty(this._viewer,"compass",{get(){return e}}),this._wrapper.onmousedown=t=>{this._handleMouseDown(t)},this._wrapper.ondblclick=t=>{this._handleDoubleClick(t)}}_bindEvent(){this._viewer.on(D.POST_RENDER,this._postRenderHandler,this)}_unbindEvent(){this._viewer.off(D.POST_RENDER,this._postRenderHandler,this)}_postRenderHandler(){let e=this._viewer.camera.heading;this._outRing&&(this._outRing.style.cssText=`
106
+ `}showAt(e,t){return this._enable?(e&&this._updateWindowCoord(e),this.setContent(t),this):this}};k.registerType("tooltip");var zl=jr;var Yr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget hawkeye-map",null),this._wrapper.setAttribute("id",C.uuid()),this._map=void 0,this._state=f.INITIALIZED}get type(){return k.getWidgetType("hawkeye_map")}_mountContent(){let e=new i.CesiumWidget(this._wrapper,{sceneMode:i.SceneMode.SCENE2D,creditContainer:document.createElement("div"),creditViewport:document.createElement("div"),baseLayer:!1});e.imageryLayers.removeAll(),e.canvas.parentNode.className="viewer-canvas",C.merge(e.scene.screenSpaceCameraController,{enableRotate:!1,enableTranslate:!1,enableZoom:!1,enableTilt:!1,enableLook:!1,maximumZoomDistance:40489014}),this._map=e,this._ready=!0}_bindEvent(){this._viewer.on(N.CAMERA_CHANGED,this._syncMap,this)}_unbindEvent(){this._viewer.off(N.CAMERA_CHANGED,this._syncMap,this)}_installHook(){let e=this;Object.defineProperty(this._viewer,"hawkeyeMap",{get(){return e}}),this._viewer.camera.percentageChanged=.01}_syncMap(){let e=new i.Cartesian2(Math.floor(this._viewer.canvas.clientWidth/2),Math.floor(this._viewer.canvas.clientHeight/2)),t=this._viewer.scene.camera.pickEllipsoid(e);if(!t)return!1;let r=i.Cartesian3.distance(t,this._viewer.scene.camera.positionWC);this._map.scene.camera.lookAt(t,new i.Cartesian3(0,0,r))}addBaseLayer(e){return!this._map||!this._enable?this:(e&&(this._map.imageryLayers.removeAll(),Array.isArray(e)||(e=[e]),e.forEach(t=>{this._map.imageryLayers.add(i.ImageryLayer.fromProviderAsync(t,{}))})),this)}};k.registerType("hawkeye_map");var Fl=Yr;var qr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget compass"),this._compassRectangle=void 0,this._outRing=void 0,this._gyro=void 0,this._rotation_marker=void 0,this._orbitCursorAngle=0,this._orbitCursorOpacity=0,this._orbitLastTimestamp=0,this._orbitFrame=void 0,this._orbitIsLook=!1,this._rotateInitialCursorAngle=void 0,this._rotateFrame=void 0,this._mouseMoveHandle=void 0,this._mouseUpHandle=void 0,this._state=f.INITIALIZED}get type(){return k.getWidgetType("compass")}_installHook(){let e=this;Object.defineProperty(this._viewer,"compass",{get(){return e}}),this._wrapper.onmousedown=t=>{this._handleMouseDown(t)},this._wrapper.ondblclick=t=>{this._handleDoubleClick(t)}}_bindEvent(){this._viewer.on(N.POST_RENDER,this._postRenderHandler,this)}_unbindEvent(){this._viewer.off(N.POST_RENDER,this._postRenderHandler,this)}_postRenderHandler(){let e=this._viewer.camera.heading;this._outRing&&(this._outRing.style.cssText=`
108
107
  transform : rotate(-${e}rad);
109
108
  -webkit-transform : rotate(-${e}rad);
110
- `)}_mountContent(){b.create("div","out-ring-bg",this._wrapper),this._outRing=b.parseDom(K.compass_outer,!0,"out-ring"),this._wrapper.appendChild(this._outRing),this._gyro=b.parseDom(K.compass_inner,!0,"gyro"),this._wrapper.appendChild(this._gyro),this._rotation_marker=b.parseDom(K.compass_rotation_marker,!0,"rotation_marker"),this._wrapper.appendChild(this._rotation_marker),this._rotation_marker.style.visibility="hidden",this._ready=!0}_handleMouseDown(e){if(this._viewer.scene.mode===i.SceneMode.MORPHING)return!0;this._compassRectangle=e.currentTarget.getBoundingClientRect();let r=this._compassRectangle.width/2,s=this._getVector(e),a=i.Cartesian2.magnitude(s)/r;if(a<50/145)this._orbit(s);else if(a<1)this._rotate(s);else return!0}_handleDoubleClick(){let e=this._viewer.scene,t=e.camera,r=e.screenSpaceCameraController;if(e.mode===i.SceneMode.MORPHING||!r.enableInputs)return!0;if(e.mode===i.SceneMode.COLUMBUS_VIEW&&!r.enableTranslate||(e.mode===i.SceneMode.SCENE3D||e.mode===i.SceneMode.COLUMBUS_VIEW)&&(!r.enableLook||e.mode===i.SceneMode.SCENE3D&&!r.enableRotate))return;let s=this._getCameraFocus(!0);if(!s)return;let a=e.globe.ellipsoid.cartographicToCartesian(t.positionCartographic),o=e.globe.ellipsoid.geodeticSurfaceNormal(s),n=new i.BoundingSphere(s,0);t.flyToBoundingSphere(n,{offset:new i.HeadingPitchRange(0,i.Math.PI_OVER_TWO-i.Cartesian3.angleBetween(o,t.directionWC),i.Cartesian3.distance(a,s)),duration:1.5})}_getCameraFocus(e){let t=new i.Cartesian3,r=this._viewer.scene,s=r.camera;if(r.mode!==i.SceneMode.MORPHING){if(this._viewer.delegate.trackedEntity)t=this._viewer.delegate.trackedEntity.position.getValue(this._viewer.clock.currentTime);else{let a=new i.Ray;a.origin=s.positionWC,a.direction=s.directionWC,t=r.globe.pick(a,r)}if(t){if(r.mode===i.SceneMode.SCENE2D||r.mode===i.SceneMode.COLUMBUS_VIEW){t=s.worldToCameraCoordinatesPoint(t);let a=new i.Cartographic;e&&(t=r.globe.ellipsoid.cartographicToCartesian(r.mapProjection.unproject(t,a)))}else e||(t=s.worldToCameraCoordinatesPoint(t));return t}}}_orbit(e){let t=this._viewer.scene,r=t.screenSpaceCameraController,s=t.camera;if(!(t.mode===i.SceneMode.MORPHING||!r.enableInputs)){switch(t.mode){case i.SceneMode.COLUMBUS_VIEW:if(r.enableLook)break;if(!r.enableTranslate||!r.enableTilt)return;break;case i.SceneMode.SCENE3D:if(r.enableLook)break;if(!r.enableTilt||!r.enableRotate)return;break;case i.SceneMode.SCENE2D:if(!r.enableTranslate)return;break}if(this._mouseMoveHandle=a=>{this._orbitMouseMoveFunction(a)},this._mouseUpHandle=()=>{this._orbitMouseUpFunction()},document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._orbitLastTimestamp=i.getTimestamp(),this._viewer.delegate.trackedEntity)this._orbitFrame=void 0,this._orbitIsLook=!1;else{let a=this._getCameraFocus(!0);a?(this._orbitFrame=i.Transforms.eastNorthUpToFixedFrame(a,t.globe.ellipsoid),this._orbitIsLook=!1):(this._orbitFrame=i.Transforms.eastNorthUpToFixedFrame(s.positionWC,t.globe.ellipsoid),this._orbitIsLook=!0)}this._rotation_marker.style.visibility="visible",this._gyro.className+=" gyro-active",document.addEventListener("mousemove",this._mouseMoveHandle,!1),document.addEventListener("mouseup",this._mouseUpHandle,!1),this._viewer.clock.onTick.addEventListener(this._orbitTickFunction,this),this._updateAngleAndOpacity(e,this._compassRectangle.width)}}_orbitTickFunction(){let e=this._viewer.scene,t=this._viewer.camera,r=i.getTimestamp(),s=r-this._orbitLastTimestamp,a=(this._orbitCursorOpacity-.5)*2.5/1e3,o=s*a,n=this._orbitCursorAngle+i.Math.PI_OVER_TWO,h=Math.cos(n)*o,c=Math.sin(n)*o,p;this._orbitFrame&&(p=i.Matrix4.clone(t.transform),t.lookAtTransform(this._orbitFrame)),e.mode===i.SceneMode.SCENE2D?t.move(new i.Cartesian3(h,c,0),Math.max(e.canvas.clientWidth,e.canvas.clientHeight)/100*t.positionCartographic.height*o):this._orbitIsLook?(t.look(i.Cartesian3.UNIT_Z,-h),t.look(t.right,-c)):(t.rotateLeft(h),t.rotateUp(c)),this._orbitFrame&&p&&t.lookAtTransform(p),this._orbitLastTimestamp=r}_updateAngleAndOpacity(e,t){let r=Math.atan2(-e.y,e.x);this._orbitCursorAngle=i.Math.zeroToTwoPi(r-i.Math.PI_OVER_TWO);let s=i.Cartesian2.magnitude(e),a=t/2,o=Math.min(s/a,1);this._orbitCursorOpacity=.5*o*o+.5,this._rotation_marker.style.cssText=`
109
+ `)}_mountContent(){D.create("div","out-ring-bg",this._wrapper),this._outRing=D.parseDom(re.compass_outer,!0,"out-ring"),this._wrapper.appendChild(this._outRing),this._gyro=D.parseDom(re.compass_inner,!0,"gyro"),this._wrapper.appendChild(this._gyro),this._rotation_marker=D.parseDom(re.compass_rotation_marker,!0,"rotation_marker"),this._wrapper.appendChild(this._rotation_marker),this._rotation_marker.style.visibility="hidden",this._ready=!0}_handleMouseDown(e){if(this._viewer.scene.mode===i.SceneMode.MORPHING)return!0;this._compassRectangle=e.currentTarget.getBoundingClientRect();let r=this._compassRectangle.width/2,s=this._getVector(e),a=i.Cartesian2.magnitude(s)/r;if(a<50/145)this._orbit(s);else if(a<1)this._rotate(s);else return!0}_handleDoubleClick(){let e=this._viewer.scene,t=e.camera,r=e.screenSpaceCameraController;if(e.mode===i.SceneMode.MORPHING||!r.enableInputs)return!0;if(e.mode===i.SceneMode.COLUMBUS_VIEW&&!r.enableTranslate||(e.mode===i.SceneMode.SCENE3D||e.mode===i.SceneMode.COLUMBUS_VIEW)&&(!r.enableLook||e.mode===i.SceneMode.SCENE3D&&!r.enableRotate))return;let s=this._getCameraFocus(!0);if(!s)return;let a=e.globe.ellipsoid.cartographicToCartesian(t.positionCartographic),o=e.globe.ellipsoid.geodeticSurfaceNormal(s),l=new i.BoundingSphere(s,0);t.flyToBoundingSphere(l,{offset:new i.HeadingPitchRange(0,i.Math.PI_OVER_TWO-i.Cartesian3.angleBetween(o,t.directionWC),i.Cartesian3.distance(a,s)),duration:1.5})}_getCameraFocus(e){let t=new i.Cartesian3,r=this._viewer.scene,s=r.camera;if(r.mode!==i.SceneMode.MORPHING){if(this._viewer.delegate.trackedEntity)t=this._viewer.delegate.trackedEntity.position.getValue(this._viewer.clock.currentTime);else{let a=new i.Ray;a.origin=s.positionWC,a.direction=s.directionWC,t=r.globe.pick(a,r)}if(t){if(r.mode===i.SceneMode.SCENE2D||r.mode===i.SceneMode.COLUMBUS_VIEW){t=s.worldToCameraCoordinatesPoint(t);let a=new i.Cartographic;e&&(t=r.globe.ellipsoid.cartographicToCartesian(r.mapProjection.unproject(t,a)))}else e||(t=s.worldToCameraCoordinatesPoint(t));return t}}}_orbit(e){let t=this._viewer.scene,r=t.screenSpaceCameraController,s=t.camera;if(!(t.mode===i.SceneMode.MORPHING||!r.enableInputs)){switch(t.mode){case i.SceneMode.COLUMBUS_VIEW:if(r.enableLook)break;if(!r.enableTranslate||!r.enableTilt)return;break;case i.SceneMode.SCENE3D:if(r.enableLook)break;if(!r.enableTilt||!r.enableRotate)return;break;case i.SceneMode.SCENE2D:if(!r.enableTranslate)return;break}if(this._mouseMoveHandle=a=>{this._orbitMouseMoveFunction(a)},this._mouseUpHandle=()=>{this._orbitMouseUpFunction()},document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._orbitLastTimestamp=i.getTimestamp(),this._viewer.delegate.trackedEntity)this._orbitFrame=void 0,this._orbitIsLook=!1;else{let a=this._getCameraFocus(!0);a?(this._orbitFrame=i.Transforms.eastNorthUpToFixedFrame(a,t.globe.ellipsoid),this._orbitIsLook=!1):(this._orbitFrame=i.Transforms.eastNorthUpToFixedFrame(s.positionWC,t.globe.ellipsoid),this._orbitIsLook=!0)}this._rotation_marker.style.visibility="visible",this._gyro.className+=" gyro-active",document.addEventListener("mousemove",this._mouseMoveHandle,!1),document.addEventListener("mouseup",this._mouseUpHandle,!1),this._viewer.clock.onTick.addEventListener(this._orbitTickFunction,this),this._updateAngleAndOpacity(e,this._compassRectangle.width)}}_orbitTickFunction(){let e=this._viewer.scene,t=this._viewer.camera,r=i.getTimestamp(),s=r-this._orbitLastTimestamp,a=(this._orbitCursorOpacity-.5)*2.5/1e3,o=s*a,l=this._orbitCursorAngle+i.Math.PI_OVER_TWO,h=Math.cos(l)*o,c=Math.sin(l)*o,d;this._orbitFrame&&(d=i.Matrix4.clone(t.transform),t.lookAtTransform(this._orbitFrame)),e.mode===i.SceneMode.SCENE2D?t.move(new i.Cartesian3(h,c,0),Math.max(e.canvas.clientWidth,e.canvas.clientHeight)/100*t.positionCartographic.height*o):this._orbitIsLook?(t.look(i.Cartesian3.UNIT_Z,-h),t.look(t.right,-c)):(t.rotateLeft(h),t.rotateUp(c)),this._orbitFrame&&d&&t.lookAtTransform(d),this._orbitLastTimestamp=r}_updateAngleAndOpacity(e,t){let r=Math.atan2(-e.y,e.x);this._orbitCursorAngle=i.Math.zeroToTwoPi(r-i.Math.PI_OVER_TWO);let s=i.Cartesian2.magnitude(e),a=t/2,o=Math.min(s/a,1);this._orbitCursorOpacity=.5*o*o+.5,this._rotation_marker.style.cssText=`
111
110
  transform: rotate(-${this._orbitCursorAngle}rad);
112
- opacity: ${this._orbitCursorOpacity}`}_orbitMouseMoveFunction(e){this._updateAngleAndOpacity(this._getVector(e),this._compassRectangle.width)}_orbitMouseUpFunction(){document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._viewer.clock.onTick.removeEventListener(this._orbitTickFunction,this),this._mouseMoveHandle=void 0,this._mouseUpHandle=void 0,this._rotation_marker.style.visibility="hidden",this._gyro.className=this._gyro.className.replace(" gyro-active","")}_rotate(e){let t=this._viewer.scene,r=t.camera,s=t.screenSpaceCameraController;if(t.mode===i.SceneMode.MORPHING||t.mode===i.SceneMode.SCENE2D||!s.enableInputs||!s.enableLook&&(t.mode===i.SceneMode.COLUMBUS_VIEW||t.mode===i.SceneMode.SCENE3D&&!s.enableRotate))return;if(this._mouseMoveHandle=o=>{this._rotateMouseMoveFunction(o)},this._mouseUpHandle=()=>{this._rotateMouseUpFunction()},document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._rotateInitialCursorAngle=Math.atan2(-e.y,e.x),this._viewer.delegate.trackedEntity)this._rotateFrame=void 0;else{let o=this._getCameraFocus(!0);!o||t.mode===i.SceneMode.COLUMBUS_VIEW&&!s.enableLook&&!s.enableTranslate?this._rotateFrame=i.Transforms.eastNorthUpToFixedFrame(r.positionWC,t.globe.ellipsoid):this._rotateFrame=i.Transforms.eastNorthUpToFixedFrame(o,t.globe.ellipsoid)}let a;this._rotateFrame&&(a=i.Matrix4.clone(r.transform),r.lookAtTransform(this._rotateFrame)),this._rotateInitialCameraAngle=-r.heading,this._rotateFrame&&a&&r.lookAtTransform(a),document.addEventListener("mousemove",this._mouseMoveHandle,!1),document.addEventListener("mouseup",this._mouseUpHandle,!1)}_rotateMouseMoveFunction(e){let t=this._viewer.camera,r=this._getVector(e),a=Math.atan2(-r.y,r.x)-this._rotateInitialCursorAngle,o=i.Math.zeroToTwoPi(this._rotateInitialCameraAngle-a),n;this._rotateFrame&&(n=i.Matrix4.clone(t.transform),t.lookAtTransform(this._rotateFrame));let h=-t.heading;t.rotateRight(o-h),this._rotateFrame&&n&&t.lookAtTransform(n)}_rotateMouseUpFunction(){document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._mouseMoveHandle=void 0,this._mouseUpHandle=void 0}_getVector(e){let t=this._compassRectangle,r=new i.Cartesian2((t.right-t.left)/2,(t.bottom-t.top)/2),s=new i.Cartesian2(e.clientX-t.left,e.clientY-t.top),a=new i.Cartesian2;return i.Cartesian2.subtract(s,r,a),a}};S.registerType("compass");var qn=Cr;var Xn=new i.EllipsoidGeodesic,ke=[1,2,3,5],Tr=[...ke,...ke.map(l=>l*10),...ke.map(l=>l*100),...ke.map(l=>l*1e3),...ke.map(l=>l*1e4),...ke.map(l=>l*1e5),...ke.map(l=>l*1e6)],Er=class extends S{constructor(){super(),this._wrapper=b.create("div","widget distance-legend"),this._labelEl=void 0,this._scaleBarEl=void 0,this._lastUpdate=i.getTimestamp(),this._state=m.INITIALIZED}get type(){return S.getWidgetType("distance_legend")}_installHook(){let e=this;Object.defineProperty(this._viewer,"distanceLegend",{get(){return e}})}_bindEvent(){this._viewer.on(D.POST_RENDER,this._updateContent,this)}_unbindEvent(){this._viewer.off(D.POST_RENDER,this._updateContent,this)}_updateContent(e,t){let r=i.getTimestamp();if(r<this._lastUpdate+250||!this._labelEl||!this._scaleBarEl)return;this._lastUpdate=r;let s=e.canvas.width,a=e.canvas.height,o=e.camera.getPickRay(new i.Cartesian2(s/2|0,a-1)),n=e.camera.getPickRay(new i.Cartesian2(1+s/2|0,a-1)),h=e.globe.pick(o,e),c=e.globe.pick(n,e);if(!h||!c)return;Xn.setEndPoints(e.globe.ellipsoid.cartesianToCartographic(h),e.globe.ellipsoid.cartesianToCartographic(c));let p=Xn.surfaceDistance,f=100,y=0;for(let _=Tr.length-1;_>=0;--_)if(Tr[_]/p<f){y=Tr[_];break}if(y){this._wrapper.style.visibility="visible",this._labelEl.innerHTML=y>=1e3?`${y/1e3} km`:`${y} m`;let _=y/p|0;this._scaleBarEl.style.cssText=`width: ${_}px; left: ${(125-_)/2}px;`}}_mountContent(){this._labelEl=b.create("div","label",this._wrapper),this._scaleBarEl=b.create("div","scale-bar",this._wrapper),this._wrapper.style.visibility="hidden",this._ready=!0}};S.registerType("distance_legend");var Qn=Er;var Pr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget zoom-controller"),this._zoomInEl=void 0,this._zoomOutEl=void 0,this._refreshEl=void 0,this._state=m.INITIALIZED}get type(){return S.getWidgetType("zoom_controller")}_getCameraFocus(e){let t=new i.Ray(e.camera.positionWC,e.camera.directionWC),r=i.IntersectionTests.rayEllipsoid(t,i.Ellipsoid.WGS84);return r?i.Ray.getPoint(t,r.start):i.IntersectionTests.grazingAltitudeLocation(t,i.Ellipsoid.WGS84)}_getCameraPosition(e,t,r){let s=new i.Cartesian3,a=i.Cartesian3.subtract(t,e.position,s),o=i.Cartesian3.multiplyByScalar(a,r,s);return i.Cartesian3.add(e.position,o,s)}_zoomIn(){let e=this._viewer.scene,t=e.camera,r=e.screenSpaceCameraController;if(e.mode===i.SceneMode.MORPHING||!r.enableInputs||e.mode===i.SceneMode.COLUMBUS_VIEW)return!0;if(e.mode===i.SceneMode.SCENE2D)t.zoomIn(t.positionCartographic.height*.5);else if(e.mode===i.SceneMode.SCENE3D){let s=this._getCameraFocus(e),a=this._getCameraPosition(t,s,1/2);t.flyTo({destination:a,orientation:{heading:t.heading,pitch:t.pitch,roll:t.roll},duration:.5,convert:!1})}}_refresh(){this._viewer.camera.flyHome(1.5)}_zoomOut(){let e=this._viewer.scene,t=e.camera,r=e.screenSpaceCameraController;if(e.mode===i.SceneMode.MORPHING||!r.enableInputs||e.mode===i.SceneMode.COLUMBUS_VIEW)return!0;if(e.mode===i.SceneMode.SCENE2D)t.zoomOut(t.positionCartographic.height);else if(e.mode===i.SceneMode.SCENE3D){let s=this._getCameraFocus(e),a=this._getCameraPosition(t,s,-1);t.flyTo({destination:a,orientation:{heading:t.heading,pitch:t.pitch,roll:t.roll},duration:.5,convert:!1})}}_installHook(){let e=this;Object.defineProperty(this._viewer,"zoomController",{get(){return e}})}_mountContent(){this._zoomInEl=b.parseDom(K.increase,!0,"zoom-in"),this._refreshEl=b.parseDom(K.refresh,!0,"refresh"),this._zoomOutEl=b.parseDom(K.decrease,!0,"zoom-out"),this._wrapper.appendChild(this._zoomInEl),this._wrapper.appendChild(this._refreshEl),this._wrapper.appendChild(this._zoomOutEl);let e=this;this._zoomInEl.onclick=()=>{e._zoomIn()},this._refreshEl.onclick=()=>{e._refresh()},this._zoomOutEl.onclick=()=>{e._zoomOut()},this._ready=!0}};S.registerType("zoom_controller");var Kn=Pr;var Mr=class extends S{constructor(){super(),this._wrapper=b.create("div","widget loading-mask"),this._state=m.INITIALIZED}get type(){return S.getWidgetType("loading_mask")}_installHook(){let e=this;Object.defineProperty(this._viewer,"loadingMask",{get(){return e}})}_mountContent(){let e=b.parseDom(`
111
+ opacity: ${this._orbitCursorOpacity}`}_orbitMouseMoveFunction(e){this._updateAngleAndOpacity(this._getVector(e),this._compassRectangle.width)}_orbitMouseUpFunction(){document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._viewer.clock.onTick.removeEventListener(this._orbitTickFunction,this),this._mouseMoveHandle=void 0,this._mouseUpHandle=void 0,this._rotation_marker.style.visibility="hidden",this._gyro.className=this._gyro.className.replace(" gyro-active","")}_rotate(e){let t=this._viewer.scene,r=t.camera,s=t.screenSpaceCameraController;if(t.mode===i.SceneMode.MORPHING||t.mode===i.SceneMode.SCENE2D||!s.enableInputs||!s.enableLook&&(t.mode===i.SceneMode.COLUMBUS_VIEW||t.mode===i.SceneMode.SCENE3D&&!s.enableRotate))return;if(this._mouseMoveHandle=o=>{this._rotateMouseMoveFunction(o)},this._mouseUpHandle=()=>{this._rotateMouseUpFunction()},document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._rotateInitialCursorAngle=Math.atan2(-e.y,e.x),this._viewer.delegate.trackedEntity)this._rotateFrame=void 0;else{let o=this._getCameraFocus(!0);!o||t.mode===i.SceneMode.COLUMBUS_VIEW&&!s.enableLook&&!s.enableTranslate?this._rotateFrame=i.Transforms.eastNorthUpToFixedFrame(r.positionWC,t.globe.ellipsoid):this._rotateFrame=i.Transforms.eastNorthUpToFixedFrame(o,t.globe.ellipsoid)}let a;this._rotateFrame&&(a=i.Matrix4.clone(r.transform),r.lookAtTransform(this._rotateFrame)),this._rotateInitialCameraAngle=-r.heading,this._rotateFrame&&a&&r.lookAtTransform(a),document.addEventListener("mousemove",this._mouseMoveHandle,!1),document.addEventListener("mouseup",this._mouseUpHandle,!1)}_rotateMouseMoveFunction(e){let t=this._viewer.camera,r=this._getVector(e),a=Math.atan2(-r.y,r.x)-this._rotateInitialCursorAngle,o=i.Math.zeroToTwoPi(this._rotateInitialCameraAngle-a),l;this._rotateFrame&&(l=i.Matrix4.clone(t.transform),t.lookAtTransform(this._rotateFrame));let h=-t.heading;t.rotateRight(o-h),this._rotateFrame&&l&&t.lookAtTransform(l)}_rotateMouseUpFunction(){document.removeEventListener("mousemove",this._mouseMoveHandle,!1),document.removeEventListener("mouseup",this._mouseUpHandle,!1),this._mouseMoveHandle=void 0,this._mouseUpHandle=void 0}_getVector(e){let t=this._compassRectangle,r=new i.Cartesian2((t.right-t.left)/2,(t.bottom-t.top)/2),s=new i.Cartesian2(e.clientX-t.left,e.clientY-t.top),a=new i.Cartesian2;return i.Cartesian2.subtract(s,r,a),a}};k.registerType("compass");var Gl=qr;var Hl=new i.EllipsoidGeodesic,Ze=[1,2,3,5],Jr=[...Ze,...Ze.map(n=>n*10),...Ze.map(n=>n*100),...Ze.map(n=>n*1e3),...Ze.map(n=>n*1e4),...Ze.map(n=>n*1e5),...Ze.map(n=>n*1e6)],Xr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget distance-legend"),this._labelEl=void 0,this._scaleBarEl=void 0,this._lastUpdate=i.getTimestamp(),this._state=f.INITIALIZED}get type(){return k.getWidgetType("distance_legend")}_installHook(){let e=this;Object.defineProperty(this._viewer,"distanceLegend",{get(){return e}})}_bindEvent(){this._viewer.on(N.POST_RENDER,this._updateContent,this)}_unbindEvent(){this._viewer.off(N.POST_RENDER,this._updateContent,this)}_updateContent(e,t){let r=i.getTimestamp();if(r<this._lastUpdate+250||!this._labelEl||!this._scaleBarEl)return;this._lastUpdate=r;let s=e.canvas.width,a=e.canvas.height,o=e.camera.getPickRay(new i.Cartesian2(s/2|0,a-1)),l=e.camera.getPickRay(new i.Cartesian2(1+s/2|0,a-1)),h=e.globe.pick(o,e),c=e.globe.pick(l,e);if(!h||!c)return;Hl.setEndPoints(e.globe.ellipsoid.cartesianToCartographic(h),e.globe.ellipsoid.cartesianToCartographic(c));let d=Hl.surfaceDistance,u=100,_=0;for(let m=Jr.length-1;m>=0;--m)if(Jr[m]/d<u){_=Jr[m];break}if(_){this._wrapper.style.visibility="visible",this._labelEl.innerHTML=_>=1e3?`${_/1e3} km`:`${_} m`;let m=_/d|0;this._scaleBarEl.style.cssText=`width: ${m}px; left: ${(125-m)/2}px;`}}_mountContent(){this._labelEl=D.create("div","label",this._wrapper),this._scaleBarEl=D.create("div","scale-bar",this._wrapper),this._wrapper.style.visibility="hidden",this._ready=!0}};k.registerType("distance_legend");var Wl=Xr;var Qr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget zoom-controller"),this._zoomInEl=void 0,this._zoomOutEl=void 0,this._refreshEl=void 0,this._state=f.INITIALIZED}get type(){return k.getWidgetType("zoom_controller")}_getCameraFocus(e){let t=new i.Ray(e.camera.positionWC,e.camera.directionWC),r=i.IntersectionTests.rayEllipsoid(t,i.Ellipsoid.WGS84);return r?i.Ray.getPoint(t,r.start):i.IntersectionTests.grazingAltitudeLocation(t,i.Ellipsoid.WGS84)}_getCameraPosition(e,t,r){let s=new i.Cartesian3,a=i.Cartesian3.subtract(t,e.position,s),o=i.Cartesian3.multiplyByScalar(a,r,s);return i.Cartesian3.add(e.position,o,s)}_zoomIn(){let e=this._viewer.scene,t=e.camera,r=e.screenSpaceCameraController;if(e.mode===i.SceneMode.MORPHING||!r.enableInputs||e.mode===i.SceneMode.COLUMBUS_VIEW)return!0;if(e.mode===i.SceneMode.SCENE2D)t.zoomIn(t.positionCartographic.height*.5);else if(e.mode===i.SceneMode.SCENE3D){let s=this._getCameraFocus(e),a=this._getCameraPosition(t,s,1/2);t.flyTo({destination:a,orientation:{heading:t.heading,pitch:t.pitch,roll:t.roll},duration:.5,convert:!1})}}_refresh(){this._viewer.camera.flyHome(1.5)}_zoomOut(){let e=this._viewer.scene,t=e.camera,r=e.screenSpaceCameraController;if(e.mode===i.SceneMode.MORPHING||!r.enableInputs||e.mode===i.SceneMode.COLUMBUS_VIEW)return!0;if(e.mode===i.SceneMode.SCENE2D)t.zoomOut(t.positionCartographic.height);else if(e.mode===i.SceneMode.SCENE3D){let s=this._getCameraFocus(e),a=this._getCameraPosition(t,s,-1);t.flyTo({destination:a,orientation:{heading:t.heading,pitch:t.pitch,roll:t.roll},duration:.5,convert:!1})}}_installHook(){let e=this;Object.defineProperty(this._viewer,"zoomController",{get(){return e}})}_mountContent(){this._zoomInEl=D.parseDom(re.increase,!0,"zoom-in"),this._refreshEl=D.parseDom(re.refresh,!0,"refresh"),this._zoomOutEl=D.parseDom(re.decrease,!0,"zoom-out"),this._wrapper.appendChild(this._zoomInEl),this._wrapper.appendChild(this._refreshEl),this._wrapper.appendChild(this._zoomOutEl);let e=this;this._zoomInEl.onclick=()=>{e._zoomIn()},this._refreshEl.onclick=()=>{e._refresh()},this._zoomOutEl.onclick=()=>{e._zoomOut()},this._ready=!0}};k.registerType("zoom_controller");var Bl=Qr;var Kr=class extends k{constructor(){super(),this._wrapper=D.create("div","widget loading-mask"),this._state=f.INITIALIZED}get type(){return k.getWidgetType("loading_mask")}_installHook(){let e=this;Object.defineProperty(this._viewer,"loadingMask",{get(){return e}})}_mountContent(){let e=D.parseDom(`
113
112
  <span></span>
114
113
  <span></span>
115
114
  <span></span>
116
115
  <span></span>
117
116
  <span></span>
118
- `,!0,"loading");this._wrapper.appendChild(e),this._ready=!0}};S.registerType("loading_mask");var $n=Mr;var Ar=class extends S{constructor(){super(),this._wrapper=b.create("div","widget slider"),this._tileset=void 0,this._moveActive=!1,this._state=m.INITIALIZED}get type(){return S.getWidgetType("tileset_split")}_installHook(){let e=this;Object.defineProperty(this._viewer,"tilesetSplit",{get(){return e}})}_bindEvent(){this._viewer.scene.splitPosition=.5,this._wrapper.style.left="50%"}_unbindEvent(){this._tileset?this._viewer.scene.splitPosition=this._tileset.splitDirection>0?1:0:this._viewer.scene.splitPosition=0}_mountContent(){let e=b.parseDom(K.splitter,!0,"splitter");this._wrapper.appendChild(e);let t=new i.ScreenSpaceEventHandler(e),r=this;t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.LEFT_DOWN),t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.PINCH_START),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.MOUSE_MOVE),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.PINCH_MOVE),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.LEFT_UP),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.PINCH_END),this._ready=!0}_moveHandler(e){if(!this._moveActive||!this._enable)return;let t=e.endPosition.x,r=(this._wrapper.offsetLeft+t)/this._wrapper.parentElement.offsetWidth;this._wrapper.style.left=100*r+"%",this._viewer.scene.splitPosition=r}addTileset(e){return!this._viewer||!this._enable?this:(e&&(this._tileset&&this._viewer.scene.primitives.remove(this._tileset),this._tileset=this._viewer.scene.primitives.add(e.delegate||e),this._viewer.scene.splitPosition=this._wrapper.offsetLeft/this._wrapper.parentElement.offsetWidth),this)}};S.registerType("tileset_split");var el=Ar;var br=class extends S{constructor(){super(),this._wrapper=b.create("div","widget slider"),this._tileset=void 0,this._baseLayer=void 0,this._moveActive=!1,this._state=m.INITIALIZED}get type(){return S.getWidgetType("scene_split")}_installHook(){let e=this;Object.defineProperty(this._viewer,"sceneSplit",{get(){return e}})}_bindEvent(){this._viewer.scene.splitPosition=.5,this._wrapper.style.left="50%"}_unbindEvent(){this._viewer.scene.splitPosition=1}_mountContent(){let e=b.parseDom(K.splitter,!0,"splitter");this._wrapper.appendChild(e);let t=new i.ScreenSpaceEventHandler(e),r=this;t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.LEFT_DOWN),t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.PINCH_START),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.MOUSE_MOVE),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.PINCH_MOVE),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.LEFT_UP),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.PINCH_END),this._ready=!0}_moveHandler(e){if(!this._moveActive||!this._enable)return;let t=e.endPosition.x,r=(this._wrapper.offsetLeft+t)/this._wrapper.parentElement.offsetWidth;this._wrapper.style.left=100*r+"%",this._viewer.scene.splitPosition=r}addTileset(e){return!this._viewer||!this._enable?this:(e&&(this._tileset&&this._viewer.scene.primitives.remove(this._tileset),Promise.resolve(e.delegate||e).then(t=>{this._tileset=this._viewer.scene.primitives.add(t)})),this)}addBaseLayer(e){return!this._viewer||!this._enable?this:(e&&(this._baseLayer&&this._viewer.imageryLayers.remove(this._baseLayer),Promise.resolve(e).then(t=>{this._baseLayer=this._viewer.imageryLayers.addImageryProvider(t),this._baseLayer.splitDirection=1})),this)}};S.registerType("scene_split");var tl=br;var Sr=class{constructor(){this._delegate=new i.ViewportQuad,this._viewer=void 0}update(e){this._delegate.update(e)}install(e){this._viewer=e;let t=!0,r=K.logo,s=[120,51];if(t&&!r)return!1;let a=t&&r?r:K.logo;this._delegate.rectangle=new i.BoundingRectangle(10,30,s[0]||120,s[1]||51),this._delegate.material=new i.Material({fabric:{type:"Logo-Image",uniforms:{image:a},components:{diffuse:"texture(image, materialInput.st).rgb",alpha:"texture(image, materialInput.st).a "}},translucent:function(o){return!1}}),this._viewer.scene.primitives.add(this),t||this._viewer.scene.postRender.addEventListener(()=>{this._viewer.scene.primitives.contains(this)||this._viewer.scene.primitives.add(this)})}isDestroyed(){return!1}destroy(){return this}};S.registerType("attribution");var il=Sr;function Ir(){return{popup:new Zn,contextMenu:new On,tooltip:new Yn,mapSwitch:new jn,mapSplit:new Vn,locationBar:new kn,hawkeyeMap:new Jn,compass:new qn,distanceLegend:new Qn,zoomController:new Kn,loadingMask:new $n,tilesetSplit:new el,sceneSplit:new tl,attribution:new il}}var Ge="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsSAAALEgHS3X78AAACCklEQVQ4jWP8//8/Ax5gwMDAIACVfgDF2AHIIDSs8Of+8x3/vv/88ffFu++/jl75/evEte//vnz//e/Dl3d/nrye8P//fwF0fSicv28/Vv7/////t8W7/79Wi///gt0DBb9zLfv/89Cl/3/fff7w//9/A2S9cK/9//i1g4GZqeSdcwnzn4v38HmXgSs3gIGnKfEXIyebOQMDwwWQGMwgh/9fvu8hxhAY4Ix1ZeCdnPOTkYNNgoGB4QMT2DWfv6/50riIaENA4Pvi3Qy/T99k//v0TQOIDzLI4P/nb/zfJm8g2hAY+Nq8hIFJmC8DbNDfp28Sfqw7zEKyKQwMDL8OXQKFLShsDJgYmRhN/j58SY45YPDn1hMOUFpjYmBj5aHEIBhg+vvw5QVWPWWyDWBkY/kBoplYjVQPsOgrkWeIADcDq7kmyGsXQLG2gd3XkoFZXpxkg7hzAhn+3nl6HpaOPvx79X4+35xikgwBWcxVEPSXWUW6iAGajhiYxASLWLTkHxNrGMhLAmsb/v57+2klAwPDAbAYUjEi8O/tp0t/rj2U/ZTSy4ArJtns9Bj4F5T9YWBk2M4kKewHNxytPBL49+p9H5OYYOLPzcfBCQ6WbUAGsAdY/2VWkfrz/+PXIiZxwWkorsRRsCn8e/cp8v+nb/aMvFygTMnw/8v3q8zy4rsZGBgWYKhmYGAAAN6EGE9igaT+AAAAAElFTkSuQmCC";var ft="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsSAAALEgHS3X78AAAB+klEQVQ4jZ2UT2gTQRTGv5nd7G7TsNnW1QimWC+CghBEqJ7sSTx50oM3iwhejSJ486J4qdWLt6JXsQdPVdRDj0WQBqEehKJotLbEbrLNJvtnZlYmZEub1rLJB8Mw8+b9Zt7Me0PiOMY+KgGwuubv3ba3JKinjUfBj7dC+D6L1tt+82Pke5/agnsRZ+4GC38/iePY6vXbcSLBnXtUGXnYdObQWJ8BC6s7NjeGzyJfuAXNONGgSn4SQCWxbYEE33xECL3zZ+WyEvpf9gsXpn0dVuFuSKgxkcAS0GQsvA9pIIlyI1cweuRBQIh+GECddk4jvLn62nRqiFTTeYWgtaTzaPW+HEtQKeabebc2mxqSqLE2A6qO3uyAeLR6rdWYV/umAPC9RQjuyrspUYCeYVE1hdveioIVQ+YaJSST633mQURZ9KuiDZ0cGECI5sueakOnFjLGYCCqmNCzp2VoFflqr7PmBahasW+QTEwWfFtK8qjOWe35geJ0XxC5sWnf4Kp+rIxuHkFR7bKmH/+ZFiZDOnR0lnPmvASwIOe2F60l2MbnMPg69rd6e1fBJpKFa489ZQB5o2QKl5L53v/I4qz2WFHtqZb7DoG3iLC93DEYuXPImhdlKExwt6yoB59td/zfxzYuuHNV8OZ5SodlUUKI1rKqFd8DeLFrNYB/A6b1Qz9EzRMAAAAASUVORK5CYII=";var Yd={icon_center:ft,icon_anchor:Ge,icon_size:[12,12],clampToModel:!1,maxAnchorSize:999},Dr=class{constructor(){this._viewer=void 0,this._anchorLayer=new i.CustomDataSource("draw-anchor-layer"),this._floatingAnchor=void 0,this._options={},this._plotEvent=new et,this._tooltipMess=void 0,this._anchorIds=[]}set tooltipMess(e){this._tooltipMess=e}_getEventPosition(e){return this._options.clampToModel&&e.position?e.position:e.surfacePosition}_onClick(e){let t=this._getEventPosition(e);if(!t)return!1;this._floatingAnchor||(this._floatingAnchor=this._onCreateAnchor({position:t})),this._plotEvent.fire(E.DRAW_ANCHOR,t)}_onMouseMove(e){this._viewer.tooltip.showAt(e.windowPosition,this._tooltipMess);let t=this._getEventPosition(e);if(!t)return!1;this._floatingAnchor&&this._floatingAnchor.position.setValue(t),this._plotEvent.fire(E.ANCHOR_MOVING,t)}_onDoubleClick(e){this._plotEvent.fire(E.DRAW_STOP,this._getEventPosition(e))}_onRightClick(e){if(this._plotEvent.fire(E.DELETE_ANCHOR),this._anchorIds&&this._anchorIds.length>0){var t=this._anchorIds[this._anchorIds.length-1];this._anchorLayer.entities.removeById(t),this._anchorIds.splice(this._anchorIds.length-1,1)}}_onCreateAnchor({position:e,isCenter:t=!1}){var s;let r=this._anchorLayer.entities.add({position:e,billboard:{image:t?this._options.icon_center:this._options.icon_anchor,width:this._options.icon_size[0],height:this._options.icon_size[1],pixelOffset:this._options.pixelOffset||new i.Cartesian2(0,0),eyeOffset:this._options.eyeOffset||new i.Cartesian3(0,0,-100),disableDepthTestDistance:(s=this._options.disableDepthTestDistance)!=null?s:0,heightReference:this._viewer.scene.mode===i.SceneMode.SCENE3D&&!this._options.clampToModel?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE}});return this._anchorIds.push(r.id),r}_onClearAnchor(){this._anchorLayer.entities.removeAll(),this._anchorIds=[]}_bindEvent(){this._viewer.on(R.CLICK,this._onClick,this),this._viewer.on(R.MOUSE_MOVE,this._onMouseMove,this),this._viewer.on(R.DB_CLICK,this._onDoubleClick,this),this._viewer.on(R.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.on(E.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.on(E.CLEAR_ANCHOR,this._onClearAnchor,this)}_unbindEvent(){this._viewer.off(R.CLICK,this._onClick,this),this._viewer.off(R.MOUSE_MOVE,this._onMouseMove,this),this._viewer.off(R.DB_CLICK,this._onDoubleClick,this),this._viewer.off(R.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.off(E.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.off(E.CLEAR_ANCHOR,this._onClearAnchor,this)}on(e,t,r){return this._plotEvent.on(e,t,r||this),this}off(e,t,r){return this._plotEvent.off(e,t,r||this),this}fire(e,t={}){return this._plotEvent.fire(e,t),this}activate(e={}){return this._viewer.tooltip.enable=!0,this._options={...Yd,...e},this._anchorIds=[],this._unbindEvent(),this._bindEvent(),this.fire(E.DRAW_START,this._options),this}deactivate(){return this._unbindEvent(),this._viewer.tooltip.enable=!1,this._anchorLayer.entities.removeAll(),this._floatingAnchor=void 0,this._anchorIds=[],this}install(e){this._viewer=e,this._viewer.dataSources.add(this._anchorLayer),Object.defineProperty(this._viewer,"drawTool",{value:this,writable:!1})}},rl=Dr;var sl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsSAAALEgHS3X78AAACDElEQVQ4jWP8//8/Ax5gwMDAIACVfgDF2AHIIDSscO/l7x3ff/378fz9n++Hr//4fezmz+9ffvz7/eHr33eP3/6Z8P//fwF0fSguevv5X6UwL1PbwoNfGRrWfGJ48PoPiuUOWuwMDSH8DHryrB8FuZkcGBgYLsDk4AZ9/Pavg5mJscS24SXzhQe/8XmXocCLl6Etgv8XJxujOcwwmEEOX37830OMITCQYM/NMD1F8CcHK6MEAwPDByaQ+Ofv/9fUrvpItCEgsODgV4aTt3+xP3n3twHEBxlk8On7P/4J2z4TbQgMNKz5yCDCy5QBNujJu78Ja05+YyHZFAYGhgPXfjJ8+PoPFDYGTEyMDCYPXv8lxxwwuPnsDwcorTGxsTDyoEczOYDp4es/Fwzk2cg2gI2F8QeIZjJWYjtgoMBKliEC3EwMlmpsIK9dAMXaBn8TTgYFUdLDu8CTl+H2iz/nYenow8uPf+cvyBQiyRCQxcU+vH9VJViKGKDpiEGcn7lIW5b1MbGGgby0qVTk75vPf1eCUgFIDDnTCrz5/O/S1ce/ZROmv8PIsDAAyrhLcoT/MDIybJcSZPaDiaOXRwIvP/7tE+dnTtx45js4wV148Ass4aDFwRBkxvlXVZLlz4ev/4okBJinIWvEVbApvP38L/LT93/2vJxMoEzJ8OXHv6sKoiy7QdkMQzUDAwMAuq71NKWtMMgAAAAASUVORK5CYII=";var qd={icon_center:ft,icon_anchor:Ge,icon_midAnchor:sl,icon_size:[12,12],clampToModel:!0},Lr=class{constructor(){this._viewer=void 0,this._anchorLayer=new i.CustomDataSource("edit-anchor-layer"),this._options={},this._plotEvent=new et,this._tooltipMess=void 0,this._pickedAnchor=void 0,this._isMoving=!1,this._anchors=[]}set tooltipMess(e){this._tooltipMess=e}_onClick(e){if(this._isMoving){let t=this._options.clampToModel&&e.position?e.position:e.surfacePosition;if(!t)return!1;this._pickedAnchor&&this._pickedAnchor.position&&this._pickedAnchor.properties&&(this._pickedAnchor.position.setValue(t),this._plotEvent.fire(E.EDIT_ANCHOR_STOP,{pickedAnchor:this._pickedAnchor,position:t})),this._isMoving=!1}else{if(!e.target||!e.target.id)return!1;this._pickedAnchor=e.target.id,this._isMoving=!0}}_onMouseMove(e){if(this._viewer.tooltip.showAt(e.windowPosition,this._tooltipMess),!this._isMoving&&this._anchors.length!==0)return!1;let t=this._options.clampToModel&&e.position?e.position:e.surfacePosition;if(!t)return!1;this._pickedAnchor&&this._pickedAnchor.position&&this._pickedAnchor.properties?(this._pickedAnchor.position.setValue(t),this._plotEvent.fire(E.ANCHOR_MOVING,{pickedAnchor:this._pickedAnchor,position:t})):this._anchors.length===0&&this._plotEvent.fire(E.ANCHOR_MOVING,{position:t})}_onRightClick(e){let t=this._options.clampToModel&&e.position?e.position:e.surfacePosition;this._plotEvent.fire(E.EDIT_STOP,{pickedAnchor:this._pickedAnchor,position:t})}_onCreateAnchor({position:e,index:t,isCenter:r=!1,isMid:s=!1}){var n;let a=s?this._options.icon_midAnchor:r?this._options.icon_center:this._options.icon_anchor,o=this._anchorLayer.entities.add({position:e,billboard:{image:a,width:this._options.icon_size[0],height:this._options.icon_size[1],pixelOffset:this._options.pixelOffset||new i.Cartesian2(0,0),eyeOffset:this._options.eyeOffset||new i.Cartesian3(0,0,-100),disableDepthTestDistance:(n=this._options.disableDepthTestDistance)!=null?n:0,heightReference:this._viewer.scene.mode===i.SceneMode.SCENE3D&&!this._options.clampToModel?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},properties:{isMid:s,index:t}});this._anchors.push(o)}_onUpdateAnchor({index:e,position:t}){this._anchors[e]&&this._anchors[e].position.setValue(t)}_onClearAnchor(){this._anchorLayer.entities.removeAll(),this._anchors=[]}_bindEvent(){this._viewer.on(R.CLICK,this._onClick,this),this._viewer.on(R.MOUSE_MOVE,this._onMouseMove,this),this._viewer.on(R.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.on(E.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.on(E.UPDATE_ANCHOR,this._onUpdateAnchor,this),this._plotEvent.on(E.CLEAR_ANCHOR,this._onClearAnchor,this)}_unbindEvent(){this._viewer.off(R.CLICK,this._onClick,this),this._viewer.off(R.MOUSE_MOVE,this._onMouseMove,this),this._viewer.off(R.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.off(E.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.off(E.UPDATE_ANCHOR,this._onUpdateAnchor,this),this._plotEvent.off(E.CLEAR_ANCHOR,this._onClearAnchor,this)}on(e,t,r){return this._plotEvent.on(e,t,r||this),this}off(e,t,r){return this._plotEvent.off(e,t,r||this),this}fire(e,t){return this._plotEvent.fire(e,t),this}activate(e={}){return this._anchorLayer.entities.removeAll(),this._anchors=[],this._viewer.tooltip.enable=!0,this._options={...qd,...e},this._unbindEvent(),this._bindEvent(),this.fire(E.EDIT_START,this._options),this}deactivate(){return this._unbindEvent(),this._viewer.tooltip.enable=!1,this._anchorLayer.entities.removeAll(),this._anchors=[],this}install(e){this._viewer=e,this._viewer.dataSources.add(this._anchorLayer),Object.defineProperty(this._viewer,"editTool",{value:this,writable:!1})}},al=Lr;function Rr(){return{drawTool:new rl,editTool:new al}}var{ImageryLayer:Xd}=i,Or=class{constructor(e={}){if(!e.globe)throw new Error("globe is required");this._globe=e.globe,this._imageryLayers=[],this._selectedImageryLayer=void 0,this._count=0}get selectedImageryLayer(){return this._selectedImageryLayer}set selectedImageryLayer(e){if((!e||!e.layers)&&new Error("imagery format error"),!(this._selectedImageryLayer&&e.id===this._selectedImageryLayer.id)){if(this._selectedImageryLayer&&e.id!==this._selectedImageryLayer.id){for(let t=0;t<this._selectedImageryLayer.cache.length;t++)this._globe.imageryLayers.remove(this._selectedImageryLayer.cache[t]);e.cache=[]}for(let t=e.layers.length-1;t>=0;t--){let r=e.layers[t],s=Xd.fromProviderAsync(r,e.options);r&&this._globe.imageryLayers.add(s,0),e.cache.push(s)}this._selectedImageryLayer=e}}addImageryLayer(e,t={}){let r=[];return Array.isArray(e)?r=e.slice(0):r=[e],this._count++,this._imageryLayers.push({id:`imagery-no-${this._count}`,layers:r,cache:[]}),this}changeImageryLayer(e){if(e>this._imageryLayers.length-1)throw new Error("index error");return this.selectedImageryLayer=this._imageryLayers[e],this}},kr=Or;var{BoxGeometry:ol,Cartesian3:Qd,defined:ge,DeveloperError:nl,GeometryPipeline:Kd,Matrix3:ll,Matrix4:zr,Transforms:$d,VertexFormat:em,BufferUsage:tm,CubeMap:im,loadCubeMap:rm,RenderState:sm,VertexArray:am,BlendingState:om,SceneMode:hl,ShaderProgram:nm,ShaderSource:lm,SkyBox:hm}=i,cm=`
117
+ `,!0,"loading");this._wrapper.appendChild(e),this._ready=!0}};k.registerType("loading_mask");var Ul=Kr;var $r=class extends k{constructor(){super(),this._wrapper=D.create("div","widget slider"),this._tileset=void 0,this._moveActive=!1,this._state=f.INITIALIZED}get type(){return k.getWidgetType("tileset_split")}_installHook(){let e=this;Object.defineProperty(this._viewer,"tilesetSplit",{get(){return e}})}_bindEvent(){this._viewer.scene.splitPosition=.5,this._wrapper.style.left="50%"}_unbindEvent(){this._tileset?this._viewer.scene.splitPosition=this._tileset.splitDirection>0?1:0:this._viewer.scene.splitPosition=0}_mountContent(){let e=D.parseDom(re.splitter,!0,"splitter");this._wrapper.appendChild(e);let t=new i.ScreenSpaceEventHandler(e),r=this;t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.LEFT_DOWN),t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.PINCH_START),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.MOUSE_MOVE),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.PINCH_MOVE),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.LEFT_UP),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.PINCH_END),this._ready=!0}_moveHandler(e){if(!this._moveActive||!this._enable)return;let t=e.endPosition.x,r=(this._wrapper.offsetLeft+t)/this._wrapper.parentElement.offsetWidth;this._wrapper.style.left=100*r+"%",this._viewer.scene.splitPosition=r}addTileset(e){return!this._viewer||!this._enable?this:(e&&(this._tileset&&this._viewer.scene.primitives.remove(this._tileset),this._tileset=this._viewer.scene.primitives.add(e.delegate||e),this._viewer.scene.splitPosition=this._wrapper.offsetLeft/this._wrapper.parentElement.offsetWidth),this)}};k.registerType("tileset_split");var Vl=$r;var es=class extends k{constructor(){super(),this._wrapper=D.create("div","widget slider"),this._tileset=void 0,this._baseLayer=void 0,this._moveActive=!1,this._state=f.INITIALIZED}get type(){return k.getWidgetType("scene_split")}_installHook(){let e=this;Object.defineProperty(this._viewer,"sceneSplit",{get(){return e}})}_bindEvent(){this._viewer.scene.splitPosition=.5,this._wrapper.style.left="50%"}_unbindEvent(){this._viewer.scene.splitPosition=1}_mountContent(){let e=D.parseDom(re.splitter,!0,"splitter");this._wrapper.appendChild(e);let t=new i.ScreenSpaceEventHandler(e),r=this;t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.LEFT_DOWN),t.setInputAction(()=>{r._moveActive=!0},i.ScreenSpaceEventType.PINCH_START),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.MOUSE_MOVE),t.setInputAction(s=>{r._moveHandler(s)},i.ScreenSpaceEventType.PINCH_MOVE),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.LEFT_UP),t.setInputAction(()=>{r._moveActive=!1},i.ScreenSpaceEventType.PINCH_END),this._ready=!0}_moveHandler(e){if(!this._moveActive||!this._enable)return;let t=e.endPosition.x,r=(this._wrapper.offsetLeft+t)/this._wrapper.parentElement.offsetWidth;this._wrapper.style.left=100*r+"%",this._viewer.scene.splitPosition=r}addTileset(e){return!this._viewer||!this._enable?this:(e&&(this._tileset&&this._viewer.scene.primitives.remove(this._tileset),Promise.resolve(e.delegate||e).then(t=>{this._tileset=this._viewer.scene.primitives.add(t)})),this)}addBaseLayer(e){return!this._viewer||!this._enable?this:(e&&(this._baseLayer&&this._viewer.imageryLayers.remove(this._baseLayer),Promise.resolve(e).then(t=>{this._baseLayer=this._viewer.imageryLayers.addImageryProvider(t),this._baseLayer.splitDirection=1})),this)}};k.registerType("scene_split");var Zl=es;var ts=class{constructor(){this._delegate=new i.ViewportQuad,this._viewer=void 0}update(e){this._delegate.update(e)}install(e){this._viewer=e;let t=!0,r=re.logo,s=[86,26];if(t&&!r)return!1;let a=t&&r?r:re.logo;this._delegate.rectangle=new i.BoundingRectangle(2,1,s[0]||86,s[1]||26),this._delegate.material=new i.Material({fabric:{type:"Logo-Image",uniforms:{image:a},components:{diffuse:"texture(image, materialInput.st).rgb",alpha:"texture(image, materialInput.st).a "}},translucent:function(o){return!1}}),this._viewer.scene.primitives.add(this),t||this._viewer.scene.postRender.addEventListener(()=>{this._viewer.scene.primitives.contains(this)||this._viewer.scene.primitives.add(this)})}isDestroyed(){return!1}destroy(){return this}};k.registerType("attribution");var jl=ts;function is(){return{popup:new Nl,contextMenu:new El,tooltip:new zl,mapSwitch:new Ol,mapSplit:new kl,locationBar:new Pl,hawkeyeMap:new Fl,compass:new Gl,distanceLegend:new Wl,zoomController:new Bl,loadingMask:new Ul,tilesetSplit:new Vl,sceneSplit:new Zl,attribution:new jl}}var Ke="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsSAAALEgHS3X78AAACCklEQVQ4jWP8//8/Ax5gwMDAIACVfgDF2AHIIDSs8Of+8x3/vv/88ffFu++/jl75/evEte//vnz//e/Dl3d/nrye8P//fwF0fSicv28/Vv7/////t8W7/79Wi///gt0DBb9zLfv/89Cl/3/fff7w//9/A2S9cK/9//i1g4GZqeSdcwnzn4v38HmXgSs3gIGnKfEXIyebOQMDwwWQGMwgh/9fvu8hxhAY4Ix1ZeCdnPOTkYNNgoGB4QMT2DWfv6/50riIaENA4Pvi3Qy/T99k//v0TQOIDzLI4P/nb/zfJm8g2hAY+Nq8hIFJmC8DbNDfp28Sfqw7zEKyKQwMDL8OXQKFLShsDJgYmRhN/j58SY45YPDn1hMOUFpjYmBj5aHEIBhg+vvw5QVWPWWyDWBkY/kBoplYjVQPsOgrkWeIADcDq7kmyGsXQLG2gd3XkoFZXpxkg7hzAhn+3nl6HpaOPvx79X4+35xikgwBWcxVEPSXWUW6iAGajhiYxASLWLTkHxNrGMhLAmsb/v57+2klAwPDAbAYUjEi8O/tp0t/rj2U/ZTSy4ArJtns9Bj4F5T9YWBk2M4kKewHNxytPBL49+p9H5OYYOLPzcfBCQ6WbUAGsAdY/2VWkfrz/+PXIiZxwWkorsRRsCn8e/cp8v+nb/aMvFygTMnw/8v3q8zy4rsZGBgWYKhmYGAAAN6EGE9igaT+AAAAAElFTkSuQmCC";var It="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsSAAALEgHS3X78AAAB+klEQVQ4jZ2UT2gTQRTGv5nd7G7TsNnW1QimWC+CghBEqJ7sSTx50oM3iwhejSJ486J4qdWLt6JXsQdPVdRDj0WQBqEehKJotLbEbrLNJvtnZlYmZEub1rLJB8Mw8+b9Zt7Me0PiOMY+KgGwuubv3ba3JKinjUfBj7dC+D6L1tt+82Pke5/agnsRZ+4GC38/iePY6vXbcSLBnXtUGXnYdObQWJ8BC6s7NjeGzyJfuAXNONGgSn4SQCWxbYEE33xECL3zZ+WyEvpf9gsXpn0dVuFuSKgxkcAS0GQsvA9pIIlyI1cweuRBQIh+GECddk4jvLn62nRqiFTTeYWgtaTzaPW+HEtQKeabebc2mxqSqLE2A6qO3uyAeLR6rdWYV/umAPC9RQjuyrspUYCeYVE1hdveioIVQ+YaJSST633mQURZ9KuiDZ0cGECI5sueakOnFjLGYCCqmNCzp2VoFflqr7PmBahasW+QTEwWfFtK8qjOWe35geJ0XxC5sWnf4Kp+rIxuHkFR7bKmH/+ZFiZDOnR0lnPmvASwIOe2F60l2MbnMPg69rd6e1fBJpKFa489ZQB5o2QKl5L53v/I4qz2WFHtqZb7DoG3iLC93DEYuXPImhdlKExwt6yoB59td/zfxzYuuHNV8OZ5SodlUUKI1rKqFd8DeLFrNYB/A6b1Qz9EzRMAAAAASUVORK5CYII=";var Ju={icon_center:It,icon_anchor:Ke,icon_size:[12,12],clampToModel:!1,maxAnchorSize:999},rs=class{constructor(){this._viewer=void 0,this._anchorLayer=new i.CustomDataSource("draw-anchor-layer"),this._floatingAnchor=void 0,this._options={},this._plotEvent=new ut,this._tooltipMess=void 0,this._anchorIds=[]}set tooltipMess(e){this._tooltipMess=e}_getEventPosition(e){return this._options.clampToModel&&e.position?e.position:e.surfacePosition}_onClick(e){let t=this._getEventPosition(e);if(!t)return!1;this._floatingAnchor||(this._floatingAnchor=this._onCreateAnchor({position:t})),this._plotEvent.fire(P.DRAW_ANCHOR,t)}_onMouseMove(e){this._viewer.tooltip.showAt(e.windowPosition,this._tooltipMess);let t=this._getEventPosition(e);if(!t)return!1;this._floatingAnchor&&this._floatingAnchor.position.setValue(t),this._plotEvent.fire(P.ANCHOR_MOVING,t)}_onDoubleClick(e){this._plotEvent.fire(P.DRAW_STOP,this._getEventPosition(e))}_onRightClick(e){if(this._plotEvent.fire(P.DELETE_ANCHOR),this._anchorIds&&this._anchorIds.length>0){var t=this._anchorIds[this._anchorIds.length-1];this._anchorLayer.entities.removeById(t),this._anchorIds.splice(this._anchorIds.length-1,1)}}_onCreateAnchor({position:e,isCenter:t=!1}){var s;let r=this._anchorLayer.entities.add({position:e,billboard:{image:t?this._options.icon_center:this._options.icon_anchor,width:this._options.icon_size[0],height:this._options.icon_size[1],pixelOffset:this._options.pixelOffset||new i.Cartesian2(0,0),eyeOffset:this._options.eyeOffset||new i.Cartesian3(0,0,-100),disableDepthTestDistance:(s=this._options.disableDepthTestDistance)!=null?s:0,heightReference:this._viewer.scene.mode===i.SceneMode.SCENE3D&&!this._options.clampToModel?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE}});return this._anchorIds.push(r.id),r}_onClearAnchor(){this._anchorLayer.entities.removeAll(),this._anchorIds=[]}_bindEvent(){this._viewer.on(W.CLICK,this._onClick,this),this._viewer.on(W.MOUSE_MOVE,this._onMouseMove,this),this._viewer.on(W.DB_CLICK,this._onDoubleClick,this),this._viewer.on(W.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.on(P.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.on(P.CLEAR_ANCHOR,this._onClearAnchor,this)}_unbindEvent(){this._viewer.off(W.CLICK,this._onClick,this),this._viewer.off(W.MOUSE_MOVE,this._onMouseMove,this),this._viewer.off(W.DB_CLICK,this._onDoubleClick,this),this._viewer.off(W.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.off(P.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.off(P.CLEAR_ANCHOR,this._onClearAnchor,this)}on(e,t,r){return this._plotEvent.on(e,t,r||this),this}off(e,t,r){return this._plotEvent.off(e,t,r||this),this}fire(e,t={}){return this._plotEvent.fire(e,t),this}activate(e={}){return this._viewer.tooltip.enable=!0,this._options={...Ju,...e},this._anchorIds=[],this._unbindEvent(),this._bindEvent(),this.fire(P.DRAW_START,this._options),this}deactivate(){return this._unbindEvent(),this._viewer.tooltip.enable=!1,this._anchorLayer.entities.removeAll(),this._floatingAnchor=void 0,this._anchorIds=[],this}install(e){this._viewer=e,this._viewer.dataSources.add(this._anchorLayer),Object.defineProperty(this._viewer,"drawTool",{value:this,writable:!1})}},Yl=rs;var ql="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAYAAABWzo5XAAAACXBIWXMAAAsSAAALEgHS3X78AAACDElEQVQ4jWP8//8/Ax5gwMDAIACVfgDF2AHIIDSscO/l7x3ff/378fz9n++Hr//4fezmz+9ffvz7/eHr33eP3/6Z8P//fwF0fSguevv5X6UwL1PbwoNfGRrWfGJ48PoPiuUOWuwMDSH8DHryrB8FuZkcGBgYLsDk4AZ9/Pavg5mJscS24SXzhQe/8XmXocCLl6Etgv8XJxujOcwwmEEOX37830OMITCQYM/NMD1F8CcHK6MEAwPDByaQ+Ofv/9fUrvpItCEgsODgV4aTt3+xP3n3twHEBxlk8On7P/4J2z4TbQgMNKz5yCDCy5QBNujJu78Ja05+YyHZFAYGhgPXfjJ8+PoPFDYGTEyMDCYPXv8lxxwwuPnsDwcorTGxsTDyoEczOYDp4es/Fwzk2cg2gI2F8QeIZjJWYjtgoMBKliEC3EwMlmpsIK9dAMXaBn8TTgYFUdLDu8CTl+H2iz/nYenow8uPf+cvyBQiyRCQxcU+vH9VJViKGKDpiEGcn7lIW5b1MbGGgby0qVTk75vPf1eCUgFIDDnTCrz5/O/S1ce/ZROmv8PIsDAAyrhLcoT/MDIybJcSZPaDiaOXRwIvP/7tE+dnTtx45js4wV148Ass4aDFwRBkxvlXVZLlz4ev/4okBJinIWvEVbApvP38L/LT93/2vJxMoEzJ8OXHv6sKoiy7QdkMQzUDAwMAuq71NKWtMMgAAAAASUVORK5CYII=";var Qu={icon_center:It,icon_anchor:Ke,icon_midAnchor:ql,icon_size:[12,12],clampToModel:!0},ss=class{constructor(){this._viewer=void 0,this._anchorLayer=new i.CustomDataSource("edit-anchor-layer"),this._options={},this._plotEvent=new ut,this._tooltipMess=void 0,this._pickedAnchor=void 0,this._isMoving=!1,this._anchors=[]}set tooltipMess(e){this._tooltipMess=e}_onClick(e){if(this._isMoving){let t=this._options.clampToModel&&e.position?e.position:e.surfacePosition;if(!t)return!1;this._pickedAnchor&&this._pickedAnchor.position&&this._pickedAnchor.properties&&(this._pickedAnchor.position.setValue(t),this._plotEvent.fire(P.EDIT_ANCHOR_STOP,{pickedAnchor:this._pickedAnchor,position:t})),this._isMoving=!1}else{if(!e.target||!e.target.id)return!1;this._pickedAnchor=e.target.id,this._isMoving=!0}}_onMouseMove(e){if(this._viewer.tooltip.showAt(e.windowPosition,this._tooltipMess),!this._isMoving&&this._anchors.length!==0)return!1;let t=this._options.clampToModel&&e.position?e.position:e.surfacePosition;if(!t)return!1;this._pickedAnchor&&this._pickedAnchor.position&&this._pickedAnchor.properties?(this._pickedAnchor.position.setValue(t),this._plotEvent.fire(P.ANCHOR_MOVING,{pickedAnchor:this._pickedAnchor,position:t})):this._anchors.length===0&&this._plotEvent.fire(P.ANCHOR_MOVING,{position:t})}_onRightClick(e){let t=this._options.clampToModel&&e.position?e.position:e.surfacePosition;this._plotEvent.fire(P.EDIT_STOP,{pickedAnchor:this._pickedAnchor,position:t})}_onCreateAnchor({position:e,index:t,isCenter:r=!1,isMid:s=!1}){var l;let a=s?this._options.icon_midAnchor:r?this._options.icon_center:this._options.icon_anchor,o=this._anchorLayer.entities.add({position:e,billboard:{image:a,width:this._options.icon_size[0],height:this._options.icon_size[1],pixelOffset:this._options.pixelOffset||new i.Cartesian2(0,0),eyeOffset:this._options.eyeOffset||new i.Cartesian3(0,0,-100),disableDepthTestDistance:(l=this._options.disableDepthTestDistance)!=null?l:0,heightReference:this._viewer.scene.mode===i.SceneMode.SCENE3D&&!this._options.clampToModel?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},properties:{isMid:s,index:t}});this._anchors.push(o)}_onUpdateAnchor({index:e,position:t}){this._anchors[e]&&this._anchors[e].position.setValue(t)}_onClearAnchor(){this._anchorLayer.entities.removeAll(),this._anchors=[]}_bindEvent(){this._viewer.on(W.CLICK,this._onClick,this),this._viewer.on(W.MOUSE_MOVE,this._onMouseMove,this),this._viewer.on(W.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.on(P.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.on(P.UPDATE_ANCHOR,this._onUpdateAnchor,this),this._plotEvent.on(P.CLEAR_ANCHOR,this._onClearAnchor,this)}_unbindEvent(){this._viewer.off(W.CLICK,this._onClick,this),this._viewer.off(W.MOUSE_MOVE,this._onMouseMove,this),this._viewer.off(W.RIGHT_CLICK,this._onRightClick,this),this._plotEvent.off(P.CREATE_ANCHOR,this._onCreateAnchor,this),this._plotEvent.off(P.UPDATE_ANCHOR,this._onUpdateAnchor,this),this._plotEvent.off(P.CLEAR_ANCHOR,this._onClearAnchor,this)}on(e,t,r){return this._plotEvent.on(e,t,r||this),this}off(e,t,r){return this._plotEvent.off(e,t,r||this),this}fire(e,t){return this._plotEvent.fire(e,t),this}activate(e={}){return this._anchorLayer.entities.removeAll(),this._anchors=[],this._viewer.tooltip.enable=!0,this._options={...Qu,...e},this._unbindEvent(),this._bindEvent(),this.fire(P.EDIT_START,this._options),this}deactivate(){return this._unbindEvent(),this._viewer.tooltip.enable=!1,this._anchorLayer.entities.removeAll(),this._anchors=[],this}install(e){this._viewer=e,this._viewer.dataSources.add(this._anchorLayer),Object.defineProperty(this._viewer,"editTool",{value:this,writable:!1})}},Jl=ss;function as(){return{drawTool:new Yl,editTool:new Jl}}var{ImageryLayer:Ku}=i,os=class{constructor(e={}){if(!e.globe)throw new Error("globe is required");this._globe=e.globe,this._imageryLayers=[],this._selectedImageryLayer=void 0,this._count=0}get selectedImageryLayer(){return this._selectedImageryLayer}set selectedImageryLayer(e){if((!e||!e.layers)&&new Error("imagery format error"),!(this._selectedImageryLayer&&e.id===this._selectedImageryLayer.id)){if(this._selectedImageryLayer&&e.id!==this._selectedImageryLayer.id){for(let t=0;t<this._selectedImageryLayer.cache.length;t++)this._globe.imageryLayers.remove(this._selectedImageryLayer.cache[t]);e.cache=[]}for(let t=e.layers.length-1;t>=0;t--){let r=e.layers[t],s=Ku.fromProviderAsync(r,e.options);r&&this._globe.imageryLayers.add(s,0),e.cache.push(s)}this._selectedImageryLayer=e}}addImageryLayer(e,t={}){let r=[];return Array.isArray(e)?r=e.slice(0):r=[e],this._count++,this._imageryLayers.push({id:`imagery-no-${this._count}`,layers:r,cache:[]}),this}changeImageryLayer(e){if(e>this._imageryLayers.length-1)throw new Error("index error");return this.selectedImageryLayer=this._imageryLayers[e],this}},ns=os;var{BoxGeometry:Xl,Cartesian3:$u,defined:Ae,DeveloperError:Ql,GeometryPipeline:ef,Matrix3:Kl,Matrix4:ls,Transforms:tf,VertexFormat:rf,BufferUsage:sf,CubeMap:af,loadCubeMap:of,RenderState:nf,VertexArray:lf,BlendingState:hf,SceneMode:$l,ShaderProgram:cf,ShaderSource:df,SkyBox:pf}=i,mf=`
119
118
  uniform samplerCube u_cubeMap;
120
119
  in vec3 v_texCoord;
121
120
  void main()
@@ -123,7 +122,7 @@ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABmCAYAAAD1ahzMAAAACXBIWXMAAA
123
122
  vec4 color = czm_textureCube(u_cubeMap, normalize(v_texCoord));
124
123
  out_FragColor = vec4(czm_gammaCorrect(color).rgb, czm_morphTime);
125
124
  }
126
- `,pm=`
125
+ `,uf=`
127
126
  in vec3 position;
128
127
  out vec3 v_texCoord;
129
128
  uniform mat3 u_rotateMatrix;
@@ -133,12 +132,12 @@ data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPAAAABmCAYAAAD1ahzMAAAACXBIWXMAAA
133
132
  gl_Position = czm_projection * vec4(p, 1.0);
134
133
  v_texCoord = position.xyz;
135
134
  }
136
- `,Nr=class extends hm{constructor(e={}){super(e),this.offsetAngle=(e==null?void 0:e.offsetAngle)||0}update(e,t){let r=this;if(!this.show||e.mode!==hl.SCENE3D&&e.mode!==hl.MORPHING||!e.passes.render)return;let s=e.context;if(this._sources!==this.sources){this._sources=this.sources;let o=this.sources;if(!ge(o.positiveX)||!ge(o.negativeX)||!ge(o.positiveY)||!ge(o.negativeY)||!ge(o.positiveZ)||!ge(o.negativeZ))throw new nl("this.sources is required and must have positiveX, negativeX, positiveY, negativeY, positiveZ, and negativeZ properties.");if(typeof o.positiveX!=typeof o.negativeX||typeof o.positiveX!=typeof o.positiveY||typeof o.positiveX!=typeof o.negativeY||typeof o.positiveX!=typeof o.positiveZ||typeof o.positiveX!=typeof o.negativeZ)throw new nl("this.sources properties must all be the same type.");typeof o.positiveX=="string"?rm(s,this._sources).then(function(n){r._cubeMap=r._cubeMap&&r._cubeMap.destroy(),r._cubeMap=n}):(this._cubeMap=this._cubeMap&&this._cubeMap.destroy(),this._cubeMap=new im({context:s,source:o}))}let a=this._command;if(a.modelMatrix=$d.eastNorthUpToFixedFrame(e.camera.positionWC),this.offsetAngle!==0&&zr.multiply(a.modelMatrix,zr.fromRotationTranslation(ll.fromRotationZ(this.offsetAngle/180*Math.PI)),a.modelMatrix),!ge(a.vertexArray)){a.uniformMap={u_cubeMap:function(){return r._cubeMap},u_rotateMatrix:function(){return zr.getMatrix3(a.modelMatrix,new ll)}};let o=ol.createGeometry(ol.fromDimensions({dimensions:new Qd(2,2,2),vertexFormat:em.POSITION_ONLY})),n=this._attributeLocations=Kd.createAttributeLocations(o);a.vertexArray=am.fromGeometry({context:s,geometry:o,attributeLocations:n,bufferUsage:tm._DRAW}),a.renderState=sm.fromCache({blending:om.ALPHA_BLEND})}if(!ge(a.shaderProgram)||this._useHdr!==t){let o=new lm({defines:[t?"HDR":""],sources:[cm]});a.shaderProgram=nm.fromCache({context:s,vertexShaderSource:pm,fragmentShaderSource:o,attributeLocations:this._attributeLocations}),this._useHdr=t}if(ge(this._cubeMap))return a}},cl=Nr;var dm={creditContainer:document.createElement("div"),creditViewport:document.createElement("div"),baseLayer:!1,shouldAnimate:!0},Fr=class{constructor(e,t={}){if(__cmdOut&&__cmdOut(),!e||typeof e=="string"&&!document.getElementById(e))throw new Error("Viewer: the container is empty");if(e instanceof HTMLElement)throw new Error("Viewer: not support the type container");if(typeof e=="string"){let a=Ei("baseUrl");a&&i.buildModuleUrl.setBaseUrl(a)}this._delegate=typeof e!="string"?e:new i.CesiumWidget(e,{...dm,...t}),this._delegate.canvas.parentNode.className="viewer-canvas",new ki(this,t),this._viewerEvent=new Ni,this._sceneEvent=new Wi(this),this._viewerOption=new cr(this),this._cameraOption=new dr(this),this._widgetContainer=b.create("div","viewer-widgets",typeof e=="string"?document.getElementById(e):this._delegate.container),this._layerContainer=b.create("div","viewer-layers",typeof e=="string"?document.getElementById(e):this._delegate.container),this._baseLayerPicker=new kr({globe:this._delegate.scene.globe}),this._layerGroupCache={},this._layerCache={};let r=Ir();Object.keys(r).forEach(a=>{this._use(r[a])});let s=Rr();Object.keys(s).forEach(a=>{this._use(s[a])})}get delegate(){return this._delegate}get container(){return this._delegate.container}get widgetContainer(){return this._widgetContainer}get layerContainer(){return this._layerContainer}get scene(){return this._delegate.scene}get camera(){return this._delegate.camera}get canvas(){return this._delegate.scene.canvas}get dataSources(){return this._delegate.dataSources}get imageryLayers(){return this._delegate.imageryLayers}get terrainProvider(){return this._delegate.terrainProvider}get entities(){return this._delegate.entities}get postProcessStages(){return this._delegate.scene.postProcessStages}get clock(){return this._delegate.clock}get viewerEvent(){return this._viewerEvent}get cameraPosition(){var t,r,s,a,o,n,h;let e=u.transformCartographicToWGS84((t=this.camera)==null?void 0:t.positionCartographic);return e&&(e.heading=i.Math.toDegrees((s=(r=this.camera)==null?void 0:r.heading)!=null?s:0),e.pitch=i.Math.toDegrees((o=(a=this.camera)==null?void 0:a.pitch)!=null?o:0),e.roll=i.Math.toDegrees((h=(n=this.camera)==null?void 0:n.roll)!=null?h:0)),e}get resolution(){let e=this.scene.canvas.width,t=this.scene.canvas.height,r=u.transformWindowToWGS84(new i.Cartesian2(e/2|0,t-1),this),s=u.transformWindowToWGS84(new i.Cartesian2(1+e/2|0,t-1),this);return!r||!s?1:Math.abs(r.lng-s.lng)}get viewBounds(){let e=this.scene.canvas.width,t=this.scene.canvas.height,r=u.transformWindowToWGS84(new i.Cartesian2(0,t),this),s=u.transformWindowToWGS84(new i.Cartesian2(e,0),this);return!r||!s?i.Rectangle.MAX_VALUE:i.Rectangle.fromDegrees(r.lng,r.lat,s.lng,s.lat)}get zoom(){let e=this.camera.positionCartographic.height,t=40487.57,r=7096758e-11,s=91610.74,a=-40467.74;return Math.round(a+(t-a)/(1+Math.pow(e/s,r)))}get centerPosition(){return this.camera.pickEllipsoid(new i.Cartesian2(this.canvas.clientWidth/2,this.canvas.clientHeight/2))}get centerPositionWGS84(){let e=this.centerPosition,t=i.Ellipsoid.WGS84.cartesianToCartographic(e),r=t.longitude*180/Math.PI,s=t.latitude*180/Math.PI,a=this.cameraHeight;return new U(r,s,0,a)}get cameraHeight(){return this.scene.globe.ellipsoid.cartesianToCartographic(this.camera.position).height}_use(e){return e&&e.install&&e.install(this),this}_addLayerGroup(e){e!=null&&e.layerGroupEvent&&!Object(this._layerGroupCache).hasOwnProperty(e.id)&&(e.layerGroupEvent.fire(Ee.ADD,this),this._layerGroupCache[e.id]=e)}_removeLayerGroup(e){e!=null&&e.layerGroupEvent&&Object(this._layerGroupCache).hasOwnProperty(e.id)&&(e.layerGroupEvent.fire(Ee.REMOVE,this),delete this._layerGroupCache[e.id])}_addLayer(e){!this._layerCache[e.type]&&(this._layerCache[e.type]={}),Object(this._layerCache[e.type]).hasOwnProperty(e.id)||(e.fire(Pe.ADD,this),this._layerCache[e.type][e.id]=e)}_removeLayer(e){Object(this._layerCache[e.type]).hasOwnProperty(e.id)&&(e.fire(Pe.REMOVE,this),delete this._layerCache[e.type][e.id])}setOptions(e){return this._viewerOption.setOptions(e),this}setPitchRange(e=-90,t=-20){return this._cameraOption.setPitchRange(e,t),this}changeSceneMode(e,t=0){return e===2?this._delegate.scene.morphTo2D(t):e===3?this._delegate.scene.morphTo3D(t):e===2.5&&this._delegate.scene.morphToColumbusView(t),this}changeMouseMode(e){return this._cameraOption.changeMouseMode(e),this}setTerrain(e){return this._delegate.scene.setTerrain(new i.Terrain(e||Promise.resolve(new i.EllipsoidTerrainProvider))),this}addBaseLayer(e,t={}){return e?(this._baseLayerPicker.addImageryLayer(e,t),this._baseLayerPicker.selectedImageryLayer||this._baseLayerPicker.changeImageryLayer(0),this.mapSwitch&&this.mapSwitch.addMap(t),this):this}changeBaseLayer(e){return this._baseLayerPicker.changeImageryLayer(e),this}getImageryLayerInfo(e){let t=this._delegate.camera.getPickRay(e);return this._delegate.imageryLayers.pickImageryLayerFeatures(t,this._delegate.scene)}addLayerGroup(e){return this._addLayerGroup(e),this}removeLayerGroup(e){return this._removeLayerGroup(e),this}getLayerGroup(e){return this._layerGroupCache[e]||void 0}addLayer(e){return this._addLayer(e),this}removeLayer(e){return this._removeLayer(e),this}hasLayer(e){return Object(this._layerCache[e.type]).hasOwnProperty(e.id)}getLayer(e){let t=this.getLayers().filter(r=>r.id===e);return t&&t.length?t[0]:void 0}getLayers(){let e=[];return Object.keys(this._layerCache).forEach(t=>{let r=this._layerCache[t];Object.keys(r).forEach(s=>{e.push(r[s])})}),e}eachLayer(e,t){return Object.keys(this._layerCache).forEach(r=>{let s=this._layerCache[r];Object.keys(s).forEach(a=>{e.call(t,s[a])})}),this}flyTo(e,t){return this._delegate.flyTo((e==null?void 0:e.delegate)||e,{duration:t}),this}zoomTo(e){return this._delegate.zoomTo((e==null?void 0:e.delegate)||e),this}flyToPosition(e,t,r){return e=g.parsePosition(e),this.camera.flyTo({destination:u.transformWGS84ToCartesian(e),orientation:{heading:i.Math.toRadians(e.heading),pitch:i.Math.toRadians(e.pitch),roll:i.Math.toRadians(e.roll)},complete:t,duration:r}),this}flyToPoint(e,t={}){return new Promise((r,s)=>{if(!e){r(!1);return}e=k.parse(e);let a=e.toCartesian();if(t.clampToGround)if(t.hasTerrain){_e.getSurfaceHeight(this._delegate.scene,a,{has3dtiles:!0}).then(f=>{e.alt=f.height*(this._delegate.scene.globe.terrainExaggeration||1),delete t.clampToGround,this.flyToPoint(e,t).then(y=>{r(y)})});return}else e.alt=0,a=e.toCartesian();let o=t.radius||this.getCameraDistance()||100;i.defined(t.scale)&&t.scale>0&&(o*=t.scale),i.defined(t.minHeight)&&o<t.minHeight&&(o=t.minHeight),i.defined(t.maxHeight)&&o>t.maxHeight&&(o=t.maxHeight);let n;if(i.defined(t.pitch))n=i.Math.toRadians(t.pitch);else{n=this._delegate.camera.pitch;let f=i.Math.toDegrees(n);i.defined(t.minPitch)&&f<t.minPitch&&(n=i.Math.toRadians(t.minPitch)),i.defined(t.maxPitch)&&f>t.maxPitch&&(n=i.Math.toRadians(t.maxPitch))}let h=i.defined(t.heading)?i.Math.toRadians(t.heading):this._delegate.camera.heading,c=new i.HeadingPitchRange(h,n,o),p=new i.BoundingSphere(a,0);t.duration===0?(this._delegate.camera.lookAt(a,c),!t.lock&&!this._delegate.trackedEntity&&this._delegate.camera.lookAtTransform(i.Matrix4.IDENTITY),t.complete&&t.complete(),r(!0)):this._delegate.camera.flyToBoundingSphere(p,{...t,offset:c,complete:()=>{t.complete&&t.complete(),r(!0)},cancel:()=>{t.cancel&&t.cancel(),r(!1)}})})}getCenter(){try{let e=this.scene.canvas,t=new i.Cartesian2(e.clientWidth/2,e.clientHeight/2),r=scene.camera.getPickRay(t),s=scene.globe.pick(r,scene);return s||(s=scene.camera.pickEllipsoid(t)),s?k.fromCartesian(s):void 0}catch{return}}getHeight(e,t){var o;let r=this.scene,s=k.toCartographic(e),a;if(r.getHeight?a=r.getHeight(s,t&&t.heightReference):a=r.globe.getHeight(s),i.defined(a)&&a>((o=t&&t.min)!=null?o:-999))return a;if(t!=null&&t.original)return s.height}getCameraDistance(){let e=this.getCenter();return e?(e.alt<0&&(e.alt=0),i.Cartesian3.distance(e.toCartesian(),this._delegate.camera.positionWC)):0}zoomToPosition(e,t){return this.flyToPosition(e,t,0),this}flyToBounds(e,{heading:t=0,pitch:r=0,roll:s=0},a,o){return e?(Array.isArray(e)||(e=e.split(",")),this.camera.flyTo({destination:i.Rectangle.fromDegrees(e[0],e[1],e[2],e[3]),orientation:{heading:i.Math.toRadians(t),pitch:i.Math.toRadians(r),roll:i.Math.toRadians(s)},complete:a,duration:o}),this):this}zoomToBounds(e,{heading:t=0,pitch:r=0,roll:s=0},a){return this.flyToBounds(e,{heading:t,pitch:r,roll:s},a),this}on(e,t,r){return this._viewerEvent.on(e,t,r||this),this._sceneEvent.on(e,t,r||this),this}once(e,t,r){return this._viewerEvent.once(e,t,r||this),this}off(e,t,r){return this._viewerEvent.off(e,t,r||this),this._sceneEvent.off(e,t,r||this),this}destroy(){return Object.keys(this._layerCache).forEach(e=>{let t=this._layerCache[e];Object.keys(t).forEach(r=>{this._removeLayer(t[r])})}),this._delegate.destroy(),this._delegate=void 0,this._baseLayerPicker=void 0,this._layerCache={},this._widgetContainer.parentNode.removeChild(this._widgetContainer),this._widgetContainer=void 0,this._layerContainer.parentNode.removeChild(this._layerContainer),this._layerContainer=void 0,this}exportScene(e){this.scene.render();let r=this.canvas.toDataURL("image/png").replace("image/png","image/octet-stream"),s=document.createElement("a"),a=x.dataURLtoBlob(r),o=URL.createObjectURL(a);return s.download=`${e||"scene"}.png`,s.href=o,s.click(),this}getOffset(){var r;let e={x:0,y:0},t=(r=this._delegate)==null?void 0:r.container;if(t)if(t.getBoundingClientRect){let s=t.getBoundingClientRect();e.x=s.left,e.y=s.top}else e.x=t.offsetLeft,e.y=t.offsetTop;return e}},mm=Fr;var B=class B{constructor(e=0,t=0,r=0){this._lng=+e||0,this._lat=+t||0,this._alt=+r||0}get lng(){return this._lng}set lng(e){this._lng=+e}get lat(){return this._lat}set lat(e){this._lat=+e}get alt(){return this._alt}set alt(e){this._alt=+e}clone(){let e=new B;return e.lng=this.lng||0,e.lat=this.lat||0,e.alt=this.alt||0,e}format(){return this.lng=x.formatNum(this.lng,B.FormatLength),this.lat=x.formatNum(this.lat,B.FormatLength),this.alt=x.formatNum(this.alt,B.FormatAltLength),this}toArray(e){return this.format(),e?[this.lng,this.lat]:[this.lng,this.lat,this.alt]}toString(){return this.format(),"".concat(this.lng,",").concat(this.lat,",").concat(this.alt)}toCartesian(e=!1){return!e&&this._position?this._position:i.Cartesian3.fromDegrees(this.lng,this.lat,this.alt)}toCartographic(){return i.Cartographic.fromDegrees(this.lng,this.lat,this.alt)}toMercator(){let e=Math.min(this.lng,180);e=Math.max(e,-180);let t=Math.min(this.lat,85.05112877980659);t=Math.max(t,-85.05112877980659);let r=e*2003750834e-2/180,s=Math.log(Math.tan((90+t)*Math.PI/360))/(Math.PI/180);return s=s*2003750834e-2/180,[r,s,this.alt]}equals(e){return this===e?!0:e instanceof B?this._alt===e._alt&&this._lat===e._lat&&this._lng===e._lng:!1}valid(){return isNaN(this._lat)||isNaN(this._lng)||this._lat<-90||this._lat>90||this._lng<-180||this._lng>180?!1:!(this._lat===0&&this._lng===0&&this._alt===0)}static parse(e,t){if(!e)return new B;if(e instanceof B)return e;let r;if(typeof e=="string")r=B.fromString(e);else if(Array.isArray(e))r=B.fromArray(e);else if(e instanceof B)r=e.clone();else if(i.defined(e.lat)&&i.defined(e.lng)){r=new B(e.lng,e.lat,e.alt);for(let s in e)r[s]=e[s]}else e instanceof i.Cartesian3||e._value||e.getValue?(r=B.fromCartesian(e,t),r._position=e):i.defined(e.x)&&i.defined(e.y)&&i.defined(e.z)?(e=new i.Cartesian3(e.x,e.y,e.z),r=B.fromCartesian(e,t),r._position=e):(r=new B,Oe("\u5750\u6807\u89E3\u6790\u5931\u8D25\uFF0C\u8BF7\u786E\u8BA4\u53C2\u6570\u662F\u5426\u65E0\u8BEF",e));return r}static fromArray(e){let t=new B;return Array.isArray(e)&&(t.lng=e[0]||0,t.lat=e[1]||0,t.alt=e[2]||0),t}static fromString(e){let t=new B;if(e&&typeof e=="string"){let r=e.split(",");t=this.fromArray(r)}return t}static fromCartesian(e,t){let r=new B,s;if(e&&(e instanceof i.Cartesian3?s=e:e._value&&e._value instanceof i.Cartesian3?s=e._value:typeof e.getValue=="function"&&(s=e.getValue(t||i.JulianDate.now()))),s){let a=i.Cartographic.fromCartesian(s);a&&(r.lat=i.Math.toDegrees(a.latitude),r.lng=i.Math.toDegrees(a.longitude),r.alt=a.height,r.format())}return r._position=e,r}static fromCartographic(e){let t=new B;return t.lat=i.Math.toDegrees(e.latitude),t.lng=i.Math.toDegrees(e.longitude),t.alt=e.height,t}static fromMercator(e){let t=Number(e[0]),r=Number(e[1]),s=t/2003750834e-2*180,a=r/2003750834e-2*180;return a=180/Math.PI*(2*Math.atan(Math.exp(a*Math.PI/180))-Math.PI/2),new B(s,a,e[2]||0)}static toCartesian(e,t){return!e||e instanceof i.Cartesian3?e:B.parse(e,t).toCartesian(!0)}static toCartographic(e,t){return!e||e instanceof i.Cartographic?e:B.parse(e,t).toCartographic()}static toArray(e,t){let r=B.parse(e);return!r||!r.valid()?[]:r.toArray(t)}};Ti(B,"FormatLength",6),Ti(B,"FormatAltLength",1);var Wr=B,k=Wr;var Gr=class{static toCartesians(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(s instanceof i.Cartesian3){t?r.push(s.clone()):r.push(s);return}let a=k.parse(s);!a||!a.valid()||r.push(a.toCartesian(!0))}),r}static toCartographics(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(s instanceof i.Cartographic){t?r.push(s.clone()):r.push(s);return}let a=k.parse(s);!a||!a.valid()||r.push(a.toCartographic())}),r}static toPoints(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(s instanceof k&&!t){r.push(s);return}let a=k.parse(s);!a||!a.valid()||r.push(a)}),r}static toArray(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(Array.isArray(s)){r.push(s);return}let a=k.parse(s);!a||!a.valid()||r.push(a.toArray(t))}),r}},We=Gr;var Hr=class{constructor(e){this.options=e,this.scene=e.map?e.map.scene:e.scene,this.scene||Oe("SurfacePoint: \u8BF7\u4F20\u5165scene\u53C2\u6570",this.options),this._point=k.parse(e.position),this._point&&(this._position=this._point.toCartesian(),this._cartographic=this._point.toCartographic(),this._height_original=this._point.alt)}async start(){var r;if(!this._point)return this.getResult();this.scene._terrainProviderPromise&&await this.scene._terrainProviderPromise;let e=(r=this.options.has3dtiles)!=null?r:i.defined(_e.pick3DTileset(this.scene,this._position)),t=!(this.scene.terrainProvider instanceof i.EllipsoidTerrainProvider);if(this._has3dtiles=e,this._hasTerrain=t,!t&&!e)return this.getResult();if(e){let s=await this.scene.clampToHeightMostDetailed([this._position.clone()],this.options.objectsToExclude,this.options.width);if(s.length>0){let a=s[0];if(i.defined(a)){let o=i.Cartographic.fromCartesian(a),n=o?o.height:0;if(i.defined(n)&&n!==0&&n>-1e3)return this.getResult(n)}}else{let a=this.scene.sampleHeight(this._cartographic,this.options.objectsToExclude,this.options.width);if(i.defined(a)&&a>-1e3)return this.getResult(a)}}if(this._hasTerrain){let s;try{let a=this.scene.terrainProvider;a&&a.availability&&(s=await i.sampleTerrainMostDetailed(this.scene.terrainProvider,[this._cartographic]))}catch(a){mt("SurfacePoint:\u8D34\u5730\u5F62\u9AD8\u5EA6\u8BA1\u7B97\u5931\u8D25",a)}if(s&&s.length>0){let a=s[0];if(i.defined(a)&&i.defined(a.height))return this.getResult(a.height)}else return this.getResult(this.scene.globe.getHeight(this._cartographic)||0)}return this.getResult()}getResult(e=0){return this.options.callback&&this.options.callback(e)&&(this._point.alt=e),{height:e,height_original:this._height_original,point:this._point,position:i.Cartesian3.fromRadians(this._cartographic.longitude,this._cartographic.latitude,e),position_original:this._position,has3dtiles:this._has3dtiles,hasTerrain:this._hasTerrain}}},ut=Hr;var Br=class{constructor(e){this.options=e,this.scene=e.map?e.map.scene:e.scene,this.scene||Oe("SurfacePoints: \u8BF7\u4F20\u5165scene\u53C2\u6570",this.options),this.positions=We.toCartesians(this.options.positions)}async start(){var r;if(this.positions==null||this.positions.length===0){this.getResult();return}this.scene._terrainProviderPromise&&await this.scene._terrainProviderPromise();let e=(r=this.options.has3dtiles)!=null?r:i.defined(_e.pick3DTileset(this.scene,this.positions)),t=!(this.scene.terrainProvider instanceof i.EllipsoidTerrainProvider);return this._has3dtiles=e,this._hasTerrain=t,!t&&!e?this.getResult():this.options.exact?this._startForExact():this._startForSketchy()}async _startForExact(){var e;if(this._has3dtiles){let t=[];for(let s=0;s<this.positions.length;++s)t.push(this.positions[s].clone());let r=await this.scene.clampToHeightMostDetailed(t,this.options.objectsToExclude);for(let s=0;s<r.length;++s)!r[s]&&(r[s]=this.positions[s]);if(r.length>0)return this.options.offset&&(r=_e.addPositionsHeight(r,this.options.offset)),this.getResult(r)}if(this._hasTerrain&&this.scene.terrainProvider&&this.scene.terrainProvider.availability){let t=this.scene.globe.ellipsoid,r=t.cartesianArrayToCartographicArray(_0x1da275),s=i.Cartographic.fromCartesian(_0x1da275[0]).height,a=(e=this.options.offset)!=null?e:0,o=!1,n=await i.sampleTerrainMostDetailed(this.scene.terrainProvider,r);for(let c=0;c<n.length;++c)n[c]||(n[c]=this.positions[c]),n[c].height==null?(o=!0,n[c].height=a+s):n[c].height=a+n[c].height;let h=t.cartographicArrayToCartesianArray(n);return this.getResult(h,o)}return this.getResult()}async _startForSketchy(){let e=[];for(let t=0;t<this.positions.length;++t){let r=i.Cartographic.fromCartesian(this.positions[t]),s;if(this._has3dtiles){let a=this.scene.sampleHeight(r,this.options.objectsToExclude,this.options.width);i.defined(a)&&a>-1e3&&(s=a)}if(!i.defined(s)){let a=this.scene.globe.getHeight(r);i.defined(a)&&a>-1e3&&(s=a)}e.push(i.Cartesian3.fromRadians(r.longitude,r.latitude,s!=null?s:r.height))}return this.getResult(e)}getResult(e,t){return this.options.callback&&this.options.callback(e,t,this.positions),{positions:e||this.positions,positions_original:this.positions,noHeight:t,has3dtiles:this._has3dtiles,hasTerrain:this._hasTerrain}}},Rn=Br;var um={ARCGIS:"arcgis",BING:"bing",OSM:"osm",SINGLE_TILE:"single_tile",WMS:"wms",WMTS:"wmts",XYZ:"xyz",COORD:"coord",AMAP:"amap",BAIDU:"baidu",GOOGLE:"google",TDT:"tdt",TENCENT:"tencent",GEO_VIS:"geo_vis",GRID:"grid",MAPBOX:"mapbox",MAPBOX_STYLE:"mapbox_style",TMS:"tms"},z=um;var Ur=class extends i.WebMercatorTilingScheme{constructor(e){super(e);let t=new i.WebMercatorProjection;this._projection.project=function(r,s){return s=me.WGS84ToGCJ02(i.Math.toDegrees(r.longitude),i.Math.toDegrees(r.latitude)),s=t.project(new i.Cartographic(i.Math.toRadians(s[0]),i.Math.toRadians(s[1]))),new i.Cartesian2(s.x,s.y)},this._projection.unproject=function(r,s){let a=t.unproject(r);return s=me.GCJ02ToWGS84(i.Math.toDegrees(a.longitude),i.Math.toDegrees(a.latitude)),new i.Cartographic(i.Math.toRadians(s[0]),i.Math.toRadians(s[1]))}}},_t=Ur;var pl={img:"//webst{s}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}",elec:"//webrd{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",cva:"//webst{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}"},Vr=class extends i.UrlTemplateImageryProvider{constructor(e={}){e.url=e.url||[e.protocol||"",pl[e.style]||pl.elec].join(""),e.subdomains=e.subdomains||["01","02","03","04"],e.crs==="WGS84"&&(e.tilingScheme=new _t),super(e)}};z.AMAP="amap";var dl=Vr;var fm=637099681e-2,ml=[1289059486e-2,836237787e-2,5591021,348198983e-2,167804312e-2,0],gt=[75,60,45,30,15,0],_m=[[1410526172116255e-23,898305509648872e-20,-1.9939833816331,200.9824383106796,-187.2403703815547,91.6087516669843,-23.38765649603339,2.57121317296198,-.03801003308653,173379812e-1],[-7435856389565537e-24,8983055097726239e-21,-.78625201886289,96.32687599759846,-1.85204757529826,-59.36935905485877,47.40033549296737,-16.50741931063887,2.28786674699375,1026014486e-2],[-3030883460898826e-23,898305509983578e-20,.30071316287616,59.74293618442277,7.357984074871,-25.38371002664745,13.45380521110908,-3.29883767235584,.32710905363475,685681737e-2],[-1981981304930552e-23,8983055099779535e-21,.03278182852591,40.31678527705744,.65659298677277,-4.44255534477492,.85341911805263,.12923347998204,-.04625736007561,448277706e-2],[309191371068437e-23,8983055096812155e-21,6995724062e-14,23.10934304144901,-.00023663490511,-.6321817810242,-.00663494467273,.03430082397953,-.00466043876332,25551644e-1],[2890871144776878e-24,8983055095805407e-21,-3068298e-14,7.47137025468032,-353937994e-14,-.02145144861037,-1234426596e-14,.00010322952773,-323890364e-14,826088.5]],ul=[[-.0015702102444,111320.7020616939,0x60e374c3105a3,-0x24bb4115e2e164,0x5cc55543bb0ae8,-0x7ce070193f3784,0x5e7ca61ddf8150,-0x261a578d8b24d0,0x665d60f3742ca,82.5],[.0008277824516172526,111320.7020463578,6477955746671607e-7,-4082003173641316e-6,1077490566351142e-5,-1517187553151559e-5,1205306533862167e-5,-5124939663577472e-6,9133119359512032e-7,67.5],[.00337398766765,111320.7020202162,4481351045890365e-9,-2339375119931662e-8,7968221547186455e-8,-1159649932797253e-7,9723671115602145e-8,-4366194633752821e-8,8477230501135234e-9,52.5],[.00220636496208,111320.7020209128,51751.86112841131,3796837749470245e-9,992013.7397791013,-122195221711287e-8,1340652697009075e-9,-620943.6990984312,144416.9293806241,37.5],[-.0003441963504368392,111320.7020576856,278.2353980772752,2485758690035394e-9,6070.750963243378,54821.18345352118,9540.606633304236,-2710.55326746645,1405.483844121726,22.5],[-.0003218135878613132,111320.7020701615,.00369383431289,823725.6402795718,.46104986909093,2351.343141331292,1.58060784298199,8.77738589078284,.37238884252424,7.45]],jr=class{constructor(){this.isWgs84=!1}getDistanceByMC(e,t){if(!e||!t||(e=this.convertMC2LL(e),!e))return 0;let r=this.toRadians(e.lng),s=this.toRadians(e.lat);if(t=this.convertMC2LL(t),!t)return 0;let a=this.toRadians(t.lng),o=this.toRadians(t.lat);return this.getDistance(r,a,s,o)}getDistanceByLL(e,t){if(!e||!t)return 0;e.lng=this.getLoop(e.lng,-180,180),e.lat=this.getRange(e.lat,-74,74),t.lng=this.getLoop(t.lng,-180,180),t.lat=this.getRange(t.lat,-74,74);let r=this.toRadians(e.lng),s=this.toRadians(e.lat),a=this.toRadians(t.lng),o=this.toRadians(t.lat);return this.getDistance(r,a,s,o)}convertMC2LL(e){if(!e)return{lng:0,lat:0};let t={};if(this.isWgs84){t.lng=e.lng/2003750834e-2*180;let a=e.lat/2003750834e-2*180;return t.lat=180/Math.PI*(2*Math.atan(Math.exp(a*Math.PI/180))-Math.PI/2),{lng:t.lng.toFixed(6),lat:t.lat.toFixed(6)}}let r={lng:Math.abs(e.lng),lat:Math.abs(e.lat)},s;for(let a=0;a<ml.length;a++)if(r.lat>=ml[a]){s=_m[a];break}return t=this.convertor(e,s),{lng:t.lng.toFixed(6),lat:t.lat.toFixed(6)}}convertLL2MC(e){if(!e)return{lng:0,lat:0};if(e.lng>180||e.lng<-180||e.lat>90||e.lat<-90)return e;if(this.isWgs84){let a={},o=6378137;a.lng=e.lng*Math.PI/180*o;let n=e.lat*Math.PI/180;return a.lat=o/2*Math.log((1+Math.sin(n))/(1-Math.sin(n))),{lng:parseFloat(a.lng.toFixed(2)),lat:parseFloat(a.lat.toFixed(2))}}e.lng=this.getLoop(e.lng,-180,180),e.lat=this.getRange(e.lat,-74,74);let t={lng:e.lng,lat:e.lat},r;for(let a=0;a<gt.length;a++)if(t.lat>=gt[a]){r=ul[a];break}if(!r){for(let a=0;a<gt.length;a++)if(t.lat<=-gt[a]){r=ul[a];break}}let s=this.convertor(e,r);return{lng:parseFloat(s.lng.toFixed(2)),lat:parseFloat(s.lat.toFixed(2))}}convertor(e,t){if(!e||!t)return{lng:0,lat:0};let r=t[0]+t[1]*Math.abs(e.lng),s=Math.abs(e.lat)/t[9],a=t[2]+t[3]*s+t[4]*s*s+t[5]*s*s*s+t[6]*s*s*s*s+t[7]*s*s*s*s*s+t[8]*s*s*s*s*s*s;return r*=e.lng<0?-1:1,a*=e.lat<0?-1:1,{lng:r,lat:a}}getDistance(e,t,r,s){return fm*Math.acos(Math.sin(r)*Math.sin(s)+Math.cos(r)*Math.cos(s)*Math.cos(t-e))}toRadians(e){return Math.PI*e/180}toDegrees(e){return 180*e/Math.PI}getRange(e,t,r){return t!=null&&(e=Math.max(e,t)),r!=null&&(e=Math.min(e,r)),e}getLoop(e,t,r){for(;e>r;)e-=r-t;for(;e<t;)e+=r-t;return e}lngLatToMercator(e){return this.convertLL2MC(e)}lngLatToPoint(e){let t=this.convertLL2MC(e);return{x:t.lng,y:t.lat}}mercatorToLngLat(e){return this.convertMC2LL(e)}pointToLngLat(e){let t={lng:e.x,lat:e.y};return this.convertMC2LL(t)}pointToPixel(e,t,r,s){if(!e)return{x:0,y:0};e=this.lngLatToMercator(e);let a=this.getZoomUnits(t),o=Math.round((e.lng-r.lng)/a+s.width/2),n=Math.round((r.lat-e.lat)/a+s.height/2);return{x:o,y:n}}pixelToPoint(e,t,r,s){if(!e)return{lng:0,lat:0};let a=this.getZoomUnits(t),o=r.lng+a*(e.x-s.width/2),n=r.lat-a*(e.y-s.height/2),h={lng:o,lat:n};return this.mercatorToLngLat(h)}getZoomUnits(e){return Math.pow(2,18-e)}},fl=jr;var Zr=class extends i.WebMercatorTilingScheme{constructor(e){super(e);let t=new fl;this._projection.project=function(r,s){return s=s||{},s=me.WGS84ToGCJ02(i.Math.toDegrees(r.longitude),i.Math.toDegrees(r.latitude)),s=me.GCJ02ToBD09(s[0],s[1]),s[0]=Math.min(s[0],180),s[0]=Math.max(s[0],-180),s[1]=Math.min(s[1],74.000022),s[1]=Math.max(s[1],-71.988531),s=t.lngLatToPoint({lng:s[0],lat:s[1]}),new i.Cartesian2(s.x,s.y)},this._projection.unproject=function(r,s){return s=s||{},s=t.mercatorToLngLat({lng:r.x,lat:r.y}),s=me.BD09ToGCJ02(s.lng,s.lat),s=me.GCJ02ToWGS84(s[0],s[1]),new i.Cartographic(i.Math.toRadians(s[0]),i.Math.toRadians(s[1]))},this.resolutions=e.resolutions||[]}tileXYToNativeRectangle(e,t,r,s){let a=this.resolutions[r],o=e*a,n=(e+1)*a,h=((t=-t)+1)*a,c=t*a;return i.defined(s)?(s.west=o,s.south=c,s.east=n,s.north=h,s):new i.Rectangle(o,c,n,h)}positionToTileXY(e,t,r){let s=this._rectangle;if(!i.Rectangle.contains(s,e))return;let o=this._projection.project(e);if(!i.defined(o))return;let n=this.resolutions[t],h=Math.floor(o.x/n),c=-Math.floor(o.y/n);return i.defined(r)?(r.x=h,r.y=c,r):new i.Cartesian2(h,c)}},_l=Zr;var gl={img:"//shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",vec:"//online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl&v=020",custom:"//api{s}.map.bdimg.com/customimage/tile?&x={x}&y={y}&z={z}&scale=1&customid={style}",traffic:"//its.map.baidu.com:8002/traffic/TrafficTileService?time={time}&label={labelStyle}&v=016&level={z}&x={x}&y={y}&scaler=2"},Yr=class extends i.UrlTemplateImageryProvider{constructor(e={}){if(e.url=e.url||[e.protocol||"",gl[e.style]||gl.custom].join(""),e.crs==="WGS84"){let t=[];for(let r=0;r<19;r++)t[r]=256*Math.pow(2,18-r);e.tilingScheme=new _l({resolutions:t,rectangleSouthwestInMeters:new i.Cartesian2(-2003772637e-2,-1247410417e-2),rectangleNortheastInMeters:new i.Cartesian2(2003772637e-2,1247410417e-2)})}else e.tilingScheme=new i.WebMercatorTilingScheme({rectangleSouthwestInMeters:new i.Cartesian2(-33554054,-33746824),rectangleNortheastInMeters:new i.Cartesian2(33554054,33746824)});e.maximumLevel=18,super(e),this._rectangle=this._tilingScheme.rectangle,this._url=e.url,this._crs=e.crs||"BD09",this._style=e.style||"normal"}requestImage(e,t,r){let s=this._tilingScheme.getNumberOfXTilesAtLevel(r),a=this._tilingScheme.getNumberOfYTilesAtLevel(r),o=this._url.replace("{z}",r).replace("{s}",String(1)).replace("{style}",this._style);return this._crs==="WGS84"?o=o.replace("{x}",String(e)).replace("{y}",String(-t)):o=o.replace("{x}",String(e-s/2)).replace("{y}",String(a/2-t-1)),i.ImageryProvider.loadImage(this,o)}};z.BAIDU="baidu";var yl=Yr;var gm="//tiles{s}.geovisearth.com/base/v1/{style}/{z}/{x}/{y}?format={format}&tmsIds=w&token={key}",Jr=class extends i.UrlTemplateImageryProvider{constructor(e={}){e.url=e.url||[e.protocol||"",gm.replace(/\{style\}/g,e.style||"vec").replace(/\{format\}/g,e.format||"png").replace(/\{key\}/g,e.key||"")].join(""),e.subdomains=e.subdomains||["1","2","3"],super(e)}};z.GEO_VIS="geoVis";var vl=Jr;var wl={img:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=s&x={x}&y={y}&z={z}",elec:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=m&x={x}&y={y}&z={z}",cva:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=h&x={x}&y={y}&z={z}",ter:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=t@131,r&x={x}&y={y}&z={z}",img_cva:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=y&x={x}&y={y}&z={z}"},qr=class extends i.UrlTemplateImageryProvider{constructor(e={}){e.url=e.url||[e.protocol||"",wl[e.style]||wl.elec].join(""),e.crs==="WGS84"&&(e.tilingScheme=new _t),super(e)}};z.GOOGLE="google";var xl=qr;var ym="//t{s}.tianditu.gov.cn/DataServer?T={style}_w&x={x}&y={y}&l={z}&tk={key}",Xr=class extends i.UrlTemplateImageryProvider{constructor(e={}){super({url:[e.protocol||"",ym.replace(/\{style\}/g,e.style||"vec").replace(/\{key\}/g,e.key||"")].join(""),subdomains:["0","1","2","3","4","5","6","7"],maximumLevel:18})}};z.TDT="tdt";var Cl=Xr;var Tl={img:"//p{s}.map.gtimg.com/sateTiles/{z}/{sx}/{sy}/{x}_{reverseY}.jpg?version=400",elec:"//rt{s}.map.gtimg.com/tile?z={z}&x={x}&y={reverseY}&styleid={style}&scene=0&version=347"},Qr=class extends i.UrlTemplateImageryProvider{constructor(e={}){let t=e.url||[e.protocol||"",Tl[e.style]||Tl.elec].join("");e.url=t.replace("{style}",e.style||1),e.subdomains=e.subdomains||["1","2","3"],e.style==="img"&&(e.customTags={sx:(r,s,a,o)=>s>>4,sy:(r,s,a,o)=>(1<<o)-a>>4}),super(e)}};z.TENCENT="tencent";var El=Qr;var Kr=class{static createAMapImageryLayer(e){return Promise.resolve(new dl(e))}static createBaiduImageryLayer(e){return Promise.resolve(new yl(e))}static createGeoVisImageryLayer(e){return Promise.resolve(new vl(e))}static createGoogleImageryLayer(e){return Promise.resolve(new xl(e))}static createTdtImageryLayer(e){return Promise.resolve(new Cl(e))}static createTencentImageryLayer(e){return Promise.resolve(new El(e))}static createArcGisImageryLayer(e){return i.ArcGisMapServerImageryProvider.fromUrl(e.url,e)}static createBingImageryLayer(e){return i.BingMapsImageryProvider.fromUrl(e.url,e)}static createOSMImageryLayer(e){return Promise.resolve(new i.OpenStreetMapImageryProvider(e))}static createSingleTileImageryLayer(e){return i.SingleTileImageryProvider.fromUrl(e.url,e)}static createWMSImageryLayer(e){return Promise.resolve(new i.WebMapServiceImageryProvider(e))}static createWMTSImageryLayer(e){return Promise.resolve(new i.WebMapTileServiceImageryProvider(e))}static createXYZImageryLayer(e){return Promise.resolve(new i.UrlTemplateImageryProvider(e))}static createCoordImageryLayer(e){return Promise.resolve(new i.TileCoordinatesImageryProvider(e))}static createGridImageryLayer(e){return Promise.resolve(new i.GridImageryProvider(e))}static createMapboxImageryLayer(e){return Promise.resolve(new i.MapboxImageryProvider(e))}static createMapboxStyleImageryLayer(e){return Promise.resolve(new i.MapboxStyleImageryProvider(e))}static createTMSImageryLayer(e){return i.TileMapServiceImageryProvider.fromUrl(e.url,e)}static createImageryLayer(e,t){let r;switch(e){case z.AMAP:r=this.createAMapImageryLayer(t);break;case z.BAIDU:r=this.createBaiduImageryLayer(t);break;case z.GEO_VIS:r=this.createGeoVisImageryLayer(t);break;case z.GOOGLE:r=this.createGoogleImageryLayer(t);break;case z.TDT:r=this.createTdtImageryLayer(t);break;case z.TENCENT:r=this.createTencentImageryLayer(t);break;case z.ARCGIS:r=this.createArcGisImageryLayer(t);break;case z.BING:r=this.createBingImageryLayer(t);break;case z.OSM:r=this.createOSMImageryLayer(t);break;case z.SINGLE_TILE:r=this.createSingleTileImageryLayer(t);break;case z.WMS:r=this.createWMSImageryLayer(t);break;case z.WMTS:r=this.createWMTSImageryLayer(t);break;case z.XYZ:r=this.createXYZImageryLayer(t);break;case z.COORD:r=this.createCoordImageryLayer(t);break;case z.GRID:r=this.createGridImageryLayer(t);break;case z.MAPBOX:r=this.createMapboxImageryLayer(t);break;case z.MAPBOX_STYLE:r=this.createMapboxStyleImageryLayer(t);break;case z.TMS:r=this.createTMSImageryLayer(t);break;default:break}return r}},Pl=Kr;var $r=class extends i.GeographicTilingScheme{constructor(e={}){super(e),this._origin=e.origin||[-180,90],this._zoomOffset=e.zoomOffset||0,this._tileSize=e.tileSize||256,this._resolutions=e.resolutions||[]}get zoomOffset(){return this._zoomOffset}tileXYToRectangle(e,t,r,s){if(!this._resolutions||!this._resolutions[r+this._zoomOffset])return i.Rectangle.MAX_VALUE;let a=this._resolutions[r+this._zoomOffset]*this._tileSize,o=i.Math.toRadians(this._origin[0]+e*a),n=i.Math.toRadians(this._origin[1]-(t+1)*a),h=i.Math.toRadians(this._origin[0]+(e+1)*a),c=i.Math.toRadians(this._origin[1]-t*a);return s?(s.west=o,s.south=n,s.east=h,s.north=c,s):new i.Rectangle(o,n,h,c)}positionToTileXY(e,t,r){if(!this._resolutions||!this._resolutions[t+this._zoomOffset])return new i.Cartesian2;let s=this._resolutions[t+this._zoomOffset]*this._tileSize,a=i.Math.toDegrees(e.longitude),o=i.Math.toDegrees(e.latitude),n=Math.floor((a-this._origin[0])/s),h=Math.floor((this._origin[1]-o)/s);return r?(r.x=n,r.y=h,r):new i.Cartesian2(Math.max(0,n),Math.max(0,h))}},Ml=$r;var es=class extends i.WebMercatorTilingScheme{constructor(e={}){super(e),this._origin=e.origin||[-200375083427892e-7,200375083427892e-7],this._zoomOffset=e.zoomOffset||0,this._tileSize=e.tileSize||256,this._resolutions=e.resolutions||[]}get zoomOffset(){return this._zoomOffset}tileXYToNativeRectangle(e,t,r,s){if(!this._resolutions||!this._resolutions[r+this._zoomOffset])return i.Rectangle.MAX_VALUE;if(e<0||t<0)return i.Rectangle.MAX_VALUE;let a=this._resolutions[r+this._zoomOffset]*this._tileSize,o=this._origin[0]+e*a,n=this._origin[1]-(t+1)*a,h=this._origin[0]+(e+1)*a,c=this._origin[1]-t*a;return s?(s.west=o,s.south=n,s.east=h,s.north=c,s):new i.Rectangle(o,n,h,c)}positionToTileXY(e,t,r){let s=this._rectangle;if(!i.Rectangle.contains(s,e))return;if(!this._resolutions||!this._resolutions[t+this._zoomOffset])return new i.Cartesian2;let a=this._resolutions[t+this._zoomOffset]*this._tileSize,n=this._projection.project(e),h=Math.floor((n.x-this._origin[0])/a),c=Math.floor((this._origin[1]-n.y)/a);return r?(r.x=h,r.y=c,r):new i.Cartesian2(Math.max(0,h),Math.max(0,c))}},Al=es;var vm={NONE:"none",XYZ:"xyz",ARCGIS:"arcgis",GOOGLE:"google",VR:"vr"},Ae=vm;var ts=class{static createEllipsoidTerrain(e){return Promise.resolve(new i.EllipsoidTerrainProvider(e))}static createUrlTerrain(e){return i.CesiumTerrainProvider.fromUrl(e.url,e)}static createGoogleTerrain(e){return i.GoogleEarthEnterpriseTerrainProvider.fromUrl(e.url,e)}static createArcgisTerrain(e){return i.ArcGISTiledElevationTerrainProvider.fromUrl(e.url,e)}static createVRTerrain(e){return i.VRTheWorldTerrainProvider.fromUrl(e.url,e)}static createTerrain(e,t){let r;switch(e){case Ae.NONE:r=this.createEllipsoidTerrain(t);break;case Ae.XYZ:r=this.createUrlTerrain(t);break;case Ae.GOOGLE:r=this.createGoogleTerrain(t);break;case Ae.ARCGIS:r=this.createArcgisTerrain(t);break;case Ae.VR:r=this.createVRTerrain(t);break;default:break}return r}},bl=ts;var wm={},it=wm;var is=class{constructor(e){this._id=x.uuid(),this._bid=e||x.uuid(),this._delegate=void 0,this._viewer=void 0,this._state=void 0,this._show=!0,this._isGround=!1,this._cache={},this._attr={},this._layerEvent=new Ui,this._layerEvent.on(Pe.ADD,this._onAdd,this),this._layerEvent.on(Pe.REMOVE,this._onRemove,this)}get layerId(){return this._id}get id(){return this._bid}get delegate(){return this._delegate}set show(e){this._show=e,this._delegate&&(this._delegate.show=this._show)}get show(){return this._show}get layerEvent(){return this._layerEvent}set attr(e){this._attr=e}get attr(){return this._attr}get state(){return this._state}_addedHook(){}_removedHook(){}_onAdd(e){this._viewer=e,this._delegate&&(this._delegate instanceof i.PrimitiveCollection?this._isGround?this._viewer.scene.groundPrimitives.add(this._delegate):this._viewer.scene.primitives.add(this._delegate):this._delegate instanceof i.ImageryLayer?this._viewer.imageryLayers.add(this._delegate):this._viewer.dataSources.add(this._delegate),this._addedHook&&this._addedHook(),this._state=m.ADDED)}_onRemove(){this._delegate&&this._viewer&&(this._cache={},this._delegate instanceof i.PrimitiveCollection?(this._delegate.removeAll(),this._isGround?this._viewer.scene.groundPrimitives.remove(this._delegate):this._viewer.scene.primitives.remove(this._delegate)):this._delegate instanceof i.ImageryLayer?this._viewer.imageryLayers.remove(this._delegate,!1):this._delegate instanceof Promise?(this._delegate.then(e=>{e.entities.removeAll()}),this._viewer.dataSources.remove(this._delegate)):(this._delegate.entities&&this._delegate.entities.removeAll(),this._viewer.dataSources.remove(this._delegate)),this._removedHook&&this._removedHook(),this._state=m.REMOVED)}_addOverlay(e){this._cache.hasOwnProperty(e.overlayId)||(this._cache[e.overlayId]=e,this._delegate&&e.fire(Te.ADD,this),this._state===m.CLEARED&&(this._state=m.ADDED))}_removeOverlay(e){this._cache.hasOwnProperty(e.overlayId)&&(this._delegate&&e.fire(Te.REMOVE,this),delete this._cache[e.overlayId])}addOverlay(e){return this._addOverlay(e),this}addOverlays(e){return Array.isArray(e)&&e.forEach(t=>{this._addOverlay(t)}),this}removeOverlay(e){return this._removeOverlay(e),this}getOverlay(e){return this._cache[e]||void 0}getOverlayById(e){let t;return Object.keys(this._cache).forEach(r=>{this._cache[r].id===e&&(t=this._cache[r])}),t}getOverlaysByAttr(e,t){let r=[];return this.eachOverlay(s=>{s.attr[e]===t&&r.push(s)},this),r}eachOverlay(e,t){return Object.keys(this._cache).forEach(r=>{e&&e.call(t||this,this._cache[r])}),this}getOverlays(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}clear(){}remove(){this._viewer&&this._viewer.removeLayer(this)}addTo(e){return e!=null&&e.addLayer&&e.addLayer(this),this}setStyle(e){}on(e,t,r){return this._layerEvent.on(e,t,r||this),this}off(e,t,r){return this._layerEvent.off(e,t,r||this),this}fire(e,t){return this._layerEvent.fire(e,t),this}static registerType(e){e&&(it[e.toLocaleUpperCase()]=e.toLocaleLowerCase())}static getLayerType(e){return it[e.toLocaleUpperCase()]||void 0}},M=is;var rs=class{constructor(e){this._id=e||x.uuid(),this._cache={},this._show=!0,this._viewer=void 0,this._layerGroupEvent=new Hi,this._layerGroupEvent.on(Ee.ADD,this._onAdd,this),this._layerGroupEvent.on(Ee.REMOVE,this._onRemove,this),this._state=m.INITIALIZED}get id(){return this._id}get type(){return M.getLayerType("layer_group")}get show(){return this._show}set show(e){this._show=e,Object.keys(this._cache).forEach(t=>{this._cache[t].show=this._show})}get layerGroupEvent(){return this._layerGroupEvent}get state(){return this._state}_onAdd(e){this._viewer=e,Object.keys(this._cache).forEach(t=>{this._viewer.addLayer(this._cache[t])}),this._state=m.ADDED}_onRemove(){Object.keys(this._cache).forEach(e=>{this._viewer&&this._viewer.removeLayer(this._cache[e])}),this._cache={},this._state=m.REMOVED}addLayer(e){return Object(this._cache).hasOwnProperty(e.id)||(this._cache[e.id]=e,this._viewer&&this._viewer.addLayer(e)),this}removeLayer(e){return Object(this._cache).hasOwnProperty(e.id)&&(this._viewer&&this._viewer.removeLayer(e),delete this._cache[e.id]),this}getLayer(e){return this._cache[e]||void 0}getLayers(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}addTo(e){return e&&e.addLayerGroup&&e.addLayerGroup(this),this}remove(){return this._viewer&&this._viewer.removeLayerGroup(this),this}};M.registerType("layer_group");var Sl=rs;var xm={radius:60,maxZoom:25,style:"circle",image:"",gradientColors:{1e-4:i.Color.DEEPSKYBLUE,.001:i.Color.GREEN,.01:i.Color.ORANGE,.1:i.Color.RED},gradientImages:{},showCount:!0,fontSize:12,clusterSize:16,fontColor:i.Color.BLACK,getCountOffset:l=>({x:-3.542857*String(l).length+1.066667,y:String(l).length>3?5:4})},ss=class extends M{constructor(e,t={}){super(e),this._delegate=new i.PrimitiveCollection,this._options={...xm,...t},this._billboards=this._delegate.add(new i.BillboardCollection),this._labels=this._delegate.add(new i.LabelCollection),this._cluster=new Fe({radius:this._options.radius,maxZoom:this._options.maxZoom}),this._allCount=0,this._changedRemoveCallback=void 0,this._lastChangedTime=null,this._state=m.INITIALIZED}get type(){return M.getLayerType("cluster")}_addOverlay(e){}_removeOverlay(e){}_getCircleImage(e,t){let r=this._options.clusterSize*(String(t).length+1),s=e.toCssColorString()+"-"+t;if(!this._cache[s]){let a=document.createElement("canvas");a.width=r,a.height=r;let o=a.getContext("2d");o.save(),o.scale(r/24,r/24),o.fillStyle=e.withAlpha(.2).toCssColorString(),o.beginPath(),o.arc(12,12,9,0,2*Math.PI),o.closePath(),o.fill(),o.beginPath(),o.arc(12,12,6,0,2*Math.PI),o.fillStyle=e.toCssColorString(),o.closePath(),o.fill(),o.restore(),this._cache[s]=a.toDataURL()}return this._cache[s]}_getClusteringImage(e,t){let r=this._options.clusterSize*(String(t).length+1),s=e.toCssColorString()+"-"+t,a=-Math.PI/12,o=Math.PI/2,n=Math.PI/6;if(!this._cache[s]){let h=document.createElement("canvas");h.width=r,h.height=r;let c=h.getContext("2d");c.save(),c.scale(r/24,r/24),c.beginPath(),c.arc(12,12,6,0,2*Math.PI),c.fillStyle=e.toCssColorString(),c.fill(),c.closePath(),c.lineWidth=2;for(let p=0;p<3;p++)c.beginPath(),c.arc(12,12,8,a,a+o,!1),c.strokeStyle=e.withAlpha(.4).toCssColorString(),c.stroke(),c.arc(12,12,11,a,a+o,!1),c.strokeStyle=e.withAlpha(.2).toCssColorString(),c.stroke(),c.closePath(),a=a+o+n;c.restore(),this._cache[s]=h.toDataURL()}return this._cache[s]}_getClusterImage(e){let t=e/this._allCount,r;if(this._options.style==="custom"){let s=Object.keys(this._options.gradientImages).sort((a,o)=>Number(a)-Number(o));for(let a=s.length-1;a>=0;a--)if(t>=Number(s[a])){r=this._options.gradientImages[s[a]];break}r||(r=this._options.gradientImages[s[0]])}else{let s=Object.keys(this._options.gradientColors).sort((o,n)=>Number(o)-Number(n)),a;for(let o=s.length-1;o>=0;o--)if(t>=Number(s[o])){a=this._options.gradientColors[s[o]];break}a||(a=this._options.gradientColors[s[0]]),r=this._options.style==="circle"?this._getCircleImage(a,e):this._getClusteringImage(a,e)}return r}_changeCluster(e){let t=i.getTimestamp();if(this._lastChangedTime&&t-this._lastChangedTime<=1e3)return;this._lastChangedTime=t,this._cache={},this._billboards.removeAll(),this._labels.removeAll();let r=this._viewer.camera.computeViewRectangle();r||(r=this._viewer.viewBounds),this._allCount&&this._cluster.getClusters([i.Math.toDegrees(r.west),i.Math.toDegrees(r.south),i.Math.toDegrees(r.east),i.Math.toDegrees(r.north)],this._viewer.zoom).forEach(a=>{let o=x.uuid();if(a.properties.cluster){let n=a.properties.point_count,h=this._billboards.add({position:i.Cartesian3.fromDegrees(+a.geometry.coordinates[0],+a.geometry.coordinates[1]),image:this._getClusterImage(n)});if(h.layerId=this.layerId,h.overlayId=o,h.attr={count:n},this._cache[o]=h,this._options.showCount){let c=this._labels.add({position:i.Cartesian3.fromDegrees(+a.geometry.coordinates[0],+a.geometry.coordinates[1]),text:String(n),font:`${this._options.fontSize} px sans-serif`,disableDepthTestDistance:Number.POSITIVE_INFINITY,fillColor:this._options.fontColor,scale:.8,pixelOffset:this._options.getCountOffset(n)});c.layerId=this.layerId,c.overlayId=o,c.attr={count:n},this._cache[o]=c}}else{let n=this._billboards.add({position:i.Cartesian3.fromDegrees(+a.geometry.coordinates[0],+a.geometry.coordinates[1]),image:this._options.image,...a.properties.style});n.layerId=this.layerId,n.overlayId=o,n.attr=a.properties,this._cache[o]=n}})}_addedHook(){this._changedRemoveCallback=this._viewer.camera.changed.addEventListener(this._changeCluster,this)}_removedHook(){this._changedRemoveCallback&&this._changedRemoveCallback()}setPoints(e=[]){return e.length&&(this._allCount=e.length,this._cluster.load(e.map(t=>{let r=g.parsePosition(t);return{type:"Feature",geometry:{type:"Point",coordinates:[r.lng,r.lat]},properties:t.attr||{}}}))),this}clear(){return this._cache={},this._allCount=0,this._state=m.CLEARED,this}};M.registerType("cluster");var Il=ss;var as=class extends M{constructor(e,t="",r={}){super(e),this._delegate=i.CzmlDataSource.load(t,r),this._state=m.INITIALIZED}get type(){return M.getLayerType("czml")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}};M.registerType("czml");var Dl=as;var os=class extends M{constructor(e){super(e),this._delegate=new i.CustomDataSource(e),this._state=m.INITIALIZED}get type(){return M.getLayerType("dynamic")}clear(){return this._delegate.entities&&this._delegate.entities.removeAll(),this._cache={},this._state=m.CLEARED,this}};M.registerType("dynamic");var Ll=os;var ns=class extends M{constructor(e){super(e),this._delegate=new i.CustomDataSource(e),this._state=m.INITIALIZED}get type(){return M.getLayerType("vector")}clear(){return this._delegate.entities&&this._delegate.entities.removeAll(),this._cache={},this._state=m.CLEARED,this}};M.registerType("vector");var ze=ns;var Cm={name:"",count:10,maximumLevel:21,dataProperty:"",callback:()=>null},ls=class extends M{constructor(e,t,r={}){super(e),this._url=t,this._options={...Cm,...r},this._levelLayers={},this._tileWidth=256,this._tileHeight=256,this._maximumLevel=this._options.maximumLevel,this._tilingScheme=this._options.tilingScheme||new i.GeographicTilingScheme,this._rectangle=this._tilingScheme.rectangle,this._credit=void 0,this._token=void 0;for(let s=0;s<this.maximumLevel;s++)this._levelLayers[String(s)]=new ze(e+"-grid-"+s);this._viewer=void 0,this._imageryLayer=void 0,this._imagery=document.createElement("canvas"),this._imagery.width=this._tileWidth,this._imagery.height=this._tileHeight,this._state=m.INITIALIZED}get type(){return M.getLayerType("feature_grid")}get url(){return this._url}get show(){return this._show}set show(e){this._show=e,Object.keys(this._levelLayers).forEach(t=>{this._levelLayers[t].show=e})}get token(){return this._token}get tileWidth(){if(!this.ready)throw new i.DeveloperError("tileWidth must not be called before the imagery provider is ready.");return this._tileWidth}get tileHeight(){if(!this.ready)throw new i.DeveloperError("tileHeight must not be called before the imagery provider is ready.");return this._tileHeight}get maximumLevel(){if(!this.ready)throw new i.DeveloperError("maximumLevel must not be called before the imagery provider is ready.");return this._maximumLevel}get minimumLevel(){if(!this.ready)throw new i.DeveloperError("minimumLevel must not be called before the imagery provider is ready.");return 0}get tilingScheme(){if(!this.ready)throw new i.DeveloperError("tilingScheme must not be called before the imagery provider is ready.");return this._tilingScheme}get rectangle(){if(!this.ready)throw new i.DeveloperError("rectangle must not be called before the imagery provider is ready.");return this._rectangle}get ready(){return!!this._url}get credit(){return this._credit}get hasAlphaChannel(){return!0}_onAdd(e){this._viewer=e,this._imageryLayer=this._viewer.imageryLayers.addImageryProvider(this),Object.keys(this._levelLayers).forEach(t=>{this._viewer.addLayer(this._levelLayers[t])}),this._state=m.ADDED}_onRemove(){this._imageryLayer&&this._viewer.imageryLayers.remove(this._imageryLayer),Object.keys(this._levelLayers).forEach(e=>{this._viewer.removeLayer(this._levelLayers[e])}),this._state=m.REMOVED}getTileCredits(e,t,r){}requestImage(e,t,r,s){let a=this._levelLayers[String(r)],o=this._tilingScheme.tileXYToRectangle(e,t,r);return this._viewer&&o&&a&&i.Rectangle.intersection(o,this._viewer.viewBounds)&&i.Resource.fetchJson({url:this._url,queryParameters:{minX:i.Math.toDegrees(o.west),minY:i.Math.toDegrees(o.south),maxX:i.Math.toDegrees(o.east),maxY:i.Math.toDegrees(o.north),count:this._options.count}}).then(n=>{let h=n;if(this._options.dataProperty&&(h=n[this._options.dataProperty]),h&&h.length){for(let c=r+3;c<this._maximumLevel;c++)this._levelLayers[String(c)]&&this._levelLayers[String(c)].clear();h.forEach(c=>{let p=this._options.callback(c);p&&a.addOverlay(p)})}}),this._imagery}clear(){Object.keys(this._levelLayers).forEach(e=>{this._levelLayers[e].clear()}),this._state=m.CLEARED}};M.registerType("feature_grid");var Rl=ls;var Tm={},N=Tm;var hs=class{constructor(){this._id=x.uuid(),this._bid=x.uuid(),this._delegate=void 0,this._layer=void 0,this._state=void 0,this._show=!0,this._style={},this._attr={},this._allowDrillPicking=!1,this._contextMenu=[],this._overlayEvent=new ji,this._overlayEvent.on(Te.ADD,this._onAdd,this),this._overlayEvent.on(Te.REMOVE,this._onRemove,this)}get overlayId(){return this._id}get type(){return""}get id(){return this._bid}set id(e){this._bid=e}get show(){return this._show}set show(e){this._show=e,x.isPromise(this._delegate)?this._delegate.then(t=>{t.show=this._show}):this._delegate&&(this._delegate.show=this._show)}get attr(){return this._attr}set attr(e){this._attr=e}get allowDrillPicking(){return this._allowDrillPicking}set allowDrillPicking(e){this._allowDrillPicking=e}get overlayEvent(){return this._overlayEvent}get delegate(){return this._delegate}get state(){return this._state}get contextMenu(){return this._contextMenu}set contextMenu(e){this._contextMenu=e}static registerType(e){e&&(N[e.toLocaleUpperCase()]=e.toLocaleLowerCase())}static getOverlayType(e){return N[e.toLocaleUpperCase()]||void 0}_getLayerCollection(e){let t;switch(e){case"point_primitive":t=this._layer.points;break;case"billboard_primitive":case"bounce_billboard_primitive":t=this._layer.billboards;break;case"label_primitive":case"bounce_label_primitive":t=this._layer.labels;break;case"polyline_primitive":t=this._layer.polylines;break;case"cloud_primitive":t=this._layer.clouds;break;default:break}return t}_mountedHook(){}_addedHook(){var e;if(!this._delegate)return!1;this._delegate instanceof Promise?this._delegate.then(t=>{var r;t.layerId=(r=this._layer)==null?void 0:r.layerId,t.overlayId=this._id}):(this._delegate.layerId=(e=this._layer)==null?void 0:e.layerId,this._delegate.overlayId=this._id)}_removedHook(){}_onAdd(e){var t,r,s,a;if(e){if(this._layer=e,this._mountedHook&&this._mountedHook(),(r=(t=this._layer)==null?void 0:t.delegate)!=null&&r.entities&&this._delegate)this._layer.delegate.entities.add(this._delegate);else if((a=(s=this._layer)==null?void 0:s.delegate)!=null&&a.add){let o=this._getLayerCollection(this.type);o?(this._delegate&&(this._delegate=o.add(this._delegate)),x.merge(this._delegate,this._style),this.update&&this.destroy&&this._layer.delegate.add(this)):x.isPromise(this._delegate)?this._delegate.then(n=>{this._layer.delegate.add(n)}):this.update&&this.destroy?this._layer.delegate.add(this):this._delegate&&this._layer.delegate.add(this._delegate)}this._addedHook&&this._addedHook(),this._state=m.ADDED}}_onRemove(){var e,t,r,s;if(this._layer){if((t=(e=this._layer)==null?void 0:e.delegate)!=null&&t.entities)this._layer.delegate.entities.remove(this._delegate);else if((s=(r=this._layer)==null?void 0:r.delegate)!=null&&s.remove){let a=this._getLayerCollection(this.type);a?(this._delegate&&a.remove(this._delegate),this.update&&this.destroy&&this._layer.delegate.remove(this)):x.isPromise(this._delegate)?this._delegate.then(o=>{this._layer.delegate.remove(o)}):this.update&&this.destroy?this._layer.delegate.remove(this):this._delegate&&this._layer.delegate.remove(this._delegate)}this._removedHook&&this._removedHook(),this._state=m.REMOVED}}setLabel(e,t){return this._delegate?(this._delegate instanceof i.Entity&&(this._delegate.label={...t,text:e}),this):this}setStyle(e){return this}remove(){return this._layer&&this._layer.removeOverlay(this),this}addTo(e){return e&&e.addOverlay&&e.addOverlay(this),this}on(e,t,r){return this._overlayEvent.on(e,t,r||this),this}off(e,t,r){return this._overlayEvent.off(e,t,r||this),this}fire(e,t){return this._overlayEvent.fire(e,t),this}},v=hs;var cs=class extends v{constructor(e,t){super(),this._delegate=new i.Entity({billboard:{}}),this._position=g.parsePosition(e),this._icon=t,this._size=[32,32],this._state=m.INITIALIZED}get type(){return v.getOverlayType("custom_billboard")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.billboard.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("CustomBillboard: the size invalid");this._size=e,this._delegate.billboard.width=this._size[0]||32,this._delegate.billboard.height=this._size[1]||32}_mountedHook(){this.position=this._position,this.icon=this._icon,this.size=this._size}setLabel(e,t){return this._delegate.label={...t,text:e},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.image&&delete e.width&&delete e.height,x.merge(this._style,e),x.merge(this._delegate.billboard,e),this)}setVLine(e={}){if(this._position.alt>0&&!this._delegate.polyline){let t=this._position.copy();t.alt=e.height||0,this._delegate.polyline={...e,positions:u.transformWGS84ArrayToCartesianArray([t,this._position])}}return this}setBottomCircle(e,t={},r=0){let s=0,a=r;return this._delegate.ellipse={...t,semiMajorAxis:e,semiMinorAxis:e,stRotation:new i.CallbackProperty(()=>(s+=a,(s>=360||s<=-360)&&(s=0),s),!1)},this}};v.registerType("custom_billboard");var Ol=cs;var ps=class extends v{constructor(e,t){super(),this._delegate=new i.Entity({label:{}}),this._position=g.parsePosition(e),this._text=t,this._state=m.INITIALIZED}get type(){return v.getOverlayType("custom_label")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}get text(){return this._text}set text(e){this._text=e,this._delegate.label.text=this._text}_mountedHook(){this.position=this._position,this.text=this._text}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.text,x.merge(this._style,e),x.merge(this._delegate.label,e),this)}setVLine(e={}){if(this._position.alt>0&&!this._delegate.polyline){let t=this._position.copy();t.alt=e.height||0,this._delegate.polyline={...e,positions:u.transformWGS84ArrayToCartesianArray([t,this._position])}}return this}setBottomCircle(e,t={},r=0){let s=0,a=r;return this._delegate.ellipse={...t,semiMajorAxis:e,semiMinorAxis:e,stRotation:new i.CallbackProperty(()=>(s+=a,(s>=360||s<=-360)&&(s=0),s),!1)},this}};v.registerType("custom_label");var kl=ps;var ds=class extends v{constructor(){super(),this._startTime=void 0,this._lastTime=void 0,this._sampledPosition=new i.SampledPositionProperty,this._cache=[],this._maxCacheSize=10,this._state=m.INITIALIZED}get maxCacheSize(){return this._maxCacheSize}set maxCacheSize(e){this._maxCacheSize=e}get position(){return u.transformCartesianToWGS84(this._sampledPosition.getValue(i.JulianDate.now()))}_removePosition(){if(this._cache.length>this._maxCacheSize){let e=i.JulianDate.addSeconds(this._cache[0],-.2,new i.JulianDate),t=i.JulianDate.addSeconds(this._cache[this._cache.length-this._maxCacheSize],-.2,new i.JulianDate);this._sampledPosition.removeSamples(new i.TimeInterval({start:e,stop:t})),this._cache.splice(0,this._cache.length-this._maxCacheSize)}}addPosition(e,t){this._removePosition();let r=i.JulianDate.now(),s=i.JulianDate.addSeconds(r,t,new i.JulianDate);return this._sampledPosition.addSample(s,u.transformWGS84ToCartesian(g.parsePosition(e))),this._lastTime=s,this._cache.push(this._lastTime),this}bindDom(e){return this}},yt=ds;var ms=class extends yt{constructor(e,t){super(),this._position=g.parsePosition(e),this._icon=t,this._delegate=new i.Entity({billboard:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("dynamic_billboard")}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.billboard.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("DynamicBillboard: the size invalid");this._size=e,this._delegate.billboard.width=this._size[0]||32,this._delegate.billboard.height=this._size[1]||32}_mountedHook(){this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._startTime=i.JulianDate.now(),this._sampledPosition.addSample(this._startTime,u.transformWGS84ToCartesian(this._position)),this._delegate.position=this._sampledPosition,this._cache.push(this._startTime),this.icon=this._icon,this.size=this._size}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.image&&delete e.width&&delete e.height,x.merge(this._style,e),x.merge(this._delegate.billboard,e),this)}};v.registerType("dynamic_billboard");var zl=ms;var us=class extends yt{constructor(e,t){super(),this._position=g.parsePosition(e),this._modelUrl=t,this._delegate=new i.Entity({model:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("dynamic_model")}get modelUrl(){return this._modelUrl}set modelUrl(e){this._modelUrl=e,this._delegate.model.uri=this._modelUrl}_mountedHook(){this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._startTime=i.JulianDate.now(),this._sampledPosition.addSample(this._startTime,u.transformWGS84ToCartesian(this._position)),this._delegate.position=this._sampledPosition,this._delegate.orientation=new i.VelocityOrientationProperty(this._sampledPosition),this._cache.push(this._startTime),this.modelUrl=this._modelUrl}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.uri,x.merge(this._style,e),x.merge(this._delegate.model,e),this)}};v.registerType("dynamic_model");var Nl=us;function Em(l,e,t){let r=i.Cartesian3.subtract(l,e,new i.Cartesian3),s=i.Cartesian3.subtract(t,e,new i.Cartesian3),a=i.Cartesian3.cross(r,s,r);return i.Cartesian3.magnitude(a)*.5}function ye(l){let e=0;if(!Array.isArray(l))return e;l[0]instanceof i.Cartesian3||(l=u.transformWGS84ArrayToCartesianArray(l));let t=i.CoplanarPolygonGeometry.createGeometry(i.CoplanarPolygonGeometry.fromPositions({positions:l,vertexFormat:i.VertexFormat.POSITION_ONLY}));if(!t)return e;let r=t.attributes.position.values,s=t.indices;for(let a=0;a<s.length;a+=3){let o=i.Cartesian3.unpack(r,s[a]*3,new i.Cartesian3),n=i.Cartesian3.unpack(r,s[a+1]*3,new i.Cartesian3),h=i.Cartesian3.unpack(r,s[a+2]*3,new i.Cartesian3);e+=Em(o,n,h)}return e}function fs(l=[],e=0){let t=180,r=90,s=-180,a=-90;if(l.forEach(o=>{t=Math.min(t,o.lng||o.x),r=Math.min(r,o.lat||o.y),s=Math.max(s,o.lng||o.x),a=Math.max(a,o.lat||o.y)}),e>0){let o=Math.abs(s-s),n=Math.abs(a-r);t-=o*e,r-=n*e,s+=o*e,a+=n*e}return{west:t,south:r,east:s,north:a}}function ve(l){if(l&&Array.isArray(l)){let e=0;l.forEach(({alt:s})=>e=Math.max(e,s));let t=i.BoundingSphere.fromPoints(u.transformWGS84ArrayToCartesianArray(l)),r=u.transformCartesianToWGS84(t.center);return r.alt=e,r}return new U}function _s(l,e){e=e||{};let t=[];for(let r=0;r<l.length-1;r++){let s=Pm(l[r],l[r+1],e.count);s&&s.length>0&&(t=t.concat(s))}return t}function Pm(l,e,t){if(!l||!e)return null;let r=[];t=t||40;let s=function(A){return 1-2*A+A*A},a=A=>2*A-2*A*A,o=A=>A*A,n,h,c,p,f,y,_=0,d=parseFloat(l.lat),T=parseFloat(e.lat),C=parseFloat(l.lng),P=parseFloat(e.lng);P>C&&P-C>180&&C<0&&(C=360+C,P=360+P),y=0,T===d?(n=0,h=C-P):P===C?(n=Math.PI/2,h=d-T):(n=Math.atan((T-d)/(P-C)),h=(T-d)/Math.sin(n)),y===0&&(y=n+Math.PI/5),c=h/2,f=c*Math.cos(y)+C,p=c*Math.sin(y)+d;for(let A=0;A<t+1;A++){let O=C*s(_)+f*a(_)+P*o(_),H=d*s(_)+p*a(_)+T*o(_),W=l.lng,J=e.lng;r.push([W<0&&J>0?O-360:O,H]),_=_+1/t}return r}function se(l){let e=0;if(l&&Array.isArray(l))for(let t=0;t<l.length-1;t++){let r=u.transformWGS84ToCartographic(l[t]),s=u.transformWGS84ToCartographic(l[t+1]),a=new i.EllipsoidGeodesic;a.setEndPoints(r,s);let o=a.surfaceDistance;o=Math.sqrt(Math.pow(o,2)+Math.pow(s.height-r.height,2)),e+=o}return e.toFixed(3)}function we(l,e){let t=l,r=e;if(!t||!r)return 0;l instanceof i.Cartesian3||(t=g.parsePosition(l),t=u.transformWGS84ToCartesian(t)),e instanceof i.Cartesian3||(r=g.parsePosition(e),r=u.transformWGS84ToCartesian(r));let s=i.Transforms.eastNorthUpToFixedFrame(t),a=i.Cartesian3.subtract(r,t,new i.Cartesian3),o=i.Matrix4.multiplyByPointAsVector(i.Matrix4.inverse(s,new i.Matrix4),a,new i.Cartesian3),n=Math.atan2(o.y,o.x)-i.Math.PI_OVER_TWO;return n=i.Math.TWO_PI-i.Math.zeroToTwoPi(n),isNaN(n)?0:n}function He(l,e,t){return l=parseFloat(l)||0,l>=parseFloat(e)&&l<=parseFloat(t)}function F(l,e){return i.Cartesian3.midpoint(l,e,new i.Cartesian3)}function gs(l,e){let t=g.parsePosition(l),r=g.parsePosition(e);t=u.transformWGS84ToCartographic(t),r=u.transformWGS84ToCartographic(r);let s=new i.EllipsoidGeodesic(t,r).interpolateUsingFraction(.5);return new U(i.Math.toDegrees(s.longitude),i.Math.toDegrees(s.latitude),s.height)}function ys(l,e,t=0,r=50){let s=[];t=Math.max(+t,100),r=Math.max(+r,50);let a=Math.abs(l.lng-e.lng),o=Math.abs(l.lat-e.lat),n=Math.max(a,o),h=n/r;if(a>o){let c=(e.lat-l.lat)/r;l.lng-e.lng>0&&(h=-h);for(let p=0;p<r;p++){let f=t-Math.pow(-.5*n+Math.abs(h)*p,2)*4*t/Math.pow(n,2),y=l.lng+h*p,_=l.lat+c*p;s.push([y,_,f])}}else{let c=(e.lng-l.lng)/r;l.lat-e.lat>0&&(h=-h);for(let p=0;p<r;p++){let f=t-Math.pow(-.5*n+Math.abs(h)*p,2)*4*t/Math.pow(n,2),y=l.lng+c*p,_=l.lat+h*p;s.push([y,_,f])}}return s.push([e.lng,e.lat,e.alt||0]),s}var{Math:Mm}=i,Fl={};x.merge(Fl,Mm,{area:ye,bounds:fs,center:ve,curve:_s,distance:se,heading:we,isBetween:He,midCartesian:F,midPosition:gs,parabola:ys});var vs=class l extends v{constructor(e,t){super(),this._delegate=b.create("div","div-icon"),this._position=g.parsePosition(e),this._delegate.setAttribute("id",this._id),x.merge(this._delegate.style,{position:"absolute",top:"0",left:"0"}),this.content=t,this._state=m.INITIALIZED}get type(){return v.getOverlayType("div_icon")}get show(){return this._show}set show(e){this._show=e,this._delegate.style.visibility=this._show?"visible":"hidden"}get position(){return this._position}set position(e){this._position=g.parsePosition(e)}get content(){return this._delegate.childNodes||[]}set content(e){if(e&&typeof e=="string")this._delegate.innerHTML=e;else if(e&&e instanceof Element){for(;this._delegate.hasChildNodes();)this._delegate.removeChild(this._delegate.firstChild);this._delegate.appendChild(e)}}static fromEntity(e,t){var o;let r,s=i.JulianDate.now(),a=u.transformCartesianToWGS84(e.position.getValue(s));return r=new l(a,t),e.billboard&&(r.attr={...(o=e==null?void 0:e.properties)==null?void 0:o.getValue(s)}),r}_updateStyle(e,t,r){if(!this._show||!e)return;let s=e.x-this._delegate.offsetWidth/2,a=e.y-this._delegate.offsetHeight/2;this._style.position==="topleft"?(s=e.x-this._delegate.offsetWidth,a=e.y-this._delegate.offsetHeight):this._style.position==="topright"?(s=e.x,a=e.y-this._delegate.offsetHeight):this._style.position==="bottomleft"?(s=e.x-this._delegate.offsetWidth,a=e.y):this._style.position==="bottomright"&&(s=e.x,a=e.y);let o=`translate3d(${Math.round(s)}px,${Math.round(a)}px, 0)`,n="scale3d(1,1,1)",h=this._style.scaleByDistance;if(t&&h){let f=h.near||0,y=h.nearValue||1,_=h.far||Number.MAX_VALUE,d=h.farValue||0,T=t/_;if(t<f)n=`scale3d(${y},${y},1)`;else if(t>_)n=`scale3d(${d},${d},1)`;else{let C=d+T*(y-d);n=`scale3d(${C},${C},1)`}}let c=!0,p=this._style.distanceDisplayCondition;t&&p&&(c=He(t,p.near||0,p.far||Number.MAX_VALUE)),this._delegate.style.transform=`${o} ${n}`,this._delegate.style.visibility=c&&r?"visible":"hidden"}_onAdd(e){this._layer=e,this._layer.delegate.appendChild(this._delegate);let t={layer:e,overlay:this,position:u.transformWGS84ToCartesian(this._position)};this._delegate.addEventListener("click",()=>{this._overlayEvent.fire(R.CLICK,t)}),this._delegate.addEventListener("mouseover",()=>{this._overlayEvent.fire(R.MOUSE_OVER,t)}),this._delegate.addEventListener("mouseout",()=>{this._overlayEvent.fire(R.MOUSE_OUT,t)}),this._state=m.ADDED}_onRemove(){this._layer&&(this._layer.delegate.removeChild(this._delegate),this._state=m.REMOVED)}setLabel(e,t){return this}setStyle(e){return!e||Object.keys(e).length===0?this:(x.merge(this._style,e),this._style.className&&b.addClass(this._delegate,this._style.className),this)}};v.registerType("div_icon");var Wl=vs;v.registerType("div_plane");var ws=class l extends v{constructor(e,t){super(),this._delegate=new i.Entity({model:{}}),this._position=g.parsePosition(e),this._modelUrl=t,this._rotateAmount=0,this._state=m.INITIALIZED}get type(){return v.getOverlayType("model")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position),this._rotateAmount===0&&(this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll))))}get modelUrl(){return this._modelUrl}set modelUrl(e){this._modelUrl=e,this._delegate.model.uri=this._modelUrl}get rotateAmount(){return this._rotateAmount}set rotateAmount(e){this._rotateAmount=+e,this._delegate.orientation=new i.CallbackProperty(()=>(this._position.heading+=this._rotateAmount,(this._position.heading>=360||this._position.heading<=-360)&&(this._position.heading=0),i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))),!1)}static fromEntity(e,t){let r=i.JulianDate.now(),s=u.transformCartesianToWGS84(e.position.getValue(r)),a=new l(s,t);return a.attr={...e.properties.getValue(r)},a}_mountedHook(){this.position=this._position,this.modelUrl=this._modelUrl}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.uri,x.merge(this._style,e),x.merge(this._delegate.model,e),this)}};v.registerType("model");var vt=ws;var xs=class extends v{constructor(e,t={}){super(),this._delegate=i.I3SDataProvider.fromUrl(e,t),this._state=m.INITIALIZED}get type(){return v.getOverlayType("i3s")}ready(e){return this._delegate.then(e),this}setLabel(e,t){return console.warn("not support this function"),this}};v.registerType("i3s");var Gl=xs;var Cs=class extends v{constructor(e,t={}){super(),this._delegate=i.Cesium3DTileset.fromUrl(e,t),this._tilesetEvent=new Yi(this._delegate),this._tileVisibleCallback=void 0,this._properties=void 0,this._state=m.INITIALIZED}get type(){return v.getOverlayType("tileset")}set show(e){this._show=e,this._delegate.then(t=>{t.show=e})}_bindVisibleEvent(){this._tileVisibleCallback&&this._tileVisibleCallback(),this._tileVisibleCallback=this._delegate.then(e=>{e.tileVisible.addEventListener(this._updateTile,this)})}_updateTile(e){let t=e.content;for(let r=0;r<t.featuresLength;r++){let s=t.getFeature(r);this._properties&&this._properties.length&&this._properties.forEach(a=>{s.hasProperty(a.key)&&s.getProperty(a.key)===a.keyValue&&s.setProperty(a.propertyName,a.propertyValue)})}}ready(e){return this._delegate.then(e),this}setPosition(e){return e=g.parsePosition(e),this._delegate.then(t=>{let r=i.Transforms.eastNorthUpToFixedFrame(i.Cartesian3.fromDegrees(e.lng,e.lat,e.alt)),s=i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(new i.HeadingPitchRoll(i.Math.toRadians(e.heading),i.Math.toRadians(e.pitch),i.Math.toRadians(e.roll))));i.Matrix4.multiply(r,s,r),t.root.transform=r}),this}setHeadingPitchRoll(e,t,r){return this._delegate.then(s=>{let a=s.root.transform,o=i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(new i.HeadingPitchRoll(i.Math.toRadians(e||0),i.Math.toRadians(t||0),i.Math.toRadians(r||0))));i.Matrix4.multiply(a,o,a),s.root.transform=a}),this}setLabel(e,t){return console.warn("not support this function"),this}clampToGround(){return this._delegate.then(e=>{let t=i.Cartographic.fromCartesian(e.boundingSphere.center),r=i.Cartesian3.fromRadians(t.longitude,t.latitude,t.height),s=i.Cartesian3.fromRadians(t.longitude,t.latitude,0),a=i.Cartesian3.subtract(s,r,new i.Cartesian3);e.modelMatrix=i.Matrix4.fromTranslation(a)}),this}setHeight(e,t=!1){return this._delegate.then(r=>{let s=i.Cartographic.fromCartesian(r.boundingSphere.center),a=i.Cartesian3.fromRadians(s.longitude,s.latitude,s.height),o=i.Cartesian3.fromRadians(s.longitude,s.latitude,t?e:s.height+e),n=i.Cartesian3.subtract(o,a,new i.Cartesian3);r.modelMatrix=i.Matrix4.fromTranslation(n)}),this}setScale(e){return this._delegate.then(t=>{let r=t.root.transform;e>0&&e!==1&&i.Matrix4.multiplyByUniformScale(r,e,r),t.root.transform=r}),this}setProperties(e){return this._properties=e,this._bindVisibleEvent(),this}setSplitDirection(e){return this._delegate.then(t=>{t.splitDirection=e}),this}setCustomShader(e){return this._delegate.then(t=>{t.customShader=e}),this}setStyle(e){return e&&e instanceof i.Cesium3DTileStyle&&(this._style=e,this._delegate.then(t=>{t.style=e})),this}on(e,t,r){return this._overlayEvent.on(e,t,r||this),this._tilesetEvent.on(e,t,r||this),this}off(e,t,r){return this._overlayEvent.off(e,t,r||this),this._tilesetEvent.off(e,t,r||this),this}};v.registerType("tileset");var Hl=Cs;var wt=Math.PI/2,Ts=class extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.headTailFactor=.8,this._state=m.INITIALIZED}get type(){return v.getOverlayType("attack_arrow")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getArrowHeadPoints(e,t,r){let s=w.getBaseLength(e),a=s*this.headHeightFactor,o=e[e.length-1];s=w.distance(o,e[e.length-2]);let n=w.distance(t,r);a>n*this.headTailFactor&&(a=n*this.headTailFactor);let h=a*this.headWidthFactor,c=a*this.neckWidthFactor;a=a>s?s:a;let p=a*this.neckHeightFactor,f=w.getThirdPoint(e[e.length-2],o,0,a,!0),y=w.getThirdPoint(e[e.length-2],o,0,p,!0),_=w.getThirdPoint(o,f,wt,h,!1),d=w.getThirdPoint(o,f,wt,h,!0),T=w.getThirdPoint(o,y,wt,c,!1),C=w.getThirdPoint(o,y,wt,c,!0);return[T,_,o,d,C]}_getArrowBodyPoints(e,t,r,s){let a=w.wholeDistance(e),n=w.getBaseLength(e)*s,h=w.distance(t,r),c=(n-h)/2,p=0,f=[],y=[];for(let _=1;_<e.length-1;_++){let d=w.getAngleOfThreePoints(e[_-1],e[_],e[_+1])/2;p+=w.distance(e[_-1],e[_]);let T=(n/2-p/a*c)/Math.sin(d),C=w.getThirdPoint(e[_-1],e[_],Math.PI-d,T,!0),P=w.getThirdPoint(e[_-1],e[_],d,T,!1);f.push(C),y.push(P)}return f.concat(y)}_getHierarchy(){let e=g.parsePolygonCoordToArray(this._positions)[0],t=e[0],r=e[1];w.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[w.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),n=o[0],h=o[4],c=w.distance(t,r)/w.getBaseLength(a),p=this._getArrowBodyPoints(a,n,h,c),f=p.length,y=[t].concat(p.slice(0,f/2));y.push(n);let _=[r].concat(p.slice(f/2,f));return _.push(h),y=w.getQBSplinePoints(y),_=w.getQBSplinePoints(_),new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(y.concat(o,_.reverse()))))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polygon,e),this)}};v.registerType("attack_arrow");var Be=Ts;var $=Math.PI/2,Es=class extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.headHeightFactor=.25,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this._state=m.INITIALIZED}get type(){return v.getOverlayType("double_arrow")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getArrowPoints(e,t,r,s){let a=w.mid(e,t),o=w.distance(a,r),n=w.getThirdPoint(r,a,0,o*.3,!0),h=w.getThirdPoint(r,a,0,o*.5,!0);n=w.getThirdPoint(a,n,$,o/5,s),h=w.getThirdPoint(a,h,$,o/4,s);let c=[a,n,h,r],p=this._getArrowHeadPoints(c),f=p[0],y=p[4],_=w.distance(e,t)/w.getBaseLength(c)/2,d=this._getArrowBodyPoints(c,f,y,_),T=d.length,C=d.slice(0,T/2),P=d.slice(T/2,T);return C.push(f),P.push(y),C=C.reverse(),C.push(t),P=P.reverse(),P.push(e),C.reverse().concat(p,P)}_getArrowHeadPoints(e){let r=w.getBaseLength(e)*this.headHeightFactor,s=e[e.length-1],a=r*this.headWidthFactor,o=r*this.neckWidthFactor,n=r*this.neckHeightFactor,h=w.getThirdPoint(e[e.length-2],s,0,r,!0),c=w.getThirdPoint(e[e.length-2],s,0,n,!0),p=w.getThirdPoint(s,h,$,a,!1),f=w.getThirdPoint(s,h,$,a,!0),y=w.getThirdPoint(s,c,$,o,!1),_=w.getThirdPoint(s,c,$,o,!0);return[y,p,s,f,_]}_getArrowBodyPoints(e,t,r,s){let a=w.wholeDistance(e),n=w.getBaseLength(e)*s,h=w.distance(t,r),c=(n-h)/2,p=0,f=[],y=[];for(let _=1;_<e.length-1;_++){let d=w.getAngleOfThreePoints(e[_-1],e[_],e[_+1])/2;p+=w.distance(e[_-1],e[_]);let T=(n/2-p/a*c)/Math.sin(d),C=w.getThirdPoint(e[_-1],e[_],Math.PI-d,T,!0),P=w.getThirdPoint(e[_-1],e[_],d,T,!1);f.push(C),y.push(P)}return f.concat(y)}_getTempPoint4(e,t,r){let s=w.mid(e,t),a=w.distance(s,r),o=w.getAngleOfThreePoints(e,s,r),n,h,c,p;return o<$?(h=a*Math.sin(o),c=a*Math.cos(o),p=w.getThirdPoint(e,s,$,h,!1),n=w.getThirdPoint(s,p,$,c,!0)):o>=$&&o<Math.PI?(h=a*Math.sin(Math.PI-o),c=a*Math.cos(Math.PI-o),p=w.getThirdPoint(e,s,$,h,!1),n=w.getThirdPoint(s,p,$,c,!1)):o>=Math.PI&&o<Math.PI*1.5?(h=a*Math.sin(o-Math.PI),c=a*Math.cos(o-Math.PI),p=w.getThirdPoint(e,s,$,h,!0),n=w.getThirdPoint(s,p,$,c,!0)):(h=a*Math.sin(Math.PI*2-o),c=a*Math.cos(Math.PI*2-o),p=w.getThirdPoint(e,s,$,h,!0),n=w.getThirdPoint(s,p,$,c,!1)),n}_getHierarchy(){let e=this._positions.length,t,r,s=g.parsePolygonCoordToArray(this._positions)[0],a=s[0],o=s[1],n=s[2];e===3?t=this._getTempPoint4(a,o,n):t=s[3],e===3||e===4?r=w.mid(a,o):r=s[4];let h,c;w.isClockWise(a,o,n)?(h=this._getArrowPoints(a,r,t,!1),c=this._getArrowPoints(r,o,n,!0)):(h=this._getArrowPoints(o,r,n,!1),c=this._getArrowPoints(r,a,t,!0));let p=h.length,f=(p-5)/2,y=h.slice(0,f),_=h.slice(f,f+5),d=h.slice(f+5,p),T=c.slice(0,f),C=c.slice(f,f+5),P=c.slice(f+5,p);T=w.getBezierPoints(T);let A=w.getBezierPoints(P.concat(y.slice(1)));return d=w.getBezierPoints(d),new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(T.concat(C,A,_,d))))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polygon,e),this)}};v.registerType("double_arrow");var xt=Es;var Bl=Math.PI/2,Ps=class extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.tailWidthFactor=.15,this.neckWidthFactor=.2,this.headWidthFactor=.25,this.headAngle=Math.PI/8.5,this.neckAngle=Math.PI/13,this._state=m.INITIALIZED}get type(){return v.getOverlayType("fine_arrow")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getHierarchy(){let e=g.parsePolygonCoordToArray(this._positions)[0],t=e[0],r=e[1],s=w.getBaseLength(e),a=s*this.tailWidthFactor,o=s*this.neckWidthFactor,n=s*this.headWidthFactor,h=w.getThirdPoint(r,t,Bl,a,!0),c=w.getThirdPoint(r,t,Bl,a,!1),p=w.getThirdPoint(t,r,this.headAngle,n,!1),f=w.getThirdPoint(t,r,this.headAngle,n,!0),y=w.getThirdPoint(t,r,this.neckAngle,o,!1),_=w.getThirdPoint(t,r,this.neckAngle,o,!0);return new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions([h,y,p,r,f,_,c])))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polygon,e),this)}};v.registerType("fine_arrow");var Ct=Ps;var Am=Math.PI/2,Ul=100,Ms=class extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.t=.4,this._state=m.INITIALIZED}get type(){return v.getOverlayType("gathering_place")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getHierarchy(){let e=g.parsePolygonCoordToArray(this._positions)[0];if(this._positions.length===2){let o=w.mid(e[0],e[1]),n=w.distance(e[0],o)/.9,h=w.getThirdPoint(e[0],o,Am,n,!0);e=[e[0],h,e[1]]}let t=w.mid(e[0],e[2]);e.push(t,e[0],e[1]);let r=[];for(let o=0;o<e.length-2;o++){let n=e[o],h=e[o+1],c=e[o+2],p=w.getBisectorNormals(this.t,n,h,c);r=r.concat(p)}let s=r.length;r=[r[s-1]].concat(r.slice(0,s-1));let a=[];for(let o=0;o<e.length-2;o++){let n=e[o],h=e[o+1];a.push(n);for(let c=0;c<=Ul;c++){let p=w.getCubicValue(c/Ul,n,r[o*2],r[o*2+1],h);a.push(p)}a.push(h)}return new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(a)))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polygon,e),this)}};v.registerType("gathering_place");var Tt=Ms;var As=class extends Be{constructor(e){super(e),this._delegate=new i.Entity({polygon:{}}),this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.tailWidthFactor=.1,this.headTailFactor=.8,this.swallowTailFactor=1,this._state=m.INITIALIZED}get type(){return v.getOverlayType("tailed_attack_arrow")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getHierarchy(){let e=g.parsePolygonCoordToArray(this._positions)[0],t=e[0],r=e[1];w.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[w.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),n=o[0],h=o[4],c=w.distance(t,r),p=w.getBaseLength(a),f=p*this.tailWidthFactor*this.swallowTailFactor,y=w.getThirdPoint(a[1],a[0],0,f,!0),_=c/p,d=this._getArrowBodyPoints(a,n,h,_),T=d.length,C=[t].concat(d.slice(0,T/2));C.push(n);let P=[r].concat(d.slice(T/2,T));return P.push(h),C=w.getQBSplinePoints(C),P=w.getQBSplinePoints(P),new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(C.concat(o,P.reverse(),[y,C[0]]))))}};v.registerType("tailed_attack_arrow");var Et=As;var bs=class extends v{constructor(e,t,r=[32,32]){super(),this._position=g.parsePosition(e),this._icon=t,this._size=r,this._delegate={position:void 0,image:void 0,width:0,height:0},this._state=m.INITIALIZED}get type(){return v.getOverlayType("billboard_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("Billboard Primitive: the size invalid");this._size=e,this._delegate.width=this._size[0]||32,this._delegate.height=this._size[1]||32}_mountedHook(){this.position=this._position,this.icon=this._icon,this.size=this._size}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position&&delete e.image&&delete e.width&&delete e.height,x.merge(this._style,e),x.merge(this._delegate,e),this)}};v.registerType("billboard_primitive");var Pt=bs;var Vl={maxOffsetY:10,offsetAmount:.1},Ss=class extends Pt{constructor(e,t){super(e,t),this._currentOffset=new i.Cartesian2(0,0),this._isUp=!0,this._state=m.INITIALIZED}get type(){return v.getOverlayType("bounce_billboard_primitive")}update(e){var s,a;if(!this._show)return;let t=((s=this._style)==null?void 0:s.maxOffsetY)||Vl.maxOffsetY,r=((a=this._style)==null?void 0:a.offsetAmount)||Vl.offsetAmount;this._currentOffset.y>=0?this._isUp=!0:this._currentOffset.y<=-t&&(this._isUp=!1),this._currentOffset.y+=r*(this._isUp?-1:1),this._delegate.pixelOffset=this._currentOffset}destroy(){return i.destroyObject(this)}};v.registerType("bounce_billboard_primitive");var jl=Ss;var Is=class extends v{constructor(e,t){super(),this._position=g.parsePosition(e),this._text=t,this._delegate={position:void 0,text:void 0},this._state=m.INITIALIZED}get type(){return v.getOverlayType("label_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}get text(){return this._text}set text(e){this._text=e,this._delegate.text=this._text}_mountedHook(){this.position=this._position,this.text=this._text}setLabel(e,t){return this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position&&delete e.text,x.merge(this._style,e),x.merge(this._delegate,e),this)}};v.registerType("label_primitive");var Mt=Is;var Zl={maxOffsetY:10,offsetAmount:.1},Ds=class extends Mt{constructor(e,t){super(e,t),this._currentOffset=new i.Cartesian2(0,0),this._isUp=!0,this._state=m.INITIALIZED}get type(){return v.getOverlayType("bounce_label_primitive")}update(e){var s,a;if(!this._show)return;let t=((s=this._style)==null?void 0:s.maxOffsetY)||Zl.maxOffsetY,r=((a=this._style)==null?void 0:a.offsetAmount)||Zl.offsetAmount;this._currentOffset.y>=0?this._isUp=!0:this._currentOffset.y<=-t&&(this._isUp=!1),this._currentOffset.y+=r*(this._isUp?-1:1),this._delegate.pixelOffset=this._currentOffset}destroy(){return i.destroyObject(this)}};v.registerType("bounce_label_primitive");var Yl=Ds;var Ls=class extends v{constructor(e){super(),this._position=g.parsePosition(e),this._delegate={position:void 0,scale:{x:12,y:8}},this._state=m.INITIALIZED}get type(){return v.getOverlayType("cloud_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}_mountedHook(){this.position=this._position}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position,x.merge(this._style,e),x.merge(this._delegate,e),this)}};v.registerType("cloud_primitive");var Jl=Ls;var bm={minRadius:10,minHeight:30,color:i.Color.RED,slices:128,speed:10},Rs=class extends v{constructor(e,t,r){super(),this._center=g.parsePosition(e),this._delegate=void 0,this._height=r,this._radius=t,this._currentHeight=r||0,this._currentRadius=10,this._style={...bm},this._state=m.INITIALIZED}get type(){return v.getOverlayType("diffuse_wall_primitive")}get center(){return this._center}set center(e){this._center=g.parsePosition(e)}get radius(){return this._radius}set radius(e){this._radius=e}get height(){return this._height}set height(e){this._height=e}_getPositions(){let e=[],t=i.Transforms.eastNorthUpToFixedFrame(u.transformWGS84ToCartesian(this._center));for(let r=0;r<this._style.slices;r++){let s=r/this._style.slices*i.Math.TWO_PI,a=Math.cos(s),o=Math.sin(s),n=new i.Cartesian3(a*this._currentRadius,o*this._currentRadius,0);e.push(i.Matrix4.multiplyByPoint(t,n,new i.Cartesian3))}return e.push(e[0]),e}_getHeights(e,t){let r=[];for(let s=0;s<e;s++)r.push(t);return r}update(e){var s;if(this._delegate=this._delegate&&this._delegate.destroy(),this._currentRadius+=this._radius/this._style.speed/20,this._currentHeight-=this._height/this._style.speed/20,(this._currentRadius>this._radius||this._currentHeight<this._style.minHeight)&&(this._currentRadius=this._style.minRadius,this._currentHeight=this._height),!this._style.slices||this._style.slices<3)return!1;let t=this._getPositions();if(!t||!t.length)return!1;let r=new i.WallGeometry({positions:t,minimumHeights:this._getHeights(t.length,0),maximumHeights:this._getHeights(t.length,this._currentHeight)});this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:r}),appearance:new i.MaterialAppearance({material:i.Material.fromType("WallDiffuse",{color:(s=this._style)==null?void 0:s.color}),flat:!0}),asynchronous:!1}),this._delegate.update(e)}setStyle(e){return!e||Object.keys(e).length===0?this:(x.merge(this._style,e),this)}destroy(){return i.destroyObject(this)}};v.registerType("diffuse_wall_primitive");var ql=Rs;var Os=class extends v{constructor(e,t){super(),this._position=g.parsePosition(e),this._radius=t||{x:10,y:10,z:10},this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("elec_ellipsoid_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.geometryInstances.modelMatrix=i.Transforms.eastNorthUpToFixedFrame(u.transformWGS84ToCartesian(this._position))}get radius(){return this._radius}set radius(e){this._radius=e,this._delegate.geometryInstances.geometry=new i.EllipsoidGeometry({radii:this._radius,maximumCone:i.Math.PI_OVER_TWO})}_setAppearance(){var e,t;this._style&&(this._delegate.appearance=new i.MaterialAppearance({material:i.Material.fromType("EllipsoidElectric",{color:((e=this._style)==null?void 0:e.color)||i.Color.GREEN,speed:((t=this._style)==null?void 0:t.speed)||5})}))}_mountedHook(){this.radius=this._radius,this.position=this._position,!this._delegate.appearance&&this._setAppearance()}setLabel(e,t){return this}setStyle(e={}){return Object.keys(e).length===0?this:(x.merge(this._style,e),this._setAppearance(),this)}};v.registerType("elec_ellipsoid_primitive");var Xl=Os;var ks=class extends v{constructor(e,t=1){super(),this._positions=g.parsePositions(e),this._width=t,this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("flow_line_primitive")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.geometryInstances.geometry=new i.PolylineGeometry({positions:u.transformWGS84ArrayToCartesianArray(this._positions),width:this._width})}_setAppearance(){var e,t,r,s;this._delegate.appearance=new i.PolylineMaterialAppearance({material:i.Material.fromType("PolylineFlow",{color:((e=this._style)==null?void 0:e.color)||new i.Color(1,0,0,.7),speed:((t=this._style)==null?void 0:t.speed)||1,percent:((r=this._style)==null?void 0:r.percent)||.03,gradient:((s=this._style)==null?void 0:s.gradient)||.1})})}_mountedHook(){this.positions=this._positions,!this._delegate.appearance&&this._setAppearance()}setLabel(e,t){return this}setStyle(e={}){return Object.keys(e).length===0?this:(x.merge(this._style,e),e.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};v.registerType("flow_line_primitive");var Ql=ks;var Kl="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAEACAYAAADSoXR2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjExQTg0NDEyMDEzQjExRUFBNDhBRjhGMUMzOUUyNTU0IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjExQTg0NDEzMDEzQjExRUFBNDhBRjhGMUMzOUUyNTU0Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTFBODQ0MTAwMTNCMTFFQUE0OEFGOEYxQzM5RTI1NTQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTFBODQ0MTEwMTNCMTFFQUE0OEFGOEYxQzM5RTI1NTQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz41vRwAAAAE90lEQVR42uydyW4UMRCG3T2dgYSAEGs4sp44cCJBcGUJbwCvALwWPAI8ABwAiUVwgLBdkEikJEiAGMhkZqhfU1aa1sy0g+yaJPyWSupOpPjz0uVyucrJer2eG2fJ3ZgLAQhAgC0PgN8XIlkqgGLE75oih0WmRVZEvop0rHog18rnRe6IzInsthyCXFt+TuSKyGmRXZZDgK5eFrkv8l7kiUhrxN/JSo3pigSvcNmI1bCh3b5LK2+NqHyvyEF9x3z5HgqRRViOAXhW5JrCoNdei/y20gMYxhmRSyIXRY6JTMT4DENLW+SdyD19x/NajDmwmYIW79Hnn+MA4GJEAAIQgABJbMJB+n5Sl9zWZvR9DABUfkJkVt8fi3zUldAEoKl24Y2S1fPZEmBdZFHkkb4vxTLRQ5djbyUf0ncYrD/UADUB8MZno2Q19yx7gIqIAAQgAAEIQIAtYZT+85LvRnjQCoPKR3rQUgN4Y3ZeK30g8qps0qeeAzDn4TWD9+ySG+BBS90DaGnVg9a2tgnR4il9/jkOACoiAhCAAASIZpAAFl6yulO0JACo/IDrn6CedP1zxOciv6wAYNnAP3RVBeWtJQCWzG8iL/X9g4vkqNzMctzUXtintt2KM/aS+bmQaY90rb8CF6tSKiICEIAABCAAAQiwbfcFIWVCbUcc9bZDLKiYAKj4uOv7Bb+ILLj+8W7PCgC7Jhzv44Qdh9yrru8V61jPgd645gD2io+15RiC5ZA5ENNPmGmDmtrta9YAVEQE2FlrQUM/J6efU8cSAD87ojodBaccS6kgiiErGiq/qe93XT+3oGU5BJnbyKrIUs6BQZoQUEcrQ7CYagiGqeKiMgnXLXsg5uJUm/RQJKy8fGS7PMw6SgVQPrJFGZr0kCfUL/7IFjIzrLGpemBQ0kPbehL6I9vMjUh6oEVEAAIQgAAEIAABdpyj0qcK71YrqGUJANNrv+sHOcAiRpDDM1cTY1BEHk7kqyP/2Ac5vLEEQEG8aDnIoTb5ObZRWg5ywG5o1dX4ClNYxT7IISgJPsXGpLut9MCWU0S5bqkmdAa3LQEwcZDAfkZ3tthQfkwNkVeeD6kiuaUabcp6DpS9YyalrAdQ8bT1EFQVUabarND9fNuyB2gREYAABCAAAQhAAAIQoM770UgBXARCIr/koDogVlzgrWuxemBKd0m4JnBed0+5ZQ9gn3BK5LK+P4y5ewoB8DFiKO91COLFfwVuTCZV1hSoYw1APZCsFIkbN1Haaa87wwiKQe6eT27AEX6esPVVd8/kOOdAz/oz9FE0p+uGIKUeqE5C8xgSKiICEIAABCAAAQhAAAIQgAAEIAABCECA6AA+sbkREyDUUYlKD6ggZwzRkr8tewBhusisv+0in5qE/hFchoZTE0TL4p8sTbtIpyahQ4Ag5fKpSVBmfdDECvQTZjoM0U9N6KgkwH9xY7PXpPiCmq5yuaLVldHIO7jgNi5XfOEhCqNh9udHV/RnC5YAUDTftdV4/ivvwEoRVS9XXPWa1FIT5ird8jpSB+BDN3rO8AaGMnGy0I0QRYTvdk6NkOsucuhGCMAgI8Q0isaHbmAevNMhiD4P6iZhstANGiQE2PEGCRo2NcgAsQDwKnxWFdlT17/duWU1BJmuHz6A5bwbEsCScgh+qAHit3Jr1oooOPExdRBLbeJjSpuwuy30AAH+CDAAPH5ltESNYl4AAAAASUVORK5CYII=";var Sm={color:i.Color.ORANGE},zs=class extends v{constructor(e,t,r,s){super(),this._center=g.parsePosition(e),this._length=t||100,this._topRadius=r||1,this._bottomRadius=s||50,this._delegate=new i.PrimitiveCollection,this._style={...Sm},this._state=m.INITIALIZED}get type(){return v.getOverlayType("light-cylinder-primitive")}get center(){return this._center}set center(e){this._center=g.parsePosition(e),this._updatePrimitives()}get length(){return this._length}set length(e){this._length=e,this._updatePrimitives()}get topRadius(){return this._topRadius}set topRadius(e){this._topRadius=e,this._updatePrimitives()}get bottomRadius(){return this._bottomRadius}set bottomRadius(e){this._bottomRadius=e,this._updatePrimitives()}_computeEllipsePositions(e,t){let r=i.EllipseGeometryLibrary.computeEllipsePositions({center:u.transformWGS84ToCartesian(e),semiMajorAxis:t,semiMinorAxis:t,rotation:0,granularity:.005},!1,!0),s=i.Cartesian3.unpackArray(r.outerPositions);return s.push(s[0]),s}_createCylinderInstance(e,t,r){let s=t.slice(),a=t.length,o=2*a,n=[],h=1/(a-1),c=[],p=[],f=(_,d=0)=>{let T=i.Cartographic.fromCartesian(_);return T.height+=d,i.Cartographic.toCartesian(T)};for(let _=0;_<a;_++){p.push(f(e[_],r)),n.push(_*h,0);let d=_+1,T=(_+1)%a,C=o-d;c.push(C-1,C,_),c.push(_,T,C-1)}for(let _ in p)s.push(p[a-_-1]),n.push(1-_*h,1);let y=i.PolygonGeometry.createGeometry(new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(s),perPositionHeight:!0}));return y.indices=c,y.attributes.st.values=n,new i.GeometryInstance({geometry:y})}_getCircleImage(){let e=document.createElement("canvas");e.width=512,e.height=512;let t=e.getContext("2d");return t.fillStyle="rgba(255,255,255,0)",t.strokeStyle="rgba(255, 255, 255,255)",t.setLineDash([50,50]),t.lineWidth=30,t.beginPath(),t.arc(256,256,150,0,Math.PI*2,!0),t.stroke(),t.restore(),e}_getParticlesImage(e){let t=document.createElement("canvas");t.width=64,t.height=256;let r=t.getContext("2d");return r.clearRect(0,0,64,256),r.drawImage(e,0,0),r.drawImage(e,33,0),t}_updatePrimitives(){this._delegate.removeAll();let e=this._center.alt===0,t=this._computeEllipsePositions(this._center,this._topRadius),r=this._computeEllipsePositions(this._center,this._bottomRadius*.7),s=this._computeEllipsePositions(this._center,this._bottomRadius),a={geometryInstances:new i.GeometryInstance({geometry:new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(this._computeEllipsePositions(this._center,this._bottomRadius*2)),perPositionHeight:!e}),asynchronous:!1})},o=e?new i.GroundPrimitive(a):new i.Primitive(a);o.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CircleRingType,{color:this._style.color})});let n=e?new i.GroundPrimitive(a):new i.Primitive(a);n.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CircleRotateType,{color:this._style.color,image:this._getCircleImage()})});let h=new i.Primitive({geometryInstances:this._createCylinderInstance(t,r,this._length),appearance:new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CylinderFadeType,{color:this._style.color})}),asynchronous:!1});e?i.GroundPrimitive.initializeTerrainHeights().then(()=>{this._delegate.add(o),this._delegate.add(n),this._delegate.add(h)}):(this._delegate.add(o),this._delegate.add(n),this._delegate.add(h)),i.Resource.fetchImage({url:Kl}).then(c=>{let p=new i.Primitive({geometryInstances:this._createCylinderInstance(t,s,this._length),appearance:new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CylinderParticlesType,{color:this._style.color,image:this._getParticlesImage(c)})}),asynchronous:!1});this._delegate.add(p)})}_mountedHook(){this.center=this._center}update(e){this._delegate.update(e)}setStyle(e){return!e||Object.keys(e).length===0?this:(x.merge(this._style,e),this)}destroy(){return i.destroyObject(this)}};v.registerType("light-cylinder-primitive");var $l=zs;var Ns=class extends v{constructor(e,t){super(),this._position=g.parsePosition(e),this._modelUrl=t,this._delegate=i.Model.fromGltfAsync({url:t}),this._modelEvent=new qi(this._delegate),this._state=m.INITIALIZED}get type(){return v.getOverlayType("model_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e);let t=u.transformWGS84ToCartesian(this._position);this._delegate.then(r=>{r.modelMatrix=i.Transforms.headingPitchRollToFixedFrame(t,new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))})}get modelUrl(){return this._modelUrl}set modelUrl(e){this._modelUrl=e,this._delegate=i.Model.fromGltfAsync({url:e,...this._style}),this.position=this._position}_mountedHook(){this.position=this._position}setStyle(e){return!e||Object.keys(e).length===0?this:(x.merge(this._style,e),this._delegate.then(t=>{x.merge(t,e)}),this)}on(e,t,r){return this._overlayEvent.on(e,t,r||this),this._modelEvent.on(e,t,r||this),this}off(e,t,r){return this._overlayEvent.off(e,t,r||this),this._modelEvent.off(e,t,r||this),this}};v.registerType("model_primitive");var eh=Ns;var th={pixelSize:8,outlineColor:i.Color.BLUE,outlineWidth:2},Fs=class extends v{constructor(e){super(),this._position=g.parsePosition(e),this._delegate={position:void 0},this._state=m.INITIALIZED}get type(){return v.getOverlayType("point_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}_mountedHook(){this.position=this._position,x.merge(this._delegate,th,this._style)}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position,x.merge(this._style,e),x.merge(this._delegate,th,this._style),this)}};v.registerType("point_primitive");var ih=Fs;var Ws=class extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate={positions:[]},this._state=m.INITIALIZED}get type(){return v.getOverlayType("polyline_primitive")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.positions=u.transformWGS84ArrayToCartesianArray(this._positions)}get center(){return ve(this._positions)}get distance(){return se(this._positions)}_mountedHook(){this.positions=this._positions}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate,e),this)}};v.registerType("polyline_primitive");var rh=Ws;var Gs=class extends v{constructor(e,t){super(),this._position=g.parsePosition(e),this._radius=t,this._delegate=new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("scan_circle_primitive")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.geometryInstances.geometry=new i.EllipseGeometry({center:u.transformWGS84ToCartesian(this._position),semiMajorAxis:this._radius,semiMinorAxis:this._radius})}get radius(){return this._radius}set radius(e){this._radius=e,this._delegate.geometryInstances.geometry.semiMajorAxis=this._radius,this._delegate.geometryInstances.geometry.semiMinorAxis=this._radius}_setAppearance(){var e,t;this._style&&(this._delegate.appearance=new i.MaterialAppearance({material:i.Material.fromType("CircleScan",{color:((e=this._style)==null?void 0:e.color)||i.Color.WHITE,speed:((t=this._style)==null?void 0:t.speed)||10})}))}_mountedHook(){this.position=this._position,!this._delegate.appearance&&this._setAppearance()}setStyle(e={}){return Object.keys(e).length===0?this:(x.merge(this._style,e),e.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};v.registerType("scan_circle_primitive");var sh=Gs;var Hs=class extends v{constructor(e,t=1){super(),this._positions=g.parsePositions(e),this._width=t,this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("trail_line_primitive")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.geometryInstances.geometry=new i.PolylineGeometry({positions:u.transformWGS84ArrayToCartesianArray(this._positions),width:this._width})}_setAppearance(){var e,t;this._delegate.appearance=new i.PolylineMaterialAppearance({material:i.Material.fromType("PolylineTrail",{color:((e=this._style)==null?void 0:e.color)||new i.Color(1,0,0,.7),speed:((t=this._style)==null?void 0:t.speed)||5})})}_mountedHook(){this.positions=this._positions,!this._delegate.appearance&&this._setAppearance()}setStyle(e={}){return Object.keys(e).length===0?this:(x.merge(this._style,e),e.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};v.registerType("trail_line_primitive");var ah=Hs;var Bs=class extends v{constructor(e,t){super(),this._positions=g.parsePositions(e),this._delegate=new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._video=t,this._state=m.INITIALIZED}get type(){return v.getOverlayType("video_primitive")}get positions(){return this._positions}set positions(e){var t,r,s,a;this._positions=g.parsePositions(e),this._delegate.geometryInstances.geometry=i.PolygonGeometry.fromPositions({positions:u.transformWGS84ArrayToCartesianArray(this._positions),height:(t=this._style)==null?void 0:t.height,extrudedHeight:(r=this._style)==null?void 0:r.extrudedHeight,closeTop:(s=this._style)==null?void 0:s.closeTop,closeBottom:(a=this._style)==null?void 0:a.closeBottom,vertexFormat:i.EllipsoidSurfaceAppearance.VERTEX_FORMAT})}get video(){return this._video}set video(e){this._video=e,this._setAppearance()}_setAppearance(){this._delegate.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType("Image",{image:this._video})})}_mountedHook(){this.positions=this._positions,this.video=this._video}setStyle(e){var t;return Object.keys(e).length===0?this:(x.merge(this._style,e),(t=this._style)!=null&&t.classificationType&&(this._delegate.classificationType=this._style.classificationType),this)}};v.registerType("video_primitive");var oh=Bs;var Us=class extends v{constructor(e,t=[]){super(),this._positions=g.parsePositions(e),this._holes=t.map(r=>g.parsePositions(r)),this._delegate=new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}}),asynchronous:!0}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("water_primitive")}get positions(){return this._positions}set positions(e){var t,r,s,a;this._positions=g.parsePositions(e),this._delegate.geometryInstances.geometry=new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(this._positions),this._holes.map(o=>new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(o)))),height:(t=this._style)==null?void 0:t.height,extrudedHeight:(r=this._style)==null?void 0:r.extrudedHeight,closeTop:(s=this._style)==null?void 0:s.closeTop,closeBottom:(a=this._style)==null?void 0:a.closeBottom,vertexFormat:i.EllipsoidSurfaceAppearance.VERTEX_FORMAT})}_setAppearance(){var e,t,r,s,a,o,n,h;this._style&&(this._delegate.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType("Water",{baseWaterColor:((e=this._style)==null?void 0:e.baseWaterColor)||new i.Color(.2,.3,.6,1),blendColor:((t=this._style)==null?void 0:t.blendColor)||new i.Color(0,1,.699,1),specularMap:((r=this._style)==null?void 0:r.specularMap)||i.Material.DefaultImageId,normalMap:((s=this._style)==null?void 0:s.normalMap)||i.Material.DefaultImageId,frequency:((a=this._style)==null?void 0:a.frequency)||1e3,animationSpeed:((o=this._style)==null?void 0:o.animationSpeed)||.01,amplitude:((n=this._style)==null?void 0:n.amplitude)||10,specularIntensity:((h=this._style)==null?void 0:h.specularIntensity)||.5})}))}_mountedHook(){this.positions=this._positions,!this._delegate.appearance&&this._setAppearance()}setStyle(e){var t;return Object.keys(e).length===0?this:(x.merge(this._style,e),(t=this._style)!=null&&t.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};v.registerType("water_primitive");var nh=Us;var Vs=class l extends v{constructor(e,t){super(),this._delegate=new i.Entity({billboard:{}}),this._position=g.parsePosition(e),this._icon=t,this._size=[32,32],this._state=m.INITIALIZED}get type(){return v.getOverlayType("billboard")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.billboard.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("Billboard: the size invalid");this._size=e,this._delegate.billboard.width=this._size[0]||32,this._delegate.billboard.height=this._size[1]||32}static fromEntity(e){var a;let t,r=i.JulianDate.now(),s=u.transformCartesianToWGS84(e.position.getValue(r));return e.billboard&&(t=new l(s,e.billboard.image.getValue(r)),t.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(r)}),t}_mountedHook(){this.position=this._position,this.icon=this._icon,this.size=this._size}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.image&&delete e.width&&delete e.height,x.merge(this._style,e),x.merge(this._delegate.billboard,e),this)}};v.registerType("billboard");var Ue=Vs;var js=class extends v{constructor(e,t,r,s){super(),this._position=g.parsePosition(e),this._length=t,this._width=r,this._height=s,this._delegate=new i.Entity({box:{dimensions:{x:+this._length,y:+this._width,z:+this._height}}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("box")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get length(){return this._length}set length(e){let t=this._delegate.box.dimensions.getValue();this._length=e||0,t.x=+this._length,this._delegate.box.dimensions.setValue(t)}get width(){return this._width}set width(e){let t=this._delegate.box.dimensions.getValue();this._width=e||0,t.y=+this._width,this._delegate.box.dimensions.setValue(t)}get height(){return this._height}set height(e){let t=this._delegate.box.dimensions.getValue();this._height=e||0,t.z=+this._height,this._delegate.box.dimensions.setValue(t)}_mountedHook(){this.position=this._position}setStyle(e){return Object.keys(e).length===0?this:(delete e.length&&delete e.width&&delete e.height,x.merge(this._style,e),x.merge(this._delegate.box,e),this)}};v.registerType("box");var lh=js;var Zs=class extends v{constructor(e,t){super(),this._delegate=new i.Entity({polygon:{}}),this._center=g.parsePosition(e),this._radius=+t||0,this._rotateAmount=0,this._stRotation=0,this._state=m.INITIALIZED}get type(){return v.getOverlayType("circle")}get center(){return this._center}set center(e){this._center=g.parsePosition(e),this._delegate.polygon.hierarchy=this._computeHierarchy()}get radius(){return this._radius}set radius(e){this._radius=+e,this._delegate.polygon.hierarchy=this._computeHierarchy()}get rotateAmount(){return this._rotateAmount}set rotateAmount(e){this._rotateAmount=+e,this._delegate.polygon.stRotation=new i.CallbackProperty(()=>(this._stRotation+=this._rotateAmount,(this._stRotation>=360||this._stRotation<=-360)&&(this._stRotation=0),i.Math.toRadians(this._stRotation)),!1)}_computeHierarchy(){let e=new i.PolygonHierarchy,t=i.EllipseGeometryLibrary.computeEllipsePositions({center:u.transformWGS84ToCartesian(this._center),semiMajorAxis:this._radius,semiMinorAxis:this._radius,rotation:0,granularity:.005},!1,!0),r=i.Cartesian3.unpackArray(t.outerPositions);return r.push(r[0]),e.positions=r,e}_mountedHook(){this.center=this._center}setLabel(e,t){return this._delegate.position=u.transformWGS84ToCartesian(this._center),this._delegate.label={...t,text:e},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polygon,e),this)}};v.registerType("circle");var At=Zs;var Ys=class l extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({corridor:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("corridor")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.corridor.positions=u.transformWGS84ArrayToCartesianArray(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polyline){let a=u.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(r));t=new l(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.corridor,e),this)}};v.registerType("corridor");var hh=Ys;var Js=class extends v{constructor(e,t,r,s){super(),this._position=g.parsePosition(e),this._length=+t||0,this._topRadius=+r||0,this._bottomRadius=+s||0,this._delegate=new i.Entity({cylinder:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("cylinder")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get length(){return this._length}set length(e){this._length=+e||0,this._delegate.cylinder.length=this._length}get topRadius(){return this._topRadius}set topRadius(e){this._topRadius=+e||0,this._delegate.cylinder.topRadius=this._topRadius}get bottomRadius(){return this._bottomRadius}set bottomRadius(e){this._bottomRadius=+e||0,this._delegate.cylinder.bottomRadius=this._bottomRadius}_mountedHook(){this.position=this._position,this.length=this._length,this.topRadius=this._topRadius,this.bottomRadius=this._bottomRadius}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.length&&delete e.topRadius&&delete e.bottomRadius,x.merge(this._style,e),x.merge(this._delegate.cylinder,e),this)}};v.registerType("cylinder");var ch=Js;var qs=class extends v{constructor(e,t,r){super(),this._position=g.parsePosition(e),this._semiMajorAxis=+t||0,this._semiMinorAxis=+r||0,this._delegate=new i.Entity({ellipse:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("ellipse")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get semiMajorAxis(){return this._semiMajorAxis}set semiMajorAxis(e){this._semiMajorAxis=+e||0,this._delegate.ellipse.semiMajorAxis=this._semiMajorAxis}get semiMinorAxis(){return this._semiMinorAxis}set semiMinorAxis(e){this._semiMinorAxis=+e||0,this._delegate.ellipse.semiMinorAxis=this._semiMinorAxis}_mountedHook(){this.position=this._position,this.semiMajorAxis=this._semiMajorAxis,this.semiMinorAxis=this._semiMinorAxis}setStyle(e){return Object.keys(e).length===0?this:(delete e.semiMajorAxis&&delete e.semiMinorAxis,x.merge(this._style,e),x.merge(this._delegate.ellipse,e),this)}};v.registerType("ellipse");var ph=qs;var Xs=class extends v{constructor(e,t){super(),this._position=g.parsePosition(e),this._radius=t||{x:10,y:10,z:10},this._delegate=new i.Entity({ellipsoid:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("sphere")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get radius(){return this._radius}set radius(e){this._radius=e||{x:10,y:10,z:10},this._delegate.ellipsoid.radii=this._radius}_mountedHook(){this.position=this._position,this.radius=this._radius}setStyle(e){return Object.keys(e).length===0?this:(delete e.radius,x.merge(this._style,e),x.merge(this._delegate.ellipsoid,e),this)}};v.registerType("sphere");var dh=Xs;var Qs=class l extends v{constructor(e,t){super(),this._delegate=new i.Entity({label:{}}),this._position=g.parsePosition(e),this._text=t,this._state=m.INITIALIZED}get type(){return v.getOverlayType("label")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}get text(){return this._text}set text(e){this._text=e,this._delegate.label.text=this._text}static fromEntity(e){var a;let t=i.JulianDate.now(),r=u.transformCartesianToWGS84(e.position.getValue(t)),s;return e.billboard&&(s=new l(r,e.name),s.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(t)}),s}_mountedHook(){this.position=this._position,this.text=this._text}setLabel(e,t){return this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.text,x.merge(this._style,e),x.merge(this._delegate.label,e),this)}};v.registerType("label");var bt=Qs;var Ks=class extends v{constructor(e,t,r,s={}){if(super(),this._position=g.parsePosition(e),this._width=+t||100,this._height=+r||100,s.normal&&typeof s.normal=="string"){let a=String(s.normal).toLocaleUpperCase();s.normal=a==="X"?i.Cartesian3.UNIT_X:a==="Y"?i.Cartesian3.UNIT_Y:i.Cartesian3.UNIT_Z}else s.normal=i.Cartesian3.UNIT_Z;this._normal=s.normal,this._distance=s.distance||0,this._delegate=new i.Entity({plane:{dimensions:{x:this._width,y:this._height},plane:new i.Plane(this._normal,this._distance)}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("plane")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get width(){return this._width}set width(e){let t=this._delegate.plane.dimensions.getValue();this._width=+e||0,t.x=this._width}get height(){return this._height}set height(e){let t=this._delegate.plane.dimensions.getValue();this._height=+e||0,t.y=this._height}get distance(){return this._distance}set distance(e){this._distance=e,this._delegate.plane.plane.distance=e}_mountedHook(){this.position=this._position,this.distance=this._distance}setStyle(e){return Object.keys(e).length===0?this:(delete e.dimensions&&delete["plane"],x.merge(this._style,e),x.merge(this._delegate.plane,e),this)}};v.registerType("plane");var mh=Ks;var uh={pixelSize:8,outlineColor:i.Color.BLUE,outlineWidth:2},$s=class l extends v{constructor(e){super(),this._delegate=new i.Entity({point:{}}),this._position=g.parsePosition(e),this._state=m.INITIALIZED}get type(){return v.getOverlayType("point")}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._delegate.position=u.transformWGS84ToCartesian(this._position)}static fromEntity(e){var a;let t,r=i.JulianDate.now(),s=u.transformCartesianToWGS84(e.position.getValue(r));return t=new l(s),t.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(r)},t}_mountedHook(){this.position=this._position,x.merge(this._delegate.point,uh,this._style)}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position,x.merge(this._style,e),x.merge(this._delegate.point,uh,this._style),this)}};v.registerType("point");var St=$s;var ea=class l extends v{constructor(e){super(),this._delegate=new i.Entity({polygon:{}}),this._positions=g.parsePositions(e),this._holes=[],this._state=m.INITIALIZED}get type(){return v.getOverlayType("polygon")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polygon.hierarchy=this._computeHierarchy()}get holes(){return this._holes}set holes(e){e&&e.length&&(this._holes=e.map(t=>g.parsePositions(t)),this._delegate.polygon.hierarchy=this._computeHierarchy())}get center(){return ve([...this._positions,this._positions[0]])}get area(){return ye(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polygon){let a=u.transformCartesianArrayToWGS84Array(e.polygon.hierarchy.getValue(r).positions);t=new l(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_computeHierarchy(){let e=new i.PolygonHierarchy;return e.positions=u.transformWGS84ArrayToCartesianArray(this._positions),e.holes=this._holes.map(t=>new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(t))),e}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this._delegate.position=u.transformWGS84ToCartesian(this.center),this._delegate.label={text:e,...t},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polygon,e),this)}};v.registerType("polygon");var Ve=ea;var ta=class l extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({polyline:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("polyline")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polyline.positions=u.transformWGS84ArrayToCartesianArray(this._positions)}get center(){return ve(this._positions)}get distance(){return se(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polyline){let a=u.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(r));t=new l(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this._delegate.position=u.transformWGS84ToCartesian(this.center),this._delegate.label={text:e,...t},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polyline,e),this)}};v.registerType("polyline");var je=ta;var ia=class l extends v{constructor(e={}){super(),this._positions=g.parsePositions(e.positions||[]);let t=e.shape||e.shapePositions;switch(e.radius=e.radius||10,t){case"pipeline":this._shape=this.getShapeForPipeline(e);break;case"circle":this._shape=this.getShapeForCircle(e);break;case"star":this._shape=this.getShapeForStar(e);break;default:this._shape=t;break}this._delegate=new i.Entity({polylineVolume:{}}),this._state=m.INITIALIZED}getShapeForPipeline(e={}){let t=e.radius||1,r=e.thicknes||t/3,s=Math.ceil(360/(e.slices||60)),a=e.startAngle||0,o=e.endAngle||a+360,n=e.vscale||1,h=e.hscale||1,c=[];for(let p=a;p<=o;p+=s){let f=i.Math.toRadians(p);c.push({x:t*h*Math.cos(f),y:t*n*Math.sin(f)})}for(let p=o;p>=a;p-=s){let f=i.Math.toRadians(p);c.push({x:(t-r)*h*Math.cos(f),y:(t-r)*n*Math.sin(f)})}return c}getShapeForCircle(e={}){let t=e.radius||1,r=Math.ceil(360/(e.slices||60)),s=e.startAngle||0,a=e.endAngle||s+360,o=e.vscale||1,n=e.hscale||1,h=[];for(let c=s;c<=a;c+=r){let p=i.Math.toRadians(c);h.push({x:t*n*Math.cos(p),y:t*o*Math.sin(p)})}return h}getShapeForStar(e={}){console.log(e.slices||6);let t=e.radius||1,r=e.thicknes||t/3,s=e.slices||6,a=e.startAngle||0;console.log(s);let o=i.Math.toRadians(a),n=Math.PI/s,h=2*s,c=new Array(h);for(let p=0;p<h;p++){let f=p%2===0?t:r,y=o+p*n;c[p]=new i.Cartesian2(Math.cos(y)*f,Math.sin(y)*f)}return c}get type(){return v.getOverlayType("polyline_volume")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.polylineVolume.positions=u.transformWGS84ArrayToCartesianArray(this._positions)}get shape(){return this._shape}set shape(e){this._shape=e||[],this._delegate.polylineVolume.shape=this._shape}static fromEntity(e,t){var a;let r,s=i.JulianDate.now();return e.polyline&&(t.positions=u.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(s)),r=new l(t),r.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(s)}),r}_mountedHook(){this.positions=this._positions,this.shape=this._shape}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.polylineVolume,e),this)}};v.registerType("polyline_volume");var fh=ia;var ra=class extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({rectangle:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("rect")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.rectangle.coordinates=i.Rectangle.fromCartesianArray(u.transformWGS84ArrayToCartesianArray(this._positions))}_mountedHook(){this.positions=this._positions}setLabel(e,t){let r=this._delegate.rectangle.coordinates.getValue();return this._delegate.position=i.Cartographic.toCartesian(i.Rectangle.center(r,new i.Cartographic)),this._delegate.label={...t,text:e},this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.rectangle,e),this)}};v.registerType("rect");var It=ra;var sa=class l extends v{constructor(e){super(),this._positions=g.parsePositions(e),this._delegate=new i.Entity({wall:{}}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("wall")}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._delegate.wall.positions=u.transformWGS84ArrayToCartesianArray(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polyline){let a=u.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(r));t=new l(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,x.merge(this._style,e),x.merge(this._delegate.wall,e),this)}};v.registerType("wall");var _h=sa;var aa=class extends M{constructor(e,t,r={}){if(!t)throw new Error("GeoJsonLayer\uFF1Athe url invalid");super(e),this._delegate=i.GeoJsonDataSource.load(t,r),this._state=m.INITIALIZED}get type(){return M.getLayerType("geojson")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}_createBillboard(e){if(e.position&&e.billboard)return Ue.fromEntity(e)}_createPolyline(e){if(e.polyline)return je.fromEntity(e)}_createPolygon(e){if(e.polygon)return Ve.fromEntity(e)}_createModel(e,t){if(e)return vt.fromEntity(e,t)}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}toVectorLayer(){let e=new ze(this.id);return this.eachOverlay(t=>{t.billboard?e.addOverlay(this._createBillboard(t)):t.polyline?e.addOverlay(this._createPolyline(t)):t.polygon&&e.addOverlay(this._createPolygon(t))},this),e}toModelLayer(e){let t=new ze(this.id);return this.eachOverlay(r=>{t.addOverlay(this._createModel(r,e))},this),t}};M.registerType("geojson");var rt=aa;var oa=class extends M{constructor(e,t,r={}){if(!t)throw new Error("GpxLayer: the url is empty");super(e),this._delegate=i.KmlDataSource.load(t,r),this._state=m.INITIALIZED}get type(){return M.getLayerType("gpx")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}};M.registerType("gpx");var gh=oa;var Im={radialColor:i.Color.WHITE,radialWidth:2,showRadial:!0,LabelColor:i.Color.YELLOW,weftColor:i.Color.WHITE,weftWidth:2},na=class extends M{constructor(e,t){super(e),this._options={...Im,...t},this._delegate=new i.CustomDataSource(e),this._state=m.INITIALIZED}get type(){return M.getLayerType("graticule")}_addedHook(){for(let e=0;e<36;e++)this._delegate.entities.add({polyline:{positions:i.Cartesian3.fromDegreesArray([e*10,89.5,e*10,-89.5]),material:this._options.radialColor,width:this._options.radialWidth},show:this._options.showRadial}),this._delegate.entities.add({position:i.Cartesian3.fromDegrees(e*10,0),label:{text:e*10+"\xB0",font:"12px",fillColor:this._options.LabelColor}});for(let e=0;e<18;e++){let t=[];for(let r=0;r<129;r++)t.push(-180+r*(360/128),(e<9?e:-e)*10);this._delegate.entities.add({polyline:{positions:i.Cartesian3.fromDegreesArray(t),material:this._options.weftColor,width:this._options.weftWidth}})}}};M.registerType("graticule");var yh=na;var la=class extends M{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._isGround=!0,this._state=m.INITIALIZED}get type(){return M.getLayerType("ground_primitive")}clear(){return this._delegate&&this._delegate.removeAll(),this._cache={},this._state=m.CLEARED,this}};M.registerType("ground_primitive");var vh=la;var xh=[].indexOf||function(l){for(let e=0,t=this.length;e<t;e++)if(e in this&&this[e]===l)return e;return-1},Dt=`attribute vec4 position;
135
+ `,hs=class extends pf{constructor(e={}){super(e),this.offsetAngle=(e==null?void 0:e.offsetAngle)||0}update(e,t){let r=this;if(!this.show||e.mode!==$l.SCENE3D&&e.mode!==$l.MORPHING||!e.passes.render)return;let s=e.context;if(this._sources!==this.sources){this._sources=this.sources;let o=this.sources;if(!Ae(o.positiveX)||!Ae(o.negativeX)||!Ae(o.positiveY)||!Ae(o.negativeY)||!Ae(o.positiveZ)||!Ae(o.negativeZ))throw new Ql("this.sources is required and must have positiveX, negativeX, positiveY, negativeY, positiveZ, and negativeZ properties.");if(typeof o.positiveX!=typeof o.negativeX||typeof o.positiveX!=typeof o.positiveY||typeof o.positiveX!=typeof o.negativeY||typeof o.positiveX!=typeof o.positiveZ||typeof o.positiveX!=typeof o.negativeZ)throw new Ql("this.sources properties must all be the same type.");typeof o.positiveX=="string"?of(s,this._sources).then(function(l){r._cubeMap=r._cubeMap&&r._cubeMap.destroy(),r._cubeMap=l}):(this._cubeMap=this._cubeMap&&this._cubeMap.destroy(),this._cubeMap=new af({context:s,source:o}))}let a=this._command;if(a.modelMatrix=tf.eastNorthUpToFixedFrame(e.camera.positionWC),this.offsetAngle!==0&&ls.multiply(a.modelMatrix,ls.fromRotationTranslation(Kl.fromRotationZ(this.offsetAngle/180*Math.PI)),a.modelMatrix),!Ae(a.vertexArray)){a.uniformMap={u_cubeMap:function(){return r._cubeMap},u_rotateMatrix:function(){return ls.getMatrix3(a.modelMatrix,new Kl)}};let o=Xl.createGeometry(Xl.fromDimensions({dimensions:new $u(2,2,2),vertexFormat:rf.POSITION_ONLY})),l=this._attributeLocations=ef.createAttributeLocations(o);a.vertexArray=lf.fromGeometry({context:s,geometry:o,attributeLocations:l,bufferUsage:sf._DRAW}),a.renderState=nf.fromCache({blending:hf.ALPHA_BLEND})}if(!Ae(a.shaderProgram)||this._useHdr!==t){let o=new df({defines:[t?"HDR":""],sources:[mf]});a.shaderProgram=cf.fromCache({context:s,vertexShaderSource:uf,fragmentShaderSource:o,attributeLocations:this._attributeLocations}),this._useHdr=t}if(Ae(this._cubeMap))return a}},eh=hs;var ff={creditContainer:document.createElement("div"),creditViewport:document.createElement("div"),baseLayer:!1,shouldAnimate:!0},cs=class{constructor(e,t={}){if(__cmdOut&&__cmdOut(),!e||typeof e=="string"&&!document.getElementById(e))throw new Error("Viewer: the container is empty");if(e instanceof HTMLElement)throw new Error("Viewer: not support the type container");if(typeof e=="string"){let a=Xi("baseUrl");a&&i.buildModuleUrl.setBaseUrl(a)}this._delegate=typeof e!="string"?e:new i.CesiumWidget(e,{...ff,...t}),this._delegate.canvas.parentNode.className="viewer-canvas",new nr(this,t),this._viewerEvent=new hr,this._sceneEvent=new dr(this),this._viewerOption=new Nr(this),this._cameraOption=new Fr(this),this._widgetContainer=D.create("div","viewer-widgets",typeof e=="string"?document.getElementById(e):this._delegate.container),this._layerContainer=D.create("div","viewer-layers",typeof e=="string"?document.getElementById(e):this._delegate.container),this._baseLayerPicker=new ns({globe:this._delegate.scene.globe}),this._layerGroupCache={},this._layerCache={};let r=is();Object.keys(r).forEach(a=>{this._use(r[a])});let s=as();Object.keys(s).forEach(a=>{this._use(s[a])})}get delegate(){return this._delegate}get container(){return this._delegate.container}get widgetContainer(){return this._widgetContainer}get layerContainer(){return this._layerContainer}get scene(){return this._delegate.scene}get camera(){return this._delegate.camera}get canvas(){return this._delegate.scene.canvas}get dataSources(){return this._delegate.dataSources}get imageryLayers(){return this._delegate.imageryLayers}get terrainProvider(){return this._delegate.terrainProvider}get entities(){return this._delegate.entities}get postProcessStages(){return this._delegate.scene.postProcessStages}get clock(){return this._delegate.clock}get viewerEvent(){return this._viewerEvent}get cameraPosition(){var t,r,s,a,o,l,h;let e=g.transformCartographicToWGS84((t=this.camera)==null?void 0:t.positionCartographic);return e&&(e.heading=i.Math.toDegrees((s=(r=this.camera)==null?void 0:r.heading)!=null?s:0),e.pitch=i.Math.toDegrees((o=(a=this.camera)==null?void 0:a.pitch)!=null?o:0),e.roll=i.Math.toDegrees((h=(l=this.camera)==null?void 0:l.roll)!=null?h:0)),e}get resolution(){let e=this.scene.canvas.width,t=this.scene.canvas.height,r=g.transformWindowToWGS84(new i.Cartesian2(e/2|0,t-1),this),s=g.transformWindowToWGS84(new i.Cartesian2(1+e/2|0,t-1),this);return!r||!s?1:Math.abs(r.lng-s.lng)}get viewBounds(){let e=this.scene.canvas.width,t=this.scene.canvas.height,r=g.transformWindowToWGS84(new i.Cartesian2(0,t),this),s=g.transformWindowToWGS84(new i.Cartesian2(e,0),this);return!r||!s?i.Rectangle.MAX_VALUE:i.Rectangle.fromDegrees(r.lng,r.lat,s.lng,s.lat)}get zoom(){let e=this.camera.positionCartographic.height,t=40487.57,r=7096758e-11,s=91610.74,a=-40467.74;return Math.round(a+(t-a)/(1+Math.pow(e/s,r)))}get centerPosition(){return this.camera.pickEllipsoid(new i.Cartesian2(this.canvas.clientWidth/2,this.canvas.clientHeight/2))}get centerPositionWGS84(){let e=this.centerPosition,t=i.Ellipsoid.WGS84.cartesianToCartographic(e),r=t.longitude*180/Math.PI,s=t.latitude*180/Math.PI,a=this.cameraHeight;return new q(r,s,0,a)}get cameraHeight(){return this.scene.globe.ellipsoid.cartesianToCartographic(this.camera.position).height}_use(e){return e&&e.install&&e.install(this),this}_addLayerGroup(e){e!=null&&e.layerGroupEvent&&!Object(this._layerGroupCache).hasOwnProperty(e.id)&&(e.layerGroupEvent.fire(ze.ADD,this),this._layerGroupCache[e.id]=e)}_removeLayerGroup(e){e!=null&&e.layerGroupEvent&&Object(this._layerGroupCache).hasOwnProperty(e.id)&&(e.layerGroupEvent.fire(ze.REMOVE,this),delete this._layerGroupCache[e.id])}_addLayer(e){!this._layerCache[e.type]&&(this._layerCache[e.type]={}),Object(this._layerCache[e.type]).hasOwnProperty(e.id)||(e.fire(Fe.ADD,this),this._layerCache[e.type][e.id]=e)}_removeLayer(e){Object(this._layerCache[e.type]).hasOwnProperty(e.id)&&(e.fire(Fe.REMOVE,this),delete this._layerCache[e.type][e.id])}setOptions(e){return this._viewerOption.setOptions(e),this}setPitchRange(e=-90,t=-20){return this._cameraOption.setPitchRange(e,t),this}changeSceneMode(e,t=0){return e===2?this._delegate.scene.morphTo2D(t):e===3?this._delegate.scene.morphTo3D(t):e===2.5&&this._delegate.scene.morphToColumbusView(t),this}changeMouseMode(e){return this._cameraOption.changeMouseMode(e),this}setTerrain(e){return this._delegate.scene.setTerrain(new i.Terrain(e||Promise.resolve(new i.EllipsoidTerrainProvider))),this}addBaseLayer(e,t={}){return e?(this._baseLayerPicker.addImageryLayer(e,t),this._baseLayerPicker.selectedImageryLayer||this._baseLayerPicker.changeImageryLayer(0),this.mapSwitch&&this.mapSwitch.addMap(t),this):this}changeBaseLayer(e){return this._baseLayerPicker.changeImageryLayer(e),this}getImageryLayerInfo(e){let t=this._delegate.camera.getPickRay(e);return this._delegate.imageryLayers.pickImageryLayerFeatures(t,this._delegate.scene)}addLayerGroup(e){return this._addLayerGroup(e),this}removeLayerGroup(e){return this._removeLayerGroup(e),this}getLayerGroup(e){return this._layerGroupCache[e]||void 0}addLayer(e){return this._addLayer(e),this}removeLayer(e){return this._removeLayer(e),this}hasLayer(e){return Object(this._layerCache[e.type]).hasOwnProperty(e.id)}getLayer(e){let t=this.getLayers().filter(r=>r.id===e);return t&&t.length?t[0]:void 0}getLayers(){let e=[];return Object.keys(this._layerCache).forEach(t=>{let r=this._layerCache[t];Object.keys(r).forEach(s=>{e.push(r[s])})}),e}eachLayer(e,t){return Object.keys(this._layerCache).forEach(r=>{let s=this._layerCache[r];Object.keys(s).forEach(a=>{e.call(t,s[a])})}),this}flyTo(e,t){return this._delegate.flyTo((e==null?void 0:e.delegate)||e,{duration:t}),this}zoomTo(e){return this._delegate.zoomTo((e==null?void 0:e.delegate)||e),this}flyToPosition(e,t,r){return e=y.parsePosition(e),this.camera.flyTo({destination:g.transformWGS84ToCartesian(e),orientation:{heading:i.Math.toRadians(e.heading),pitch:i.Math.toRadians(e.pitch),roll:i.Math.toRadians(e.roll)},complete:t,duration:r}),this}flyToPoint(e,t={}){return new Promise((r,s)=>{if(!e){r(!1);return}e=B.parse(e);let a=e.toCartesian();if(t.clampToGround)if(t.hasTerrain){be.getSurfaceHeight(this._delegate.scene,a,{has3dtiles:!0}).then(u=>{e.alt=u.height*(this._delegate.scene.globe.terrainExaggeration||1),delete t.clampToGround,this.flyToPoint(e,t).then(_=>{r(_)})});return}else e.alt=0,a=e.toCartesian();let o=t.radius||this.getCameraDistance()||100;i.defined(t.scale)&&t.scale>0&&(o*=t.scale),i.defined(t.minHeight)&&o<t.minHeight&&(o=t.minHeight),i.defined(t.maxHeight)&&o>t.maxHeight&&(o=t.maxHeight);let l;if(i.defined(t.pitch))l=i.Math.toRadians(t.pitch);else{l=this._delegate.camera.pitch;let u=i.Math.toDegrees(l);i.defined(t.minPitch)&&u<t.minPitch&&(l=i.Math.toRadians(t.minPitch)),i.defined(t.maxPitch)&&u>t.maxPitch&&(l=i.Math.toRadians(t.maxPitch))}let h=i.defined(t.heading)?i.Math.toRadians(t.heading):this._delegate.camera.heading,c=new i.HeadingPitchRange(h,l,o),d=new i.BoundingSphere(a,0);t.duration===0?(this._delegate.camera.lookAt(a,c),!t.lock&&!this._delegate.trackedEntity&&this._delegate.camera.lookAtTransform(i.Matrix4.IDENTITY),t.complete&&t.complete(),r(!0)):this._delegate.camera.flyToBoundingSphere(d,{...t,offset:c,complete:()=>{t.complete&&t.complete(),r(!0)},cancel:()=>{t.cancel&&t.cancel(),r(!1)}})})}getCenter(){try{let e=this.scene.canvas,t=new i.Cartesian2(e.clientWidth/2,e.clientHeight/2),r=scene.camera.getPickRay(t),s=scene.globe.pick(r,scene);return s||(s=scene.camera.pickEllipsoid(t)),s?B.fromCartesian(s):void 0}catch{return}}getHeight(e,t){var o;let r=this.scene,s=B.toCartographic(e),a;if(r.getHeight?a=r.getHeight(s,t&&t.heightReference):a=r.globe.getHeight(s),i.defined(a)&&a>((o=t&&t.min)!=null?o:-999))return a;if(t!=null&&t.original)return s.height}getCameraDistance(){let e=this.getCenter();return e?(e.alt<0&&(e.alt=0),i.Cartesian3.distance(e.toCartesian(),this._delegate.camera.positionWC)):0}zoomToPosition(e,t){return this.flyToPosition(e,t,0),this}flyToBounds(e,{heading:t=0,pitch:r=0,roll:s=0},a,o){return e?(Array.isArray(e)||(e=e.split(",")),this.camera.flyTo({destination:i.Rectangle.fromDegrees(e[0],e[1],e[2],e[3]),orientation:{heading:i.Math.toRadians(t),pitch:i.Math.toRadians(r),roll:i.Math.toRadians(s)},complete:a,duration:o}),this):this}zoomToBounds(e,{heading:t=0,pitch:r=0,roll:s=0},a){return this.flyToBounds(e,{heading:t,pitch:r,roll:s},a),this}on(e,t,r){return this._viewerEvent.on(e,t,r||this),this._sceneEvent.on(e,t,r||this),this}once(e,t,r){return this._viewerEvent.once(e,t,r||this),this}off(e,t,r){return this._viewerEvent.off(e,t,r||this),this._sceneEvent.off(e,t,r||this),this}destroy(){return Object.keys(this._layerCache).forEach(e=>{let t=this._layerCache[e];Object.keys(t).forEach(r=>{this._removeLayer(t[r])})}),this._delegate.destroy(),this._delegate=void 0,this._baseLayerPicker=void 0,this._layerCache={},this._widgetContainer.parentNode.removeChild(this._widgetContainer),this._widgetContainer=void 0,this._layerContainer.parentNode.removeChild(this._layerContainer),this._layerContainer=void 0,this}exportScene(e){this.scene.render();let r=this.canvas.toDataURL("image/png").replace("image/png","image/octet-stream"),s=document.createElement("a"),a=C.dataURLtoBlob(r),o=URL.createObjectURL(a);return s.download=`${e||"scene"}.png`,s.href=o,s.click(),this}getOffset(){var r;let e={x:0,y:0},t=(r=this._delegate)==null?void 0:r.container;if(t)if(t.getBoundingClientRect){let s=t.getBoundingClientRect();e.x=s.left,e.y=s.top}else e.x=t.offsetLeft,e.y=t.offsetTop;return e}},_f=cs;var Y=class Y{constructor(e=0,t=0,r=0){this._lng=+e||0,this._lat=+t||0,this._alt=+r||0}get lng(){return this._lng}set lng(e){this._lng=+e}get lat(){return this._lat}set lat(e){this._lat=+e}get alt(){return this._alt}set alt(e){this._alt=+e}clone(){let e=new Y;return e.lng=this.lng||0,e.lat=this.lat||0,e.alt=this.alt||0,e}format(){return this.lng=C.formatNum(this.lng,Y.FormatLength),this.lat=C.formatNum(this.lat,Y.FormatLength),this.alt=C.formatNum(this.alt,Y.FormatAltLength),this}toArray(e){return this.format(),e?[this.lng,this.lat]:[this.lng,this.lat,this.alt]}toString(){return this.format(),"".concat(this.lng,",").concat(this.lat,",").concat(this.alt)}toCartesian(e=!1){return!e&&this._position?this._position:i.Cartesian3.fromDegrees(this.lng,this.lat,this.alt)}toCartographic(){return i.Cartographic.fromDegrees(this.lng,this.lat,this.alt)}toMercator(){let e=Math.min(this.lng,180);e=Math.max(e,-180);let t=Math.min(this.lat,85.05112877980659);t=Math.max(t,-85.05112877980659);let r=e*2003750834e-2/180,s=Math.log(Math.tan((90+t)*Math.PI/360))/(Math.PI/180);return s=s*2003750834e-2/180,[r,s,this.alt]}equals(e){return this===e?!0:e instanceof Y?this._alt===e._alt&&this._lat===e._lat&&this._lng===e._lng:!1}valid(){return isNaN(this._lat)||isNaN(this._lng)||this._lat<-90||this._lat>90||this._lng<-180||this._lng>180?!1:!(this._lat===0&&this._lng===0&&this._alt===0)}static parse(e,t){if(!e)return new Y;if(e instanceof Y)return e;let r;if(typeof e=="string")r=Y.fromString(e);else if(Array.isArray(e))r=Y.fromArray(e);else if(e instanceof Y)r=e.clone();else if(i.defined(e.lat)&&i.defined(e.lng)){r=new Y(e.lng,e.lat,e.alt);for(let s in e)r[s]=e[s]}else e instanceof i.Cartesian3||e._value||e.getValue?(r=Y.fromCartesian(e,t),r._position=e):i.defined(e.x)&&i.defined(e.y)&&i.defined(e.z)?(e=new i.Cartesian3(e.x,e.y,e.z),r=Y.fromCartesian(e,t),r._position=e):(r=new Y,Ve("\u5750\u6807\u89E3\u6790\u5931\u8D25\uFF0C\u8BF7\u786E\u8BA4\u53C2\u6570\u662F\u5426\u65E0\u8BEF",e));return r}static fromArray(e){let t=new Y;return Array.isArray(e)&&(t.lng=e[0]||0,t.lat=e[1]||0,t.alt=e[2]||0),t}static fromString(e){let t=new Y;if(e&&typeof e=="string"){let r=e.split(",");t=this.fromArray(r)}return t}static fromCartesian(e,t){let r=new Y,s;if(e&&(e instanceof i.Cartesian3?s=e:e._value&&e._value instanceof i.Cartesian3?s=e._value:typeof e.getValue=="function"&&(s=e.getValue(t||i.JulianDate.now()))),s){let a=i.Cartographic.fromCartesian(s);a&&(r.lat=i.Math.toDegrees(a.latitude),r.lng=i.Math.toDegrees(a.longitude),r.alt=a.height,r.format())}return r._position=e,r}static fromCartographic(e){let t=new Y;return t.lat=i.Math.toDegrees(e.latitude),t.lng=i.Math.toDegrees(e.longitude),t.alt=e.height,t}static fromMercator(e){let t=Number(e[0]),r=Number(e[1]),s=t/2003750834e-2*180,a=r/2003750834e-2*180;return a=180/Math.PI*(2*Math.atan(Math.exp(a*Math.PI/180))-Math.PI/2),new Y(s,a,e[2]||0)}static toCartesian(e,t){return!e||e instanceof i.Cartesian3?e:Y.parse(e,t).toCartesian(!0)}static toCartographic(e,t){return!e||e instanceof i.Cartographic?e:Y.parse(e,t).toCartographic()}static toArray(e,t){let r=Y.parse(e);return!r||!r.valid()?[]:r.toArray(t)}};Ji(Y,"FormatLength",6),Ji(Y,"FormatAltLength",1);var ds=Y,B=ds;var ps=class{static toCartesians(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(s instanceof i.Cartesian3){t?r.push(s.clone()):r.push(s);return}let a=B.parse(s);!a||!a.valid()||r.push(a.toCartesian(!0))}),r}static toCartographics(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(s instanceof i.Cartographic){t?r.push(s.clone()):r.push(s);return}let a=B.parse(s);!a||!a.valid()||r.push(a.toCartographic())}),r}static toPoints(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(s instanceof B&&!t){r.push(s);return}let a=B.parse(s);!a||!a.valid()||r.push(a)}),r}static toArray(e,t){if(!e||!Array.isArray(e))return e;let r=[];return e.forEach(function(s){if(Array.isArray(s)){r.push(s);return}let a=B.parse(s);!a||!a.valid()||r.push(a.toArray(t))}),r}},Qe=ps;var ms=class{constructor(e){this.options=e,this.scene=e.map?e.map.scene:e.scene,this.scene||Ve("SurfacePoint: \u8BF7\u4F20\u5165scene\u53C2\u6570",this.options),this._point=B.parse(e.position),this._point&&(this._position=this._point.toCartesian(),this._cartographic=this._point.toCartographic(),this._height_original=this._point.alt)}async start(){var r;if(!this._point)return this.getResult();this.scene._terrainProviderPromise&&await this.scene._terrainProviderPromise;let e=(r=this.options.has3dtiles)!=null?r:i.defined(be.pick3DTileset(this.scene,this._position)),t=!(this.scene.terrainProvider instanceof i.EllipsoidTerrainProvider);if(this._has3dtiles=e,this._hasTerrain=t,!t&&!e)return this.getResult();if(e){let s=await this.scene.clampToHeightMostDetailed([this._position.clone()],this.options.objectsToExclude,this.options.width);if(s.length>0){let a=s[0];if(i.defined(a)){let o=i.Cartographic.fromCartesian(a),l=o?o.height:0;if(i.defined(l)&&l!==0&&l>-1e3)return this.getResult(l)}}else{let a=this.scene.sampleHeight(this._cartographic,this.options.objectsToExclude,this.options.width);if(i.defined(a)&&a>-1e3)return this.getResult(a)}}if(this._hasTerrain){let s;try{let a=this.scene.terrainProvider;a&&a.availability&&(s=await i.sampleTerrainMostDetailed(this.scene.terrainProvider,[this._cartographic]))}catch(a){At("SurfacePoint:\u8D34\u5730\u5F62\u9AD8\u5EA6\u8BA1\u7B97\u5931\u8D25",a)}if(s&&s.length>0){let a=s[0];if(i.defined(a)&&i.defined(a.height))return this.getResult(a.height)}else return this.getResult(this.scene.globe.getHeight(this._cartographic)||0)}return this.getResult()}getResult(e=0){return this.options.callback&&this.options.callback(e)&&(this._point.alt=e),{height:e,height_original:this._height_original,point:this._point,position:i.Cartesian3.fromRadians(this._cartographic.longitude,this._cartographic.latitude,e),position_original:this._position,has3dtiles:this._has3dtiles,hasTerrain:this._hasTerrain}}},St=ms;var us=class{constructor(e){this.options=e,this.scene=e.map?e.map.scene:e.scene,this.scene||Ve("SurfacePoints: \u8BF7\u4F20\u5165scene\u53C2\u6570",this.options),this.positions=Qe.toCartesians(this.options.positions)}async start(){var r;if(this.positions==null||this.positions.length===0){this.getResult();return}this.scene._terrainProviderPromise&&await this.scene._terrainProviderPromise();let e=(r=this.options.has3dtiles)!=null?r:i.defined(be.pick3DTileset(this.scene,this.positions)),t=!(this.scene.terrainProvider instanceof i.EllipsoidTerrainProvider);return this._has3dtiles=e,this._hasTerrain=t,!t&&!e?this.getResult():this.options.exact?this._startForExact():this._startForSketchy()}async _startForExact(){var e;if(this._has3dtiles){let t=[];for(let s=0;s<this.positions.length;++s)t.push(this.positions[s].clone());let r=await this.scene.clampToHeightMostDetailed(t,this.options.objectsToExclude);for(let s=0;s<r.length;++s)!r[s]&&(r[s]=this.positions[s]);if(r.length>0)return this.options.offset&&(r=be.addPositionsHeight(r,this.options.offset)),this.getResult(r)}if(this._hasTerrain&&this.scene.terrainProvider&&this.scene.terrainProvider.availability){let t=this.scene.globe.ellipsoid,r=t.cartesianArrayToCartographicArray(_0x1da275),s=i.Cartographic.fromCartesian(_0x1da275[0]).height,a=(e=this.options.offset)!=null?e:0,o=!1,l=await i.sampleTerrainMostDetailed(this.scene.terrainProvider,r);for(let c=0;c<l.length;++c)l[c]||(l[c]=this.positions[c]),l[c].height==null?(o=!0,l[c].height=a+s):l[c].height=a+l[c].height;let h=t.cartographicArrayToCartesianArray(l);return this.getResult(h,o)}return this.getResult()}async _startForSketchy(){let e=[];for(let t=0;t<this.positions.length;++t){let r=i.Cartographic.fromCartesian(this.positions[t]),s;if(this._has3dtiles){let a=this.scene.sampleHeight(r,this.options.objectsToExclude,this.options.width);i.defined(a)&&a>-1e3&&(s=a)}if(!i.defined(s)){let a=this.scene.globe.getHeight(r);i.defined(a)&&a>-1e3&&(s=a)}e.push(i.Cartesian3.fromRadians(r.longitude,r.latitude,s!=null?s:r.height))}return this.getResult(e)}getResult(e,t){return this.options.callback&&this.options.callback(e,t,this.positions),{positions:e||this.positions,positions_original:this.positions,noHeight:t,has3dtiles:this._has3dtiles,hasTerrain:this._hasTerrain}}},Tl=us;var gf={ARCGIS:"arcgis",BING:"bing",OSM:"osm",SINGLE_TILE:"single_tile",WMS:"wms",WMTS:"wmts",XYZ:"xyz",COORD:"coord",AMAP:"amap",BAIDU:"baidu",GOOGLE:"google",TDT:"tdt",TENCENT:"tencent",GEO_VIS:"geo_vis",GRID:"grid",MAPBOX:"mapbox",MAPBOX_STYLE:"mapbox_style",TMS:"tms"},U=gf;var fs=class extends i.WebMercatorTilingScheme{constructor(e){super(e);let t=new i.WebMercatorProjection;this._projection.project=function(r,s){return s=we.WGS84ToGCJ02(i.Math.toDegrees(r.longitude),i.Math.toDegrees(r.latitude)),s=t.project(new i.Cartographic(i.Math.toRadians(s[0]),i.Math.toRadians(s[1]))),new i.Cartesian2(s.x,s.y)},this._projection.unproject=function(r,s){let a=t.unproject(r);return s=we.GCJ02ToWGS84(i.Math.toDegrees(a.longitude),i.Math.toDegrees(a.latitude)),new i.Cartographic(i.Math.toRadians(s[0]),i.Math.toRadians(s[1]))}}},Dt=fs;var th={img:"//webst{s}.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}",elec:"//webrd{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}",cva:"//webst{s}.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}"},_s=class extends i.UrlTemplateImageryProvider{constructor(e={}){e.url=e.url||[e.protocol||"",th[e.style]||th.elec].join(""),e.subdomains=e.subdomains||["01","02","03","04"],e.crs==="WGS84"&&(e.tilingScheme=new Dt),super(e)}};U.AMAP="amap";var ih=_s;var yf=637099681e-2,rh=[1289059486e-2,836237787e-2,5591021,348198983e-2,167804312e-2,0],Lt=[75,60,45,30,15,0],vf=[[1410526172116255e-23,898305509648872e-20,-1.9939833816331,200.9824383106796,-187.2403703815547,91.6087516669843,-23.38765649603339,2.57121317296198,-.03801003308653,173379812e-1],[-7435856389565537e-24,8983055097726239e-21,-.78625201886289,96.32687599759846,-1.85204757529826,-59.36935905485877,47.40033549296737,-16.50741931063887,2.28786674699375,1026014486e-2],[-3030883460898826e-23,898305509983578e-20,.30071316287616,59.74293618442277,7.357984074871,-25.38371002664745,13.45380521110908,-3.29883767235584,.32710905363475,685681737e-2],[-1981981304930552e-23,8983055099779535e-21,.03278182852591,40.31678527705744,.65659298677277,-4.44255534477492,.85341911805263,.12923347998204,-.04625736007561,448277706e-2],[309191371068437e-23,8983055096812155e-21,6995724062e-14,23.10934304144901,-.00023663490511,-.6321817810242,-.00663494467273,.03430082397953,-.00466043876332,25551644e-1],[2890871144776878e-24,8983055095805407e-21,-3068298e-14,7.47137025468032,-353937994e-14,-.02145144861037,-1234426596e-14,.00010322952773,-323890364e-14,826088.5]],sh=[[-.0015702102444,111320.7020616939,0x60e374c3105a3,-0x24bb4115e2e164,0x5cc55543bb0ae8,-0x7ce070193f3784,0x5e7ca61ddf8150,-0x261a578d8b24d0,0x665d60f3742ca,82.5],[.0008277824516172526,111320.7020463578,6477955746671607e-7,-4082003173641316e-6,1077490566351142e-5,-1517187553151559e-5,1205306533862167e-5,-5124939663577472e-6,9133119359512032e-7,67.5],[.00337398766765,111320.7020202162,4481351045890365e-9,-2339375119931662e-8,7968221547186455e-8,-1159649932797253e-7,9723671115602145e-8,-4366194633752821e-8,8477230501135234e-9,52.5],[.00220636496208,111320.7020209128,51751.86112841131,3796837749470245e-9,992013.7397791013,-122195221711287e-8,1340652697009075e-9,-620943.6990984312,144416.9293806241,37.5],[-.0003441963504368392,111320.7020576856,278.2353980772752,2485758690035394e-9,6070.750963243378,54821.18345352118,9540.606633304236,-2710.55326746645,1405.483844121726,22.5],[-.0003218135878613132,111320.7020701615,.00369383431289,823725.6402795718,.46104986909093,2351.343141331292,1.58060784298199,8.77738589078284,.37238884252424,7.45]],gs=class{constructor(){this.isWgs84=!1}getDistanceByMC(e,t){if(!e||!t||(e=this.convertMC2LL(e),!e))return 0;let r=this.toRadians(e.lng),s=this.toRadians(e.lat);if(t=this.convertMC2LL(t),!t)return 0;let a=this.toRadians(t.lng),o=this.toRadians(t.lat);return this.getDistance(r,a,s,o)}getDistanceByLL(e,t){if(!e||!t)return 0;e.lng=this.getLoop(e.lng,-180,180),e.lat=this.getRange(e.lat,-74,74),t.lng=this.getLoop(t.lng,-180,180),t.lat=this.getRange(t.lat,-74,74);let r=this.toRadians(e.lng),s=this.toRadians(e.lat),a=this.toRadians(t.lng),o=this.toRadians(t.lat);return this.getDistance(r,a,s,o)}convertMC2LL(e){if(!e)return{lng:0,lat:0};let t={};if(this.isWgs84){t.lng=e.lng/2003750834e-2*180;let a=e.lat/2003750834e-2*180;return t.lat=180/Math.PI*(2*Math.atan(Math.exp(a*Math.PI/180))-Math.PI/2),{lng:t.lng.toFixed(6),lat:t.lat.toFixed(6)}}let r={lng:Math.abs(e.lng),lat:Math.abs(e.lat)},s;for(let a=0;a<rh.length;a++)if(r.lat>=rh[a]){s=vf[a];break}return t=this.convertor(e,s),{lng:t.lng.toFixed(6),lat:t.lat.toFixed(6)}}convertLL2MC(e){if(!e)return{lng:0,lat:0};if(e.lng>180||e.lng<-180||e.lat>90||e.lat<-90)return e;if(this.isWgs84){let a={},o=6378137;a.lng=e.lng*Math.PI/180*o;let l=e.lat*Math.PI/180;return a.lat=o/2*Math.log((1+Math.sin(l))/(1-Math.sin(l))),{lng:parseFloat(a.lng.toFixed(2)),lat:parseFloat(a.lat.toFixed(2))}}e.lng=this.getLoop(e.lng,-180,180),e.lat=this.getRange(e.lat,-74,74);let t={lng:e.lng,lat:e.lat},r;for(let a=0;a<Lt.length;a++)if(t.lat>=Lt[a]){r=sh[a];break}if(!r){for(let a=0;a<Lt.length;a++)if(t.lat<=-Lt[a]){r=sh[a];break}}let s=this.convertor(e,r);return{lng:parseFloat(s.lng.toFixed(2)),lat:parseFloat(s.lat.toFixed(2))}}convertor(e,t){if(!e||!t)return{lng:0,lat:0};let r=t[0]+t[1]*Math.abs(e.lng),s=Math.abs(e.lat)/t[9],a=t[2]+t[3]*s+t[4]*s*s+t[5]*s*s*s+t[6]*s*s*s*s+t[7]*s*s*s*s*s+t[8]*s*s*s*s*s*s;return r*=e.lng<0?-1:1,a*=e.lat<0?-1:1,{lng:r,lat:a}}getDistance(e,t,r,s){return yf*Math.acos(Math.sin(r)*Math.sin(s)+Math.cos(r)*Math.cos(s)*Math.cos(t-e))}toRadians(e){return Math.PI*e/180}toDegrees(e){return 180*e/Math.PI}getRange(e,t,r){return t!=null&&(e=Math.max(e,t)),r!=null&&(e=Math.min(e,r)),e}getLoop(e,t,r){for(;e>r;)e-=r-t;for(;e<t;)e+=r-t;return e}lngLatToMercator(e){return this.convertLL2MC(e)}lngLatToPoint(e){let t=this.convertLL2MC(e);return{x:t.lng,y:t.lat}}mercatorToLngLat(e){return this.convertMC2LL(e)}pointToLngLat(e){let t={lng:e.x,lat:e.y};return this.convertMC2LL(t)}pointToPixel(e,t,r,s){if(!e)return{x:0,y:0};e=this.lngLatToMercator(e);let a=this.getZoomUnits(t),o=Math.round((e.lng-r.lng)/a+s.width/2),l=Math.round((r.lat-e.lat)/a+s.height/2);return{x:o,y:l}}pixelToPoint(e,t,r,s){if(!e)return{lng:0,lat:0};let a=this.getZoomUnits(t),o=r.lng+a*(e.x-s.width/2),l=r.lat-a*(e.y-s.height/2),h={lng:o,lat:l};return this.mercatorToLngLat(h)}getZoomUnits(e){return Math.pow(2,18-e)}},ah=gs;var ys=class extends i.WebMercatorTilingScheme{constructor(e){super(e);let t=new ah;this._projection.project=function(r,s){return s=s||{},s=we.WGS84ToGCJ02(i.Math.toDegrees(r.longitude),i.Math.toDegrees(r.latitude)),s=we.GCJ02ToBD09(s[0],s[1]),s[0]=Math.min(s[0],180),s[0]=Math.max(s[0],-180),s[1]=Math.min(s[1],74.000022),s[1]=Math.max(s[1],-71.988531),s=t.lngLatToPoint({lng:s[0],lat:s[1]}),new i.Cartesian2(s.x,s.y)},this._projection.unproject=function(r,s){return s=s||{},s=t.mercatorToLngLat({lng:r.x,lat:r.y}),s=we.BD09ToGCJ02(s.lng,s.lat),s=we.GCJ02ToWGS84(s[0],s[1]),new i.Cartographic(i.Math.toRadians(s[0]),i.Math.toRadians(s[1]))},this.resolutions=e.resolutions||[]}tileXYToNativeRectangle(e,t,r,s){let a=this.resolutions[r],o=e*a,l=(e+1)*a,h=((t=-t)+1)*a,c=t*a;return i.defined(s)?(s.west=o,s.south=c,s.east=l,s.north=h,s):new i.Rectangle(o,c,l,h)}positionToTileXY(e,t,r){let s=this._rectangle;if(!i.Rectangle.contains(s,e))return;let o=this._projection.project(e);if(!i.defined(o))return;let l=this.resolutions[t],h=Math.floor(o.x/l),c=-Math.floor(o.y/l);return i.defined(r)?(r.x=h,r.y=c,r):new i.Cartesian2(h,c)}},oh=ys;var nh={img:"//shangetu{s}.map.bdimg.com/it/u=x={x};y={y};z={z};v=009;type=sate&fm=46",vec:"//online{s}.map.bdimg.com/tile/?qt=tile&x={x}&y={y}&z={z}&styles=sl&v=020",custom:"//api{s}.map.bdimg.com/customimage/tile?&x={x}&y={y}&z={z}&scale=1&customid={style}",traffic:"//its.map.baidu.com:8002/traffic/TrafficTileService?time={time}&label={labelStyle}&v=016&level={z}&x={x}&y={y}&scaler=2"},vs=class extends i.UrlTemplateImageryProvider{constructor(e={}){if(e.url=e.url||[e.protocol||"",nh[e.style]||nh.custom].join(""),e.crs==="WGS84"){let t=[];for(let r=0;r<19;r++)t[r]=256*Math.pow(2,18-r);e.tilingScheme=new oh({resolutions:t,rectangleSouthwestInMeters:new i.Cartesian2(-2003772637e-2,-1247410417e-2),rectangleNortheastInMeters:new i.Cartesian2(2003772637e-2,1247410417e-2)})}else e.tilingScheme=new i.WebMercatorTilingScheme({rectangleSouthwestInMeters:new i.Cartesian2(-33554054,-33746824),rectangleNortheastInMeters:new i.Cartesian2(33554054,33746824)});e.maximumLevel=18,super(e),this._rectangle=this._tilingScheme.rectangle,this._url=e.url,this._crs=e.crs||"BD09",this._style=e.style||"normal"}requestImage(e,t,r){let s=this._tilingScheme.getNumberOfXTilesAtLevel(r),a=this._tilingScheme.getNumberOfYTilesAtLevel(r),o=this._url.replace("{z}",r).replace("{s}",String(1)).replace("{style}",this._style);return this._crs==="WGS84"?o=o.replace("{x}",String(e)).replace("{y}",String(-t)):o=o.replace("{x}",String(e-s/2)).replace("{y}",String(a/2-t-1)),i.ImageryProvider.loadImage(this,o)}};U.BAIDU="baidu";var lh=vs;var wf="//tiles{s}.geovisearth.com/base/v1/{style}/{z}/{x}/{y}?format={format}&tmsIds=w&token={key}",ws=class extends i.UrlTemplateImageryProvider{constructor(e={}){e.url=e.url||[e.protocol||"",wf.replace(/\{style\}/g,e.style||"vec").replace(/\{format\}/g,e.format||"png").replace(/\{key\}/g,e.key||"")].join(""),e.subdomains=e.subdomains||["1","2","3"],super(e)}};U.GEO_VIS="geoVis";var hh=ws;var ch={img:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=s&x={x}&y={y}&z={z}",elec:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=m&x={x}&y={y}&z={z}",cva:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=h&x={x}&y={y}&z={z}",ter:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=t@131,r&x={x}&y={y}&z={z}",img_cva:"https://gac-geo.googlecnapps.cn/maps/vt?lyrs=y&x={x}&y={y}&z={z}"},xs=class extends i.UrlTemplateImageryProvider{constructor(e={}){e.url=e.url||[e.protocol||"",ch[e.style]||ch.elec].join(""),e.crs==="WGS84"&&(e.tilingScheme=new Dt),super(e)}};U.GOOGLE="google";var dh=xs;var xf="//t{s}.tianditu.gov.cn/DataServer?T={style}_w&x={x}&y={y}&l={z}&tk={key}",Cs=class extends i.UrlTemplateImageryProvider{constructor(e={}){super({url:[e.protocol||"",xf.replace(/\{style\}/g,e.style||"vec").replace(/\{key\}/g,e.key||"")].join(""),subdomains:["0","1","2","3","4","5","6","7"],maximumLevel:18})}};U.TDT="tdt";var ph=Cs;var mh={img:"//p{s}.map.gtimg.com/sateTiles/{z}/{sx}/{sy}/{x}_{reverseY}.jpg?version=400",elec:"//rt{s}.map.gtimg.com/tile?z={z}&x={x}&y={reverseY}&styleid={style}&scene=0&version=347"},Ts=class extends i.UrlTemplateImageryProvider{constructor(e={}){let t=e.url||[e.protocol||"",mh[e.style]||mh.elec].join("");e.url=t.replace("{style}",e.style||1),e.subdomains=e.subdomains||["1","2","3"],e.style==="img"&&(e.customTags={sx:(r,s,a,o)=>s>>4,sy:(r,s,a,o)=>(1<<o)-a>>4}),super(e)}};U.TENCENT="tencent";var uh=Ts;var Es=class{static createAMapImageryLayer(e){return Promise.resolve(new ih(e))}static createBaiduImageryLayer(e){return Promise.resolve(new lh(e))}static createGeoVisImageryLayer(e){return Promise.resolve(new hh(e))}static createGoogleImageryLayer(e){return Promise.resolve(new dh(e))}static createTdtImageryLayer(e){return Promise.resolve(new ph(e))}static createTencentImageryLayer(e){return Promise.resolve(new uh(e))}static createArcGisImageryLayer(e){return i.ArcGisMapServerImageryProvider.fromUrl(e.url,e)}static createBingImageryLayer(e){return i.BingMapsImageryProvider.fromUrl(e.url,e)}static createOSMImageryLayer(e){return Promise.resolve(new i.OpenStreetMapImageryProvider(e))}static createSingleTileImageryLayer(e){return i.SingleTileImageryProvider.fromUrl(e.url,e)}static createWMSImageryLayer(e){return Promise.resolve(new i.WebMapServiceImageryProvider(e))}static createWMTSImageryLayer(e){return Promise.resolve(new i.WebMapTileServiceImageryProvider(e))}static createXYZImageryLayer(e){return Promise.resolve(new i.UrlTemplateImageryProvider(e))}static createCoordImageryLayer(e){return Promise.resolve(new i.TileCoordinatesImageryProvider(e))}static createGridImageryLayer(e){return Promise.resolve(new i.GridImageryProvider(e))}static createMapboxImageryLayer(e){return Promise.resolve(new i.MapboxImageryProvider(e))}static createMapboxStyleImageryLayer(e){return Promise.resolve(new i.MapboxStyleImageryProvider(e))}static createTMSImageryLayer(e){return i.TileMapServiceImageryProvider.fromUrl(e.url,e)}static createImageryLayer(e,t){let r;switch(e){case U.AMAP:r=this.createAMapImageryLayer(t);break;case U.BAIDU:r=this.createBaiduImageryLayer(t);break;case U.GEO_VIS:r=this.createGeoVisImageryLayer(t);break;case U.GOOGLE:r=this.createGoogleImageryLayer(t);break;case U.TDT:r=this.createTdtImageryLayer(t);break;case U.TENCENT:r=this.createTencentImageryLayer(t);break;case U.ARCGIS:r=this.createArcGisImageryLayer(t);break;case U.BING:r=this.createBingImageryLayer(t);break;case U.OSM:r=this.createOSMImageryLayer(t);break;case U.SINGLE_TILE:r=this.createSingleTileImageryLayer(t);break;case U.WMS:r=this.createWMSImageryLayer(t);break;case U.WMTS:r=this.createWMTSImageryLayer(t);break;case U.XYZ:r=this.createXYZImageryLayer(t);break;case U.COORD:r=this.createCoordImageryLayer(t);break;case U.GRID:r=this.createGridImageryLayer(t);break;case U.MAPBOX:r=this.createMapboxImageryLayer(t);break;case U.MAPBOX_STYLE:r=this.createMapboxStyleImageryLayer(t);break;case U.TMS:r=this.createTMSImageryLayer(t);break;default:break}return r}},fh=Es;var Ps=class extends i.GeographicTilingScheme{constructor(e={}){super(e),this._origin=e.origin||[-180,90],this._zoomOffset=e.zoomOffset||0,this._tileSize=e.tileSize||256,this._resolutions=e.resolutions||[]}get zoomOffset(){return this._zoomOffset}tileXYToRectangle(e,t,r,s){if(!this._resolutions||!this._resolutions[r+this._zoomOffset])return i.Rectangle.MAX_VALUE;let a=this._resolutions[r+this._zoomOffset]*this._tileSize,o=i.Math.toRadians(this._origin[0]+e*a),l=i.Math.toRadians(this._origin[1]-(t+1)*a),h=i.Math.toRadians(this._origin[0]+(e+1)*a),c=i.Math.toRadians(this._origin[1]-t*a);return s?(s.west=o,s.south=l,s.east=h,s.north=c,s):new i.Rectangle(o,l,h,c)}positionToTileXY(e,t,r){if(!this._resolutions||!this._resolutions[t+this._zoomOffset])return new i.Cartesian2;let s=this._resolutions[t+this._zoomOffset]*this._tileSize,a=i.Math.toDegrees(e.longitude),o=i.Math.toDegrees(e.latitude),l=Math.floor((a-this._origin[0])/s),h=Math.floor((this._origin[1]-o)/s);return r?(r.x=l,r.y=h,r):new i.Cartesian2(Math.max(0,l),Math.max(0,h))}},_h=Ps;var Ms=class extends i.WebMercatorTilingScheme{constructor(e={}){super(e),this._origin=e.origin||[-200375083427892e-7,200375083427892e-7],this._zoomOffset=e.zoomOffset||0,this._tileSize=e.tileSize||256,this._resolutions=e.resolutions||[]}get zoomOffset(){return this._zoomOffset}tileXYToNativeRectangle(e,t,r,s){if(!this._resolutions||!this._resolutions[r+this._zoomOffset])return i.Rectangle.MAX_VALUE;if(e<0||t<0)return i.Rectangle.MAX_VALUE;let a=this._resolutions[r+this._zoomOffset]*this._tileSize,o=this._origin[0]+e*a,l=this._origin[1]-(t+1)*a,h=this._origin[0]+(e+1)*a,c=this._origin[1]-t*a;return s?(s.west=o,s.south=l,s.east=h,s.north=c,s):new i.Rectangle(o,l,h,c)}positionToTileXY(e,t,r){let s=this._rectangle;if(!i.Rectangle.contains(s,e))return;if(!this._resolutions||!this._resolutions[t+this._zoomOffset])return new i.Cartesian2;let a=this._resolutions[t+this._zoomOffset]*this._tileSize,l=this._projection.project(e),h=Math.floor((l.x-this._origin[0])/a),c=Math.floor((this._origin[1]-l.y)/a);return r?(r.x=h,r.y=c,r):new i.Cartesian2(Math.max(0,h),Math.max(0,c))}},gh=Ms;var Cf={NONE:"none",XYZ:"xyz",ARCGIS:"arcgis",GOOGLE:"google",VR:"vr",GEO:"geo",TDT:"tdt"},ue=Cf;var xc=Su(wc(),1);function Ht(n,e,t,r,s,a){let o=n.tileXYToRectangle(t,r,s);return i.defined(i.Rectangle.intersection(o,e,a))}function o_(n){let e=[[[0,0,1,0]]],t=e.length,r=new i.TileAvailability(n.tilingScheme,19);for(let s=0;s<t;++s){let a=e[s];for(let o=0;o<a.length;++o){let l=a[o];r.addAvailableTileRange(s,l[0],l[1],l[2],l[3])}}return r}function n_(n,e,t,r,s){let a=new i.HeightmapTerrainData({buffer:n._transformBuffer(e),width:n._width,height:n._height,childTileMask:n._getChildTileMask(r,s,t),structure:n._terrainDataStructure});return a._skirtHeight=6e3,n.availability.addAvailableTileRange(t,r,s,r,s),a}var Ws=class extends i.CustomHeightmapTerrainProvider{constructor(e){if(e=i.defaultValue(e,{}),super({...e,ellipsoid:i.Ellipsoid.WGS84,width:64,height:64}),!i.defined(e.url))throw new i.DeveloperError("options.url is required.");this._dataType=i.defaultValue(e.dataType,"int16"),this._url=e.url,this._subdomains=e.subdomains,this._token=e.token,this._rectangles=[],this._topLevel=5,this._bottomLevel=11,this._terrainDataStructure={heightScale:.001,heightOffset:-1e3,elementsPerHeight:3,stride:4,elementMultiplier:256,isBigEndian:!0},this._availability=o_(this)}get availability(){return this._availability}requestTileGeometry(e,t,r,s){if(r>=this._bottomLevel)return Promise.reject(`${r}\u8BE5\u7EA7\u522B\u4E0D\u53D1\u9001\u8BF7\u6C42!`);if(r<this._topLevel)return Promise.resolve(new i.HeightmapTerrainData({buffer:this._getVHeightBuffer(),width:this._width,height:this._height,childTileMask:this._getChildTileMask(e,t,r),structure:this._terrainDataStructure}));let a="",o=this._url;Array.isArray(this._subdomains)&&this._subdomains.length&&(a=this._subdomains[(e+t)%this._subdomains.length],o=o.replace("{s}",a)),o=o.replace("{token}",this._token).replace("{x}",e).replace("{y}",t).replace("{z}",r+1);let l=i.Resource.fetchArrayBuffer({url:o,request:s});if(l)return l.then(h=>h.byteLength<1e3?Promise.reject("\u65E0\u6548\u6570\u636E"):(0,xc.inflate)(h)).then(h=>n_(this,h,r,e,t))}getTileDataAvailable(e,t,r){if(r<this._bottomLevel)return!0}_transformBuffer(e){let t=2;this._dataType==="int16"?t=2:this._dataType==="float"&&(t=4);let r=e;if(r.length!==22500*t)return null;let s,a,o,l,h=new ArrayBuffer(t),c=new DataView(h),d=this._width,u=this._height,_=new Uint8Array(d*u*4);for(let m=0;m<u;m++)for(let p=0;p<d;p++){o=parseInt(149*m/(u-1)),l=parseInt(149*p/(d-1)),a=t*(150*o+l),t===4?(c.setInt8(0,r[a]),c.setInt8(1,r[a+1]),c.setInt8(2,r[a+2]),c.setInt8(3,r[a+3]),s=c.getFloat32(0,!0)):s=r[a]+256*r[a+1],(1e4<s||s<-2e3)&&(s=0);let T=(s+1e3)/.001,v=4*(m*d+p);_[v]=T/65536,_[1+v]=(T-256*_[v]*256)/256,_[2+v]=T-256*_[v]*256-256*_[1+v],_[3+v]=255}return _}_getVHeightBuffer(){let e=this._vHeightBuffer;if(!i.defined(e)){e=new Uint8ClampedArray(this._width*this._height*4);for(let t=0;t<this._width*this._height*4;)e[t++]=15,e[t++]=66,e[t++]=64,e[t++]=255;this._vHeightBuffer=e}return e}_getChildTileMask(e,t,r){let s=new i.Rectangle,a=this._tilingScheme,o=this._rectangles,l=a.tileXYToRectangle(e,t,r),h=0;for(let c=0;c<o.length&&h!==15;++c){let d=o[c];if(!(d.maxLevel<=r)){let u=d.rectangle,_=i.Rectangle.intersection(u,l,s);i.defined(_)&&(Ht(a,u,2*e,2*t,r+1,s)&&(h|=4),Ht(a,u,2*e+1,2*t,r+1,s)&&(h|=8),Ht(a,u,2*e,2*t+1,r+1,s)&&(h|=1),Ht(a,u,2*e+1,2*t+1,r+1,s)&&(h|=2))}}return h}},et=Ws;var Bs=class extends et{constructor(e={}){if(!e.urls){let t=e.url||"https://t{s}.tianditu.gov.cn/mapservice/swdx",r=e.key||"";console.log("===========================baseurl================="),console.log(t),console.log("===========================baseurl=================");let s;Array.isArray(e.subdomains)?s=e.subdomains.slice():i.defined(e.subdomains)&&e.subdomains.length>0?s=e.subdomains.split(""):s=["0","1","2","3","4","5","6","7"],e.subdomains=s,e.url=t+"?T=elv_c&tk="+r,console.log("===========================baseurl================="),console.log(t),console.log("===========================baseurl=================")}super(e),this._layers=[]}};ue.TDT="tdt";var Wt=Bs;var Us=class{static createEllipsoidTerrain(e){return Promise.resolve(new i.EllipsoidTerrainProvider(e))}static createUrlTerrain(e){return i.CesiumTerrainProvider.fromUrl(e.url,e)}static createGoogleTerrain(e){return i.GoogleEarthEnterpriseTerrainProvider.fromUrl(e.url,e)}static createArcgisTerrain(e){return i.ArcGISTiledElevationTerrainProvider.fromUrl(e.url,e)}static createVRTerrain(e){return i.VRTheWorldTerrainProvider.fromUrl(e.url,e)}static createGeoTerrain(e){return Promise.resolve(new et(e))}static createTdtTerrain(e){return Promise.resolve(new Wt(e))}static createTerrain(e,t){let r;switch(e){case ue.NONE:r=this.createEllipsoidTerrain(t);break;case ue.XYZ:r=this.createUrlTerrain(t);break;case ue.GOOGLE:r=this.createGoogleTerrain(t);break;case ue.ARCGIS:r=this.createArcgisTerrain(t);break;case ue.VR:r=this.createVRTerrain(t);break;case ue.GEO:r=this.createGeoTerrain(t);break;case ue.TDT:r=this.createTdtTerrain(t);break;default:break}return r}},Cc=Us;var l_={enable:!1},Vs=class{constructor(e={}){var t;this._viewer=viewer,this._options={...l_,...e},this._id=(t=e.id)!=null?t:i.createGuid(),this._enabled=!1,this._state=f.INITIALIZED}get enabled(){return this._enabled}set enabled(e){this._enabled!==e&&(this._enabled=e,this._state=this._enabled?f.ENABLED:f.DISABLED,this._enabledHook&&this._enabledHook())}_enabledHook(){}_mountedHook(){}_addedHook(){}_removedHook(){}},Bt=Vs;var Zs=class extends Bt{constructor(e,t={}){var r,s;super(t),this._viewer=e,this._color=(r=t.color)!=null?r:i.Color.BLACK,this._alpha=(s=t.alpha)!=null?s:.5,this._colorAlphaByDistance=new i.NearFarScalar(400,.5,8e3,.9),this._depthTestOld=this._viewer.scene.globe.depthTestAgainstTerrain}get translucency(){return this._viewer.scene.globe.translucency}set alpha(e){!this._viewer||this._alpha===e||(this._alpha=e,this.translucency.frontFaceAlpha=this._alpha)}get alpha(){return this._alpha}get color(){return this._viewer.scene.globe.undergroundColor}set color(e){this._viewer.scene.globe.undergroundColor=e}get colorAlphaByDistance(){return this._colorAlphaByDistance}set colorAlphaByDistance(e){this._colorAlphaByDistance=e,this._viewer.scene.globe.undergroundColorAlphaByDistance=e}_enabledHook(){this._viewer.scene.globe.undergroundColor=this._color,this._viewer.scene.depthTestAgainstTerrain=this._enabled?!0:this._depthTestOld,this._viewer.scene.screenSpaceCameraController.enableCollisionDetection=!this._enabled,this.translucency.enabled=this._enabled,this.translucency.frontFaceAlphaByDistance=new i.NearFarScalar(300,.4,2e3,.5)}},Tc=Zs;var h_={},wt=h_;var js=class{constructor(e){this._id=C.uuid(),this._bid=e||C.uuid(),this._delegate=void 0,this._viewer=void 0,this._state=void 0,this._show=!0,this._isGround=!1,this._cache={},this._attr={},this._layerEvent=new fr,this._layerEvent.on(Fe.ADD,this._onAdd,this),this._layerEvent.on(Fe.REMOVE,this._onRemove,this)}get layerId(){return this._id}get id(){return this._bid}get delegate(){return this._delegate}set show(e){this._show=e,this._delegate&&(this._delegate.show=this._show)}get show(){return this._show}get layerEvent(){return this._layerEvent}set attr(e){this._attr=e}get attr(){return this._attr}get state(){return this._state}_addedHook(){}_removedHook(){}_onAdd(e){this._viewer=e,this._delegate&&(this._delegate instanceof i.PrimitiveCollection?this._isGround?this._viewer.scene.groundPrimitives.add(this._delegate):this._viewer.scene.primitives.add(this._delegate):this._delegate instanceof i.ImageryLayer?this._viewer.imageryLayers.add(this._delegate):this._viewer.dataSources.add(this._delegate),this._addedHook&&this._addedHook(),this._state=f.ADDED)}_onRemove(){this._delegate&&this._viewer&&(this._cache={},this._delegate instanceof i.PrimitiveCollection?(this._delegate.removeAll(),this._isGround?this._viewer.scene.groundPrimitives.remove(this._delegate):this._viewer.scene.primitives.remove(this._delegate)):this._delegate instanceof i.ImageryLayer?this._viewer.imageryLayers.remove(this._delegate,!1):this._delegate instanceof Promise?(this._delegate.then(e=>{e.entities.removeAll()}),this._viewer.dataSources.remove(this._delegate)):(this._delegate.entities&&this._delegate.entities.removeAll(),this._viewer.dataSources.remove(this._delegate)),this._removedHook&&this._removedHook(),this._state=f.REMOVED)}_addOverlay(e){this._cache.hasOwnProperty(e.overlayId)||(this._cache[e.overlayId]=e,this._delegate&&e.fire(Ne.ADD,this),this._state===f.CLEARED&&(this._state=f.ADDED))}_removeOverlay(e){this._cache.hasOwnProperty(e.overlayId)&&(this._delegate&&e.fire(Ne.REMOVE,this),delete this._cache[e.overlayId])}addOverlay(e){return this._addOverlay(e),this}addOverlays(e){return Array.isArray(e)&&e.forEach(t=>{this._addOverlay(t)}),this}removeOverlay(e){return this._removeOverlay(e),this}getOverlay(e){return this._cache[e]||void 0}getOverlayById(e){let t;return Object.keys(this._cache).forEach(r=>{this._cache[r].id===e&&(t=this._cache[r])}),t}getOverlaysByAttr(e,t){let r=[];return this.eachOverlay(s=>{s.attr[e]===t&&r.push(s)},this),r}eachOverlay(e,t){return Object.keys(this._cache).forEach(r=>{e&&e.call(t||this,this._cache[r])}),this}getOverlays(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}clear(){}remove(){this._viewer&&this._viewer.removeLayer(this)}addTo(e){return e!=null&&e.addLayer&&e.addLayer(this),this}setStyle(e){}on(e,t,r){return this._layerEvent.on(e,t,r||this),this}off(e,t,r){return this._layerEvent.off(e,t,r||this),this}fire(e,t){return this._layerEvent.fire(e,t),this}static registerType(e){e&&(wt[e.toLocaleUpperCase()]=e.toLocaleLowerCase())}static getLayerType(e){return wt[e.toLocaleUpperCase()]||void 0}},S=js;var Ys=class{constructor(e){this._id=e||C.uuid(),this._cache={},this._show=!0,this._viewer=void 0,this._layerGroupEvent=new mr,this._layerGroupEvent.on(ze.ADD,this._onAdd,this),this._layerGroupEvent.on(ze.REMOVE,this._onRemove,this),this._state=f.INITIALIZED}get id(){return this._id}get type(){return S.getLayerType("layer_group")}get show(){return this._show}set show(e){this._show=e,Object.keys(this._cache).forEach(t=>{this._cache[t].show=this._show})}get layerGroupEvent(){return this._layerGroupEvent}get state(){return this._state}_onAdd(e){this._viewer=e,Object.keys(this._cache).forEach(t=>{this._viewer.addLayer(this._cache[t])}),this._state=f.ADDED}_onRemove(){Object.keys(this._cache).forEach(e=>{this._viewer&&this._viewer.removeLayer(this._cache[e])}),this._cache={},this._state=f.REMOVED}addLayer(e){return Object(this._cache).hasOwnProperty(e.id)||(this._cache[e.id]=e,this._viewer&&this._viewer.addLayer(e)),this}removeLayer(e){return Object(this._cache).hasOwnProperty(e.id)&&(this._viewer&&this._viewer.removeLayer(e),delete this._cache[e.id]),this}getLayer(e){return this._cache[e]||void 0}getLayers(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}addTo(e){return e&&e.addLayerGroup&&e.addLayerGroup(this),this}remove(){return this._viewer&&this._viewer.removeLayerGroup(this),this}};S.registerType("layer_group");var Ec=Ys;var c_={radius:60,maxZoom:25,style:"circle",image:"",gradientColors:{1e-4:i.Color.DEEPSKYBLUE,.001:i.Color.GREEN,.01:i.Color.ORANGE,.1:i.Color.RED},gradientImages:{},showCount:!0,fontSize:12,clusterSize:16,fontColor:i.Color.BLACK,getCountOffset:n=>({x:-3.542857*String(n).length+1.066667,y:String(n).length>3?5:4})},qs=class extends S{constructor(e,t={}){super(e),this._delegate=new i.PrimitiveCollection,this._options={...c_,...t},this._billboards=this._delegate.add(new i.BillboardCollection),this._labels=this._delegate.add(new i.LabelCollection),this._cluster=new Xe({radius:this._options.radius,maxZoom:this._options.maxZoom}),this._allCount=0,this._changedRemoveCallback=void 0,this._lastChangedTime=null,this._state=f.INITIALIZED}get type(){return S.getLayerType("cluster")}_addOverlay(e){}_removeOverlay(e){}_getCircleImage(e,t){let r=this._options.clusterSize*(String(t).length+1),s=e.toCssColorString()+"-"+t;if(!this._cache[s]){let a=document.createElement("canvas");a.width=r,a.height=r;let o=a.getContext("2d");o.save(),o.scale(r/24,r/24),o.fillStyle=e.withAlpha(.2).toCssColorString(),o.beginPath(),o.arc(12,12,9,0,2*Math.PI),o.closePath(),o.fill(),o.beginPath(),o.arc(12,12,6,0,2*Math.PI),o.fillStyle=e.toCssColorString(),o.closePath(),o.fill(),o.restore(),this._cache[s]=a.toDataURL()}return this._cache[s]}_getClusteringImage(e,t){let r=this._options.clusterSize*(String(t).length+1),s=e.toCssColorString()+"-"+t,a=-Math.PI/12,o=Math.PI/2,l=Math.PI/6;if(!this._cache[s]){let h=document.createElement("canvas");h.width=r,h.height=r;let c=h.getContext("2d");c.save(),c.scale(r/24,r/24),c.beginPath(),c.arc(12,12,6,0,2*Math.PI),c.fillStyle=e.toCssColorString(),c.fill(),c.closePath(),c.lineWidth=2;for(let d=0;d<3;d++)c.beginPath(),c.arc(12,12,8,a,a+o,!1),c.strokeStyle=e.withAlpha(.4).toCssColorString(),c.stroke(),c.arc(12,12,11,a,a+o,!1),c.strokeStyle=e.withAlpha(.2).toCssColorString(),c.stroke(),c.closePath(),a=a+o+l;c.restore(),this._cache[s]=h.toDataURL()}return this._cache[s]}_getClusterImage(e){let t=e/this._allCount,r;if(this._options.style==="custom"){let s=Object.keys(this._options.gradientImages).sort((a,o)=>Number(a)-Number(o));for(let a=s.length-1;a>=0;a--)if(t>=Number(s[a])){r=this._options.gradientImages[s[a]];break}r||(r=this._options.gradientImages[s[0]])}else{let s=Object.keys(this._options.gradientColors).sort((o,l)=>Number(o)-Number(l)),a;for(let o=s.length-1;o>=0;o--)if(t>=Number(s[o])){a=this._options.gradientColors[s[o]];break}a||(a=this._options.gradientColors[s[0]]),r=this._options.style==="circle"?this._getCircleImage(a,e):this._getClusteringImage(a,e)}return r}_changeCluster(e){let t=i.getTimestamp();if(this._lastChangedTime&&t-this._lastChangedTime<=1e3)return;this._lastChangedTime=t,this._cache={},this._billboards.removeAll(),this._labels.removeAll();let r=this._viewer.camera.computeViewRectangle();r||(r=this._viewer.viewBounds),this._allCount&&this._cluster.getClusters([i.Math.toDegrees(r.west),i.Math.toDegrees(r.south),i.Math.toDegrees(r.east),i.Math.toDegrees(r.north)],this._viewer.zoom).forEach(a=>{let o=C.uuid();if(a.properties.cluster){let l=a.properties.point_count,h=this._billboards.add({position:i.Cartesian3.fromDegrees(+a.geometry.coordinates[0],+a.geometry.coordinates[1]),image:this._getClusterImage(l)});if(h.layerId=this.layerId,h.overlayId=o,h.attr={count:l},this._cache[o]=h,this._options.showCount){let c=this._labels.add({position:i.Cartesian3.fromDegrees(+a.geometry.coordinates[0],+a.geometry.coordinates[1]),text:String(l),font:`${this._options.fontSize} px sans-serif`,disableDepthTestDistance:Number.POSITIVE_INFINITY,fillColor:this._options.fontColor,scale:.8,pixelOffset:this._options.getCountOffset(l)});c.layerId=this.layerId,c.overlayId=o,c.attr={count:l},this._cache[o]=c}}else{let l=this._billboards.add({position:i.Cartesian3.fromDegrees(+a.geometry.coordinates[0],+a.geometry.coordinates[1]),image:this._options.image,...a.properties.style});l.layerId=this.layerId,l.overlayId=o,l.attr=a.properties,this._cache[o]=l}})}_addedHook(){this._changedRemoveCallback=this._viewer.camera.changed.addEventListener(this._changeCluster,this)}_removedHook(){this._changedRemoveCallback&&this._changedRemoveCallback()}setPoints(e=[]){return e.length&&(this._allCount=e.length,this._cluster.load(e.map(t=>{let r=y.parsePosition(t);return{type:"Feature",geometry:{type:"Point",coordinates:[r.lng,r.lat]},properties:t.attr||{}}}))),this}clear(){return this._cache={},this._allCount=0,this._state=f.CLEARED,this}};S.registerType("cluster");var Pc=qs;var Js=class extends S{constructor(e,t="",r={}){super(e),this._delegate=i.CzmlDataSource.load(t,r),this._state=f.INITIALIZED}get type(){return S.getLayerType("czml")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}};S.registerType("czml");var Mc=Js;var Xs=class extends S{constructor(e){super(e),this._delegate=new i.CustomDataSource(e),this._state=f.INITIALIZED}get type(){return S.getLayerType("dynamic")}clear(){return this._delegate.entities&&this._delegate.entities.removeAll(),this._cache={},this._state=f.CLEARED,this}};S.registerType("dynamic");var bc=Xs;var Qs=class extends S{constructor(e){super(e),this._delegate=new i.CustomDataSource(e),this._state=f.INITIALIZED}get type(){return S.getLayerType("vector")}clear(){return this._delegate.entities&&this._delegate.entities.removeAll(),this._cache={},this._state=f.CLEARED,this}};S.registerType("vector");var qe=Qs;var d_={name:"",count:10,maximumLevel:21,dataProperty:"",callback:()=>null},Ks=class extends S{constructor(e,t,r={}){super(e),this._url=t,this._options={...d_,...r},this._levelLayers={},this._tileWidth=256,this._tileHeight=256,this._maximumLevel=this._options.maximumLevel,this._tilingScheme=this._options.tilingScheme||new i.GeographicTilingScheme,this._rectangle=this._tilingScheme.rectangle,this._credit=void 0,this._token=void 0;for(let s=0;s<this.maximumLevel;s++)this._levelLayers[String(s)]=new qe(e+"-grid-"+s);this._viewer=void 0,this._imageryLayer=void 0,this._imagery=document.createElement("canvas"),this._imagery.width=this._tileWidth,this._imagery.height=this._tileHeight,this._state=f.INITIALIZED}get type(){return S.getLayerType("feature_grid")}get url(){return this._url}get show(){return this._show}set show(e){this._show=e,Object.keys(this._levelLayers).forEach(t=>{this._levelLayers[t].show=e})}get token(){return this._token}get tileWidth(){if(!this.ready)throw new i.DeveloperError("tileWidth must not be called before the imagery provider is ready.");return this._tileWidth}get tileHeight(){if(!this.ready)throw new i.DeveloperError("tileHeight must not be called before the imagery provider is ready.");return this._tileHeight}get maximumLevel(){if(!this.ready)throw new i.DeveloperError("maximumLevel must not be called before the imagery provider is ready.");return this._maximumLevel}get minimumLevel(){if(!this.ready)throw new i.DeveloperError("minimumLevel must not be called before the imagery provider is ready.");return 0}get tilingScheme(){if(!this.ready)throw new i.DeveloperError("tilingScheme must not be called before the imagery provider is ready.");return this._tilingScheme}get rectangle(){if(!this.ready)throw new i.DeveloperError("rectangle must not be called before the imagery provider is ready.");return this._rectangle}get ready(){return!!this._url}get credit(){return this._credit}get hasAlphaChannel(){return!0}_onAdd(e){this._viewer=e,this._imageryLayer=this._viewer.imageryLayers.addImageryProvider(this),Object.keys(this._levelLayers).forEach(t=>{this._viewer.addLayer(this._levelLayers[t])}),this._state=f.ADDED}_onRemove(){this._imageryLayer&&this._viewer.imageryLayers.remove(this._imageryLayer),Object.keys(this._levelLayers).forEach(e=>{this._viewer.removeLayer(this._levelLayers[e])}),this._state=f.REMOVED}getTileCredits(e,t,r){}requestImage(e,t,r,s){let a=this._levelLayers[String(r)],o=this._tilingScheme.tileXYToRectangle(e,t,r);return this._viewer&&o&&a&&i.Rectangle.intersection(o,this._viewer.viewBounds)&&i.Resource.fetchJson({url:this._url,queryParameters:{minX:i.Math.toDegrees(o.west),minY:i.Math.toDegrees(o.south),maxX:i.Math.toDegrees(o.east),maxY:i.Math.toDegrees(o.north),count:this._options.count}}).then(l=>{let h=l;if(this._options.dataProperty&&(h=l[this._options.dataProperty]),h&&h.length){for(let c=r+3;c<this._maximumLevel;c++)this._levelLayers[String(c)]&&this._levelLayers[String(c)].clear();h.forEach(c=>{let d=this._options.callback(c);d&&a.addOverlay(d)})}}),this._imagery}clear(){Object.keys(this._levelLayers).forEach(e=>{this._levelLayers[e].clear()}),this._state=f.CLEARED}};S.registerType("feature_grid");var Ac=Ks;var p_={},V=p_;var $s=class{constructor(){this._id=C.uuid(),this._bid=C.uuid(),this._delegate=void 0,this._layer=void 0,this._state=void 0,this._show=!0,this._style={},this._attr={},this._allowDrillPicking=!1,this._contextMenu=[],this._overlayEvent=new gr,this._overlayEvent.on(Ne.ADD,this._onAdd,this),this._overlayEvent.on(Ne.REMOVE,this._onRemove,this)}get overlayId(){return this._id}get type(){return""}get id(){return this._bid}set id(e){this._bid=e}get show(){return this._show}set show(e){this._show=e,C.isPromise(this._delegate)?this._delegate.then(t=>{t.show=this._show}):this._delegate&&(this._delegate.show=this._show)}get attr(){return this._attr}set attr(e){this._attr=e}get allowDrillPicking(){return this._allowDrillPicking}set allowDrillPicking(e){this._allowDrillPicking=e}get overlayEvent(){return this._overlayEvent}get delegate(){return this._delegate}get state(){return this._state}get contextMenu(){return this._contextMenu}set contextMenu(e){this._contextMenu=e}static registerType(e){e&&(V[e.toLocaleUpperCase()]=e.toLocaleLowerCase())}static getOverlayType(e){return V[e.toLocaleUpperCase()]||void 0}_getLayerCollection(e){let t;switch(e){case"point_primitive":t=this._layer.points;break;case"billboard_primitive":case"bounce_billboard_primitive":t=this._layer.billboards;break;case"label_primitive":case"bounce_label_primitive":t=this._layer.labels;break;case"polyline_primitive":t=this._layer.polylines;break;case"cloud_primitive":t=this._layer.clouds;break;default:break}return t}_mountedHook(){}_addedHook(){var e;if(!this._delegate)return!1;this._delegate instanceof Promise?this._delegate.then(t=>{var r;t.layerId=(r=this._layer)==null?void 0:r.layerId,t.overlayId=this._id}):(this._delegate.layerId=(e=this._layer)==null?void 0:e.layerId,this._delegate.overlayId=this._id)}_removedHook(){}_onAdd(e){var t,r,s,a;if(e){if(this._layer=e,this._mountedHook&&this._mountedHook(),(r=(t=this._layer)==null?void 0:t.delegate)!=null&&r.entities&&this._delegate)this._layer.delegate.entities.add(this._delegate);else if((a=(s=this._layer)==null?void 0:s.delegate)!=null&&a.add){let o=this._getLayerCollection(this.type);o?(this._delegate&&(this._delegate=o.add(this._delegate)),C.merge(this._delegate,this._style),this.update&&this.destroy&&this._layer.delegate.add(this)):C.isPromise(this._delegate)?this._delegate.then(l=>{this._layer.delegate.add(l)}):this.update&&this.destroy?this._layer.delegate.add(this):this._delegate&&this._layer.delegate.add(this._delegate)}this._addedHook&&this._addedHook(),this._state=f.ADDED}}_onRemove(){var e,t,r,s;if(this._layer){if((t=(e=this._layer)==null?void 0:e.delegate)!=null&&t.entities)this._layer.delegate.entities.remove(this._delegate);else if((s=(r=this._layer)==null?void 0:r.delegate)!=null&&s.remove){let a=this._getLayerCollection(this.type);a?(this._delegate&&a.remove(this._delegate),this.update&&this.destroy&&this._layer.delegate.remove(this)):C.isPromise(this._delegate)?this._delegate.then(o=>{this._layer.delegate.remove(o)}):this.update&&this.destroy?this._layer.delegate.remove(this):this._delegate&&this._layer.delegate.remove(this._delegate)}this._removedHook&&this._removedHook(),this._state=f.REMOVED}}setLabel(e,t){return this._delegate?(this._delegate instanceof i.Entity&&(this._delegate.label={...t,text:e}),this):this}setStyle(e){return this}remove(){return this._layer&&this._layer.removeOverlay(this),this}addTo(e){return e&&e.addOverlay&&e.addOverlay(this),this}on(e,t,r){return this._overlayEvent.on(e,t,r||this),this}off(e,t,r){return this._overlayEvent.off(e,t,r||this),this}fire(e,t){return this._overlayEvent.fire(e,t),this}},w=$s;var ea=class extends w{constructor(e,t){super(),this._delegate=new i.Entity({billboard:{}}),this._position=y.parsePosition(e),this._icon=t,this._size=[32,32],this._state=f.INITIALIZED}get type(){return w.getOverlayType("custom_billboard")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.billboard.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("CustomBillboard: the size invalid");this._size=e,this._delegate.billboard.width=this._size[0]||32,this._delegate.billboard.height=this._size[1]||32}_mountedHook(){this.position=this._position,this.icon=this._icon,this.size=this._size}setLabel(e,t){return this._delegate.label={...t,text:e},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.image&&delete e.width&&delete e.height,C.merge(this._style,e),C.merge(this._delegate.billboard,e),this)}setVLine(e={}){if(this._position.alt>0&&!this._delegate.polyline){let t=this._position.copy();t.alt=e.height||0,this._delegate.polyline={...e,positions:g.transformWGS84ArrayToCartesianArray([t,this._position])}}return this}setBottomCircle(e,t={},r=0){let s=0,a=r;return this._delegate.ellipse={...t,semiMajorAxis:e,semiMinorAxis:e,stRotation:new i.CallbackProperty(()=>(s+=a,(s>=360||s<=-360)&&(s=0),s),!1)},this}};w.registerType("custom_billboard");var Sc=ea;var ta=class extends w{constructor(e,t){super(),this._delegate=new i.Entity({label:{}}),this._position=y.parsePosition(e),this._text=t,this._state=f.INITIALIZED}get type(){return w.getOverlayType("custom_label")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}get text(){return this._text}set text(e){this._text=e,this._delegate.label.text=this._text}_mountedHook(){this.position=this._position,this.text=this._text}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.text,C.merge(this._style,e),C.merge(this._delegate.label,e),this)}setVLine(e={}){if(this._position.alt>0&&!this._delegate.polyline){let t=this._position.copy();t.alt=e.height||0,this._delegate.polyline={...e,positions:g.transformWGS84ArrayToCartesianArray([t,this._position])}}return this}setBottomCircle(e,t={},r=0){let s=0,a=r;return this._delegate.ellipse={...t,semiMajorAxis:e,semiMinorAxis:e,stRotation:new i.CallbackProperty(()=>(s+=a,(s>=360||s<=-360)&&(s=0),s),!1)},this}};w.registerType("custom_label");var Ic=ta;var ia=class extends w{constructor(){super(),this._startTime=void 0,this._lastTime=void 0,this._sampledPosition=new i.SampledPositionProperty,this._cache=[],this._maxCacheSize=10,this._state=f.INITIALIZED}get maxCacheSize(){return this._maxCacheSize}set maxCacheSize(e){this._maxCacheSize=e}get position(){return g.transformCartesianToWGS84(this._sampledPosition.getValue(i.JulianDate.now()))}_removePosition(){if(this._cache.length>this._maxCacheSize){let e=i.JulianDate.addSeconds(this._cache[0],-.2,new i.JulianDate),t=i.JulianDate.addSeconds(this._cache[this._cache.length-this._maxCacheSize],-.2,new i.JulianDate);this._sampledPosition.removeSamples(new i.TimeInterval({start:e,stop:t})),this._cache.splice(0,this._cache.length-this._maxCacheSize)}}addPosition(e,t){this._removePosition();let r=i.JulianDate.now(),s=i.JulianDate.addSeconds(r,t,new i.JulianDate);return this._sampledPosition.addSample(s,g.transformWGS84ToCartesian(y.parsePosition(e))),this._lastTime=s,this._cache.push(this._lastTime),this}bindDom(e){return this}},Ut=ia;var ra=class extends Ut{constructor(e,t){super(),this._position=y.parsePosition(e),this._icon=t,this._delegate=new i.Entity({billboard:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("dynamic_billboard")}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.billboard.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("DynamicBillboard: the size invalid");this._size=e,this._delegate.billboard.width=this._size[0]||32,this._delegate.billboard.height=this._size[1]||32}_mountedHook(){this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._startTime=i.JulianDate.now(),this._sampledPosition.addSample(this._startTime,g.transformWGS84ToCartesian(this._position)),this._delegate.position=this._sampledPosition,this._cache.push(this._startTime),this.icon=this._icon,this.size=this._size}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.image&&delete e.width&&delete e.height,C.merge(this._style,e),C.merge(this._delegate.billboard,e),this)}};w.registerType("dynamic_billboard");var Dc=ra;var sa=class extends Ut{constructor(e,t){super(),this._position=y.parsePosition(e),this._modelUrl=t,this._delegate=new i.Entity({model:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("dynamic_model")}get modelUrl(){return this._modelUrl}set modelUrl(e){this._modelUrl=e,this._delegate.model.uri=this._modelUrl}_mountedHook(){this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._startTime=i.JulianDate.now(),this._sampledPosition.addSample(this._startTime,g.transformWGS84ToCartesian(this._position)),this._delegate.position=this._sampledPosition,this._delegate.orientation=new i.VelocityOrientationProperty(this._sampledPosition),this._cache.push(this._startTime),this.modelUrl=this._modelUrl}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.uri,C.merge(this._style,e),C.merge(this._delegate.model,e),this)}};w.registerType("dynamic_model");var Lc=sa;function m_(n,e,t){let r=i.Cartesian3.subtract(n,e,new i.Cartesian3),s=i.Cartesian3.subtract(t,e,new i.Cartesian3),a=i.Cartesian3.cross(r,s,r);return i.Cartesian3.magnitude(a)*.5}function De(n){let e=0;if(!Array.isArray(n))return e;n[0]instanceof i.Cartesian3||(n=g.transformWGS84ArrayToCartesianArray(n));let t=i.CoplanarPolygonGeometry.createGeometry(i.CoplanarPolygonGeometry.fromPositions({positions:n,vertexFormat:i.VertexFormat.POSITION_ONLY}));if(!t)return e;let r=t.attributes.position.values,s=t.indices;for(let a=0;a<s.length;a+=3){let o=i.Cartesian3.unpack(r,s[a]*3,new i.Cartesian3),l=i.Cartesian3.unpack(r,s[a+1]*3,new i.Cartesian3),h=i.Cartesian3.unpack(r,s[a+2]*3,new i.Cartesian3);e+=m_(o,l,h)}return e}function aa(n=[],e=0){let t=180,r=90,s=-180,a=-90;if(n.forEach(o=>{t=Math.min(t,o.lng||o.x),r=Math.min(r,o.lat||o.y),s=Math.max(s,o.lng||o.x),a=Math.max(a,o.lat||o.y)}),e>0){let o=Math.abs(s-s),l=Math.abs(a-r);t-=o*e,r-=l*e,s+=o*e,a+=l*e}return{west:t,south:r,east:s,north:a}}function Le(n){if(n&&Array.isArray(n)){let e=0;n.forEach(({alt:s})=>e=Math.max(e,s));let t=i.BoundingSphere.fromPoints(g.transformWGS84ArrayToCartesianArray(n)),r=g.transformCartesianToWGS84(t.center);return r.alt=e,r}return new q}function oa(n,e){e=e||{};let t=[];for(let r=0;r<n.length-1;r++){let s=u_(n[r],n[r+1],e.count);s&&s.length>0&&(t=t.concat(s))}return t}function u_(n,e,t){if(!n||!e)return null;let r=[];t=t||40;let s=function(M){return 1-2*M+M*M},a=M=>2*M-2*M*M,o=M=>M*M,l,h,c,d,u,_,m=0,p=parseFloat(n.lat),T=parseFloat(e.lat),v=parseFloat(n.lng),E=parseFloat(e.lng);E>v&&E-v>180&&v<0&&(v=360+v,E=360+E),_=0,T===p?(l=0,h=v-E):E===v?(l=Math.PI/2,h=p-T):(l=Math.atan((T-p)/(E-v)),h=(T-p)/Math.sin(l)),_===0&&(_=l+Math.PI/5),c=h/2,u=c*Math.cos(_)+v,d=c*Math.sin(_)+p;for(let M=0;M<t+1;M++){let I=v*s(m)+u*a(m)+E*o(m),A=p*s(m)+d*a(m)+T*o(m),L=n.lng,H=e.lng;r.push([L<0&&H>0?I-360:I,A]),m=m+1/t}return r}function he(n){let e=0;if(n&&Array.isArray(n))for(let t=0;t<n.length-1;t++){let r=g.transformWGS84ToCartographic(n[t]),s=g.transformWGS84ToCartographic(n[t+1]),a=new i.EllipsoidGeodesic;a.setEndPoints(r,s);let o=a.surfaceDistance;o=Math.sqrt(Math.pow(o,2)+Math.pow(s.height-r.height,2)),e+=o}return e.toFixed(3)}function Re(n,e){let t=n,r=e;if(!t||!r)return 0;n instanceof i.Cartesian3||(t=y.parsePosition(n),t=g.transformWGS84ToCartesian(t)),e instanceof i.Cartesian3||(r=y.parsePosition(e),r=g.transformWGS84ToCartesian(r));let s=i.Transforms.eastNorthUpToFixedFrame(t),a=i.Cartesian3.subtract(r,t,new i.Cartesian3),o=i.Matrix4.multiplyByPointAsVector(i.Matrix4.inverse(s,new i.Matrix4),a,new i.Cartesian3),l=Math.atan2(o.y,o.x)-i.Math.PI_OVER_TWO;return l=i.Math.TWO_PI-i.Math.zeroToTwoPi(l),isNaN(l)?0:l}function tt(n,e,t){return n=parseFloat(n)||0,n>=parseFloat(e)&&n<=parseFloat(t)}function Z(n,e){return i.Cartesian3.midpoint(n,e,new i.Cartesian3)}function na(n,e){let t=y.parsePosition(n),r=y.parsePosition(e);t=g.transformWGS84ToCartographic(t),r=g.transformWGS84ToCartographic(r);let s=new i.EllipsoidGeodesic(t,r).interpolateUsingFraction(.5);return new q(i.Math.toDegrees(s.longitude),i.Math.toDegrees(s.latitude),s.height)}function la(n,e,t=0,r=50){let s=[];t=Math.max(+t,100),r=Math.max(+r,50);let a=Math.abs(n.lng-e.lng),o=Math.abs(n.lat-e.lat),l=Math.max(a,o),h=l/r;if(a>o){let c=(e.lat-n.lat)/r;n.lng-e.lng>0&&(h=-h);for(let d=0;d<r;d++){let u=t-Math.pow(-.5*l+Math.abs(h)*d,2)*4*t/Math.pow(l,2),_=n.lng+h*d,m=n.lat+c*d;s.push([_,m,u])}}else{let c=(e.lng-n.lng)/r;n.lat-e.lat>0&&(h=-h);for(let d=0;d<r;d++){let u=t-Math.pow(-.5*l+Math.abs(h)*d,2)*4*t/Math.pow(l,2),_=n.lng+c*d,m=n.lat+h*d;s.push([_,m,u])}}return s.push([e.lng,e.lat,e.alt||0]),s}var{Math:f_}=i,Rc={};C.merge(Rc,f_,{area:De,bounds:aa,center:Le,curve:oa,distance:he,heading:Re,isBetween:tt,midCartesian:Z,midPosition:na,parabola:la});var ha=class n extends w{constructor(e,t){super(),this._delegate=D.create("div","div-icon"),this._position=y.parsePosition(e),this._delegate.setAttribute("id",this._id),C.merge(this._delegate.style,{position:"absolute",top:"0",left:"0"}),this.content=t,this._state=f.INITIALIZED}get type(){return w.getOverlayType("div_icon")}get show(){return this._show}set show(e){this._show=e,this._delegate.style.visibility=this._show?"visible":"hidden"}get position(){return this._position}set position(e){this._position=y.parsePosition(e)}get content(){return this._delegate.childNodes||[]}set content(e){if(e&&typeof e=="string")this._delegate.innerHTML=e;else if(e&&e instanceof Element){for(;this._delegate.hasChildNodes();)this._delegate.removeChild(this._delegate.firstChild);this._delegate.appendChild(e)}}static fromEntity(e,t){var o;let r,s=i.JulianDate.now(),a=g.transformCartesianToWGS84(e.position.getValue(s));return r=new n(a,t),e.billboard&&(r.attr={...(o=e==null?void 0:e.properties)==null?void 0:o.getValue(s)}),r}_updateStyle(e,t,r){if(!this._show||!e)return;let s=e.x-this._delegate.offsetWidth/2,a=e.y-this._delegate.offsetHeight/2;this._style.position==="topleft"?(s=e.x-this._delegate.offsetWidth,a=e.y-this._delegate.offsetHeight):this._style.position==="topright"?(s=e.x,a=e.y-this._delegate.offsetHeight):this._style.position==="bottomleft"?(s=e.x-this._delegate.offsetWidth,a=e.y):this._style.position==="bottomright"&&(s=e.x,a=e.y);let o=`translate3d(${Math.round(s)}px,${Math.round(a)}px, 0)`,l="scale3d(1,1,1)",h=this._style.scaleByDistance;if(t&&h){let u=h.near||0,_=h.nearValue||1,m=h.far||Number.MAX_VALUE,p=h.farValue||0,T=t/m;if(t<u)l=`scale3d(${_},${_},1)`;else if(t>m)l=`scale3d(${p},${p},1)`;else{let v=p+T*(_-p);l=`scale3d(${v},${v},1)`}}let c=!0,d=this._style.distanceDisplayCondition;t&&d&&(c=tt(t,d.near||0,d.far||Number.MAX_VALUE)),this._delegate.style.transform=`${o} ${l}`,this._delegate.style.visibility=c&&r?"visible":"hidden"}_onAdd(e){this._layer=e,this._layer.delegate.appendChild(this._delegate);let t={layer:e,overlay:this,position:g.transformWGS84ToCartesian(this._position)};this._delegate.addEventListener("click",()=>{this._overlayEvent.fire(W.CLICK,t)}),this._delegate.addEventListener("mouseover",()=>{this._overlayEvent.fire(W.MOUSE_OVER,t)}),this._delegate.addEventListener("mouseout",()=>{this._overlayEvent.fire(W.MOUSE_OUT,t)}),this._state=f.ADDED}_onRemove(){this._layer&&(this._layer.delegate.removeChild(this._delegate),this._state=f.REMOVED)}setLabel(e,t){return this}setStyle(e){return!e||Object.keys(e).length===0?this:(C.merge(this._style,e),this._style.className&&D.addClass(this._delegate,this._style.className),this)}};w.registerType("div_icon");var kc=ha;w.registerType("div_plane");var ca=class n extends w{constructor(e,t){super(),this._delegate=new i.Entity({model:{}}),this._position=y.parsePosition(e),this._modelUrl=t,this._rotateAmount=0,this._state=f.INITIALIZED}get type(){return w.getOverlayType("model")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position),this._rotateAmount===0&&(this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll))))}get modelUrl(){return this._modelUrl}set modelUrl(e){this._modelUrl=e,this._delegate.model.uri=this._modelUrl}get rotateAmount(){return this._rotateAmount}set rotateAmount(e){this._rotateAmount=+e,this._delegate.orientation=new i.CallbackProperty(()=>(this._position.heading+=this._rotateAmount,(this._position.heading>=360||this._position.heading<=-360)&&(this._position.heading=0),i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))),!1)}static fromEntity(e,t){let r=i.JulianDate.now(),s=g.transformCartesianToWGS84(e.position.getValue(r)),a=new n(s,t);return a.attr={...e.properties.getValue(r)},a}_mountedHook(){this.position=this._position,this.modelUrl=this._modelUrl}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.uri,C.merge(this._style,e),C.merge(this._delegate.model,e),this)}};w.registerType("model");var Vt=ca;var da=class extends w{constructor(e,t={}){super(),this._delegate=i.I3SDataProvider.fromUrl(e,t),this._state=f.INITIALIZED}get type(){return w.getOverlayType("i3s")}ready(e){return this._delegate.then(e),this}setLabel(e,t){return console.warn("not support this function"),this}};w.registerType("i3s");var Oc=da;var pa=class extends w{constructor(e,t={}){super(),this._delegate=i.Cesium3DTileset.fromUrl(e,t),this._tilesetEvent=new vr(this._delegate),this._tileVisibleCallback=void 0,this._properties=void 0,this._state=f.INITIALIZED}get type(){return w.getOverlayType("tileset")}set show(e){this._show=e,this._delegate.then(t=>{t.show=e})}_bindVisibleEvent(){this._tileVisibleCallback&&this._tileVisibleCallback(),this._tileVisibleCallback=this._delegate.then(e=>{e.tileVisible.addEventListener(this._updateTile,this)})}_updateTile(e){let t=e.content;for(let r=0;r<t.featuresLength;r++){let s=t.getFeature(r);this._properties&&this._properties.length&&this._properties.forEach(a=>{s.hasProperty(a.key)&&s.getProperty(a.key)===a.keyValue&&s.setProperty(a.propertyName,a.propertyValue)})}}ready(e){return this._delegate.then(e),this}setPosition(e){return e=y.parsePosition(e),this._delegate.then(t=>{let r=i.Transforms.eastNorthUpToFixedFrame(i.Cartesian3.fromDegrees(e.lng,e.lat,e.alt)),s=i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(new i.HeadingPitchRoll(i.Math.toRadians(e.heading),i.Math.toRadians(e.pitch),i.Math.toRadians(e.roll))));i.Matrix4.multiply(r,s,r),t.root.transform=r}),this}setHeadingPitchRoll(e,t,r){return this._delegate.then(s=>{let a=s.root.transform,o=i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(new i.HeadingPitchRoll(i.Math.toRadians(e||0),i.Math.toRadians(t||0),i.Math.toRadians(r||0))));i.Matrix4.multiply(a,o,a),s.root.transform=a}),this}setLabel(e,t){return console.warn("not support this function"),this}clampToGround(){return this._delegate.then(e=>{let t=i.Cartographic.fromCartesian(e.boundingSphere.center),r=i.Cartesian3.fromRadians(t.longitude,t.latitude,t.height),s=i.Cartesian3.fromRadians(t.longitude,t.latitude,0),a=i.Cartesian3.subtract(s,r,new i.Cartesian3);e.modelMatrix=i.Matrix4.fromTranslation(a)}),this}setHeight(e,t=!1){return this._delegate.then(r=>{let s=i.Cartographic.fromCartesian(r.boundingSphere.center),a=i.Cartesian3.fromRadians(s.longitude,s.latitude,s.height),o=i.Cartesian3.fromRadians(s.longitude,s.latitude,t?e:s.height+e),l=i.Cartesian3.subtract(o,a,new i.Cartesian3);r.modelMatrix=i.Matrix4.fromTranslation(l)}),this}setScale(e){return this._delegate.then(t=>{let r=t.root.transform;e>0&&e!==1&&i.Matrix4.multiplyByUniformScale(r,e,r),t.root.transform=r}),this}setProperties(e){return this._properties=e,this._bindVisibleEvent(),this}setSplitDirection(e){return this._delegate.then(t=>{t.splitDirection=e}),this}setCustomShader(e){return this._delegate.then(t=>{t.customShader=e}),this}setStyle(e){return e&&e instanceof i.Cesium3DTileStyle&&(this._style=e,this._delegate.then(t=>{t.style=e})),this}on(e,t,r){return this._overlayEvent.on(e,t,r||this),this._tilesetEvent.on(e,t,r||this),this}off(e,t,r){return this._overlayEvent.off(e,t,r||this),this._tilesetEvent.off(e,t,r||this),this}};w.registerType("tileset");var Nc=pa;var Zt=Math.PI/2,ma=class extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.headTailFactor=.8,this._state=f.INITIALIZED}get type(){return w.getOverlayType("attack_arrow")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getArrowHeadPoints(e,t,r){let s=x.getBaseLength(e),a=s*this.headHeightFactor,o=e[e.length-1];s=x.distance(o,e[e.length-2]);let l=x.distance(t,r);a>l*this.headTailFactor&&(a=l*this.headTailFactor);let h=a*this.headWidthFactor,c=a*this.neckWidthFactor;a=a>s?s:a;let d=a*this.neckHeightFactor,u=x.getThirdPoint(e[e.length-2],o,0,a,!0),_=x.getThirdPoint(e[e.length-2],o,0,d,!0),m=x.getThirdPoint(o,u,Zt,h,!1),p=x.getThirdPoint(o,u,Zt,h,!0),T=x.getThirdPoint(o,_,Zt,c,!1),v=x.getThirdPoint(o,_,Zt,c,!0);return[T,m,o,p,v]}_getArrowBodyPoints(e,t,r,s){let a=x.wholeDistance(e),l=x.getBaseLength(e)*s,h=x.distance(t,r),c=(l-h)/2,d=0,u=[],_=[];for(let m=1;m<e.length-1;m++){let p=x.getAngleOfThreePoints(e[m-1],e[m],e[m+1])/2;d+=x.distance(e[m-1],e[m]);let T=(l/2-d/a*c)/Math.sin(p),v=x.getThirdPoint(e[m-1],e[m],Math.PI-p,T,!0),E=x.getThirdPoint(e[m-1],e[m],p,T,!1);u.push(v),_.push(E)}return u.concat(_)}_getHierarchy(){let e=y.parsePolygonCoordToArray(this._positions)[0],t=e[0],r=e[1];x.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[x.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),l=o[0],h=o[4],c=x.distance(t,r)/x.getBaseLength(a),d=this._getArrowBodyPoints(a,l,h,c),u=d.length,_=[t].concat(d.slice(0,u/2));_.push(l);let m=[r].concat(d.slice(u/2,u));return m.push(h),_=x.getQBSplinePoints(_),m=x.getQBSplinePoints(m),new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(_.concat(o,m.reverse()))))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polygon,e),this)}};w.registerType("attack_arrow");var it=ma;var se=Math.PI/2,ua=class extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.headHeightFactor=.25,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this._state=f.INITIALIZED}get type(){return w.getOverlayType("double_arrow")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getArrowPoints(e,t,r,s){let a=x.mid(e,t),o=x.distance(a,r),l=x.getThirdPoint(r,a,0,o*.3,!0),h=x.getThirdPoint(r,a,0,o*.5,!0);l=x.getThirdPoint(a,l,se,o/5,s),h=x.getThirdPoint(a,h,se,o/4,s);let c=[a,l,h,r],d=this._getArrowHeadPoints(c),u=d[0],_=d[4],m=x.distance(e,t)/x.getBaseLength(c)/2,p=this._getArrowBodyPoints(c,u,_,m),T=p.length,v=p.slice(0,T/2),E=p.slice(T/2,T);return v.push(u),E.push(_),v=v.reverse(),v.push(t),E=E.reverse(),E.push(e),v.reverse().concat(d,E)}_getArrowHeadPoints(e){let r=x.getBaseLength(e)*this.headHeightFactor,s=e[e.length-1],a=r*this.headWidthFactor,o=r*this.neckWidthFactor,l=r*this.neckHeightFactor,h=x.getThirdPoint(e[e.length-2],s,0,r,!0),c=x.getThirdPoint(e[e.length-2],s,0,l,!0),d=x.getThirdPoint(s,h,se,a,!1),u=x.getThirdPoint(s,h,se,a,!0),_=x.getThirdPoint(s,c,se,o,!1),m=x.getThirdPoint(s,c,se,o,!0);return[_,d,s,u,m]}_getArrowBodyPoints(e,t,r,s){let a=x.wholeDistance(e),l=x.getBaseLength(e)*s,h=x.distance(t,r),c=(l-h)/2,d=0,u=[],_=[];for(let m=1;m<e.length-1;m++){let p=x.getAngleOfThreePoints(e[m-1],e[m],e[m+1])/2;d+=x.distance(e[m-1],e[m]);let T=(l/2-d/a*c)/Math.sin(p),v=x.getThirdPoint(e[m-1],e[m],Math.PI-p,T,!0),E=x.getThirdPoint(e[m-1],e[m],p,T,!1);u.push(v),_.push(E)}return u.concat(_)}_getTempPoint4(e,t,r){let s=x.mid(e,t),a=x.distance(s,r),o=x.getAngleOfThreePoints(e,s,r),l,h,c,d;return o<se?(h=a*Math.sin(o),c=a*Math.cos(o),d=x.getThirdPoint(e,s,se,h,!1),l=x.getThirdPoint(s,d,se,c,!0)):o>=se&&o<Math.PI?(h=a*Math.sin(Math.PI-o),c=a*Math.cos(Math.PI-o),d=x.getThirdPoint(e,s,se,h,!1),l=x.getThirdPoint(s,d,se,c,!1)):o>=Math.PI&&o<Math.PI*1.5?(h=a*Math.sin(o-Math.PI),c=a*Math.cos(o-Math.PI),d=x.getThirdPoint(e,s,se,h,!0),l=x.getThirdPoint(s,d,se,c,!0)):(h=a*Math.sin(Math.PI*2-o),c=a*Math.cos(Math.PI*2-o),d=x.getThirdPoint(e,s,se,h,!0),l=x.getThirdPoint(s,d,se,c,!1)),l}_getHierarchy(){let e=this._positions.length,t,r,s=y.parsePolygonCoordToArray(this._positions)[0],a=s[0],o=s[1],l=s[2];e===3?t=this._getTempPoint4(a,o,l):t=s[3],e===3||e===4?r=x.mid(a,o):r=s[4];let h,c;x.isClockWise(a,o,l)?(h=this._getArrowPoints(a,r,t,!1),c=this._getArrowPoints(r,o,l,!0)):(h=this._getArrowPoints(o,r,l,!1),c=this._getArrowPoints(r,a,t,!0));let d=h.length,u=(d-5)/2,_=h.slice(0,u),m=h.slice(u,u+5),p=h.slice(u+5,d),T=c.slice(0,u),v=c.slice(u,u+5),E=c.slice(u+5,d);T=x.getBezierPoints(T);let M=x.getBezierPoints(E.concat(_.slice(1)));return p=x.getBezierPoints(p),new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(T.concat(v,M,m,p))))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polygon,e),this)}};w.registerType("double_arrow");var jt=ua;var zc=Math.PI/2,fa=class extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.tailWidthFactor=.15,this.neckWidthFactor=.2,this.headWidthFactor=.25,this.headAngle=Math.PI/8.5,this.neckAngle=Math.PI/13,this._state=f.INITIALIZED}get type(){return w.getOverlayType("fine_arrow")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getHierarchy(){let e=y.parsePolygonCoordToArray(this._positions)[0],t=e[0],r=e[1],s=x.getBaseLength(e),a=s*this.tailWidthFactor,o=s*this.neckWidthFactor,l=s*this.headWidthFactor,h=x.getThirdPoint(r,t,zc,a,!0),c=x.getThirdPoint(r,t,zc,a,!1),d=x.getThirdPoint(t,r,this.headAngle,l,!1),u=x.getThirdPoint(t,r,this.headAngle,l,!0),_=x.getThirdPoint(t,r,this.neckAngle,o,!1),m=x.getThirdPoint(t,r,this.neckAngle,o,!0);return new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions([h,_,d,r,u,m,c])))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polygon,e),this)}};w.registerType("fine_arrow");var Yt=fa;var __=Math.PI/2,Fc=100,_a=class extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({polygon:{}}),this.t=.4,this._state=f.INITIALIZED}get type(){return w.getOverlayType("gathering_place")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getHierarchy(){let e=y.parsePolygonCoordToArray(this._positions)[0];if(this._positions.length===2){let o=x.mid(e[0],e[1]),l=x.distance(e[0],o)/.9,h=x.getThirdPoint(e[0],o,__,l,!0);e=[e[0],h,e[1]]}let t=x.mid(e[0],e[2]);e.push(t,e[0],e[1]);let r=[];for(let o=0;o<e.length-2;o++){let l=e[o],h=e[o+1],c=e[o+2],d=x.getBisectorNormals(this.t,l,h,c);r=r.concat(d)}let s=r.length;r=[r[s-1]].concat(r.slice(0,s-1));let a=[];for(let o=0;o<e.length-2;o++){let l=e[o],h=e[o+1];a.push(l);for(let c=0;c<=Fc;c++){let d=x.getCubicValue(c/Fc,l,r[o*2],r[o*2+1],h);a.push(d)}a.push(h)}return new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(a)))}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polygon,e),this)}};w.registerType("gathering_place");var qt=_a;var ga=class extends it{constructor(e){super(e),this._delegate=new i.Entity({polygon:{}}),this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.tailWidthFactor=.1,this.headTailFactor=.8,this.swallowTailFactor=1,this._state=f.INITIALIZED}get type(){return w.getOverlayType("tailed_attack_arrow")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polygon.hierarchy=this._getHierarchy()}_getHierarchy(){let e=y.parsePolygonCoordToArray(this._positions)[0],t=e[0],r=e[1];x.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[x.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),l=o[0],h=o[4],c=x.distance(t,r),d=x.getBaseLength(a),u=d*this.tailWidthFactor*this.swallowTailFactor,_=x.getThirdPoint(a[1],a[0],0,u,!0),m=c/d,p=this._getArrowBodyPoints(a,l,h,m),T=p.length,v=[t].concat(p.slice(0,T/2));v.push(l);let E=[r].concat(p.slice(T/2,T));return E.push(h),v=x.getQBSplinePoints(v),E=x.getQBSplinePoints(E),new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(v.concat(o,E.reverse(),[_,v[0]]))))}};w.registerType("tailed_attack_arrow");var Jt=ga;var ya=class extends w{constructor(e,t,r=[32,32]){super(),this._position=y.parsePosition(e),this._icon=t,this._size=r,this._delegate={position:void 0,image:void 0,width:0,height:0},this._state=f.INITIALIZED}get type(){return w.getOverlayType("billboard_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("Billboard Primitive: the size invalid");this._size=e,this._delegate.width=this._size[0]||32,this._delegate.height=this._size[1]||32}_mountedHook(){this.position=this._position,this.icon=this._icon,this.size=this._size}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position&&delete e.image&&delete e.width&&delete e.height,C.merge(this._style,e),C.merge(this._delegate,e),this)}};w.registerType("billboard_primitive");var Xt=ya;var Gc={maxOffsetY:10,offsetAmount:.1},va=class extends Xt{constructor(e,t){super(e,t),this._currentOffset=new i.Cartesian2(0,0),this._isUp=!0,this._state=f.INITIALIZED}get type(){return w.getOverlayType("bounce_billboard_primitive")}update(e){var s,a;if(!this._show)return;let t=((s=this._style)==null?void 0:s.maxOffsetY)||Gc.maxOffsetY,r=((a=this._style)==null?void 0:a.offsetAmount)||Gc.offsetAmount;this._currentOffset.y>=0?this._isUp=!0:this._currentOffset.y<=-t&&(this._isUp=!1),this._currentOffset.y+=r*(this._isUp?-1:1),this._delegate.pixelOffset=this._currentOffset}destroy(){return i.destroyObject(this)}};w.registerType("bounce_billboard_primitive");var Hc=va;var wa=class extends w{constructor(e,t){super(),this._position=y.parsePosition(e),this._text=t,this._delegate={position:void 0,text:void 0},this._state=f.INITIALIZED}get type(){return w.getOverlayType("label_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}get text(){return this._text}set text(e){this._text=e,this._delegate.text=this._text}_mountedHook(){this.position=this._position,this.text=this._text}setLabel(e,t){return this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position&&delete e.text,C.merge(this._style,e),C.merge(this._delegate,e),this)}};w.registerType("label_primitive");var Qt=wa;var Wc={maxOffsetY:10,offsetAmount:.1},xa=class extends Qt{constructor(e,t){super(e,t),this._currentOffset=new i.Cartesian2(0,0),this._isUp=!0,this._state=f.INITIALIZED}get type(){return w.getOverlayType("bounce_label_primitive")}update(e){var s,a;if(!this._show)return;let t=((s=this._style)==null?void 0:s.maxOffsetY)||Wc.maxOffsetY,r=((a=this._style)==null?void 0:a.offsetAmount)||Wc.offsetAmount;this._currentOffset.y>=0?this._isUp=!0:this._currentOffset.y<=-t&&(this._isUp=!1),this._currentOffset.y+=r*(this._isUp?-1:1),this._delegate.pixelOffset=this._currentOffset}destroy(){return i.destroyObject(this)}};w.registerType("bounce_label_primitive");var Bc=xa;var Ca=class extends w{constructor(e){super(),this._position=y.parsePosition(e),this._delegate={position:void 0,scale:{x:12,y:8}},this._state=f.INITIALIZED}get type(){return w.getOverlayType("cloud_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}_mountedHook(){this.position=this._position}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position,C.merge(this._style,e),C.merge(this._delegate,e),this)}};w.registerType("cloud_primitive");var Uc=Ca;var g_={minRadius:10,minHeight:30,color:i.Color.RED,slices:128,speed:10},Ta=class extends w{constructor(e,t,r){super(),this._center=y.parsePosition(e),this._delegate=void 0,this._height=r,this._radius=t,this._currentHeight=r||0,this._currentRadius=10,this._style={...g_},this._state=f.INITIALIZED}get type(){return w.getOverlayType("diffuse_wall_primitive")}get center(){return this._center}set center(e){this._center=y.parsePosition(e)}get radius(){return this._radius}set radius(e){this._radius=e}get height(){return this._height}set height(e){this._height=e}_getPositions(){let e=[],t=i.Transforms.eastNorthUpToFixedFrame(g.transformWGS84ToCartesian(this._center));for(let r=0;r<this._style.slices;r++){let s=r/this._style.slices*i.Math.TWO_PI,a=Math.cos(s),o=Math.sin(s),l=new i.Cartesian3(a*this._currentRadius,o*this._currentRadius,0);e.push(i.Matrix4.multiplyByPoint(t,l,new i.Cartesian3))}return e.push(e[0]),e}_getHeights(e,t){let r=[];for(let s=0;s<e;s++)r.push(t);return r}update(e){var s;if(this._delegate=this._delegate&&this._delegate.destroy(),this._currentRadius+=this._radius/this._style.speed/20,this._currentHeight-=this._height/this._style.speed/20,(this._currentRadius>this._radius||this._currentHeight<this._style.minHeight)&&(this._currentRadius=this._style.minRadius,this._currentHeight=this._height),!this._style.slices||this._style.slices<3)return!1;let t=this._getPositions();if(!t||!t.length)return!1;let r=new i.WallGeometry({positions:t,minimumHeights:this._getHeights(t.length,0),maximumHeights:this._getHeights(t.length,this._currentHeight)});this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:r}),appearance:new i.MaterialAppearance({material:i.Material.fromType("WallDiffuse",{color:(s=this._style)==null?void 0:s.color}),flat:!0}),asynchronous:!1}),this._delegate.update(e)}setStyle(e){return!e||Object.keys(e).length===0?this:(C.merge(this._style,e),this)}destroy(){return i.destroyObject(this)}};w.registerType("diffuse_wall_primitive");var Vc=Ta;var Ea=class extends w{constructor(e,t){super(),this._position=y.parsePosition(e),this._radius=t||{x:10,y:10,z:10},this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("elec_ellipsoid_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.geometryInstances.modelMatrix=i.Transforms.eastNorthUpToFixedFrame(g.transformWGS84ToCartesian(this._position))}get radius(){return this._radius}set radius(e){this._radius=e,this._delegate.geometryInstances.geometry=new i.EllipsoidGeometry({radii:this._radius,maximumCone:i.Math.PI_OVER_TWO})}_setAppearance(){var e,t;this._style&&(this._delegate.appearance=new i.MaterialAppearance({material:i.Material.fromType("EllipsoidElectric",{color:((e=this._style)==null?void 0:e.color)||i.Color.GREEN,speed:((t=this._style)==null?void 0:t.speed)||5})}))}_mountedHook(){this.radius=this._radius,this.position=this._position,!this._delegate.appearance&&this._setAppearance()}setLabel(e,t){return this}setStyle(e={}){return Object.keys(e).length===0?this:(C.merge(this._style,e),this._setAppearance(),this)}};w.registerType("elec_ellipsoid_primitive");var Zc=Ea;var Pa=class extends w{constructor(e,t=1){super(),this._positions=y.parsePositions(e),this._width=t,this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("flow_line_primitive")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.geometryInstances.geometry=new i.PolylineGeometry({positions:g.transformWGS84ArrayToCartesianArray(this._positions),width:this._width})}_setAppearance(){var e,t,r,s;this._delegate.appearance=new i.PolylineMaterialAppearance({material:i.Material.fromType("PolylineFlow",{color:((e=this._style)==null?void 0:e.color)||new i.Color(1,0,0,.7),speed:((t=this._style)==null?void 0:t.speed)||1,percent:((r=this._style)==null?void 0:r.percent)||.03,gradient:((s=this._style)==null?void 0:s.gradient)||.1})})}_mountedHook(){this.positions=this._positions,!this._delegate.appearance&&this._setAppearance()}setLabel(e,t){return this}setStyle(e={}){return Object.keys(e).length===0?this:(C.merge(this._style,e),e.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};w.registerType("flow_line_primitive");var jc=Pa;var Yc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACAAAAEACAYAAADSoXR2AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAyZpVFh0WE1MOmNvbS5hZG9iZS54bXAAAAAAADw/eHBhY2tldCBiZWdpbj0i77u/IiBpZD0iVzVNME1wQ2VoaUh6cmVTek5UY3prYzlkIj8+IDx4OnhtcG1ldGEgeG1sbnM6eD0iYWRvYmU6bnM6bWV0YS8iIHg6eG1wdGs9IkFkb2JlIFhNUCBDb3JlIDUuNi1jMTQ1IDc5LjE2MzQ5OSwgMjAxOC8wOC8xMy0xNjo0MDoyMiAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RSZWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZVJlZiMiIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIENDIDIwMTkgKFdpbmRvd3MpIiB4bXBNTTpJbnN0YW5jZUlEPSJ4bXAuaWlkOjExQTg0NDEyMDEzQjExRUFBNDhBRjhGMUMzOUUyNTU0IiB4bXBNTTpEb2N1bWVudElEPSJ4bXAuZGlkOjExQTg0NDEzMDEzQjExRUFBNDhBRjhGMUMzOUUyNTU0Ij4gPHhtcE1NOkRlcml2ZWRGcm9tIHN0UmVmOmluc3RhbmNlSUQ9InhtcC5paWQ6MTFBODQ0MTAwMTNCMTFFQUE0OEFGOEYxQzM5RTI1NTQiIHN0UmVmOmRvY3VtZW50SUQ9InhtcC5kaWQ6MTFBODQ0MTEwMTNCMTFFQUE0OEFGOEYxQzM5RTI1NTQiLz4gPC9yZGY6RGVzY3JpcHRpb24+IDwvcmRmOlJERj4gPC94OnhtcG1ldGE+IDw/eHBhY2tldCBlbmQ9InIiPz41vRwAAAAE90lEQVR42uydyW4UMRCG3T2dgYSAEGs4sp44cCJBcGUJbwCvALwWPAI8ABwAiUVwgLBdkEikJEiAGMhkZqhfU1aa1sy0g+yaJPyWSupOpPjz0uVyucrJer2eG2fJ3ZgLAQhAgC0PgN8XIlkqgGLE75oih0WmRVZEvop0rHog18rnRe6IzInsthyCXFt+TuSKyGmRXZZDgK5eFrkv8l7kiUhrxN/JSo3pigSvcNmI1bCh3b5LK2+NqHyvyEF9x3z5HgqRRViOAXhW5JrCoNdei/y20gMYxhmRSyIXRY6JTMT4DENLW+SdyD19x/NajDmwmYIW79Hnn+MA4GJEAAIQgABJbMJB+n5Sl9zWZvR9DABUfkJkVt8fi3zUldAEoKl24Y2S1fPZEmBdZFHkkb4vxTLRQ5djbyUf0ncYrD/UADUB8MZno2Q19yx7gIqIAAQgAAEIQIAtYZT+85LvRnjQCoPKR3rQUgN4Y3ZeK30g8qps0qeeAzDn4TWD9+ySG+BBS90DaGnVg9a2tgnR4il9/jkOACoiAhCAAASIZpAAFl6yulO0JACo/IDrn6CedP1zxOciv6wAYNnAP3RVBeWtJQCWzG8iL/X9g4vkqNzMctzUXtintt2KM/aS+bmQaY90rb8CF6tSKiICEIAABCAAAQiwbfcFIWVCbUcc9bZDLKiYAKj4uOv7Bb+ILLj+8W7PCgC7Jhzv44Qdh9yrru8V61jPgd645gD2io+15RiC5ZA5ENNPmGmDmtrta9YAVEQE2FlrQUM/J6efU8cSAD87ojodBaccS6kgiiErGiq/qe93XT+3oGU5BJnbyKrIUs6BQZoQUEcrQ7CYagiGqeKiMgnXLXsg5uJUm/RQJKy8fGS7PMw6SgVQPrJFGZr0kCfUL/7IFjIzrLGpemBQ0kPbehL6I9vMjUh6oEVEAAIQgAAEIAABdpyj0qcK71YrqGUJANNrv+sHOcAiRpDDM1cTY1BEHk7kqyP/2Ac5vLEEQEG8aDnIoTb5ObZRWg5ywG5o1dX4ClNYxT7IISgJPsXGpLut9MCWU0S5bqkmdAa3LQEwcZDAfkZ3tthQfkwNkVeeD6kiuaUabcp6DpS9YyalrAdQ8bT1EFQVUabarND9fNuyB2gREYAABCAAAQhAAAIQoM770UgBXARCIr/koDogVlzgrWuxemBKd0m4JnBed0+5ZQ9gn3BK5LK+P4y5ewoB8DFiKO91COLFfwVuTCZV1hSoYw1APZCsFIkbN1Haaa87wwiKQe6eT27AEX6esPVVd8/kOOdAz/oz9FE0p+uGIKUeqE5C8xgSKiICEIAABCAAAQhAAAIQgAAEIAABCECA6AA+sbkREyDUUYlKD6ggZwzRkr8tewBhusisv+0in5qE/hFchoZTE0TL4p8sTbtIpyahQ4Ag5fKpSVBmfdDECvQTZjoM0U9N6KgkwH9xY7PXpPiCmq5yuaLVldHIO7jgNi5XfOEhCqNh9udHV/RnC5YAUDTftdV4/ivvwEoRVS9XXPWa1FIT5ird8jpSB+BDN3rO8AaGMnGy0I0QRYTvdk6NkOsucuhGCMAgI8Q0isaHbmAevNMhiD4P6iZhstANGiQE2PEGCRo2NcgAsQDwKnxWFdlT17/duWU1BJmuHz6A5bwbEsCScgh+qAHit3Jr1oooOPExdRBLbeJjSpuwuy30AAH+CDAAPH5ltESNYl4AAAAASUVORK5CYII=";var y_={color:i.Color.ORANGE},Ma=class extends w{constructor(e,t,r,s){super(),this._center=y.parsePosition(e),this._length=t||100,this._topRadius=r||1,this._bottomRadius=s||50,this._delegate=new i.PrimitiveCollection,this._style={...y_},this._state=f.INITIALIZED}get type(){return w.getOverlayType("light-cylinder-primitive")}get center(){return this._center}set center(e){this._center=y.parsePosition(e),this._updatePrimitives()}get length(){return this._length}set length(e){this._length=e,this._updatePrimitives()}get topRadius(){return this._topRadius}set topRadius(e){this._topRadius=e,this._updatePrimitives()}get bottomRadius(){return this._bottomRadius}set bottomRadius(e){this._bottomRadius=e,this._updatePrimitives()}_computeEllipsePositions(e,t){let r=i.EllipseGeometryLibrary.computeEllipsePositions({center:g.transformWGS84ToCartesian(e),semiMajorAxis:t,semiMinorAxis:t,rotation:0,granularity:.005},!1,!0),s=i.Cartesian3.unpackArray(r.outerPositions);return s.push(s[0]),s}_createCylinderInstance(e,t,r){let s=t.slice(),a=t.length,o=2*a,l=[],h=1/(a-1),c=[],d=[],u=(m,p=0)=>{let T=i.Cartographic.fromCartesian(m);return T.height+=p,i.Cartographic.toCartesian(T)};for(let m=0;m<a;m++){d.push(u(e[m],r)),l.push(m*h,0);let p=m+1,T=(m+1)%a,v=o-p;c.push(v-1,v,m),c.push(m,T,v-1)}for(let m in d)s.push(d[a-m-1]),l.push(1-m*h,1);let _=i.PolygonGeometry.createGeometry(new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(s),perPositionHeight:!0}));return _.indices=c,_.attributes.st.values=l,new i.GeometryInstance({geometry:_})}_getCircleImage(){let e=document.createElement("canvas");e.width=512,e.height=512;let t=e.getContext("2d");return t.fillStyle="rgba(255,255,255,0)",t.strokeStyle="rgba(255, 255, 255,255)",t.setLineDash([50,50]),t.lineWidth=30,t.beginPath(),t.arc(256,256,150,0,Math.PI*2,!0),t.stroke(),t.restore(),e}_getParticlesImage(e){let t=document.createElement("canvas");t.width=64,t.height=256;let r=t.getContext("2d");return r.clearRect(0,0,64,256),r.drawImage(e,0,0),r.drawImage(e,33,0),t}_updatePrimitives(){this._delegate.removeAll();let e=this._center.alt===0,t=this._computeEllipsePositions(this._center,this._topRadius),r=this._computeEllipsePositions(this._center,this._bottomRadius*.7),s=this._computeEllipsePositions(this._center,this._bottomRadius),a={geometryInstances:new i.GeometryInstance({geometry:new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(this._computeEllipsePositions(this._center,this._bottomRadius*2)),perPositionHeight:!e}),asynchronous:!1})},o=e?new i.GroundPrimitive(a):new i.Primitive(a);o.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CircleRingType,{color:this._style.color})});let l=e?new i.GroundPrimitive(a):new i.Primitive(a);l.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CircleRotateType,{color:this._style.color,image:this._getCircleImage()})});let h=new i.Primitive({geometryInstances:this._createCylinderInstance(t,r,this._length),appearance:new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CylinderFadeType,{color:this._style.color})}),asynchronous:!1});e?i.GroundPrimitive.initializeTerrainHeights().then(()=>{this._delegate.add(o),this._delegate.add(l),this._delegate.add(h)}):(this._delegate.add(o),this._delegate.add(l),this._delegate.add(h)),i.Resource.fetchImage({url:Yc}).then(c=>{let d=new i.Primitive({geometryInstances:this._createCylinderInstance(t,s,this._length),appearance:new i.EllipsoidSurfaceAppearance({material:i.Material.fromType(i.Material.CylinderParticlesType,{color:this._style.color,image:this._getParticlesImage(c)})}),asynchronous:!1});this._delegate.add(d)})}_mountedHook(){this.center=this._center}update(e){this._delegate.update(e)}setStyle(e){return!e||Object.keys(e).length===0?this:(C.merge(this._style,e),this)}destroy(){return i.destroyObject(this)}};w.registerType("light-cylinder-primitive");var qc=Ma;var ba=class extends w{constructor(e,t){super(),this._position=y.parsePosition(e),this._modelUrl=t,this._delegate=i.Model.fromGltfAsync({url:t}),this._modelEvent=new xr(this._delegate),this._state=f.INITIALIZED}get type(){return w.getOverlayType("model_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e);let t=g.transformWGS84ToCartesian(this._position);this._delegate.then(r=>{r.modelMatrix=i.Transforms.headingPitchRollToFixedFrame(t,new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))})}get modelUrl(){return this._modelUrl}set modelUrl(e){this._modelUrl=e,this._delegate=i.Model.fromGltfAsync({url:e,...this._style}),this.position=this._position}_mountedHook(){this.position=this._position}setStyle(e){return!e||Object.keys(e).length===0?this:(C.merge(this._style,e),this._delegate.then(t=>{C.merge(t,e)}),this)}on(e,t,r){return this._overlayEvent.on(e,t,r||this),this._modelEvent.on(e,t,r||this),this}off(e,t,r){return this._overlayEvent.off(e,t,r||this),this._modelEvent.off(e,t,r||this),this}};w.registerType("model_primitive");var Jc=ba;var Xc={pixelSize:8,outlineColor:i.Color.BLUE,outlineWidth:2},Aa=class extends w{constructor(e){super(),this._position=y.parsePosition(e),this._delegate={position:void 0},this._state=f.INITIALIZED}get type(){return w.getOverlayType("point_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}_mountedHook(){this.position=this._position,C.merge(this._delegate,Xc,this._style)}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position,C.merge(this._style,e),C.merge(this._delegate,Xc,this._style),this)}};w.registerType("point_primitive");var Qc=Aa;var Sa=class extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate={positions:[]},this._state=f.INITIALIZED}get type(){return w.getOverlayType("polyline_primitive")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.positions=g.transformWGS84ArrayToCartesianArray(this._positions)}get center(){return Le(this._positions)}get distance(){return he(this._positions)}_mountedHook(){this.positions=this._positions}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate,e),this)}};w.registerType("polyline_primitive");var Kc=Sa;var Ia=class extends w{constructor(e,t){super(),this._position=y.parsePosition(e),this._radius=t,this._delegate=new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("scan_circle_primitive")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.geometryInstances.geometry=new i.EllipseGeometry({center:g.transformWGS84ToCartesian(this._position),semiMajorAxis:this._radius,semiMinorAxis:this._radius})}get radius(){return this._radius}set radius(e){this._radius=e,this._delegate.geometryInstances.geometry.semiMajorAxis=this._radius,this._delegate.geometryInstances.geometry.semiMinorAxis=this._radius}_setAppearance(){var e,t;this._style&&(this._delegate.appearance=new i.MaterialAppearance({material:i.Material.fromType("CircleScan",{color:((e=this._style)==null?void 0:e.color)||i.Color.WHITE,speed:((t=this._style)==null?void 0:t.speed)||10})}))}_mountedHook(){this.position=this._position,!this._delegate.appearance&&this._setAppearance()}setStyle(e={}){return Object.keys(e).length===0?this:(C.merge(this._style,e),e.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};w.registerType("scan_circle_primitive");var $c=Ia;var Da=class extends w{constructor(e,t=1){super(),this._positions=y.parsePositions(e),this._width=t,this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("trail_line_primitive")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.geometryInstances.geometry=new i.PolylineGeometry({positions:g.transformWGS84ArrayToCartesianArray(this._positions),width:this._width})}_setAppearance(){var e,t;this._delegate.appearance=new i.PolylineMaterialAppearance({material:i.Material.fromType("PolylineTrail",{color:((e=this._style)==null?void 0:e.color)||new i.Color(1,0,0,.7),speed:((t=this._style)==null?void 0:t.speed)||5})})}_mountedHook(){this.positions=this._positions,!this._delegate.appearance&&this._setAppearance()}setStyle(e={}){return Object.keys(e).length===0?this:(C.merge(this._style,e),e.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};w.registerType("trail_line_primitive");var ed=Da;var La=class extends w{constructor(e,t){super(),this._positions=y.parsePositions(e),this._delegate=new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}})}),this._video=t,this._state=f.INITIALIZED}get type(){return w.getOverlayType("video_primitive")}get positions(){return this._positions}set positions(e){var t,r,s,a;this._positions=y.parsePositions(e),this._delegate.geometryInstances.geometry=i.PolygonGeometry.fromPositions({positions:g.transformWGS84ArrayToCartesianArray(this._positions),height:(t=this._style)==null?void 0:t.height,extrudedHeight:(r=this._style)==null?void 0:r.extrudedHeight,closeTop:(s=this._style)==null?void 0:s.closeTop,closeBottom:(a=this._style)==null?void 0:a.closeBottom,vertexFormat:i.EllipsoidSurfaceAppearance.VERTEX_FORMAT})}get video(){return this._video}set video(e){this._video=e,this._setAppearance()}_setAppearance(){this._delegate.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType("Image",{image:this._video})})}_mountedHook(){this.positions=this._positions,this.video=this._video}setStyle(e){var t;return Object.keys(e).length===0?this:(C.merge(this._style,e),(t=this._style)!=null&&t.classificationType&&(this._delegate.classificationType=this._style.classificationType),this)}};w.registerType("video_primitive");var td=La;var Ra=class extends w{constructor(e,t=[]){super(),this._positions=y.parsePositions(e),this._holes=t.map(r=>y.parsePositions(r)),this._delegate=new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}}),asynchronous:!0}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("water_primitive")}get positions(){return this._positions}set positions(e){var t,r,s,a;this._positions=y.parsePositions(e),this._delegate.geometryInstances.geometry=new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(this._positions),this._holes.map(o=>new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(o)))),height:(t=this._style)==null?void 0:t.height,extrudedHeight:(r=this._style)==null?void 0:r.extrudedHeight,closeTop:(s=this._style)==null?void 0:s.closeTop,closeBottom:(a=this._style)==null?void 0:a.closeBottom,vertexFormat:i.EllipsoidSurfaceAppearance.VERTEX_FORMAT})}_setAppearance(){var e,t,r,s,a,o,l,h;this._style&&(this._delegate.appearance=new i.EllipsoidSurfaceAppearance({material:i.Material.fromType("Water",{baseWaterColor:((e=this._style)==null?void 0:e.baseWaterColor)||new i.Color(.2,.3,.6,1),blendColor:((t=this._style)==null?void 0:t.blendColor)||new i.Color(0,1,.699,1),specularMap:((r=this._style)==null?void 0:r.specularMap)||i.Material.DefaultImageId,normalMap:((s=this._style)==null?void 0:s.normalMap)||i.Material.DefaultImageId,frequency:((a=this._style)==null?void 0:a.frequency)||1e3,animationSpeed:((o=this._style)==null?void 0:o.animationSpeed)||.01,amplitude:((l=this._style)==null?void 0:l.amplitude)||10,specularIntensity:((h=this._style)==null?void 0:h.specularIntensity)||.5})}))}_mountedHook(){this.positions=this._positions,!this._delegate.appearance&&this._setAppearance()}setStyle(e){var t;return Object.keys(e).length===0?this:(C.merge(this._style,e),(t=this._style)!=null&&t.classificationType&&(this._delegate.classificationType=this._style.classificationType),this._setAppearance(),this)}};w.registerType("water_primitive");var id=Ra;var ka=class n extends w{constructor(e,t){super(),this._delegate=new i.Entity({billboard:{}}),this._position=y.parsePosition(e),this._icon=t,this._size=[32,32],this._state=f.INITIALIZED}get type(){return w.getOverlayType("billboard")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}get icon(){return this._icon}set icon(e){this._icon=e,this._delegate.billboard.image=this._icon}get size(){return this._size}set size(e){if(!Array.isArray(e))throw new Error("Billboard: the size invalid");this._size=e,this._delegate.billboard.width=this._size[0]||32,this._delegate.billboard.height=this._size[1]||32}static fromEntity(e){var a;let t,r=i.JulianDate.now(),s=g.transformCartesianToWGS84(e.position.getValue(r));return e.billboard&&(t=new n(s,e.billboard.image.getValue(r)),t.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(r)}),t}_mountedHook(){this.position=this._position,this.icon=this._icon,this.size=this._size}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.image&&delete e.width&&delete e.height,C.merge(this._style,e),C.merge(this._delegate.billboard,e),this)}};w.registerType("billboard");var rt=ka;var Oa=class extends w{constructor(e,t,r,s){super(),this._position=y.parsePosition(e),this._length=t,this._width=r,this._height=s,this._delegate=new i.Entity({box:{dimensions:{x:+this._length,y:+this._width,z:+this._height}}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("box")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get length(){return this._length}set length(e){let t=this._delegate.box.dimensions.getValue();this._length=e||0,t.x=+this._length,this._delegate.box.dimensions.setValue(t)}get width(){return this._width}set width(e){let t=this._delegate.box.dimensions.getValue();this._width=e||0,t.y=+this._width,this._delegate.box.dimensions.setValue(t)}get height(){return this._height}set height(e){let t=this._delegate.box.dimensions.getValue();this._height=e||0,t.z=+this._height,this._delegate.box.dimensions.setValue(t)}_mountedHook(){this.position=this._position}setStyle(e){return Object.keys(e).length===0?this:(delete e.length&&delete e.width&&delete e.height,C.merge(this._style,e),C.merge(this._delegate.box,e),this)}};w.registerType("box");var rd=Oa;var Na=class extends w{constructor(e,t){super(),this._delegate=new i.Entity({polygon:{}}),this._center=y.parsePosition(e),this._radius=+t||0,this._rotateAmount=0,this._stRotation=0,this._state=f.INITIALIZED}get type(){return w.getOverlayType("circle")}get center(){return this._center}set center(e){this._center=y.parsePosition(e),this._delegate.polygon.hierarchy=this._computeHierarchy()}get radius(){return this._radius}set radius(e){this._radius=+e,this._delegate.polygon.hierarchy=this._computeHierarchy()}get rotateAmount(){return this._rotateAmount}set rotateAmount(e){this._rotateAmount=+e,this._delegate.polygon.stRotation=new i.CallbackProperty(()=>(this._stRotation+=this._rotateAmount,(this._stRotation>=360||this._stRotation<=-360)&&(this._stRotation=0),i.Math.toRadians(this._stRotation)),!1)}_computeHierarchy(){let e=new i.PolygonHierarchy,t=i.EllipseGeometryLibrary.computeEllipsePositions({center:g.transformWGS84ToCartesian(this._center),semiMajorAxis:this._radius,semiMinorAxis:this._radius,rotation:0,granularity:.005},!1,!0),r=i.Cartesian3.unpackArray(t.outerPositions);return r.push(r[0]),e.positions=r,e}_mountedHook(){this.center=this._center}setLabel(e,t){return this._delegate.position=g.transformWGS84ToCartesian(this._center),this._delegate.label={...t,text:e},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polygon,e),this)}};w.registerType("circle");var Kt=Na;var za=class n extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({corridor:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("corridor")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.corridor.positions=g.transformWGS84ArrayToCartesianArray(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polyline){let a=g.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(r));t=new n(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.corridor,e),this)}};w.registerType("corridor");var sd=za;var Fa=class extends w{constructor(e,t,r,s){super(),this._position=y.parsePosition(e),this._length=+t||0,this._topRadius=+r||0,this._bottomRadius=+s||0,this._delegate=new i.Entity({cylinder:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("cylinder")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get length(){return this._length}set length(e){this._length=+e||0,this._delegate.cylinder.length=this._length}get topRadius(){return this._topRadius}set topRadius(e){this._topRadius=+e||0,this._delegate.cylinder.topRadius=this._topRadius}get bottomRadius(){return this._bottomRadius}set bottomRadius(e){this._bottomRadius=+e||0,this._delegate.cylinder.bottomRadius=this._bottomRadius}_mountedHook(){this.position=this._position,this.length=this._length,this.topRadius=this._topRadius,this.bottomRadius=this._bottomRadius}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.length&&delete e.topRadius&&delete e.bottomRadius,C.merge(this._style,e),C.merge(this._delegate.cylinder,e),this)}};w.registerType("cylinder");var ad=Fa;var Ga=class extends w{constructor(e,t,r){super(),this._position=y.parsePosition(e),this._semiMajorAxis=+t||0,this._semiMinorAxis=+r||0,this._delegate=new i.Entity({ellipse:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("ellipse")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get semiMajorAxis(){return this._semiMajorAxis}set semiMajorAxis(e){this._semiMajorAxis=+e||0,this._delegate.ellipse.semiMajorAxis=this._semiMajorAxis}get semiMinorAxis(){return this._semiMinorAxis}set semiMinorAxis(e){this._semiMinorAxis=+e||0,this._delegate.ellipse.semiMinorAxis=this._semiMinorAxis}_mountedHook(){this.position=this._position,this.semiMajorAxis=this._semiMajorAxis,this.semiMinorAxis=this._semiMinorAxis}setStyle(e){return Object.keys(e).length===0?this:(delete e.semiMajorAxis&&delete e.semiMinorAxis,C.merge(this._style,e),C.merge(this._delegate.ellipse,e),this)}};w.registerType("ellipse");var od=Ga;var Ha=class extends w{constructor(e,t){super(),this._position=y.parsePosition(e),this._radius=t||{x:10,y:10,z:10},this._delegate=new i.Entity({ellipsoid:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("sphere")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get radius(){return this._radius}set radius(e){this._radius=e||{x:10,y:10,z:10},this._delegate.ellipsoid.radii=this._radius}_mountedHook(){this.position=this._position,this.radius=this._radius}setStyle(e){return Object.keys(e).length===0?this:(delete e.radius,C.merge(this._style,e),C.merge(this._delegate.ellipsoid,e),this)}};w.registerType("sphere");var nd=Ha;var Wa=class n extends w{constructor(e,t){super(),this._delegate=new i.Entity({label:{}}),this._position=y.parsePosition(e),this._text=t,this._state=f.INITIALIZED}get type(){return w.getOverlayType("label")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}get text(){return this._text}set text(e){this._text=e,this._delegate.label.text=this._text}static fromEntity(e){var a;let t=i.JulianDate.now(),r=g.transformCartesianToWGS84(e.position.getValue(t)),s;return e.billboard&&(s=new n(r,e.name),s.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(t)}),s}_mountedHook(){this.position=this._position,this.text=this._text}setLabel(e,t){return this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.text,C.merge(this._style,e),C.merge(this._delegate.label,e),this)}};w.registerType("label");var $t=Wa;var Ba=class extends w{constructor(e,t,r,s={}){if(super(),this._position=y.parsePosition(e),this._width=+t||100,this._height=+r||100,s.normal&&typeof s.normal=="string"){let a=String(s.normal).toLocaleUpperCase();s.normal=a==="X"?i.Cartesian3.UNIT_X:a==="Y"?i.Cartesian3.UNIT_Y:i.Cartesian3.UNIT_Z}else s.normal=i.Cartesian3.UNIT_Z;this._normal=s.normal,this._distance=s.distance||0,this._delegate=new i.Entity({plane:{dimensions:{x:this._width,y:this._height},plane:new i.Plane(this._normal,this._distance)}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("plane")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position),this._delegate.orientation=i.Transforms.headingPitchRollQuaternion(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(this._position.pitch),i.Math.toRadians(this._position.roll)))}get width(){return this._width}set width(e){let t=this._delegate.plane.dimensions.getValue();this._width=+e||0,t.x=this._width}get height(){return this._height}set height(e){let t=this._delegate.plane.dimensions.getValue();this._height=+e||0,t.y=this._height}get distance(){return this._distance}set distance(e){this._distance=e,this._delegate.plane.plane.distance=e}_mountedHook(){this.position=this._position,this.distance=this._distance}setStyle(e){return Object.keys(e).length===0?this:(delete e.dimensions&&delete["plane"],C.merge(this._style,e),C.merge(this._delegate.plane,e),this)}};w.registerType("plane");var ld=Ba;var hd={pixelSize:8,outlineColor:i.Color.BLUE,outlineWidth:2},Ua=class n extends w{constructor(e){super(),this._delegate=new i.Entity({point:{}}),this._position=y.parsePosition(e),this._state=f.INITIALIZED}get type(){return w.getOverlayType("point")}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._delegate.position=g.transformWGS84ToCartesian(this._position)}static fromEntity(e){var a;let t,r=i.JulianDate.now(),s=g.transformCartesianToWGS84(e.position.getValue(r));return t=new n(s),t.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(r)},t}_mountedHook(){this.position=this._position,C.merge(this._delegate.point,hd,this._style)}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.position,C.merge(this._style,e),C.merge(this._delegate.point,hd,this._style),this)}};w.registerType("point");var ei=Ua;var Va=class n extends w{constructor(e){super(),this._delegate=new i.Entity({polygon:{}}),this._positions=y.parsePositions(e),this._holes=[],this._state=f.INITIALIZED}get type(){return w.getOverlayType("polygon")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polygon.hierarchy=this._computeHierarchy()}get holes(){return this._holes}set holes(e){e&&e.length&&(this._holes=e.map(t=>y.parsePositions(t)),this._delegate.polygon.hierarchy=this._computeHierarchy())}get center(){return Le([...this._positions,this._positions[0]])}get area(){return De(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polygon){let a=g.transformCartesianArrayToWGS84Array(e.polygon.hierarchy.getValue(r).positions);t=new n(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_computeHierarchy(){let e=new i.PolygonHierarchy;return e.positions=g.transformWGS84ArrayToCartesianArray(this._positions),e.holes=this._holes.map(t=>new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(t))),e}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this._delegate.position=g.transformWGS84ToCartesian(this.center),this._delegate.label={text:e,...t},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polygon,e),this)}};w.registerType("polygon");var st=Va;var Za=class n extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({polyline:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("polyline")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polyline.positions=g.transformWGS84ArrayToCartesianArray(this._positions)}get center(){return Le(this._positions)}get distance(){return he(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polyline){let a=g.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(r));t=new n(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this._delegate.position=g.transformWGS84ToCartesian(this.center),this._delegate.label={text:e,...t},this}setStyle(e){return!e||Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polyline,e),this)}};w.registerType("polyline");var at=Za;var ja=class n extends w{constructor(e={}){super(),this._positions=y.parsePositions(e.positions||[]);let t=e.shape||e.shapePositions;switch(e.radius=e.radius||10,t){case"pipeline":this._shape=this.getShapeForPipeline(e);break;case"circle":this._shape=this.getShapeForCircle(e);break;case"star":this._shape=this.getShapeForStar(e);break;default:this._shape=t;break}this._delegate=new i.Entity({polylineVolume:{}}),this._state=f.INITIALIZED}getShapeForPipeline(e={}){let t=e.radius||1,r=e.thicknes||t/3,s=Math.ceil(360/(e.slices||60)),a=e.startAngle||0,o=e.endAngle||a+360,l=e.vscale||1,h=e.hscale||1,c=[];for(let d=a;d<=o;d+=s){let u=i.Math.toRadians(d);c.push({x:t*h*Math.cos(u),y:t*l*Math.sin(u)})}for(let d=o;d>=a;d-=s){let u=i.Math.toRadians(d);c.push({x:(t-r)*h*Math.cos(u),y:(t-r)*l*Math.sin(u)})}return c}getShapeForCircle(e={}){let t=e.radius||1,r=Math.ceil(360/(e.slices||60)),s=e.startAngle||0,a=e.endAngle||s+360,o=e.vscale||1,l=e.hscale||1,h=[];for(let c=s;c<=a;c+=r){let d=i.Math.toRadians(c);h.push({x:t*l*Math.cos(d),y:t*o*Math.sin(d)})}return h}getShapeForStar(e={}){console.log(e.slices||6);let t=e.radius||1,r=e.thicknes||t/3,s=e.slices||6,a=e.startAngle||0;console.log(s);let o=i.Math.toRadians(a),l=Math.PI/s,h=2*s,c=new Array(h);for(let d=0;d<h;d++){let u=d%2===0?t:r,_=o+d*l;c[d]=new i.Cartesian2(Math.cos(_)*u,Math.sin(_)*u)}return c}get type(){return w.getOverlayType("polyline_volume")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.polylineVolume.positions=g.transformWGS84ArrayToCartesianArray(this._positions)}get shape(){return this._shape}set shape(e){this._shape=e||[],this._delegate.polylineVolume.shape=this._shape}static fromEntity(e,t){var a;let r,s=i.JulianDate.now();return e.polyline&&(t.positions=g.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(s)),r=new n(t),r.attr={...(a=e==null?void 0:e.properties)==null?void 0:a.getValue(s)}),r}_mountedHook(){this.positions=this._positions,this.shape=this._shape}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.polylineVolume,e),this)}};w.registerType("polyline_volume");var cd=ja;var Ya=class extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({rectangle:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("rect")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.rectangle.coordinates=i.Rectangle.fromCartesianArray(g.transformWGS84ArrayToCartesianArray(this._positions))}_mountedHook(){this.positions=this._positions}setLabel(e,t){let r=this._delegate.rectangle.coordinates.getValue();return this._delegate.position=i.Cartographic.toCartesian(i.Rectangle.center(r,new i.Cartographic)),this._delegate.label={...t,text:e},this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.rectangle,e),this)}};w.registerType("rect");var ti=Ya;var qa=class n extends w{constructor(e){super(),this._positions=y.parsePositions(e),this._delegate=new i.Entity({wall:{}}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("wall")}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._delegate.wall.positions=g.transformWGS84ArrayToCartesianArray(this._positions)}static fromEntity(e){var s;let t,r=i.JulianDate.now();if(e.polyline){let a=g.transformCartesianArrayToWGS84Array(e.polyline.positions.getValue(r));t=new n(a),t.attr={...(s=e==null?void 0:e.properties)==null?void 0:s.getValue(r)}}return t}_mountedHook(){this.positions=this._positions}setLabel(e,t){return this}setStyle(e){return Object.keys(e).length===0?this:(delete e.positions,C.merge(this._style,e),C.merge(this._delegate.wall,e),this)}};w.registerType("wall");var dd=qa;var Ja=class extends S{constructor(e,t,r={}){if(!t)throw new Error("GeoJsonLayer\uFF1Athe url invalid");super(e),this._delegate=i.GeoJsonDataSource.load(t,r),this._state=f.INITIALIZED}get type(){return S.getLayerType("geojson")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}_createBillboard(e){if(e.position&&e.billboard)return rt.fromEntity(e)}_createPolyline(e){if(e.polyline)return at.fromEntity(e)}_createPolygon(e){if(e.polygon)return st.fromEntity(e)}_createModel(e,t){if(e)return Vt.fromEntity(e,t)}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}toVectorLayer(){let e=new qe(this.id);return this.eachOverlay(t=>{t.billboard?e.addOverlay(this._createBillboard(t)):t.polyline?e.addOverlay(this._createPolyline(t)):t.polygon&&e.addOverlay(this._createPolygon(t))},this),e}toModelLayer(e){let t=new qe(this.id);return this.eachOverlay(r=>{t.addOverlay(this._createModel(r,e))},this),t}};S.registerType("geojson");var xt=Ja;var Xa=class extends S{constructor(e,t,r={}){if(!t)throw new Error("GpxLayer: the url is empty");super(e),this._delegate=i.KmlDataSource.load(t,r),this._state=f.INITIALIZED}get type(){return S.getLayerType("gpx")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}};S.registerType("gpx");var pd=Xa;var v_={radialColor:i.Color.WHITE,radialWidth:2,showRadial:!0,LabelColor:i.Color.YELLOW,weftColor:i.Color.WHITE,weftWidth:2},Qa=class extends S{constructor(e,t){super(e),this._options={...v_,...t},this._delegate=new i.CustomDataSource(e),this._state=f.INITIALIZED}get type(){return S.getLayerType("graticule")}_addedHook(){for(let e=0;e<36;e++)this._delegate.entities.add({polyline:{positions:i.Cartesian3.fromDegreesArray([e*10,89.5,e*10,-89.5]),material:this._options.radialColor,width:this._options.radialWidth},show:this._options.showRadial}),this._delegate.entities.add({position:i.Cartesian3.fromDegrees(e*10,0),label:{text:e*10+"\xB0",font:"12px",fillColor:this._options.LabelColor}});for(let e=0;e<18;e++){let t=[];for(let r=0;r<129;r++)t.push(-180+r*(360/128),(e<9?e:-e)*10);this._delegate.entities.add({polyline:{positions:i.Cartesian3.fromDegreesArray(t),material:this._options.weftColor,width:this._options.weftWidth}})}}};S.registerType("graticule");var md=Qa;var Ka=class extends S{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._isGround=!0,this._state=f.INITIALIZED}get type(){return S.getLayerType("ground_primitive")}clear(){return this._delegate&&this._delegate.removeAll(),this._cache={},this._state=f.CLEARED,this}};S.registerType("ground_primitive");var ud=Ka;var _d=[].indexOf||function(n){for(let e=0,t=this.length;e<t;e++)if(e in this&&this[e]===n)return e;return-1},ii=`attribute vec4 position;
137
136
  varying vec2 texcoord;
138
137
  void main(){
139
138
  texcoord = position.xy*0.5+0.5;
140
139
  gl_Position = position;
141
- }`,Lt=`#ifdef GL_FRAGMENT_PRECISION_HIGH
140
+ }`,ri=`#ifdef GL_FRAGMENT_PRECISION_HIGH
142
141
  precision highp int;
143
142
  precision highp float;
144
143
  #else
@@ -146,13 +145,13 @@ void main(){
146
145
  precision mediump float;
147
146
  #endif
148
147
  uniform sampler2D source;
149
- varying vec2 texcoord;`,Dm=function(){let l,e,t,r;if(window.WebGLRenderingContext!=null)return r=["WEBKIT","MOZ","MS","O"],t=/^WEBKIT_(.*)|MOZ_(.*)|MS_(.*)|O_(.*)/,l=WebGLRenderingContext.prototype.getExtension,WebGLRenderingContext.prototype.getExtension=function(s){let a,o,n,h,c;if(o=s.match(t),o!==null&&(s=o[1]),a=l.call(this,s),a===null){for(h=0,c=r.length;h<c;h++)if(n=r[h],a=l.call(this,n+"_"+s),a!==null)return a;return null}else return a},e=WebGLRenderingContext.prototype.getSupportedExtensions,WebGLRenderingContext.prototype.getSupportedExtensions=function(){let s,a,o,n,h,c;for(n=e.call(this),o=[],h=0,c=n.length;h<c;h++)s=n[h],a=s.match(t),a!==null&&(s=a[1]),xh.call(o,s)<0&&o.push(s);return o}},Lm=function(){let l,e,t,r,s,a,o,n,h,c,p,f,y,_;if(s=function(){let d,T,C;return d=document.createElement("canvas"),d.width=2,d.height=2,T=d.getContext("2d"),C=T.getImageData(0,0,2,2),C.data.set(new Uint8ClampedArray([0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255])),T.putImageData(C,0,0),d},s(),e=function(d,T){let C,P,A,O,H,W,J,I,G,pe,Ie,De,de,Ne;if(W=d.createProgram(),de=d.createShader(d.VERTEX_SHADER),d.attachShader(W,de),d.shaderSource(de,`attribute vec2 position;
148
+ varying vec2 texcoord;`,w_=function(){let n,e,t,r;if(window.WebGLRenderingContext!=null)return r=["WEBKIT","MOZ","MS","O"],t=/^WEBKIT_(.*)|MOZ_(.*)|MS_(.*)|O_(.*)/,n=WebGLRenderingContext.prototype.getExtension,WebGLRenderingContext.prototype.getExtension=function(s){let a,o,l,h,c;if(o=s.match(t),o!==null&&(s=o[1]),a=n.call(this,s),a===null){for(h=0,c=r.length;h<c;h++)if(l=r[h],a=n.call(this,l+"_"+s),a!==null)return a;return null}else return a},e=WebGLRenderingContext.prototype.getSupportedExtensions,WebGLRenderingContext.prototype.getSupportedExtensions=function(){let s,a,o,l,h,c;for(l=e.call(this),o=[],h=0,c=l.length;h<c;h++)s=l[h],a=s.match(t),a!==null&&(s=a[1]),_d.call(o,s)<0&&o.push(s);return o}},x_=function(){let n,e,t,r,s,a,o,l,h,c,d,u,_,m;if(s=function(){let p,T,v;return p=document.createElement("canvas"),p.width=2,p.height=2,T=p.getContext("2d"),v=T.getImageData(0,0,2,2),v.data.set(new Uint8ClampedArray([0,0,0,0,255,255,255,255,0,0,0,0,255,255,255,255])),T.putImageData(v,0,0),p},s(),e=function(p,T){let v,E,M,I,A,L,H,b,R,z,O,G,ee,Ee;if(L=p.createProgram(),ee=p.createShader(p.VERTEX_SHADER),p.attachShader(L,ee),p.shaderSource(ee,`attribute vec2 position;
150
149
  void main(){
151
150
  gl_Position = vec4(position, 0.0, 1.0);
152
- }`),d.compileShader(de),!d.getShaderParameter(de,d.COMPILE_STATUS))throw d.getShaderInfoLog(de);if(A=d.createShader(d.FRAGMENT_SHADER),d.attachShader(W,A),d.shaderSource(A,`uniform sampler2D source;
151
+ }`),p.compileShader(ee),!p.getShaderParameter(ee,p.COMPILE_STATUS))throw p.getShaderInfoLog(ee);if(M=p.createShader(p.FRAGMENT_SHADER),p.attachShader(L,M),p.shaderSource(M,`uniform sampler2D source;
153
152
  void main(){
154
153
  gl_FragColor = texture2D(source, vec2(1.0, 1.0));
155
- }`),d.compileShader(A),!d.getShaderParameter(A,d.COMPILE_STATUS))throw d.getShaderInfoLog(A);if(d.linkProgram(W),!d.getProgramParameter(W,d.LINK_STATUS))throw d.getProgramInfoLog(W);return d.useProgram(W),P=function(){return d.deleteShader(A),d.deleteShader(de),d.deleteProgram(W),d.deleteBuffer(C),d.deleteTexture(G),d.deleteTexture(De),d.deleteFramebuffer(O),d.bindBuffer(d.ARRAY_BUFFER,null),d.useProgram(null),d.bindTexture(d.TEXTURE_2D,null),d.bindFramebuffer(d.FRAMEBUFFER,null)},De=d.createTexture(),d.bindTexture(d.TEXTURE_2D,De),d.texImage2D(d.TEXTURE_2D,0,d.RGBA,2,2,0,d.RGBA,d.UNSIGNED_BYTE,null),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MAG_FILTER,d.LINEAR),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MIN_FILTER,d.LINEAR),O=d.createFramebuffer(),d.bindFramebuffer(d.FRAMEBUFFER,O),d.framebufferTexture2D(d.FRAMEBUFFER,d.COLOR_ATTACHMENT0,d.TEXTURE_2D,De,0),pe=s(),G=d.createTexture(),d.bindTexture(d.TEXTURE_2D,G),d.texImage2D(d.TEXTURE_2D,0,d.RGBA,d.RGBA,T,pe),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MAG_FILTER,d.LINEAR),d.texParameteri(d.TEXTURE_2D,d.TEXTURE_MIN_FILTER,d.LINEAR),Ne=new Float32Array([1,1,-1,1,-1,-1,1,1,-1,-1,1,-1]),C=d.createBuffer(),d.bindBuffer(d.ARRAY_BUFFER,C),d.bufferData(d.ARRAY_BUFFER,Ne,d.STATIC_DRAW),H=d.getAttribLocation(W,"position"),Ie=d.getUniformLocation(W,"source"),d.enableVertexAttribArray(H),d.vertexAttribPointer(H,2,d.FLOAT,!1,0,0),d.uniform1i(Ie,0),d.drawArrays(d.TRIANGLES,0,6),J=new Uint8Array(4*4),d.readPixels(0,0,2,2,d.RGBA,d.UNSIGNED_BYTE,J),I=Math.abs(J[0]-127)<10,P(),I},r=function(d,T){let C;return C=d.createTexture(),d.bindTexture(d.TEXTURE_2D,C),d.texImage2D(d.TEXTURE_2D,0,d.RGBA,2,2,0,d.RGBA,T,null),d.getError()===0?(d.deleteTexture(C),!0):(d.deleteTexture(C),!1)},l=function(d,T){let C,P,A;return A=d.createTexture(),d.bindTexture(d.TEXTURE_2D,A),d.texImage2D(d.TEXTURE_2D,0,d.RGBA,2,2,0,d.RGBA,T,null),P=d.createFramebuffer(),d.bindFramebuffer(d.FRAMEBUFFER,P),d.framebufferTexture2D(d.FRAMEBUFFER,d.COLOR_ATTACHMENT0,d.TEXTURE_2D,A,0),C=d.checkFramebufferStatus(d.FRAMEBUFFER),d.deleteTexture(A),d.deleteFramebuffer(P),d.bindTexture(d.TEXTURE_2D,null),d.bindFramebuffer(d.FRAMEBUFFER,null),C===d.FRAMEBUFFER_COMPLETE},h=[],c={},p=[],t=function(){let d,T,C,P,A,O,H;d=document.createElement("canvas"),C=null;try{C=d.getContext("experimental-webgl"),C===null&&(C=d.getContext("webgl"))}catch{}if(C!=null&&(O=C.getExtension("OES_texture_float"),O===null?r(C,C.FLOAT)?(H=!0,h.push("OES_texture_float"),c.OES_texture_float={shim:!0}):(H=!1,p.push("OES_texture_float")):r(C,C.FLOAT)?(H=!0,h.push("OES_texture_float")):(H=!1,p.push("OES_texture_float")),H&&(T=C.getExtension("WEBGL_color_buffer_float"),T===null?l(C,C.FLOAT)?(h.push("WEBGL_color_buffer_float"),c.WEBGL_color_buffer_float={shim:!0,RGBA32F_EXT:34836,RGB32F_EXT:34837,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863}):p.push("WEBGL_color_buffer_float"):l(C,C.FLOAT)?h.push("WEBGL_color_buffer_float"):p.push("WEBGL_color_buffer_float"),T=C.getExtension("OES_texture_float_linear"),T===null?e(C,C.FLOAT)?(h.push("OES_texture_float_linear"),c.OES_texture_float_linear={shim:!0}):p.push("OES_texture_float_linear"):e(C,C.FLOAT)?h.push("OES_texture_float_linear"):p.push("OES_texture_float_linear")),P=C.getExtension("OES_texture_half_float"),P===null?r(C,36193)?(A=!0,h.push("OES_texture_half_float"),P=c.OES_texture_half_float={HALF_FLOAT_OES:36193,shim:!0}):(A=!1,p.push("OES_texture_half_float")):r(C,P.HALF_FLOAT_OES)?(A=!0,h.push("OES_texture_half_float")):(A=!1,p.push("OES_texture_half_float")),A))return T=C.getExtension("EXT_color_buffer_half_float"),T===null?l(C,P.HALF_FLOAT_OES)?(h.push("EXT_color_buffer_half_float"),c.EXT_color_buffer_half_float={shim:!0,RGBA16F_EXT:34842,RGB16F_EXT:34843,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863}):p.push("EXT_color_buffer_half_float"):l(C,P.HALF_FLOAT_OES)?h.push("EXT_color_buffer_half_float"):p.push("EXT_color_buffer_half_float"),T=C.getExtension("OES_texture_half_float_linear"),T===null?e(C,P.HALF_FLOAT_OES)?(h.push("OES_texture_half_float_linear"),c.OES_texture_half_float_linear={shim:!0}):p.push("OES_texture_half_float_linear"):e(C,P.HALF_FLOAT_OES)?h.push("OES_texture_half_float_linear"):p.push("OES_texture_half_float_linear")},window.WebGLRenderingContext!=null){for(t(),f={},y=0,_=p.length;y<_;y++)n=p[y],f[n]=!0;return a=WebGLRenderingContext.prototype.getExtension,WebGLRenderingContext.prototype.getExtension=function(d){let T;return T=c[d],T===void 0?f[d]?null:a.call(this,d):T},o=WebGLRenderingContext.prototype.getSupportedExtensions,WebGLRenderingContext.prototype.getSupportedExtensions=function(){let d,T,C,P,A,O,H;for(C=o.call(this),T=[],P=0,O=C.length;P<O;P++)d=C[P],f[d]===void 0&&T.push(d);for(A=0,H=h.length;A<H;A++)d=h[A],xh.call(T,d)<0&&T.push(d);return T},WebGLRenderingContext.prototype.getFloatExtension=function(d){let T,C,P,A,O,H,W,J,I,G,pe,Ie,De,de,Ne,at,ot,nt,un,fn,_n,gn,yi,yn,vi,wi;for(d.prefer==null&&(d.prefer=["half"]),d.require==null&&(d.require=[]),d.throws==null&&(d.throws=!0),de=this.getExtension("OES_texture_float"),H=this.getExtension("OES_texture_half_float"),Ie=this.getExtension("WEBGL_color_buffer_float"),A=this.getExtension("EXT_color_buffer_half_float"),De=this.getExtension("OES_texture_float_linear"),O=this.getExtension("OES_texture_half_float_linear"),pe={texture:de!==null,filterable:De!==null,renderable:Ie!==null,score:0,precision:"single",half:!1,single:!0,type:this.FLOAT},P={texture:H!==null,filterable:O!==null,renderable:A!==null,score:0,precision:"half",half:!0,single:!1,type:(yn=H!=null?H.HALF_FLOAT_OES:void 0)!=null?yn:null},C=[],pe.texture&&C.push(pe),P.texture&&C.push(P),G=[],at=0,un=C.length;at<un;at++){for(T=C[at],Ne=!0,vi=d.require,ot=0,fn=vi.length;ot<fn;ot++)n=vi[ot],T[n]===!1&&(Ne=!1);Ne&&G.push(T)}for(nt=0,_n=G.length;nt<_n;nt++)for(T=G[nt],wi=d.prefer,W=yi=0,gn=wi.length;yi<gn;W=++yi)I=wi[W],J=Math.pow(2,d.prefer.length-W-1),T[I]&&(T.score+=J);if(G.sort(function(xi,Ci){if(xi.score===Ci.score)return 0;if(xi.score<Ci.score)return 1;if(xi.score>Ci.score)return-1}),G.length===0){if(d.throws)throw"No floating point texture support that is "+d.require.join(", ");return null}else return G=G[0],{filterable:G.filterable,renderable:G.renderable,type:G.type,precision:G.precision}}}};Dm();Lm();var st=function(){function l(e,t){let r,s;this.gl=e,s=t.vertex,r=t.fragment,this.program=this.gl.createProgram(),this.vs=this.gl.createShader(this.gl.VERTEX_SHADER),this.fs=this.gl.createShader(this.gl.FRAGMENT_SHADER),this.gl.attachShader(this.program,this.vs),this.gl.attachShader(this.program,this.fs),this.compileShader(this.vs,s),this.compileShader(this.fs,r),this.link(),this.value_cache={},this.uniform_cache={},this.attribCache={}}return l.prototype.attribLocation=function(e){let t=this.attribCache[e];return t===void 0&&(t=this.attribCache[e]=this.gl.getAttribLocation(this.program,e)),t},l.prototype.compileShader=function(e,t){if(this.gl.shaderSource(e,t),this.gl.compileShader(e),!this.gl.getShaderParameter(e,this.gl.COMPILE_STATUS))throw"Shader Compile Error: "+this.gl.getShaderInfoLog(e)},l.prototype.link=function(){if(this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))throw"Shader Link Error: "+this.gl.getProgramInfoLog(this.program)},l.prototype.use=function(){return this.gl.useProgram(this.program),this},l.prototype.uniformLoc=function(e){let t=this.uniform_cache[e];return t===void 0&&(t=this.uniform_cache[e]=this.gl.getUniformLocation(this.program,e)),t},l.prototype.int=function(e,t){let r,s;return r=this.value_cache[e],r!==t&&(this.value_cache[e]=t,s=this.uniformLoc(e),s&&this.gl.uniform1i(s,t)),this},l.prototype.vec2=function(e,t,r){let s;return s=this.uniformLoc(e),s&&this.gl.uniform2f(s,t,r),this},l.prototype.float=function(e,t){let r,s;return r=this.value_cache[e],r!==t&&(this.value_cache[e]=t,s=this.uniformLoc(e),s&&this.gl.uniform1f(s,t)),this},l}(),Rm=function(){function l(e){this.gl=e,this.buffer=this.gl.createFramebuffer()}return l.prototype.destroy=function(){return this.gl.deleteFRamebuffer(this.buffer)},l.prototype.bind=function(){return this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,this.buffer),this},l.prototype.unbind=function(){return this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,null),this},l.prototype.check=function(){let e;switch(e=this.gl.checkFramebufferStatus(this.gl.FRAMEBUFFER),e){case this.gl.FRAMEBUFFER_UNSUPPORTED:throw"Framebuffer is unsupported";case this.gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:throw"Framebuffer incomplete attachment";case this.gl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:throw"Framebuffer incomplete dimensions";case this.gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:throw"Framebuffer incomplete missing attachment"}return this},l.prototype.color=function(e){return this.gl.framebufferTexture2D(this.gl.FRAMEBUFFER,this.gl.COLOR_ATTACHMENT0,e.target,e.handle,0),this.check(),this},l.prototype.depth=function(e){return this.gl.framebufferRenderbuffer(this.gl.FRAMEBUFFER,this.gl.DEPTH_ATTACHMENT,this.gl.RENDERBUFFER,e.id),this.check(),this},l.prototype.destroy=function(){return this.gl.deleteFramebuffer(this.buffer)},l}(),Ch=function(){function l(e,t){let r,s;switch(this.gl=e,t==null&&(t={}),this.channels=this.gl[((r=t.channels)!=null?r:"rgba").toUpperCase()],typeof t.type=="number"?this.type=t.type:this.type=this.gl[((s=t.type)!=null?s:"unsigned_byte").toUpperCase()],this.channels){case this.gl.RGBA:this.chancount=4;break;case this.gl.RGB:this.chancount=3;break;case this.gl.LUMINANCE_ALPHA:this.chancount=2;break;default:this.chancount=1}this.target=this.gl.TEXTURE_2D,this.handle=this.gl.createTexture()}return l.prototype.destroy=function(){return this.gl.deleteTexture(this.handle)},l.prototype.bind=function(e){if(e==null&&(e=0),e>15)throw"Texture unit too large: "+e;return this.gl.activeTexture(this.gl.TEXTURE0+e),this.gl.bindTexture(this.target,this.handle),this},l.prototype.setSize=function(e,t){return this.width=e,this.height=t,this.gl.texImage2D(this.target,0,this.channels,this.width,this.height,0,this.channels,this.type,null),this},l.prototype.upload=function(e){return this.width=e.width,this.height=e.height,this.gl.texImage2D(this.target,0,this.channels,this.channels,this.type,e),this},l.prototype.linear=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.target,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this},l.prototype.nearest=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_MAG_FILTER,this.gl.NEAREST),this.gl.texParameteri(this.target,this.gl.TEXTURE_MIN_FILTER,this.gl.NEAREST),this},l.prototype.clampToEdge=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this},l.prototype.repeat=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_S,this.gl.REPEAT),this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_T,this.gl.REPEAT),this},l}(),wh=function(){function l(e,t,r){let s;this.gl=e,this.width=t,this.height=r,s=this.gl.getFloatExtension({require:["renderable"]}),this.texture=new Ch(this.gl,{type:s.type}).bind(0).setSize(this.width,this.height).nearest().clampToEdge(),this.fbo=new Rm(this.gl).bind().color(this.texture).unbind()}return l.prototype.use=function(){return this.fbo.bind()},l.prototype.bind=function(e){return this.texture.bind(e)},l.prototype.end=function(){return this.fbo.unbind()},l.prototype.resize=function(e,t){return this.width=e,this.height=t,this.texture.bind(0).setSize(this.width,this.height)},l}(),Om=function(){function l(e,t,r,s){let a,o,n;for(this.heatmap=e,this.gl=t,this.width=r,this.height=s,this.shader=new st(this.gl,{vertex:`attribute vec4 position, intensity;
154
+ }`),p.compileShader(M),!p.getShaderParameter(M,p.COMPILE_STATUS))throw p.getShaderInfoLog(M);if(p.linkProgram(L),!p.getProgramParameter(L,p.LINK_STATUS))throw p.getProgramInfoLog(L);return p.useProgram(L),E=function(){return p.deleteShader(M),p.deleteShader(ee),p.deleteProgram(L),p.deleteBuffer(v),p.deleteTexture(R),p.deleteTexture(G),p.deleteFramebuffer(I),p.bindBuffer(p.ARRAY_BUFFER,null),p.useProgram(null),p.bindTexture(p.TEXTURE_2D,null),p.bindFramebuffer(p.FRAMEBUFFER,null)},G=p.createTexture(),p.bindTexture(p.TEXTURE_2D,G),p.texImage2D(p.TEXTURE_2D,0,p.RGBA,2,2,0,p.RGBA,p.UNSIGNED_BYTE,null),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MAG_FILTER,p.LINEAR),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MIN_FILTER,p.LINEAR),I=p.createFramebuffer(),p.bindFramebuffer(p.FRAMEBUFFER,I),p.framebufferTexture2D(p.FRAMEBUFFER,p.COLOR_ATTACHMENT0,p.TEXTURE_2D,G,0),z=s(),R=p.createTexture(),p.bindTexture(p.TEXTURE_2D,R),p.texImage2D(p.TEXTURE_2D,0,p.RGBA,p.RGBA,T,z),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MAG_FILTER,p.LINEAR),p.texParameteri(p.TEXTURE_2D,p.TEXTURE_MIN_FILTER,p.LINEAR),Ee=new Float32Array([1,1,-1,1,-1,-1,1,1,-1,-1,1,-1]),v=p.createBuffer(),p.bindBuffer(p.ARRAY_BUFFER,v),p.bufferData(p.ARRAY_BUFFER,Ee,p.STATIC_DRAW),A=p.getAttribLocation(L,"position"),O=p.getUniformLocation(L,"source"),p.enableVertexAttribArray(A),p.vertexAttribPointer(A,2,p.FLOAT,!1,0,0),p.uniform1i(O,0),p.drawArrays(p.TRIANGLES,0,6),H=new Uint8Array(4*4),p.readPixels(0,0,2,2,p.RGBA,p.UNSIGNED_BYTE,H),b=Math.abs(H[0]-127)<10,E(),b},r=function(p,T){let v;return v=p.createTexture(),p.bindTexture(p.TEXTURE_2D,v),p.texImage2D(p.TEXTURE_2D,0,p.RGBA,2,2,0,p.RGBA,T,null),p.getError()===0?(p.deleteTexture(v),!0):(p.deleteTexture(v),!1)},n=function(p,T){let v,E,M;return M=p.createTexture(),p.bindTexture(p.TEXTURE_2D,M),p.texImage2D(p.TEXTURE_2D,0,p.RGBA,2,2,0,p.RGBA,T,null),E=p.createFramebuffer(),p.bindFramebuffer(p.FRAMEBUFFER,E),p.framebufferTexture2D(p.FRAMEBUFFER,p.COLOR_ATTACHMENT0,p.TEXTURE_2D,M,0),v=p.checkFramebufferStatus(p.FRAMEBUFFER),p.deleteTexture(M),p.deleteFramebuffer(E),p.bindTexture(p.TEXTURE_2D,null),p.bindFramebuffer(p.FRAMEBUFFER,null),v===p.FRAMEBUFFER_COMPLETE},h=[],c={},d=[],t=function(){let p,T,v,E,M,I,A;p=document.createElement("canvas"),v=null;try{v=p.getContext("experimental-webgl"),v===null&&(v=p.getContext("webgl"))}catch{}if(v!=null&&(I=v.getExtension("OES_texture_float"),I===null?r(v,v.FLOAT)?(A=!0,h.push("OES_texture_float"),c.OES_texture_float={shim:!0}):(A=!1,d.push("OES_texture_float")):r(v,v.FLOAT)?(A=!0,h.push("OES_texture_float")):(A=!1,d.push("OES_texture_float")),A&&(T=v.getExtension("WEBGL_color_buffer_float"),T===null?n(v,v.FLOAT)?(h.push("WEBGL_color_buffer_float"),c.WEBGL_color_buffer_float={shim:!0,RGBA32F_EXT:34836,RGB32F_EXT:34837,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863}):d.push("WEBGL_color_buffer_float"):n(v,v.FLOAT)?h.push("WEBGL_color_buffer_float"):d.push("WEBGL_color_buffer_float"),T=v.getExtension("OES_texture_float_linear"),T===null?e(v,v.FLOAT)?(h.push("OES_texture_float_linear"),c.OES_texture_float_linear={shim:!0}):d.push("OES_texture_float_linear"):e(v,v.FLOAT)?h.push("OES_texture_float_linear"):d.push("OES_texture_float_linear")),E=v.getExtension("OES_texture_half_float"),E===null?r(v,36193)?(M=!0,h.push("OES_texture_half_float"),E=c.OES_texture_half_float={HALF_FLOAT_OES:36193,shim:!0}):(M=!1,d.push("OES_texture_half_float")):r(v,E.HALF_FLOAT_OES)?(M=!0,h.push("OES_texture_half_float")):(M=!1,d.push("OES_texture_half_float")),M))return T=v.getExtension("EXT_color_buffer_half_float"),T===null?n(v,E.HALF_FLOAT_OES)?(h.push("EXT_color_buffer_half_float"),c.EXT_color_buffer_half_float={shim:!0,RGBA16F_EXT:34842,RGB16F_EXT:34843,FRAMEBUFFER_ATTACHMENT_COMPONENT_TYPE_EXT:33297,UNSIGNED_NORMALIZED_EXT:35863}):d.push("EXT_color_buffer_half_float"):n(v,E.HALF_FLOAT_OES)?h.push("EXT_color_buffer_half_float"):d.push("EXT_color_buffer_half_float"),T=v.getExtension("OES_texture_half_float_linear"),T===null?e(v,E.HALF_FLOAT_OES)?(h.push("OES_texture_half_float_linear"),c.OES_texture_half_float_linear={shim:!0}):d.push("OES_texture_half_float_linear"):e(v,E.HALF_FLOAT_OES)?h.push("OES_texture_half_float_linear"):d.push("OES_texture_half_float_linear")},window.WebGLRenderingContext!=null){for(t(),u={},_=0,m=d.length;_<m;_++)l=d[_],u[l]=!0;return a=WebGLRenderingContext.prototype.getExtension,WebGLRenderingContext.prototype.getExtension=function(p){let T;return T=c[p],T===void 0?u[p]?null:a.call(this,p):T},o=WebGLRenderingContext.prototype.getSupportedExtensions,WebGLRenderingContext.prototype.getSupportedExtensions=function(){let p,T,v,E,M,I,A;for(v=o.call(this),T=[],E=0,I=v.length;E<I;E++)p=v[E],u[p]===void 0&&T.push(p);for(M=0,A=h.length;M<A;M++)p=h[M],_d.call(T,p)<0&&T.push(p);return T},WebGLRenderingContext.prototype.getFloatExtension=function(p){let T,v,E,M,I,A,L,H,b,R,z,O,G,ee,Ee,Pe,Me,Tt,sl,al,ol,nl,Ui,ll,Vi,Zi;for(p.prefer==null&&(p.prefer=["half"]),p.require==null&&(p.require=[]),p.throws==null&&(p.throws=!0),ee=this.getExtension("OES_texture_float"),A=this.getExtension("OES_texture_half_float"),O=this.getExtension("WEBGL_color_buffer_float"),M=this.getExtension("EXT_color_buffer_half_float"),G=this.getExtension("OES_texture_float_linear"),I=this.getExtension("OES_texture_half_float_linear"),z={texture:ee!==null,filterable:G!==null,renderable:O!==null,score:0,precision:"single",half:!1,single:!0,type:this.FLOAT},E={texture:A!==null,filterable:I!==null,renderable:M!==null,score:0,precision:"half",half:!0,single:!1,type:(ll=A!=null?A.HALF_FLOAT_OES:void 0)!=null?ll:null},v=[],z.texture&&v.push(z),E.texture&&v.push(E),R=[],Pe=0,sl=v.length;Pe<sl;Pe++){for(T=v[Pe],Ee=!0,Vi=p.require,Me=0,al=Vi.length;Me<al;Me++)l=Vi[Me],T[l]===!1&&(Ee=!1);Ee&&R.push(T)}for(Tt=0,ol=R.length;Tt<ol;Tt++)for(T=R[Tt],Zi=p.prefer,L=Ui=0,nl=Zi.length;Ui<nl;L=++Ui)b=Zi[L],H=Math.pow(2,p.prefer.length-L-1),T[b]&&(T.score+=H);if(R.sort(function(ji,Yi){if(ji.score===Yi.score)return 0;if(ji.score<Yi.score)return 1;if(ji.score>Yi.score)return-1}),R.length===0){if(p.throws)throw"No floating point texture support that is "+p.require.join(", ");return null}else return R=R[0],{filterable:R.filterable,renderable:R.renderable,type:R.type,precision:R.precision}}}};w_();x_();var Ct=function(){function n(e,t){let r,s;this.gl=e,s=t.vertex,r=t.fragment,this.program=this.gl.createProgram(),this.vs=this.gl.createShader(this.gl.VERTEX_SHADER),this.fs=this.gl.createShader(this.gl.FRAGMENT_SHADER),this.gl.attachShader(this.program,this.vs),this.gl.attachShader(this.program,this.fs),this.compileShader(this.vs,s),this.compileShader(this.fs,r),this.link(),this.value_cache={},this.uniform_cache={},this.attribCache={}}return n.prototype.attribLocation=function(e){let t=this.attribCache[e];return t===void 0&&(t=this.attribCache[e]=this.gl.getAttribLocation(this.program,e)),t},n.prototype.compileShader=function(e,t){if(this.gl.shaderSource(e,t),this.gl.compileShader(e),!this.gl.getShaderParameter(e,this.gl.COMPILE_STATUS))throw"Shader Compile Error: "+this.gl.getShaderInfoLog(e)},n.prototype.link=function(){if(this.gl.linkProgram(this.program),!this.gl.getProgramParameter(this.program,this.gl.LINK_STATUS))throw"Shader Link Error: "+this.gl.getProgramInfoLog(this.program)},n.prototype.use=function(){return this.gl.useProgram(this.program),this},n.prototype.uniformLoc=function(e){let t=this.uniform_cache[e];return t===void 0&&(t=this.uniform_cache[e]=this.gl.getUniformLocation(this.program,e)),t},n.prototype.int=function(e,t){let r,s;return r=this.value_cache[e],r!==t&&(this.value_cache[e]=t,s=this.uniformLoc(e),s&&this.gl.uniform1i(s,t)),this},n.prototype.vec2=function(e,t,r){let s;return s=this.uniformLoc(e),s&&this.gl.uniform2f(s,t,r),this},n.prototype.float=function(e,t){let r,s;return r=this.value_cache[e],r!==t&&(this.value_cache[e]=t,s=this.uniformLoc(e),s&&this.gl.uniform1f(s,t)),this},n}(),C_=function(){function n(e){this.gl=e,this.buffer=this.gl.createFramebuffer()}return n.prototype.destroy=function(){return this.gl.deleteFRamebuffer(this.buffer)},n.prototype.bind=function(){return this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,this.buffer),this},n.prototype.unbind=function(){return this.gl.bindFramebuffer(this.gl.FRAMEBUFFER,null),this},n.prototype.check=function(){let e;switch(e=this.gl.checkFramebufferStatus(this.gl.FRAMEBUFFER),e){case this.gl.FRAMEBUFFER_UNSUPPORTED:throw"Framebuffer is unsupported";case this.gl.FRAMEBUFFER_INCOMPLETE_ATTACHMENT:throw"Framebuffer incomplete attachment";case this.gl.FRAMEBUFFER_INCOMPLETE_DIMENSIONS:throw"Framebuffer incomplete dimensions";case this.gl.FRAMEBUFFER_INCOMPLETE_MISSING_ATTACHMENT:throw"Framebuffer incomplete missing attachment"}return this},n.prototype.color=function(e){return this.gl.framebufferTexture2D(this.gl.FRAMEBUFFER,this.gl.COLOR_ATTACHMENT0,e.target,e.handle,0),this.check(),this},n.prototype.depth=function(e){return this.gl.framebufferRenderbuffer(this.gl.FRAMEBUFFER,this.gl.DEPTH_ATTACHMENT,this.gl.RENDERBUFFER,e.id),this.check(),this},n.prototype.destroy=function(){return this.gl.deleteFramebuffer(this.buffer)},n}(),gd=function(){function n(e,t){let r,s;switch(this.gl=e,t==null&&(t={}),this.channels=this.gl[((r=t.channels)!=null?r:"rgba").toUpperCase()],typeof t.type=="number"?this.type=t.type:this.type=this.gl[((s=t.type)!=null?s:"unsigned_byte").toUpperCase()],this.channels){case this.gl.RGBA:this.chancount=4;break;case this.gl.RGB:this.chancount=3;break;case this.gl.LUMINANCE_ALPHA:this.chancount=2;break;default:this.chancount=1}this.target=this.gl.TEXTURE_2D,this.handle=this.gl.createTexture()}return n.prototype.destroy=function(){return this.gl.deleteTexture(this.handle)},n.prototype.bind=function(e){if(e==null&&(e=0),e>15)throw"Texture unit too large: "+e;return this.gl.activeTexture(this.gl.TEXTURE0+e),this.gl.bindTexture(this.target,this.handle),this},n.prototype.setSize=function(e,t){return this.width=e,this.height=t,this.gl.texImage2D(this.target,0,this.channels,this.width,this.height,0,this.channels,this.type,null),this},n.prototype.upload=function(e){return this.width=e.width,this.height=e.height,this.gl.texImage2D(this.target,0,this.channels,this.channels,this.type,e),this},n.prototype.linear=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_MAG_FILTER,this.gl.LINEAR),this.gl.texParameteri(this.target,this.gl.TEXTURE_MIN_FILTER,this.gl.LINEAR),this},n.prototype.nearest=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_MAG_FILTER,this.gl.NEAREST),this.gl.texParameteri(this.target,this.gl.TEXTURE_MIN_FILTER,this.gl.NEAREST),this},n.prototype.clampToEdge=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_S,this.gl.CLAMP_TO_EDGE),this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_T,this.gl.CLAMP_TO_EDGE),this},n.prototype.repeat=function(){return this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_S,this.gl.REPEAT),this.gl.texParameteri(this.target,this.gl.TEXTURE_WRAP_T,this.gl.REPEAT),this},n}(),fd=function(){function n(e,t,r){let s;this.gl=e,this.width=t,this.height=r,s=this.gl.getFloatExtension({require:["renderable"]}),this.texture=new gd(this.gl,{type:s.type}).bind(0).setSize(this.width,this.height).nearest().clampToEdge(),this.fbo=new C_(this.gl).bind().color(this.texture).unbind()}return n.prototype.use=function(){return this.fbo.bind()},n.prototype.bind=function(e){return this.texture.bind(e)},n.prototype.end=function(){return this.fbo.unbind()},n.prototype.resize=function(e,t){return this.width=e,this.height=t,this.texture.bind(0).setSize(this.width,this.height)},n}(),T_=function(){function n(e,t,r,s){let a,o,l;for(this.heatmap=e,this.gl=t,this.width=r,this.height=s,this.shader=new Ct(this.gl,{vertex:`attribute vec4 position, intensity;
156
155
  varying vec2 off, dim;
157
156
  varying float vIntensity;
158
157
  uniform vec2 viewport;
@@ -176,13 +175,13 @@ void main(){
176
175
  float falloff = (1.0 - smoothstep(0.0, 1.0, length(off/dim)));
177
176
  float intensity = falloff*vIntensity;
178
177
  gl_FragColor = vec4(intensity);
179
- }`}),this.clampShader=new st(this.gl,{vertex:Dt,fragment:Lt+`uniform float low, high;
178
+ }`}),this.clampShader=new Ct(this.gl,{vertex:ii,fragment:ri+`uniform float low, high;
180
179
  void main(){
181
180
  gl_FragColor = vec4(clamp(texture2D(source, texcoord).rgb, low, high), 1.0);
182
- }`}),this.multiplyShader=new st(this.gl,{vertex:Dt,fragment:Lt+`uniform float value;
181
+ }`}),this.multiplyShader=new Ct(this.gl,{vertex:ii,fragment:ri+`uniform float value;
183
182
  void main(){
184
183
  gl_FragColor = vec4(texture2D(source, texcoord).rgb*value, 1.0);
185
- }`}),this.blurShader=new st(this.gl,{vertex:Dt,fragment:Lt+`uniform vec2 viewport;
184
+ }`}),this.blurShader=new Ct(this.gl,{vertex:ii,fragment:ri+`uniform vec2 viewport;
186
185
  void main(){
187
186
  vec4 result = vec4(0.0);
188
187
  for(int x=-1; x<=1; x++){
@@ -194,10 +193,10 @@ void main(){
194
193
  }
195
194
  }
196
195
  gl_FragColor = vec4(result.rgb/result.w, 1.0);
197
- }`}),this.nodeBack=new wh(this.gl,this.width,this.height),this.nodeFront=new wh(this.gl,this.width,this.height),this.vertexBuffer=this.gl.createBuffer(),this.vertexSize=8,this.maxPointCount=1024*10,this.vertexBufferData=new Float32Array(this.maxPointCount*this.vertexSize*6),this.vertexBufferViews=[],a=o=0,n=this.maxPointCount;0<=n?o<n:o>n;a=0<=n?++o:--o)this.vertexBufferViews.push(new Float32Array(this.vertexBufferData.buffer,0,a*this.vertexSize*6));this.bufferIndex=0,this.pointCount=0}return l.prototype.resize=function(e,t){return this.width=e,this.height=t,this.nodeBack.resize(this.width,this.height),this.nodeFront.resize(this.width,this.height)},l.prototype.update=function(){var e,t;if(this.pointCount>0)return this.gl.enable(this.gl.BLEND),this.nodeFront.use(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.vertexBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.vertexBufferViews[this.pointCount],this.gl.STREAM_DRAW),t=this.shader.attribLocation("position"),e=this.shader.attribLocation("intensity"),this.gl.enableVertexAttribArray(1),this.gl.vertexAttribPointer(t,4,this.gl.FLOAT,!1,8*4,0),this.gl.vertexAttribPointer(e,4,this.gl.FLOAT,!1,8*4,4*4),this.shader.use().vec2("viewport",this.width,this.height),this.gl.drawArrays(this.gl.TRIANGLES,0,this.pointCount*6),this.gl.disableVertexAttribArray(1),this.pointCount=0,this.bufferIndex=0,this.nodeFront.end(),this.gl.disable(this.gl.BLEND)},l.prototype.clear=function(){return this.nodeFront.use(),this.gl.clearColor(0,0,0,1),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.nodeFront.end()},l.prototype.clamp=function(e,t){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.heatmap.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.nodeFront.bind(0),this.nodeBack.use(),this.clampShader.use().int("source",0).float("low",e).float("high",t),this.gl.drawArrays(this.gl.TRIANGLES,0,6),this.nodeBack.end(),this.swap()},l.prototype.multiply=function(e){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.heatmap.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.nodeFront.bind(0),this.nodeBack.use(),this.multiplyShader.use().int("source",0).float("value",e),this.gl.drawArrays(this.gl.TRIANGLES,0,6),this.nodeBack.end(),this.swap()},l.prototype.blur=function(){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.heatmap.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.nodeFront.bind(0),this.nodeBack.use(),this.blurShader.use().int("source",0).vec2("viewport",this.width,this.height),this.gl.drawArrays(this.gl.TRIANGLES,0,6),this.nodeBack.end(),this.swap()},l.prototype.swap=function(){let e=this.nodeFront;return this.nodeFront=this.nodeBack,this.nodeBack=e},l.prototype.addVertex=function(e,t,r,s,a){return this.vertexBufferData[this.bufferIndex++]=e,this.vertexBufferData[this.bufferIndex++]=t,this.vertexBufferData[this.bufferIndex++]=r,this.vertexBufferData[this.bufferIndex++]=s,this.vertexBufferData[this.bufferIndex++]=a,this.vertexBufferData[this.bufferIndex++]=a,this.vertexBufferData[this.bufferIndex++]=a,this.vertexBufferData[this.bufferIndex++]=a},l.prototype.addPoint=function(e,t,r,s){let a;return r==null&&(r=50),s==null&&(s=.2),this.pointCount>=this.maxPointCount-1&&this.update(),t=this.height-t,a=r/2,this.addVertex(e,t,-a,-a,s),this.addVertex(e,t,+a,-a,s),this.addVertex(e,t,-a,+a,s),this.addVertex(e,t,-a,+a,s),this.addVertex(e,t,+a,-a,s),this.addVertex(e,t,+a,+a,s),this.pointCount+=1},l}(),km=function(){function l(e){let t,r,s,a,o,n,h,c,p,f,y,_,d;_=e!=null?e:{},this.canvas=_.canvas,this.width=_.width,this.height=_.height,c=_.intensityToAlpha,n=_.gradientTexture,r=_.alphaRange,this.canvas||(this.canvas=document.createElement("canvas"));try{if(this.gl=this.canvas.getContext("experimental-webgl",{depth:!1,antialias:!1}),this.gl===null&&(this.gl=this.canvas.getContext("webgl",{depth:!1,antialias:!1}),this.gl===null))throw"WebGL not supported"}catch(T){throw a=T,"WebGL not supported"}window.WebGLDebugUtils!=null&&(this.gl=window.WebGLDebugUtils.makeDebugContext(this.gl,function(T,C,P){throw window.WebGLDebugUtils.glEnumToString(T)+" was caused by call to: "+C})),this.gl.enableVertexAttribArray(0),this.gl.blendFunc(this.gl.ONE,this.gl.ONE),n?(y=this.gradientTexture=new Ch(this.gl,{channels:"rgba"}).bind(0).setSize(2,2).nearest().clampToEdge(),typeof n=="string"?(h=new Image,h.onload=function(){return y.bind().upload(h)},h.src=n):n.width>0&&n.height>0?y.upload(n):n.onload=function(){return y.upload(n)},o=`uniform sampler2D gradientTexture;
196
+ }`}),this.nodeBack=new fd(this.gl,this.width,this.height),this.nodeFront=new fd(this.gl,this.width,this.height),this.vertexBuffer=this.gl.createBuffer(),this.vertexSize=8,this.maxPointCount=1024*10,this.vertexBufferData=new Float32Array(this.maxPointCount*this.vertexSize*6),this.vertexBufferViews=[],a=o=0,l=this.maxPointCount;0<=l?o<l:o>l;a=0<=l?++o:--o)this.vertexBufferViews.push(new Float32Array(this.vertexBufferData.buffer,0,a*this.vertexSize*6));this.bufferIndex=0,this.pointCount=0}return n.prototype.resize=function(e,t){return this.width=e,this.height=t,this.nodeBack.resize(this.width,this.height),this.nodeFront.resize(this.width,this.height)},n.prototype.update=function(){var e,t;if(this.pointCount>0)return this.gl.enable(this.gl.BLEND),this.nodeFront.use(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.vertexBuffer),this.gl.bufferData(this.gl.ARRAY_BUFFER,this.vertexBufferViews[this.pointCount],this.gl.STREAM_DRAW),t=this.shader.attribLocation("position"),e=this.shader.attribLocation("intensity"),this.gl.enableVertexAttribArray(1),this.gl.vertexAttribPointer(t,4,this.gl.FLOAT,!1,8*4,0),this.gl.vertexAttribPointer(e,4,this.gl.FLOAT,!1,8*4,4*4),this.shader.use().vec2("viewport",this.width,this.height),this.gl.drawArrays(this.gl.TRIANGLES,0,this.pointCount*6),this.gl.disableVertexAttribArray(1),this.pointCount=0,this.bufferIndex=0,this.nodeFront.end(),this.gl.disable(this.gl.BLEND)},n.prototype.clear=function(){return this.nodeFront.use(),this.gl.clearColor(0,0,0,1),this.gl.clear(this.gl.COLOR_BUFFER_BIT),this.nodeFront.end()},n.prototype.clamp=function(e,t){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.heatmap.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.nodeFront.bind(0),this.nodeBack.use(),this.clampShader.use().int("source",0).float("low",e).float("high",t),this.gl.drawArrays(this.gl.TRIANGLES,0,6),this.nodeBack.end(),this.swap()},n.prototype.multiply=function(e){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.heatmap.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.nodeFront.bind(0),this.nodeBack.use(),this.multiplyShader.use().int("source",0).float("value",e),this.gl.drawArrays(this.gl.TRIANGLES,0,6),this.nodeBack.end(),this.swap()},n.prototype.blur=function(){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.heatmap.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.nodeFront.bind(0),this.nodeBack.use(),this.blurShader.use().int("source",0).vec2("viewport",this.width,this.height),this.gl.drawArrays(this.gl.TRIANGLES,0,6),this.nodeBack.end(),this.swap()},n.prototype.swap=function(){let e=this.nodeFront;return this.nodeFront=this.nodeBack,this.nodeBack=e},n.prototype.addVertex=function(e,t,r,s,a){return this.vertexBufferData[this.bufferIndex++]=e,this.vertexBufferData[this.bufferIndex++]=t,this.vertexBufferData[this.bufferIndex++]=r,this.vertexBufferData[this.bufferIndex++]=s,this.vertexBufferData[this.bufferIndex++]=a,this.vertexBufferData[this.bufferIndex++]=a,this.vertexBufferData[this.bufferIndex++]=a,this.vertexBufferData[this.bufferIndex++]=a},n.prototype.addPoint=function(e,t,r,s){let a;return r==null&&(r=50),s==null&&(s=.2),this.pointCount>=this.maxPointCount-1&&this.update(),t=this.height-t,a=r/2,this.addVertex(e,t,-a,-a,s),this.addVertex(e,t,+a,-a,s),this.addVertex(e,t,-a,+a,s),this.addVertex(e,t,-a,+a,s),this.addVertex(e,t,+a,-a,s),this.addVertex(e,t,+a,+a,s),this.pointCount+=1},n}(),E_=function(){function n(e){let t,r,s,a,o,l,h,c,d,u,_,m,p;m=e!=null?e:{},this.canvas=m.canvas,this.width=m.width,this.height=m.height,c=m.intensityToAlpha,l=m.gradientTexture,r=m.alphaRange,this.canvas||(this.canvas=document.createElement("canvas"));try{if(this.gl=this.canvas.getContext("experimental-webgl",{depth:!1,antialias:!1}),this.gl===null&&(this.gl=this.canvas.getContext("webgl",{depth:!1,antialias:!1}),this.gl===null))throw"WebGL not supported"}catch(T){throw a=T,"WebGL not supported"}window.WebGLDebugUtils!=null&&(this.gl=window.WebGLDebugUtils.makeDebugContext(this.gl,function(T,v,E){throw window.WebGLDebugUtils.glEnumToString(T)+" was caused by call to: "+v})),this.gl.enableVertexAttribArray(0),this.gl.blendFunc(this.gl.ONE,this.gl.ONE),l?(_=this.gradientTexture=new gd(this.gl,{channels:"rgba"}).bind(0).setSize(2,2).nearest().clampToEdge(),typeof l=="string"?(h=new Image,h.onload=function(){return _.bind().upload(h)},h.src=l):l.width>0&&l.height>0?_.upload(l):l.onload=function(){return _.upload(l)},o=`uniform sampler2D gradientTexture;
198
197
  vec3 getColor(float intensity){
199
198
  return texture2D(gradientTexture, vec2(intensity, 0.0)).rgb;
200
- }`):(y=null,o=`vec3 getColor(float intensity){
199
+ }`):(_=null,o=`vec3 getColor(float intensity){
201
200
  vec3 blue = vec3(0.0, 0.0, 1.0);
202
201
  vec3 cyan = vec3(0.0, 1.0, 1.0);
203
202
  vec3 green = vec3(0.0, 1.0, 0.0);
@@ -212,12 +211,12 @@ vec3 getColor(float intensity){
212
211
  smoothstep(0.75, 1.0, intensity)*red
213
212
  );
214
213
  return color;
215
- }`),c==null&&(c=!0),c?(d=r!=null?r:[0,1],s=d[0],t=d[1],p=`vec4 alphaFun(vec3 color, float intensity){
214
+ }`),c==null&&(c=!0),c?(p=r!=null?r:[0,1],s=p[0],t=p[1],d=`vec4 alphaFun(vec3 color, float intensity){
216
215
  float alpha = smoothstep(`+s.toFixed(8)+", "+t.toFixed(8)+`, intensity);
217
216
  return vec4(color*alpha, alpha);
218
- }`):p=`vec4 alphaFun(vec3 color, float intensity){
217
+ }`):d=`vec4 alphaFun(vec3 color, float intensity){
219
218
  return vec4(color, 1.0);
220
- }`,this.shader=new st(this.gl,{vertex:Dt,fragment:Lt+(`float linstep(float low, float high, float value){
219
+ }`,this.shader=new Ct(this.gl,{vertex:ii,fragment:ri+(`float linstep(float low, float high, float value){
221
220
  return clamp((value-low)/(high-low), 0.0, 1.0);
222
221
  }
223
222
 
@@ -229,17 +228,17 @@ float fade(float low, float high, float value){
229
228
  }
230
229
 
231
230
  `+o+`
232
- `+p+`
231
+ `+d+`
233
232
 
234
233
  void main(){
235
234
  float intensity = smoothstep(0.0, 1.0, texture2D(source, texcoord).r);
236
235
  vec3 color = getColor(intensity);
237
236
  gl_FragColor = alphaFun(color, intensity);
238
- }`)}),this.width==null&&(this.width=this.canvas.offsetWidth||2),this.height==null&&(this.height=this.canvas.offsetHeight||2),this.canvas.width=this.width,this.canvas.height=this.height,this.gl.viewport(0,0,this.width,this.height),this.quad=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.quad),f=new Float32Array([-1,-1,0,1,1,-1,0,1,-1,1,0,1,-1,1,0,1,1,-1,0,1,1,1,0,1]),this.gl.bufferData(this.gl.ARRAY_BUFFER,f,this.gl.STATIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.heights=new Om(this,this.gl,this.width,this.height)}return l.prototype.adjustSize=function(){let e,t;if(t=this.canvas.offsetWidth||2,e=this.canvas.offsetHeight||2,this.width!==t||this.height!==e)return this.gl.viewport(0,0,t,e),this.canvas.width=t,this.canvas.height=e,this.width=t,this.height=e,this.heights.resize(this.width,this.height)},l.prototype.display=function(){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.heights.nodeFront.bind(0),this.gradientTexture&&this.gradientTexture.bind(1),this.shader.use().int("source",0).int("gradientTexture",1),this.gl.drawArrays(this.gl.TRIANGLES,0,6)},l.prototype.update=function(){return this.heights.update()},l.prototype.clear=function(){return this.heights.clear()},l.prototype.clamp=function(e,t){return e==null&&(e=0),t==null&&(t=1),this.heights.clamp(e,t)},l.prototype.multiply=function(e){return e==null&&(e=.95),this.heights.multiply(e)},l.prototype.blur=function(){return this.heights.blur()},l.prototype.addPoint=function(e,t,r,s){return this.heights.addPoint(e,t,r,s)},l.prototype.addPoints=function(e){let t,r,s,a;for(a=[],r=0,s=e.length;r<s;r++)t=e[r],a.push(this.addPoint(t.x,t.y,t.size,t.intensity));return a},l}();function ha(l){return new km(l)}var ca=new i.WebMercatorProjection,zm={radius:30,height:0,gradient:void 0,useGround:!1,classificationType:2},pa=class extends M{constructor(e,t={}){super(e),this._options={...zm,...t},this._delegate=new i.PrimitiveCollection,this._isGround=this._options.useGround,this._canvas=document.createElement("canvas"),this._canvas.setAttribute("id",e),this._heat=void 0,this._scale=1,this._points=[],this._bounds=new i.Rectangle,this._boundsInMeter=void 0,this._primitive=this._delegate.add(this._isGround?new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}}),classificationType:this._options.classificationType}):new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})})),this._state=m.INITIALIZED}get type(){return M.getLayerType("heat-map")}_addedHook(){this._canvas.style.cssText=`
237
+ }`)}),this.width==null&&(this.width=this.canvas.offsetWidth||2),this.height==null&&(this.height=this.canvas.offsetHeight||2),this.canvas.width=this.width,this.canvas.height=this.height,this.gl.viewport(0,0,this.width,this.height),this.quad=this.gl.createBuffer(),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.quad),u=new Float32Array([-1,-1,0,1,1,-1,0,1,-1,1,0,1,-1,1,0,1,1,-1,0,1,1,1,0,1]),this.gl.bufferData(this.gl.ARRAY_BUFFER,u,this.gl.STATIC_DRAW),this.gl.bindBuffer(this.gl.ARRAY_BUFFER,null),this.heights=new T_(this,this.gl,this.width,this.height)}return n.prototype.adjustSize=function(){let e,t;if(t=this.canvas.offsetWidth||2,e=this.canvas.offsetHeight||2,this.width!==t||this.height!==e)return this.gl.viewport(0,0,t,e),this.canvas.width=t,this.canvas.height=e,this.width=t,this.height=e,this.heights.resize(this.width,this.height)},n.prototype.display=function(){return this.gl.bindBuffer(this.gl.ARRAY_BUFFER,this.quad),this.gl.vertexAttribPointer(0,4,this.gl.FLOAT,!1,0,0),this.heights.nodeFront.bind(0),this.gradientTexture&&this.gradientTexture.bind(1),this.shader.use().int("source",0).int("gradientTexture",1),this.gl.drawArrays(this.gl.TRIANGLES,0,6)},n.prototype.update=function(){return this.heights.update()},n.prototype.clear=function(){return this.heights.clear()},n.prototype.clamp=function(e,t){return e==null&&(e=0),t==null&&(t=1),this.heights.clamp(e,t)},n.prototype.multiply=function(e){return e==null&&(e=.95),this.heights.multiply(e)},n.prototype.blur=function(){return this.heights.blur()},n.prototype.addPoint=function(e,t,r,s){return this.heights.addPoint(e,t,r,s)},n.prototype.addPoints=function(e){let t,r,s,a;for(a=[],r=0,s=e.length;r<s;r++)t=e[r],a.push(this.addPoint(t.x,t.y,t.size,t.intensity));return a},n}();function $a(n){return new E_(n)}var eo=new i.WebMercatorProjection,P_={radius:30,height:0,gradient:void 0,useGround:!1,classificationType:2},to=class extends S{constructor(e,t={}){super(e),this._options={...P_,...t},this._delegate=new i.PrimitiveCollection,this._isGround=this._options.useGround,this._canvas=document.createElement("canvas"),this._canvas.setAttribute("id",e),this._heat=void 0,this._scale=1,this._points=[],this._bounds=new i.Rectangle,this._boundsInMeter=void 0,this._primitive=this._delegate.add(this._isGround?new i.GroundPrimitive({geometryInstances:new i.GeometryInstance({geometry:{}}),classificationType:this._options.classificationType}):new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}})})),this._state=f.INITIALIZED}get type(){return S.getLayerType("heat-map")}_addedHook(){this._canvas.style.cssText=`
239
238
  visibility:hidden;
240
239
  width:${this._viewer.canvas.width}px;
241
240
  height:${this._viewer.canvas.height}px;
242
- `,this._viewer.layerContainer.appendChild(this._canvas),this._points&&this._points.length&&(this._heat=ha({canvas:this._canvas,gradientTexture:this._createGradientTexture()}),this._scale=Math.min(Math.abs(this._boundsInMeter.west-this._boundsInMeter.east)/this._viewer.canvas.width,Math.abs(this._boundsInMeter.north-this._boundsInMeter.south)/this._viewer.canvas.height),this._heat.blur(),this._heat.addPoints(this._parsePoints(this._points)),this._update())}_createGradientTexture(){if(!this._options.gradient)return;let e=document.createElement("canvas");e.width=200,e.height=10;let t=e.getContext("2d"),r=t.createLinearGradient(0,0,200,0);for(let s in this._options.gradient)r.addColorStop(+s,this._options.gradient[s]);return t.fillStyle=r,t.fillRect(0,0,200,10),e}_parsePoints(e){return e.map(t=>{let r=ca.project(i.Cartographic.fromDegrees(t.lng,t.lat));return{x:(r.x-this._boundsInMeter.west)/this._scale,y:(r.y-this._boundsInMeter.south)/this._scale,size:this._options.radius,intensity:t.value||Math.random()}})}_computeBounds(){i.Rectangle.fromCartographicArray(this._points.map(e=>i.Cartographic.fromDegrees(e.lng,e.lat)),this._bounds)}_computeBoundsInMeter(){let e=ca.project(i.Rectangle.southwest(this._bounds)),t=ca.project(i.Rectangle.northeast(this._bounds));this._boundsInMeter=new i.Rectangle(e.x,e.y,t.x,t.y)}_update(){if(!this._points||!this._points.length)return!1;this._heat.adjustSize(),this._heat.update(),this._heat.display(),this._primitive&&this._primitive.geometryInstances&&(this._primitive.geometryInstances.geometry=new i.RectangleGeometry({rectangle:this._bounds,height:this._options.height})),this._primitive.appearance=new i.MaterialAppearance({material:new i.Material({fabric:{type:"Heat-Image",uniforms:{image:this._canvas},source:`
241
+ `,this._viewer.layerContainer.appendChild(this._canvas),this._points&&this._points.length&&(this._heat=$a({canvas:this._canvas,gradientTexture:this._createGradientTexture()}),this._scale=Math.min(Math.abs(this._boundsInMeter.west-this._boundsInMeter.east)/this._viewer.canvas.width,Math.abs(this._boundsInMeter.north-this._boundsInMeter.south)/this._viewer.canvas.height),this._heat.blur(),this._heat.addPoints(this._parsePoints(this._points)),this._update())}_createGradientTexture(){if(!this._options.gradient)return;let e=document.createElement("canvas");e.width=200,e.height=10;let t=e.getContext("2d"),r=t.createLinearGradient(0,0,200,0);for(let s in this._options.gradient)r.addColorStop(+s,this._options.gradient[s]);return t.fillStyle=r,t.fillRect(0,0,200,10),e}_parsePoints(e){return e.map(t=>{let r=eo.project(i.Cartographic.fromDegrees(t.lng,t.lat));return{x:(r.x-this._boundsInMeter.west)/this._scale,y:(r.y-this._boundsInMeter.south)/this._scale,size:this._options.radius,intensity:t.value||Math.random()}})}_computeBounds(){i.Rectangle.fromCartographicArray(this._points.map(e=>i.Cartographic.fromDegrees(e.lng,e.lat)),this._bounds)}_computeBoundsInMeter(){let e=eo.project(i.Rectangle.southwest(this._bounds)),t=eo.project(i.Rectangle.northeast(this._bounds));this._boundsInMeter=new i.Rectangle(e.x,e.y,t.x,t.y)}_update(){if(!this._points||!this._points.length)return!1;this._heat.adjustSize(),this._heat.update(),this._heat.display(),this._primitive&&this._primitive.geometryInstances&&(this._primitive.geometryInstances.geometry=new i.RectangleGeometry({rectangle:this._bounds,height:this._options.height})),this._primitive.appearance=new i.MaterialAppearance({material:new i.Material({fabric:{type:"Heat-Image",uniforms:{image:this._canvas},source:`
243
242
  uniform sampler2D image;
244
243
  czm_material czm_getMaterial(czm_materialInput materialInput){
245
244
  czm_material material = czm_getDefaultMaterial(materialInput);
@@ -252,7 +251,7 @@ void main(){
252
251
  material.alpha = colorImage.a;
253
252
  return material;
254
253
  }
255
- `},translucent:function(e){return!0}}),flat:!0})}setPoints(e){return this._points=e,this._computeBounds(),this._computeBoundsInMeter(),this._viewer&&(this._scale=Math.min(Math.abs(this._boundsInMeter.west-this._boundsInMeter.east)/this._viewer.canvas.width,Math.abs(this._boundsInMeter.north-this._boundsInMeter.south)/this._viewer.canvas.height),this._heat=ha({canvas:this._canvas,gradientTexture:this._createGradientTexture()})),this._heat&&(this._heat.blur(),this._heat.addPoints(this._parsePoints(this._points)),this._update()),this}clear(){return this._heat.clear(),this._points=[],this._state=m.CLEARED,this}};M.registerType("heat-map");var Th=pa;var da=class extends M{constructor(e){super(e),this._delegate=b.create("div","html-layer",void 0),this._delegate.setAttribute("id",this._id),this._renderRemoveCallback=void 0,this._state=m.INITIALIZED}get type(){return M.getLayerType("html")}get show(){return this._show}set show(e){this._show=e,this._delegate.style.visibility=this._show?"visible":"hidden",Object.keys(this._cache).forEach(t=>{this._cache[t].show=e})}_onAdd(e){this._viewer=e,this._viewer.layerContainer.appendChild(this._delegate);let t=this._viewer.scene;this._renderRemoveCallback=t.postRender.addEventListener(()=>{let r=this._viewer.camera.positionWC,s=this._viewer.camera.direction,a=this._viewer.getOffset();this.eachOverlay(o=>{if(o&&o.position){let n=u.transformWGS84ToCartesian(o.position),h=t.globe.ellipsoid.geodeticSurfaceNormal(n,new i.Cartesian3),c=i.SceneTransforms.worldToWindowCoordinates(t,n);c&&(c.x+=a.x,c.y+=a.y),o._updateStyle(c,i.Cartesian3.distance(n,r),i.Cartesian3.dot(s,h)<=0)}},this)},this),this._state=m.ADDED}_onRemove(){this._renderRemoveCallback&&this._renderRemoveCallback(),this._viewer.layerContainer.removeChild(this._delegate),this._state=m.REMOVED}clear(){for(;this._delegate.hasChildNodes();)this._delegate.removeChild(this._delegate.firstChild);return this._cache={},this._state=m.CLEARED,this}};M.registerType("html");var Eh=da;var ma=class extends M{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._state=m.INITIALIZED}get type(){return M.getLayerType("i3s")}clear(){return this._delegate.removeAll(),this._cache={},this._state=m.CLEARED,this}};M.registerType("i3s");var Ph=ma;var ua=class extends M{constructor(e,t,r={}){if(!t)throw new Error("KmlLayer: the url is empty");super(e),this._delegate=i.KmlDataSource.load(t,r),this._state=m.INITIALIZED}get type(){return M.getLayerType("kml")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}};M.registerType("kml");var Mh=ua;var fa=class extends M{constructor(e,t=""){super(e),this._dataSource=i.GeoJsonDataSource.load(t),this._delegate=new i.CustomDataSource(e),this._initLabel(),this._state=m.INITIALIZED}get type(){return M.getLayerType("label")}_createLabel(e){if(e.position&&e.name)return bt.fromEntity(e)}_initLabel(){this._dataSource.then(e=>{e.entities.values.forEach(r=>{let s=this._createLabel(r);this.addOverlay(s)})})}};M.registerType("label");var Ah=fa;var _a=class extends M{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._points=this._delegate.add(new i.PointPrimitiveCollection),this._labels=this._delegate.add(new i.LabelCollection),this._billboards=this._delegate.add(new i.BillboardCollection),this._polylines=this._delegate.add(new i.PolylineCollection),this._clouds=this._delegate.add(new i.CloudCollection),this._state=m.INITIALIZED}get type(){return M.getLayerType("primitive")}get points(){return this._points}get labels(){return this._labels}get billboards(){return this._billboards}get polylines(){return this._polylines}get clouds(){return this._clouds}clear(){return this._delegate&&this._delegate.removeAll(),this._points=this._delegate.add(new i.PointPrimitiveCollection),this._labels=this._delegate.add(new i.LabelCollection),this._billboards=this._delegate.add(new i.BillboardCollection),this._polylines=this._delegate.add(new i.PolylineCollection),this._clouds=this._delegate.add(new i.CloudCollection),this._cache={},this._state=m.CLEARED,this}};M.registerType("primitive");var bh=_a;var ga=class extends M{constructor(e,t,r){super(e),this._delegate=i.ImageryLayer.fromProviderAsync(t,r),this._state=m.INITIALIZED}get type(){return M.getLayerType("raster-tile")}};M.registerType("raster-tile");var Sh=ga;var ya=class extends M{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._state=m.INITIALIZED}get type(){return M.getLayerType("tileset")}clear(){return this._delegate.removeAll(),this._cache={},this._state=m.CLEARED,this}};M.registerType("tileset");var Rt=ya;var va=class extends rt{constructor(e,t,r={}){if(!t)throw new Error("TopoJsonLayer\uFF1Athe url invalid");super(e,t,r),this._state=m.INITIALIZED}get type(){return M.getLayerType("topojson")}};rt.registerType("topojson");var Ih=va;var wa=class extends M{constructor(e){super(e),this._delegate=void 0,this._helpPrimitive=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}}),asynchronous:!0,show:!1}),this._state=m.INITIALIZED}get type(){return M.getLayerType("camera_video")}get show(){return this._show}set show(e){this._show=e,Object.keys(this._cache).forEach(t=>{this._cache[t].enabled=this._show})}_onAdd(e){this._viewer=e,this._delegate=this._viewer.scene.postProcessStages,Object.keys(this._cache).forEach(t=>{this._delegate.add(this._cache[t].delegate)}),this._viewer.scene.primitives.add(this._helpPrimitive),this._state=m.ADDED}_onRemove(){Object.keys(this._cache).forEach(e=>{this._delegate.remove(this._cache[e].delegate)}),this._viewer.scene.primitives.remove(this._helpPrimitive),this._cache={},this._state=m.REMOVED}_updateHelpPrimitive(e,t){if(!e)return!1;this._helpPrimitive.geometryInstances=new i.GeometryInstance({geometry:new i.FrustumOutlineGeometry({origin:e.positionWC,orientation:re.getCameraOrientation(e),frustum:e.frustum}),attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t)}}),this._helpPrimitive.appearance=new i.PerInstanceColorAppearance({translucent:!1,flat:!0})}showHelp(e,t,r){return this._helpPrimitive.show=e,e&&this._updateHelpPrimitive(t.camera,r||i.Color.GREEN),this}clear(){return Object.keys(this._cache).forEach(e=>{this._delegate.remove(this._cache[e].delegate)}),this._cache={},this._state=m.CLEARED,this}};M.registerType("CameraVideo");var Dh=wa;var xa=class extends M{constructor(e){super(e),this._delegate=new i.CustomDataSource(e),this._helpPrimitive=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}}),asynchronous:!0,show:!1}),this._state=m.INITIALIZED}get type(){return M.getLayerType("plane_video")}get show(){return this._show}set show(e){this._show=e,Object.keys(this._cache).forEach(t=>{this._cache[t].enabled=this._show})}_addedHook(){this._viewer.scene.primitives.add(this._helpPrimitive)}_removedHook(){this._viewer.scene.primitives.remove(this._helpPrimitive)}_updateHelpPrimitive(e,t){if(!e)return!1;this._helpPrimitive.geometryInstances=new i.GeometryInstance({geometry:new i.FrustumOutlineGeometry({origin:e.positionWC,orientation:re.getCameraOrientation(e),frustum:e.frustum}),attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t)}}),this._helpPrimitive.appearance=new i.PerInstanceColorAppearance({translucent:!1,flat:!0})}showHelp(e,t,r){return this._helpPrimitive.show=e,e&&this._updateHelpPrimitive(t.camera,r||i.Color.GREEN),this}clear(){return Object.keys(this._cache).forEach(e=>{this._delegate.remove(this._cache[e].delegate)}),this._cache={},this._state=m.CLEARED,this}};M.registerType("PlaneVideo");var Lh=xa;var Ca=class{constructor(e,t){this.u=e,this.v=t,this.m=this.magnitude()}magnitude(){return Math.sqrt(this.u*this.u+this.v*this.v)}directionTo(){let t=Math.atan2(this.u,this.v)*(180/Math.PI);return t<0&&(t+=360),t}directionFrom(){return(this.directionTo()+180)%360}},Ta=Ca;var Ea=class{constructor(e){this.grid=[],this.xmin=e.xmin,this.xmax=e.xmax,this.ymin=e.ymin,this.ymax=e.ymax,this.cols=e.cols,this.rows=e.rows,this.us=e.us,this.vs=e.vs,this.deltaX=e.deltaX,this.deltaY=e.deltaY,this.deltaY<0&&this.ymin<this.ymax?console.warn("[wind-core]: The data is flipY"):(this.ymin=Math.min(e.ymax,e.ymin),this.ymax=Math.max(e.ymax,e.ymin)),this.isFields=!0;let t=Math.ceil((this.xmax-this.xmin)/e.deltaX),r=Math.ceil((this.ymax-this.ymin)/e.deltaY);(t!==this.cols||r!==this.rows)&&console.warn("[wind-core]: The data grid not equal"),this.isContinuous=Math.floor(this.cols*e.deltaX)>=360,this.wrappedX="wrappedX"in e?e.wrappedX:this.xmax>180,this.grid=this.buildGrid(),this.range=this.calculateRange()}buildGrid(){let e=[],t=0,r=this,s=r.rows,a=r.cols,o=r.us,n=r.vs;for(let h=0;h<s;h++){let c=[];for(let p=0;p<a;p++,t++){let f=o[t],y=n[t],_=this.isValid(f)&&this.isValid(y);c[p]=_?new Ta(f,y):null}this.isContinuous&&c.push(c[0]),e[h]=c}return e}release(){this.grid=[]}extent(){return[this.xmin,this.ymin,this.xmax,this.ymax]}bilinearInterpolateVector(e,t,r,s,a,o){let n=1-e,h=1-t,c=n*h,p=e*h,f=n*t,y=e*t,_=r.u*c+s.u*p+a.u*f+o.u*y,d=r.v*c+s.v*p+a.v*f+o.v*y;return new Ta(_,d)}calculateRange(){if(!this.grid||!this.grid[0])return;let e=this.grid.length,t=this.grid[0].length,r,s;for(let a=0;a<e;a++)for(let o=0;o<t;o++){let n=this.grid[a][o];if(n!==null){let h=n.m||n.magnitude();r===void 0?r=h:s===void 0?(s=h,r=Math.min(r,s),s=Math.max(r,s)):(r=Math.min(h,r),s=Math.max(h,s))}}return[r,s]}isValid(e){return e!=null}getWrappedLongitudes(){let e=this.xmin,t=this.xmax;return this.wrappedX&&(this.isContinuous?(e=-180,t=180):(t=this.xmax-360,e=this.xmin-360)),[e,t]}contains(e,t){let r=this.getWrappedLongitudes(),s=r[0],a=r[1],o=e>=s&&e<=a,n;return this.deltaY>=0?n=t>=this.ymin&&t<=this.ymax:n=t>=this.ymax&&t<=this.ymin,o&&n}floorMod(e,t){return e-t*Math.floor(e/t)}getDecimalIndexes(e,t){let r=this.floorMod(e-this.xmin,360)/this.deltaX,s=(this.ymax-t)/this.deltaY;return[r,s]}valueAt(e,t){if(!this.contains(e,t))return null;let r=this.getDecimalIndexes(e,t),s=Math.floor(r[0]),a=Math.floor(r[1]),o=this.clampColumnIndex(s),n=this.clampRowIndex(a);return this.valueAtIndexes(o,n)}interpolatedValueAt(e,t){if(!this.contains(e,t))return null;let r=this.getDecimalIndexes(e,t),s=r[0],a=r[1];return this.interpolatePoint(s,a)}hasValueAt(e,t){return this.valueAt(e,t)!==null}interpolatePoint(e,t){let r=this.getFourSurroundingIndexes(e,t),s=r[0],a=r[1],o=r[2],n=r[3],h=this.getFourSurroundingValues(s,a,o,n);if(h){let c=h[0],p=h[1],f=h[2],y=h[3];return this.bilinearInterpolateVector(e-s,t-o,c,p,f,y)}return null}clampColumnIndex(e){let t=e;e<0&&(t=0);let r=this.cols-1;return e>r&&(t=r),t}clampRowIndex(e){let t=e;e<0&&(t=0);let r=this.rows-1;return e>r&&(t=r),t}getFourSurroundingIndexes(e,t){let r=Math.floor(e),s=r+1;this.isContinuous&&s>=this.cols&&(s=0),s=this.clampColumnIndex(s);let a=this.clampRowIndex(Math.floor(t)),o=this.clampRowIndex(a+1);return[r,s,a,o]}getFourSurroundingValues(e,t,r,s){let a;if(a=this.grid[r]){let o=a[e],n=a[t];if(this.isValid(o)&&this.isValid(n)&&(a=this.grid[s])){let h=a[e],c=a[t];if(this.isValid(h)&&this.isValid(c))return[o,n,h,c]}}return null}valueAtIndexes(e,t){return this.grid[t][e]}lonLatAtIndexes(e,t){let r=this.longitudeAtX(e),s=this.latitudeAtY(t);return[r,s]}longitudeAtX(e){let t=this.deltaX/2,r=this.xmin+t+e*this.deltaX;return this.wrappedX&&(r=r>180?r-360:r),r}latitudeAtY(e){let t=this.deltaY/2;return this.ymax-t-e*this.deltaY}randomize(e,t,r,s){e===void 0&&(e={});let a=Math.random()*(t||this.cols)|0,o=Math.random()*(r||this.rows)|0,n=s([a,o]);return n!==null?(e.x=n[0],e.y=n[1]):(e.x=this.longitudeAtX(a),e.y=this.latitudeAtY(o)),e}checkFields(){return this.isFields}},Rh=Ea;var Pa=class{constructor(e){this.options={},this.particles=[],this.ctx=e,this.animationLoop=void 0,this.animate=this.animate.bind(this)}_indexFor(e,t,r,s){return Math.max(0,Math.min(s.length-1,Math.round((e-t)/(r-t)*(s.length-1))))}_moveParticles(){if(!this.particles||!this.particles.length)return;let e=this.ctx.canvas.width,t=this.ctx.canvas.height,r=this.particles,s=this.options.maxAge,a=typeof this.options.velocityScale=="function"?this.options.velocityScale():this.options.velocityScale;for(let o=0;o<r.length;o++){let n=r[o];n.age>s&&(n.age=0,this.field.randomize(n,e,t,this.unProject));let h=n.x,c=n.y,p=this.field.interpolatedValueAt(h,c);if(p===null)n.age=s;else{let f=h+p.u*a,y=c+p.v*a;this.field.hasValueAt(f,y)?(n.xt=f,n.yt=y,n.m=p.m):(n.x=f,n.y=y,n.age=s)}n.age++}}_drawParticles(){if(!this.particles||!this.particles.length)return;let e=this.particles,t=this.ctx.globalCompositeOperation;this.ctx.globalCompositeOperation="destination-in",this.ctx.fillRect(0,0,this.ctx.canvas.width,this.ctx.canvas.height),this.ctx.globalCompositeOperation=t,this.ctx.globalAlpha=this.options.globalAlpha,this.ctx.fillStyle="rgba(0, 0, 0, "+this.options.globalAlpha+")",this.ctx.lineWidth=this.options.lineWidth?this.options.lineWidth:1,this.ctx.strokeStyle=this.options.colorScale?this.options.colorScale:"#fff";let r=0,s=e.length;if(this.field&&s>0){let a,o;if(this.options.minVelocity&&this.options.maxVelocity)a=this.options.minVelocity,o=this.options.maxVelocity;else{let n=this.field.range;a=n[0],o=n[1]}for(;r<s;r++)this[this.options.useCoordsDraw?"_drawCoordsParticle":"_drawPixelParticle"](e[r],a,o)}}_drawPixelParticle(e,t,r){let s=[e.x,e.y],a=[e.xt,e.yt],o=e.xt-e.x,n=e.yt-e.y;o*o+n*n>20*20||a&&s&&a[0]&&a[1]&&s[0]&&s[1]&&e.age<=this.options.maxAge&&this._drawStroke(s,a,e,t,r)}_drawCoordsParticle(e,t,r){let s=[e.x,e.y],a=[e.xt,e.yt];if(a&&s&&a[0]&&a[1]&&s[0]&&s[1]&&this.intersectsCoordinate(a)&&e.age<=this.options.maxAge){let o=this.project(s),n=this.project(a);this._drawStroke(o,n,e,t,r)}}_drawStroke(e,t,r,s,a){if(e&&t){if(this.ctx.beginPath(),this.ctx.moveTo(e[0],e[1]),this.ctx.lineTo(t[0],t[1]),typeof this.options.colorScale=="function")this.ctx.strokeStyle=this.options.colorScale(r.m);else if(Array.isArray(this.options.colorScale)){let o=this._indexFor(r.m,s,a,this.options.colorScale);this.ctx.strokeStyle=this.options.colorScale[o]}typeof this.options.lineWidth=="function"&&(this.ctx.lineWidth=this.options.lineWidth(r.m)),r.x=r.xt,r.y=r.yt,this.ctx.stroke()}}_prepareParticlePaths(){let e=this.ctx.canvas.width,t=this.ctx.canvas.height,r=typeof this.options.paths=="function"?this.options.paths(this):this.options.paths,s=[];if(!this.field)return[];for(let a=0;a<r;a++)s.push(this.field.randomize({age:Math.floor(Math.random()*this.options.maxAge)},e,t,this.unProject));return s}project(){throw new Error("project must be override")}unProject(){throw new Error("unProject must be override")}intersectsCoordinate(e){throw new Error("must be override")}prerender(){this.field&&(this.particles=this._prepareParticlePaths(),!this.starting&&!this.forceStop&&(this.starting=!0,this._then=Date.now(),this.animate()))}render(){return this._moveParticles(),this._drawParticles(),this}clearCanvas(){this.stop(),this.ctx.clearRect(0,0,this.ctx.canvas.width,this.ctx.canvas.height),this.forceStop=!1}start(){this.starting=!0,this.forceStop=!1,this._then=Date.now(),this.animate()}stop(){cancelAnimationFrame(this.animationLoop),this.starting=!1,this.forceStop=!0}animate(){this.animationLoop&&cancelAnimationFrame(this.animationLoop),this.animationLoop=requestAnimationFrame(this.animate);let e=Date.now(),t=e-this._then;t>this.options.frameRate&&(this._then=e-t%this.options.frameRate,this.render())}setData(e){return this.field=e,this}setOptions(e){var t,r,s,a;return this.options=e,!((t=this.options)!=null&&t.maxAge)&&((r=this.options)!=null&&r.particleAge)&&(this.options.maxAge=Number(this.options.particleAge)),!((s=this.options)!=null&&s.paths)&&((a=this.options)!=null&&a.particleMultiplier)&&(this.options.paths=Math.round(this.options.width*this.options.height*Number(this.options.particleMultiplier))),this}},Oh=Pa;var Nm={globalAlpha:.9,lineWidth:1,colorScale:"#fff",velocityScale:1/25,maxAge:90,paths:800,frameRate:20,useCoordsDraw:!0,gpet:!0},Ma=class extends M{constructor(e,t={}){super(e),this._options={...Nm,...t},this._data=void 0,this._canvas=document.createElement("canvas"),this._state=m.INITIALIZED}get type(){return M.getLayerType("wind")}get show(){return this._show}set show(e){this._show=e,this._canvas.style.visibility=e?"visible":"hidden"}_formatData(e){let t,r;if(e.forEach(function(a){switch(a.header.parameterCategory+","+a.header.parameterNumber){case"1,2":case"2,2":t=a;break;case"1,3":case"2,3":r=a;break}}),!r||!t)return;let s=t.header;return new Rh({xmin:s.lo1,ymin:s.la1,xmax:s.lo2,ymax:s.la2,deltaX:s.dx,deltaY:s.dy,cols:s.nx,rows:s.ny,us:t.data,vs:r.data})}_mountCanvas(){if(!this._viewer||!this._canvas)return;this._canvas.style.cssText="position:absolute; left:0; top:0;user-select:none;pointer-events: none;",this._canvas.className="pggis-wind-layer";let{width:e,height:t}=this._viewer.canvas;this._canvas.width=e,this._canvas.height=t,this._canvas.style.width=e+"px",this._canvas.style.height=t+"px",this._viewer.layerContainer.appendChild(this._canvas)}_addedHook(){let e=this._viewer.scene,t=this._viewer.camera,r=i.Ellipsoid.WGS84;this._delegate.intersectsCoordinate=s=>{if(e.mode===i.SceneMode.SCENE3D){let a=new i.EllipsoidalOccluder(r,t.position),o=i.Cartesian3.fromDegrees(s[0],s[1]);return a.isPointVisible(o)}else if(e.mode===i.SceneMode.SCENE2D)return!(s[0]===-180||s[0]===180);return!0},this._delegate.project=s=>{let a=i.Cartesian3.fromDegrees(s[0],s[1]),o=i.SceneTransforms.worldToWindowCoordinates(e,a);return[o.x,o.y]},this._delegate.unProject=s=>{let a=new i.Cartesian2(s[0],s[1]),o;if(e.mode===i.SceneMode.SCENE3D?o=e.globe.pick(t.getPickRay(a),e):o=e.camera.pickEllipsoid(a,r),!o)return null;let n=r.cartesianToCartographic(o),h=i.Math.toDegrees(n.latitude);return[i.Math.toDegrees(n.longitude),h]}}_onAdd(e){this._viewer=e,this._mountCanvas();let t=this._canvas.getContext("2d");this._delegate||(this._delegate=new Oh(t),this._delegate.setOptions(this._options),this._addedHook()),this._data&&(this._delegate.setData(this._data),this._delegate.prerender(),this._delegate.render())}_onRemove(){this._delegate&&this._delegate.stop(),this._canvas&&this._viewer.layerContainer.removeChild(this._canvas),delete this._canvas}setData(e,t){return e&&e.checkFields&&e.checkFields()?this._data=e:Array.isArray(e)&&(this._data=this._formatData(e)),this._delegate&&(this._delegate.setData(this._data),t&&(this._options={...this._options,...t},this._delegate.setOptions(this._options)),this._delegate.prerender(),this._delegate.render()),this}setOptions(e){return this._options={...this._options,...e},this._delegate&&(this._delegate.setOptions(this._options),this._delegate.prerender(),this._delegate.render()),this}};M.registerType("wind");var kh=Ma;var zh=`/**\r
254
+ `},translucent:function(e){return!0}}),flat:!0})}setPoints(e){return this._points=e,this._computeBounds(),this._computeBoundsInMeter(),this._viewer&&(this._scale=Math.min(Math.abs(this._boundsInMeter.west-this._boundsInMeter.east)/this._viewer.canvas.width,Math.abs(this._boundsInMeter.north-this._boundsInMeter.south)/this._viewer.canvas.height),this._heat=$a({canvas:this._canvas,gradientTexture:this._createGradientTexture()})),this._heat&&(this._heat.blur(),this._heat.addPoints(this._parsePoints(this._points)),this._update()),this}clear(){return this._heat.clear(),this._points=[],this._state=f.CLEARED,this}};S.registerType("heat-map");var yd=to;var io=class extends S{constructor(e){super(e),this._delegate=D.create("div","html-layer",void 0),this._delegate.setAttribute("id",this._id),this._renderRemoveCallback=void 0,this._state=f.INITIALIZED}get type(){return S.getLayerType("html")}get show(){return this._show}set show(e){this._show=e,this._delegate.style.visibility=this._show?"visible":"hidden",Object.keys(this._cache).forEach(t=>{this._cache[t].show=e})}_onAdd(e){this._viewer=e,this._viewer.layerContainer.appendChild(this._delegate);let t=this._viewer.scene;this._renderRemoveCallback=t.postRender.addEventListener(()=>{let r=this._viewer.camera.positionWC,s=this._viewer.camera.direction,a=this._viewer.getOffset();this.eachOverlay(o=>{if(o&&o.position){let l=g.transformWGS84ToCartesian(o.position),h=t.globe.ellipsoid.geodeticSurfaceNormal(l,new i.Cartesian3),c=i.SceneTransforms.worldToWindowCoordinates(t,l);c&&(c.x+=a.x,c.y+=a.y),o._updateStyle(c,i.Cartesian3.distance(l,r),i.Cartesian3.dot(s,h)<=0)}},this)},this),this._state=f.ADDED}_onRemove(){this._renderRemoveCallback&&this._renderRemoveCallback(),this._viewer.layerContainer.removeChild(this._delegate),this._state=f.REMOVED}clear(){for(;this._delegate.hasChildNodes();)this._delegate.removeChild(this._delegate.firstChild);return this._cache={},this._state=f.CLEARED,this}};S.registerType("html");var vd=io;var ro=class extends S{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._state=f.INITIALIZED}get type(){return S.getLayerType("i3s")}clear(){return this._delegate.removeAll(),this._cache={},this._state=f.CLEARED,this}};S.registerType("i3s");var wd=ro;var so=class extends S{constructor(e,t,r={}){if(!t)throw new Error("KmlLayer: the url is empty");super(e),this._delegate=i.KmlDataSource.load(t,r),this._state=f.INITIALIZED}get type(){return S.getLayerType("kml")}get show(){return this._show}set show(e){this._show=e,this._delegate&&this._delegate.then(t=>{t.show=this._show})}eachOverlay(e,t){if(this._delegate)return this._delegate.then(r=>{r.entities.values.forEach(a=>{e.call(t,a)})}),this}};S.registerType("kml");var xd=so;var ao=class extends S{constructor(e,t=""){super(e),this._dataSource=i.GeoJsonDataSource.load(t),this._delegate=new i.CustomDataSource(e),this._initLabel(),this._state=f.INITIALIZED}get type(){return S.getLayerType("label")}_createLabel(e){if(e.position&&e.name)return $t.fromEntity(e)}_initLabel(){this._dataSource.then(e=>{e.entities.values.forEach(r=>{let s=this._createLabel(r);this.addOverlay(s)})})}};S.registerType("label");var Cd=ao;var oo=class extends S{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._points=this._delegate.add(new i.PointPrimitiveCollection),this._labels=this._delegate.add(new i.LabelCollection),this._billboards=this._delegate.add(new i.BillboardCollection),this._polylines=this._delegate.add(new i.PolylineCollection),this._clouds=this._delegate.add(new i.CloudCollection),this._state=f.INITIALIZED}get type(){return S.getLayerType("primitive")}get points(){return this._points}get labels(){return this._labels}get billboards(){return this._billboards}get polylines(){return this._polylines}get clouds(){return this._clouds}clear(){return this._delegate&&this._delegate.removeAll(),this._points=this._delegate.add(new i.PointPrimitiveCollection),this._labels=this._delegate.add(new i.LabelCollection),this._billboards=this._delegate.add(new i.BillboardCollection),this._polylines=this._delegate.add(new i.PolylineCollection),this._clouds=this._delegate.add(new i.CloudCollection),this._cache={},this._state=f.CLEARED,this}};S.registerType("primitive");var Td=oo;var no=class extends S{constructor(e,t,r){super(e),this._delegate=i.ImageryLayer.fromProviderAsync(t,r),this._state=f.INITIALIZED}get type(){return S.getLayerType("raster-tile")}};S.registerType("raster-tile");var Ed=no;var lo=class extends S{constructor(e){super(e),this._delegate=new i.PrimitiveCollection,this._state=f.INITIALIZED}get type(){return S.getLayerType("tileset")}clear(){return this._delegate.removeAll(),this._cache={},this._state=f.CLEARED,this}};S.registerType("tileset");var si=lo;var ho=class extends xt{constructor(e,t,r={}){if(!t)throw new Error("TopoJsonLayer\uFF1Athe url invalid");super(e,t,r),this._state=f.INITIALIZED}get type(){return S.getLayerType("topojson")}};xt.registerType("topojson");var Pd=ho;var co=class extends S{constructor(e){super(e),this._delegate=void 0,this._helpPrimitive=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}}),asynchronous:!0,show:!1}),this._state=f.INITIALIZED}get type(){return S.getLayerType("camera_video")}get show(){return this._show}set show(e){this._show=e,Object.keys(this._cache).forEach(t=>{this._cache[t].enabled=this._show})}_onAdd(e){this._viewer=e,this._delegate=this._viewer.scene.postProcessStages,Object.keys(this._cache).forEach(t=>{this._delegate.add(this._cache[t].delegate)}),this._viewer.scene.primitives.add(this._helpPrimitive),this._state=f.ADDED}_onRemove(){Object.keys(this._cache).forEach(e=>{this._delegate.remove(this._cache[e].delegate)}),this._viewer.scene.primitives.remove(this._helpPrimitive),this._cache={},this._state=f.REMOVED}_updateHelpPrimitive(e,t){if(!e)return!1;this._helpPrimitive.geometryInstances=new i.GeometryInstance({geometry:new i.FrustumOutlineGeometry({origin:e.positionWC,orientation:le.getCameraOrientation(e),frustum:e.frustum}),attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t)}}),this._helpPrimitive.appearance=new i.PerInstanceColorAppearance({translucent:!1,flat:!0})}showHelp(e,t,r){return this._helpPrimitive.show=e,e&&this._updateHelpPrimitive(t.camera,r||i.Color.GREEN),this}clear(){return Object.keys(this._cache).forEach(e=>{this._delegate.remove(this._cache[e].delegate)}),this._cache={},this._state=f.CLEARED,this}};S.registerType("CameraVideo");var Md=co;var po=class extends S{constructor(e){super(e),this._delegate=new i.CustomDataSource(e),this._helpPrimitive=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:{}}),asynchronous:!0,show:!1}),this._state=f.INITIALIZED}get type(){return S.getLayerType("plane_video")}get show(){return this._show}set show(e){this._show=e,Object.keys(this._cache).forEach(t=>{this._cache[t].enabled=this._show})}_addedHook(){this._viewer.scene.primitives.add(this._helpPrimitive)}_removedHook(){this._viewer.scene.primitives.remove(this._helpPrimitive)}_updateHelpPrimitive(e,t){if(!e)return!1;this._helpPrimitive.geometryInstances=new i.GeometryInstance({geometry:new i.FrustumOutlineGeometry({origin:e.positionWC,orientation:le.getCameraOrientation(e),frustum:e.frustum}),attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t)}}),this._helpPrimitive.appearance=new i.PerInstanceColorAppearance({translucent:!1,flat:!0})}showHelp(e,t,r){return this._helpPrimitive.show=e,e&&this._updateHelpPrimitive(t.camera,r||i.Color.GREEN),this}clear(){return Object.keys(this._cache).forEach(e=>{this._delegate.remove(this._cache[e].delegate)}),this._cache={},this._state=f.CLEARED,this}};S.registerType("PlaneVideo");var bd=po;var mo=class{constructor(e,t){this.u=e,this.v=t,this.m=this.magnitude()}magnitude(){return Math.sqrt(this.u*this.u+this.v*this.v)}directionTo(){let t=Math.atan2(this.u,this.v)*(180/Math.PI);return t<0&&(t+=360),t}directionFrom(){return(this.directionTo()+180)%360}},uo=mo;var fo=class{constructor(e){this.grid=[],this.xmin=e.xmin,this.xmax=e.xmax,this.ymin=e.ymin,this.ymax=e.ymax,this.cols=e.cols,this.rows=e.rows,this.us=e.us,this.vs=e.vs,this.deltaX=e.deltaX,this.deltaY=e.deltaY,this.deltaY<0&&this.ymin<this.ymax?console.warn("[wind-core]: The data is flipY"):(this.ymin=Math.min(e.ymax,e.ymin),this.ymax=Math.max(e.ymax,e.ymin)),this.isFields=!0;let t=Math.ceil((this.xmax-this.xmin)/e.deltaX),r=Math.ceil((this.ymax-this.ymin)/e.deltaY);(t!==this.cols||r!==this.rows)&&console.warn("[wind-core]: The data grid not equal"),this.isContinuous=Math.floor(this.cols*e.deltaX)>=360,this.wrappedX="wrappedX"in e?e.wrappedX:this.xmax>180,this.grid=this.buildGrid(),this.range=this.calculateRange()}buildGrid(){let e=[],t=0,r=this,s=r.rows,a=r.cols,o=r.us,l=r.vs;for(let h=0;h<s;h++){let c=[];for(let d=0;d<a;d++,t++){let u=o[t],_=l[t],m=this.isValid(u)&&this.isValid(_);c[d]=m?new uo(u,_):null}this.isContinuous&&c.push(c[0]),e[h]=c}return e}release(){this.grid=[]}extent(){return[this.xmin,this.ymin,this.xmax,this.ymax]}bilinearInterpolateVector(e,t,r,s,a,o){let l=1-e,h=1-t,c=l*h,d=e*h,u=l*t,_=e*t,m=r.u*c+s.u*d+a.u*u+o.u*_,p=r.v*c+s.v*d+a.v*u+o.v*_;return new uo(m,p)}calculateRange(){if(!this.grid||!this.grid[0])return;let e=this.grid.length,t=this.grid[0].length,r,s;for(let a=0;a<e;a++)for(let o=0;o<t;o++){let l=this.grid[a][o];if(l!==null){let h=l.m||l.magnitude();r===void 0?r=h:s===void 0?(s=h,r=Math.min(r,s),s=Math.max(r,s)):(r=Math.min(h,r),s=Math.max(h,s))}}return[r,s]}isValid(e){return e!=null}getWrappedLongitudes(){let e=this.xmin,t=this.xmax;return this.wrappedX&&(this.isContinuous?(e=-180,t=180):(t=this.xmax-360,e=this.xmin-360)),[e,t]}contains(e,t){let r=this.getWrappedLongitudes(),s=r[0],a=r[1],o=e>=s&&e<=a,l;return this.deltaY>=0?l=t>=this.ymin&&t<=this.ymax:l=t>=this.ymax&&t<=this.ymin,o&&l}floorMod(e,t){return e-t*Math.floor(e/t)}getDecimalIndexes(e,t){let r=this.floorMod(e-this.xmin,360)/this.deltaX,s=(this.ymax-t)/this.deltaY;return[r,s]}valueAt(e,t){if(!this.contains(e,t))return null;let r=this.getDecimalIndexes(e,t),s=Math.floor(r[0]),a=Math.floor(r[1]),o=this.clampColumnIndex(s),l=this.clampRowIndex(a);return this.valueAtIndexes(o,l)}interpolatedValueAt(e,t){if(!this.contains(e,t))return null;let r=this.getDecimalIndexes(e,t),s=r[0],a=r[1];return this.interpolatePoint(s,a)}hasValueAt(e,t){return this.valueAt(e,t)!==null}interpolatePoint(e,t){let r=this.getFourSurroundingIndexes(e,t),s=r[0],a=r[1],o=r[2],l=r[3],h=this.getFourSurroundingValues(s,a,o,l);if(h){let c=h[0],d=h[1],u=h[2],_=h[3];return this.bilinearInterpolateVector(e-s,t-o,c,d,u,_)}return null}clampColumnIndex(e){let t=e;e<0&&(t=0);let r=this.cols-1;return e>r&&(t=r),t}clampRowIndex(e){let t=e;e<0&&(t=0);let r=this.rows-1;return e>r&&(t=r),t}getFourSurroundingIndexes(e,t){let r=Math.floor(e),s=r+1;this.isContinuous&&s>=this.cols&&(s=0),s=this.clampColumnIndex(s);let a=this.clampRowIndex(Math.floor(t)),o=this.clampRowIndex(a+1);return[r,s,a,o]}getFourSurroundingValues(e,t,r,s){let a;if(a=this.grid[r]){let o=a[e],l=a[t];if(this.isValid(o)&&this.isValid(l)&&(a=this.grid[s])){let h=a[e],c=a[t];if(this.isValid(h)&&this.isValid(c))return[o,l,h,c]}}return null}valueAtIndexes(e,t){return this.grid[t][e]}lonLatAtIndexes(e,t){let r=this.longitudeAtX(e),s=this.latitudeAtY(t);return[r,s]}longitudeAtX(e){let t=this.deltaX/2,r=this.xmin+t+e*this.deltaX;return this.wrappedX&&(r=r>180?r-360:r),r}latitudeAtY(e){let t=this.deltaY/2;return this.ymax-t-e*this.deltaY}randomize(e,t,r,s){e===void 0&&(e={});let a=Math.random()*(t||this.cols)|0,o=Math.random()*(r||this.rows)|0,l=s([a,o]);return l!==null?(e.x=l[0],e.y=l[1]):(e.x=this.longitudeAtX(a),e.y=this.latitudeAtY(o)),e}checkFields(){return this.isFields}},Ad=fo;var _o=class{constructor(e){this.options={},this.particles=[],this.ctx=e,this.animationLoop=void 0,this.animate=this.animate.bind(this)}_indexFor(e,t,r,s){return Math.max(0,Math.min(s.length-1,Math.round((e-t)/(r-t)*(s.length-1))))}_moveParticles(){if(!this.particles||!this.particles.length)return;let e=this.ctx.canvas.width,t=this.ctx.canvas.height,r=this.particles,s=this.options.maxAge,a=typeof this.options.velocityScale=="function"?this.options.velocityScale():this.options.velocityScale;for(let o=0;o<r.length;o++){let l=r[o];l.age>s&&(l.age=0,this.field.randomize(l,e,t,this.unProject));let h=l.x,c=l.y,d=this.field.interpolatedValueAt(h,c);if(d===null)l.age=s;else{let u=h+d.u*a,_=c+d.v*a;this.field.hasValueAt(u,_)?(l.xt=u,l.yt=_,l.m=d.m):(l.x=u,l.y=_,l.age=s)}l.age++}}_drawParticles(){if(!this.particles||!this.particles.length)return;let e=this.particles,t=this.ctx.globalCompositeOperation;this.ctx.globalCompositeOperation="destination-in",this.ctx.fillRect(0,0,this.ctx.canvas.width,this.ctx.canvas.height),this.ctx.globalCompositeOperation=t,this.ctx.globalAlpha=this.options.globalAlpha,this.ctx.fillStyle="rgba(0, 0, 0, "+this.options.globalAlpha+")",this.ctx.lineWidth=this.options.lineWidth?this.options.lineWidth:1,this.ctx.strokeStyle=this.options.colorScale?this.options.colorScale:"#fff";let r=0,s=e.length;if(this.field&&s>0){let a,o;if(this.options.minVelocity&&this.options.maxVelocity)a=this.options.minVelocity,o=this.options.maxVelocity;else{let l=this.field.range;a=l[0],o=l[1]}for(;r<s;r++)this[this.options.useCoordsDraw?"_drawCoordsParticle":"_drawPixelParticle"](e[r],a,o)}}_drawPixelParticle(e,t,r){let s=[e.x,e.y],a=[e.xt,e.yt],o=e.xt-e.x,l=e.yt-e.y;o*o+l*l>20*20||a&&s&&a[0]&&a[1]&&s[0]&&s[1]&&e.age<=this.options.maxAge&&this._drawStroke(s,a,e,t,r)}_drawCoordsParticle(e,t,r){let s=[e.x,e.y],a=[e.xt,e.yt];if(a&&s&&a[0]&&a[1]&&s[0]&&s[1]&&this.intersectsCoordinate(a)&&e.age<=this.options.maxAge){let o=this.project(s),l=this.project(a);this._drawStroke(o,l,e,t,r)}}_drawStroke(e,t,r,s,a){if(e&&t){if(this.ctx.beginPath(),this.ctx.moveTo(e[0],e[1]),this.ctx.lineTo(t[0],t[1]),typeof this.options.colorScale=="function")this.ctx.strokeStyle=this.options.colorScale(r.m);else if(Array.isArray(this.options.colorScale)){let o=this._indexFor(r.m,s,a,this.options.colorScale);this.ctx.strokeStyle=this.options.colorScale[o]}typeof this.options.lineWidth=="function"&&(this.ctx.lineWidth=this.options.lineWidth(r.m)),r.x=r.xt,r.y=r.yt,this.ctx.stroke()}}_prepareParticlePaths(){let e=this.ctx.canvas.width,t=this.ctx.canvas.height,r=typeof this.options.paths=="function"?this.options.paths(this):this.options.paths,s=[];if(!this.field)return[];for(let a=0;a<r;a++)s.push(this.field.randomize({age:Math.floor(Math.random()*this.options.maxAge)},e,t,this.unProject));return s}project(){throw new Error("project must be override")}unProject(){throw new Error("unProject must be override")}intersectsCoordinate(e){throw new Error("must be override")}prerender(){this.field&&(this.particles=this._prepareParticlePaths(),!this.starting&&!this.forceStop&&(this.starting=!0,this._then=Date.now(),this.animate()))}render(){return this._moveParticles(),this._drawParticles(),this}clearCanvas(){this.stop(),this.ctx.clearRect(0,0,this.ctx.canvas.width,this.ctx.canvas.height),this.forceStop=!1}start(){this.starting=!0,this.forceStop=!1,this._then=Date.now(),this.animate()}stop(){cancelAnimationFrame(this.animationLoop),this.starting=!1,this.forceStop=!0}animate(){this.animationLoop&&cancelAnimationFrame(this.animationLoop),this.animationLoop=requestAnimationFrame(this.animate);let e=Date.now(),t=e-this._then;t>this.options.frameRate&&(this._then=e-t%this.options.frameRate,this.render())}setData(e){return this.field=e,this}setOptions(e){var t,r,s,a;return this.options=e,!((t=this.options)!=null&&t.maxAge)&&((r=this.options)!=null&&r.particleAge)&&(this.options.maxAge=Number(this.options.particleAge)),!((s=this.options)!=null&&s.paths)&&((a=this.options)!=null&&a.particleMultiplier)&&(this.options.paths=Math.round(this.options.width*this.options.height*Number(this.options.particleMultiplier))),this}},Sd=_o;var M_={globalAlpha:.9,lineWidth:1,colorScale:"#fff",velocityScale:1/25,maxAge:90,paths:800,frameRate:20,useCoordsDraw:!0,gpet:!0},go=class extends S{constructor(e,t={}){super(e),this._options={...M_,...t},this._data=void 0,this._canvas=document.createElement("canvas"),this._state=f.INITIALIZED}get type(){return S.getLayerType("wind")}get show(){return this._show}set show(e){this._show=e,this._canvas.style.visibility=e?"visible":"hidden"}_formatData(e){let t,r;if(e.forEach(function(a){switch(a.header.parameterCategory+","+a.header.parameterNumber){case"1,2":case"2,2":t=a;break;case"1,3":case"2,3":r=a;break}}),!r||!t)return;let s=t.header;return new Ad({xmin:s.lo1,ymin:s.la1,xmax:s.lo2,ymax:s.la2,deltaX:s.dx,deltaY:s.dy,cols:s.nx,rows:s.ny,us:t.data,vs:r.data})}_mountCanvas(){if(!this._viewer||!this._canvas)return;this._canvas.style.cssText="position:absolute; left:0; top:0;user-select:none;pointer-events: none;",this._canvas.className="pggis-wind-layer";let{width:e,height:t}=this._viewer.canvas;this._canvas.width=e,this._canvas.height=t,this._canvas.style.width=e+"px",this._canvas.style.height=t+"px",this._viewer.layerContainer.appendChild(this._canvas)}_addedHook(){let e=this._viewer.scene,t=this._viewer.camera,r=i.Ellipsoid.WGS84;this._delegate.intersectsCoordinate=s=>{if(e.mode===i.SceneMode.SCENE3D){let a=new i.EllipsoidalOccluder(r,t.position),o=i.Cartesian3.fromDegrees(s[0],s[1]);return a.isPointVisible(o)}else if(e.mode===i.SceneMode.SCENE2D)return!(s[0]===-180||s[0]===180);return!0},this._delegate.project=s=>{let a=i.Cartesian3.fromDegrees(s[0],s[1]),o=i.SceneTransforms.worldToWindowCoordinates(e,a);return[o.x,o.y]},this._delegate.unProject=s=>{let a=new i.Cartesian2(s[0],s[1]),o;if(e.mode===i.SceneMode.SCENE3D?o=e.globe.pick(t.getPickRay(a),e):o=e.camera.pickEllipsoid(a,r),!o)return null;let l=r.cartesianToCartographic(o),h=i.Math.toDegrees(l.latitude);return[i.Math.toDegrees(l.longitude),h]}}_onAdd(e){this._viewer=e,this._mountCanvas();let t=this._canvas.getContext("2d");this._delegate||(this._delegate=new Sd(t),this._delegate.setOptions(this._options),this._addedHook()),this._data&&(this._delegate.setData(this._data),this._delegate.prerender(),this._delegate.render())}_onRemove(){this._delegate&&this._delegate.stop(),this._canvas&&this._viewer.layerContainer.removeChild(this._canvas),delete this._canvas}setData(e,t){return e&&e.checkFields&&e.checkFields()?this._data=e:Array.isArray(e)&&(this._data=this._formatData(e)),this._delegate&&(this._delegate.setData(this._data),t&&(this._options={...this._options,...t},this._delegate.setOptions(this._options)),this._delegate.prerender(),this._delegate.render()),this}setOptions(e){return this._options={...this._options,...e},this._delegate&&(this._delegate.setOptions(this._options),this._delegate.prerender(),this._delegate.render()),this}};S.registerType("wind");var Id=go;var Dd=`/**\r
256
255
  * @license\r
257
256
  * Cellular noise ("Worley noise") in 2D in GLSL.\r
258
257
  * Copyright (c) Stefan Gustavson 2011-04-19. All rights reserved.\r
@@ -329,7 +328,7 @@ vec2 czm_cellular(vec2 P)\r
329
328
  d1.y = min(d1.y, d2.x);// F2 is in d1.y, we're done.\r
330
329
  return sqrt(d1.xy);\r
331
330
  }\r
332
- `;var Nh=`/**\r
331
+ `;var Ld=`/**\r
333
332
  * @license\r
334
333
  * Description : Array and textureless GLSL 2D/3D/4D simplex\r
335
334
  * noise functions.\r
@@ -611,7 +610,7 @@ float czm_snoise(vec4 v)\r
611
610
  return 49.0 * (dot(m0*m0, vec3(dot(p0, x0), dot(p1, x1), dot(p2, x2)))\r
612
611
  + dot(m1*m1, vec2(dot(p3, x3), dot(p4, x4))));\r
613
612
  }\r
614
- `;var Fh=`uniform vec4 asphaltColor;\r
613
+ `;var Rd=`uniform vec4 asphaltColor;\r
615
614
  uniform float bumpSize;\r
616
615
  uniform float roughness;\r
617
616
  \r
@@ -635,7 +634,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
635
634
  \r
636
635
  return material;\r
637
636
  }\r
638
- `;var Wh=`uniform vec4 lightColor;\r
637
+ `;var kd=`uniform vec4 lightColor;\r
639
638
  uniform vec4 darkColor;\r
640
639
  uniform float frequency;\r
641
640
  \r
@@ -652,7 +651,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
652
651
  \r
653
652
  return material;\r
654
653
  }\r
655
- `;var Gh=`uniform vec4 brickColor;\r
654
+ `;var Od=`uniform vec4 brickColor;\r
656
655
  uniform vec4 mortarColor;\r
657
656
  uniform vec2 brickSize;\r
658
657
  uniform vec2 brickPct;\r
@@ -693,7 +692,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
693
692
  \r
694
693
  return material;\r
695
694
  }\r
696
- `;var Hh=`uniform vec4 cementColor;\r
695
+ `;var Nd=`uniform vec4 cementColor;\r
697
696
  uniform float grainScale;\r
698
697
  uniform float roughness;\r
699
698
  \r
@@ -711,7 +710,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
711
710
  \r
712
711
  return material;\r
713
712
  }\r
714
- `;var Bh=`uniform vec4 color;\r
713
+ `;var zd=`uniform vec4 color;\r
715
714
  uniform float time;\r
716
715
  \r
717
716
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -732,7 +731,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
732
731
  \r
733
732
  return material;\r
734
733
  }\r
735
- `;var Uh=`uniform vec4 lightColor;\r
734
+ `;var Fd=`uniform vec4 lightColor;\r
736
735
  uniform vec4 darkColor;\r
737
736
  uniform float frequency;\r
738
737
  \r
@@ -749,7 +748,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
749
748
  \r
750
749
  return material;\r
751
750
  }\r
752
- `;var Vh=`czm_material czm_getMaterial(czm_materialInput materialInput){\r
751
+ `;var Gd=`czm_material czm_getMaterial(czm_materialInput materialInput){\r
753
752
  czm_material material = czm_getDefaultMaterial(materialInput);\r
754
753
  \r
755
754
  vec3 normalWC = normalize(czm_inverseViewRotation * material.normal);\r
@@ -760,7 +759,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
760
759
  \r
761
760
  return material;\r
762
761
  }\r
763
- `;var jh=`uniform vec4 grassColor;\r
762
+ `;var Hd=`uniform vec4 grassColor;\r
764
763
  uniform vec4 dirtColor;\r
765
764
  uniform float patchiness;\r
766
765
  \r
@@ -787,7 +786,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
787
786
  \r
788
787
  return material;\r
789
788
  }\r
790
- `;var Zh=`uniform samplerCube cubeMap;\r
789
+ `;var Wd=`uniform samplerCube cubeMap;\r
791
790
  \r
792
791
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
793
792
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -799,7 +798,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
799
798
  \r
800
799
  return material;\r
801
800
  }\r
802
- `;var Yh=`uniform samplerCube cubeMap;\r
801
+ `;var Bd=`uniform samplerCube cubeMap;\r
803
802
  uniform float indexOfRefractionRatio;\r
804
803
  \r
805
804
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -812,7 +811,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
812
811
  \r
813
812
  return material;\r
814
813
  }\r
815
- `;var Jh=`uniform vec4 lightColor;\r
814
+ `;var Ud=`uniform vec4 lightColor;\r
816
815
  uniform vec4 darkColor;\r
817
816
  uniform float frequency;\r
818
817
  \r
@@ -828,7 +827,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
828
827
  \r
829
828
  return material;\r
830
829
  }\r
831
- `;var qh=`uniform vec4 lightWoodColor;\r
830
+ `;var Vd=`uniform vec4 lightWoodColor;\r
832
831
  uniform vec4 darkWoodColor;\r
833
832
  uniform float ringFrequency;\r
834
833
  uniform vec2 noiseScale;\r
@@ -863,7 +862,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
863
862
  \r
864
863
  return material;\r
865
864
  }\r
866
- `;i.ShaderSource._czmBuiltinsAndUniforms.czm_cellular=zh;i.ShaderSource._czmBuiltinsAndUniforms.czm_snoise=Nh;i.Material.AsphaltType="Asphalt";i.Material._materialCache.addMaterial(i.Material.AsphaltType,{fabric:{type:i.Material.AsphaltType,uniforms:{asphaltColor:new i.Color(.15,.15,.15,1),bumpSize:.02,roughness:.2},source:Fh},translucent:function(l){return l.uniforms.asphaltColor.alpha<1}});i.Material.BlobType="Blob";i.Material._materialCache.addMaterial(i.Material.BlobType,{fabric:{type:i.Material.BlobType,uniforms:{lightColor:new i.Color(1,1,1,.5),darkColor:new i.Color(0,0,1,.5),frequency:10},source:Wh},translucent:function(l){var e=l.uniforms;return e.lightColor.alpha<1||e.darkColor.alpha<0}});i.Material.BrickType="Brick";i.Material._materialCache.addMaterial(i.Material.BrickType,{fabric:{type:i.Material.BrickType,uniforms:{brickColor:new i.Color(.6,.3,.1,1),mortarColor:new i.Color(.8,.8,.7,1),brickSize:new i.Cartesian2(.3,.15),brickPct:new i.Cartesian2(.9,.85),brickRoughness:.2,mortarRoughness:.1},source:Gh},translucent:function(l){var e=l.uniforms;return e.brickColor.alpha<1||e.mortarColor.alpha<1}});i.Material.CementType="Cement";i.Material._materialCache.addMaterial(i.Material.CementType,{fabric:{type:i.Material.CementType,uniforms:{cementColor:new i.Color(.95,.95,.85,1),grainScale:.01,roughness:.3},source:Hh},translucent:function(l){return l.uniforms.cementColor.alpha<1}});i.Material.ErosionType="Erosion";i.Material._materialCache.addMaterial(i.Material.ErosionType,{fabric:{type:i.Material.ErosionType,uniforms:{color:new i.Color(1,0,0,.5),time:1},source:Bh},translucent:function(l){return l.uniforms.color.alpha<1}});i.Material.FacetType="Facet";i.Material._materialCache.addMaterial(i.Material.FacetType,{fabric:{type:i.Material.FacetType,uniforms:{lightColor:new i.Color(.25,.25,.25,.75),darkColor:new i.Color(.75,.75,.75,.75),frequency:10},source:Uh},translucent:function(l){var e=l.uniforms;return e.lightColor.alpha<1||e.darkColor.alpha<0}});i.Material.FresnelType="Fresnel";i.Material._materialCache.addMaterial(i.Material.FresnelType,{fabric:{type:i.Material.FresnelType,materials:{reflection:{type:i.Material.ReflectionType},refraction:{type:i.Material.RefractionType}},source:Vh},translucent:!1});i.Material.GrassType="Grass";i.Material._materialCache.addMaterial(i.Material.GrassType,{fabric:{type:i.Material.GrassType,uniforms:{grassColor:new i.Color(.25,.4,.1,1),dirtColor:new i.Color(.1,.1,.1,1),patchiness:1.5},source:jh},translucent:function(l){var e=l.uniforms;return e.grassColor.alpha<1||e.dirtColor.alpha<1}});i.Material.ReflectionType="Reflection";i.Material._materialCache.addMaterial(i.Material.ReflectionType,{fabric:{type:i.Material.ReflectionType,uniforms:{cubeMap:i.Material.DefaultCubeMapId,channels:"rgb"},source:Zh},translucent:!1});i.Material.RefractionType="Refraction";i.Material._materialCache.addMaterial(i.Material.RefractionType,{fabric:{type:i.Material.RefractionType,uniforms:{cubeMap:i.Material.DefaultCubeMapId,channels:"rgb",indexOfRefractionRatio:.9},source:Yh},translucent:!1});i.Material.TyeDyeType="TieDye";i.Material._materialCache.addMaterial(i.Material.TyeDyeType,{fabric:{type:i.Material.TyeDyeType,uniforms:{lightColor:new i.Color(1,1,0,.75),darkColor:new i.Color(1,0,0,.75),frequency:5},source:Jh},translucent:function(l){var e=l.uniforms;return e.lightColor.alpha<1||e.darkColor.alpha<0}});i.Material.WoodType="Wood";i.Material._materialCache.addMaterial(i.Material.WoodType,{fabric:{type:i.Material.WoodType,uniforms:{lightWoodColor:new i.Color(.6,.3,.1,1),darkWoodColor:new i.Color(.4,.2,.07,1),ringFrequency:3,noiseScale:new i.Cartesian2(.7,.5),grainFrequency:27},source:qh},translucent:function(l){let e=l.uniforms;return e.lightWoodColor.alpha<1||e.darkWoodColor.alpha<1}});var Xh=`uniform vec4 color;\r
865
+ `;i.ShaderSource._czmBuiltinsAndUniforms.czm_cellular=Dd;i.ShaderSource._czmBuiltinsAndUniforms.czm_snoise=Ld;i.Material.AsphaltType="Asphalt";i.Material._materialCache.addMaterial(i.Material.AsphaltType,{fabric:{type:i.Material.AsphaltType,uniforms:{asphaltColor:new i.Color(.15,.15,.15,1),bumpSize:.02,roughness:.2},source:Rd},translucent:function(n){return n.uniforms.asphaltColor.alpha<1}});i.Material.BlobType="Blob";i.Material._materialCache.addMaterial(i.Material.BlobType,{fabric:{type:i.Material.BlobType,uniforms:{lightColor:new i.Color(1,1,1,.5),darkColor:new i.Color(0,0,1,.5),frequency:10},source:kd},translucent:function(n){var e=n.uniforms;return e.lightColor.alpha<1||e.darkColor.alpha<0}});i.Material.BrickType="Brick";i.Material._materialCache.addMaterial(i.Material.BrickType,{fabric:{type:i.Material.BrickType,uniforms:{brickColor:new i.Color(.6,.3,.1,1),mortarColor:new i.Color(.8,.8,.7,1),brickSize:new i.Cartesian2(.3,.15),brickPct:new i.Cartesian2(.9,.85),brickRoughness:.2,mortarRoughness:.1},source:Od},translucent:function(n){var e=n.uniforms;return e.brickColor.alpha<1||e.mortarColor.alpha<1}});i.Material.CementType="Cement";i.Material._materialCache.addMaterial(i.Material.CementType,{fabric:{type:i.Material.CementType,uniforms:{cementColor:new i.Color(.95,.95,.85,1),grainScale:.01,roughness:.3},source:Nd},translucent:function(n){return n.uniforms.cementColor.alpha<1}});i.Material.ErosionType="Erosion";i.Material._materialCache.addMaterial(i.Material.ErosionType,{fabric:{type:i.Material.ErosionType,uniforms:{color:new i.Color(1,0,0,.5),time:1},source:zd},translucent:function(n){return n.uniforms.color.alpha<1}});i.Material.FacetType="Facet";i.Material._materialCache.addMaterial(i.Material.FacetType,{fabric:{type:i.Material.FacetType,uniforms:{lightColor:new i.Color(.25,.25,.25,.75),darkColor:new i.Color(.75,.75,.75,.75),frequency:10},source:Fd},translucent:function(n){var e=n.uniforms;return e.lightColor.alpha<1||e.darkColor.alpha<0}});i.Material.FresnelType="Fresnel";i.Material._materialCache.addMaterial(i.Material.FresnelType,{fabric:{type:i.Material.FresnelType,materials:{reflection:{type:i.Material.ReflectionType},refraction:{type:i.Material.RefractionType}},source:Gd},translucent:!1});i.Material.GrassType="Grass";i.Material._materialCache.addMaterial(i.Material.GrassType,{fabric:{type:i.Material.GrassType,uniforms:{grassColor:new i.Color(.25,.4,.1,1),dirtColor:new i.Color(.1,.1,.1,1),patchiness:1.5},source:Hd},translucent:function(n){var e=n.uniforms;return e.grassColor.alpha<1||e.dirtColor.alpha<1}});i.Material.ReflectionType="Reflection";i.Material._materialCache.addMaterial(i.Material.ReflectionType,{fabric:{type:i.Material.ReflectionType,uniforms:{cubeMap:i.Material.DefaultCubeMapId,channels:"rgb"},source:Wd},translucent:!1});i.Material.RefractionType="Refraction";i.Material._materialCache.addMaterial(i.Material.RefractionType,{fabric:{type:i.Material.RefractionType,uniforms:{cubeMap:i.Material.DefaultCubeMapId,channels:"rgb",indexOfRefractionRatio:.9},source:Bd},translucent:!1});i.Material.TyeDyeType="TieDye";i.Material._materialCache.addMaterial(i.Material.TyeDyeType,{fabric:{type:i.Material.TyeDyeType,uniforms:{lightColor:new i.Color(1,1,0,.75),darkColor:new i.Color(1,0,0,.75),frequency:5},source:Ud},translucent:function(n){var e=n.uniforms;return e.lightColor.alpha<1||e.darkColor.alpha<0}});i.Material.WoodType="Wood";i.Material._materialCache.addMaterial(i.Material.WoodType,{fabric:{type:i.Material.WoodType,uniforms:{lightWoodColor:new i.Color(.6,.3,.1,1),darkWoodColor:new i.Color(.4,.2,.07,1),ringFrequency:3,noiseScale:new i.Cartesian2(.7,.5),grainFrequency:27},source:Vd},translucent:function(n){let e=n.uniforms;return e.lightWoodColor.alpha<1||e.darkWoodColor.alpha<1}});var Zd=`uniform vec4 color;\r
867
866
  uniform float speed;\r
868
867
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
869
868
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -880,7 +879,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
880
879
  material.diffuse = color.rgb * a * 3.0;\r
881
880
  return material;\r
882
881
  }\r
883
- `;var Qh=`uniform vec4 color;\r
882
+ `;var jd=`uniform vec4 color;\r
884
883
  uniform float speed;\r
885
884
  \r
886
885
  vec3 circlePing(float r, float innerTail, float frontierBorder, float timeResetSeconds, float radarPingSpeed, float fadeDistance){\r
@@ -904,7 +903,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
904
903
  material.diffuse = flagColor.rgb;\r
905
904
  return material;\r
906
905
  }\r
907
- `;var Kh=`uniform vec4 color;\r
906
+ `;var Yd=`uniform vec4 color;\r
908
907
  uniform float speed;\r
909
908
  \r
910
909
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -920,7 +919,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
920
919
  }\r
921
920
  return material;\r
922
921
  }\r
923
- `;var $h=`uniform vec4 color;\r
922
+ `;var qd=`uniform vec4 color;\r
924
923
  uniform float speed;\r
925
924
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
926
925
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -936,7 +935,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
936
935
  material.diffuse = color.rgb * d;\r
937
936
  return material;\r
938
937
  }\r
939
- `;var ec=`uniform vec4 color;\r
938
+ `;var Jd=`uniform vec4 color;\r
940
939
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
941
940
  czm_material material = czm_getDefaultMaterial(materialInput);\r
942
941
  vec2 st = materialInput.st;\r
@@ -953,7 +952,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
953
952
  material.alpha = pow(alpha, 4.0);\r
954
953
  return material;\r
955
954
  }\r
956
- `;var tc=`uniform vec4 color;\r
955
+ `;var Xd=`uniform vec4 color;\r
957
956
  uniform sampler2D image;\r
958
957
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
959
958
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -971,7 +970,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
971
970
  material.alpha = colorImage.a * pow(length, 0.5);\r
972
971
  return material;\r
973
972
  }\r
974
- `;var ic=`uniform vec4 color;\r
973
+ `;var Qd=`uniform vec4 color;\r
975
974
  uniform float speed;\r
976
975
  \r
977
976
  float circle(vec2 uv, float r, float blur) {\r
@@ -997,7 +996,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput)\r
997
996
  material.alpha *= color.a;\r
998
997
  return material;\r
999
998
  }\r
1000
- `;var rc=`uniform vec4 color;\r
999
+ `;var Kd=`uniform vec4 color;\r
1001
1000
  uniform float speed;\r
1002
1001
  \r
1003
1002
  #define PI 3.14159265359\r
@@ -1021,7 +1020,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1021
1020
  material.diffuse = color.rgb * a * b * 3.0;\r
1022
1021
  return material;\r
1023
1022
  }\r
1024
- `;var sc=`uniform vec4 color;\r
1023
+ `;var $d=`uniform vec4 color;\r
1025
1024
  uniform float speed;\r
1026
1025
  \r
1027
1026
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -1039,7 +1038,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1039
1038
  material.diffuse = fragColor * (inten1 + inten2);\r
1040
1039
  return material;\r
1041
1040
  }\r
1042
- `;var ac=`uniform vec4 color;\r
1041
+ `;var ep=`uniform vec4 color;\r
1043
1042
  uniform float speed;\r
1044
1043
  uniform float count;\r
1045
1044
  uniform float gradient;\r
@@ -1087,7 +1086,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput)\r
1087
1086
  return material;\r
1088
1087
  }\r
1089
1088
  \r
1090
- `;i.Material.CircleBlurType="CircleBlur";i.Material._materialCache.addMaterial(i.Material.CircleBlurType,{fabric:{type:i.Material.CircleBlurType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:Xh},translucent:function(l){return!0}});i.Material.CircleDiffuseType="CircleDiffuse";i.Material._materialCache.addMaterial(i.Material.CircleDiffuseType,{fabric:{type:i.Material.CircleDiffuseType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:Qh},translucent:function(l){return!0}});i.Material.CircleFadeType="CircleFade";i.Material._materialCache.addMaterial(i.Material.CircleFadeType,{fabric:{type:i.Material.CircleFadeType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:Kh},translucent:function(l){return!0}});i.Material.CirclePulseType="CirclePulse";i.Material._materialCache.addMaterial(i.Material.CirclePulseType,{fabric:{type:i.Material.CirclePulseType,uniforms:{color:new i.Color(1,0,0,.7),speed:12},source:$h},translucent:function(l){return!0}});i.Material.CircleRingType="CircleRing";i.Material._materialCache.addMaterial(i.Material.CircleRingType,{fabric:{type:i.Material.CircleRingType,uniforms:{color:new i.Color(1,0,0,.7)},source:ec},translucent:function(l){return!0}});i.Material.CircleRotateType="CircleRotate";i.Material._materialCache.addMaterial(i.Material.CircleRotateType,{fabric:{type:i.Material.CircleRotateType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId},source:tc},translucent:function(l){return!0}});i.Material.CircleScanType="CircleScan";i.Material._materialCache.addMaterial(i.Material.CircleScanType,{fabric:{type:i.Material.CircleScanType,uniforms:{color:new i.Color(1,0,0,.7),speed:1},source:ic},translucent:function(l){return!0}});i.Material.CircleSpiralType="CircleSpiral";i.Material._materialCache.addMaterial(i.Material.CircleSpiralType,{fabric:{type:i.Material.CircleSpiralType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:rc},translucent:function(l){return!0}});i.Material.CircleVaryType="CircleVary";i.Material._materialCache.addMaterial(i.Material.CircleVaryType,{fabric:{type:i.Material.CircleVaryType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:sc},translucent:function(l){return!0}});i.Material.CircleWaveType="CircleWave";i.Material._materialCache.addMaterial(i.Material.CircleWaveType,{fabric:{type:i.Material.CircleWaveType,uniforms:{color:new i.Color(1,0,0,.7),speed:3,count:1,gradient:.1},source:ac},translucent:function(l){return!0}});var oc=`uniform vec4 color;\r
1089
+ `;i.Material.CircleBlurType="CircleBlur";i.Material._materialCache.addMaterial(i.Material.CircleBlurType,{fabric:{type:i.Material.CircleBlurType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:Zd},translucent:function(n){return!0}});i.Material.CircleDiffuseType="CircleDiffuse";i.Material._materialCache.addMaterial(i.Material.CircleDiffuseType,{fabric:{type:i.Material.CircleDiffuseType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:jd},translucent:function(n){return!0}});i.Material.CircleFadeType="CircleFade";i.Material._materialCache.addMaterial(i.Material.CircleFadeType,{fabric:{type:i.Material.CircleFadeType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:Yd},translucent:function(n){return!0}});i.Material.CirclePulseType="CirclePulse";i.Material._materialCache.addMaterial(i.Material.CirclePulseType,{fabric:{type:i.Material.CirclePulseType,uniforms:{color:new i.Color(1,0,0,.7),speed:12},source:qd},translucent:function(n){return!0}});i.Material.CircleRingType="CircleRing";i.Material._materialCache.addMaterial(i.Material.CircleRingType,{fabric:{type:i.Material.CircleRingType,uniforms:{color:new i.Color(1,0,0,.7)},source:Jd},translucent:function(n){return!0}});i.Material.CircleRotateType="CircleRotate";i.Material._materialCache.addMaterial(i.Material.CircleRotateType,{fabric:{type:i.Material.CircleRotateType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId},source:Xd},translucent:function(n){return!0}});i.Material.CircleScanType="CircleScan";i.Material._materialCache.addMaterial(i.Material.CircleScanType,{fabric:{type:i.Material.CircleScanType,uniforms:{color:new i.Color(1,0,0,.7),speed:1},source:Qd},translucent:function(n){return!0}});i.Material.CircleSpiralType="CircleSpiral";i.Material._materialCache.addMaterial(i.Material.CircleSpiralType,{fabric:{type:i.Material.CircleSpiralType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:Kd},translucent:function(n){return!0}});i.Material.CircleVaryType="CircleVary";i.Material._materialCache.addMaterial(i.Material.CircleVaryType,{fabric:{type:i.Material.CircleVaryType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:$d},translucent:function(n){return!0}});i.Material.CircleWaveType="CircleWave";i.Material._materialCache.addMaterial(i.Material.CircleWaveType,{fabric:{type:i.Material.CircleWaveType,uniforms:{color:new i.Color(1,0,0,.7),speed:3,count:1,gradient:.1},source:ep},translucent:function(n){return!0}});var tp=`uniform vec4 color;\r
1091
1090
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
1092
1091
  czm_material material = czm_getDefaultMaterial(materialInput);\r
1093
1092
  vec2 st = materialInput.st;\r
@@ -1098,7 +1097,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1098
1097
  material.alpha = temp.a;\r
1099
1098
  return material;\r
1100
1099
  }\r
1101
- `;var nc=`uniform vec4 color;\r
1100
+ `;var ip=`uniform vec4 color;\r
1102
1101
  uniform sampler2D image;\r
1103
1102
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
1104
1103
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -1114,7 +1113,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1114
1113
  material.alpha = alpha * pow(1. - st.t, color.a);\r
1115
1114
  return material;\r
1116
1115
  }\r
1117
- `;i.Material.CylinderFadeType="CylinderFade";i.Material._materialCache.addMaterial(i.Material.CylinderFadeType,{fabric:{type:i.Material.CylinderFadeType,uniforms:{color:new i.Color(1,0,0,.7)},source:oc},translucent:function(l){return!0}});i.Material.CylinderParticlesType="CylinderParticles";i.Material._materialCache.addMaterial(i.Material.CylinderParticlesType,{fabric:{type:i.Material.CylinderParticlesType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId},source:nc},translucent:function(l){return!0}});var lc=`uniform vec4 color;\r
1116
+ `;i.Material.CylinderFadeType="CylinderFade";i.Material._materialCache.addMaterial(i.Material.CylinderFadeType,{fabric:{type:i.Material.CylinderFadeType,uniforms:{color:new i.Color(1,0,0,.7)},source:tp},translucent:function(n){return!0}});i.Material.CylinderParticlesType="CylinderParticles";i.Material._materialCache.addMaterial(i.Material.CylinderParticlesType,{fabric:{type:i.Material.CylinderParticlesType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId},source:ip},translucent:function(n){return!0}});var rp=`uniform vec4 color;\r
1118
1117
  uniform float speed;\r
1119
1118
  \r
1120
1119
  #define pi 3.1415926535\r
@@ -1192,7 +1191,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput)\r
1192
1191
  material.alpha = temp.a * 2.0;\r
1193
1192
  return material;\r
1194
1193
  }\r
1195
- `;var hc=`uniform vec4 color;\r
1194
+ `;var sp=`uniform vec4 color;\r
1196
1195
  uniform float speed;\r
1197
1196
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
1198
1197
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -1204,7 +1203,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1204
1203
  material.diffuse = color.rgb;\r
1205
1204
  return material;\r
1206
1205
  }\r
1207
- `;i.Material.EllipsoidElectricType="EllipsoidElectric";i.Material._materialCache.addMaterial(i.Material.EllipsoidElectricType,{fabric:{type:i.Material.EllipsoidElectricType,uniforms:{color:new i.Color(1,0,0,.7),speed:1},source:lc},translucent:function(l){return!0}});i.Material.EllipsoidTrailType="EllipsoidTrail";i.Material._materialCache.addMaterial(i.Material.EllipsoidTrailType,{fabric:{type:i.Material.EllipsoidTrailType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:hc},translucent:function(l){return!0}});var cc=`uniform vec4 color;\r
1206
+ `;i.Material.EllipsoidElectricType="EllipsoidElectric";i.Material._materialCache.addMaterial(i.Material.EllipsoidElectricType,{fabric:{type:i.Material.EllipsoidElectricType,uniforms:{color:new i.Color(1,0,0,.7),speed:1},source:rp},translucent:function(n){return!0}});i.Material.EllipsoidTrailType="EllipsoidTrail";i.Material._materialCache.addMaterial(i.Material.EllipsoidTrailType,{fabric:{type:i.Material.EllipsoidTrailType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:sp},translucent:function(n){return!0}});var ap=`uniform vec4 color;\r
1208
1207
  uniform float speed;\r
1209
1208
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
1210
1209
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -1215,7 +1214,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1215
1214
  material.alpha = color.a * scalar;\r
1216
1215
  return material;\r
1217
1216
  }\r
1218
- `;var pc=`uniform vec4 color;\r
1217
+ `;var op=`uniform vec4 color;\r
1219
1218
  uniform float speed;\r
1220
1219
  uniform float percent;\r
1221
1220
  uniform float gradient;\r
@@ -1231,7 +1230,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1231
1230
  material.alpha = alpha;\r
1232
1231
  return material;\r
1233
1232
  }\r
1234
- `;var dc=`uniform sampler2D image;\r
1233
+ `;var np=`uniform sampler2D image;\r
1235
1234
  uniform float speed;\r
1236
1235
  uniform vec4 color;\r
1237
1236
  uniform vec2 repeat;\r
@@ -1253,7 +1252,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1253
1252
  }\r
1254
1253
  return material;\r
1255
1254
  }\r
1256
- `;var mc=`uniform sampler2D image;\r
1255
+ `;var lp=`uniform sampler2D image;\r
1257
1256
  uniform vec4 color;\r
1258
1257
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
1259
1258
  czm_material material = czm_getDefaultMaterial(materialInput);\r
@@ -1264,7 +1263,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1264
1263
  material.diffuse = max(fragColor.rgb + colorImage.rgb, fragColor.rgb);\r
1265
1264
  return material;\r
1266
1265
  }\r
1267
- `;var uc=`uniform sampler2D image;\r
1266
+ `;var hp=`uniform sampler2D image;\r
1268
1267
  uniform vec4 color;\r
1269
1268
  uniform float speed;\r
1270
1269
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -1285,7 +1284,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1285
1284
  }\r
1286
1285
  return material;\r
1287
1286
  }\r
1288
- `;var fc=`uniform vec4 color;\r
1287
+ `;var cp=`uniform vec4 color;\r
1289
1288
  uniform float speed;\r
1290
1289
  \r
1291
1290
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -1296,7 +1295,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1296
1295
  material.alpha = color.a * fract(st.s-time);\r
1297
1296
  return material;\r
1298
1297
  }\r
1299
- `;i.Material.PolylineFlickerType="PolylineFlicker";i.Material._materialCache.addMaterial(i.Material.PolylineFlickerType,{fabric:{type:i.Material.PolylineFlickerType,uniforms:{color:new i.Color(1,0,0,.7),speed:1},source:cc},translucent:function(l){return!0}});i.Material.PolylineFlowType="PolylineFlow";i.Material._materialCache.addMaterial(i.Material.PolylineFlowType,{fabric:{type:i.Material.PolylineFlowType,uniforms:{color:new i.Color(1,0,0,.7),speed:1,percent:.03,gradient:.1},source:pc},translucent:function(l){return!0}});i.Material.PolylineImageTrailType="PolylineImageTrail";i.Material._materialCache.addMaterial(i.Material.PolylineImageTrailType,{fabric:{type:i.Material.PolylineImageTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:1,repeat:new i.Cartesian2(1,1)},source:dc},translucent:function(l){return!0}});i.Material.PolylineLightingType="PolylineLighting";i.Material._materialCache.addMaterial(i.Material.PolylineLightingType,{fabric:{type:i.Material.PolylineLightingType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId},source:mc},translucent:function(l){return!0}});i.Material.PolylineLightingTrailType="PolylineLightingTrail";i.Material._materialCache.addMaterial(i.Material.PolylineLightingTrailType,{fabric:{type:i.Material.PolylineLightingTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:3},source:uc},translucent:function(l){return!0}});i.Material.PolylineTrailType="PolylineTrail";i.Material._materialCache.addMaterial(i.Material.PolylineTrailType,{fabric:{type:i.Material.PolylineTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:1,repeat:new i.Cartesian2(1,1)},source:fc},translucent:function(l){return!0}});var _c=`uniform vec4 color;\r
1298
+ `;i.Material.PolylineFlickerType="PolylineFlicker";i.Material._materialCache.addMaterial(i.Material.PolylineFlickerType,{fabric:{type:i.Material.PolylineFlickerType,uniforms:{color:new i.Color(1,0,0,.7),speed:1},source:ap},translucent:function(n){return!0}});i.Material.PolylineFlowType="PolylineFlow";i.Material._materialCache.addMaterial(i.Material.PolylineFlowType,{fabric:{type:i.Material.PolylineFlowType,uniforms:{color:new i.Color(1,0,0,.7),speed:1,percent:.03,gradient:.1},source:op},translucent:function(n){return!0}});i.Material.PolylineImageTrailType="PolylineImageTrail";i.Material._materialCache.addMaterial(i.Material.PolylineImageTrailType,{fabric:{type:i.Material.PolylineImageTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:1,repeat:new i.Cartesian2(1,1)},source:np},translucent:function(n){return!0}});i.Material.PolylineLightingType="PolylineLighting";i.Material._materialCache.addMaterial(i.Material.PolylineLightingType,{fabric:{type:i.Material.PolylineLightingType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId},source:lp},translucent:function(n){return!0}});i.Material.PolylineLightingTrailType="PolylineLightingTrail";i.Material._materialCache.addMaterial(i.Material.PolylineLightingTrailType,{fabric:{type:i.Material.PolylineLightingTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:3},source:hp},translucent:function(n){return!0}});i.Material.PolylineTrailType="PolylineTrail";i.Material._materialCache.addMaterial(i.Material.PolylineTrailType,{fabric:{type:i.Material.PolylineTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:1,repeat:new i.Cartesian2(1,1)},source:cp},translucent:function(n){return!0}});var dp=`uniform vec4 color;\r
1300
1299
  uniform float speed;\r
1301
1300
  \r
1302
1301
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
@@ -1320,7 +1319,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1320
1319
  material.diffuse = col * 3.0;\r
1321
1320
  return material;\r
1322
1321
  }\r
1323
- `;var gc=`uniform vec4 color;\r
1322
+ `;var pp=`uniform vec4 color;\r
1324
1323
  uniform float speed;\r
1325
1324
  \r
1326
1325
  #define PI 3.14159265359\r
@@ -1352,7 +1351,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1352
1351
  material.diffuse = (0.5 + pow(angle, 2.0) * falloff) * color.rgb;\r
1353
1352
  return material;\r
1354
1353
  }\r
1355
- `;var yc=`uniform vec4 color;\r
1354
+ `;var mp=`uniform vec4 color;\r
1356
1355
  uniform float speed;\r
1357
1356
  \r
1358
1357
  #define PI 3.14159265359\r
@@ -1379,7 +1378,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1379
1378
  material.diffuse = flagColor * 3.0;\r
1380
1379
  return material;\r
1381
1380
  }\r
1382
- `;i.Material.RadarLineType="RadarLine";i.Material._materialCache.addMaterial(i.Material.RadarLineType,{fabric:{type:i.Material.RadarLineType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:_c},translucent:function(l){return!0}});i.Material.RadarSweepType="RadarSweep";i.Material._materialCache.addMaterial(i.Material.RadarSweepType,{fabric:{type:i.Material.RadarSweepType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:gc},translucent:function(l){return!0}});i.Material.RadarWaveType="RadarWave";i.Material._materialCache.addMaterial(i.Material.RadarWaveType,{fabric:{type:i.Material.RadarWaveType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:yc},translucent:function(l){return!0}});var vc=`uniform vec4 color;\r
1381
+ `;i.Material.RadarLineType="RadarLine";i.Material._materialCache.addMaterial(i.Material.RadarLineType,{fabric:{type:i.Material.RadarLineType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:dp},translucent:function(n){return!0}});i.Material.RadarSweepType="RadarSweep";i.Material._materialCache.addMaterial(i.Material.RadarSweepType,{fabric:{type:i.Material.RadarSweepType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:pp},translucent:function(n){return!0}});i.Material.RadarWaveType="RadarWave";i.Material._materialCache.addMaterial(i.Material.RadarWaveType,{fabric:{type:i.Material.RadarWaveType,uniforms:{color:new i.Color(1,0,0,.7),speed:3},source:mp},translucent:function(n){return!0}});var up=`uniform vec4 color;\r
1383
1382
  czm_material czm_getMaterial(czm_materialInput materialInput){\r
1384
1383
  czm_material material = czm_getDefaultMaterial(materialInput);\r
1385
1384
  vec2 st = materialInput.st;\r
@@ -1387,7 +1386,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1387
1386
  material.alpha = color.a * (1.0-fract(st.t)) * 0.8;\r
1388
1387
  return material;\r
1389
1388
  }\r
1390
- `;var wc=`uniform sampler2D image;\r
1389
+ `;var fp=`uniform sampler2D image;\r
1391
1390
  uniform vec4 color;\r
1392
1391
  uniform float speed;\r
1393
1392
  uniform vec2 repeat;\r
@@ -1400,7 +1399,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1400
1399
  material.diffuse = colorImage.rgb * color.rgb * 3.0;\r
1401
1400
  return material;\r
1402
1401
  }\r
1403
- `;var xc=`uniform sampler2D image;\r
1402
+ `;var _p=`uniform sampler2D image;\r
1404
1403
  uniform float speed;\r
1405
1404
  uniform vec4 color;\r
1406
1405
  uniform vec2 repeat;\r
@@ -1416,7 +1415,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1416
1415
  material.emission = max(color.rgb * material.alpha * 1.5, color.rgb);\r
1417
1416
  return material;\r
1418
1417
  }\r
1419
- `;var Cc=`uniform sampler2D image;\r
1418
+ `;var gp=`uniform sampler2D image;\r
1420
1419
  uniform float speed;\r
1421
1420
  uniform vec4 color;\r
1422
1421
  \r
@@ -1434,7 +1433,7 @@ czm_material czm_getMaterial(czm_materialInput materialInput){\r
1434
1433
  }\r
1435
1434
  return material;\r
1436
1435
  }\r
1437
- `;i.Material.WallDiffuseType="WallDiffuse";i.Material._materialCache.addMaterial(i.Material.WallDiffuseType,{fabric:{type:i.Material.WallDiffuseType,uniforms:{color:new i.Color(1,0,0,.7)},source:vc},translucent:function(l){return!0}});i.Material.WallImageTrailType="WallImageTrail";i.Material._materialCache.addMaterial(i.Material.WallImageTrailType,{fabric:{type:i.Material.WallImageTrailType,uniforms:{image:i.Material.DefaultImageId,color:new i.Color(1,0,0,.7),speed:3,repeat:new i.Cartesian2(1,1)},source:wc},translucent:function(l){return!0}});i.Material.WallLineTrailType="WallLineTrail";i.Material._materialCache.addMaterial(i.Material.WallLineTrailType,{fabric:{type:i.Material.WallLineTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,repeat:new i.Cartesian2(1,1),speed:3},source:xc},translucent:function(l){return!0}});i.Material.WallTrailType="WallTrail";i.Material._materialCache.addMaterial(i.Material.WallTrailType,{fabric:{type:i.Material.WallTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:1},source:Cc},translucent:function(l){return!0}});var Aa=class{constructor(e={}){this._definitionChanged=new i.Event,this._color=void 0,this._colorSubscription=void 0,this._speed=void 0,this._speedSubscription=void 0,this.color=e.color||i.Color.fromBytes(0,255,255,255),this.speed=e.speed||1}get isConstant(){return!1}get definitionChanged(){return this._definitionChanged}getType(e){return null}getValue(e,t){return t=i.defaultValue(t,{}),t}equals(e){return this===e}},L=Aa;var Ot=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CircleBlurType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ot.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Tc=Ot;var kt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CircleDiffuseType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(kt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Ec=kt;var zt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CircleFadeType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(zt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Pc=zt;var Nt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CirclePulseType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Nt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Mc=Nt;var Ft=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CircleScanType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ft.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Ac=Ft;var Wt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CircleSpiralType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Wt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var bc=Wt;var Gt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.CircleVaryType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Gt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Sc=Gt;var Ht=class l extends L{constructor(e={}){super(e),this.count=Math.max(e.count||3,1),this.gradient=i.Math.clamp(e.gradient||.1,0,1)}get isConstant(){return!1}get definitionChanged(){return this._definitionChanged}getType(e){return i.Material.CircleWaveType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t.count=this.count,t.gradient=this.gradient,t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ht.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Ic=Ht;var Bt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.EllipsoidElectricType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Bt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Dc=Bt;var Ut=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.EllipsoidTrailType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ut.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Lc=Ut;var Vt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.PolylineFlickerType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Vt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Rc=Vt;var jt=class l extends L{constructor(e={}){super(e),this._percent=void 0,this._percentSubscription=void 0,this._gradient=void 0,this._gradientSubscription=void 0,this.percent=e.percent||.03,this.gradient=e.gradient||.1}getType(e){return i.Material.PolylineFlowType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t.percent=i.Property.getValueOrUndefined(this._percent,e),t.gradient=i.Property.getValueOrUndefined(this._gradient,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)&&i.Property.equals(this._percent,e._percent)&&i.Property.equals(this._gradient,e._gradient)}};Object.defineProperties(jt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),percent:i.createPropertyDescriptor("percent"),gradient:i.createPropertyDescriptor("gradient")});var Oc=jt;var Zt=class l extends L{constructor(e={}){var t,r;super(e),this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this.image=e.image,this.repeat=new i.Cartesian2(((t=e.repeat)==null?void 0:t.x)||1,((r=e.repeat)==null?void 0:r.y)||1)}getType(e){return i.Material.PolylineImageTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.repeat=i.Property.getValueOrUndefined(this._repeat,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._image,e._image)&&i.Property.equals(this._repeat,e._repeat)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Zt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),image:i.createPropertyDescriptor("image"),repeat:i.createPropertyDescriptor("repeat")});var kc=Zt;var Yt="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAACYCAYAAACS0lH9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAJ0GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgMTE2LjE2NDY1NSwgMjAyMS8wMS8yNi0xNTo0MToyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDplODY0YmNmNy1lZGIyLWIyNDQtYWI0NC04OWZkNmMwOTQ4MDYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjIyOGMxMDUtODFmZS00MjAxLWIwOTEtZDkwMGI0NTI0NWMwIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9IjcxNzA5OEJGODAwODNEREJGRDQyQzAzMzQ5NDlDRDFDIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9IiIgdGlmZjpJbWFnZVdpZHRoPSI1MTIiIHRpZmY6SW1hZ2VMZW5ndGg9IjE1MiIgdGlmZjpQaG90b21ldHJpY0ludGVycHJldGF0aW9uPSIyIiB0aWZmOlNhbXBsZXNQZXJQaXhlbD0iMyIgdGlmZjpYUmVzb2x1dGlvbj0iMS8xIiB0aWZmOllSZXNvbHV0aW9uPSIxLzEiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjEiIGV4aWY6RXhpZlZlcnNpb249IjAyMzEiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI1MTIiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIxNTIiIHhtcDpDcmVhdGVEYXRlPSIyMDIxLTAyLTIzVDEwOjAyOjQxKzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmZmYTk5ZjhhLTdiZmQtNDcxNi04MTgwLWJmZTUyMmFmNGUzNSIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBpbWFnZS9qcGVnIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gaW1hZ2UvanBlZyB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjYyMjhjMTA1LTgxZmUtNDIwMS1iMDkxLWQ5MDBiNDUyNDVjMCIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOmZmYTk5ZjhhLTdiZmQtNDcxNi04MTgwLWJmZTUyMmFmNGUzNSIgc3RSZWY6ZG9jdW1lbnRJRD0iNzE3MDk4QkY4MDA4M0REQkZENDJDMDMzNDk0OUNEMUMiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0iNzE3MDk4QkY4MDA4M0REQkZENDJDMDMzNDk0OUNEMUMiLz4gPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHJkZjpCYWc+IDxyZGY6bGk+NzE3MDk4QkY4MDA4M0REQkZENDJDMDMzNDk0OUNEMUM8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHRpZmY6Qml0c1BlclNhbXBsZT4gPHJkZjpTZXE+IDxyZGY6bGk+ODwvcmRmOmxpPiA8cmRmOmxpPjg8L3JkZjpsaT4gPHJkZjpsaT44PC9yZGY6bGk+IDwvcmRmOlNlcT4gPC90aWZmOkJpdHNQZXJTYW1wbGU+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+h9EbuwAAA01JREFUeJzt3TuOFVkQBNDoJhmEkDBgZv8L5GMgIcRvHg5ryDTiHKn98Co67q16T4/HYwIAVHm+DgAA7FMAAKCQAgAAhSbJ03UIAGCXBQAACikAAFDIEQAAFLIAAEAhBQAACikAAFBoogQAQB0PfwAopAAAQCGvAQJAIQsAABSyAABAIQsAABSyAABAIQUAAAo5AgCAQr4ECACFPPwBoJACAACFHAEAQCEPfwAoZAEAgEIe/gBQyAIAAIU8/AGgkAUAAAr5LQAAKOS/fwAoZAEAgELuAABAIQsAABRSAACgkAIAAIXcAQCAQhYAAChkAQCAQgoAABRSAACgkIc/ABSaJC+uQwAAu7wFAACFFAAAKDR//wCAIhYAACjkEiAAFLIAAEChSfLyOgQAsMuXAAGgkLcAAKCQAgAAhbwFAACFFAAAKOQIAAAKTZJ/rkMAALsUAAAo5AgAAAr5EiAAFFIAAKCQOwAAUEgBAIBCk+TVdQgAYNckeXMdAgDYNUneXocAAHZNkvfXIQCAXZPkv+sQAMCuSfLvdQgAYNckeXcdAgDY5RIgABSaJK+vQwAAu/wWAAAUmiRP1yEAgF2T5HEdAgDYNUl+XocAAHZNkm/XIQCAXZPky3UIAGDXJPl8HQIA2DVJPl6HAAB2TZIP1yEAgF2T5NN1CABgl0uAAFBokny9DgEA7Jok369DAAC7JsmP6xAAwC4FAAAK+S0AACikAABAoUny6zoEALDLHQAAKKQAAEAhRwAAUGiS/L4OAQDsUgAAoJAjAAAopAAAQKFJ8v91CABgly8BAkChSfK4DgEA7PIWAAAUsgAAQCFvAQBAIQsAABRSAACgkEuAAFDo+ToAALDPlwABoJACAACFFAAAKOQtAAAoZAEAgEIWAAAopAAAQCEFAAAKuQMAAIUsAABQyKeAAaCQBQAACrkDAACFHAEAQCELAAAUsgAAQCELAAAUsgAAQCELAAAUsgAAQCEFAAAKOQIAgEIWAAAo5LcAAKCQAgAAhRwBAEAhCwAAFLIAAEAhCwAAFLIAAEAhBQAACvkSIAAUsgAAQCEFAAAKKQAAUMhrgABQyAIAAIUUAAAo5AgAAApZAACgkAIAAIUUAAAo5A4AABT6A6gaPQ6/wRIfAAAAAElFTkSuQmCC";var Jt=class l extends L{constructor(e={}){super(e),this._image=void 0,this._imageSubscription=void 0,this.image=Yt}getType(e){return i.Material.PolylineLightingType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._image,e._image)}};Object.defineProperties(Jt.prototype,{color:i.createPropertyDescriptor("color"),image:i.createPropertyDescriptor("image")});var zc=Jt;var qt=class l extends L{constructor(e={}){super(e),this._image=void 0,this._imageSubscription=void 0,this.image=Yt}getType(e){return i.Material.PolylineLightingTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(qt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),image:i.createPropertyDescriptor("image")});var Nc=qt;var Xt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.PolylineTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Xt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Fc=Xt;var Qt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.RadarLineType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Qt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Wc=Qt;var Kt=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.RadarSweepType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Kt.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Gc=Kt;var $t=class l extends L{constructor(e={}){super(e)}getType(e){return i.Material.RadarWaveType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties($t.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Hc=$t;var ei=class l extends L{constructor(e={}){var t,r;super(e),this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this.image=e.image,this.repeat=new i.Cartesian2(((t=e.repeat)==null?void 0:t.x)||1,((r=e.repeat)==null?void 0:r.y)||1)}getType(e){return i.Material.WallImageTrailType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.repeat=i.Property.getValueOrUndefined(this._repeat,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._image,e._image)&&i.Property.equals(this._repeat,e._repeat)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(ei.prototype,{image:i.createPropertyDescriptor("image"),color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),repeat:i.createPropertyDescriptor("repeat")});var Bc=ei;var Uc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAVwAAABACAYAAABWdc94AAAACXBIWXMAAAsTAAALEwEAmpwYAAAGx2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgMTE2LjE2NDY1NSwgMjAyMS8wMS8yNi0xNTo0MToyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDIxLTAyLTIzVDE3OjE0OjMyKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIxLTAyLTI0VDE0OjIwOjE2KzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMS0wMi0yNFQxNDoyMDoxNiswODowMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1NzQzY2I0NC0zMzk3LTQ5OTAtYjg4OC0yNDFlNmExYmQyYWYiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5YWYxZDY1MC1jNWRlLTVmNDgtYWYzNi1hZDE4ZWRkN2QzYTAiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpiMmZjZmU2Zi1hZWQwLTRjMWQtYjZmOS1lNjAwMjJiNmEwOGUiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmIyZmNmZTZmLWFlZDAtNGMxZC1iNmY5LWU2MDAyMmI2YTA4ZSIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxNzoxNDozMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjNjM2JjM2I5LTkwNDEtNDk1ZS04MTc5LTdkZjc3NDIwZDczOSIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxNzoxNDozMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjU3NDNjYjQ0LTMzOTctNDk5MC1iODg4LTI0MWU2YTFiZDJhZiIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yNFQxNDoyMDoxNiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+eAiLkwAAAQZJREFUeJzt3LERwDAMxDAl5/1XdqYIXRiYQBULFf/svQeA/72nDwC4heACRAQXICK4ABHBBYgILkBEcAEiggsQEVyAiOACRAQXICK4ABHBBYgILkBkzYx9RoDAmpnn9BEAN/BSAIgILkBEcAEiggsQEVyAiOACRAQXICK4ABHBBYgILkBEcAEiggsQEVyAiOACRAQXIGKAHCBigBwg4qUAEBFcgIjgAkQEFyAiuAARwQWICC5ARHABIoILEBFcgIjgAkQEFyAiuAARwQWI2MMFiNjDBYh4KQBEBBcgIrgAEcEFiAguQERwASKCCxARXICI4AJEBBcgIrgAEcEFiAguQERwASIfRmAGiWTgoMYAAAAASUVORK5CYII=";var ti=class l extends L{constructor(e={}){var t,r;super(e),this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this.image=Uc,this.repeat=new i.Cartesian2(((t=e.repeat)==null?void 0:t.x)||1,((r=e.repeat)==null?void 0:r.y)||1)}getType(e){return i.Material.WallLineTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.repeat=i.Property.getValueOrUndefined(this._repeat,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)&&i.Property.equals(this._repeat,e._repeat)}};Object.defineProperties(ti.prototype,{color:i.createPropertyDescriptor("color"),image:i.createPropertyDescriptor("image"),repeat:i.createPropertyDescriptor("repeat"),speed:i.createPropertyDescriptor("speed")});var Vc=ti;var jc="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAOhlWElmTU0AKgAAAAgABgESAAMAAAABAAEAAAEaAAUAAAABAAAAVgEbAAUAAAABAAAAXgExAAIAAAAkAAAAZgEyAAIAAAAUAAAAiodpAAQAAAABAAAAngAAAAAAAABIAAAAAQAAAEgAAAABQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkAMjAxODoxMDoyNiAxNTozMDozNAAABJAEAAIAAAAUAAAA1KABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAAAyMDE4OjEwOjI2IDE1OjI0OjI1ALUCxicAAAAJcEhZcwAACxMAAAsTAQCanBgAAAdgaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA1LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6MjgyZGYxNWEtYzg5MC00ODUzLWJlZDQtOWEyZjQxMmY0NjljPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjI4MmRmMTVhLWM4OTAtNDg1My1iZWQ0LTlhMmY0MTJmNDY5YzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjI4MmRmMTVhLWM4OTAtNDg1My1iZWQ0LTlhMmY0MTJmNDY5YzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxOC0xMC0yNlQxNToyNDoyNSswODowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDoyODJkZjE1YS1jODkwLTQ4NTMtYmVkNC05YTJmNDEyZjQ2OWM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE4LTEwLTI2VDE1OjMwOjM0KzA4OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgogICAgICAgICA8eG1wOk1ldGFkYXRhRGF0ZT4yMDE4LTEwLTI2VDE1OjMwOjM0KzA4OjAwPC94bXA6TWV0YWRhdGFEYXRlPgogICAgICAgICA8eG1wOkNyZWF0ZURhdGU+MjAxOC0xMC0yNlQxNToyNDoyNSswODowMDwveG1wOkNyZWF0ZURhdGU+CiAgICAgICAgIDxwaG90b3Nob3A6SUNDUHJvZmlsZT5zUkdCIElFQzYxOTY2LTIuMTwvcGhvdG9zaG9wOklDQ1Byb2ZpbGU+CiAgICAgICAgIDxwaG90b3Nob3A6Q29sb3JNb2RlPjM8L3Bob3Rvc2hvcDpDb2xvck1vZGU+CiAgICAgICAgIDxkYzpmb3JtYXQ+aW1hZ2UvcG5nPC9kYzpmb3JtYXQ+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgr82RRBAAAQ+0lEQVR4AZWaWZIkNw5Ea5M00khnmi/d/zgyLV017znhTEZWdk8PzCIAAg4QABlLRtXz77///p8//vjjy/v7+5ePj48vf/755xfo/eXl5f2ff/55R/f8NPTDDz9s+dRrfnt7i+3Un/Jpf319feF4lj8/P78yV8bKhHplnpcV8u0Fv1cOx8BxAPrjjz+GL7fXYEZ+09c4Hsj6Nubrzz///C+OX3799dd///LLL7/+9ttvP+tM7O+jv/766xPQIj3+/vvvJ4/SWXx195x4u2knnsbvRutz2hyzQNFRtLiXsdukJxZSbhOelQ9b9NqKwfbyRrAPJkT++MDwgV8OivlggsiYkpA29JHprvN9ImJV90FzdyHVE0v7OwfhX96Z/1nu2ByUWWh1FmBzYe8WtHNTVm+jyCMLoMLA6mHRibMm4rmTE18ddsfyjxcbMMon+XnYGI9TV9kGeXQsJ2BiyKXqTrn46s6xOslmNS+5RahvPHQOQ9jCLUga9SemTWzxBeQSwLZXSkMLK4ixSV2SaOJthNgmWF7/8nu98xpbOm1elto8LF5b7eWfCnnJFdCpwvG/NOSM0zlzCbjtwL5zA0y3BXblTaKTtgk4X7a3wVqINrflxLAIzfsmObGeWcUsHXO72t4QnTvb31U3JwiWS2E3QX9tcCsOB8c0WWG3u80Tn3mVI8wJrHZH2RG5ttxyJSfwuB+fOm02w6KLL9fmrpCfuqN5ezeJkcQ1B7nj6gP4ysk6a6oMX9UpPKDGtRHS3jctJto5NZFTV9kb3NduhGLOJ0bjnE1onHv+PU8l6tqF3/t3zC6JyNyfsPrXnpugyCbZAOVf09d+z4u/58VV77gNOS6fwvZNcCsOwRg9DvWuwYV/pB/dxfbmIwdDrmnuAX2kPLsSXps63Xfc1Z9g23ZilHlZ+WTTz9yKbRw5hwXs+RyLG5XPzDwanVd5bDsP9eqql6Pa8QwkqVtMD+5NAm2C3ETaBECoVsBHW12bAcq98Z1j9LEZs3p1kjr9nJdrcc+PKS8vbk/mh+V9JoWLr0/1jhNwTuo5doWVz4oPWfG5b0pnIbuTJnpffBMpd6Ufkfaz+HtMm1BM7eR02aKdp/ZH4xZejFzcOa7O+BZeW97BO2jwrmb15Q1arl5ZfH3LW9iJFd/CT3195nL0pX/H00eySPmZ/Oj3gmkTN/yCre6cF93TGw4vFPDGjegfktt3b4GY8qw4nSq3QJOQqleurTp5d5LyJOPUZhuO3R8wLoi37/yIIU50/vhBpy1j3cRB+VEELjE8Jfhx2gYEYwiBp1Hyt0ng6aeffnrh0eWLhEHIM+/ll8JMHqcQclc/L0Fn0fOycSm6z11w+cEyBSQ/i8ee5MzHgpikY8vZhU0BaZwGSaxcm9Tx1BKdJ8bZFcXB1w5QoCDsr/v6Q/aHyqVIV7FNKDcYzdv6dGdO2jouft763HW5/4ApX1tBp2mCIoer3CKyQxjf8+2rTbCcucOpJf6MdyBtHjT7zQnyI8HVIdH80jCATQCUa5II4Y5PamHaJWJ8KtoEtBVrbCjJTa7Z9uI4srdHv78FTJ57yxMuTZBLuinjZwgpek+jkxeHuCiXAI5GMUHf47OlfUkRos3tqx1+2dbaStO8S6FtRgs3HInlBofchMPVm7WFalMejGKSd7zqWX1i7hSkfQzlQIPVLthxOLkk1sRZO6CJznt4Hl8AqDe/MhynzhbioD4xzIk5ssrlxNhjISZiDLmZgpNJNi6rrY7YbQrQfD3KyoPrjmjhbVhukviGEpGTcSSLljCGOX/JN0GD7JUD4aexvKC44v+r6NNukcY6dU6m/tBlblRd1SynyYGNTo4dditeOdlPg5Bvezy1rV1j0cYq3cXdu0E9x/NuAAkmSXeByc6Enx6DFiMxQQpbo1uB+G39xEm8owHZCZNAboaVTQh/l8fiIsOz+qotigI7FpqdYjoOIItKY6YR7t7upjQGextkvNUAHPcqAfjwTr12/9quLfLkLcgg1atjwnO1HzbKJHwK6Kc8yWbVLfKwpyjzQ53tPkUGVqwgYphHijXeUD6Ijv9uALYU7/TZAQJMxgLcAV77BPGDQbYzsuaQdsdtQDkxto4CduG1N4ZjC8wpta6bIUkR4nYJWIA49Z7w73XeHaA9Nu3E7X3BYX0zz8wX/TLl5r52AIoEoTrv8L6NaPBLix88cgmo853AIvvu38LQ7R0gzi7VpqyPVJ2YI6GuxKp++QMJJS+bAu1CbcQyv9yWGZCELXGMH6d1iUQ/Y+eu/9otGFS4LP78TbLEEqjO7wUpoisYACd8LsXej4sj1i7eJjg2rvihrBb66DghrmubBUkiGiSLx8cjzowNsQsSo00arOJSKEHEdqxfCNzbG6vqRzUL0uJTwKvAt0KfH60ljRAHwdZrscEEOCZ4sG1aMadNWZokTChJqyMVZQsyVmS59wv8EFdjFMCmEWDTMX0VJ0ZiioMyB4kl3vA0InPaZba6D/0vNMJ7QD5Y4uh3ulwCqUrPKdZx5RZZjJyYaQgTbJz6+gxvkgzTxDbD5iRxDRZAnIhyDVBumHJpdkps0+y97fVBt2+0NCjBVjo8BQAY0JX2E/UXAE3er0ROvn8fnMWKP4ty1cWqnyT21h+crLGNKwHPDkuhLQhdtn7H4PY2V6dfbRZP2ARybn3N26IdYztjd05x2vIU8EkA/sNP0i/uBn7c5DM5uwLMlYygxiLl+MguTwaCR1eMg5kw3BhDaYTzeghTD3YXjLwJzNZb5FB0mnQ9MBGJ6aWVe4e8ToPVlj8+uspufRUWlj+MAs494CyEqJhvDciAE9jdGOSoT7/qBhfAqhUNvso5TfHKUIrYQqC3LT/DNA9MischjXBsXBLpvUI5Om3GZHzbAQx89H3RMI1wG6UB2EItiCi7YLe+NJNFNkaEOZ02Y5TUc7SAyCvU6kiqX5iucjqCf4qVlyzcUMYeuabsLG0u7umjnBchb1pQ/tgoJ4Cyme7rX4DJY1PstZxqHDNBdOXqSujSkNrk0C7cAXOlAvhuin7VkzzDVWCEtdKks9y0jb5NyMpPvOAMPfGcw1qe/Xt6/jxmDiYF+b8CvhD5Suyu2Kupk8meVHv5IxsTRd0dNNhUp+ykkrIFqVKeomsL1y6J0S4nOOpdd/3b4HB9BMklfDzWqzCB8vqLIn+bswEk64P3sgPw+2oD8HUVY8f9siO0lWzCSU2GHPTdzTgKEi4shVlDx+o6Vqd8jtW1SWIl7M4Tjn3fA0zYukMAvP27+ikEOWTy4DrcOgWD1VDMqatN3Ulgd1LqO5bPcEQ3R4rfu0QD1KX/tPIajaFfqXJj5x6AMTVgzIuQYDsBaF/jLWBWcOvB7MKLqU4OPruoOkJnpTMhSuZsAefKZIuOyXQkm9NKDJfCTq4s6Uf82Jk+utoySF+S97OvwW/Uaj5ZfQB+DLXAfBTV8IjAtfDyDcN3605ZQMcmojxFKmZc/c18W3Xd0acJ+g02q1zZS0kZbOIxboNVb9JuDG+t8GDSAF9/0Vm8hsvq4bTJjDtwV+BjcS54ZG02Vpw2SZtc3czpODIcWJqaxJabqt2XyPj1LS+Fi1PnMaHjpJ/CxA1WzNCe00uAJuX5SM1ftOcGiM6nwH4RYqJ9QzyLRL+qhjNZSF3lqs6x9oNSoWPmTtLl+GTc4uTCFjTYuD3QW8eJq7z52NebICtlEXYrr8DIIUB7B6hwtvKzIGVtpw7fveLKkjsCWegm1JHRS9UnUQpLU1DWEBA+2SV1aAOMpTxkrPg5Hn2Mhz4NOO8B/v7PpUCwNMEoyBdSZT9OJXM80gUDPn2bnZYni/4lfBWbbFad2NGZ/AjFHKq1Y/QVNoYtqxubOimYco25BOw0E/pOm1um2doFxybC8Yl0PpX3Yya5NES4ReujjXGyGz+ZyQ3bdlRLVpACHF/z1s2j8kCCc9UDiGeK7w5Yjuj3q7D1Ak7tngwES43oTV57xsgmG7knJ6o8/DI+7cpQlhieJPHpjdHAZzMCNp/BIu66uqJRBDjNKIZYtemnvJslPjvAgiDvgIj7a5BF7xufRWGX7ZVUxk+2CZdLc+7HAJ1LqpAE1RsfvG9v2hmudwYHUMY5rXGud/VjDDt2gnrnSNEaId0tYofJbwEtTswugH3kZEWO5SVgFXcTVrylxjdFbNAS4iRudpnj4pw6YzmYHNqHkqh6zYcy4xhHqQwZK/yUB7xvkF4ac+THkL9UcvMDmAa0cIJcGmBiHBeaiS46G6EC20V/jFPo5N4GZLWMJ+G4G8Lw02UBTjpxu0Hju7o2GGJ4/VP3ekqYnjj3mpeBwaj7tgMoIpcAenC3l5qVW1Q5MU6xN81Nqg1uI+2uqi0bm7Fzq8+yi3MMP69Vg4oJdvDBqRNbnaCh+qdJ6MRk5cVSc2BvfP7yv0OyAzB457cTTujNwFndFTokew0lbDZpDxWI0ee9wzRHjFhpYoWbgcloUxyehEdfHcPb9hbnmFjRM04c57vDaZKCc6HBKBs3LDdBCrUzsOwA4oZSvEmX0BqswwvXAJ0NuRRdsJggh4++iV94AlKUq8XcSdjc8UkIZQ9tKpRPGixs+dgADzB9HOY/RLjp5itqPoJYOhNkWZWhVIxT5HKCtqZwcdBF18G9QRyHiQgxsMlnVR2b8D2pP20tajgsPi7A3vrF1I8x9Yc6x1OfAlazdwByG4C4iIQuDZjkaw4HIDf3i/6RcpLThJhmngV2l2wduCQtr+xEpVM3sWva3Ikgx70U0gDvBvmF5SVAIAtNJcocvV63rA4f2Scy+iclCtWEjU15cGGeJO3QLj6DuGZ7G1ZVG2ExF92JrzwFO9yPQR3ZB8Z52k8BJt+XwK3+JzNyEpNPERms08NCa7cYJ3hA5tKmttiMuRTluTTwNX4O8TpJ6iTtJXXFz5wdJ9bg1t0PAKTK00dehQngLjgvAVRrK0T4xslIj8yqbcLXbCaBrfY2K2NjlsQUO4kbMr6HPrp7H8bVn8VbeA//DSDvnb4M+SqsQx5/ClAvhTV6fG7yj61La27049IQdbnxqVeGGisFqhuDTAoenAV0V2xMG6LNWBNPP0nfXO5w/UPnDnALuGo+b2TfU3wnlzvpI3pkWBmuHPTJKhuDadU2XhBjDy6KNVdEa9FeY8fFGQ9d8tTGIY15/jDCyB0QoIVLBoTkgtdg7gM1n/oTF/DdySCQBaY4eMYDi+wJ6oRrNMWKU0HyxugOiFqTeu3KA43Nm92QdovX93YT9KmIwr+OanD7I6b+cHQJ5OlbNLhvQWJb86+gA8Z1F22SqqMbriyd+gBGmYKJm90jP/wizzj3gcNmve/5HYDgDsgHkJkoxdsIx6Mz2P8kfIAn2a9iBUDaw0+fi2FF2KppXpz0sdgxbgzCjjvxt01/dXCLj957oO/A2QEYvf7tpFsgLCgG/w9NjGZycTU0MdXlJD/H5hbjUQg+G2PssYuLXvvowwdfn8AH23cBbfrnH43yc5ixj0Fv1TpIiJ+SXZbvOBu/xRBX2WzzhDHBFmKolcu6dtdw9WB8srVP3IlXngN28cvgLl6uf4Gl/F2AidwB6pzMuWC7EUm89gOTiU+cjicN1i+vW80tp3ITbJw0RR/IE+J6KkyzMlZuLsUMHrZ8yo9YMeBrjMQezPoW4CWgYYpJ5a7aSfp1cvitOyfo27JTbIRFdHAaBhObskmLG0zYyOoO04IY1zy13TcKnR3Q5lMA2MuHfxp75VN4LgOi4ZNtf74MOUnIwCWDV/5e7uSlkbfCcRMuH2yrvBRlLgcO9xXqjIP/9lUeTLjFI3z8F+ualIvlptDJAAAAAElFTkSuQmCC";var ii=class l extends L{constructor(e={}){super(e),this._image=void 0,this._imageSubscription=void 0,this.image=jc}getType(e){return i.Material.WallTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(ii.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),image:i.createPropertyDescriptor("image")});var Zc=ii;var ri=class l{constructor(e){e=e||{},this._definitionChanged=new i.Event,this._baseWaterColor=void 0,this._baseWaterColorSubscription=void 0,this.baseWaterColor=e.baseWaterColor||new i.Color(.2,.3,.6,1),this._blendColor=void 0,this._blendColorSubscription=void 0,this.blendColor=e.blendColor||new i.Color(0,1,.699,1),this._specularMap=void 0,this._specularMapSubscription=void 0,this.specularMap=e.specularMap||i.Material.DefaultImageId,this._normalMap=void 0,this._normalMapSubscription=void 0,this.normalMap=e.normalMap||i.Material.DefaultImageId,this.frequency=i.defaultValue(e.frequency,1e3),this.animationSpeed=i.defaultValue(e.animationSpeed,.01),this.amplitude=i.defaultValue(e.amplitude,10),this.specularIntensity=i.defaultValue(e.specularIntensity,.5)}get isConstant(){return!1}get definitionChanged(){return this._definitionChanged}getType(e){return i.Material.WaterType}getValue(e,t){return t||(t={}),t.baseWaterColor=i.Property.getValueOrUndefined(this._baseWaterColor,e),t.blendColor=i.Property.getValueOrUndefined(this._blendColor,e),t.specularMap=i.Property.getValueOrUndefined(this._specularMap,e),t.normalMap=i.Property.getValueOrUndefined(this._normalMap,e),t.frequency=this.frequency,t.animationSpeed=this.animationSpeed,t.amplitude=this.amplitude,t.specularIntensity=this.specularIntensity,t}equals(e){return this===e||e instanceof l&&i.Property.equals(this._baseWaterColor,e._baseWaterColor)}};Object.defineProperties(ri.prototype,{baseWaterColor:i.createPropertyDescriptor("baseWaterColor"),blendColor:i.createPropertyDescriptor("blendColor"),specularMap:i.createPropertyDescriptor("specularMap"),normalMap:i.createPropertyDescriptor("normalMap")});var Yc=ri;var ba=class{constructor(e){this._style=e,this._viewer=void 0,this._layer=void 0,this._delegate=void 0,this._options={},this._positions=[]}get drawTool(){return this._viewer.drawTool}_mountedHook(){}_stoppedHook(){}_onDrawAnchor(e){}_onAnchorMoving(e){this._positions.pop(),this._positions.push(e),this._positions.length<=1?this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236":this.drawTool.tooltipMess="\u5355\u51FB\u589E\u52A0\u70B9\uFF0C\u53F3\u51FB\u5220\u9664\u70B9\uFF0C\u53CC\u51FB\u5B8C\u6210\u7ED8\u5236"}_onDeleteAnchor(){this._positions.length>1&&this._positions.splice(this._positions.length-2,1),this._positions.length<=1&&(this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236")}_onDrawStop(){this._unbindEvent(),this._viewer.drawTool.deactivate(),this._removeSamePoint(this._positions),this._delegate&&this._layer.entities.remove(this._delegate),this._stoppedHook()}_removeSamePoint(e=[]){if(e.length<2)return e;for(let t=0;t<e.length-1;t++){let r=e[t],s=e[t+1];typeof r.equals=="function"&&r.equals(s)&&(console.log("element",r),console.log("element",s),e.splice(t,1),t--)}return e}_bindEvent(){this.drawTool.on(E.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.on(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.on(E.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.on(E.DRAW_STOP,this._onDrawStop,this)}_unbindEvent(){this.drawTool.off(E.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.off(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.off(E.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.off(E.DRAW_STOP,this._onDrawStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.drawTool.activate(t),this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236",this._mountedHook(),this._unbindEvent(),this._bindEvent(),this}stop(){return this.drawTool.fire(E.DRAW_STOP),this}},Z=ba;var bu={pixelSize:10,outlineColor:i.Color.BLUE,outlineWidth:5},Sa=class extends Z{constructor(e){super(),this._position=i.Cartesian3.ZERO,this._style={...bu,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({position:new i.CallbackProperty(()=>this._position,!1),point:{...this._style}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._position&&(e=new St(u.transformCartesianToWGS84(this._position)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){this._position=e,this.drawTool.fire(E.DRAW_STOP,e)}_onAnchorMoving(e){this._position=e}},Jc=Sa;var Su={width:3,material:i.Color.YELLOW.withAlpha(.6)},Ia=class extends Z{constructor(e){super(),this._style={...Su,...e}}_mountedHook(){this._delegate=new i.Entity({polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new je(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),t>=this._options.maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},qc=Ia;var Iu={material:i.Color.YELLOW.withAlpha(.6),fill:!0,outline:!0,outlineWidth:2,outlineColor:i.Color.GREEN,width:2},Da=class extends Z{constructor(e){super(),this._style={...Iu,...e}}_mountedHook(){this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?new i.PolygonHierarchy(this._positions.map(e=>e.clone())):null,!1)},polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions.length<=3?this._positions:null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Ve(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e})}},Xc=Da;var Du={material:i.Color.YELLOW.withAlpha(.6),fill:!0},La=class extends Z{constructor(e){super(),this._maxAnchorSize=2,this._radius=0,this._style={...Du,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>{if(this._positions.length>1){if(this._radius=i.Cartesian3.distance(this._positions[0],this._positions[1]),this._radius<=0)return null;let e=i.EllipseGeometryLibrary.computeEllipsePositions({center:this._positions[0],semiMajorAxis:this._radius,semiMinorAxis:this._radius,rotation:0,granularity:.005},!1,!0),t=i.Cartesian3.unpackArray(e.outerPositions);return t.push(t[0]),new i.PolygonHierarchy(t)}else return null},!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new At(u.transformCartesianToWGS84(this._positions[0]),this._radius).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e,isCenter:t===1}),t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},Qc=La;var Lu={material:i.Color.YELLOW.withAlpha(.6)},Ra=class extends Z{constructor(e){super(),this._maxAnchorSize=2,this._style={...Lu,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5DE6\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({rectangle:{...this._style,coordinates:new i.CallbackProperty(e=>this._positions.length>1?i.Rectangle.fromCartesianArray(this._positions):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new It(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},Kc=Ra;var Oa=class extends Z{constructor(e){super(),this._position=i.Cartesian3.ZERO,this._style={image:Ge,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({position:new i.CallbackProperty(()=>this._position,!1),billboard:{...this._style}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._position&&(e=new Ue(u.transformCartesianToWGS84(this._position),this._style.image).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){this._position=e,this.drawTool.fire(E.DRAW_STOP)}_onAnchorMoving(e){this._position=e}},$c=Oa;var si=Math.PI/2,ka=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.headTailFactor=.8}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_getArrowHeadPoints(e,t,r){let s=w.getBaseLength(e),a=s*this.headHeightFactor,o=e[e.length-1];s=w.distance(o,e[e.length-2]);let n=w.distance(t,r);a>n*this.headTailFactor&&(a=n*this.headTailFactor);let h=a*this.headWidthFactor,c=a*this.neckWidthFactor;a=a>s?s:a;let p=a*this.neckHeightFactor,f=w.getThirdPoint(e[e.length-2],o,0,a,!0),y=w.getThirdPoint(e[e.length-2],o,0,p,!0),_=w.getThirdPoint(o,f,si,h,!1),d=w.getThirdPoint(o,f,si,h,!0),T=w.getThirdPoint(o,y,si,c,!1),C=w.getThirdPoint(o,y,si,c,!0);return[T,_,o,d,C]}_getArrowBodyPoints(e,t,r,s){let a=w.wholeDistance(e),n=w.getBaseLength(e)*s,h=w.distance(t,r),c=(n-h)/2,p=0,f=[],y=[];for(let _=1;_<e.length-1;_++){let d=w.getAngleOfThreePoints(e[_-1],e[_],e[_+1])/2;p+=w.distance(e[_-1],e[_]);let T=(n/2-p/a*c)/Math.sin(d),C=w.getThirdPoint(e[_-1],e[_],Math.PI-d,T,!0),P=w.getThirdPoint(e[_-1],e[_],d,T,!1);f.push(C),y.push(P)}return f.concat(y)}_createHierarchy(){let e=g.parsePolygonCoordToArray(u.transformCartesianArrayToWGS84Array(this._positions))[0],t=e[0],r=e[1];w.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[w.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),n=o[0],h=o[4],c=w.distance(t,r)/w.getBaseLength(a),p=this._getArrowBodyPoints(a,n,h,c),f=p.length,y=[t].concat(p.slice(0,f/2));y.push(n);let _=[r].concat(p.slice(f/2,f));return _.push(h),y=w.getQBSplinePoints(y),_=w.getQBSplinePoints(_),new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(y.concat(o,_.reverse()))))}},Ze=ka;var Ru={material:i.Color.YELLOW.withAlpha(.6),fill:!0},za=class extends Z{constructor(e){super(),this._maxAnchorSize=3,this._style={...Ru,...e},this._graphics=new Ze}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Be(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},ep=za;var ee=Math.PI/2,Na=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.headHeightFactor=.25,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_getArrowPoints(e,t,r,s){let a=w.mid(e,t),o=w.distance(a,r),n=w.getThirdPoint(r,a,0,o*.3,!0),h=w.getThirdPoint(r,a,0,o*.5,!0);n=w.getThirdPoint(a,n,ee,o/5,s),h=w.getThirdPoint(a,h,ee,o/4,s);let c=[a,n,h,r],p=this._getArrowHeadPoints(c),f=p[0],y=p[4],_=w.distance(e,t)/w.getBaseLength(c)/2,d=this._getArrowBodyPoints(c,f,y,_),T=d.length,C=d.slice(0,T/2),P=d.slice(T/2,T);return C.push(f),P.push(y),C=C.reverse(),C.push(t),P=P.reverse(),P.push(e),C.reverse().concat(p,P)}_getArrowHeadPoints(e){let r=w.getBaseLength(e)*this.headHeightFactor,s=e[e.length-1],a=r*this.headWidthFactor,o=r*this.neckWidthFactor,n=r*this.neckHeightFactor,h=w.getThirdPoint(e[e.length-2],s,0,r,!0),c=w.getThirdPoint(e[e.length-2],s,0,n,!0),p=w.getThirdPoint(s,h,ee,a,!1),f=w.getThirdPoint(s,h,ee,a,!0),y=w.getThirdPoint(s,c,ee,o,!1),_=w.getThirdPoint(s,c,ee,o,!0);return[y,p,s,f,_]}_getArrowBodyPoints(e,t,r,s){let a=w.wholeDistance(e),n=w.getBaseLength(e)*s,h=w.distance(t,r),c=(n-h)/2,p=0,f=[],y=[];for(let _=1;_<e.length-1;_++){let d=w.getAngleOfThreePoints(e[_-1],e[_],e[_+1])/2;p+=w.distance(e[_-1],e[_]);let T=(n/2-p/a*c)/Math.sin(d),C=w.getThirdPoint(e[_-1],e[_],Math.PI-d,T,!0),P=w.getThirdPoint(e[_-1],e[_],d,T,!1);f.push(C),y.push(P)}return f.concat(y)}_getTempPoint4(e,t,r){let s=w.mid(e,t),a=w.distance(s,r),o=w.getAngleOfThreePoints(e,s,r),n,h,c,p;return o<ee?(h=a*Math.sin(o),c=a*Math.cos(o),p=w.getThirdPoint(e,s,ee,h,!1),n=w.getThirdPoint(s,p,ee,c,!0)):o>=ee&&o<Math.PI?(h=a*Math.sin(Math.PI-o),c=a*Math.cos(Math.PI-o),p=w.getThirdPoint(e,s,ee,h,!1),n=w.getThirdPoint(s,p,ee,c,!1)):o>=Math.PI&&o<Math.PI*1.5?(h=a*Math.sin(o-Math.PI),c=a*Math.cos(o-Math.PI),p=w.getThirdPoint(e,s,ee,h,!0),n=w.getThirdPoint(s,p,ee,c,!0)):(h=a*Math.sin(Math.PI*2-o),c=a*Math.cos(Math.PI*2-o),p=w.getThirdPoint(e,s,ee,h,!0),n=w.getThirdPoint(s,p,ee,c,!1)),n}_createHierarchy(){let e=this._positions.length,t,r,s=g.parsePolygonCoordToArray(u.transformCartesianArrayToWGS84Array(this._positions))[0],a=s[0],o=s[1],n=s[2];e===3?t=this._getTempPoint4(a,o,n):t=s[3],e===3||e===4?r=w.mid(a,o):r=s[4];let h,c;w.isClockWise(a,o,n)?(h=this._getArrowPoints(a,r,t,!1),c=this._getArrowPoints(r,o,n,!0)):(h=this._getArrowPoints(o,r,n,!1),c=this._getArrowPoints(r,a,t,!0));let p=h.length,f=(p-5)/2,y=h.slice(0,f),_=h.slice(f,f+5),d=h.slice(f+5,p),T=c.slice(0,f),C=c.slice(f,f+5),P=c.slice(f+5,p);T=w.getBezierPoints(T);let A=w.getBezierPoints(P.concat(y.slice(1)));return d=w.getBezierPoints(d),new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(T.concat(C,A,_,d))))}},ai=Na;var Ou={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Fa=class extends Z{constructor(e){super(),this._maxAnchorSize=4,this._style={...Ou,...e},this._graphics=new ai}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new xt(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},tp=Fa;var ip=Math.PI/2,Wa=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.tailWidthFactor=.15,this.neckWidthFactor=.2,this.headWidthFactor=.25,this.headAngle=Math.PI/8.5,this.neckAngle=Math.PI/13}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_createHierarchy(){let e=g.parsePolygonCoordToArray(u.transformCartesianArrayToWGS84Array(this._positions))[0],t=e[0],r=e[1],s=w.getBaseLength(e),a=s*this.tailWidthFactor,o=s*this.neckWidthFactor,n=s*this.headWidthFactor,h=w.getThirdPoint(r,t,ip,a,!0),c=w.getThirdPoint(r,t,ip,a,!1),p=w.getThirdPoint(t,r,this.headAngle,n,!1),f=w.getThirdPoint(t,r,this.headAngle,n,!0),y=w.getThirdPoint(t,r,this.neckAngle,o,!1),_=w.getThirdPoint(t,r,this.neckAngle,o,!0);return new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions([h,y,p,r,f,_,c])))}},oi=Wa;var ku={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Ga=class extends Z{constructor(e){super(),this._maxAnchorSize=2,this._style={...ku,...e},this._graphics=new oi}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Ct(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},rp=Ga;var zu=Math.PI/2,sp=100,Ha=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.t=.4}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_createHierarchy(){let e=g.parsePolygonCoordToArray(u.transformCartesianArrayToWGS84Array(this._positions))[0];if(this._positions.length===2){let o=w.mid(e[0],e[1]),n=w.distance(e[0],o)/.9,h=w.getThirdPoint(e[0],o,zu,n,!0);e=[e[0],h,e[1]]}let t=w.mid(e[0],e[2]);e.push(t,e[0],e[1]);let r=[];for(let o=0;o<e.length-2;o++){let n=e[o],h=e[o+1],c=e[o+2],p=w.getBisectorNormals(this.t,n,h,c);r=r.concat(p)}let s=r.length;r=[r[s-1]].concat(r.slice(0,s-1));let a=[];for(let o=0;o<e.length-2;o++){let n=e[o],h=e[o+1];a.push(n);for(let c=0;c<=sp;c++){let p=w.getCubicValue(c/sp,n,r[o*2],r[o*2+1],h);a.push(p)}a.push(h)}return new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(a)))}},ni=Ha;var Nu={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Ba=class extends Z{constructor(e){super(),this._maxAnchorSize=3,this._style={...Nu,...e},this._graphics=new ni}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Tt(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},ap=Ba;var Ua=class extends Ze{constructor(e){super(e),this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.tailWidthFactor=.1,this.headTailFactor=.8,this.swallowTailFactor=1}_createHierarchy(){let e=g.parsePolygonCoordToArray(u.transformCartesianArrayToWGS84Array(this._positions))[0],t=e[0],r=e[1];w.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[w.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),n=o[0],h=o[4],c=w.distance(t,r),p=w.getBaseLength(a),f=p*this.tailWidthFactor*this.swallowTailFactor,y=w.getThirdPoint(a[1],a[0],0,f,!0),_=c/p,d=this._getArrowBodyPoints(a,n,h,_),T=d.length,C=[t].concat(d.slice(0,T/2));C.push(n);let P=[r].concat(d.slice(T/2,T));return P.push(h),C=w.getQBSplinePoints(C),P=w.getQBSplinePoints(P),new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(g.parsePositions(C.concat(o,P.reverse(),[y,C[0]]))))}},li=Ua;var Fu={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Va=class extends Z{constructor(e){super(),this._maxAnchorSize=3,this._style={...Fu,...e},this._graphics=new li}_mountEntity(){this.drawTool.tooltipMess="\u5DE6\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Et(u.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP))}},op=Va;var ja=class{constructor(e){this._viewer=void 0,this._layer=void 0,this._overlay=e,this._overlay.show=!1,this._delegate=new i.Entity,this._delegate.merge(e.delegate),this._options={},this._positions=[]}get editTool(){return this._viewer.editTool}_mountedHook(){}_stoppedHook(){this._overlay.positions=u.transformCartesianArrayToWGS84Array(this._positions),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions=[].concat(u.transformWGS84ArrayToCartesianArray(this._overlay.positions)),this._positions.forEach((e,t)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:e,index:t})})}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now());this._positions[r.index]=t}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now());this._positions[r.index]=t}_onEditStop({pickedAnchor:e,position:t}){this._unbindEvent(),this._viewer.editTool.deactivate(),this._layer.entities.remove(this._delegate),this._stoppedHook()}_bindEvent(){return this.editTool.on(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.on(E.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.on(E.EDIT_STOP,this._onEditStop,this),this}_unbindEvent(){this.editTool.off(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.off(E.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.off(E.EDIT_STOP,this._onEditStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.editTool.tooltipMess="\u70B9\u51FB\u951A\u70B9\u79FB\u52A8,\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._viewer.editTool.activate(t),this._mountedHook(),this._mountAnchor(),this._unbindEvent(),this._bindEvent(),this}stop(){return this.editTool.fire(E.EDIT_STOP,{pickedAnchor:null,position:null}),this}},Y=ja;var Za=class extends Y{constructor(e){super(e),this._position=void 0}_mountedHook(){this.editTool.tooltipMess="\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._position=this._delegate.position.getValue(i.JulianDate.now()),this._delegate.position=new i.CallbackProperty(()=>this._position,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.position=u.transformCartesianToWGS84(this._position),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_onAnchorMoving({pickedAnchor:e,position:t}){this._position=t}},np=Za;var Ya=class extends Y{constructor(e){super(e)}_mountedHook(){this._delegate.polyline.positions=new i.CallbackProperty(()=>this._positions.length>1?this._positions:null,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.positions=u.transformCartesianArrayToWGS84Array(this._positions.filter((e,t)=>t%2===0)),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions=[];let e=this._overlay.delegate.polyline.positions.getValue(i.JulianDate.now());for(let t=0;t<e.length-1;t++){let r=F(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.push(e[e.length-1]),this._positions.forEach((t,r)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})})}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a=F(this._positions[s],this._positions[s-1]),o=F(this._positions[s],this._positions[s+1]);this._positions.splice(s,1,a,t,o),this.editTool.fire(E.CLEAR_ANCHOR),this._positions.forEach((n,h)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:n,index:h,isMid:h%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(this._positions[s]=t,!r.isMid&&this._options.maxAnchorSize>2){let a=-1,o=-1,n=-1,h=-1,c=this._positions.length;if(s===0?(n=s+2,h=s+1):r.index===c-1?(a=s-2,o=s-1):(a=s-2,o=s-1,n=s+2,h=s+1),a>0){let p=F(this._positions[a],this._positions[s]);this._positions[o]=p,this.editTool.fire(E.UPDATE_ANCHOR,{index:o,position:p})}if(n>0){let p=F(this._positions[n],this._positions[s]);this._positions[h]=p,this.editTool.fire(E.UPDATE_ANCHOR,{index:h,position:p})}}}},lp=Ya;var Ja=class extends Y{constructor(e){super(e)}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(e=>this._positions.length>2?new i.PolygonHierarchy(this._positions.map(t=>t.clone())):null,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.positions=u.transformCartesianArrayToWGS84Array(this._positions.filter((e,t)=>t%2===0)),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions=[];let e=this._overlay.delegate.polygon.hierarchy.getValue(i.JulianDate.now()).positions;e.push(e[0]);for(let t=0;t<e.length-1;t++){let r=F(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.forEach((t,r)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})})}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a,o,n=this._positions.length;s===n-1?(a=F(this._positions[s],this._positions[s-1]),o=F(this._positions[s],this._positions[0])):(a=F(this._positions[s],this._positions[s-1]),o=F(this._positions[s],this._positions[s+1])),this._positions.splice(s,1,a,t,o),this.editTool.fire(E.CLEAR_ANCHOR),this._positions.forEach((h,c)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:h,index:c,isMid:c%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;this._positions[s]=t;let a=this._positions.length;if(!r.isMid){let o=-1,n=-1,h=-1,c=-1;s===0?(o=a-2,n=a-1,h=s+2,c=s+1):s===a-2?(o=s-2,n=s-1,h=0,c=a-1):(o=s-2,n=s-1,h=s+2,c=s+1);let p=F(this._positions[o],this._positions[s]),f=F(this._positions[h],this._positions[s]);this._positions[n]=p,this._positions[c]=f,this.editTool.fire(E.UPDATE_ANCHOR,{index:n,position:p}),this.editTool.fire(E.UPDATE_ANCHOR,{index:c,position:f})}}},hp=Ja;var qa=class extends Y{constructor(e){super(e),this._center=void 0,this._radius=0}_mountedHook(){this._radius=this._overlay.radius,this._center=u.transformWGS84ToCartesian(this._overlay.center),this._positions=[].concat([this._center,this._computeCirclePoints(this._center,this._radius)[0]]),this._delegate.polygon.hierarchy=new i.CallbackProperty(e=>{if(this._positions.length>1){if(this._radius=i.Cartesian3.distance(this._positions[0],this._positions[1]),this._radius<=0)return null;let t=this._computeCirclePoints(this._positions[0],this._radius);return t.push(t[0]),new i.PolygonHierarchy(t)}else return null},!1),this._layer.entities.add(this._delegate)}_computeCirclePoints(e,t){let r=[],s=i.EllipseGeometryLibrary.computeEllipsePositions({center:e,semiMajorAxis:t,semiMinorAxis:t,rotation:0,granularity:.005},!1,!0);return s&&s.outerPositions&&(r=i.Cartesian3.unpackArray(s.outerPositions)),r}_stoppedHook(){this._overlay.center=u.transformCartesianToWGS84(this._positions[0]),this._overlay.radius=this._radius,this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions.forEach((e,t)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:e,index:t,isCenter:t%2===0})})}},cp=qa;var Xa=class extends Y{constructor(e){super(e),this._overlay=e}_mountedHook(){this._delegate.rectangle.coordinates=new i.CallbackProperty(e=>this._positions.length>1?i.Rectangle.fromCartesianArray(this._positions):null,!1),this._layer.entities.add(this._delegate)}},pp=Xa;var Qa=class extends Y{constructor(e){super(e),this._position=void 0}_mountedHook(){this.editTool.tooltipMess="\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._position=this._delegate.position.getValue(i.JulianDate.now()),this._delegate.position=new i.CallbackProperty(()=>this._position,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.position=u.transformCartesianToWGS84(this._position),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_onAnchorMoving({pickedAnchor:e,position:t}){this._position=t}},dp=Qa;var Ka=class extends Y{constructor(e){super(e),this._graphics=new Ze}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},mp=Ka;var $a=class extends Y{constructor(e){super(e),this._graphics=new ai}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},up=$a;var eo=class extends Y{constructor(e){super(e),this._graphics=new oi}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},fp=eo;var to=class extends Y{constructor(e){super(e),this._graphics=new ni}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},_p=to;var io=class extends Y{constructor(e){super(e),this._graphics=new li}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},gp=io;var ro=class{constructor(e,t={}){this._viewer=e,this._options=t,this._layer=new i.CustomDataSource("plot-layer"),this._viewer.dataSources.add(this._layer),this._currentWorker=void 0,this._state=void 0}get viewer(){return this._viewer}get layer(){return this._layer}get state(){return this._state}_createDrawWorker(e,t){let r;switch(e){case N.POINT:r=new Jc(t);break;case N.POLYLINE:r=new qc(t);break;case N.POLYGON:r=new Xc(t);break;case N.CIRCLE:r=new Qc(t);break;case N.RECT:r=new Kc(t);break;case N.BILLBOARD:r=new $c(t);break;case N.ATTACK_ARROW:r=new ep(t);break;case N.DOUBLE_ARROW:r=new tp(t);break;case N.FINE_ARROW:r=new rp(t);break;case N.TAILED_ATTACK_ARROW:r=new op(t);break;case N.GATHERING_PLACE:r=new ap(t);break;default:break}return r}_createEditWorker(e){let t;switch(e.type){case N.POINT:t=new np(e);break;case N.POLYLINE:t=new lp(e);break;case N.POLYGON:t=new hp(e);break;case N.CIRCLE:t=new cp(e);break;case N.RECT:t=new pp(e);break;case N.BILLBOARD:t=new dp(e);break;case N.ATTACK_ARROW:t=new mp(e);break;case N.DOUBLE_ARROW:t=new up(e);break;case N.FINE_ARROW:t=new fp(e);break;case N.TAILED_ATTACK_ARROW:t=new gp(e);break;case N.GATHERING_PLACE:t=new _p(e);break;default:break}return t}draw(e,t,r={},s=!1){var o;this._state="draw",this._currentWorker&&this._currentWorker.stop();let a=(r==null?void 0:r.maxAnchorSize)||999;return r&&delete r.maxAnchorSize,this._currentWorker=(o=this._createDrawWorker(e,r))==null?void 0:o.start(this,{...this._options,maxAnchorSize:a,onDrawStop:t,clampToModel:s!=null?s:this._options.clampToModel}),this}edit(e,t,r=!1){var s;return this._state="edit",this._currentWorker&&this._currentWorker.stop(),this._currentWorker=(s=this._createEditWorker(e))==null?void 0:s.start(this,{...this._options,onEditStop:t,clampToModel:r!=null?r:this._options.clampToModel}),this}clusterPositions(e,t=60){let r=e.positions||[];switch(e.type){case N.POINT:r.push(e.position);break;case N.CIRCLE:r=this.circleToCluster(e,t);break;case N.RECT:r=this.rectangleToCluster(e);break}return r}circleToCluster(e={},t=60){let r=e.center,s=i.Math.toRadians(e.radius/1e3);var a=i.Math.toRadians(r._lng),o=i.Math.toRadians(r._lat);let n=i.Math.toRadians(r._heading);t=Math.ceil(360/(t||60));let h=[];for(let c=0;c<=360;c+=t){let p=n+i.Math.toRadians(c),f=new i.Cartographic(a+s*Math.cos(p),o+s*Math.sin(p),0),y=i.Ellipsoid.WGS84.cartographicToCartesian(f),_=i.Cartographic.fromCartesian(y);h.push(new U(i.Math.toDegrees(_.longitude),i.Math.toDegrees(_.latitude),_.height||0))}return h}rectangleToCluster(e={}){let t=e.positions,r=t[0]._lng,s=t[0]._lat,a=t[1]._lng,o=t[1]._lat;t.push(new U(r,o)),t.push(new U(a,s));var n=i.Rectangle.fromDegrees(r,s,a,o);return t}stop(){this._currentWorker&&this._currentWorker.stop(),this._currentWorker=null}destroy(){return this._viewer.dataSources.remove(this._layer),this._viewer=void 0,this}},Wu=ro;var so=class{constructor(e){this._viewer=e,this._options={}}_bindEvent(){}_unbindEvent(){}start(){if(this._viewer.clock.shouldAnimate=!0,this._unbindEvent(),this._options.duration){let e=setTimeout(()=>{this._unbindEvent(),this._options.callback&&this._options.callback.call(this._options.context||this),clearTimeout(e)},Number(this._options.duration)*1e3)}return this._bindEvent(),this}stop(){return this._unbindEvent(),this}},ae=so;var Gu={},q=Gu;var ao=class extends ae{constructor(e,t={}){super(e),this._options=t,this._heading=e.camera.heading,this._aroundAmount=.2}get type(){return q.AROUND_VIEW}set aroundAmount(e){this._aroundAmount=e}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onAround,this)}_unbindEvent(){this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.clock.onTick.removeEventListener(this._onAround,this)}_onAround(e,t){this._heading+=i.Math.toRadians(this._aroundAmount),(this._heading>=Math.PI*2||this._heading<=-Math.PI*2)&&(this._heading=0),this._viewer.camera.setView({orientation:{heading:this._heading,pitch:this._options.pitch?i.Math.toRadians(this._options.pitch):this._viewer.camera.pitch,roll:this._options.roll?i.Math.toRadians(this._options.roll):this._viewer.camera.roll}})}};q.AROUND_VIEW="around_view";var yp=ao;var oo=class extends ae{constructor(e,t,r={}){super(e),this._position=g.parsePosition(t),this._options=r,this._heading=e.camera.heading,this._aroundAmount=.2}get type(){return q.AROUND_POINT}set position(e){this._position=g.parsePosition(e)}set aroundAmount(e){this._aroundAmount=e}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onAround,this)}_unbindEvent(){this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.clock.onTick.removeEventListener(this._onAround,this)}_onAround(e,t){this._heading+=i.Math.toRadians(this._aroundAmount),(this._heading>=Math.PI*2||this._heading<=-Math.PI*2)&&(this._heading=0),this._viewer.camera.lookAt(u.transformWGS84ToCartesian(this._position),new i.HeadingPitchRange(this._heading,i.Math.toRadians(this._options.pitch||0),this._options.range||1e3))}};q.AROUND_POINT="around_point";var vp=oo;var wp=`in vec2 v_textureCoordinates;\r
1436
+ `;i.Material.WallDiffuseType="WallDiffuse";i.Material._materialCache.addMaterial(i.Material.WallDiffuseType,{fabric:{type:i.Material.WallDiffuseType,uniforms:{color:new i.Color(1,0,0,.7)},source:up},translucent:function(n){return!0}});i.Material.WallImageTrailType="WallImageTrail";i.Material._materialCache.addMaterial(i.Material.WallImageTrailType,{fabric:{type:i.Material.WallImageTrailType,uniforms:{image:i.Material.DefaultImageId,color:new i.Color(1,0,0,.7),speed:3,repeat:new i.Cartesian2(1,1)},source:fp},translucent:function(n){return!0}});i.Material.WallLineTrailType="WallLineTrail";i.Material._materialCache.addMaterial(i.Material.WallLineTrailType,{fabric:{type:i.Material.WallLineTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,repeat:new i.Cartesian2(1,1),speed:3},source:_p},translucent:function(n){return!0}});i.Material.WallTrailType="WallTrail";i.Material._materialCache.addMaterial(i.Material.WallTrailType,{fabric:{type:i.Material.WallTrailType,uniforms:{color:new i.Color(1,0,0,.7),image:i.Material.DefaultImageId,speed:1},source:gp},translucent:function(n){return!0}});var yo=class{constructor(e={}){this._definitionChanged=new i.Event,this._color=void 0,this._colorSubscription=void 0,this._speed=void 0,this._speedSubscription=void 0,this.color=e.color||i.Color.fromBytes(0,255,255,255),this.speed=e.speed||1}get isConstant(){return!1}get definitionChanged(){return this._definitionChanged}getType(e){return null}getValue(e,t){return t=i.defaultValue(t,{}),t}equals(e){return this===e}},F=yo;var ai=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CircleBlurType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(ai.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var yp=ai;var oi=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CircleDiffuseType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(oi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var vp=oi;var ni=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CircleFadeType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(ni.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var wp=ni;var li=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CirclePulseType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(li.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var xp=li;var hi=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CircleScanType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(hi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Cp=hi;var ci=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CircleSpiralType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(ci.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Tp=ci;var di=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.CircleVaryType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(di.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Ep=di;var pi=class n extends F{constructor(e={}){super(e),this.count=Math.max(e.count||3,1),this.gradient=i.Math.clamp(e.gradient||.1,0,1)}get isConstant(){return!1}get definitionChanged(){return this._definitionChanged}getType(e){return i.Material.CircleWaveType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t.count=this.count,t.gradient=this.gradient,t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(pi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Pp=pi;var mi=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.EllipsoidElectricType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(mi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Mp=mi;var ui=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.EllipsoidTrailType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(ui.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var bp=ui;var fi=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.PolylineFlickerType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(fi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Ap=fi;var _i=class n extends F{constructor(e={}){super(e),this._percent=void 0,this._percentSubscription=void 0,this._gradient=void 0,this._gradientSubscription=void 0,this.percent=e.percent||.03,this.gradient=e.gradient||.1}getType(e){return i.Material.PolylineFlowType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t.percent=i.Property.getValueOrUndefined(this._percent,e),t.gradient=i.Property.getValueOrUndefined(this._gradient,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)&&i.Property.equals(this._percent,e._percent)&&i.Property.equals(this._gradient,e._gradient)}};Object.defineProperties(_i.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),percent:i.createPropertyDescriptor("percent"),gradient:i.createPropertyDescriptor("gradient")});var Sp=_i;var gi=class n extends F{constructor(e={}){var t,r;super(e),this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this.image=e.image,this.repeat=new i.Cartesian2(((t=e.repeat)==null?void 0:t.x)||1,((r=e.repeat)==null?void 0:r.y)||1)}getType(e){return i.Material.PolylineImageTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.repeat=i.Property.getValueOrUndefined(this._repeat,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._image,e._image)&&i.Property.equals(this._repeat,e._repeat)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(gi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),image:i.createPropertyDescriptor("image"),repeat:i.createPropertyDescriptor("repeat")});var Ip=gi;var yi="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAgAAAACYCAYAAACS0lH9AAAACXBIWXMAAAsTAAALEwEAmpwYAAAJ0GlUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgMTE2LjE2NDY1NSwgMjAyMS8wMS8yNi0xNTo0MToyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wTU09Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9tbS8iIHhtbG5zOnN0RXZ0PSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VFdmVudCMiIHhtbG5zOnN0UmVmPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvc1R5cGUvUmVzb3VyY2VSZWYjIiB4bWxuczpkYz0iaHR0cDovL3B1cmwub3JnL2RjL2VsZW1lbnRzLzEuMS8iIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIgeG1sbnM6dGlmZj0iaHR0cDovL25zLmFkb2JlLmNvbS90aWZmLzEuMC8iIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIiB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDplODY0YmNmNy1lZGIyLWIyNDQtYWI0NC04OWZkNmMwOTQ4MDYiIHhtcE1NOkluc3RhbmNlSUQ9InhtcC5paWQ6NjIyOGMxMDUtODFmZS00MjAxLWIwOTEtZDkwMGI0NTI0NWMwIiB4bXBNTTpPcmlnaW5hbERvY3VtZW50SUQ9IjcxNzA5OEJGODAwODNEREJGRDQyQzAzMzQ5NDlDRDFDIiBkYzpmb3JtYXQ9ImltYWdlL3BuZyIgcGhvdG9zaG9wOkNvbG9yTW9kZT0iMyIgcGhvdG9zaG9wOklDQ1Byb2ZpbGU9IiIgdGlmZjpJbWFnZVdpZHRoPSI1MTIiIHRpZmY6SW1hZ2VMZW5ndGg9IjE1MiIgdGlmZjpQaG90b21ldHJpY0ludGVycHJldGF0aW9uPSIyIiB0aWZmOlNhbXBsZXNQZXJQaXhlbD0iMyIgdGlmZjpYUmVzb2x1dGlvbj0iMS8xIiB0aWZmOllSZXNvbHV0aW9uPSIxLzEiIHRpZmY6UmVzb2x1dGlvblVuaXQ9IjEiIGV4aWY6RXhpZlZlcnNpb249IjAyMzEiIGV4aWY6Q29sb3JTcGFjZT0iNjU1MzUiIGV4aWY6UGl4ZWxYRGltZW5zaW9uPSI1MTIiIGV4aWY6UGl4ZWxZRGltZW5zaW9uPSIxNTIiIHhtcDpDcmVhdGVEYXRlPSIyMDIxLTAyLTIzVDEwOjAyOjQxKzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCIgeG1wOk1ldGFkYXRhRGF0ZT0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCI+IDx4bXBNTTpIaXN0b3J5PiA8cmRmOlNlcT4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmZmYTk5ZjhhLTdiZmQtNDcxNi04MTgwLWJmZTUyMmFmNGUzNSIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249ImNvbnZlcnRlZCIgc3RFdnQ6cGFyYW1ldGVycz0iZnJvbSBpbWFnZS9qcGVnIHRvIGltYWdlL3BuZyIvPiA8cmRmOmxpIHN0RXZ0OmFjdGlvbj0iZGVyaXZlZCIgc3RFdnQ6cGFyYW1ldGVycz0iY29udmVydGVkIGZyb20gaW1hZ2UvanBlZyB0byBpbWFnZS9wbmciLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjYyMjhjMTA1LTgxZmUtNDIwMS1iMDkxLWQ5MDBiNDUyNDVjMCIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxMDowODo0NCswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDx4bXBNTTpEZXJpdmVkRnJvbSBzdFJlZjppbnN0YW5jZUlEPSJ4bXAuaWlkOmZmYTk5ZjhhLTdiZmQtNDcxNi04MTgwLWJmZTUyMmFmNGUzNSIgc3RSZWY6ZG9jdW1lbnRJRD0iNzE3MDk4QkY4MDA4M0REQkZENDJDMDMzNDk0OUNEMUMiIHN0UmVmOm9yaWdpbmFsRG9jdW1lbnRJRD0iNzE3MDk4QkY4MDA4M0REQkZENDJDMDMzNDk0OUNEMUMiLz4gPHBob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHJkZjpCYWc+IDxyZGY6bGk+NzE3MDk4QkY4MDA4M0REQkZENDJDMDMzNDk0OUNEMUM8L3JkZjpsaT4gPC9yZGY6QmFnPiA8L3Bob3Rvc2hvcDpEb2N1bWVudEFuY2VzdG9ycz4gPHRpZmY6Qml0c1BlclNhbXBsZT4gPHJkZjpTZXE+IDxyZGY6bGk+ODwvcmRmOmxpPiA8cmRmOmxpPjg8L3JkZjpsaT4gPHJkZjpsaT44PC9yZGY6bGk+IDwvcmRmOlNlcT4gPC90aWZmOkJpdHNQZXJTYW1wbGU+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+h9EbuwAAA01JREFUeJzt3TuOFVkQBNDoJhmEkDBgZv8L5GMgIcRvHg5ryDTiHKn98Co67q16T4/HYwIAVHm+DgAA7FMAAKCQAgAAhSbJ03UIAGCXBQAACikAAFDIEQAAFLIAAEAhBQAACikAAFBoogQAQB0PfwAopAAAQCGvAQJAIQsAABSyAABAIQsAABSyAABAIQUAAAo5AgCAQr4ECACFPPwBoJACAACFHAEAQCEPfwAoZAEAgEIe/gBQyAIAAIU8/AGgkAUAAAr5LQAAKOS/fwAoZAEAgELuAABAIQsAABRSAACgkAIAAIXcAQCAQhYAAChkAQCAQgoAABRSAACgkIc/ABSaJC+uQwAAu7wFAACFFAAAKDR//wCAIhYAACjkEiAAFLIAAEChSfLyOgQAsMuXAAGgkLcAAKCQAgAAhbwFAACFFAAAKOQIAAAKTZJ/rkMAALsUAAAo5AgAAAr5EiAAFFIAAKCQOwAAUEgBAIBCk+TVdQgAYNckeXMdAgDYNUneXocAAHZNkvfXIQCAXZPkv+sQAMCuSfLvdQgAYNckeXcdAgDY5RIgABSaJK+vQwAAu/wWAAAUmiRP1yEAgF2T5HEdAgDYNUl+XocAAHZNkm/XIQCAXZPky3UIAGDXJPl8HQIA2DVJPl6HAAB2TZIP1yEAgF2T5NN1CABgl0uAAFBokny9DgEA7Jok369DAAC7JsmP6xAAwC4FAAAK+S0AACikAABAoUny6zoEALDLHQAAKKQAAEAhRwAAUGiS/L4OAQDsUgAAoJAjAAAopAAAQKFJ8v91CABgly8BAkChSfK4DgEA7PIWAAAUsgAAQCFvAQBAIQsAABRSAACgkEuAAFDo+ToAALDPlwABoJACAACFFAAAKOQtAAAoZAEAgEIWAAAopAAAQCEFAAAKuQMAAIUsAABQyKeAAaCQBQAACrkDAACFHAEAQCELAAAUsgAAQCELAAAUsgAAQCELAAAUsgAAQCEFAAAKOQIAgEIWAAAo5LcAAKCQAgAAhRwBAEAhCwAAFLIAAEAhCwAAFLIAAEAhBQAACvkSIAAUsgAAQCEFAAAKKQAAUMhrgABQyAIAAIUUAAAo5AgAAApZAACgkAIAAIUUAAAo5A4AABT6A6gaPQ6/wRIfAAAAAElFTkSuQmCC";var vi=class n extends F{constructor(e={}){super(e),this._image=void 0,this._imageSubscription=void 0,this.image=yi}getType(e){return i.Material.PolylineLightingType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._image,e._image)}};Object.defineProperties(vi.prototype,{color:i.createPropertyDescriptor("color"),image:i.createPropertyDescriptor("image")});var Dp=vi;var wi=class n extends F{constructor(e={}){super(e),this._image=void 0,this._imageSubscription=void 0,this.image=yi}getType(e){return i.Material.PolylineLightingTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(wi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),image:i.createPropertyDescriptor("image")});var Lp=wi;var xi=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.PolylineTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(xi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Rp=xi;var Ci=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.RadarLineType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ci.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var kp=Ci;var Ti=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.RadarSweepType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ti.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Op=Ti;var Ei=class n extends F{constructor(e={}){super(e)}getType(e){return i.Material.RadarWaveType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Ei.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed")});var Np=Ei;var Pi=class n extends F{constructor(e={}){var t,r;super(e),this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this.image=e.image,this.repeat=new i.Cartesian2(((t=e.repeat)==null?void 0:t.x)||1,((r=e.repeat)==null?void 0:r.y)||1)}getType(e){return i.Material.WallImageTrailType}getValue(e,t){return t=i.defaultValue(t,{}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.repeat=i.Property.getValueOrUndefined(this._repeat,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._image,e._image)&&i.Property.equals(this._repeat,e._repeat)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(Pi.prototype,{image:i.createPropertyDescriptor("image"),color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),repeat:i.createPropertyDescriptor("repeat")});var zp=Pi;var Fp="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAVwAAABACAYAAABWdc94AAAACXBIWXMAAAsTAAALEwEAmpwYAAAGx2lUWHRYTUw6Y29tLmFkb2JlLnhtcAAAAAAAPD94cGFja2V0IGJlZ2luPSLvu78iIGlkPSJXNU0wTXBDZWhpSHpyZVN6TlRjemtjOWQiPz4gPHg6eG1wbWV0YSB4bWxuczp4PSJhZG9iZTpuczptZXRhLyIgeDp4bXB0az0iQWRvYmUgWE1QIENvcmUgNi4wLWMwMDIgMTE2LjE2NDY1NSwgMjAyMS8wMS8yNi0xNTo0MToyMCAgICAgICAgIj4gPHJkZjpSREYgeG1sbnM6cmRmPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5LzAyLzIyLXJkZi1zeW50YXgtbnMjIj4gPHJkZjpEZXNjcmlwdGlvbiByZGY6YWJvdXQ9IiIgeG1sbnM6eG1wPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvIiB4bWxuczp4bXBNTT0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL21tLyIgeG1sbnM6c3RFdnQ9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC9zVHlwZS9SZXNvdXJjZUV2ZW50IyIgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIiB4bWxuczpwaG90b3Nob3A9Imh0dHA6Ly9ucy5hZG9iZS5jb20vcGhvdG9zaG9wLzEuMC8iIHhtcDpDcmVhdG9yVG9vbD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHhtcDpDcmVhdGVEYXRlPSIyMDIxLTAyLTIzVDE3OjE0OjMyKzA4OjAwIiB4bXA6TWV0YWRhdGFEYXRlPSIyMDIxLTAyLTI0VDE0OjIwOjE2KzA4OjAwIiB4bXA6TW9kaWZ5RGF0ZT0iMjAyMS0wMi0yNFQxNDoyMDoxNiswODowMCIgeG1wTU06SW5zdGFuY2VJRD0ieG1wLmlpZDo1NzQzY2I0NC0zMzk3LTQ5OTAtYjg4OC0yNDFlNmExYmQyYWYiIHhtcE1NOkRvY3VtZW50SUQ9ImFkb2JlOmRvY2lkOnBob3Rvc2hvcDo5YWYxZDY1MC1jNWRlLTVmNDgtYWYzNi1hZDE4ZWRkN2QzYTAiIHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD0ieG1wLmRpZDpiMmZjZmU2Zi1hZWQwLTRjMWQtYjZmOS1lNjAwMjJiNmEwOGUiIGRjOmZvcm1hdD0iaW1hZ2UvcG5nIiBwaG90b3Nob3A6Q29sb3JNb2RlPSIzIiBwaG90b3Nob3A6SUNDUHJvZmlsZT0ic1JHQiBJRUM2MTk2Ni0yLjEiPiA8eG1wTU06SGlzdG9yeT4gPHJkZjpTZXE+IDxyZGY6bGkgc3RFdnQ6YWN0aW9uPSJjcmVhdGVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOmIyZmNmZTZmLWFlZDAtNGMxZC1iNmY5LWU2MDAyMmI2YTA4ZSIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxNzoxNDozMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjNjM2JjM2I5LTkwNDEtNDk1ZS04MTc5LTdkZjc3NDIwZDczOSIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yM1QxNzoxNDozMiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPHJkZjpsaSBzdEV2dDphY3Rpb249InNhdmVkIiBzdEV2dDppbnN0YW5jZUlEPSJ4bXAuaWlkOjU3NDNjYjQ0LTMzOTctNDk5MC1iODg4LTI0MWU2YTFiZDJhZiIgc3RFdnQ6d2hlbj0iMjAyMS0wMi0yNFQxNDoyMDoxNiswODowMCIgc3RFdnQ6c29mdHdhcmVBZ2VudD0iQWRvYmUgUGhvdG9zaG9wIDIxLjIgKE1hY2ludG9zaCkiIHN0RXZ0OmNoYW5nZWQ9Ii8iLz4gPC9yZGY6U2VxPiA8L3htcE1NOkhpc3Rvcnk+IDwvcmRmOkRlc2NyaXB0aW9uPiA8L3JkZjpSREY+IDwveDp4bXBtZXRhPiA8P3hwYWNrZXQgZW5kPSJyIj8+eAiLkwAAAQZJREFUeJzt3LERwDAMxDAl5/1XdqYIXRiYQBULFf/svQeA/72nDwC4heACRAQXICK4ABHBBYgILkBEcAEiggsQEVyAiOACRAQXICK4ABHBBYgILkBkzYx9RoDAmpnn9BEAN/BSAIgILkBEcAEiggsQEVyAiOACRAQXICK4ABHBBYgILkBEcAEiggsQEVyAiOACRAQXIGKAHCBigBwg4qUAEBFcgIjgAkQEFyAiuAARwQWICC5ARHABIoILEBFcgIjgAkQEFyAiuAARwQWI2MMFiNjDBYh4KQBEBBcgIrgAEcEFiAguQERwASKCCxARXICI4AJEBBcgIrgAEcEFiAguQERwASIfRmAGiWTgoMYAAAAASUVORK5CYII=";var Mi=class n extends F{constructor(e={}){var t,r;super(e),this._image=void 0,this._imageSubscription=void 0,this._repeat=void 0,this._repeatSubscription=void 0,this.image=Fp,this.repeat=new i.Cartesian2(((t=e.repeat)==null?void 0:t.x)||1,((r=e.repeat)==null?void 0:r.y)||1)}getType(e){return i.Material.WallLineTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.repeat=i.Property.getValueOrUndefined(this._repeat,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)&&i.Property.equals(this._repeat,e._repeat)}};Object.defineProperties(Mi.prototype,{color:i.createPropertyDescriptor("color"),image:i.createPropertyDescriptor("image"),repeat:i.createPropertyDescriptor("repeat"),speed:i.createPropertyDescriptor("speed")});var Gp=Mi;var Hp="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAEAAAABACAYAAACqaXHeAAAAAXNSR0IArs4c6QAAAOhlWElmTU0AKgAAAAgABgESAAMAAAABAAEAAAEaAAUAAAABAAAAVgEbAAUAAAABAAAAXgExAAIAAAAkAAAAZgEyAAIAAAAUAAAAiodpAAQAAAABAAAAngAAAAAAAABIAAAAAQAAAEgAAAABQWRvYmUgUGhvdG9zaG9wIENDIDIwMTggKE1hY2ludG9zaCkAMjAxODoxMDoyNiAxNTozMDozNAAABJAEAAIAAAAUAAAA1KABAAMAAAABAAEAAKACAAQAAAABAAAAQKADAAQAAAABAAAAQAAAAAAyMDE4OjEwOjI2IDE1OjI0OjI1ALUCxicAAAAJcEhZcwAACxMAAAsTAQCanBgAAAdgaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA1LjQuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOnhtcE1NPSJodHRwOi8vbnMuYWRvYmUuY29tL3hhcC8xLjAvbW0vIgogICAgICAgICAgICB4bWxuczpzdEV2dD0iaHR0cDovL25zLmFkb2JlLmNvbS94YXAvMS4wL3NUeXBlL1Jlc291cmNlRXZlbnQjIgogICAgICAgICAgICB4bWxuczp4bXA9Imh0dHA6Ly9ucy5hZG9iZS5jb20veGFwLzEuMC8iCiAgICAgICAgICAgIHhtbG5zOnBob3Rvc2hvcD0iaHR0cDovL25zLmFkb2JlLmNvbS9waG90b3Nob3AvMS4wLyIKICAgICAgICAgICAgeG1sbnM6ZGM9Imh0dHA6Ly9wdXJsLm9yZy9kYy9lbGVtZW50cy8xLjEvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDx4bXBNTTpJbnN0YW5jZUlEPnhtcC5paWQ6MjgyZGYxNWEtYzg5MC00ODUzLWJlZDQtOWEyZjQxMmY0NjljPC94bXBNTTpJbnN0YW5jZUlEPgogICAgICAgICA8eG1wTU06RG9jdW1lbnRJRD54bXAuZGlkOjI4MmRmMTVhLWM4OTAtNDg1My1iZWQ0LTlhMmY0MTJmNDY5YzwveG1wTU06RG9jdW1lbnRJRD4KICAgICAgICAgPHhtcE1NOk9yaWdpbmFsRG9jdW1lbnRJRD54bXAuZGlkOjI4MmRmMTVhLWM4OTAtNDg1My1iZWQ0LTlhMmY0MTJmNDY5YzwveG1wTU06T3JpZ2luYWxEb2N1bWVudElEPgogICAgICAgICA8eG1wTU06SGlzdG9yeT4KICAgICAgICAgICAgPHJkZjpTZXE+CiAgICAgICAgICAgICAgIDxyZGY6bGkgcmRmOnBhcnNlVHlwZT0iUmVzb3VyY2UiPgogICAgICAgICAgICAgICAgICA8c3RFdnQ6c29mdHdhcmVBZ2VudD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKTwvc3RFdnQ6c29mdHdhcmVBZ2VudD4KICAgICAgICAgICAgICAgICAgPHN0RXZ0OndoZW4+MjAxOC0xMC0yNlQxNToyNDoyNSswODowMDwvc3RFdnQ6d2hlbj4KICAgICAgICAgICAgICAgICAgPHN0RXZ0Omluc3RhbmNlSUQ+eG1wLmlpZDoyODJkZjE1YS1jODkwLTQ4NTMtYmVkNC05YTJmNDEyZjQ2OWM8L3N0RXZ0Omluc3RhbmNlSUQ+CiAgICAgICAgICAgICAgICAgIDxzdEV2dDphY3Rpb24+Y3JlYXRlZDwvc3RFdnQ6YWN0aW9uPgogICAgICAgICAgICAgICA8L3JkZjpsaT4KICAgICAgICAgICAgPC9yZGY6U2VxPgogICAgICAgICA8L3htcE1NOkhpc3Rvcnk+CiAgICAgICAgIDx4bXA6TW9kaWZ5RGF0ZT4yMDE4LTEwLTI2VDE1OjMwOjM0KzA4OjAwPC94bXA6TW9kaWZ5RGF0ZT4KICAgICAgICAgPHhtcDpDcmVhdG9yVG9vbD5BZG9iZSBQaG90b3Nob3AgQ0MgMjAxOCAoTWFjaW50b3NoKTwveG1wOkNyZWF0b3JUb29sPgog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";var bi=class n extends F{constructor(e={}){super(e),this._image=void 0,this._imageSubscription=void 0,this.image=Hp}getType(e){return i.Material.WallTrailType}getValue(e,t){return t||(t={}),t.color=i.Property.getValueOrUndefined(this._color,e),t.image=i.Property.getValueOrUndefined(this._image,e),t.speed=i.Property.getValueOrUndefined(this._speed,e),t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._color,e._color)&&i.Property.equals(this._speed,e._speed)}};Object.defineProperties(bi.prototype,{color:i.createPropertyDescriptor("color"),speed:i.createPropertyDescriptor("speed"),image:i.createPropertyDescriptor("image")});var Wp=bi;var Ai=class n{constructor(e){e=e||{},this._definitionChanged=new i.Event,this._baseWaterColor=void 0,this._baseWaterColorSubscription=void 0,this.baseWaterColor=e.baseWaterColor||new i.Color(.2,.3,.6,1),this._blendColor=void 0,this._blendColorSubscription=void 0,this.blendColor=e.blendColor||new i.Color(0,1,.699,1),this._specularMap=void 0,this._specularMapSubscription=void 0,this.specularMap=e.specularMap||i.Material.DefaultImageId,this._normalMap=void 0,this._normalMapSubscription=void 0,this.normalMap=e.normalMap||i.Material.DefaultImageId,this.frequency=i.defaultValue(e.frequency,1e3),this.animationSpeed=i.defaultValue(e.animationSpeed,.01),this.amplitude=i.defaultValue(e.amplitude,10),this.specularIntensity=i.defaultValue(e.specularIntensity,.5)}get isConstant(){return!1}get definitionChanged(){return this._definitionChanged}getType(e){return i.Material.WaterType}getValue(e,t){return t||(t={}),t.baseWaterColor=i.Property.getValueOrUndefined(this._baseWaterColor,e),t.blendColor=i.Property.getValueOrUndefined(this._blendColor,e),t.specularMap=i.Property.getValueOrUndefined(this._specularMap,e),t.normalMap=i.Property.getValueOrUndefined(this._normalMap,e),t.frequency=this.frequency,t.animationSpeed=this.animationSpeed,t.amplitude=this.amplitude,t.specularIntensity=this.specularIntensity,t}equals(e){return this===e||e instanceof n&&i.Property.equals(this._baseWaterColor,e._baseWaterColor)}};Object.defineProperties(Ai.prototype,{baseWaterColor:i.createPropertyDescriptor("baseWaterColor"),blendColor:i.createPropertyDescriptor("blendColor"),specularMap:i.createPropertyDescriptor("specularMap"),normalMap:i.createPropertyDescriptor("normalMap")});var Bp=Ai;var vo=class{constructor(e){this._style=e,this._viewer=void 0,this._layer=void 0,this._delegate=void 0,this._options={},this._positions=[]}get drawTool(){return this._viewer.drawTool}_mountedHook(){}_stoppedHook(){}_onDrawAnchor(e){}_onAnchorMoving(e){this._positions.pop(),this._positions.push(e),this._positions.length<=1?this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236":this.drawTool.tooltipMess="\u5355\u51FB\u589E\u52A0\u70B9\uFF0C\u53F3\u51FB\u5220\u9664\u70B9\uFF0C\u53CC\u51FB\u5B8C\u6210\u7ED8\u5236"}_onDeleteAnchor(){this._positions.length>1&&this._positions.splice(this._positions.length-2,1),this._positions.length<=1&&(this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236")}_onDrawStop(){this._unbindEvent(),this._viewer.drawTool.deactivate(),this._removeSamePoint(this._positions),this._delegate&&this._layer.entities.remove(this._delegate),this._stoppedHook()}_removeSamePoint(e=[]){if(e.length<2)return e;for(let t=0;t<e.length-1;t++){let r=e[t],s=e[t+1];typeof r.equals=="function"&&r.equals(s)&&(console.log("element",r),console.log("element",s),e.splice(t,1),t--)}return e}_bindEvent(){this.drawTool.on(P.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.on(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.on(P.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.on(P.DRAW_STOP,this._onDrawStop,this)}_unbindEvent(){this.drawTool.off(P.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.off(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.off(P.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.off(P.DRAW_STOP,this._onDrawStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.drawTool.activate(t),this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236",this._mountedHook(),this._unbindEvent(),this._bindEvent(),this}stop(){return this.drawTool.fire(P.DRAW_STOP),this}},Q=vo;var g0={pixelSize:10,outlineColor:i.Color.BLUE,outlineWidth:5},wo=class extends Q{constructor(e){super(),this._position=i.Cartesian3.ZERO,this._style={...g0,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({position:new i.CallbackProperty(()=>this._position,!1),point:{...this._style}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._position&&(e=new ei(g.transformCartesianToWGS84(this._position)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){this._position=e,this.drawTool.fire(P.DRAW_STOP,e)}_onAnchorMoving(e){this._position=e}},Up=wo;var y0={width:3,material:i.Color.YELLOW.withAlpha(.6)},xo=class extends Q{constructor(e){super(),this._style={...y0,...e}}_mountedHook(){this._delegate=new i.Entity({polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new at(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),t>=this._options.maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},Vp=xo;var v0={material:i.Color.YELLOW.withAlpha(.6),fill:!0,outline:!0,outlineWidth:2,outlineColor:i.Color.GREEN,width:2},Co=class extends Q{constructor(e){super(),this._style={...v0,...e}}_mountedHook(){this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?new i.PolygonHierarchy(this._positions.map(e=>e.clone())):null,!1)},polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions.length<=3?this._positions:null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new st(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e})}},Zp=Co;var w0={material:i.Color.YELLOW.withAlpha(.6),fill:!0},To=class extends Q{constructor(e){super(),this._maxAnchorSize=2,this._radius=0,this._style={...w0,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>{if(this._positions.length>1){if(this._radius=i.Cartesian3.distance(this._positions[0],this._positions[1]),this._radius<=0)return null;let e=i.EllipseGeometryLibrary.computeEllipsePositions({center:this._positions[0],semiMajorAxis:this._radius,semiMinorAxis:this._radius,rotation:0,granularity:.005},!1,!0),t=i.Cartesian3.unpackArray(e.outerPositions);return t.push(t[0]),new i.PolygonHierarchy(t)}else return null},!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Kt(g.transformCartesianToWGS84(this._positions[0]),this._radius).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e,isCenter:t===1}),t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},jp=To;var x0={material:i.Color.YELLOW.withAlpha(.6)},Eo=class extends Q{constructor(e){super(),this._maxAnchorSize=2,this._style={...x0,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5DE6\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({rectangle:{...this._style,coordinates:new i.CallbackProperty(e=>this._positions.length>1?i.Rectangle.fromCartesianArray(this._positions):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new ti(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},Yp=Eo;var Po=class extends Q{constructor(e){super(),this._position=i.Cartesian3.ZERO,this._style={image:Ke,...e}}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({position:new i.CallbackProperty(()=>this._position,!1),billboard:{...this._style}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._position&&(e=new rt(g.transformCartesianToWGS84(this._position),this._style.image).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){this._position=e,this.drawTool.fire(P.DRAW_STOP)}_onAnchorMoving(e){this._position=e}},qp=Po;var Si=Math.PI/2,Mo=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.headTailFactor=.8}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_getArrowHeadPoints(e,t,r){let s=x.getBaseLength(e),a=s*this.headHeightFactor,o=e[e.length-1];s=x.distance(o,e[e.length-2]);let l=x.distance(t,r);a>l*this.headTailFactor&&(a=l*this.headTailFactor);let h=a*this.headWidthFactor,c=a*this.neckWidthFactor;a=a>s?s:a;let d=a*this.neckHeightFactor,u=x.getThirdPoint(e[e.length-2],o,0,a,!0),_=x.getThirdPoint(e[e.length-2],o,0,d,!0),m=x.getThirdPoint(o,u,Si,h,!1),p=x.getThirdPoint(o,u,Si,h,!0),T=x.getThirdPoint(o,_,Si,c,!1),v=x.getThirdPoint(o,_,Si,c,!0);return[T,m,o,p,v]}_getArrowBodyPoints(e,t,r,s){let a=x.wholeDistance(e),l=x.getBaseLength(e)*s,h=x.distance(t,r),c=(l-h)/2,d=0,u=[],_=[];for(let m=1;m<e.length-1;m++){let p=x.getAngleOfThreePoints(e[m-1],e[m],e[m+1])/2;d+=x.distance(e[m-1],e[m]);let T=(l/2-d/a*c)/Math.sin(p),v=x.getThirdPoint(e[m-1],e[m],Math.PI-p,T,!0),E=x.getThirdPoint(e[m-1],e[m],p,T,!1);u.push(v),_.push(E)}return u.concat(_)}_createHierarchy(){let e=y.parsePolygonCoordToArray(g.transformCartesianArrayToWGS84Array(this._positions))[0],t=e[0],r=e[1];x.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[x.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),l=o[0],h=o[4],c=x.distance(t,r)/x.getBaseLength(a),d=this._getArrowBodyPoints(a,l,h,c),u=d.length,_=[t].concat(d.slice(0,u/2));_.push(l);let m=[r].concat(d.slice(u/2,u));return m.push(h),_=x.getQBSplinePoints(_),m=x.getQBSplinePoints(m),new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(_.concat(o,m.reverse()))))}},ot=Mo;var C0={material:i.Color.YELLOW.withAlpha(.6),fill:!0},bo=class extends Q{constructor(e){super(),this._maxAnchorSize=3,this._style={...C0,...e},this._graphics=new ot}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new it(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},Jp=bo;var ae=Math.PI/2,Ao=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.headHeightFactor=.25,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_getArrowPoints(e,t,r,s){let a=x.mid(e,t),o=x.distance(a,r),l=x.getThirdPoint(r,a,0,o*.3,!0),h=x.getThirdPoint(r,a,0,o*.5,!0);l=x.getThirdPoint(a,l,ae,o/5,s),h=x.getThirdPoint(a,h,ae,o/4,s);let c=[a,l,h,r],d=this._getArrowHeadPoints(c),u=d[0],_=d[4],m=x.distance(e,t)/x.getBaseLength(c)/2,p=this._getArrowBodyPoints(c,u,_,m),T=p.length,v=p.slice(0,T/2),E=p.slice(T/2,T);return v.push(u),E.push(_),v=v.reverse(),v.push(t),E=E.reverse(),E.push(e),v.reverse().concat(d,E)}_getArrowHeadPoints(e){let r=x.getBaseLength(e)*this.headHeightFactor,s=e[e.length-1],a=r*this.headWidthFactor,o=r*this.neckWidthFactor,l=r*this.neckHeightFactor,h=x.getThirdPoint(e[e.length-2],s,0,r,!0),c=x.getThirdPoint(e[e.length-2],s,0,l,!0),d=x.getThirdPoint(s,h,ae,a,!1),u=x.getThirdPoint(s,h,ae,a,!0),_=x.getThirdPoint(s,c,ae,o,!1),m=x.getThirdPoint(s,c,ae,o,!0);return[_,d,s,u,m]}_getArrowBodyPoints(e,t,r,s){let a=x.wholeDistance(e),l=x.getBaseLength(e)*s,h=x.distance(t,r),c=(l-h)/2,d=0,u=[],_=[];for(let m=1;m<e.length-1;m++){let p=x.getAngleOfThreePoints(e[m-1],e[m],e[m+1])/2;d+=x.distance(e[m-1],e[m]);let T=(l/2-d/a*c)/Math.sin(p),v=x.getThirdPoint(e[m-1],e[m],Math.PI-p,T,!0),E=x.getThirdPoint(e[m-1],e[m],p,T,!1);u.push(v),_.push(E)}return u.concat(_)}_getTempPoint4(e,t,r){let s=x.mid(e,t),a=x.distance(s,r),o=x.getAngleOfThreePoints(e,s,r),l,h,c,d;return o<ae?(h=a*Math.sin(o),c=a*Math.cos(o),d=x.getThirdPoint(e,s,ae,h,!1),l=x.getThirdPoint(s,d,ae,c,!0)):o>=ae&&o<Math.PI?(h=a*Math.sin(Math.PI-o),c=a*Math.cos(Math.PI-o),d=x.getThirdPoint(e,s,ae,h,!1),l=x.getThirdPoint(s,d,ae,c,!1)):o>=Math.PI&&o<Math.PI*1.5?(h=a*Math.sin(o-Math.PI),c=a*Math.cos(o-Math.PI),d=x.getThirdPoint(e,s,ae,h,!0),l=x.getThirdPoint(s,d,ae,c,!0)):(h=a*Math.sin(Math.PI*2-o),c=a*Math.cos(Math.PI*2-o),d=x.getThirdPoint(e,s,ae,h,!0),l=x.getThirdPoint(s,d,ae,c,!1)),l}_createHierarchy(){let e=this._positions.length,t,r,s=y.parsePolygonCoordToArray(g.transformCartesianArrayToWGS84Array(this._positions))[0],a=s[0],o=s[1],l=s[2];e===3?t=this._getTempPoint4(a,o,l):t=s[3],e===3||e===4?r=x.mid(a,o):r=s[4];let h,c;x.isClockWise(a,o,l)?(h=this._getArrowPoints(a,r,t,!1),c=this._getArrowPoints(r,o,l,!0)):(h=this._getArrowPoints(o,r,l,!1),c=this._getArrowPoints(r,a,t,!0));let d=h.length,u=(d-5)/2,_=h.slice(0,u),m=h.slice(u,u+5),p=h.slice(u+5,d),T=c.slice(0,u),v=c.slice(u,u+5),E=c.slice(u+5,d);T=x.getBezierPoints(T);let M=x.getBezierPoints(E.concat(_.slice(1)));return p=x.getBezierPoints(p),new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(T.concat(v,M,m,p))))}},Ii=Ao;var T0={material:i.Color.YELLOW.withAlpha(.6),fill:!0},So=class extends Q{constructor(e){super(),this._maxAnchorSize=4,this._style={...T0,...e},this._graphics=new Ii}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new jt(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},Xp=So;var Qp=Math.PI/2,Io=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.tailWidthFactor=.15,this.neckWidthFactor=.2,this.headWidthFactor=.25,this.headAngle=Math.PI/8.5,this.neckAngle=Math.PI/13}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_createHierarchy(){let e=y.parsePolygonCoordToArray(g.transformCartesianArrayToWGS84Array(this._positions))[0],t=e[0],r=e[1],s=x.getBaseLength(e),a=s*this.tailWidthFactor,o=s*this.neckWidthFactor,l=s*this.headWidthFactor,h=x.getThirdPoint(r,t,Qp,a,!0),c=x.getThirdPoint(r,t,Qp,a,!1),d=x.getThirdPoint(t,r,this.headAngle,l,!1),u=x.getThirdPoint(t,r,this.headAngle,l,!0),_=x.getThirdPoint(t,r,this.neckAngle,o,!1),m=x.getThirdPoint(t,r,this.neckAngle,o,!0);return new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions([h,_,d,r,u,m,c])))}},Di=Io;var E0={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Do=class extends Q{constructor(e){super(),this._maxAnchorSize=2,this._style={...E0,...e},this._graphics=new Di}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Yt(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},Kp=Do;var P0=Math.PI/2,$p=100,Lo=class{constructor(e){this._positions=(e==null?void 0:e.positions)||[],this.t=.4}get positions(){return this._positions}set positions(e){this._positions=e}get hierarchy(){return this._createHierarchy()}_createHierarchy(){let e=y.parsePolygonCoordToArray(g.transformCartesianArrayToWGS84Array(this._positions))[0];if(this._positions.length===2){let o=x.mid(e[0],e[1]),l=x.distance(e[0],o)/.9,h=x.getThirdPoint(e[0],o,P0,l,!0);e=[e[0],h,e[1]]}let t=x.mid(e[0],e[2]);e.push(t,e[0],e[1]);let r=[];for(let o=0;o<e.length-2;o++){let l=e[o],h=e[o+1],c=e[o+2],d=x.getBisectorNormals(this.t,l,h,c);r=r.concat(d)}let s=r.length;r=[r[s-1]].concat(r.slice(0,s-1));let a=[];for(let o=0;o<e.length-2;o++){let l=e[o],h=e[o+1];a.push(l);for(let c=0;c<=$p;c++){let d=x.getCubicValue(c/$p,l,r[o*2],r[o*2+1],h);a.push(d)}a.push(h)}return new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(a)))}},Li=Lo;var M0={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Ro=class extends Q{constructor(e){super(),this._maxAnchorSize=3,this._style={...M0,...e},this._graphics=new Li}_mountedHook(){this.drawTool.tooltipMess="\u5355\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new qt(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},em=Ro;var ko=class extends ot{constructor(e){super(e),this.headHeightFactor=.18,this.headWidthFactor=.3,this.neckHeightFactor=.85,this.neckWidthFactor=.15,this.tailWidthFactor=.1,this.headTailFactor=.8,this.swallowTailFactor=1}_createHierarchy(){let e=y.parsePolygonCoordToArray(g.transformCartesianArrayToWGS84Array(this._positions))[0],t=e[0],r=e[1];x.isClockWise(e[0],e[1],e[2])&&(t=e[1],r=e[0]);let a=[x.mid(t,r)].concat(e.slice(2)),o=this._getArrowHeadPoints(a,t,r),l=o[0],h=o[4],c=x.distance(t,r),d=x.getBaseLength(a),u=d*this.tailWidthFactor*this.swallowTailFactor,_=x.getThirdPoint(a[1],a[0],0,u,!0),m=c/d,p=this._getArrowBodyPoints(a,l,h,m),T=p.length,v=[t].concat(p.slice(0,T/2));v.push(l);let E=[r].concat(p.slice(T/2,T));return E.push(h),v=x.getQBSplinePoints(v),E=x.getQBSplinePoints(E),new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(y.parsePositions(v.concat(o,E.reverse(),[_,v[0]]))))}},Ri=ko;var b0={material:i.Color.YELLOW.withAlpha(.6),fill:!0},Oo=class extends Q{constructor(e){super(),this._maxAnchorSize=3,this._style={...b0,...e},this._graphics=new Ri}_mountEntity(){this.drawTool.tooltipMess="\u5DE6\u51FB\u9009\u62E9\u70B9\u4F4D",this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1)}}),this._layer.entities.add(this._delegate)}_stoppedHook(){let e=null;this._positions.length&&(e=new Jt(g.transformCartesianArrayToWGS84Array(this._positions)).setStyle(this._style)),this._options.onDrawStop&&this._options.onDrawStop(e)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),this._graphics.positions=this._positions,t>=this._maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP))}},tm=Oo;var No=class{constructor(e){this._viewer=void 0,this._layer=void 0,this._overlay=e,this._overlay.show=!1,this._delegate=new i.Entity,this._delegate.merge(e.delegate),this._options={},this._positions=[]}get editTool(){return this._viewer.editTool}_mountedHook(){}_stoppedHook(){this._overlay.positions=g.transformCartesianArrayToWGS84Array(this._positions),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions=[].concat(g.transformWGS84ArrayToCartesianArray(this._overlay.positions)),this._positions.forEach((e,t)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:e,index:t})})}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now());this._positions[r.index]=t}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now());this._positions[r.index]=t}_onEditStop({pickedAnchor:e,position:t}){this._unbindEvent(),this._viewer.editTool.deactivate(),this._layer.entities.remove(this._delegate),this._stoppedHook()}_bindEvent(){return this.editTool.on(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.on(P.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.on(P.EDIT_STOP,this._onEditStop,this),this}_unbindEvent(){this.editTool.off(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.off(P.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.off(P.EDIT_STOP,this._onEditStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.editTool.tooltipMess="\u70B9\u51FB\u951A\u70B9\u79FB\u52A8,\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._viewer.editTool.activate(t),this._mountedHook(),this._mountAnchor(),this._unbindEvent(),this._bindEvent(),this}stop(){return this.editTool.fire(P.EDIT_STOP,{pickedAnchor:null,position:null}),this}},K=No;var zo=class extends K{constructor(e){super(e),this._position=void 0}_mountedHook(){this.editTool.tooltipMess="\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._position=this._delegate.position.getValue(i.JulianDate.now()),this._delegate.position=new i.CallbackProperty(()=>this._position,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.position=g.transformCartesianToWGS84(this._position),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_onAnchorMoving({pickedAnchor:e,position:t}){this._position=t}},im=zo;var Fo=class extends K{constructor(e){super(e)}_mountedHook(){this._delegate.polyline.positions=new i.CallbackProperty(()=>this._positions.length>1?this._positions:null,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.positions=g.transformCartesianArrayToWGS84Array(this._positions.filter((e,t)=>t%2===0)),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions=[];let e=this._overlay.delegate.polyline.positions.getValue(i.JulianDate.now());for(let t=0;t<e.length-1;t++){let r=Z(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.push(e[e.length-1]),this._positions.forEach((t,r)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})})}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a=Z(this._positions[s],this._positions[s-1]),o=Z(this._positions[s],this._positions[s+1]);this._positions.splice(s,1,a,t,o),this.editTool.fire(P.CLEAR_ANCHOR),this._positions.forEach((l,h)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:l,index:h,isMid:h%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(this._positions[s]=t,!r.isMid&&this._options.maxAnchorSize>2){let a=-1,o=-1,l=-1,h=-1,c=this._positions.length;if(s===0?(l=s+2,h=s+1):r.index===c-1?(a=s-2,o=s-1):(a=s-2,o=s-1,l=s+2,h=s+1),a>0){let d=Z(this._positions[a],this._positions[s]);this._positions[o]=d,this.editTool.fire(P.UPDATE_ANCHOR,{index:o,position:d})}if(l>0){let d=Z(this._positions[l],this._positions[s]);this._positions[h]=d,this.editTool.fire(P.UPDATE_ANCHOR,{index:h,position:d})}}}},rm=Fo;var Go=class extends K{constructor(e){super(e)}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(e=>this._positions.length>2?new i.PolygonHierarchy(this._positions.map(t=>t.clone())):null,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.positions=g.transformCartesianArrayToWGS84Array(this._positions.filter((e,t)=>t%2===0)),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions=[];let e=this._overlay.delegate.polygon.hierarchy.getValue(i.JulianDate.now()).positions;e.push(e[0]);for(let t=0;t<e.length-1;t++){let r=Z(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.forEach((t,r)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})})}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a,o,l=this._positions.length;s===l-1?(a=Z(this._positions[s],this._positions[s-1]),o=Z(this._positions[s],this._positions[0])):(a=Z(this._positions[s],this._positions[s-1]),o=Z(this._positions[s],this._positions[s+1])),this._positions.splice(s,1,a,t,o),this.editTool.fire(P.CLEAR_ANCHOR),this._positions.forEach((h,c)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:h,index:c,isMid:c%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;this._positions[s]=t;let a=this._positions.length;if(!r.isMid){let o=-1,l=-1,h=-1,c=-1;s===0?(o=a-2,l=a-1,h=s+2,c=s+1):s===a-2?(o=s-2,l=s-1,h=0,c=a-1):(o=s-2,l=s-1,h=s+2,c=s+1);let d=Z(this._positions[o],this._positions[s]),u=Z(this._positions[h],this._positions[s]);this._positions[l]=d,this._positions[c]=u,this.editTool.fire(P.UPDATE_ANCHOR,{index:l,position:d}),this.editTool.fire(P.UPDATE_ANCHOR,{index:c,position:u})}}},sm=Go;var Ho=class extends K{constructor(e){super(e),this._center=void 0,this._radius=0}_mountedHook(){this._radius=this._overlay.radius,this._center=g.transformWGS84ToCartesian(this._overlay.center),this._positions=[].concat([this._center,this._computeCirclePoints(this._center,this._radius)[0]]),this._delegate.polygon.hierarchy=new i.CallbackProperty(e=>{if(this._positions.length>1){if(this._radius=i.Cartesian3.distance(this._positions[0],this._positions[1]),this._radius<=0)return null;let t=this._computeCirclePoints(this._positions[0],this._radius);return t.push(t[0]),new i.PolygonHierarchy(t)}else return null},!1),this._layer.entities.add(this._delegate)}_computeCirclePoints(e,t){let r=[],s=i.EllipseGeometryLibrary.computeEllipsePositions({center:e,semiMajorAxis:t,semiMinorAxis:t,rotation:0,granularity:.005},!1,!0);return s&&s.outerPositions&&(r=i.Cartesian3.unpackArray(s.outerPositions)),r}_stoppedHook(){this._overlay.center=g.transformCartesianToWGS84(this._positions[0]),this._overlay.radius=this._radius,this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_mountAnchor(){this._positions.forEach((e,t)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:e,index:t,isCenter:t%2===0})})}},am=Ho;var Wo=class extends K{constructor(e){super(e),this._overlay=e}_mountedHook(){this._delegate.rectangle.coordinates=new i.CallbackProperty(e=>this._positions.length>1?i.Rectangle.fromCartesianArray(this._positions):null,!1),this._layer.entities.add(this._delegate)}},om=Wo;var Bo=class extends K{constructor(e){super(e),this._position=void 0}_mountedHook(){this.editTool.tooltipMess="\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._position=this._delegate.position.getValue(i.JulianDate.now()),this._delegate.position=new i.CallbackProperty(()=>this._position,!1),this._layer.entities.add(this._delegate)}_stoppedHook(){this._overlay.position=g.transformCartesianToWGS84(this._position),this._overlay.show=!0,this._options.onEditStop&&this._options.onEditStop(this._overlay)}_onAnchorMoving({pickedAnchor:e,position:t}){this._position=t}},nm=Bo;var Uo=class extends K{constructor(e){super(e),this._graphics=new ot}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},lm=Uo;var Vo=class extends K{constructor(e){super(e),this._graphics=new Ii}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},hm=Vo;var Zo=class extends K{constructor(e){super(e),this._graphics=new Di}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},cm=Zo;var jo=class extends K{constructor(e){super(e),this._graphics=new Li}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>1?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},dm=jo;var Yo=class extends K{constructor(e){super(e),this._graphics=new Ri}_mountedHook(){this._delegate.polygon.hierarchy=new i.CallbackProperty(()=>this._positions.length>2?(this._graphics.positions=this._positions,this._graphics.hierarchy):null,!1),this._layer.entities.add(this._delegate)}},pm=Yo;var qo=class{constructor(e,t={}){this._viewer=e,this._options=t,this._layer=new i.CustomDataSource("plot-layer"),this._viewer.dataSources.add(this._layer),this._currentWorker=void 0,this._state=void 0}get viewer(){return this._viewer}get layer(){return this._layer}get state(){return this._state}_createDrawWorker(e,t){let r;switch(e){case V.POINT:r=new Up(t);break;case V.POLYLINE:r=new Vp(t);break;case V.POLYGON:r=new Zp(t);break;case V.CIRCLE:r=new jp(t);break;case V.RECT:r=new Yp(t);break;case V.BILLBOARD:r=new qp(t);break;case V.ATTACK_ARROW:r=new Jp(t);break;case V.DOUBLE_ARROW:r=new Xp(t);break;case V.FINE_ARROW:r=new Kp(t);break;case V.TAILED_ATTACK_ARROW:r=new tm(t);break;case V.GATHERING_PLACE:r=new em(t);break;default:break}return r}_createEditWorker(e){let t;switch(e.type){case V.POINT:t=new im(e);break;case V.POLYLINE:t=new rm(e);break;case V.POLYGON:t=new sm(e);break;case V.CIRCLE:t=new am(e);break;case V.RECT:t=new om(e);break;case V.BILLBOARD:t=new nm(e);break;case V.ATTACK_ARROW:t=new lm(e);break;case V.DOUBLE_ARROW:t=new hm(e);break;case V.FINE_ARROW:t=new cm(e);break;case V.TAILED_ATTACK_ARROW:t=new pm(e);break;case V.GATHERING_PLACE:t=new dm(e);break;default:break}return t}draw(e,t,r={},s=!1){var o;this._state="draw",this._currentWorker&&this._currentWorker.stop();let a=(r==null?void 0:r.maxAnchorSize)||999;return r&&delete r.maxAnchorSize,this._currentWorker=(o=this._createDrawWorker(e,r))==null?void 0:o.start(this,{...this._options,maxAnchorSize:a,onDrawStop:t,clampToModel:s!=null?s:this._options.clampToModel}),this}edit(e,t,r=!1){var s;return this._state="edit",this._currentWorker&&this._currentWorker.stop(),this._currentWorker=(s=this._createEditWorker(e))==null?void 0:s.start(this,{...this._options,onEditStop:t,clampToModel:r!=null?r:this._options.clampToModel}),this}clusterPositions(e,t=60){let r=e.positions||[];switch(e.type){case V.POINT:r.push(e.position);break;case V.CIRCLE:r=this.circleToCluster(e,t);break;case V.RECT:r=this.rectangleToCluster(e);break}return r}circleToCluster(e={},t=60){let r=e.center,s=i.Math.toRadians(e.radius/1e3);var a=i.Math.toRadians(r._lng),o=i.Math.toRadians(r._lat);let l=i.Math.toRadians(r._heading);t=Math.ceil(360/(t||60));let h=[];for(let c=0;c<=360;c+=t){let d=l+i.Math.toRadians(c),u=new i.Cartographic(a+s*Math.cos(d),o+s*Math.sin(d),0),_=i.Ellipsoid.WGS84.cartographicToCartesian(u),m=i.Cartographic.fromCartesian(_);h.push(new q(i.Math.toDegrees(m.longitude),i.Math.toDegrees(m.latitude),m.height||0))}return h}rectangleToCluster(e={}){let t=e.positions,r=t[0]._lng,s=t[0]._lat,a=t[1]._lng,o=t[1]._lat;t.push(new q(r,o)),t.push(new q(a,s));var l=i.Rectangle.fromDegrees(r,s,a,o);return t}stop(){this._currentWorker&&this._currentWorker.stop(),this._currentWorker=null}destroy(){return this._viewer.dataSources.remove(this._layer),this._viewer=void 0,this}},A0=qo;var Jo=class{constructor(e){this._viewer=e,this._options={}}_bindEvent(){}_unbindEvent(){}start(){if(this._viewer.clock.shouldAnimate=!0,this._unbindEvent(),this._options.duration){let e=setTimeout(()=>{this._unbindEvent(),this._options.callback&&this._options.callback.call(this._options.context||this),clearTimeout(e)},Number(this._options.duration)*1e3)}return this._bindEvent(),this}stop(){return this._unbindEvent(),this}},ce=Jo;var S0={},$=S0;var Xo=class extends ce{constructor(e,t={}){super(e),this._options=t,this._heading=e.camera.heading,this._aroundAmount=.2}get type(){return $.AROUND_VIEW}set aroundAmount(e){this._aroundAmount=e}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onAround,this)}_unbindEvent(){this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.clock.onTick.removeEventListener(this._onAround,this)}_onAround(e,t){this._heading+=i.Math.toRadians(this._aroundAmount),(this._heading>=Math.PI*2||this._heading<=-Math.PI*2)&&(this._heading=0),this._viewer.camera.setView({orientation:{heading:this._heading,pitch:this._options.pitch?i.Math.toRadians(this._options.pitch):this._viewer.camera.pitch,roll:this._options.roll?i.Math.toRadians(this._options.roll):this._viewer.camera.roll}})}};$.AROUND_VIEW="around_view";var mm=Xo;var Qo=class extends ce{constructor(e,t,r={}){super(e),this._position=y.parsePosition(t),this._options=r,this._heading=e.camera.heading,this._aroundAmount=.2}get type(){return $.AROUND_POINT}set position(e){this._position=y.parsePosition(e)}set aroundAmount(e){this._aroundAmount=e}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onAround,this)}_unbindEvent(){this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.clock.onTick.removeEventListener(this._onAround,this)}_onAround(e,t){this._heading+=i.Math.toRadians(this._aroundAmount),(this._heading>=Math.PI*2||this._heading<=-Math.PI*2)&&(this._heading=0),this._viewer.camera.lookAt(g.transformWGS84ToCartesian(this._position),new i.HeadingPitchRange(this._heading,i.Math.toRadians(this._options.pitch||0),this._options.range||1e3))}};$.AROUND_POINT="around_point";var um=Qo;var fm=`in vec2 v_textureCoordinates;\r
1438
1437
  uniform sampler2D colorTexture;\r
1439
1438
  uniform sampler2D depthTexture;\r
1440
1439
  uniform vec3 centerWC;\r
@@ -1480,7 +1479,7 @@ void main() {\r
1480
1479
  out_FragColor = mix(out_FragColor, color, f);\r
1481
1480
  }\r
1482
1481
  }\r
1483
- `;var no=class extends ae{constructor(e,t,r,s={}){super(e),this._delegate=void 0,this._position=g.parsePosition(t),this._radius=r||100,this._color=s.color||i.Color.RED,this._speed=s.speed||2}get type(){return q.CIRCLE_SCAN}_mountContent(){let e=u.transformWGS84ToCartesian(this._position),t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e,new i.Cartesian3),r=this;this._delegate=new i.PostProcessStage({name:x.uuid(),fragmentShader:wp,uniforms:{centerWC:function(){return e},normalWC:function(){return t},radius:function(){return r._radius},speed:function(){return r._speed},color:function(){return r._color}}})}start(){return!this._delegate&&this._mountContent(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate),this}stop(){return this._delegate&&this._viewer.scene.postProcessStages.remove(this._delegate),this._delegate=void 0,this}};q.CIRCLE_SCAN="circle_scan";var xp=no;var lo=class extends ae{constructor(e,t={}){super(e),this._options=t,this._positions=[],this._durations=[3],this._currentIndex=0,this._timer=void 0}get type(){return q.FLYING}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e)}get durations(){return this._durations}set durations(e){this._durations=e}_cameraFly(){let e=this,t=this._viewer.camera,r=this._positions[this._currentIndex],s=()=>{let a=e._positions[e._currentIndex+1];a?(e._currentIndex++,e._currentIndex<=e._positions.length-1&&(e._timer=setTimeout(()=>{e._cameraFly()},(e._options.dwellTime||1)*1e3))):!a&&e._options.loop&&(e._currentIndex=0,e._timer=setTimeout(()=>{e._cameraFly()},(e._options.dwellTime||1)*1e3)),e._options.callback&&e._options.callback(e._currentIndex)};r&&t.flyTo({destination:u.transformWGS84ToCartesian(r),orientation:{heading:i.Math.toRadians(r.heading),pitch:i.Math.toRadians(r.pitch),roll:i.Math.toRadians(r.roll)},complete:s,duration:this._durations.length===1?this._durations[0]:this._durations[this._currentIndex]})}start(){return this._positions&&this._positions.length&&(this._currentIndex=0,this._cameraFly()),this}pause(){return this._viewer.camera.cancelFlight(),this._timer&&clearTimeout(this._timer),this}restore(){return this._positions&&this._positions.length&&this._cameraFly(),this}};q.FLYING="flying";var Cp=lo;var ho=class extends ae{constructor(e,t={}){super(e),this._options=t}get type(){return q.GLOBE_ROTATE}_icrf(e,t){if(e.mode!==i.SceneMode.SCENE3D)return!0;let r=i.Transforms.computeIcrfToFixedMatrix(t);if(r){let s=this._viewer.camera,a=i.Cartesian3.clone(s.position),o=i.Matrix4.fromRotationTranslation(r);s.lookAtTransform(o,a)}}_bindEvent(){this._viewer.clock.multiplier=this._options.speed||12*1e3,this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.scene.postUpdate.addEventListener(this._icrf,this)}_unbindEvent(){this._viewer.clock.multiplier=1,this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.scene.postUpdate.removeEventListener(this._icrf,this)}};q.GLOBE_ROTATE="globe_rotate";var Tp=ho;var Ep=`in vec2 v_textureCoordinates;\r
1482
+ `;var Ko=class extends ce{constructor(e,t,r,s={}){super(e),this._delegate=void 0,this._position=y.parsePosition(t),this._radius=r||100,this._color=s.color||i.Color.RED,this._speed=s.speed||2}get type(){return $.CIRCLE_SCAN}_mountContent(){let e=g.transformWGS84ToCartesian(this._position),t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e,new i.Cartesian3),r=this;this._delegate=new i.PostProcessStage({name:C.uuid(),fragmentShader:fm,uniforms:{centerWC:function(){return e},normalWC:function(){return t},radius:function(){return r._radius},speed:function(){return r._speed},color:function(){return r._color}}})}start(){return!this._delegate&&this._mountContent(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate),this}stop(){return this._delegate&&this._viewer.scene.postProcessStages.remove(this._delegate),this._delegate=void 0,this}};$.CIRCLE_SCAN="circle_scan";var _m=Ko;var $o=class extends ce{constructor(e,t={}){super(e),this._options=t,this._positions=[],this._durations=[3],this._currentIndex=0,this._timer=void 0}get type(){return $.FLYING}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e)}get durations(){return this._durations}set durations(e){this._durations=e}_cameraFly(){let e=this,t=this._viewer.camera,r=this._positions[this._currentIndex],s=()=>{let a=e._positions[e._currentIndex+1];a?(e._currentIndex++,e._currentIndex<=e._positions.length-1&&(e._timer=setTimeout(()=>{e._cameraFly()},(e._options.dwellTime||1)*1e3))):!a&&e._options.loop&&(e._currentIndex=0,e._timer=setTimeout(()=>{e._cameraFly()},(e._options.dwellTime||1)*1e3)),e._options.callback&&e._options.callback(e._currentIndex)};r&&t.flyTo({destination:g.transformWGS84ToCartesian(r),orientation:{heading:i.Math.toRadians(r.heading),pitch:i.Math.toRadians(r.pitch),roll:i.Math.toRadians(r.roll)},complete:s,duration:this._durations.length===1?this._durations[0]:this._durations[this._currentIndex]})}start(){return this._positions&&this._positions.length&&(this._currentIndex=0,this._cameraFly()),this}pause(){return this._viewer.camera.cancelFlight(),this._timer&&clearTimeout(this._timer),this}restore(){return this._positions&&this._positions.length&&this._cameraFly(),this}};$.FLYING="flying";var gm=$o;var en=class extends ce{constructor(e,t={}){super(e),this._options=t}get type(){return $.GLOBE_ROTATE}_icrf(e,t){if(e.mode!==i.SceneMode.SCENE3D)return!0;let r=i.Transforms.computeIcrfToFixedMatrix(t);if(r){let s=this._viewer.camera,a=i.Cartesian3.clone(s.position),o=i.Matrix4.fromRotationTranslation(r);s.lookAtTransform(o,a)}}_bindEvent(){this._viewer.clock.multiplier=this._options.speed||12*1e3,this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.scene.postUpdate.addEventListener(this._icrf,this)}_unbindEvent(){this._viewer.clock.multiplier=1,this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.scene.postUpdate.removeEventListener(this._icrf,this)}};$.GLOBE_ROTATE="globe_rotate";var ym=en;var vm=`in vec2 v_textureCoordinates;\r
1484
1483
  uniform sampler2D colorTexture;\r
1485
1484
  uniform sampler2D depthTexture;\r
1486
1485
  uniform vec3 centerWC;\r
@@ -1550,7 +1549,7 @@ void main() {\r
1550
1549
  out_FragColor = mix(out_FragColor, color, f + f0);\r
1551
1550
  }\r
1552
1551
  }\r
1553
- `;var co=class extends ae{constructor(e,t,r,s={}){super(e),this._position=g.parsePosition(t),this._radius=r||100,this._color=s.color||i.Color.BLUE,this._speed=s.speed||3,this._delegate=void 0}get type(){return q.RADAR_SCAN}_mountContent(){let e=u.transformWGS84ToCartesian(this._position),t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e,new i.Cartesian3),r=new Date().getTime(),s=this;this._delegate=new i.PostProcessStage({name:x.uuid(),fragmentShader:Ep,uniforms:{centerWC:function(){return e},planeNormalWC:function(){return t},lineNormalWC:function(){let a=new i.Quaternion,o=new i.Matrix3,n=i.Cartesian3.cross(i.Cartesian3.UNIT_Z,t,new i.Cartesian3),h=new Date().getTime(),c=i.Math.PI*2*((h-r)/1e4)*s._speed;return i.Quaternion.fromAxisAngle(t,c,a),i.Matrix3.fromQuaternion(a,o),i.Matrix3.multiplyByVector(o,n,n),i.Cartesian3.normalize(n,n),n},radius:function(){return s._radius},color:function(){return s._color}}})}start(){return!this._delegate&&this._mountContent(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate),this}stop(){return this._delegate&&this._viewer.scene.postProcessStages.remove(this._delegate),this._delegate=void 0,this}};q.RADAR_SCAN="radar_scan";var Pp=co;var po=class{constructor(e,t=!1,r=1,s=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._gradations=r,this._selected=s,this._state=m.INITIALIZED}get type(){return"black_and_white"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?m.ENABLED:m.DISABLED}get gradations(){return this._gradations}set gradations(e){this._gradations=e,this._delegate&&(this._delegate.uniforms.gradations=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createBlackAndWhiteStage(),this._delegate&&(this._delegate.uniforms.gradations=this._gradations,this._viewer.scene.postProcessStages.add(this._delegate))}},Mp=po;var mo=class{constructor(e,t=!1,r=128,s=-.3,a=!1,o=1,n=3.8,h=5,c=[]){this._viewer=e,this._enable=t,this._contrast=r,this._brightness=s,this._glowOnly=a,this._delta=o,this._sigma=n,this._stepSize=h,this._selected=c,this._state=m.INITIALIZED}get type(){return"bloom"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?m.ENABLED:m.DISABLED}get contrast(){return this._contrast}set contrast(e){this._contrast=e,this._delegate&&(this._delegate.uniforms.contrast=e)}get brightness(){return this._brightness}set brightness(e){this._brightness=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get glowOnly(){return this._glowOnly}set glowOnly(e){this._glowOnly=e,this._delegate&&(this._delegate.uniforms.glowOnly=e)}get delta(){return this._delta}set delta(e){this._delta=e,this._delegate&&(this._delegate.uniforms.delta=e)}get sigma(){return this._sigma}set sigma(e){this._sigma=e,this._delegate&&(this._delegate.uniforms.sigma=e)}get stepSize(){return this._stepSize}set stepSize(e){this._stepSize=e,this._delegate&&(this._delegate.uniforms.stepSize=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=this._viewer.scene.postProcessStages.bloom,this._delegate.uniforms.contrast=this._contrast,this._delegate.uniforms.brightness=this._brightness,this._delegate.uniforms.glowOnly=this._glowOnly,this._delegate.uniforms.delta=this._delta,this._delegate.uniforms.sigma=this._sigma,this._delegate.uniforms.stepSize=this._stepSize}},Ap=mo;var uo=class{constructor(e,t=!1,r=1,s=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._intensity=r,this._selected=s,this._state=m.INITIALIZED}get type(){return"brightness"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?m.ENABLED:m.DISABLED}get intensity(){return this._intensity}set intensity(e){this._intensity=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createBrightnessStage(),this._delegate&&(this._delegate.uniforms.brightness=this._intensity,this._viewer.scene.postProcessStages.add(this._delegate))}},bp=uo;var fo=class{constructor(e,t=!1,r=87,s=1,a=3.8,o=2.5,n=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._focalDistance=r,this._delta=s,this._sigma=a,this._stepSize=o,this._selected=n,this._state=m.INITIALIZED}get type(){return"depth_of_field"}get enable(){return this._enable}set enable(e){this._enable=e,i.PostProcessStageLibrary.isDepthOfFieldSupported(this._viewer.scene)&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e),this._state=e?m.ENABLED:m.DISABLED}get focalDistance(){return this._focalDistance}set focalDistance(e){this._focalDistance=e,this._delegate&&(this._delegate.uniforms.focalDistance=e)}get delta(){return this._delta}set delta(e){this._delta=e,this._delegate&&(this._delegate.uniforms.delta=e)}get sigma(){return this._sigma}set sigma(e){this._sigma=e,this._delegate&&(this._delegate.uniforms.sigma=e)}get stepSize(){return this._stepSize}set stepSize(e){this._stepSize=e,this._delegate&&(this._delegate.uniforms.stepSize=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createDepthOfFieldStage(),this._delegate&&(this._delegate.uniforms.focalDistance=this._focalDistance,this._delegate.uniforms.delta=this._delta,this._delegate.uniforms.sigma=this._sigma,this._delegate.uniforms.stepSize=this._stepSize,this._viewer.scene.postProcessStages.add(this._delegate))}},Sp=fo;var _o=class{constructor(e,t=!1,r=6,s=61,a=.4,o=.4,n=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._intensity=r,this._distortion=s,this._dirtAmount=a,this._haloWidth=o,this._selected=n,this._state=m.INITIALIZED}get type(){return"lens_flare"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?m.ENABLED:m.DISABLED}get intensity(){return this._intensity}set intensity(e){this._intensity=e,this._delegate&&(this._delegate.uniforms.intensity=e)}get distortion(){return this._distortion}set distortion(e){this._distortion=e,this._delegate&&(this._delegate.uniforms.distortion=e)}get dirtAmount(){return this._dirtAmount}set dirtAmount(e){this._dirtAmount=e,this._delegate&&(this._delegate.uniforms.dirtAmount=e)}get haloWidth(){return this._haloWidth}set haloWidth(e){this._haloWidth=e,this._delegate&&(this._delegate.uniforms.haloWidth=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createLensFlareStage(),this._delegate&&(this._delegate.uniforms.intensity=this._intensity,this._delegate.uniforms.distortion=this._distortion,this._delegate.uniforms.dirtAmount=this._dirtAmount,this._delegate.uniforms.haloWidth=this._haloWidth,this._viewer.scene.postProcessStages.add(this._delegate))}},Ip=_o;var go=class{constructor(e,t=!1,r=[]){this._viewer=e,this._enable=t,this._selected=r,this._state=m.INITIALIZED}get type(){return"night"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?m.ENABLED:m.DISABLED}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createNightVisionStage(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate)}},Dp=go;var yo=class{constructor(e,t=!1,r=i.Color.GREEN,s=.5,a=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._color=r,this._length=s,this._selected=a,this._state=m.INITIALIZED}get type(){return"silhouette"}get enable(){return this._enable}set enable(e){this._enable=e,i.PostProcessStageLibrary.isSilhouetteSupported(this._viewer.scene)&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e),this._state=e?m.ENABLED:m.DISABLED}get color(){return this._color}set color(e){this._color=e,this._delegate&&(this._delegate.uniforms.color=e)}get length(){return this._length}set length(e){this._length=e,this._delegate&&(this._delegate.uniforms.length=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createSilhouetteStage(),this._delegate&&(this._delegate.uniforms.color=this._color,this._delegate.uniforms.length=this._length,this._viewer.scene.postProcessStages.add(this._delegate))}},Lp=yo;var Rp=`in vec2 v_textureCoordinates;
1552
+ `;var tn=class extends ce{constructor(e,t,r,s={}){super(e),this._position=y.parsePosition(t),this._radius=r||100,this._color=s.color||i.Color.BLUE,this._speed=s.speed||3,this._delegate=void 0}get type(){return $.RADAR_SCAN}_mountContent(){let e=g.transformWGS84ToCartesian(this._position),t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e,new i.Cartesian3),r=new Date().getTime(),s=this;this._delegate=new i.PostProcessStage({name:C.uuid(),fragmentShader:vm,uniforms:{centerWC:function(){return e},planeNormalWC:function(){return t},lineNormalWC:function(){let a=new i.Quaternion,o=new i.Matrix3,l=i.Cartesian3.cross(i.Cartesian3.UNIT_Z,t,new i.Cartesian3),h=new Date().getTime(),c=i.Math.PI*2*((h-r)/1e4)*s._speed;return i.Quaternion.fromAxisAngle(t,c,a),i.Matrix3.fromQuaternion(a,o),i.Matrix3.multiplyByVector(o,l,l),i.Cartesian3.normalize(l,l),l},radius:function(){return s._radius},color:function(){return s._color}}})}start(){return!this._delegate&&this._mountContent(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate),this}stop(){return this._delegate&&this._viewer.scene.postProcessStages.remove(this._delegate),this._delegate=void 0,this}};$.RADAR_SCAN="radar_scan";var wm=tn;var rn=class{constructor(e,t=!1,r=1,s=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._gradations=r,this._selected=s,this._state=f.INITIALIZED}get type(){return"black_and_white"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?f.ENABLED:f.DISABLED}get gradations(){return this._gradations}set gradations(e){this._gradations=e,this._delegate&&(this._delegate.uniforms.gradations=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createBlackAndWhiteStage(),this._delegate&&(this._delegate.uniforms.gradations=this._gradations,this._viewer.scene.postProcessStages.add(this._delegate))}},xm=rn;var sn=class{constructor(e,t=!1,r=128,s=-.3,a=!1,o=1,l=3.8,h=5,c=[]){this._viewer=e,this._enable=t,this._contrast=r,this._brightness=s,this._glowOnly=a,this._delta=o,this._sigma=l,this._stepSize=h,this._selected=c,this._state=f.INITIALIZED}get type(){return"bloom"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?f.ENABLED:f.DISABLED}get contrast(){return this._contrast}set contrast(e){this._contrast=e,this._delegate&&(this._delegate.uniforms.contrast=e)}get brightness(){return this._brightness}set brightness(e){this._brightness=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get glowOnly(){return this._glowOnly}set glowOnly(e){this._glowOnly=e,this._delegate&&(this._delegate.uniforms.glowOnly=e)}get delta(){return this._delta}set delta(e){this._delta=e,this._delegate&&(this._delegate.uniforms.delta=e)}get sigma(){return this._sigma}set sigma(e){this._sigma=e,this._delegate&&(this._delegate.uniforms.sigma=e)}get stepSize(){return this._stepSize}set stepSize(e){this._stepSize=e,this._delegate&&(this._delegate.uniforms.stepSize=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=this._viewer.scene.postProcessStages.bloom,this._delegate.uniforms.contrast=this._contrast,this._delegate.uniforms.brightness=this._brightness,this._delegate.uniforms.glowOnly=this._glowOnly,this._delegate.uniforms.delta=this._delta,this._delegate.uniforms.sigma=this._sigma,this._delegate.uniforms.stepSize=this._stepSize}},Cm=sn;var an=class{constructor(e,t=!1,r=1,s=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._intensity=r,this._selected=s,this._state=f.INITIALIZED}get type(){return"brightness"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?f.ENABLED:f.DISABLED}get intensity(){return this._intensity}set intensity(e){this._intensity=e,this._delegate&&(this._delegate.uniforms.brightness=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createBrightnessStage(),this._delegate&&(this._delegate.uniforms.brightness=this._intensity,this._viewer.scene.postProcessStages.add(this._delegate))}},Tm=an;var on=class{constructor(e,t=!1,r=87,s=1,a=3.8,o=2.5,l=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._focalDistance=r,this._delta=s,this._sigma=a,this._stepSize=o,this._selected=l,this._state=f.INITIALIZED}get type(){return"depth_of_field"}get enable(){return this._enable}set enable(e){this._enable=e,i.PostProcessStageLibrary.isDepthOfFieldSupported(this._viewer.scene)&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e),this._state=e?f.ENABLED:f.DISABLED}get focalDistance(){return this._focalDistance}set focalDistance(e){this._focalDistance=e,this._delegate&&(this._delegate.uniforms.focalDistance=e)}get delta(){return this._delta}set delta(e){this._delta=e,this._delegate&&(this._delegate.uniforms.delta=e)}get sigma(){return this._sigma}set sigma(e){this._sigma=e,this._delegate&&(this._delegate.uniforms.sigma=e)}get stepSize(){return this._stepSize}set stepSize(e){this._stepSize=e,this._delegate&&(this._delegate.uniforms.stepSize=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createDepthOfFieldStage(),this._delegate&&(this._delegate.uniforms.focalDistance=this._focalDistance,this._delegate.uniforms.delta=this._delta,this._delegate.uniforms.sigma=this._sigma,this._delegate.uniforms.stepSize=this._stepSize,this._viewer.scene.postProcessStages.add(this._delegate))}},Em=on;var nn=class{constructor(e,t=!1,r=6,s=61,a=.4,o=.4,l=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._intensity=r,this._distortion=s,this._dirtAmount=a,this._haloWidth=o,this._selected=l,this._state=f.INITIALIZED}get type(){return"lens_flare"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?f.ENABLED:f.DISABLED}get intensity(){return this._intensity}set intensity(e){this._intensity=e,this._delegate&&(this._delegate.uniforms.intensity=e)}get distortion(){return this._distortion}set distortion(e){this._distortion=e,this._delegate&&(this._delegate.uniforms.distortion=e)}get dirtAmount(){return this._dirtAmount}set dirtAmount(e){this._dirtAmount=e,this._delegate&&(this._delegate.uniforms.dirtAmount=e)}get haloWidth(){return this._haloWidth}set haloWidth(e){this._haloWidth=e,this._delegate&&(this._delegate.uniforms.haloWidth=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createLensFlareStage(),this._delegate&&(this._delegate.uniforms.intensity=this._intensity,this._delegate.uniforms.distortion=this._distortion,this._delegate.uniforms.dirtAmount=this._dirtAmount,this._delegate.uniforms.haloWidth=this._haloWidth,this._viewer.scene.postProcessStages.add(this._delegate))}},Pm=nn;var ln=class{constructor(e,t=!1,r=[]){this._viewer=e,this._enable=t,this._selected=r,this._state=f.INITIALIZED}get type(){return"night"}get enable(){return this._enable}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?f.ENABLED:f.DISABLED}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createNightVisionStage(),this._delegate&&this._viewer.scene.postProcessStages.add(this._delegate)}},Mm=ln;var hn=class{constructor(e,t=!1,r=i.Color.GREEN,s=.5,a=[]){this._viewer=e,this._delegate=void 0,this._enable=t,this._color=r,this._length=s,this._selected=a,this._state=f.INITIALIZED}get type(){return"silhouette"}get enable(){return this._enable}set enable(e){this._enable=e,i.PostProcessStageLibrary.isSilhouetteSupported(this._viewer.scene)&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e),this._state=e?f.ENABLED:f.DISABLED}get color(){return this._color}set color(e){this._color=e,this._delegate&&(this._delegate.uniforms.color=e)}get length(){return this._length}set length(e){this._length=e,this._delegate&&(this._delegate.uniforms.length=e)}get selected(){return this._selected}set selected(e){this._selected=e,this._delegate&&(this._delegate.selected=e)}_createPostProcessStage(){this._delegate=i.PostProcessStageLibrary.createSilhouetteStage(),this._delegate&&(this._delegate.uniforms.color=this._color,this._delegate.uniforms.length=this._length,this._viewer.scene.postProcessStages.add(this._delegate))}},bm=hn;var Am=`in vec2 v_textureCoordinates;
1554
1553
  uniform sampler2D colorTexture;
1555
1554
  uniform sampler2D depthTexture;
1556
1555
  uniform float u_depthThreshold;
@@ -1565,7 +1564,7 @@ void main(void) {
1565
1564
  out_FragColor = vec4(1., 0., 0., 1.);
1566
1565
  }
1567
1566
  }
1568
- `;var Op=`in vec2 v_textureCoordinates;
1567
+ `;var Sm=`in vec2 v_textureCoordinates;
1569
1568
 
1570
1569
  uniform sampler2D colorTexture;
1571
1570
  uniform sampler2D u_silhouetteTexture;
@@ -1583,7 +1582,7 @@ void main(void) {
1583
1582
  out_FragColor = color;
1584
1583
  }
1585
1584
  }
1586
- `;var vo=class{constructor(e){this._viewer=e,this._delegate=void 0,this._enable=!1,this._depthThreshold=1e-5,this._color=i.Color.RED,this._state=m.INITIALIZED}get type(){return"skyLine"}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?m.ENABLED:m.DISABLED}get enable(){return this._enable}set depthThreshold(e){this._depthThreshold=e}get depthThreshold(){return this._depthThreshold}set color(e){this._color=e}get color(){return this._color}_createPostProcessStage(){let e=i.PostProcessStageLibrary.createEdgeDetectionStage(),t=this,r=new i.PostProcessStage({fragmentShader:Rp,uniforms:{u_depthThreshold:function(){return t._depthThreshold}}}),s=new i.PostProcessStage({fragmentShader:Op,uniforms:{u_silhouetteTexture:e.name,u_redTexture:r.name,u_color:function(){return t._color}}});this._delegate=new i.PostProcessStageComposite({stages:[e,r,s],inputPreviousStageTexture:!1,uniforms:e.uniforms}),this._viewer.scene.postProcessStages.add(this._delegate)}},kp=vo;var wo=class{constructor(e){if(!e)throw Error("missing viewer param");this._blackAndWhite=new Mp(e),this._bloom=new Ap(e),this._brightness=new bp(e),this._depthOfField=new Sp(e),this._lensFlare=new Ip(e),this._night=new Dp(e),this._silhouette=new Lp(e),this._skyLine=new kp(e)}get blackAndWhite(){return this._blackAndWhite}get bloom(){return this._bloom}get brightness(){return this._brightness}get depthOfField(){return this._depthOfField}get lensFlare(){return this._lensFlare}get night(){return this._night}get silhouette(){return this._silhouette}get skyLine(){return this._skyLine}},ju=wo;var zp=`in vec2 v_textureCoordinates;\r
1585
+ `;var cn=class{constructor(e){this._viewer=e,this._delegate=void 0,this._enable=!1,this._depthThreshold=1e-5,this._color=i.Color.RED,this._state=f.INITIALIZED}get type(){return"skyLine"}set enable(e){this._enable=e,!this._delegate&&this._createPostProcessStage(),this._delegate.enabled=e,this._state=e?f.ENABLED:f.DISABLED}get enable(){return this._enable}set depthThreshold(e){this._depthThreshold=e}get depthThreshold(){return this._depthThreshold}set color(e){this._color=e}get color(){return this._color}_createPostProcessStage(){let e=i.PostProcessStageLibrary.createEdgeDetectionStage(),t=this,r=new i.PostProcessStage({fragmentShader:Am,uniforms:{u_depthThreshold:function(){return t._depthThreshold}}}),s=new i.PostProcessStage({fragmentShader:Sm,uniforms:{u_silhouetteTexture:e.name,u_redTexture:r.name,u_color:function(){return t._color}}});this._delegate=new i.PostProcessStageComposite({stages:[e,r,s],inputPreviousStageTexture:!1,uniforms:e.uniforms}),this._viewer.scene.postProcessStages.add(this._delegate)}},Im=cn;var dn=class{constructor(e){if(!e)throw Error("missing viewer param");this._blackAndWhite=new xm(e),this._bloom=new Cm(e),this._brightness=new Tm(e),this._depthOfField=new Em(e),this._lensFlare=new Pm(e),this._night=new Mm(e),this._silhouette=new bm(e),this._skyLine=new Im(e)}get blackAndWhite(){return this._blackAndWhite}get bloom(){return this._bloom}get brightness(){return this._brightness}get depthOfField(){return this._depthOfField}get lensFlare(){return this._lensFlare}get night(){return this._night}get silhouette(){return this._silhouette}get skyLine(){return this._skyLine}},k0=dn;var Dm=`in vec2 v_textureCoordinates;\r
1587
1586
  uniform sampler2D colorTexture;\r
1588
1587
  uniform sampler2D depthTexture;\r
1589
1588
  uniform vec4 fogByDistance;\r
@@ -1620,7 +1619,7 @@ void main(void){\r
1620
1619
  vec4 finalFogColor = vec4(fogColor.rgb, fogColor.a * blendAmount);\r
1621
1620
  out_FragColor = alphaBlend(finalFogColor, sceneColor);\r
1622
1621
  }\r
1623
- `;var xo=class{constructor(e){this._id=x.uuid(),this._viewer=e,this._delegate=void 0,this._enable=!1,this._fogByDistance={near:10,nearValue:0,far:2e3,farValue:1},this._color=new i.Color(0,0,0,1),this._state=m.INITIALIZED}get type(){return"fog"}get enable(){return this._enable}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get fogByDistance(){return this._fogByDistance}set fogByDistance(e){var t,r,s,a;this._fogByDistance=e,this._delegate&&(this._delegate.uniforms.fogByDistance=new i.Cartesian4(((t=this._fogByDistance)==null?void 0:t.near)||10,((r=this._fogByDistance)==null?void 0:r.nearValue)||0,((s=this._fogByDistance)==null?void 0:s.far)||2e3,((a=this._fogByDistance)==null?void 0:a.farValue)||1))}get color(){return this._color}set color(e){this._color=e,this._delegate&&(this._delegate.uniforms.fogColor=e)}_createPostProcessStage(){var e,t,r,s;this._delegate=new i.PostProcessStage({name:this._id,fragmentShader:zp,uniforms:{fogByDistance:new i.Cartesian4(((e=this._fogByDistance)==null?void 0:e.near)||10,((t=this._fogByDistance)==null?void 0:t.nearValue)||0,((r=this._fogByDistance)==null?void 0:r.far)||200,((s=this._fogByDistance)==null?void 0:s.farValue)||1),fogColor:this._color}}),this._viewer.scene.postProcessStages.add(this._delegate)}},Np=xo;var Fp=`in vec2 v_textureCoordinates;\r
1622
+ `;var pn=class{constructor(e){this._id=C.uuid(),this._viewer=e,this._delegate=void 0,this._enable=!1,this._fogByDistance={near:10,nearValue:0,far:2e3,farValue:1},this._color=new i.Color(0,0,0,1),this._state=f.INITIALIZED}get type(){return"fog"}get enable(){return this._enable}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get fogByDistance(){return this._fogByDistance}set fogByDistance(e){var t,r,s,a;this._fogByDistance=e,this._delegate&&(this._delegate.uniforms.fogByDistance=new i.Cartesian4(((t=this._fogByDistance)==null?void 0:t.near)||10,((r=this._fogByDistance)==null?void 0:r.nearValue)||0,((s=this._fogByDistance)==null?void 0:s.far)||2e3,((a=this._fogByDistance)==null?void 0:a.farValue)||1))}get color(){return this._color}set color(e){this._color=e,this._delegate&&(this._delegate.uniforms.fogColor=e)}_createPostProcessStage(){var e,t,r,s;this._delegate=new i.PostProcessStage({name:this._id,fragmentShader:Dm,uniforms:{fogByDistance:new i.Cartesian4(((e=this._fogByDistance)==null?void 0:e.near)||10,((t=this._fogByDistance)==null?void 0:t.nearValue)||0,((r=this._fogByDistance)==null?void 0:r.far)||200,((s=this._fogByDistance)==null?void 0:s.farValue)||1),fogColor:this._color}}),this._viewer.scene.postProcessStages.add(this._delegate)}},Lm=pn;var Rm=`in vec2 v_textureCoordinates;\r
1624
1623
  uniform sampler2D colorTexture;\r
1625
1624
  uniform float speed;\r
1626
1625
  uniform float mixNum;\r
@@ -1643,7 +1642,7 @@ void main(){\r
1643
1642
  c*=v*b;\r
1644
1643
  out_FragColor = mix(texture(colorTexture, v_textureCoordinates), vec4(c, 1), mixNum);\r
1645
1644
  }\r
1646
- `;var Co=class{constructor(e){this._id=x.uuid(),this._viewer=e,this._delegate=void 0,this._enable=!1,this._speed=10,this._mixNum=.5,this._state=m.INITIALIZED}get type(){return"rain"}get enable(){return this._enable}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get speed(){return this._speed}set speed(e){this._speed=e,this._delegate&&(this._delegate.uniforms.speed=e)}get mixNum(){return this._mixNum}set mixNum(e){this._mixNum=e,this._delegate&&(this._delegate.uniforms.mixNum=e)}_createPostProcessStage(){this._delegate=new i.PostProcessStage({name:this._id,fragmentShader:Fp,uniforms:{speed:this._speed,mixNum:this._mixNum}}),this._viewer.scene.postProcessStages.add(this._delegate)}},Wp=Co;var Gp=`in vec2 v_textureCoordinates;\r
1645
+ `;var mn=class{constructor(e){this._id=C.uuid(),this._viewer=e,this._delegate=void 0,this._enable=!1,this._speed=10,this._mixNum=.5,this._state=f.INITIALIZED}get type(){return"rain"}get enable(){return this._enable}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get speed(){return this._speed}set speed(e){this._speed=e,this._delegate&&(this._delegate.uniforms.speed=e)}get mixNum(){return this._mixNum}set mixNum(e){this._mixNum=e,this._delegate&&(this._delegate.uniforms.mixNum=e)}_createPostProcessStage(){this._delegate=new i.PostProcessStage({name:this._id,fragmentShader:Rm,uniforms:{speed:this._speed,mixNum:this._mixNum}}),this._viewer.scene.postProcessStages.add(this._delegate)}},km=mn;var Om=`in vec2 v_textureCoordinates;\r
1647
1646
  uniform sampler2D colorTexture;\r
1648
1647
  uniform float speed;\r
1649
1648
  \r
@@ -1676,7 +1675,7 @@ void main(){\r
1676
1675
  finalColor=(vec3(c));\r
1677
1676
  out_FragColor = mix(texture(colorTexture, v_textureCoordinates), vec4(finalColor, 1), 0.3);\r
1678
1677
  }\r
1679
- `;var To=class{constructor(e){this._id=x.uuid(),this._viewer=e,this._delegate=void 0,this._enable=!1,this._speed=10,this._state=m.INITIALIZED}get type(){return"snow"}get enable(){return this._enable}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get speed(){return this._speed}set speed(e){this._speed=e,this._delegate&&(this._delegate.uniforms.speed=e)}_createPostProcessStage(){this._delegate=new i.PostProcessStage({name:this._id,fragmentShader:Gp,uniforms:{speed:this._speed}}),this._viewer.scene.postProcessStages.add(this._delegate)}},Hp=To;var Bp="data:image/jpeg;base64,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";var Eo=class{constructor(e){this._id=x.uuid(),this._viewer=e,this._delegate=void 0,this._rotateAmount=0,this._enable=!1,this._heading=0,this._state=m.INITIALIZED}get type(){return"cloud"}get enable(){return this._enable}set enable(e){!this._viewer.scene.mode!==i.SceneMode.SCENE3D&&(this._delegate||this._createPrimitive(),this._enable=this._delegate.show=e,this._enable?this._viewer.scene.postUpdate.addEventListener(this._onRotate,this):this._viewer.scene.postUpdate.removeEventListener(this._onRotate,this))}get rotateAmount(){return this._rotateAmount}set rotateAmount(e){this._rotateAmount=e}_onRotate(e,t){this._rotateAmount!==0&&(this._heading+=this._rotateAmount,(this._heading>=360||this._heading<=-360)&&(this._heading=0),this._delegate.modelMatrix=i.Transforms.headingPitchRollToFixedFrame(new i.Cartesian3,new i.HeadingPitchRoll(i.Math.toRadians(this._heading),0,0)))}_createPrimitive(){this._delegate=new i.Primitive({appearance:new i.EllipsoidSurfaceAppearance({material:new i.Material({fabric:{type:"Image",uniforms:{color:new i.Color(1,1,1,1),image:Bp},components:{alpha:"texture(image, fract(repeat * materialInput.st)).r * color.a",diffuse:"vec3(1.0)"}}}),translucent:!0,aboveGround:!0})}),this._delegate.geometryInstances=new i.GeometryInstance({geometry:new i.EllipsoidGeometry({vertexFormat:i.VertexFormat.POSITION_AND_ST,radii:this._viewer.scene.globe.ellipsoid.radii}),id:this._id}),this._delegate.show=this._enable,this._viewer.scene.primitives.add(this._delegate)}},Up=Eo;var Po=class{constructor(e){if(!e)throw Error("missing viewer param");this._fog=new Np(e),this._rain=new Wp(e),this._snow=new Hp(e),this._cloud=new Up(e)}get fog(){return this._fog}get rain(){return this._rain}get snow(){return this._snow}get cloud(){return this._cloud}},Xu=Po;var Mo=class{constructor(e){this._viewer=e,this._enable=!1,this._moveRate=100,this._rotateRate=.01,this._flags={moveForward:!1,moveBackward:!1,moveUp:!1,moveDown:!1,moveLeft:!1,moveRight:!1,turnLeft:!1,turnRight:!1}}get enable(){return this._enable}set enable(e){this._enable!==e&&this._viewer.scene.mode===i.SceneMode.SCENE3D&&(this._enable=e,this._enable?this._bindEvent():this._unbindEvent())}get moveRate(){return this._moveRate}set moveRate(e){this._moveRate=e}get rotateRate(){return this._rotateRate}set rotateRate(e){this._rotateRate=e}_bindEvent(){let e=this._viewer.scene.canvas;e.setAttribute("tabindex","0"),e.addEventListener("click",this._onClick.bind(this),!1),this._viewer.clock.onTick.addEventListener(this._onTick,this),document.addEventListener("keydown",this._onKeydown.bind(this),!1),document.addEventListener("keyup",this._onKeyup.bind(this),!1)}_unbindEvent(){Object.keys(this._flags).forEach(t=>{this._flags[t]=!1});let e=this._viewer.scene.canvas;e.removeAttribute("tabindex"),e.removeEventListener("click",this._onClick,!1),this._viewer.clock.onTick.removeEventListener(this._onTick,this),document.removeEventListener("keydown",this._onKeydown,!1),document.removeEventListener("keyup",this._onKeyup,!1)}_getFlagForKeyCode(e){let t;switch(e.keyCode){case 87:case 38:e.shiftKey?t="moveUp":t="moveForward";break;case 83:case 40:e.shiftKey?t="moveDown":t="moveBackward";break;case 65:case 37:t="moveLeft";break;case 68:case 39:t="moveRight";break;case 81:t="turnLeft";break;case 69:t="turnRight";break;default:break}return t}_onClick(){this._viewer.scene.canvas.focus()}_onKeydown(e){let t=this._getFlagForKeyCode(e);t&&(this._flags[t]=!0)}_onKeyup(e){Object.keys(this._flags).forEach(t=>{this._flags[t]=!1})}_onTick(){let e=this._viewer.scene.camera,r=this._viewer.scene.globe.ellipsoid.cartesianToCartographic(e.position).height/this._moveRate,s=i.Cartesian3.clone(e.position,new i.Cartesian3);this._flags.moveForward&&e.moveForward(r),this._flags.moveBackward&&e.moveBackward(r),this._flags.moveUp&&e.moveUp(r),this._flags.moveDown&&e.moveDown(r),this._flags.moveLeft&&e.moveLeft(r),this._flags.moveRight&&e.moveRight(r),this._flags.turnLeft&&e.rotate(s,-this._rotateRate),this._flags.turnRight&&e.rotate(s,this._rotateRate)}},Vp=Mo;var Ao=class{constructor(e){this._viewer=e,this._viewOption={},this._cache={},this._activedPath=void 0}_onPostRender(){if(!this._activedPath)return!1;this._activedPath.pathEvent&&this._activedPath.pathEvent.fire(ne.POST_RENDER,{viewer:this._viewer,viewOption:this._viewOption})}addPath(e){return e&&!this._cache.hasOwnProperty(e.pathId)&&(e.pathEvent.fire(ne.ADD),this._cache[e.pathId]=e),this}addPaths(e){return Array.isArray(e)&&e.forEach(t=>{this.addPath(t)}),this}removePath(e){return e&&this._cache.hasOwnProperty(e.pathId)&&(delete this._cache[e.pathId],e.pathEvent.fire(ne.REMOVE)),this}getPath(e){let t=this.getPaths().filter(r=>r.id===e);return t&&t.length?t[0]:void 0}getPaths(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}activate(e,t={}){var r;return!e||(e==null?void 0:e.pathId)===((r=this._activedPath)==null?void 0:r.pathId)||!this._cache.hasOwnProperty(e==null?void 0:e.pathId)?this:(this._viewOption=t,this._activedPath&&this.deactivate(),this._activedPath=e,this._activedPath.pathEvent&&this._activedPath.pathEvent.fire(ne.RESET_TIME_LINE),this._viewer.on(D.POST_RENDER,this._onPostRender,this),this)}deactivate(){return this._activedPath&&(this._activedPath.actived=!1),this._activedPath=void 0,this._viewer.off(D.POST_RENDER,this._onPostRender,this),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this}clear(){return this._cache={},this._activedPath&&(this._activedPath.actived=!1),this._activedPath=void 0,this._viewer.off(D.POST_RENDER,this._onPostRender,this),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this}},jp=Ao;var bo=class{constructor(e,t,r){this._id=x.uuid(),this._bid=void 0,this._positions=g.parsePositions(e),this._duration=t||20,this._pathMode=r||"speed",this._timeLine=[],this._sampledPosition=void 0,this._actived=!1,this._endTime=i.JulianDate.now(),this._pathEvent=new $i,this._pathEvent.on(ne.ADD,this._onAdd,this),this._pathEvent.on(ne.REMOVE,this._onRemove,this),this._pathEvent.on(ne.POST_RENDER,this._onPostRender,this),this._pathEvent.on(ne.RESET_TIME_LINE,this._resetTimeLine,this),this._state=m.INITIALIZED}get pathId(){return this._id}get id(){return this._bid}set id(e){this._bid=e}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e)}get duration(){return this._duration}set duration(e){this._duration=e}get pathMode(){return this._pathMode}set pathMode(e){this._pathMode=e}get pathEvent(){return this._pathEvent}get actived(){return this._actived}set actived(e){this._actived=e}get state(){return this._state}_onAdd(){this._state=m.ADDED}_onRemove(){this._state=m.REMOVED}_onPostRender({viewer:e,viewOption:t}){if(!this.actived)return!1;let r=i.JulianDate.now();if(i.JulianDate.lessThan(r,this._endTime)&&this._sampledPosition){let s=this._sampledPosition.getValue(r),a=this._sampledPosition.getValue(i.JulianDate.addSeconds(r,.001,new i.JulianDate));s&&a&&e.camera.lookAt(s,new i.HeadingPitchRange(we(s,a),i.Math.toRadians((t==null?void 0:t.pitch)||-20),(t==null?void 0:t.range)||2e3))}else e.camera.lookAtTransform(i.Matrix4.IDENTITY),this._actived=!1}_resetTimeLine(){if(!this._positions||!this._positions.length)return!1;let e=i.JulianDate.now(),t=0,r=[];if(this._pathMode==="speed"){let s=se(this._positions)/this._duration;r=this._positions.map((a,o,n)=>(o!==0&&(t+=se([n[o-1],a])/s),i.JulianDate.addSeconds(e,t,new i.JulianDate)))}else{let s=this._positions.length,a=(this._duration-this._duration%s)/s;r=this._positions.map((o,n)=>i.JulianDate.addSeconds(e,n*a,new i.JulianDate))}this._sampledPosition=new i.SampledPositionProperty,this._sampledPosition.addSamples(r,u.transformWGS84ArrayToCartesianArray(this._positions)),this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._sampledPosition.setInterpolationOptions({interpolationDegree:2,interpolationAlgorithm:i.HermitePolynomialApproximation}),this._endTime=r[r.length-1],this._actived=!0}},Zp=bo;var Qu={FP:"1",TP:"2",TRACKED:"tracked",FREE:"free"},be=Qu;var So=class{constructor(e){this._viewer=e,this._cache={},this._delegete=new i.CustomDataSource("history-track-layer"),this._viewer.dataSources.add(this._delegete),this._activedTrack=void 0,this._viewOption={},this._stopTime=void 0,this._state=m.INITIALIZED}get delegate(){return this._delegete.entities}get state(){return this._state}_onPostRender(){Object.keys(this._cache).forEach(e=>{let t=this._cache[e];t.trackEvent&&t.trackEvent.fire(oe.POST_RENDER,{viewer:this._viewer,viewOption:this._viewOption})}),this._viewer.scene.requestRender()}addTrack(e){return e&&e.trackEvent&&!this._cache.hasOwnProperty(e.trackId)&&(e.trackEvent.fire(oe.ADD,this),this._cache[e.trackId]=e),this}addTracks(e){return Array.isArray(e)&&e.forEach(t=>{this.addTrack(t)}),this}getTrack(e){let t=this.getTracks().filter(r=>r.id===e);return t&&t.length?t[0]:void 0}removeTrack(e){return e&&e.trackEvent&&this._cache.hasOwnProperty(e.trackId)&&(e.trackEvent.fire(oe.REMOVE,this),delete this._cache[e.trackId]),this}getTracks(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}play(){let e=i.JulianDate.now();return Object.keys(this._cache).forEach(t=>{let r=this._cache[t];r.startTime=e,r.viewed=!1}),this._activedTrack=void 0,this._stopTime=void 0,this._viewer.off(D.POST_RENDER,this._onPostRender,this),this._viewer.on(D.POST_RENDER,this._onPostRender,this),this._state=m.PLAY,this}pause(){return this._stopTime=i.JulianDate.now(),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0,this._viewer.off(D.POST_RENDER,this._onPostRender,this),this._state=m.PAUSE,this}restore(){if(this._state!==m.PAUSE)return this;if(this._stopTime){let e=i.JulianDate.now();Object.keys(this._cache).forEach(t=>{this._cache[t].trackEvent.fire(oe.RESET_TIME_LINE,{stopTime:this._stopTime,duration:i.JulianDate.secondsDifference(e,this._stopTime)})})}return this._viewer.off(D.POST_RENDER,this._onPostRender,this),this._viewer.on(D.POST_RENDER,this._onPostRender,this),this._state=m.PLAY,this}viewTrack(e,t={}){if(!this._cache.hasOwnProperty(e.trackId))throw new Error("TrackController: track does not added ");return this._viewOption=t,this._activedTrack&&(this._activedTrack.viewed=!1),e.viewed=!0,this._activedTrack=e,t.mode===be.FREE&&(this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0),this}releaseTrack(e){if(!this._cache.hasOwnProperty(e.trackId))throw new Error("TrackController: track does not added ");return e.viewed&&(e.viewed=!1),this._activedTrack=void 0,this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0,this}clear(){return Object.keys(this._cache).forEach(e=>{this.removeTrack(this._cache[e])}),this._activedTrack&&(this._activedTrack.viewed=!1),this._activedTrack=void 0,this._viewer.off(D.POST_RENDER,this._onPostRender,this),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0,this}},Yp=So;var Ku={clampToGround:!1,clampToTileset:!1,interpolationType:"Linear",interpolationDegree:2,endDelayTime:.5,headingOffset:0},$u={width:2,material:i.Color.ORANGE,clampToGround:!0,depthFailMaterial:i.Color.ORANGE.withAlpha(.8)},Io=class{constructor(e,t,r,s){this._id=x.uuid(),this._bid=void 0,this._positions=g.parsePositions(e),this._duration=t||20,this._callback=r,this._options={...Ku,...s},this._controller=void 0,this._sampledPosition=void 0,this._velocityOrientation=void 0,this._viewed=!1,this._delegate=new i.Entity,this._pathPositions=[],this._path=new i.Entity({show:!1,polyline:{positions:new i.CallbackProperty(()=>this._pathPositions,!1)}}),this._positionIndex=0,this._timeLine=[],this._startTime=void 0,this._endTime=void 0,this._trackEvent=new Qi,this._trackEvent.on(oe.POST_RENDER,this._onPostRender,this),this._trackEvent.on(oe.ADD,this._onAdd,this),this._trackEvent.on(oe.REMOVE,this._onRemove,this),this._trackEvent.on(oe.RESET_TIME_LINE,this._resetTimeLine,this),this._state=m.INITIALIZED}get currentDistance(){return se(g.parsePositions(this._pathPositions))}get currentPosition(){let[e]=this._pathPositions.slice(-1);return g.parsePosition(e)}get allDistance(){return se(this._positions)}get trackId(){return this._id}get id(){return this._bid}set id(e){this._bid=e}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._resetTimeLine({})}get duration(){return this._duration}set duration(e){this._duration=e,this._resetTimeLine({})}get startTime(){return this._startTime}set startTime(e){e instanceof Date?this._startTime=i.JulianDate.fromDate(e):this._startTime=e,this._resetTimeLine({})}get viewed(){return this._viewed}set viewed(e){this._viewed=e}get trackEvent(){return this._trackEvent}get state(){return this._state}_onAdd(e){if(!e)return!1;this._controller=e,this._controller.delegate.add(this._delegate),this._controller.delegate.add(this._path),!this._startTime&&(this._startTime=i.JulianDate.now()),this._state=m.ADDED}_onRemove(){if(!this._controller)return!1;this._controller.delegate.remove(this._delegate),this._controller.delegate.remove(this._path),this._viewed=!1,this._startTime=void 0,this._state=m.REMOVED}_onPostRender({viewer:e,viewOption:t}){if(!this._startTime||!this._endTime)return!1;let r=i.JulianDate.now();if(i.JulianDate.lessThanOrEquals(r,this._endTime)){let s=this._sampledPosition.getValue(r);if(!s)return!1;this._pathPositions.push(s),this._options.clampToTileset?this._delegate.position=e.scene.clampToHeight(s,[this._delegate]):this._delegate.position=s;let a=this._velocityOrientation.getValue(r);if(a){let n=i.Quaternion.fromHeadingPitchRoll(new i.HeadingPitchRoll(i.Math.toRadians(this._options.headingOffset||0),0,0),new i.Quaternion);this._delegate.orientation=i.Quaternion.multiply(a,n,new i.Quaternion)}let o=this._timeLine[this._positionIndex];if(o){let n=i.JulianDate.secondsDifference(r,o);if(n>=0&&n<=1){let h=this._positions[this._positionIndex]||void 0;if(h&&a){let c=i.Matrix3.fromQuaternion(a),p=i.Matrix4.fromRotationTranslation(c,s),f=i.Transforms.fixedFrameToHeadingPitchRoll(p);h.heading=i.Math.toDegrees(f.heading),h.pitch=i.Math.toDegrees(f.pitch),h.roll=i.Math.toDegrees(f.roll)}this._callback&&this._callback(h,this._positionIndex+1===this._positions.length),this._positionIndex++,this._options.loop&&this._positionIndex===this._positions.length&&this._restart()}}}this._setCameraView(e,t)}_restart(){this._startTime=i.JulianDate.now(),this._resetTimeLine({})}_setCameraView(e,t){var s,a,o;if(!this._viewed)return!1;let r=i.JulianDate.now();if(i.JulianDate.greaterThan(r,this._endTime))e.camera.lookAtTransform(i.Matrix4.IDENTITY),e.delegate.trackedEntity&&(e.delegate.trackedEntity=void 0),this._viewed=!1;else{let n=this._sampledPosition.getValue(r),h=this._sampledPosition.getValue(i.JulianDate.addSeconds(r,1/60,new i.JulianDate));n&&h&&((t==null?void 0:t.mode)===be.TRACKED&&((a=(s=e.delegate)==null?void 0:s.trackedEntity)==null?void 0:a.id)!==((o=this._delegate)==null?void 0:o.id)?e.delegate.trackedEntity=this._delegate:(t==null?void 0:t.mode)===be.FP?e.camera.lookAt(n,new i.HeadingPitchRange(we(n,h),i.Math.toRadians((t==null?void 0:t.pitch)||0),(t==null?void 0:t.range)||10)):(t==null?void 0:t.mode)===be.TP&&e.camera.lookAt(n,new i.HeadingPitchRange(0,i.Math.toRadians((t==null?void 0:t.pitch)||-90),(t==null?void 0:t.range)||1e3)))}}_resetTimeLine(e){var r;if(!this._startTime||!this._duration||!((r=this._positions)!=null&&r.length))return!1;let t=0;if(!(e!=null&&e.stopTime)&&!(e!=null&&e.duration)){let s=se(this._positions)/this._duration;this._timeLine=this._positions.map((a,o,n)=>(o!==0&&(t+=se([n[o-1],a])/s),i.JulianDate.addSeconds(this._startTime,t,new i.JulianDate))),this._pathPositions=[],this._positionIndex=0}else e!=null&&e.stopTime&&(e!=null&&e.duration)&&(this._duration+=e.duration,this._timeLine=this._timeLine.map(s=>(i.JulianDate.greaterThan(s,e.stopTime)&&(s=i.JulianDate.addSeconds(s,e.duration,new i.JulianDate)),s)));this._sampledPosition=new i.SampledPositionProperty,this._sampledPosition.addSamples(this._timeLine,u.transformWGS84ArrayToCartesianArray(this._positions)),this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._options.interpolationType==="Hermite"?this._sampledPosition.setInterpolationOptions({interpolationDegree:this._options.interpolationDegree||2,interpolationAlgorithm:i.HermitePolynomialApproximation}):this._options.interpolationType==="Linear"?this._sampledPosition.setInterpolationOptions({interpolationDegree:this._options.interpolationDegree||1,interpolationAlgorithm:i.LinearApproximation}):this._options.interpolationType==="Lagrange"&&this._sampledPosition.setInterpolationOptions({interpolationDegree:this._options.interpolationDegree||5,interpolationAlgorithm:i.LagrangePolynomialApproximation}),this._velocityOrientation=new i.VelocityOrientationProperty(this._sampledPosition),this._endTime=i.JulianDate.addSeconds(this._timeLine[this._timeLine.length-1],this._options.endDelayTime,new i.JulianDate)}addPosition(e,t){return this._positions.push(g.parsePosition(e)),this._duration+=t,this._resetTimeLine({}),this}setModel(e,t){return this._delegate.model={...t,uri:e,heightReference:this._options.clampToGround?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},this}setBillboard(e,t){return this._delegate.billboard={...t,image:e,heightReference:this._options.clampToGround?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},this}setLabel(e,t){return this._delegate.label={...t,text:e,heightReference:this._options.clampToGround?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},this}setPath(e,t={}){return this._path.show=!!e,x.merge(this._path.polyline,$u,t),this}},Jp=Io;var ef={ANGLE:"angle",AREA:"area",AREA_HEIGHT:"area_height",AREA_SURFACE:"area_surface",DISTANCE:"distance",DISTANCE_SURFACE:"distance_surface",HEADING:"heading",HEIGHT:"height",TRIANGLE_HEIGHT:"triangle_height"},le=ef;var Do=class{constructor(e){this._style=e,this._viewer=void 0,this._layer=void 0,this._delegate=void 0,this._options={},this._positions=[]}get drawTool(){return this._viewer.drawTool}_mountedHook(){}_onDrawAnchor(e){}_onAnchorMoving(e){this._positions.pop(),this._positions.push(e),this._options.onCalc&&this._options.onCalc(this._positions),this._positions.length<=1?this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236":this.drawTool.tooltipMess="\u5355\u51FB\u589E\u52A0\u70B9\uFF0C\u53F3\u51FB\u5220\u9664\u70B9\uFF0C\u53CC\u51FB\u5B8C\u6210\u7ED8\u5236"}_onDeleteAnchor(){this._positions.length>1&&(this._positions.splice(this._positions.length-2,1),this._options.onCalc&&this._options.onCalc(this._positions)),this._positions.length<=1&&(this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236")}_onDrawStop(){this._unbindEvent(),this._viewer.drawTool.deactivate(),this._removeSamePoint(this._positions),this._options.onDrawStop&&this._options.onDrawStop(this._delegate)}_removeSamePoint(e=[]){if(e.length<2)return e;for(let t=0;t<e.length-1;t++){let r=e[t],s=e[t+1];typeof r.equals=="function"&&r.equals(s)&&(console.log("element",r),console.log("element",s),e.splice(t,1),t--)}return e}_bindEvent(){this.drawTool.on(E.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.on(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.on(E.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.on(E.DRAW_STOP,this._onDrawStop,this)}_unbindEvent(){this.drawTool.off(E.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.off(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.off(E.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.off(E.DRAW_STOP,this._onDrawStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.drawTool.activate(t),this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236",this._mountedHook(),this._unbindEvent(),this._bindEvent(),this}},hi=Do;var Lo=class extends hi{constructor(e){super(e)}_mountedHook(){this._delegate=new i.Entity({polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions,!1)}}),this._layer.entities.add(this._delegate)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),t>0&&this.drawTool.fire(E.CREATE_ANCHOR,{position:e}),t>=this._options.maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(E.DRAW_STOP,e))}},he=Lo;var Ro=class{constructor(e){this._viewer=void 0,this._layer=void 0,this._overlay=e,this._delegate=new i.Entity,this._delegate.merge(e),this._options={},this._positions=[]}get editTool(){return this._viewer.editTool}_mountedHook(){}_mountAnchor(){}_onAnchorMoving({pickedAnchor:e,position:t}){}_onEditAnchorStop({pickedAnchor:e,position:t}){}_onEditStop({pickedAnchor:e,position:t}){this._unbindEvent(),this._viewer.editTool.deactivate()}_bindEvent(){return this.editTool.on(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.on(E.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.on(E.EDIT_STOP,this._onEditStop,this),this}_unbindEvent(){this.editTool.off(E.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.off(E.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.off(E.EDIT_STOP,this._onEditStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.editTool.activate(t),this._mountedHook(),this._mountAnchor(),this._unbindEvent(),this._bindEvent(),this}},ci=Ro;var Oo=class extends ci{constructor(e){super(e)}_mountedHook(){this.editTool.tooltipMess="\u70B9\u51FB\u951A\u70B9\u79FB\u52A8,\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._delegate.polyline.positions=new i.CallbackProperty(()=>this._positions.length>1?this._positions:null,!1),this._layer.entities.add(this._delegate)}_mountAnchor(){let e=[].concat(this._overlay.polyline.positions.getValue(i.JulianDate.now()));if(this._options.maxAnchorSize>2){for(let t=0;t<e.length-1;t++){let r=F(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.push(e[e.length-1]),this._positions.forEach((t,r)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})})}else this._positions=e,this._positions.forEach((t,r)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:t,index:r})});this._layer.entities.remove(this._overlay)}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a=F(this._positions[s],this._positions[s-1]),o=F(this._positions[s],this._positions[s+1]);this._positions.splice(s,1,a,t,o),this.editTool.fire(E.CLEAR_ANCHOR),this._positions.forEach((n,h)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:n,index:h,isMid:h%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(this._positions[s]=t,!r.isMid&&this._options.maxAnchorSize>2){let a=-1,o=-1,n=-1,h=-1,c=this._positions.length;if(s===0?(n=s+2,h=s+1):r.index===c-1?(a=s-2,o=s-1):(a=s-2,o=s-1,n=s+2,h=s+1),a>0){let p=F(this._positions[a],this._positions[s]);this._positions[o]=p,this.editTool.fire(E.UPDATE_ANCHOR,{index:o,position:p})}if(n>0){let p=F(this._positions[n],this._positions[s]);this._positions[h]=p,this.editTool.fire(E.UPDATE_ANCHOR,{index:h,position:p})}}this._options.onCalc&&this._options.onCalc(this._positions)}},ce=Oo;var ko=class{constructor(){this._viewer=void 0,this._layer=void 0,this._startLabel=new i.Entity({label:{text:"\u5F00\u59CB",font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._resultLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._options={}}_getSampledHeight(e,t=!1){let r=this._viewer.terrainProvider&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)?i.sampleTerrainMostDetailed(this._viewer.terrainProvider,e.map(a=>i.Cartographic.fromCartesian(a))):Promise.resolve(e.map(a=>i.Cartographic.fromCartesian(a))),s=this._viewer.scene.clampToHeightSupported&&t?this._viewer.scene.clampToHeightMostDetailed(e,this._layer.entities.values):Promise.resolve(e);return Promise.all([r,s])}_onDrawStop(e){}_onCalc(e){}_startHook(e,t){this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._options.onDrawStop=this._onDrawStop.bind(this),this._options.onCalc=this._onCalc.bind(this),this._layer.entities.add(this._startLabel),this._layer.entities.add(this._resultLabel)}start(e,t){return this}},X=ko;var zo=class extends X{constructor(){super(),this._maxAnchorSize=2,this._helpLinePositions=[],this._helpLine=new i.Entity({polyline:{positions:new i.CallbackProperty(()=>this._helpLinePositions.length>1?this._helpLinePositions:null,!1)}})}_onDrawStop(e){new ce(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){this._resultLabel.position=e[1];let t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e[0],new i.Cartesian3),r=i.Plane.fromPointNormal(e[0],t);this._helpLinePositions=[e[0],i.Plane.projectPointOntoPlane(r,e[1],new i.Cartesian3),e[1]];let s=Math.abs(i.Plane.getPointDistance(r,e[1]));this._resultLabel.label.text=`\u89D2\u5EA6\uFF1A${i.Math.toDegrees(Math.asin(s/i.Cartesian3.distance(e[0],e[1]))).toFixed(2)} \u5EA6`}}start(e,t){this._startHook(e,t);let r=new i.PolylineDashMaterialProperty({color:i.Color.GREENYELLOW});return this._helpLine.polyline.material=r,this._helpLine.polyline.depthFailMaterial=r,this._layer.entities.add(this._helpLine),new he({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!1}).start(e,{...t,maxAnchorSize:this._maxAnchorSize}),this}},qp=zo;var No=class extends hi{constructor(e){super(e)}_mountedHook(){this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?new i.PolygonHierarchy(this._positions.map(e=>e.clone())):null,!1)},polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions.length<=3?this._positions:null,!1)}}),this._layer.entities.add(this._delegate)}_onDrawAnchor(e){this._positions.push(e),this.drawTool.fire(E.CREATE_ANCHOR,{position:e})}},Ye=No;var Fo=class extends ci{constructor(e){super(e)}_mountedHook(){this.editTool.tooltipMess="\u70B9\u51FB\u951A\u70B9\u79FB\u52A8,\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._delegate.polygon.hierarchy=new i.CallbackProperty(e=>this._positions.length>2?new i.PolygonHierarchy(this._positions):null,!1),this._layer.entities.add(this._delegate)}_mountAnchor(){let e=[].concat(this._overlay.polygon.hierarchy.getValue(i.JulianDate.now()).positions);e.push(e[0]);for(let t=0;t<e.length-1;t++){let r=F(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.forEach((t,r)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})}),this._layer.entities.remove(this._overlay)}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a,o,n=this._positions.length;s===n-1?(a=F(this._positions[s],this._positions[s-1]),o=F(this._positions[s],this._positions[0])):(a=F(this._positions[s],this._positions[s-1]),o=F(this._positions[s],this._positions[s+1])),this._positions.splice(s,1,a,t,o),this.editTool.fire(E.CLEAR_ANCHOR),this._positions.forEach((h,c)=>{this.editTool.fire(E.CREATE_ANCHOR,{position:h,index:c,isMid:c%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;this._positions[s]=t;let a=this._positions.length;if(!r.isMid){let o=-1,n=-1,h=-1,c=-1;s===0?(o=a-2,n=a-1,h=s+2,c=s+1):s===a-2?(o=s-2,n=s-1,h=0,c=a-1):(o=s-2,n=s-1,h=s+2,c=s+1);let p=F(this._positions[o],this._positions[s]),f=F(this._positions[h],this._positions[s]);this._positions[n]=p,this._positions[c]=f,this.editTool.fire(E.UPDATE_ANCHOR,{index:n,position:p}),this.editTool.fire(E.UPDATE_ANCHOR,{index:c,position:f})}this._options.onCalc&&this._options.onCalc(this._positions)}},Je=Fo;var Wo=class extends X{constructor(){super()}_onDrawStop(e){new Je(e).start({viewer:this._viewer,layer:this._layer},this._options)}_onCalc(e){var t;e.length>2?(this._resultLabel.position=(t=i.BoundingSphere.fromPoints(e))==null?void 0:t.center,this._resultLabel.label.text=`\u9762\u79EF\uFF1A${ye(e).toFixed(2)} \u5E73\u65B9\u7C73`):this._resultLabel.label.text=null}start(e,t){return this._startHook(e,t),new Ye({material:t.material||i.Color.YELLOW.withAlpha(.6),perPositionHeight:!0,width:2}).start(e,this._options),this}},Xp=Wo;var Go=class extends X{constructor(){super()}_onDrawStop(e){new Je(e).start({viewer:this._viewer,layer:this._layer},this._options)}_lerp(e,t=4){let r=[];for(let s=0;s<t;++s)for(let a=0;a<t;++a){let o=i.Math.lerp(e.west,e.east,a/(t-1)),n=i.Math.lerp(e.south,e.north,s/(t-1));r.push(i.Cartesian3.fromRadians(o,n))}return r}_onCalc(e){if(e.length>2){let t=this._lerp(i.Rectangle.fromCartesianArray(e),this._options.lerpNum);this._getSampledHeight(t,!0).then(([r,s])=>r.map((a,o)=>({lng:a.longitude,lat:a.latitude,alt:Math.max(a.height||0,s[o]?i.Cartographic.fromCartesian(s[o]).height:0)}))).then(r=>{let s=0,a;r.forEach(o=>{o.alt>s&&(s=o.alt,a=o)}),a&&(this._resultLabel.position=i.Cartesian3.fromRadians(a.lng,a.lat,a.alt),this._resultLabel.label.text=`\u9AD8\u5EA6\uFF1A${s.toFixed(2)} \u7C73`)})}}start(e,t){return this._startHook(e,t),new Ye({material:t.material||i.Color.YELLOW.withAlpha(.6),width:2}).start(e,this._options),this}},Qp=Go;var Ho=class extends X{constructor(){super()}_lerp(e,t=4){let r=[];for(let s=0;s<t;++s)for(let a=0;a<t;++a){let o=i.Math.lerp(e.west,e.east,a/(t-1)),n=i.Math.lerp(e.south,e.north,s/(t-1));r.push(i.Cartesian3.fromRadians(o,n))}return r}_onDrawStop(e){new Je(e).start({viewer:this._viewer,layer:this._layer},this._options)}_onCalc(e){var t;if(e.length>2){this._resultLabel.position=(t=i.BoundingSphere.fromPoints(e))==null?void 0:t.center;let r=this._lerp(i.Rectangle.fromCartesianArray(e),this._options.lerpNum);this._getSampledHeight(r.concat(e),!1).then(([s])=>s.map(a=>i.Cartesian3.fromDegrees(i.Math.toDegrees(a.longitude),i.Math.toDegrees(a.latitude),a.height))).then(s=>{this._resultLabel.label.text=`\u9762\u79EF\uFF1A${ye(s).toFixed(2)} \u5E73\u65B9\u7C73`})}}start(e,t){return this._startHook(e,t),new Ye({material:t.material||i.Color.YELLOW.withAlpha(.6),width:2}).start(e,this._options),this}},Kp=Ho;var Bo=class extends X{constructor(){super(),this._maxAnchorSize=9999,this._positions=[]}_onDrawStop(e){for(let t=0;t<this._positions.length-2;t++)this._layer.entities.add(this.createLabel(this._positions[t],this._positions[t+1]));new ce(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){this._resultLabel.position=e[e.length-1];let t=0;for(let r=0;r<e.length-1;r++){let s=i.Cartesian3.distance(e[r],e[r+1]);t+=s}this._resultLabel.label.text=t>1e3?`\u603B\u8DDD\u79BB\uFF1A${(t/1e3).toFixed(2)} \u516C\u91CC`:`\u603B\u8DDD\u79BB\uFF1A${t.toFixed(2)} \u7C73`}else this._resultLabel.label.text=null;this._positions=e}createLabel(e,t){let r=i.Cartesian3.distance(e,t),s=i.Cartesian3.lerp(e,t,.5,new i.Cartesian3),a=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}});return a.label.text=r>1e3?`\u8DDD\u79BB\uFF1A${(r/1e3).toFixed(2)} \u516C\u91CC`:`\u8DDD\u79BB\uFF1A${r.toFixed(2)} \u7C73`,a.position=s,a}start(e,t){return this._startHook(e,t),new he({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!1}).start(e,{...t,maxAnchorSize:this._maxAnchorSize}),this}},$p=Bo;var Uo=class extends X{constructor(){super(),this._maxAnchorSize=9999,this._positions=[]}_lerp(e,t,r=5){let s=[],a=i.Cartographic.fromCartesian(e),o=i.Cartographic.fromCartesian(t);for(let n=0;n<r;n++){let h=i.Math.lerp(a.longitude,o.longitude,n/r),c=i.Math.lerp(a.latitude,o.latitude,n/r),p=a.height-(a.height-o.height)*(n/r);s.push(i.Cartesian3.fromRadians(h,c,p))}return s}_onDrawStop(e){for(let t=0;t<this._positions.length-2;t++)this._layer.entities.add(this.createLabel(this._positions[t],this._positions[t+1]));new ce(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){let t=[e[0]];this._resultLabel.position=e[e.length-1];for(let r=0;r<e.length-1;r++)t=t.concat(this._lerp(e[r],e[r+1],this._options.lerpNum));t.push(e[e.length-1]),this._getSampledHeight(t).then(([r,s])=>r.map((a,o)=>i.Cartesian3.fromDegrees(i.Math.toDegrees(a.longitude),i.Math.toDegrees(a.latitude),Math.max(a.height||0,s[o]?i.Cartographic.fromCartesian(s[o]).height:0)))).then(r=>{let s=0;for(let a=0;a<r.length-1;a++){let o=i.Cartesian3.distance(r[a],r[a+1]);s+=o}this._resultLabel.label.text=s>1e3?`\u603B\u8DDD\u79BB\uFF1A${(s/1e3).toFixed(2)} \u516C\u91CC`:`\u603B\u8DDD\u79BB\uFF1A${s.toFixed(2)} \u7C73`})}else this._resultLabel.label.text=null;this._positions=e}createLabel(e,t){let r=i.Cartesian3.distance(e,t),s=i.Cartesian3.lerp(e,t,.5,new i.Cartesian3),a=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}});return a.label.text=r>1e3?`\u8DDD\u79BB\uFF1A${(r/1e3).toFixed(2)} \u516C\u91CC`:`\u8DDD\u79BB\uFF1A${r.toFixed(2)} \u7C73`,a.position=s,a}start(e,t){return this._startHook(e,t),new he({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!0}).start(e,{...this._options,maxAnchorSize:this._maxAnchorSize}),this}},ed=Uo;var Vo=class extends X{constructor(){super(),this._maxAnchorSize=2}_onDrawStop(e){new ce(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){e.length>0&&(this._startLabel.position=e[0]),e.length>1&&(this._resultLabel.position=e[e.length-1],this._resultLabel.label.text=`\u504F\u822A\uFF1A${i.Math.toDegrees(we(e[0],e[1])).toFixed(1)} \u5EA6`)}start(e,t){return this._startHook(e,t),new he({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2}).start(e,{...this._options,maxAnchorSize:this._maxAnchorSize}),this}},td=Vo;var jo=class extends X{constructor(){super(),this._maxAnchorSize=2,this._helpLinePositions=[],this._helpLine=new i.Entity({polyline:{positions:new i.CallbackProperty(()=>this._helpLinePositions.length>1?this._helpLinePositions:null,!1)}})}_onDrawStop(e){new ce(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){this._resultLabel.position=e[1];let t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e[0],new i.Cartesian3),r=i.Plane.fromPointNormal(e[0],t);this._helpLinePositions=[e[0],i.Plane.projectPointOntoPlane(r,e[1],new i.Cartesian3),e[1]];let s=Math.abs(i.Plane.getPointDistance(r,e[1]));this._resultLabel.label.text=`\u9AD8\u5EA6\uFF1A${s.toFixed(2)} \u7C73`}}start(e,t){this._startHook(e,t);let r=new i.PolylineDashMaterialProperty({color:i.Color.GREENYELLOW});return this._helpLine.polyline.material=r,this._helpLine.polyline.depthFailMaterial=r,this._layer.entities.add(this._helpLine),new he({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2}).start(e,{...this._options,maxAnchorSize:this._maxAnchorSize}),this}},id=jo;var Zo=class extends X{constructor(){super(),this._maxAnchorSize=2,this._helpLinePositions=[],this._helpLine=new i.Entity({polyline:{positions:new i.CallbackProperty(()=>this._helpLinePositions.length>1?this._helpLinePositions:null,!1)}}),this._lengthLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._heightLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._distanceLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}})}_onDrawStop(e){new ce(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){let t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e[0],new i.Cartesian3),r=i.Plane.fromPointNormal(e[0],t),s=i.Plane.projectPointOntoPlane(r,e[1],new i.Cartesian3);this._helpLinePositions=[e[0],s,e[1]];let a=i.Cartesian3.distance(e[0],s),o=Math.abs(i.Plane.getPointDistance(r,e[1])),n=i.Cartesian3.distance(e[0],e[1]);this._lengthLabel.position=i.Cartesian3.midpoint(e[0],s,new i.Cartesian3),this._lengthLabel.label.text=a>1e3?`${(a/1e3).toFixed(2)} \u516C\u91CC`:`${a.toFixed(2)} \u7C73`,this._distanceLabel.position=i.Cartesian3.midpoint(e[0],e[1],new i.Cartesian3),this._distanceLabel.label.text=n>1e3?`${(n/1e3).toFixed(2)} \u516C\u91CC`:`${n.toFixed(2)} \u7C73`,this._heightLabel.position=i.Cartesian3.midpoint(s,e[1],new i.Cartesian3),this._heightLabel.label.text=o>1e3?`${(o/1e3).toFixed(2)} \u516C\u91CC`:`${o.toFixed(2)} \u7C73`}}start(e,t){this._startHook(e,t);let r=new i.PolylineDashMaterialProperty({color:i.Color.GREENYELLOW});return this._helpLine.polyline.material=r,this._helpLine.polyline.depthFailMaterial=r,this._layer.entities.add(this._helpLine),this._layer.entities.add(this._lengthLabel),this._layer.entities.add(this._heightLabel),this._layer.entities.add(this._distanceLabel),new he({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!1}).start(e,{...t,maxAnchorSize:this._maxAnchorSize}),this}},rd=Zo;var Yo=class{constructor(e){if(!e)throw Error("missing viewer param");this._viewer=e,this._layer=new i.CustomDataSource("measure-layer"),this._viewer.dataSources.add(this._layer)}get viewer(){return this._viewer}get layer(){return this._layer}angle(e={}){return new qp().start(this,e),this}area(e={}){return new Xp().start(this,e),this}areaHeight(e={}){return new Qp().start(this,e),this}areaSurface(e={}){return new Kp().start(this,e),this}distance(e={}){return new $p().start(this,e),this}distanceSurface(e={}){return new ed().start(this,e),this}heading(e={}){return new td().start(this,e),this}height(e={}){return new id().start(this,e),this}triangleHeight(e={}){return new rd().start(this,e),this}activate(e,t){switch(e){case le.ANGLE:this.angle(t);break;case le.AREA:this.area(t);break;case le.AREA_HEIGHT:this.areaHeight(t);break;case le.AREA_SURFACE:this.areaSurface(t);break;case le.DISTANCE:this.distance(t);break;case le.DISTANCE_SURFACE:this.distanceSurface(t);break;case le.HEADING:this.heading(t);break;case le.HEIGHT:this.height(t);break;case le.TRIANGLE_HEIGHT:this.triangleHeight(t);break;default:break}return this}deactivate(){return this._layer.entities.removeAll(),this._viewer.drawTool.tooltipMess="",this._viewer.drawTool.deactivate(),this._viewer.editTool.tooltipMess="",this._viewer.editTool.deactivate(),this}},sd=Yo;var tf={depthFail:!0,width:10,arrow:!1},Jo=class{constructor(e,t={}){this._delegate=void 0,this._positions=[],this._options={...tf,...t},this._color=this._options.color,this._positions=e.slice(),this._options.loop&&this._positions.push(e[0]),this._boundingSphere=i.BoundingSphere.fromPoints(this._positions),this._transformedBoundingSphere=i.BoundingSphere.clone(this._boundingSphere),this._modelMatrix=i.Matrix4.clone(i.Matrix4.IDENTITY),this._active=!1,this._show=!1,this._update=!0}get show(){return this._show}set show(e){return this._show=e,this}get active(){return this._active}set active(e){return this._active=e,this._color=e?i.Color.YELLOW:this._options.color,this._update=!0,this}get positions(){return this._positions}set positions(e){return this._positions=e.slice(),this._options.loop&&this._positions.push(e[0]),this}get modelMatrix(){return this._modelMatrix}set modelMatrix(e){return i.Matrix4.equalsEpsilon(e,this._modelMatrix,i.Math.EPSILON10)?this:(i.Matrix4.clone(e,this._modelMatrix),this._update=!0,this)}get boundingVolume(){return this._transformedBoundingSphere}update(e){if(this._show){if(this._update){this._update=!1,this._delegate=this._delegate&&this._delegate.destroy();let t=this._color,r=t.withAlpha(.3),s,a;this._options.arrow?(s=new i.PolylineMaterialAppearance({material:i.Material.fromType(i.Material.PolylineArrowType,{color:t})}),this._options.depthFail&&(a=new i.PolylineMaterialAppearance({material:i.Material.fromType(i.Material.PolylineArrowType,{color:r})}))):(s=new i.PolylineColorAppearance({translucent:t.alpha!==1}),this._options.depthFail&&(a=new i.PolylineColorAppearance({translucent:r.alpha!==1})));let o=new i.PolylineGeometry({positions:this._positions,width:this._options.width,vertexFormat:i.PolylineMaterialAppearance.VERTEX_FORMAT,arcType:i.ArcType.NONE});this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:o,attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t),depthFailColor:i.ColorGeometryInstanceAttribute.fromColor(r)},id:this._options.id,modelMatrix:this._modelMatrix}),appearance:s,depthFailAppearance:a,asynchronous:!1}),this._transformedBoundingSphere=i.BoundingSphere.transform(this._boundingSphere,this._modelMatrix,this._transformedBoundingSphere)}this._delegate.update(e)}}isDestroyed(){return!1}destroy(){return this._delegate=this._delegate&&this._delegate.destroy(),i.destroyObject(this)}},pi=Jo;var qo={X:i.Cartesian3.UNIT_X,Y:i.Cartesian3.UNIT_Y,Z:i.Cartesian3.UNIT_Z},Xo=class{constructor(e,t={}){this._viewer=e,this._options=t,this._modelMatrix=void 0,this._active=!1,this._activeAxis=void 0,this._fixedFrame=void 0,this._offset=new i.Cartesian3,this._pickingPlane=new i.Plane(i.Cartesian3.UNIT_X,0),this._axisX=this._createAxisLine("X",i.Color.RED),this._axisY=this._createAxisLine("Y",i.Color.GREEN),this._axisZ=this._createAxisLine("Z",i.Color.BLUE),this.resetTranslation=void 0,this.complete=void 0}set modelMatrix(e){return this._modelMatrix=e,this.update(),this}get active(){return this._active}set active(e){return this._active=e,this._axisX.show=this._active,this._axisY.show=this._active,this._axisZ.show=this._active,this}get modelTranslation(){return i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3)}_createAxisLine(e,t){return this._viewer.scene.primitives.add(new pi([i.Cartesian3.ZERO,qo[e]],{id:"position-editor-"+e,arrow:this._options.arrow,color:t,depthFail:this._options.depthFail}))}handleLeftDown(e){console.log("handleLeftDown",e);let t=this._viewer.scene,r=t.camera,s=t.drillPick(e.position)||[];console.log(2);for(let n=0;n<s.length;n++){let h=s[n];if(h.id&&h.id==="position-editor-X"){this._activeAxis="X",this._axisX.active=!0;break}else if(h.id&&h.id==="position-editor-Y"){this._activeAxis="Y",this._axisY.active=!0;break}else if(h.id&&h.id==="position-editor-Z"){this._activeAxis="Z",this._axisZ.active=!0;break}console.log(3)}if(!this._activeAxis)return;console.log(4),this._viewer.canvas.style.cursor="pointer";let a=i.Matrix4.multiplyByPointAsVector(this._fixedFrame,qo[this._activeAxis],new i.Cartesian3),o=new i.Cartesian3;Math.abs(i.Cartesian3.dot(r.upWC,a)>.7)?o=i.Cartesian3.cross(r.rightWC,a,o):o=i.Cartesian3.cross(r.upWC,a,o),i.Cartesian3.normalize(o,o),i.Plane.fromPointNormal(this.modelTranslation,o,this._pickingPlane),i.IntersectionTests.rayPlane(r.getPickRay(e.position),this._pickingPlane,this._offset),i.Cartesian3.subtract(this._offset,this.modelTranslation,this._offset),t.screenSpaceCameraController.enableInputs=!1,console.log(5)}handleMouseMove(e){if(!this._activeAxis)return;let t=this._viewer.scene.camera,r=new i.Cartesian3,s=i.IntersectionTests.rayPlane(t.getPickRay(e.endPosition),this._pickingPlane,new i.Cartesian3);if(!s)return;let a=i.Cartesian3.subtract(s,this.modelTranslation,new i.Cartesian3),o=i.Matrix4.multiplyByPointAsVector(this._fixedFrame,qo[this._activeAxis],new i.Cartesian3);i.Cartesian3.projectVector(a,o,a),i.Cartesian3.projectVector(this._offset,o,r),i.Cartesian3.subtract(a,r,a);let n=i.Cartesian3.add(this.modelTranslation,a,new i.Cartesian3);this.resetTranslation&&this.resetTranslation(n)}handleLeftUp(e){this._viewer.canvas.style.cursor="default",this._activeAxis=void 0,this._axisX.active=!1,this._axisY.active=!1,this._axisZ.active=!1,this._viewer.scene.screenSpaceCameraController.enableInputs=!0,this.complete&&this.complete()}update(){let e=5*this._options.axisLineScale;this._fixedFrame=i.Transforms.eastNorthUpToFixedFrame(this.modelTranslation);let t=i.Matrix4.multiplyByUniformScale(this._fixedFrame,e,new i.Matrix4);this._axisX.modelMatrix=t,this._axisY.modelMatrix=t,this._axisZ.modelMatrix=t}isDestroyed(){return!1}destroy(){this.active=!1;let e=this._viewer.scene;e.primitives.remove(this._axisX),e.primitives.remove(this._axisY),e.primitives.remove(this._axisZ),i.destroyObject(this)}},ad=Xo;var od={X:i.Cartesian3.UNIT_X,Y:i.Cartesian3.UNIT_Y,Z:i.Cartesian3.UNIT_Z},Qo=class{constructor(e,t={}){this._viewer=e,this._options=t,this._modelMatrix=void 0,this._active=!1,this._activeAxis=void 0,this._rotationStartPoint=new i.Cartesian3,this._rotationPlane=new i.Plane(i.Cartesian3.UNIT_X,0);let r=this._getUnitCirclePositions();this._axisX=this._createAxisLine("X",r.x,i.Color.RED),this._axisY=this._createAxisLine("Y",r.y,i.Color.GREEN),this._axisZ=this._createAxisLine("Z",r.z,i.Color.BLUE),this.resetRotation=void 0,this.complete=void 0}set modelMatrix(e){console.log(e),this._modelMatrix=e,this.update()}get active(){return this._active}set active(e){return this._active=e,this._axisX.show=e,this._axisY.show=e,this._axisZ.show=e,this}get modelTranslation(){return i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3)}_getUnitCirclePositions(){let e=[],t=[],r=[];for(let s=0;s<360;s++){let a=i.Math.toRadians(s),o=Math.cos(a),n=Math.sin(a);e.push(new i.Cartesian3(0,o,n)),t.push(new i.Cartesian3(n,0,o)),r.push(new i.Cartesian3(o,n,0))}return{x:e,y:t,z:r}}_createAxisLine(e,t,r){return this._viewer.scene.primitives.add(new pi(t,{id:"position-editor-"+e,loop:!0,color:r,width:5,depthFail:this._options.depthFail}))}_getRotationAngle(e,t,r){let s=i.Matrix4.inverse(e,new i.Matrix4),a=i.Matrix4.multiplyByPoint(s,t,new i.Cartesian3),o=i.Matrix4.multiplyByPoint(s,r,new i.Cartesian3),n=new i.Cartesian2,h=new i.Cartesian2;this._activeAxis==="X"?(n.x=a.y,n.y=a.z,h.x=o.y,h.y=o.z):this._activeAxis==="Y"?(n.x=-a.x,n.y=a.z,h.x=-o.x,h.y=o.z):(n.x=a.x,n.y=a.y,h.x=o.x,h.y=o.y);let c=n.x*h.y-n.y*h.x>=0,p=i.Cartesian2.angleBetween(n,h);return c||(p=-p),p}handleLeftDown(e){console.log("handleLeftDown",e);let t=this._viewer.scene,r=t.drillPick(e.position)||[];console.log(1);for(let o=0;o<r.length;o++){let n=r[o];if(n.id&&n.id==="position-editor-X"){this._activeAxis="X",this._axisX.active=!0;break}else if(n.id&&n.id==="position-editor-Y"){this._activeAxis="Y",this._axisY.active=!0;break}else if(n.id&&n.id==="position-editor-Z"){this._activeAxis="Z",this._axisZ.active=!0;break}}if(!this._activeAxis)return;this._viewer.canvas.style.cursor="pointer";let s=i.Matrix4.multiplyByPoint(this._modelMatrix,od[this._activeAxis],new i.Cartesian3),a=i.Cartesian3.subtract(s,this.modelTranslation,s);i.Cartesian3.normalize(a,a),i.Plane.fromPointNormal(this.modelTranslation,a,this._rotationPlane),i.IntersectionTests.rayPlane(t.camera.getPickRay(e.position),this._rotationPlane,this._rotationStartPoint),t.screenSpaceCameraController.enableInputs=!1}handleMouseMove(e){if(!this._activeAxis)return;let t=this._viewer.scene.camera,r=i.IntersectionTests.rayPlane(t.getPickRay(e.endPosition),this._rotationPlane,new i.Cartesian3);if(!r)return;let s=this._getRotationAngle(this._modelMatrix,this._rotationStartPoint,r),a=i.Quaternion.fromAxisAngle(od[this._activeAxis],s,new i.Quaternion),o=i.Matrix3.fromQuaternion(a),n=i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3),h=i.Transforms.eastNorthUpToFixedFrame(n),c=i.Matrix4.getMatrix3(h,new i.Matrix3);i.Matrix3.multiply(c,o,o);let p=i.Matrix4.fromRotationTranslation(o,this.modelTranslation,new i.Matrix4);this.resetRotation&&this.resetRotation(p)}handleLeftUp(e){this._viewer.canvas.style.cursor="default",this._activeAxis=void 0,this._axisX.active=!1,this._axisY.active=!1,this._axisZ.active=!1,this._viewer.scene.screenSpaceCameraController.enableInputs=!0,this.complete&&this.complete()}update(){let e=5*this._options.axisLineScale,t=i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3),r=i.Transforms.eastNorthUpToFixedFrame(t),s=i.Matrix4.multiplyByUniformScale(r,e,new i.Matrix4);this._axisX.modelMatrix=s,this._axisY.modelMatrix=s,this._axisZ.modelMatrix=s}isDestroyed(){return!1}destroy(){this.active=!1;let e=this._viewer.scene;return e.primitives.remove(this._axisX),e.primitives.remove(this._axisY),e.primitives.remove(this._axisZ),i.destroyObject(this)}},nd=Qo;var rf={TRANSLATION:"translation",ROTATION:"rotation"},di=rf;var sf={arrow:!0,width:8,depthFail:!0,axisLineScale:1},Ko=class{constructor(e,t={}){this._viewer=e,this._options={...sf,...t},this._modelMatrix=void 0,this._model=void 0,this._handler=void 0,this._activeEditor=void 0,this._callback=void 0,this._position={lng:0,lat:0,alt:0,heading:0,pitch:0,roll:0},this._translationEditor=new ad(this._viewer,this._options),this._rotationEditor=new nd(this._viewer,this._options),this._translationEditor.resetTranslation=this._resetTranslation.bind(this),this._translationEditor.complete=this._complete.bind(this),this._rotationEditor.resetRotation=this._resetRotation.bind(this),this._rotationEditor.complete=this._complete.bind(this)}set overlay(e){return this._model=e.delegate||e,this._position=e.position||{lng:0,lat:0,alt:0,heading:0,pitch:0,roll:0},this}_bindEvent(){this._handler=new i.ScreenSpaceEventHandler(this._viewer.canvas),this._handler.setInputAction(this._onLeftDown.bind(this),i.ScreenSpaceEventType.LEFT_DOWN),this._handler.setInputAction(this._onLeftUp.bind(this),i.ScreenSpaceEventType.LEFT_UP),this._handler.setInputAction(this._onMouseMove.bind(this),i.ScreenSpaceEventType.MOUSE_MOVE)}_unbindEvent(){this._handler&&(this._handler.removeInputAction(this._onLeftDown.bind(this),i.ScreenSpaceEventType.LEFT_DOWN),this._handler.removeInputAction(this._onLeftUp.bind(this),i.ScreenSpaceEventType.LEFT_UP),this._handler.removeInputAction(this._onMouseMove.bind(this),i.ScreenSpaceEventType.MOUSE_MOVE))}_setModelMatrix(){if(this._model instanceof i.Entity){let e=this._model.position.getValue(i.JulianDate.now()),t=new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(-this._position.pitch),i.Math.toRadians(this._position.roll));this._modelMatrix=i.Transforms.headingPitchRollToFixedFrame(e,t),this._activeEditor.modelMatrix=this._modelMatrix,this._activeEditor.active=!0,this._setLngLatAlt(this._modelMatrix)}else this._model instanceof Promise&&this._model.then(e=>{e instanceof i.Model?this._modelMatrix=e.modelMatrix.clone():e instanceof i.Cesium3DTileset&&(this._modelMatrix=e.root.transform.clone()),this._activeEditor.modelMatrix=this._modelMatrix,this._activeEditor.active=!0,this._setLngLatAlt(this._modelMatrix)})}_setLngLatAlt(e){let t=i.Matrix4.getTranslation(e,new i.Cartesian3),r=i.Cartographic.fromCartesian(t);this._position.lng=Number(i.Math.toDegrees(r.longitude).toFixed(8)),this._position.lat=Number(i.Math.toDegrees(r.latitude).toFixed(8)),this._position.alt=Number(r.height.toFixed(2))}_setHPR(e){this._position.heading+=Number(i.Math.toDegrees(e.heading).toFixed(8)),this._position.heading=this._position.heading%360,this._position.pitch+=Number(-i.Math.toDegrees(e.pitch).toFixed(8)),this._position.pitch=this._position.pitch%360,this._position.roll+=Number(-i.Math.toDegrees(e.roll).toFixed(8)),this._position.roll=this._position.roll%360}_onLeftDown(e){this._activeEditor&&this._activeEditor.handleLeftDown(e)}_onMouseMove(e){this._activeEditor&&this._activeEditor.handleMouseMove(e)}_onLeftUp(e){this._activeEditor&&this._activeEditor.handleLeftUp(e)}_resetRotation(e){let t=i.Transforms.fixedFrameToHeadingPitchRoll(e);if(this._setHPR(t),this._model instanceof i.Entity){let r=this._model.position.getValue(i.JulianDate.now()),s=new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(-this._position.pitch),i.Math.toRadians(this._position.roll));this._model.orientation=i.Transforms.headingPitchRollQuaternion(r,s)}else this._model instanceof Promise&&this._model.then(r=>{r instanceof i.Model?i.Matrix4.multiply(r.modelMatrix,i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(t)),r.modelMatrix):r instanceof i.Cesium3DTileset&&i.Matrix4.multiply(r.root.transform,i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(t)),r.root.transform)})}_resetTranslation(e){i.Matrix4.setTranslation(this._modelMatrix,e,this._modelMatrix),this._model instanceof i.Entity?this._model.position=e:this._model instanceof Promise&&this._model.then(t=>{t instanceof i.Model?i.Matrix4.setTranslation(t.modelMatrix,e,t.modelMatrix):t instanceof i.Cesium3DTileset&&i.Matrix4.setTranslation(t.root.transform,e,t.root.transform)}),this._activeEditor.modelMatrix=this._modelMatrix,this._setLngLatAlt(this._modelMatrix)}_complete(){this._callback&&this._callback(this._position)}activate(e,t){if(!this._model)throw new Error("PositionEditor: no overlay");return this._translationEditor.active=!1,this._rotationEditor.active=!1,this._activeEditor=e===di.TRANSLATION?this._translationEditor:this._rotationEditor,this._setModelMatrix(),this._handler||this._bindEvent(),this._callback=t,this}deactivate(){return this._unbindEvent(),this._handler&&this._handler.destroy(),this._handler=void 0,this._translationEditor.active=!1,this._rotationEditor.active=!1,this._activeEditor=void 0,this._modelMatrix=void 0,this}},ld=Ko;var hd=`uniform float mixNum;\r
1678
+ `;var un=class{constructor(e){this._id=C.uuid(),this._viewer=e,this._delegate=void 0,this._enable=!1,this._speed=10,this._state=f.INITIALIZED}get type(){return"snow"}get enable(){return this._enable}set enable(e){this._enable=e,e&&this._viewer&&!this._delegate&&this._createPostProcessStage(),this._delegate&&(this._delegate.enabled=e)}get speed(){return this._speed}set speed(e){this._speed=e,this._delegate&&(this._delegate.uniforms.speed=e)}_createPostProcessStage(){this._delegate=new i.PostProcessStage({name:this._id,fragmentShader:Om,uniforms:{speed:this._speed}}),this._viewer.scene.postProcessStages.add(this._delegate)}},Nm=un;var zm="data:image/jpeg;base64,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";var fn=class{constructor(e){this._id=C.uuid(),this._viewer=e,this._delegate=void 0,this._rotateAmount=0,this._enable=!1,this._heading=0,this._state=f.INITIALIZED}get type(){return"cloud"}get enable(){return this._enable}set enable(e){!this._viewer.scene.mode!==i.SceneMode.SCENE3D&&(this._delegate||this._createPrimitive(),this._enable=this._delegate.show=e,this._enable?this._viewer.scene.postUpdate.addEventListener(this._onRotate,this):this._viewer.scene.postUpdate.removeEventListener(this._onRotate,this))}get rotateAmount(){return this._rotateAmount}set rotateAmount(e){this._rotateAmount=e}_onRotate(e,t){this._rotateAmount!==0&&(this._heading+=this._rotateAmount,(this._heading>=360||this._heading<=-360)&&(this._heading=0),this._delegate.modelMatrix=i.Transforms.headingPitchRollToFixedFrame(new i.Cartesian3,new i.HeadingPitchRoll(i.Math.toRadians(this._heading),0,0)))}_createPrimitive(){this._delegate=new i.Primitive({appearance:new i.EllipsoidSurfaceAppearance({material:new i.Material({fabric:{type:"Image",uniforms:{color:new i.Color(1,1,1,1),image:zm},components:{alpha:"texture(image, fract(repeat * materialInput.st)).r * color.a",diffuse:"vec3(1.0)"}}}),translucent:!0,aboveGround:!0})}),this._delegate.geometryInstances=new i.GeometryInstance({geometry:new i.EllipsoidGeometry({vertexFormat:i.VertexFormat.POSITION_AND_ST,radii:this._viewer.scene.globe.ellipsoid.radii}),id:this._id}),this._delegate.show=this._enable,this._viewer.scene.primitives.add(this._delegate)}},Fm=fn;var _n=class{constructor(e){if(!e)throw Error("missing viewer param");this._fog=new Lm(e),this._rain=new km(e),this._snow=new Nm(e),this._cloud=new Fm(e)}get fog(){return this._fog}get rain(){return this._rain}get snow(){return this._snow}get cloud(){return this._cloud}},G0=_n;var gn=class{constructor(e){this._viewer=e,this._enable=!1,this._moveRate=100,this._rotateRate=.01,this._flags={moveForward:!1,moveBackward:!1,moveUp:!1,moveDown:!1,moveLeft:!1,moveRight:!1,turnLeft:!1,turnRight:!1}}get enable(){return this._enable}set enable(e){this._enable!==e&&this._viewer.scene.mode===i.SceneMode.SCENE3D&&(this._enable=e,this._enable?this._bindEvent():this._unbindEvent())}get moveRate(){return this._moveRate}set moveRate(e){this._moveRate=e}get rotateRate(){return this._rotateRate}set rotateRate(e){this._rotateRate=e}_bindEvent(){let e=this._viewer.scene.canvas;e.setAttribute("tabindex","0"),e.addEventListener("click",this._onClick.bind(this),!1),this._viewer.clock.onTick.addEventListener(this._onTick,this),document.addEventListener("keydown",this._onKeydown.bind(this),!1),document.addEventListener("keyup",this._onKeyup.bind(this),!1)}_unbindEvent(){Object.keys(this._flags).forEach(t=>{this._flags[t]=!1});let e=this._viewer.scene.canvas;e.removeAttribute("tabindex"),e.removeEventListener("click",this._onClick,!1),this._viewer.clock.onTick.removeEventListener(this._onTick,this),document.removeEventListener("keydown",this._onKeydown,!1),document.removeEventListener("keyup",this._onKeyup,!1)}_getFlagForKeyCode(e){let t;switch(e.keyCode){case 87:case 38:e.shiftKey?t="moveUp":t="moveForward";break;case 83:case 40:e.shiftKey?t="moveDown":t="moveBackward";break;case 65:case 37:t="moveLeft";break;case 68:case 39:t="moveRight";break;case 81:t="turnLeft";break;case 69:t="turnRight";break;default:break}return t}_onClick(){this._viewer.scene.canvas.focus()}_onKeydown(e){let t=this._getFlagForKeyCode(e);t&&(this._flags[t]=!0)}_onKeyup(e){Object.keys(this._flags).forEach(t=>{this._flags[t]=!1})}_onTick(){let e=this._viewer.scene.camera,r=this._viewer.scene.globe.ellipsoid.cartesianToCartographic(e.position).height/this._moveRate,s=i.Cartesian3.clone(e.position,new i.Cartesian3);this._flags.moveForward&&e.moveForward(r),this._flags.moveBackward&&e.moveBackward(r),this._flags.moveUp&&e.moveUp(r),this._flags.moveDown&&e.moveDown(r),this._flags.moveLeft&&e.moveLeft(r),this._flags.moveRight&&e.moveRight(r),this._flags.turnLeft&&e.rotate(s,-this._rotateRate),this._flags.turnRight&&e.rotate(s,this._rotateRate)}},Gm=gn;var yn=class{constructor(e){this._viewer=e,this._viewOption={},this._cache={},this._activedPath=void 0}_onPostRender(){if(!this._activedPath)return!1;this._activedPath.pathEvent&&this._activedPath.pathEvent.fire(me.POST_RENDER,{viewer:this._viewer,viewOption:this._viewOption})}addPath(e){return e&&!this._cache.hasOwnProperty(e.pathId)&&(e.pathEvent.fire(me.ADD),this._cache[e.pathId]=e),this}addPaths(e){return Array.isArray(e)&&e.forEach(t=>{this.addPath(t)}),this}removePath(e){return e&&this._cache.hasOwnProperty(e.pathId)&&(delete this._cache[e.pathId],e.pathEvent.fire(me.REMOVE)),this}getPath(e){let t=this.getPaths().filter(r=>r.id===e);return t&&t.length?t[0]:void 0}getPaths(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}activate(e,t={}){var r;return!e||(e==null?void 0:e.pathId)===((r=this._activedPath)==null?void 0:r.pathId)||!this._cache.hasOwnProperty(e==null?void 0:e.pathId)?this:(this._viewOption=t,this._activedPath&&this.deactivate(),this._activedPath=e,this._activedPath.pathEvent&&this._activedPath.pathEvent.fire(me.RESET_TIME_LINE),this._viewer.on(N.POST_RENDER,this._onPostRender,this),this)}deactivate(){return this._activedPath&&(this._activedPath.actived=!1),this._activedPath=void 0,this._viewer.off(N.POST_RENDER,this._onPostRender,this),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this}clear(){return this._cache={},this._activedPath&&(this._activedPath.actived=!1),this._activedPath=void 0,this._viewer.off(N.POST_RENDER,this._onPostRender,this),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this}},Hm=yn;var vn=class{constructor(e,t,r){this._id=C.uuid(),this._bid=void 0,this._positions=y.parsePositions(e),this._duration=t||20,this._pathMode=r||"speed",this._timeLine=[],this._sampledPosition=void 0,this._actived=!1,this._endTime=i.JulianDate.now(),this._pathEvent=new Pr,this._pathEvent.on(me.ADD,this._onAdd,this),this._pathEvent.on(me.REMOVE,this._onRemove,this),this._pathEvent.on(me.POST_RENDER,this._onPostRender,this),this._pathEvent.on(me.RESET_TIME_LINE,this._resetTimeLine,this),this._state=f.INITIALIZED}get pathId(){return this._id}get id(){return this._bid}set id(e){this._bid=e}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e)}get duration(){return this._duration}set duration(e){this._duration=e}get pathMode(){return this._pathMode}set pathMode(e){this._pathMode=e}get pathEvent(){return this._pathEvent}get actived(){return this._actived}set actived(e){this._actived=e}get state(){return this._state}_onAdd(){this._state=f.ADDED}_onRemove(){this._state=f.REMOVED}_onPostRender({viewer:e,viewOption:t}){if(!this.actived)return!1;let r=i.JulianDate.now();if(i.JulianDate.lessThan(r,this._endTime)&&this._sampledPosition){let s=this._sampledPosition.getValue(r),a=this._sampledPosition.getValue(i.JulianDate.addSeconds(r,.001,new i.JulianDate));s&&a&&e.camera.lookAt(s,new i.HeadingPitchRange(Re(s,a),i.Math.toRadians((t==null?void 0:t.pitch)||-20),(t==null?void 0:t.range)||2e3))}else e.camera.lookAtTransform(i.Matrix4.IDENTITY),this._actived=!1}_resetTimeLine(){if(!this._positions||!this._positions.length)return!1;let e=i.JulianDate.now(),t=0,r=[];if(this._pathMode==="speed"){let s=he(this._positions)/this._duration;r=this._positions.map((a,o,l)=>(o!==0&&(t+=he([l[o-1],a])/s),i.JulianDate.addSeconds(e,t,new i.JulianDate)))}else{let s=this._positions.length,a=(this._duration-this._duration%s)/s;r=this._positions.map((o,l)=>i.JulianDate.addSeconds(e,l*a,new i.JulianDate))}this._sampledPosition=new i.SampledPositionProperty,this._sampledPosition.addSamples(r,g.transformWGS84ArrayToCartesianArray(this._positions)),this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._sampledPosition.setInterpolationOptions({interpolationDegree:2,interpolationAlgorithm:i.HermitePolynomialApproximation}),this._endTime=r[r.length-1],this._actived=!0}},Wm=vn;var H0={FP:"1",TP:"2",TRACKED:"tracked",FREE:"free"},He=H0;var wn=class{constructor(e){this._viewer=e,this._cache={},this._delegete=new i.CustomDataSource("history-track-layer"),this._viewer.dataSources.add(this._delegete),this._activedTrack=void 0,this._viewOption={},this._stopTime=void 0,this._state=f.INITIALIZED}get delegate(){return this._delegete.entities}get state(){return this._state}_onPostRender(){Object.keys(this._cache).forEach(e=>{let t=this._cache[e];t.trackEvent&&t.trackEvent.fire(pe.POST_RENDER,{viewer:this._viewer,viewOption:this._viewOption})}),this._viewer.scene.requestRender()}addTrack(e){return e&&e.trackEvent&&!this._cache.hasOwnProperty(e.trackId)&&(e.trackEvent.fire(pe.ADD,this),this._cache[e.trackId]=e),this}addTracks(e){return Array.isArray(e)&&e.forEach(t=>{this.addTrack(t)}),this}getTrack(e){let t=this.getTracks().filter(r=>r.id===e);return t&&t.length?t[0]:void 0}removeTrack(e){return e&&e.trackEvent&&this._cache.hasOwnProperty(e.trackId)&&(e.trackEvent.fire(pe.REMOVE,this),delete this._cache[e.trackId]),this}getTracks(){let e=[];return Object.keys(this._cache).forEach(t=>{e.push(this._cache[t])}),e}play(){let e=i.JulianDate.now();return Object.keys(this._cache).forEach(t=>{let r=this._cache[t];r.startTime=e,r.viewed=!1}),this._activedTrack=void 0,this._stopTime=void 0,this._viewer.off(N.POST_RENDER,this._onPostRender,this),this._viewer.on(N.POST_RENDER,this._onPostRender,this),this._state=f.PLAY,this}pause(){return this._stopTime=i.JulianDate.now(),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0,this._viewer.off(N.POST_RENDER,this._onPostRender,this),this._state=f.PAUSE,this}restore(){if(this._state!==f.PAUSE)return this;if(this._stopTime){let e=i.JulianDate.now();Object.keys(this._cache).forEach(t=>{this._cache[t].trackEvent.fire(pe.RESET_TIME_LINE,{stopTime:this._stopTime,duration:i.JulianDate.secondsDifference(e,this._stopTime)})})}return this._viewer.off(N.POST_RENDER,this._onPostRender,this),this._viewer.on(N.POST_RENDER,this._onPostRender,this),this._state=f.PLAY,this}viewTrack(e,t={}){if(!this._cache.hasOwnProperty(e.trackId))throw new Error("TrackController: track does not added ");return this._viewOption=t,this._activedTrack&&(this._activedTrack.viewed=!1),e.viewed=!0,this._activedTrack=e,t.mode===He.FREE&&(this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0),this}releaseTrack(e){if(!this._cache.hasOwnProperty(e.trackId))throw new Error("TrackController: track does not added ");return e.viewed&&(e.viewed=!1),this._activedTrack=void 0,this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0,this}clear(){return Object.keys(this._cache).forEach(e=>{this.removeTrack(this._cache[e])}),this._activedTrack&&(this._activedTrack.viewed=!1),this._activedTrack=void 0,this._viewer.off(N.POST_RENDER,this._onPostRender,this),this._viewer.camera.lookAtTransform(i.Matrix4.IDENTITY),this._viewer.delegate.trackedEntity=void 0,this}},Bm=wn;var W0={clampToGround:!1,clampToTileset:!1,interpolationType:"Linear",interpolationDegree:2,endDelayTime:.5,headingOffset:0},B0={width:2,material:i.Color.ORANGE,clampToGround:!0,depthFailMaterial:i.Color.ORANGE.withAlpha(.8)},xn=class{constructor(e,t,r,s){this._id=C.uuid(),this._bid=void 0,this._positions=y.parsePositions(e),this._duration=t||20,this._callback=r,this._options={...W0,...s},this._controller=void 0,this._sampledPosition=void 0,this._velocityOrientation=void 0,this._viewed=!1,this._delegate=new i.Entity,this._pathPositions=[],this._path=new i.Entity({show:!1,polyline:{positions:new i.CallbackProperty(()=>this._pathPositions,!1)}}),this._positionIndex=0,this._timeLine=[],this._startTime=void 0,this._endTime=void 0,this._trackEvent=new Tr,this._trackEvent.on(pe.POST_RENDER,this._onPostRender,this),this._trackEvent.on(pe.ADD,this._onAdd,this),this._trackEvent.on(pe.REMOVE,this._onRemove,this),this._trackEvent.on(pe.RESET_TIME_LINE,this._resetTimeLine,this),this._state=f.INITIALIZED}get currentDistance(){return he(y.parsePositions(this._pathPositions))}get currentPosition(){let[e]=this._pathPositions.slice(-1);return y.parsePosition(e)}get allDistance(){return he(this._positions)}get trackId(){return this._id}get id(){return this._bid}set id(e){this._bid=e}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._resetTimeLine({})}get duration(){return this._duration}set duration(e){this._duration=e,this._resetTimeLine({})}get startTime(){return this._startTime}set startTime(e){e instanceof Date?this._startTime=i.JulianDate.fromDate(e):this._startTime=e,this._resetTimeLine({})}get viewed(){return this._viewed}set viewed(e){this._viewed=e}get trackEvent(){return this._trackEvent}get state(){return this._state}_onAdd(e){if(!e)return!1;this._controller=e,this._controller.delegate.add(this._delegate),this._controller.delegate.add(this._path),!this._startTime&&(this._startTime=i.JulianDate.now()),this._state=f.ADDED}_onRemove(){if(!this._controller)return!1;this._controller.delegate.remove(this._delegate),this._controller.delegate.remove(this._path),this._viewed=!1,this._startTime=void 0,this._state=f.REMOVED}_onPostRender({viewer:e,viewOption:t}){if(!this._startTime||!this._endTime)return!1;let r=i.JulianDate.now();if(i.JulianDate.lessThanOrEquals(r,this._endTime)){let s=this._sampledPosition.getValue(r);if(!s)return!1;this._pathPositions.push(s),this._options.clampToTileset?this._delegate.position=e.scene.clampToHeight(s,[this._delegate]):this._delegate.position=s;let a=this._velocityOrientation.getValue(r);if(a){let l=i.Quaternion.fromHeadingPitchRoll(new i.HeadingPitchRoll(i.Math.toRadians(this._options.headingOffset||0),0,0),new i.Quaternion);this._delegate.orientation=i.Quaternion.multiply(a,l,new i.Quaternion)}let o=this._timeLine[this._positionIndex];if(o){let l=i.JulianDate.secondsDifference(r,o);if(l>=0&&l<=1){let h=this._positions[this._positionIndex]||void 0;if(h&&a){let c=i.Matrix3.fromQuaternion(a),d=i.Matrix4.fromRotationTranslation(c,s),u=i.Transforms.fixedFrameToHeadingPitchRoll(d);h.heading=i.Math.toDegrees(u.heading),h.pitch=i.Math.toDegrees(u.pitch),h.roll=i.Math.toDegrees(u.roll)}this._callback&&this._callback(h,this._positionIndex+1===this._positions.length),this._positionIndex++,this._options.loop&&this._positionIndex===this._positions.length&&this._restart()}}}this._setCameraView(e,t)}_restart(){this._startTime=i.JulianDate.now(),this._resetTimeLine({})}_setCameraView(e,t){var s,a,o;if(!this._viewed)return!1;let r=i.JulianDate.now();if(i.JulianDate.greaterThan(r,this._endTime))e.camera.lookAtTransform(i.Matrix4.IDENTITY),e.delegate.trackedEntity&&(e.delegate.trackedEntity=void 0),this._viewed=!1;else{let l=this._sampledPosition.getValue(r),h=this._sampledPosition.getValue(i.JulianDate.addSeconds(r,1/60,new i.JulianDate));l&&h&&((t==null?void 0:t.mode)===He.TRACKED&&((a=(s=e.delegate)==null?void 0:s.trackedEntity)==null?void 0:a.id)!==((o=this._delegate)==null?void 0:o.id)?e.delegate.trackedEntity=this._delegate:(t==null?void 0:t.mode)===He.FP?e.camera.lookAt(l,new i.HeadingPitchRange(Re(l,h),i.Math.toRadians((t==null?void 0:t.pitch)||0),(t==null?void 0:t.range)||10)):(t==null?void 0:t.mode)===He.TP&&e.camera.lookAt(l,new i.HeadingPitchRange(0,i.Math.toRadians((t==null?void 0:t.pitch)||-90),(t==null?void 0:t.range)||1e3)))}}_resetTimeLine(e){var r;if(!this._startTime||!this._duration||!((r=this._positions)!=null&&r.length))return!1;let t=0;if(!(e!=null&&e.stopTime)&&!(e!=null&&e.duration)){let s=he(this._positions)/this._duration;this._timeLine=this._positions.map((a,o,l)=>(o!==0&&(t+=he([l[o-1],a])/s),i.JulianDate.addSeconds(this._startTime,t,new i.JulianDate))),this._pathPositions=[],this._positionIndex=0}else e!=null&&e.stopTime&&(e!=null&&e.duration)&&(this._duration+=e.duration,this._timeLine=this._timeLine.map(s=>i.JulianDate.addSeconds(s,e.duration,new i.JulianDate)));this._sampledPosition=new i.SampledPositionProperty,this._sampledPosition.addSamples(this._timeLine,g.transformWGS84ArrayToCartesianArray(this._positions)),this._sampledPosition.forwardExtrapolationType=i.ExtrapolationType.HOLD,this._options.interpolationType==="Hermite"?this._sampledPosition.setInterpolationOptions({interpolationDegree:this._options.interpolationDegree||2,interpolationAlgorithm:i.HermitePolynomialApproximation}):this._options.interpolationType==="Linear"?this._sampledPosition.setInterpolationOptions({interpolationDegree:this._options.interpolationDegree||1,interpolationAlgorithm:i.LinearApproximation}):this._options.interpolationType==="Lagrange"&&this._sampledPosition.setInterpolationOptions({interpolationDegree:this._options.interpolationDegree||5,interpolationAlgorithm:i.LagrangePolynomialApproximation}),this._velocityOrientation=new i.VelocityOrientationProperty(this._sampledPosition),this._endTime=i.JulianDate.addSeconds(this._timeLine[this._timeLine.length-1],this._options.endDelayTime,new i.JulianDate)}addPosition(e,t){return this._positions.push(y.parsePosition(e)),this._duration+=t,this._resetTimeLine({}),this}setModel(e,t){return this._delegate.model={...t,uri:e,heightReference:this._options.clampToGround?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},this}setBillboard(e,t){return this._delegate.billboard={...t,image:e,heightReference:this._options.clampToGround?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},this}setLabel(e,t){return this._delegate.label={...t,text:e,heightReference:this._options.clampToGround?i.HeightReference.CLAMP_TO_GROUND:i.HeightReference.NONE},this}setPath(e,t={}){return this._path.show=!!e,C.merge(this._path.polyline,B0,t),this}},Um=xn;var U0={ANGLE:"angle",AREA:"area",AREA_HEIGHT:"area_height",AREA_SURFACE:"area_surface",DISTANCE:"distance",DISTANCE_SURFACE:"distance_surface",HEADING:"heading",HEIGHT:"height",TRIANGLE_HEIGHT:"triangle_height"},_e=U0;var Cn=class{constructor(e){this._style=e,this._viewer=void 0,this._layer=void 0,this._delegate=void 0,this._options={},this._positions=[]}get drawTool(){return this._viewer.drawTool}_mountedHook(){}_onDrawAnchor(e){}_onAnchorMoving(e){this._positions.pop(),this._positions.push(e),this._options.onCalc&&this._options.onCalc(this._positions),this._positions.length<=1?this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236":this.drawTool.tooltipMess="\u5355\u51FB\u589E\u52A0\u70B9\uFF0C\u53F3\u51FB\u5220\u9664\u70B9\uFF0C\u53CC\u51FB\u5B8C\u6210\u7ED8\u5236"}_onDeleteAnchor(){this._positions.length>1&&(this._positions.splice(this._positions.length-2,1),this._options.onCalc&&this._options.onCalc(this._positions)),this._positions.length<=1&&(this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236")}_onDrawStop(){this._unbindEvent(),this._viewer.drawTool.deactivate(),this._removeSamePoint(this._positions),this._options.onDrawStop&&this._options.onDrawStop(this._delegate)}_removeSamePoint(e=[]){if(e.length<2)return e;for(let t=0;t<e.length-1;t++){let r=e[t],s=e[t+1];typeof r.equals=="function"&&r.equals(s)&&(console.log("element",r),console.log("element",s),e.splice(t,1),t--)}return e}_bindEvent(){this.drawTool.on(P.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.on(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.on(P.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.on(P.DRAW_STOP,this._onDrawStop,this)}_unbindEvent(){this.drawTool.off(P.DRAW_ANCHOR,this._onDrawAnchor,this),this.drawTool.off(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.drawTool.off(P.DELETE_ANCHOR,this._onDeleteAnchor,this),this.drawTool.off(P.DRAW_STOP,this._onDrawStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.drawTool.activate(t),this.drawTool.tooltipMess="\u5355\u51FB\u5F00\u59CB\u7ED8\u5236",this._mountedHook(),this._unbindEvent(),this._bindEvent(),this}},ki=Cn;var Tn=class extends ki{constructor(e){super(e)}_mountedHook(){this._delegate=new i.Entity({polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions,!1)}}),this._layer.entities.add(this._delegate)}_onDrawAnchor(e){let t=this._positions.length;this._positions.push(e),t>0&&this.drawTool.fire(P.CREATE_ANCHOR,{position:e}),t>=this._options.maxAnchorSize&&(this._positions.pop(),this.drawTool.fire(P.DRAW_STOP,e))}},ge=Tn;var En=class{constructor(e){this._viewer=void 0,this._layer=void 0,this._overlay=e,this._delegate=new i.Entity,this._delegate.merge(e),this._options={},this._positions=[]}get editTool(){return this._viewer.editTool}_mountedHook(){}_mountAnchor(){}_onAnchorMoving({pickedAnchor:e,position:t}){}_onEditAnchorStop({pickedAnchor:e,position:t}){}_onEditStop({pickedAnchor:e,position:t}){this._unbindEvent(),this._viewer.editTool.deactivate()}_bindEvent(){return this.editTool.on(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.on(P.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.on(P.EDIT_STOP,this._onEditStop,this),this}_unbindEvent(){this.editTool.off(P.ANCHOR_MOVING,this._onAnchorMoving,this),this.editTool.off(P.EDIT_ANCHOR_STOP,this._onEditAnchorStop,this),this.editTool.off(P.EDIT_STOP,this._onEditStop,this)}start(e,t){return this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._viewer.editTool.deactivate(),this._viewer.editTool.activate(t),this._mountedHook(),this._mountAnchor(),this._unbindEvent(),this._bindEvent(),this}},Oi=En;var Pn=class extends Oi{constructor(e){super(e)}_mountedHook(){this.editTool.tooltipMess="\u70B9\u51FB\u951A\u70B9\u79FB\u52A8,\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._delegate.polyline.positions=new i.CallbackProperty(()=>this._positions.length>1?this._positions:null,!1),this._layer.entities.add(this._delegate)}_mountAnchor(){let e=[].concat(this._overlay.polyline.positions.getValue(i.JulianDate.now()));if(this._options.maxAnchorSize>2){for(let t=0;t<e.length-1;t++){let r=Z(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.push(e[e.length-1]),this._positions.forEach((t,r)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})})}else this._positions=e,this._positions.forEach((t,r)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:t,index:r})});this._layer.entities.remove(this._overlay)}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a=Z(this._positions[s],this._positions[s-1]),o=Z(this._positions[s],this._positions[s+1]);this._positions.splice(s,1,a,t,o),this.editTool.fire(P.CLEAR_ANCHOR),this._positions.forEach((l,h)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:l,index:h,isMid:h%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(this._positions[s]=t,!r.isMid&&this._options.maxAnchorSize>2){let a=-1,o=-1,l=-1,h=-1,c=this._positions.length;if(s===0?(l=s+2,h=s+1):r.index===c-1?(a=s-2,o=s-1):(a=s-2,o=s-1,l=s+2,h=s+1),a>0){let d=Z(this._positions[a],this._positions[s]);this._positions[o]=d,this.editTool.fire(P.UPDATE_ANCHOR,{index:o,position:d})}if(l>0){let d=Z(this._positions[l],this._positions[s]);this._positions[h]=d,this.editTool.fire(P.UPDATE_ANCHOR,{index:h,position:d})}}this._options.onCalc&&this._options.onCalc(this._positions)}},ye=Pn;var Mn=class{constructor(){this._viewer=void 0,this._layer=void 0,this._startLabel=new i.Entity({label:{text:"\u5F00\u59CB",font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._resultLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._options={}}_getSampledHeight(e,t=!1){let r=this._viewer.terrainProvider&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)?i.sampleTerrainMostDetailed(this._viewer.terrainProvider,e.map(a=>i.Cartographic.fromCartesian(a))):Promise.resolve(e.map(a=>i.Cartographic.fromCartesian(a))),s=this._viewer.scene.clampToHeightSupported&&t?this._viewer.scene.clampToHeightMostDetailed(e,this._layer.entities.values):Promise.resolve(e);return Promise.all([r,s])}_onDrawStop(e){}_onCalc(e){}_startHook(e,t){this._viewer=e.viewer,this._layer=e.layer,this._options=t,this._options.onDrawStop=this._onDrawStop.bind(this),this._options.onCalc=this._onCalc.bind(this),this._layer.entities.add(this._startLabel),this._layer.entities.add(this._resultLabel)}start(e,t){return this}},te=Mn;var bn=class extends te{constructor(){super(),this._maxAnchorSize=2,this._helpLinePositions=[],this._helpLine=new i.Entity({polyline:{positions:new i.CallbackProperty(()=>this._helpLinePositions.length>1?this._helpLinePositions:null,!1)}})}_onDrawStop(e){new ye(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){this._resultLabel.position=e[1];let t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e[0],new i.Cartesian3),r=i.Plane.fromPointNormal(e[0],t);this._helpLinePositions=[e[0],i.Plane.projectPointOntoPlane(r,e[1],new i.Cartesian3),e[1]];let s=Math.abs(i.Plane.getPointDistance(r,e[1]));this._resultLabel.label.text=`\u89D2\u5EA6\uFF1A${i.Math.toDegrees(Math.asin(s/i.Cartesian3.distance(e[0],e[1]))).toFixed(2)} \u5EA6`}}start(e,t){this._startHook(e,t);let r=new i.PolylineDashMaterialProperty({color:i.Color.GREENYELLOW});return this._helpLine.polyline.material=r,this._helpLine.polyline.depthFailMaterial=r,this._layer.entities.add(this._helpLine),new ge({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!1}).start(e,{...t,maxAnchorSize:this._maxAnchorSize}),this}},Vm=bn;var An=class extends ki{constructor(e){super(e)}_mountedHook(){this._delegate=new i.Entity({polygon:{...this._style,hierarchy:new i.CallbackProperty(()=>this._positions.length>2?new i.PolygonHierarchy(this._positions.map(e=>e.clone())):null,!1)},polyline:{...this._style,positions:new i.CallbackProperty(()=>this._positions.length<=3?this._positions:null,!1)}}),this._layer.entities.add(this._delegate)}_onDrawAnchor(e){this._positions.push(e),this.drawTool.fire(P.CREATE_ANCHOR,{position:e})}},nt=An;var Sn=class extends Oi{constructor(e){super(e)}_mountedHook(){this.editTool.tooltipMess="\u70B9\u51FB\u951A\u70B9\u79FB\u52A8,\u53F3\u51FB\u7ED3\u675F\u7F16\u8F91",this._delegate.polygon.hierarchy=new i.CallbackProperty(e=>this._positions.length>2?new i.PolygonHierarchy(this._positions):null,!1),this._layer.entities.add(this._delegate)}_mountAnchor(){let e=[].concat(this._overlay.polygon.hierarchy.getValue(i.JulianDate.now()).positions);e.push(e[0]);for(let t=0;t<e.length-1;t++){let r=Z(e[t],e[t+1]);this._positions.push(e[t]),this._positions.push(r)}this._positions.forEach((t,r)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:t,index:r,isMid:r%2!==0})}),this._layer.entities.remove(this._overlay)}_onEditAnchorStop({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;if(r.isMid){let a,o,l=this._positions.length;s===l-1?(a=Z(this._positions[s],this._positions[s-1]),o=Z(this._positions[s],this._positions[0])):(a=Z(this._positions[s],this._positions[s-1]),o=Z(this._positions[s],this._positions[s+1])),this._positions.splice(s,1,a,t,o),this.editTool.fire(P.CLEAR_ANCHOR),this._positions.forEach((h,c)=>{this.editTool.fire(P.CREATE_ANCHOR,{position:h,index:c,isMid:c%2!==0})})}}_onAnchorMoving({pickedAnchor:e,position:t}){let r=e.properties.getValue(i.JulianDate.now()),s=r.index;this._positions[s]=t;let a=this._positions.length;if(!r.isMid){let o=-1,l=-1,h=-1,c=-1;s===0?(o=a-2,l=a-1,h=s+2,c=s+1):s===a-2?(o=s-2,l=s-1,h=0,c=a-1):(o=s-2,l=s-1,h=s+2,c=s+1);let d=Z(this._positions[o],this._positions[s]),u=Z(this._positions[h],this._positions[s]);this._positions[l]=d,this._positions[c]=u,this.editTool.fire(P.UPDATE_ANCHOR,{index:l,position:d}),this.editTool.fire(P.UPDATE_ANCHOR,{index:c,position:u})}this._options.onCalc&&this._options.onCalc(this._positions)}},lt=Sn;var In=class extends te{constructor(){super()}_onDrawStop(e){new lt(e).start({viewer:this._viewer,layer:this._layer},this._options)}_onCalc(e){var t;e.length>2?(this._resultLabel.position=(t=i.BoundingSphere.fromPoints(e))==null?void 0:t.center,this._resultLabel.label.text=`\u9762\u79EF\uFF1A${De(e).toFixed(2)} \u5E73\u65B9\u7C73`):this._resultLabel.label.text=null}start(e,t){return this._startHook(e,t),new nt({material:t.material||i.Color.YELLOW.withAlpha(.6),perPositionHeight:!0,width:2}).start(e,this._options),this}},Zm=In;var Dn=class extends te{constructor(){super()}_onDrawStop(e){new lt(e).start({viewer:this._viewer,layer:this._layer},this._options)}_lerp(e,t=4){let r=[];for(let s=0;s<t;++s)for(let a=0;a<t;++a){let o=i.Math.lerp(e.west,e.east,a/(t-1)),l=i.Math.lerp(e.south,e.north,s/(t-1));r.push(i.Cartesian3.fromRadians(o,l))}return r}_onCalc(e){if(e.length>2){let t=this._lerp(i.Rectangle.fromCartesianArray(e),this._options.lerpNum);this._getSampledHeight(t,!0).then(([r,s])=>r.map((a,o)=>({lng:a.longitude,lat:a.latitude,alt:Math.max(a.height||0,s[o]?i.Cartographic.fromCartesian(s[o]).height:0)}))).then(r=>{let s=0,a;r.forEach(o=>{o.alt>s&&(s=o.alt,a=o)}),a&&(this._resultLabel.position=i.Cartesian3.fromRadians(a.lng,a.lat,a.alt),this._resultLabel.label.text=`\u9AD8\u5EA6\uFF1A${s.toFixed(2)} \u7C73`)})}}start(e,t){return this._startHook(e,t),new nt({material:t.material||i.Color.YELLOW.withAlpha(.6),width:2}).start(e,this._options),this}},jm=Dn;var Ln=class extends te{constructor(){super()}_lerp(e,t=4){let r=[];for(let s=0;s<t;++s)for(let a=0;a<t;++a){let o=i.Math.lerp(e.west,e.east,a/(t-1)),l=i.Math.lerp(e.south,e.north,s/(t-1));r.push(i.Cartesian3.fromRadians(o,l))}return r}_onDrawStop(e){new lt(e).start({viewer:this._viewer,layer:this._layer},this._options)}_onCalc(e){var t;if(e.length>2){this._resultLabel.position=(t=i.BoundingSphere.fromPoints(e))==null?void 0:t.center;let r=this._lerp(i.Rectangle.fromCartesianArray(e),this._options.lerpNum);this._getSampledHeight(r.concat(e),!1).then(([s])=>s.map(a=>i.Cartesian3.fromDegrees(i.Math.toDegrees(a.longitude),i.Math.toDegrees(a.latitude),a.height))).then(s=>{this._resultLabel.label.text=`\u9762\u79EF\uFF1A${De(s).toFixed(2)} \u5E73\u65B9\u7C73`})}}start(e,t){return this._startHook(e,t),new nt({material:t.material||i.Color.YELLOW.withAlpha(.6),width:2}).start(e,this._options),this}},Ym=Ln;var Rn=class extends te{constructor(){super(),this._maxAnchorSize=9999,this._positions=[]}_onDrawStop(e){for(let t=0;t<this._positions.length-2;t++)this._layer.entities.add(this.createLabel(this._positions[t],this._positions[t+1]));new ye(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){this._resultLabel.position=e[e.length-1];let t=0;for(let r=0;r<e.length-1;r++){let s=i.Cartesian3.distance(e[r],e[r+1]);t+=s}this._resultLabel.label.text=t>1e3?`\u603B\u8DDD\u79BB\uFF1A${(t/1e3).toFixed(2)} \u516C\u91CC`:`\u603B\u8DDD\u79BB\uFF1A${t.toFixed(2)} \u7C73`}else this._resultLabel.label.text=null;this._positions=e}createLabel(e,t){let r=i.Cartesian3.distance(e,t),s=i.Cartesian3.lerp(e,t,.5,new i.Cartesian3),a=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}});return a.label.text=r>1e3?`\u8DDD\u79BB\uFF1A${(r/1e3).toFixed(2)} \u516C\u91CC`:`\u8DDD\u79BB\uFF1A${r.toFixed(2)} \u7C73`,a.position=s,a}start(e,t){return this._startHook(e,t),new ge({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!1}).start(e,{...t,maxAnchorSize:this._maxAnchorSize}),this}},qm=Rn;var kn=class extends te{constructor(){super(),this._maxAnchorSize=9999,this._positions=[]}_lerp(e,t,r=5){let s=[],a=i.Cartographic.fromCartesian(e),o=i.Cartographic.fromCartesian(t);for(let l=0;l<r;l++){let h=i.Math.lerp(a.longitude,o.longitude,l/r),c=i.Math.lerp(a.latitude,o.latitude,l/r),d=a.height-(a.height-o.height)*(l/r);s.push(i.Cartesian3.fromRadians(h,c,d))}return s}_onDrawStop(e){for(let t=0;t<this._positions.length-2;t++)this._layer.entities.add(this.createLabel(this._positions[t],this._positions[t+1]));new ye(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){let t=[e[0]];this._resultLabel.position=e[e.length-1];for(let r=0;r<e.length-1;r++)t=t.concat(this._lerp(e[r],e[r+1],this._options.lerpNum));t.push(e[e.length-1]),this._getSampledHeight(t).then(([r,s])=>r.map((a,o)=>i.Cartesian3.fromDegrees(i.Math.toDegrees(a.longitude),i.Math.toDegrees(a.latitude),Math.max(a.height||0,s[o]?i.Cartographic.fromCartesian(s[o]).height:0)))).then(r=>{let s=0;for(let a=0;a<r.length-1;a++){let o=i.Cartesian3.distance(r[a],r[a+1]);s+=o}this._resultLabel.label.text=s>1e3?`\u603B\u8DDD\u79BB\uFF1A${(s/1e3).toFixed(2)} \u516C\u91CC`:`\u603B\u8DDD\u79BB\uFF1A${s.toFixed(2)} \u7C73`})}else this._resultLabel.label.text=null;this._positions=e}createLabel(e,t){let r=i.Cartesian3.distance(e,t),s=i.Cartesian3.lerp(e,t,.5,new i.Cartesian3),a=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}});return a.label.text=r>1e3?`\u8DDD\u79BB\uFF1A${(r/1e3).toFixed(2)} \u516C\u91CC`:`\u8DDD\u79BB\uFF1A${r.toFixed(2)} \u7C73`,a.position=s,a}start(e,t){return this._startHook(e,t),new ge({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!0}).start(e,{...this._options,maxAnchorSize:this._maxAnchorSize}),this}},Jm=kn;var On=class extends te{constructor(){super(),this._maxAnchorSize=2}_onDrawStop(e){new ye(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){e.length>0&&(this._startLabel.position=e[0]),e.length>1&&(this._resultLabel.position=e[e.length-1],this._resultLabel.label.text=`\u504F\u822A\uFF1A${i.Math.toDegrees(Re(e[0],e[1])).toFixed(1)} \u5EA6`)}start(e,t){return this._startHook(e,t),new ge({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2}).start(e,{...this._options,maxAnchorSize:this._maxAnchorSize}),this}},Xm=On;var Nn=class extends te{constructor(){super(),this._maxAnchorSize=2,this._helpLinePositions=[],this._helpLine=new i.Entity({polyline:{positions:new i.CallbackProperty(()=>this._helpLinePositions.length>1?this._helpLinePositions:null,!1)}})}_onDrawStop(e){new ye(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){this._resultLabel.position=e[1];let t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e[0],new i.Cartesian3),r=i.Plane.fromPointNormal(e[0],t);this._helpLinePositions=[e[0],i.Plane.projectPointOntoPlane(r,e[1],new i.Cartesian3),e[1]];let s=Math.abs(i.Plane.getPointDistance(r,e[1]));this._resultLabel.label.text=`\u9AD8\u5EA6\uFF1A${s.toFixed(2)} \u7C73`}}start(e,t){this._startHook(e,t);let r=new i.PolylineDashMaterialProperty({color:i.Color.GREENYELLOW});return this._helpLine.polyline.material=r,this._helpLine.polyline.depthFailMaterial=r,this._layer.entities.add(this._helpLine),new ge({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2}).start(e,{...this._options,maxAnchorSize:this._maxAnchorSize}),this}},Qm=Nn;var zn=class extends te{constructor(){super(),this._maxAnchorSize=2,this._helpLinePositions=[],this._helpLine=new i.Entity({polyline:{positions:new i.CallbackProperty(()=>this._helpLinePositions.length>1?this._helpLinePositions:null,!1)}}),this._lengthLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._heightLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}}),this._distanceLabel=new i.Entity({label:{font:"12px",pixelOffset:{x:0,y:-15},disableDepthTestDistance:Number.POSITIVE_INFINITY,showBackground:!0}})}_onDrawStop(e){new ye(e).start({viewer:this._viewer,layer:this._layer},{...this._options,maxAnchorSize:this._maxAnchorSize})}_onCalc(e){if(e.length>0&&(this._startLabel.position=e[0]),e.length>1){let t=i.Ellipsoid.WGS84.geodeticSurfaceNormal(e[0],new i.Cartesian3),r=i.Plane.fromPointNormal(e[0],t),s=i.Plane.projectPointOntoPlane(r,e[1],new i.Cartesian3);this._helpLinePositions=[e[0],s,e[1]];let a=i.Cartesian3.distance(e[0],s),o=Math.abs(i.Plane.getPointDistance(r,e[1])),l=i.Cartesian3.distance(e[0],e[1]);this._lengthLabel.position=i.Cartesian3.midpoint(e[0],s,new i.Cartesian3),this._lengthLabel.label.text=a>1e3?`${(a/1e3).toFixed(2)} \u516C\u91CC`:`${a.toFixed(2)} \u7C73`,this._distanceLabel.position=i.Cartesian3.midpoint(e[0],e[1],new i.Cartesian3),this._distanceLabel.label.text=l>1e3?`${(l/1e3).toFixed(2)} \u516C\u91CC`:`${l.toFixed(2)} \u7C73`,this._heightLabel.position=i.Cartesian3.midpoint(s,e[1],new i.Cartesian3),this._heightLabel.label.text=o>1e3?`${(o/1e3).toFixed(2)} \u516C\u91CC`:`${o.toFixed(2)} \u7C73`}}start(e,t){this._startHook(e,t);let r=new i.PolylineDashMaterialProperty({color:i.Color.GREENYELLOW});return this._helpLine.polyline.material=r,this._helpLine.polyline.depthFailMaterial=r,this._layer.entities.add(this._helpLine),this._layer.entities.add(this._lengthLabel),this._layer.entities.add(this._heightLabel),this._layer.entities.add(this._distanceLabel),new ge({material:t.material||i.Color.YELLOW.withAlpha(.6),depthFailMaterial:t.depthFailMaterial||new i.PolylineDashMaterialProperty({color:i.Color.YELLOW.withAlpha(.6)}),width:t.width||2,clampToGround:!1}).start(e,{...t,maxAnchorSize:this._maxAnchorSize}),this}},Km=zn;var Fn=class{constructor(e){if(!e)throw Error("missing viewer param");this._viewer=e,this._layer=new i.CustomDataSource("measure-layer"),this._viewer.dataSources.add(this._layer)}get viewer(){return this._viewer}get layer(){return this._layer}angle(e={}){return new Vm().start(this,e),this}area(e={}){return new Zm().start(this,e),this}areaHeight(e={}){return new jm().start(this,e),this}areaSurface(e={}){return new Ym().start(this,e),this}distance(e={}){return new qm().start(this,e),this}distanceSurface(e={}){return new Jm().start(this,e),this}heading(e={}){return new Xm().start(this,e),this}height(e={}){return new Qm().start(this,e),this}triangleHeight(e={}){return new Km().start(this,e),this}activate(e,t){switch(e){case _e.ANGLE:this.angle(t);break;case _e.AREA:this.area(t);break;case _e.AREA_HEIGHT:this.areaHeight(t);break;case _e.AREA_SURFACE:this.areaSurface(t);break;case _e.DISTANCE:this.distance(t);break;case _e.DISTANCE_SURFACE:this.distanceSurface(t);break;case _e.HEADING:this.heading(t);break;case _e.HEIGHT:this.height(t);break;case _e.TRIANGLE_HEIGHT:this.triangleHeight(t);break;default:break}return this}deactivate(){return this._layer.entities.removeAll(),this._viewer.drawTool.tooltipMess="",this._viewer.drawTool.deactivate(),this._viewer.editTool.tooltipMess="",this._viewer.editTool.deactivate(),this}},$m=Fn;var V0={depthFail:!0,width:10,arrow:!1},Gn=class{constructor(e,t={}){this._delegate=void 0,this._positions=[],this._options={...V0,...t},this._color=this._options.color,this._positions=e.slice(),this._options.loop&&this._positions.push(e[0]),this._boundingSphere=i.BoundingSphere.fromPoints(this._positions),this._transformedBoundingSphere=i.BoundingSphere.clone(this._boundingSphere),this._modelMatrix=i.Matrix4.clone(i.Matrix4.IDENTITY),this._active=!1,this._show=!1,this._update=!0}get show(){return this._show}set show(e){return this._show=e,this}get active(){return this._active}set active(e){return this._active=e,this._color=e?i.Color.YELLOW:this._options.color,this._update=!0,this}get positions(){return this._positions}set positions(e){return this._positions=e.slice(),this._options.loop&&this._positions.push(e[0]),this}get modelMatrix(){return this._modelMatrix}set modelMatrix(e){return i.Matrix4.equalsEpsilon(e,this._modelMatrix,i.Math.EPSILON10)?this:(i.Matrix4.clone(e,this._modelMatrix),this._update=!0,this)}get boundingVolume(){return this._transformedBoundingSphere}update(e){if(this._show){if(this._update){this._update=!1,this._delegate=this._delegate&&this._delegate.destroy();let t=this._color,r=t.withAlpha(.3),s,a;this._options.arrow?(s=new i.PolylineMaterialAppearance({material:i.Material.fromType(i.Material.PolylineArrowType,{color:t})}),this._options.depthFail&&(a=new i.PolylineMaterialAppearance({material:i.Material.fromType(i.Material.PolylineArrowType,{color:r})}))):(s=new i.PolylineColorAppearance({translucent:t.alpha!==1}),this._options.depthFail&&(a=new i.PolylineColorAppearance({translucent:r.alpha!==1})));let o=new i.PolylineGeometry({positions:this._positions,width:this._options.width,vertexFormat:i.PolylineMaterialAppearance.VERTEX_FORMAT,arcType:i.ArcType.NONE});this._delegate=new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:o,attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t),depthFailColor:i.ColorGeometryInstanceAttribute.fromColor(r)},id:this._options.id,modelMatrix:this._modelMatrix}),appearance:s,depthFailAppearance:a,asynchronous:!1}),this._transformedBoundingSphere=i.BoundingSphere.transform(this._boundingSphere,this._modelMatrix,this._transformedBoundingSphere)}this._delegate.update(e)}}isDestroyed(){return!1}destroy(){return this._delegate=this._delegate&&this._delegate.destroy(),i.destroyObject(this)}},Ni=Gn;var Hn={X:i.Cartesian3.UNIT_X,Y:i.Cartesian3.UNIT_Y,Z:i.Cartesian3.UNIT_Z},Wn=class{constructor(e,t={}){this._viewer=e,this._options=t,this._modelMatrix=void 0,this._active=!1,this._activeAxis=void 0,this._fixedFrame=void 0,this._offset=new i.Cartesian3,this._pickingPlane=new i.Plane(i.Cartesian3.UNIT_X,0),this._axisX=this._createAxisLine("X",i.Color.RED),this._axisY=this._createAxisLine("Y",i.Color.GREEN),this._axisZ=this._createAxisLine("Z",i.Color.BLUE),this.resetTranslation=void 0,this.complete=void 0}set modelMatrix(e){return this._modelMatrix=e,this.update(),this}get active(){return this._active}set active(e){return this._active=e,this._axisX.show=this._active,this._axisY.show=this._active,this._axisZ.show=this._active,this}get modelTranslation(){return i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3)}_createAxisLine(e,t){return this._viewer.scene.primitives.add(new Ni([i.Cartesian3.ZERO,Hn[e]],{id:"position-editor-"+e,arrow:this._options.arrow,color:t,depthFail:this._options.depthFail}))}handleLeftDown(e){console.log("handleLeftDown",e);let t=this._viewer.scene,r=t.camera,s=t.drillPick(e.position)||[];console.log(2);for(let l=0;l<s.length;l++){let h=s[l];if(h.id&&h.id==="position-editor-X"){this._activeAxis="X",this._axisX.active=!0;break}else if(h.id&&h.id==="position-editor-Y"){this._activeAxis="Y",this._axisY.active=!0;break}else if(h.id&&h.id==="position-editor-Z"){this._activeAxis="Z",this._axisZ.active=!0;break}console.log(3)}if(!this._activeAxis)return;console.log(4),this._viewer.canvas.style.cursor="pointer";let a=i.Matrix4.multiplyByPointAsVector(this._fixedFrame,Hn[this._activeAxis],new i.Cartesian3),o=new i.Cartesian3;Math.abs(i.Cartesian3.dot(r.upWC,a)>.7)?o=i.Cartesian3.cross(r.rightWC,a,o):o=i.Cartesian3.cross(r.upWC,a,o),i.Cartesian3.normalize(o,o),i.Plane.fromPointNormal(this.modelTranslation,o,this._pickingPlane),i.IntersectionTests.rayPlane(r.getPickRay(e.position),this._pickingPlane,this._offset),i.Cartesian3.subtract(this._offset,this.modelTranslation,this._offset),t.screenSpaceCameraController.enableInputs=!1,console.log(5)}handleMouseMove(e){if(!this._activeAxis)return;let t=this._viewer.scene.camera,r=new i.Cartesian3,s=i.IntersectionTests.rayPlane(t.getPickRay(e.endPosition),this._pickingPlane,new i.Cartesian3);if(!s)return;let a=i.Cartesian3.subtract(s,this.modelTranslation,new i.Cartesian3),o=i.Matrix4.multiplyByPointAsVector(this._fixedFrame,Hn[this._activeAxis],new i.Cartesian3);i.Cartesian3.projectVector(a,o,a),i.Cartesian3.projectVector(this._offset,o,r),i.Cartesian3.subtract(a,r,a);let l=i.Cartesian3.add(this.modelTranslation,a,new i.Cartesian3);this.resetTranslation&&this.resetTranslation(l)}handleLeftUp(e){this._viewer.canvas.style.cursor="default",this._activeAxis=void 0,this._axisX.active=!1,this._axisY.active=!1,this._axisZ.active=!1,this._viewer.scene.screenSpaceCameraController.enableInputs=!0,this.complete&&this.complete()}update(){let e=5*this._options.axisLineScale;this._fixedFrame=i.Transforms.eastNorthUpToFixedFrame(this.modelTranslation);let t=i.Matrix4.multiplyByUniformScale(this._fixedFrame,e,new i.Matrix4);this._axisX.modelMatrix=t,this._axisY.modelMatrix=t,this._axisZ.modelMatrix=t}isDestroyed(){return!1}destroy(){this.active=!1;let e=this._viewer.scene;e.primitives.remove(this._axisX),e.primitives.remove(this._axisY),e.primitives.remove(this._axisZ),i.destroyObject(this)}},eu=Wn;var tu={X:i.Cartesian3.UNIT_X,Y:i.Cartesian3.UNIT_Y,Z:i.Cartesian3.UNIT_Z},Bn=class{constructor(e,t={}){this._viewer=e,this._options=t,this._modelMatrix=void 0,this._active=!1,this._activeAxis=void 0,this._rotationStartPoint=new i.Cartesian3,this._rotationPlane=new i.Plane(i.Cartesian3.UNIT_X,0);let r=this._getUnitCirclePositions();this._axisX=this._createAxisLine("X",r.x,i.Color.RED),this._axisY=this._createAxisLine("Y",r.y,i.Color.GREEN),this._axisZ=this._createAxisLine("Z",r.z,i.Color.BLUE),this.resetRotation=void 0,this.complete=void 0}set modelMatrix(e){console.log(e),this._modelMatrix=e,this.update()}get active(){return this._active}set active(e){return this._active=e,this._axisX.show=e,this._axisY.show=e,this._axisZ.show=e,this}get modelTranslation(){return i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3)}_getUnitCirclePositions(){let e=[],t=[],r=[];for(let s=0;s<360;s++){let a=i.Math.toRadians(s),o=Math.cos(a),l=Math.sin(a);e.push(new i.Cartesian3(0,o,l)),t.push(new i.Cartesian3(l,0,o)),r.push(new i.Cartesian3(o,l,0))}return{x:e,y:t,z:r}}_createAxisLine(e,t,r){return this._viewer.scene.primitives.add(new Ni(t,{id:"position-editor-"+e,loop:!0,color:r,width:5,depthFail:this._options.depthFail}))}_getRotationAngle(e,t,r){let s=i.Matrix4.inverse(e,new i.Matrix4),a=i.Matrix4.multiplyByPoint(s,t,new i.Cartesian3),o=i.Matrix4.multiplyByPoint(s,r,new i.Cartesian3),l=new i.Cartesian2,h=new i.Cartesian2;this._activeAxis==="X"?(l.x=a.y,l.y=a.z,h.x=o.y,h.y=o.z):this._activeAxis==="Y"?(l.x=-a.x,l.y=a.z,h.x=-o.x,h.y=o.z):(l.x=a.x,l.y=a.y,h.x=o.x,h.y=o.y);let c=l.x*h.y-l.y*h.x>=0,d=i.Cartesian2.angleBetween(l,h);return c||(d=-d),d}handleLeftDown(e){console.log("handleLeftDown",e);let t=this._viewer.scene,r=t.drillPick(e.position)||[];console.log(1);for(let o=0;o<r.length;o++){let l=r[o];if(l.id&&l.id==="position-editor-X"){this._activeAxis="X",this._axisX.active=!0;break}else if(l.id&&l.id==="position-editor-Y"){this._activeAxis="Y",this._axisY.active=!0;break}else if(l.id&&l.id==="position-editor-Z"){this._activeAxis="Z",this._axisZ.active=!0;break}}if(!this._activeAxis)return;this._viewer.canvas.style.cursor="pointer";let s=i.Matrix4.multiplyByPoint(this._modelMatrix,tu[this._activeAxis],new i.Cartesian3),a=i.Cartesian3.subtract(s,this.modelTranslation,s);i.Cartesian3.normalize(a,a),i.Plane.fromPointNormal(this.modelTranslation,a,this._rotationPlane),i.IntersectionTests.rayPlane(t.camera.getPickRay(e.position),this._rotationPlane,this._rotationStartPoint),t.screenSpaceCameraController.enableInputs=!1}handleMouseMove(e){if(!this._activeAxis)return;let t=this._viewer.scene.camera,r=i.IntersectionTests.rayPlane(t.getPickRay(e.endPosition),this._rotationPlane,new i.Cartesian3);if(!r)return;let s=this._getRotationAngle(this._modelMatrix,this._rotationStartPoint,r),a=i.Quaternion.fromAxisAngle(tu[this._activeAxis],s,new i.Quaternion),o=i.Matrix3.fromQuaternion(a),l=i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3),h=i.Transforms.eastNorthUpToFixedFrame(l),c=i.Matrix4.getMatrix3(h,new i.Matrix3);i.Matrix3.multiply(c,o,o);let d=i.Matrix4.fromRotationTranslation(o,this.modelTranslation,new i.Matrix4);this.resetRotation&&this.resetRotation(d)}handleLeftUp(e){this._viewer.canvas.style.cursor="default",this._activeAxis=void 0,this._axisX.active=!1,this._axisY.active=!1,this._axisZ.active=!1,this._viewer.scene.screenSpaceCameraController.enableInputs=!0,this.complete&&this.complete()}update(){let e=5*this._options.axisLineScale,t=i.Matrix4.getTranslation(this._modelMatrix,new i.Cartesian3),r=i.Transforms.eastNorthUpToFixedFrame(t),s=i.Matrix4.multiplyByUniformScale(r,e,new i.Matrix4);this._axisX.modelMatrix=s,this._axisY.modelMatrix=s,this._axisZ.modelMatrix=s}isDestroyed(){return!1}destroy(){this.active=!1;let e=this._viewer.scene;return e.primitives.remove(this._axisX),e.primitives.remove(this._axisY),e.primitives.remove(this._axisZ),i.destroyObject(this)}},iu=Bn;var Z0={TRANSLATION:"translation",ROTATION:"rotation"},zi=Z0;var j0={arrow:!0,width:8,depthFail:!0,axisLineScale:1},Un=class{constructor(e,t={}){this._viewer=e,this._options={...j0,...t},this._modelMatrix=void 0,this._model=void 0,this._handler=void 0,this._activeEditor=void 0,this._callback=void 0,this._position={lng:0,lat:0,alt:0,heading:0,pitch:0,roll:0},this._translationEditor=new eu(this._viewer,this._options),this._rotationEditor=new iu(this._viewer,this._options),this._translationEditor.resetTranslation=this._resetTranslation.bind(this),this._translationEditor.complete=this._complete.bind(this),this._rotationEditor.resetRotation=this._resetRotation.bind(this),this._rotationEditor.complete=this._complete.bind(this)}set overlay(e){return this._model=e.delegate||e,this._position=e.position||{lng:0,lat:0,alt:0,heading:0,pitch:0,roll:0},this}_bindEvent(){this._handler=new i.ScreenSpaceEventHandler(this._viewer.canvas),this._handler.setInputAction(this._onLeftDown.bind(this),i.ScreenSpaceEventType.LEFT_DOWN),this._handler.setInputAction(this._onLeftUp.bind(this),i.ScreenSpaceEventType.LEFT_UP),this._handler.setInputAction(this._onMouseMove.bind(this),i.ScreenSpaceEventType.MOUSE_MOVE)}_unbindEvent(){this._handler&&(this._handler.removeInputAction(this._onLeftDown.bind(this),i.ScreenSpaceEventType.LEFT_DOWN),this._handler.removeInputAction(this._onLeftUp.bind(this),i.ScreenSpaceEventType.LEFT_UP),this._handler.removeInputAction(this._onMouseMove.bind(this),i.ScreenSpaceEventType.MOUSE_MOVE))}_setModelMatrix(){if(this._model instanceof i.Entity){let e=this._model.position.getValue(i.JulianDate.now()),t=new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(-this._position.pitch),i.Math.toRadians(this._position.roll));this._modelMatrix=i.Transforms.headingPitchRollToFixedFrame(e,t),this._activeEditor.modelMatrix=this._modelMatrix,this._activeEditor.active=!0,this._setLngLatAlt(this._modelMatrix)}else this._model instanceof Promise&&this._model.then(e=>{e instanceof i.Model?this._modelMatrix=e.modelMatrix.clone():e instanceof i.Cesium3DTileset&&(this._modelMatrix=e.root.transform.clone()),this._activeEditor.modelMatrix=this._modelMatrix,this._activeEditor.active=!0,this._setLngLatAlt(this._modelMatrix)})}_setLngLatAlt(e){let t=i.Matrix4.getTranslation(e,new i.Cartesian3),r=i.Cartographic.fromCartesian(t);this._position.lng=Number(i.Math.toDegrees(r.longitude).toFixed(8)),this._position.lat=Number(i.Math.toDegrees(r.latitude).toFixed(8)),this._position.alt=Number(r.height.toFixed(2))}_setHPR(e){this._position.heading+=Number(i.Math.toDegrees(e.heading).toFixed(8)),this._position.heading=this._position.heading%360,this._position.pitch+=Number(-i.Math.toDegrees(e.pitch).toFixed(8)),this._position.pitch=this._position.pitch%360,this._position.roll+=Number(-i.Math.toDegrees(e.roll).toFixed(8)),this._position.roll=this._position.roll%360}_onLeftDown(e){this._activeEditor&&this._activeEditor.handleLeftDown(e)}_onMouseMove(e){this._activeEditor&&this._activeEditor.handleMouseMove(e)}_onLeftUp(e){this._activeEditor&&this._activeEditor.handleLeftUp(e)}_resetRotation(e){let t=i.Transforms.fixedFrameToHeadingPitchRoll(e);if(this._setHPR(t),this._model instanceof i.Entity){let r=this._model.position.getValue(i.JulianDate.now()),s=new i.HeadingPitchRoll(i.Math.toRadians(this._position.heading),i.Math.toRadians(-this._position.pitch),i.Math.toRadians(this._position.roll));this._model.orientation=i.Transforms.headingPitchRollQuaternion(r,s)}else this._model instanceof Promise&&this._model.then(r=>{r instanceof i.Model?i.Matrix4.multiply(r.modelMatrix,i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(t)),r.modelMatrix):r instanceof i.Cesium3DTileset&&i.Matrix4.multiply(r.root.transform,i.Matrix4.fromRotationTranslation(i.Matrix3.fromHeadingPitchRoll(t)),r.root.transform)})}_resetTranslation(e){i.Matrix4.setTranslation(this._modelMatrix,e,this._modelMatrix),this._model instanceof i.Entity?this._model.position=e:this._model instanceof Promise&&this._model.then(t=>{t instanceof i.Model?i.Matrix4.setTranslation(t.modelMatrix,e,t.modelMatrix):t instanceof i.Cesium3DTileset&&i.Matrix4.setTranslation(t.root.transform,e,t.root.transform)}),this._activeEditor.modelMatrix=this._modelMatrix,this._setLngLatAlt(this._modelMatrix)}_complete(){this._callback&&this._callback(this._position)}activate(e,t){if(!this._model)throw new Error("PositionEditor: no overlay");return this._translationEditor.active=!1,this._rotationEditor.active=!1,this._activeEditor=e===zi.TRANSLATION?this._translationEditor:this._rotationEditor,this._setModelMatrix(),this._handler||this._bindEvent(),this._callback=t,this}deactivate(){return this._unbindEvent(),this._handler&&this._handler.destroy(),this._handler=void 0,this._translationEditor.active=!1,this._rotationEditor.active=!1,this._activeEditor=void 0,this._modelMatrix=void 0,this}},ru=Un;var su=`uniform float mixNum;\r
1680
1679
  uniform sampler2D colorTexture;\r
1681
1680
  uniform sampler2D shadowMapTexture;\r
1682
1681
  uniform sampler2D videoTexture;\r
@@ -1811,7 +1810,7 @@ void main()\r
1811
1810
  out_FragColor = vec4(mix(color.rgb, disViewColor.rgb, disViewColor.a), disViewColor.a);\r
1812
1811
  }\r
1813
1812
  }\r
1814
- `;var $o=class extends v{constructor(e,t,r){super(),this._position=g.parsePosition(e),this._video=t,this._maskUrl=r,this._viewer=void 0,this._camera=void 0,this._videoTexture=void 0,this._maskTexture=void 0,this._viewShadowMap=void 0,this._frustum=new i.PerspectiveFrustum({fov:i.Math.toRadians(60),aspectRatio:1}),this._alpha=1,this._clearBlack=!0,this._disViewColor=new i.Color(1,1,1,1),this._state=m.INITIALIZED}get type(){return v.getOverlayType("camera_video")}get show(){return this._show}set show(e){this._show=e,this._delegate&&(this._delegate.enabled=e)}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._updateShadowMap()}get video(){return this._video}set video(e){this._video=e}get maskUrl(){return this._maskUrl}set maskUrl(e){this._unbindEvent(),this._maskUrl=e;let t=new Image,r=this;t.onload=()=>{r._maskTexture=new i.Texture({context:r._viewer.scene.context,source:t}),r._bindEvent()},t.src=e}get camera(){return this._camera}_updateCameraState(){let e=i.Cartesian3.fromDegrees(this._position.lng,this._position.lat,this._position.alt),t=re.getViewPosition(this._position,this._frustum&&this._frustum.far||120);this._viewer&&(this._camera||(this._camera=new i.Camera(this._viewer.scene)),this._camera.frustum=this._frustum,re.setCamera(this._camera,e,t,this._position.roll))}_updateShadowMap(){this._updateCameraState(),this._viewShadowMap=new i.ShadowMap({lightCamera:this._camera,enable:!1,isPointLight:!1,isSpotLight:!0,cascadesEnabled:!1,context:this._viewer.scene.context,pointLightRadius:this._frustum.far})}_createPostProcessStage(){this._delegate=new i.PostProcessStage({fragmentShader:hd,uniforms:{mixNum:()=>this._alpha,clearBlack:()=>this._clearBlack,disViewColor:()=>this._disViewColor,videoTexture:()=>this._videoTexture,maskTexture:()=>this._maskTexture,shadowMapTexture:()=>this._viewShadowMap._shadowMapTexture,shadowMap_matrix:()=>this._viewShadowMap._shadowMapMatrix,shadowMap_lightPositionEC:()=>this._viewShadowMap._lightPositionEC,shadowMap_texelSizeDepthBiasAndNormalShadingSmooth:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(1/this._viewShadowMap._textureSize.x,1/this._viewShadowMap._textureSize.y,e.depthBias,e.normalShadingSmooth,new i.Cartesian4)},shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(e.normalOffsetScale,this._viewShadowMap._distance,this._viewShadowMap.maximumDistance,this._viewShadowMap._darkness,new i.Cartesian4)}}})}_onClockTick(){this._videoTexture&&this._videoTexture.destroy(),this._videoTexture=new i.Texture({context:this._viewer.scene.context,source:this._video,width:1,height:1,pixelFormat:i.PixelFormat.RGBA,pixelDatatype:i.PixelDatatype.UNSIGNED_BYTE})}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onClockTick,this)}_unbindEvent(){this._viewer.clock.onTick.removeEventListener(this._onClockTick,this)}_mountedHook(){this._viewer=this._layer._viewer,this._maskTexture=new i.Texture({context:this._viewer.scene.context,source:{width:1,height:1,arrayBufferView:new Uint8Array([255,255,255,255])},flipY:!1}),this._maskUrl?(this._videoTexture=new i.Texture({context:this._viewer.scene.context,source:{width:1,height:1,arrayBufferView:new Uint8Array([255,255,255,255])},flipY:!1}),this.maskUrl=this._maskUrl):this._bindEvent(),this._updateShadowMap(),this._createPostProcessStage(),this._viewer.scene.primitives.add(this)}_removedHook(){this._unbindEvent(),this._viewShadowMap=void 0}isDestroyed(){return!1}update(){this._viewShadowMap&&this._viewer.scene.frameState.shadowMaps.push(this._viewShadowMap)}setStyle(e){let t;return Object.keys(e).length===0?this:(this._style=e,e.fov&&(this._frustum.fov=i.Math.toRadians(e.fov)),e.near&&(this._frustum.near=e.near),e.far&&(this._frustum.far=e.far),e.aspectRatio&&(this._frustum.aspectRatio=e.aspectRatio),e.alpha&&(this._alpha=e.alpha),this._clearBlack=(t=e.clearBlack)!=null?t:!0,e.disViewColor&&(this._disViewColor=e.disViewColor),this._delegate&&this._updateShadowMap(),this)}},cd=$o;var pd=new i.WebMercatorProjection,en=class extends v{constructor(e,t){super(),this._position=g.parsePosition(e),this._video=t,this._delegate=new i.Entity({plane:{}}),this._viewer=void 0,this._camera=void 0,this._frustum=new i.PerspectiveFrustum({fov:i.Math.toRadians(60),aspectRatio:1}),this._state=m.INITIALIZED}get type(){return v.getOverlayType("plane_video")}get show(){return this._show}set show(e){this._show=e}get position(){return this._position}set position(e){this._position=g.parsePosition(e),this._updatePlane()}get video(){return this._video}set video(e){this._video=e}get camera(){return this._camera}_mountedHook(){this._viewer=this._layer._viewer,this._updatePlane()}_getCameraState(){let e=i.Cartesian3.fromDegrees(this._position.lng,this._position.lat,this._position.alt),t=re.getViewPosition(this._position,this._frustum&&this._frustum.far||120);return this._viewer&&(this._camera||(this._camera=new i.Camera(this._viewer.scene)),this._camera.frustum=this._frustum,re.setCamera(this._camera,e,t,this._position.roll)),{cameraPosition:e,viewPosition:t}}_updatePlane(){let{cameraPosition:e,viewPosition:t}=this._getCameraState(),r=i.Cartographic.fromCartesian(e),s=i.Cartographic.fromCartesian(t),a=new i.Cartesian3;i.Cartesian3.subtract(pd.project(r),pd.project(s),a),i.Cartesian3.normalize(a,a);let o=this._frustum.far*Math.tan(this._frustum.fov*.5)*2,n=o/this._frustum.aspectRatio;this._delegate.position=t,this._delegate.plane={dimensions:{x:o,y:n},plane:new i.Plane(a,0),material:this._video||i.Color.GREEN.withAlpha(.5)}}setStyle(e){return Object.keys(e).length===0?this:(this._style=e,e.fov&&(this._frustum.fov=i.Math.toRadians(e.fov)),e.near&&(this._frustum.near=e.near),e.far&&(this._frustum.far=e.far),e.aspectRatio&&(this._frustum.aspectRatio=e.aspectRatio),this._delegate&&this._updatePlane(),this)}},dd=en;var{Cartesian3:mi,Ellipsoid:of,Math:md}=i;function ue(l){this._api=l,this._viewer=Object(l.getZr()).viewer,this._mapOffset=[0,0],this.dimensions=["lng","lat"]}ue.prototype.getViewer=function(){return this._viewer};ue.prototype.setMapOffset=function(l){return this._mapOffset=l,this};ue.prototype.dataToPoint=function(l){let e=[],t=mi.fromDegrees(l[0],l[1]);if(!t)return e;let r=of.WGS84.geodeticSurfaceNormal(t,new mi),s=this._viewer.camera.direction;if(mi.dot(r,s)>=0)return e;let a=this._viewer.scene.cartesianToCanvasCoordinates(t);return a?[a.x-this._mapOffset[0],a.y-this._mapOffset[1]]:e};ue.prototype.pointToData=function(l){let e=this._viewer.scene.globe.ellipsoid,t=new mi(l[0]+this._mapOffset[0],l[1]+this._mapOffset[1],0),r=e.cartesianToCartographic(t);return[md.toDegrees(r.longitude),md.toDegrees(r.latitude)]};ue.create=function(l,e){let t;l.eachComponent("GLMap",function(r){t=new ue(e),t.setMapOffset(r.__mapOffset||[0,0]),r.coordinateSystem=t}),l.eachSeries(function(r){r.get("coordinateSystem")==="GLMap"&&(r.coordinateSystem=t)})};ue.dimensions=["lng","lat"];function nf(l){ue.prototype.getViewRect=function(){let e=this._api;return new l.graphic.BoundingRect(0,0,e.getWidth(),e.getHeight())},ue.prototype.getRoamTransform=function(){return l.matrix.create()}}var ud=!1;function fd(l){if(ud)return;let{registerAction:e,registerCoordinateSystem:t,extendComponentModel:r,extendComponentView:s}=l;r({type:"GLMap",getViewer(){return Object(this.getZr()).viewer},defaultOption:{roam:!1}}),s({type:"GLMap",init:function(a,o){this.api=o,o.getZr().viewer.clock.onTick.addEventListener(this.moveHandler,this)},moveHandler:function(){this.api.getZr().dom.style.visibility!=="hidden"&&this.api.dispatchAction({type:"GLMapRoam"})},render:function(a,o,n){},dispose:function(){this.api.getZr().viewer.clock.onTick.removeEventListener(this.moveHandler,this)}}),nf(l),t("GLMap",ue),e({type:"GLMapRoam",event:"GLMapRoam",update:"updateLayout"},function(a,o){}),ud=!0}var tn=class extends M{constructor(e,t){let r=te("echarts");if(!r)throw new Error("miss the echarts lib");fd(r),super(e),this._option=t,this._delegate=void 0,this._chart=void 0}set show(e){this._show=e,this._delegate.style.visibility=e?"visible":"hidden"}get show(){return this._show}_createChartElement(){let e=this._viewer.scene.canvas,t=document.createElement("div");return t.setAttribute("id",this._id),t.setAttribute("data-layer-type","chart-layer"),t.style.cssText=`position:absolute; top:0; left:0; width: ${e.clientWidth}px; height: ${e.clientHeight}px;pointer-events:none;`,this._viewer.layerContainer.appendChild(t),t}_onAdd(e){let t=te("echarts");this._viewer=e,this._viewer.canvas.setAttribute("tabIndex","0"),this._delegate=this._createChartElement(),this._chart=t.init(this._delegate),Object(this._chart.getZr()).viewer=e,this._option&&this._chart.setOption({...this._option,GLMap:{},animation:!1}),this._state=m.ADDED}_onRemove(){this._delegate&&this._viewer&&(this._chart.dispose(),this._viewer.layerContainer.removeChild(this._delegate),this._state=m.REMOVED)}setOption(e={}){return this._option=e,this._chart&&this._chart.setOption({...e,GLMap:{},animation:!1}),this}clear(){return this._chart.clear(),this}resize(){return this._chart.resize(),this}},_d=tn;var rn=class{constructor(e){this._viewer=e,this._material=i.Material.fromType(i.Material.ElevationContourType,{color:i.Color.YELLOW})}start(e,t,r){return e&&(this._material.uniforms.color=e),t&&(this._material.uniforms.width=t),r&&(this._material.uniforms.spacing=r),this._viewer.scene.globe.material=this._material,this}stop(){return this._viewer.scene.globe.material=void 0,this}},ui=rn;var sn=class{constructor(e){this._viewer=e,this._shadowsState=this._viewer.delegate.shadows}start(e,t=1600){return this._viewer.delegate.shadows=!0,this._viewer.clock.currentTime=i.JulianDate.fromDate(e),this._viewer.clock.multiplier=t,this}stop(){return this._viewer.delegate.shadows=this._shadowsState,this._viewer.clock.currentTime=i.JulianDate.now(),this._viewer.clock.multiplier=1,this}},fi=sn;var an=class{constructor(e){this._viewer=e,this._delegate=new i.PrimitiveCollection,this._viewer.scene.primitives.add(this._delegate)}_lerp(e,t,r=100){let s=[];for(let a=0;a<r;a++){let o=i.Math.lerp(e.lng,t.lng,a/r),n=i.Math.lerp(e.lat,t.lat,a/r),h=e.alt-(e.alt-t.alt)*(a/r);s.push({lng:o,lat:n,alt:h})}return s}_createLine(e,t){let r=new i.PolylineGeometry({positions:e,width:3,vertexFormat:i.PolylineMaterialAppearance.VERTEX_FORMAT,arcType:i.ArcType.NONE}),s=t.withAlpha(.6),a=new i.PolylineColorAppearance({translucent:t.alpha!==1}),o=new i.PolylineColorAppearance({translucent:s.alpha!==1});return new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:r,attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t),depthFailColor:i.ColorGeometryInstanceAttribute.fromColor(s)}}),appearance:a,depthFailAppearance:o,asynchronous:!0})}start(e,t,r,s){e=g.parsePosition(e),t=g.parsePosition(t);let a=this._lerp(e,t,s),o=a.map(p=>u.transformWGS84ToCartographic(p)),n=a.map(p=>u.transformWGS84ToCartesian(p)),h=this._viewer.terrainProvider&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)?i.sampleTerrainMostDetailed(this._viewer.terrainProvider,o):Promise.resolve([]),c=this._viewer.scene.clampToHeightSupported?this._viewer.scene.clampToHeightMostDetailed(n,r):Promise.resolve([]);return Promise.all([h,c]).then(([p,f])=>{let y=[],_=0;return p.forEach((d,T)=>{let C=Math.max(d.height||0,f[T]?i.Cartographic.fromCartesian(f[T]).height:0);(a[T].alt<C&&_===0||_>=1&&(a[T].alt>C&&_%2!==0||a[T].alt<C&&_%2===0))&&(y.push(a[T]),_++)}),y}).then(p=>{p.length?(this._delegate.add(this._createLine([u.transformWGS84ToCartesian(e),u.transformWGS84ToCartesian(p[0])],i.Color.GREEN)),p.forEach((f,y)=>{let _=p[y+1];_=_?u.transformWGS84ToCartesian(_):u.transformWGS84ToCartesian(t),this._delegate.add(this._createLine([u.transformWGS84ToCartesian(f),_],y%2===0?i.Color.RED:i.Color.HOTPINK))})):this._delegate.add(this._createLine([u.transformWGS84ToCartesian(e),u.transformWGS84ToCartesian(t)],i.Color.GREEN))}),this}stop(){return this._delegate.removeAll(),this}},_i=an;var gd=`uniform float czzj;\r
1813
+ `;var Vn=class extends w{constructor(e,t,r){super(),this._position=y.parsePosition(e),this._video=t,this._maskUrl=r,this._viewer=void 0,this._camera=void 0,this._videoTexture=void 0,this._maskTexture=void 0,this._viewShadowMap=void 0,this._frustum=new i.PerspectiveFrustum({fov:i.Math.toRadians(60),aspectRatio:1}),this._alpha=1,this._clearBlack=!0,this._disViewColor=new i.Color(1,1,1,1),this._state=f.INITIALIZED}get type(){return w.getOverlayType("camera_video")}get show(){return this._show}set show(e){this._show=e,this._delegate&&(this._delegate.enabled=e)}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._updateShadowMap()}get video(){return this._video}set video(e){this._video=e}get maskUrl(){return this._maskUrl}set maskUrl(e){this._unbindEvent(),this._maskUrl=e;let t=new Image,r=this;t.onload=()=>{r._maskTexture=new i.Texture({context:r._viewer.scene.context,source:t}),r._bindEvent()},t.src=e}get camera(){return this._camera}_updateCameraState(){let e=i.Cartesian3.fromDegrees(this._position.lng,this._position.lat,this._position.alt),t=le.getViewPosition(this._position,this._frustum&&this._frustum.far||120);this._viewer&&(this._camera||(this._camera=new i.Camera(this._viewer.scene)),this._camera.frustum=this._frustum,le.setCamera(this._camera,e,t,this._position.roll))}_updateShadowMap(){this._updateCameraState(),this._viewShadowMap=new i.ShadowMap({lightCamera:this._camera,enable:!1,isPointLight:!1,isSpotLight:!0,cascadesEnabled:!1,context:this._viewer.scene.context,pointLightRadius:this._frustum.far})}_createPostProcessStage(){this._delegate=new i.PostProcessStage({fragmentShader:su,uniforms:{mixNum:()=>this._alpha,clearBlack:()=>this._clearBlack,disViewColor:()=>this._disViewColor,videoTexture:()=>this._videoTexture,maskTexture:()=>this._maskTexture,shadowMapTexture:()=>this._viewShadowMap._shadowMapTexture,shadowMap_matrix:()=>this._viewShadowMap._shadowMapMatrix,shadowMap_lightPositionEC:()=>this._viewShadowMap._lightPositionEC,shadowMap_texelSizeDepthBiasAndNormalShadingSmooth:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(1/this._viewShadowMap._textureSize.x,1/this._viewShadowMap._textureSize.y,e.depthBias,e.normalShadingSmooth,new i.Cartesian4)},shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(e.normalOffsetScale,this._viewShadowMap._distance,this._viewShadowMap.maximumDistance,this._viewShadowMap._darkness,new i.Cartesian4)}}})}_onClockTick(){this._videoTexture&&this._videoTexture.destroy(),this._videoTexture=new i.Texture({context:this._viewer.scene.context,source:this._video,width:1,height:1,pixelFormat:i.PixelFormat.RGBA,pixelDatatype:i.PixelDatatype.UNSIGNED_BYTE})}_bindEvent(){this._viewer.clock.onTick.addEventListener(this._onClockTick,this)}_unbindEvent(){this._viewer.clock.onTick.removeEventListener(this._onClockTick,this)}_mountedHook(){this._viewer=this._layer._viewer,this._maskTexture=new i.Texture({context:this._viewer.scene.context,source:{width:1,height:1,arrayBufferView:new Uint8Array([255,255,255,255])},flipY:!1}),this._maskUrl?(this._videoTexture=new i.Texture({context:this._viewer.scene.context,source:{width:1,height:1,arrayBufferView:new Uint8Array([255,255,255,255])},flipY:!1}),this.maskUrl=this._maskUrl):this._bindEvent(),this._updateShadowMap(),this._createPostProcessStage(),this._viewer.scene.primitives.add(this)}_removedHook(){this._unbindEvent(),this._viewShadowMap=void 0}isDestroyed(){return!1}update(){this._viewShadowMap&&this._viewer.scene.frameState.shadowMaps.push(this._viewShadowMap)}setStyle(e){let t;return Object.keys(e).length===0?this:(this._style=e,e.fov&&(this._frustum.fov=i.Math.toRadians(e.fov)),e.near&&(this._frustum.near=e.near),e.far&&(this._frustum.far=e.far),e.aspectRatio&&(this._frustum.aspectRatio=e.aspectRatio),e.alpha&&(this._alpha=e.alpha),this._clearBlack=(t=e.clearBlack)!=null?t:!0,e.disViewColor&&(this._disViewColor=e.disViewColor),this._delegate&&this._updateShadowMap(),this)}},au=Vn;var ou=new i.WebMercatorProjection,Zn=class extends w{constructor(e,t){super(),this._position=y.parsePosition(e),this._video=t,this._delegate=new i.Entity({plane:{}}),this._viewer=void 0,this._camera=void 0,this._frustum=new i.PerspectiveFrustum({fov:i.Math.toRadians(60),aspectRatio:1}),this._state=f.INITIALIZED}get type(){return w.getOverlayType("plane_video")}get show(){return this._show}set show(e){this._show=e}get position(){return this._position}set position(e){this._position=y.parsePosition(e),this._updatePlane()}get video(){return this._video}set video(e){this._video=e}get camera(){return this._camera}_mountedHook(){this._viewer=this._layer._viewer,this._updatePlane()}_getCameraState(){let e=i.Cartesian3.fromDegrees(this._position.lng,this._position.lat,this._position.alt),t=le.getViewPosition(this._position,this._frustum&&this._frustum.far||120);return this._viewer&&(this._camera||(this._camera=new i.Camera(this._viewer.scene)),this._camera.frustum=this._frustum,le.setCamera(this._camera,e,t,this._position.roll)),{cameraPosition:e,viewPosition:t}}_updatePlane(){let{cameraPosition:e,viewPosition:t}=this._getCameraState(),r=i.Cartographic.fromCartesian(e),s=i.Cartographic.fromCartesian(t),a=new i.Cartesian3;i.Cartesian3.subtract(ou.project(r),ou.project(s),a),i.Cartesian3.normalize(a,a);let o=this._frustum.far*Math.tan(this._frustum.fov*.5)*2,l=o/this._frustum.aspectRatio;this._delegate.position=t,this._delegate.plane={dimensions:{x:o,y:l},plane:new i.Plane(a,0),material:this._video||i.Color.GREEN.withAlpha(.5)}}setStyle(e){return Object.keys(e).length===0?this:(this._style=e,e.fov&&(this._frustum.fov=i.Math.toRadians(e.fov)),e.near&&(this._frustum.near=e.near),e.far&&(this._frustum.far=e.far),e.aspectRatio&&(this._frustum.aspectRatio=e.aspectRatio),this._delegate&&this._updatePlane(),this)}},nu=Zn;var{Cartesian3:Fi,Ellipsoid:q0,Math:lu}=i;function Ce(n){this._api=n,this._viewer=Object(n.getZr()).viewer,this._mapOffset=[0,0],this.dimensions=["lng","lat"]}Ce.prototype.getViewer=function(){return this._viewer};Ce.prototype.setMapOffset=function(n){return this._mapOffset=n,this};Ce.prototype.dataToPoint=function(n){let e=[],t=Fi.fromDegrees(n[0],n[1]);if(!t)return e;let r=q0.WGS84.geodeticSurfaceNormal(t,new Fi),s=this._viewer.camera.direction;if(Fi.dot(r,s)>=0)return e;let a=this._viewer.scene.cartesianToCanvasCoordinates(t);return a?[a.x-this._mapOffset[0],a.y-this._mapOffset[1]]:e};Ce.prototype.pointToData=function(n){let e=this._viewer.scene.globe.ellipsoid,t=new Fi(n[0]+this._mapOffset[0],n[1]+this._mapOffset[1],0),r=e.cartesianToCartographic(t);return[lu.toDegrees(r.longitude),lu.toDegrees(r.latitude)]};Ce.create=function(n,e){let t;n.eachComponent("GLMap",function(r){t=new Ce(e),t.setMapOffset(r.__mapOffset||[0,0]),r.coordinateSystem=t}),n.eachSeries(function(r){r.get("coordinateSystem")==="GLMap"&&(r.coordinateSystem=t)})};Ce.dimensions=["lng","lat"];function J0(n){Ce.prototype.getViewRect=function(){let e=this._api;return new n.graphic.BoundingRect(0,0,e.getWidth(),e.getHeight())},Ce.prototype.getRoamTransform=function(){return n.matrix.create()}}var hu=!1;function cu(n){if(hu)return;let{registerAction:e,registerCoordinateSystem:t,extendComponentModel:r,extendComponentView:s}=n;r({type:"GLMap",getViewer(){return Object(this.getZr()).viewer},defaultOption:{roam:!1}}),s({type:"GLMap",init:function(a,o){this.api=o,o.getZr().viewer.clock.onTick.addEventListener(this.moveHandler,this)},moveHandler:function(){this.api.getZr().dom.style.visibility!=="hidden"&&this.api.dispatchAction({type:"GLMapRoam"})},render:function(a,o,l){},dispose:function(){this.api.getZr().viewer.clock.onTick.removeEventListener(this.moveHandler,this)}}),J0(n),t("GLMap",Ce),e({type:"GLMapRoam",event:"GLMapRoam",update:"updateLayout"},function(a,o){}),hu=!0}var jn=class extends S{constructor(e,t){let r=oe("echarts");if(!r)throw new Error("miss the echarts lib");cu(r),super(e),this._option=t,this._delegate=void 0,this._chart=void 0}set show(e){this._show=e,this._delegate.style.visibility=e?"visible":"hidden"}get show(){return this._show}_createChartElement(){let e=this._viewer.scene.canvas,t=document.createElement("div");return t.setAttribute("id",this._id),t.setAttribute("data-layer-type","chart-layer"),t.style.cssText=`position:absolute; top:0; left:0; width: ${e.clientWidth}px; height: ${e.clientHeight}px;pointer-events:none;`,this._viewer.layerContainer.appendChild(t),t}_onAdd(e){let t=oe("echarts");this._viewer=e,this._viewer.canvas.setAttribute("tabIndex","0"),this._delegate=this._createChartElement(),this._chart=t.init(this._delegate),Object(this._chart.getZr()).viewer=e,this._option&&this._chart.setOption({...this._option,GLMap:{},animation:!1}),this._state=f.ADDED}_onRemove(){this._delegate&&this._viewer&&(this._chart.dispose(),this._viewer.layerContainer.removeChild(this._delegate),this._state=f.REMOVED)}setOption(e={}){return this._option=e,this._chart&&this._chart.setOption({...e,GLMap:{},animation:!1}),this}clear(){return this._chart.clear(),this}resize(){return this._chart.resize(),this}},du=jn;var Yn=class{constructor(e){this._viewer=e,this._material=i.Material.fromType(i.Material.ElevationContourType,{color:i.Color.YELLOW})}start(e,t,r){return e&&(this._material.uniforms.color=e),t&&(this._material.uniforms.width=t),r&&(this._material.uniforms.spacing=r),this._viewer.scene.globe.material=this._material,this}stop(){return this._viewer.scene.globe.material=void 0,this}},Gi=Yn;var qn=class{constructor(e){this._viewer=e,this._shadowsState=this._viewer.delegate.shadows}start(e,t=1600){return this._viewer.delegate.shadows=!0,this._viewer.clock.currentTime=i.JulianDate.fromDate(e),this._viewer.clock.multiplier=t,this}stop(){return this._viewer.delegate.shadows=this._shadowsState,this._viewer.clock.currentTime=i.JulianDate.now(),this._viewer.clock.multiplier=1,this}},Hi=qn;var Jn=class{constructor(e){this._viewer=e,this._delegate=new i.PrimitiveCollection,this._viewer.scene.primitives.add(this._delegate)}_lerp(e,t,r=100){let s=[];for(let a=0;a<r;a++){let o=i.Math.lerp(e.lng,t.lng,a/r),l=i.Math.lerp(e.lat,t.lat,a/r),h=e.alt-(e.alt-t.alt)*(a/r);s.push({lng:o,lat:l,alt:h})}return s}_createLine(e,t){let r=new i.PolylineGeometry({positions:e,width:3,vertexFormat:i.PolylineMaterialAppearance.VERTEX_FORMAT,arcType:i.ArcType.NONE}),s=t.withAlpha(.6),a=new i.PolylineColorAppearance({translucent:t.alpha!==1}),o=new i.PolylineColorAppearance({translucent:s.alpha!==1});return new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:r,attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(t),depthFailColor:i.ColorGeometryInstanceAttribute.fromColor(s)}}),appearance:a,depthFailAppearance:o,asynchronous:!0})}start(e,t,r,s){e=y.parsePosition(e),t=y.parsePosition(t);let a=this._lerp(e,t,s),o=a.map(d=>g.transformWGS84ToCartographic(d)),l=a.map(d=>g.transformWGS84ToCartesian(d)),h=this._viewer.terrainProvider&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)?i.sampleTerrainMostDetailed(this._viewer.terrainProvider,o):Promise.resolve([]),c=this._viewer.scene.clampToHeightSupported?this._viewer.scene.clampToHeightMostDetailed(l,r):Promise.resolve([]);return Promise.all([h,c]).then(([d,u])=>{let _=[],m=0;return d.forEach((p,T)=>{let v=Math.max(p.height||0,u[T]?i.Cartographic.fromCartesian(u[T]).height:0);(a[T].alt<v&&m===0||m>=1&&(a[T].alt>v&&m%2!==0||a[T].alt<v&&m%2===0))&&(_.push(a[T]),m++)}),_}).then(d=>{d.length?(this._delegate.add(this._createLine([g.transformWGS84ToCartesian(e),g.transformWGS84ToCartesian(d[0])],i.Color.GREEN)),d.forEach((u,_)=>{let m=d[_+1];m=m?g.transformWGS84ToCartesian(m):g.transformWGS84ToCartesian(t),this._delegate.add(this._createLine([g.transformWGS84ToCartesian(u),m],_%2===0?i.Color.RED:i.Color.HOTPINK))})):this._delegate.add(this._createLine([g.transformWGS84ToCartesian(e),g.transformWGS84ToCartesian(t)],i.Color.GREEN))}),this}stop(){return this._delegate.removeAll(),this}},Wi=Jn;var pu=`uniform float czzj;\r
1815
1814
  uniform float dis;\r
1816
1815
  uniform float spzj;\r
1817
1816
  uniform vec3 visibleColor;\r
@@ -1957,17 +1956,17 @@ void main() {\r
1957
1956
  out_FragColor = mix(color, vec4(disVisibleColor, 1.0), mixNum);\r
1958
1957
  }\r
1959
1958
  }\r
1960
- `;var hf={visibleColor:new i.Color(0,1,0,1),disVisibleColor:new i.Color(1,0,0,1),showHelp:!1,mixNum:1,gridColor:i.Color.YELLOW,lineColor:i.Color.YELLOW.withAlpha(.3)},on=class{constructor(e){this._viewer=e,this._frustum=void 0,this._camera=void 0,this._viewShadowMap=void 0,this._delegate=void 0,this._options={},this._linePrimitive=void 0,this._ellipsoidPrimitive=void 0,this._viewer.scene.primitives.add(this)}_updateCameraState(e){let t=u.transformWGS84ToCartesian(e),r=re.getViewPosition(e,this._frustum.far);this._viewer&&(this._camera||(this._camera=new i.Camera(this._viewer.scene)),this._camera.frustum=this._frustum,re.setCamera(this._camera,t,r,e.roll))}_updateHelpPrimitive(e){this._viewer.scene.primitives.remove(this._ellipsoidPrimitive),this._viewer.scene.primitives.remove(this._linePrimitive);let t=i.Transforms.headingPitchRollToFixedFrame(u.transformWGS84ToCartesian(e),new i.HeadingPitchRoll((-Math.PI+this._frustum.fov)/2+i.Math.toRadians(e.heading),i.Math.toRadians(e.pitch),i.Math.toRadians(e.roll))),r=new i.Cartesian3(this._frustum.far,this._frustum.far,this._frustum.far),s=new i.EllipsoidOutlineGeometry({radii:r,innerRadii:i.Cartesian3.divideByScalar(r,20,new i.Cartesian3),minimumClock:0,maximumClock:this._frustum.fov,minimumCone:(Math.PI-this._frustum.fovy)/2,maximumCone:i.Math.toRadians(110)});this._linePrimitive=this._viewer.scene.primitives.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:s,attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(this._options.lineColor)}}),appearance:new i.PerInstanceColorAppearance({flat:!0,renderState:{lineWidth:Math.min(2,this._viewer.scene.maximumAliasedLineWidth)}}),modelMatrix:t})),s=new i.EllipsoidGeometry({radii:r,minimumClock:0,maximumClock:this._frustum.fov,minimumCone:(Math.PI-this._frustum.fovy)/2,maximumCone:i.Math.toRadians(110)}),this._ellipsoidPrimitive=this._viewer.scene.primitives.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:s}),appearance:new i.MaterialAppearance({translucent:!1,material:i.Material.fromType(i.Material.GridType,{color:this._options.gridColor,lineCount:new i.Cartesian2(200,200)})}),modelMatrix:t}))}_createPostProcessStage(){return new i.PostProcessStage({fragmentShader:gd,uniforms:{czzj:()=>i.Math.toDegrees(this._frustum.fovy),dis:()=>this._frustum.far,spzj:()=>i.Math.toDegrees(this._frustum.fov),visibleColor:()=>this._options.visibleColor,disVisibleColor:()=>this._options.disVisibleColor,mixNum:()=>this._options.mixNum,stcshadow:()=>this._viewShadowMap._shadowMapTexture,_shadowMap_matrix:()=>this._viewShadowMap._shadowMapMatrix,shadowMap_lightPositionEC:()=>this._viewShadowMap._lightPositionEC,shadowMap_lightDirectionEC:()=>this._viewShadowMap._lightDirectionEC,shadowMap_lightUp:()=>this._viewShadowMap._lightCamera.up,shadowMap_lightDir:()=>this._viewShadowMap._lightCamera.direction,shadowMap_lightRight:()=>this._viewShadowMap._lightCamera.right,shadowMap_texelSizeDepthBiasAndNormalShadingSmooth:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(1/this._viewShadowMap._textureSize.x,1/this._viewShadowMap._textureSize.y,e.depthBias,e.normalShadingSmooth,new i.Cartesian4)},shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(e.normalOffsetScale,this._viewShadowMap._distance,this._viewShadowMap.maximumDistance,this._viewShadowMap._darkness,new i.Cartesian4)}}})}update(){this._viewShadowMap&&this._viewer.scene.frameState.shadowMaps.push(this._viewShadowMap)}start(e,t,r,s,a={}){return this._options={...hf,...a},this._frustum=new i.PerspectiveFrustum({fov:i.Math.toRadians(r),aspectRatio:s,far:t,near:.05}),e=g.parsePosition(e),this._updateCameraState(e),this._viewShadowMap=new i.ShadowMap({lightCamera:this._camera,enable:!1,isPointLight:!1,isSpotLight:!0,cascadesEnabled:!1,context:this._viewer.scene.context,pointLightRadius:this._frustum.far,darkness:1}),this._delegate||(this._delegate=this._createPostProcessStage(),this._viewer.scene.postProcessStages.add(this._delegate),this._delegate.enabled=!0),this._options.showHelp?this._updateHelpPrimitive(e):(this._ellipsoidPrimitive&&this._viewer.scene.primitives.remove(this._ellipsoidPrimitive),this._linePrimitive&&this._viewer.scene.primitives.remove(this._linePrimitive),this._ellipsoidPrimitive=void 0,this._linePrimitive=void 0),this}isDestroyed(){return!1}stop(){return this._delegate&&this._viewer.scene.postProcessStages.remove(this._delegate),this._ellipsoidPrimitive&&this._viewer.scene.primitives.remove(this._ellipsoidPrimitive),this._linePrimitive&&this._viewer.scene.primitives.remove(this._linePrimitive),this._delegate=void 0,this._ellipsoidPrimitive=void 0,this._linePrimitive=void 0,this._viewShadowMap=void 0,this._frustum=void 0,this}},gi=on;var cf={CONTOUR_LINE:"ContourLine",SHADOWS:"Shadows",SIGHT_CIRCLE:"SightCircle",SIGHT_LINE:"SightLine",VIEWSHED:"Viewshed"},Se=cf;var nn=class{constructor(e){this._contourLine=new ui(e),this._shadows=new fi(e),this._sightLine=new _i(e),this._viewshed=new gi(e)}contourLine(e,t,r){return this._contourLine.start(e,t,r),this}shadows(e,t){return this._shadows.start(e||new Date,t||1600),this}sightLine(e,t,r=[],s=10){return!e||!t?this:(this._sightLine.start(e,t,r.map(a=>a.delegate||a),s),this)}sightCircle(e,t,r,s=10){if(!e||!t)return this;let a=i.EllipseGeometryLibrary.computeEllipsePositions({center:u.transformWGS84ToCartesian(e),semiMajorAxis:+t,semiMinorAxis:+t,rotation:0,granularity:.03},!1,!0);return i.Cartesian3.unpackArray(a.outerPositions).forEach(n=>{this.sightLine(e,u.transformCartesianToWGS84(n),r||[],s)}),this}viewshed(e,t,r,s=1.3,a={}){return!e||!t||!r?this:(this._viewshed.start(e,t,r,s,a),this)}deactivate(e){switch(e){case Se.CONTOUR_LINE:this._contourLine.stop();break;case Se.SHADOWS:this._shadows.stop();break;case Se.SIGHT_CIRCLE:case Se.SIGHT_LINE:this._sightLine.stop();break;case Se.VIEWSHED:this._viewshed.stop();break;default:this._contourLine.stop(),this._shadows.stop(),this._sightLine.stop(),this._viewshed.stop();break}return this}},yd=nn;var pf={UP:"up",DOWN:"down",LEFT:"left",RIGHT:"right",FRONT:"front",BACK:"back",NONE:"none"},fe=pf;var df={edgeWidth:0,edgeColor:i.Color.WHITE,unionClippingRegions:!1},ln=class{constructor(e={}){this._options={...df,...e},this._direction=void 0,this._distance=0,this._angle=0,this._positions=void 0,this._planeCollection=new i.ClippingPlaneCollection({edgeWidth:this._options.edgeWidth,edgeColor:this._options.edgeColor,unionClippingRegions:this._options.unionClippingRegions}),this._enable=!1}get positions(){return this._positions}set positions(e){this._positions=g.parsePositions(e),this._direction=void 0,this._mountPlanes()}get direction(){return this._direction}set direction(e){this._positions=[],this._direction=e,this._mountPlanes()}get distance(){return this._distance}set distance(e){this._distance=+e,this._planeCollection._planes.forEach(t=>{t.distance=+e})}get angle(){return this._angle}set angle(e){this._angle=+e,this._planeCollection._planes.forEach(t=>{if(e){let r=i.Matrix3.fromRotationZ(i.Math.toRadians(+e));i.Matrix3.multiplyByVector(r,t.normal,t.normal)}})}get enable(){return this._enable}set enable(e){this._enable!==e&&(this._enable=e,this._planeCollection.enabled=this._enable,this._state=this._enable?m.ENABLED:m.DISABLED,this._enableHook&&this._enableHook())}get state(){return this._state}_enableHook(){}_mountPlanes(){}_getDirectionNoraml(e){let t;switch(e){case fe.UP:t=new i.Cartesian3(0,0,1);break;case fe.DOWN:t=new i.Cartesian3(0,0,-1);break;case fe.LEFT:t=new i.Cartesian3(-1,0,0);break;case fe.RIGHT:t=new i.Cartesian3(1,0,0);break;case fe.FRONT:t=new i.Cartesian3(0,-1,0);break;case fe.BACK:t=new i.Cartesian3(0,1,0);break;default:break}return t}_isCcw(e){if(!e||e.length<3)return!1;let t=u.transformWGS84ToCartesian(this._positions[0]),r=u.transformWGS84ToCartesian(this._positions[1]),s=u.transformWGS84ToCartesian(this._positions[2]);return(s.y-r.y)*(r.x-t.x)-(r.y-t.y)*(s.x-r.x)>0}computeGlobePlanes(){let e=[];if(this._positions&&this._positions.length>=3){let t=this._isCcw(this._positions),r=this._positions.length;for(let s=0;s<r;s++){let a=(s+1)%r;if(this._positions[s].lng===this._positions[a].lng&&this._positions[s].lat===this._positions[a].lat&&this._positions[s].alt===this._positions[a].lat)continue;let o=u.transformWGS84ToCartesian(this._positions[s]),n=u.transformWGS84ToCartesian(this._positions[a]),h=i.Cartesian3.cross(o,t?i.Cartesian3.subtract(o,n,new i.Cartesian3):i.Cartesian3.subtract(n,o,new i.Cartesian3),new i.Cartesian3);i.Cartesian3.normalize(h,h),e.push(new i.ClippingPlane(h,this._distance||0))}}return e}computeModelPlanes(e){let t=[],r=i.Matrix4.inverseTransformation(e,new i.Matrix4);if(this._positions&&this._positions.length===2){let s=i.Cartesian3.UNIT_Z,a=i.Matrix4.multiplyByPoint(r,u.transformWGS84ToCartesian(this._positions[0]),new i.Cartesian3),o=i.Matrix4.multiplyByPoint(r,u.transformWGS84ToCartesian(this._positions[1]),new i.Cartesian3),n=i.Cartesian3.subtract(o,a,new i.Cartesian3);i.Cartesian3.normalize(n,n);let h=i.Cartesian3.cross(s,n,new i.Cartesian3);t.push(new i.ClippingPlane(h,this._distance||0))}else if(this._positions&&this._positions.length>=3){let s=i.Cartesian3.UNIT_Z,a=this._isCcw(this._positions),o=this._positions.length;for(let n=0;n<o;n++){let h=(n+1)%o;if(this._positions[n].lng===this._positions[h].lng&&this._positions[n].lat===this._positions[h].lat&&this._positions[n].alt===this._positions[h].lat)continue;let c=i.Matrix4.multiplyByPoint(r,u.transformWGS84ToCartesian(this._positions[n]),new i.Cartesian3),p=i.Matrix4.multiplyByPoint(r,u.transformWGS84ToCartesian(this._positions[h]),new i.Cartesian3),f=i.Cartesian3.cross(s,i.Cartesian3.normalize(a?i.Cartesian3.subtract(c,p,new i.Cartesian3):i.Cartesian3.subtract(p,c,new i.Cartesian3),new i.Cartesian3),new i.Cartesian3);t.push(new i.ClippingPlane(f,this._distance||0))}}else if(this._direction&&this._direction!==fe.NONE){let s=this._getDirectionNoraml(this._direction);if(this._angle){let a=i.Matrix3.fromRotationZ(i.Math.toRadians(this._angle));i.Matrix3.multiplyByVector(a,s,s)}s&&t.push(new i.ClippingPlane(s,this._distance||0))}return t}},qe=ln;var hn=class extends qe{constructor(e,t={}){super(t),this._viewer=e,this._planeCollection.unionClippingRegions=!0,this._viewer.scene.globe.clippingPlanes=this._planeCollection}_mountPlanes(){let e=this.computeGlobePlanes();this._planeCollection.removeAll(),e.forEach(t=>{this._planeCollection.add(t)})}},vd=hn;var mf={lerpInterval:50,bottomImage:"",sideImage:""},cn=class extends qe{constructor(e,t={}){super({...mf,...t}),this._viewer=e,this._viewer.scene.globe.clippingPlanes=this._planeCollection,this._height=5,this._layer=new i.PrimitiveCollection,this._viewer.scene.primitives.add(this._layer)}get height(){return this._height}set height(e){this._height=e,this._layer.removeAll(),this._drawPrimitive()}_enableHook(){this._layer.show=this._enable}_drawPrimitive(){if(this._planeCollection.length)if(this._createBottomPolygon(),this._viewer.terrainProvider&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)){let e=[],t=this._positions.length,r=this._options.lerpInterval;for(let s=0;s<t;s++){let a=(s+1)%t,o=u.transformWGS84ToCartographic(this._positions[s]),n=u.transformWGS84ToCartographic(this._positions[a]);for(let h=0;h<r;h++){let c=i.Math.lerp(o.longitude,n.longitude,h/r),p=i.Math.lerp(o.latitude,n.latitude,h/r);e.push(new i.Cartographic(c,p))}}i.sampleTerrainMostDetailed(this._viewer.terrainProvider,e).then(s=>{this._createSideWall(s.map(a=>i.Cartesian3.fromRadians(a.longitude,a.latitude)),s.map(a=>a.height))})}else this._createSideWall(this._positions.map(e=>u.transformWGS84ToCartesian(e)),this._positions.map(e=>e.alt))}_mountPlanes(){this._layer.removeAll(),this._planeCollection.removeAll(),this.computeGlobePlanes().forEach(t=>{this._planeCollection.add(t)}),this._drawPrimitive()}_getMinHeight(){let e=this._positions[0].alt;return this._positions.forEach(t=>{e=Math.min(e,t.alt)}),e-this._height}_createBottomPolygon(){let e=this._getMinHeight(),t=this._positions.map(a=>({lng:a.lng,lat:a.lat,alt:e})),r=new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(u.transformWGS84ArrayToCartesianArray(t)),perPositionHeight:!0}),s=i.PolygonGeometry.createGeometry(r);this._layer.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:s}),appearance:new i.MaterialAppearance({material:i.Material.fromType(i.Material.ImageType,{image:this._options.bottomImage,repeat:new i.Cartesian2(5,5)})}),asynchronous:!1}))}_createSideWall(e,t){let r=this._getMinHeight(),s=e.map(()=>r),a=new i.WallGeometry({positions:e.concat(e[0]),maximumHeights:s.concat(s[0]),minimumHeights:t.concat(t[0])}),o=i.WallGeometry.createGeometry(a);this._layer.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:o}),appearance:new i.MaterialAppearance({material:i.Material.fromType(i.Material.ImageType,{image:this._options.sideImage,repeat:new i.Cartesian2(5,5)})}),asynchronous:!1}))}},wd=cn;var pn=class extends qe{constructor(e,t={}){super(t),this._tileset=e,this._delegate=e.delegate}_mountPlanes(){this._planeCollection.removeAll(),this._delegate.then(e=>{let t=e.root.transform,r=this.computeModelPlanes(t);this._planeCollection.modelMatrix=t,r.forEach(s=>{this._planeCollection.add(s)}),e.clippingPlanes=this._planeCollection})}computePlanes(){}},xd=pn;var uf={disappearHeight:1e3,disappearSeconds:.5,appearSeconds:.5},dn=class{constructor(e,t=[],r={}){this._viewer=e,this._models=t.map(s=>s.delegate||s)||[],this._options={...uf,...r},this._oriPositions=this._models.map(s=>s.position.getValue(i.JulianDate.now()))||[],this._spreadtPositions=[],this._lastPositions=[],this._currentIndex=-1}get models(){return this._models}set models(e){this._models=e.map(t=>t.delegate||t)||[],this._oriPositions=this._models.map(t=>t.position.getValue(i.JulianDate.now()))||[],this._spreadtPositions=[],this._lastPositions=[],this._currentIndex=-1}spread(e,t=2,r=1){if(e<=0)return this;let s=i.JulianDate.now();return this._models.forEach((a,o)=>{let n=a.position.getValue(s);if(n){let h=new i.SampledPositionProperty;h.forwardExtrapolationType=r;let c=i.Cartographic.fromCartesian(n);c.height+=e*o,h.addSample(i.JulianDate.addSeconds(s,-1,new i.JulianDate),n),h.addSample(i.JulianDate.addSeconds(s,t,new i.JulianDate),i.Cartographic.toCartesian(c)),a.position=h,this._spreadtPositions[o]=i.Cartographic.toCartesian(c)}else{let h=i.Cartographic.fromCartesian(this._spreadtPositions[o]||this._oriPositions[o]);h.height+=e*o,this._spreadtPositions[o]=i.Cartographic.toCartesian(h)}}),this}combine(e=2){let t=i.JulianDate.now();return this._models.forEach((r,s)=>{let a=r.position.getValue(t);if(this._spreadtPositions[s]&&a){let o=new i.SampledPositionProperty;o.forwardExtrapolationType=i.ExtrapolationType.HOLD,o.addSample(i.JulianDate.addSeconds(t,-1,new i.JulianDate),this._spreadtPositions[s]),o.addSample(i.JulianDate.addSeconds(t,e,new i.JulianDate),this._oriPositions[s]),r.position=o}}),this._currentIndex=-1,this._spreadtPositions=[],this._lastPositions=[],this}showModel(e){if(e>this._models.length-1||this._currentIndex===e)return this;let t=i.JulianDate.now(),r=this._models.length;return this._models.forEach((s,a)=>{let o=s.position.getValue(t),n=new i.SampledPositionProperty;if(a>e&&(n.forwardExtrapolationType=i.ExtrapolationType.NONE,o)){let h=i.Cartographic.fromCartesian(o);h.height+=this._options.disappearHeight/r*(a+1),n.addSample(i.JulianDate.addSeconds(t,-1,new i.JulianDate),o),n.addSample(i.JulianDate.addSeconds(t,this._options.disappearSeconds,new i.JulianDate),i.Cartographic.toCartesian(h)),s.position=n,this._lastPositions[a]=i.Cartographic.toCartesian(h)}!o&&e>=a&&(n.forwardExtrapolationType=i.ExtrapolationType.HOLD,n.addSample(i.JulianDate.addSeconds(t,-1,new i.JulianDate),this._lastPositions[a]),n.addSample(i.JulianDate.addSeconds(t,this._options.appearSeconds,new i.JulianDate),this._spreadtPositions[a]||this._oriPositions[a]),s.position=n,this._lastPositions[a]=this._spreadtPositions[a]||this._oriPositions[a])}),this._currentIndex=e,this}restore(){return this._models.forEach((e,t)=>{e.position=this._oriPositions[t]}),this._currentIndex=-1,this._lastPositions=[],this._spreadtPositions=[],this}},Cd=dn;var mn=class{static pointBuffer(e,t,r=8){var n;let s=te("turf");if(!s)throw"missing turf";let a=s.point(g.parsePointCoordToArray(e)),o=s.buffer(a,t,{units:"meters",steps:r});return((n=o==null?void 0:o.geometry)==null?void 0:n.coordinates[0])||[]}static polylineBuffer(e,t,r=8){var n;let s=te("turf");if(!s)throw"missing turf";let a=s.lineString(g.parsePolylineCoordToArray(e)),o=s.buffer(a,t,{units:"meters",steps:r});return((n=o==null?void 0:o.geometry)==null?void 0:n.coordinates[0])||[]}static polygonBuffer(e,t,r=8){var n;let s=te("turf");if(!s)throw"missing turf";let a=s.polygon(g.parsePolygonCoordToArray(e,!0)),o=s.buffer(a,t,{units:"meters",steps:r});return((n=o==null?void 0:o.geometry)==null?void 0:n.coordinates[0])||[]}static sector(e,t,r,s,a=64){var c;let o=te("turf");if(!o)throw"missing turf";let n=o.point(g.parsePointCoordToArray(e)),h=o.sector(n,t,r,s,{units:"meters",steps:a});return((c=h==null?void 0:h.geometry)==null?void 0:c.coordinates[0])||[]}static transformPolylineScale(e,t){var o;let r=te("turf");if(!r)throw"missing turf";let s=r.lineString(g.parsePolylineCoordToArray(e)),a=r.transformScale(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates)||[]}static transformPolygonScale(e,t){var o;let r=te("turf");if(!r)throw"missing turf";let s=r.polygon(g.parsePolygonCoordToArray(e,!0)),a=r.transformScale(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates[0])||[]}static transformPolylineRotate(e,t){var o;let r=te("turf");if(!r)throw"missing turf";let s=r.lineString(g.parsePolylineCoordToArray(e)),a=r.transformRotate(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates)||[]}static transformPolygonRotate(e,t){var o;let r=te("turf");if(!r)throw"missing turf";let s=r.polygon(g.parsePolygonCoordToArray(e,!0)),a=r.transformRotate(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates[0])||[]}},Td=mn;var B7=i.Cartesian2,U7=i.Cartesian3,V7=i.Matrix3,j7=i.Matrix4,Z7=i.Material,Y7=i.SceneMode,J7=i.SkyBox,q7=i.Color,X7=i.Rectangle,Q7=i.ShadowMode,K7=i.JulianDate,$7=i.HeightReference,ez=i.HorizontalOrigin,tz=i.VerticalOrigin,iz=i.CallbackProperty,rz=i.ClassificationType,sz=i.Cesium3DTileStyle,az=i.GeographicTilingScheme,oz=i.WebMercatorTilingScheme,nz=i.ColorMaterialProperty,lz=i.ImageMaterialProperty,hz=i.PolylineDashMaterialProperty,cz=i.PolylineGlowMaterialProperty,pz=i.PolylineOutlineMaterialProperty,dz=i.PolylineArrowMaterialProperty,mz=i.writeTextToCanvas,uz=i.CustomShaderMode,fz=i.CustomShaderTranslucencyMode,_z=i.CustomShader,gz=i.UniformType,yz=i.Ellipsoid,vz=i.Resource,wz=i.createGooglePhotorealistic3DTileset,xz=i.createElevationBandMaterial,Cz=i.ModelAnimationLoop,Tz=i.ClippingPlane,Ez=i.ClippingPlaneCollection,Pz=i.ClippingPolygon,Mz=i.ClippingPolygonCollection;globalThis.__cmdOut=()=>{window.setTimeout(console.clear.bind(console,"")),window.setTimeout(console.log.bind(console,`%c
1959
+ `;var Q0={visibleColor:new i.Color(0,1,0,1),disVisibleColor:new i.Color(1,0,0,1),showHelp:!1,mixNum:1,gridColor:i.Color.YELLOW,lineColor:i.Color.YELLOW.withAlpha(.3)},Xn=class{constructor(e){this._viewer=e,this._frustum=void 0,this._camera=void 0,this._viewShadowMap=void 0,this._delegate=void 0,this._options={},this._linePrimitive=void 0,this._ellipsoidPrimitive=void 0,this._viewer.scene.primitives.add(this)}_updateCameraState(e){let t=g.transformWGS84ToCartesian(e),r=le.getViewPosition(e,this._frustum.far);this._viewer&&(this._camera||(this._camera=new i.Camera(this._viewer.scene)),this._camera.frustum=this._frustum,le.setCamera(this._camera,t,r,e.roll))}_updateHelpPrimitive(e){this._viewer.scene.primitives.remove(this._ellipsoidPrimitive),this._viewer.scene.primitives.remove(this._linePrimitive);let t=i.Transforms.headingPitchRollToFixedFrame(g.transformWGS84ToCartesian(e),new i.HeadingPitchRoll((-Math.PI+this._frustum.fov)/2+i.Math.toRadians(e.heading),i.Math.toRadians(e.pitch),i.Math.toRadians(e.roll))),r=new i.Cartesian3(this._frustum.far,this._frustum.far,this._frustum.far),s=new i.EllipsoidOutlineGeometry({radii:r,innerRadii:i.Cartesian3.divideByScalar(r,20,new i.Cartesian3),minimumClock:0,maximumClock:this._frustum.fov,minimumCone:(Math.PI-this._frustum.fovy)/2,maximumCone:i.Math.toRadians(110)});this._linePrimitive=this._viewer.scene.primitives.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:s,attributes:{color:i.ColorGeometryInstanceAttribute.fromColor(this._options.lineColor)}}),appearance:new i.PerInstanceColorAppearance({flat:!0,renderState:{lineWidth:Math.min(2,this._viewer.scene.maximumAliasedLineWidth)}}),modelMatrix:t})),s=new i.EllipsoidGeometry({radii:r,minimumClock:0,maximumClock:this._frustum.fov,minimumCone:(Math.PI-this._frustum.fovy)/2,maximumCone:i.Math.toRadians(110)}),this._ellipsoidPrimitive=this._viewer.scene.primitives.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:s}),appearance:new i.MaterialAppearance({translucent:!1,material:i.Material.fromType(i.Material.GridType,{color:this._options.gridColor,lineCount:new i.Cartesian2(200,200)})}),modelMatrix:t}))}_createPostProcessStage(){return new i.PostProcessStage({fragmentShader:pu,uniforms:{czzj:()=>i.Math.toDegrees(this._frustum.fovy),dis:()=>this._frustum.far,spzj:()=>i.Math.toDegrees(this._frustum.fov),visibleColor:()=>this._options.visibleColor,disVisibleColor:()=>this._options.disVisibleColor,mixNum:()=>this._options.mixNum,stcshadow:()=>this._viewShadowMap._shadowMapTexture,_shadowMap_matrix:()=>this._viewShadowMap._shadowMapMatrix,shadowMap_lightPositionEC:()=>this._viewShadowMap._lightPositionEC,shadowMap_lightDirectionEC:()=>this._viewShadowMap._lightDirectionEC,shadowMap_lightUp:()=>this._viewShadowMap._lightCamera.up,shadowMap_lightDir:()=>this._viewShadowMap._lightCamera.direction,shadowMap_lightRight:()=>this._viewShadowMap._lightCamera.right,shadowMap_texelSizeDepthBiasAndNormalShadingSmooth:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(1/this._viewShadowMap._textureSize.x,1/this._viewShadowMap._textureSize.y,e.depthBias,e.normalShadingSmooth,new i.Cartesian4)},shadowMap_normalOffsetScaleDistanceMaxDistanceAndDarkness:()=>{let e=this._viewShadowMap._isPointLight?this._viewShadowMap._pointBias:this._viewShadowMap._primitiveBias;return i.Cartesian4.fromElements(e.normalOffsetScale,this._viewShadowMap._distance,this._viewShadowMap.maximumDistance,this._viewShadowMap._darkness,new i.Cartesian4)}}})}update(){this._viewShadowMap&&this._viewer.scene.frameState.shadowMaps.push(this._viewShadowMap)}start(e,t,r,s,a={}){return this._options={...Q0,...a},this._frustum=new i.PerspectiveFrustum({fov:i.Math.toRadians(r),aspectRatio:s,far:t,near:.05}),e=y.parsePosition(e),this._updateCameraState(e),this._viewShadowMap=new i.ShadowMap({lightCamera:this._camera,enable:!1,isPointLight:!1,isSpotLight:!0,cascadesEnabled:!1,context:this._viewer.scene.context,pointLightRadius:this._frustum.far,darkness:1}),this._delegate||(this._delegate=this._createPostProcessStage(),this._viewer.scene.postProcessStages.add(this._delegate),this._delegate.enabled=!0),this._options.showHelp?this._updateHelpPrimitive(e):(this._ellipsoidPrimitive&&this._viewer.scene.primitives.remove(this._ellipsoidPrimitive),this._linePrimitive&&this._viewer.scene.primitives.remove(this._linePrimitive),this._ellipsoidPrimitive=void 0,this._linePrimitive=void 0),this}isDestroyed(){return!1}stop(){return this._delegate&&this._viewer.scene.postProcessStages.remove(this._delegate),this._ellipsoidPrimitive&&this._viewer.scene.primitives.remove(this._ellipsoidPrimitive),this._linePrimitive&&this._viewer.scene.primitives.remove(this._linePrimitive),this._delegate=void 0,this._ellipsoidPrimitive=void 0,this._linePrimitive=void 0,this._viewShadowMap=void 0,this._frustum=void 0,this}},Bi=Xn;var K0={CONTOUR_LINE:"ContourLine",SHADOWS:"Shadows",SIGHT_CIRCLE:"SightCircle",SIGHT_LINE:"SightLine",VIEWSHED:"Viewshed"},We=K0;var Qn=class{constructor(e){this._contourLine=new Gi(e),this._shadows=new Hi(e),this._sightLine=new Wi(e),this._viewshed=new Bi(e)}contourLine(e,t,r){return this._contourLine.start(e,t,r),this}shadows(e,t){return this._shadows.start(e||new Date,t||1600),this}sightLine(e,t,r=[],s=10){return!e||!t?this:(this._sightLine.start(e,t,r.map(a=>a.delegate||a),s),this)}sightCircle(e,t,r,s=10){if(!e||!t)return this;let a=i.EllipseGeometryLibrary.computeEllipsePositions({center:g.transformWGS84ToCartesian(e),semiMajorAxis:+t,semiMinorAxis:+t,rotation:0,granularity:.03},!1,!0);return i.Cartesian3.unpackArray(a.outerPositions).forEach(l=>{this.sightLine(e,g.transformCartesianToWGS84(l),r||[],s)}),this}viewshed(e,t,r,s=1.3,a={}){return!e||!t||!r?this:(this._viewshed.start(e,t,r,s,a),this)}deactivate(e){switch(e){case We.CONTOUR_LINE:this._contourLine.stop();break;case We.SHADOWS:this._shadows.stop();break;case We.SIGHT_CIRCLE:case We.SIGHT_LINE:this._sightLine.stop();break;case We.VIEWSHED:this._viewshed.stop();break;default:this._contourLine.stop(),this._shadows.stop(),this._sightLine.stop(),this._viewshed.stop();break}return this}},mu=Qn;var $0={UP:"up",DOWN:"down",LEFT:"left",RIGHT:"right",FRONT:"front",BACK:"back",NONE:"none"},Te=$0;var eg={edgeWidth:0,edgeColor:i.Color.WHITE,unionClippingRegions:!1},Kn=class{constructor(e={}){this._options={...eg,...e},this._direction=void 0,this._distance=0,this._angle=0,this._positions=void 0,this._planeCollection=new i.ClippingPlaneCollection({edgeWidth:this._options.edgeWidth,edgeColor:this._options.edgeColor,unionClippingRegions:this._options.unionClippingRegions}),this._enable=!1}get positions(){return this._positions}set positions(e){this._positions=y.parsePositions(e),this._direction=void 0,this._mountPlanes()}get direction(){return this._direction}set direction(e){this._positions=[],this._direction=e,this._mountPlanes()}get distance(){return this._distance}set distance(e){this._distance=+e,this._planeCollection._planes.forEach(t=>{t.distance=+e})}get angle(){return this._angle}set angle(e){this._angle=+e,this._planeCollection._planes.forEach(t=>{if(e){let r=i.Matrix3.fromRotationZ(i.Math.toRadians(+e));i.Matrix3.multiplyByVector(r,t.normal,t.normal)}})}get enable(){return this._enable}set enable(e){this._enable!==e&&(this._enable=e,this._planeCollection.enabled=this._enable,this._state=this._enable?f.ENABLED:f.DISABLED,this._enableHook&&this._enableHook())}get state(){return this._state}_enableHook(){}_mountPlanes(){}_getDirectionNoraml(e){let t;switch(e){case Te.UP:t=new i.Cartesian3(0,0,1);break;case Te.DOWN:t=new i.Cartesian3(0,0,-1);break;case Te.LEFT:t=new i.Cartesian3(-1,0,0);break;case Te.RIGHT:t=new i.Cartesian3(1,0,0);break;case Te.FRONT:t=new i.Cartesian3(0,-1,0);break;case Te.BACK:t=new i.Cartesian3(0,1,0);break;default:break}return t}_isCcw(e){if(!e||e.length<3)return!1;let t=g.transformWGS84ToCartesian(this._positions[0]),r=g.transformWGS84ToCartesian(this._positions[1]),s=g.transformWGS84ToCartesian(this._positions[2]);return(s.y-r.y)*(r.x-t.x)-(r.y-t.y)*(s.x-r.x)>0}computeGlobePlanes(){let e=[];if(this._positions&&this._positions.length>=3){let t=this._isCcw(this._positions),r=this._positions.length;for(let s=0;s<r;s++){let a=(s+1)%r;if(this._positions[s].lng===this._positions[a].lng&&this._positions[s].lat===this._positions[a].lat&&this._positions[s].alt===this._positions[a].lat)continue;let o=g.transformWGS84ToCartesian(this._positions[s]),l=g.transformWGS84ToCartesian(this._positions[a]),h=i.Cartesian3.cross(o,t?i.Cartesian3.subtract(o,l,new i.Cartesian3):i.Cartesian3.subtract(l,o,new i.Cartesian3),new i.Cartesian3);i.Cartesian3.normalize(h,h),e.push(new i.ClippingPlane(h,this._distance||0))}}return e}computeModelPlanes(e){let t=[],r=i.Matrix4.inverseTransformation(e,new i.Matrix4);if(this._positions&&this._positions.length===2){let s=i.Cartesian3.UNIT_Z,a=i.Matrix4.multiplyByPoint(r,g.transformWGS84ToCartesian(this._positions[0]),new i.Cartesian3),o=i.Matrix4.multiplyByPoint(r,g.transformWGS84ToCartesian(this._positions[1]),new i.Cartesian3),l=i.Cartesian3.subtract(o,a,new i.Cartesian3);i.Cartesian3.normalize(l,l);let h=i.Cartesian3.cross(s,l,new i.Cartesian3);t.push(new i.ClippingPlane(h,this._distance||0))}else if(this._positions&&this._positions.length>=3){let s=i.Cartesian3.UNIT_Z,a=this._isCcw(this._positions),o=this._positions.length;for(let l=0;l<o;l++){let h=(l+1)%o;if(this._positions[l].lng===this._positions[h].lng&&this._positions[l].lat===this._positions[h].lat&&this._positions[l].alt===this._positions[h].lat)continue;let c=i.Matrix4.multiplyByPoint(r,g.transformWGS84ToCartesian(this._positions[l]),new i.Cartesian3),d=i.Matrix4.multiplyByPoint(r,g.transformWGS84ToCartesian(this._positions[h]),new i.Cartesian3),u=i.Cartesian3.cross(s,i.Cartesian3.normalize(a?i.Cartesian3.subtract(c,d,new i.Cartesian3):i.Cartesian3.subtract(d,c,new i.Cartesian3),new i.Cartesian3),new i.Cartesian3);t.push(new i.ClippingPlane(u,this._distance||0))}}else if(this._direction&&this._direction!==Te.NONE){let s=this._getDirectionNoraml(this._direction);if(this._angle){let a=i.Matrix3.fromRotationZ(i.Math.toRadians(this._angle));i.Matrix3.multiplyByVector(a,s,s)}s&&t.push(new i.ClippingPlane(s,this._distance||0))}return t}},ht=Kn;var $n=class extends ht{constructor(e,t={}){super(t),this._viewer=e,this._planeCollection.unionClippingRegions=!0,this._viewer.scene.globe.clippingPlanes=this._planeCollection}_mountPlanes(){let e=this.computeGlobePlanes();this._planeCollection.removeAll(),e.forEach(t=>{this._planeCollection.add(t)})}},uu=$n;var tg={lerpInterval:50,bottomImage:"",sideImage:""},el=class extends ht{constructor(e,t={}){super({...tg,...t}),this._viewer=e,this._viewer.scene.globe.clippingPlanes=this._planeCollection,this._height=5,this._layer=new i.PrimitiveCollection,this._viewer.scene.primitives.add(this._layer)}get height(){return this._height}set height(e){this._height=e,this._layer.removeAll(),this._drawPrimitive()}_enableHook(){this._layer.show=this._enable}_drawPrimitive(){if(this._planeCollection.length)if(this._createBottomPolygon(),this._viewer.terrainProvider&&!(this._viewer.terrainProvider instanceof i.EllipsoidTerrainProvider)){let e=[],t=this._positions.length,r=this._options.lerpInterval;for(let s=0;s<t;s++){let a=(s+1)%t,o=g.transformWGS84ToCartographic(this._positions[s]),l=g.transformWGS84ToCartographic(this._positions[a]);for(let h=0;h<r;h++){let c=i.Math.lerp(o.longitude,l.longitude,h/r),d=i.Math.lerp(o.latitude,l.latitude,h/r);e.push(new i.Cartographic(c,d))}}i.sampleTerrainMostDetailed(this._viewer.terrainProvider,e).then(s=>{this._createSideWall(s.map(a=>i.Cartesian3.fromRadians(a.longitude,a.latitude)),s.map(a=>a.height))})}else this._createSideWall(this._positions.map(e=>g.transformWGS84ToCartesian(e)),this._positions.map(e=>e.alt))}_mountPlanes(){this._layer.removeAll(),this._planeCollection.removeAll(),this.computeGlobePlanes().forEach(t=>{this._planeCollection.add(t)}),this._drawPrimitive()}_getMinHeight(){let e=this._positions[0].alt;return this._positions.forEach(t=>{e=Math.min(e,t.alt)}),e-this._height}_createBottomPolygon(){let e=this._getMinHeight(),t=this._positions.map(a=>({lng:a.lng,lat:a.lat,alt:e})),r=new i.PolygonGeometry({polygonHierarchy:new i.PolygonHierarchy(g.transformWGS84ArrayToCartesianArray(t)),perPositionHeight:!0}),s=i.PolygonGeometry.createGeometry(r);this._layer.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:s}),appearance:new i.MaterialAppearance({material:i.Material.fromType(i.Material.ImageType,{image:this._options.bottomImage,repeat:new i.Cartesian2(5,5)})}),asynchronous:!1}))}_createSideWall(e,t){let r=this._getMinHeight(),s=e.map(()=>r),a=new i.WallGeometry({positions:e.concat(e[0]),maximumHeights:s.concat(s[0]),minimumHeights:t.concat(t[0])}),o=i.WallGeometry.createGeometry(a);this._layer.add(new i.Primitive({geometryInstances:new i.GeometryInstance({geometry:o}),appearance:new i.MaterialAppearance({material:i.Material.fromType(i.Material.ImageType,{image:this._options.sideImage,repeat:new i.Cartesian2(5,5)})}),asynchronous:!1}))}},fu=el;var tl=class extends ht{constructor(e,t={}){super(t),this._tileset=e,this._delegate=e.delegate}_mountPlanes(){this._planeCollection.removeAll(),this._delegate.then(e=>{let t=e.root.transform,r=this.computeModelPlanes(t);this._planeCollection.modelMatrix=t,r.forEach(s=>{this._planeCollection.add(s)}),e.clippingPlanes=this._planeCollection})}computePlanes(){}},_u=tl;var ig={disappearHeight:1e3,disappearSeconds:.5,appearSeconds:.5},il=class{constructor(e,t=[],r={}){this._viewer=e,this._models=t.map(s=>s.delegate||s)||[],this._options={...ig,...r},this._oriPositions=this._models.map(s=>s.position.getValue(i.JulianDate.now()))||[],this._spreadtPositions=[],this._lastPositions=[],this._currentIndex=-1}get models(){return this._models}set models(e){this._models=e.map(t=>t.delegate||t)||[],this._oriPositions=this._models.map(t=>t.position.getValue(i.JulianDate.now()))||[],this._spreadtPositions=[],this._lastPositions=[],this._currentIndex=-1}spread(e,t=2,r=1){if(e<=0)return this;let s=i.JulianDate.now();return this._models.forEach((a,o)=>{let l=a.position.getValue(s);if(l){let h=new i.SampledPositionProperty;h.forwardExtrapolationType=r;let c=i.Cartographic.fromCartesian(l);c.height+=e*o,h.addSample(i.JulianDate.addSeconds(s,-1,new i.JulianDate),l),h.addSample(i.JulianDate.addSeconds(s,t,new i.JulianDate),i.Cartographic.toCartesian(c)),a.position=h,this._spreadtPositions[o]=i.Cartographic.toCartesian(c)}else{let h=i.Cartographic.fromCartesian(this._spreadtPositions[o]||this._oriPositions[o]);h.height+=e*o,this._spreadtPositions[o]=i.Cartographic.toCartesian(h)}}),this}combine(e=2){let t=i.JulianDate.now();return this._models.forEach((r,s)=>{let a=r.position.getValue(t);if(this._spreadtPositions[s]&&a){let o=new i.SampledPositionProperty;o.forwardExtrapolationType=i.ExtrapolationType.HOLD,o.addSample(i.JulianDate.addSeconds(t,-1,new i.JulianDate),this._spreadtPositions[s]),o.addSample(i.JulianDate.addSeconds(t,e,new i.JulianDate),this._oriPositions[s]),r.position=o}}),this._currentIndex=-1,this._spreadtPositions=[],this._lastPositions=[],this}showModel(e){if(e>this._models.length-1||this._currentIndex===e)return this;let t=i.JulianDate.now(),r=this._models.length;return this._models.forEach((s,a)=>{let o=s.position.getValue(t),l=new i.SampledPositionProperty;if(a>e&&(l.forwardExtrapolationType=i.ExtrapolationType.NONE,o)){let h=i.Cartographic.fromCartesian(o);h.height+=this._options.disappearHeight/r*(a+1),l.addSample(i.JulianDate.addSeconds(t,-1,new i.JulianDate),o),l.addSample(i.JulianDate.addSeconds(t,this._options.disappearSeconds,new i.JulianDate),i.Cartographic.toCartesian(h)),s.position=l,this._lastPositions[a]=i.Cartographic.toCartesian(h)}!o&&e>=a&&(l.forwardExtrapolationType=i.ExtrapolationType.HOLD,l.addSample(i.JulianDate.addSeconds(t,-1,new i.JulianDate),this._lastPositions[a]),l.addSample(i.JulianDate.addSeconds(t,this._options.appearSeconds,new i.JulianDate),this._spreadtPositions[a]||this._oriPositions[a]),s.position=l,this._lastPositions[a]=this._spreadtPositions[a]||this._oriPositions[a])}),this._currentIndex=e,this}restore(){return this._models.forEach((e,t)=>{e.position=this._oriPositions[t]}),this._currentIndex=-1,this._lastPositions=[],this._spreadtPositions=[],this}},gu=il;var rl=class{static pointBuffer(e,t,r=8){var l;let s=oe("turf");if(!s)throw"missing turf";let a=s.point(y.parsePointCoordToArray(e)),o=s.buffer(a,t,{units:"meters",steps:r});return((l=o==null?void 0:o.geometry)==null?void 0:l.coordinates[0])||[]}static polylineBuffer(e,t,r=8){var l;let s=oe("turf");if(!s)throw"missing turf";let a=s.lineString(y.parsePolylineCoordToArray(e)),o=s.buffer(a,t,{units:"meters",steps:r});return((l=o==null?void 0:o.geometry)==null?void 0:l.coordinates[0])||[]}static polygonBuffer(e,t,r=8){var l;let s=oe("turf");if(!s)throw"missing turf";let a=s.polygon(y.parsePolygonCoordToArray(e,!0)),o=s.buffer(a,t,{units:"meters",steps:r});return((l=o==null?void 0:o.geometry)==null?void 0:l.coordinates[0])||[]}static sector(e,t,r,s,a=64){var c;let o=oe("turf");if(!o)throw"missing turf";let l=o.point(y.parsePointCoordToArray(e)),h=o.sector(l,t,r,s,{units:"meters",steps:a});return((c=h==null?void 0:h.geometry)==null?void 0:c.coordinates[0])||[]}static transformPolylineScale(e,t){var o;let r=oe("turf");if(!r)throw"missing turf";let s=r.lineString(y.parsePolylineCoordToArray(e)),a=r.transformScale(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates)||[]}static transformPolygonScale(e,t){var o;let r=oe("turf");if(!r)throw"missing turf";let s=r.polygon(y.parsePolygonCoordToArray(e,!0)),a=r.transformScale(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates[0])||[]}static transformPolylineRotate(e,t){var o;let r=oe("turf");if(!r)throw"missing turf";let s=r.lineString(y.parsePolylineCoordToArray(e)),a=r.transformRotate(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates)||[]}static transformPolygonRotate(e,t){var o;let r=oe("turf");if(!r)throw"missing turf";let s=r.polygon(y.parsePolygonCoordToArray(e,!0)),a=r.transformRotate(s,t);return((o=a==null?void 0:a.geometry)==null?void 0:o.coordinates[0])||[]}},yu=rl;var hG=i.Cartesian2,cG=i.Cartesian3,dG=i.Matrix3,pG=i.Matrix4,mG=i.Material,uG=i.SceneMode,fG=i.SkyBox,_G=i.Color,gG=i.Rectangle,yG=i.ShadowMode,vG=i.JulianDate,wG=i.HeightReference,xG=i.HorizontalOrigin,CG=i.VerticalOrigin,TG=i.CallbackProperty,EG=i.ClassificationType,PG=i.Cesium3DTileStyle,MG=i.GeographicTilingScheme,bG=i.WebMercatorTilingScheme,AG=i.ColorMaterialProperty,SG=i.ImageMaterialProperty,IG=i.PolylineDashMaterialProperty,DG=i.PolylineGlowMaterialProperty,LG=i.PolylineOutlineMaterialProperty,RG=i.PolylineArrowMaterialProperty,kG=i.writeTextToCanvas,OG=i.CustomShaderMode,NG=i.CustomShaderTranslucencyMode,zG=i.CustomShader,FG=i.UniformType,GG=i.Ellipsoid,HG=i.Resource,WG=i.createGooglePhotorealistic3DTileset,BG=i.createElevationBandMaterial,UG=i.ModelAnimationLoop,VG=i.ClippingPlane,ZG=i.ClippingPlaneCollection,jG=i.ClippingPolygon,YG=i.ClippingPolygonCollection;globalThis.__cmdOut=()=>{window.setTimeout(console.clear.bind(console,"")),window.setTimeout(console.log.bind(console,`%c
1961
1960
  \u{1F30D} PanGu Gis SDK
1962
1961
  %c
1963
1962
  \u76D8\u53E4\u5730\u7406\u4FE1\u606F\u7CFB\u7EDF %c
1964
1963
  PanGu Gis For Cesium SDK %c
1965
1964
 
1966
- \u7248\u672C: 5.0.0 - 2025-07-10
1967
- Cesium\u7248\u672C\uFF1A1.131.0
1965
+ \u7248\u672C: 5.0.11 - 2025-08-30
1966
+ EUM\u7248\u672C\uFF1A1.131.0
1968
1967
  \u5F00\u53D1\u4F5C\u8005: Lucas Xu <xulei0857@qq.com>
1969
1968
  \u6388\u6743\u6E56\u5317\u8702\u4E91\u8F6F\u4EF6\u6709\u9650\u516C\u53F8-\u6C38\u4E45\u4F7F\u7528\u6B64\u8F6F\u4EF6\u5F53\u524D\u7248\u672C\u3002
1970
1969
 
1971
1970
 
1972
1971
  \u{1F4DE}\u5FAE\u4FE1: 13635783999
1973
- \u{1F3E0}\u5B98\u7F51: https://www.pggis.com`,"font-size:24px;padding-left:50px;color:#F08519","font-size:22px;padding-left:50px;color:#F08519","font-size:14px;padding-left:50px;color:#008AFF;font-style:oblique","font-size:15px;color:#008AFF"))};var Pd="./libs/pg-sdk/resources/",Ed=Pd;lt("baseUrl",Pd);var Sz={set baseUrl(l){Ed=l,lt("baseUrl",l)},get baseUrl(){return Ed}},Iz="5.0.0";export{yd as Analysis,Se as AnalysisType,q as AnimationType,vp as AroundPoint,yp as AroundView,Be as AttackArrow,Ue as Billboard,Pt as BillboardPrimitive,jl as BounceBillboardPrimitive,Yl as BounceLabelPrimitive,lh as Box,iz as CallbackProperty,re as CameraUtil,cd as CameraVideo,Dh as CameraVideoLayer,B7 as Cartesian2,U7 as Cartesian3,_d as ChartLayer,At as Circle,Tc as CircleBlurMaterialProperty,Ec as CircleDiffuseMaterialProperty,Pc as CircleFadeMaterialProperty,Mc as CirclePulseMaterialProperty,xp as CircleScan,Ac as CircleScanMaterialProperty,bc as CircleSpiralMaterialProperty,Sc as CircleVaryMaterialProperty,Ic as CircleWaveMaterialProperty,rz as ClassificationType,fe as ClippingDirection,Tz as ClippingPlane,Ez as ClippingPlaneCollection,Pz as ClippingPolygon,Mz as ClippingPolygonCollection,Jl as CloudPrimitive,Il as ClusterLayer,q7 as Color,nz as ColorMaterialProperty,ui as ContourLine,me as CoordTransform,hh as Corridor,Ol as CustomBillboard,Ml as CustomGeographicTilingScheme,kl as CustomLabel,Al as CustomMercatorTilingScheme,_z as CustomShader,uz as CustomShaderMode,fz as CustomShaderTranslucencyMode,ch as Cylinder,Dl as CzmlLayer,ql as DiffuseWallPrimitive,Wl as DivIcon,b as DomUtil,xt as DoubleArrow,zl as DynamicBillboard,Ll as DynamicLayer,Nl as DynamicModel,ju as Effect,Xl as ElecEllipsoidPrimitive,ph as Ellipse,yz as Ellipsoid,Dc as EllipsoidElectricMaterialProperty,Lc as EllipsoidTrailMaterialProperty,Rl as FeatureGridLayer,Ct as FineArrow,Ql as FlowLinePrimitive,Cp as Flying,Tt as GatheringPlace,rt as GeoJsonLayer,Td as GeoTools,az as GeographicTilingScheme,vd as GlobeClipping,Tp as GlobeRotate,gh as GpxLayer,yh as GraticuleLayer,vh as GroundPrimitiveLayer,cl as GroundSkyBox,Th as HeatMapLayer,$7 as HeightReference,ez as HorizontalOrigin,Eh as HtmlLayer,Gl as I3S,Ph as I3SLayer,lz as ImageMaterialProperty,Pl as ImageryLayerFactory,z as ImageryType,K7 as JulianDate,Vp as KeyboardRoaming,Mh as KmlLayer,bt as Label,Ah as LabelLayer,Mt as LabelPrimitive,M as Layer,Sl as LayerGroup,it as LayerType,$l as LightCylinderPrimitive,We as LngLatArray,k as LngLatPoint,Z7 as Material,Fl as Math,V7 as Matrix3,j7 as Matrix4,sd as Measure,le as MeasureType,vt as Model,Cz as ModelAnimationLoop,Re as ModelEventType,Cd as ModelManager,eh as ModelPrimitive,R as MouseEventType,Me as MouseMode,v as Overlay,N as OverlayType,g as P,g as Parse,mh as Plane,dd as PlaneVideo,Lh as PlaneVideoLayer,Wu as Plot,w as PlotUtil,St as Point,ih as PointPrimitive,Ve as Polygon,je as Polyline,dz as PolylineArrowMaterialProperty,hz as PolylineDashMaterialProperty,Rc as PolylineFlickerMaterialProperty,Oc as PolylineFlowMaterialProperty,cz as PolylineGlowMaterialProperty,kc as PolylineImageTrailMaterialProperty,zc as PolylineLightingMaterialProperty,Nc as PolylineLightingTrailMaterialProperty,pz as PolylineOutlineMaterialProperty,rh as PolylinePrimitive,Fc as PolylineTrailMaterialProperty,fh as PolylineVolume,U as Position,ld as PositionEditor,di as PositionEditorType,bh as PrimitiveLayer,Wc as RadarLineMaterialProperty,Pp as RadarScan,Gc as RadarSweepMaterialProperty,Hc as RadarWaveMaterialProperty,Sh as RasterTileLayer,It as Rect,X7 as Rectangle,vz as Resource,jp as RoamingController,Zp as RoamingPath,Rt as S3MLayer,sh as ScanCirclePrimitive,D as SceneEventType,Y7 as SceneMode,Q7 as ShadowMode,fi as Shadows,_i as SightLine,J7 as SkyBox,dh as Sphere,ut as SurfacePoint,Rn as SurfacePoints,u as T,Et as TailedAttackArrow,wd as TerrainClipping,bl as TerrainFactory,Ae as TerrainType,Q as TileSetEventType,Hl as Tileset,xd as TilesetClipping,Rt as TilesetLayer,sz as TilesetStyle,Ih as TopoJsonLayer,Jp as Track,Yp as TrackController,be as TrackViewMode,ah as TrailLinePrimitive,u as Transform,gz as UniformType,x as Util,Iz as VERSION,ze as VectorLayer,tz as VerticalOrigin,oh as VideoPrimitive,mm as Viewer,gi as Viewshed,_h as Wall,Bc as WallImageTrailMaterialProperty,Vc as WallLineTrailMaterialProperty,Zc as WallTrailMaterialProperty,Yc as WaterMaterialProperty,nh as WaterPrimitive,Xu as Weather,oz as WebMercatorTilingScheme,kh as WindLayer,Sz as config,xz as createElevationBandMaterial,wz as createGooglePhotorealistic3DTileset,te as getLib,wn as registerLib,mz as writeTextToCanvas};
1972
+ \u{1F3E0}\u5B98\u7F51: https://www.pggis.com`,"font-size:24px;padding-left:50px;color:#F08519","font-size:22px;padding-left:50px;color:#F08519","font-size:14px;padding-left:50px;color:#008AFF;font-style:oblique","font-size:15px;color:#008AFF"))};var xu="./libs/pg-sdk/resources/",vu=xu,wu=!1;Je("baseUrl",xu);var rg={set baseUrl(n){vu=n,Je("baseUrl",n)},get baseUrl(){return vu}};function XG(n={}){return wu?Promise.resolve():new Promise((e,t)=>{n.baseUrl&&(rg.baseUrl=n.baseUrl),n.echarts&&(registerEcharts(n.echarts),registerLib("echarts",n.echarts)),n.turf&&registerLib("turf",n.turf),wu=!0,Je("isInitialized",!0),Je("baseUrl",this.config.baseUrl),e()}).catch(e=>{throw new Error(e.message)})}var QG="5.0.11";export{mu as Analysis,We as AnalysisType,$ as AnimationType,um as AroundPoint,mm as AroundView,it as AttackArrow,rt as Billboard,Xt as BillboardPrimitive,Hc as BounceBillboardPrimitive,Bc as BounceLabelPrimitive,rd as Box,TG as CallbackProperty,le as CameraUtil,au as CameraVideo,Md as CameraVideoLayer,hG as Cartesian2,cG as Cartesian3,du as ChartLayer,Kt as Circle,yp as CircleBlurMaterialProperty,vp as CircleDiffuseMaterialProperty,wp as CircleFadeMaterialProperty,xp as CirclePulseMaterialProperty,_m as CircleScan,Cp as CircleScanMaterialProperty,Tp as CircleSpiralMaterialProperty,Ep as CircleVaryMaterialProperty,Pp as CircleWaveMaterialProperty,EG as ClassificationType,Te as ClippingDirection,VG as ClippingPlane,ZG as ClippingPlaneCollection,jG as ClippingPolygon,YG as ClippingPolygonCollection,Uc as CloudPrimitive,Pc as ClusterLayer,_G as Color,AG as ColorMaterialProperty,Gi as ContourLine,we as CoordTransform,sd as Corridor,Sc as CustomBillboard,_h as CustomGeographicTilingScheme,Ic as CustomLabel,gh as CustomMercatorTilingScheme,zG as CustomShader,OG as CustomShaderMode,NG as CustomShaderTranslucencyMode,ad as Cylinder,Mc as CzmlLayer,Vc as DiffuseWallPrimitive,kc as DivIcon,D as DomUtil,jt as DoubleArrow,Dc as DynamicBillboard,bc as DynamicLayer,Lc as DynamicModel,k0 as Effect,Zc as ElecEllipsoidPrimitive,od as Ellipse,GG as Ellipsoid,Mp as EllipsoidElectricMaterialProperty,bp as EllipsoidTrailMaterialProperty,Ac as FeatureGridLayer,Yt as FineArrow,jc as FlowLinePrimitive,gm as Flying,qt as GatheringPlace,xt as GeoJsonLayer,et as GeoTerrainProvider,yu as GeoTools,MG as GeographicTilingScheme,uu as GlobeClipping,ym as GlobeRotate,pd as GpxLayer,md as GraticuleLayer,ud as GroundPrimitiveLayer,eh as GroundSkyBox,yd as HeatMapLayer,wG as HeightReference,xG as HorizontalOrigin,vd as HtmlLayer,Oc as I3S,wd as I3SLayer,SG as ImageMaterialProperty,fh as ImageryLayerFactory,U as ImageryType,vG as JulianDate,Gm as KeyboardRoaming,xd as KmlLayer,$t as Label,Cd as LabelLayer,Qt as LabelPrimitive,S as Layer,Ec as LayerGroup,wt as LayerType,qc as LightCylinderPrimitive,Qe as LngLatArray,B as LngLatPoint,mG as Material,Rc as Math,dG as Matrix3,pG as Matrix4,$m as Measure,_e as MeasureType,Vt as Model,UG as ModelAnimationLoop,Ue as ModelEventType,gu as ModelManager,Jc as ModelPrimitive,W as MouseEventType,Ge as MouseMode,w as Overlay,V as OverlayType,y as P,y as Parse,ld as Plane,nu as PlaneVideo,bd as PlaneVideoLayer,A0 as Plot,x as PlotUtil,ei as Point,Qc as PointPrimitive,st as Polygon,at as Polyline,RG as PolylineArrowMaterialProperty,IG as PolylineDashMaterialProperty,Ap as PolylineFlickerMaterialProperty,Sp as PolylineFlowMaterialProperty,DG as PolylineGlowMaterialProperty,Ip as PolylineImageTrailMaterialProperty,Dp as PolylineLightingMaterialProperty,Lp as PolylineLightingTrailMaterialProperty,LG as PolylineOutlineMaterialProperty,Kc as PolylinePrimitive,Rp as PolylineTrailMaterialProperty,cd as PolylineVolume,q as Position,ru as PositionEditor,zi as PositionEditorType,Td as PrimitiveLayer,kp as RadarLineMaterialProperty,wm as RadarScan,Op as RadarSweepMaterialProperty,Np as RadarWaveMaterialProperty,Ed as RasterTileLayer,ti as Rect,gG as Rectangle,HG as Resource,Hm as RoamingController,Wm as RoamingPath,si as S3MLayer,$c as ScanCirclePrimitive,N as SceneEventType,uG as SceneMode,yG as ShadowMode,Hi as Shadows,Wi as SightLine,fG as SkyBox,nd as Sphere,St as SurfacePoint,Tl as SurfacePoints,g as T,Jt as TailedAttackArrow,Wt as TdtTerrainProvider,fu as TerrainClipping,Cc as TerrainFactory,ue as TerrainType,Bt as Thing,ie as TileSetEventType,Nc as Tileset,_u as TilesetClipping,si as TilesetLayer,PG as TilesetStyle,Pd as TopoJsonLayer,Um as Track,Bm as TrackController,He as TrackViewMode,ed as TrailLinePrimitive,g as Transform,Tc as Underground,FG as UniformType,C as Util,QG as VERSION,qe as VectorLayer,CG as VerticalOrigin,td as VideoPrimitive,_f as Viewer,Bi as Viewshed,dd as Wall,zp as WallImageTrailMaterialProperty,Gp as WallLineTrailMaterialProperty,Wp as WallTrailMaterialProperty,Bp as WaterMaterialProperty,id as WaterPrimitive,G0 as Weather,bG as WebMercatorTilingScheme,Id as WindLayer,rg as config,BG as createElevationBandMaterial,WG as createGooglePhotorealistic3DTileset,oe as getLib,XG as ready,cl as registerLib,kG as writeTextToCanvas};