earthsdk3 3.0.7-beta.3 → 3.0.7-beta.5

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.
@@ -41,7 +41,7 @@ ${l.map(h=>`${h.id} ${h.typeName}
41
41
  ]
42
42
  ]
43
43
  \`\`\`
44
- `,Ht=class Ht extends c.Destroyable{constructor(){super();p(this,"_ratio",this.disposeVar(c.react(0)));p(this,"_subPlayers",this.disposeVar(new c.ObservableArray));const t=this.disposeVar(new c.Player);{const o=()=>{t.loop=this.loop??Ht.defaults.loop};o(),this.dispose(this.loopChanged.disposableOn(o))}{const o=()=>{(this.loop??Ht.defaults.loop)!==t.loop&&(this.loop=t.loop)};o(),this.dispose(t.loopChangedEvent.disposableOn(o))}{const o=()=>{t.currentTime=this.currentTime??Ht.defaults.currentTime};o(),this.dispose(this.currentTimeChanged.disposableOn(o))}{const o=()=>{(this.currentTime??Ht.defaults.currentTime)!==t.currentTime&&(this.currentTime=t.currentTime)};o(),this.dispose(t.currentTimeChangedEvent.disposableOn(o))}{const o=()=>{t.duration=this.duration??Ht.defaults.duration};o(),this.dispose(this.durationChanged.disposableOn(o))}{const o=()=>{(this.duration??Ht.defaults.duration)!==t.duration&&(this.duration=t.duration)};o(),this.dispose(t.durationChangedEvent.disposableOn(o))}{const o=()=>{t.speed=this.speed??Ht.defaults.speed};o(),this.dispose(this.speedChanged.disposableOn(o))}{const o=()=>{(this.speed??Ht.defaults.speed)!==t.speed&&(this.speed=t.speed)};o(),this.dispose(t.speedChangedEvent.disposableOn(o))}{const o=()=>{t.playing=this.playing??Ht.defaults.playing};o(),this.dispose(this.playingChanged.disposableOn(o))}{const o=()=>{(this.playing??Ht.defaults.playing)!==t.playing&&(this.playing=t.playing)};o(),this.dispose(t.playingChangedEvent.disposableOn(o))}const r=()=>{const o=this.duration??Ht.defaults.duration;o>0&&(this._ratio.value=(this.currentTime??Ht.defaults.currentTime)/o)};r();const i=this.disposeVar(c.createNextAnimateFrameEvent(this.currentTimeChanged,this.durationChanged));this.dispose(i.disposableOn(r)),this.dispose(()=>{const{length:o}=this._subPlayers;for(let a=0;a<o;++a)this._subPlayers.get(a).destroy();this._subPlayers.length=0});const s=()=>{for(let a of this._subPlayers)a.destroy();if(this._subPlayers.length=0,!this.channels)return;const o=this.channels.map(a=>{const[l,u,h]=a;return new by(l,u,h,this)});this._subPlayers.splice(0,0,...o)};s(),this.dispose(this.channelsChanged.disposableOn(s))}get ratio(){return this._ratio.value}set ratio(t){Math.abs(this._ratio.value-t)<.001||(this.currentTime=(this.duration??Ht.defaults.duration)*t)}get ratioChanged(){return this._ratio.changed}};p(Ht,"defaults",{loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,channels:!0,ratio:0}),p(Ht,"channelsReadMe",Ny);let Hn=Ht;(n=>{n.createDefaultProps=()=>({loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,channels:c.reactDeepArrayWithUndefined(void 0,(e,t)=>e==null?void 0:e.every((r,i)=>r===t[i]),e=>[...e])})})(Hn||(Hn={})),c.extendClassProps(Hn.prototype,Hn.createDefaultProps);class Ch extends c.Destroyable{constructor(t){super();p(this,"_sceneObject",this.disposeVar(c.react(void 0)));this._id=t,this.dispose(()=>{this._sceneObject.value=void 0});const r=j.getSceneObjById(this._id);r&&(this._sceneObject.value=r),this.dispose(j.context.sceneObjCreatedEvent.disposableOn(i=>{i.id===this._id&&(this._sceneObject.value=i)})),this.dispose(j.context.sceneObjToDestroyEvent.disposableOn(i=>{i.id===this._id&&(this._sceneObject.value=void 0)}))}get sceneObject(){return this._sceneObject.value}get sceneObjectChanged(){return this._sceneObject.changed}get id(){return this._id}}class Dy extends c.Destroyable{constructor(t,r){super();p(this,"_sofi");this._id=t,this._sofi=this.disposeVar(new Ch(this._id));{const i=()=>{r.sceneObject=this._sofi.sceneObject};i(),this.dispose(this._sofi.sceneObjectChanged.disposableOn(i))}}}class Oy extends c.Destroyable{constructor(){super();p(this,"_id",this.disposeVar(c.react(void 0)));p(this,"_sceneObject",this.disposeVar(c.react(void 0)));p(this,"_resetting",this.disposeVar(new c.ObjResettingWithEvent(this.idChanged,()=>{const{id:t}=this;if(t===void 0||t===""){this.sceneObject=void 0;return}return new Dy(t,this)})))}get id(){return this._id.value}get idChanged(){return this._id.changed}set id(t){this._id.value=t}get sceneObject(){return this._sceneObject.value}get sceneObjectChanged(){return this._sceneObject.changed}set sceneObject(t){this._sceneObject.value=t}get resetting(){return this._resetting}}class My extends c.Destroyable{constructor(e,t,r,i){super(),this.disposeVar(new c.ObjResettingWithEvent(e.sceneObjectChanged,()=>{let s;i.debug&&console.log("正在获取Event事件...");do{const o=e.sceneObject;if(!o||!t)break;const a=t.split(".");if(a.length===0){i.debug&&console.warn("propNames.length === 0");break}let l=c.pluckProperty(o,!1,...a);if((!l||!(l instanceof c.Event))&&(a[a.length-1]=a[a.length-1]+"Changed",i.debug&&console.warn(`event未能获取,那么将属性名的最后一项加上Changed(${a[a.length-1]})再试试!`),l=c.pluckProperty(o,!1,...a),i.debug&&l&&console.warn("event仍然获取不到!")),!l){i.debug&&console.warn(`cannot get changed from ${o.id}-${o.name}-${o.ref}-${t}`);break}if(!(l instanceof c.Event)){i.debug&&console.warn(`the prop is not event from ${o.id}-${o.name}-${o.ref}-${t}`);break}s=l,i.debug&&console.log(`Event获取成功 propChangedName: ${t}`,s)}while(!1);if(s){const o=new c.Destroyable;return o.dispose(s.dwon(()=>r.emit())),o}else{i.debug&&console.log(`未获取到Event!propChangedName: ${t}`);return}}))}}let xy=class extends c.Destroyable{constructor(t,r,i){super();p(this,"_doEvalEvent",this.dv(new c.Event));const s=this._doEvalEvent,o=this.disposeVar(c.createNextAnimateFrameEvent(s)),a=t.map(([l,u])=>{const h=new Ch(l),f=u&&new My(h,u,s,r)||void 0;return[h,f]});this.dispose(()=>{a.forEach(([l,u])=>{u==null||u.destroy(),l.destroy()}),a.length=0}),this.dispose(s.disposableOn(()=>{const{evalMode:l="NextAnimateFrame",evalOnlyWhenObjsAllExist:u=!0}=r;if(l==="Immediate"){const h=a.map(([f])=>f.sceneObject);(!u||h.every(f=>f!==void 0))&&i(h)}})),this.dispose(o.disposableOn(()=>{const{evalMode:l="NextAnimateFrame",evalOnlyWhenObjsAllExist:u=!0}=r;if(l==="NextAnimateFrame"){const h=a.map(([f])=>f.sceneObject);(!u||h.every(f=>f!==void 0))&&i(h)}}))}forceExecute(){this._doEvalEvent.emit()}};const cd=Object.freeze(Object.defineProperty({__proto__:null,WatcherObjects:xy},Symbol.toStringTag,{value:"Module"})),{WatcherObjects:Ly}=cd;class pu extends c.Destroyable{constructor(){super();p(this,"_evalFunc");p(this,"_forceExecute",new c.Event);const t=this.dv(c.react(void 0)),r=()=>{try{t.value=this.evalFuncStr&&Function('"use strict";return ('+this.evalFuncStr+")")(),this.debug&&console.log("evalFunc成功构建",t.value)}catch(o){console.error(`evalFunc get error! ${o}`),t.value=void 0}};r(),this.dispose(this.evalFuncStrChanged.disposableOn(r));const i=o=>{this.enabled&&(this.debug&&console.log("执行evalFunc..."),this._evalFunc&&this._evalFunc(o),t.value&&t.value(o))},s=this.disposeVar(new c.ObjResettingWithEvent(this.objIdAndPropChangedNamesChanged,()=>{if(this.objIdAndPropChangedNames.length>0)return this.debug&&console.log("监视对象发生变化,重新创建WatcherObjects"),new Ly(this.objIdAndPropChangedNames,this,i)}));this.dispose(this._forceExecute.disposableOn(()=>{var o;(o=s.obj)==null||o.forceExecute()}))}get evalFunc(){return this._evalFunc}set evalFunc(t){this._evalFunc=t}forceExecute(){this._forceExecute.emit()}}(n=>{n.createDefaultProps=()=>({enabled:!1,objIdAndPropChangedNames:c.reactDeepArray([],(e,t)=>e[0]===t[0]&&e[1]===t[1],e=>[e[0],e[1]]),evalFuncStr:"",evalMode:"NextAnimateFrame",evalOnlyWhenObjsAllExist:!0,debug:!1,name:"未命名场景对象",ref:void 0,extras:c.reactJson(void 0),devTags:c.reactArrayWithUndefined(void 0),execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0})})(pu||(pu={})),c.extendClassProps(pu.prototype,pu.createDefaultProps);function Ay(n,e,t){var i;((i=e.viewer)==null?void 0:i.getEngineObject(e))?t.call(n):n.dispose(e.createdEvent.don(()=>t.call(n)))}const Ue=class Ue extends j{constructor(t){super(t);p(this,"_editing",this.dv(c.react(!1)));p(this,"editingID");p(this,"editingBindMode","singlePoint");p(this,"_deprecated",[]);p(this,"_flyInEvent",this.dv(new c.Event));p(this,"_flyToEvent",this.dv(new c.Event));p(this,"_flyOverEvent",this.disposeVar(new c.Event));p(this,"_pickedEvent",this.dv(new c.Event));p(this,"_calcFlyToParamEvent",this.dv(new c.Event));p(this,"_calcFlyInParamEvent",this.dv(new c.Event));p(this,"useCalcFlyToParamInESObjectWithLocation",!1);nd(this,this.updateEditing)}supportEditingModes(){return this.constructor.supportEditingModes}get editing(){return this._editing.value}set editing(t){this._editing.value=t}get editingChanged(){return this._editing.changed}updateEditing(){}_deprecatedWarning(){const t=this._deprecated;for(let r=0;r<t.length;r++){const i=t[r];typeof i=="string"?Reflect.has(this,i+"Changed")&&this.d(this[i+"Changed"].don(()=>{console.warn(`注意:${this.typeName} 的 ${i} 属性下版本将会被移除!`)})):Object.keys(i).forEach(s=>{Reflect.has(this,s+"Changed")&&this.d(this[s+"Changed"].don(a=>{const l=i[s];typeof l=="string"?console.warn(`注意:${this.typeName} 的 ${s} 属性下版本将会被移除!`):Object.keys(l).forEach(u=>{a===u&&console.warn(`注意:${this.typeName} 的 ${s} 属性值 ${u} 下版本将会被移除,推荐使用属性值 ${l[u]}`)})}))})}}get flyInEvent(){return this._flyInEvent}flyIn(t=1){this._flyInEvent.emit(t,Ue._lastFlyInId)}get flyToEvent(){return this._flyToEvent}flyTo(t=1){this._flyToEvent.emit(t,Ue._lastFlyToId)}get flyOverEvent(){return this._flyOverEvent}get pickedEvent(){return this._pickedEvent}get calcFlyToParamEvent(){return this._calcFlyToParamEvent}calcFlyToParam(){this._calcFlyToParamEvent.emit()}get calcFlyInParamEvent(){return this._calcFlyInParamEvent}calcFlyInParam(){this._calcFlyInParamEvent.emit()}emptyFlyToParam(){this.flyToParam=void 0}emptyFlyInParam(){this.flyInParam=void 0}async getBoundSphere(t){return await t.getBoundSphere(this.id)}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"general",general:[...t.general,new J("唯一标识","id",!1,!0,[this,"id"]),new J("名称","name",!0,!1,[this,"name"]),new k("是否显示","show",!1,!1,[this,"show"],Ue.defaults.show),new k("开启碰撞","collision",!1,!1,[this,"collision"],Ue.defaults.collision),new k("允许拾取","allowPicking",!1,!1,[this,"allowPicking"],Ue.defaults.allowPicking),new ie("保存观察视角","保存当前flyToParam",[],()=>this.calcFlyToParam(),[]),new ie("清空飞向参数","清空飞向参数",[],()=>this.emptyFlyToParam(),[]),new ie("清空飞入参数","清空飞入参数",[],()=>this.emptyFlyInParam(),[]),new ie("保存飞入参数","保存飞入参数flyInParam",[],()=>this.calcFlyInParam(),[])]}}getProperties(t){return[...super.getProperties(t),new z("ESVisualObject","ESVisualObject",[new k("是否显示","是否显示.",!1,!1,[this,"show"],Ue.defaults.show),new k("是否开启碰撞监测","collision,是否开启碰撞监测.",!1,!1,[this,"collision"],Ue.defaults.collision),new k("是否允许拾取","是否允许被鼠标点击拾取.",!1,!1,[this,"allowPicking"],Ue.defaults.allowPicking),new z("飞行定位","飞向参数",[new ie("飞向","飞向",["number"],r=>this.flyTo(r),[1]),new G("flyToParam","flyToParam",!0,!1,[this,"flyToParam"],Ue.defaults.flyToParam),new ie("获取当前参数","获取当前flyToParam",[],()=>this.calcFlyToParam(),[]),new S("flyToDistance","flyToDistance",!0,!1,[this,"flyToDistance"],Ue.defaults.flyToParam.distance),new S("flyToHeading","flyToHeading",!0,!1,[this,"flyToHeading"],Ue.defaults.flyToParam.heading),new S("flyToPitch","flyToPitch",!0,!1,[this,"flyToPitch"],Ue.defaults.flyToParam.pitch),new S("flyToFlyDuration","flyToFlyDuration",!0,!1,[this,"flyToFlyDuration"],Ue.defaults.flyToParam.flyDuration),new S("flyToHDelta","flyToHDelta",!0,!1,[this,"flyToHDelta"],Ue.defaults.flyToParam.hDelta),new S("flyToPDelta","flyToPDelta",!0,!1,[this,"flyToPDelta"],Ue.defaults.flyToParam.pDelta)]),new z("飞入定位","飞入参数",[new ie("飞入","飞入",["number"],r=>this.flyIn(r),[1]),new G("flyInParam","flyInParam",!0,!1,[this,"flyInParam"],Ue.defaults.flyInParam),new ie("获取当前相机参数","获取当前相机参数",[],()=>this.calcFlyInParam(),[])])])]}get flyToDistance(){return this.flyToParam&&this.flyToParam.distance}get flyToHeading(){return this.flyToParam&&this.flyToParam.heading}get flyToPitch(){return this.flyToParam&&this.flyToParam.pitch}get flyToFlyDuration(){return this.flyToParam&&this.flyToParam.flyDuration}get flyToHDelta(){return this.flyToParam&&this.flyToParam.hDelta}get flyToPDelta(){return this.flyToParam&&this.flyToParam.pDelta}get flyToDistanceChanged(){return this.flyToParamChanged}get flyToHeadingChanged(){return this.flyToParamChanged}get flyToPitchChanged(){return this.flyToParamChanged}get flyToFlyDurationChanged(){return this.flyToParamChanged}get flyToHDeltaChanged(){return this.flyToParamChanged}get flyToPDeltaChanged(){return this.flyToParamChanged}set flyToDistance(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,distance:t}:void 0}set flyToHeading(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,heading:t}:void 0}set flyToPitch(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,pitch:t}:void 0}set flyToFlyDuration(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,flyDuration:t}:void 0}set flyToHDelta(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,hDelta:t}:void 0}set flyToPDelta(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,pDelta:t}:void 0}};p(Ue,"supportEditingModes",[]),p(Ue,"_lastFlyInId",0),p(Ue,"_lastFlyToId",0),p(Ue,"defaults",{...j.defaults,show:!0,collision:!0,allowPicking:!1,flyToParam:{distance:0,heading:0,pitch:0,flyDuration:1,hDelta:0,pDelta:0},flyInParam:{position:[0,0,0],rotation:[0,0,0],flyDuration:1}});let Se=Ue;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),show:!0,collision:!0,allowPicking:!1,flyToParam:c.reactJsonWithUndefined(void 0),flyInParam:c.reactJsonWithUndefined(void 0)})})(Se||(Se={})),c.extendClassProps(Se.prototype,Se.createDefaultProps);function hd(n){let e=0;function t(r,i){i++,e=Math.max(i,e),r.forEach(s=>{Array.isArray(s)&&t(s,i)})}return t(n,0),e}const gu=class gu extends Se{constructor(t){super(t);p(this,"editingBindMode","lineString");p(this,"_area",this.dv(c.react(0)));p(this,"_perimeter",this.dv(c.react(0)));const r=()=>{this._updateArea(),this._updatePerimeter()};r(),this.d(this.pointsChanged.don(r))}updateEditing(){var r;const t=[];do{if(this.editingBindMode=="doublePoints"){t.push(se.DoublePointsAppend,se.DoublePointsModify);break}if(this.editingBindMode=="lineString"){t.push(se.LineStringAppend,se.LineStringInsert,se.Translation);break}if(this.editingBindMode=="circular"){t.push(se.CircularAppend,se.CircularInsert,se.Translation),this.supportEditingModes().includes(se.HeightModify)&&t.push(se.HeightModify);break}if(this.editingBindMode=="visibility"){t.push(se.VisibilityAppend,se.VisibilityModify);break}}while(!1);(r=this.viewer)==null||r.startEditing(this,t,{callSource:"inner"})}get area(){return this._area.value}get areaChanged(){return this._area.changed}get perimeter(){return this._perimeter.value}get perimeterChanged(){return this._perimeter.changed}_updateArea(){this._area.value=this.getArea()??0}_updatePerimeter(){this._perimeter.value=this.getPerimeter()??0}getArea(){if(this.points&&this.points.length>=3)return bc([...this.points])}getDistance(){if(this.points&&this.points.length>=2){const t=Tl(this.points,"NONE");return t[t.length-1]}else return}getPerimeter(){if(this.points&&this.points.length>=3){const t=[...this.points,this.points[0]],r=Tl(t,"NONE");return r[r.length-1]}else return}getIntersect(t){if(this.points&&this.points.length>=3&&t.length>=3){const r=qp(this.points,t);if(!r)return;const i=r[0][0][0];if(Array.isArray(i)){const s=[...r],o=[];return s.forEach(a=>{const l=a[0].map(u=>[...u,0]);o.push(l)}),o}else return[[...r][0].map(a=>[...a,0])]}else return}getUnion(t){if(this.points&&this.points.length>=3&&t.length>=3){const r=Xp(this.points,t);if(!r)return;const i=r[0][0][0];if(Array.isArray(i)){const s=[...r],o=[];return s.forEach(a=>{const l=a[0].map(u=>[...u,0]);o.push(l)}),o}else return[[...r][0].map(a=>[...a,0])]}else return}getDifference(t){if(this.points&&this.points.length>=3&&t.length>=3){let r=[...t];const i=t[0],s=t[t.length-1];i[0]===s[0]&&i[1]===s[1]&&i[2]===s[2]||r.push(i);const o=Hp([...this.points,this.points[0]],[...r]);if(!o)return{status:"undefined",positions:void 0};const a=[...o];if(hd(a)===3){const l=a.map(d=>d.map(v=>[...v,0]));if(l.length<=1)return{status:"notIncluded",positions:l};const u=l[0],h=l[1];return gh([...u],[...h])==="oneBig"?{status:"included",positions:l}:{status:"notIncluded",positions:l}}else if(hd(a)===4){const u=[...a.map(f=>f.map(d=>d.map(v=>[...v,0])))],h=[];return u.forEach(f=>{h.push(f[0])}),{status:"notIncluded",positions:h}}else return{status:"undefined",positions:void 0}}else return{status:"undefined",positions:void 0}}getBuffer(t=500,r){if(this.points&&this.points.length>=2){const i=Yp(this.points,t,r);return i?[i[0].map(s=>[...s,0])]:void 0}else return}geoPolygonOverlap(t){if(this.points&&this.points.length>=3&&t.length>=3){const r=gh(this.points,t);return r==="oneBig"?!0:r==="twoBig"?!1:void 0}else return}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"style",coordinate:[...t.coordinate,new k("编辑","编辑",!1,!1,[this,"editing"],!1),new G("位置数组","位置数组(经纬高数组)",!0,!1,[this,"points"],gu.defaults.points)],style:[...t.style,new z("点样式","点样式集合",[]),new k("开启","开启点样式",!1,!1,[this,"pointed"],!1),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"],1),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]],"screen"),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"],[1,1,1,1]),new z("线样式","线样式集合",[]),new k("开启","开启线样式",!1,!1,[this,"stroked"],!0),new k("贴地","是否贴地",!1,!1,[this,"strokeGround"],!1),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"],1),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]],"screen"),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"],[1,1,1,1]),new z("面样式","面样式集合",[]),new k("开启","开启填充样式",!1,!1,[this,"filled"],!1),new k("贴地","是否贴地",!1,!1,[this,"fillGround"],!1),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"],[1,1,1,1])]}}getProperties(t){return[...super.getProperties(t),new z("ESGeoVector","ESGeoVector",[new k("是否编辑","是否编辑",!1,!1,[this,"editing"]),new G("位置数组","位置数组(经纬高数组)",!1,!1,[this,"points"]),new z("点样式","点样式",[new k("开启点样式","开启点样式",!1,!1,[this,"pointed"]),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"]),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]]),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"]),new J("点材质","点材质(pointMaterial)",!1,!1,[this,"pointMaterial"]),new G("点材质参数","点材质参数(pointMaterialParams)",!1,!1,[this,"pointMaterialParams"])]),new z("线样式","线样式",[new k("开启线样式","开启线样式",!1,!1,[this,"stroked"]),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"]),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]]),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"]),new J("线材质","线材质(strokeMaterial)",!1,!1,[this,"strokeMaterial"]),new G("线材质参数","线材质参数(strokeMaterialParams)",!1,!1,[this,"strokeMaterialParams"]),new k("是否贴地","是否贴地",!1,!1,[this,"strokeGround"])]),new z("填充样式","填充样式",[new k("开启填充样式","开启填充样式",!1,!1,[this,"filled"]),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"]),new J("面材质","面材质(fillMaterial)",!1,!1,[this,"fillMaterial"]),new G("面材质参数","面材质参数(fillMaterialParams)",!1,!1,[this,"fillMaterialParams"]),new k("是否贴地","是否贴地",!1,!1,[this,"fillGround"])])])]}get pointSize(){return this.pointStyle.size}set pointSize(t){this.pointStyle={...this.pointStyle,size:t}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(t){this.pointStyle={...this.pointStyle,sizeType:t}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(t){this.pointStyle={...this.pointStyle,color:[...t]}}get pointColorChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(t){this.pointStyle={...this.pointStyle,material:t}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(t){this.pointStyle={...this.pointStyle,materialParams:t}}get pointMaterialParamsChanged(){return this.pointStyleChanged}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(t){this.strokeStyle={...this.strokeStyle,width:t}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(t){this.strokeStyle={...this.strokeStyle,widthType:t}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(t){this.strokeStyle={...this.strokeStyle,color:[...t]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(t){this.strokeStyle={...this.strokeStyle,material:t}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(t){this.strokeStyle={...this.strokeStyle,materialParams:t}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(t){this.strokeStyle={...this.strokeStyle,ground:t}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(t){this.fillStyle={...this.fillStyle,color:[...t]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(t){this.fillStyle={...this.fillStyle,material:t}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(t){this.fillStyle={...this.fillStyle,materialParams:t}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(t){this.fillStyle={...this.fillStyle,ground:t}}get fillGroundChanged(){return this.fillStyleChanged}};p(gu,"supportEditingModes",[...Se.supportEditingModes,se.Translation]),p(gu,"defaults",{...Se.defaults,points:[],pointStyle:{size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{}},strokeStyle:{width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1},fillStyle:{color:[1,1,1,1],material:"",materialParams:{},ground:!1},pointed:!1,stroked:!1,filled:!1});let ce=gu;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),pointed:!1,pointStyle:c.reactJson(n.defaults.pointStyle),stroked:!1,strokeStyle:c.reactJson(n.defaults.strokeStyle),filled:!1,fillStyle:c.reactJson(n.defaults.fillStyle),points:c.reactPositions(void 0)})})(ce||(ce={})),c.extendClassProps(ce.prototype,ce.createDefaultProps);class q extends Se{constructor(){super(...arguments);p(this,"_statusDis",this.dv(c.react(!0)));p(this,"_smoothMoveEvent",this.dv(new c.Event));p(this,"_smoothMoveWithRotationEvent",this.dv(new c.Event));p(this,"_smoothMoveOnGroundEvent",this.dv(new c.Event));p(this,"_smoothMoveWithRotationOnGroundEvent",this.dv(new c.Event));p(this,"_automaticLandingEvent",this.dv(new c.Event));p(this,"_smoothMoveKeepPitchEvent",this.dv(new c.Event));p(this,"_smoothMoveRelativelyEvent",this.dv(new c.Event));p(this,"_smoothMoveRelativelyWithRotationEvent",this.dv(new c.Event));p(this,"useCalcFlyToParamInESObjectWithLocation",!0)}updateEditing(){var r;const t=[];do{if(this.editingBindMode=="singlePoint"){t.push(se.Place,se.Translation),["ESLocationMeasurement"].includes(this.typeName)||t.push(se.Rotation),["ESClippingPlane","ESLocationMeasurement","ESLocalRectangle","ESBoxClipping"].includes(this.typeName)||t.push(se.Scale);break}if(this.editingBindMode=="doublePoints"){t.push(se.DoublePointsAppend,se.DoublePointsModify);break}}while(!1);(r=this.viewer)==null||r.startEditing(this,t,{callSource:"inner"})}get statusDis(){return this._statusDis.value}get statusDisChanged(){return this._statusDis.changed}get smoothMoveEvent(){return this._smoothMoveEvent}smoothMove(t,r){this._smoothMoveEvent.emit(t,r)}get smoothMoveWithRotationEvent(){return this._smoothMoveWithRotationEvent}smoothMoveWithRotation(t,r,i){this._smoothMoveWithRotationEvent.emit(t,r,i)}get smoothMoveOnGroundEvent(){return this._smoothMoveOnGroundEvent}smoothMoveOnGround(t,r,i,s){this._smoothMoveOnGroundEvent.emit(t,r,i,s)}get smoothMoveWithRotationOnGroundEvent(){return this._smoothMoveWithRotationOnGroundEvent}smoothMoveWithRotationOnGround(t,r,i,s,o){this._smoothMoveWithRotationOnGroundEvent.emit(t,r,i,s,o)}get automaticLandingEvent(){return this._automaticLandingEvent}automaticLanding(){const t=this.collision;this.collision=!1,setTimeout(()=>{this._automaticLandingEvent.emit(t)},100)}get smoothMoveKeepPitchEvent(){return this._smoothMoveKeepPitchEvent}smoothMoveKeepPitch(t,r){this._smoothMoveKeepPitchEvent.emit(t,r)}get smoothMoveRelativelyEvent(){return this._smoothMoveRelativelyEvent}smoothMoveRelatively(t,r){this._smoothMoveRelativelyEvent.emit(t,r)}get smoothMoveRelativelyWithRotationEvent(){return this._smoothMoveRelativelyWithRotationEvent}smoothMoveRelativelyWithRotation(t,r,i){this._smoothMoveRelativelyWithRotationEvent.emit(t,r,i)}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"basic",location:[...t.location,new k("是否编辑","是否编辑",!1,!1,[this,"editing"]),new ie("自动落地","自动落地",[],()=>this.automaticLanding(),[]),new bn("位置数组","经度,纬度,高度,度为单位",!1,!1,[this,"position"],[0,0,0]),new wu("姿态数组","偏航角,俯仰角,翻转角,度为单位",!1,!1,[this,"rotation"],[0,0,0]),new Pt("缩放","缩放",!1,!1,[this,"scale"],[1,1,1]),new S("最小可见距离","单位米",!1,!1,[this,"minVisibleDistance"],0),new S("最大可见距离","单位米",!1,!1,[this,"maxVisibleDistance"],0)]}}getProperties(t){return[...super.getProperties(t),new z("位置姿态对象","位置姿态对象ESObjectWithLocation",[new ie("平滑移动","smoothMove",["numbers","number"],(r,i)=>this.smoothMove(r,i),[[0,0,0],0]),new ie("固定方向平滑移动","smoothMoveKeepPitch",["numbers","number"],(r,i)=>this.smoothMoveKeepPitch(r,i),[[0,0,0],0]),new ie("平滑偏移","smoothMoveWithRotation",["numbers","numbers","number"],(r,i,s)=>this.smoothMoveWithRotation(r,i,s),[[0,0,0],[0,0,0],0]),new ie("贴地平滑移动","smoothMoveOnGround",["number","number","number","string"],(r,i,s,o)=>this.smoothMoveOnGround(r,i,s,o),[0,0,0,""]),new ie("贴地平滑偏移","smoothMoveWithRotationOnGround",["numbers","number","number","number","string"],(r,i,s,o,a)=>this.smoothMoveWithRotationOnGround(r,i,s,o,a),[[0,0,0],0,0,0,""]),new ie("smoothMoveRelatively","smoothMoveRelatively",["numbers","number"],(r,i)=>this.smoothMoveRelatively(r,i),[[0,0,0],0]),new ie("smoothMoveRelativelyWithRotation","smoothMoveRelativelyWithRotation",["numbers","numbers","number"],(r,i,s)=>this.smoothMoveRelativelyWithRotation(r,i,s),[[0,0,0],[0,0,0],0]),new bn("位置数组","经度,纬度,高度,度为单位",!1,!1,[this,"position"]),new wu("姿态数组","偏航角,俯仰角,翻转角,度为单位",!1,!1,[this,"rotation"]),new Pt("缩放","缩放",!1,!1,[this,"scale"]),new k("是否编辑","是否开启编辑状态",!0,!1,[this,"editing"],!1),new S("最小可见距离","单位米",!1,!1,[this,"minVisibleDistance"]),new S("最大可见距离","单位米",!1,!1,[this,"maxVisibleDistance"]),new k("是否应用距离显隐","是否应用距离显隐",!1,!1,[this,"enableVisibleDistance"])])]}}p(q,"supportEditingModes",[...Se.supportEditingModes,se.Place,se.Translation,se.Rotation,se.Scale,se.DoublePointsAppend,se.DoublePointsModify]),p(q,"defaults",{...Se.defaults}),(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),position:c.reactArray([0,0,0]),rotation:c.reactArray([0,0,0]),scale:c.reactArray([1,1,1]),minVisibleDistance:c.react(0),maxVisibleDistance:c.react(0)})})(q||(q={})),c.extendClassProps(q.prototype,q.createDefaultProps);class Jn extends q{getESProperties(){const e={...super.getESProperties()};return{...e,style:[...e.style,new z("点样式","点样式集合",[]),new k("开启点样式","开启点样式",!1,!1,[this,"pointed"],!1),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"],1),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]],"screen"),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"],[1,1,1,1]),new z("线样式","线样式集合",[]),new k("开启线样式","开启线样式",!1,!1,[this,"stroked"],!1),new k("是否贴地(线)","是否贴地(线)",!1,!1,[this,"strokeGround"],!1),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"],1),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]],"screen"),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"],[1,1,1,1]),new z("面样式","面样式集合",[]),new k("开启填充样式","开启填充样式",!1,!1,[this,"filled"],!1),new k("是否贴地","是否贴地",!1,!1,[this,"fillGround"],!1),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"],[1,1,1,1])]}}getProperties(e){return[...super.getProperties(e),new z("ESLocalVector","ESLocalVector",[new G("点样式","点样式(pointMaterialParams)",!1,!1,[this,"pointStyle"]),new G("线样式","线样式(strokeMaterialParams)",!1,!1,[this,"strokeStyle"]),new G("填充样式","填充样式(fillMaterialParams)",!1,!1,[this,"fillStyle"]),new z("点样式","点样式",[new k("开启点样式","开启点样式",!1,!1,[this,"pointed"]),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"]),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]]),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"]),new J("点材质","点材质(pointMaterial)",!1,!1,[this,"pointMaterial"]),new G("点材质参数","点材质参数(pointMaterialParams)",!1,!1,[this,"pointMaterialParams"])]),new z("线样式","线样式",[new k("开启线样式","开启线样式",!1,!1,[this,"stroked"]),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"]),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]]),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"]),new J("线材质","线材质(strokeMaterial)",!1,!1,[this,"strokeMaterial"]),new G("线材质参数","线材质参数(strokeMaterialParams)",!1,!1,[this,"strokeMaterialParams"]),new k("是否贴地(线)","是否贴地(线)",!1,!1,[this,"strokeGround"],!1)]),new z("填充样式","填充样式",[new k("开启填充样式","开启填充样式",!1,!1,[this,"filled"]),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"]),new J("面材质","面材质(fillMaterial)",!1,!1,[this,"fillMaterial"]),new G("面材质参数","面材质参数(fillMaterialParams)",!1,!1,[this,"fillMaterialParams"]),new k("是否贴地","是否贴地",!1,!1,[this,"fillGround"])])])]}get pointSize(){return this.pointStyle.size}set pointSize(e){this.pointStyle={...this.pointStyle,size:e}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(e){this.pointStyle={...this.pointStyle,sizeType:e}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(e){this.pointStyle={...this.pointStyle,color:[...e]}}get pointColorChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(e){this.pointStyle={...this.pointStyle,material:e}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(e){this.pointStyle={...this.pointStyle,materialParams:e}}get pointMaterialParamsChanged(){return this.pointStyleChanged}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(e){this.strokeStyle={...this.strokeStyle,width:e}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(e){this.strokeStyle={...this.strokeStyle,widthType:e}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(e){this.strokeStyle={...this.strokeStyle,color:[...e]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(e){this.strokeStyle={...this.strokeStyle,material:e}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(e){this.strokeStyle={...this.strokeStyle,materialParams:e}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(e){this.strokeStyle={...this.strokeStyle,ground:e}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(e){this.fillStyle={...this.fillStyle,color:[...e]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle,materialParams:e}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(e){this.fillStyle={...this.fillStyle,ground:e}}get fillGroundChanged(){return this.fillStyleChanged}}p(Jn,"defaults",{...q.defaults,pointStyle:{size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{}},strokeStyle:{width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1},fillStyle:{color:[1,1,1,1],material:"",materialParams:{},ground:!1},pointed:!1,stroked:!1,filled:!1}),(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),pointed:!1,pointStyle:c.reactJson(n.defaults.pointStyle),stroked:!1,strokeStyle:c.reactJson(n.defaults.strokeStyle),filled:!1,fillStyle:c.reactJson(n.defaults.fillStyle)})})(Jn||(Jn={})),c.extendClassProps(Jn.prototype,Jn.createDefaultProps);class vr extends Jn{getESProperties(){return{...super.getESProperties()}}getProperties(e){return[...super.getProperties(e)]}}p(vr,"defaults",{...Jn.defaults}),(n=>{n.createDefaultProps=()=>({...Jn.createDefaultProps()})})(vr||(vr={})),c.extendClassProps(vr.prototype,vr.createDefaultProps);const fd=[["固定朝向",0],["面向屏幕旋转",1],["绕自身Z轴旋转",2]],pd=[["单面不透明",0],["双面不透明",1],["单面遮罩",2],["双面遮罩",3],["单面透明",4],["双面透明",5],["单面未遮挡透明",6],["双面未遮挡透明",7]];class ft extends q{constructor(){super(...arguments);p(this,"_widgetEvent",this.dv(new c.Event))}get widgetEvent(){return this._widgetEvent}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new k("屏幕渲染","是否开启屏幕渲染模式",!1,!1,[this,"screenRender"],!0),new k("尺寸自适应","尺寸是否根据内容自动计算",!1,!1,[this,"sizeByContent"],!0),new ke("尺寸大小","尺寸自适应关闭才会生效",!1,!1,[this,"size"],[100,100]),new ke("偏移比例","偏移比例(anchor)",!1,!1,[this,"anchor"],[.5,1]),new ke("像素偏移","像素偏移(offset)",!1,!1,[this,"offset"],[0,0]),new Y("渲染模式","八种渲染模式(0~7),当Widget中透明度只有(0,1)两种时可以选择2",!1,!1,[this,"renderMode"],pd,0),new Y("漫游旋转类型","三种漫游旋转类型(0,1,2)",!1,!1,[this,"rotationType"],fd,1),new J("绑定对象","actorTag",!1,!1,[this,"actorTag"]),new J("插槽名称","socketName",!1,!1,[this,"socketName"]),new Pt("位置偏移","positionOffset(米)",!1,!1,[this,"positionOffset"]),new Pt("相对姿态","rotationOffset(米)",!1,!1,[this,"rotationOffset"])]}}getProperties(t){return[...super.getProperties(t),new z("标签属性","标签对象ESLabel的属性",[new k("屏幕渲染","是否开启屏幕渲染模式",!1,!1,[this,"screenRender"],!0),new k("尺寸自适应","尺寸是否根据内容自动计算",!1,!1,[this,"sizeByContent"],!0),new ke("尺寸大小","尺寸自适应关闭才会生效",!1,!1,[this,"size"],[100,100]),new ke("偏移比例","偏移比例(anchor)",!1,!1,[this,"anchor"],[.5,1]),new ke("像素偏移","像素偏移(offset)",!1,!1,[this,"offset"],[0,0]),new Y("渲染模式","八种渲染模式(0~7),当Widget中透明度只有(0,1)两种时可以选择2",!1,!1,[this,"renderMode"],pd,0),new Y("漫游旋转类型","三种漫游旋转类型(0,1,2)",!1,!1,[this,"rotationType"],fd,1),new S("排序","zOrder排序",!1,!1,[this,"zOrder"],0)])]}}p(ft,"defaults",{...q.defaults,screenRender:!0,size:[100,100],anchor:[.5,.5],sizeByContent:!0,renderMode:0,rotationType:1}),(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),screenRender:!0,size:c.reactArray([100,100]),anchor:c.reactArray([.5,1]),offset:c.reactArray([0,0]),sizeByContent:!0,renderMode:0,rotationType:1,zOrder:0,actorTag:"",socketName:"",positionOffset:c.reactArray([0,0,0]),rotationOffset:c.reactArray([0,0,0])})})(ft||(ft={})),c.extendClassProps(ft.prototype,ft.createDefaultProps);const yr=class yr extends Se{constructor(){super(...arguments);p(this,"_refreshTilesetEvent",this.dv(new c.Event));p(this,"_tilesetReadyEvent",this.dv(new c.Event));p(this,"_supportEdit",this.dv(c.react(!0)));p(this,"_highlightFeatureEvent",this.dv(new c.Event));p(this,"_highlightFeatureAndFlyToEvent",this.dv(new c.Event));p(this,"_getFeatureTableEvent",this.dv(new c.Event));p(this,"_featureTableResultEvent",this.dv(new c.Event));p(this,"_getMaterialNameListEvent",this.disposeVar(new c.Event));p(this,"_setFeatureStyleEvent",this.dv(new c.Event));p(this,"_setFeatureColorEvent",this.dv(new c.Event));p(this,"_setFeatureVisableEvent",this.dv(new c.Event));p(this,"_resetFeatureStyleEvent",this.dv(new c.Event));p(this,"setMaterialInfoEvent",this.ad(new c.Event));p(this,"_setMaterialEvent",this.disposeVar(new c.Event));p(this,"_clippingPlanesId",this.dv(c.react("")));p(this,"_clippingPlaneIds",this.dv(c.react([])));p(this,"_flattenedPlaneId",this.dv(c.react("")));p(this,"_flattenedPlaneEnabled",this.dv(c.react(!1)));p(this,"_clippingPlaneId",this.dv(c.react("")));p(this,"_excavateId",this.dv(c.reactArray([])))}get typeName(){return"ES3DTileset"}get defaultProps(){return yr.createDefaultProps()}updateEditing(){var t;(t=this.viewer)==null||t.startEditing(this,[se.Translation,se.Rotation],{callSource:"inner"})}get refreshTilesetEvent(){return this._refreshTilesetEvent}refreshTileset(){this._refreshTilesetEvent.emit()}get tilesetReady(){return this._tilesetReadyEvent}get supportEdit(){return this._supportEdit.value}set supportEdit(t){this._supportEdit.value=t}get supportEditChanged(){return this._supportEdit.changed}get highlightFeatureEvent(){return this._highlightFeatureEvent}highlightFeature(t,r){this._highlightFeatureEvent.emit(t,r)}get highlightFeatureAndFlyToEvent(){return this._highlightFeatureAndFlyToEvent}highlightFeatureAndFlyTo(t,r,i,s){this._highlightFeatureAndFlyToEvent.emit(t,r,i,s)}get getFeatureTableEvent(){return this._getFeatureTableEvent}getFeatureTable(){return Promise.race([new Promise(t=>{const r=this.d(this._featureTableResultEvent.donce(t));this._getFeatureTableEvent.emit(),setTimeout(()=>{r(),t(void 0)},2e3)})])}get getMaterialNameListEvent(){return this._getMaterialNameListEvent}getMaterialNameList(){return new Promise(t=>{const r=new c.Destroyable;r.d(this.getMaterialNameListEvent.don(i=>{i!=="start"&&(r.destroy(),t(i))})),this.getMaterialNameListEvent.emit("start"),setTimeout(()=>{r.isDestroyed()||(r.destroy(),t(void 0))},2e3)})}get setFeatureStyleEvent(){return this._setFeatureStyleEvent}setFeatureStyle(t){this._setFeatureStyleEvent.emit(t)}get setFeatureColorEvent(){return this._setFeatureColorEvent}setFeatureColor(t,r){this._setFeatureColorEvent.emit(t,typeof r=="string"?JSON.parse(r):r)}get setFeatureVisableEvent(){return this._setFeatureVisableEvent}setFeatureVisable(t,r){this._setFeatureVisableEvent.emit(t,typeof r=="string"?JSON.parse(r):r)}get resetFeatureStyleEvent(){return this._resetFeatureStyleEvent}resetFeatureStyle(){this._resetFeatureStyleEvent.emit()}get setMaterialEvent(){return this._setMaterialEvent}setMaterial(t){return new Promise(r=>{const i=new c.Destroyable;i.ad(this.setMaterialInfoEvent.donce(s=>{i.destroy(),r(s)})),this._setMaterialEvent.emit(t)})}get clippingPlanesId(){return this._clippingPlanesId.value}set clippingPlanesId(t){this._clippingPlanesId.value=t}get clippingPlanesIdChanged(){return this._clippingPlanesId.changed}get clippingPlaneIds(){return this._clippingPlaneIds.value}set clippingPlaneIds(t){this._clippingPlaneIds.value=t}get clippingPlaneIdsChanged(){return this._clippingPlaneIds.changed}get flattenedPlaneId(){return this._flattenedPlaneId.value}set flattenedPlaneId(t){this._flattenedPlaneId.value=t}get flattenedPlaneIdChanged(){return this._flattenedPlaneId.changed}get flattenedPlaneEnabled(){return this._flattenedPlaneEnabled.value}set flattenedPlaneEnabled(t){this._flattenedPlaneEnabled.value=t}get flattenedPlaneEnabledChanged(){return this._flattenedPlaneEnabled.changed}get clippingPlaneId(){return this._clippingPlaneId.value}set clippingPlaneId(t){this._clippingPlaneId.value=t}get clippingPlaneIdChanged(){return this._clippingPlaneId.changed}get excavateId(){return this._excavateId.value}set excavateId(t){this._excavateId.value=t}get excavateIdChanged(){return this._excavateId.changed}setLight122(){this.czmEnvironmentMapManager={..._h}}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"dataSource",basic:[...t.basic,new Ve("精度","精度.",!1,!1,[this,"maximumScreenSpaceError"],1,[0,256],16),new Y("材质模式","materialMode",!0,!1,[this,"materialMode"],yr.defaults.materialModes,"normal"),new Y("颜色模式","颜色混合模式",!1,!1,[this,"colorBlendMode"],[["默认","HIGHLIGHT"],["替换","REPLACE"],["混合","MIX"]],"HIGHLIGHT"),new G("materialOverrideMap","材质替换",!1,!1,[this,"materialOverrideMap"],yr.defaults.materialOverrideMap)],dataSource:[...t.dataSource,new G("服务地址","服务地址",!0,!1,[this,"url"],yr.defaults.url)],coordinate:[...t.coordinate,new k("编辑","编辑",!0,!1,[this,"editing"],!1),new Pt("偏移","偏移量",!0,!1,[this,"offset"],[0,0,0]),new wu("旋转","旋转",!1,!1,[this,"rotation"],[0,0,0])]}}getProperties(t){return[...super.getProperties(t),new z("ES3DTileset","ES3DTileset",[new G("服务地址","服务地址",!1,!1,[this,"url"],yr.defaults.url),new Y("materialMode","materialMode",!1,!1,[this,"materialMode"],yr.defaults.materialModes),new G("materialParams","materialParams",!1,!1,[this,"materialParams"],yr.defaults.materialParams),new S("maximumScreenSpaceError","显示精度,maximumScreenSpaceError",!1,!1,[this,"maximumScreenSpaceError"]),new k("编辑","编辑",!1,!1,[this,"editing"],!1),new bn("offset","offset",!0,!1,[this,"offset"]),new bn("rotation","rotation",!1,!1,[this,"rotation"]),new Ve("精度","精度.",!1,!1,[this,"maximumScreenSpaceError"],1,[0,256],16),new ie("highlightFeature","highlightFeature",["string","string"],(r,i)=>this.highlightFeature(r,i),["","rgba(255,0,0,1)"]),new ie("setFeatureColor","setFeatureColor",["string","string"],(r,i)=>this.setFeatureColor(r,i),["",""]),new ie("setFeatureVisable","setFeatureVisable",["string","string"],(r,i)=>this.setFeatureVisable(r,i),["",""]),new ie("resetFeatureStyle","resetFeatureStyle",[],()=>this.resetFeatureStyle(),[]),new z("ue","ue",[new ie("refreshTileset","refreshTileset",[],()=>this.refreshTileset(),[]),new J("actorTag","actorTag",!1,!1,[this,"actorTag"]),new k("是否高亮","是否高亮.",!1,!1,[this,"highlight"]),new Z("highlightColor"," highlightColor.",!1,!1,[this,"highlightColor"]),new S("highlightID","highlightID",!1,!1,[this,"highlightID"]),new G("materialOverrideMap","材质替换",!1,!1,[this,"materialOverrideMap"],yr.defaults.materialOverrideMap)]),new z("czm","czm",[new z("可视化","可视化",[new ke("czmImageBasedLightingFactor","反射强度 ,imageBasedLightingFactor",!1,!1,[this,"czmImageBasedLightingFactor"]),new S("czmAtmosphereScatteringIntensity","大气散射强度 ,atmosphereScatteringIntensity",!1,!1,[this,"czmAtmosphereScatteringIntensity"]),new G("czmEnvironmentMapManager","动态环境贴图管理器",!1,!1,[this,"czmEnvironmentMapManager"]),new S("czmMaximumMemoryUsage","最大内存,maximumMemoryUsage",!1,!1,[this,"czmMaximumMemoryUsage"])]),new z("常用","常用",[new Y("czmClassificationType","Determines whether terrain, 3D Tiles or both will be classified by this tileset. See Cesium3DTileset#czmClassificationType for details about restrictions and limitations.",!0,!1,[this,"czmClassificationType"],[["NONE","NONE"],["TERRAIN","TERRAIN"],["CESIUM_3D_TILE","CESIUM_3D_TILE"],["BOTH","BOTH"]]),new G("czmStyle","czmStyle",!1,!1,[this,"czmStyleJson"]),new k("czmBackFaceCulling","czmBackFaceCulling",!1,!1,[this,"czmBackFaceCulling"]),new k("czmSkipLevelOfDetail","czmSkipLevelOfDetail",!1,!1,[this,"czmSkipLevelOfDetail"]),new Y("colorBlendMode","颜色混合模式",!1,!1,[this,"colorBlendMode"],[["HIGHLIGHT","HIGHLIGHT"],["REPLACE","REPLACE"],["MIX","MIX"]],"HIGHLIGHT"),new S("cacheBytes","最大缓存占用,超过的会自动卸载,但是视野范围内能看见的保留。单位字节。Cesium1.110(含)以后的版本起作用。",!1,!1,[this,"cacheBytes"],512*1024*1024)]),new z("调试信息","调试信息",[new k("czmDebugShowBoundingVolume","For debugging only.When true, renders the bounding volume for each tile.",!1,!1,[this,"czmDebugShowBoundingVolume"]),new k("czmDebugShowContentBoundingVolume","czmDebugShowContentBoundingVolume.",!1,!1,[this,"czmDebugShowContentBoundingVolume"])]),new z("clippingPlanes","clippingPlanes",[new k("clippingPlaneEnabled","clippingPlaneEnabled",!1,!1,[this,"clippingPlaneEnabled"]),new k("unionClippingRegions","unionClippingRegions",!1,!1,[this,"unionClippingRegions"]),new Z("clippingPlaneEdgeColor","clippingPlaneEdgeColor",!1,!1,[this,"clippingPlaneEdgeColor"]),new S("clippingPlaneEdgeWidth","clippingPlaneEdgeWidth",!1,!1,[this,"clippingPlaneEdgeWidth"])])])])]}};p(yr,"type",yr.register("ES3DTileset",yr,{chsName:"3DTileset",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"3DTileset"})),p(yr,"supportEditingModes",[...Se.supportEditingModes,se.Translation,se.Rotation]),p(yr,"defaults",{...Se.defaults,url:"",actorTag:"",materialMode:"normal",materialModes:[["常规","normal"],["科技感","technology"]],offset:[0,0,0],materialParams:{baseColor:[0,.5,1]},cacheBytes:512*1024*1024,materialOverrideMap:{}});let Ct=yr;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),url:"",actorTag:"",materialMode:"normal",highlight:!1,maximumScreenSpaceError:16,highlightID:0,highlightColor:c.reactArray([1,0,0,1]),offset:c.reactArrayWithUndefined(void 0),rotation:c.reactArray([0,0,0]),czmImageBasedLightingFactor:c.reactArray([1,1]),czmEnvironmentMapManager:c.reactJsonWithUndefined(void 0),czmLuminanceAtZenith:2,czmAtmosphereScatteringIntensity:2,czmMaximumMemoryUsage:512,czmClassificationType:"NONE",czmStyleJson:c.reactJson({}),czmBackFaceCulling:!0,czmDebugShowBoundingVolume:!1,czmDebugShowContentBoundingVolume:!1,czmSkipLevelOfDetail:!1,cacheBytes:512*1024*1024,colorBlendMode:"HIGHLIGHT",clippingPlaneEnabled:!0,unionClippingRegions:!0,clippingPlaneEdgeColor:c.reactArray([1,1,1,1]),clippingPlaneEdgeWidth:2,materialParams:{baseColor:[0,.5,1]},allowPicking:!0,materialOverrideMap:c.reactJsonWithUndefined(void 0)})})(Ct||(Ct={})),c.extendClassProps(Ct.prototype,Ct.createDefaultProps);const Ki=class Ki extends q{constructor(t){super(t);p(this,"_isFlyInCreated",this.dv(c.react(!1)));this.collision=!1,this.d(this.createdEvent.don(()=>{setTimeout(()=>{if((this.editing??!1)||!this.position){const i=this.dv(c.createNextAnimateFrameEvent(this.positionChanged,this.editingChanged));this.d(i.donce(()=>{this.editing||!this.position||this.isFlyInCreated&&this.flyTo()}))}else{if(!this.isFlyInCreated)return;this.flyTo()}},1e3)}))}get typeName(){return"ESAlarm"}get defaultProps(){return Ki.createDefaultProps()}get isFlyInCreated(){return this._isFlyInCreated.value}set isFlyInCreated(t){this._isFlyInCreated.value=t}get isFlyInCreatedChanged(){return this._isFlyInCreated.changed}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new Y("模式","mode",!1,!1,[this,"mode"],Ki.defaults.modes,"cylinder"),new S("半径","radius",!1,!1,[this,"radius"],10)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new Y("mode","mode",!1,!1,[this,"mode"],Ki.defaults.modes),new S("半径","radius",!1,!1,[this,"radius"])])]}};p(Ki,"type",Ki.register("ESAlarm",Ki,{chsName:"报警",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警告类"})),p(Ki,"defaults",{...q.defaults,modes:[["柱状警告","cylinder"],["圆形警告","circle"]],radius:100,czmAnimations:[{index:0,loop:"REPEAT",animationTime:"(duration) => Date.now() / 1000 / duration * 2"}]});let lo=Ki;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mode:"cylinder",radius:10})})(lo||(lo={})),c.extendClassProps(lo.prototype,lo.createDefaultProps);const Pa=class Pa extends q{get typeName(){return"ESApertureEffect"}get defaultProps(){return Pa.createDefaultProps()}constructor(e){super(e),this.collision=!1}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new S("半径","radius",!1,!1,[this,"radius"],1)]}}getProperties(e){return[...super.getProperties(e),new S("半径","radius",!1,!1,[this,"radius"])]}};p(Pa,"type",Pa.register("ESApertureEffect",Pa,{chsName:"光圈特效",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"光圈特效"})),p(Pa,"defaults",{...q.defaults,radius:1});let uo=Pa;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),radius:1})})(uo||(uo={})),c.extendClassProps(uo.prototype,uo.createDefaultProps);const en=class en extends ce{constructor(t){super(t);p(this,"editingBindMode","circular");this.collision=en.defaults.collision,this.filled=en.defaults.filled,this.stroked=en.defaults.stroked,this.fillStyle=en.defaults.fillStyle,this.strokeStyle=en.defaults.strokeStyle}get typeName(){return"ESGeoPolygon"}get defaultProps(){return en.createDefaultProps()}getESProperties(){const t={...super.getESProperties()};return{...t,coordinate:[...t.coordinate,new S("面积","面积",!1,!0,[this,"area"]),new S("周长","周长",!1,!0,[this,"perimeter"])]}}getProperties(t){return[...super.getProperties(t),new z("ESGeoPolygon","ESGeoPolygon",[])]}};p(en,"type",en.register("ESGeoPolygon",en,{chsName:"地理多边形",tags:["ESObjects"],description:"地理多边形"})),p(en,"supportEditingModes",[...ce.supportEditingModes,se.CircularAppend,se.CircularInsert]),p(en,"defaults",{...ce.defaults,fillStyle:{color:[1,1,1,.5],material:"",materialParams:{},ground:!1},strokeStyle:{width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1},filled:!0,stroked:!1,collision:!1});let ye=en;(n=>{n.createDefaultProps=()=>({...ce.createDefaultProps()})})(ye||(ye={})),c.extendClassProps(ye.prototype,ye.createDefaultProps);const Ei=class Ei extends ye{get typeName(){return"ESAreaMeasurement"}get defaultProps(){return Ei.createDefaultProps()}get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialParams(){return this.fillStyle?this.fillStyle.materialParams:Ei.defaults.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle??Ei.defaults.fillStyle,materialParams:e??Ei.defaults.fillStyle.materialParams}}constructor(e){super(e),this.fillStyle.ground=!0,this.strokeStyle.width=2}getProperties(e){return[...super.getProperties(e)]}};p(Ei,"type",Ei.register("ESAreaMeasurement",Ei,{chsName:"面积测量",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"面积测量"})),p(Ei,"defaults",{...ye.defaults,fillStyle:{color:[1,1,1,1],material:"Material'/EarthSDKForUE/M_ES_Material.M_ES_Material'",materialParams:{Opacity:.4},ground:!1}});let co=Ei;(n=>{n.createDefaultProps=()=>({...ye.createDefaultProps(),stroked:!0,filled:!0})})(co||(co={})),c.extendClassProps(co.prototype,co.createDefaultProps);const Ia=class Ia extends q{get typeName(){return"ESBlastParticleSystem"}get defaultProps(){return Ia.createDefaultProps()}constructor(e){super(e)}getESProperties(){return{...{...super.getESProperties()},defaultMenu:"general"}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new z("czm","czm",[new Al("图片","The URI, HTMLImageElement, or HTMLCanvasElement to use for the billboard.",!1,!1,[this,"image"]),new Pt("偏移","translation",!1,!1,[this,"translation"])])])]}};p(Ia,"type",Ia.register("ESBlastParticleSystem",Ia,{chsName:"粒子爆炸",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"粒子爆炸"})),p(Ia,"defaults",{...q.defaults,image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",translation:[0,0,0]});let ho=Ia;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",positionEditing:void 0,translation:c.reactArray([0,0,0])})})(ho||(ho={})),c.extendClassProps(ho.prototype,ho.createDefaultProps);const Jt=class Jt extends q{get typeName(){return"ESBoxClipping"}get defaultProps(){return{...Jt.createDefaultProps()}}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new k("反转","reverse",!1,!1,[this,"reverse"],Jt.defaults.reverse),new Pt("尺寸","长宽高",!1,!1,[this,"size"],Jt.defaults.size),new Z("边框颜色","edgeColor",!1,!1,[this,"edgeColor"],Jt.defaults.edgeColor),new S("边框宽度","edgeWidth",!1,!1,[this,"edgeWidth"],Jt.defaults.edgeWidth),new J("瓦片图层","targetID",!1,!1,[this,"targetID"],Jt.defaults.targetID)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new k("reverse","reverse",!1,!1,[this,"reverse"],Jt.defaults.reverse),new Z("edgeColor","edgeColor",!1,!1,[this,"edgeColor"],Jt.defaults.edgeColor),new S("edgeWidth","edgeWidth",!1,!1,[this,"edgeWidth"],Jt.defaults.edgeWidth),new Pt("尺寸","长宽高",!1,!1,[this,"size"],Jt.defaults.size),new J("targetID","targetID",!1,!1,[this,"targetID"],Jt.defaults.targetID)])]}};p(Jt,"type",Jt.register("ESBoxClipping",Jt,{chsName:"体剖切",tags:["ESObjects","_ES_Impl_Cesium"],description:"体剖切,体裁剪,体裁切,盒裁切"})),p(Jt,"defaults",{...q.defaults,reverse:!1,edgeColor:[1,1,1,1],edgeWidth:1,size:[10,10,10],targetID:""});let fo=Jt;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),reverse:!1,edgeColor:c.reactArray([1,1,1,1]),edgeWidth:2,size:c.reactArray([10,10,10]),targetID:""})})(fo||(fo={})),c.extendClassProps(fo.prototype,fo.createDefaultProps);const Qi=class Qi extends q{constructor(){super(...arguments);p(this,"_thumbnail",this.dv(c.react("")));p(this,"_duration",this.dv(c.react(1)));p(this,"_resetWithCurrentCameraEvent",this.dv(new c.Event));p(this,"_captureEvent",this.dv(new c.Event))}get typeName(){return"ESCameraView"}get defaultProps(){return Qi.createDefaultProps()}get thumbnail(){return this._thumbnail.value}set thumbnail(t){this._thumbnail.value=t}get thumbnailChanged(){return this._thumbnail.changed}get duration(){return this._duration.value}set duration(t){this._duration.value=t}get durationChanged(){return this._duration.changed}flyIn(t=1,r="default"){this.flyInEvent.emit(t,-1,r)}get resetWithCurrentCameraEvent(){return this._resetWithCurrentCameraEvent}resetWithCurrentCamera(){this._resetWithCurrentCameraEvent.emit()}get captureEvent(){return this._captureEvent}capture(t,r){this._captureEvent.emit(t,r)}execOnCreating(){this.resetWithCurrentCamera()}async initByCurrent(){this.resetWithCurrentCamera()}getProperties(t){return[...super.getProperties(t),new z("ESCameraView","ESCameraView",[new ie("设置为当前视角","resetWithCurrentCamera",[],()=>this.resetWithCurrentCamera(),[]),new ie("获取缩略图","获取缩略图",["number","number"],(r,i)=>this.capture(r,i),[Qi.defaults.thumbnailWidth,Qi.defaults.thumbnailHeight]),new J("缩略图","缩略图",!0,!1,[this,"thumbnail"]),new S("飞行时间","飞行时间(秒)",!0,!1,[this,"duration"])])]}};p(Qi,"type",Qi.register("ESCameraView",Qi,{chsName:"视角",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角"})),p(Qi,"defaults",{...q.defaults,thumbnailWidth:64,thumbnailHeight:64,duration:1,thumbnail:""});let Ts=Qi;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps()})})(Ts||(Ts={})),c.extendClassProps(Ts.prototype,Ts.createDefaultProps);class cc extends c.Destroyable{constructor(t,r,i){super();p(this,"_view",this.dv(new Ts));if(this.d(t.components.disposableAdd(this._view)),this._view.name=(i==null?void 0:i.name)??`视角${t.views.length+1}`,r){const a=this._view,l=r;a.duration=l.duration??1,a.position=l.position,a.rotation=l.rotation??[0,0,0],a.thumbnail=l.thumbnail??"",a.name=l.name}else{const a=(i==null?void 0:i.size)??[64,64];this.d(c.nextAnimateFrame(()=>{this._view.resetWithCurrentCamera(),this._view.capture(a[0],a[1])}))}const s=this._view,o=this.dv(c.createNextAnimateFrameEvent(s.durationChanged,s.positionChanged,s.rotationChanged,s.thumbnailChanged,s.nameChanged));this.d(o.don(()=>t.emitViewsWarpper()))}get view(){return this._view}get viewInfo(){const t=this._view;return{duration:t.duration,position:t.position,rotation:t.rotation,thumbnail:t.thumbnail,name:t.name}}}const _r=class _r extends j{constructor(t){super(t);p(this,"_currentViewIndex",this.dv(c.react(-1)));p(this,"_viewWrappers",this.dv(new c.ObservableArray));p(this,"_currentViewWrapper",this.dv(c.react(void 0)));p(this,"_container",this.dv(c.react(void 0)));{const r=this.dv(c.createProcessingFromAsyncFunc(async s=>{var o;do{if(!this.flyToNextView())break;const a=this.intervalTime??_r.defaults.intervalTime,u=((((o=this._currentViewWrapper.value)==null?void 0:o.viewInfo.duration)??0)+a)*1e3;await s.promise(c.sleep(u))}while(!0);this.playing=!1})),i=()=>{this.playing?r.restart():r.cancel()};i(),this.d(this.playingChanged.don(i))}{const r=()=>{if(!this._currentViewWrapper.value)return;this._viewWrappers.indexOf(this._currentViewWrapper.value)===-1&&(this._currentViewWrapper.value=void 0)};r(),this.d(this._viewWrappers.changedEvent.don(r))}{const r=()=>{const i=this._currentViewWrapper.value;this._currentViewIndex.value=i?this._getIndex(i):-1};r(),this.d(this._viewWrappers.changedEvent.don(r)),this.d(this._currentViewWrapper.changed.don(r))}this.d(()=>{this.clearAllViews()})}get typeName(){return"ESCameraViewCollection"}get defaultProps(){return _r.createDefaultProps()}get json(){return{...this._innerGetJson(),views:this.views}}set json(t){this._innerSetJson(t),this.views=t.views}get currentViewIndex(){return this._currentViewIndex.value}get currentViewIndexChanged(){return this._currentViewIndex.changed}emitViewsWarpper(){this._viewWrappers.changedEvent.emit(this._viewWrappers)}get container(){return this._container.value}get containerChanged(){return this._container.changed}set container(t){this._container.value=t}get views(){return Uh(this._viewWrappers,t=>t.viewInfo)}get viewsChanged(){return this._viewWrappers.changedEvent}set views(t){if(t.length===this._viewWrappers.length){const r=this._viewWrappers;if(t.every((i,s)=>{const o=r.get(s).view;return i.duration===o.duration&&wc(i.position,o.position)&&wc(i.rotation,o.rotation)&&i.thumbnail===o.thumbnail&&i.name===o.name}))return}this.clearAllViews();for(let r of t)this._viewWrappers.push(new cc(this,r))}_getIndex(t){return this._viewWrappers.indexOf(t)}clearAllViews(){for(let t of this._viewWrappers)t.destroy();this._viewWrappers.length=0}add(t=`视角${this.views.length+1}`,r=[64,64]){this._viewWrappers.push(new cc(this,void 0,{name:t,size:r}))}update(t,r,i=[64,64]){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const s=this._viewWrappers.get(t);r&&(s.view.name=r),s.view.resetWithCurrentCamera(),s.view.capture(i[0],i[1])}addView(){this._viewWrappers.push(new cc(this))}insertView(t){if(this._viewWrappers.length+1<=t||t<0){console.error("this._views.length <= index || index < 0");return}this._viewWrappers.splice(t,0,new cc(this))}setCurrentView(t){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const r=this._viewWrappers.get(t);return this._currentViewWrapper.value=r,!0}resetView(t){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const r=this._viewWrappers.get(t);r.view.resetWithCurrentCamera(),r.view.capture()}resetViewName(t,r){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const i=this._viewWrappers.get(t);i.view.name=r}updateView(t,r){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const i=this._viewWrappers.get(t);i.view.position=r.position,i.view.rotation=r.rotation??[0,0,0],i.view.duration=r.duration??1,i.view.thumbnail=r.thumbnail??"",i.view.name=r.name??""}flyToView(t){if(this.setCurrentView(t)){if(!this._currentViewWrapper.value)throw new Error("this._currentViewWrapper.value");const r=this._currentViewWrapper.value.view.duration;this._currentViewWrapper.value.view.flyIn(r,this.flyMode??_r.defaults.flyMode)}}flyToPrevView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const r=this._getIndex(t);return this.loop??_r.defaults.loop?(this.flyToView((this._viewWrappers.length+r-1)%this._viewWrappers.length),!0):r-1<0?!1:(this.flyToView(r-1),!0)}moveToPreView(){const t=this._currentViewWrapper.value;if(!t)return;const r=this._getIndex(t);if(r===0)return;const i=this._viewWrappers.splice(r-1,1,t)[0];this._viewWrappers.set(r,i)}moveToNextView(){const t=this._currentViewWrapper.value;if(!t)return;const r=this._getIndex(t);if(r===this._viewWrappers.length-1)return;const i=this._viewWrappers.splice(r+1,1,t)[0];this._viewWrappers.set(r,i)}flyToNextView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const r=this._getIndex(t);return this.loop??_r.defaults.loop?(this.flyToView((r+1)%this._viewWrappers.length),!0):r+1>this._viewWrappers.length-1?!1:(this.flyToView(r+1),!0)}stop(){this._currentViewWrapper.value=void 0,this.playing=!1}deleteView(t){if(t<0||t>=this._viewWrappers.length){console.warn("index < 0 || index >= this._viewWrappers.length");return}this._viewWrappers.get(t).destroy(),this._viewWrappers.splice(t,1)}deleteCurrentView(){const t=this._currentViewWrapper.value;if(!t){console.warn("!this._currentViewWrapper.value");return}const r=this._getIndex(t);if(r===-1){console.warn("index === -1");return}this.deleteView(r)}transitionImageUrl(t){return j.context.getStrFromEnv(t)}getProperties(t){return[...super.getProperties(t),new z("ESCameraViewCollection","ESCameraViewCollection",[new Y("飞行模式","flyMode",!1,!1,[this,"flyMode"],_r.defaults.flyModes,_r.defaults.flyMode),new ie("添加视角","添加视角",[],()=>this.addView(),[]),new ie("插入视角","插入视角",["number"],r=>this.insertView(r),[0]),new ie("清空所有视角","清空所有视角",[],()=>this.clearAllViews(),[]),new ie("当前位置插入视角","当前位置插入视角",[],()=>this.insertView(this.currentViewIndex+1),[]),new ie("上一个视角","上一个视角",[],()=>this.flyToPrevView(),[]),new ie("下一个视角","下一个视角",[],()=>this.flyToNextView(),[]),new ie("当前视角移动到上一个视角","当前视角移动到上一个视角",[],()=>this.moveToPreView(),[]),new ie("当前视角移动到下一个视角","当前视角移动到下一个视角",[],()=>this.moveToNextView(),[]),new ie("飞入指定视角","飞入指定视角",["number"],r=>this.flyToView(r),[0]),new ie("设置当前视角","设置当前视角",["number"],r=>this.setCurrentView(r),[0]),new ie("删除当前视角","删除当前视角",[],()=>this.deleteCurrentView(),[]),new ie("删除指定视角","删除指定视角",["number"],r=>this.deleteView(r),[0]),new ie("重置视角","重置视角",["number"],r=>this.resetView(r),[0]),new S("当前序号","当前序号",!1,!0,[this,"currentViewIndex"]),new Rh("播放","播放",[this,"playing"],()=>this.stop(),[this,"loop"],_r.defaults),new k("是否播放","是否播放.",!1,!1,[this,"playing"]),new ie("停止","停止",[],()=>this.stop(),[]),new k("是否循环","是否循环.",!1,!1,[this,"loop"]),new S("间隔时间","间隔时间(s)",!1,!1,[this,"intervalTime"]),new G("视角集合","类型为ESJViewInfo[]",!0,!1,[this,"views"],_r.defaults.views)])]}};p(_r,"type",_r.register("ESCameraViewCollection",_r,{chsName:"视角集合",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角集合"})),p(_r,"defaults",{...j.defaults,loop:!0,playing:!1,intervalTime:5,duration:1,views:[],flyMode:"default",flyModes:[["默认","default"],["直线飞行","uniform"]]});let bs=_r;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),playing:!1,loop:!0,intervalTime:5,flyMode:"default"})})(bs||(bs={})),c.extendClassProps(bs.prototype,bs.createDefaultProps);const Ta=class Ta extends q{constructor(t){super(t);p(this,"editingBindMode","doublePoints")}get typeName(){return"ESCameraVisibleRange"}get defaultProps(){return Ta.createDefaultProps()}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new S("宽高比","aspectRatio",!1,!1,[this,"aspectRatio"],1.77778),new S("横向夹角","fov",!1,!1,[this,"fov"],90),new S("视野长度","far",!1,!1,[this,"far"],100),new S("近面距离","near",!1,!1,[this,"near"],5)]}}getProperties(t){return[...super.getProperties(t),new S("横向夹角","fov",!1,!1,[this,"fov"]),new S("宽高比","aspectRatio",!1,!1,[this,"aspectRatio"]),new S("视野长度","far",!1,!1,[this,"far"]),new S("近面距离","near",!1,!1,[this,"near"])]}};p(Ta,"type",Ta.register("ESCameraVisibleRange",Ta,{chsName:"摄像头可视域",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"摄像头可视域"})),p(Ta,"defaults",{...q.defaults,fov:90,aspectRatio:1.77778,far:100,near:5,collision:!1});let po=Ta;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),fov:90,aspectRatio:1.77778,far:100,near:5,collision:!1})})(po||(po={})),c.extendClassProps(po.prototype,po.createDefaultProps);const Bi=class Bi extends q{get typeName(){return"ESCar"}get defaultProps(){return Bi.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Y("模式","mode",!1,!1,[this,"mode"],Bi.defaults.modeEnum,"policeCar")]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new Y("mode","mode",!1,!1,[this,"mode"],Bi.defaults.modeEnum)])]}};p(Bi,"type",Bi.register("ESCar",Bi,{chsName:"车辆",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警车等基础车辆模型"})),p(Bi,"defaults",{...q.defaults,modeEnum:[["警车","policeCar"]],mode:"policeCar"});let go=Bi;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mode:"policeCar",allowPicking:!0})})(go||(go={})),c.extendClassProps(go.prototype,go.createDefaultProps);const Ls=class Ls extends ce{constructor(t){super(t);p(this,"editingBindMode","circular");this.fillGround=!0}get typeName(){return"ESClassification"}get defaultProps(){return Ls.createDefaultProps()}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new S("高度","高度",!1,!1,[this,"height"],10)],coordinate:[...t.coordinate,new S("面积","面积",!1,!0,[this,"area"]),new S("周长","周长",!1,!0,[this,"perimeter"])]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new S("高度","高度",!1,!1,[this,"height"])])]}};p(Ls,"type",Ls.register("ESClassification",Ls,{chsName:"倾斜单体化",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"平尾箭头"})),p(Ls,"supportEditingModes",[...ce.supportEditingModes,se.CircularAppend,se.CircularInsert,se.HeightModify]),p(Ls,"defaults",{...ce.defaults,fillStyle:{material:"",materialParams:{},ground:!0,color:[1,1,1,1]},filled:!0});let Ns=Ls;(n=>{n.createDefaultProps=()=>({...ce.createDefaultProps(),height:10,filled:!0})})(Ns||(Ns={})),c.extendClassProps(Ns.prototype,Ns.createDefaultProps);const ba=class ba extends q{get typeName(){return"ESClippingPlane"}get defaultProps(){return ba.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new k("显示箭头","显示箭头",!1,!1,[this,"showArrow"],!0),new Z("线框颜色","edgeColor",!1,!1,[this,"edgeColor"],[1,1,1,1]),new S("线框宽度","edgetWidth",!1,!1,[this,"edgetWidth"],2),new S("裁剪宽度","width",!1,!1,[this,"width"],200),new S("裁剪高度","height",!1,!1,[this,"height"],200),new J("瓦片图层","targetID",!1,!1,[this,"targetID"],"")]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new z("czm","czm",[new k("显示箭头","显示箭头",!1,!1,[this,"showArrow"]),new Z("edgeColor","edgeColor",!1,!1,[this,"edgeColor"]),new S("edgetWidth","edgetWidth",!1,!1,[this,"edgetWidth"]),new S("width","width",!1,!1,[this,"width"]),new S("height","height",!1,!1,[this,"height"]),new J("targetID","targetID",!1,!1,[this,"targetID"])])])]}};p(ba,"type",ba.register("ESClippingPlane",ba,{chsName:"裁切",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESClippingPlane"})),p(ba,"defaults",{...q.defaults});let mo=ba;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),showArrow:!0,edgeColor:c.reactArray([1,1,1,1]),edgetWidth:2,width:200,height:200,targetID:""})})(mo||(mo={})),c.extendClassProps(mo.prototype,mo.createDefaultProps);class Ry extends c.Destroyable{constructor(e,t,r){super();const i=document.createElement("div");i.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${r.id}) container`);{const l=()=>{const h=`${t.cssText}
44
+ `,Ht=class Ht extends c.Destroyable{constructor(){super();p(this,"_ratio",this.disposeVar(c.react(0)));p(this,"_subPlayers",this.disposeVar(new c.ObservableArray));const t=this.disposeVar(new c.Player);{const o=()=>{t.loop=this.loop??Ht.defaults.loop};o(),this.dispose(this.loopChanged.disposableOn(o))}{const o=()=>{(this.loop??Ht.defaults.loop)!==t.loop&&(this.loop=t.loop)};o(),this.dispose(t.loopChangedEvent.disposableOn(o))}{const o=()=>{t.currentTime=this.currentTime??Ht.defaults.currentTime};o(),this.dispose(this.currentTimeChanged.disposableOn(o))}{const o=()=>{(this.currentTime??Ht.defaults.currentTime)!==t.currentTime&&(this.currentTime=t.currentTime)};o(),this.dispose(t.currentTimeChangedEvent.disposableOn(o))}{const o=()=>{t.duration=this.duration??Ht.defaults.duration};o(),this.dispose(this.durationChanged.disposableOn(o))}{const o=()=>{(this.duration??Ht.defaults.duration)!==t.duration&&(this.duration=t.duration)};o(),this.dispose(t.durationChangedEvent.disposableOn(o))}{const o=()=>{t.speed=this.speed??Ht.defaults.speed};o(),this.dispose(this.speedChanged.disposableOn(o))}{const o=()=>{(this.speed??Ht.defaults.speed)!==t.speed&&(this.speed=t.speed)};o(),this.dispose(t.speedChangedEvent.disposableOn(o))}{const o=()=>{t.playing=this.playing??Ht.defaults.playing};o(),this.dispose(this.playingChanged.disposableOn(o))}{const o=()=>{(this.playing??Ht.defaults.playing)!==t.playing&&(this.playing=t.playing)};o(),this.dispose(t.playingChangedEvent.disposableOn(o))}const r=()=>{const o=this.duration??Ht.defaults.duration;o>0&&(this._ratio.value=(this.currentTime??Ht.defaults.currentTime)/o)};r();const i=this.disposeVar(c.createNextAnimateFrameEvent(this.currentTimeChanged,this.durationChanged));this.dispose(i.disposableOn(r)),this.dispose(()=>{const{length:o}=this._subPlayers;for(let a=0;a<o;++a)this._subPlayers.get(a).destroy();this._subPlayers.length=0});const s=()=>{for(let a of this._subPlayers)a.destroy();if(this._subPlayers.length=0,!this.channels)return;const o=this.channels.map(a=>{const[l,u,h]=a;return new by(l,u,h,this)});this._subPlayers.splice(0,0,...o)};s(),this.dispose(this.channelsChanged.disposableOn(s))}get ratio(){return this._ratio.value}set ratio(t){Math.abs(this._ratio.value-t)<.001||(this.currentTime=(this.duration??Ht.defaults.duration)*t)}get ratioChanged(){return this._ratio.changed}};p(Ht,"defaults",{loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,channels:!0,ratio:0}),p(Ht,"channelsReadMe",Ny);let Hn=Ht;(n=>{n.createDefaultProps=()=>({loop:!1,currentTime:0,duration:3e3,speed:1,playing:!1,channels:c.reactDeepArrayWithUndefined(void 0,(e,t)=>e==null?void 0:e.every((r,i)=>r===t[i]),e=>[...e])})})(Hn||(Hn={})),c.extendClassProps(Hn.prototype,Hn.createDefaultProps);class Ch extends c.Destroyable{constructor(t){super();p(this,"_sceneObject",this.disposeVar(c.react(void 0)));this._id=t,this.dispose(()=>{this._sceneObject.value=void 0});const r=j.getSceneObjById(this._id);r&&(this._sceneObject.value=r),this.dispose(j.context.sceneObjCreatedEvent.disposableOn(i=>{i.id===this._id&&(this._sceneObject.value=i)})),this.dispose(j.context.sceneObjToDestroyEvent.disposableOn(i=>{i.id===this._id&&(this._sceneObject.value=void 0)}))}get sceneObject(){return this._sceneObject.value}get sceneObjectChanged(){return this._sceneObject.changed}get id(){return this._id}}class Dy extends c.Destroyable{constructor(t,r){super();p(this,"_sofi");this._id=t,this._sofi=this.disposeVar(new Ch(this._id));{const i=()=>{r.sceneObject=this._sofi.sceneObject};i(),this.dispose(this._sofi.sceneObjectChanged.disposableOn(i))}}}class Oy extends c.Destroyable{constructor(){super();p(this,"_id",this.disposeVar(c.react(void 0)));p(this,"_sceneObject",this.disposeVar(c.react(void 0)));p(this,"_resetting",this.disposeVar(new c.ObjResettingWithEvent(this.idChanged,()=>{const{id:t}=this;if(t===void 0||t===""){this.sceneObject=void 0;return}return new Dy(t,this)})))}get id(){return this._id.value}get idChanged(){return this._id.changed}set id(t){this._id.value=t}get sceneObject(){return this._sceneObject.value}get sceneObjectChanged(){return this._sceneObject.changed}set sceneObject(t){this._sceneObject.value=t}get resetting(){return this._resetting}}class My extends c.Destroyable{constructor(e,t,r,i){super(),this.disposeVar(new c.ObjResettingWithEvent(e.sceneObjectChanged,()=>{let s;i.debug&&console.log("正在获取Event事件...");do{const o=e.sceneObject;if(!o||!t)break;const a=t.split(".");if(a.length===0){i.debug&&console.warn("propNames.length === 0");break}let l=c.pluckProperty(o,!1,...a);if((!l||!(l instanceof c.Event))&&(a[a.length-1]=a[a.length-1]+"Changed",i.debug&&console.warn(`event未能获取,那么将属性名的最后一项加上Changed(${a[a.length-1]})再试试!`),l=c.pluckProperty(o,!1,...a),i.debug&&l&&console.warn("event仍然获取不到!")),!l){i.debug&&console.warn(`cannot get changed from ${o.id}-${o.name}-${o.ref}-${t}`);break}if(!(l instanceof c.Event)){i.debug&&console.warn(`the prop is not event from ${o.id}-${o.name}-${o.ref}-${t}`);break}s=l,i.debug&&console.log(`Event获取成功 propChangedName: ${t}`,s)}while(!1);if(s){const o=new c.Destroyable;return o.dispose(s.dwon(()=>r.emit())),o}else{i.debug&&console.log(`未获取到Event!propChangedName: ${t}`);return}}))}}let xy=class extends c.Destroyable{constructor(t,r,i){super();p(this,"_doEvalEvent",this.dv(new c.Event));const s=this._doEvalEvent,o=this.disposeVar(c.createNextAnimateFrameEvent(s)),a=t.map(([l,u])=>{const h=new Ch(l),f=u&&new My(h,u,s,r)||void 0;return[h,f]});this.dispose(()=>{a.forEach(([l,u])=>{u==null||u.destroy(),l.destroy()}),a.length=0}),this.dispose(s.disposableOn(()=>{const{evalMode:l="NextAnimateFrame",evalOnlyWhenObjsAllExist:u=!0}=r;if(l==="Immediate"){const h=a.map(([f])=>f.sceneObject);(!u||h.every(f=>f!==void 0))&&i(h)}})),this.dispose(o.disposableOn(()=>{const{evalMode:l="NextAnimateFrame",evalOnlyWhenObjsAllExist:u=!0}=r;if(l==="NextAnimateFrame"){const h=a.map(([f])=>f.sceneObject);(!u||h.every(f=>f!==void 0))&&i(h)}}))}forceExecute(){this._doEvalEvent.emit()}};const cd=Object.freeze(Object.defineProperty({__proto__:null,WatcherObjects:xy},Symbol.toStringTag,{value:"Module"})),{WatcherObjects:Ly}=cd;class pu extends c.Destroyable{constructor(){super();p(this,"_evalFunc");p(this,"_forceExecute",new c.Event);const t=this.dv(c.react(void 0)),r=()=>{try{t.value=this.evalFuncStr&&Function('"use strict";return ('+this.evalFuncStr+")")(),this.debug&&console.log("evalFunc成功构建",t.value)}catch(o){console.error(`evalFunc get error! ${o}`),t.value=void 0}};r(),this.dispose(this.evalFuncStrChanged.disposableOn(r));const i=o=>{this.enabled&&(this.debug&&console.log("执行evalFunc..."),this._evalFunc&&this._evalFunc(o),t.value&&t.value(o))},s=this.disposeVar(new c.ObjResettingWithEvent(this.objIdAndPropChangedNamesChanged,()=>{if(this.objIdAndPropChangedNames.length>0)return this.debug&&console.log("监视对象发生变化,重新创建WatcherObjects"),new Ly(this.objIdAndPropChangedNames,this,i)}));this.dispose(this._forceExecute.disposableOn(()=>{var o;(o=s.obj)==null||o.forceExecute()}))}get evalFunc(){return this._evalFunc}set evalFunc(t){this._evalFunc=t}forceExecute(){this._forceExecute.emit()}}(n=>{n.createDefaultProps=()=>({enabled:!1,objIdAndPropChangedNames:c.reactDeepArray([],(e,t)=>e[0]===t[0]&&e[1]===t[1],e=>[e[0],e[1]]),evalFuncStr:"",evalMode:"NextAnimateFrame",evalOnlyWhenObjsAllExist:!0,debug:!1,name:"未命名场景对象",ref:void 0,extras:c.reactJson(void 0),devTags:c.reactArrayWithUndefined(void 0),execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0})})(pu||(pu={})),c.extendClassProps(pu.prototype,pu.createDefaultProps);function Ay(n,e,t){var i;((i=e.viewer)==null?void 0:i.getEngineObject(e))?t.call(n):n.dispose(e.createdEvent.don(()=>t.call(n)))}const Ue=class Ue extends j{constructor(t){super(t);p(this,"_editing",this.dv(c.react(!1)));p(this,"editingID");p(this,"editingBindMode","singlePoint");p(this,"_deprecated",[]);p(this,"_flyInEvent",this.dv(new c.Event));p(this,"_flyToEvent",this.dv(new c.Event));p(this,"_flyOverEvent",this.disposeVar(new c.Event));p(this,"_pickedEvent",this.dv(new c.Event));p(this,"_calcFlyToParamEvent",this.dv(new c.Event));p(this,"_calcFlyInParamEvent",this.dv(new c.Event));p(this,"useCalcFlyToParamInESObjectWithLocation",!1);nd(this,this.updateEditing)}supportEditingModes(){return this.constructor.supportEditingModes}get editing(){return this._editing.value}set editing(t){this._editing.value=t}get editingChanged(){return this._editing.changed}updateEditing(){}_deprecatedWarning(){const t=this._deprecated;for(let r=0;r<t.length;r++){const i=t[r];typeof i=="string"?Reflect.has(this,i+"Changed")&&this.d(this[i+"Changed"].don(()=>{console.warn(`注意:${this.typeName} 的 ${i} 属性下版本将会被移除!`)})):Object.keys(i).forEach(s=>{Reflect.has(this,s+"Changed")&&this.d(this[s+"Changed"].don(a=>{const l=i[s];typeof l=="string"?console.warn(`注意:${this.typeName} 的 ${s} 属性下版本将会被移除!`):Object.keys(l).forEach(u=>{a===u&&console.warn(`注意:${this.typeName} 的 ${s} 属性值 ${u} 下版本将会被移除,推荐使用属性值 ${l[u]}`)})}))})}}get flyInEvent(){return this._flyInEvent}flyIn(t=1){this._flyInEvent.emit(t,Ue._lastFlyInId)}get flyToEvent(){return this._flyToEvent}flyTo(t=1){this._flyToEvent.emit(t,Ue._lastFlyToId)}get flyOverEvent(){return this._flyOverEvent}get pickedEvent(){return this._pickedEvent}get calcFlyToParamEvent(){return this._calcFlyToParamEvent}calcFlyToParam(){this._calcFlyToParamEvent.emit()}get calcFlyInParamEvent(){return this._calcFlyInParamEvent}calcFlyInParam(){this._calcFlyInParamEvent.emit()}emptyFlyToParam(){this.flyToParam=void 0}emptyFlyInParam(){this.flyInParam=void 0}async getBoundSphere(t){return await t.getBoundSphere(this.id)}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"general",general:[...t.general,new J("唯一标识","id",!1,!0,[this,"id"]),new J("名称","name",!0,!1,[this,"name"]),new k("是否显示","show",!1,!1,[this,"show"],Ue.defaults.show),new k("开启碰撞","collision",!1,!1,[this,"collision"],Ue.defaults.collision),new k("允许拾取","allowPicking",!1,!1,[this,"allowPicking"],Ue.defaults.allowPicking),new ie("保存观察视角","保存当前flyToParam",[],()=>this.calcFlyToParam(),[]),new ie("清空飞向参数","清空飞向参数",[],()=>this.emptyFlyToParam(),[]),new ie("清空飞入参数","清空飞入参数",[],()=>this.emptyFlyInParam(),[]),new ie("保存飞入参数","保存飞入参数flyInParam",[],()=>this.calcFlyInParam(),[])]}}getProperties(t){return[...super.getProperties(t),new z("ESVisualObject","ESVisualObject",[new k("是否显示","是否显示.",!1,!1,[this,"show"],Ue.defaults.show),new k("是否开启碰撞监测","collision,是否开启碰撞监测.",!1,!1,[this,"collision"],Ue.defaults.collision),new k("是否允许拾取","是否允许被鼠标点击拾取.",!1,!1,[this,"allowPicking"],Ue.defaults.allowPicking),new z("飞行定位","飞向参数",[new ie("飞向","飞向",["number"],r=>this.flyTo(r),[1]),new G("flyToParam","flyToParam",!0,!1,[this,"flyToParam"],Ue.defaults.flyToParam),new ie("获取当前参数","获取当前flyToParam",[],()=>this.calcFlyToParam(),[]),new S("flyToDistance","flyToDistance",!0,!1,[this,"flyToDistance"],Ue.defaults.flyToParam.distance),new S("flyToHeading","flyToHeading",!0,!1,[this,"flyToHeading"],Ue.defaults.flyToParam.heading),new S("flyToPitch","flyToPitch",!0,!1,[this,"flyToPitch"],Ue.defaults.flyToParam.pitch),new S("flyToFlyDuration","flyToFlyDuration",!0,!1,[this,"flyToFlyDuration"],Ue.defaults.flyToParam.flyDuration),new S("flyToHDelta","flyToHDelta",!0,!1,[this,"flyToHDelta"],Ue.defaults.flyToParam.hDelta),new S("flyToPDelta","flyToPDelta",!0,!1,[this,"flyToPDelta"],Ue.defaults.flyToParam.pDelta)]),new z("飞入定位","飞入参数",[new ie("飞入","飞入",["number"],r=>this.flyIn(r),[1]),new G("flyInParam","flyInParam",!0,!1,[this,"flyInParam"],Ue.defaults.flyInParam),new ie("获取当前相机参数","获取当前相机参数",[],()=>this.calcFlyInParam(),[])])])]}get flyToDistance(){return this.flyToParam&&this.flyToParam.distance}get flyToHeading(){return this.flyToParam&&this.flyToParam.heading}get flyToPitch(){return this.flyToParam&&this.flyToParam.pitch}get flyToFlyDuration(){return this.flyToParam&&this.flyToParam.flyDuration}get flyToHDelta(){return this.flyToParam&&this.flyToParam.hDelta}get flyToPDelta(){return this.flyToParam&&this.flyToParam.pDelta}get flyToDistanceChanged(){return this.flyToParamChanged}get flyToHeadingChanged(){return this.flyToParamChanged}get flyToPitchChanged(){return this.flyToParamChanged}get flyToFlyDurationChanged(){return this.flyToParamChanged}get flyToHDeltaChanged(){return this.flyToParamChanged}get flyToPDeltaChanged(){return this.flyToParamChanged}set flyToDistance(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,distance:t}:void 0}set flyToHeading(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,heading:t}:void 0}set flyToPitch(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,pitch:t}:void 0}set flyToFlyDuration(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,flyDuration:t}:void 0}set flyToHDelta(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,hDelta:t}:void 0}set flyToPDelta(t){this.flyToParam=t!==void 0?{...this.flyToParam??Ue.defaults.flyToParam,pDelta:t}:void 0}};p(Ue,"supportEditingModes",[]),p(Ue,"_lastFlyInId",0),p(Ue,"_lastFlyToId",0),p(Ue,"defaults",{...j.defaults,show:!0,collision:!0,allowPicking:!1,flyToParam:{distance:0,heading:0,pitch:0,flyDuration:1,hDelta:0,pDelta:0},flyInParam:{position:[0,0,0],rotation:[0,0,0],flyDuration:1}});let Se=Ue;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),show:!0,collision:!0,allowPicking:!1,flyToParam:c.reactJsonWithUndefined(void 0),flyInParam:c.reactJsonWithUndefined(void 0)})})(Se||(Se={})),c.extendClassProps(Se.prototype,Se.createDefaultProps);function hd(n){let e=0;function t(r,i){i++,e=Math.max(i,e),r.forEach(s=>{Array.isArray(s)&&t(s,i)})}return t(n,0),e}const gu=class gu extends Se{constructor(t){super(t);p(this,"editingBindMode","lineString");p(this,"_area",this.dv(c.react(0)));p(this,"_perimeter",this.dv(c.react(0)));const r=()=>{this._updateArea(),this._updatePerimeter()};r(),this.d(this.pointsChanged.don(r))}updateEditing(){var r;const t=[];do{if(this.editingBindMode=="doublePoints"){t.push(se.DoublePointsAppend,se.DoublePointsModify);break}if(this.editingBindMode=="lineString"){t.push(se.LineStringAppend,se.LineStringInsert,se.Translation);break}if(this.editingBindMode=="circular"){t.push(se.CircularAppend,se.CircularInsert,se.Translation),this.supportEditingModes().includes(se.HeightModify)&&t.push(se.HeightModify);break}if(this.editingBindMode=="visibility"){t.push(se.VisibilityAppend,se.VisibilityModify);break}}while(!1);(r=this.viewer)==null||r.startEditing(this,t,{callSource:"inner"})}get area(){return this._area.value}get areaChanged(){return this._area.changed}get perimeter(){return this._perimeter.value}get perimeterChanged(){return this._perimeter.changed}_updateArea(){this._area.value=this.getArea()??0}_updatePerimeter(){this._perimeter.value=this.getPerimeter()??0}getArea(){if(this.points&&this.points.length>=3)return bc([...this.points])}getDistance(){if(this.points&&this.points.length>=2){const t=Tl(this.points,"NONE");return t[t.length-1]}else return}getPerimeter(){if(this.points&&this.points.length>=3){const t=[...this.points,this.points[0]],r=Tl(t,"NONE");return r[r.length-1]}else return}getIntersect(t){if(this.points&&this.points.length>=3&&t.length>=3){const r=qp(this.points,t);if(!r)return;const i=r[0][0][0];if(Array.isArray(i)){const s=[...r],o=[];return s.forEach(a=>{const l=a[0].map(u=>[...u,0]);o.push(l)}),o}else return[[...r][0].map(a=>[...a,0])]}else return}getUnion(t){if(this.points&&this.points.length>=3&&t.length>=3){const r=Xp(this.points,t);if(!r)return;const i=r[0][0][0];if(Array.isArray(i)){const s=[...r],o=[];return s.forEach(a=>{const l=a[0].map(u=>[...u,0]);o.push(l)}),o}else return[[...r][0].map(a=>[...a,0])]}else return}getDifference(t){if(this.points&&this.points.length>=3&&t.length>=3){let r=[...t];const i=t[0],s=t[t.length-1];i[0]===s[0]&&i[1]===s[1]&&i[2]===s[2]||r.push(i);const o=Hp([...this.points,this.points[0]],[...r]);if(!o)return{status:"undefined",positions:void 0};const a=[...o];if(hd(a)===3){const l=a.map(d=>d.map(v=>[...v,0]));if(l.length<=1)return{status:"notIncluded",positions:l};const u=l[0],h=l[1];return gh([...u],[...h])==="oneBig"?{status:"included",positions:l}:{status:"notIncluded",positions:l}}else if(hd(a)===4){const u=[...a.map(f=>f.map(d=>d.map(v=>[...v,0])))],h=[];return u.forEach(f=>{h.push(f[0])}),{status:"notIncluded",positions:h}}else return{status:"undefined",positions:void 0}}else return{status:"undefined",positions:void 0}}getBuffer(t=500,r){if(this.points&&this.points.length>=2){const i=Yp(this.points,t,r);return i?[i[0].map(s=>[...s,0])]:void 0}else return}geoPolygonOverlap(t){if(this.points&&this.points.length>=3&&t.length>=3){const r=gh(this.points,t);return r==="oneBig"?!0:r==="twoBig"?!1:void 0}else return}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"style",coordinate:[...t.coordinate,new k("编辑","编辑",!1,!1,[this,"editing"],!1),new G("位置数组","位置数组(经纬高数组)",!0,!1,[this,"points"],gu.defaults.points)],style:[...t.style,new z("点样式","点样式集合",[]),new k("开启","开启点样式",!1,!1,[this,"pointed"],!1),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"],1),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]],"screen"),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"],[1,1,1,1]),new z("线样式","线样式集合",[]),new k("开启","开启线样式",!1,!1,[this,"stroked"],!0),new k("贴地","是否贴地",!1,!1,[this,"strokeGround"],!1),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"],1),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]],"screen"),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"],[1,1,1,1]),new z("面样式","面样式集合",[]),new k("开启","开启填充样式",!1,!1,[this,"filled"],!1),new k("贴地","是否贴地",!1,!1,[this,"fillGround"],!1),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"],[1,1,1,1])]}}getProperties(t){return[...super.getProperties(t),new z("ESGeoVector","ESGeoVector",[new k("是否编辑","是否编辑",!1,!1,[this,"editing"]),new G("位置数组","位置数组(经纬高数组)",!1,!1,[this,"points"]),new z("点样式","点样式",[new k("开启点样式","开启点样式",!1,!1,[this,"pointed"]),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"]),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]]),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"]),new J("点材质","点材质(pointMaterial)",!1,!1,[this,"pointMaterial"]),new G("点材质参数","点材质参数(pointMaterialParams)",!1,!1,[this,"pointMaterialParams"])]),new z("线样式","线样式",[new k("开启线样式","开启线样式",!1,!1,[this,"stroked"]),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"]),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]]),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"]),new J("线材质","线材质(strokeMaterial)",!1,!1,[this,"strokeMaterial"]),new G("线材质参数","线材质参数(strokeMaterialParams)",!1,!1,[this,"strokeMaterialParams"]),new k("是否贴地","是否贴地",!1,!1,[this,"strokeGround"])]),new z("填充样式","填充样式",[new k("开启填充样式","开启填充样式",!1,!1,[this,"filled"]),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"]),new J("面材质","面材质(fillMaterial)",!1,!1,[this,"fillMaterial"]),new G("面材质参数","面材质参数(fillMaterialParams)",!1,!1,[this,"fillMaterialParams"]),new k("是否贴地","是否贴地",!1,!1,[this,"fillGround"])])])]}get pointSize(){return this.pointStyle.size}set pointSize(t){this.pointStyle={...this.pointStyle,size:t}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(t){this.pointStyle={...this.pointStyle,sizeType:t}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(t){this.pointStyle={...this.pointStyle,color:[...t]}}get pointColorChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(t){this.pointStyle={...this.pointStyle,material:t}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(t){this.pointStyle={...this.pointStyle,materialParams:t}}get pointMaterialParamsChanged(){return this.pointStyleChanged}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(t){this.strokeStyle={...this.strokeStyle,width:t}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(t){this.strokeStyle={...this.strokeStyle,widthType:t}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(t){this.strokeStyle={...this.strokeStyle,color:[...t]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(t){this.strokeStyle={...this.strokeStyle,material:t}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(t){this.strokeStyle={...this.strokeStyle,materialParams:t}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(t){this.strokeStyle={...this.strokeStyle,ground:t}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(t){this.fillStyle={...this.fillStyle,color:[...t]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(t){this.fillStyle={...this.fillStyle,material:t}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(t){this.fillStyle={...this.fillStyle,materialParams:t}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(t){this.fillStyle={...this.fillStyle,ground:t}}get fillGroundChanged(){return this.fillStyleChanged}};p(gu,"supportEditingModes",[...Se.supportEditingModes,se.Translation]),p(gu,"defaults",{...Se.defaults,points:[],pointStyle:{size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{}},strokeStyle:{width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1},fillStyle:{color:[1,1,1,1],material:"",materialParams:{},ground:!1},pointed:!1,stroked:!1,filled:!1});let ce=gu;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),pointed:!1,pointStyle:c.reactJson(n.defaults.pointStyle),stroked:!1,strokeStyle:c.reactJson(n.defaults.strokeStyle),filled:!1,fillStyle:c.reactJson(n.defaults.fillStyle),points:c.reactPositions(void 0)})})(ce||(ce={})),c.extendClassProps(ce.prototype,ce.createDefaultProps);class q extends Se{constructor(){super(...arguments);p(this,"_statusDis",this.dv(c.react(!0)));p(this,"_smoothMoveEvent",this.dv(new c.Event));p(this,"_smoothMoveWithRotationEvent",this.dv(new c.Event));p(this,"_smoothMoveOnGroundEvent",this.dv(new c.Event));p(this,"_smoothMoveWithRotationOnGroundEvent",this.dv(new c.Event));p(this,"_automaticLandingEvent",this.dv(new c.Event));p(this,"_smoothMoveKeepPitchEvent",this.dv(new c.Event));p(this,"_smoothMoveRelativelyEvent",this.dv(new c.Event));p(this,"_smoothMoveRelativelyWithRotationEvent",this.dv(new c.Event));p(this,"useCalcFlyToParamInESObjectWithLocation",!0)}updateEditing(){var r;const t=[];do{if(this.editingBindMode=="singlePoint"){t.push(se.Place,se.Translation),["ESLocationMeasurement"].includes(this.typeName)||t.push(se.Rotation),["ESClippingPlane","ESLocationMeasurement","ESLocalRectangle","ESBoxClipping"].includes(this.typeName)||t.push(se.Scale);break}if(this.editingBindMode=="doublePoints"){t.push(se.DoublePointsAppend,se.DoublePointsModify);break}}while(!1);(r=this.viewer)==null||r.startEditing(this,t,{callSource:"inner"})}get statusDis(){return this._statusDis.value}get statusDisChanged(){return this._statusDis.changed}get smoothMoveEvent(){return this._smoothMoveEvent}smoothMove(t,r){this._smoothMoveEvent.emit(t,r)}get smoothMoveWithRotationEvent(){return this._smoothMoveWithRotationEvent}smoothMoveWithRotation(t,r,i){this._smoothMoveWithRotationEvent.emit(t,r,i)}get smoothMoveOnGroundEvent(){return this._smoothMoveOnGroundEvent}smoothMoveOnGround(t,r,i,s){this._smoothMoveOnGroundEvent.emit(t,r,i,s)}get smoothMoveWithRotationOnGroundEvent(){return this._smoothMoveWithRotationOnGroundEvent}smoothMoveWithRotationOnGround(t,r,i,s,o){this._smoothMoveWithRotationOnGroundEvent.emit(t,r,i,s,o)}get automaticLandingEvent(){return this._automaticLandingEvent}automaticLanding(){const t=this.collision;this.collision=!1,setTimeout(()=>{this._automaticLandingEvent.emit(t)},100)}get smoothMoveKeepPitchEvent(){return this._smoothMoveKeepPitchEvent}smoothMoveKeepPitch(t,r){this._smoothMoveKeepPitchEvent.emit(t,r)}get smoothMoveRelativelyEvent(){return this._smoothMoveRelativelyEvent}smoothMoveRelatively(t,r){this._smoothMoveRelativelyEvent.emit(t,r)}get smoothMoveRelativelyWithRotationEvent(){return this._smoothMoveRelativelyWithRotationEvent}smoothMoveRelativelyWithRotation(t,r,i){this._smoothMoveRelativelyWithRotationEvent.emit(t,r,i)}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"basic",location:[...t.location,new k("是否编辑","是否编辑",!1,!1,[this,"editing"]),new ie("自动落地","自动落地",[],()=>this.automaticLanding(),[]),new bn("位置数组","经度,纬度,高度,度为单位",!1,!1,[this,"position"],[0,0,0]),new wu("姿态数组","偏航角,俯仰角,翻转角,度为单位",!1,!1,[this,"rotation"],[0,0,0]),new Pt("缩放","缩放",!1,!1,[this,"scale"],[1,1,1]),new S("最小可见距离","单位米",!1,!1,[this,"minVisibleDistance"],0),new S("最大可见距离","单位米",!1,!1,[this,"maxVisibleDistance"],0)]}}getProperties(t){return[...super.getProperties(t),new z("位置姿态对象","位置姿态对象ESObjectWithLocation",[new ie("平滑移动","smoothMove",["numbers","number"],(r,i)=>this.smoothMove(r,i),[[0,0,0],0]),new ie("固定方向平滑移动","smoothMoveKeepPitch",["numbers","number"],(r,i)=>this.smoothMoveKeepPitch(r,i),[[0,0,0],0]),new ie("平滑偏移","smoothMoveWithRotation",["numbers","numbers","number"],(r,i,s)=>this.smoothMoveWithRotation(r,i,s),[[0,0,0],[0,0,0],0]),new ie("贴地平滑移动","smoothMoveOnGround",["number","number","number","string"],(r,i,s,o)=>this.smoothMoveOnGround(r,i,s,o),[0,0,0,""]),new ie("贴地平滑偏移","smoothMoveWithRotationOnGround",["numbers","number","number","number","string"],(r,i,s,o,a)=>this.smoothMoveWithRotationOnGround(r,i,s,o,a),[[0,0,0],0,0,0,""]),new ie("smoothMoveRelatively","smoothMoveRelatively",["numbers","number"],(r,i)=>this.smoothMoveRelatively(r,i),[[0,0,0],0]),new ie("smoothMoveRelativelyWithRotation","smoothMoveRelativelyWithRotation",["numbers","numbers","number"],(r,i,s)=>this.smoothMoveRelativelyWithRotation(r,i,s),[[0,0,0],[0,0,0],0]),new bn("位置数组","经度,纬度,高度,度为单位",!1,!1,[this,"position"]),new wu("姿态数组","偏航角,俯仰角,翻转角,度为单位",!1,!1,[this,"rotation"]),new Pt("缩放","缩放",!1,!1,[this,"scale"]),new k("是否编辑","是否开启编辑状态",!0,!1,[this,"editing"],!1),new S("最小可见距离","单位米",!1,!1,[this,"minVisibleDistance"]),new S("最大可见距离","单位米",!1,!1,[this,"maxVisibleDistance"]),new k("是否应用距离显隐","是否应用距离显隐",!1,!1,[this,"enableVisibleDistance"])])]}}p(q,"supportEditingModes",[...Se.supportEditingModes,se.Place,se.Translation,se.Rotation,se.Scale,se.DoublePointsAppend,se.DoublePointsModify]),p(q,"defaults",{...Se.defaults}),(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),position:c.reactArray([0,0,0]),rotation:c.reactArray([0,0,0]),scale:c.reactArray([1,1,1]),minVisibleDistance:c.react(0),maxVisibleDistance:c.react(0)})})(q||(q={})),c.extendClassProps(q.prototype,q.createDefaultProps);class Jn extends q{getESProperties(){const e={...super.getESProperties()};return{...e,style:[...e.style,new z("点样式","点样式集合",[]),new k("开启点样式","开启点样式",!1,!1,[this,"pointed"],!1),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"],1),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]],"screen"),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"],[1,1,1,1]),new z("线样式","线样式集合",[]),new k("开启线样式","开启线样式",!1,!1,[this,"stroked"],!1),new k("是否贴地(线)","是否贴地(线)",!1,!1,[this,"strokeGround"],!1),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"],1),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]],"screen"),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"],[1,1,1,1]),new z("面样式","面样式集合",[]),new k("开启填充样式","开启填充样式",!1,!1,[this,"filled"],!1),new k("是否贴地","是否贴地",!1,!1,[this,"fillGround"],!1),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"],[1,1,1,1])]}}getProperties(e){return[...super.getProperties(e),new z("ESLocalVector","ESLocalVector",[new G("点样式","点样式(pointMaterialParams)",!1,!1,[this,"pointStyle"]),new G("线样式","线样式(strokeMaterialParams)",!1,!1,[this,"strokeStyle"]),new G("填充样式","填充样式(fillMaterialParams)",!1,!1,[this,"fillStyle"]),new z("点样式","点样式",[new k("开启点样式","开启点样式",!1,!1,[this,"pointed"]),new S("点大小","点大小(pointSize)",!1,!1,[this,"pointSize"]),new Y("点类型","点类型(pointSizeType)",!1,!1,[this,"pointSizeType"],[["screen","screen"],["world","world"]]),new Z("点颜色","点颜色(pointColor)",!1,!1,[this,"pointColor"]),new J("点材质","点材质(pointMaterial)",!1,!1,[this,"pointMaterial"]),new G("点材质参数","点材质参数(pointMaterialParams)",!1,!1,[this,"pointMaterialParams"])]),new z("线样式","线样式",[new k("开启线样式","开启线样式",!1,!1,[this,"stroked"]),new S("线宽","线宽(strokeWidth)",!1,!1,[this,"strokeWidth"]),new Y("线类型","线类型(strokeWidthType)",!1,!1,[this,"strokeWidthType"],[["screen","screen"],["world","world"]]),new Z("线颜色","线颜色(strokeColor)",!1,!1,[this,"strokeColor"]),new J("线材质","线材质(strokeMaterial)",!1,!1,[this,"strokeMaterial"]),new G("线材质参数","线材质参数(strokeMaterialParams)",!1,!1,[this,"strokeMaterialParams"]),new k("是否贴地(线)","是否贴地(线)",!1,!1,[this,"strokeGround"],!1)]),new z("填充样式","填充样式",[new k("开启填充样式","开启填充样式",!1,!1,[this,"filled"]),new Z("填充颜色","填充颜色(fillColor)",!1,!1,[this,"fillColor"]),new J("面材质","面材质(fillMaterial)",!1,!1,[this,"fillMaterial"]),new G("面材质参数","面材质参数(fillMaterialParams)",!1,!1,[this,"fillMaterialParams"]),new k("是否贴地","是否贴地",!1,!1,[this,"fillGround"])])])]}get pointSize(){return this.pointStyle.size}set pointSize(e){this.pointStyle={...this.pointStyle,size:e}}get pointSizeChanged(){return this.pointStyleChanged}get pointSizeType(){return this.pointStyle.sizeType}set pointSizeType(e){this.pointStyle={...this.pointStyle,sizeType:e}}get pointSizeTypeChanged(){return this.pointStyleChanged}get pointColor(){return this.pointStyle.color}set pointColor(e){this.pointStyle={...this.pointStyle,color:[...e]}}get pointColorChanged(){return this.pointStyleChanged}get pointMaterial(){return this.pointStyle.material}set pointMaterial(e){this.pointStyle={...this.pointStyle,material:e}}get pointMaterialChanged(){return this.pointStyleChanged}get pointMaterialParams(){return this.pointStyle.materialParams}set pointMaterialParams(e){this.pointStyle={...this.pointStyle,materialParams:e}}get pointMaterialParamsChanged(){return this.pointStyleChanged}get strokeWidth(){return this.strokeStyle.width}set strokeWidth(e){this.strokeStyle={...this.strokeStyle,width:e}}get strokeWidthChanged(){return this.strokeStyleChanged}get strokeWidthType(){return this.strokeStyle.widthType}set strokeWidthType(e){this.strokeStyle={...this.strokeStyle,widthType:e}}get strokeWidthTypeChanged(){return this.strokeStyleChanged}get strokeColor(){return this.strokeStyle.color}set strokeColor(e){this.strokeStyle={...this.strokeStyle,color:[...e]}}get strokeColorChanged(){return this.strokeStyleChanged}get strokeMaterial(){return this.strokeStyle.material}set strokeMaterial(e){this.strokeStyle={...this.strokeStyle,material:e}}get strokeMaterialChanged(){return this.strokeStyleChanged}get strokeMaterialParams(){return this.strokeStyle.materialParams}set strokeMaterialParams(e){this.strokeStyle={...this.strokeStyle,materialParams:e}}get strokeMaterialParamsChanged(){return this.strokeStyleChanged}get strokeGround(){return this.strokeStyle.ground}set strokeGround(e){this.strokeStyle={...this.strokeStyle,ground:e}}get strokeGroundChanged(){return this.strokeStyleChanged}get fillColor(){return this.fillStyle.color}set fillColor(e){this.fillStyle={...this.fillStyle,color:[...e]}}get fillColorChanged(){return this.fillStyleChanged}get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialChanged(){return this.fillStyleChanged}get fillMaterialParams(){return this.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle,materialParams:e}}get fillMaterialParamsChanged(){return this.fillStyleChanged}get fillGround(){return this.fillStyle.ground}set fillGround(e){this.fillStyle={...this.fillStyle,ground:e}}get fillGroundChanged(){return this.fillStyleChanged}}p(Jn,"defaults",{...q.defaults,pointStyle:{size:1,sizeType:"screen",color:[1,1,1,1],material:"",materialParams:{}},strokeStyle:{width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1},fillStyle:{color:[1,1,1,1],material:"",materialParams:{},ground:!1},pointed:!1,stroked:!1,filled:!1}),(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),pointed:!1,pointStyle:c.reactJson(n.defaults.pointStyle),stroked:!1,strokeStyle:c.reactJson(n.defaults.strokeStyle),filled:!1,fillStyle:c.reactJson(n.defaults.fillStyle)})})(Jn||(Jn={})),c.extendClassProps(Jn.prototype,Jn.createDefaultProps);class vr extends Jn{getESProperties(){return{...super.getESProperties()}}getProperties(e){return[...super.getProperties(e)]}}p(vr,"defaults",{...Jn.defaults}),(n=>{n.createDefaultProps=()=>({...Jn.createDefaultProps()})})(vr||(vr={})),c.extendClassProps(vr.prototype,vr.createDefaultProps);const fd=[["固定朝向",0],["面向屏幕旋转",1],["绕自身Z轴旋转",2]],pd=[["单面不透明",0],["双面不透明",1],["单面遮罩",2],["双面遮罩",3],["单面透明",4],["双面透明",5],["单面未遮挡透明",6],["双面未遮挡透明",7]];class ft extends q{constructor(){super(...arguments);p(this,"_widgetEvent",this.dv(new c.Event))}get widgetEvent(){return this._widgetEvent}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new k("屏幕渲染","是否开启屏幕渲染模式",!1,!1,[this,"screenRender"],!0),new k("尺寸自适应","尺寸是否根据内容自动计算",!1,!1,[this,"sizeByContent"],!0),new ke("尺寸大小","尺寸自适应关闭才会生效",!1,!1,[this,"size"],[100,100]),new ke("偏移比例","偏移比例(anchor)",!1,!1,[this,"anchor"],[.5,1]),new ke("像素偏移","像素偏移(offset)",!1,!1,[this,"offset"],[0,0]),new Y("渲染模式","八种渲染模式(0~7),当Widget中透明度只有(0,1)两种时可以选择2",!1,!1,[this,"renderMode"],pd,0),new Y("漫游旋转类型","三种漫游旋转类型(0,1,2)",!1,!1,[this,"rotationType"],fd,1),new J("绑定对象","actorTag",!1,!1,[this,"actorTag"]),new J("插槽名称","socketName",!1,!1,[this,"socketName"]),new Pt("位置偏移","positionOffset(米)",!1,!1,[this,"positionOffset"]),new Pt("相对姿态","rotationOffset(米)",!1,!1,[this,"rotationOffset"])]}}getProperties(t){return[...super.getProperties(t),new z("标签属性","标签对象ESLabel的属性",[new k("屏幕渲染","是否开启屏幕渲染模式",!1,!1,[this,"screenRender"],!0),new k("尺寸自适应","尺寸是否根据内容自动计算",!1,!1,[this,"sizeByContent"],!0),new ke("尺寸大小","尺寸自适应关闭才会生效",!1,!1,[this,"size"],[100,100]),new ke("偏移比例","偏移比例(anchor)",!1,!1,[this,"anchor"],[.5,1]),new ke("像素偏移","像素偏移(offset)",!1,!1,[this,"offset"],[0,0]),new Y("渲染模式","八种渲染模式(0~7),当Widget中透明度只有(0,1)两种时可以选择2",!1,!1,[this,"renderMode"],pd,0),new Y("漫游旋转类型","三种漫游旋转类型(0,1,2)",!1,!1,[this,"rotationType"],fd,1),new S("排序","zOrder排序",!1,!1,[this,"zOrder"],0)])]}}p(ft,"defaults",{...q.defaults,screenRender:!0,size:[100,100],anchor:[.5,.5],sizeByContent:!0,renderMode:0,rotationType:1}),(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),screenRender:!0,size:c.reactArray([100,100]),anchor:c.reactArray([.5,1]),offset:c.reactArray([0,0]),sizeByContent:!0,renderMode:0,rotationType:1,zOrder:0,actorTag:"",socketName:"",positionOffset:c.reactArray([0,0,0]),rotationOffset:c.reactArray([0,0,0])})})(ft||(ft={})),c.extendClassProps(ft.prototype,ft.createDefaultProps);const yr=class yr extends Se{constructor(){super(...arguments);p(this,"_refreshTilesetEvent",this.dv(new c.Event));p(this,"_tilesetReadyEvent",this.dv(new c.Event));p(this,"_supportEdit",this.dv(c.react(!0)));p(this,"_highlightFeatureEvent",this.dv(new c.Event));p(this,"_highlightFeatureAndFlyToEvent",this.dv(new c.Event));p(this,"_getFeatureTableEvent",this.dv(new c.Event));p(this,"_featureTableResultEvent",this.dv(new c.Event));p(this,"_getMaterialNameListEvent",this.disposeVar(new c.Event));p(this,"_setFeatureStyleEvent",this.dv(new c.Event));p(this,"_setFeatureColorEvent",this.dv(new c.Event));p(this,"_setFeatureVisableEvent",this.dv(new c.Event));p(this,"_resetFeatureStyleEvent",this.dv(new c.Event));p(this,"setMaterialInfoEvent",this.ad(new c.Event));p(this,"_setMaterialEvent",this.disposeVar(new c.Event));p(this,"_clippingPlanesId",this.dv(c.react("")));p(this,"_clippingPlaneIds",this.dv(c.react([])));p(this,"_flattenedPlaneId",this.dv(c.react("")));p(this,"_flattenedPlaneEnabled",this.dv(c.react(!1)));p(this,"_clippingPlaneId",this.dv(c.react("")));p(this,"_excavateId",this.dv(c.reactArray([])))}get typeName(){return"ES3DTileset"}get defaultProps(){return yr.createDefaultProps()}updateEditing(){var t;(t=this.viewer)==null||t.startEditing(this,[se.Translation,se.Rotation],{callSource:"inner"})}get refreshTilesetEvent(){return this._refreshTilesetEvent}refreshTileset(){this._refreshTilesetEvent.emit()}get tilesetReady(){return this._tilesetReadyEvent}get supportEdit(){return this._supportEdit.value}set supportEdit(t){this._supportEdit.value=t}get supportEditChanged(){return this._supportEdit.changed}get highlightFeatureEvent(){return this._highlightFeatureEvent}highlightFeature(t,r){this._highlightFeatureEvent.emit(t,r)}get highlightFeatureAndFlyToEvent(){return this._highlightFeatureAndFlyToEvent}highlightFeatureAndFlyTo(t,r,i,s){this._highlightFeatureAndFlyToEvent.emit(t,r,i,s)}get getFeatureTableEvent(){return this._getFeatureTableEvent}getFeatureTable(){return Promise.race([new Promise(t=>{const r=this.d(this._featureTableResultEvent.donce(t));this._getFeatureTableEvent.emit(),setTimeout(()=>{r(),t(void 0)},2e3)})])}get getMaterialNameListEvent(){return this._getMaterialNameListEvent}getMaterialNameList(){return new Promise(t=>{const r=new c.Destroyable;r.d(this.getMaterialNameListEvent.don(i=>{i!=="start"&&(r.destroy(),t(i))})),this.getMaterialNameListEvent.emit("start"),setTimeout(()=>{r.isDestroyed()||(r.destroy(),t(void 0))},2e3)})}get setFeatureStyleEvent(){return this._setFeatureStyleEvent}setFeatureStyle(t){this._setFeatureStyleEvent.emit(t)}get setFeatureColorEvent(){return this._setFeatureColorEvent}setFeatureColor(t,r){this._setFeatureColorEvent.emit(t,typeof r=="string"?JSON.parse(r):r)}get setFeatureVisableEvent(){return this._setFeatureVisableEvent}setFeatureVisable(t,r){this._setFeatureVisableEvent.emit(t,typeof r=="string"?JSON.parse(r):r)}get resetFeatureStyleEvent(){return this._resetFeatureStyleEvent}resetFeatureStyle(){this._resetFeatureStyleEvent.emit()}get setMaterialEvent(){return this._setMaterialEvent}setMaterial(t){return new Promise(r=>{const i=new c.Destroyable;i.ad(this.setMaterialInfoEvent.donce(s=>{i.destroy(),r(s)})),this._setMaterialEvent.emit(t)})}get clippingPlanesId(){return this._clippingPlanesId.value}set clippingPlanesId(t){this._clippingPlanesId.value=t}get clippingPlanesIdChanged(){return this._clippingPlanesId.changed}get clippingPlaneIds(){return this._clippingPlaneIds.value}set clippingPlaneIds(t){this._clippingPlaneIds.value=t}get clippingPlaneIdsChanged(){return this._clippingPlaneIds.changed}get flattenedPlaneId(){return this._flattenedPlaneId.value}set flattenedPlaneId(t){this._flattenedPlaneId.value=t}get flattenedPlaneIdChanged(){return this._flattenedPlaneId.changed}get flattenedPlaneEnabled(){return this._flattenedPlaneEnabled.value}set flattenedPlaneEnabled(t){this._flattenedPlaneEnabled.value=t}get flattenedPlaneEnabledChanged(){return this._flattenedPlaneEnabled.changed}get clippingPlaneId(){return this._clippingPlaneId.value}set clippingPlaneId(t){this._clippingPlaneId.value=t}get clippingPlaneIdChanged(){return this._clippingPlaneId.changed}get excavateId(){return this._excavateId.value}set excavateId(t){this._excavateId.value=t}get excavateIdChanged(){return this._excavateId.changed}setLight122(){this.czmEnvironmentMapManager={..._h}}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"dataSource",basic:[...t.basic,new Ve("精度","精度.",!1,!1,[this,"maximumScreenSpaceError"],1,[0,256],16),new Y("材质模式","materialMode",!0,!1,[this,"materialMode"],yr.defaults.materialModes,"normal"),new Y("颜色模式","颜色混合模式",!1,!1,[this,"colorBlendMode"],[["默认","HIGHLIGHT"],["替换","REPLACE"],["混合","MIX"]],"HIGHLIGHT"),new G("materialOverrideMap","材质替换",!1,!1,[this,"materialOverrideMap"],yr.defaults.materialOverrideMap)],dataSource:[...t.dataSource,new G("服务地址","服务地址",!0,!1,[this,"url"],yr.defaults.url)],coordinate:[...t.coordinate,new k("编辑","编辑",!0,!1,[this,"editing"],!1),new Pt("偏移","偏移量",!0,!1,[this,"offset"],[0,0,0]),new wu("旋转","旋转",!1,!1,[this,"rotation"],[0,0,0])]}}getProperties(t){return[...super.getProperties(t),new z("ES3DTileset","ES3DTileset",[new G("服务地址","服务地址",!1,!1,[this,"url"],yr.defaults.url),new Y("materialMode","materialMode",!1,!1,[this,"materialMode"],yr.defaults.materialModes),new G("materialParams","materialParams",!1,!1,[this,"materialParams"],yr.defaults.materialParams),new S("maximumScreenSpaceError","显示精度,maximumScreenSpaceError",!1,!1,[this,"maximumScreenSpaceError"]),new k("编辑","编辑",!1,!1,[this,"editing"],!1),new bn("offset","offset",!0,!1,[this,"offset"]),new bn("rotation","rotation",!1,!1,[this,"rotation"]),new Ve("精度","精度.",!1,!1,[this,"maximumScreenSpaceError"],1,[0,256],16),new ie("highlightFeature","highlightFeature",["string","string"],(r,i)=>this.highlightFeature(r,i),["","rgba(255,0,0,1)"]),new ie("setFeatureColor","setFeatureColor",["string","string"],(r,i)=>this.setFeatureColor(r,i),["",""]),new ie("setFeatureVisable","setFeatureVisable",["string","string"],(r,i)=>this.setFeatureVisable(r,i),["",""]),new ie("resetFeatureStyle","resetFeatureStyle",[],()=>this.resetFeatureStyle(),[]),new z("ue","ue",[new ie("refreshTileset","refreshTileset",[],()=>this.refreshTileset(),[]),new J("actorTag","actorTag",!1,!1,[this,"actorTag"]),new k("是否高亮","是否高亮.",!1,!1,[this,"highlight"]),new Z("highlightColor"," highlightColor.",!1,!1,[this,"highlightColor"]),new S("highlightID","highlightID",!1,!1,[this,"highlightID"]),new G("materialOverrideMap","材质替换",!1,!1,[this,"materialOverrideMap"],yr.defaults.materialOverrideMap)]),new z("czm","czm",[new z("可视化","可视化",[new ke("czmImageBasedLightingFactor","反射强度 ,imageBasedLightingFactor",!1,!1,[this,"czmImageBasedLightingFactor"]),new S("czmAtmosphereScatteringIntensity","大气散射强度 ,atmosphereScatteringIntensity",!1,!1,[this,"czmAtmosphereScatteringIntensity"]),new G("czmEnvironmentMapManager","动态环境贴图管理器",!1,!1,[this,"czmEnvironmentMapManager"]),new S("czmMaximumMemoryUsage","最大内存,maximumMemoryUsage",!1,!1,[this,"czmMaximumMemoryUsage"])]),new z("常用","常用",[new Y("czmClassificationType","Determines whether terrain, 3D Tiles or both will be classified by this tileset. See Cesium3DTileset#czmClassificationType for details about restrictions and limitations.",!0,!1,[this,"czmClassificationType"],[["NONE","NONE"],["TERRAIN","TERRAIN"],["CESIUM_3D_TILE","CESIUM_3D_TILE"],["BOTH","BOTH"]]),new G("czmStyle","czmStyle",!1,!1,[this,"czmStyleJson"]),new k("czmBackFaceCulling","czmBackFaceCulling",!1,!1,[this,"czmBackFaceCulling"]),new k("czmSkipLevelOfDetail","czmSkipLevelOfDetail",!1,!1,[this,"czmSkipLevelOfDetail"]),new Y("colorBlendMode","颜色混合模式",!1,!1,[this,"colorBlendMode"],[["HIGHLIGHT","HIGHLIGHT"],["REPLACE","REPLACE"],["MIX","MIX"]],"HIGHLIGHT"),new S("cacheBytes","最大缓存占用,超过的会自动卸载,但是视野范围内能看见的保留。单位字节。Cesium1.110(含)以后的版本起作用。",!1,!1,[this,"cacheBytes"],512*1024*1024)]),new z("调试信息","调试信息",[new k("czmDebugShowBoundingVolume","For debugging only.When true, renders the bounding volume for each tile.",!1,!1,[this,"czmDebugShowBoundingVolume"]),new k("czmDebugShowContentBoundingVolume","czmDebugShowContentBoundingVolume.",!1,!1,[this,"czmDebugShowContentBoundingVolume"])]),new z("clippingPlanes","clippingPlanes",[new k("clippingPlaneEnabled","clippingPlaneEnabled",!1,!1,[this,"clippingPlaneEnabled"]),new k("unionClippingRegions","unionClippingRegions",!1,!1,[this,"unionClippingRegions"]),new Z("clippingPlaneEdgeColor","clippingPlaneEdgeColor",!1,!1,[this,"clippingPlaneEdgeColor"]),new S("clippingPlaneEdgeWidth","clippingPlaneEdgeWidth",!1,!1,[this,"clippingPlaneEdgeWidth"])])])])]}};p(yr,"type",yr.register("ES3DTileset",yr,{chsName:"3DTileset",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"3DTileset"})),p(yr,"supportEditingModes",[...Se.supportEditingModes,se.Translation,se.Rotation]),p(yr,"defaults",{...Se.defaults,url:"",actorTag:"",materialMode:"normal",materialModes:[["常规","normal"],["科技感","technology"]],offset:[0,0,0],materialParams:{baseColor:[0,.5,1]},cacheBytes:512*1024*1024,materialOverrideMap:{},featureIdLabel:0});let Ct=yr;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),url:"",actorTag:"",materialMode:"normal",highlight:!1,maximumScreenSpaceError:16,highlightID:0,highlightColor:c.reactArray([1,0,0,1]),offset:c.reactArrayWithUndefined(void 0),rotation:c.reactArray([0,0,0]),czmImageBasedLightingFactor:c.reactArray([1,1]),czmEnvironmentMapManager:c.reactJsonWithUndefined(void 0),czmLuminanceAtZenith:2,czmAtmosphereScatteringIntensity:2,czmMaximumMemoryUsage:512,czmClassificationType:"NONE",czmStyleJson:c.reactJson({}),czmBackFaceCulling:!0,czmDebugShowBoundingVolume:!1,czmDebugShowContentBoundingVolume:!1,czmSkipLevelOfDetail:!1,cacheBytes:512*1024*1024,colorBlendMode:"HIGHLIGHT",clippingPlaneEnabled:!0,unionClippingRegions:!0,clippingPlaneEdgeColor:c.reactArray([1,1,1,1]),clippingPlaneEdgeWidth:2,materialParams:{baseColor:[0,.5,1]},allowPicking:!0,materialOverrideMap:c.reactJsonWithUndefined(void 0),featureIdLabel:0})})(Ct||(Ct={})),c.extendClassProps(Ct.prototype,Ct.createDefaultProps);const Ki=class Ki extends q{constructor(t){super(t);p(this,"_isFlyInCreated",this.dv(c.react(!1)));this.collision=!1,this.d(this.createdEvent.don(()=>{setTimeout(()=>{if((this.editing??!1)||!this.position){const i=this.dv(c.createNextAnimateFrameEvent(this.positionChanged,this.editingChanged));this.d(i.donce(()=>{this.editing||!this.position||this.isFlyInCreated&&this.flyTo()}))}else{if(!this.isFlyInCreated)return;this.flyTo()}},1e3)}))}get typeName(){return"ESAlarm"}get defaultProps(){return Ki.createDefaultProps()}get isFlyInCreated(){return this._isFlyInCreated.value}set isFlyInCreated(t){this._isFlyInCreated.value=t}get isFlyInCreatedChanged(){return this._isFlyInCreated.changed}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new Y("模式","mode",!1,!1,[this,"mode"],Ki.defaults.modes,"cylinder"),new S("半径","radius",!1,!1,[this,"radius"],10)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new Y("mode","mode",!1,!1,[this,"mode"],Ki.defaults.modes),new S("半径","radius",!1,!1,[this,"radius"])])]}};p(Ki,"type",Ki.register("ESAlarm",Ki,{chsName:"报警",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警告类"})),p(Ki,"defaults",{...q.defaults,modes:[["柱状警告","cylinder"],["圆形警告","circle"]],radius:100,czmAnimations:[{index:0,loop:"REPEAT",animationTime:"(duration) => Date.now() / 1000 / duration * 2"}]});let lo=Ki;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mode:"cylinder",radius:10})})(lo||(lo={})),c.extendClassProps(lo.prototype,lo.createDefaultProps);const Pa=class Pa extends q{get typeName(){return"ESApertureEffect"}get defaultProps(){return Pa.createDefaultProps()}constructor(e){super(e),this.collision=!1}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new S("半径","radius",!1,!1,[this,"radius"],1)]}}getProperties(e){return[...super.getProperties(e),new S("半径","radius",!1,!1,[this,"radius"])]}};p(Pa,"type",Pa.register("ESApertureEffect",Pa,{chsName:"光圈特效",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"光圈特效"})),p(Pa,"defaults",{...q.defaults,radius:1});let uo=Pa;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),radius:1})})(uo||(uo={})),c.extendClassProps(uo.prototype,uo.createDefaultProps);const en=class en extends ce{constructor(t){super(t);p(this,"editingBindMode","circular");this.collision=en.defaults.collision,this.filled=en.defaults.filled,this.stroked=en.defaults.stroked,this.fillStyle=en.defaults.fillStyle,this.strokeStyle=en.defaults.strokeStyle}get typeName(){return"ESGeoPolygon"}get defaultProps(){return en.createDefaultProps()}getESProperties(){const t={...super.getESProperties()};return{...t,coordinate:[...t.coordinate,new S("面积","面积",!1,!0,[this,"area"]),new S("周长","周长",!1,!0,[this,"perimeter"])]}}getProperties(t){return[...super.getProperties(t),new z("ESGeoPolygon","ESGeoPolygon",[])]}};p(en,"type",en.register("ESGeoPolygon",en,{chsName:"地理多边形",tags:["ESObjects"],description:"地理多边形"})),p(en,"supportEditingModes",[...ce.supportEditingModes,se.CircularAppend,se.CircularInsert]),p(en,"defaults",{...ce.defaults,fillStyle:{color:[1,1,1,.5],material:"",materialParams:{},ground:!1},strokeStyle:{width:1,widthType:"screen",color:[1,1,1,1],material:"",materialParams:{},ground:!1},filled:!0,stroked:!1,collision:!1});let ye=en;(n=>{n.createDefaultProps=()=>({...ce.createDefaultProps()})})(ye||(ye={})),c.extendClassProps(ye.prototype,ye.createDefaultProps);const Ei=class Ei extends ye{get typeName(){return"ESAreaMeasurement"}get defaultProps(){return Ei.createDefaultProps()}get fillMaterial(){return this.fillStyle.material}set fillMaterial(e){this.fillStyle={...this.fillStyle,material:e}}get fillMaterialParams(){return this.fillStyle?this.fillStyle.materialParams:Ei.defaults.fillStyle.materialParams}set fillMaterialParams(e){this.fillStyle={...this.fillStyle??Ei.defaults.fillStyle,materialParams:e??Ei.defaults.fillStyle.materialParams}}constructor(e){super(e),this.fillStyle.ground=!0,this.strokeStyle.width=2}getProperties(e){return[...super.getProperties(e)]}};p(Ei,"type",Ei.register("ESAreaMeasurement",Ei,{chsName:"面积测量",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"面积测量"})),p(Ei,"defaults",{...ye.defaults,fillStyle:{color:[1,1,1,1],material:"Material'/EarthSDKForUE/M_ES_Material.M_ES_Material'",materialParams:{Opacity:.4},ground:!1}});let co=Ei;(n=>{n.createDefaultProps=()=>({...ye.createDefaultProps(),stroked:!0,filled:!0})})(co||(co={})),c.extendClassProps(co.prototype,co.createDefaultProps);const Ia=class Ia extends q{get typeName(){return"ESBlastParticleSystem"}get defaultProps(){return Ia.createDefaultProps()}constructor(e){super(e)}getESProperties(){return{...{...super.getESProperties()},defaultMenu:"general"}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new z("czm","czm",[new Al("图片","The URI, HTMLImageElement, or HTMLCanvasElement to use for the billboard.",!1,!1,[this,"image"]),new Pt("偏移","translation",!1,!1,[this,"translation"])])])]}};p(Ia,"type",Ia.register("ESBlastParticleSystem",Ia,{chsName:"粒子爆炸",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"粒子爆炸"})),p(Ia,"defaults",{...q.defaults,image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",translation:[0,0,0]});let ho=Ia;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",positionEditing:void 0,translation:c.reactArray([0,0,0])})})(ho||(ho={})),c.extendClassProps(ho.prototype,ho.createDefaultProps);const Jt=class Jt extends q{get typeName(){return"ESBoxClipping"}get defaultProps(){return{...Jt.createDefaultProps()}}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new k("反转","reverse",!1,!1,[this,"reverse"],Jt.defaults.reverse),new Pt("尺寸","长宽高",!1,!1,[this,"size"],Jt.defaults.size),new Z("边框颜色","edgeColor",!1,!1,[this,"edgeColor"],Jt.defaults.edgeColor),new S("边框宽度","edgeWidth",!1,!1,[this,"edgeWidth"],Jt.defaults.edgeWidth),new J("瓦片图层","targetID",!1,!1,[this,"targetID"],Jt.defaults.targetID)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new k("reverse","reverse",!1,!1,[this,"reverse"],Jt.defaults.reverse),new Z("edgeColor","edgeColor",!1,!1,[this,"edgeColor"],Jt.defaults.edgeColor),new S("edgeWidth","edgeWidth",!1,!1,[this,"edgeWidth"],Jt.defaults.edgeWidth),new Pt("尺寸","长宽高",!1,!1,[this,"size"],Jt.defaults.size),new J("targetID","targetID",!1,!1,[this,"targetID"],Jt.defaults.targetID)])]}};p(Jt,"type",Jt.register("ESBoxClipping",Jt,{chsName:"体剖切",tags:["ESObjects","_ES_Impl_Cesium"],description:"体剖切,体裁剪,体裁切,盒裁切"})),p(Jt,"defaults",{...q.defaults,reverse:!1,edgeColor:[1,1,1,1],edgeWidth:1,size:[10,10,10],targetID:""});let fo=Jt;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),reverse:!1,edgeColor:c.reactArray([1,1,1,1]),edgeWidth:2,size:c.reactArray([10,10,10]),targetID:""})})(fo||(fo={})),c.extendClassProps(fo.prototype,fo.createDefaultProps);const Qi=class Qi extends q{constructor(){super(...arguments);p(this,"_thumbnail",this.dv(c.react("")));p(this,"_duration",this.dv(c.react(1)));p(this,"_resetWithCurrentCameraEvent",this.dv(new c.Event));p(this,"_captureEvent",this.dv(new c.Event))}get typeName(){return"ESCameraView"}get defaultProps(){return Qi.createDefaultProps()}get thumbnail(){return this._thumbnail.value}set thumbnail(t){this._thumbnail.value=t}get thumbnailChanged(){return this._thumbnail.changed}get duration(){return this._duration.value}set duration(t){this._duration.value=t}get durationChanged(){return this._duration.changed}flyIn(t=1,r="default"){this.flyInEvent.emit(t,-1,r)}get resetWithCurrentCameraEvent(){return this._resetWithCurrentCameraEvent}resetWithCurrentCamera(){this._resetWithCurrentCameraEvent.emit()}get captureEvent(){return this._captureEvent}capture(t,r){this._captureEvent.emit(t,r)}execOnCreating(){this.resetWithCurrentCamera()}async initByCurrent(){this.resetWithCurrentCamera()}getProperties(t){return[...super.getProperties(t),new z("ESCameraView","ESCameraView",[new ie("设置为当前视角","resetWithCurrentCamera",[],()=>this.resetWithCurrentCamera(),[]),new ie("获取缩略图","获取缩略图",["number","number"],(r,i)=>this.capture(r,i),[Qi.defaults.thumbnailWidth,Qi.defaults.thumbnailHeight]),new J("缩略图","缩略图",!0,!1,[this,"thumbnail"]),new S("飞行时间","飞行时间(秒)",!0,!1,[this,"duration"])])]}};p(Qi,"type",Qi.register("ESCameraView",Qi,{chsName:"视角",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角"})),p(Qi,"defaults",{...q.defaults,thumbnailWidth:64,thumbnailHeight:64,duration:1,thumbnail:""});let Ts=Qi;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps()})})(Ts||(Ts={})),c.extendClassProps(Ts.prototype,Ts.createDefaultProps);class cc extends c.Destroyable{constructor(t,r,i){super();p(this,"_view",this.dv(new Ts));if(this.d(t.components.disposableAdd(this._view)),this._view.name=(i==null?void 0:i.name)??`视角${t.views.length+1}`,r){const a=this._view,l=r;a.duration=l.duration??1,a.position=l.position,a.rotation=l.rotation??[0,0,0],a.thumbnail=l.thumbnail??"",a.name=l.name}else{const a=(i==null?void 0:i.size)??[64,64];this.d(c.nextAnimateFrame(()=>{this._view.resetWithCurrentCamera(),this._view.capture(a[0],a[1])}))}const s=this._view,o=this.dv(c.createNextAnimateFrameEvent(s.durationChanged,s.positionChanged,s.rotationChanged,s.thumbnailChanged,s.nameChanged));this.d(o.don(()=>t.emitViewsWarpper()))}get view(){return this._view}get viewInfo(){const t=this._view;return{duration:t.duration,position:t.position,rotation:t.rotation,thumbnail:t.thumbnail,name:t.name}}}const _r=class _r extends j{constructor(t){super(t);p(this,"_currentViewIndex",this.dv(c.react(-1)));p(this,"_viewWrappers",this.dv(new c.ObservableArray));p(this,"_currentViewWrapper",this.dv(c.react(void 0)));p(this,"_container",this.dv(c.react(void 0)));{const r=this.dv(c.createProcessingFromAsyncFunc(async s=>{var o;do{if(!this.flyToNextView())break;const a=this.intervalTime??_r.defaults.intervalTime,u=((((o=this._currentViewWrapper.value)==null?void 0:o.viewInfo.duration)??0)+a)*1e3;await s.promise(c.sleep(u))}while(!0);this.playing=!1})),i=()=>{this.playing?r.restart():r.cancel()};i(),this.d(this.playingChanged.don(i))}{const r=()=>{if(!this._currentViewWrapper.value)return;this._viewWrappers.indexOf(this._currentViewWrapper.value)===-1&&(this._currentViewWrapper.value=void 0)};r(),this.d(this._viewWrappers.changedEvent.don(r))}{const r=()=>{const i=this._currentViewWrapper.value;this._currentViewIndex.value=i?this._getIndex(i):-1};r(),this.d(this._viewWrappers.changedEvent.don(r)),this.d(this._currentViewWrapper.changed.don(r))}this.d(()=>{this.clearAllViews()})}get typeName(){return"ESCameraViewCollection"}get defaultProps(){return _r.createDefaultProps()}get json(){return{...this._innerGetJson(),views:this.views}}set json(t){this._innerSetJson(t),this.views=t.views}get currentViewIndex(){return this._currentViewIndex.value}get currentViewIndexChanged(){return this._currentViewIndex.changed}emitViewsWarpper(){this._viewWrappers.changedEvent.emit(this._viewWrappers)}get container(){return this._container.value}get containerChanged(){return this._container.changed}set container(t){this._container.value=t}get views(){return Uh(this._viewWrappers,t=>t.viewInfo)}get viewsChanged(){return this._viewWrappers.changedEvent}set views(t){if(t.length===this._viewWrappers.length){const r=this._viewWrappers;if(t.every((i,s)=>{const o=r.get(s).view;return i.duration===o.duration&&wc(i.position,o.position)&&wc(i.rotation,o.rotation)&&i.thumbnail===o.thumbnail&&i.name===o.name}))return}this.clearAllViews();for(let r of t)this._viewWrappers.push(new cc(this,r))}_getIndex(t){return this._viewWrappers.indexOf(t)}clearAllViews(){for(let t of this._viewWrappers)t.destroy();this._viewWrappers.length=0}add(t=`视角${this.views.length+1}`,r=[64,64]){this._viewWrappers.push(new cc(this,void 0,{name:t,size:r}))}update(t,r,i=[64,64]){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const s=this._viewWrappers.get(t);r&&(s.view.name=r),s.view.resetWithCurrentCamera(),s.view.capture(i[0],i[1])}addView(){this._viewWrappers.push(new cc(this))}insertView(t){if(this._viewWrappers.length+1<=t||t<0){console.error("this._views.length <= index || index < 0");return}this._viewWrappers.splice(t,0,new cc(this))}setCurrentView(t){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const r=this._viewWrappers.get(t);return this._currentViewWrapper.value=r,!0}resetView(t){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const r=this._viewWrappers.get(t);r.view.resetWithCurrentCamera(),r.view.capture()}resetViewName(t,r){if(t>=this._viewWrappers.length||t<0){console.warn("index >= this._viewWrappers.length || index < 0");return}const i=this._viewWrappers.get(t);i.view.name=r}updateView(t,r){if(t>=this._viewWrappers.length||t<0)return console.warn("index >= this._viewWrappers.length || index < 0"),!1;const i=this._viewWrappers.get(t);i.view.position=r.position,i.view.rotation=r.rotation??[0,0,0],i.view.duration=r.duration??1,i.view.thumbnail=r.thumbnail??"",i.view.name=r.name??""}flyToView(t){if(this.setCurrentView(t)){if(!this._currentViewWrapper.value)throw new Error("this._currentViewWrapper.value");const r=this._currentViewWrapper.value.view.duration;this._currentViewWrapper.value.view.flyIn(r,this.flyMode??_r.defaults.flyMode)}}flyToPrevView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const r=this._getIndex(t);return this.loop??_r.defaults.loop?(this.flyToView((this._viewWrappers.length+r-1)%this._viewWrappers.length),!0):r-1<0?!1:(this.flyToView(r-1),!0)}moveToPreView(){const t=this._currentViewWrapper.value;if(!t)return;const r=this._getIndex(t);if(r===0)return;const i=this._viewWrappers.splice(r-1,1,t)[0];this._viewWrappers.set(r,i)}moveToNextView(){const t=this._currentViewWrapper.value;if(!t)return;const r=this._getIndex(t);if(r===this._viewWrappers.length-1)return;const i=this._viewWrappers.splice(r+1,1,t)[0];this._viewWrappers.set(r,i)}flyToNextView(){const t=this._currentViewWrapper.value;if(!t)return this.flyToView(0),!0;const r=this._getIndex(t);return this.loop??_r.defaults.loop?(this.flyToView((r+1)%this._viewWrappers.length),!0):r+1>this._viewWrappers.length-1?!1:(this.flyToView(r+1),!0)}stop(){this._currentViewWrapper.value=void 0,this.playing=!1}deleteView(t){if(t<0||t>=this._viewWrappers.length){console.warn("index < 0 || index >= this._viewWrappers.length");return}this._viewWrappers.get(t).destroy(),this._viewWrappers.splice(t,1)}deleteCurrentView(){const t=this._currentViewWrapper.value;if(!t){console.warn("!this._currentViewWrapper.value");return}const r=this._getIndex(t);if(r===-1){console.warn("index === -1");return}this.deleteView(r)}transitionImageUrl(t){return j.context.getStrFromEnv(t)}getProperties(t){return[...super.getProperties(t),new z("ESCameraViewCollection","ESCameraViewCollection",[new Y("飞行模式","flyMode",!1,!1,[this,"flyMode"],_r.defaults.flyModes,_r.defaults.flyMode),new ie("添加视角","添加视角",[],()=>this.addView(),[]),new ie("插入视角","插入视角",["number"],r=>this.insertView(r),[0]),new ie("清空所有视角","清空所有视角",[],()=>this.clearAllViews(),[]),new ie("当前位置插入视角","当前位置插入视角",[],()=>this.insertView(this.currentViewIndex+1),[]),new ie("上一个视角","上一个视角",[],()=>this.flyToPrevView(),[]),new ie("下一个视角","下一个视角",[],()=>this.flyToNextView(),[]),new ie("当前视角移动到上一个视角","当前视角移动到上一个视角",[],()=>this.moveToPreView(),[]),new ie("当前视角移动到下一个视角","当前视角移动到下一个视角",[],()=>this.moveToNextView(),[]),new ie("飞入指定视角","飞入指定视角",["number"],r=>this.flyToView(r),[0]),new ie("设置当前视角","设置当前视角",["number"],r=>this.setCurrentView(r),[0]),new ie("删除当前视角","删除当前视角",[],()=>this.deleteCurrentView(),[]),new ie("删除指定视角","删除指定视角",["number"],r=>this.deleteView(r),[0]),new ie("重置视角","重置视角",["number"],r=>this.resetView(r),[0]),new S("当前序号","当前序号",!1,!0,[this,"currentViewIndex"]),new Rh("播放","播放",[this,"playing"],()=>this.stop(),[this,"loop"],_r.defaults),new k("是否播放","是否播放.",!1,!1,[this,"playing"]),new ie("停止","停止",[],()=>this.stop(),[]),new k("是否循环","是否循环.",!1,!1,[this,"loop"]),new S("间隔时间","间隔时间(s)",!1,!1,[this,"intervalTime"]),new G("视角集合","类型为ESJViewInfo[]",!0,!1,[this,"views"],_r.defaults.views)])]}};p(_r,"type",_r.register("ESCameraViewCollection",_r,{chsName:"视角集合",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"视角集合"})),p(_r,"defaults",{...j.defaults,loop:!0,playing:!1,intervalTime:5,duration:1,views:[],flyMode:"default",flyModes:[["默认","default"],["直线飞行","uniform"]]});let bs=_r;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),playing:!1,loop:!0,intervalTime:5,flyMode:"default"})})(bs||(bs={})),c.extendClassProps(bs.prototype,bs.createDefaultProps);const Ta=class Ta extends q{constructor(t){super(t);p(this,"editingBindMode","doublePoints")}get typeName(){return"ESCameraVisibleRange"}get defaultProps(){return Ta.createDefaultProps()}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new S("宽高比","aspectRatio",!1,!1,[this,"aspectRatio"],1.77778),new S("横向夹角","fov",!1,!1,[this,"fov"],90),new S("视野长度","far",!1,!1,[this,"far"],100),new S("近面距离","near",!1,!1,[this,"near"],5)]}}getProperties(t){return[...super.getProperties(t),new S("横向夹角","fov",!1,!1,[this,"fov"]),new S("宽高比","aspectRatio",!1,!1,[this,"aspectRatio"]),new S("视野长度","far",!1,!1,[this,"far"]),new S("近面距离","near",!1,!1,[this,"near"])]}};p(Ta,"type",Ta.register("ESCameraVisibleRange",Ta,{chsName:"摄像头可视域",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"摄像头可视域"})),p(Ta,"defaults",{...q.defaults,fov:90,aspectRatio:1.77778,far:100,near:5,collision:!1});let po=Ta;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),fov:90,aspectRatio:1.77778,far:100,near:5,collision:!1})})(po||(po={})),c.extendClassProps(po.prototype,po.createDefaultProps);const Bi=class Bi extends q{get typeName(){return"ESCar"}get defaultProps(){return Bi.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Y("模式","mode",!1,!1,[this,"mode"],Bi.defaults.modeEnum,"policeCar")]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new Y("mode","mode",!1,!1,[this,"mode"],Bi.defaults.modeEnum)])]}};p(Bi,"type",Bi.register("ESCar",Bi,{chsName:"车辆",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"警车等基础车辆模型"})),p(Bi,"defaults",{...q.defaults,modeEnum:[["警车","policeCar"]],mode:"policeCar"});let go=Bi;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mode:"policeCar",allowPicking:!0})})(go||(go={})),c.extendClassProps(go.prototype,go.createDefaultProps);const Ls=class Ls extends ce{constructor(t){super(t);p(this,"editingBindMode","circular");this.fillGround=!0}get typeName(){return"ESClassification"}get defaultProps(){return Ls.createDefaultProps()}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new S("高度","高度",!1,!1,[this,"height"],10)],coordinate:[...t.coordinate,new S("面积","面积",!1,!0,[this,"area"]),new S("周长","周长",!1,!0,[this,"perimeter"])]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new S("高度","高度",!1,!1,[this,"height"])])]}};p(Ls,"type",Ls.register("ESClassification",Ls,{chsName:"倾斜单体化",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"平尾箭头"})),p(Ls,"supportEditingModes",[...ce.supportEditingModes,se.CircularAppend,se.CircularInsert,se.HeightModify]),p(Ls,"defaults",{...ce.defaults,fillStyle:{material:"",materialParams:{},ground:!0,color:[1,1,1,1]},filled:!0});let Ns=Ls;(n=>{n.createDefaultProps=()=>({...ce.createDefaultProps(),height:10,filled:!0})})(Ns||(Ns={})),c.extendClassProps(Ns.prototype,Ns.createDefaultProps);const ba=class ba extends q{get typeName(){return"ESClippingPlane"}get defaultProps(){return ba.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new k("显示箭头","显示箭头",!1,!1,[this,"showArrow"],!0),new Z("线框颜色","edgeColor",!1,!1,[this,"edgeColor"],[1,1,1,1]),new S("线框宽度","edgetWidth",!1,!1,[this,"edgetWidth"],2),new S("裁剪宽度","width",!1,!1,[this,"width"],200),new S("裁剪高度","height",!1,!1,[this,"height"],200),new J("瓦片图层","targetID",!1,!1,[this,"targetID"],"")]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new z("czm","czm",[new k("显示箭头","显示箭头",!1,!1,[this,"showArrow"]),new Z("edgeColor","edgeColor",!1,!1,[this,"edgeColor"]),new S("edgetWidth","edgetWidth",!1,!1,[this,"edgetWidth"]),new S("width","width",!1,!1,[this,"width"]),new S("height","height",!1,!1,[this,"height"]),new J("targetID","targetID",!1,!1,[this,"targetID"])])])]}};p(ba,"type",ba.register("ESClippingPlane",ba,{chsName:"裁切",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESClippingPlane"})),p(ba,"defaults",{...q.defaults});let mo=ba;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),showArrow:!0,edgeColor:c.reactArray([1,1,1,1]),edgetWidth:2,width:200,height:200,targetID:""})})(mo||(mo={})),c.extendClassProps(mo.prototype,mo.createDefaultProps);class Ry extends c.Destroyable{constructor(e,t,r){super();const i=document.createElement("div");i.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${r.id}) container`);{const l=()=>{const h=`${t.cssText}
45
45
  ${t.cssAllInitial?"all: initial;":""}
46
46
  ${t.show?"":"display: none"}
47
47
  `;i.style.cssText=h};l();const u=this.dv(c.createNextAnimateFrameEvent(t.cssAllInitialChanged,t.cssTextChanged,t.showChanged));this.d(u.don(l))}e.appendChild(i),this.d(()=>e.removeChild(i));const s=this.dv(c.createNextAnimateFrameEvent(t.instanceClassChanged,t.containerChanged,t.shadowDomChanged)),o=this.dv(new c.ObjResettingWithEvent(s,()=>{const{instanceClass:l,container:u}=t;if(!l||u)return;let h=i;if(i.firstElementChild&&i.removeChild(i.firstElementChild),t.shadowDom){const f=i.appendChild(document.createElement("div"));f.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${r.id}) container shadowDiv`),h=f.attachShadow({mode:"open"}).appendChild(document.createElement("div")),h.setAttribute("xe2-div",`ESCustomDiv(${t.id})(viewer: ${r.id}) container shadowDiv div`)}return new l(h,t,r)})),{_updateEvent:a}=t;this.d(a.don(l=>{if(o.obj)try{l(o.obj,t,r)}catch(u){console.error(`ESCustomDiv update error! ${u}`)}}))}}const dd=`class MyDiv extends XE2['xe2-base-utils'].Destroyable {
@@ -309,7 +309,7 @@ export type ESJTimeIntervalCollectionJsonType = {
309
309
  };
310
310
 
311
311
  \`\`\`
312
- `,nn=class nn extends Se{get typeName(){return"ESImageryLayer"}get defaultProps(){return nn.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,defaultMenu:"dataSource",basic:[...e.basic,new S("层级序号","层级序号",!1,!1,[this,"zIndex"],nn.defaults.zIndex)],dataSource:[...e.dataSource,new G("影像服务地址","影像服务地址",!1,!1,[this,"url"]),new or("矩形范围","西南东北",!0,!1,[this,"rectangle"],nn.defaults.rectangle),new Ve("最大级别","最大级别.",!0,!1,[this,"maximumLevel"],1,[1,24],nn.defaults.maximumLevel),new G("options","options",!0,!1,[this,"options"],nn.defaults.options),new J("targetID","targetID",!1,!1,[this,"targetID"],""),new Ve("opacity","opacity",!1,!1,[this,"opacity"],.01,[0,1],1)]}}getProperties(e){return[...super.getProperties(e),new z("ESImageryLayer","ESImageryLayer",[new G("影像服务地址","影像服务地址",!1,!1,[this,"url"]),new z("通用","通用",[new or("矩形范围","西南东北",!0,!1,[this,"rectangle"],nn.defaults.rectangle),new S("高度","A numeric Property specifying the height.",!1,!1,[this,"height"]),new S("zIndex","层级",!1,!1,[this,"zIndex"]),new J("actorTag","actorTag",!1,!1,[this,"actorTag"]),new J("componentTag","componentTag",!1,!1,[this,"componentTag"]),new S("minimumLevel","minimumLevel",!1,!1,[this,"minimumLevel"]),new S("maximumLevel","maximumLevel",!1,!1,[this,"maximumLevel"]),new G("options","options",!0,!1,[this,"options"],{},vd),new J("targetID","targetID",!1,!1,[this,"targetID"]),new Ve("opacity","opacity",!1,!1,[this,"opacity"],.01,[0,1],1)]),new z("czm","czm",[new Y("czmSplitDirection","The ImagerySplitDirection split to apply to this layer.",!1,!1,[this,"czmSplitDirection"],nn.defaults.czmSplitDirectionEnum),new S("透明度","透明度,The alpha blending value of this layer, from 0.0 to 1.0.",!1,!1,[this,"czmAlpha"]),new S("亮度","亮度,The brightness of this layer. 1.0 uses the unmodified imagery color.",!1,!1,[this,"czmBrightness"]),new S("对比度","对比度,The contrast of this layer. 1.0 uses the unmodified imagery color.",!1,!1,[this,"czmContrast"]),new S("色相","色相,The hue of this layer. 0.0 uses the unmodified imagery color. ",!1,!1,[this,"czmHue"]),new S("饱和度","饱和度,The saturation of this layer. 1.0 uses the unmodified imagery color. ",!1,!1,[this,"czmSaturation"]),new S("伽马值","伽马,The gamma correction to apply to this layer. 1.0 uses the unmodified imagery color.",!1,!1,[this,"czmGamma"])])])]}};p(nn,"type",nn.register("ESImageryLayer",nn,{chsName:"影像图层",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"影像图层"})),p(nn,"defaults",{...Se.defaults,url:"",rectangle:[-180,-90,180,90],options:{},zIndex:0,actorTag:"",componentTag:"",minimumLevel:0,maximumLevel:22,targetID:"",opacity:1,czmSplitDirection:"NONE",czmSplitDirectionEnum:[["LEFT","LEFT"],["NONE","NONE"],["RIGHT","RIGHT"]],czmAlpha:1,czmBrightness:1,czmContrast:1,czmHue:0,czmSaturation:1,czmGamma:1,czmSubdomains:[]});let Io=nn;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),url:"",rectangle:c.reactJsonWithUndefined(void 0),options:c.reactJsonWithUndefined(void 0),zIndex:0,actorTag:"",componentTag:"",maximumLevel:22,minimumLevel:0,targetID:"",opacity:1,czmSplitDirection:"NONE",czmAlpha:1,czmBrightness:1,czmContrast:1,czmHue:0,czmSaturation:1,czmGamma:1})})(Io||(Io={})),c.extendClassProps(Io.prototype,Io.createDefaultProps);const xr=class xr extends q{get typeName(){return"ESLocalSkyBox"}get defaultProps(){return xr.createDefaultProps()}constructor(e){super(e),this.collision=!1,this.allowPicking=!1}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new S("尺寸","圆直径或包围盒边长",!1,!1,[this,"size"],xr.defaults.size),new k("自动跟随","是否跟随相机",!1,!1,[this,"autoFollow"],xr.defaults.autoFollow),new Y("mode","模式",!1,!1,[this,"mode"],xr.defaults.modes,"blueSky")]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new S("size","圆直径或包围盒边长",!1,!1,[this,"size"],xr.defaults.size),new k("autoFollow","是否跟随相机(自动跟随效果为渐变,会在5000米左右消失)",!1,!1,[this,"autoFollow"],xr.defaults.autoFollow),new S("autoOpacityFactor","自动消失系数",!1,!1,[this,"autoOpacityFactor"],xr.defaults.autoOpacityFactor),new Y("mode","模式",!1,!1,[this,"mode"],xr.defaults.modes)])]}};p(xr,"type",xr.register("ESLocalSkyBox",xr,{chsName:"局部天空盒",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"效果类"})),p(xr,"defaults",{...q.defaults,size:1e4,autoFollow:!0,autoOpacityFactor:2,modes:[["baiyun","baiyun"],["blueSky","blueSky"],["clearSky","clearSky"],["dream","dream"],["starrySky","starrySky"],["sunnySky","sunnySky"],["sunSets","sunSets"]]});let To=xr;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),size:1e4,autoFollow:!0,autoOpacityFactor:2,mode:"blueSky"})})(To||(To={})),c.extendClassProps(To.prototype,To.createDefaultProps);const Oa=class Oa extends q{get typeName(){return"ESLocationMeasurement"}get defaultProps(){return Oa.createDefaultProps()}constructor(e){super(e)}getProperties(e){return[...super.getProperties(e)]}};p(Oa,"type",Oa.register("ESLocationMeasurement",Oa,{chsName:"位置测量点",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"位置测量点"})),p(Oa,"defaults",{...q.defaults});let bo=Oa;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps()})})(bo||(bo={})),c.extendClassProps(bo.prototype,bo.createDefaultProps);const Ot=class Ot extends q{constructor(t){super(t);p(this,"_player",this.dv(new Hn));{const r=Ot.defaults;this.d(c.bind([this._player,"loop"],[this,"playingLoop"],i=>i??r.playingLoop,i=>i??r.playingLoop)),this.d(c.bind([this._player,"currentTime"],[this,"currentTime"],i=>i??r.currentTime,i=>i??r.currentTime)),this.d(c.bind([this._player,"duration"],[this,"duration"],i=>i??r.duration,i=>i??r.duration)),this.d(c.bind([this._player,"playing"],[this,"playing"],i=>i??r.playing,i=>i??r.playing)),this.d(c.bind([this._player,"speed"],[this,"playingSpeed"],i=>i??r.playingSpeed,i=>i??r.playingSpeed))}}get typeName(){return"ESParticleSystemPrimitive"}get defaultProps(){return Ot.createDefaultProps()}get player(){return this._player}get ratio(){return this._player.ratio}set ratio(t){this._player.ratio=t}get ratioChanged(){return this._player.ratioChanged}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new ie("飞入","飞入",["number"],r=>this.flyTo(r),[1e3]),new ei("更新回调函数","The callback function to be called each frame to update a particle.",!0,!1,[this,"updateCallback"]),new S("发射率","emissionRate,The number of particles to emit per second.",!0,!1,[this,"emissionRate"],5),new k("是否循环","loop,Whether the particle system should loop its bursts when it is complete.",!0,!1,[this,"loop"],!0),new S("等级","scale,Sets the scale to apply to the image of the particle for the duration of its particleLife.",!0,!1,[this,"particleScale"],1),new S("初始等级","startScale,The initial scale to apply to the image of the particle at the beginning of its life.",!0,!1,[this,"startScale"]),new S("结束等级","endScale,The final scale to apply to the image of the particle at the end of its life.",!0,!1,[this,"endScale"],Ot.defaults.endScale),new Z("颜色","Sets the color of a particle for the duration of its particleLife.",!0,!1,[this,"color"]),new Z("初始颜色","The color of the particle at the beginning of its life.",!0,!1,[this,"startColor"]),new Z("结束颜色","The color of the particle at the end of its life.",!0,!1,[this,"endColor"]),new k("尺寸单位为米","Sets if the size of particles is in meters or pixels. true to size the particles in meters; otherwise, the size is in pixels.",!0,!1,[this,"sizeInMeters"]),new S("速度","speed,If set, overrides the minimumSpeed and maximumSpeed inputs with this value.",!0,!1,[this,"speed"],1),new S("最小速度","minimumSpeed,Sets the minimum bound in meters per second above which a particles actual speed will be randomly chosen.",!0,!1,[this,"minimumSpeed"]),new S("最大速度","maximumSpeed,Sets the maximum bound in meters per second below which a particles actual speed will be randomly chosen.",!0,!1,[this,"maximumSpeed"]),new S("生命周期","lifetime,How long the particle system will emit particles, in seconds.",!0,!1,[this,"lifetime"],Number.MAX_VALUE),new S("粒子生命周期","particleLife,If set, overrides the minimumParticleLife and maximumParticleLife inputs with this value.",!0,!1,[this,"particleLife"],Ot.defaults.particleLife),new S("最小粒子生命周期","minimumParticleLife,Sets the minimum bound in seconds for the possible duration of a particles life above which a particles actual life will be randomly chosen.",!0,!1,[this,"minimumParticleLife"]),new S("最大粒子生命周期","maximumParticleLife,Sets the maximum bound in seconds for the possible duration of a particles life below which a particles actual life will be randomly chosen.",!0,!1,[this,"maximumParticleLife"]),new S("块数量","mass,Sets the minimum and maximum mass of particles in kilograms.",!0,!1,[this,"mass"],1),new S("最小块数量","minimumMass,Sets the minimum bound for the mass of a particle in kilograms. A particles actual mass will be chosen as a random amount above this value.",!0,!1,[this,"minimumMass"]),new S("最大块数量","maximumMass,Sets the maximum mass of particles in kilograms. A particles actual mass will be chosen as a random amount below this value.",!0,!1,[this,"maximumMass"]),new ke("图片尺寸","imageSize",!0,!1,[this,"imageSize"],Ot.defaults.imageSize),new ke("最小图片尺寸","minimumImageSize",!0,!1,[this,"minimumImageSize"]),new ke("最大图片尺寸","maximumImageSize",!0,!1,[this,"maximumImageSize"]),new Al("图片","The URI, HTMLImageElement, or HTMLCanvasElement to use for the billboard.",!0,!1,[this,"image"],Ot.defaults.image),new Pt("偏移","translation",!0,!1,[this,"translation"],[0,0,0]),new yc("bursts","bursts",!0,!1,[this,"bursts"]),new G("emitter","emitter",!1,!1,[this,"emitter"],Ot.defaults.emitter)]),new z("播放器","播放器",[new S("播放比率","播放比率(0-1)",!0,!1,[this,"ratio"],Ot.defaults.ratio),new yu("播放器","播放器",[this,"playing"],[this,"ratio"],[this,"playingLoop"]),new k("是否循环","是否循环.",!0,!1,[this,"playingLoop"],Ot.defaults.playingLoop),new S("当前时间","当前时间",!0,!1,[this,"currentTime"],Ot.defaults.currentTime),new S("过渡时间","过渡时间",!0,!1,[this,"duration"],Ot.defaults.duration),new k("是否播放","是否播放.",!0,!1,[this,"playing"],Ot.defaults.playing),new S("播放速度","播放速度.",!0,!1,[this,"playingSpeed"],Ot.defaults.playingSpeed)])]}};p(Ot,"type",Ot.register("ESParticleSystemPrimitive",Ot,{chsName:"粒子",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"通过Cesium的Primitive API 实现的粒子特效。"})),p(Ot,"defaults",{...q.defaults,playingLoop:!0,currentTime:0,playerCurrentTime:0,duration:6e3,playingSpeed:1,playing:!0,ratio:0,particleLife:.5,endScale:4,imageSize:[20,20],image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",emitter:{type:"CircleEmitter",radius:.5}});let No=Ot;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),emitter:c.reactJsonWithUndefined(void 0),bursts:c.reactArrayCollectionWithUndefined(void 0),translation:c.reactArrayWithUndefined(void 0),positionEditing:void 0,image:void 0,imageSize:c.reactArrayWithUndefined(void 0),minimumImageSize:c.reactArrayWithUndefined(void 0),maximumImageSize:c.reactArrayWithUndefined(void 0),updateCallback:void 0,emissionRate:void 0,loop:void 0,particleScale:void 0,startScale:void 0,endScale:void 0,color:c.reactArrayWithUndefined(void 0),startColor:c.reactArrayWithUndefined(void 0),endColor:c.reactArrayWithUndefined(void 0),sizeInMeters:void 0,speed:void 0,minimumSpeed:void 0,maximumSpeed:void 0,lifetime:void 0,particleLife:void 0,minimumParticleLife:void 0,maximumParticleLife:void 0,mass:void 0,minimumMass:void 0,maximumMass:void 0,playingLoop:void 0,currentTime:void 0,duration:void 0,playingSpeed:void 0,playing:void 0})})(No||(No={})),c.extendClassProps(No.prototype,No.createDefaultProps);const Lr=class Lr extends ft{constructor(t){super(t);p(this,"initialStyle",this.ad(c.reactJsonWithUndefined(void 0)));p(this,"_getInitialStyleEvent",this.disposeVar(new c.Event))}get typeName(){return"ESPoi2D"}get defaultProps(){return Lr.createDefaultProps()}get getInitialStyleEvent(){return this._getInitialStyleEvent}getInitialStyle(){return Promise.race([new Promise(t=>{const r=this.d(this.initialStyle.changed.disposableOnce(t));this.getInitialStyleEvent.emit(),setTimeout(()=>{r(),t(void 0)},2e3)})])}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new Y("模式","mode",!1,!1,[this,"mode"],Lr.defaults.modes,Lr.defaults.mode),new G("样式","style",!1,!1,[this,"style"],Lr.defaults.style),new k("自动锚点对齐","autoAnchor",!1,!1,[this,"autoAnchor"],Lr.defaults.autoAnchor)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new Y("模式","mode",!1,!1,[this,"mode"],Lr.defaults.modes),new G("样式","style",!1,!1,[this,"style"],Lr.defaults.style),new k("自动锚点对齐","autoAnchor",!1,!1,[this,"autoAnchor"],Lr.defaults.autoAnchor)])]}};p(Lr,"type",Lr.register("ESPoi2D",Lr,{chsName:"ESPoi2D",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"三角形,菱形"})),p(Lr,"defaults",{...ft.defaults,modes:[["SquareH01","SquareH01"],["SquareH02","SquareH02"],["SquareV01","SquareV01"],["SquareV02","SquareV02"],["SquareV03","SquareV03"],["SquareV04","SquareV04"],["Flag01","Flag01"],["Flag02","Flag02"],["Linear01","Linear01"],["Linear02","Linear02"],["Linear03","Linear03"],["CircularH01","CircularH01"],["CircularH02","CircularH02"],["CircularV01","CircularV01"],["CircularV02","CircularV02"],["CircularV03","CircularV03"],["CircularV04","CircularV04"],["CircularV05","CircularV05"],["P3D01","P3D01"],["P3D02","P3D02"],["P3D03","P3D03"],["P3D04","P3D04"],["P3D05","P3D05"],["P3D06","P3D06"],["P3D07","P3D07"],["Diamond01","Diamond01"],["Diamond02","Diamond02"],["Stranger","Stranger"],["ManNormal","ManNormal"],["ManAbnormal","ManAbnormal"],["WomanNormal","WomanNormal"],["WomanAbnormal","WomanAbnormal"],["Camera","Camera"],["UCVertical","UCVertical"]],mode:"SquareH01",style:{},autoAnchor:!0});let yi=Lr;(n=>{n.createDefaultProps=()=>({...ft.createDefaultProps(),mode:"SquareH01",style:c.reactJson({}),autoAnchor:!0})})(yi||(yi={})),c.extendClassProps(yi.prototype,yi.createDefaultProps);const Kn=class Kn extends q{get typeName(){return"ESPoi3D"}get defaultProps(){return Kn.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Y("模式","mode",!1,!1,[this,"mode"],Kn.defaults.modes),new G("样式","style",!1,!1,[this,"style"],Kn.defaults.style)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new Y("模式","mode",!1,!1,[this,"mode"],Kn.defaults.modes),new G("样式","style",!1,!1,[this,"style"],Kn.defaults.style)])]}};p(Kn,"type",Kn.register("ESPoi3D",Kn,{chsName:"ESPoi3D",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"三角形,菱形"})),p(Kn,"defaults",{...q.defaults,modes:[["三角形","triangle"],["菱形","diamond"]],mode:"triangle",style:{UI_Color:[.09803921568627451,.40784313725490196,.8,1],FX_Color:[.09803921568627451,.40784313725490196,.8,1]}});let Do=Kn;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mode:"triangle",style:c.reactJson(n.defaults.style)})})(Do||(Do={})),c.extendClassProps(Do.prototype,Do.createDefaultProps);const Ma=class Ma extends ye{constructor(t){super(t);p(this,"_czmFlattenedPlaneId",this.disposeVar(c.react("")));this.filled=!1}get typeName(){return"ESPolygonFlattenedPlane"}get defaultProps(){return Ma.createDefaultProps()}get czmFlattenedPlaneId(){return this._czmFlattenedPlaneId.value}set czmFlattenedPlaneId(t){this._czmFlattenedPlaneId.value=t}get czmFlattenedPlaneIdChanged(){return this._czmFlattenedPlaneId.changed}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new J("瓦片图层","targetID",!1,!1,[this,"targetID"],"")]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new J("瓦片图层","targetID",!1,!1,[this,"targetID"])])]}};p(Ma,"type",Ma.register("ESPolygonFlattenedPlane",Ma,{chsName:"压平",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESPolygonFlattenedPlane"})),p(Ma,"defaults",{...ye.defaults});let Oo=Ma;(n=>{n.createDefaultProps=()=>({...ye.createDefaultProps(),targetID:""})})(Oo||(Oo={})),c.extendClassProps(Oo.prototype,Oo.createDefaultProps);const yd=async(n,e,t)=>{const{viewer:r}=n;if(!r){console.error("AddTrees: ueViewer.viewer is undefined");return}const i=await r.callUeFunc({f:"AddTrees",p:{id:e,TreeParams:t}});return i.error&&console.error("AddTrees:",i.error),i},_d=async(n,e)=>{const{viewer:t}=n;if(!t){console.error("RemoveAllTrees: ueViewer.viewer is undefined");return}const r=await t.callUeFunc({f:"RemoveAllTrees",p:{id:e}});return r.error&&console.error("RemoveAllTrees:",r.error),r},wd=async(n,e,t)=>{const{viewer:r}=n;if(!r){console.error("UpdateTreeParams: ueViewer.viewer is undefined");return}const i=await r.callUeFunc({f:"UpdateTreeParams",p:{id:e,TreeParams:t}});return i.error&&console.error("UpdateTreeParams:",i.error),i},Ed=async(n,e,t,r)=>{const{viewer:i}=n;if(!i){console.error("CutDownTrees: ueViewer.viewer is undefined");return}const s=await i.callUeFunc({f:"CutDownTrees",p:{id:e,TreeIds:t,TimeLength:r}});return s.error&&console.error("CutDownTrees:",s.error),s},Sd=async(n,e,t,r,i)=>{const{viewer:s}=n;if(!s){console.error("GrowthSimulation: ueViewer.viewer is undefined");return}const o=await s.callUeFunc({f:"GrowthSimulation",p:{id:e,ToParams:t,SwitchTime:i,TimeLength:r}});return o.error&&console.error("GrowthSimulation:",o.error),o},xa=class xa extends Se{constructor(t){super(t);p(this,"_addTreesEvent",this.dv(new c.Event));p(this,"_removeAllTreesEvent",this.dv(new c.Event));p(this,"_updateTreeParamsEvent",this.dv(new c.Event));p(this,"_cutDownTreesEvent",this.dv(new c.Event));p(this,"_growthSimulationEvent",this.dv(new c.Event))}get typeName(){return"ESSeparateFoliage"}get defaultProps(){return xa.createDefaultProps()}async addTreesCallFunc(t,r){return await yd(t,this.id,r)}async updateTreeParamsCallFunc(t,r){return await wd(t,this.id,r)}async cutDownTreesCallFunc(t,r,i){return await Ed(t,this.id,r,i)}async removeAllTreesCallFunc(t){return await _d(t,this.id)}async growthSimulationCallFunc(t,r,i,s){return await Sd(t,this.id,r,i,s)}async getIdByComponentNameAndHitItem(t,r,i){return await t.getIdByComponentNameAndHitItem(this.id,r,i)}get addTreesEvent(){return this._addTreesEvent}addTrees(t){this._addTreesEvent.emit(t)}get removeAllTreesEvent(){return this._removeAllTreesEvent}removeAllTrees(){this._removeAllTreesEvent.emit()}get updateTreeParamsEvent(){return this._updateTreeParamsEvent}updateTreeParams(t){this._updateTreeParamsEvent.emit(t)}get cutDownTreesEvent(){return this._cutDownTreesEvent}cutDownTrees(t,r){this._cutDownTreesEvent.emit(t,r)}get growthSimulationEvent(){return this._growthSimulationEvent}growthSimulation(t,r,i){this._growthSimulationEvent.emit(t,r,i)}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new G("treeTypes","类型为 { name: string, meshPath: string }[]",!0,!1,[this,"treeTypes"],[],"{ name: string, meshPath: string }[]"),new S("树桩id","树桩id",!1,!1,[this,"stumpId"]),new S("动画间隔时间","动画间隔时间",!1,!1,[this,"intervalTime"]),new S("切换间隔时间","切换间隔时间",!1,!1,[this,"switchIntervalTime"])])]}};p(xa,"type",xa.register("ESSeparateFoliage",xa,{chsName:"单体控制森林",tags:["ESObjects","_ES_Impl_UE"],description:"ESSeparateFoliage"})),p(xa,"defaults",{...Se.defaults,treeTypes:[],stumpId:-1,intervalTime:.1,switchIntervalTime:.5});let Mo=xa;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),treeTypes:c.reactJsonWithUndefined(void 0),stumpId:-1,intervalTime:.1,switchIntervalTime:.5})})(Mo||(Mo={})),c.extendClassProps(Mo.prototype,Mo.createDefaultProps);function hc(n,e,t){const r="buffer"in n,i=r?n.buffer:n;r&&(e+=n.byteOffset);const s=new Array(t),o=new DataView(i);for(let a=0;a<t;++a){const l=o.getUint8(e+a);s[a]=String.fromCharCode(l)}return s.join("")}function fc(n,e){const t="buffer"in n,r=t?n.buffer:n;return t&&(e+=n.byteOffset),new DataView(r).getUint32(e,!0)}function Cd(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t>i.byteLength){console.error("byteOffset + length > buffer.byteLength");return}return new Uint8Array(i,e,t)}function Vy(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t*2>i.byteLength){console.error("byteOffset + length * 4 > buffer.byteLength");return}return new Uint16Array(i,e,t)}function zy(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t*4>i.byteLength){console.error("byteOffset + length * 4 > buffer.byteLength");return}return new Uint32Array(i,e,t)}function Uy(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t*4>i.byteLength){console.error("byteOffset + length * 4 > buffer.byteLength");return}return new Float32Array(i,e,t)}function Pd(n){if(hc(n,0,4)!=="glTF"){console.error("Not a glTF file");return}const t=fc(n,4);if(t!==2){console.error("Unsupported glTF version");return}const r=fc(n,8);if(r!==n.byteLength){console.error("Invalid glTF length");return}const i=fc(n,12);if(i+12+4>r){console.error("Invalid glTF chunk length");return}if(hc(n,16,4)!=="JSON"){console.error("Invalid glTF chunk type");return}const o=hc(n,20,i),a={version:t,length:r,gltfJson:o};do{if(20+i>=n.byteLength)break;const l=fc(n,20+i);if(hc(n,20+i+4,4)!=="BIN\0"){console.error("Invalid glTF chunk type");return}const h=Cd(n,20+i+8,l);a.gltfBinary=h}while(!1);return a}window.parseGlb=Pd;function Id(n){const e=Pd(n);if(e===void 0||!e.gltfBinary)return;const t=JSON.parse(e.gltfJson);return t.nodes.map(r=>{var i=t.meshes[r.mesh],s=i.primitives[0].attributes.POSITION,o=i.primitives[0].indices,a=t.accessors[s],l=t.bufferViews[a.bufferView];if(!e.gltfBinary)throw new Error("!glbParseResult.gltfBinary");const u=Uy(e.gltfBinary,l.byteOffset??0,l.byteLength/4);var h=t.accessors[o],f=t.bufferViews[h.bufferView];if(!e.gltfBinary)throw new Error("!glbParseResult.gltfBinary");let d;return h.componentType===5121?d=Cd(e.gltfBinary,f.byteOffset??0,f.byteLength/1):h.componentType===5123?d=Vy(e.gltfBinary,f.byteOffset??0,f.byteLength/2):h.componentType===5125&&(d=zy(e.gltfBinary,f.byteOffset??0,f.byteLength/4)),{name:r.name,posBuffer:u,indicesBuffer:d}})}window.parseWaterGlb=Id;const Xe=class Xe extends q{constructor(t){super(t);p(this,"_submergingData");p(this,"_allMoments",[]);p(this,"readyEvent",this.dv(new c.Event));{const r=()=>{this.url!=""&&fetch(this.url).then(i=>{i.status==200&&i.ok&&i.arrayBuffer().then(s=>{this._submergingData=Id(s);const o=this._submergingData.map(a=>Date.parse(a.name)).sort();this._allMoments=o,this.currentTime==0&&(this.currentTime=o[0]),this.readyEvent.emit()})}).catch(i=>{console.log(i)})};r(),this.d(this.urlChanged.don(()=>{r()}))}}get typeName(){return"ESSubmergingAnalysis"}get defaultProps(){return Xe.createDefaultProps()}get getSubmergingData(){return this._submergingData}getAllMoments(){return this._allMoments}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new J("Url地址","url",!1,!1,[this,"url"],Xe.defaults.url),new Ve("振幅","控制水波振幅的数值",!1,!1,[this,"amplitude"],.01,[0,1],Xe.defaults.amplitude),new S("频率","控制波数的数值(次/千米)",!1,!1,[this,"frequency"],Xe.defaults.frequency),new S("当前时间","currentTime",!1,!1,[this,"currentTime"],Xe.defaults.currentTime),new G("材质参数","materialParams",!1,!1,[this,"materialParams"],Xe.defaults.materialParams),new Y("水域类型","当为custom是其他控制效果的参数生效,否则不生效,使用对应水域类型的预定效果",!1,!1,[this,"waterType"],Xe.defaults.waterTypes,"river"),new Z("水的底色","waterColor",!1,!1,[this,"waterColor"],Xe.defaults.waterColor),new Ve("波动频率","控制水波纹扰动的速率",!1,!1,[this,"waveVelocity"],.01,[0,1],Xe.defaults.waveVelocity),new S("水流速度","控制水流速度,单位 米/秒",!1,!1,[this,"flowSpeed"],Xe.defaults.flowSpeed),new Ve("镜面反射强度","控制镜面反射强度的数值",!1,!1,[this,"specularIntensity"],.01,[0,1],Xe.defaults.specularIntensity)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new J("模型Url地址","url",!1,!1,[this,"url"],Xe.defaults.url),new S("当前时间","currentTime",!1,!1,[this,"currentTime"],Xe.defaults.currentTime),new G("材质参数","materialParams",!1,!1,[this,"materialParams"],Xe.defaults.materialParams),new Y("水域类型","当为custom是其他控制效果的参数生效,否则不生效,使用对应水域类型的预定效果",!1,!1,[this,"waterType"],Xe.defaults.waterTypes),new Z("水的底色","waterColor",!1,!1,[this,"waterColor"],Xe.defaults.waterColor),new S("频率","控制波数的数值(次/千米)",!1,!1,[this,"frequency"],Xe.defaults.frequency),new Ve("波动频率","控制水波纹扰动的速率",!1,!1,[this,"waveVelocity"],.01,[0,1],Xe.defaults.waveVelocity),new Ve("振幅","控制水波振幅的数值",!1,!1,[this,"amplitude"],.01,[0,1],Xe.defaults.amplitude),new Ve("镜面反射强度","控制镜面反射强度的数值",!1,!1,[this,"specularIntensity"],.01,[0,1],Xe.defaults.specularIntensity),new S("水流速度","控制水流速度,单位 米/秒",!1,!1,[this,"flowSpeed"],Xe.defaults.flowSpeed)])]}};p(Xe,"type",Xe.register("ESSubmergingAnalysis",Xe,{chsName:"淹没分析",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESSubmergingAnalysis"})),p(Xe,"defaults",{...q.defaults,url:"",currentTime:0,materialParams:{},waterColor:[.1497,.165,.0031,1],frequency:1e3,waveVelocity:.5,amplitude:.1,specularIntensity:.8,waterTypes:[["river","river"],["ocean","ocean"],["lake","lake"],["custom","custom"]],waterType:"river",flowSpeed:0});let xo=Xe;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),url:"",currentTime:0,materialParams:c.reactJson({}),waterColor:[.1497,.165,.0031,1],frequency:1e3,waveVelocity:.5,amplitude:.1,specularIntensity:.8,waterType:"river",flowSpeed:0,allowPicking:!0})})(xo||(xo={})),c.extendClassProps(xo.prototype,xo.createDefaultProps);const Fs=class Fs extends ye{constructor(t){super(t);p(this,"_startEvent",this.dv(new c.Event));p(this,"_stopEvent",this.dv(new c.Event));this.filled=!1,this.stroked=!1}get typeName(){return"ESSunshineAnalysis"}get defaultProps(){return Fs.createDefaultProps()}get startEvent(){return this._startEvent}start(){this._startEvent.emit()}get stopEvent(){return this._stopEvent}stop(){this._stopEvent.emit()}getProperties(t){return[...super.getProperties(t),new Z("起始颜色","起始颜色",!1,!1,[this,"startColor"]),new Z("结束颜色","结束颜色",!1,!1,[this,"endColor"]),new S("计算进度","计算进度",!0,!0,[this,"progress"]),new S("高度","高度m",!1,!1,[this,"extrudedHeight"]),new S("底面高度","底面高度",!1,!1,[this,"height"]),new S("采样间距","采样间距m",!1,!1,[this,"sampleDistance"]),new S("起始时间","startTime,时间戳",!1,!1,[this,"startTime"]),new S("结束时间","endTime,时间戳",!1,!1,[this,"endTime"]),new S("时间跨度","时间跨度,默认1小时时间戳",!1,!1,[this,"spanTime"]),new ie("开始分析","开始分析",[],()=>this.start(),[]),new ie("结束分析","结束分析",[],()=>this.stop(),[])]}};p(Fs,"type",Fs.register("ESSunshineAnalysis",Fs,{chsName:"日照分析",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"日照分析"})),p(Fs,"supportEditingModes",[...ye.supportEditingModes,se.HeightModify]),p(Fs,"defaults",{...ye.defaults});let Lo=Fs;(n=>{n.createDefaultProps=()=>({...ye.createDefaultProps(),extrudedHeight:30,height:0,sampleDistance:10,startColor:c.reactArray([1,1,0,1]),endColor:c.reactArray([1,0,0,1]),startTime:0,endTime:36e6,spanTime:1,progress:0})})(Lo||(Lo={})),c.extendClassProps(Lo.prototype,Lo.createDefaultProps);const wr=class wr extends Se{constructor(t){super(t);p(this,"_activateEvent",this.disposeVar(new c.Event));p(this,"activate",!1)}get typeName(){return"ESTerrainLayer"}get defaultProps(){return wr.createDefaultProps()}get activateEvent(){return this._activateEvent}getESProperties(){const t={...super.getESProperties()},r=[new S("层级序号","层级序号",!1,!1,[this,"zIndex"],wr.defaults.zIndex),new Y("渲染模式","renderMode",!1,!1,[this,"renderMode"],wr.defaults.renderModes,"default"),new S("透明度","opacity",!1,!1,[this,"opacity"],wr.defaults.opacity)],i=[new G("地形服务地址","地形服务地址",!1,!1,[this,"url"],wr.defaults.url),new or("矩形范围","西南东北",!1,!1,[this,"rectangle"],wr.defaults.rectangle)];return t.basic.push(...r),t.dataSource.push(...i),t.defaultMenu="dataSource",t}getProperties(t){return[...super.getProperties(t),new z("ESTerrainLayer","ESTerrainLayer",[new G("地形服务地址","地形服务地址",!1,!1,[this,"url"]),new or("矩形范围","西南东北",!1,!1,[this,"rectangle"]),new S("层级","zIndex",!1,!1,[this,"zIndex"]),new Y("渲染模式","renderMode",!1,!1,[this,"renderMode"],wr.defaults.renderModes,wr.defaults.renderMode),new S("透明度","opacity",!1,!1,[this,"opacity"],wr.defaults.opacity),new z("czm","czm",[new S("czmMinzoom","czmMinzoom",!0,!1,[this,"czmMinzoom"]),new S("czmMaxzoom","czmMaxzoom",!0,!1,[this,"czmMaxzoom"])])])]}};p(wr,"type",wr.register("ESTerrainLayer",wr,{chsName:"地形图层",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"地形图层"})),p(wr,"defaults",{...Se.defaults,show:!0,url:"http://inner.earthsdk.com/layer.json",rectangle:[-180,-90,180,90],zIndex:0,renderMode:"default",renderModes:[["使用深度检测","default"],["不使用深度检测","disableDepthTest"],["透明","transparent"]],opacity:1});let Ao=wr;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),url:"http://inner.earthsdk.com/layer.json",rectangle:c.reactArray([-180,-90,180,90]),zIndex:0,czmMaxzoom:void 0,czmMinzoom:void 0,renderMode:"default",opacity:1})})(Ao||(Ao={})),c.extendClassProps(Ao.prototype,Ao.createDefaultProps);const Tn=class Tn extends ft{get typeName(){return"ESTextLabel"}get defaultProps(){return Tn.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Z("文本颜色","指定文本标签的字体颜色.",!1,!1,[this,"color"],[1,1,1,1]),new S("文字大小","fontSize",!1,!1,[this,"fontSize"],14),new vu("内容","内容",!0,!1,[this,"text"],Tn.defaults.text),new Z("背景颜色"," 指定文本标签的背景颜色.",!1,!1,[this,"backgroundColor"],Tn.defaults.backgroundColor),new or("内边距","上,右,下,左顺序.",!1,!1,[this,"padding"],Tn.defaults.padding)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new vu("内容","内容",!0,!1,[this,"text"],Tn.defaults.text),new Z("文本颜色","指定文本标签的字体颜色.",!1,!1,[this,"color"]),new S("文字大小","fontSize",!1,!1,[this,"fontSize"]),new Z("背景颜色"," 指定文本标签的背景颜色.",!1,!1,[this,"backgroundColor"]),new or("内边距","上,右,下,左顺序.",!1,!1,[this,"padding"])]),new z("czm","czm",[new k("文本编辑交互","文本编辑交互.",!1,!1,[this,"textEditingInteraction"]),new k("文本编辑","文本编辑.",!1,!1,[this,"textEditing"]),new S("宽度","宽度",!0,!1,[this,"width"],Tn.defaults.width),new or("原点比例和偏移","原点比例和偏移.",!1,!1,[this,"originRatioAndOffset"]),new S("透明度","透明度",!1,!1,[this,"opacity"]),new or("边框圆角","左上,右上,右下,左下.",!1,!1,[this,"borderRadius"]),new Z("边框颜色"," 边框色.",!1,!1,[this,"borderColor"]),new S("边框宽度","边框宽度",!1,!1,[this,"borderWidth"]),new Y("文字位置","文字位置",!1,!1,[this,"textAlign"],[["center","center"],["left","left"],["right","right"]]),new Y("边框类型","边框类型",!1,!1,[this,"borderStyle"],[["none","none"],["hidden","hidden"],["dotted","dotted"],["dashed","dashed"],["solid","solid"],["double","double"],["groove","groove"],["ridge","ridge"],["inset","inset"],["outset","outset"]])])]}};p(Tn,"type",Tn.register("ESTextLabel",Tn,{chsName:"文本标签",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"文本标签。"})),p(Tn,"defaults",{...ft.defaults,allowTextEditing:!0,width:80,text:"请输入文字",originRatioAndOffset:[.5,1,0,0],opacity:1,backgroundColor:[0,0,0,.8],padding:[5,5,5,5],borderRadius:[6,6,6,6],borderColor:[1,1,1,1],borderWidth:0,textAlign:"left",borderStyle:"solid"});let Ro=Tn;(n=>{n.createDefaultProps=()=>({...ft.createDefaultProps(),text:void 0,width:void 0,textEditing:!1,textEditingInteraction:!1,opacity:1,fontSize:14,textAlign:"left",color:c.reactArray([1,1,1,1]),backgroundColor:c.reactArray([0,0,0,.8]),padding:c.reactArray([5,5,5,5]),borderRadius:c.reactArray([6,6,6,6]),borderWidth:0,borderColor:c.reactArray([1,1,1,1]),borderStyle:"solid"})})(Ro||(Ro={})),c.extendClassProps(Ro.prototype,Ro.createDefaultProps);const Td=`
312
+ `,nn=class nn extends Se{get typeName(){return"ESImageryLayer"}get defaultProps(){return nn.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,defaultMenu:"dataSource",basic:[...e.basic,new S("层级序号","层级序号",!1,!1,[this,"zIndex"],nn.defaults.zIndex)],dataSource:[...e.dataSource,new G("影像服务地址","影像服务地址",!1,!1,[this,"url"]),new or("矩形范围","西南东北",!0,!1,[this,"rectangle"],nn.defaults.rectangle),new Ve("最大级别","最大级别.",!0,!1,[this,"maximumLevel"],1,[1,24],nn.defaults.maximumLevel),new G("options","options",!0,!1,[this,"options"],nn.defaults.options),new J("targetID","targetID",!1,!1,[this,"targetID"],""),new Ve("opacity","opacity",!1,!1,[this,"opacity"],.01,[0,1],1)]}}getProperties(e){return[...super.getProperties(e),new z("ESImageryLayer","ESImageryLayer",[new G("影像服务地址","影像服务地址",!1,!1,[this,"url"]),new z("通用","通用",[new or("矩形范围","西南东北",!0,!1,[this,"rectangle"],nn.defaults.rectangle),new S("高度","A numeric Property specifying the height.",!1,!1,[this,"height"]),new S("zIndex","层级",!1,!1,[this,"zIndex"]),new J("actorTag","actorTag",!1,!1,[this,"actorTag"]),new J("componentTag","componentTag",!1,!1,[this,"componentTag"]),new S("minimumLevel","minimumLevel",!1,!1,[this,"minimumLevel"]),new S("maximumLevel","maximumLevel",!1,!1,[this,"maximumLevel"]),new G("options","options",!0,!1,[this,"options"],{},vd),new J("targetID","targetID",!1,!1,[this,"targetID"]),new Ve("opacity","opacity",!1,!1,[this,"opacity"],.01,[0,1],1)]),new z("czm","czm",[new Y("czmSplitDirection","The ImagerySplitDirection split to apply to this layer.",!1,!1,[this,"czmSplitDirection"],nn.defaults.czmSplitDirectionEnum),new S("透明度","透明度,The alpha blending value of this layer, from 0.0 to 1.0.",!1,!1,[this,"czmAlpha"]),new S("亮度","亮度,The brightness of this layer. 1.0 uses the unmodified imagery color.",!1,!1,[this,"czmBrightness"]),new S("对比度","对比度,The contrast of this layer. 1.0 uses the unmodified imagery color.",!1,!1,[this,"czmContrast"]),new S("色相","色相,The hue of this layer. 0.0 uses the unmodified imagery color. ",!1,!1,[this,"czmHue"]),new S("饱和度","饱和度,The saturation of this layer. 1.0 uses the unmodified imagery color. ",!1,!1,[this,"czmSaturation"]),new S("伽马值","伽马,The gamma correction to apply to this layer. 1.0 uses the unmodified imagery color.",!1,!1,[this,"czmGamma"])])])]}};p(nn,"type",nn.register("ESImageryLayer",nn,{chsName:"影像图层",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"影像图层"})),p(nn,"defaults",{...Se.defaults,url:"",rectangle:[-180,-90,180,90],options:{},zIndex:0,actorTag:"",componentTag:"",minimumLevel:0,maximumLevel:22,targetID:"",opacity:1,czmSplitDirection:"NONE",czmSplitDirectionEnum:[["LEFT","LEFT"],["NONE","NONE"],["RIGHT","RIGHT"]],czmAlpha:1,czmBrightness:1,czmContrast:1,czmHue:0,czmSaturation:1,czmGamma:1,czmSubdomains:[]});let Io=nn;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),url:"",rectangle:c.reactJsonWithUndefined(void 0),options:c.reactJsonWithUndefined(void 0),zIndex:0,actorTag:"",componentTag:"",maximumLevel:22,minimumLevel:0,targetID:"",opacity:1,czmSplitDirection:"NONE",czmAlpha:1,czmBrightness:1,czmContrast:1,czmHue:0,czmSaturation:1,czmGamma:1})})(Io||(Io={})),c.extendClassProps(Io.prototype,Io.createDefaultProps);const xr=class xr extends q{get typeName(){return"ESLocalSkyBox"}get defaultProps(){return xr.createDefaultProps()}constructor(e){super(e),this.collision=!1,this.allowPicking=!1}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new S("尺寸","圆直径或包围盒边长",!1,!1,[this,"size"],xr.defaults.size),new k("自动跟随","是否跟随相机",!1,!1,[this,"autoFollow"],xr.defaults.autoFollow),new Y("mode","模式",!1,!1,[this,"mode"],xr.defaults.modes,"blueSky")]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new S("size","圆直径或包围盒边长",!1,!1,[this,"size"],xr.defaults.size),new k("autoFollow","是否跟随相机(自动跟随效果为渐变,会在5000米左右消失)",!1,!1,[this,"autoFollow"],xr.defaults.autoFollow),new S("autoOpacityFactor","自动消失系数",!1,!1,[this,"autoOpacityFactor"],xr.defaults.autoOpacityFactor),new Y("mode","模式",!1,!1,[this,"mode"],xr.defaults.modes)])]}};p(xr,"type",xr.register("ESLocalSkyBox",xr,{chsName:"局部天空盒",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"效果类"})),p(xr,"defaults",{...q.defaults,size:1e4,autoFollow:!0,autoOpacityFactor:2,modes:[["baiyun","baiyun"],["blueSky","blueSky"],["clearSky","clearSky"],["dream","dream"],["starrySky","starrySky"],["sunnySky","sunnySky"],["sunSets","sunSets"]]});let To=xr;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),size:1e4,autoFollow:!0,autoOpacityFactor:2,mode:"blueSky"})})(To||(To={})),c.extendClassProps(To.prototype,To.createDefaultProps);const Oa=class Oa extends q{get typeName(){return"ESLocationMeasurement"}get defaultProps(){return Oa.createDefaultProps()}constructor(e){super(e)}getProperties(e){return[...super.getProperties(e)]}};p(Oa,"type",Oa.register("ESLocationMeasurement",Oa,{chsName:"位置测量点",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"位置测量点"})),p(Oa,"defaults",{...q.defaults});let bo=Oa;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps()})})(bo||(bo={})),c.extendClassProps(bo.prototype,bo.createDefaultProps);const Ot=class Ot extends q{constructor(t){super(t);p(this,"_player",this.dv(new Hn));{const r=Ot.defaults;this.d(c.bind([this._player,"loop"],[this,"playingLoop"],i=>i??r.playingLoop,i=>i??r.playingLoop)),this.d(c.bind([this._player,"currentTime"],[this,"currentTime"],i=>i??r.currentTime,i=>i??r.currentTime)),this.d(c.bind([this._player,"duration"],[this,"duration"],i=>i??r.duration,i=>i??r.duration)),this.d(c.bind([this._player,"playing"],[this,"playing"],i=>i??r.playing,i=>i??r.playing)),this.d(c.bind([this._player,"speed"],[this,"playingSpeed"],i=>i??r.playingSpeed,i=>i??r.playingSpeed))}}get typeName(){return"ESParticleSystemPrimitive"}get defaultProps(){return Ot.createDefaultProps()}get player(){return this._player}get ratio(){return this._player.ratio}set ratio(t){this._player.ratio=t}get ratioChanged(){return this._player.ratioChanged}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new ie("飞入","飞入",["number"],r=>this.flyTo(r),[1e3]),new ei("更新回调函数","The callback function to be called each frame to update a particle.",!0,!1,[this,"updateCallback"]),new S("发射率","emissionRate,The number of particles to emit per second.",!0,!1,[this,"emissionRate"],5),new k("是否循环","loop,Whether the particle system should loop its bursts when it is complete.",!0,!1,[this,"loop"],!0),new S("等级","scale,Sets the scale to apply to the image of the particle for the duration of its particleLife.",!0,!1,[this,"particleScale"],1),new S("初始等级","startScale,The initial scale to apply to the image of the particle at the beginning of its life.",!0,!1,[this,"startScale"]),new S("结束等级","endScale,The final scale to apply to the image of the particle at the end of its life.",!0,!1,[this,"endScale"],Ot.defaults.endScale),new Z("颜色","Sets the color of a particle for the duration of its particleLife.",!0,!1,[this,"color"]),new Z("初始颜色","The color of the particle at the beginning of its life.",!0,!1,[this,"startColor"]),new Z("结束颜色","The color of the particle at the end of its life.",!0,!1,[this,"endColor"]),new k("尺寸单位为米","Sets if the size of particles is in meters or pixels. true to size the particles in meters; otherwise, the size is in pixels.",!0,!1,[this,"sizeInMeters"]),new S("速度","speed,If set, overrides the minimumSpeed and maximumSpeed inputs with this value.",!0,!1,[this,"speed"],1),new S("最小速度","minimumSpeed,Sets the minimum bound in meters per second above which a particles actual speed will be randomly chosen.",!0,!1,[this,"minimumSpeed"]),new S("最大速度","maximumSpeed,Sets the maximum bound in meters per second below which a particles actual speed will be randomly chosen.",!0,!1,[this,"maximumSpeed"]),new S("生命周期","lifetime,How long the particle system will emit particles, in seconds.",!0,!1,[this,"lifetime"],Number.MAX_VALUE),new S("粒子生命周期","particleLife,If set, overrides the minimumParticleLife and maximumParticleLife inputs with this value.",!0,!1,[this,"particleLife"],Ot.defaults.particleLife),new S("最小粒子生命周期","minimumParticleLife,Sets the minimum bound in seconds for the possible duration of a particles life above which a particles actual life will be randomly chosen.",!0,!1,[this,"minimumParticleLife"]),new S("最大粒子生命周期","maximumParticleLife,Sets the maximum bound in seconds for the possible duration of a particles life below which a particles actual life will be randomly chosen.",!0,!1,[this,"maximumParticleLife"]),new S("块数量","mass,Sets the minimum and maximum mass of particles in kilograms.",!0,!1,[this,"mass"],1),new S("最小块数量","minimumMass,Sets the minimum bound for the mass of a particle in kilograms. A particles actual mass will be chosen as a random amount above this value.",!0,!1,[this,"minimumMass"]),new S("最大块数量","maximumMass,Sets the maximum mass of particles in kilograms. A particles actual mass will be chosen as a random amount below this value.",!0,!1,[this,"maximumMass"]),new ke("图片尺寸","imageSize",!0,!1,[this,"imageSize"],Ot.defaults.imageSize),new ke("最小图片尺寸","minimumImageSize",!0,!1,[this,"minimumImageSize"]),new ke("最大图片尺寸","maximumImageSize",!0,!1,[this,"maximumImageSize"]),new Al("图片","The URI, HTMLImageElement, or HTMLCanvasElement to use for the billboard.",!0,!1,[this,"image"],Ot.defaults.image),new Pt("偏移","translation",!0,!1,[this,"translation"],[0,0,0]),new yc("bursts","bursts",!0,!1,[this,"bursts"]),new G("emitter","emitter",!1,!1,[this,"emitter"],Ot.defaults.emitter)]),new z("播放器","播放器",[new S("播放比率","播放比率(0-1)",!0,!1,[this,"ratio"],Ot.defaults.ratio),new yu("播放器","播放器",[this,"playing"],[this,"ratio"],[this,"playingLoop"]),new k("是否循环","是否循环.",!0,!1,[this,"playingLoop"],Ot.defaults.playingLoop),new S("当前时间","当前时间",!0,!1,[this,"currentTime"],Ot.defaults.currentTime),new S("过渡时间","过渡时间",!0,!1,[this,"duration"],Ot.defaults.duration),new k("是否播放","是否播放.",!0,!1,[this,"playing"],Ot.defaults.playing),new S("播放速度","播放速度.",!0,!1,[this,"playingSpeed"],Ot.defaults.playingSpeed)])]}};p(Ot,"type",Ot.register("ESParticleSystemPrimitive",Ot,{chsName:"粒子",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"通过Cesium的Primitive API 实现的粒子特效。"})),p(Ot,"defaults",{...q.defaults,playingLoop:!0,currentTime:0,playerCurrentTime:0,duration:6e3,playingSpeed:1,playing:!0,ratio:0,particleLife:.5,endScale:4,imageSize:[20,20],image:"${earthsdk3-assets-script-dir}/assets/img/smoke.png",emitter:{type:"CircleEmitter",radius:.5}});let No=Ot;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),emitter:c.reactJsonWithUndefined(void 0),bursts:c.reactArrayCollectionWithUndefined(void 0),translation:c.reactArrayWithUndefined(void 0),positionEditing:void 0,image:void 0,imageSize:c.reactArrayWithUndefined(void 0),minimumImageSize:c.reactArrayWithUndefined(void 0),maximumImageSize:c.reactArrayWithUndefined(void 0),updateCallback:void 0,emissionRate:void 0,loop:void 0,particleScale:void 0,startScale:void 0,endScale:void 0,color:c.reactArrayWithUndefined(void 0),startColor:c.reactArrayWithUndefined(void 0),endColor:c.reactArrayWithUndefined(void 0),sizeInMeters:void 0,speed:void 0,minimumSpeed:void 0,maximumSpeed:void 0,lifetime:void 0,particleLife:void 0,minimumParticleLife:void 0,maximumParticleLife:void 0,mass:void 0,minimumMass:void 0,maximumMass:void 0,playingLoop:void 0,currentTime:void 0,duration:void 0,playingSpeed:void 0,playing:void 0})})(No||(No={})),c.extendClassProps(No.prototype,No.createDefaultProps);const Lr=class Lr extends ft{constructor(t){super(t);p(this,"initialStyle",this.ad(c.reactJsonWithUndefined(void 0)));p(this,"_getInitialStyleEvent",this.disposeVar(new c.Event))}get typeName(){return"ESPoi2D"}get defaultProps(){return Lr.createDefaultProps()}get getInitialStyleEvent(){return this._getInitialStyleEvent}getInitialStyle(){return Promise.race([new Promise(t=>{const r=this.d(this.initialStyle.changed.disposableOnce(t));this.getInitialStyleEvent.emit(),setTimeout(()=>{r(),t(void 0)},2e3)})])}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new Y("模式","mode",!1,!1,[this,"mode"],Lr.defaults.modes,Lr.defaults.mode),new G("样式","style",!1,!1,[this,"style"],Lr.defaults.style),new k("自动锚点对齐","autoAnchor",!1,!1,[this,"autoAnchor"],Lr.defaults.autoAnchor)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new Y("模式","mode",!1,!1,[this,"mode"],Lr.defaults.modes),new G("样式","style",!1,!1,[this,"style"],Lr.defaults.style),new k("自动锚点对齐","autoAnchor",!1,!1,[this,"autoAnchor"],Lr.defaults.autoAnchor)])]}};p(Lr,"type",Lr.register("ESPoi2D",Lr,{chsName:"ESPoi2D",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"三角形,菱形"})),p(Lr,"defaults",{...ft.defaults,modes:[["自定义","Custom"],["SquareH01","SquareH01"],["SquareH02","SquareH02"],["SquareV01","SquareV01"],["SquareV02","SquareV02"],["SquareV03","SquareV03"],["SquareV04","SquareV04"],["Flag01","Flag01"],["Flag02","Flag02"],["Linear01","Linear01"],["Linear02","Linear02"],["Linear03","Linear03"],["CircularH01","CircularH01"],["CircularH02","CircularH02"],["CircularV01","CircularV01"],["CircularV02","CircularV02"],["CircularV03","CircularV03"],["CircularV04","CircularV04"],["CircularV05","CircularV05"],["P3D01","P3D01"],["P3D02","P3D02"],["P3D03","P3D03"],["P3D04","P3D04"],["P3D05","P3D05"],["P3D06","P3D06"],["P3D07","P3D07"],["Diamond01","Diamond01"],["Diamond02","Diamond02"],["Stranger","Stranger"],["ManNormal","ManNormal"],["ManAbnormal","ManAbnormal"],["WomanNormal","WomanNormal"],["WomanAbnormal","WomanAbnormal"],["Camera","Camera"]],mode:"SquareH01",style:{},autoAnchor:!0});let yi=Lr;(n=>{n.createDefaultProps=()=>({...ft.createDefaultProps(),mode:"SquareH01",style:c.reactJson({}),autoAnchor:!0})})(yi||(yi={})),c.extendClassProps(yi.prototype,yi.createDefaultProps);const Kn=class Kn extends q{get typeName(){return"ESPoi3D"}get defaultProps(){return Kn.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Y("模式","mode",!1,!1,[this,"mode"],Kn.defaults.modes),new G("样式","style",!1,!1,[this,"style"],Kn.defaults.style)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new Y("模式","mode",!1,!1,[this,"mode"],Kn.defaults.modes),new G("样式","style",!1,!1,[this,"style"],Kn.defaults.style)])]}};p(Kn,"type",Kn.register("ESPoi3D",Kn,{chsName:"ESPoi3D",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"三角形,菱形"})),p(Kn,"defaults",{...q.defaults,modes:[["三角形","triangle"],["菱形","diamond"]],mode:"triangle",style:{UI_Color:[.09803921568627451,.40784313725490196,.8,1],FX_Color:[.09803921568627451,.40784313725490196,.8,1]}});let Do=Kn;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mode:"triangle",style:c.reactJson(n.defaults.style)})})(Do||(Do={})),c.extendClassProps(Do.prototype,Do.createDefaultProps);const Ma=class Ma extends ye{constructor(t){super(t);p(this,"_czmFlattenedPlaneId",this.disposeVar(c.react("")));this.filled=!1}get typeName(){return"ESPolygonFlattenedPlane"}get defaultProps(){return Ma.createDefaultProps()}get czmFlattenedPlaneId(){return this._czmFlattenedPlaneId.value}set czmFlattenedPlaneId(t){this._czmFlattenedPlaneId.value=t}get czmFlattenedPlaneIdChanged(){return this._czmFlattenedPlaneId.changed}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new J("瓦片图层","targetID",!1,!1,[this,"targetID"],"")]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new J("瓦片图层","targetID",!1,!1,[this,"targetID"])])]}};p(Ma,"type",Ma.register("ESPolygonFlattenedPlane",Ma,{chsName:"压平",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESPolygonFlattenedPlane"})),p(Ma,"defaults",{...ye.defaults});let Oo=Ma;(n=>{n.createDefaultProps=()=>({...ye.createDefaultProps(),targetID:""})})(Oo||(Oo={})),c.extendClassProps(Oo.prototype,Oo.createDefaultProps);const yd=async(n,e,t)=>{const{viewer:r}=n;if(!r){console.error("AddTrees: ueViewer.viewer is undefined");return}const i=await r.callUeFunc({f:"AddTrees",p:{id:e,TreeParams:t}});return i.error&&console.error("AddTrees:",i.error),i},_d=async(n,e)=>{const{viewer:t}=n;if(!t){console.error("RemoveAllTrees: ueViewer.viewer is undefined");return}const r=await t.callUeFunc({f:"RemoveAllTrees",p:{id:e}});return r.error&&console.error("RemoveAllTrees:",r.error),r},wd=async(n,e,t)=>{const{viewer:r}=n;if(!r){console.error("UpdateTreeParams: ueViewer.viewer is undefined");return}const i=await r.callUeFunc({f:"UpdateTreeParams",p:{id:e,TreeParams:t}});return i.error&&console.error("UpdateTreeParams:",i.error),i},Ed=async(n,e,t,r)=>{const{viewer:i}=n;if(!i){console.error("CutDownTrees: ueViewer.viewer is undefined");return}const s=await i.callUeFunc({f:"CutDownTrees",p:{id:e,TreeIds:t,TimeLength:r}});return s.error&&console.error("CutDownTrees:",s.error),s},Sd=async(n,e,t,r,i)=>{const{viewer:s}=n;if(!s){console.error("GrowthSimulation: ueViewer.viewer is undefined");return}const o=await s.callUeFunc({f:"GrowthSimulation",p:{id:e,ToParams:t,SwitchTime:i,TimeLength:r}});return o.error&&console.error("GrowthSimulation:",o.error),o},xa=class xa extends Se{constructor(t){super(t);p(this,"_addTreesEvent",this.dv(new c.Event));p(this,"_removeAllTreesEvent",this.dv(new c.Event));p(this,"_updateTreeParamsEvent",this.dv(new c.Event));p(this,"_cutDownTreesEvent",this.dv(new c.Event));p(this,"_growthSimulationEvent",this.dv(new c.Event))}get typeName(){return"ESSeparateFoliage"}get defaultProps(){return xa.createDefaultProps()}async addTreesCallFunc(t,r){return await yd(t,this.id,r)}async updateTreeParamsCallFunc(t,r){return await wd(t,this.id,r)}async cutDownTreesCallFunc(t,r,i){return await Ed(t,this.id,r,i)}async removeAllTreesCallFunc(t){return await _d(t,this.id)}async growthSimulationCallFunc(t,r,i,s){return await Sd(t,this.id,r,i,s)}async getIdByComponentNameAndHitItem(t,r,i){return await t.getIdByComponentNameAndHitItem(this.id,r,i)}get addTreesEvent(){return this._addTreesEvent}addTrees(t){this._addTreesEvent.emit(t)}get removeAllTreesEvent(){return this._removeAllTreesEvent}removeAllTrees(){this._removeAllTreesEvent.emit()}get updateTreeParamsEvent(){return this._updateTreeParamsEvent}updateTreeParams(t){this._updateTreeParamsEvent.emit(t)}get cutDownTreesEvent(){return this._cutDownTreesEvent}cutDownTrees(t,r){this._cutDownTreesEvent.emit(t,r)}get growthSimulationEvent(){return this._growthSimulationEvent}growthSimulation(t,r,i){this._growthSimulationEvent.emit(t,r,i)}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new G("treeTypes","类型为 { name: string, meshPath: string }[]",!0,!1,[this,"treeTypes"],[],"{ name: string, meshPath: string }[]"),new S("树桩id","树桩id",!1,!1,[this,"stumpId"]),new S("动画间隔时间","动画间隔时间",!1,!1,[this,"intervalTime"]),new S("切换间隔时间","切换间隔时间",!1,!1,[this,"switchIntervalTime"])])]}};p(xa,"type",xa.register("ESSeparateFoliage",xa,{chsName:"单体控制森林",tags:["ESObjects","_ES_Impl_UE"],description:"ESSeparateFoliage"})),p(xa,"defaults",{...Se.defaults,treeTypes:[],stumpId:-1,intervalTime:.1,switchIntervalTime:.5});let Mo=xa;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),treeTypes:c.reactJsonWithUndefined(void 0),stumpId:-1,intervalTime:.1,switchIntervalTime:.5})})(Mo||(Mo={})),c.extendClassProps(Mo.prototype,Mo.createDefaultProps);function hc(n,e,t){const r="buffer"in n,i=r?n.buffer:n;r&&(e+=n.byteOffset);const s=new Array(t),o=new DataView(i);for(let a=0;a<t;++a){const l=o.getUint8(e+a);s[a]=String.fromCharCode(l)}return s.join("")}function fc(n,e){const t="buffer"in n,r=t?n.buffer:n;return t&&(e+=n.byteOffset),new DataView(r).getUint32(e,!0)}function Cd(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t>i.byteLength){console.error("byteOffset + length > buffer.byteLength");return}return new Uint8Array(i,e,t)}function Vy(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t*2>i.byteLength){console.error("byteOffset + length * 4 > buffer.byteLength");return}return new Uint16Array(i,e,t)}function zy(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t*4>i.byteLength){console.error("byteOffset + length * 4 > buffer.byteLength");return}return new Uint32Array(i,e,t)}function Uy(n,e,t){const r="buffer"in n,i=r?n.buffer:n;if(r&&(e+=n.byteOffset),e+t*4>i.byteLength){console.error("byteOffset + length * 4 > buffer.byteLength");return}return new Float32Array(i,e,t)}function Pd(n){if(hc(n,0,4)!=="glTF"){console.error("Not a glTF file");return}const t=fc(n,4);if(t!==2){console.error("Unsupported glTF version");return}const r=fc(n,8);if(r!==n.byteLength){console.error("Invalid glTF length");return}const i=fc(n,12);if(i+12+4>r){console.error("Invalid glTF chunk length");return}if(hc(n,16,4)!=="JSON"){console.error("Invalid glTF chunk type");return}const o=hc(n,20,i),a={version:t,length:r,gltfJson:o};do{if(20+i>=n.byteLength)break;const l=fc(n,20+i);if(hc(n,20+i+4,4)!=="BIN\0"){console.error("Invalid glTF chunk type");return}const h=Cd(n,20+i+8,l);a.gltfBinary=h}while(!1);return a}window.parseGlb=Pd;function Id(n){const e=Pd(n);if(e===void 0||!e.gltfBinary)return;const t=JSON.parse(e.gltfJson);return t.nodes.map(r=>{var i=t.meshes[r.mesh],s=i.primitives[0].attributes.POSITION,o=i.primitives[0].indices,a=t.accessors[s],l=t.bufferViews[a.bufferView];if(!e.gltfBinary)throw new Error("!glbParseResult.gltfBinary");const u=Uy(e.gltfBinary,l.byteOffset??0,l.byteLength/4);var h=t.accessors[o],f=t.bufferViews[h.bufferView];if(!e.gltfBinary)throw new Error("!glbParseResult.gltfBinary");let d;return h.componentType===5121?d=Cd(e.gltfBinary,f.byteOffset??0,f.byteLength/1):h.componentType===5123?d=Vy(e.gltfBinary,f.byteOffset??0,f.byteLength/2):h.componentType===5125&&(d=zy(e.gltfBinary,f.byteOffset??0,f.byteLength/4)),{name:r.name,posBuffer:u,indicesBuffer:d}})}window.parseWaterGlb=Id;const Xe=class Xe extends q{constructor(t){super(t);p(this,"_submergingData");p(this,"_allMoments",[]);p(this,"readyEvent",this.dv(new c.Event));{const r=()=>{this.url!=""&&fetch(this.url).then(i=>{i.status==200&&i.ok&&i.arrayBuffer().then(s=>{this._submergingData=Id(s);const o=this._submergingData.map(a=>Date.parse(a.name)).sort();this._allMoments=o,this.currentTime==0&&(this.currentTime=o[0]),this.readyEvent.emit()})}).catch(i=>{console.log(i)})};r(),this.d(this.urlChanged.don(()=>{r()}))}}get typeName(){return"ESSubmergingAnalysis"}get defaultProps(){return Xe.createDefaultProps()}get getSubmergingData(){return this._submergingData}getAllMoments(){return this._allMoments}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new J("Url地址","url",!1,!1,[this,"url"],Xe.defaults.url),new Ve("振幅","控制水波振幅的数值",!1,!1,[this,"amplitude"],.01,[0,1],Xe.defaults.amplitude),new S("频率","控制波数的数值(次/千米)",!1,!1,[this,"frequency"],Xe.defaults.frequency),new S("当前时间","currentTime",!1,!1,[this,"currentTime"],Xe.defaults.currentTime),new G("材质参数","materialParams",!1,!1,[this,"materialParams"],Xe.defaults.materialParams),new Y("水域类型","当为custom是其他控制效果的参数生效,否则不生效,使用对应水域类型的预定效果",!1,!1,[this,"waterType"],Xe.defaults.waterTypes,"river"),new Z("水的底色","waterColor",!1,!1,[this,"waterColor"],Xe.defaults.waterColor),new Ve("波动频率","控制水波纹扰动的速率",!1,!1,[this,"waveVelocity"],.01,[0,1],Xe.defaults.waveVelocity),new S("水流速度","控制水流速度,单位 米/秒",!1,!1,[this,"flowSpeed"],Xe.defaults.flowSpeed),new Ve("镜面反射强度","控制镜面反射强度的数值",!1,!1,[this,"specularIntensity"],.01,[0,1],Xe.defaults.specularIntensity)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new J("模型Url地址","url",!1,!1,[this,"url"],Xe.defaults.url),new S("当前时间","currentTime",!1,!1,[this,"currentTime"],Xe.defaults.currentTime),new G("材质参数","materialParams",!1,!1,[this,"materialParams"],Xe.defaults.materialParams),new Y("水域类型","当为custom是其他控制效果的参数生效,否则不生效,使用对应水域类型的预定效果",!1,!1,[this,"waterType"],Xe.defaults.waterTypes),new Z("水的底色","waterColor",!1,!1,[this,"waterColor"],Xe.defaults.waterColor),new S("频率","控制波数的数值(次/千米)",!1,!1,[this,"frequency"],Xe.defaults.frequency),new Ve("波动频率","控制水波纹扰动的速率",!1,!1,[this,"waveVelocity"],.01,[0,1],Xe.defaults.waveVelocity),new Ve("振幅","控制水波振幅的数值",!1,!1,[this,"amplitude"],.01,[0,1],Xe.defaults.amplitude),new Ve("镜面反射强度","控制镜面反射强度的数值",!1,!1,[this,"specularIntensity"],.01,[0,1],Xe.defaults.specularIntensity),new S("水流速度","控制水流速度,单位 米/秒",!1,!1,[this,"flowSpeed"],Xe.defaults.flowSpeed)])]}};p(Xe,"type",Xe.register("ESSubmergingAnalysis",Xe,{chsName:"淹没分析",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"ESSubmergingAnalysis"})),p(Xe,"defaults",{...q.defaults,url:"",currentTime:0,materialParams:{},waterColor:[.1497,.165,.0031,1],frequency:1e3,waveVelocity:.5,amplitude:.1,specularIntensity:.8,waterTypes:[["river","river"],["ocean","ocean"],["lake","lake"],["custom","custom"]],waterType:"river",flowSpeed:0});let xo=Xe;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),url:"",currentTime:0,materialParams:c.reactJson({}),waterColor:[.1497,.165,.0031,1],frequency:1e3,waveVelocity:.5,amplitude:.1,specularIntensity:.8,waterType:"river",flowSpeed:0,allowPicking:!0})})(xo||(xo={})),c.extendClassProps(xo.prototype,xo.createDefaultProps);const Fs=class Fs extends ye{constructor(t){super(t);p(this,"_startEvent",this.dv(new c.Event));p(this,"_stopEvent",this.dv(new c.Event));this.filled=!1,this.stroked=!1}get typeName(){return"ESSunshineAnalysis"}get defaultProps(){return Fs.createDefaultProps()}get startEvent(){return this._startEvent}start(){this._startEvent.emit()}get stopEvent(){return this._stopEvent}stop(){this._stopEvent.emit()}getProperties(t){return[...super.getProperties(t),new Z("起始颜色","起始颜色",!1,!1,[this,"startColor"]),new Z("结束颜色","结束颜色",!1,!1,[this,"endColor"]),new S("计算进度","计算进度",!0,!0,[this,"progress"]),new S("高度","高度m",!1,!1,[this,"extrudedHeight"]),new S("底面高度","底面高度",!1,!1,[this,"height"]),new S("采样间距","采样间距m",!1,!1,[this,"sampleDistance"]),new S("起始时间","startTime,时间戳",!1,!1,[this,"startTime"]),new S("结束时间","endTime,时间戳",!1,!1,[this,"endTime"]),new S("时间跨度","时间跨度,默认1小时时间戳",!1,!1,[this,"spanTime"]),new ie("开始分析","开始分析",[],()=>this.start(),[]),new ie("结束分析","结束分析",[],()=>this.stop(),[])]}};p(Fs,"type",Fs.register("ESSunshineAnalysis",Fs,{chsName:"日照分析",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"日照分析"})),p(Fs,"supportEditingModes",[...ye.supportEditingModes,se.HeightModify]),p(Fs,"defaults",{...ye.defaults});let Lo=Fs;(n=>{n.createDefaultProps=()=>({...ye.createDefaultProps(),extrudedHeight:30,height:0,sampleDistance:10,startColor:c.reactArray([1,1,0,1]),endColor:c.reactArray([1,0,0,1]),startTime:0,endTime:36e6,spanTime:1,progress:0})})(Lo||(Lo={})),c.extendClassProps(Lo.prototype,Lo.createDefaultProps);const wr=class wr extends Se{constructor(t){super(t);p(this,"_activateEvent",this.disposeVar(new c.Event));p(this,"activate",!1)}get typeName(){return"ESTerrainLayer"}get defaultProps(){return wr.createDefaultProps()}get activateEvent(){return this._activateEvent}getESProperties(){const t={...super.getESProperties()},r=[new S("层级序号","层级序号",!1,!1,[this,"zIndex"],wr.defaults.zIndex),new Y("渲染模式","renderMode",!1,!1,[this,"renderMode"],wr.defaults.renderModes,"default"),new S("透明度","opacity",!1,!1,[this,"opacity"],wr.defaults.opacity)],i=[new G("地形服务地址","地形服务地址",!1,!1,[this,"url"],wr.defaults.url),new or("矩形范围","西南东北",!1,!1,[this,"rectangle"],wr.defaults.rectangle)];return t.basic.push(...r),t.dataSource.push(...i),t.defaultMenu="dataSource",t}getProperties(t){return[...super.getProperties(t),new z("ESTerrainLayer","ESTerrainLayer",[new G("地形服务地址","地形服务地址",!1,!1,[this,"url"]),new or("矩形范围","西南东北",!1,!1,[this,"rectangle"]),new S("层级","zIndex",!1,!1,[this,"zIndex"]),new Y("渲染模式","renderMode",!1,!1,[this,"renderMode"],wr.defaults.renderModes,wr.defaults.renderMode),new S("透明度","opacity",!1,!1,[this,"opacity"],wr.defaults.opacity),new z("czm","czm",[new S("czmMinzoom","czmMinzoom",!0,!1,[this,"czmMinzoom"]),new S("czmMaxzoom","czmMaxzoom",!0,!1,[this,"czmMaxzoom"])])])]}};p(wr,"type",wr.register("ESTerrainLayer",wr,{chsName:"地形图层",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"地形图层"})),p(wr,"defaults",{...Se.defaults,show:!0,url:"http://inner.earthsdk.com/layer.json",rectangle:[-180,-90,180,90],zIndex:0,renderMode:"default",renderModes:[["使用深度检测","default"],["不使用深度检测","disableDepthTest"],["透明","transparent"]],opacity:1});let Ao=wr;(n=>{n.createDefaultProps=()=>({...Se.createDefaultProps(),url:"http://inner.earthsdk.com/layer.json",rectangle:c.reactArray([-180,-90,180,90]),zIndex:0,czmMaxzoom:void 0,czmMinzoom:void 0,renderMode:"default",opacity:1})})(Ao||(Ao={})),c.extendClassProps(Ao.prototype,Ao.createDefaultProps);const Tn=class Tn extends ft{get typeName(){return"ESTextLabel"}get defaultProps(){return Tn.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new Z("文本颜色","指定文本标签的字体颜色.",!1,!1,[this,"color"],[1,1,1,1]),new S("文字大小","fontSize",!1,!1,[this,"fontSize"],14),new vu("内容","内容",!0,!1,[this,"text"],Tn.defaults.text),new Z("背景颜色"," 指定文本标签的背景颜色.",!1,!1,[this,"backgroundColor"],Tn.defaults.backgroundColor),new or("内边距","上,右,下,左顺序.",!1,!1,[this,"padding"],Tn.defaults.padding)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new vu("内容","内容",!0,!1,[this,"text"],Tn.defaults.text),new Z("文本颜色","指定文本标签的字体颜色.",!1,!1,[this,"color"]),new S("文字大小","fontSize",!1,!1,[this,"fontSize"]),new Z("背景颜色"," 指定文本标签的背景颜色.",!1,!1,[this,"backgroundColor"]),new or("内边距","上,右,下,左顺序.",!1,!1,[this,"padding"])]),new z("czm","czm",[new k("文本编辑交互","文本编辑交互.",!1,!1,[this,"textEditingInteraction"]),new k("文本编辑","文本编辑.",!1,!1,[this,"textEditing"]),new S("宽度","宽度",!0,!1,[this,"width"],Tn.defaults.width),new or("原点比例和偏移","原点比例和偏移.",!1,!1,[this,"originRatioAndOffset"]),new S("透明度","透明度",!1,!1,[this,"opacity"]),new or("边框圆角","左上,右上,右下,左下.",!1,!1,[this,"borderRadius"]),new Z("边框颜色"," 边框色.",!1,!1,[this,"borderColor"]),new S("边框宽度","边框宽度",!1,!1,[this,"borderWidth"]),new Y("文字位置","文字位置",!1,!1,[this,"textAlign"],[["center","center"],["left","left"],["right","right"]]),new Y("边框类型","边框类型",!1,!1,[this,"borderStyle"],[["none","none"],["hidden","hidden"],["dotted","dotted"],["dashed","dashed"],["solid","solid"],["double","double"],["groove","groove"],["ridge","ridge"],["inset","inset"],["outset","outset"]])])]}};p(Tn,"type",Tn.register("ESTextLabel",Tn,{chsName:"文本标签",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"文本标签。"})),p(Tn,"defaults",{...ft.defaults,allowTextEditing:!0,width:80,text:"请输入文字",originRatioAndOffset:[.5,1,0,0],opacity:1,backgroundColor:[0,0,0,.8],padding:[5,5,5,5],borderRadius:[6,6,6,6],borderColor:[1,1,1,1],borderWidth:0,textAlign:"left",borderStyle:"solid"});let Ro=Tn;(n=>{n.createDefaultProps=()=>({...ft.createDefaultProps(),text:void 0,width:void 0,textEditing:!1,textEditingInteraction:!1,opacity:1,fontSize:14,textAlign:"left",color:c.reactArray([1,1,1,1]),backgroundColor:c.reactArray([0,0,0,.8]),padding:c.reactArray([5,5,5,5]),borderRadius:c.reactArray([6,6,6,6]),borderWidth:0,borderColor:c.reactArray([1,1,1,1]),borderStyle:"solid"})})(Ro||(Ro={})),c.extendClassProps(Ro.prototype,Ro.createDefaultProps);const Td=`
313
313
  #### 默认值如下
314
314
  \`\`\`js
315
315
  {
@@ -544,10 +544,10 @@ ${Rd}
544
544
  `,Fd=Date.now();new Date(Fd).toISOString(),new Date(Fd+24*60*60*1e3).toISOString();const pt=class pt extends j{constructor(t){super(t);p(this,"_flyToEvent",this.disposeVar(new c.Event));p(this,"_resetClockEvent",this.disposeVar(new c.Event))}get typeName(){return"ESCzml"}get defaultProps(){return pt.createDefaultProps()}get flyToEvent(){return this._flyToEvent}flyTo(t){this._flyToEvent.emit(t)}get resetClockEvent(){return this._resetClockEvent}resetClock(){this._resetClockEvent.emit()}getESProperties(){const t={...super.getESProperties()};return{...t,defaultMenu:"basic",basic:[...t.basic,new G("数据","数据",!0,!1,[this,"data"],pt.defaults.data,pt.defaults.dataMd),new G("路径","路径",!1,!1,[this,"uri"],""),new k("启用","启用",!1,!1,[this,"clockEnabled"],!1),new S("倍速","倍速.",!1,!1,[this,"multiplier"],pt.defaults.multiplier),new k("自动设置时钟","自动设置时钟",!1,!1,[this,"autoResetClock"],!0),new ti("开始时间","开始时间",!0,!1,[this,"startTime"],pt.defaults.startTime),new ti("结束时间","结束时间",!0,!1,[this,"stopTime"],pt.defaults.stopTime),new ti("当前时间","当前时间",!0,!1,[this,"currentTime"],pt.defaults.currentTime),new Y("clockStep","clockStep",!1,!1,[this,"clockStep"],[["TICK_DEPENDENT","TICK_DEPENDENT"],["SYSTEM_CLOCK_MULTIPLIER","SYSTEM_CLOCK_MULTIPLIER"],["SYSTEM_CLOCK","SYSTEM_CLOCK"]],"SYSTEM_CLOCK_MULTIPLIER"),new Y("clockRange","clockRange",!1,!1,[this,"clockRange"],[["UNBOUNDED","UNBOUNDED"],["CLAMPED","CLAMPED"],["LOOP_STOP","LOOP_STOP"]],"UNBOUNDED"),new k("是否启用动画","是否启用动画",!1,!1,[this,"shouldAnimate"],!1)],general:[...t.general,new J("唯一标识","id",!1,!0,[this,"id"]),new J("名称","name",!0,!1,[this,"name"]),new k("是否显示","show",!1,!1,[this,"show"],!0),new k("开启碰撞","collision",!1,!1,[this,"collision"],!1),new k("允许拾取","allowPicking",!1,!1,[this,"allowPicking"],!1)]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new k("是否显示","A boolean Property specifying the visibility .",!1,!1,[this,"show"]),new k("允许拾取","是否允许拾取",!1,!1,[this,"allowPicking"]),new ie("飞入","飞入",["number"],r=>this.flyTo(r),[1e3]),new G("数据","数据",!0,!1,[this,"data"],pt.defaults.data,pt.defaults.dataMd),new G("路径","路径",!1,!1,[this,"uri"]),new k("自动设置时钟","自动设置时钟",!1,!1,[this,"autoResetClock"]),new ie("重设时钟","根据当前加载的数据重设始终",[],()=>this.resetClock(),[]),new ei("loadFnStr","loadFnStr",!0,!1,[this,"loadFuncStr"],pt.defaults.defaultLoadFuncStr,pt.defaults.defaultLoadFuncDocStr)]),new z("时钟","时钟",[new k("启用","启用",!1,!1,[this,"clockEnabled"]),new ti("开始时间","开始时间",!0,!1,[this,"startTime"],pt.defaults.startTime),new ti("结束时间","结束时间",!0,!1,[this,"stopTime"],pt.defaults.stopTime),new ti("当前时间","当前时间",!0,!1,[this,"currentTime"],pt.defaults.currentTime),new S("倍速","倍速.",!1,!1,[this,"multiplier"],pt.defaults.multiplier),new Y("clockStep","clockStep",!1,!1,[this,"clockStep"],[["TICK_DEPENDENT","TICK_DEPENDENT"],["SYSTEM_CLOCK_MULTIPLIER","SYSTEM_CLOCK_MULTIPLIER"],["SYSTEM_CLOCK","SYSTEM_CLOCK"]]),new Y("clockRange","clockRange",!1,!1,[this,"clockRange"],[["UNBOUNDED","UNBOUNDED"],["CLAMPED","CLAMPED"],["LOOP_STOP","LOOP_STOP"]]),new k("是否启用动画","是否启用动画",!1,!1,[this,"shouldAnimate"])])]}};p(pt,"type",pt.register("ESCzml",pt,{chsName:"ESCzml",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"Czml数据加载"})),p(pt,"defaults",{...j.defaults,show:!0,allowPicking:!0,data:n0,dataMd:i0,autoResetClock:!0,clockEnabled:!1,startTime:()=>Date.now(),stopTime:()=>Date.now()+24*60*60*1e3,currentTime:()=>Date.now(),multiplier:1,clockStep:"SYSTEM_CLOCK_MULTIPLIER",clockRange:"UNBOUNDED",shouldAnimate:!1,uri:"${earthsdk3-assets-script-dir}/assets/misc/simple.czml",defaultLoadFuncStr:Rd,defaultLoadFuncDocStr:s0});let va=pt;(n=>{n.createDefaultProps=()=>({show:!0,uri:"",allowPicking:!1,data:c.reactJsonWithUndefined(void 0),autoResetClock:!0,clockEnabled:!1,startTime:void 0,stopTime:void 0,currentTime:void 0,multiplier:1,clockStep:"SYSTEM_CLOCK_MULTIPLIER",clockRange:"UNBOUNDED",shouldAnimate:!1,loadFuncStr:void 0,...j.createDefaultProps()})})(va||(va={})),c.extendClassProps(va.prototype,va.createDefaultProps);const Ya=class Ya extends j{get typeName(){return"ESNavigator"}get defaultProps(){return Ya.createDefaultProps()}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new k("是否显示","A boolean Property specifying the visibility .",!1,!1,[this,"show"]),new S("尺寸","尺寸",!1,!1,[this,"cssSize"]),new ke("位置","位置(top,right)",!1,!1,[this,"cssPosition"]),new Al("图片地址","图片地址",!1,!1,[this,"imgUrl"])])]}};p(Ya,"type",Ya.register("ESNavigator",Ya,{chsName:"导航控件",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"导航控件"})),p(Ya,"defaults",{...j.defaults,show:!0,cssPosition:[170,30],cssSize:100,imgUrl:j.context.getStrFromEnv("${earthsdk3-assets-script-dir}/assets/img/zhinanzhen.png")});let ya=Ya;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),show:!0,cssSize:100,cssPosition:[170,30],imgUrl:n.defaults.imgUrl})})(ya||(ya={})),c.extendClassProps(ya.prototype,ya.createDefaultProps);const Qn=class Qn extends j{get typeName(){return"ESViewerStatusBar"}get defaultProps(){return Qn.createDefaultProps()}constructor(e){super(e)}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new k("是否显示","A boolean Property specifying the visibility .",!1,!1,[this,"show"],Qn.defaults.show),new S("高度","height",!0,!1,[this,"height"],Qn.defaults.height),new S("文字大小","fontSize",!0,!1,[this,"fontSize"],Qn.defaults.fontSize),new Z("背景颜色"," 背景颜色",!0,!1,[this,"bgColor"],Qn.defaults.bgColor)])]}};p(Qn,"type",Qn.register("ESViewerStatusBar",Qn,{chsName:"状态栏",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"状态栏"})),p(Qn,"defaults",{...j.defaults,show:!0,height:30,fontSize:14,bgColor:[71,71,71,.8]});let _a=Qn;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),show:!0,height:30,fontSize:14,bgColor:[71/255,71/255,71/255,.8]})})(_a||(_a={})),c.extendClassProps(_a.prototype,_a.createDefaultProps);const Bn=class Bn extends j{get typeName(){return"ESViewerStatusBarScale"}get defaultProps(){return Bn.createDefaultProps()}constructor(e){super(e)}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new k("是否显示","A boolean Property specifying the visibility .",!1,!1,[this,"show"],Bn.defaults.show),new S("高度","height",!0,!1,[this,"height"],Bn.defaults.height),new S("文字大小","fontSize",!0,!1,[this,"fontSize"],Bn.defaults.fontSize),new Z("背景颜色"," 背景颜色",!0,!1,[this,"bgColor"],Bn.defaults.bgColor)])]}};p(Bn,"type",Bn.register("ESViewerStatusBarScale",Bn,{chsName:"比例尺状态栏",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"状态栏"})),p(Bn,"defaults",{...j.defaults,show:!0,height:30,fontSize:14,bgColor:[71,71,71,.8]});let wa=Bn;(n=>{n.createDefaultProps=()=>({...j.createDefaultProps(),show:!0,height:30,fontSize:14,bgColor:[71/255,71/255,71/255,.8]})})(wa||(wa={})),c.extendClassProps(wa.prototype,wa.createDefaultProps);const Ha=class Ha extends q{get typeName(){return"ESGaussianSplatting"}get defaultProps(){return Ha.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()};return{...e,basic:[...e.basic,new J("路径","url",!0,!1,[this,"url"]),new S("进度","progress",!1,!0,[this,"progress"],0)]}}getProperties(e){return[...super.getProperties(e),new z("通用","通用",[new J("路径","url",!0,!1,[this,"url"]),new S("进度","progress",!1,!0,[this,"progress"],0)])]}};p(Ha,"type",Ha.register("ESGaussianSplatting",Ha,{chsName:"高斯溅射模型",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"用于加载高斯溅射模型的ES对象"})),p(Ha,"defaults",{...q.defaults});let Ea=Ha;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),url:"",progress:0})})(Ea||(Ea={})),c.extendClassProps(Ea.prototype,Ea.createDefaultProps);const ss=class ss extends q{get typeName(){return"ESStaticMesh"}get defaultProps(){return ss.createDefaultProps()}constructor(e){super(e)}getESProperties(){const e={...super.getESProperties()},t=[new J("mesh地址","mesh地址",!1,!1,[this,"mesh"],ss.defaults.mesh)];return e.basic.push(...t),e}getProperties(e){return[...super.getProperties(e),new z("ESStaticMesh","ESStaticMesh",[new J("mesh地址","mesh地址",!1,!1,[this,"mesh"],ss.defaults.mesh)])]}};p(ss,"type",ss.register("ESStaticMesh",ss,{chsName:"静态网格",tags:["ESObjects","_ES_Impl_UE"],description:"Unreal的Mesh对象"})),p(ss,"defaults",{...q.defaults,mesh:"StaticMesh'/Engine/BasicShapes/Sphere.Sphere'"});let Sa=ss;(n=>{n.createDefaultProps=()=>({...q.createDefaultProps(),mesh:""})})(Sa||(Sa={})),c.extendClassProps(Sa.prototype,Sa.createDefaultProps);const Ll=class Ll extends ce{constructor(t){super(t);p(this,"_startEvent",this.disposeVar(new c.Event));p(this,"_clearEvent",this.disposeVar(new c.Event))}get typeName(){return"ESSkylineAnalysis"}get defaultProps(){return Ll.createDefaultProps()}get startEvent(){return this._startEvent}start(){this._startEvent.emit()}get clearEvent(){return this._clearEvent}clear(){this._clearEvent.emit()}getESProperties(){const t={...super.getESProperties()};return{...t,basic:[...t.basic,new ie("开始分析","开始分析",[],()=>this.start(),[]),new ie("清除分析","清除分析",[],()=>this.clear(),[]),new _u("分析结果","screenPoints",!1,!1,[this,"screenPoints"])]}}getProperties(t){return[...super.getProperties(t),new z("通用","通用",[new ie("开始分析","开始分析",[],()=>this.start(),[]),new ie("清除分析","清除分析",[],()=>this.clear(),[]),new _u("分析结果","screenPoints",!1,!1,[this,"screenPoints"])])]}};p(Ll,"type",Ll.register("ESSkylineAnalysis",Ll,{chsName:"天际线分析",tags:["ESObjects","_ES_Impl_Cesium","_ES_Impl_UE"],description:"分析类"}));let Ca=Ll;(n=>{n.createDefaultProps=()=>({...ce.createDefaultProps(),screenPoints:c.reactArrayWithUndefined(void 0)})})(Ca||(Ca={})),c.extendClassProps(Ca.prototype,Ca.createDefaultProps);function kd(n){return typeof n=="string"?document.getElementById(n):n}function Th(n){if(!n)throw new Error("container is not defined");n.innerHTML="";const e=document.createElement("div");return e.style.cssText="width: 100%; height: 100%; margin: 0px; padding: 0px; border: none; overflow: hidden; position: relative; z-index: 0; background: rgba(0,0,0,0);",n.appendChild(e),e}class Vd extends c.Destroyable{constructor(t,r){super();p(this,"_listeningSceneObjects",new Map);this._sceneObjectsMananger=t,this._createSceneObjectListeningFunc=r;const i=this._listeningSceneObjects,s=(o,a)=>{if(o)for(let l of o){const u=i.get(l);u&&(u.destroy(),i.delete(l))}if(a)for(let l of a){if(i.get(l)){console.warn(`listeningSceneObjects已存在某对象:${l.name}`,l);debugger}const h=this.createSceneObjectListeningFunc(l);h&&i.set(l,h)}};s(void 0,this._sceneObjectsMananger.sceneObjects),this.dispose(this._sceneObjectsMananger.sceneObjectsToChange.disposableOn(s)),this.dispose(()=>{for(let o of this._listeningSceneObjects.values())o.destroy();this._listeningSceneObjects.clear()})}get listeningSceneObjects(){return this._listeningSceneObjects}get createSceneObjectListeningFunc(){return this._createSceneObjectListeningFunc}}class o0 extends c.Destroyable{constructor(e){super(),this._esObjectsManager=e;{const t=this._esObjectsManager;class r extends c.Destroyable{constructor(s){super(),this._esPath=s,this.dv(new c.ObjResettingWithEvent(t.activeViewerChanged,()=>{const o=t.activeViewer;if(!o)return;class a extends c.Destroyable{constructor(u){if(super(),this._esPath=u,!o)throw new Error("!viewer");const h=()=>{const f=t.activeViewer;f&&(this._esPath.path.currentTime=f.simulationTime)};h(),this.d(o.simulationTimeChanged.don(h))}}return new a(this._esPath)}))}}this.dv(new Vd(t.sceneObjectsManager,i=>{if(i instanceof Zi)return new r(i)}))}{const t=this._esObjectsManager;class r extends c.Destroyable{constructor(s){super();{const o=()=>{const a=t.activeViewer;a&&(a.simulationTime=s.currentTime??0)};o(),this.d(s.currentTimeChanged.don(o))}}}this.dv(new Vd(t.sceneObjectsManager,i=>{if(i instanceof Ji)return new r(i)}))}}}class a0 extends c.Destroyable{constructor(e){super(),e.forEach(t=>{this.d(t.path.currentPositionChanged.don(r=>{r&&t.sceneObjects.forEach(i=>{Reflect.has(i,"position")&&(i.position=[...r])})})),this.d(t.path.currentRotationChanged.don(r=>{r&&t.sceneObjects.forEach(i=>{Reflect.has(i,"rotation")&&(i.rotation=[...r])})}))})}}class l0 extends c.Destroyable{constructor(t){super();p(this,"_player");p(this,"_channels",this.dv(c.reactArray([])));this._objectManager=t,this._player=this._objectManager.player,this.dv(new c.ObjResettingWithEvent(this.channelsChanged,()=>{if(this.channels.length===0)return;const r=[];for(let i=0;i<this.channels.length;i++){const s=this.channels[i],o=j.getSceneObjById(s.pathId);if(!o||!(o instanceof Zi))continue;const l=s.sceneObjectIds.map(u=>j.getSceneObjById(u)).filter(u=>u!==void 0);l.length!==0&&r.push({path:o,sceneObjects:l})}if(r.length!==0)return new a0(r)}))}get player(){return this._player}get channels(){return this._channels.value}get channelsChanged(){return this._channels.changed}set channels(t){this._channels.value=t}}function pc(n){if(n.data){const{type:e,value:t}=n.data;if(e==="UITreeA"&&t instanceof sr){const{sceneObject:r}=t;if(r)return r.id}}}function u0(n,e){const{property:t,customEventName:r,otherParams:i}=e,{dragstartDataMananger:s}=n;if(!(t instanceof bn)){if(!(t instanceof _u)){if(t instanceof J){const[o,a]=c.getReactFuncs(t.reactVar);if(r==="ondragover"){if(console.log("ondragover"),!i)throw new Error("!otherParams");const l=i[0];if(l.preventDefault(),!l.dataTransfer)return;pc(s)?l.dataTransfer.dropEffect="move":l.dataTransfer.dropEffect="none"}else if(r==="ondrop"){if(!i)throw new Error("!otherParams");i[0].preventDefault();const u=pc(s);u!==void 0&&a(u)}}else if(t instanceof Oh){const[o,a]=c.getReactFuncs(t.reactVar);if(r==="ondragover"){if(console.log("ondragover"),!i)throw new Error("!otherParams");const l=i[0];if(l.preventDefault(),!l.dataTransfer)return;pc(s)?l.dataTransfer.dropEffect="move":l.dataTransfer.dropEffect="none"}else if(r==="ondrop"){if(!i)throw new Error("!otherParams");const l=i[0].$event,u=i[0].strinsPropDom,h=i[0].index;l.preventDefault();const f=pc(s);if(f!==void 0){u[h].firstChild.value=f;const d=new Event("input",{bubbles:!0,cancelable:!0});u[h].firstChild.dispatchEvent(d)}}}else if(t instanceof Mh){const[o,a]=c.getReactFuncs(t.reactVar)}}}}class c0 extends c.Destroyable{constructor(){super();p(this,"_sceneObjects",new Set);p(this,"_sceneObjectsToChange",this.dv(new c.Event));this.d(()=>{const t=c.length(this._sceneObjects);t!==0&&console.warn(`场景对象管理器销毁时仍然管理着${t}个场景对象!`)})}get sceneObjects(){return this._sceneObjects}get sceneObjectsToChange(){return this._sceneObjectsToChange}addSceneObject(t){if(this._sceneObjects.has(t))return console.warn(`创建失败:对象${t}已经存在于场景对象管理器中!}`),!1;do this._sceneObjectsToChange.emit([],[t]),this._sceneObjects.add(t);while(!1);return!0}deleteSceneObject(t){if(!this._sceneObjects.has(t))return console.warn(`删除失败:对象${t}不存在于场景对象管理器中!}`),!1;do this._sceneObjectsToChange.emit([t],[]),this._sceneObjects.delete(t);while(!1);return!0}createSceneObject(t,r){const i=j.context.createSceneObject(t,r);return i&&this.addSceneObject(i),i}createSceneObjectFromClass(t,r){const i=j.context.createSceneObjectFromClass(t,r);return i&&this.addSceneObject(i),i}createSceneObjectFromJson(t){const r=j.context.createSceneObjectFromJson(t);return r&&this.addSceneObject(r),r}}function zd(n,e){return n.length===e.length&&n.every((t,r)=>t===e[r])}class h0 extends c.Destroyable{constructor(e){super(),this._viewer=e,this.d(c.track([this._viewer,"currentTime"],[this._viewer,"simulationTime"]))}}class f0 extends c.Destroyable{constructor(e,t){super(),this._viewer=e,this._activeViewer=t;const r=Zn.createCommonProps(),i=[];Object.keys(r).forEach(l=>{const u=this._activeViewer[l+"Changed"];i.push(u)});const s=this.dv(c.createNextAnimateFrameEvent(...i)),o=()=>{this._viewer.status!=="Created"||this._activeViewer.status!=="Created"||Object.keys(r).forEach(l=>{this._viewer[l]=this._activeViewer[l]})};this.d(s.don(o));const a=this.dv(c.createAnimateFrame());a.restart(void 0,async()=>{if(this._viewer.status!=="Created"||this._activeViewer.status!=="Created")return;const l=this._activeViewer.getCurrentCameraInfo(),u=this._viewer.getCurrentCameraInfo();if(!l)return;const{position:h,rotation:f}=l;u&&zd(h,u.position)&&zd(f,u.rotation)||this._viewer.flyIn(h,f,0)}),this.d(()=>a.cancel())}}const p0=`<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 100 100" preserveAspectRatio="xMidYMid" width="40" height="40" style="shape-rendering: auto; display: block; background: rgba(255, 255, 255, 0);" xmlns:xlink="http://www.w3.org/1999/xlink"><g><circle stroke-linecap="round" fill="none" stroke-dasharray="50.26548245743669 50.26548245743669" stroke="#ffffff" stroke-width="8" r="32" cy="50" cx="50">
545
545
  <animateTransform values="0 50 50;360 50 50" keyTimes="0;1" dur="1s" repeatCount="indefinite" type="rotate" attributeName="transform"></animateTransform>
546
546
  </circle><g></g></g></svg>
547
- `,d0='<svg t="1747028305766" class="icon" viewBox="0 0 1032 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3881" width="40" height="40"><path d="M0.1536 547.700736c-0.205824-0.187392-0.205824-0.49152 0.008192-0.68608l80.672768-73.590784a0.63488 0.63488 0 0 1 0.7936-0.029696l263.043072 203.0336c0.667648 0.515072 1.738752 0.498688 2.393088-0.038912l609.191936-500.133888a0.605184 0.605184 0 0 1 0.768 0.022528l74.84928 67.229696a0.454656 0.454656 0 0 1-0.002048 0.685056l-685.234176 618.19904a1.14688 1.14688 0 0 1-1.518592-0.012288L0.1536 547.700736z" fill="#ffffff" p-id="3882"></path></svg>',g0='<svg t="1747028398107" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1146" width="40" height="40"><path d="M415.744006 1.033277A0.992256 0.992256 0 0 1 416.747526 0.000061h189.5045c0.569344 0 1.017856 0.45056 1.001472 1.033216l-21.227518 754.803667a1.062912 1.062912 0 0 1-1.05984 1.032192h-146.933752c-0.569344 0-1.04448-0.45056-1.059839-1.032192L415.744006 1.033277zM511.510528 1024c-52.595709 0-95.231994-39.866366-95.231994-89.043963 0-49.176573 42.636285-89.042939 95.231994-89.042938 52.594685 0 95.231994 39.866366 95.231994 89.042938 0 49.177597-42.637309 89.043963-95.231994 89.043963z" fill="#ffffff" p-id="1147"></path></svg>',Ja=class Ja extends c.Destroyable{constructor(e){super();const t=()=>{const r=this.dv(new Ds);this.d(c.track([r,"show"],[e,"useDefaultStatusDiv"]));{const i=()=>{r.show=(e.useDefaultStatusDiv??!0)&&e.status!=="Created"};i(),this.d(e.useDefaultStatusDivChanged.don(i)),this.d(e.statusChanged.don(i)),r.cssText="width:100%;height:100%;position:absolute;left:0px;top:0px;"}e.add(r),this.d(()=>e.delete(r)),r.instanceClass=class extends c.Destroyable{constructor(o,a,l){super();p(this,"_div",document.createElement("div"));if(this._subContainer=o,!l)return;this._subContainer.appendChild(this._div),this.d(()=>this._subContainer.removeChild(this._div));{const w=()=>{a.show?this._div.style.opacity="1":this._div.style.opacity="0"};w(),this.d(a.showChanged.don(w))}let u,h,f,d,v;this._div.style.pointerEvents="none",this._div.style.position="absolute",this._div.style.width="100%",this._div.style.height="100%",this._div.style.backgroundColor="rgba(0, 0, 0, 0.4)",this._div.style.zIndex="100",this._div.style.transition="opacity 2s",u=document.createElement("div"),this._div.appendChild(u),u.style.width="auto",u.style.position="absolute",u.style.left="50%",u.style.top="50%",u.style.transform="translate(-50%,-50%)",u.style.background="rgba(120, 120, 0, 0.7)",u.style.color="white",u.style.fontSize="10px",u.style.background="none",u.style.display="flex",u.style.justifyContent="center",u.style.alignItems="center",h=document.createElement("div"),u.appendChild(h),h.style.pointerEvents="none",h.style.display="block",h.style.width="40px",h.innerHTML=Ja.defaultsSvg.loadingSvg,h.style.filter="drop-shadow(0px 0px 1px black)",f=document.createElement("div"),u.appendChild(f),f.style.pointerEvents="none",f.style.marginLeft="10px",f.style.display="flex",f.style.flexFlow="column",f.style.maxWidth="300px",d=document.createElement("div"),f.appendChild(d),d.style.fontSize="14px",d.style.fontWeight="800",d.style.marginBottom="5px",d.style.textShadow="0 0 2px black",v=document.createElement("div"),f.appendChild(v),v.style.fontWeight="400",v.style.textShadow="0 0 2px black";{const w=()=>{let T="Raw";l.status==="Raw"?T="初始状态":l.status==="Creating"?T="正在创建":l.status==="Created"?T="创建完成":l.status==="Error"?T="创建失败":l.status==="Reconnecting"&&(T="重新连接"),d.innerText=`${T}(${l.status})`,v.innerText=`${l.statusLog}`,(l.status==="Creating"||l.status==="Reconnecting")&&(h.innerHTML=Ja.defaultsSvg.loadingSvg),l.status==="Created"&&(h.innerHTML=Ja.defaultsSvg.successSvg),l.status==="Error"&&(h.innerHTML=Ja.defaultsSvg.warnSvg)};w();const I=this.dv(c.createNextAnimateFrameEvent(l.statusLogChanged,l.statusChanged));this.d(I.don(w))}}update(){const o=255*Math.random()|0,a=255*Math.random()|0,l=255*Math.random()|0;this._div.style.background=`rgba(${o}, ${a}, ${l}, 0.8)`}}};this.d(e.containerChanged.don(()=>{t()}))}};p(Ja,"defaultsSvg",{loadingSvg:p0,successSvg:d0,warnSvg:g0});let bh=Ja;class m0 extends c.Destroyable{constructor(e,t,r){super(),this._subContainer=e,this._overlayContainer=t,this._viewer=r;const i=this._subContainer,s=this._overlayContainer,o=this._viewer,a=()=>{const h=o.zIndex??"";i.style.zIndex=h,s.style.zIndex=h};a(),this.d(o.zIndexChanged.don(a));const l=()=>{i.style.display=o.show??!0?"block":"none"};l(),this.d(o.showChanged.don(l));const u=()=>{i.style.opacity=`${o.opacity??1}`};u(),this.d(o.opacityChanged.don(u))}}function dc(n){let e=c.getExtProp(n,"_relativeContainer");return e||(e=document.createElement("div"),e.style.position="relative",e.style.width="100%",e.style.height="100%",e.style.padding="0",e.style.margin="0",n.appendChild(e),c.setExtProp(n,"_relativeContainer",e)),e}class v0 extends c.Destroyable{constructor(t,r){super();p(this,"_subContainer",document.createElement("div"));p(this,"_overlayContainer",document.createElement("div"));p(this,"_containerStyleController");this._container=t,this._viewer=r,this._containerStyleController=this.dv(new m0(this._subContainer,this._overlayContainer,this._viewer));const{subContainer:i,overlayContainer:s}=this;i.tabIndex=-1,i.style.outline="none",i.style.width="100%",i.style.height="100%",i.onpointerdown=()=>i.focus(),s.style.position="relative",s.setAttribute("earthsdk3","earthsdk3-overlayContainer"),i.setAttribute("earthsdk3","earthsdk3-subContainer"),dc(this._container).appendChild(i),this.d(()=>dc(this._container).removeChild(i)),dc(this._container).appendChild(s),this.d(()=>dc(this._container).removeChild(s))}get subContainer(){return this._subContainer}get overlayContainer(){return this._overlayContainer}get containerStyleController(){return this._containerStyleController}get container(){return this._container}}class y0 extends c.Destroyable{constructor(){super(...arguments);p(this,"registerObjsMap",new Map)}register(t,r){return this.registerObjsMap.has(t)&&console.warn(`register warn:${t}已经被注册,再次注册会覆盖。`),this.registerObjsMap.set(t,r),t}getViewerConstructor(t){const r=this.registerObjsMap.get(t);if(!r){console.warn(`未找到${t}类!`);return}return r}createViewer(t){const r=t.type,i=this.getViewerConstructor(r);if(!i)throw new Error(`没有找到类型为${r}的Viewer构造器!`);return new i(t)}}class Ud extends c.Destroyable{constructor(e,t,r=!1,i=!1){if(super(),this._viewer=e,!t)throw new Error("ViewerCustomInteraction: container is null");const s=this.dv(c.DomElementEvent.create(t,"pointerdown")),o=this.dv(c.DomElementEvent.create(t,"pointermove")),a=this.dv(c.DomElementEvent.create(t,"pointerup")),l=this.dv(c.DomElementEvent.create(t,"pointerout")),u=this.dv(c.DomElementEvent.create(t,"pointerover")),h=this.dv(new c.PointerClick),f=this.dv(new c.PointerHover),d=()=>{const g=this._viewer.hoverTime*1e3;f.delayTime=g};this.d(this._viewer.hoverTimeChanged.don(()=>{d()})),this.d(s.don(g=>h.pointerDown(g))),this.d(o.don(g=>h.pointerMove(g))),this.d(a.don(g=>h.pointerUp(g))),this.d(l.don(g=>h.pointerOut(g))),this.d(s.don(g=>f.pointerDown(g))),this.d(o.don(g=>f.pointerMove(g))),this.d(a.don(g=>f.pointerUp(g))),this.d(l.don(g=>f.pointerOut(g)));const{x:v,y:w}=t.getBoundingClientRect(),I=i?v:0,T=i?w:0;this.d(f.hoverEvent.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.hoverEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(h.clickEvent.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.clickEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(h.dbclickEvent.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);g.button===0&&this._viewer.dblclickEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(s.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);g.button===0&&this._viewer.pointerDownEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(a.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);g.button===0&&this._viewer.pointerUpEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(o.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.pointerMoveEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(u.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.pointerOverEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(l.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.pointerOutEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})}));const L=this.dv(c.DomElementEvent.create(t,"keydown"));this.d(L.don(g=>this._viewer.keyDownEvent.emit(g)));const m=this.dv(c.DomElementEvent.create(t,"keyup"));this.d(m.don(g=>this._viewer.keyUpEvent.emit(g)));const _=this.dv(c.DomElementEvent.create(t,"wheel"));this.d(_.don(g=>this._viewer.wheelEvent.emit(g)))}}const Ni=class Ni extends c.Destroyable{constructor(t){super();p(this,"_forceRecreateEvent",this.dv(new c.Event));p(this,"_container",this.dv(c.react(void 0)));p(this,"_containerSize",this.dv(c.react(void 0)));p(this,"_editingEvent",this.disposeVar(new c.Event));p(this,"_status",this.dv(c.react("Raw")));p(this,"_statusLog",this.dv(c.react("")));p(this,"_statusContainer",this.dv(new bh(this)));p(this,"_useCustomInteraction",this.dv(c.react(!0)));p(this,"_resetInteractionEvent",this.dv(c.createNextAnimateFrameEvent(this.containerChanged,this._useCustomInteraction.changed,this._forceRecreateEvent)));p(this,"_interactionResetting",this.dv(new c.ObjResettingWithEvent(this._resetInteractionEvent,()=>{if(!(!this.container||!this._useCustomInteraction.value))return new Ud(this,this.container)})));p(this,"_viewerChanged",this.dv(new c.Event));p(this,"_containerResetEvent",this.dv(c.createNextAnimateFrameEvent(this.containerChanged,this._forceRecreateEvent)));p(this,"_containerResetting",this.dv(new c.ObjResettingWithEvent(this._containerResetEvent,()=>{if(this.container)return new v0(this.container,this)})));p(this,"_sceneObjectsMap",new Map);p(this,"_id");p(this,"_typeName");p(this,"_updateFuncReact",this.dv(c.react(void 0)));p(this,"_toDestroyFuncReact",this.dv(c.react(void 0)));p(this,"_statusInfo",Ni.defaults.statusInfo);p(this,"_navigationMode",this.dv(c.react("Map")));p(this,"_syncViewer",this.dv(c.react(void 0)));p(this,"_syncEventDon",this.dv(new c.ObjResettingWithEvent(this.syncViewerChanged,()=>{const t=this.syncViewer;if(t)return new f0(this,t)})));p(this,"_timeSyncdon",this.dv(new c.ObjResettingWithEvent(this.timeSyncChanged,()=>{if(this.timeSync)return new h0(this)})));p(this,"_hoverEvent",this.dv(new c.Event));p(this,"_pointerOverEvent",this.dv(new c.Event));p(this,"_pointerMoveEvent",this.dv(new c.Event));p(this,"_pointerDownEvent",this.dv(new c.Event));p(this,"_pointerUpEvent",this.dv(new c.Event));p(this,"_pointerOutEvent",this.dv(new c.Event));p(this,"_clickEvent",this.dv(new c.Event));p(this,"_dblclickEvent",this.dv(new c.Event));p(this,"_keyDownEvent",this.dv(new c.Event));p(this,"_keyUpEvent",this.dv(new c.Event));p(this,"_wheelEvent",this.dv(new c.Event));p(this,"_actived",this.dv(c.react(!1)));this._id=t.id??c.createGuid();const r=kd(t.container);if(r)this._container.value=Th(r),this._typeName=t.type,this._initName();else throw new Error("container is not defined");{const i=()=>{r&&(this.show??!0?r.style.display="block":r.style.display="none")};i(),this.d(this.showChanged.don(i))}{const i=this._sceneObjectsMap,s=()=>{for(let[a,l]of i.entries())if(!l&&a){const u=Ws.context.createEngineObject(a,this);u&&i.set(a,u)}},o=()=>{for(let[a,l]of i.entries())l&&!l.isDestroyed()&&l.destroy(),i.set(a,void 0)};this.d(o),this.d(this.viewerChanged.don(a=>{o(),a&&s()}))}{{const i=()=>{if(this.execOnceFuncStr)try{Function(`"use strict";return (${this.execOnceFuncStr})`)()(this)}catch(s){console.warn(`execOnceFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`)}};i(),this.d(this.execOnceFuncStrChanged.don(i))}{const i=()=>{if(this.updateFuncStr)try{this.updateFunc=Function(`"use strict";return (${this.updateFuncStr})`)()}catch(o){console.warn(`updateFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${o}`)}};i(),this.d(this.updateFuncStrChanged.don(i));let s;this.d(()=>s&&s.destroy()),this.d(this.updateFuncChanged.don(()=>{s&&s.cancel(),this.updateFunc&&(s=s||c.createAnimateFrame(),s.restart(void 0,o=>{this.updateFunc&&this.updateFunc(this,o)}))}))}{const i=()=>{try{this.toDestroyFunc=this.toDestroyFuncStr&&Function(`"use strict";return (${this.toDestroyFuncStr})`)()||void 0}catch(s){console.warn(`toDestroyFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`),this.toDestroyFunc=void 0}};i(),this.d(this.toDestroyFuncStrChanged.don(i)),this.d(this.toDestroyEvent.don(()=>{this.toDestroyFunc&&this.toDestroyFunc(this)}))}}}forceRecreate(){this._forceRecreateEvent.emit()}get container(){return this._container.value}set container(t){this._container.value=t}set containerOrId(t){if(typeof t=="string"){const r=document.getElementById(t);r&&r instanceof HTMLDivElement?this._container.value=Th(r):console.warn("containerOrId warn: !(container instanceof HTMLDivElement)")}else t instanceof HTMLDivElement?this._container.value=Th(t):console.warn("containerOrId warn: setting container failed!")}get containerChanged(){return this._container.changed}get containerSize(){return this._containerSize.value}set containerSize(t){this._containerSize.value=t}get containerSizeChanged(){return this._containerSize.changed}get editingEvent(){return this._editingEvent}get status(){return this._status.value}get statusChanged(){return this._status.changed}setStatus(t){this._status.value=t}get statusLog(){return this._statusLog.value}get statusLogChanged(){return this._statusLog.changed}setStatusLog(t){this._statusLog.value=t}get useCustomInteraction(){return this._useCustomInteraction.value}set useCustomInteraction(t){this._useCustomInteraction.value=t}get viewerChanged(){return this._viewerChanged}get containerResetEvent(){return this._containerResetEvent}get subContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.subContainer}get subContainerChanged(){return this._containerResetting.objChanged}get overlayContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.overlayContainer}get overlayContainerChanged(){return this._containerResetting.objChanged}get sceneObjectsMap(){return this._sceneObjectsMap}get sceneObjects(){return this._sceneObjectsMap.keys()}getEngineObject(t){return this.sceneObjectsMap.get(t)}add(...t){for(let r of t)if(!this.has(r)){const i=Ws.context.createEngineObject(r,this);i&&this._sceneObjectsMap.set(r,i),r.viewerAttached.emit(this)}}delete(...t){for(let r of t)if(this.has(r)){const i=this._sceneObjectsMap.get(r);i&&i.destroy(),this._sceneObjectsMap.delete(r),r.viewerDetached.emit(this)}}disposableAdd(...t){return this.add(...t),()=>this.delete(...t)}disAdd(...t){return this.disposableAdd(...t)}has(t){return this._sceneObjectsMap.has(t)}clearAllSceneObjects(){for(let t of this.sceneObjects)this.delete(t)}get id(){return this._id}set id(t){console.warn("ESViewer id is readonly")}get typeName(){return this._typeName}_initName(){this.name=`${this.typeName}_${(""+this.id).slice(-4)}`}get defaultProps(){return Ni.createDefaultProps()}_getJson(t=!0){const r={id:this.id,type:this.typeName};for(let i of Object.keys(this.defaultProps))if(t){let s,o=this.defaultProps[i];o instanceof c.ReactiveVariable?s=o.equals(this[i]):s=o===this[i],s||(r[i]=this[i])}else r[i]=this[i];return r}_setJson(t,r,i){if(!(t instanceof Object)||t.type&&t.type!==this.typeName){console.error(`value.type && value.type${t.type} !== this.typeName${this.typeName}`);return}t.id&&t.id!==this.id&&console.warn(`value.id === undefined || value.id${t.id} !== this.id(${this.id})`);const s=r||[];s.push("id","type");const o=Object.keys(this.defaultProps).filter(a=>!s.includes(a));for(let a of o)if(a in t)this[a]=t[a]===null?void 0:t[a];else if(!(i??!1)){let l=this.defaultProps[a];l instanceof c.ReactiveVariable&&(l=l.value),this[a]=l}}get json(){return this._getJson()}set json(t){this._setJson(t,["devTags"])}get updateFunc(){return this._updateFuncReact.value}set updateFunc(t){this._updateFuncReact.value=t}get updateFuncChanged(){return this._updateFuncReact.changed}get toDestroyFunc(){return this._toDestroyFuncReact.value}set toDestroyFunc(t){this._toDestroyFuncReact.value=t}get toDestroyFuncChanged(){return this._toDestroyFuncReact.changed}get navigationMode(){return this._navigationMode.value}get navigationModeChanged(){return this._navigationMode.changed}getNavigationMode(){return this._navigationMode.value}getEngineType(){return this._typeName}get syncViewer(){return this._syncViewer.value}set syncViewer(t){this._syncViewer.value=t}get syncViewerChanged(){return this._syncViewer.changed}syncOtherViewer(t){t&&t.syncViewer&&(t.syncViewer=void 0),t===this?this._syncViewer.value=void 0:this._syncViewer.value=t}setCurrentTime(t){try{this.currentTime=typeof t=="string"?Date.parse(t):t}catch(r){console.warn(`时间格式不正确! value: ${t} error: ${r}`)}}async getVersion(){return window.g_XE3CopyRights??{}}get hoverEvent(){return this._hoverEvent}get pointerOverEvent(){return this._pointerOverEvent}get pointerMoveEvent(){return this._pointerMoveEvent}get pointerDownEvent(){return this._pointerDownEvent}get pointerUpEvent(){return this._pointerUpEvent}get pointerOutEvent(){return this._pointerOutEvent}get clickEvent(){return this._clickEvent}get dblclickEvent(){return this._dblclickEvent}get keyDownEvent(){return this._keyDownEvent}get keyUpEvent(){return this._keyUpEvent}get wheelEvent(){return this._wheelEvent}getProperties(t){return[new z("ESViewer","ESViewer",[new ie("强制刷新","重载",[],()=>this.forceRecreate(),[]),new k("debug","debug",!0,!1,[this,"debug"],Ni.defaults.debug),new k("是否可见","是否可见",!0,!1,[this,"show"]),new Y("位置点单位","lonLatFormat",!0,!1,[this,"lonLatFormat"],[["度","DECIMAL_DEGREE"],["度分","DEGREES_DECIMAL_MINUTES"],["度分秒","SEXAGESIMAL_DEGREE"]]),new k("是否开启文字避让","textAvoidance",!0,!1,[this,"textAvoidance"],!1),new J("ionAccessToken","ionAccessToken",!1,!1,[this,"ionAccessToken"]),new S("时钟","时钟",!1,!1,[this,"currentTime"]),new k("globeShow","globeShow",!0,!1,[this,"globeShow"]),new k("atmosphere","atmosphere",!1,!1,[this,"atmosphere"])]),new S("飞行像素范围","默认飞行定位时对象包围球所占的屏幕像素大小",!1,!1,[this,"flyToBoundingSize"]),new S("编辑高度偏移","编辑时默认的高度偏移",!1,!1,[this,"editingHeightOffset"]),new z("Globe","Globe",[new G("地形着色器","可以设置地形全局坡度,坡向,高程带,等高线等",!1,!1,[this,"terrainShader"])])]}get actived(){return this._actived.value}set actived(t){this._actived.value=t}get activedChanged(){return this._actived.changed}};p(Ni,"context",new y0),p(Ni,"register",Ni.context.register.bind(Ni.context)),p(Ni,"defaults",{show:!0,debug:!1,statusInfo:{fps:0,position:[0,0,0],rotation:[0,0,0],length:0},terrainShader:{slope:{show:!1},aspect:{show:!1},elevationRamp:{show:!1,minHeight:-414,maxHeight:8777,color:[]},elevationContour:{show:!1,color:[1,0,0,1],spacing:150,width:2}},globeShow:!0});let Zn=Ni;(n=>{n.createBaseProps=()=>({name:"未命名场景对象",extras:c.reactJson(void 0),devTags:c.reactArrayWithUndefined(void 0),debug:void 0,show:void 0,opacity:void 0,zIndex:void 0,useDefaultStatusDiv:!0,execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0}),n.createCommonProps=()=>({globeShow:!0,ionAccessToken:"",lonLatFormat:"DECIMAL_DEGREE",fov:60,textAvoidance:!1,flyToBoundingSize:256,hoverTime:2,currentTime:Date.now(),simulationTime:Date.now(),timeSync:!1,rain:0,snow:0,cloud:0,fog:0,depthOfField:0,atmosphere:!0,editingPointSize:void 0,editingPointColor:c.reactArrayWithUndefined(void 0),editingAuxiliaryPointColor:c.reactArrayWithUndefined(void 0),editingLineWidth:void 0,editingLineColor:c.reactArrayWithUndefined(void 0),editingAxisSize:void 0,editingAuxiliaryPointSize:void 0,editingHeightOffset:0,editingLineShow:!0,editingEventListening:!0,terrainShader:n.defaults.terrainShader}),n.createDefaultProps=()=>({...(0,n.createBaseProps)(),...(0,n.createCommonProps)()})})(Zn||(Zn={})),c.extendClassProps(Zn.prototype,Zn.createDefaultProps);function Gd(n,e){const t=n._lastCameraInfo;if(t){const r=e.viewerChanged.don(i=>{if(!i||!t)return;const{position:s,rotation:o}=t;e.flyIn(s,o,0),n._lastCameraInfo=void 0,r()})}}const _0=n=>{const e=Zn.createCommonProps(),t={};try{Object.keys(e).forEach(r=>{t[r]=n[r]})}catch(r){console.warn(r)}return t},Wd=(n,e)=>{const t=Zn.createCommonProps();try{Object.keys(t).forEach(r=>{n[r]=e[r]})}catch(r){console.warn(r)}};class w0 extends c.Destroyable{constructor(t){super();p(this,"_viewersChanged",this.disposeVar(new c.Event));p(this,"_viewers",new Set);p(this,"_viewersToChange",this.dv(new c.Event));this._sceneObjectsManager=t,this.d(()=>{for(const r of this._viewers)this.destroyViewer(r);this._viewers.clear()}),this.viewers.forEach(r=>{const i=this._sceneObjectsManager.sceneObjects;r.add(...i)}),this.d(()=>{const r=this._sceneObjectsManager.sceneObjects;this.viewers.forEach(i=>{i.delete(...r)})}),this.d(this._sceneObjectsManager.sceneObjectsToChange.don((r,i)=>{this.viewers.forEach(s=>{i.forEach(o=>{Yi(s.devTags,o.devTags)&&(s.has(o)?console.warn(`${s.typeName}中已存${o.typeName},检查逻辑是否有问题!`):s.add(o))}),r.forEach(o=>{Yi(s.devTags,o.devTags)&&(s.has(o)?s.delete(o):console.warn(`${s.typeName}中不存在${o.typeName},检查逻辑是否有问题!`))})}),i.length>0&&i.forEach(s=>{s.d(s.devTagsChanged.don(()=>{this.viewers.forEach(o=>{o.has(s)&&o.delete(s),console.log("sceneObjectsToChange",o.devTags,s.devTags,Yi(o.devTags,s.devTags)),Yi(o.devTags,s.devTags)&&(o.has(s)?console.warn(`${o.typeName}中已存${s.typeName},检查逻辑是否有问题!`):o.add(s))})}))})})),this.d(this.viewersChanged.don((r,i)=>{const s=this._sceneObjectsManager.sceneObjects;i.forEach(o=>{for(let a of s)Yi(o.devTags,a.devTags)&&(o.has(a)?console.warn(`${o.typeName}中已存${a.typeName},检查逻辑是否有问题!`):o.add(a))}),r.forEach(o=>{for(let a of s)Yi(o.devTags,a.devTags)&&(o.has(a)?o.delete(a):console.warn(`${o.typeName}中不存在${a.typeName},检查逻辑是否有问题!`))}),i.length>0&&i.forEach(o=>{o.d(o.devTagsChanged.don(()=>{o.clearAllSceneObjects();const a=this._sceneObjectsManager.sceneObjects;for(let l of a)console.log("viewersChanged",o.devTags,l.devTags,Yi(o.devTags,l.devTags)),Yi(o.devTags,l.devTags)&&(o.has(l)?console.warn(`${o.typeName}中已存${l.typeName},检查逻辑是否有问题!`):o.add(l))}))})}))}get viewersChanged(){return this._viewersChanged}get viewers(){return this._viewers}getViewers(){return[...this._viewers]}get viewersToChange(){return this._viewersToChange}createViewer(t){const r=Zn.context.createViewer(t);return this._viewers.add(r),this._viewersChanged.emit([],[r]),r}destroyViewer(t){return t.isDestroyed()?!0:(this._viewers.delete(t),this._viewersChanged.emit([t],[]),t.destroy(),t.isDestroyed())}}function qd(n,e,t,r){if(t)r.currentActiveEditing=[n,e];else if(r.currentActiveEditing){const[i,s]=r.currentActiveEditing;i===n&&s===e&&(t||(r.currentActiveEditing=void 0))}}const E0=["editing","positionEditing","locationEditing","pointEditing","rotationEditing"];class S0 extends c.Destroyable{constructor(e,t){super(),this._sceneObject=e;const r=this._sceneObject;for(let i of E0){const s=i+"Changed",o=r[s];if(o){{const a=r[i];qd(r,i,a,t)}this.dispose(o.disposableOn(a=>qd(r,i,a,t)))}}}get sceneObject(){return this._sceneObject}}class C0 extends c.Destroyable{constructor(){super();p(this,"_currentActiveEditing",this.disposeVar(c.reactArrayWithUndefined(void 0)));p(this,"_currentActiveEditingLastChangedTime",0);this.dispose(this._currentActiveEditing.changed.disposableOn((t,r)=>{if(this._currentActiveEditingLastChangedTime=Date.now(),r){const[i,s]=r;i[s]===!0&&(i[s]=!1)}if(t){const[i,s]=t;i[s]=!0}})),j.context.sceneObjCreatedEvent.don(t=>{t.dv(new S0(t,this))})}get currentActiveEditing(){return this._currentActiveEditing.value}set currentActiveEditing(t){this._currentActiveEditing.value=t}get currentActiveEditingChanged(){return this._currentActiveEditing.changed}get currentActiveEditingLastChangedTime(){return this._currentActiveEditingLastChangedTime}}class xs extends c.Destroyable{constructor(...t){super();p(this,"_drgm",this.dv(new jp));p(this,"_sobjm",this.dv(new c0));p(this,"_vrm",this.dv(new w0(this._sobjm)));p(this,"_sceneObjectEditingManager",this.disposeVar(new C0));p(this,"_activeViewer",this.dv(c.react(void 0)));p(this,"_syncOtherViewersToActived",this.dv(c.react(!1)));p(this,"_cmrvm",this.createSceneObjectFromClass(bs));p(this,"_cmrvmdon",this.d(()=>this._cmrvm&&this.destroySceneObject(this._cmrvm)));p(this,"_asset",{type:"ESObjectsManager",version:"0.1.0",createdTime:"",modifiedTime:"",name:"未命名项目"});p(this,"_sceneTree",this.dv(new fu("default",this.dragstartDataMananger,24,this)));p(this,"_propUiTreeManager",this.dv(new bl(24)));p(this,"_sceneTreeMap",new Map);p(this,"_viewerCreatedEvent",this.dv(new c.Event));p(this,"_lastCameraInfo");p(this,"_lastActiveViewerJson");p(this,"syncEvent",this.dv(c.createNextAnimateFrameEvent(this.activeViewerChanged,this.syncOtherViewersToActivedChanged)));p(this,"_syncEventDon",this.d(this.syncEvent.don(()=>{const t=this.syncOtherViewersToActived;this.viewers.forEach(r=>{t?r.syncOtherViewer(this.activeViewer):r.syncOtherViewer(void 0)})})));p(this,"_player",this.createSceneObjectFromClass(Ji));p(this,"_playerdon",this.d(()=>this._player&&this.destroySceneObject(this._player)));p(this,"_esPlyarAndPathTime",this.dv(new o0(this)));p(this,"_pathAnimationManager",this.dv(new l0(this)))}static get envs(){return j.context.environmentVariables}getSceneObjectById(t){return j.getSceneObjectById(t)}getSceneObject(t){return j.getSceneObject(t)}get $refs(){return j.$refs}get dragstartDataMananger(){return this._drgm}get sceneObjectsManager(){return this._sobjm}get viewers(){return this._vrm.viewers}getViewers(){return this._vrm.getViewers()}get sceneObjectEditingManager(){return this._sceneObjectEditingManager}get activeViewer(){return this._activeViewer.value}set activeViewer(t){this._activeViewer.value=t}get activeViewerChanged(){return this._activeViewer.changed}get syncOtherViewersToActived(){return this._syncOtherViewersToActived.value}set syncOtherViewersToActived(t){this._syncOtherViewersToActived.value=t}get syncOtherViewersToActivedChanged(){return this._syncOtherViewersToActived.changed}get cameraViewsManager(){return this._cmrvm}get json(){var f;const t=this._asset.createdTime||new Date().toISOString(),r=new Date().toISOString(),i=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:t,modifiedTime:r,name:i},a=this.sceneTree.json,l=this._cmrvm.views,u=[...this._vrm.viewers].map(d=>d.json),h=(f=this.activeViewer)==null?void 0:f.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:h}}set json(t){try{if(!t.asset)return;if(!t.asset.type||t.asset.type!=="ESObjectsManager"){console.warn("json装配失败! asset.type 不存在或者不是'ESObjectsManager'");return}if(this._asset.createdTime=t.asset&&t.asset.createdTime||new Date().toISOString(),this._asset.modifiedTime=t.asset&&t.asset.modifiedTime||"",this._asset.name=t.asset&&t.asset.name||"未命名项目",this._asset.version=t.asset&&t.asset.version||"0.1.0",t.sceneTree&&(this.sceneTree.json=t.sceneTree),t.viewCollection&&(this._cmrvm.views=t.viewCollection),!t.viewers||!Array.isArray(t.viewers)){console.warn("viewers is not an array or does not exist !");return}if(this._vrm.viewers.size===0||t.viewers.length===0){console.warn("viewers is empty !");return}this._vrm.viewers.forEach(r=>{const i=t.viewers.find(s=>s.id===r.id);i&&(r.json=i)})}catch(r){console.error(`ESObjectsManager解析json数据时发生错误! error: ${r}`)}}get sceneTree(){return this._sceneTree}get jsonLoadingEvent(){return this._sceneTree.jsonLoadingEvent}get propUiTreeManager(){return this._propUiTreeManager}propTreeCallback(t){return u0(this,t)}getSceneTrees(){return[...this._sceneTreeMap.values()]}getSceneTree(t="default"){if(t==="default")return this._sceneTree;if(!this._sceneTreeMap.has(t)){console.warn(`id为${t}的SceneTree不存在!`);return}return this._sceneTreeMap.get(t)}createSceneTree(t,r=24){if(this._sceneTreeMap.has(t)||t==="default")console.warn(`id为${t}的SceneTree已存在!`);else{const i=this.dv(new fu(t,this.dragstartDataMananger,r,this));this._sceneTreeMap.set(t,i)}return this.getSceneTree(t)}get viewerCreatedEvent(){return this._viewerCreatedEvent}createViewer(t){const r=this._vrm.createViewer(t);this.activeViewer||(this.activeViewer=r);const i=this.d(r.viewerChanged.don(s=>{s&&(this._viewerCreatedEvent.emit(r),i())}));return r}destroyViewer(t){return this._activeViewer.value===t&&(this._activeViewer.value=void 0),this._vrm.destroyViewer(t)}switchViewer(t,r=!0,i=!0,s=!0){var u;this.activeViewer&&this.activeViewer.getNavigationMode()!=="Map"&&this.activeViewer.changeToMap(),!this._lastCameraInfo&&r&&(this._lastCameraInfo=(u=this.activeViewer)==null?void 0:u.getCurrentCameraInfo()),!this._lastActiveViewerJson&&i&&(this._lastActiveViewerJson=this.activeViewer?_0(this.activeViewer):void 0),s&&this.activeViewer&&this.destroyViewer(this.activeViewer);const o=t.id,a=o?[...this.getViewers()].find(h=>h.id===o):[...this.getViewers()].find(h=>h.typeName===t.type);if(a)if(o&&a.typeName!==t.type)console.warn(`id为${o}的viewer的typeName和option.type${t.type}不相同!,虽然id一致但是typeName不同,所以会销毁并创建新的viewer`),this.destroyViewer(a);else return console.log("ESViewer exists, will be used"),r&&Gd(this,a),i&&this._lastActiveViewerJson&&(Wd(a,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),a.container===kd(t.container)?(a.containerOrId=t.container,a.forceRecreate()):a.containerOrId=t.container,this.activeViewer=a,a;console.log("No ESViewer exists, will be created");const l=this.createViewer(t);return r&&Gd(this,l),i&&this._lastActiveViewerJson&&(Wd(l,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),this.activeViewer=l,l}switchToCesiumViewer(...t){if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)){const{container:r,viewSync:i,attributeSync:s,destroy:o,id:a}=t[0];return this.switchViewer({type:"ESCesiumViewer",container:r,id:a},i??!0,s??!0,o??!0)}else if(typeof t[0]=="string"||t[0]instanceof HTMLDivElement){const r={container:t[0],viewSync:t[1]??!0,attributeSync:t[2]??!0,destroy:t[3]??!0,id:t[4]},{container:i,viewSync:s,attributeSync:o,destroy:a,id:l}=r;return this.switchViewer({type:"ESCesiumViewer",container:i,id:l},s,o,a)}}switchToUEViewer(...t){let r,i={viewSync:!0,attributeSync:!0,destroy:!0};if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("uri")){const{container:l,uri:u,app:h,token:f,viewSync:d,attributeSync:v,destroy:w,id:I}=t[0];r={type:"ESUeViewer",container:l,id:I,options:{uri:u,app:h,token:f}},i={viewSync:d??!0,attributeSync:v??!0,destroy:w??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("ws")){const{container:l,ws:u,esmsg:h,viewSync:f,attributeSync:d,id:v,destroy:w}=t[0];r={type:"ESUeViewer",container:l,id:v,options:{ws:u,esmsg:h}},i={viewSync:f??!0,attributeSync:d??!0,destroy:w??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("project")){const{container:l,project:u,baseUrl:h,viewSync:f,attributeSync:d,id:v,destroy:w}=t[0];r={type:"ESUeViewer",container:l,id:v,options:{project:u,baseUrl:h}},i={viewSync:f??!0,attributeSync:d??!0,destroy:w??!0}}else(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?(r={type:"ESUeViewer",container:t[0],id:t[6],options:{ws:t[1],esmsg:t[2]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}):typeof t[1]=="string"&&t[1].startsWith("http")?(r={type:"ESUeViewer",container:t[0],id:t[7],options:{uri:t[1],app:t[2],token:t[3]??void 0}},i={viewSync:t[4]??!0,attributeSync:t[5]??!0,destroy:t[6]??!0}):(r={type:"ESUeViewer",container:t[0],id:t[6],options:{project:t[1],baseUrl:t[2]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}));if(!r)throw new Error("参数错误");const{viewSync:s,attributeSync:o,destroy:a}=i;return this.switchViewer(r,s,o,a)}createCesiumViewer(...t){let r;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?r={...t[0],type:"ESCesiumViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(r={container:t[0],options:t[1]??void 0,id:t[2]??void 0,type:"ESCesiumViewer"}),!r)throw new Error("参数错误");return this.createViewer(r)}createUeViewer(...t){let r;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?r={...t[0],type:"ESUeViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?r={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{ws:t[1],esmsg:t[2]??void 0}}:typeof t[1]=="string"&&t[1].startsWith("http")?r={type:"ESUeViewer",container:t[0],id:t[4]??void 0,options:{uri:t[1],app:t[2],token:t[3]??void 0}}:r={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{project:t[1],baseUrl:t[2]??void 0}}),!r)throw new Error("参数错误");return this.createViewer(r)}createSceneObject(t,r){return this._sobjm.createSceneObject(t,r)}createSceneObjectFromClass(t,r){return this._sobjm.createSceneObjectFromClass(t,r)}createSceneObjectFromJson(t){return this._sobjm.createSceneObjectFromJson(t)}destroySceneObject(t){const r=this._sobjm.deleteSceneObject(t);return t.destroy(),r}destroyAllSceneObjects(){const t=[...this._sobjm.sceneObjects];for(let r of t)r!=this._player&&r!=this._cmrvm&&this.destroySceneObject(r)}get player(){return this._player}get esPlyarAndPathTime(){return this._esPlyarAndPathTime}get pathAnimationManager(){return this._pathAnimationManager}}p(xs,"getSceneObjById",j.context.getSceneObjectById.bind(j.context)),p(xs,"getEnv",j.context.getEnv.bind(j.context)),p(xs,"setEnv",j.context.setEnv.bind(j.context)),(n=>{n.createDefaultProps=()=>({})})(xs||(xs={})),c.extendClassProps(xs.prototype,xs.createDefaultProps);function P0(){const n=navigator.userAgent;let e="Unknown";/Windows/.test(n)?e="Windows":/Macintosh/.test(n)?e="MacOS":/Linux/.test(n)?e="Linux":/Android/.test(n)?e="Android":/iOS|iPhone|iPad|iPod/.test(n)&&(e="iOS");let t="Unknown";return/x64|x86_64|Win64|WOW64/.test(n)?t="x64":/x86|i686|Win32/.test(n)?t="x86":/arm64|aarch64/.test(n)?t="arm64":/arm/.test(n)&&(t="arm"),{os:e.toLocaleLowerCase(),arch:t.toLocaleLowerCase()}}const I0=Date.now();function Xd(n){const{os:e,arch:t}=P0(),r={version:n.version,commitdate:n.date,commitId:n.commitId,runningTime:(Date.now()-I0)/1e3/60|0,date:new Date().toLocaleString(),href:window.location.href,os:e,arch:t},s={method:"GET",headers:new Headers,redirect:"follow"},o=window.encodeURIComponent(JSON.stringify(r));fetch(`https://account.bjxbsj.cn/api/product/record?product=EarthSDKJS&content=${o}`,s).then(a=>a.text()).then(a=>console.log(a)).catch(a=>console.log("error",a))}P.copyright=void 0;try{const n="earthsdk3",e="3.0.7-beta.3",t="2025-05-22T07:06:28.000Z",r="北京西部世界科技有限公司",i="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="b7988d4abb009d1c139795520219336dac2ff06a",a=((Date.now()-1747897588e3)/36e5).toFixed(1),l=`%c🌏 ${n}%c ${e}.${s.slice(0,8)}.${t} (距今${a}个小时)
547
+ `,d0='<svg t="1747028305766" class="icon" viewBox="0 0 1032 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="3881" width="40" height="40"><path d="M0.1536 547.700736c-0.205824-0.187392-0.205824-0.49152 0.008192-0.68608l80.672768-73.590784a0.63488 0.63488 0 0 1 0.7936-0.029696l263.043072 203.0336c0.667648 0.515072 1.738752 0.498688 2.393088-0.038912l609.191936-500.133888a0.605184 0.605184 0 0 1 0.768 0.022528l74.84928 67.229696a0.454656 0.454656 0 0 1-0.002048 0.685056l-685.234176 618.19904a1.14688 1.14688 0 0 1-1.518592-0.012288L0.1536 547.700736z" fill="#ffffff" p-id="3882"></path></svg>',g0='<svg t="1747028398107" class="icon" viewBox="0 0 1024 1024" version="1.1" xmlns="http://www.w3.org/2000/svg" p-id="1146" width="40" height="40"><path d="M415.744006 1.033277A0.992256 0.992256 0 0 1 416.747526 0.000061h189.5045c0.569344 0 1.017856 0.45056 1.001472 1.033216l-21.227518 754.803667a1.062912 1.062912 0 0 1-1.05984 1.032192h-146.933752c-0.569344 0-1.04448-0.45056-1.059839-1.032192L415.744006 1.033277zM511.510528 1024c-52.595709 0-95.231994-39.866366-95.231994-89.043963 0-49.176573 42.636285-89.042939 95.231994-89.042938 52.594685 0 95.231994 39.866366 95.231994 89.042938 0 49.177597-42.637309 89.043963-95.231994 89.043963z" fill="#ffffff" p-id="1147"></path></svg>',Ja=class Ja extends c.Destroyable{constructor(e){super();const t=()=>{const r=this.dv(new Ds);this.d(c.track([r,"show"],[e,"useDefaultStatusDiv"]));{const i=()=>{r.show=(e.useDefaultStatusDiv??!0)&&e.status!=="Created"};i(),this.d(e.useDefaultStatusDivChanged.don(i)),this.d(e.statusChanged.don(i)),r.cssText="width:100%;height:100%;position:absolute;left:0px;top:0px;"}e.add(r),this.d(()=>e.delete(r)),r.instanceClass=class extends c.Destroyable{constructor(o,a,l){super();p(this,"_div",document.createElement("div"));if(this._subContainer=o,!l)return;this._subContainer.appendChild(this._div),this.d(()=>this._subContainer.removeChild(this._div));{const w=()=>{a.show?this._div.style.opacity="1":this._div.style.opacity="0"};w(),this.d(a.showChanged.don(w))}let u,h,f,d,v;this._div.style.pointerEvents="none",this._div.style.position="absolute",this._div.style.width="100%",this._div.style.height="100%",this._div.style.backgroundColor="rgba(0, 0, 0, 0.4)",this._div.style.zIndex="100",this._div.style.transition="opacity 2s",u=document.createElement("div"),this._div.appendChild(u),u.style.width="auto",u.style.position="absolute",u.style.left="50%",u.style.top="50%",u.style.transform="translate(-50%,-50%)",u.style.background="rgba(120, 120, 0, 0.7)",u.style.color="white",u.style.fontSize="10px",u.style.background="none",u.style.display="flex",u.style.justifyContent="center",u.style.alignItems="center",h=document.createElement("div"),u.appendChild(h),h.style.pointerEvents="none",h.style.display="block",h.style.width="40px",h.innerHTML=Ja.defaultsSvg.loadingSvg,h.style.filter="drop-shadow(0px 0px 1px black)",f=document.createElement("div"),u.appendChild(f),f.style.pointerEvents="none",f.style.marginLeft="10px",f.style.display="flex",f.style.flexFlow="column",f.style.maxWidth="300px",d=document.createElement("div"),f.appendChild(d),d.style.fontSize="14px",d.style.fontWeight="800",d.style.marginBottom="5px",d.style.textShadow="0 0 2px black",v=document.createElement("div"),f.appendChild(v),v.style.fontWeight="400",v.style.textShadow="0 0 2px black";{const w=()=>{let T="Raw";l.status==="Raw"?T="初始状态":l.status==="Creating"?T="正在创建":l.status==="Created"?T="创建完成":l.status==="Error"?T="创建失败":l.status==="Reconnecting"&&(T="重新连接"),d.innerText=`${T}(${l.status})`,v.innerText=`${l.statusLog}`,(l.status==="Creating"||l.status==="Reconnecting")&&(h.innerHTML=Ja.defaultsSvg.loadingSvg),l.status==="Created"&&(h.innerHTML=Ja.defaultsSvg.successSvg),l.status==="Error"&&(h.innerHTML=Ja.defaultsSvg.warnSvg)};w();const I=this.dv(c.createNextAnimateFrameEvent(l.statusLogChanged,l.statusChanged));this.d(I.don(w))}}update(){const o=255*Math.random()|0,a=255*Math.random()|0,l=255*Math.random()|0;this._div.style.background=`rgba(${o}, ${a}, ${l}, 0.8)`}}};this.d(e.containerChanged.don(()=>{t()}))}};p(Ja,"defaultsSvg",{loadingSvg:p0,successSvg:d0,warnSvg:g0});let bh=Ja;class m0 extends c.Destroyable{constructor(e,t,r){super(),this._subContainer=e,this._overlayContainer=t,this._viewer=r;const i=this._subContainer,s=this._overlayContainer,o=this._viewer,a=()=>{const h=o.zIndex??"";i.style.zIndex=h,s.style.zIndex=h};a(),this.d(o.zIndexChanged.don(a));const l=()=>{i.style.display=o.show??!0?"block":"none"};l(),this.d(o.showChanged.don(l));const u=()=>{i.style.opacity=`${o.opacity??1}`};u(),this.d(o.opacityChanged.don(u))}}function dc(n){let e=c.getExtProp(n,"_relativeContainer");return e||(e=document.createElement("div"),e.style.position="relative",e.style.width="100%",e.style.height="100%",e.style.padding="0",e.style.margin="0",n.appendChild(e),c.setExtProp(n,"_relativeContainer",e)),e}class v0 extends c.Destroyable{constructor(t,r){super();p(this,"_subContainer",document.createElement("div"));p(this,"_overlayContainer",document.createElement("div"));p(this,"_containerStyleController");this._container=t,this._viewer=r,this._containerStyleController=this.dv(new m0(this._subContainer,this._overlayContainer,this._viewer));const{subContainer:i,overlayContainer:s}=this;i.tabIndex=-1,i.style.outline="none",i.style.width="100%",i.style.height="100%",i.onpointerdown=()=>i.focus(),s.style.position="relative",s.setAttribute("earthsdk3","earthsdk3-overlayContainer"),i.setAttribute("earthsdk3","earthsdk3-subContainer"),dc(this._container).appendChild(i),this.d(()=>dc(this._container).removeChild(i)),dc(this._container).appendChild(s),this.d(()=>dc(this._container).removeChild(s))}get subContainer(){return this._subContainer}get overlayContainer(){return this._overlayContainer}get containerStyleController(){return this._containerStyleController}get container(){return this._container}}class y0 extends c.Destroyable{constructor(){super(...arguments);p(this,"registerObjsMap",new Map)}register(t,r){return this.registerObjsMap.has(t)&&console.warn(`register warn:${t}已经被注册,再次注册会覆盖。`),this.registerObjsMap.set(t,r),t}getViewerConstructor(t){const r=this.registerObjsMap.get(t);if(!r){console.warn(`未找到${t}类!`);return}return r}createViewer(t){const r=t.type,i=this.getViewerConstructor(r);if(!i)throw new Error(`没有找到类型为${r}的Viewer构造器!`);return new i(t)}}class Ud extends c.Destroyable{constructor(e,t,r=!1,i=!1){if(super(),this._viewer=e,!t)throw new Error("ViewerCustomInteraction: container is null");const s=this.dv(c.DomElementEvent.create(t,"pointerdown")),o=this.dv(c.DomElementEvent.create(t,"pointermove")),a=this.dv(c.DomElementEvent.create(t,"pointerup")),l=this.dv(c.DomElementEvent.create(t,"pointerout")),u=this.dv(c.DomElementEvent.create(t,"pointerover")),h=this.dv(new c.PointerClick),f=this.dv(new c.PointerHover),d=()=>{const g=this._viewer.hoverTime*1e3;f.delayTime=g};this.d(this._viewer.hoverTimeChanged.don(()=>{d()})),this.d(s.don(g=>h.pointerDown(g))),this.d(o.don(g=>h.pointerMove(g))),this.d(a.don(g=>h.pointerUp(g))),this.d(l.don(g=>h.pointerOut(g))),this.d(s.don(g=>f.pointerDown(g))),this.d(o.don(g=>f.pointerMove(g))),this.d(a.don(g=>f.pointerUp(g))),this.d(l.don(g=>f.pointerOut(g)));const{x:v,y:w}=t.getBoundingClientRect(),I=i?v:0,T=i?w:0;this.d(f.hoverEvent.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.hoverEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(h.clickEvent.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.clickEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(h.dbclickEvent.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);g.button===0&&this._viewer.dblclickEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(s.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);g.button===0&&this._viewer.pointerDownEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(a.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);g.button===0&&this._viewer.pointerUpEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(o.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.pointerMoveEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(u.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.pointerOverEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})})),this.d(l.don(g=>{const[y,E]=c.getDomEventCurrentTargetPos(g,r);this._viewer.pointerOutEvent.emit({screenPosition:[y+I,E+T],pointerEvent:g})}));const L=this.dv(c.DomElementEvent.create(t,"keydown"));this.d(L.don(g=>this._viewer.keyDownEvent.emit(g)));const m=this.dv(c.DomElementEvent.create(t,"keyup"));this.d(m.don(g=>this._viewer.keyUpEvent.emit(g)));const _=this.dv(c.DomElementEvent.create(t,"wheel"));this.d(_.don(g=>this._viewer.wheelEvent.emit(g)))}}const Ni=class Ni extends c.Destroyable{constructor(t){super();p(this,"_forceRecreateEvent",this.dv(new c.Event));p(this,"_container",this.dv(c.react(void 0)));p(this,"_containerSize",this.dv(c.react(void 0)));p(this,"_editingEvent",this.disposeVar(new c.Event));p(this,"_status",this.dv(c.react("Raw")));p(this,"_statusLog",this.dv(c.react("")));p(this,"_statusContainer",this.dv(new bh(this)));p(this,"_useCustomInteraction",this.dv(c.react(!0)));p(this,"_resetInteractionEvent",this.dv(c.createNextAnimateFrameEvent(this.containerChanged,this._useCustomInteraction.changed,this._forceRecreateEvent)));p(this,"_interactionResetting",this.dv(new c.ObjResettingWithEvent(this._resetInteractionEvent,()=>{if(!(!this.container||!this._useCustomInteraction.value))return new Ud(this,this.container)})));p(this,"_viewerChanged",this.dv(new c.Event));p(this,"_containerResetEvent",this.dv(c.createNextAnimateFrameEvent(this.containerChanged,this._forceRecreateEvent)));p(this,"_containerResetting",this.dv(new c.ObjResettingWithEvent(this._containerResetEvent,()=>{if(this.container)return new v0(this.container,this)})));p(this,"_sceneObjectsMap",new Map);p(this,"_id");p(this,"_typeName");p(this,"_updateFuncReact",this.dv(c.react(void 0)));p(this,"_toDestroyFuncReact",this.dv(c.react(void 0)));p(this,"_statusInfo",Ni.defaults.statusInfo);p(this,"_navigationMode",this.dv(c.react("Map")));p(this,"_syncViewer",this.dv(c.react(void 0)));p(this,"_syncEventDon",this.dv(new c.ObjResettingWithEvent(this.syncViewerChanged,()=>{const t=this.syncViewer;if(t)return new f0(this,t)})));p(this,"_timeSyncdon",this.dv(new c.ObjResettingWithEvent(this.timeSyncChanged,()=>{if(this.timeSync)return new h0(this)})));p(this,"_hoverEvent",this.dv(new c.Event));p(this,"_pointerOverEvent",this.dv(new c.Event));p(this,"_pointerMoveEvent",this.dv(new c.Event));p(this,"_pointerDownEvent",this.dv(new c.Event));p(this,"_pointerUpEvent",this.dv(new c.Event));p(this,"_pointerOutEvent",this.dv(new c.Event));p(this,"_clickEvent",this.dv(new c.Event));p(this,"_dblclickEvent",this.dv(new c.Event));p(this,"_keyDownEvent",this.dv(new c.Event));p(this,"_keyUpEvent",this.dv(new c.Event));p(this,"_wheelEvent",this.dv(new c.Event));p(this,"_actived",this.dv(c.react(!1)));this._id=t.id??c.createGuid();const r=kd(t.container);if(r)this._container.value=Th(r),this._typeName=t.type,this._initName();else throw new Error("container is not defined");{const i=()=>{r&&(this.show??!0?r.style.display="block":r.style.display="none")};i(),this.d(this.showChanged.don(i))}{const i=this._sceneObjectsMap,s=()=>{for(let[a,l]of i.entries())if(!l&&a){const u=Ws.context.createEngineObject(a,this);u&&i.set(a,u)}},o=()=>{for(let[a,l]of i.entries())l&&!l.isDestroyed()&&l.destroy(),i.set(a,void 0)};this.d(o),this.d(this.viewerChanged.don(a=>{o(),a&&s()}))}{{const i=()=>{if(this.execOnceFuncStr)try{Function(`"use strict";return (${this.execOnceFuncStr})`)()(this)}catch(s){console.warn(`execOnceFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`)}};i(),this.d(this.execOnceFuncStrChanged.don(i))}{const i=()=>{if(this.updateFuncStr)try{this.updateFunc=Function(`"use strict";return (${this.updateFuncStr})`)()}catch(o){console.warn(`updateFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${o}`)}};i(),this.d(this.updateFuncStrChanged.don(i));let s;this.d(()=>s&&s.destroy()),this.d(this.updateFuncChanged.don(()=>{s&&s.cancel(),this.updateFunc&&(s=s||c.createAnimateFrame(),s.restart(void 0,o=>{this.updateFunc&&this.updateFunc(this,o)}))}))}{const i=()=>{try{this.toDestroyFunc=this.toDestroyFuncStr&&Function(`"use strict";return (${this.toDestroyFuncStr})`)()||void 0}catch(s){console.warn(`toDestroyFuncStr不能转成函数!或者函数执行时错误!id: ${this.id} ${this.typeName} error: ${s}`),this.toDestroyFunc=void 0}};i(),this.d(this.toDestroyFuncStrChanged.don(i)),this.d(this.toDestroyEvent.don(()=>{this.toDestroyFunc&&this.toDestroyFunc(this)}))}}}forceRecreate(){this._forceRecreateEvent.emit()}get container(){return this._container.value}set container(t){this._container.value=t}set containerOrId(t){if(typeof t=="string"){const r=document.getElementById(t);r&&r instanceof HTMLDivElement?this._container.value=Th(r):console.warn("containerOrId warn: !(container instanceof HTMLDivElement)")}else t instanceof HTMLDivElement?this._container.value=Th(t):console.warn("containerOrId warn: setting container failed!")}get containerChanged(){return this._container.changed}get containerSize(){return this._containerSize.value}set containerSize(t){this._containerSize.value=t}get containerSizeChanged(){return this._containerSize.changed}get editingEvent(){return this._editingEvent}get status(){return this._status.value}get statusChanged(){return this._status.changed}setStatus(t){this._status.value=t}get statusLog(){return this._statusLog.value}get statusLogChanged(){return this._statusLog.changed}setStatusLog(t){this._statusLog.value=t}get useCustomInteraction(){return this._useCustomInteraction.value}set useCustomInteraction(t){this._useCustomInteraction.value=t}get viewerChanged(){return this._viewerChanged}get containerResetEvent(){return this._containerResetEvent}get subContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.subContainer}get subContainerChanged(){return this._containerResetting.objChanged}get overlayContainer(){var t;return(t=this._containerResetting.obj)==null?void 0:t.overlayContainer}get overlayContainerChanged(){return this._containerResetting.objChanged}get sceneObjectsMap(){return this._sceneObjectsMap}get sceneObjects(){return this._sceneObjectsMap.keys()}getEngineObject(t){return this.sceneObjectsMap.get(t)}add(...t){for(let r of t)if(!this.has(r)){const i=Ws.context.createEngineObject(r,this);i&&this._sceneObjectsMap.set(r,i),r.viewerAttached.emit(this)}}delete(...t){for(let r of t)if(this.has(r)){const i=this._sceneObjectsMap.get(r);i&&i.destroy(),this._sceneObjectsMap.delete(r),r.viewerDetached.emit(this)}}disposableAdd(...t){return this.add(...t),()=>this.delete(...t)}disAdd(...t){return this.disposableAdd(...t)}has(t){return this._sceneObjectsMap.has(t)}clearAllSceneObjects(){for(let t of this.sceneObjects)this.delete(t)}get id(){return this._id}set id(t){console.warn("ESViewer id is readonly")}get typeName(){return this._typeName}_initName(){this.name=`${this.typeName}_${(""+this.id).slice(-4)}`}get defaultProps(){return Ni.createDefaultProps()}_getJson(t=!0){const r={id:this.id,type:this.typeName};for(let i of Object.keys(this.defaultProps))if(t){let s,o=this.defaultProps[i];o instanceof c.ReactiveVariable?s=o.equals(this[i]):s=o===this[i],s||(r[i]=this[i])}else r[i]=this[i];return r}_setJson(t,r,i){if(!(t instanceof Object)||t.type&&t.type!==this.typeName){console.error(`value.type && value.type${t.type} !== this.typeName${this.typeName}`);return}t.id&&t.id!==this.id&&console.warn(`value.id === undefined || value.id${t.id} !== this.id(${this.id})`);const s=r||[];s.push("id","type");const o=Object.keys(this.defaultProps).filter(a=>!s.includes(a));for(let a of o)if(a in t)this[a]=t[a]===null?void 0:t[a];else if(!(i??!1)){let l=this.defaultProps[a];l instanceof c.ReactiveVariable&&(l=l.value),this[a]=l}}get json(){return this._getJson()}set json(t){this._setJson(t,["devTags"])}get updateFunc(){return this._updateFuncReact.value}set updateFunc(t){this._updateFuncReact.value=t}get updateFuncChanged(){return this._updateFuncReact.changed}get toDestroyFunc(){return this._toDestroyFuncReact.value}set toDestroyFunc(t){this._toDestroyFuncReact.value=t}get toDestroyFuncChanged(){return this._toDestroyFuncReact.changed}get navigationMode(){return this._navigationMode.value}get navigationModeChanged(){return this._navigationMode.changed}getNavigationMode(){return this._navigationMode.value}getEngineType(){return this._typeName}get syncViewer(){return this._syncViewer.value}set syncViewer(t){this._syncViewer.value=t}get syncViewerChanged(){return this._syncViewer.changed}syncOtherViewer(t){t&&t.syncViewer&&(t.syncViewer=void 0),t===this?this._syncViewer.value=void 0:this._syncViewer.value=t}setCurrentTime(t){try{this.currentTime=typeof t=="string"?Date.parse(t):t}catch(r){console.warn(`时间格式不正确! value: ${t} error: ${r}`)}}async getVersion(){return window.g_XE3CopyRights??{}}get hoverEvent(){return this._hoverEvent}get pointerOverEvent(){return this._pointerOverEvent}get pointerMoveEvent(){return this._pointerMoveEvent}get pointerDownEvent(){return this._pointerDownEvent}get pointerUpEvent(){return this._pointerUpEvent}get pointerOutEvent(){return this._pointerOutEvent}get clickEvent(){return this._clickEvent}get dblclickEvent(){return this._dblclickEvent}get keyDownEvent(){return this._keyDownEvent}get keyUpEvent(){return this._keyUpEvent}get wheelEvent(){return this._wheelEvent}getProperties(t){return[new z("ESViewer","ESViewer",[new ie("强制刷新","重载",[],()=>this.forceRecreate(),[]),new k("debug","debug",!0,!1,[this,"debug"],Ni.defaults.debug),new k("是否可见","是否可见",!0,!1,[this,"show"]),new Y("位置点单位","lonLatFormat",!0,!1,[this,"lonLatFormat"],[["度","DECIMAL_DEGREE"],["度分","DEGREES_DECIMAL_MINUTES"],["度分秒","SEXAGESIMAL_DEGREE"]]),new k("是否开启文字避让","textAvoidance",!0,!1,[this,"textAvoidance"],!1),new J("ionAccessToken","ionAccessToken",!1,!1,[this,"ionAccessToken"]),new S("时钟","时钟",!1,!1,[this,"currentTime"]),new k("globeShow","globeShow",!0,!1,[this,"globeShow"]),new k("atmosphere","atmosphere",!1,!1,[this,"atmosphere"])]),new S("飞行像素范围","默认飞行定位时对象包围球所占的屏幕像素大小",!1,!1,[this,"flyToBoundingSize"]),new S("编辑高度偏移","编辑时默认的高度偏移",!1,!1,[this,"editingHeightOffset"]),new z("Globe","Globe",[new G("地形着色器","可以设置地形全局坡度,坡向,高程带,等高线等",!1,!1,[this,"terrainShader"])])]}get actived(){return this._actived.value}set actived(t){this._actived.value=t}get activedChanged(){return this._actived.changed}};p(Ni,"context",new y0),p(Ni,"register",Ni.context.register.bind(Ni.context)),p(Ni,"defaults",{show:!0,debug:!1,statusInfo:{fps:0,position:[0,0,0],rotation:[0,0,0],length:0},terrainShader:{slope:{show:!1},aspect:{show:!1},elevationRamp:{show:!1,minHeight:-414,maxHeight:8777,color:[]},elevationContour:{show:!1,color:[1,0,0,1],spacing:150,width:2}},globeShow:!0});let Zn=Ni;(n=>{n.createBaseProps=()=>({name:"未命名场景对象",extras:c.reactJson(void 0),devTags:c.reactArrayWithUndefined(void 0),debug:void 0,show:void 0,opacity:void 0,zIndex:void 0,useDefaultStatusDiv:!0,execOnceFuncStr:void 0,updateFuncStr:void 0,toDestroyFuncStr:void 0}),n.createCommonProps=()=>({globeShow:!0,ionAccessToken:"",lonLatFormat:"DECIMAL_DEGREE",fov:60,textAvoidance:!1,flyToBoundingSize:256,hoverTime:2,currentTime:Date.now(),simulationTime:Date.now(),timeSync:!1,rain:0,snow:0,cloud:0,fog:0,depthOfField:0,atmosphere:!0,editingPointSize:void 0,editingPointColor:c.reactArrayWithUndefined(void 0),editingAuxiliaryPointColor:c.reactArrayWithUndefined(void 0),editingLineWidth:void 0,editingLineColor:c.reactArrayWithUndefined(void 0),editingAxisSize:void 0,editingAuxiliaryPointSize:void 0,editingHeightOffset:0,editingLineShow:!0,editingEventListening:!0,terrainShader:n.defaults.terrainShader}),n.createDefaultProps=()=>({...(0,n.createBaseProps)(),...(0,n.createCommonProps)()})})(Zn||(Zn={})),c.extendClassProps(Zn.prototype,Zn.createDefaultProps);function Gd(n,e){const t=n._lastCameraInfo;if(t){const r=e.viewerChanged.don(i=>{if(!i||!t)return;const{position:s,rotation:o}=t;e.flyIn(s,o,0),n._lastCameraInfo=void 0,r()})}}const _0=n=>{const e=Zn.createCommonProps(),t={};try{Object.keys(e).forEach(r=>{t[r]=n[r]})}catch(r){console.warn(r)}return t},Wd=(n,e)=>{const t=Zn.createCommonProps();try{Object.keys(t).forEach(r=>{n[r]=e[r]})}catch(r){console.warn(r)}};class w0 extends c.Destroyable{constructor(t){super();p(this,"_viewersChanged",this.disposeVar(new c.Event));p(this,"_viewers",new Set);p(this,"_viewersToChange",this.dv(new c.Event));this._sceneObjectsManager=t,this.d(()=>{for(const r of this._viewers)this.destroyViewer(r);this._viewers.clear()}),this.viewers.forEach(r=>{const i=this._sceneObjectsManager.sceneObjects;r.add(...i)}),this.d(()=>{const r=this._sceneObjectsManager.sceneObjects;this.viewers.forEach(i=>{i.delete(...r)})}),this.d(this._sceneObjectsManager.sceneObjectsToChange.don((r,i)=>{this.viewers.forEach(s=>{i.forEach(o=>{Yi(s.devTags,o.devTags)&&(s.has(o)?console.warn(`${s.typeName}中已存${o.typeName},检查逻辑是否有问题!`):s.add(o))}),r.forEach(o=>{Yi(s.devTags,o.devTags)&&(s.has(o)?s.delete(o):console.warn(`${s.typeName}中不存在${o.typeName},检查逻辑是否有问题!`))})}),i.length>0&&i.forEach(s=>{s.d(s.devTagsChanged.don(()=>{this.viewers.forEach(o=>{o.has(s)&&o.delete(s),console.log("sceneObjectsToChange",o.devTags,s.devTags,Yi(o.devTags,s.devTags)),Yi(o.devTags,s.devTags)&&(o.has(s)?console.warn(`${o.typeName}中已存${s.typeName},检查逻辑是否有问题!`):o.add(s))})}))})})),this.d(this.viewersChanged.don((r,i)=>{const s=this._sceneObjectsManager.sceneObjects;i.forEach(o=>{for(let a of s)Yi(o.devTags,a.devTags)&&(o.has(a)?console.warn(`${o.typeName}中已存${a.typeName},检查逻辑是否有问题!`):o.add(a))}),r.forEach(o=>{for(let a of s)Yi(o.devTags,a.devTags)&&(o.has(a)?o.delete(a):console.warn(`${o.typeName}中不存在${a.typeName},检查逻辑是否有问题!`))}),i.length>0&&i.forEach(o=>{o.d(o.devTagsChanged.don(()=>{o.clearAllSceneObjects();const a=this._sceneObjectsManager.sceneObjects;for(let l of a)console.log("viewersChanged",o.devTags,l.devTags,Yi(o.devTags,l.devTags)),Yi(o.devTags,l.devTags)&&(o.has(l)?console.warn(`${o.typeName}中已存${l.typeName},检查逻辑是否有问题!`):o.add(l))}))})}))}get viewersChanged(){return this._viewersChanged}get viewers(){return this._viewers}getViewers(){return[...this._viewers]}get viewersToChange(){return this._viewersToChange}createViewer(t){const r=Zn.context.createViewer(t);return this._viewers.add(r),this._viewersChanged.emit([],[r]),r}destroyViewer(t){return t.isDestroyed()?!0:(this._viewers.delete(t),this._viewersChanged.emit([t],[]),t.destroy(),t.isDestroyed())}}function qd(n,e,t,r){if(t)r.currentActiveEditing=[n,e];else if(r.currentActiveEditing){const[i,s]=r.currentActiveEditing;i===n&&s===e&&(t||(r.currentActiveEditing=void 0))}}const E0=["editing","positionEditing","locationEditing","pointEditing","rotationEditing"];class S0 extends c.Destroyable{constructor(e,t){super(),this._sceneObject=e;const r=this._sceneObject;for(let i of E0){const s=i+"Changed",o=r[s];if(o){{const a=r[i];qd(r,i,a,t)}this.dispose(o.disposableOn(a=>qd(r,i,a,t)))}}}get sceneObject(){return this._sceneObject}}class C0 extends c.Destroyable{constructor(){super();p(this,"_currentActiveEditing",this.disposeVar(c.reactArrayWithUndefined(void 0)));p(this,"_currentActiveEditingLastChangedTime",0);this.dispose(this._currentActiveEditing.changed.disposableOn((t,r)=>{if(this._currentActiveEditingLastChangedTime=Date.now(),r){const[i,s]=r;i[s]===!0&&(i[s]=!1)}if(t){const[i,s]=t;i[s]=!0}})),j.context.sceneObjCreatedEvent.don(t=>{t.dv(new S0(t,this))})}get currentActiveEditing(){return this._currentActiveEditing.value}set currentActiveEditing(t){this._currentActiveEditing.value=t}get currentActiveEditingChanged(){return this._currentActiveEditing.changed}get currentActiveEditingLastChangedTime(){return this._currentActiveEditingLastChangedTime}}class xs extends c.Destroyable{constructor(...t){super();p(this,"_drgm",this.dv(new jp));p(this,"_sobjm",this.dv(new c0));p(this,"_vrm",this.dv(new w0(this._sobjm)));p(this,"_sceneObjectEditingManager",this.disposeVar(new C0));p(this,"_activeViewer",this.dv(c.react(void 0)));p(this,"_syncOtherViewersToActived",this.dv(c.react(!1)));p(this,"_cmrvm",this.createSceneObjectFromClass(bs));p(this,"_cmrvmdon",this.d(()=>this._cmrvm&&this.destroySceneObject(this._cmrvm)));p(this,"_asset",{type:"ESObjectsManager",version:"0.1.0",createdTime:"",modifiedTime:"",name:"未命名项目"});p(this,"_sceneTree",this.dv(new fu("default",this.dragstartDataMananger,24,this)));p(this,"_propUiTreeManager",this.dv(new bl(24)));p(this,"_sceneTreeMap",new Map);p(this,"_viewerCreatedEvent",this.dv(new c.Event));p(this,"_lastCameraInfo");p(this,"_lastActiveViewerJson");p(this,"syncEvent",this.dv(c.createNextAnimateFrameEvent(this.activeViewerChanged,this.syncOtherViewersToActivedChanged)));p(this,"_syncEventDon",this.d(this.syncEvent.don(()=>{const t=this.syncOtherViewersToActived;this.viewers.forEach(r=>{t?r.syncOtherViewer(this.activeViewer):r.syncOtherViewer(void 0)})})));p(this,"_player",this.createSceneObjectFromClass(Ji));p(this,"_playerdon",this.d(()=>this._player&&this.destroySceneObject(this._player)));p(this,"_esPlyarAndPathTime",this.dv(new o0(this)));p(this,"_pathAnimationManager",this.dv(new l0(this)))}static get envs(){return j.context.environmentVariables}getSceneObjectById(t){return j.getSceneObjectById(t)}getSceneObject(t){return j.getSceneObject(t)}get $refs(){return j.$refs}get dragstartDataMananger(){return this._drgm}get sceneObjectsManager(){return this._sobjm}get viewers(){return this._vrm.viewers}getViewers(){return this._vrm.getViewers()}get sceneObjectEditingManager(){return this._sceneObjectEditingManager}get activeViewer(){return this._activeViewer.value}set activeViewer(t){this._activeViewer.value=t}get activeViewerChanged(){return this._activeViewer.changed}get syncOtherViewersToActived(){return this._syncOtherViewersToActived.value}set syncOtherViewersToActived(t){this._syncOtherViewersToActived.value=t}get syncOtherViewersToActivedChanged(){return this._syncOtherViewersToActived.changed}get cameraViewsManager(){return this._cmrvm}get json(){var f;const t=this._asset.createdTime||new Date().toISOString(),r=new Date().toISOString(),i=this._asset.name||"未命名项目",o={type:"ESObjectsManager",version:this._asset.version||"0.1.0",createdTime:t,modifiedTime:r,name:i},a=this.sceneTree.json,l=this._cmrvm.views,u=[...this._vrm.viewers].map(d=>d.json),h=(f=this.activeViewer)==null?void 0:f.getCurrentCameraInfo();return{asset:o,viewers:u,sceneTree:a,viewCollection:l,lastView:h}}set json(t){try{if(!t.asset)return;if(!t.asset.type||t.asset.type!=="ESObjectsManager"){console.warn("json装配失败! asset.type 不存在或者不是'ESObjectsManager'");return}if(this._asset.createdTime=t.asset&&t.asset.createdTime||new Date().toISOString(),this._asset.modifiedTime=t.asset&&t.asset.modifiedTime||"",this._asset.name=t.asset&&t.asset.name||"未命名项目",this._asset.version=t.asset&&t.asset.version||"0.1.0",t.sceneTree&&(this.sceneTree.json=t.sceneTree),t.viewCollection&&(this._cmrvm.views=t.viewCollection),!t.viewers||!Array.isArray(t.viewers)){console.warn("viewers is not an array or does not exist !");return}if(this._vrm.viewers.size===0||t.viewers.length===0){console.warn("viewers is empty !");return}this._vrm.viewers.forEach(r=>{const i=t.viewers.find(s=>s.id===r.id);i&&(r.json=i)})}catch(r){console.error(`ESObjectsManager解析json数据时发生错误! error: ${r}`)}}get sceneTree(){return this._sceneTree}get jsonLoadingEvent(){return this._sceneTree.jsonLoadingEvent}get propUiTreeManager(){return this._propUiTreeManager}propTreeCallback(t){return u0(this,t)}getSceneTrees(){return[...this._sceneTreeMap.values()]}getSceneTree(t="default"){if(t==="default")return this._sceneTree;if(!this._sceneTreeMap.has(t)){console.warn(`id为${t}的SceneTree不存在!`);return}return this._sceneTreeMap.get(t)}createSceneTree(t,r=24){if(this._sceneTreeMap.has(t)||t==="default")console.warn(`id为${t}的SceneTree已存在!`);else{const i=this.dv(new fu(t,this.dragstartDataMananger,r,this));this._sceneTreeMap.set(t,i)}return this.getSceneTree(t)}get viewerCreatedEvent(){return this._viewerCreatedEvent}createViewer(t){const r=this._vrm.createViewer(t);this.activeViewer||(this.activeViewer=r);const i=this.d(r.viewerChanged.don(s=>{s&&(this._viewerCreatedEvent.emit(r),i())}));return r}destroyViewer(t){return this._activeViewer.value===t&&(this._activeViewer.value=void 0),this._vrm.destroyViewer(t)}switchViewer(t,r=!0,i=!0,s=!0){var u;this.activeViewer&&this.activeViewer.getNavigationMode()!=="Map"&&this.activeViewer.changeToMap(),!this._lastCameraInfo&&r&&(this._lastCameraInfo=(u=this.activeViewer)==null?void 0:u.getCurrentCameraInfo()),!this._lastActiveViewerJson&&i&&(this._lastActiveViewerJson=this.activeViewer?_0(this.activeViewer):void 0),s&&this.activeViewer&&this.destroyViewer(this.activeViewer);const o=t.id,a=o?[...this.getViewers()].find(h=>h.id===o):[...this.getViewers()].find(h=>h.typeName===t.type);if(a)if(o&&a.typeName!==t.type)console.warn(`id为${o}的viewer的typeName和option.type${t.type}不相同!,虽然id一致但是typeName不同,所以会销毁并创建新的viewer`),this.destroyViewer(a);else return console.log("ESViewer exists, will be used"),r&&Gd(this,a),i&&this._lastActiveViewerJson&&(Wd(a,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),a.container===kd(t.container)?(a.containerOrId=t.container,a.forceRecreate()):a.containerOrId=t.container,this.activeViewer=a,a;console.log("No ESViewer exists, will be created");const l=this.createViewer(t);return r&&Gd(this,l),i&&this._lastActiveViewerJson&&(Wd(l,this._lastActiveViewerJson),this._lastActiveViewerJson=void 0),this.activeViewer=l,l}switchToCesiumViewer(...t){if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)){const{container:r,viewSync:i,attributeSync:s,destroy:o,id:a}=t[0];return this.switchViewer({type:"ESCesiumViewer",container:r,id:a},i??!0,s??!0,o??!0)}else if(typeof t[0]=="string"||t[0]instanceof HTMLDivElement){const r={container:t[0],viewSync:t[1]??!0,attributeSync:t[2]??!0,destroy:t[3]??!0,id:t[4]},{container:i,viewSync:s,attributeSync:o,destroy:a,id:l}=r;return this.switchViewer({type:"ESCesiumViewer",container:i,id:l},s,o,a)}}switchToUEViewer(...t){let r,i={viewSync:!0,attributeSync:!0,destroy:!0};if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("uri")){const{container:l,uri:u,app:h,token:f,viewSync:d,attributeSync:v,destroy:w,id:I}=t[0];r={type:"ESUeViewer",container:l,id:I,options:{uri:u,app:h,token:f}},i={viewSync:d??!0,attributeSync:v??!0,destroy:w??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("ws")){const{container:l,ws:u,esmsg:h,viewSync:f,attributeSync:d,id:v,destroy:w}=t[0];r={type:"ESUeViewer",container:l,id:v,options:{ws:u,esmsg:h}},i={viewSync:f??!0,attributeSync:d??!0,destroy:w??!0}}else if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)&&t[0].hasOwnProperty("project")){const{container:l,project:u,baseUrl:h,viewSync:f,attributeSync:d,id:v,destroy:w}=t[0];r={type:"ESUeViewer",container:l,id:v,options:{project:u,baseUrl:h}},i={viewSync:f??!0,attributeSync:d??!0,destroy:w??!0}}else(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?(r={type:"ESUeViewer",container:t[0],id:t[6],options:{ws:t[1],esmsg:t[2]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}):typeof t[1]=="string"&&t[1].startsWith("http")?(r={type:"ESUeViewer",container:t[0],id:t[7],options:{uri:t[1],app:t[2],token:t[3]??void 0}},i={viewSync:t[4]??!0,attributeSync:t[5]??!0,destroy:t[6]??!0}):(r={type:"ESUeViewer",container:t[0],id:t[6],options:{project:t[1],baseUrl:t[2]??void 0}},i={viewSync:t[3]??!0,attributeSync:t[4]??!0,destroy:t[5]??!0}));if(!r)throw new Error("参数错误");const{viewSync:s,attributeSync:o,destroy:a}=i;return this.switchViewer(r,s,o,a)}createCesiumViewer(...t){let r;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?r={...t[0],type:"ESCesiumViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(r={container:t[0],options:t[1]??void 0,id:t[2]??void 0,type:"ESCesiumViewer"}),!r)throw new Error("参数错误");return this.createViewer(r)}createUeViewer(...t){let r;if(typeof t[0]=="object"&&!(t[0]instanceof HTMLDivElement)?r={...t[0],type:"ESUeViewer"}:(typeof t[0]=="string"||t[0]instanceof HTMLDivElement)&&(typeof t[1]=="string"&&t[1].startsWith("ws")?r={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{ws:t[1],esmsg:t[2]??void 0}}:typeof t[1]=="string"&&t[1].startsWith("http")?r={type:"ESUeViewer",container:t[0],id:t[4]??void 0,options:{uri:t[1],app:t[2],token:t[3]??void 0}}:r={type:"ESUeViewer",container:t[0],id:t[3]??void 0,options:{project:t[1],baseUrl:t[2]??void 0}}),!r)throw new Error("参数错误");return this.createViewer(r)}createSceneObject(t,r){return this._sobjm.createSceneObject(t,r)}createSceneObjectFromClass(t,r){return this._sobjm.createSceneObjectFromClass(t,r)}createSceneObjectFromJson(t){return this._sobjm.createSceneObjectFromJson(t)}destroySceneObject(t){const r=this._sobjm.deleteSceneObject(t);return t.destroy(),r}destroyAllSceneObjects(){const t=[...this._sobjm.sceneObjects];for(let r of t)r!=this._player&&r!=this._cmrvm&&this.destroySceneObject(r)}get player(){return this._player}get esPlyarAndPathTime(){return this._esPlyarAndPathTime}get pathAnimationManager(){return this._pathAnimationManager}}p(xs,"getSceneObjById",j.context.getSceneObjectById.bind(j.context)),p(xs,"getEnv",j.context.getEnv.bind(j.context)),p(xs,"setEnv",j.context.setEnv.bind(j.context)),(n=>{n.createDefaultProps=()=>({})})(xs||(xs={})),c.extendClassProps(xs.prototype,xs.createDefaultProps);function P0(){const n=navigator.userAgent;let e="Unknown";/Windows/.test(n)?e="Windows":/Macintosh/.test(n)?e="MacOS":/Linux/.test(n)?e="Linux":/Android/.test(n)?e="Android":/iOS|iPhone|iPad|iPod/.test(n)&&(e="iOS");let t="Unknown";return/x64|x86_64|Win64|WOW64/.test(n)?t="x64":/x86|i686|Win32/.test(n)?t="x86":/arm64|aarch64/.test(n)?t="arm64":/arm/.test(n)&&(t="arm"),{os:e.toLocaleLowerCase(),arch:t.toLocaleLowerCase()}}const I0=Date.now();function Xd(n){const{os:e,arch:t}=P0(),r={version:n.version,commitdate:n.date,commitId:n.commitId,runningTime:(Date.now()-I0)/1e3/60|0,date:new Date().toLocaleString(),href:window.location.href,os:e,arch:t},s={method:"GET",headers:new Headers,redirect:"follow"},o=window.encodeURIComponent(JSON.stringify(r));fetch(`https://account.bjxbsj.cn/api/product/record?product=EarthSDKJS&content=${o}`,s).then(a=>a.text()).then(a=>console.log(a)).catch(a=>console.log("error",a))}P.copyright=void 0;try{const n="earthsdk3",e="3.0.7-beta.5",t="2025-05-23T01:28:30.000Z",r="北京西部世界科技有限公司",i="地球可视化实验室 (EarthSDK&CesiumLab) https://www.bjxbsj.cn",s="5937111c78b84e9acfafcca7065a3d066df8a5d3",a=((Date.now()-174796371e4)/36e5).toFixed(1),l=`%c🌏 ${n}%c ${e}.${s.slice(0,8)}.${t} (距今${a}个小时)
548
548
  %c${i?i+`
549
549
  `:""}当前网站正在使用${n},此软件版权归${r}所有
550
- `;P.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","b7988d4abb009d1c139795520219336dac2ff06a")},get info(){return l},get date(){return"2025-05-22T07:06:28.000Z"},get author(){return"suplyang"},get version(){return"3.0.7-beta.3"},get name(){return"earthsdk3"},get commitId(){return"b7988d4abb009d1c139795520219336dac2ff06a"},print(){console.info(this.info,`
550
+ `;P.copyright=Object.freeze({get owner(){return"北京西部世界科技有限公司"},get ownerlink(){},get gituri(){return GITURI_&&GITURI_.replace("${commitId}","5937111c78b84e9acfafcca7065a3d066df8a5d3")},get info(){return l},get date(){return"2025-05-23T01:28:30.000Z"},get author(){return"suplyang"},get version(){return"3.0.7-beta.5"},get name(){return"earthsdk3"},get commitId(){return"5937111c78b84e9acfafcca7065a3d066df8a5d3"},print(){console.info(this.info,`
551
551
  font-size: 18px;
552
552
  font-weight: 1000;
553
553
  line-height: 1;