earthsdk3-cesium 3.5.0-beta.15 → 3.5.0-beta.16

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 (20) hide show
  1. package/dist/earthsdk3-cesium.iife.js +5 -5
  2. package/dist/earthsdk3-cesium.js +9 -9
  3. package/dist/earthsdk3-cesium.umd.cjs +5 -5
  4. package/dist/types/CzmObjects/general/CzmESPolygonWithHole/index.d.ts.map +1 -1
  5. package/dist/types/CzmObjects/general/CzmESSignalTransmission/XbsjPolyline/XbsjPolylineGeometry.d.ts +3 -0
  6. package/dist/types/CzmObjects/general/CzmESSignalTransmission/XbsjPolyline/xbsjCreateODLinesPrimitive.d.ts +29 -0
  7. package/dist/types/CzmObjects/general/CzmESVideoFusion/XbsjCameraVideo/XbsjCameraVideo.d.ts +18 -0
  8. package/dist/types/CzmObjects/general/CzmESViewShed/XbsjViewshed/XbsjViewshed.d.ts +16 -0
  9. package/dist/types/ESCesiumViewer/BackGroundImage/BackGroundImage.d.ts +5 -0
  10. package/dist/types/ESCesiumViewer/LocalSkyBox/SkyAtmosphere.d.ts +14 -0
  11. package/dist/types/ESCesiumViewer/initCesiumViewer/GaussianSplattingExtend/GaussianSplatPipelineStage.d.ts +12 -0
  12. package/dist/types/ESCesiumViewer/initCesiumViewer/GaussianSplattingExtend/GaussianSplatTexturePipelineStage.d.ts +11 -0
  13. package/dist/types/ESCesiumViewer/initCesiumViewer/fixGoogleEarth/cesiumFixGoogleEarth.d.ts +1 -0
  14. package/dist/types/ESObjects/ESGeHistoryImagery/index.d.ts +1 -0
  15. package/dist/types/ESObjects/ESGeHistoryImagery/index.d.ts.map +1 -1
  16. package/dist/types/__declares/cesium.d.ts +417 -0
  17. package/dist/types/utils/czmUtils/todo/generateCartesianArc/czm/generateCartesianArc.d.ts +8 -0
  18. package/dist/types/utils/generalUtils/geoPolylineToBezierSpline/bezierSpline/index.d.ts +37 -0
  19. package/dist/types/utils/generalUtils/geoPolylineToBezierSpline/bezierSpline/lib/spline.d.ts +62 -0
  20. package/package.json +1 -1
@@ -739,7 +739,7 @@ ${Cy}
739
739
  // out_FragColor = vec4(texture(u_gradientMap, vec2(a, .5)).rgb, (a + .1)*4.);
740
740
  out_FragColor = vec4(texture(u_gradientMap, vec2(a, .5)).rgb, a);
741
741
  }
742
- `,s.uniformMap={u_gradientMap:{type:"texture",id:"5d45a4a4-4f5d-4424-aea5-181de75bd13b"},u_stripMinMaxValue:[0,1],u_ratio:0};let l=this.disposeVar(a.react(void 0));{const c=this.disposeVar(a.createProcessingFromAsyncFunc(async d=>{l.value=void 0;const p=e.url??a.ESDataMesh.defaults.url;if(!p)return;await d.promise(a.sleep(200));const f=(e.maxTime??23)|0;l.value=await d.promise(uA(a.ESSceneObject.context.getStrFromEnv(typeof p=="string"?p:p.url),f+1))}));c.start();const u=this.disposeVar(a.createNextAnimateFrameEvent(e.urlChanged,e.maxTimeChanged));this.dispose(u.disposableOn(()=>c.restart()))}{class c{constructor(p){this._buffer=p}[Symbol.iterator](){return dA(this._buffer)}}const u=()=>{if(!l.value)return;const{vertexBuffer:d,propBuffers:p,indexBuffer:f}=l.value,{minPos:m,maxPos:g}=a.getMinMaxCorner(new c(d));s.setLocalAxisedBoundingBox(m,g);const y=(e.maxTime??23)|0;let _=(e.currentTime??a.ESDataMesh.defaults.currentTime)/y;_=_<0?0:_>1?1:_;const P=_*y;let C=_*y|0,S=P-C;if(C>=y&&(C=y-1,S=1),!Number.isFinite(S)){console.error("!Number.isFinite(rr)");debugger;return}if(s.indexTypedArray=f,!p[C]||!p[C+1]){console.error("!propBuffers[i] || !propBuffers[i + 1]");debugger}s.attributes={a_position:{typedArray:d,componentsPerAttribute:3},a_prop:{typedArray:p[C],componentsPerAttribute:3},a_prop2:{typedArray:p[C+1],componentsPerAttribute:3}},s.uniformMap={u_gradientMap:{type:"texture",id:`${r.id}`},u_stripMinMaxValue:[e.minPropValue??a.ESDataMesh.defaults.minPropValue,e.maxPropValue??a.ESDataMesh.defaults.maxPropValue],u_ratio:S}};u(),this.dispose(e.maxTimeChanged.disposableOn(u)),this.dispose(e.currentTimeChanged.disposableOn(u)),this.dispose(e.minPropValueChanged.disposableOn(u)),this.dispose(e.maxPropValueChanged.disposableOn(u)),this.dispose(l.changed.disposableOn(u))}}get czmCustomPrimitive(){return this._czmCustomPrimitive}get czmTexture(){return this._czmTexture}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmCustomPrimitive:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):(Dt(s,o,n,e,r,!0),!0):!1}};v(Ba,"type",Ba.register("ESCesiumViewer",a.ESDataMesh.type,Ba));let Jd=Ba;const Go=class Go extends a.Destroyable{constructor(e,n){super();v(this,"_pickedEvent",this.disposeVar(new a.Event));v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_heading",this.disposeVar(a.react(0)));v(this,"_textFunc",this.disposeVar(a.react(void 0)));const o=this;{const l=()=>{if(this.positions&&this.positions.length>=2){let u=0;this.arcType===void 0||this.arcType==="GEODESIC"?u=a.geoHeading(this.positions[0],this.positions[1]):this.arcType==="RHUMB"?u=a.geoRhumbHeading(this.positions[0],this.positions[1]):this.arcType==="NONE"?u=a.geoHeading(this.positions[0],this.positions[1]):console.warn(`未知的arcType: ${this.arcType},导致距离无法计算!`),this._heading.value=this.angleMode==="-180~180"?a.clampN180_180(u):a.clamp0_360(u)}};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.arcTypeChanged,this.angleModeChanged));this.dispose(c.disposableOn(l))}const s=this.disposeVar(new be(e,n));s.loop=!1,this.dispose(a.track([s,"allowPicking"],[o,"allowPicking"])),this.dispose(a.bind([s,"arcType"],[o,"arcType"])),this.dispose(a.bind([s,"color"],[o,"color"])),this.dispose(a.bind([s,"dashLength"],[o,"dashLength"])),this.dispose(a.bind([s,"dashPattern"],[o,"dashPattern"])),this.dispose(a.bind([s,"gapColor"],[o,"gapColor"])),this.dispose(a.bind([s,"hasArrow"],[o,"hasArrow"])),this.dispose(a.bind([s,"hasDash"],[o,"hasDash"])),this.dispose(a.bind([s,"positions"],[o,"positions"])),this.dispose(a.bind([s,"show"],[o,"show"])),this.dispose(a.bind([s,"width"],[o,"width"])),this.dispose(a.bind([s,"depthTest"],[o,"depthTest"])),this.dispose(a.bind([s,"ground"],[o,"strokeGround"])),this.dispose(o.flyToEvent.disposableOn(l=>{e.actived&&s.flyTo(l)}));const r=this.disposeVar(new We(e,n));this.dispose(a.bind([r,"shadowDom"],[o,"shadowDom"])),this.dispose(a.bind([r,"cssAllInitial"],[o,"cssAllInitial"])),this.dispose(a.bind([r,"show"],[o,"show"]));{const l=()=>{o.positions&&o.positions.length>=2?r.position=o.positions[1]:r.position=void 0};l(),this.dispose(o.positionsChanged.disposableOn(l))}{const l=()=>{const{heading:u}=o,d=(o.textFunc??Go.defaultTextFunc_度格式)(u);r.innerHTML=ao(`方向: ${d}`,24)};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(o.headingChanged,o.textFuncChanged));this.dispose(c.disposableOn(l))}this.ad(r.pickedEvent.don(l=>{Hi(l)===0&&this.pickedEvent.emit(l)}))}get pickedEvent(){return this._pickedEvent}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get heading(){return this._heading.value}get headingChanged(){return this._heading.changed}get textFunc(){return this._textFunc.value}set textFunc(e){this._textFunc.value=e}get textFuncChanged(){return this._textFunc.changed}};v(Go,"defaultTextFunc_度格式",e=>`${e.toFixed(5)}°`),v(Go,"defaultTextFunc_度分格式",e=>`${br(e,!0)}`),v(Go,"defaultTextFunc_度分秒格式",e=>`${br(e,!1)}`),v(Go,"defaults",{positions:[]});let Ao=Go;(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,positions:a.reactPositions(void 0),width:8,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!0,arcType:"GEODESIC",depthTest:!1,shadowDom:!1,cssAllInitial:!1,angleMode:"-180~180",strokeGround:!1})})(Ao||(Ao={})),a.extendClassProps(Ao.prototype,Ao.createDefaultProps);const Va=class Va extends vt{constructor(e,n){super(e,n);v(this,"_czmDirectionMeasurement");if(this._czmDirectionMeasurement=this.disposeVar(new Ao(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const s=this._czmDirectionMeasurement;s.angleMode="0~360",this.dispose(a.track([s,"show"],[e,"show"])),this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.bind([s,"positions"],[e,"points"])),this.dispose(a.bind([s,"strokeGround"],[e,"strokeGround"]));{const r=()=>{if(e.stroked)s.width=e.strokeWidth;else{s.width=0;return}s.width=e.strokeWidth,s.color=e.strokeColor;const u=e.strokeMaterial??"normal";u==="hasDash"?(s.hasDash=!0,s.hasArrow=!1):u==="hasArrow"?(s.hasDash=!1,s.hasArrow=!0):u==="normal"?(s.hasDash=!1,s.hasArrow=!1):(s.hasDash=!1,s.hasArrow=!0);const d=e.strokeStyle;if(d.material==="hasDash"&&d.materialParams)try{const p=d.materialParams;Reflect.has(p,"gapColor")&&(s.gapColor=p.gapColor??[0,0,0,0]),Reflect.has(p,"dashLength")&&(s.dashLength=p.dashLength),Reflect.has(p,"dashPattern")&&(s.dashPattern=p.dashPattern)}catch(p){console.error(p)}else s.gapColor=[0,0,0,0],s.dashLength=0,s.dashPattern=0};r();const l=this.disposeVar(a.createNextAnimateFrameEvent(e.strokeStyleChanged,e.strokedChanged));this.dispose(l.disposableOn(r))}this.dispose(s.pickedEvent.disposableOn(r=>{Hi(r)===0&&(e.allowPicking??!1)&&e.pickedEvent.emit(r)}))}get czmDirectionMeasurement(){return this._czmDirectionMeasurement}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmDirectionMeasurement:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,czmDirectionMeasurement:r}=this;return s.actived?o.flyInParam?super.flyIn(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Va,"type",Va.register("ESCesiumViewer",a.ESDirectionMeasurement.type,Va));let jd=Va;class Ls extends a.Destroyable{constructor(e,n){super();v(this,"_pickedEvent",this.disposeVar(new a.Event));v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_distances",this.disposeVar(a.reactArray([])));const o=async()=>{this.strokeGround&&e.viewer?this._distances.value=await Sg(e.viewer,this.positions??[]):this._distances.value=a.getDistancesFromPositions(this.positions??[],this.arcType)};o();const s=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.arcTypeChanged,this.strokeGroundChanged));this.dispose(s.disposableOn(o));const r=this.disposeVar(new be(e,n));r.loop=!1,this.dispose(a.track([r,"allowPicking"],[this,"allowPicking"])),this.dispose(a.bind([r,"arcType"],[this,"arcType"])),this.dispose(a.bind([r,"color"],[this,"color"])),this.dispose(a.bind([r,"dashLength"],[this,"dashLength"])),this.dispose(a.bind([r,"dashPattern"],[this,"dashPattern"])),this.dispose(a.bind([r,"gapColor"],[this,"gapColor"])),this.dispose(a.bind([r,"hasArrow"],[this,"hasArrow"])),this.dispose(a.bind([r,"hasDash"],[this,"hasDash"])),this.dispose(a.bind([r,"positions"],[this,"positions"])),this.dispose(a.bind([r,"show"],[this,"show"])),this.dispose(a.bind([r,"width"],[this,"width"])),this.dispose(a.bind([r,"depthTest"],[this,"depthTest"])),this.dispose(a.bind([r,"ground"],[this,"strokeGround"])),this.dispose(this.flyToEvent.disposableOn(l=>{e.actived&&r.flyTo(l)}));{const l=[],c=()=>{for(let d of l)d.destroy();l.length=0};this.dispose(c);const u=()=>{if(c(),!this.positions)return;if(this.positions.length>0&&this.distances.length>0){const p=Eu("起点",this.positions[0],e,n);p.dispose(a.track([p,"show"],[this,"show"])),p.dispose(a.track([p,"shadowDom"],[this,"shadowDom"])),p.dispose(a.track([p,"cssAllInitial"],[this,"cssAllInitial"])),l.push(p)}const d=this.distances.length;for(let p=0;p<d;++p){const f=this.distances[p],m=this.positions[p+1],g=Eu(`长度: ${Sc(f)}`,m,e,n);g.dispose(a.track([g,"show"],[this,"show"])),g.dispose(a.track([g,"shadowDom"],[this,"shadowDom"])),g.dispose(a.track([g,"cssAllInitial"],[this,"cssAllInitial"])),this.ad(g.pickedEvent.don(y=>{Hi(y)===0&&this.pickedEvent.emit(y)})),l.push(g)}};u(),this.dispose(this.distancesChanged.disposableOn(()=>a.inOrderRunning(u)))}}get pickedEvent(){return this._pickedEvent}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get distances(){return this._distances.value}get distancesChanged(){return this._distances.changed}}v(Ls,"defaults",{positions:[]}),(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,positions:a.reactPositions(void 0),width:1,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!1,arcType:"GEODESIC",depthTest:!1,shadowDom:!1,cssAllInitial:!1,strokeGround:!1})})(Ls||(Ls={})),a.extendClassProps(Ls.prototype,Ls.createDefaultProps);const Ua=class Ua extends vt{constructor(e,n){super(e,n);v(this,"_geoPolyline");if(this._geoPolyline=this.disposeVar(new be(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const s=this._geoPolyline;this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.bind([s,"positions"],[e,"points"])),this.dispose(a.track([s,"width"],[e,"strokeWidth"])),this.dispose(a.track([s,"color"],[e,"strokeColor"])),this.dispose(a.track([s,"ground"],[e,"strokeGround"]));{const r=()=>{s.show=e.show&&e.stroked};r();const l=this.disposeVar(a.createNextAnimateFrameEvent(e.showChanged,e.strokedChanged));this.dispose(l.disposableOn(r))}}get geoPolyline(){return this._geoPolyline}flyTo(e,n){const{sceneObject:o,czmViewer:s,geoPolyline:r}=this;return s.actived?o.flyToParam||o.flyInParam?(super.flyTo(e,n),!0):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,geoPolyline:r}=this;return s.actived?o.flyInParam?(super.flyIn(e,n),!0):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Ua,"type",Ua.register("ESCesiumViewer",a.ESGeoLineString.type,Ua));let Os=Ua;const Wa=class Wa extends Os{constructor(e,n){super(e,n);v(this,"_czmDistanceMeasurement");if(this._czmDistanceMeasurement=this.disposeVar(new Ls(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const{czmDistanceMeasurement:s}=this;this.dispose(a.track([s,"show"],[e,"show"])),this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.bind([s,"positions"],[e,"points"])),this.dispose(a.bind([s,"strokeGround"],[e,"strokeGround"]));{const r=()=>{if(e.stroked)s.width=e.strokeWidth;else{s.width=0;return}s.width=e.strokeWidth,s.color=e.strokeColor;const u=e.strokeMaterial??"normal";u==="hasDash"?(s.hasDash=!0,s.hasArrow=!1):u==="hasArrow"?(s.hasDash=!1,s.hasArrow=!0):(s.hasDash=!1,s.hasArrow=!1);const d=e.strokeStyle;if(d.material==="hasDash"&&d.materialParams)try{const p=d.materialParams;Reflect.has(p,"gapColor")&&(s.gapColor=p.gapColor??[0,0,0,0]),Reflect.has(p,"dashLength")&&(s.dashLength=p.dashLength),Reflect.has(p,"dashPattern")&&(s.dashPattern=p.dashPattern)}catch(p){console.error(p)}else s.gapColor=[0,0,0,0],s.dashLength=0,s.dashPattern=0};r();const l=this.disposeVar(a.createNextAnimateFrameEvent(e.strokeStyleChanged,e.strokedChanged));this.dispose(l.disposableOn(r))}this.dispose(s.pickedEvent.disposableOn(r=>{Hi(r)===0&&(e.allowPicking??!1)&&e.pickedEvent.emit(r)}))}get czmDistanceMeasurement(){return this._czmDistanceMeasurement}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmDistanceMeasurement:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,czmDistanceMeasurement:r}=this;return s.actived?o.flyInParam?super.flyIn(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Wa,"type",Wa.register("ESCesiumViewer",a.ESDistanceMeasurement.type,Wa));let ep=Wa;class Ns extends a.Destroyable{constructor(e,n){super();v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_id",this.disposeVar(a.react(a.createGuid())));n&&(this.id=n)}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get id(){return this._id.value}set id(e){this._id.value=e}get idChanged(){return this._id.changed}}(t=>{t.createDefaultProps=()=>({enabled:!0,showHelper:!0,allowPicking:!1,positions:a.reactPositions(void 0),reverse:!1,edgeColor:a.reactArray([1,1,1,1]),edgeWidth:2})})(Ns||(Ns={})),a.extendClassProps(Ns.prototype,Ns.createDefaultProps);class pA extends a.Destroyable{constructor(i,e){super(),this._czmESExcavate=i,this._eS3DTileset=e;for(let n=0;n<this._eS3DTileset.excavateId.length;n++){const o=this._eS3DTileset.excavateId[n];a.ESSceneObject.getSceneObjById(o)||this._eS3DTileset.excavateId.splice(n,1)}this._eS3DTileset.excavateId=[...this._eS3DTileset.excavateId,this._czmESExcavate.czmPolygonClipping.id],this.dispose(()=>{this._eS3DTileset.excavateId=[...this._eS3DTileset.excavateId.filter(n=>n!==this._czmESExcavate.czmPolygonClipping.id)]})}}class fA extends a.Destroyable{constructor(i){if(super(),this._czmESExcavate=i,!!this._czmESExcavate.viewer){for(let e=0;e<this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId.length;e++){const n=this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId[e];a.ESSceneObject.getSceneObjById(n)||this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId.splice(e,1)}this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId=[...this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId,this._czmESExcavate.czmPolygonClipping.id],this.dispose(()=>{this._czmESExcavate.viewer&&(this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId=[...this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId.filter(e=>e!==this._czmESExcavate.czmPolygonClipping.id)])})}}}const Ga=class Ga extends qt{constructor(e,n){super(e,n);v(this,"_czmPolygonClipping");v(this,"_tilesSceneObjectWithId");this._czmPolygonClipping=this.ad(new Ns(n,e.id)),this._tilesSceneObjectWithId=this.disposeVar(new a.ESSceneObjectWithId);const o=this.ad(a.react(this.sceneObject.targetID));if(this.ad(e.targetIDChanged.don(()=>{const l=a.ESSceneObject.getSceneObject(e.targetID);o.value=l?(l.components.main??l).id:""})),this.dispose(a.track([this._tilesSceneObjectWithId,"id"],o)),this.disposeVar(a.createNextAnimateFrameEvent(this.tilesSceneObjectWithId.sceneObjectChanged,this.sceneObject.showChanged)),!n.viewer)return;const r=this._czmPolygonClipping;r.showHelper=!1,this.dispose(a.bind([r,"positions"],[e,"points"])),this.dispose(a.track([r,"allowPicking"],[e,"allowPicking"]));{const l=()=>{r.reverse=e.mode!=="in"};l(),this.dispose(e.modeChanged.disposableOn(l))}a.registerCreatedEventUpdate(this,e,()=>{const l=this.disposeVar(a.createNextAnimateFrameEvent(this.tilesSceneObjectWithId.sceneObjectChanged,this.sceneObject.showChanged));this.disposeVar(new a.ObjResettingWithEvent(l,()=>{const{sceneObject:c,id:u}=this.tilesSceneObjectWithId;if(this.sceneObject.show)return u===""?new fA(this):!c||!(c instanceof a.ES3DTileset)?void 0:new pA(this,c)}))})}get czmPolygonClipping(){return this._czmPolygonClipping}get tilesSceneObjectWithId(){return this._tilesSceneObjectWithId}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmPolygonClipping:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Ga,"type",Ga.register("ESCesiumViewer",a.ESExcavate.type,Ga));let tp=Ga;const Ha=class Ha extends fe{constructor(e,n){super(e,n);v(this,"_czmFireParticleSystem");if(this._czmFireParticleSystem=this.disposeVar(new bi(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const s=this._czmFireParticleSystem;s.endColor=[1,1,0,.4],s.startColor=[1,0,0,.5],s.particleLife=1,s.emissionRate=30,s.lifetime=1,s.imageSize=[1,1],s.emitter={type:"CircleEmitter",radius:.1},s.sizeInMeters=!0;{const r=()=>{s.startScale=10*(e.scale[0]>0?e.scale[0]:1),s.endScale=5*(e.scale[0]>0?e.scale[0]:1),s.minimumSpeed=10*(e.scale[0]>0?e.scale[0]:1),s.maximumSpeed=15*(e.scale[0]>0?e.scale[0]:1)};r(),this.ad(e.scaleChanged.don(r))}this.dispose(a.bind([s,"position"],[e,"position"])),this.dispose(a.track([s,"translation"],[e,"translation"])),this.dispose(Ke([s,"rotation"],[e,"rotation"])),this.dispose(a.track([s,"show"],[e,"show"])),this.dispose(a.track([s,"image"],[e,"image"]))}get czmFireParticleSystem(){return this._czmFireParticleSystem}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmFireParticleSystem:r}=this;if(!s.actived)return!1;if(o.flyToParam||o.flyInParam)return super.flyTo(e,n);{const l=r.position;return ne(s.viewer,l,100,jt,e),o.flyOverEvent.emit(n,"over",s),!0}}};v(Ha,"type",Ha.register("ESCesiumViewer",a.ESFireParticleSystem.type,Ha));let ip=Ha;class Bs extends a.Destroyable{constructor(e,n){super();v(this,"_geoPath");v(this,"_geoPolyline");v(this,"_geoCanvasPointPoi");v(this,"_player");v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_currentDistance",this.disposeVar(a.react(0)));v(this,"_ratio",this.disposeVar(a.PlayerProperty.createPlayingRatio([this,"currentTime"],[this,"duration"])));this._geoPath=this.disposeVar(new a.ESPathImpl),this._geoPolyline=this.disposeVar(new be(e,n)),this._geoCanvasPointPoi=this.disposeVar(new _n(e,n)),this._player=this.disposeVar(new a.Player),this.dispose(a.bind([this._geoPolyline,"positions"],[this,"positions"])),this.dispose(a.track([this._geoPolyline,"width"],[this,"width"])),this.dispose(a.track([this._geoPolyline,"ground"],[this,"ground"])),this.dispose(a.track([this._geoPolyline,"color"],[this,"color"])),this.dispose(a.track([this._geoPolyline,"hasDash"],[this,"hasDash"])),this.dispose(a.track([this._geoPolyline,"gapColor"],[this,"gapColor"])),this.dispose(a.track([this._geoPolyline,"dashLength"],[this,"dashLength"])),this.dispose(a.track([this._geoPolyline,"dashPattern"],[this,"dashPattern"])),this.dispose(a.track([this._geoPolyline,"hasArrow"],[this,"hasArrow"])),this.dispose(a.track([this._geoPolyline,"depthTest"],[this,"depthTest"])),this.dispose(a.track([this._geoPolyline,"arcType"],[this,"arcType"])),this.dispose(a.track([this._geoPolyline,"show"],[this,"show"])),this.dispose(a.track([this._geoPolyline,"show"],[this,"polylineShow"])),this.dispose(a.track([this._geoPolyline,"allowPicking"],[this,"allowPicking"])),this.dispose(a.track([this._geoPath,"currentTime"],[this,"currentDistance"])),this.dispose(a.track([this._geoPath,"leadTime"],[this,"leadTime"])),this.dispose(a.track([this._geoPath,"trailTime"],[this,"trailTime"])),this.dispose(a.track([this._geoPath,"show"],[this,"show"])),this.dispose(a.track([this._geoPath,"currentPoiShow"],[this,"currentPoiShow"]));{const o=()=>{this._geoCanvasPointPoi.show=(this.show??!0)&&(this.currentPoiShow??!0)};o(),this.dispose(this.showChanged.disposableOn(o)),this.dispose(this.currentPoiShowChanged.disposableOn(o))}this.dispose(a.track([this._geoCanvasPointPoi,"position"],[this,"currentPosition"]));{const o=()=>{if(this.positions){const r=this.granularity*Math.PI/180,l=pu(this.positions,this.arcType??"GEODESIC",r);if(l){this._geoPath.timePosRots=l.timePosRots,this.rotationRadius.some(c=>c>0)?(this._geoPath.addAroundPoints(this.rotationRadius,!0),this._geoPath.computeRotIfUndefinedUsingLerp(!0),this._geoPath.rotLerpMode="Lerp"):(this._geoPath.computeRotIfUndefinedUsingPrevLine(!0),this._geoPath.rotLerpMode=this.rotLerpMode);return}}this._geoPath.timePosRots=[]};o();const s=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.arcTypeChanged,this.granularityChanged,this.rotationRadiusChanged,this.rotLerpModeChanged));this.dispose(s.disposableOn(o))}{const o=()=>{if((this._player.duration??3e3)<=0){this.currentDistance=0;return}const s=this.totalDistance*((this._player.currentTime??0)/(this._player.duration??3e3));Math.abs(s-this.currentDistance)>.01&&(this.currentDistance=s)};o(),this.dispose(this._player.currentTimeChanged.disposableOn(o))}{const o=()=>{if(this.totalDistance<=0){this._player.currentTime=0;return}const s=this.currentDistance/this.totalDistance*(this.duration??3e3);Math.abs(s-(this._player.currentTime??0))>.01&&(this._player.currentTime=s)};o(),this.dispose(this.currentDistanceChanged.disposableOn(o))}this.dispose(a.bind([this._player,"loop"],[this,"loop"])),this.dispose(a.bind([this._player,"currentTime"],[this,"currentTime"])),this.dispose(a.bind([this._player,"duration"],[this,"duration"])),this.dispose(a.bind([this._player,"playing"],[this,"playing"])),this.dispose(a.bind([this._player,"speed"],[this,"speed"])),this.dispose(this._flyToEvent.disposableOn(o=>{this._geoPolyline.flyTo(o)}))}get geoPath(){return this._geoPath}get geoPolyline(){return this._geoPolyline}get geoCanvasPointPoi(){return this._geoCanvasPointPoi}get player(){return this._player}get currentInfo(){return this._geoPath.currentInfo}get currentInfoChanged(){return this._geoPath.currentInfoChanged}get currentIndex(){return this._geoPath.currentIndex}get currentIndexChanged(){return this._geoPath.currentIndexChanged}get currentPosition(){return this._geoPath.currentPosition}get currentPositionChanged(){return this._geoPath.currentPositionChanged}get currentRotation(){return this._geoPath.currentRotation}get currentRotationChanged(){return this._geoPath.currentRotationChanged}get accumDistances(){return this._geoPath.accumDistances}get accumDistancesChanged(){return this._geoPath.accumDistancesChanged}get totalDistance(){return this._geoPath.totalDistance}get totalDistanceChanged(){return this._geoPath.totalDistanceChanged}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}subPath(e,n){const o=this._geoPath.subPath(e,n);if(o)return o.map(s=>s[1])}get currentDistance(){return this._currentDistance.value}set currentDistance(e){this._currentDistance.value=e}get currentDistanceChanged(){return this._currentDistance.changed}get ratio(){return this._ratio.value}set ratio(e){this._ratio.value=e}get ratioChanged(){return this._ratio.changed}get timePosRots(){return this.geoPath.timePosRots}}(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,currentPoiShow:!0,polylineShow:!0,positions:a.reactPositions(void 0),width:1,ground:!1,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!1,arcType:"GEODESIC",granularity:1,loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,depthTest:!1,leadTime:0,trailTime:0,rotationRadius:[0],rotLerpMode:"Next"})})(Bs||(Bs={})),a.extendClassProps(Bs.prototype,Bs.createDefaultProps);class qr extends a.Destroyable{constructor(e,n){super();v(this,"_geoPolylinePath");v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_currentDistance",this.disposeVar(a.react(0)));this._geoPolylinePath=this.disposeVar(new Bs(e,n)),this._geoPolylinePath.rotLerpMode="Lerp",this.dispose(a.bind([this._geoPolylinePath,"show"],[this,"show"])),this.dispose(a.bind([this._geoPolylinePath,"currentPoiShow"],[this,"currentPoiShow"])),this.dispose(a.bind([this._geoPolylinePath,"polylineShow"],[this,"polylineShow"])),this.dispose(a.bind([this._geoPolylinePath,"width"],[this,"width"])),this.dispose(a.bind([this._geoPolylinePath,"ground"],[this,"ground"])),this.dispose(a.bind([this._geoPolylinePath,"color"],[this,"color"])),this.dispose(a.bind([this._geoPolylinePath,"hasDash"],[this,"hasDash"])),this.dispose(a.bind([this._geoPolylinePath,"gapColor"],[this,"gapColor"])),this.dispose(a.bind([this._geoPolylinePath,"dashLength"],[this,"dashLength"])),this.dispose(a.bind([this._geoPolylinePath,"dashPattern"],[this,"dashPattern"])),this.dispose(a.bind([this._geoPolylinePath,"hasArrow"],[this,"hasArrow"])),this.dispose(a.bind([this._geoPolylinePath,"arcType"],[this,"arcType"])),this.dispose(a.bind([this._geoPolylinePath,"currentDistance"],[this,"currentDistance"])),this.dispose(a.bind([this._geoPolylinePath,"loop"],[this,"loop"])),this.dispose(a.bind([this._geoPolylinePath,"currentTime"],[this,"currentTime"])),this.dispose(a.bind([this._geoPolylinePath,"duration"],[this,"duration"])),this.dispose(a.bind([this._geoPolylinePath,"playing"],[this,"playing"])),this.dispose(a.bind([this._geoPolylinePath,"speed"],[this,"speed"])),this.dispose(a.bind([this._geoPolylinePath,"depthTest"],[this,"depthTest"])),this.dispose(a.track([this._geoPolylinePath,"leadTime"],[this,"leadTime"])),this.dispose(a.track([this._geoPolylinePath,"trailTime"],[this,"trailTime"])),this.dispose(a.track([this._geoPolylinePath,"allowPicking"],[this,"allowPicking"]));const o=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.resolutionChanged,this.sharpnessChanged)),s=()=>{try{if(this.positions&&this.positions.length>=2){const r=xu(this.positions,this.resolution,this.sharpness);this._geoPolylinePath.positions=r}else this._geoPolylinePath.positions=void 0}catch(r){console.error(r),this._geoPolylinePath.positions=void 0}};s(),this.dispose(o.disposableOn(s)),this.dispose(this._flyToEvent.disposableOn(r=>{this._geoPolylinePath.flyTo(r)}))}get geoPolylinePath(){return this._geoPolylinePath}get geoPath(){return this._geoPolylinePath.geoPath}get ratio(){return this._geoPolylinePath.ratio}set ratio(e){this._geoPolylinePath.ratio=e}get ratioChanged(){return this._geoPolylinePath.ratioChanged}get player(){return this._geoPolylinePath.player}get currentInfo(){return this._geoPolylinePath.currentInfo}get currentInfoChanged(){return this._geoPolylinePath.currentInfoChanged}get currentIndex(){return this._geoPolylinePath.currentIndex}get currentIndexChanged(){return this._geoPolylinePath.currentIndexChanged}get currentPosition(){return this._geoPolylinePath.currentPosition}get currentPositionChanged(){return this._geoPolylinePath.currentPositionChanged}get currentRotation(){return this._geoPolylinePath.currentRotation}get currentRotationChanged(){return this._geoPolylinePath.currentRotationChanged}get accumDistances(){return this._geoPolylinePath.accumDistances}get accumDistancesChanged(){return this._geoPolylinePath.accumDistances}get totalDistance(){return this._geoPolylinePath.totalDistance}get totalDistanceChanged(){return this._geoPolylinePath.totalDistanceChanged}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get currentDistance(){return this._currentDistance.value}set currentDistance(e){this._currentDistance.value=e}get currentDistanceChanged(){return this._currentDistance.changed}get timePosRots(){return this.geoPath.timePosRots}}(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,currentPoiShow:!0,polylineShow:!0,positions:a.reactPositions(void 0),width:1,ground:!1,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!1,arcType:"GEODESIC",loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,resolution:1e3,sharpness:.85,depthTest:!1,leadTime:0,trailTime:0})})(qr||(qr={})),a.extendClassProps(qr.prototype,qr.createDefaultProps);const mA=[["256",256],["512",512],["1024",1024]],gA=[["LEFT","LEFT"],["NONE","NONE"],["RIGHT","RIGHT"]],Vt=class Vt extends a.ESVisualObject{constructor(e){super(e);v(this,"_pickFeaturesEvent",this.dv(new a.Event));this.ad(a.bind([this,"czmSplitDirection"],[this,"splitDirection"])),this.ad(a.bind([this,"czmAlpha"],[this,"opacity"]))}get pickFeaturesEvent(){return this._pickFeaturesEvent}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new a.StringProperty([this,"accessToken"],"令牌",Vt.defaults.accessToken),new a.Number4Property([this,"rectangle"],"矩形范围",Vt.defaults.rectangle),new a.JsonProperty([this,"url"],"服务地址",Vt.defaults.url),new a.JsonProperty([this,"style"],"样式配置",Vt.defaults.style),new a.NumberProperty([this,"zIndex"],"层级序号",Vt.defaults.zIndex),new a.EnumProperty([this,"tileSize"],mA,"瓦片大小",256),new a.NumberSliderProperty([this,"maximumLevel"],1,[1,24],"最大层级",Vt.defaults.maximumLevel),new a.NumberSliderProperty([this,"minimumLevel"],1,[0,24],"最小层级",Vt.defaults.minimumLevel),new a.EnumProperty([this,"scheme"],[["tms","tms"],["xyz","xyz"]],"影像类型",Vt.defaults.scheme)],more:[...e.more,new a.GroupProperty([],"通用","通用"),new a.EnumProperty([this,"splitDirection"],gA,"splitDirection","NONE"),new a.GroupProperty([],"czm","czm"),new a.NumberProperty([this,"czmAlpha"],"透明度"),new a.NumberProperty([this,"czmBrightness"],"亮度"),new a.NumberProperty([this,"czmContrast"],"对比度"),new a.NumberProperty([this,"czmHue"],"色相"),new a.NumberProperty([this,"czmSaturation"],"饱和度"),new a.NumberProperty([this,"czmGamma"],"伽马值")]}}};v(Vt,"createDefaultProps",()=>({...a.ESVisualObject.createDefaultProps(),rectangle:a.reactJsonWithUndefined([-180,-90,180,90]),url:a.reactJson(""),zIndex:0,accessToken:"",tileSize:256,maximumLevel:18,minimumLevel:0,style:a.reactArrayWithUndefined([]),scheme:a.react("tms"),czmSplitDirection:"NONE",czmAlpha:1,opacity:1,splitDirection:"NONE",czmBrightness:1,czmContrast:1,czmHue:0,czmSaturation:1,czmGamma:1})),v(Vt,"type",Vt.register("ESMVTLayer",Vt,{chsName:"矢量瓦片图层",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"用于加载矢量瓦片图层。"}));let fh=Vt;const vA=t=>{const i=[{maxAlt:25e7,level:0},{maxAlt:25e6,level:1},{maxAlt:9e6,level:2},{maxAlt:7e6,level:3},{maxAlt:44e5,level:4},{maxAlt:2e6,level:5},{maxAlt:1e6,level:6},{maxAlt:493977,level:7},{maxAlt:218047,level:8},{maxAlt:124961,level:9},{maxAlt:56110,level:10},{maxAlt:4e4,level:11},{maxAlt:13222,level:12},{maxAlt:7e3,level:13},{maxAlt:4e3,level:14},{maxAlt:2500,level:15},{maxAlt:1500,level:16},{maxAlt:600,level:17},{maxAlt:250,level:18},{maxAlt:150,level:19},{maxAlt:50,level:20}];for(const{maxAlt:e,level:n}of i)if(t>=e)return n;return 20},yA=async(t,i,e)=>(await fetch(`http://abc.gggis.com:13001/xyzinfo/${e}/${t}/${i}`)).json(),wA=async t=>{var u;const i=(u=t.getCurrentCameraInfo())==null?void 0:u.position;if(!i)return;const e=i[0],n=i[1],o=i[2],s=vA(o);let r=Math.floor((e+180)/360*Math.pow(2,s+1)),l=Math.floor((90-n)/180*Math.pow(2,s));return await yA(r,l,s)};class CA extends a.Destroyable{constructor(i,e,n){super();const o=async()=>{const r=await wA(i);e.datesEvent.emit(r,i)};o();let s;s=setInterval(()=>{o()},3e3),this.d(()=>s&&clearInterval(s));{const r=()=>{const l=e.currentDate?e.currentDate:0;n.url=`http://abc.gggis.com:13001/timetile/tms/${l}/tilemapresource.xml`};r(),this.d(e.currentDateChanged.don(r))}}}const dr=class dr extends a.ESVisualObject{constructor(e){super(e);v(this,"_esImageryLayer",this.dv(new a.ESImageryLayer));v(this,"_datesEvent",this.dv(new a.Event));const n=this._esImageryLayer;this.d(this.components.disposableAdd(n)),n.zIndex=1,n.minimumLevel=1,n.maximumLevel=18,this.d(a.track([n,"show"],[this,"show"])),this.d(a.track([n,"zIndex"],[this,"zIndex"])),this.d(a.track([n,"rectangle"],[this,"rectangle"])),this.d(a.bind([n,"flyInParam"],[this,"flyInParam"])),this.d(a.bind([n,"flyToParam"],[this,"flyToParam"])),this.registerAttachedObjectForContainer(o=>new CA(o,this,n)),this.d(this.flyInEvent.don(o=>{n.flyIn(o)})),this.d(this.flyToEvent.don(o=>{n.flyTo(o)})),this.d(this.calcFlyToParamEvent.don(()=>{n.calcFlyToParam()})),this.d(this.calcFlyInParamEvent.don(()=>{n.calcFlyInParam()}))}get esImageryLayer(){return this._esImageryLayer}get datesEvent(){return this._datesEvent}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new a.StringProperty([this,"currentDate"],"时间","0"),new a.NumberProperty([this,"zIndex"],"层级",0),new a.Number4Property([this,"rectangle"],"矩形范围",[-180,-90,180,90])]}}};v(dr,"createDefaultProps",()=>({...a.ESVisualObject.createDefaultProps(),currentDate:"",zIndex:0,rectangle:a.reactArray([-180,-90,180,90])})),v(dr,"type",dr.register("ESGeHistoryImagery",dr,{chsName:"谷歌历史影像",tags:["ESObjects","_ES_Impl_UE"],description:"ESGeHistoryImagery"}));let mh=dr;const Py=`async (dataSource, viewer) => {
742
+ `,s.uniformMap={u_gradientMap:{type:"texture",id:"5d45a4a4-4f5d-4424-aea5-181de75bd13b"},u_stripMinMaxValue:[0,1],u_ratio:0};let l=this.disposeVar(a.react(void 0));{const c=this.disposeVar(a.createProcessingFromAsyncFunc(async d=>{l.value=void 0;const p=e.url??a.ESDataMesh.defaults.url;if(!p)return;await d.promise(a.sleep(200));const f=(e.maxTime??23)|0;l.value=await d.promise(uA(a.ESSceneObject.context.getStrFromEnv(typeof p=="string"?p:p.url),f+1))}));c.start();const u=this.disposeVar(a.createNextAnimateFrameEvent(e.urlChanged,e.maxTimeChanged));this.dispose(u.disposableOn(()=>c.restart()))}{class c{constructor(p){this._buffer=p}[Symbol.iterator](){return dA(this._buffer)}}const u=()=>{if(!l.value)return;const{vertexBuffer:d,propBuffers:p,indexBuffer:f}=l.value,{minPos:m,maxPos:g}=a.getMinMaxCorner(new c(d));s.setLocalAxisedBoundingBox(m,g);const y=(e.maxTime??23)|0;let _=(e.currentTime??a.ESDataMesh.defaults.currentTime)/y;_=_<0?0:_>1?1:_;const P=_*y;let C=_*y|0,S=P-C;if(C>=y&&(C=y-1,S=1),!Number.isFinite(S)){console.error("!Number.isFinite(rr)");debugger;return}if(s.indexTypedArray=f,!p[C]||!p[C+1]){console.error("!propBuffers[i] || !propBuffers[i + 1]");debugger}s.attributes={a_position:{typedArray:d,componentsPerAttribute:3},a_prop:{typedArray:p[C],componentsPerAttribute:3},a_prop2:{typedArray:p[C+1],componentsPerAttribute:3}},s.uniformMap={u_gradientMap:{type:"texture",id:`${r.id}`},u_stripMinMaxValue:[e.minPropValue??a.ESDataMesh.defaults.minPropValue,e.maxPropValue??a.ESDataMesh.defaults.maxPropValue],u_ratio:S}};u(),this.dispose(e.maxTimeChanged.disposableOn(u)),this.dispose(e.currentTimeChanged.disposableOn(u)),this.dispose(e.minPropValueChanged.disposableOn(u)),this.dispose(e.maxPropValueChanged.disposableOn(u)),this.dispose(l.changed.disposableOn(u))}}get czmCustomPrimitive(){return this._czmCustomPrimitive}get czmTexture(){return this._czmTexture}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmCustomPrimitive:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):(Dt(s,o,n,e,r,!0),!0):!1}};v(Ba,"type",Ba.register("ESCesiumViewer",a.ESDataMesh.type,Ba));let Jd=Ba;const Go=class Go extends a.Destroyable{constructor(e,n){super();v(this,"_pickedEvent",this.disposeVar(new a.Event));v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_heading",this.disposeVar(a.react(0)));v(this,"_textFunc",this.disposeVar(a.react(void 0)));const o=this;{const l=()=>{if(this.positions&&this.positions.length>=2){let u=0;this.arcType===void 0||this.arcType==="GEODESIC"?u=a.geoHeading(this.positions[0],this.positions[1]):this.arcType==="RHUMB"?u=a.geoRhumbHeading(this.positions[0],this.positions[1]):this.arcType==="NONE"?u=a.geoHeading(this.positions[0],this.positions[1]):console.warn(`未知的arcType: ${this.arcType},导致距离无法计算!`),this._heading.value=this.angleMode==="-180~180"?a.clampN180_180(u):a.clamp0_360(u)}};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.arcTypeChanged,this.angleModeChanged));this.dispose(c.disposableOn(l))}const s=this.disposeVar(new be(e,n));s.loop=!1,this.dispose(a.track([s,"allowPicking"],[o,"allowPicking"])),this.dispose(a.bind([s,"arcType"],[o,"arcType"])),this.dispose(a.bind([s,"color"],[o,"color"])),this.dispose(a.bind([s,"dashLength"],[o,"dashLength"])),this.dispose(a.bind([s,"dashPattern"],[o,"dashPattern"])),this.dispose(a.bind([s,"gapColor"],[o,"gapColor"])),this.dispose(a.bind([s,"hasArrow"],[o,"hasArrow"])),this.dispose(a.bind([s,"hasDash"],[o,"hasDash"])),this.dispose(a.bind([s,"positions"],[o,"positions"])),this.dispose(a.bind([s,"show"],[o,"show"])),this.dispose(a.bind([s,"width"],[o,"width"])),this.dispose(a.bind([s,"depthTest"],[o,"depthTest"])),this.dispose(a.bind([s,"ground"],[o,"strokeGround"])),this.dispose(o.flyToEvent.disposableOn(l=>{e.actived&&s.flyTo(l)}));const r=this.disposeVar(new We(e,n));this.dispose(a.bind([r,"shadowDom"],[o,"shadowDom"])),this.dispose(a.bind([r,"cssAllInitial"],[o,"cssAllInitial"])),this.dispose(a.bind([r,"show"],[o,"show"]));{const l=()=>{o.positions&&o.positions.length>=2?r.position=o.positions[1]:r.position=void 0};l(),this.dispose(o.positionsChanged.disposableOn(l))}{const l=()=>{const{heading:u}=o,d=(o.textFunc??Go.defaultTextFunc_度格式)(u);r.innerHTML=ao(`方向: ${d}`,24)};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(o.headingChanged,o.textFuncChanged));this.dispose(c.disposableOn(l))}this.ad(r.pickedEvent.don(l=>{Hi(l)===0&&this.pickedEvent.emit(l)}))}get pickedEvent(){return this._pickedEvent}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get heading(){return this._heading.value}get headingChanged(){return this._heading.changed}get textFunc(){return this._textFunc.value}set textFunc(e){this._textFunc.value=e}get textFuncChanged(){return this._textFunc.changed}};v(Go,"defaultTextFunc_度格式",e=>`${e.toFixed(5)}°`),v(Go,"defaultTextFunc_度分格式",e=>`${br(e,!0)}`),v(Go,"defaultTextFunc_度分秒格式",e=>`${br(e,!1)}`),v(Go,"defaults",{positions:[]});let Ao=Go;(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,positions:a.reactPositions(void 0),width:8,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!0,arcType:"GEODESIC",depthTest:!1,shadowDom:!1,cssAllInitial:!1,angleMode:"-180~180",strokeGround:!1})})(Ao||(Ao={})),a.extendClassProps(Ao.prototype,Ao.createDefaultProps);const Va=class Va extends vt{constructor(e,n){super(e,n);v(this,"_czmDirectionMeasurement");if(this._czmDirectionMeasurement=this.disposeVar(new Ao(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const s=this._czmDirectionMeasurement;s.angleMode="0~360",this.dispose(a.track([s,"show"],[e,"show"])),this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.bind([s,"positions"],[e,"points"])),this.dispose(a.bind([s,"strokeGround"],[e,"strokeGround"]));{const r=()=>{if(e.stroked)s.width=e.strokeWidth;else{s.width=0;return}s.width=e.strokeWidth,s.color=e.strokeColor;const u=e.strokeMaterial??"normal";u==="hasDash"?(s.hasDash=!0,s.hasArrow=!1):u==="hasArrow"?(s.hasDash=!1,s.hasArrow=!0):u==="normal"?(s.hasDash=!1,s.hasArrow=!1):(s.hasDash=!1,s.hasArrow=!0);const d=e.strokeStyle;if(d.material==="hasDash"&&d.materialParams)try{const p=d.materialParams;Reflect.has(p,"gapColor")&&(s.gapColor=p.gapColor??[0,0,0,0]),Reflect.has(p,"dashLength")&&(s.dashLength=p.dashLength),Reflect.has(p,"dashPattern")&&(s.dashPattern=p.dashPattern)}catch(p){console.error(p)}else s.gapColor=[0,0,0,0],s.dashLength=0,s.dashPattern=0};r();const l=this.disposeVar(a.createNextAnimateFrameEvent(e.strokeStyleChanged,e.strokedChanged));this.dispose(l.disposableOn(r))}this.dispose(s.pickedEvent.disposableOn(r=>{Hi(r)===0&&(e.allowPicking??!1)&&e.pickedEvent.emit(r)}))}get czmDirectionMeasurement(){return this._czmDirectionMeasurement}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmDirectionMeasurement:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,czmDirectionMeasurement:r}=this;return s.actived?o.flyInParam?super.flyIn(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Va,"type",Va.register("ESCesiumViewer",a.ESDirectionMeasurement.type,Va));let jd=Va;class Ls extends a.Destroyable{constructor(e,n){super();v(this,"_pickedEvent",this.disposeVar(new a.Event));v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_distances",this.disposeVar(a.reactArray([])));const o=async()=>{this.strokeGround&&e.viewer?this._distances.value=await Sg(e.viewer,this.positions??[]):this._distances.value=a.getDistancesFromPositions(this.positions??[],this.arcType)};o();const s=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.arcTypeChanged,this.strokeGroundChanged));this.dispose(s.disposableOn(o));const r=this.disposeVar(new be(e,n));r.loop=!1,this.dispose(a.track([r,"allowPicking"],[this,"allowPicking"])),this.dispose(a.bind([r,"arcType"],[this,"arcType"])),this.dispose(a.bind([r,"color"],[this,"color"])),this.dispose(a.bind([r,"dashLength"],[this,"dashLength"])),this.dispose(a.bind([r,"dashPattern"],[this,"dashPattern"])),this.dispose(a.bind([r,"gapColor"],[this,"gapColor"])),this.dispose(a.bind([r,"hasArrow"],[this,"hasArrow"])),this.dispose(a.bind([r,"hasDash"],[this,"hasDash"])),this.dispose(a.bind([r,"positions"],[this,"positions"])),this.dispose(a.bind([r,"show"],[this,"show"])),this.dispose(a.bind([r,"width"],[this,"width"])),this.dispose(a.bind([r,"depthTest"],[this,"depthTest"])),this.dispose(a.bind([r,"ground"],[this,"strokeGround"])),this.dispose(this.flyToEvent.disposableOn(l=>{e.actived&&r.flyTo(l)}));{const l=[],c=()=>{for(let d of l)d.destroy();l.length=0};this.dispose(c);const u=()=>{if(c(),!this.positions)return;if(this.positions.length>0&&this.distances.length>0){const p=Eu("起点",this.positions[0],e,n);p.dispose(a.track([p,"show"],[this,"show"])),p.dispose(a.track([p,"shadowDom"],[this,"shadowDom"])),p.dispose(a.track([p,"cssAllInitial"],[this,"cssAllInitial"])),l.push(p)}const d=this.distances.length;for(let p=0;p<d;++p){const f=this.distances[p],m=this.positions[p+1],g=Eu(`长度: ${Sc(f)}`,m,e,n);g.dispose(a.track([g,"show"],[this,"show"])),g.dispose(a.track([g,"shadowDom"],[this,"shadowDom"])),g.dispose(a.track([g,"cssAllInitial"],[this,"cssAllInitial"])),this.ad(g.pickedEvent.don(y=>{Hi(y)===0&&this.pickedEvent.emit(y)})),l.push(g)}};u(),this.dispose(this.distancesChanged.disposableOn(()=>a.inOrderRunning(u)))}}get pickedEvent(){return this._pickedEvent}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get distances(){return this._distances.value}get distancesChanged(){return this._distances.changed}}v(Ls,"defaults",{positions:[]}),(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,positions:a.reactPositions(void 0),width:1,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!1,arcType:"GEODESIC",depthTest:!1,shadowDom:!1,cssAllInitial:!1,strokeGround:!1})})(Ls||(Ls={})),a.extendClassProps(Ls.prototype,Ls.createDefaultProps);const Ua=class Ua extends vt{constructor(e,n){super(e,n);v(this,"_geoPolyline");if(this._geoPolyline=this.disposeVar(new be(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const s=this._geoPolyline;this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.bind([s,"positions"],[e,"points"])),this.dispose(a.track([s,"width"],[e,"strokeWidth"])),this.dispose(a.track([s,"color"],[e,"strokeColor"])),this.dispose(a.track([s,"ground"],[e,"strokeGround"]));{const r=()=>{s.show=e.show&&e.stroked};r();const l=this.disposeVar(a.createNextAnimateFrameEvent(e.showChanged,e.strokedChanged));this.dispose(l.disposableOn(r))}}get geoPolyline(){return this._geoPolyline}flyTo(e,n){const{sceneObject:o,czmViewer:s,geoPolyline:r}=this;return s.actived?o.flyToParam||o.flyInParam?(super.flyTo(e,n),!0):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,geoPolyline:r}=this;return s.actived?o.flyInParam?(super.flyIn(e,n),!0):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Ua,"type",Ua.register("ESCesiumViewer",a.ESGeoLineString.type,Ua));let Os=Ua;const Wa=class Wa extends Os{constructor(e,n){super(e,n);v(this,"_czmDistanceMeasurement");if(this._czmDistanceMeasurement=this.disposeVar(new Ls(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const{czmDistanceMeasurement:s}=this;this.dispose(a.track([s,"show"],[e,"show"])),this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.bind([s,"positions"],[e,"points"])),this.dispose(a.bind([s,"strokeGround"],[e,"strokeGround"]));{const r=()=>{if(e.stroked)s.width=e.strokeWidth;else{s.width=0;return}s.width=e.strokeWidth,s.color=e.strokeColor;const u=e.strokeMaterial??"normal";u==="hasDash"?(s.hasDash=!0,s.hasArrow=!1):u==="hasArrow"?(s.hasDash=!1,s.hasArrow=!0):(s.hasDash=!1,s.hasArrow=!1);const d=e.strokeStyle;if(d.material==="hasDash"&&d.materialParams)try{const p=d.materialParams;Reflect.has(p,"gapColor")&&(s.gapColor=p.gapColor??[0,0,0,0]),Reflect.has(p,"dashLength")&&(s.dashLength=p.dashLength),Reflect.has(p,"dashPattern")&&(s.dashPattern=p.dashPattern)}catch(p){console.error(p)}else s.gapColor=[0,0,0,0],s.dashLength=0,s.dashPattern=0};r();const l=this.disposeVar(a.createNextAnimateFrameEvent(e.strokeStyleChanged,e.strokedChanged));this.dispose(l.disposableOn(r))}this.dispose(s.pickedEvent.disposableOn(r=>{Hi(r)===0&&(e.allowPicking??!1)&&e.pickedEvent.emit(r)}))}get czmDistanceMeasurement(){return this._czmDistanceMeasurement}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmDistanceMeasurement:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,czmDistanceMeasurement:r}=this;return s.actived?o.flyInParam?super.flyIn(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Wa,"type",Wa.register("ESCesiumViewer",a.ESDistanceMeasurement.type,Wa));let ep=Wa;class Ns extends a.Destroyable{constructor(e,n){super();v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_id",this.disposeVar(a.react(a.createGuid())));n&&(this.id=n)}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get id(){return this._id.value}set id(e){this._id.value=e}get idChanged(){return this._id.changed}}(t=>{t.createDefaultProps=()=>({enabled:!0,showHelper:!0,allowPicking:!1,positions:a.reactPositions(void 0),reverse:!1,edgeColor:a.reactArray([1,1,1,1]),edgeWidth:2})})(Ns||(Ns={})),a.extendClassProps(Ns.prototype,Ns.createDefaultProps);class pA extends a.Destroyable{constructor(i,e){super(),this._czmESExcavate=i,this._eS3DTileset=e;for(let n=0;n<this._eS3DTileset.excavateId.length;n++){const o=this._eS3DTileset.excavateId[n];a.ESSceneObject.getSceneObjById(o)||this._eS3DTileset.excavateId.splice(n,1)}this._eS3DTileset.excavateId=[...this._eS3DTileset.excavateId,this._czmESExcavate.czmPolygonClipping.id],this.dispose(()=>{this._eS3DTileset.excavateId=[...this._eS3DTileset.excavateId.filter(n=>n!==this._czmESExcavate.czmPolygonClipping.id)]})}}class fA extends a.Destroyable{constructor(i){if(super(),this._czmESExcavate=i,!!this._czmESExcavate.viewer){for(let e=0;e<this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId.length;e++){const n=this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId[e];a.ESSceneObject.getSceneObjById(n)||this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId.splice(e,1)}this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId=[...this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId,this._czmESExcavate.czmPolygonClipping.id],this.dispose(()=>{this._czmESExcavate.viewer&&(this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId=[...this._czmESExcavate.viewer.sceneGlobeClippingPolygonsId.filter(e=>e!==this._czmESExcavate.czmPolygonClipping.id)])})}}}const Ga=class Ga extends qt{constructor(e,n){super(e,n);v(this,"_czmPolygonClipping");v(this,"_tilesSceneObjectWithId");this._czmPolygonClipping=this.ad(new Ns(n,e.id)),this._tilesSceneObjectWithId=this.disposeVar(new a.ESSceneObjectWithId);const o=this.ad(a.react(this.sceneObject.targetID));if(this.ad(e.targetIDChanged.don(()=>{const l=a.ESSceneObject.getSceneObject(e.targetID);o.value=l?(l.components.main??l).id:""})),this.dispose(a.track([this._tilesSceneObjectWithId,"id"],o)),this.disposeVar(a.createNextAnimateFrameEvent(this.tilesSceneObjectWithId.sceneObjectChanged,this.sceneObject.showChanged)),!n.viewer)return;const r=this._czmPolygonClipping;r.showHelper=!1,this.dispose(a.bind([r,"positions"],[e,"points"])),this.dispose(a.track([r,"allowPicking"],[e,"allowPicking"]));{const l=()=>{r.reverse=e.mode!=="in"};l(),this.dispose(e.modeChanged.disposableOn(l))}a.registerCreatedEventUpdate(this,e,()=>{const l=this.disposeVar(a.createNextAnimateFrameEvent(this.tilesSceneObjectWithId.sceneObjectChanged,this.sceneObject.showChanged));this.disposeVar(new a.ObjResettingWithEvent(l,()=>{const{sceneObject:c,id:u}=this.tilesSceneObjectWithId;if(this.sceneObject.show)return u===""?new fA(this):!c||!(c instanceof a.ES3DTileset)?void 0:new pA(this,c)}))})}get czmPolygonClipping(){return this._czmPolygonClipping}get tilesSceneObjectWithId(){return this._tilesSceneObjectWithId}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmPolygonClipping:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(Ga,"type",Ga.register("ESCesiumViewer",a.ESExcavate.type,Ga));let tp=Ga;const Ha=class Ha extends fe{constructor(e,n){super(e,n);v(this,"_czmFireParticleSystem");if(this._czmFireParticleSystem=this.disposeVar(new bi(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}const s=this._czmFireParticleSystem;s.endColor=[1,1,0,.4],s.startColor=[1,0,0,.5],s.particleLife=1,s.emissionRate=30,s.lifetime=1,s.imageSize=[1,1],s.emitter={type:"CircleEmitter",radius:.1},s.sizeInMeters=!0;{const r=()=>{s.startScale=10*(e.scale[0]>0?e.scale[0]:1),s.endScale=5*(e.scale[0]>0?e.scale[0]:1),s.minimumSpeed=10*(e.scale[0]>0?e.scale[0]:1),s.maximumSpeed=15*(e.scale[0]>0?e.scale[0]:1)};r(),this.ad(e.scaleChanged.don(r))}this.dispose(a.bind([s,"position"],[e,"position"])),this.dispose(a.track([s,"translation"],[e,"translation"])),this.dispose(Ke([s,"rotation"],[e,"rotation"])),this.dispose(a.track([s,"show"],[e,"show"])),this.dispose(a.track([s,"image"],[e,"image"]))}get czmFireParticleSystem(){return this._czmFireParticleSystem}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmFireParticleSystem:r}=this;if(!s.actived)return!1;if(o.flyToParam||o.flyInParam)return super.flyTo(e,n);{const l=r.position;return ne(s.viewer,l,100,jt,e),o.flyOverEvent.emit(n,"over",s),!0}}};v(Ha,"type",Ha.register("ESCesiumViewer",a.ESFireParticleSystem.type,Ha));let ip=Ha;class Bs extends a.Destroyable{constructor(e,n){super();v(this,"_geoPath");v(this,"_geoPolyline");v(this,"_geoCanvasPointPoi");v(this,"_player");v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_currentDistance",this.disposeVar(a.react(0)));v(this,"_ratio",this.disposeVar(a.PlayerProperty.createPlayingRatio([this,"currentTime"],[this,"duration"])));this._geoPath=this.disposeVar(new a.ESPathImpl),this._geoPolyline=this.disposeVar(new be(e,n)),this._geoCanvasPointPoi=this.disposeVar(new _n(e,n)),this._player=this.disposeVar(new a.Player),this.dispose(a.bind([this._geoPolyline,"positions"],[this,"positions"])),this.dispose(a.track([this._geoPolyline,"width"],[this,"width"])),this.dispose(a.track([this._geoPolyline,"ground"],[this,"ground"])),this.dispose(a.track([this._geoPolyline,"color"],[this,"color"])),this.dispose(a.track([this._geoPolyline,"hasDash"],[this,"hasDash"])),this.dispose(a.track([this._geoPolyline,"gapColor"],[this,"gapColor"])),this.dispose(a.track([this._geoPolyline,"dashLength"],[this,"dashLength"])),this.dispose(a.track([this._geoPolyline,"dashPattern"],[this,"dashPattern"])),this.dispose(a.track([this._geoPolyline,"hasArrow"],[this,"hasArrow"])),this.dispose(a.track([this._geoPolyline,"depthTest"],[this,"depthTest"])),this.dispose(a.track([this._geoPolyline,"arcType"],[this,"arcType"])),this.dispose(a.track([this._geoPolyline,"show"],[this,"show"])),this.dispose(a.track([this._geoPolyline,"show"],[this,"polylineShow"])),this.dispose(a.track([this._geoPolyline,"allowPicking"],[this,"allowPicking"])),this.dispose(a.track([this._geoPath,"currentTime"],[this,"currentDistance"])),this.dispose(a.track([this._geoPath,"leadTime"],[this,"leadTime"])),this.dispose(a.track([this._geoPath,"trailTime"],[this,"trailTime"])),this.dispose(a.track([this._geoPath,"show"],[this,"show"])),this.dispose(a.track([this._geoPath,"currentPoiShow"],[this,"currentPoiShow"]));{const o=()=>{this._geoCanvasPointPoi.show=(this.show??!0)&&(this.currentPoiShow??!0)};o(),this.dispose(this.showChanged.disposableOn(o)),this.dispose(this.currentPoiShowChanged.disposableOn(o))}this.dispose(a.track([this._geoCanvasPointPoi,"position"],[this,"currentPosition"]));{const o=()=>{if(this.positions){const r=this.granularity*Math.PI/180,l=pu(this.positions,this.arcType??"GEODESIC",r);if(l){this._geoPath.timePosRots=l.timePosRots,this.rotationRadius.some(c=>c>0)?(this._geoPath.addAroundPoints(this.rotationRadius,!0),this._geoPath.computeRotIfUndefinedUsingLerp(!0),this._geoPath.rotLerpMode="Lerp"):(this._geoPath.computeRotIfUndefinedUsingPrevLine(!0),this._geoPath.rotLerpMode=this.rotLerpMode);return}}this._geoPath.timePosRots=[]};o();const s=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.arcTypeChanged,this.granularityChanged,this.rotationRadiusChanged,this.rotLerpModeChanged));this.dispose(s.disposableOn(o))}{const o=()=>{if((this._player.duration??3e3)<=0){this.currentDistance=0;return}const s=this.totalDistance*((this._player.currentTime??0)/(this._player.duration??3e3));Math.abs(s-this.currentDistance)>.01&&(this.currentDistance=s)};o(),this.dispose(this._player.currentTimeChanged.disposableOn(o))}{const o=()=>{if(this.totalDistance<=0){this._player.currentTime=0;return}const s=this.currentDistance/this.totalDistance*(this.duration??3e3);Math.abs(s-(this._player.currentTime??0))>.01&&(this._player.currentTime=s)};o(),this.dispose(this.currentDistanceChanged.disposableOn(o))}this.dispose(a.bind([this._player,"loop"],[this,"loop"])),this.dispose(a.bind([this._player,"currentTime"],[this,"currentTime"])),this.dispose(a.bind([this._player,"duration"],[this,"duration"])),this.dispose(a.bind([this._player,"playing"],[this,"playing"])),this.dispose(a.bind([this._player,"speed"],[this,"speed"])),this.dispose(this._flyToEvent.disposableOn(o=>{this._geoPolyline.flyTo(o)}))}get geoPath(){return this._geoPath}get geoPolyline(){return this._geoPolyline}get geoCanvasPointPoi(){return this._geoCanvasPointPoi}get player(){return this._player}get currentInfo(){return this._geoPath.currentInfo}get currentInfoChanged(){return this._geoPath.currentInfoChanged}get currentIndex(){return this._geoPath.currentIndex}get currentIndexChanged(){return this._geoPath.currentIndexChanged}get currentPosition(){return this._geoPath.currentPosition}get currentPositionChanged(){return this._geoPath.currentPositionChanged}get currentRotation(){return this._geoPath.currentRotation}get currentRotationChanged(){return this._geoPath.currentRotationChanged}get accumDistances(){return this._geoPath.accumDistances}get accumDistancesChanged(){return this._geoPath.accumDistancesChanged}get totalDistance(){return this._geoPath.totalDistance}get totalDistanceChanged(){return this._geoPath.totalDistanceChanged}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}subPath(e,n){const o=this._geoPath.subPath(e,n);if(o)return o.map(s=>s[1])}get currentDistance(){return this._currentDistance.value}set currentDistance(e){this._currentDistance.value=e}get currentDistanceChanged(){return this._currentDistance.changed}get ratio(){return this._ratio.value}set ratio(e){this._ratio.value=e}get ratioChanged(){return this._ratio.changed}get timePosRots(){return this.geoPath.timePosRots}}(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,currentPoiShow:!0,polylineShow:!0,positions:a.reactPositions(void 0),width:1,ground:!1,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!1,arcType:"GEODESIC",granularity:1,loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,depthTest:!1,leadTime:0,trailTime:0,rotationRadius:[0],rotLerpMode:"Next"})})(Bs||(Bs={})),a.extendClassProps(Bs.prototype,Bs.createDefaultProps);class qr extends a.Destroyable{constructor(e,n){super();v(this,"_geoPolylinePath");v(this,"_flyToEvent",this.disposeVar(new a.Event));v(this,"_currentDistance",this.disposeVar(a.react(0)));this._geoPolylinePath=this.disposeVar(new Bs(e,n)),this._geoPolylinePath.rotLerpMode="Lerp",this.dispose(a.bind([this._geoPolylinePath,"show"],[this,"show"])),this.dispose(a.bind([this._geoPolylinePath,"currentPoiShow"],[this,"currentPoiShow"])),this.dispose(a.bind([this._geoPolylinePath,"polylineShow"],[this,"polylineShow"])),this.dispose(a.bind([this._geoPolylinePath,"width"],[this,"width"])),this.dispose(a.bind([this._geoPolylinePath,"ground"],[this,"ground"])),this.dispose(a.bind([this._geoPolylinePath,"color"],[this,"color"])),this.dispose(a.bind([this._geoPolylinePath,"hasDash"],[this,"hasDash"])),this.dispose(a.bind([this._geoPolylinePath,"gapColor"],[this,"gapColor"])),this.dispose(a.bind([this._geoPolylinePath,"dashLength"],[this,"dashLength"])),this.dispose(a.bind([this._geoPolylinePath,"dashPattern"],[this,"dashPattern"])),this.dispose(a.bind([this._geoPolylinePath,"hasArrow"],[this,"hasArrow"])),this.dispose(a.bind([this._geoPolylinePath,"arcType"],[this,"arcType"])),this.dispose(a.bind([this._geoPolylinePath,"currentDistance"],[this,"currentDistance"])),this.dispose(a.bind([this._geoPolylinePath,"loop"],[this,"loop"])),this.dispose(a.bind([this._geoPolylinePath,"currentTime"],[this,"currentTime"])),this.dispose(a.bind([this._geoPolylinePath,"duration"],[this,"duration"])),this.dispose(a.bind([this._geoPolylinePath,"playing"],[this,"playing"])),this.dispose(a.bind([this._geoPolylinePath,"speed"],[this,"speed"])),this.dispose(a.bind([this._geoPolylinePath,"depthTest"],[this,"depthTest"])),this.dispose(a.track([this._geoPolylinePath,"leadTime"],[this,"leadTime"])),this.dispose(a.track([this._geoPolylinePath,"trailTime"],[this,"trailTime"])),this.dispose(a.track([this._geoPolylinePath,"allowPicking"],[this,"allowPicking"]));const o=this.disposeVar(a.createNextAnimateFrameEvent(this.positionsChanged,this.resolutionChanged,this.sharpnessChanged)),s=()=>{try{if(this.positions&&this.positions.length>=2){const r=xu(this.positions,this.resolution,this.sharpness);this._geoPolylinePath.positions=r}else this._geoPolylinePath.positions=void 0}catch(r){console.error(r),this._geoPolylinePath.positions=void 0}};s(),this.dispose(o.disposableOn(s)),this.dispose(this._flyToEvent.disposableOn(r=>{this._geoPolylinePath.flyTo(r)}))}get geoPolylinePath(){return this._geoPolylinePath}get geoPath(){return this._geoPolylinePath.geoPath}get ratio(){return this._geoPolylinePath.ratio}set ratio(e){this._geoPolylinePath.ratio=e}get ratioChanged(){return this._geoPolylinePath.ratioChanged}get player(){return this._geoPolylinePath.player}get currentInfo(){return this._geoPolylinePath.currentInfo}get currentInfoChanged(){return this._geoPolylinePath.currentInfoChanged}get currentIndex(){return this._geoPolylinePath.currentIndex}get currentIndexChanged(){return this._geoPolylinePath.currentIndexChanged}get currentPosition(){return this._geoPolylinePath.currentPosition}get currentPositionChanged(){return this._geoPolylinePath.currentPositionChanged}get currentRotation(){return this._geoPolylinePath.currentRotation}get currentRotationChanged(){return this._geoPolylinePath.currentRotationChanged}get accumDistances(){return this._geoPolylinePath.accumDistances}get accumDistancesChanged(){return this._geoPolylinePath.accumDistances}get totalDistance(){return this._geoPolylinePath.totalDistance}get totalDistanceChanged(){return this._geoPolylinePath.totalDistanceChanged}get flyToEvent(){return this._flyToEvent}flyTo(e){this._flyToEvent.emit(e)}get currentDistance(){return this._currentDistance.value}set currentDistance(e){this._currentDistance.value=e}get currentDistanceChanged(){return this._currentDistance.changed}get timePosRots(){return this.geoPath.timePosRots}}(t=>{t.createDefaultProps=()=>({show:!0,allowPicking:!1,currentPoiShow:!0,polylineShow:!0,positions:a.reactPositions(void 0),width:1,ground:!1,color:a.reactArray([1,1,1,1]),hasDash:!1,gapColor:a.reactArray([0,0,0,0]),dashLength:16,dashPattern:255,hasArrow:!1,arcType:"GEODESIC",loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,resolution:1e3,sharpness:.85,depthTest:!1,leadTime:0,trailTime:0})})(qr||(qr={})),a.extendClassProps(qr.prototype,qr.createDefaultProps);const mA=[["256",256],["512",512],["1024",1024]],gA=[["LEFT","LEFT"],["NONE","NONE"],["RIGHT","RIGHT"]],Vt=class Vt extends a.ESVisualObject{constructor(e){super(e);v(this,"_pickFeaturesEvent",this.dv(new a.Event));this.ad(a.bind([this,"czmSplitDirection"],[this,"splitDirection"])),this.ad(a.bind([this,"czmAlpha"],[this,"opacity"]))}get pickFeaturesEvent(){return this._pickFeaturesEvent}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new a.StringProperty([this,"accessToken"],"令牌",Vt.defaults.accessToken),new a.Number4Property([this,"rectangle"],"矩形范围",Vt.defaults.rectangle),new a.JsonProperty([this,"url"],"服务地址",Vt.defaults.url),new a.JsonProperty([this,"style"],"样式配置",Vt.defaults.style),new a.NumberProperty([this,"zIndex"],"层级序号",Vt.defaults.zIndex),new a.EnumProperty([this,"tileSize"],mA,"瓦片大小",256),new a.NumberSliderProperty([this,"maximumLevel"],1,[1,24],"最大层级",Vt.defaults.maximumLevel),new a.NumberSliderProperty([this,"minimumLevel"],1,[0,24],"最小层级",Vt.defaults.minimumLevel),new a.EnumProperty([this,"scheme"],[["tms","tms"],["xyz","xyz"]],"影像类型",Vt.defaults.scheme)],more:[...e.more,new a.GroupProperty([],"通用","通用"),new a.EnumProperty([this,"splitDirection"],gA,"splitDirection","NONE"),new a.GroupProperty([],"czm","czm"),new a.NumberProperty([this,"czmAlpha"],"透明度"),new a.NumberProperty([this,"czmBrightness"],"亮度"),new a.NumberProperty([this,"czmContrast"],"对比度"),new a.NumberProperty([this,"czmHue"],"色相"),new a.NumberProperty([this,"czmSaturation"],"饱和度"),new a.NumberProperty([this,"czmGamma"],"伽马值")]}}};v(Vt,"createDefaultProps",()=>({...a.ESVisualObject.createDefaultProps(),rectangle:a.reactJsonWithUndefined([-180,-90,180,90]),url:a.reactJson(""),zIndex:0,accessToken:"",tileSize:256,maximumLevel:18,minimumLevel:0,style:a.reactArrayWithUndefined([]),scheme:a.react("tms"),czmSplitDirection:"NONE",czmAlpha:1,opacity:1,splitDirection:"NONE",czmBrightness:1,czmContrast:1,czmHue:0,czmSaturation:1,czmGamma:1})),v(Vt,"type",Vt.register("ESMVTLayer",Vt,{chsName:"矢量瓦片图层",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"用于加载矢量瓦片图层。"}));let fh=Vt;const vA=t=>{const i=[{maxAlt:25e7,level:0},{maxAlt:25e6,level:1},{maxAlt:9e6,level:2},{maxAlt:7e6,level:3},{maxAlt:44e5,level:4},{maxAlt:2e6,level:5},{maxAlt:1e6,level:6},{maxAlt:493977,level:7},{maxAlt:218047,level:8},{maxAlt:124961,level:9},{maxAlt:56110,level:10},{maxAlt:4e4,level:11},{maxAlt:13222,level:12},{maxAlt:7e3,level:13},{maxAlt:4e3,level:14},{maxAlt:2500,level:15},{maxAlt:1500,level:16},{maxAlt:600,level:17},{maxAlt:250,level:18},{maxAlt:150,level:19},{maxAlt:50,level:20}];for(const{maxAlt:e,level:n}of i)if(t>=e)return n;return 20},yA=async(t,i,e)=>(await fetch(`http://tileser.giiiis.com/xyzinfo/${e}/${t}/${i}`)).json(),wA=async t=>{var u;const i=(u=t.getCurrentCameraInfo())==null?void 0:u.position;if(!i)return;const e=i[0],n=i[1],o=i[2],s=vA(o);let r=Math.floor((e+180)/360*Math.pow(2,s+1)),l=Math.floor((90-n)/180*Math.pow(2,s));return await yA(r,l,s)};class CA extends a.Destroyable{constructor(i,e,n){super();const o=async()=>{const r=await wA(i);e.datesEvent.emit(r,i)};o();let s;s=setInterval(()=>{o()},3e3),this.d(()=>s&&clearInterval(s));{const r=()=>{const l=e.currentDate?e.currentDate:0;n.url=`http://tileser.giiiis.com/timetile/tms/${l}/tilemapresource.xml`};r(),this.d(e.currentDateChanged.don(r))}}}const dr=class dr extends a.ESVisualObject{constructor(e){super(e);v(this,"_esImageryLayer",this.dv(new a.ESImageryLayer));v(this,"_datesEvent",this.dv(new a.Event));const n=this._esImageryLayer;this.d(this.components.disposableAdd(n)),n.zIndex=1,n.minimumLevel=1,n.maximumLevel=18,this.d(a.track([n,"show"],[this,"show"])),this.d(a.track([n,"zIndex"],[this,"zIndex"])),this.d(a.track([n,"rectangle"],[this,"rectangle"])),this.d(a.bind([n,"flyInParam"],[this,"flyInParam"])),this.d(a.bind([n,"flyToParam"],[this,"flyToParam"])),this.registerAttachedObjectForContainer(o=>new CA(o,this,n)),this.d(this.flyInEvent.don(o=>{n.flyIn(o)})),this.d(this.flyToEvent.don(o=>{n.flyTo(o)})),this.d(this.calcFlyToParamEvent.don(()=>{n.calcFlyToParam()})),this.d(this.calcFlyInParamEvent.don(()=>{n.calcFlyInParam()}))}get esImageryLayer(){return this._esImageryLayer}get datesEvent(){return this._datesEvent}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new a.StringProperty([this,"currentDate"],"时间","0"),new a.NumberProperty([this,"zIndex"],"层级",0),new a.Number4Property([this,"rectangle"],"矩形范围",[-180,-90,180,90])]}}};v(dr,"createDefaultProps",()=>({...a.ESVisualObject.createDefaultProps(),currentDate:"",zIndex:0,rectangle:a.reactArray([-180,-90,180,90])})),v(dr,"type",dr.register("ESGeHistoryImagery",dr,{chsName:"谷歌历史影像",tags:["ESObjects","_ES_Impl_UE"],description:"ESGeHistoryImagery"}));let mh=dr;const Py=`async (dataSource, viewer) => {
743
743
  viewer.clock.shouldAnimate = false;
744
744
  const rider = dataSource.entities.getById("tour");
745
745
  await viewer.flyTo(rider)
@@ -1814,7 +1814,7 @@ ${$y}
1814
1814
  vec4 imageColor = texture(u_image, st);
1815
1815
  out_FragColor = imageColor * u_color;
1816
1816
  }
1817
- `;const z=f.computeLocalAxisedBoundingBoxFromAttribute("position");if(!z)return;const{min:B,max:w}=z;f.setLocalAxisedBoundingBox(B,w)},d=async()=>{if(e.points&&e.points.length>2){const{minPos:f,center:m}=a.getMinMaxCorner(e.points),g=f[2]-e.depth;if(!a.equalsN3(e.points[e.points.length-1],e.points[e.points.length-2])){const x=It({originPosition:m},e.points.map((A,R)=>{let O=[...A];return O[2]=g,O}));u(l,m,x[0],"bottom",!0)}const y=this._interpolationAlongPolygon(e.points.map((x,A)=>h.Cartesian3.fromArray(a.lbhToXyz(x))),e.interpolation),_=await n.getHeightsByLonLats(y.map(x=>[x[0],x[1]]));let P=[];for(let x=0;x<y.length;x++){const A=y[x];P.push([A[0],A[1],_[x]??A[2]],[A[0],A[1],g])}const C=It({originPosition:m},P);let S=this._isClockwise(e.points,n);u(s,m,C[0],"side",S)}else s.attributes=void 0,l.attributes=void 0};d();const p=this.dv(a.createNextAnimateFrameEvent(e.depthChanged,e.interpolationChanged,e.pointsChanged,e.bottomImageChanged,e.sideImageChanged));this.ad(p.don(d))}{const u=()=>{r.uri=e.sideImage.url,c.uri=e.bottomImage.url,s.uniformMap={u_image:{type:"texture",id:r.id},u_color:[1,1,1,e.opacity]},l.uniformMap={u_image:{type:"texture",id:c.id},u_color:[1,1,1,e.opacity]}};u();const d=this.ad(a.createNextAnimateFrameEvent(e.opacityChanged,e.bottomImageChanged,e.sideImageChanged));this.d(d.don(u))}}flyTo(e,n){const{sceneObject:o,czmViewer:s}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):o.points?(oe(s,o,n,o.points,e),!0):!1:!1}_interpolationAlongPolygon(e,n){var o=[];for(let c=0;c<e.length;++c){var s=e[c],r=e[(c+1)%e.length],l=this._interpolationAlongLine(s,r,n);o.push(...l)}return o.push(o[0]),o}_interpolationAlongLine(e,n,o){var s=[],r=h.Cartesian3.distance(e,n),l=h.Cartesian3.subtract(n,e,new h.Cartesian3);l.equals(h.Cartesian3.ZERO)||h.Cartesian3.normalize(l,l);for(var c=0;c<r;){var u=new h.Cartesian3(l.x*c,l.y*c,l.z*c),d=h.Cartesian3.add(e,u,new h.Cartesian3);const p=re(d);p&&s.push(p),c+=o}return s}_isClockwise(e,n){if(n.viewer)for(let o=0;o<e.length;o++){let s=h.Cartesian3.fromDegrees(...e[o]),r=h.Cartesian3.fromDegrees(...e[(o+1)%e.length]),l=h.Cartesian3.fromDegrees(...e[(o+2)%e.length]),c=h.Cartesian3.subtract(r,s,new h.Cartesian3),u=h.Cartesian3.subtract(l,r,new h.Cartesian3);if(c.equals(h.Cartesian3.ZERO)||u.equals(h.Cartesian3.ZERO))return!0;if(h.Cartesian3.normalize(c,c),h.Cartesian3.normalize(u,u),Math.abs(h.Cartesian3.dot(c,u))==1){if(o==e.length-1)return!0;continue}let d=h.Cartesian3.cross(c,u,new h.Cartesian3);return h.Cartesian3.dot(d,n.viewer.camera.directionWC)>0}}_triangleIndices(e){let n=new Uint32Array(e*3);for(let o=0;o<e;++o)n[o*3+0]=o,n[o*3+1]=o%2?(o+2)%e:(o+1)%e,n[o*3+2]=o%2?(o+1)%e:(o+2)%e;return n}_getDistance(e,n){return Math.sqrt(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2))}};v(Fl,"type",Fl.register("ESCesiumViewer",a.ESPit.type,Fl));let Jp=Fl;const zl=class zl extends qt{constructor(e,n){super(e,n);v(this,"_czmPolygonPrimitive");v(this,"_geoPolylines");if(this._czmPolygonPrimitive=this.disposeVar(new bn(n,e.id)),console.log(this.czmPolygonPrimitive),this._geoPolylines=this.disposeVar(new pi(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}{const l=()=>{this.geoPolygon&&(this.geoPolygon.show=!1)};l(),this.ad(this.sceneObject.showChanged.don(l))}const s=this._geoPolylines;s.arcType="RHUMB";const r=this._czmPolygonPrimitive;this.dispose(a.track([r,"allowPicking"],[e,"allowPicking"])),this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.track([s,"color"],[e,"strokeColor"])),this.dispose(a.track([s,"width"],[e,"strokeWidth"]));{r.perPositionHeight=!0;const l=()=>{s.show=e.show&&e.stroked,r.show=e.show&&e.filled,r.material={type:"Color",color:e.fillColor}};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(e.showChanged,e.strokedChanged,e.filledChanged,e.fillColorChanged));this.dispose(c.don(l))}{const l=()=>{const u={positions:[],holes:[]};if(e.points&&e.points.length>=3){if(s.positions=[[...e.points,e.points[0]]],u.positions=e.points,e.innerRings&&e.innerRings.length>0)for(let d=0;d<e.innerRings.length;d++){const p=e.innerRings[d];u.holes.push({positions:p}),s.positions.push([...p,p[0]])}r.polygonHierarchy=u}else r.polygonHierarchy=u};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(e.pointsChanged,e.innerRingsChanged));this.dispose(c.disposableOn(()=>l()))}}get czmPolygonPrimitive(){return this._czmPolygonPrimitive}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmPolygonPrimitive:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,czmPolygonPrimitive:r}=this;return s.actived?o.flyInParam?super.flyIn(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(zl,"type",zl.register("ESCesiumViewer",a.ESPolygonWithHole.type,zl));let jp=zl;var yt=63710088e-1,ef={centimeters:yt*100,centimetres:yt*100,degrees:yt/111325,feet:yt*3.28084,inches:yt*39.37,kilometers:yt/1e3,kilometres:yt/1e3,meters:yt,metres:yt,miles:yt/1609.344,millimeters:yt*1e3,millimetres:yt*1e3,nauticalmiles:yt/1852,radians:1,yards:yt*1.0936},MT={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/yt,yards:1.0936133},tf={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function Xt(t,i,e){e===void 0&&(e={});var n={type:"Feature"};return(e.id===0||e.id)&&(n.id=e.id),e.bbox&&(n.bbox=e.bbox),n.properties=i||{},n.geometry=t,n}function IT(t,i,e){switch(t){case"Point":return ht(i).geometry;case"LineString":return oi(i).geometry;case"Polygon":return it(i).geometry;case"MultiPoint":return qy(i).geometry;case"MultiLineString":return nf(i).geometry;case"MultiPolygon":return of(i).geometry;default:throw new Error(t+" is invalid")}}function ht(t,i,e){if(e===void 0&&(e={}),!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(t.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!bh(t[0])||!bh(t[1]))throw new Error("coordinates must contain numbers");var n={type:"Point",coordinates:t};return Xt(n,i,e)}function DT(t,i,e){return e===void 0&&(e={}),Ot(t.map(function(n){return ht(n,i)}),e)}function it(t,i,e){e===void 0&&(e={});for(var n=0,o=t;n<o.length;n++){var s=o[n];if(s.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var r=0;r<s[s.length-1].length;r++)if(s[s.length-1][r]!==s[0][r])throw new Error("First and last Position are not equivalent.")}var l={type:"Polygon",coordinates:t};return Xt(l,i,e)}function RT(t,i,e){return e===void 0&&(e={}),Ot(t.map(function(n){return it(n,i)}),e)}function oi(t,i,e){if(e===void 0&&(e={}),t.length<2)throw new Error("coordinates must be an array of two or more positions");var n={type:"LineString",coordinates:t};return Xt(n,i,e)}function FT(t,i,e){return e===void 0&&(e={}),Ot(t.map(function(n){return oi(n,i)}),e)}function Ot(t,i){i===void 0&&(i={});var e={type:"FeatureCollection"};return i.id&&(e.id=i.id),i.bbox&&(e.bbox=i.bbox),e.features=t,e}function nf(t,i,e){e===void 0&&(e={});var n={type:"MultiLineString",coordinates:t};return Xt(n,i,e)}function qy(t,i,e){e===void 0&&(e={});var n={type:"MultiPoint",coordinates:t};return Xt(n,i,e)}function of(t,i,e){e===void 0&&(e={});var n={type:"MultiPolygon",coordinates:t};return Xt(n,i,e)}function zT(t,i,e){e===void 0&&(e={});var n={type:"GeometryCollection",geometries:t};return Xt(n,i,e)}function LT(t,i){if(i===void 0&&(i=0),i&&!(i>=0))throw new Error("precision must be a positive number");var e=Math.pow(10,i||0);return Math.round(t*e)/e}function sf(t,i){i===void 0&&(i="kilometers");var e=ef[i];if(!e)throw new Error(i+" units is invalid");return t*e}function rf(t,i){i===void 0&&(i="kilometers");var e=ef[i];if(!e)throw new Error(i+" units is invalid");return t/e}function OT(t,i){return Xy(rf(t,i))}function NT(t){var i=t%360;return i<0&&(i+=360),i}function Xy(t){var i=t%(2*Math.PI);return i*180/Math.PI}function Kr(t){var i=t%360;return i*Math.PI/180}function BT(t,i,e){if(i===void 0&&(i="kilometers"),e===void 0&&(e="kilometers"),!(t>=0))throw new Error("length must be a positive number");return sf(rf(t,i),e)}function VT(t,i,e){if(i===void 0&&(i="meters"),e===void 0&&(e="kilometers"),!(t>=0))throw new Error("area must be a positive number");var n=tf[i];if(!n)throw new Error("invalid original units");var o=tf[e];if(!o)throw new Error("invalid final units");return t/n*o}function bh(t){return!isNaN(t)&&t!==null&&!Array.isArray(t)}function af(t){return!!t&&t.constructor===Object}function UT(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(t.length!==4&&t.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach(function(i){if(!bh(i))throw new Error("bbox must only contain numbers")})}function WT(t){if(!t)throw new Error("id is required");if(["string","number"].indexOf(typeof t)===-1)throw new Error("id must be a number or a string")}const GT=Object.freeze(Object.defineProperty({__proto__:null,areaFactors:tf,bearingToAzimuth:NT,convertArea:VT,convertLength:BT,degreesToRadians:Kr,earthRadius:yt,factors:ef,feature:Xt,featureCollection:Ot,geometry:IT,geometryCollection:zT,isNumber:bh,isObject:af,lengthToDegrees:OT,lengthToRadians:rf,lineString:oi,lineStrings:FT,multiLineString:nf,multiPoint:qy,multiPolygon:of,point:ht,points:DT,polygon:it,polygons:RT,radiansToDegrees:Xy,radiansToLength:sf,round:LT,unitsFactors:MT,validateBBox:UT,validateId:WT},Symbol.toStringTag,{value:"Module"}));function Sh(t){if(!t)throw new Error("coord is required");if(!Array.isArray(t)){if(t.type==="Feature"&&t.geometry!==null&&t.geometry.type==="Point")return t.geometry.coordinates;if(t.type==="Point")return t.coordinates}if(Array.isArray(t)&&t.length>=2&&!Array.isArray(t[0])&&!Array.isArray(t[1]))return t;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function Ii(t){if(Array.isArray(t))return t;if(t.type==="Feature"){if(t.geometry!==null)return t.geometry.coordinates}else if(t.coordinates)return t.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function HT(t,i,e){if(!t)throw new Error("No featureCollection passed");if(!t||t.type!=="FeatureCollection")throw new Error("Invalid input to "+e+", FeatureCollection required");for(var n=0,o=t.features;n<o.length;n++){var s=o[n];if(!s||s.type!=="Feature"||!s.geometry)throw new Error("Invalid input to "+e+", Feature with geometry required");if(!s.geometry||s.geometry.type!==i)throw new Error("Invalid input to "+e+": must be a "+i+", given "+s.geometry.type)}}function Di(t){return t.type==="Feature"?t.geometry:t}function $T(t,i){return t.type==="FeatureCollection"?"FeatureCollection":t.type==="GeometryCollection"?"GeometryCollection":t.type==="Feature"&&t.geometry!==null?t.geometry.type:t.type}function Ri(t,i,e){e===void 0&&(e={});var n=Sh(t),o=Sh(i),s=Kr(o[1]-n[1]),r=Kr(o[0]-n[0]),l=Kr(n[1]),c=Kr(o[1]),u=Math.pow(Math.sin(s/2),2)+Math.pow(Math.sin(r/2),2)*Math.cos(l)*Math.cos(c);return sf(2*Math.atan2(Math.sqrt(u),Math.sqrt(1-u)),e.units)}function Ro(t,i,e){if(t!==null)for(var n,o,s,r,l,c,u,d=0,p=0,f,m=t.type,g=m==="FeatureCollection",y=m==="Feature",_=g?t.features.length:1,P=0;P<_;P++){u=g?t.features[P].geometry:y?t.geometry:t,f=u?u.type==="GeometryCollection":!1,l=f?u.geometries.length:1;for(var C=0;C<l;C++){var S=0,x=0;if(r=f?u.geometries[C]:u,r!==null){c=r.coordinates;var A=r.type;switch(d=e&&(A==="Polygon"||A==="MultiPolygon")?1:0,A){case null:break;case"Point":if(i(c,p,P,S,x)===!1)return!1;p++,S++;break;case"LineString":case"MultiPoint":for(n=0;n<c.length;n++){if(i(c[n],p,P,S,x)===!1)return!1;p++,A==="MultiPoint"&&S++}A==="LineString"&&S++;break;case"Polygon":case"MultiLineString":for(n=0;n<c.length;n++){for(o=0;o<c[n].length-d;o++){if(i(c[n][o],p,P,S,x)===!1)return!1;p++}A==="MultiLineString"&&S++,A==="Polygon"&&x++}A==="Polygon"&&S++;break;case"MultiPolygon":for(n=0;n<c.length;n++){for(x=0,o=0;o<c[n].length;o++){for(s=0;s<c[n][o].length-d;s++){if(i(c[n][o][s],p,P,S,x)===!1)return!1;p++}x++}S++}break;case"GeometryCollection":for(n=0;n<r.geometries.length;n++)if(Ro(r.geometries[n],i,e)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function qT(t,i,e,n){var o=e;return Ro(t,function(s,r,l,c,u){r===0&&e===void 0?o=s:o=i(o,s,r,l,c,u)},n),o}function Yy(t,i){var e;switch(t.type){case"FeatureCollection":for(e=0;e<t.features.length&&i(t.features[e].properties,e)!==!1;e++);break;case"Feature":i(t.properties,0);break}}function XT(t,i,e){var n=e;return Yy(t,function(o,s){s===0&&e===void 0?n=o:n=i(n,o,s)}),n}function Us(t,i){if(t.type==="Feature")i(t,0);else if(t.type==="FeatureCollection")for(var e=0;e<t.features.length&&i(t.features[e],e)!==!1;e++);}function YT(t,i,e){var n=e;return Us(t,function(o,s){s===0&&e===void 0?n=o:n=i(n,o,s)}),n}function ZT(t){var i=[];return Ro(t,function(e){i.push(e)}),i}function lf(t,i){var e,n,o,s,r,l,c,u,d,p,f=0,m=t.type==="FeatureCollection",g=t.type==="Feature",y=m?t.features.length:1;for(e=0;e<y;e++){for(l=m?t.features[e].geometry:g?t.geometry:t,u=m?t.features[e].properties:g?t.properties:{},d=m?t.features[e].bbox:g?t.bbox:void 0,p=m?t.features[e].id:g?t.id:void 0,c=l?l.type==="GeometryCollection":!1,r=c?l.geometries.length:1,o=0;o<r;o++){if(s=c?l.geometries[o]:l,s===null){if(i(null,f,u,d,p)===!1)return!1;continue}switch(s.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(i(s,f,u,d,p)===!1)return!1;break}case"GeometryCollection":{for(n=0;n<s.geometries.length;n++)if(i(s.geometries[n],f,u,d,p)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}f++}}function QT(t,i,e){var n=e;return lf(t,function(o,s,r,l,c){s===0&&e===void 0?n=o:n=i(n,o,s,r,l,c)}),n}function ji(t,i){lf(t,function(e,n,o,s,r){var l=e===null?null:e.type;switch(l){case null:case"Point":case"LineString":case"Polygon":return i(Xt(e,o,{bbox:s,id:r}),n,0)===!1?!1:void 0}var c;switch(l){case"MultiPoint":c="Point";break;case"MultiLineString":c="LineString";break;case"MultiPolygon":c="Polygon";break}for(var u=0;u<e.coordinates.length;u++){var d=e.coordinates[u],p={type:c,coordinates:d};if(i(Xt(p,o),n,u)===!1)return!1}})}function kT(t,i,e){var n=e;return ji(t,function(o,s,r){s===0&&r===0&&e===void 0?n=o:n=i(n,o,s,r)}),n}function Zy(t,i){ji(t,function(e,n,o){var s=0;if(e.geometry){var r=e.geometry.type;if(!(r==="Point"||r==="MultiPoint")){var l,c=0,u=0,d=0;if(Ro(e,function(p,f,m,g,y){if(l===void 0||n>c||g>u||y>d){l=p,c=n,u=g,d=y,s=0;return}var _=oi([l,p],e.properties);if(i(_,n,o,y,s)===!1)return!1;s++,l=p})===!1)return!1}}})}function Qy(t,i,e){var n=e,o=!1;return Zy(t,function(s,r,l,c,u){o===!1&&e===void 0?n=s:n=i(n,s,r,l,c,u),o=!0}),n}function ky(t,i){if(!t)throw new Error("geojson is required");ji(t,function(e,n,o){if(e.geometry!==null){var s=e.geometry.type,r=e.geometry.coordinates;switch(s){case"LineString":if(i(e,n,o,0,0)===!1)return!1;break;case"Polygon":for(var l=0;l<r.length;l++)if(i(oi(r[l],e.properties),n,o,l)===!1)return!1;break}}})}function KT(t,i,e){var n=e;return ky(t,function(o,s,r,l){s===0&&e===void 0?n=o:n=i(n,o,s,r,l)}),n}function JT(t,i){if(i=i||{},!af(i))throw new Error("options is invalid");var e=i.featureIndex||0,n=i.multiFeatureIndex||0,o=i.geometryIndex||0,s=i.segmentIndex||0,r=i.properties,l;switch(t.type){case"FeatureCollection":e<0&&(e=t.features.length+e),r=r||t.features[e].properties,l=t.features[e].geometry;break;case"Feature":r=r||t.properties,l=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":l=t;break;default:throw new Error("geojson is invalid")}if(l===null)return null;var c=l.coordinates;switch(l.type){case"Point":case"MultiPoint":return null;case"LineString":return s<0&&(s=c.length+s-1),oi([c[s],c[s+1]],r,i);case"Polygon":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s-1),oi([c[o][s],c[o][s+1]],r,i);case"MultiLineString":return n<0&&(n=c.length+n),s<0&&(s=c[n].length+s-1),oi([c[n][s],c[n][s+1]],r,i);case"MultiPolygon":return n<0&&(n=c.length+n),o<0&&(o=c[n].length+o),s<0&&(s=c[n][o].length-s-1),oi([c[n][o][s],c[n][o][s+1]],r,i)}throw new Error("geojson is invalid")}function jT(t,i){if(i=i||{},!af(i))throw new Error("options is invalid");var e=i.featureIndex||0,n=i.multiFeatureIndex||0,o=i.geometryIndex||0,s=i.coordIndex||0,r=i.properties,l;switch(t.type){case"FeatureCollection":e<0&&(e=t.features.length+e),r=r||t.features[e].properties,l=t.features[e].geometry;break;case"Feature":r=r||t.properties,l=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":l=t;break;default:throw new Error("geojson is invalid")}if(l===null)return null;var c=l.coordinates;switch(l.type){case"Point":return ht(c,r,i);case"MultiPoint":return n<0&&(n=c.length+n),ht(c[n],r,i);case"LineString":return s<0&&(s=c.length+s),ht(c[s],r,i);case"Polygon":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s),ht(c[o][s],r,i);case"MultiLineString":return n<0&&(n=c.length+n),s<0&&(s=c[n].length+s),ht(c[n][s],r,i);case"MultiPolygon":return n<0&&(n=c.length+n),o<0&&(o=c[n].length+o),s<0&&(s=c[n][o].length-s),ht(c[n][o][s],r,i)}throw new Error("geojson is invalid")}const eM=Object.freeze(Object.defineProperty({__proto__:null,coordAll:ZT,coordEach:Ro,coordReduce:qT,featureEach:Us,featureReduce:YT,findPoint:jT,findSegment:JT,flattenEach:ji,flattenReduce:kT,geomEach:lf,geomReduce:QT,lineEach:ky,lineReduce:KT,propEach:Yy,propReduce:XT,segmentEach:Zy,segmentReduce:Qy},Symbol.toStringTag,{value:"Module"}));function tM(t,i){return i===void 0&&(i={}),Qy(t,function(e,n){var o=n.geometry.coordinates;return e+Ri(o[0],o[1],i)},0)}function iM(t){var i=oi(t),e=tM(i,{units:"meters"});return e}function*nM(t){t.type==="FeatureCollection"?yield*t.features.map(i=>[i.geometry,i]):t.type==="Feature"&&(yield[t.geometry,t])}function*oM(t){for(const[i,e]of nM(t))if(i.type==="LineString")yield[i.coordinates,e];else if(i.type==="MultiLineString")for(let n of i.coordinates)yield[n,e]}function sM(t,i,e){return[...oM(t)].map(([n,o])=>{if(n.length<2)return;const s=n.map(c=>[c[0],c[1],c[2]??0]),l=iM(s)/e;return{positions:s,repeat:l,width:i,extra:{geojson:{feature:o}}}}).filter(n=>!!n)}const Jr=h.ArcType,rM=h.arrayRemoveDuplicates,aM=h.BoundingSphere,Qe=h.Cartesian3,Nt=h.Color,Ws=h.ComponentDatatype,lM=h.Frozen,Yt=h.defined,Gs=h.DeveloperError,Fi=h.Ellipsoid,cM=h.Geometry,Hs=h.GeometryAttribute,hM=h.GeometryAttributes,uM=h.GeometryType,dM=h.IndexDatatype,Ky=h.Math,jr=h.PolylinePipeline,pM=h.PrimitiveType,en=h.VertexFormat;var Jy=[];function fM(t,i,e,n,o){var s=Jy;s.length=o;var r,l=e.red,c=e.green,u=e.blue,d=e.alpha,p=n.red,f=n.green,m=n.blue,g=n.alpha;if(Nt.equals(e,n)){for(r=0;r<o;r++)s[r]=Nt.clone(e);return s}var y=(p-l)/o,_=(f-c)/o,P=(m-u)/o,C=(g-d)/o;for(r=0;r<o;r++)s[r]=new Nt(l+r*y,c+r*_,u+r*P,d+r*C);return s}function $s(t){t=t??lM.EMPTY_OBJECT;var i=t.positions,e=t.colors,n=t.width??1,o=t.colorsPerVertex??!1;if(!Yt(i)||i.length<2)throw new Gs("At least two positions are required.");if(typeof n!="number")throw new Gs("width must be a number");if(Yt(e)&&(o&&e.length<i.length||!o&&e.length<i.length-1))throw new Gs("colors has an invalid length.");this._positions=i,this._colors=e,this._width=n,this._colorsPerVertex=o,this._vertexFormat=en.clone(t.vertexFormat??en.DEFAULT),this._arcType=t.arcType??Jr.GEODESIC,this._granularity=t.granularity??Ky.RADIANS_PER_DEGREE,this._ellipsoid=Fi.clone(t.ellipsoid??Fi.WGS84),this._workerName="createPolylineGeometry";var s=1+i.length*Qe.packedLength;s+=Yt(e)?1+e.length*Nt.packedLength:1,this.packedLength=s+Fi.packedLength+en.packedLength+4}$s.pack=function(t,i,e){if(!Yt(t))throw new Gs("value is required");if(!Yt(i))throw new Gs("array is required");e=e??0;var n,o=t._positions,s=o.length;for(i[e++]=s,n=0;n<s;++n,e+=Qe.packedLength)Qe.pack(o[n],i,e);var r=t._colors;for(s=Yt(r)?r.length:0,i[e++]=s,n=0;n<s;++n,e+=Nt.packedLength)Nt.pack(r[n],i,e);return Fi.pack(t._ellipsoid,i,e),e+=Fi.packedLength,en.pack(t._vertexFormat,i,e),e+=en.packedLength,i[e++]=t._width,i[e++]=t._colorsPerVertex?1:0,i[e++]=t._arcType,i[e]=t._granularity,i};var jy=Fi.clone(Fi.UNIT_SPHERE),e0=new en,Fo={positions:void 0,colors:void 0,ellipsoid:jy,vertexFormat:e0,width:void 0,colorsPerVertex:void 0,arcType:void 0,granularity:void 0};$s.unpack=function(t,i,e){if(!Yt(t))throw new Gs("array is required");i=i??0;var n,o=t[i++],s=new Array(o);for(n=0;n<o;++n,i+=Qe.packedLength)s[n]=Qe.unpack(t,i);o=t[i++];var r=o>0?new Array(o):void 0;for(n=0;n<o;++n,i+=Nt.packedLength)r[n]=Nt.unpack(t,i);var l=Fi.unpack(t,i,jy);i+=Fi.packedLength;var c=en.unpack(t,i,e0);i+=en.packedLength;var u=t[i++],d=t[i++]===1,p=t[i++],f=t[i];return Yt(e)?(e._positions=s,e._colors=r,e._ellipsoid=Fi.clone(l,e._ellipsoid),e._vertexFormat=en.clone(c,e._vertexFormat),e._width=u,e._colorsPerVertex=d,e._arcType=p,e._granularity=f,e):(Fo.positions=s,Fo.colors=r,Fo.width=u,Fo.colorsPerVertex=d,Fo.arcType=p,Fo.granularity=f,new $s(Fo))};var t0=new Qe,i0=new Qe,n0=new Qe,o0=new Qe;$s.createGeometry=function(t){var i=t._width,e=t._vertexFormat,n=t._colors,o=t._colorsPerVertex,s=t._arcType,r=t._granularity,l=t._ellipsoid,c,u,d,p=rM(t._positions,Qe.equalsEpsilon),f=p.length;if(f<2||i<=0)return;if(s===Jr.GEODESIC||s===Jr.RHUMB){var m,g;s===Jr.GEODESIC?(m=Ky.chordLength(r,l.maximumRadius),g=jr.numberOfPoints):(m=r,g=jr.numberOfPointsRhumbLine);var y=jr.extractHeights(p,l);if(Yt(n)){var _=1;for(c=0;c<f-1;++c)_+=g(p[c],p[c+1],m);var P=new Array(_),C=0;for(c=0;c<f-1;++c){var S=p[c],x=p[c+1],A=n[c],R=g(S,x,m);if(o&&c<_){var O=n[c+1],N=fM(S,x,A,O,R),V=N.length;for(u=0;u<V;++u)P[C++]=N[u]}else for(u=0;u<R;++u)P[C++]=Nt.clone(A)}P[C]=Nt.clone(n[n.length-1]),n=P,Jy.length=0}s===Jr.GEODESIC?p=jr.generateCartesianArc({positions:p,minDistance:m,ellipsoid:l,height:y}):p=jr.generateCartesianRhumbArc({positions:p,granularity:m,ellipsoid:l,height:y})}f=p.length;var U=f*4-4,z=new Float64Array(U*3),B=new Float64Array(U*3),w=new Float64Array(U*3),E=new Float32Array(U*2),D=e.st?new Float32Array(U*2):void 0,L=Yt(n)?new Uint8Array(U*4):void 0,G=0,Y=0,q=0,X=0,Q;let ee=[0];{for(c=0;c<f-1;c++){const Ut=h.Cartesian3.distance(p[c],p[c+1]);ee.push(ee[ee.length-1]+Ut)}ee=ee.map(Ut=>Ut/ee[ee.length-1])}for(u=0;u<f;++u){u===0?(Q=t0,Qe.subtract(p[0],p[1],Q),Qe.add(p[0],Q,Q)):Q=p[u-1],Qe.clone(Q,n0),Qe.clone(p[u],i0),u===f-1?(Q=t0,Qe.subtract(p[f-1],p[f-2],Q),Qe.add(p[f-1],Q,Q)):Q=p[u+1],Qe.clone(Q,o0);var he,me;Yt(L)&&(u!==0&&!o?he=n[u-1]:he=n[u],u!==f-1&&(me=n[u]));var ve=u===0?2:0,xe=u===f-1?2:4;for(d=ve;d<xe;++d){Qe.pack(i0,z,G),Qe.pack(n0,B,G),Qe.pack(o0,w,G),G+=3;var Ue=d-2<0?-1:1;if(E[Y++]=2*(d%2)-1,E[Y++]=Ue*i,e.st&&(D[q++]=ee[u],D[q++]=Math.max(E[Y-2],0)),Yt(L)){var qe=d<2?he:me;L[X++]=Nt.floatToByte(qe.red),L[X++]=Nt.floatToByte(qe.green),L[X++]=Nt.floatToByte(qe.blue),L[X++]=Nt.floatToByte(qe.alpha)}}}var Me=new hM;Me.position=new Hs({componentDatatype:Ws.DOUBLE,componentsPerAttribute:3,values:z}),Me.prevPosition=new Hs({componentDatatype:Ws.DOUBLE,componentsPerAttribute:3,values:B}),Me.nextPosition=new Hs({componentDatatype:Ws.DOUBLE,componentsPerAttribute:3,values:w}),Me.expandAndWidth=new Hs({componentDatatype:Ws.FLOAT,componentsPerAttribute:2,values:E}),e.st&&(Me.st=new Hs({componentDatatype:Ws.FLOAT,componentsPerAttribute:2,values:D})),Yt(L)&&(Me.color=new Hs({componentDatatype:Ws.UNSIGNED_BYTE,componentsPerAttribute:4,values:L,normalize:!0}));var ue=dM.createTypedArray(U,f*6-6),Fe=0,Ze=0,At=f-1;for(u=0;u<At;++u)ue[Ze++]=Fe,ue[Ze++]=Fe+2,ue[Ze++]=Fe+1,ue[Ze++]=Fe+1,ue[Ze++]=Fe+2,ue[Ze++]=Fe+3,Fe+=4;return new cM({attributes:Me,indices:ue,primitiveType:pM.TRIANGLES,boundingSphere:aM.fromPoints(p),geometryType:uM.POLYLINES})};var cf;function mM(){return typeof cf>"u"&&(cf=new h.EllipsoidGeodesic),cf}function gM(t,i){var e=i/3e7;return e=Math.min(1,e),e=1-Math.pow(1-e,2),Math.sin(Math.PI*t)*1e6*e}function vM(t,i,e,n=1){var o=mM(),s=h.Cartesian3.fromDegreesArray([t[0],t[1],i[0],i[1]]),r=[0,0];t.length>=3&&i.length>=3&&(r=[t[2],i[2]]);var l=h.Cartographic.fromDegrees(t[0],t[1]),c=h.Cartographic.fromDegrees(i[0],i[1]);o.setEndPoints(l,c);var u=o.surfaceDistance,d=h.PolylinePipeline.generateCartesianArc({positions:s,height:r,minDistance:u/36}),p=d.length;return d.forEach(function(f,m){var g=m/(p-1),y=gM(g,u*n),_=h.Cartographic.fromCartesian(f);_.height+=y,h.Cartesian3.fromRadians(_.longitude,_.latitude,_.height,h.Ellipsoid.WGS84,d[m])}),d}function yM(t=[.8,.8,0,1],i=!0,e=!0,n){var o;const s=n?{type:"Image",uniforms:{color:new h.Color(...t)}}:{type:"Color",uniforms:{color:new h.Color(...t)}};i?(o=new h.PolylineMaterialAppearance({material:new h.Material({fabric:s,translucent:!1}),translucent:!1}),o.renderState.blending=h.BlendingState.ADDITIVE_BLEND,o.renderState.depthMask=!1,o.renderState.depthTest={enabled:!0},o.getRenderState=function(){const d=h.Appearance.prototype.getRenderState.call(this);return d.depthTest={enabled:e},d.depthMask=!1,d},o.material.type==="Image"&&(o.material._uniforms.image_1=n)):(o=new h.PolylineMaterialAppearance({material:new h.Material({fabric:s,translucent:!0})}),o.getRenderState=function(){const d=h.Appearance.prototype.getRenderState.call(this);return d.depthTest={enabled:e},d.depthMask=!1,d},o.material.type==="Image"&&(o.material._uniforms.image_1=n));var r=h.ShaderSource.replaceMain(o._vertexShaderSource,"czm_twp_main"),l=`out vec4 v_twp;
1817
+ `;const z=f.computeLocalAxisedBoundingBoxFromAttribute("position");if(!z)return;const{min:B,max:w}=z;f.setLocalAxisedBoundingBox(B,w)},d=async()=>{if(e.points&&e.points.length>2){const{minPos:f,center:m}=a.getMinMaxCorner(e.points),g=f[2]-e.depth;if(!a.equalsN3(e.points[e.points.length-1],e.points[e.points.length-2])){const x=It({originPosition:m},e.points.map((A,R)=>{let O=[...A];return O[2]=g,O}));u(l,m,x[0],"bottom",!0)}const y=this._interpolationAlongPolygon(e.points.map((x,A)=>h.Cartesian3.fromArray(a.lbhToXyz(x))),e.interpolation),_=await n.getHeightsByLonLats(y.map(x=>[x[0],x[1]]));let P=[];for(let x=0;x<y.length;x++){const A=y[x];P.push([A[0],A[1],_[x]??A[2]],[A[0],A[1],g])}const C=It({originPosition:m},P);let S=this._isClockwise(e.points,n);u(s,m,C[0],"side",S)}else s.attributes=void 0,l.attributes=void 0};d();const p=this.dv(a.createNextAnimateFrameEvent(e.depthChanged,e.interpolationChanged,e.pointsChanged,e.bottomImageChanged,e.sideImageChanged));this.ad(p.don(d))}{const u=()=>{r.uri=e.sideImage.url,c.uri=e.bottomImage.url,s.uniformMap={u_image:{type:"texture",id:r.id},u_color:[1,1,1,e.opacity]},l.uniformMap={u_image:{type:"texture",id:c.id},u_color:[1,1,1,e.opacity]}};u();const d=this.ad(a.createNextAnimateFrameEvent(e.opacityChanged,e.bottomImageChanged,e.sideImageChanged));this.d(d.don(u))}}flyTo(e,n){const{sceneObject:o,czmViewer:s}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):o.points?(oe(s,o,n,o.points,e),!0):!1:!1}_interpolationAlongPolygon(e,n){var o=[];for(let c=0;c<e.length;++c){var s=e[c],r=e[(c+1)%e.length],l=this._interpolationAlongLine(s,r,n);o.push(...l)}return o.push(o[0]),o}_interpolationAlongLine(e,n,o){var s=[],r=h.Cartesian3.distance(e,n),l=h.Cartesian3.subtract(n,e,new h.Cartesian3);l.equals(h.Cartesian3.ZERO)||h.Cartesian3.normalize(l,l);for(var c=0;c<r;){var u=new h.Cartesian3(l.x*c,l.y*c,l.z*c),d=h.Cartesian3.add(e,u,new h.Cartesian3);const p=re(d);p&&s.push(p),c+=o}return s}_isClockwise(e,n){if(n.viewer)for(let o=0;o<e.length;o++){let s=h.Cartesian3.fromDegrees(...e[o]),r=h.Cartesian3.fromDegrees(...e[(o+1)%e.length]),l=h.Cartesian3.fromDegrees(...e[(o+2)%e.length]),c=h.Cartesian3.subtract(r,s,new h.Cartesian3),u=h.Cartesian3.subtract(l,r,new h.Cartesian3);if(c.equals(h.Cartesian3.ZERO)||u.equals(h.Cartesian3.ZERO))return!0;if(h.Cartesian3.normalize(c,c),h.Cartesian3.normalize(u,u),Math.abs(h.Cartesian3.dot(c,u))==1){if(o==e.length-1)return!0;continue}let d=h.Cartesian3.cross(c,u,new h.Cartesian3);return h.Cartesian3.dot(d,n.viewer.camera.directionWC)>0}}_triangleIndices(e){let n=new Uint32Array(e*3);for(let o=0;o<e;++o)n[o*3+0]=o,n[o*3+1]=o%2?(o+2)%e:(o+1)%e,n[o*3+2]=o%2?(o+1)%e:(o+2)%e;return n}_getDistance(e,n){return Math.sqrt(Math.pow(e[0]-n[0],2)+Math.pow(e[1]-n[1],2))}};v(Fl,"type",Fl.register("ESCesiumViewer",a.ESPit.type,Fl));let Jp=Fl;const zl=class zl extends qt{constructor(e,n){super(e,n);v(this,"_czmPolygonPrimitive");v(this,"_geoPolylines");if(this._czmPolygonPrimitive=this.disposeVar(new bn(n,e.id)),this._geoPolylines=this.disposeVar(new pi(n,e.id)),!n.viewer){console.warn("viewer is undefined!");return}{const l=()=>{this.geoPolygon&&(this.geoPolygon.show=!1)};l(),this.ad(this.sceneObject.showChanged.don(l))}const s=this._geoPolylines;s.arcType="RHUMB";const r=this._czmPolygonPrimitive;this.dispose(a.track([r,"allowPicking"],[e,"allowPicking"])),this.dispose(a.track([s,"allowPicking"],[e,"allowPicking"])),this.dispose(a.track([s,"color"],[e,"strokeColor"])),this.dispose(a.track([s,"width"],[e,"strokeWidth"]));{r.perPositionHeight=!0;const l=()=>{s.show=e.show&&e.stroked,r.show=e.show&&e.filled,r.material={type:"Color",color:e.fillColor}};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(e.showChanged,e.strokedChanged,e.filledChanged,e.fillColorChanged));this.dispose(c.don(l))}{const l=()=>{const u={positions:[],holes:[]};if(e.points&&e.points.length>=3){if(s.positions=[[...e.points,e.points[0]]],u.positions=e.points,e.innerRings&&e.innerRings.length>0)for(let d=0;d<e.innerRings.length;d++){const p=e.innerRings[d];u.holes.push({positions:p}),s.positions.push([...p,p[0]])}r.polygonHierarchy=u}else r.polygonHierarchy=u};l();const c=this.disposeVar(a.createNextAnimateFrameEvent(e.pointsChanged,e.innerRingsChanged));this.dispose(c.disposableOn(()=>l()))}}get czmPolygonPrimitive(){return this._czmPolygonPrimitive}flyTo(e,n){const{sceneObject:o,czmViewer:s,czmPolygonPrimitive:r}=this;return s.actived?o.flyToParam||o.flyInParam?super.flyTo(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}flyIn(e,n){const{sceneObject:o,czmViewer:s,czmPolygonPrimitive:r}=this;return s.actived?o.flyInParam?super.flyIn(e,n):r.positions?(oe(s,o,n,r.positions,e),!0):!1:!1}};v(zl,"type",zl.register("ESCesiumViewer",a.ESPolygonWithHole.type,zl));let jp=zl;var yt=63710088e-1,ef={centimeters:yt*100,centimetres:yt*100,degrees:yt/111325,feet:yt*3.28084,inches:yt*39.37,kilometers:yt/1e3,kilometres:yt/1e3,meters:yt,metres:yt,miles:yt/1609.344,millimeters:yt*1e3,millimetres:yt*1e3,nauticalmiles:yt/1852,radians:1,yards:yt*1.0936},MT={centimeters:100,centimetres:100,degrees:1/111325,feet:3.28084,inches:39.37,kilometers:1/1e3,kilometres:1/1e3,meters:1,metres:1,miles:1/1609.344,millimeters:1e3,millimetres:1e3,nauticalmiles:1/1852,radians:1/yt,yards:1.0936133},tf={acres:247105e-9,centimeters:1e4,centimetres:1e4,feet:10.763910417,hectares:1e-4,inches:1550.003100006,kilometers:1e-6,kilometres:1e-6,meters:1,metres:1,miles:386e-9,millimeters:1e6,millimetres:1e6,yards:1.195990046};function Xt(t,i,e){e===void 0&&(e={});var n={type:"Feature"};return(e.id===0||e.id)&&(n.id=e.id),e.bbox&&(n.bbox=e.bbox),n.properties=i||{},n.geometry=t,n}function IT(t,i,e){switch(t){case"Point":return ht(i).geometry;case"LineString":return oi(i).geometry;case"Polygon":return it(i).geometry;case"MultiPoint":return qy(i).geometry;case"MultiLineString":return nf(i).geometry;case"MultiPolygon":return of(i).geometry;default:throw new Error(t+" is invalid")}}function ht(t,i,e){if(e===void 0&&(e={}),!t)throw new Error("coordinates is required");if(!Array.isArray(t))throw new Error("coordinates must be an Array");if(t.length<2)throw new Error("coordinates must be at least 2 numbers long");if(!bh(t[0])||!bh(t[1]))throw new Error("coordinates must contain numbers");var n={type:"Point",coordinates:t};return Xt(n,i,e)}function DT(t,i,e){return e===void 0&&(e={}),Ot(t.map(function(n){return ht(n,i)}),e)}function it(t,i,e){e===void 0&&(e={});for(var n=0,o=t;n<o.length;n++){var s=o[n];if(s.length<4)throw new Error("Each LinearRing of a Polygon must have 4 or more Positions.");for(var r=0;r<s[s.length-1].length;r++)if(s[s.length-1][r]!==s[0][r])throw new Error("First and last Position are not equivalent.")}var l={type:"Polygon",coordinates:t};return Xt(l,i,e)}function RT(t,i,e){return e===void 0&&(e={}),Ot(t.map(function(n){return it(n,i)}),e)}function oi(t,i,e){if(e===void 0&&(e={}),t.length<2)throw new Error("coordinates must be an array of two or more positions");var n={type:"LineString",coordinates:t};return Xt(n,i,e)}function FT(t,i,e){return e===void 0&&(e={}),Ot(t.map(function(n){return oi(n,i)}),e)}function Ot(t,i){i===void 0&&(i={});var e={type:"FeatureCollection"};return i.id&&(e.id=i.id),i.bbox&&(e.bbox=i.bbox),e.features=t,e}function nf(t,i,e){e===void 0&&(e={});var n={type:"MultiLineString",coordinates:t};return Xt(n,i,e)}function qy(t,i,e){e===void 0&&(e={});var n={type:"MultiPoint",coordinates:t};return Xt(n,i,e)}function of(t,i,e){e===void 0&&(e={});var n={type:"MultiPolygon",coordinates:t};return Xt(n,i,e)}function zT(t,i,e){e===void 0&&(e={});var n={type:"GeometryCollection",geometries:t};return Xt(n,i,e)}function LT(t,i){if(i===void 0&&(i=0),i&&!(i>=0))throw new Error("precision must be a positive number");var e=Math.pow(10,i||0);return Math.round(t*e)/e}function sf(t,i){i===void 0&&(i="kilometers");var e=ef[i];if(!e)throw new Error(i+" units is invalid");return t*e}function rf(t,i){i===void 0&&(i="kilometers");var e=ef[i];if(!e)throw new Error(i+" units is invalid");return t/e}function OT(t,i){return Xy(rf(t,i))}function NT(t){var i=t%360;return i<0&&(i+=360),i}function Xy(t){var i=t%(2*Math.PI);return i*180/Math.PI}function Kr(t){var i=t%360;return i*Math.PI/180}function BT(t,i,e){if(i===void 0&&(i="kilometers"),e===void 0&&(e="kilometers"),!(t>=0))throw new Error("length must be a positive number");return sf(rf(t,i),e)}function VT(t,i,e){if(i===void 0&&(i="meters"),e===void 0&&(e="kilometers"),!(t>=0))throw new Error("area must be a positive number");var n=tf[i];if(!n)throw new Error("invalid original units");var o=tf[e];if(!o)throw new Error("invalid final units");return t/n*o}function bh(t){return!isNaN(t)&&t!==null&&!Array.isArray(t)}function af(t){return!!t&&t.constructor===Object}function UT(t){if(!t)throw new Error("bbox is required");if(!Array.isArray(t))throw new Error("bbox must be an Array");if(t.length!==4&&t.length!==6)throw new Error("bbox must be an Array of 4 or 6 numbers");t.forEach(function(i){if(!bh(i))throw new Error("bbox must only contain numbers")})}function WT(t){if(!t)throw new Error("id is required");if(["string","number"].indexOf(typeof t)===-1)throw new Error("id must be a number or a string")}const GT=Object.freeze(Object.defineProperty({__proto__:null,areaFactors:tf,bearingToAzimuth:NT,convertArea:VT,convertLength:BT,degreesToRadians:Kr,earthRadius:yt,factors:ef,feature:Xt,featureCollection:Ot,geometry:IT,geometryCollection:zT,isNumber:bh,isObject:af,lengthToDegrees:OT,lengthToRadians:rf,lineString:oi,lineStrings:FT,multiLineString:nf,multiPoint:qy,multiPolygon:of,point:ht,points:DT,polygon:it,polygons:RT,radiansToDegrees:Xy,radiansToLength:sf,round:LT,unitsFactors:MT,validateBBox:UT,validateId:WT},Symbol.toStringTag,{value:"Module"}));function Sh(t){if(!t)throw new Error("coord is required");if(!Array.isArray(t)){if(t.type==="Feature"&&t.geometry!==null&&t.geometry.type==="Point")return t.geometry.coordinates;if(t.type==="Point")return t.coordinates}if(Array.isArray(t)&&t.length>=2&&!Array.isArray(t[0])&&!Array.isArray(t[1]))return t;throw new Error("coord must be GeoJSON Point or an Array of numbers")}function Ii(t){if(Array.isArray(t))return t;if(t.type==="Feature"){if(t.geometry!==null)return t.geometry.coordinates}else if(t.coordinates)return t.coordinates;throw new Error("coords must be GeoJSON Feature, Geometry Object or an Array")}function HT(t,i,e){if(!t)throw new Error("No featureCollection passed");if(!t||t.type!=="FeatureCollection")throw new Error("Invalid input to "+e+", FeatureCollection required");for(var n=0,o=t.features;n<o.length;n++){var s=o[n];if(!s||s.type!=="Feature"||!s.geometry)throw new Error("Invalid input to "+e+", Feature with geometry required");if(!s.geometry||s.geometry.type!==i)throw new Error("Invalid input to "+e+": must be a "+i+", given "+s.geometry.type)}}function Di(t){return t.type==="Feature"?t.geometry:t}function $T(t,i){return t.type==="FeatureCollection"?"FeatureCollection":t.type==="GeometryCollection"?"GeometryCollection":t.type==="Feature"&&t.geometry!==null?t.geometry.type:t.type}function Ri(t,i,e){e===void 0&&(e={});var n=Sh(t),o=Sh(i),s=Kr(o[1]-n[1]),r=Kr(o[0]-n[0]),l=Kr(n[1]),c=Kr(o[1]),u=Math.pow(Math.sin(s/2),2)+Math.pow(Math.sin(r/2),2)*Math.cos(l)*Math.cos(c);return sf(2*Math.atan2(Math.sqrt(u),Math.sqrt(1-u)),e.units)}function Ro(t,i,e){if(t!==null)for(var n,o,s,r,l,c,u,d=0,p=0,f,m=t.type,g=m==="FeatureCollection",y=m==="Feature",_=g?t.features.length:1,P=0;P<_;P++){u=g?t.features[P].geometry:y?t.geometry:t,f=u?u.type==="GeometryCollection":!1,l=f?u.geometries.length:1;for(var C=0;C<l;C++){var S=0,x=0;if(r=f?u.geometries[C]:u,r!==null){c=r.coordinates;var A=r.type;switch(d=e&&(A==="Polygon"||A==="MultiPolygon")?1:0,A){case null:break;case"Point":if(i(c,p,P,S,x)===!1)return!1;p++,S++;break;case"LineString":case"MultiPoint":for(n=0;n<c.length;n++){if(i(c[n],p,P,S,x)===!1)return!1;p++,A==="MultiPoint"&&S++}A==="LineString"&&S++;break;case"Polygon":case"MultiLineString":for(n=0;n<c.length;n++){for(o=0;o<c[n].length-d;o++){if(i(c[n][o],p,P,S,x)===!1)return!1;p++}A==="MultiLineString"&&S++,A==="Polygon"&&x++}A==="Polygon"&&S++;break;case"MultiPolygon":for(n=0;n<c.length;n++){for(x=0,o=0;o<c[n].length;o++){for(s=0;s<c[n][o].length-d;s++){if(i(c[n][o][s],p,P,S,x)===!1)return!1;p++}x++}S++}break;case"GeometryCollection":for(n=0;n<r.geometries.length;n++)if(Ro(r.geometries[n],i,e)===!1)return!1;break;default:throw new Error("Unknown Geometry Type")}}}}}function qT(t,i,e,n){var o=e;return Ro(t,function(s,r,l,c,u){r===0&&e===void 0?o=s:o=i(o,s,r,l,c,u)},n),o}function Yy(t,i){var e;switch(t.type){case"FeatureCollection":for(e=0;e<t.features.length&&i(t.features[e].properties,e)!==!1;e++);break;case"Feature":i(t.properties,0);break}}function XT(t,i,e){var n=e;return Yy(t,function(o,s){s===0&&e===void 0?n=o:n=i(n,o,s)}),n}function Us(t,i){if(t.type==="Feature")i(t,0);else if(t.type==="FeatureCollection")for(var e=0;e<t.features.length&&i(t.features[e],e)!==!1;e++);}function YT(t,i,e){var n=e;return Us(t,function(o,s){s===0&&e===void 0?n=o:n=i(n,o,s)}),n}function ZT(t){var i=[];return Ro(t,function(e){i.push(e)}),i}function lf(t,i){var e,n,o,s,r,l,c,u,d,p,f=0,m=t.type==="FeatureCollection",g=t.type==="Feature",y=m?t.features.length:1;for(e=0;e<y;e++){for(l=m?t.features[e].geometry:g?t.geometry:t,u=m?t.features[e].properties:g?t.properties:{},d=m?t.features[e].bbox:g?t.bbox:void 0,p=m?t.features[e].id:g?t.id:void 0,c=l?l.type==="GeometryCollection":!1,r=c?l.geometries.length:1,o=0;o<r;o++){if(s=c?l.geometries[o]:l,s===null){if(i(null,f,u,d,p)===!1)return!1;continue}switch(s.type){case"Point":case"LineString":case"MultiPoint":case"Polygon":case"MultiLineString":case"MultiPolygon":{if(i(s,f,u,d,p)===!1)return!1;break}case"GeometryCollection":{for(n=0;n<s.geometries.length;n++)if(i(s.geometries[n],f,u,d,p)===!1)return!1;break}default:throw new Error("Unknown Geometry Type")}}f++}}function QT(t,i,e){var n=e;return lf(t,function(o,s,r,l,c){s===0&&e===void 0?n=o:n=i(n,o,s,r,l,c)}),n}function ji(t,i){lf(t,function(e,n,o,s,r){var l=e===null?null:e.type;switch(l){case null:case"Point":case"LineString":case"Polygon":return i(Xt(e,o,{bbox:s,id:r}),n,0)===!1?!1:void 0}var c;switch(l){case"MultiPoint":c="Point";break;case"MultiLineString":c="LineString";break;case"MultiPolygon":c="Polygon";break}for(var u=0;u<e.coordinates.length;u++){var d=e.coordinates[u],p={type:c,coordinates:d};if(i(Xt(p,o),n,u)===!1)return!1}})}function kT(t,i,e){var n=e;return ji(t,function(o,s,r){s===0&&r===0&&e===void 0?n=o:n=i(n,o,s,r)}),n}function Zy(t,i){ji(t,function(e,n,o){var s=0;if(e.geometry){var r=e.geometry.type;if(!(r==="Point"||r==="MultiPoint")){var l,c=0,u=0,d=0;if(Ro(e,function(p,f,m,g,y){if(l===void 0||n>c||g>u||y>d){l=p,c=n,u=g,d=y,s=0;return}var _=oi([l,p],e.properties);if(i(_,n,o,y,s)===!1)return!1;s++,l=p})===!1)return!1}}})}function Qy(t,i,e){var n=e,o=!1;return Zy(t,function(s,r,l,c,u){o===!1&&e===void 0?n=s:n=i(n,s,r,l,c,u),o=!0}),n}function ky(t,i){if(!t)throw new Error("geojson is required");ji(t,function(e,n,o){if(e.geometry!==null){var s=e.geometry.type,r=e.geometry.coordinates;switch(s){case"LineString":if(i(e,n,o,0,0)===!1)return!1;break;case"Polygon":for(var l=0;l<r.length;l++)if(i(oi(r[l],e.properties),n,o,l)===!1)return!1;break}}})}function KT(t,i,e){var n=e;return ky(t,function(o,s,r,l){s===0&&e===void 0?n=o:n=i(n,o,s,r,l)}),n}function JT(t,i){if(i=i||{},!af(i))throw new Error("options is invalid");var e=i.featureIndex||0,n=i.multiFeatureIndex||0,o=i.geometryIndex||0,s=i.segmentIndex||0,r=i.properties,l;switch(t.type){case"FeatureCollection":e<0&&(e=t.features.length+e),r=r||t.features[e].properties,l=t.features[e].geometry;break;case"Feature":r=r||t.properties,l=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":l=t;break;default:throw new Error("geojson is invalid")}if(l===null)return null;var c=l.coordinates;switch(l.type){case"Point":case"MultiPoint":return null;case"LineString":return s<0&&(s=c.length+s-1),oi([c[s],c[s+1]],r,i);case"Polygon":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s-1),oi([c[o][s],c[o][s+1]],r,i);case"MultiLineString":return n<0&&(n=c.length+n),s<0&&(s=c[n].length+s-1),oi([c[n][s],c[n][s+1]],r,i);case"MultiPolygon":return n<0&&(n=c.length+n),o<0&&(o=c[n].length+o),s<0&&(s=c[n][o].length-s-1),oi([c[n][o][s],c[n][o][s+1]],r,i)}throw new Error("geojson is invalid")}function jT(t,i){if(i=i||{},!af(i))throw new Error("options is invalid");var e=i.featureIndex||0,n=i.multiFeatureIndex||0,o=i.geometryIndex||0,s=i.coordIndex||0,r=i.properties,l;switch(t.type){case"FeatureCollection":e<0&&(e=t.features.length+e),r=r||t.features[e].properties,l=t.features[e].geometry;break;case"Feature":r=r||t.properties,l=t.geometry;break;case"Point":case"MultiPoint":return null;case"LineString":case"Polygon":case"MultiLineString":case"MultiPolygon":l=t;break;default:throw new Error("geojson is invalid")}if(l===null)return null;var c=l.coordinates;switch(l.type){case"Point":return ht(c,r,i);case"MultiPoint":return n<0&&(n=c.length+n),ht(c[n],r,i);case"LineString":return s<0&&(s=c.length+s),ht(c[s],r,i);case"Polygon":return o<0&&(o=c.length+o),s<0&&(s=c[o].length+s),ht(c[o][s],r,i);case"MultiLineString":return n<0&&(n=c.length+n),s<0&&(s=c[n].length+s),ht(c[n][s],r,i);case"MultiPolygon":return n<0&&(n=c.length+n),o<0&&(o=c[n].length+o),s<0&&(s=c[n][o].length-s),ht(c[n][o][s],r,i)}throw new Error("geojson is invalid")}const eM=Object.freeze(Object.defineProperty({__proto__:null,coordAll:ZT,coordEach:Ro,coordReduce:qT,featureEach:Us,featureReduce:YT,findPoint:jT,findSegment:JT,flattenEach:ji,flattenReduce:kT,geomEach:lf,geomReduce:QT,lineEach:ky,lineReduce:KT,propEach:Yy,propReduce:XT,segmentEach:Zy,segmentReduce:Qy},Symbol.toStringTag,{value:"Module"}));function tM(t,i){return i===void 0&&(i={}),Qy(t,function(e,n){var o=n.geometry.coordinates;return e+Ri(o[0],o[1],i)},0)}function iM(t){var i=oi(t),e=tM(i,{units:"meters"});return e}function*nM(t){t.type==="FeatureCollection"?yield*t.features.map(i=>[i.geometry,i]):t.type==="Feature"&&(yield[t.geometry,t])}function*oM(t){for(const[i,e]of nM(t))if(i.type==="LineString")yield[i.coordinates,e];else if(i.type==="MultiLineString")for(let n of i.coordinates)yield[n,e]}function sM(t,i,e){return[...oM(t)].map(([n,o])=>{if(n.length<2)return;const s=n.map(c=>[c[0],c[1],c[2]??0]),l=iM(s)/e;return{positions:s,repeat:l,width:i,extra:{geojson:{feature:o}}}}).filter(n=>!!n)}const Jr=h.ArcType,rM=h.arrayRemoveDuplicates,aM=h.BoundingSphere,Qe=h.Cartesian3,Nt=h.Color,Ws=h.ComponentDatatype,lM=h.Frozen,Yt=h.defined,Gs=h.DeveloperError,Fi=h.Ellipsoid,cM=h.Geometry,Hs=h.GeometryAttribute,hM=h.GeometryAttributes,uM=h.GeometryType,dM=h.IndexDatatype,Ky=h.Math,jr=h.PolylinePipeline,pM=h.PrimitiveType,en=h.VertexFormat;var Jy=[];function fM(t,i,e,n,o){var s=Jy;s.length=o;var r,l=e.red,c=e.green,u=e.blue,d=e.alpha,p=n.red,f=n.green,m=n.blue,g=n.alpha;if(Nt.equals(e,n)){for(r=0;r<o;r++)s[r]=Nt.clone(e);return s}var y=(p-l)/o,_=(f-c)/o,P=(m-u)/o,C=(g-d)/o;for(r=0;r<o;r++)s[r]=new Nt(l+r*y,c+r*_,u+r*P,d+r*C);return s}function $s(t){t=t??lM.EMPTY_OBJECT;var i=t.positions,e=t.colors,n=t.width??1,o=t.colorsPerVertex??!1;if(!Yt(i)||i.length<2)throw new Gs("At least two positions are required.");if(typeof n!="number")throw new Gs("width must be a number");if(Yt(e)&&(o&&e.length<i.length||!o&&e.length<i.length-1))throw new Gs("colors has an invalid length.");this._positions=i,this._colors=e,this._width=n,this._colorsPerVertex=o,this._vertexFormat=en.clone(t.vertexFormat??en.DEFAULT),this._arcType=t.arcType??Jr.GEODESIC,this._granularity=t.granularity??Ky.RADIANS_PER_DEGREE,this._ellipsoid=Fi.clone(t.ellipsoid??Fi.WGS84),this._workerName="createPolylineGeometry";var s=1+i.length*Qe.packedLength;s+=Yt(e)?1+e.length*Nt.packedLength:1,this.packedLength=s+Fi.packedLength+en.packedLength+4}$s.pack=function(t,i,e){if(!Yt(t))throw new Gs("value is required");if(!Yt(i))throw new Gs("array is required");e=e??0;var n,o=t._positions,s=o.length;for(i[e++]=s,n=0;n<s;++n,e+=Qe.packedLength)Qe.pack(o[n],i,e);var r=t._colors;for(s=Yt(r)?r.length:0,i[e++]=s,n=0;n<s;++n,e+=Nt.packedLength)Nt.pack(r[n],i,e);return Fi.pack(t._ellipsoid,i,e),e+=Fi.packedLength,en.pack(t._vertexFormat,i,e),e+=en.packedLength,i[e++]=t._width,i[e++]=t._colorsPerVertex?1:0,i[e++]=t._arcType,i[e]=t._granularity,i};var jy=Fi.clone(Fi.UNIT_SPHERE),e0=new en,Fo={positions:void 0,colors:void 0,ellipsoid:jy,vertexFormat:e0,width:void 0,colorsPerVertex:void 0,arcType:void 0,granularity:void 0};$s.unpack=function(t,i,e){if(!Yt(t))throw new Gs("array is required");i=i??0;var n,o=t[i++],s=new Array(o);for(n=0;n<o;++n,i+=Qe.packedLength)s[n]=Qe.unpack(t,i);o=t[i++];var r=o>0?new Array(o):void 0;for(n=0;n<o;++n,i+=Nt.packedLength)r[n]=Nt.unpack(t,i);var l=Fi.unpack(t,i,jy);i+=Fi.packedLength;var c=en.unpack(t,i,e0);i+=en.packedLength;var u=t[i++],d=t[i++]===1,p=t[i++],f=t[i];return Yt(e)?(e._positions=s,e._colors=r,e._ellipsoid=Fi.clone(l,e._ellipsoid),e._vertexFormat=en.clone(c,e._vertexFormat),e._width=u,e._colorsPerVertex=d,e._arcType=p,e._granularity=f,e):(Fo.positions=s,Fo.colors=r,Fo.width=u,Fo.colorsPerVertex=d,Fo.arcType=p,Fo.granularity=f,new $s(Fo))};var t0=new Qe,i0=new Qe,n0=new Qe,o0=new Qe;$s.createGeometry=function(t){var i=t._width,e=t._vertexFormat,n=t._colors,o=t._colorsPerVertex,s=t._arcType,r=t._granularity,l=t._ellipsoid,c,u,d,p=rM(t._positions,Qe.equalsEpsilon),f=p.length;if(f<2||i<=0)return;if(s===Jr.GEODESIC||s===Jr.RHUMB){var m,g;s===Jr.GEODESIC?(m=Ky.chordLength(r,l.maximumRadius),g=jr.numberOfPoints):(m=r,g=jr.numberOfPointsRhumbLine);var y=jr.extractHeights(p,l);if(Yt(n)){var _=1;for(c=0;c<f-1;++c)_+=g(p[c],p[c+1],m);var P=new Array(_),C=0;for(c=0;c<f-1;++c){var S=p[c],x=p[c+1],A=n[c],R=g(S,x,m);if(o&&c<_){var O=n[c+1],N=fM(S,x,A,O,R),V=N.length;for(u=0;u<V;++u)P[C++]=N[u]}else for(u=0;u<R;++u)P[C++]=Nt.clone(A)}P[C]=Nt.clone(n[n.length-1]),n=P,Jy.length=0}s===Jr.GEODESIC?p=jr.generateCartesianArc({positions:p,minDistance:m,ellipsoid:l,height:y}):p=jr.generateCartesianRhumbArc({positions:p,granularity:m,ellipsoid:l,height:y})}f=p.length;var U=f*4-4,z=new Float64Array(U*3),B=new Float64Array(U*3),w=new Float64Array(U*3),E=new Float32Array(U*2),D=e.st?new Float32Array(U*2):void 0,L=Yt(n)?new Uint8Array(U*4):void 0,G=0,Y=0,q=0,X=0,Q;let ee=[0];{for(c=0;c<f-1;c++){const Ut=h.Cartesian3.distance(p[c],p[c+1]);ee.push(ee[ee.length-1]+Ut)}ee=ee.map(Ut=>Ut/ee[ee.length-1])}for(u=0;u<f;++u){u===0?(Q=t0,Qe.subtract(p[0],p[1],Q),Qe.add(p[0],Q,Q)):Q=p[u-1],Qe.clone(Q,n0),Qe.clone(p[u],i0),u===f-1?(Q=t0,Qe.subtract(p[f-1],p[f-2],Q),Qe.add(p[f-1],Q,Q)):Q=p[u+1],Qe.clone(Q,o0);var he,me;Yt(L)&&(u!==0&&!o?he=n[u-1]:he=n[u],u!==f-1&&(me=n[u]));var ve=u===0?2:0,xe=u===f-1?2:4;for(d=ve;d<xe;++d){Qe.pack(i0,z,G),Qe.pack(n0,B,G),Qe.pack(o0,w,G),G+=3;var Ue=d-2<0?-1:1;if(E[Y++]=2*(d%2)-1,E[Y++]=Ue*i,e.st&&(D[q++]=ee[u],D[q++]=Math.max(E[Y-2],0)),Yt(L)){var qe=d<2?he:me;L[X++]=Nt.floatToByte(qe.red),L[X++]=Nt.floatToByte(qe.green),L[X++]=Nt.floatToByte(qe.blue),L[X++]=Nt.floatToByte(qe.alpha)}}}var Me=new hM;Me.position=new Hs({componentDatatype:Ws.DOUBLE,componentsPerAttribute:3,values:z}),Me.prevPosition=new Hs({componentDatatype:Ws.DOUBLE,componentsPerAttribute:3,values:B}),Me.nextPosition=new Hs({componentDatatype:Ws.DOUBLE,componentsPerAttribute:3,values:w}),Me.expandAndWidth=new Hs({componentDatatype:Ws.FLOAT,componentsPerAttribute:2,values:E}),e.st&&(Me.st=new Hs({componentDatatype:Ws.FLOAT,componentsPerAttribute:2,values:D})),Yt(L)&&(Me.color=new Hs({componentDatatype:Ws.UNSIGNED_BYTE,componentsPerAttribute:4,values:L,normalize:!0}));var ue=dM.createTypedArray(U,f*6-6),Fe=0,Ze=0,At=f-1;for(u=0;u<At;++u)ue[Ze++]=Fe,ue[Ze++]=Fe+2,ue[Ze++]=Fe+1,ue[Ze++]=Fe+1,ue[Ze++]=Fe+2,ue[Ze++]=Fe+3,Fe+=4;return new cM({attributes:Me,indices:ue,primitiveType:pM.TRIANGLES,boundingSphere:aM.fromPoints(p),geometryType:uM.POLYLINES})};var cf;function mM(){return typeof cf>"u"&&(cf=new h.EllipsoidGeodesic),cf}function gM(t,i){var e=i/3e7;return e=Math.min(1,e),e=1-Math.pow(1-e,2),Math.sin(Math.PI*t)*1e6*e}function vM(t,i,e,n=1){var o=mM(),s=h.Cartesian3.fromDegreesArray([t[0],t[1],i[0],i[1]]),r=[0,0];t.length>=3&&i.length>=3&&(r=[t[2],i[2]]);var l=h.Cartographic.fromDegrees(t[0],t[1]),c=h.Cartographic.fromDegrees(i[0],i[1]);o.setEndPoints(l,c);var u=o.surfaceDistance,d=h.PolylinePipeline.generateCartesianArc({positions:s,height:r,minDistance:u/36}),p=d.length;return d.forEach(function(f,m){var g=m/(p-1),y=gM(g,u*n),_=h.Cartographic.fromCartesian(f);_.height+=y,h.Cartesian3.fromRadians(_.longitude,_.latitude,_.height,h.Ellipsoid.WGS84,d[m])}),d}function yM(t=[.8,.8,0,1],i=!0,e=!0,n){var o;const s=n?{type:"Image",uniforms:{color:new h.Color(...t)}}:{type:"Color",uniforms:{color:new h.Color(...t)}};i?(o=new h.PolylineMaterialAppearance({material:new h.Material({fabric:s,translucent:!1}),translucent:!1}),o.renderState.blending=h.BlendingState.ADDITIVE_BLEND,o.renderState.depthMask=!1,o.renderState.depthTest={enabled:!0},o.getRenderState=function(){const d=h.Appearance.prototype.getRenderState.call(this);return d.depthTest={enabled:e},d.depthMask=!1,d},o.material.type==="Image"&&(o.material._uniforms.image_1=n)):(o=new h.PolylineMaterialAppearance({material:new h.Material({fabric:s,translucent:!0})}),o.getRenderState=function(){const d=h.Appearance.prototype.getRenderState.call(this);return d.depthTest={enabled:e},d.depthMask=!1,d},o.material.type==="Image"&&(o.material._uniforms.image_1=n));var r=h.ShaderSource.replaceMain(o._vertexShaderSource,"czm_twp_main"),l=`out vec4 v_twp;
1818
1818
  out vec4 v_color;
1819
1819
  out vec4 v_bgColor;
1820
1820
  out float v_expand;
@@ -1984,7 +1984,7 @@ return material;
1984
1984
  float arrowRepeat = pos.x / (repeat * czm_pixelRatio);
1985
1985
  float u = fract(arrowRepeat - speed / 10.0 * czm_frameNumber / 60.0);
1986
1986
  vec4 colorImage = texture(image, vec2(u, materialInput.st.t));
1987
- vec4 fragColor = vec4(arrowColor.rgb*colorImage.a + color.rgb*(1.0-colorImage.a), color.a);
1987
+ vec4 fragColor = colorImage.a * arrowColor + (1.0 - colorImage.a) * color;
1988
1988
 
1989
1989
  fragColor = czm_gammaCorrect(fragColor);
1990
1990
  material.emission = fragColor.rgb;
@@ -2291,10 +2291,10 @@ async function initCesiumViewer(container, czmViewer) {
2291
2291
  `;function R4(){const t="https://gitee.com/mirrors/CesiumJS/blob/main/packages/engine/Source/Core/Ion.js#L7",e=` 因浏览器同源策略限制,需要用户自行打开网址获取最新的token,点击确定自动打开网址,请不要拦截!
2292
2292
  github地址:https://github.com/CesiumGS/cesium/blob/main/packages/engine/Source/Core/Ion.js#L7
2293
2293
  gitee地址:${t}
2294
- `;console.log(e);const n=window.prompt(e,t);n&&window.open(n,"_blank")}const st=class st extends a.ESViewer{constructor(e){super(e);v(this,"_disabledInputStack",this.disposeVar(a.react(0)));v(this,"_viewer",this.dv(a.react(void 0)));v(this,"_viewerInstance");v(this,"_viewerLegend");v(this,"pickCustomAttachedInfo");v(this,"_fps",this.dv(a.react(0)));v(this,"_notSupportEditingCount",this.disposeVar(a.react(0)));v(this,"_editingSystem",Wh);v(this,"_moveObjectsProcess",this.ad(PC()));if(e.type!=="ESCesiumViewer")throw new Error("option.type must be ESCesiumViewer");this.ad(new pF(this)),this.ad(new fF(this)),this.dv(new a.ObjResettingWithEvent(this.viewerChanged,()=>{if(this.viewer)return new yF(this)})),this._viewerLegend=this.dv(new x4(this)),this._viewerInstance=this.dv(new a.ObjResettingWithEvent(this.viewerChanged,()=>{if(this.viewer)return new Fm(this,this.viewer)})),this.d(this.viewerChanged.don(o=>{this.viewer&&(this.viewer.scene.globe.baseColor=te([1,1,1,1]))}));const n=e;this.d(this._viewer.changed.don(o=>{this.viewerChanged.emit(o)})),this.dv(new a.ObjResettingWithEvent(this.subContainerChanged,()=>{if(this.setStatus("Raw"),this.setStatusLog(""),!!this.subContainer)return new gL(this.subContainer,this,o=>this._viewer.value=o,n.options)}))}get disabledInputStack(){return this._disabledInputStack.value}get disabledInputStackChanged(){return this._disabledInputStack.changed}incrementDisabledInputStack(){++this._disabledInputStack.value}decrementDisabledInputStack(){--this._disabledInputStack.value}get viewer(){return this._viewer.value}get extensions(){return this.viewer&&kt(this.viewer)}get viewerInstance(){return this._viewerInstance}get viewerLegend(){return this._viewerLegend}async pick(e,n,o){if(!this.extensions)return;const{pickingManager:s}=this.extensions;return await s.pick(e,void 0,n)}async pickPosition(e){if(!this.extensions)return;const{pickingManager:n}=this.extensions;return await n.pickPosition(e)}async quickPickPosition(e){if(!this.extensions)return;const{pickingManager:n}=this.extensions;return await n.quickPickPosition(e)}async getTerrainHeight(e){const{viewer:n}=this;if(!n)return;const o=h.Cartographic.fromDegrees(e[0],e[1],e[2],st.getHeightsScartchCarto);return n.scene.globe.getHeight(o)}getCameraInfo(){if(!this.viewer)return;const{camera:e}=this.viewer;return{position:Gt(e),rotation:Ko(e)}}calcFlyToParam(e){if(!this.viewer)return;const{camera:n}=this.viewer;if(!n||!e)return;const o=h.Cartesian3.fromDegrees(...e),s=h.Transforms.eastNorthUpToFixedFrame(o),r=h.Matrix4.inverse(s,new h.Matrix4),l=h.Matrix4.multiplyByPoint(r,n.positionWC,new h.Cartesian3),c=h.Cartesian3.magnitude(l);let u=-Math.asin(l.z/c);u=h.Math.toDegrees(u);let d=h.Math.PI_OVER_TWO-Math.atan(l.y/l.x);l.x>0&&(d+=l.y<0?-h.Math.PI:h.Math.PI),d=h.Math.toDegrees(d);const p=Ko(n),f=p[0]-d,m=p[1]-u;return{distance:c,heading:d,pitch:u,flyDuration:1,hDelta:f,pDelta:m}}flyIn(e,n,o,s="default"){var c;if(!n)return;const r={position:e,rotation:n,duration:(o??1)*1e3},l=(c=this.viewer)==null?void 0:c.camera;return l&&Er(l,r,s)}flyTo(e,n,o="default"){var m;const{distance:s,heading:r,pitch:l,flyDuration:c,hDelta:u,pDelta:d}=e,p={position:n,viewDistance:s,rotation:[r,l,0],duration:c*1e3,hdelta:u,pdelta:d},f=(m=this.viewer)==null?void 0:m.camera;return f&&Er(f,p,o)}flyToBoundingSphere(e,n,o=1){var p;const s=[[e[0],e[1],0],[e[0],e[3],0],[e[2],e[3],0],[e[2],e[1],0]],r=a.getGeoBoundingSphereFromPositions(s);if(!r)return;const{center:l,radius:c}=r,u={position:l,viewDistance:n??c,rotation:[0,-90,0],duration:o*1e3},d=(p=this.viewer)==null?void 0:p.camera;return d&&Er(d,u)}getCurrentCameraInfo(){if(!this.viewer)return;const{camera:e}=this.viewer;return{position:Gt(e),rotation:Ko(e)}}getLengthInPixel(){return this._viewerLegend.length}changeToWalk(e,n=4.2,o=1.6){var s,r;(r=(s=this._viewerInstance)==null?void 0:s.obj)==null||r.navigationManager.changeToWalk(e,n,o),this._navigationMode.value="Walk"}changeToMap(){var e,n;(n=(e=this._viewerInstance)==null?void 0:e.obj)==null||n.navigationManager.changeToMap(),this._navigationMode.value="Map"}changeToRotateGlobe(e,n,o){var s,r;(r=(s=this._viewerInstance)==null?void 0:s.obj)==null||r.navigationManager.changeToRotateGlobe(e,n,o),this._navigationMode.value="RotateGlobe"}changeToLine(e,n,o,s,r,l){var c,u;(u=(c=this._viewerInstance)==null?void 0:c.obj)==null||u.navigationManager.changeToLine(e,n,o,s,r,l),this._navigationMode.value="Line"}changeToUserDefined(e){this.changeToMap(),console.warn("Cesium引擎暂不支持自定义漫游,已切换为Map模式")}changeToRotatePoint(e,n,o,s,r){var l,c;(c=(l=this._viewerInstance)==null?void 0:l.obj)==null||c.navigationManager.changeToRotatePoint(e,n,o,s,r),this._navigationMode.value="RotatePoint"}changeToFollow(e,n,o,s,r){var l,c;(c=(l=this._viewerInstance)==null?void 0:l.obj)==null||c.navigationManager.changeToFollow(e,n,o,s,r),this._navigationMode.value="Follow"}getFPS(){return this._fps.value}async getBoundSphere(e){return Promise.resolve(void 0)}async getVersion(){const e=window.g_XE3CopyRights??{};return e.cesium=h.VERSION,e}async getHeightByLonLat(e,n,o){if(!this.viewer)return null;const s=h.Cartographic.fromDegrees(e,n,void 0,st.getHeightsScartchCarto);return this.viewer.scene.sampleHeight(s)??null}async getHeightsByLonLats(e,n){const o=e.map(r=>this.getHeightByLonLat(...r));return await Promise.all(o)}async capture(e,n){if(this.viewer)return await bg(this.viewer.scene,e,n)}async lonLatAltToScreenPosition(e){if(!this.viewer||!this.isPointVisible(e))return;const n=this.viewer.scene.cartesianToCanvasCoordinates(Le(e));if(n)return[n.x,n.y]}get notSupportEditingCount(){return this._notSupportEditingCount.value}set notSupportEditingCount(e){this._notSupportEditingCount.value=e}get notSupportEditingCountChanged(){return this._notSupportEditingCount.changed}startEditing(e,n,o){o=Object.assign({useKeyToSwitch:!0,callSource:"outer"},o);const s=e.components.main??e;s&&n!=null&&(s.editingID=`${o.callSource}_${a.createGuid()}`,this._editingSystem.create(this,s,n,o.useKeyToSwitch))}stopEditing(){this._editingSystem.stop()}moveObjects(e){const n=[],o=a.createGuid();for(let s=0;s<e.length;s++){const r=e[s],l=r.components.main??r;l.editingID=o,l&&n.push(l)}this._moveObjectsProcess.restart(void 0,this,n,o)}getCzmObject(e){return this.sceneObjectsMap.get(e)}setCurrentDefaultAccessToken(){this.ionAccessToken=st.currentDefaultAccessToken}setLatestDefaultAccessToken(){if(!st.latestDefaultAccessToken){alert("Cesium最新的iontoken无法获取!"),console.error("Cesium最新的iontoken无法获取!");return}this.ionAccessToken=st.latestDefaultAccessToken}positionsToLocalPositions(e,n){return It(e,n)}localPositionsToPositions(e,n){return yn(e,n)}isPointVisible(e){if(!this.viewer)return!1;const n=Le(e),o=new h.EllipsoidalOccluder(this.viewer.scene.globe.ellipsoid,this.viewer.scene.camera.positionWC);if(o.cameraPosition=this.viewer.scene.camera.positionWC,!o.isPointVisible(n))return!1;const s=this.viewer.scene.cartesianToCanvasCoordinates(n);return!(!s||s.x<0||s.y<0)}getESProperties(){const e={...super.getESProperties()},n=st.defaults;return{...e,more:[...e.more,new a.GroupProperty([],"通用","通用"),new a.EvalStringProperty([this,"createCesiumViewerFuncStr"],"CesiumViewer创建函数",D4,I4,!0),new a.FunctionProperty([],()=>st.getCesiumIonToken(),[],"获取官方token"),new a.FunctionProperty([],()=>this.setCurrentDefaultAccessToken(),[],"重置为当前使用的Cesium版本的token"),new a.FunctionProperty([],()=>this.setLatestDefaultAccessToken(),[],"最新token","重置为当前Cesium官方的最新token"),new a.BooleanProperty([this,"flashLighting"],"头顶灯",n.flashLighting,!0),new a.BooleanProperty([this,"particleGlobalControl"],"粒子全局控制播放",n.particleGlobalControl,!0),new a.GroupProperty([],"Viewer","Viewer"),new a.NumberProperty([this,"resolutionScale"],"分辨率比率",n.resolutionScale,!0),new a.NumberProperty([this,"msaaSamples"],"msaaSamples",n.msaaSamples,!0),new a.BooleanProperty([this,"shadows"]),new a.GroupProperty([],"比例尺","比例尺(Legend)"),new a.NumberProperty([this.viewerLegend,"resolution"],"resolution",void 0,!0,!0),new a.NumberProperty([this.viewerLegend,"zoom"],"zoom",void 0,!0,!0),new a.Number3Property([this.viewerLegend,"center"],"center",void 0,!0,!0),new a.NumberProperty([this.viewerLegend.legend,"lengthInPixels"],"lengthInPixels",100,!0,!1),new a.NumberProperty([this.viewerLegend.legend,"computedLengthInPixels"],"computedLengthInPixels",void 0,!0,!0),new a.NumberProperty([this.viewerLegend.legend,"computedLengthInMeters"],"computedLengthInMeters",void 0,!0,!0),new a.StringProperty([this.viewerLegend.legend,"computedLengthInStr"],"computedLengthInStr",void 0,!0,!0),new a.GroupProperty([],"场景","场景(Scene)"),new a.NumberProperty([this,"sceneSplitPosition"],"内部视口分割比例",n.sceneSplitPosition,!0),new a.GroupProperty([],"Globe","Globe"),new a.EnumProperty([this,"sceneGlobeShadows"],[["禁用","DISABLED"],["启用","ENABLED"],["仅投射","CAST_ONLY"],["仅接收","RECEIVE_ONLY"]],"sceneGlobeShadows",n.sceneGlobeShadows,!0),new a.NumberProperty([this,"sceneGlobeTerrainExaggeration"]),new a.NumberProperty([this,"sceneGlobeTerrainExaggerationRelativeHeight"]),new a.NumberProperty([this,"sceneGlobeVerticalExaggeration"]),new a.NumberProperty([this,"sceneGlobeVerticalExaggerationRelativeHeight"]),new a.BooleanProperty([this,"sceneGlobeBackFaceCulling"]),new a.BooleanProperty([this,"sceneGlobeShowSkirts"]),new a.BooleanProperty([this,"sceneGlobeShowWaterEffect"]),new a.ColorProperty([this,"sceneGlobeBaseColor"]),new a.Number4Property([this,"sceneGlobeCartographicLimitRectangle"]),new a.JsonProperty([this,"sceneGlobeClippingPlanes"]),new a.StringProperty([this,"sceneGlobeClippingPlanesId"]),new a.JsonProperty([this,"sceneGlobeClippingPolygons"]),new a.StringsProperty([this,"sceneGlobeClippingPolygonsId"]),new a.GroupProperty([],"underground","underground"),new a.ColorProperty([this,"sceneGlobeUndergroundColor"],"sceneGlobeUndergroundColor",n.sceneGlobeUndergroundColor,!0),new a.Number4Property([this,"sceneGlobeUndergroundColorAlphaByDistance"],"sceneGlobeUndergroundColorAlphaByDistance",n.sceneGlobeUndergroundColorAlphaByDistance,!0),new a.GroupProperty([],"Translucency","Translucency"),new a.Number4Property([this,"sceneGlobeTranslucencyBackFaceAlphaByDistance"],"背面渐变透明度",n.sceneGlobeTranslucencyBackFaceAlphaByDistance,!0),new a.Number4Property([this,"sceneGlobeTranslucencyFrontFaceAlphaByDistance"],"正面渐变透明度",n.sceneGlobeTranslucencyFrontFaceAlphaByDistance,!0),new a.Number4Property([this,"sceneGlobeTranslucencyRectangle"],"矩形范围",n.sceneGlobeTranslucencyRectangle,!0),new a.GroupProperty([],"Sun","Sun"),new a.BooleanProperty([this,"sun"],"sun",n.sun,!0),new a.NumberProperty([this,"sceneSunGlowFactor"],"sceneSunGlowFactor",n.sceneSunGlowFactor,!0),new a.GroupProperty([],"Moon","Moon"),new a.BooleanProperty([this,"moon"],"moon",n.moon,!0),new a.StringProperty([this,"sceneMoonTextureUrl"],"sceneMoonTextureUrl",n.sceneMoonTextureUrl,!0),new a.BooleanProperty([this,"sceneMoonOnlySunLighting"],"sceneMoonOnlySunLighting",n.sceneMoonOnlySunLighting,!0),new a.GroupProperty([],"SkyBox","SkyBox"),new a.BooleanProperty([this,"sceneSkyBoxShow"]),new a.JsonProperty([this,"sceneSkyBoxSources"],"sceneSkyBoxSources",n.sceneSkyBoxSources,void 0,!0),new a.GroupProperty([],"Background","Background"),new a.BooleanProperty([this,"xbsjUseBackground"]),new a.StringProperty([this,"xbsjBackgroundImageUri"]),new a.ColorProperty([this,"xbsjBackgroundColor"]),new a.GroupProperty([],"SkyAtmosphere","SkyAtmosphere"),new a.JsonProperty([this,"xbsjLocalBoxSources"],"xbsjLocalBoxSources",n.xbsjLocalBoxSources,void 0,!0),new a.ColorProperty([this,"sceneBackgroundColor"]),new a.GroupProperty([],"Fog","Fog"),new a.BooleanProperty([this,"sceneFogEnabled"],"sceneFogEnabled",n.sceneFogEnabled,!0),new a.NumberProperty([this,"sceneFogDensity"],"sceneFogDensity",n.sceneFogDensity,!0),new a.NumberProperty([this,"sceneFogScreenSpaceErrorFactor"],"sceneFogScreenSpaceErrorFactor",n.sceneFogScreenSpaceErrorFactor,!0),new a.NumberProperty([this,"sceneFogMinimumBrightness"],"sceneFogMinimumBrightness",n.sceneFogMinimumBrightness,!0),new a.GroupProperty([],"Sscc","Sscc"),new a.BooleanProperty([this,"sceneSsccEnableInputs"],"sceneSsccEnableInputs",n.sceneSsccEnableInputs,!0),new a.BooleanProperty([this,"sceneSsccEnableCollisionDetection"],"sceneSsccEnableCollisionDetection",n.sceneSsccEnableCollisionDetection,!0),new a.NumberProperty([this,"sceneSsccZoomFactor"],"sceneSsccZoomFactor",n.sceneSsccZoomFactor,!0),new a.NumberProperty([this,"sceneCameraFrustumFov"],"相机广角"),new a.GroupProperty([],"后处理","后处理"),new a.BooleanProperty([this,"scenePpsfxaaEnabled"],"开启FXAA",n.scenePpsfxaaEnabled,!0),new a.GroupProperty([],"环境遮蔽","环境遮蔽"),new a.BooleanProperty([this,"scenePpsAmbientOcclusionEnabled"]),new a.BooleanProperty([this,"scenePpsAmbientOcclusionAmbientOcclusionOnly"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionIntensity"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionBias"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionLengthCap"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionStepSize"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionBlurStepSize"]),new a.GroupProperty([],"Bloom","Bloom"),new a.BooleanProperty([this,"scenePpsBloomEnabled"]),new a.BooleanProperty([this,"scenePpsBloomGlowOnly"]),new a.NumberProperty([this,"scenePpsBloomContrast"]),new a.NumberProperty([this,"scenePpsBloomBrightness"]),new a.NumberProperty([this,"scenePpsBloomDelta"]),new a.NumberProperty([this,"scenePpsBloomSigma"]),new a.NumberProperty([this,"scenePpsBloomStepSize"]),new a.GroupProperty([],"调试","调试"),new a.BooleanProperty([this,"sceneDebugShowFramesPerSecond"],"sceneDebugShowFramesPerSecond",n.sceneDebugShowFramesPerSecond,!0),new a.BooleanProperty([this,"sceneDebugShowCommands"],"sceneDebugShowCommands",n.sceneDebugShowCommands,!0),new a.BooleanProperty([this,"sceneDebugShowFrustums"],"sceneDebugShowFrustums",n.sceneDebugShowFrustums,!0),new a.BooleanProperty([this,"sceneDebugShowFrustumPlanes"],"sceneDebugShowFrustumPlanes",n.sceneDebugShowFrustumPlanes,!0),new a.NumberProperty([this,"sceneDebugShowDepthFrustum"],"sceneDebugShowDepthFrustum",n.sceneDebugShowDepthFrustum,!0),new a.GroupProperty([],"Inspector","Inspector"),new a.BooleanProperty([this,"showCesiumInspector"],"showCesiumInspector",n.showCesiumInspector,!0),new a.BooleanProperty([this,"cesiumInspectorWireframe"],"cesiumInspectorWireframe",n.cesiumInspectorWireframe,!0),new a.BooleanProperty([this,"showCesium3DTilesInspector"],"showCesium3DTilesInspector",n.showCesium3DTilesInspector,!0)]}}};v(st,"type",st.register("ESCesiumViewer",st)),v(st,"getCesiumIonToken",R4),v(st,"currentDefaultAccessToken",h.Ion.defaultAccessToken),v(st,"latestDefaultAccessToken"),v(st,"ObjectsToExcludeWrapper",vF),v(st,"defaults",{...a.ESViewer.defaults,flashLighting:!1,resolutionScale:1,msaaSamples:4,sceneSplitPosition:0,sceneGlobeShadows:"RECEIVE_ONLY",sceneGlobeUndergroundColor:[0,0,0,1],sceneGlobeUndergroundColorAlphaByDistance:[6378.137,0,12756274e-1,1],sceneGlobeTranslucencyBackFaceAlphaByDistance:[6378.137,0,12756274e-1,1],sceneGlobeTranslucencyFrontFaceAlphaByDistance:[6378.137,0,12756274e-1,1],sceneGlobeTranslucencyRectangle:[-3.141592653589793,-1.5707963267948966,3.141592653589793,1.5707963267948966].map(e=>180*e/Math.PI),sun:!0,sceneSunGlowFactor:1,moon:!0,sceneMoonTextureUrl:h.buildModuleUrl("Assets/Textures/moonSmall.jpg"),sceneMoonOnlySunLighting:!0,sceneSkyBoxSources:{positiveX:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_px.jpg"),negativeX:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_mx.jpg"),positiveY:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_py.jpg"),negativeY:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_my.jpg"),positiveZ:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_pz.jpg"),negativeZ:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_mz.jpg")},xbsjLocalBoxSources:{positiveX:"${earthsdk3-assets-script-dir}/assets/img/skybox/east.jpg",negativeX:"${earthsdk3-assets-script-dir}/assets/img/skybox/west.jpg",positiveY:"${earthsdk3-assets-script-dir}/assets/img/skybox/bottom.jpg",negativeY:"${earthsdk3-assets-script-dir}/assets/img/skybox/top.jpg",positiveZ:"${earthsdk3-assets-script-dir}/assets/img/skybox/north.jpg",negativeZ:"${earthsdk3-assets-script-dir}/assets/img/skybox/south.jpg"},sceneFogEnabled:!0,sceneFogDensity:2e-4,sceneFogScreenSpaceErrorFactor:2,sceneFogMinimumBrightness:.03,sceneSsccEnableInputs:!0,sceneSsccEnableCollisionDetection:!0,sceneSsccZoomFactor:5,scenePpsfxaaEnabled:!0,sceneDebugShowFramesPerSecond:!1,sceneDebugShowCommands:!1,sceneDebugShowFrustums:!1,sceneDebugShowFrustumPlanes:!1,sceneDebugShowDepthFrustum:1,showCesiumInspector:!1,cesiumInspectorWireframe:!1,showCesium3DTilesInspector:!1,particleGlobalControl:!1}),v(st,"getHeightsScartchCarto",new h.Cartographic);let Te=st;(t=>{t.createDefaultProps=()=>({...a.ESViewer.createDefaultProps(),...M4()})})(Te||(Te={})),a.extendClassProps(Te.prototype,Te.createDefaultProps),M.copyright=void 0;try{const t="earthsdk3-cesium",i="3.5.0-beta.15",e="2025-10-17T09:37:17.000Z",n="北京西部世界科技有限公司",o="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="1d92544757525a67472147b6dd3aca525c1d2508",l=((Date.now()-1760693837e3)/36e5).toFixed(1),c=`%c🌏 ${t}%c ${i}.${s.slice(0,8)}.${e} (距今${l}个小时)
2294
+ `;console.log(e);const n=window.prompt(e,t);n&&window.open(n,"_blank")}const st=class st extends a.ESViewer{constructor(e){super(e);v(this,"_disabledInputStack",this.disposeVar(a.react(0)));v(this,"_viewer",this.dv(a.react(void 0)));v(this,"_viewerInstance");v(this,"_viewerLegend");v(this,"pickCustomAttachedInfo");v(this,"_fps",this.dv(a.react(0)));v(this,"_notSupportEditingCount",this.disposeVar(a.react(0)));v(this,"_editingSystem",Wh);v(this,"_moveObjectsProcess",this.ad(PC()));if(e.type!=="ESCesiumViewer")throw new Error("option.type must be ESCesiumViewer");this.ad(new pF(this)),this.ad(new fF(this)),this.dv(new a.ObjResettingWithEvent(this.viewerChanged,()=>{if(this.viewer)return new yF(this)})),this._viewerLegend=this.dv(new x4(this)),this._viewerInstance=this.dv(new a.ObjResettingWithEvent(this.viewerChanged,()=>{if(this.viewer)return new Fm(this,this.viewer)})),this.d(this.viewerChanged.don(o=>{this.viewer&&(this.viewer.scene.globe.baseColor=te([1,1,1,1]))}));const n=e;this.d(this._viewer.changed.don(o=>{this.viewerChanged.emit(o)})),this.dv(new a.ObjResettingWithEvent(this.subContainerChanged,()=>{if(this.setStatus("Raw"),this.setStatusLog(""),!!this.subContainer)return new gL(this.subContainer,this,o=>this._viewer.value=o,n.options)}))}get disabledInputStack(){return this._disabledInputStack.value}get disabledInputStackChanged(){return this._disabledInputStack.changed}incrementDisabledInputStack(){++this._disabledInputStack.value}decrementDisabledInputStack(){--this._disabledInputStack.value}get viewer(){return this._viewer.value}get extensions(){return this.viewer&&kt(this.viewer)}get viewerInstance(){return this._viewerInstance}get viewerLegend(){return this._viewerLegend}async pick(e,n,o){if(!this.extensions)return;const{pickingManager:s}=this.extensions;return await s.pick(e,void 0,n)}async pickPosition(e){if(!this.extensions)return;const{pickingManager:n}=this.extensions;return await n.pickPosition(e)}async quickPickPosition(e){if(!this.extensions)return;const{pickingManager:n}=this.extensions;return await n.quickPickPosition(e)}async getTerrainHeight(e){const{viewer:n}=this;if(!n)return;const o=h.Cartographic.fromDegrees(e[0],e[1],e[2],st.getHeightsScartchCarto);return n.scene.globe.getHeight(o)}getCameraInfo(){if(!this.viewer)return;const{camera:e}=this.viewer;return{position:Gt(e),rotation:Ko(e)}}calcFlyToParam(e){if(!this.viewer)return;const{camera:n}=this.viewer;if(!n||!e)return;const o=h.Cartesian3.fromDegrees(...e),s=h.Transforms.eastNorthUpToFixedFrame(o),r=h.Matrix4.inverse(s,new h.Matrix4),l=h.Matrix4.multiplyByPoint(r,n.positionWC,new h.Cartesian3),c=h.Cartesian3.magnitude(l);let u=-Math.asin(l.z/c);u=h.Math.toDegrees(u);let d=h.Math.PI_OVER_TWO-Math.atan(l.y/l.x);l.x>0&&(d+=l.y<0?-h.Math.PI:h.Math.PI),d=h.Math.toDegrees(d);const p=Ko(n),f=p[0]-d,m=p[1]-u;return{distance:c,heading:d,pitch:u,flyDuration:1,hDelta:f,pDelta:m}}flyIn(e,n,o,s="default"){var c;if(!n)return;const r={position:e,rotation:n,duration:(o??1)*1e3},l=(c=this.viewer)==null?void 0:c.camera;return l&&Er(l,r,s)}flyTo(e,n,o="default"){var m;const{distance:s,heading:r,pitch:l,flyDuration:c,hDelta:u,pDelta:d}=e,p={position:n,viewDistance:s,rotation:[r,l,0],duration:c*1e3,hdelta:u,pdelta:d},f=(m=this.viewer)==null?void 0:m.camera;return f&&Er(f,p,o)}flyToBoundingSphere(e,n,o=1){var p;const s=[[e[0],e[1],0],[e[0],e[3],0],[e[2],e[3],0],[e[2],e[1],0]],r=a.getGeoBoundingSphereFromPositions(s);if(!r)return;const{center:l,radius:c}=r,u={position:l,viewDistance:n??c,rotation:[0,-90,0],duration:o*1e3},d=(p=this.viewer)==null?void 0:p.camera;return d&&Er(d,u)}getCurrentCameraInfo(){if(!this.viewer)return;const{camera:e}=this.viewer;return{position:Gt(e),rotation:Ko(e)}}getLengthInPixel(){return this._viewerLegend.length}changeToWalk(e,n=4.2,o=1.6){var s,r;(r=(s=this._viewerInstance)==null?void 0:s.obj)==null||r.navigationManager.changeToWalk(e,n,o),this._navigationMode.value="Walk"}changeToMap(){var e,n;(n=(e=this._viewerInstance)==null?void 0:e.obj)==null||n.navigationManager.changeToMap(),this._navigationMode.value="Map"}changeToRotateGlobe(e,n,o){var s,r;(r=(s=this._viewerInstance)==null?void 0:s.obj)==null||r.navigationManager.changeToRotateGlobe(e,n,o),this._navigationMode.value="RotateGlobe"}changeToLine(e,n,o,s,r,l){var c,u;(u=(c=this._viewerInstance)==null?void 0:c.obj)==null||u.navigationManager.changeToLine(e,n,o,s,r,l),this._navigationMode.value="Line"}changeToUserDefined(e){this.changeToMap(),console.warn("Cesium引擎暂不支持自定义漫游,已切换为Map模式")}changeToRotatePoint(e,n,o,s,r){var l,c;(c=(l=this._viewerInstance)==null?void 0:l.obj)==null||c.navigationManager.changeToRotatePoint(e,n,o,s,r),this._navigationMode.value="RotatePoint"}changeToFollow(e,n,o,s,r){var l,c;(c=(l=this._viewerInstance)==null?void 0:l.obj)==null||c.navigationManager.changeToFollow(e,n,o,s,r),this._navigationMode.value="Follow"}getFPS(){return this._fps.value}async getBoundSphere(e){return Promise.resolve(void 0)}async getVersion(){const e=window.g_XE3CopyRights??{};return e.cesium=h.VERSION,e}async getHeightByLonLat(e,n,o){if(!this.viewer)return null;const s=h.Cartographic.fromDegrees(e,n,void 0,st.getHeightsScartchCarto);return this.viewer.scene.sampleHeight(s)??null}async getHeightsByLonLats(e,n){const o=e.map(r=>this.getHeightByLonLat(...r));return await Promise.all(o)}async capture(e,n){if(this.viewer)return await bg(this.viewer.scene,e,n)}async lonLatAltToScreenPosition(e){if(!this.viewer||!this.isPointVisible(e))return;const n=this.viewer.scene.cartesianToCanvasCoordinates(Le(e));if(n)return[n.x,n.y]}get notSupportEditingCount(){return this._notSupportEditingCount.value}set notSupportEditingCount(e){this._notSupportEditingCount.value=e}get notSupportEditingCountChanged(){return this._notSupportEditingCount.changed}startEditing(e,n,o){o=Object.assign({useKeyToSwitch:!0,callSource:"outer"},o);const s=e.components.main??e;s&&n!=null&&(s.editingID=`${o.callSource}_${a.createGuid()}`,this._editingSystem.create(this,s,n,o.useKeyToSwitch))}stopEditing(){this._editingSystem.stop()}moveObjects(e){const n=[],o=a.createGuid();for(let s=0;s<e.length;s++){const r=e[s],l=r.components.main??r;l.editingID=o,l&&n.push(l)}this._moveObjectsProcess.restart(void 0,this,n,o)}getCzmObject(e){return this.sceneObjectsMap.get(e)}setCurrentDefaultAccessToken(){this.ionAccessToken=st.currentDefaultAccessToken}setLatestDefaultAccessToken(){if(!st.latestDefaultAccessToken){alert("Cesium最新的iontoken无法获取!"),console.error("Cesium最新的iontoken无法获取!");return}this.ionAccessToken=st.latestDefaultAccessToken}positionsToLocalPositions(e,n){return It(e,n)}localPositionsToPositions(e,n){return yn(e,n)}isPointVisible(e){if(!this.viewer)return!1;const n=Le(e),o=new h.EllipsoidalOccluder(this.viewer.scene.globe.ellipsoid,this.viewer.scene.camera.positionWC);if(o.cameraPosition=this.viewer.scene.camera.positionWC,!o.isPointVisible(n))return!1;const s=this.viewer.scene.cartesianToCanvasCoordinates(n);return!(!s||s.x<0||s.y<0)}getESProperties(){const e={...super.getESProperties()},n=st.defaults;return{...e,more:[...e.more,new a.GroupProperty([],"通用","通用"),new a.EvalStringProperty([this,"createCesiumViewerFuncStr"],"CesiumViewer创建函数",D4,I4,!0),new a.FunctionProperty([],()=>st.getCesiumIonToken(),[],"获取官方token"),new a.FunctionProperty([],()=>this.setCurrentDefaultAccessToken(),[],"重置为当前使用的Cesium版本的token"),new a.FunctionProperty([],()=>this.setLatestDefaultAccessToken(),[],"最新token","重置为当前Cesium官方的最新token"),new a.BooleanProperty([this,"flashLighting"],"头顶灯",n.flashLighting,!0),new a.BooleanProperty([this,"particleGlobalControl"],"粒子全局控制播放",n.particleGlobalControl,!0),new a.GroupProperty([],"Viewer","Viewer"),new a.NumberProperty([this,"resolutionScale"],"分辨率比率",n.resolutionScale,!0),new a.NumberProperty([this,"msaaSamples"],"msaaSamples",n.msaaSamples,!0),new a.BooleanProperty([this,"shadows"]),new a.GroupProperty([],"比例尺","比例尺(Legend)"),new a.NumberProperty([this.viewerLegend,"resolution"],"resolution",void 0,!0,!0),new a.NumberProperty([this.viewerLegend,"zoom"],"zoom",void 0,!0,!0),new a.Number3Property([this.viewerLegend,"center"],"center",void 0,!0,!0),new a.NumberProperty([this.viewerLegend.legend,"lengthInPixels"],"lengthInPixels",100,!0,!1),new a.NumberProperty([this.viewerLegend.legend,"computedLengthInPixels"],"computedLengthInPixels",void 0,!0,!0),new a.NumberProperty([this.viewerLegend.legend,"computedLengthInMeters"],"computedLengthInMeters",void 0,!0,!0),new a.StringProperty([this.viewerLegend.legend,"computedLengthInStr"],"computedLengthInStr",void 0,!0,!0),new a.GroupProperty([],"场景","场景(Scene)"),new a.NumberProperty([this,"sceneSplitPosition"],"内部视口分割比例",n.sceneSplitPosition,!0),new a.GroupProperty([],"Globe","Globe"),new a.EnumProperty([this,"sceneGlobeShadows"],[["禁用","DISABLED"],["启用","ENABLED"],["仅投射","CAST_ONLY"],["仅接收","RECEIVE_ONLY"]],"sceneGlobeShadows",n.sceneGlobeShadows,!0),new a.NumberProperty([this,"sceneGlobeTerrainExaggeration"]),new a.NumberProperty([this,"sceneGlobeTerrainExaggerationRelativeHeight"]),new a.NumberProperty([this,"sceneGlobeVerticalExaggeration"]),new a.NumberProperty([this,"sceneGlobeVerticalExaggerationRelativeHeight"]),new a.BooleanProperty([this,"sceneGlobeBackFaceCulling"]),new a.BooleanProperty([this,"sceneGlobeShowSkirts"]),new a.BooleanProperty([this,"sceneGlobeShowWaterEffect"]),new a.ColorProperty([this,"sceneGlobeBaseColor"]),new a.Number4Property([this,"sceneGlobeCartographicLimitRectangle"]),new a.JsonProperty([this,"sceneGlobeClippingPlanes"]),new a.StringProperty([this,"sceneGlobeClippingPlanesId"]),new a.JsonProperty([this,"sceneGlobeClippingPolygons"]),new a.StringsProperty([this,"sceneGlobeClippingPolygonsId"]),new a.GroupProperty([],"underground","underground"),new a.ColorProperty([this,"sceneGlobeUndergroundColor"],"sceneGlobeUndergroundColor",n.sceneGlobeUndergroundColor,!0),new a.Number4Property([this,"sceneGlobeUndergroundColorAlphaByDistance"],"sceneGlobeUndergroundColorAlphaByDistance",n.sceneGlobeUndergroundColorAlphaByDistance,!0),new a.GroupProperty([],"Translucency","Translucency"),new a.Number4Property([this,"sceneGlobeTranslucencyBackFaceAlphaByDistance"],"背面渐变透明度",n.sceneGlobeTranslucencyBackFaceAlphaByDistance,!0),new a.Number4Property([this,"sceneGlobeTranslucencyFrontFaceAlphaByDistance"],"正面渐变透明度",n.sceneGlobeTranslucencyFrontFaceAlphaByDistance,!0),new a.Number4Property([this,"sceneGlobeTranslucencyRectangle"],"矩形范围",n.sceneGlobeTranslucencyRectangle,!0),new a.GroupProperty([],"Sun","Sun"),new a.BooleanProperty([this,"sun"],"sun",n.sun,!0),new a.NumberProperty([this,"sceneSunGlowFactor"],"sceneSunGlowFactor",n.sceneSunGlowFactor,!0),new a.GroupProperty([],"Moon","Moon"),new a.BooleanProperty([this,"moon"],"moon",n.moon,!0),new a.StringProperty([this,"sceneMoonTextureUrl"],"sceneMoonTextureUrl",n.sceneMoonTextureUrl,!0),new a.BooleanProperty([this,"sceneMoonOnlySunLighting"],"sceneMoonOnlySunLighting",n.sceneMoonOnlySunLighting,!0),new a.GroupProperty([],"SkyBox","SkyBox"),new a.BooleanProperty([this,"sceneSkyBoxShow"]),new a.JsonProperty([this,"sceneSkyBoxSources"],"sceneSkyBoxSources",n.sceneSkyBoxSources,void 0,!0),new a.GroupProperty([],"Background","Background"),new a.BooleanProperty([this,"xbsjUseBackground"]),new a.StringProperty([this,"xbsjBackgroundImageUri"]),new a.ColorProperty([this,"xbsjBackgroundColor"]),new a.GroupProperty([],"SkyAtmosphere","SkyAtmosphere"),new a.JsonProperty([this,"xbsjLocalBoxSources"],"xbsjLocalBoxSources",n.xbsjLocalBoxSources,void 0,!0),new a.ColorProperty([this,"sceneBackgroundColor"]),new a.GroupProperty([],"Fog","Fog"),new a.BooleanProperty([this,"sceneFogEnabled"],"sceneFogEnabled",n.sceneFogEnabled,!0),new a.NumberProperty([this,"sceneFogDensity"],"sceneFogDensity",n.sceneFogDensity,!0),new a.NumberProperty([this,"sceneFogScreenSpaceErrorFactor"],"sceneFogScreenSpaceErrorFactor",n.sceneFogScreenSpaceErrorFactor,!0),new a.NumberProperty([this,"sceneFogMinimumBrightness"],"sceneFogMinimumBrightness",n.sceneFogMinimumBrightness,!0),new a.GroupProperty([],"Sscc","Sscc"),new a.BooleanProperty([this,"sceneSsccEnableInputs"],"sceneSsccEnableInputs",n.sceneSsccEnableInputs,!0),new a.BooleanProperty([this,"sceneSsccEnableCollisionDetection"],"sceneSsccEnableCollisionDetection",n.sceneSsccEnableCollisionDetection,!0),new a.NumberProperty([this,"sceneSsccZoomFactor"],"sceneSsccZoomFactor",n.sceneSsccZoomFactor,!0),new a.NumberProperty([this,"sceneCameraFrustumFov"],"相机广角"),new a.GroupProperty([],"后处理","后处理"),new a.BooleanProperty([this,"scenePpsfxaaEnabled"],"开启FXAA",n.scenePpsfxaaEnabled,!0),new a.GroupProperty([],"环境遮蔽","环境遮蔽"),new a.BooleanProperty([this,"scenePpsAmbientOcclusionEnabled"]),new a.BooleanProperty([this,"scenePpsAmbientOcclusionAmbientOcclusionOnly"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionIntensity"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionBias"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionLengthCap"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionStepSize"]),new a.NumberProperty([this,"scenePpsAmbientOcclusionBlurStepSize"]),new a.GroupProperty([],"Bloom","Bloom"),new a.BooleanProperty([this,"scenePpsBloomEnabled"]),new a.BooleanProperty([this,"scenePpsBloomGlowOnly"]),new a.NumberProperty([this,"scenePpsBloomContrast"]),new a.NumberProperty([this,"scenePpsBloomBrightness"]),new a.NumberProperty([this,"scenePpsBloomDelta"]),new a.NumberProperty([this,"scenePpsBloomSigma"]),new a.NumberProperty([this,"scenePpsBloomStepSize"]),new a.GroupProperty([],"调试","调试"),new a.BooleanProperty([this,"sceneDebugShowFramesPerSecond"],"sceneDebugShowFramesPerSecond",n.sceneDebugShowFramesPerSecond,!0),new a.BooleanProperty([this,"sceneDebugShowCommands"],"sceneDebugShowCommands",n.sceneDebugShowCommands,!0),new a.BooleanProperty([this,"sceneDebugShowFrustums"],"sceneDebugShowFrustums",n.sceneDebugShowFrustums,!0),new a.BooleanProperty([this,"sceneDebugShowFrustumPlanes"],"sceneDebugShowFrustumPlanes",n.sceneDebugShowFrustumPlanes,!0),new a.NumberProperty([this,"sceneDebugShowDepthFrustum"],"sceneDebugShowDepthFrustum",n.sceneDebugShowDepthFrustum,!0),new a.GroupProperty([],"Inspector","Inspector"),new a.BooleanProperty([this,"showCesiumInspector"],"showCesiumInspector",n.showCesiumInspector,!0),new a.BooleanProperty([this,"cesiumInspectorWireframe"],"cesiumInspectorWireframe",n.cesiumInspectorWireframe,!0),new a.BooleanProperty([this,"showCesium3DTilesInspector"],"showCesium3DTilesInspector",n.showCesium3DTilesInspector,!0)]}}};v(st,"type",st.register("ESCesiumViewer",st)),v(st,"getCesiumIonToken",R4),v(st,"currentDefaultAccessToken",h.Ion.defaultAccessToken),v(st,"latestDefaultAccessToken"),v(st,"ObjectsToExcludeWrapper",vF),v(st,"defaults",{...a.ESViewer.defaults,flashLighting:!1,resolutionScale:1,msaaSamples:4,sceneSplitPosition:0,sceneGlobeShadows:"RECEIVE_ONLY",sceneGlobeUndergroundColor:[0,0,0,1],sceneGlobeUndergroundColorAlphaByDistance:[6378.137,0,12756274e-1,1],sceneGlobeTranslucencyBackFaceAlphaByDistance:[6378.137,0,12756274e-1,1],sceneGlobeTranslucencyFrontFaceAlphaByDistance:[6378.137,0,12756274e-1,1],sceneGlobeTranslucencyRectangle:[-3.141592653589793,-1.5707963267948966,3.141592653589793,1.5707963267948966].map(e=>180*e/Math.PI),sun:!0,sceneSunGlowFactor:1,moon:!0,sceneMoonTextureUrl:h.buildModuleUrl("Assets/Textures/moonSmall.jpg"),sceneMoonOnlySunLighting:!0,sceneSkyBoxSources:{positiveX:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_px.jpg"),negativeX:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_mx.jpg"),positiveY:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_py.jpg"),negativeY:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_my.jpg"),positiveZ:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_pz.jpg"),negativeZ:h.buildModuleUrl("Assets/Textures/SkyBox/tycho2t3_80_mz.jpg")},xbsjLocalBoxSources:{positiveX:"${earthsdk3-assets-script-dir}/assets/img/skybox/east.jpg",negativeX:"${earthsdk3-assets-script-dir}/assets/img/skybox/west.jpg",positiveY:"${earthsdk3-assets-script-dir}/assets/img/skybox/bottom.jpg",negativeY:"${earthsdk3-assets-script-dir}/assets/img/skybox/top.jpg",positiveZ:"${earthsdk3-assets-script-dir}/assets/img/skybox/north.jpg",negativeZ:"${earthsdk3-assets-script-dir}/assets/img/skybox/south.jpg"},sceneFogEnabled:!0,sceneFogDensity:2e-4,sceneFogScreenSpaceErrorFactor:2,sceneFogMinimumBrightness:.03,sceneSsccEnableInputs:!0,sceneSsccEnableCollisionDetection:!0,sceneSsccZoomFactor:5,scenePpsfxaaEnabled:!0,sceneDebugShowFramesPerSecond:!1,sceneDebugShowCommands:!1,sceneDebugShowFrustums:!1,sceneDebugShowFrustumPlanes:!1,sceneDebugShowDepthFrustum:1,showCesiumInspector:!1,cesiumInspectorWireframe:!1,showCesium3DTilesInspector:!1,particleGlobalControl:!1}),v(st,"getHeightsScartchCarto",new h.Cartographic);let Te=st;(t=>{t.createDefaultProps=()=>({...a.ESViewer.createDefaultProps(),...M4()})})(Te||(Te={})),a.extendClassProps(Te.prototype,Te.createDefaultProps),M.copyright=void 0;try{const t="earthsdk3-cesium",i="3.5.0-beta.16",e="2025-10-20T09:27:34.000Z",n="北京西部世界科技有限公司",o="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="68004f61674859e08549dce3fafcc248077970e5",l=((Date.now()-1760952454e3)/36e5).toFixed(1),c=`%c🌏 ${t}%c ${i}.${s.slice(0,8)}.${e} (距今${l}个小时)
2295
2295
  %c${o?o+`
2296
2296
  `:""}当前网站正在使用${t},此软件版权归${n}所有
2297
- `;M.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","1d92544757525a67472147b6dd3aca525c1d2508")},get info(){return c},get date(){return"2025-10-17T09:37:17.000Z"},get author(){return"suplyang"},get version(){return"3.5.0-beta.15"},get name(){return"earthsdk3-cesium"},get commitId(){return"1d92544757525a67472147b6dd3aca525c1d2508"},print(){console.info(this.info,`
2297
+ `;M.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","68004f61674859e08549dce3fafcc248077970e5")},get info(){return c},get date(){return"2025-10-20T09:27:34.000Z"},get author(){return"suplyang"},get version(){return"3.5.0-beta.16"},get name(){return"earthsdk3-cesium"},get commitId(){return"68004f61674859e08549dce3fafcc248077970e5"},print(){console.info(this.info,`
2298
2298
  font-size: 18px;
2299
2299
  font-weight: 1000;
2300
2300
  line-height: 1;
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/CzmObjects/general/CzmESPolygonWithHole/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAMzD,qBAAa,oBAAqB,SAAQ,eAAe,CAAC,iBAAiB,CAAC;IACxE,gBAAyB,IAAI,SAAiE;IAC9F,OAAO,CAAC,oBAAoB,CAAC;IAC7B,IAAI,mBAAmB,QAAwC;IAE/D,OAAO,CAAC,aAAa,CAAC;gBAEV,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc;IA+E5D,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;IAaxD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;CAapE"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/CzmObjects/general/CzmESPolygonWithHole/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AAMzD,qBAAa,oBAAqB,SAAQ,eAAe,CAAC,iBAAiB,CAAC;IACxE,gBAAyB,IAAI,SAAiE;IAC9F,OAAO,CAAC,oBAAoB,CAAC;IAC7B,IAAI,mBAAmB,QAAwC;IAE/D,OAAO,CAAC,aAAa,CAAC;gBAEV,WAAW,EAAE,iBAAiB,EAAE,SAAS,EAAE,cAAc;IA6E5D,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;IAaxD,KAAK,CAAC,QAAQ,EAAE,MAAM,GAAG,SAAS,EAAE,EAAE,EAAE,MAAM,GAAG,OAAO;CAapE"}
@@ -0,0 +1,29 @@
1
+ import * as Cesium from 'cesium';
2
+ import { XbsjRoutePath } from './XbsjRoutePath';
3
+ import { SceneObjectKey } from "earthsdk3";
4
+
5
+ export type XbsjPositionCallbackResultType = {
6
+ timeRatio: number;
7
+ repeat: number;
8
+ color: [number, number, number, number];
9
+ bgColor: [number, number, number, number];
10
+ bidirectional: 0 | 1 | 2 | 3; // 0/1表示单向,2表示双向, 3表示无信号
11
+ };
12
+
13
+ export type XbsjODLinesPostionCallback = (
14
+ instanceIndex: number,
15
+ frameState: Cesium.FrameState,
16
+ result: XbsjPositionCallbackResultType,
17
+ ) => XbsjPositionCallbackResultType;
18
+
19
+ export default function xbsjCreateODLinesPrimitive(
20
+ routePaths: XbsjRoutePath[],
21
+ color: [number, number, number, number],
22
+ arcType: Cesium.ArcType,
23
+ postionCallback: (instanceIndex: number, frameState: Cesium.FrameState | undefined, result: XbsjPositionCallbackResultType) => XbsjPositionCallbackResultType,
24
+ brightening?: boolean,
25
+ depthTest?: boolean,
26
+ getTextureFunc?: () => Cesium.Texture,
27
+ id?: SceneObjectKey
28
+ ): Cesium.Primitive;
29
+
@@ -0,0 +1,18 @@
1
+ import * as Cesium from 'cesium';
2
+
3
+ export declare class XbsjCameraVideo {
4
+ constructor(options: {
5
+ inverseViewMatrix: Cesium.Matrix4,
6
+ frustum: Cesium.PerspectiveFrustum,
7
+ // videoElement: HTMLVideoElement | string | undefined,
8
+ videoTextureFunc?: (() => Cesium.Texture | undefined) | undefined,
9
+ alphaTextureFunc?: (() => Cesium.Texture | undefined) | undefined,
10
+ showHelperPrimitive: true,
11
+ });
12
+ // videoElement: HTMLVideoElement | string | undefined;
13
+ // alphaImage: string;
14
+ videoTextureFunc: (() => Cesium.Texture | undefined) | undefined;
15
+ alphaTextureFunc: (() => Cesium.Texture | undefined) | undefined;
16
+ showHelperPrimitive: boolean;
17
+ destroy(): void;
18
+ }
@@ -0,0 +1,16 @@
1
+ import * as Cesium from 'cesium';
2
+
3
+ export declare class XbsjViewshed {
4
+ constructor(scene: Cesium.Scene, id?: string);
5
+ enabled: boolean;
6
+ showHelper: boolean;
7
+ fovH: number;
8
+ fovV: number;
9
+ near: number;
10
+ far: number;
11
+ position: Cesium.Cartesian3;
12
+ heading: number;
13
+ pitch: number;
14
+ roll: number;
15
+ destroy(): void;
16
+ }
@@ -0,0 +1,5 @@
1
+ export declare class BackGroundImage {
2
+ show: boolean;
3
+ material: Cesium.Material;
4
+ destroy(): void;
5
+ }
@@ -0,0 +1,14 @@
1
+ import * as Cesium from 'cesium';
2
+
3
+ declare class SkyAtmosphere {
4
+ constructor(ellipsoid: Cesium.Ellipsoid | undefined, sources: {
5
+ positiveX: string;
6
+ negativeX: string;
7
+ positiveY: string;
8
+ negativeY: string;
9
+ positiveZ: string;
10
+ negativeZ: string;
11
+ });
12
+ }
13
+
14
+ export = SkyAtmosphere;
@@ -0,0 +1,12 @@
1
+ import * as Cesium from 'cesium';
2
+
3
+ declare const GaussianSplatPipelineStage: {
4
+ name: string;
5
+ process: (
6
+ renderResources: any,
7
+ primitive: Cesium.Primitive,
8
+ frameState: Cesium.FrameState
9
+ ) => void;
10
+ };
11
+
12
+ export default GaussianSplatPipelineStage;
@@ -0,0 +1,11 @@
1
+ import * as Cesium from 'cesium';
2
+ declare const GaussianSplatTexturePipelineStage: {
3
+ name: string;
4
+ process: (
5
+ renderResources: any,
6
+ primitive: Cesium.Primitive,
7
+ frameState: Cesium.FrameState
8
+ ) => void;
9
+ };
10
+
11
+ export default GaussianSplatTexturePipelineStage;
@@ -0,0 +1 @@
1
+ export declare function cesiumFixGoogleEarth(Cesium: any): void;
@@ -2,6 +2,7 @@ import { Event, UniteChanged } from "earthsdk3";
2
2
  import { ESJVector4D, ESViewer, ESVisualObject, ESImageryLayer } from "earthsdk3";
3
3
  /**
4
4
  * https://c0yh9tnn0na.feishu.cn/wiki/TgnAwbo9jiI3NpkxPg6czXqsnwe
5
+ * 详细内容请参阅谷谷GIS https://gggis.com/siyouhua/gehis.html
5
6
  */
6
7
  export declare class ESGeHistoryImagery extends ESVisualObject {
7
8
  static readonly createDefaultProps: () => {
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ESObjects/ESGeHistoryImagery/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,EAAqB,YAAY,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,WAAW,EAAmD,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEnI;;GAEG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IAClD,gBAAyB,kBAAkB;;;;;;;;;;;;;;;;MAKxC;IACH,gBAAyB,IAAI,EAAE,MAAM,CAA2I;IAEhL,OAAO,CAAC,eAAe,CAAiC;IACxD,IAAI,cAAc,mBAAmC;IAErD,OAAO,CAAC,WAAW,CAA0D;IAC7E,IAAI,UAAU,4CAA+B;gBAEjC,EAAE,CAAC,EAAE,MAAM;IAoBd,eAAe;;;;;;;;;;CAY3B;AACD,MAAM,WAAW,kBAAmB,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;CAAI"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/ESObjects/ESGeHistoryImagery/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAQ,KAAK,EAAqB,YAAY,EAAE,MAAM,WAAW,CAAC;AACzE,OAAO,EAAE,WAAW,EAAmD,QAAQ,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,WAAW,CAAC;AAEnI;;;GAGG;AACH,qBAAa,kBAAmB,SAAQ,cAAc;IAClD,gBAAyB,kBAAkB;;;;;;;;;;;;;;;;MAKxC;IACH,gBAAyB,IAAI,EAAE,MAAM,CAA2I;IAEhL,OAAO,CAAC,eAAe,CAAiC;IACxD,IAAI,cAAc,mBAAmC;IAErD,OAAO,CAAC,WAAW,CAA0D;IAC7E,IAAI,UAAU,4CAA+B;gBAEjC,EAAE,CAAC,EAAE,MAAM;IAoBd,eAAe;;;;;;;;;;CAY3B;AACD,MAAM,WAAW,kBAAmB,SAAQ,YAAY,CAAC,UAAU,CAAC,OAAO,kBAAkB,CAAC,kBAAkB,CAAC,CAAC;CAAI"}